From 4d28a2de1b178db828bbbb62bb3f9d9c4bbfca06 Mon Sep 17 00:00:00 2001
From: ECWireless
Date: Fri, 26 Jul 2024 15:16:17 -0600
Subject: [PATCH 1/2] Add better battle UI for ActionsPanel
---
packages/client/package.json | 2 +
.../client/src/components/ActionsPanel.tsx | 254 ++++++++++--
.../src/components/TileDetailsPanel.tsx | 43 +-
.../src/components/WalletDetailsModal.tsx | 7 +
.../src/contexts/MapNavigationContext.tsx | 4 +-
packages/client/src/pages/GameBoard.tsx | 2 +-
packages/client/src/utils/types.ts | 19 +
.../out/CombatSystem.sol/CombatSystem.json | 2 +-
.../contracts/src/systems/CombatSystem.sol | 1 +
pnpm-lock.yaml | 384 +++++++++++++-----
10 files changed, 564 insertions(+), 154 deletions(-)
diff --git a/packages/client/package.json b/packages/client/package.json
index d8e188328..6035ef2be 100644
--- a/packages/client/package.json
+++ b/packages/client/package.json
@@ -37,6 +37,7 @@
"react-dom": "^18.2.0",
"react-icons": "^5.2.1",
"react-router-dom": "^6.23.1",
+ "react-typist": "^2.0.5",
"rxjs": "7.5.5",
"viem": "2.9.20",
"wagmi": "^2.9.6"
@@ -44,6 +45,7 @@
"devDependencies": {
"@types/react": "18.2.22",
"@types/react-dom": "18.2.7",
+ "@types/react-typist": "^2.0.6",
"@vitejs/plugin-react": "^3.1.0",
"eslint-config-prettier": "^9.1.0",
"eslint-import-resolver-typescript": "^3.6.1",
diff --git a/packages/client/src/components/ActionsPanel.tsx b/packages/client/src/components/ActionsPanel.tsx
index cd3ef49b2..9198500c2 100644
--- a/packages/client/src/components/ActionsPanel.tsx
+++ b/packages/client/src/components/ActionsPanel.tsx
@@ -1,14 +1,24 @@
-import { Button, HStack, Stack, Text } from '@chakra-ui/react';
-import { Has, HasValue, runQuery } from '@latticexyz/recs';
+import { Button, HStack, Stack, Text, VStack } from '@chakra-ui/react';
+import { useEntityQuery } from '@latticexyz/react';
+import {
+ getComponentValueStrict,
+ Has,
+ HasValue,
+ runQuery,
+} from '@latticexyz/recs';
+import { decodeEntity } from '@latticexyz/store-sync/recs';
import { useCallback, useMemo, useState } from 'react';
import { Link } from 'react-router-dom';
+// eslint-disable-next-line import/no-named-as-default
+import Typist from 'react-typist';
+import { formatUnits } from 'viem';
import { useCharacter } from '../contexts/CharacterContext';
import { useCombat } from '../contexts/CombatContext';
import { useMapNavigation } from '../contexts/MapNavigationContext';
import { useMUD } from '../contexts/MUDContext';
import { useToast } from '../hooks/useToast';
-import { ActionType } from '../utils/types';
+import { ActionType, type BattleActionOutcome } from '../utils/types';
// enum ActionEvents {
// Attack = 'attack',
@@ -55,39 +65,143 @@ import { ActionType } from '../utils/types';
export const ActionsPanel = (): JSX.Element => {
const { renderError } = useToast();
const {
- components: { Actions },
+ components: { ActionOutcome, Actions },
delegatorAddress,
systemCalls: { endTurn },
} = useMUD();
- const { character, equippedItems, refreshCharacter } = useCharacter();
- const { isSpawned, monsters, position } = useMapNavigation();
+ const {
+ isRefreshing: isRefreshingCharacter,
+ character,
+ equippedItems,
+ refreshCharacter,
+ } = useCharacter();
+ const {
+ isRefreshing: isRefreshingMap,
+ isSpawned,
+ monsters,
+ position,
+ } = useMapNavigation();
const { currentBattle, monsterOponent } = useCombat();
const [isAttacking, setIsAttacking] = useState(false);
+ const battleActionOutcomes = useEntityQuery([
+ Has(ActionOutcome),
+ HasValue(ActionOutcome, { attackerId: character?.characterId }),
+ ])
+ .map(entity => {
+ const _actionOutcome = getComponentValueStrict(ActionOutcome, entity);
+
+ const { encounterId, currentTurn, actionNumber } = decodeEntity(
+ {
+ encounterId: 'bytes32',
+ currentTurn: 'uint256',
+ actionNumber: 'uint256',
+ },
+ entity,
+ );
+
+ return {
+ attackerDamageDelt: formatUnits(
+ _actionOutcome.attackerDamageDelt,
+ 5,
+ ).toString(),
+ attackerDied: _actionOutcome.attackerDied,
+ attackerId: _actionOutcome.attackerId.toString(),
+ actionId: _actionOutcome.actionId.toString(),
+ actionNumber: actionNumber.toString(),
+ blockNumber: _actionOutcome.blockNumber.toString(),
+ crit: _actionOutcome.crit,
+ currentTurn: currentTurn.toString(),
+ defenderDamageDelt: _actionOutcome.defenderDamageDelt.toString(),
+ defenderDied: _actionOutcome.defenderDied,
+ defenderId: _actionOutcome.defenderId.toString(),
+ encounterId: encounterId.toString(),
+ hit: _actionOutcome.hit,
+ miss: _actionOutcome.miss,
+ timestamp: _actionOutcome.timestamp.toString(),
+ weaponId: _actionOutcome.weaponId.toString(),
+ } as BattleActionOutcome;
+ })
+ .filter(action => action.encounterId === currentBattle?.encounterId);
+
const actionText = useMemo(() => {
+ if (isRefreshingCharacter || isRefreshingMap) return '';
+
if (!(isSpawned && position)) {
- return 'In order to begin battling, you must spawn your character.';
+ return (
+
+
+ In order to begin battling, you must{' '}
+
+ spawn
+ {' '}
+ your character.
+
+
+ );
}
if (position.x === 0 && position.y === 0) {
- return 'You are currently in the starting tile. Move to a new tile to find monsters to battle.';
+ return (
+
+
+ You are currently in the starting tile.{' '}
+
+ Move to a new tile
+ {' '}
+ to find monsters to battle.
+
+
+ );
}
if ((position.x !== 0 || position.y !== 0) && monsters.length === 0) {
- return 'Looks like there are no monsters in this tile. Move to a new tile to find monsters to battle.';
+ return (
+
+
+ Looks like there are no monsters in this tile.{' '}
+
+ Move to a new tile
+ {' '}
+ to find monsters to battle.
+
+
+ );
}
if ((position.x !== 0 || position.y !== 0) && monsters.length > 0) {
- return 'To initiate a battle, click on a monster.';
- }
-
- if (currentBattle && monsterOponent) {
- return `You are currently in battle with a ${monsterOponent.name}.`;
+ return (
+
+
+ To initiate a battle,{' '}
+
+ click on a monster
+
+ .
+
+
+ );
}
return '';
- }, [currentBattle, isSpawned, monsterOponent, monsters, position]);
+ }, [isRefreshingCharacter, isRefreshingMap, isSpawned, monsters, position]);
const onAttack = useCallback(
async (itemId: string) => {
@@ -154,41 +268,97 @@ export const ActionsPanel = (): JSX.Element => {
);
return (
-
-
- {!currentBattle && (
- {actionText}
- )}
- {currentBattle && equippedItems && monsterOponent && (
-
- {equippedItems.length === 0 && (
-
- You have no equipped items. In order to attack, you must go to
- your{' '}
-
- character page
- {' '}
- and equip at least 1 item.
-
- )}
+ <>
+ {currentBattle && equippedItems && monsterOponent && (
+
+
+ Choose your move:
+
+ {equippedItems.length === 0 && (
+
+ You have no equipped items. In order to attack, you must go to
+ your{' '}
+
+ character page
+ {' '}
+ and equip at least 1 item.
+
+ )}
+
{equippedItems.map((item, index) => (
))}
- )}
+
+ )}
+
+ {!currentBattle && actionText}
+
+ {monsterOponent &&
+ battleActionOutcomes.map((action, i) => {
+ if (action.miss) {
+ return (
+
+
+ You missed{' '}
+
+ {monsterOponent.name}
+
+ .
+
+
+ );
+ }
+ const critText = action.crit ? 'Critical hit! ' : '';
+
+ return (
+
+
+ {critText}You attacked{' '}
+
+ {monsterOponent?.name}
+ {' '}
+ for{' '}
+
+ {action.attackerDamageDelt}
+ {' '}
+ damage.
+
+
+ );
+ })}
{/*
{BATTLE_EVENTS.map((event, i) => (
@@ -225,6 +395,6 @@ export const ActionsPanel = (): JSX.Element => {
))}
*/}
-
+ >
);
};
diff --git a/packages/client/src/components/TileDetailsPanel.tsx b/packages/client/src/components/TileDetailsPanel.tsx
index 6c642630c..48349625b 100644
--- a/packages/client/src/components/TileDetailsPanel.tsx
+++ b/packages/client/src/components/TileDetailsPanel.tsx
@@ -11,7 +11,7 @@ import {
useBreakpointValue,
VStack,
} from '@chakra-ui/react';
-import { useCallback, useState } from 'react';
+import { useCallback, useEffect, useState } from 'react';
import { GiCrossedSwords } from 'react-icons/gi';
import { IoIosArrowForward } from 'react-icons/io';
import { useNavigate } from 'react-router-dom';
@@ -39,6 +39,17 @@ export const TileDetailsPanel = (): JSX.Element => {
const { currentBattle, monsterOponent } = useCombat();
const [isInitiating, setIsInitiating] = useState(false);
+ const [isMonsterHit, setIsMonsterHit] = useState(false);
+
+ useEffect(() => {
+ if (!monsterOponent) return;
+ if (monsterOponent.currentHp === monsterOponent.baseHp) return;
+
+ setIsMonsterHit(true);
+ setTimeout(() => {
+ setIsMonsterHit(false);
+ }, 700);
+ }, [monsterOponent, monsterOponent?.baseHp, monsterOponent?.currentHp]);
const onInitiateCombat = useCallback(
async (monster: Monster) => {
@@ -73,7 +84,7 @@ export const TileDetailsPanel = (): JSX.Element => {
[character, createMatch, delegatorAddress, renderError, renderSuccess],
);
- if (isRefreshing) {
+ if (!currentBattle && isRefreshing) {
return (
@@ -84,15 +95,33 @@ export const TileDetailsPanel = (): JSX.Element => {
if (character && currentBattle && monsterOponent) {
return (
+
-
+
{isDesktop
? monsterOponent.name.slice(0, -3)
: monsterOponent.name}
{isDesktop && (
- {monsterOponent.name.slice(-3)}
+
+ {monsterOponent.name.slice(-3)}
+
)}
@@ -104,12 +133,12 @@ export const TileDetailsPanel = (): JSX.Element => {
justify={{ base: 'center', lg: 'start' }}
w="48%"
>
-
+
{character.name}
@@ -160,7 +189,7 @@ export const TileDetailsPanel = (): JSX.Element => {
return (
-
+
Initiating battle!
diff --git a/packages/client/src/components/WalletDetailsModal.tsx b/packages/client/src/components/WalletDetailsModal.tsx
index e79c446ea..e5e972c03 100644
--- a/packages/client/src/components/WalletDetailsModal.tsx
+++ b/packages/client/src/components/WalletDetailsModal.tsx
@@ -63,6 +63,13 @@ export const WalletDetailsModal = ({
setWithdrawErrorMessage(null);
}, [depositAmount, withdrawAmount]);
+ useEffect(() => {
+ if (isOpen) {
+ setDepositAmount('0');
+ setWithdrawAmount('0');
+ }
+ }, [isOpen]);
+
const onDeposit = useCallback(async () => {
try {
setIsDepositing(true);
diff --git a/packages/client/src/contexts/MapNavigationContext.tsx b/packages/client/src/contexts/MapNavigationContext.tsx
index ca171037d..ed5bd3175 100644
--- a/packages/client/src/contexts/MapNavigationContext.tsx
+++ b/packages/client/src/contexts/MapNavigationContext.tsx
@@ -85,7 +85,7 @@ export const MapNavigationProvider = ({
const [isSpawning, setIsSpawning] = useState(false);
const [isMoving, setIsMoving] = useState(false);
- const [isFetchingEntities, setIsFetchingEntities] = useState(false);
+ const [isFetchingEntities, setIsFetchingEntities] = useState(true);
const position = useComponentValue(
Position,
@@ -262,9 +262,9 @@ export const MapNavigationProvider = ({
(async (): Promise => {
if (!(allCharacterEntities && allMonsterEntities)) return;
+ setIsFetchingEntities(true);
await getOtherCharacters(allCharacterEntities);
await getMonsters(allMonsterEntities);
-
setIsFetchingEntities(false);
})();
}, [
diff --git a/packages/client/src/pages/GameBoard.tsx b/packages/client/src/pages/GameBoard.tsx
index 4e106202a..d2440c79a 100644
--- a/packages/client/src/pages/GameBoard.tsx
+++ b/packages/client/src/pages/GameBoard.tsx
@@ -122,7 +122,7 @@ export const GameBoard = (): JSX.Element => {
colSpan={{ base: 1, lg: 8 }}
colStart={{ base: 0, lg: 5 }}
overflowY="auto"
- p={{ base: 2, lg: 4 }}
+ position="relative"
rowSpan={{ base: 4, lg: 6 }}
rowStart={{ base: 4, lg: 7 }}
>
diff --git a/packages/client/src/utils/types.ts b/packages/client/src/utils/types.ts
index 9cf0cb521..c8cb7dfb9 100644
--- a/packages/client/src/utils/types.ts
+++ b/packages/client/src/utils/types.ts
@@ -27,6 +27,25 @@ export enum StatsClasses {
Mage,
}
+export type BattleActionOutcome = {
+ attackerDamageDelt: string;
+ attackerDied: boolean;
+ attackerId: string;
+ actionId: string;
+ actionNumber: string;
+ blockNumber: string;
+ crit: boolean;
+ currentTurn: string;
+ defenderDamageDelt: string;
+ defenderDied: boolean;
+ defenderId: string;
+ encounterId: string;
+ hit: boolean;
+ miss: boolean;
+ timestamp: string;
+ weaponId: string;
+};
+
export type Character = CharacterData & EntityStats & Metadata;
export type CharacterData = {
diff --git a/packages/contracts/out/CombatSystem.sol/CombatSystem.json b/packages/contracts/out/CombatSystem.sol/CombatSystem.json
index d3c177d0f..5ea4df89a 100644
--- a/packages/contracts/out/CombatSystem.sol/CombatSystem.json
+++ b/packages/contracts/out/CombatSystem.sol/CombatSystem.json
@@ -1 +1 @@
-{"abi":[{"type":"function","name":"_calculateMagicAttack","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"_msgSender","inputs":[],"outputs":[{"name":"sender","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"_msgValue","inputs":[],"outputs":[{"name":"value","type":"uint256","internalType":"uint256"}],"stateMutability":"pure"},{"type":"function","name":"_world","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"createMatch","inputs":[{"name":"encounterType","type":"uint8","internalType":"enum EncounterType"},{"name":"attackers","type":"bytes32[]","internalType":"bytes32[]"},{"name":"defenders","type":"bytes32[]","internalType":"bytes32[]"}],"outputs":[{"name":"encounterId","type":"bytes32","internalType":"bytes32"}],"stateMutability":"nonpayable"},{"type":"function","name":"endTurn","inputs":[{"name":"encounterId","type":"bytes32","internalType":"bytes32"},{"name":"playerId","type":"bytes32","internalType":"bytes32"},{"name":"actions","type":"tuple[]","internalType":"struct Action[]","components":[{"name":"attackerEntityId","type":"bytes32","internalType":"bytes32"},{"name":"defenderEntityId","type":"bytes32","internalType":"bytes32"},{"name":"actionId","type":"bytes32","internalType":"bytes32"},{"name":"weaponId","type":"uint256","internalType":"uint256"}]}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"executeCombat","inputs":[{"name":"randomNumber","type":"uint256","internalType":"uint256"},{"name":"encounterId","type":"bytes32","internalType":"bytes32"},{"name":"actions","type":"tuple[]","internalType":"struct Action[]","components":[{"name":"attackerEntityId","type":"bytes32","internalType":"bytes32"},{"name":"defenderEntityId","type":"bytes32","internalType":"bytes32"},{"name":"actionId","type":"bytes32","internalType":"bytes32"},{"name":"weaponId","type":"uint256","internalType":"uint256"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"getEncounter","inputs":[{"name":"encounterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"_encounterData","type":"tuple","internalType":"struct CombatEncounterData","components":[{"name":"encounterType","type":"uint8","internalType":"enum EncounterType"},{"name":"start","type":"uint256","internalType":"uint256"},{"name":"end","type":"uint256","internalType":"uint256"},{"name":"currentTurn","type":"uint256","internalType":"uint256"},{"name":"maxTurns","type":"uint256","internalType":"uint256"},{"name":"defenders","type":"bytes32[]","internalType":"bytes32[]"},{"name":"attackers","type":"bytes32[]","internalType":"bytes32[]"}]}],"stateMutability":"view"},{"type":"function","name":"isParticipant","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"participants","type":"bytes32[]","internalType":"bytes32[]"}],"outputs":[{"name":"_isParticipant","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isParticipant","inputs":[{"name":"playerId","type":"bytes32","internalType":"bytes32"},{"name":"encounterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"_isParticipant","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isValidPvE","inputs":[{"name":"attackers","type":"bytes32[]","internalType":"bytes32[]"},{"name":"defenders","type":"bytes32[]","internalType":"bytes32[]"},{"name":"x","type":"uint16","internalType":"uint16"},{"name":"y","type":"uint16","internalType":"uint16"}],"outputs":[{"name":"_isValidPvE","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"pure"},{"type":"event","name":"Store_SetRecord","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"staticData","type":"bytes","indexed":false,"internalType":"bytes"},{"name":"encodedLengths","type":"bytes32","indexed":false,"internalType":"EncodedLengths"},{"name":"dynamicData","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"Store_SpliceStaticData","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"start","type":"uint48","indexed":false,"internalType":"uint48"},{"name":"data","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"error","name":"Slice_OutOfBounds","inputs":[{"name":"data","type":"bytes","internalType":"bytes"},{"name":"start","type":"uint256","internalType":"uint256"},{"name":"end","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"World_AccessDenied","inputs":[{"name":"resource","type":"string","internalType":"string"},{"name":"caller","type":"address","internalType":"address"}]},{"type":"error","name":"World_FunctionSelectorNotFound","inputs":[{"name":"functionSelector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"World_ResourceNotFound","inputs":[{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]}],"bytecode":{"object":"0x608060405234801561001057600080fd5b50615cf780620000216000396000f3fe6080604052600436106100c75760003560e01c8063aaa417b711610074578063c6ca743c1161004e578063c6ca743c146101fe578063e1af802c1461021e578063fc88ff631461023357600080fd5b8063aaa417b7146101b2578063b2467894146101d2578063bfea0b85146101f257600080fd5b806345ec9354116100a557806345ec93541461014e5780634dda27e81461017057806398d239b11461019d57600080fd5b806301ffc9a7146100cc578063119df25f14610101578063154510201461012e575b600080fd5b3480156100d857600080fd5b506100ec6100e73660046149da565b610253565b60405190151581526020015b60405180910390f35b34801561010d57600080fd5b506101166102ec565b6040516001600160a01b0390911681526020016100f8565b34801561013a57600080fd5b506100ec610149366004614b9c565b6102fb565b34801561015a57600080fd5b5036601f1901355b6040519081526020016100f8565b34801561017c57600080fd5b5061019061018b366004614c21565b6105d5565b6040516100f89190614ca0565b6101b06101ab366004614da6565b61061f565b005b3480156101be57600080fd5b506101626101cd366004614df6565b6107e9565b3480156101de57600080fd5b506100ec6101ed366004614e7b565b610ac3565b3480156101b057600080fd5b34801561020a57600080fd5b506100ec610219366004614ecb565b610b99565b34801561022a57600080fd5b50610116610c53565b34801561023f57600080fd5b506101b061024e366004614da6565b610c5d565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee1270000000000000000000000000000000000000000000000000000000014806102e657507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b60006102f6610e67565b905090565b600160005b855181101561046057610311610c53565b6001600160a01b031663fa1becc487838151811061033157610331614eed565b60200260200101516040518263ffffffff1660e01b815260040161035791815260200190565b602060405180830381865afa158015610374573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103989190614f03565b6103a55760009150610460565b6103ad610c53565b6001600160a01b031663f48a39728783815181106103cd576103cd614eed565b602002602001015186866040518463ffffffff1660e01b815260040161040a9392919092835261ffff918216602084015216604082015260600190565b602060405180830381865afa158015610427573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061044b9190614f03565b6104585760009150610460565b600101610300565b5080156105cd5760005b84518110156105cb5761047b610c53565b6001600160a01b031663fa1becc486838151811061049b5761049b614eed565b60200260200101516040518263ffffffff1660e01b81526004016104c191815260200190565b602060405180830381865afa1580156104de573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105029190614f03565b1561051057600091506105cb565b610518610c53565b6001600160a01b031663f48a397286838151811061053857610538614eed565b602002602001015186866040518463ffffffff1660e01b81526004016105759392919092835261ffff918216602084015216604082015260600190565b602060405180830381865afa158015610592573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105b69190614f03565b6105c357600091506105cb565b60010161046a565b505b949350505050565b6106166040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b6102e682610e99565b600061062a84610e99565b9050806020015160001415801561064357506040810151155b6106945760405162461bcd60e51b815260206004820181905260248201527f434f4d4241542053595354454d3a20494e56414c494420454e434f554e54455260448201526064015b60405180910390fd5b80608001518160600151106106eb5760405162461bcd60e51b815260206004820181905260248201527f434f4d4241542053595354454d3a204558504952454420454e434f554e544552604482015260640161068b565b6106f36102ec565b6001600160a01b0316610704610c53565b6001600160a01b0316634f10aabc856040518263ffffffff1660e01b815260040161073191815260200190565b602060405180830381865afa15801561074e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107729190614f25565b6001600160a01b031614801561078d575061078d8385610b99565b6107d95760405162461bcd60e51b815260206004820152601c60248201527f434f4d4241542053595354454d3a204e4f4e2d434f4d424154414e5400000000604482015260640161068b565b6107e38483610f84565b50505050565b60006107fc6107f66102ec565b84610ac3565b6108485760405162461bcd60e51b815260206004820152601d60248201527f434f4d4241542053595354454d3a20494e56414c49442053454e444552000000604482015260640161068b565b60008061086e8560008151811061086157610861614eed565b602002602001015161101e565b9150915085600181111561088457610884614c3a565b60010361096c57610897858584846102fb565b6108e35760405162461bcd60e51b815260206004820152601a60248201527f434f4d4241542053595354454d3a20494e56414c494420505645000000000000604482015260640161068b565b60405142906108fc908890889088908590602001614f42565b60405160208183030381529060405280519060200120935060006040518060e0016040528089600181111561093357610933614c3a565b81526020018381526020016000815260200160008152602001600f815260200187815260200188815250905061096985826110cf565b50505b85600181111561097e5761097e614c3a565b5060005b8451811015610a29576000801b6109b18683815181106109a4576109a4614eed565b6020026020010151611190565b146109fe5760405162461bcd60e51b815260206004820152601e60248201527f434f4d4241542053595354454d3a20454e54495459204f434355504945440000604482015260640161068b565b610a21858281518110610a1357610a13614eed565b602002602001015185611221565b600101610982565b5060005b8551811015610ab9576000801b610a4f8783815181106109a4576109a4614eed565b14610a9c5760405162461bcd60e51b815260206004820152601e60248201527f434f4d4241542053595354454d3a20454e54495459204f434355504945440000604482015260640161068b565b610ab1868281518110610a1357610a13614eed565b600101610a2d565b5050509392505050565b6000805b8251811015610b9257610ad8610c53565b6001600160a01b0316634f10aabc848381518110610af857610af8614eed565b60200260200101516040518263ffffffff1660e01b8152600401610b1e91815260200190565b602060405180830381865afa158015610b3b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b5f9190614f25565b6001600160a01b0316846001600160a01b031603610b805760019150610b92565b80610b8a81614f9c565b915050610ac7565b5092915050565b600080610ba583610e99565b905060005b8160c0015151811015610bf6578160c001518181518110610bcd57610bcd614eed565b60200260200101518503610be45760019250610bf6565b80610bee81614f9c565b915050610baa565b5081610b925760005b8160a0015151811015610c4b578160a001518181518110610c2257610c22614eed565b60200260200101518503610c395760019250610c4b565b80610c4381614f9c565b915050610bff565b505092915050565b60006102f66112d5565b610c6e30610c696102ec565b6112df565b6000610c7983610e99565b905060005b8251811015610d71576000838281518110610c9b57610c9b614eed565b602090810291909101810151604080516101a08101825281830151815260608084015182860152835192820192909252928201519083015260006080830181905260a0830181905260c0830181905260e083018190526101008301819052610120830181905261014083015243610160830152426101808301529150610d2181886112f5565b905080610140015115610d3d57610d3d816060015160016114d6565b80610120015115610d5757610d57816040015160016114d6565b610d67868560600151858461155a565b5050600101610c7e565b5060008060005b8360a0015151811015610dc657610dab8460a001518281518110610d9e57610d9e614eed565b6020026020010151611671565b15610dbe5782610dba81614f9c565b9350505b600101610d78565b5060005b8360c0015151811015610e0b57610df08460c001518281518110610d9e57610d9e614eed565b15610e035781610dff81614f9c565b9250505b600101610dca565b508260c0015151811480610e2357508260a001515182145b80610e35575082608001518360600151145b15610e4b57610e44858761170f565b5050610e5f565b60608301805190610e5b82614f9c565b9052505b505050505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c80610e965750335b90565b610eda6040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110610f1057610f10614eed565b602090810291909101015260008080610f697f74625544000000000000000000000000436f6d626174456e636f756e74657200857e81050201202020200000000000000000000000000000000000000000000000611a30565b925092509250610f7a838383611b00565b9695505050505050565b6110198260018484604051602001610f9d929190614fb6565b60408051601f1981840301815290829052610fbc939291602401615086565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb2aa60a400000000000000000000000000000000000000000000000000000000179052611bad565b505050565b6040805160018082528183019092526000918291829160208083019080368337019050509050838160008151811061105857611058614eed565b6020908102919091010152600080806110b17f74625544000000000000000000000000506f736974696f6e0000000000000000857e04020002020000000000000000000000000000000000000000000000000000611a30565b9250925092506110c2838383611c5b565b9550955050505050915091565b60006110f282600001518360200151846040015185606001518660800151611c7e565b905060006111088360a001518460c00151611cb3565b9050600061111e8460a001518560c00151611cde565b6040805160018082528183019092529192506000919060208083019080368337019050509050858160008151811061115857611158614eed565b6020908102919091010152610e5f7f74625544000000000000000000000000436f6d626174456e636f756e7465720082868686611d1a565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106111c9576111c9614eed565b602090810291909101015260006105cd7f746255440000000000000000000000004d61746368456e74697479000000000083837e41030020200100000000000000000000000000000000000000000000000000611dcf565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061125757611257614eed565b6020026020010181815250506110197f746255440000000000000000000000004d61746368456e74697479000000000060001b826000856040516020016112a091815260200190565b60408051601f198184030181529190527e41030020200100000000000000000000000000000000000000000000000000611e8c565b60006102f6611f02565b6112f16112eb83611f41565b82611fde565b5050565b604080516101a081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e081018290526101008101829052610120810182905261014081018290526101608101829052610180810191909152600061136d846000015161202a565b90508060200151516000036113c45760405162461bcd60e51b815260206004820152601560248201527f616374696f6e20646f6573206e6f742065786973740000000000000000000000604482015260640161068b565b805160038111156113d7576113d7614c3a565b60ff1660010361148657600081602001518060200190518101906113fb919061511d565b905061141681866040015187606001518860200151886120df565b151560c0880152158015608088015260e0870191909152611480576000620186a08660e0015161144691906151c8565b611453876060015161251e565b61145d9190615212565b9050600081136114705760016101408701525b61147e8660600151826125b0565b505b506114ce565b60405162461bcd60e51b815260206004820152601a60248201527f616374696f6e2074797065206e6f74207265636f676e697a6564000000000000604482015260640161068b565b509192915050565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061150c5761150c614eed565b6020026020010181815250506110197f746255440000000000000000000000004d61746368456e74697479000000000060001b826002856040516020016112a091151560f81b815260010190565b60006115aa826000015183602001518460400151856060015186608001518760a001518860c001518960e001518a61010001518b61012001518c61014001518d61016001518e6101800151612664565b6040805160038082526080820190925291925060009160609183919060208201848036833701905050905087816000815181106115e9576115e9614eed565b6020026020010181815250508660001b8160018151811061160c5761160c614eed565b6020026020010181815250508560001b8160028151811061162f5761162f614eed565b60209081029190910101526116677f6f745544000000000000000000000000416374696f6e4f7574636f6d6500000082868686611d1a565b5050505050505050565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106116aa576116aa614eed565b602090810291909101015260006117037f746255440000000000000000000000004d61746368456e7469747900000000008360027e41030020200100000000000000000000000000000000000000000000000000611dcf565b90506105cd8160f81c90565b600080600061171d85610e99565b905046617a69036117335743604082015261173a565b4260408201525b600080611745614984565b60005b8460c00151518110156117b25761177b8560c00151828151811061176e5761176e614eed565b60200260200101516126b1565b91508160e001518461178d9190615232565b935060008260a0015113156117aa57826117a681614f9c565b9350505b600101611748565b506000805b8560a001515181101561186c578560a0015181815181106117da576117da614eed565b602002602001015191506117ed82611671565b15611864576117fb82612759565b6118059089615232565b97506118158360e001518a6127eb565b61181f9088615232565b965061182c826000611221565b61186489838860c001518960c00151518d6118479190615245565b8151811061185757611857614eed565b6020026020010151612808565b6001016117b7565b506000805b8660c0015151811015611a18578660c00151818151811061189457611894614eed565b602002602001015191506118a6610c53565b6001600160a01b031663fa1becc4836040518263ffffffff1660e01b81526004016118d391815260200190565b602060405180830381865afa1580156118f0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119149190614f03565b15611a0557611922826126b1565b935060008460a0015113156119fb5787156119c75761193f610c53565b6001600160a01b031663fda0ce5083611958888c615259565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815260048101929092526024820152604401600060405180830381600087803b1580156119ae57600080fd5b505af11580156119c2573d6000803e3d6000fd5b505050505b6000891180156119d75750600085115b156119fb576119e6858a615259565b8460c0018181516119f79190615232565b9052505b611a0582856129a7565b611a10826000611221565b600101611871565b50611a238a876110cf565b5050505050509250929050565b6060600060606000611a40611f02565b9050306001600160a01b03821603611a6957611a5d878787612a50565b93509350935050611af7565b6040517f419b58fd0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063419b58fd90611ab2908a908a908a9060040161526d565b600060405180830381865afa158015611acf573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611a5d91908101906152fa565b93509350939050565b611b416040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b611b4a84612b58565b6080860181905260608601829052604086018390526020860184905285856001811115611b7957611b79614c3a565b6001811115611b8a57611b8a614c3a565b8152505050505050611b9c8383612ba8565b60c083015260a08201529392505050565b6060600080611bc3611bbe8561535d565b612bf7565b91509150816000801b03611c29576040517ffdde54e20000000000000000000000000000000000000000000000000000000081527fffffffff0000000000000000000000000000000000000000000000000000000060003516600482015260240161068b565b6020840180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16821790526105cd8285612cba565b60208301516022840151600091829160f091821c911c5b90969095509350505050565b60608585858585604051602001611c999594939291906153a9565b604051602081830303815290604052905095945050505050565b6000611cd783516020028351602002606081901b603883901b838301171792915050565b9392505050565b6060611ce983612d95565b611cf283612d95565b604051602001611d039291906153e4565b604051602081830303815290604052905092915050565b6000611d24611f02565b9050306001600160a01b03821603611d4857611d438686868686612da5565b610e5f565b6040517f298314fb0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063298314fb90611d959089908990899089908990600401615413565b600060405180830381600087803b158015611daf57600080fd5b505af1158015611dc3573d6000803e3d6000fd5b50505050505050505050565b600080611dda611f02565b9050306001600160a01b03821603611e0057611df886868686612dc2565b9150506105cd565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d5990611e4b908990899089908990600401615464565b602060405180830381865afa158015611e68573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611df89190615493565b6000611e96611f02565b9050306001600160a01b03821603611eb557611d438686868686612df8565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae090611d9590899089908990899089906004016154ac565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b031680611f3c573391505090565b919050565b60408051600180825281830190925260009182919060208083019080368337019050509050826001600160a01b031660001b81600081518110611f8657611f86614eed565b602090810291909101015260006105cd7f7462776f726c6400000000000000000053797374656d5265676973747279000083837e20010020000000000000000000000000000000000000000000000000000000611dcf565b611fe88282612e0d565b6112f157611ff582612e6b565b816040517fd787b73700000000000000000000000000000000000000000000000000000000815260040161068b9291906154f3565b60408051808201909152600081526060602082015260408051600180825281830190925260009160208083019080368337019050509050828160008151811061207557612075614eed565b6020908102919091010152600080806120ce7f74625544000000000000000000000000416374696f6e73000000000000000000857e01010101000000000000000000000000000000000000000000000000000000611a30565b925092509250610f7a838383612fa8565b6000806000806120ed610c53565b6001600160a01b03166354f1f2db896040518263ffffffff1660e01b815260040161211a91815260200190565b61010060405180830381865afa158015612138573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061215c919061551e565b90506000612168610c53565b6001600160a01b03166354f1f2db896040518263ffffffff1660e01b815260040161219591815260200190565b61010060405180830381865afa1580156121b3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121d7919061551e565b905060006121e3610c53565b6001600160a01b031663810c1dc1896040518263ffffffff1660e01b815260040161221091815260200190565b600060405180830381865afa15801561222d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612255919081019061558d565b905060008260a001511315612503576040517f4dddf8370000000000000000000000000000000000000000000000000000000081526004810188905260009073__$227e4555c1f608352b26068e438454dd8b$__90634dddf83790602401600060405180830381865af41580156122d0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526122f89190810190615644565b905061234f8160008151811061231057612310614eed565b602002602001015167ffffffffffffffff168260018151811061233557612335614eed565b602002602001015167ffffffffffffffff168e8787613005565b909650945085156124b657620186a060008d6020015185606001516123749190615212565b13612380576001612394565b8c6020015184606001516123949190615212565b61239e91906156dd565b8451620186a0906123b190600290615259565b8460a001518560800151856002815181106123ce576123ce614eed565b602002602001015167ffffffffffffffff166123ea9190615245565b11156124295784608001518460028151811061240857612408614eed565b602002602001015167ffffffffffffffff166124249190615245565b61242f565b8460a001515b8f5161243b91906156f4565b61244591906156f4565b61244f9190615714565b6124599190615212565b965084156124b15761249f6040518060400160405280600581526020017f4352495421000000000000000000000000000000000000000000000000000000815250613098565b6124aa600288615714565b9650600194505b6124fd565b6124f46040518060400160405280600581526020017f4d49535321000000000000000000000000000000000000000000000000000000815250613098565b60009650600095505b50612510565b6000955060009450600093505b505050955095509592505050565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061255757612557614eed565b602090810291909101015260006105cd7f74625544000000000000000000000000537461747300000000000000000000008360057ee1080020200120202020200000000000000000000000000000000000000000611dcf565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106125e6576125e6614eed565b6020026020010181815250506110197f746255440000000000000000000000005374617473000000000000000000000060001b8260058560405160200161262f91815260200190565b60408051601f198184030181529190527ee1080020200120202020200000000000000000000000000000000000000000611e8c565b60608d8d8d8d8d8d8d8d8d8d8d8d8d60405160200161268f9d9c9b9a99989796959493929190615760565b60405160208183030381529060405290509d9c50505050505050505050505050565b6126b9614984565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106126ef576126ef614eed565b6020908102919091010152600080806127487f7462554400000000000000000000000053746174730000000000000000000000857ee1080020200120202020200000000000000000000000000000000000000000611a30565b925092509250610f7a83838361310c565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061279257612792614eed565b602090810291909101015260006105cd7f74625544000000000000000000000000537461747300000000000000000000008360067ee1080020200120202020200000000000000000000000000000000000000000611dcf565b60006127fe8366038d7ea4c680006156dd565b611cd79083615245565b6000612812610c53565b6001600160a01b03166353d64640846040518263ffffffff1660e01b815260040161283f91815260200190565b602060405180830381865afa15801561285c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128809190615493565b9050600061288d82613184565b8060200190518101906128a09190615851565b905060005b8160c0015151811015610e5f5760006128da8360c0015183815181106128cd576128cd614eed565b60200260200101516131f9565b9050806128ea620186a089615245565b111561299e576128f8610c53565b6001600160a01b031663cd9caca2868560c00151858151811061291d5761291d614eed565b60209081029190910101516040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526004810192909252602482015260016044820152606401600060405180830381600087803b15801561298557600080fd5b505af1158015612999573d6000803e3d6000fd5b505050505b506001016128a5565b60006129d9826000015183602001518460400151856060015186608001518760a001518860c001518960e0015161328e565b604080516001808252818301909252919250600091606091839190602080830190803683370190505090508581600081518110612a1857612a18614eed565b6020908102919091010152610e5f7f746255440000000000000000000000005374617473000000000000000000000082868686611d1a565b6060600060606000612a61856132cc565b9050612a6e8787836132ef565b93506000612a7b86613328565b90508015612b4d57612a8d8888613365565b935066ffffffffffffff841667ffffffffffffffff811115612ab157612ab1614a1c565b6040519080825280601f01601f191660200182016040528015612adb576020820181803683370190505b5092506020830160005b828160ff161015612b4a576000612afd8b8b84613378565b90506000612b1a888460ff166028026038011c64ffffffffff1690565b9050612b2982600083876133f8565b612b338185615232565b935050508080612b4290615919565b915050612ae5565b50505b505093509350939050565b6000806000806000612b6e866000016020015190565b60f81c6001811115612b8257612b82614c3a565b602187015160418801516061890151608190990151929991989097509550909350915050565b6060806000603885901c64ffffffffff16612bcc612bc78684846134c4565b613552565b935090508064ffffffffff606087901c1601612bec612bc78684846134c4565b925050509250929050565b6040805160018082528183019092526000918291829160208083019080368337019050509050837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681600081518110612c5057612c50614eed565b602090810291909101015260008080612ca97f7462776f726c6400000000000000000046756e6374696f6e53656c6563746f72857e24020020040000000000000000000000000000000000000000000000000000611a30565b9250925092506110c2838383613563565b60606000612cc66112d5565b90506001600160a01b0381163003612d07576000612cee612ce5610e67565b6000878761356f565b9350905080612d0057612d00836136aa565b50506102e6565b6040517f3ae7af080000000000000000000000000000000000000000000000000000000081526001600160a01b03821690633ae7af0890612d4e9087908790600401615938565b6000604051808303816000875af1158015612d6d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526105cd9190810190615951565b606081611cd781602060006136b2565b612dbb8585858585612db68b613712565b613797565b5050505050565b6000612def612dd18686613ad0565b60ff858116601b0360080285901c16612dea8587613b26565b613b5f565b95945050505050565b612dbb8585612e078487613b26565b85613bb0565b6000612e5b7f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff0000000000000000000000000000000085161783613e54565b80611cd75750611cd78383613e54565b606081601081901b6000612e7e83613f1d565b9050827fffffffffffffffffffffffffffff000000000000000000000000000000000000831615612ed957612ed47fffffffffffffffffffffffffffff0000000000000000000000000000000000008416613f34565b612f10565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b7fffffffffffffffffffffffffffffffff00000000000000000000000000000000831615612f4657612f4183613f34565b612f7d565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b604051602001612f8f93929190615986565b6040516020818303038152906040529350505050919050565b604080518082019091526000815260606020820152612fc684613fd8565b81906003811115612fd957612fd9614c3a565b90816003811115612fec57612fec614c3a565b905250612ff98383613ff4565b60208201529392505050565b60008080620249f06130196103e88a615245565b61302b87602001518960400151614017565b6130359190615232565b61303f91906156dd565b90506000620186a085602001516103e88a61305a9190615245565b6130649190615232565b61306e91906156dd565b90508082119350831561308c5760026130878284615259565b101592505b50509550959350505050565b613109816040516024016130ac9190615a14565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f41304fac00000000000000000000000000000000000000000000000000000000179052614044565b50565b613114614984565b61311d8461404d565b60e0890181905260c0890182905260a08901839052608089018490526060890185905288602081016040820188600281111561315b5761315b614c3a565b600281111561316c5761316c614c3a565b90529790975250505093909252509195945050505050565b60408051600180825281830190925260609160009190602080830190803683370190505090508260001b816000815181106131c1576131c1614eed565b602090810291909101015260006105cd7f746255440000000000000000000000004d6f627300000000000000000000000083836140bb565b604080516001808252818301909252600091829190602080830190803683370190505090508260001b8160008151811061323557613235614eed565b602090810291909101015260006105cd7f746255440000000000000000000000004974656d7300000000000000000000008360017e21020101200000000000000000000000000000000000000000000000000000611dcf565b606088888888888888886040516020016132af989796959493929190615a27565b604051602081830303815290604052905098975050505050505050565b600060086132dc60026020615a6c565b6132e691906156dd565b9190911c919050565b60608160000361330e5750604080516020810190915260008152611cd7565b600061331a8585613ad0565b9050612def8160008561417a565b6000600860018061333b60026020615a6c565b6133459190615a6c565b61334f9190615a6c565b61335991906156dd565b8260ff911c1692915050565b6000611cd7613374848461419d565b5490565b6000838360405160200161338d929190615a7f565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b821561347f57602083106134225760208304840193506020838161341e5761341e6151b2565b0692505b821561347f5760208390036000818410156134455750600019600884021c61344f565b50600019600882021c5b8554600886021b8184511682198216178452508184116134705750506107e3565b50600194909401939182900391015b5b602082106134a15783548152600190930192601f1990910190602001613480565b81156107e3576000600019600884021c8251865482191691161782525050505050565b6000818311806134d45750835182115b15613511578383836040517f23230fa300000000000000000000000000000000000000000000000000000000815260040161068b93929190615abb565b6020840161351f8482615232565b9050600061352d8585615a6c565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60606000611cd783602060006141f3565b600080611c7285614262565b6000606060008061357f86614277565b90925090506001600160a01b0382166135d0578561359c87612e6b565b6040517ffbf10ce600000000000000000000000000000000000000000000000000000000815260040161068b929190615938565b806135df576135df868961431b565b861561364b577dffffffffffffffffffffffffffff0000000000000000000000000000000086167f6e7300000000000000000000000000000000000000000000000000000000000017600061363382614325565b9050613648826136438b84615232565b6143b6565b50505b60006136578760101b90565b7fffffffffffffffffffffffffffff000000000000000000000000000000000000161461368f5761368a8888848861446a565b61369b565b61369b888884886144e2565b90999098509650505050505050565b805160208201fd5b825160609060006136c385836156dd565b9050604051925060208301601f19603f83860101166040528184526000602088015b84821015613706578051871b835291870191600191909101906020016136e5565b50505050509392505050565b60007f8b9d8c8b908d9affffffffffffffffffab9e9d939a8d00000000000000000000820161376157507e60030220202000000000000000000000000000000000000000000000000000919050565b6102e661378e7f746273746f72650000000000000000005461626c65730000000000000000000084614543565b60206000613b5f565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff000000000000000000000000000000000000000000000000000000000000160361382357857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9868686866040516138169493929190615ae0565b60405180910390a2610e5f565b600061382e8761455f565b905060005b815181101561390757600082828151811061385057613850614eed565b6020026020010151905061387c6001826affffffffffffffffffffff19166145e890919063ffffffff16565b156138fe576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c906138cb908c908c908c908c908c908c90600401615b2a565b600060405180830381600087803b1580156138e557600080fd5b505af11580156138f9573d6000803e3d6000fd5b505050505b50600101613833565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a98787878760405161393e9493929190615ae0565b60405180910390a260006139528888613ad0565b9050600060208701905061396a826000895184614606565b600061397585613328565b11156139f95760006139878a8a61419d565b878155905060208601915060008060005b6139a188613328565b8160ff1610156139f4576139b68d8d83613378565b92506139d18a8260ff166028026038011c64ffffffffff1690565b91506139e08360008488614606565b6139ea8286615232565b9450600101613998565b505050505b60005b8351811015611dc3576000848281518110613a1957613a19614eed565b60200260200101519050613a456002826affffffffffffffffffffff19166145e890919063ffffffff16565b15613ac7576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90613a94908e908e908e908e908e908e90600401615b2a565b600060405180830381600087803b158015613aae57600080fd5b505af1158015613ac2573d6000803e3d6000fd5b505050505b506001016139fc565b60008282604051602001613ae5929190615a7f565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff16811015613b5757613b4d60ff601b83900360080287901c1683615232565b9150600101613b2b565b509392505050565b600060208210613b8557602082048401935060208281613b8157613b816151b2565b0691505b508254600882021b602082900380841115613b57576001850154600882021c82179150509392505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff0000000000000000000000000000000000000000000000000000000000001603613c3a57837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be848484604051613c2d93929190615b83565b60405180910390a26107e3565b6000613c468585613ad0565b90506000613c538661455f565b905060005b8151811015613d28576000828281518110613c7557613c75614eed565b60200260200101519050613ca16004826affffffffffffffffffffff19166145e890919063ffffffff16565b15613d1f576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d90613cec908b908b908b908b90600401615bb6565b600060405180830381600087803b158015613d0657600080fd5b505af1158015613d1a573d6000803e3d6000fd5b505050505b50600101613c58565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be868686604051613d5d93929190615b83565b60405180910390a2613d78828565ffffffffffff16856146c5565b60005b8151811015613e4b576000828281518110613d9857613d98614eed565b60200260200101519050613dc46008826affffffffffffffffffffff19166145e890919063ffffffff16565b15613e42576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba872190613e0f908b908b908b908b90600401615bb6565b600060405180830381600087803b158015613e2957600080fd5b505af1158015613e3d573d6000803e3d6000fd5b505050505b50600101613d7b565b50505050505050565b604080516002808252606082018352600092839291906020830190803683370190505090508381600081518110613e8d57613e8d614eed565b602002602001018181525050826001600160a01b031660001b81600181518110613eb957613eb9614eed565b60209081029190910101526000613f117f7462776f726c640000000000000000005265736f75726365416363657373000083837e01010001000000000000000000000000000000000000000000000000000000611dcf565b9050612def8160f81c90565b6000613f2b60706010615232565b9190911b919050565b606060005b6010811015613f99577fffffffffffffffffffffffffffffffff000000000000000000000000000000008316600882021b7fff000000000000000000000000000000000000000000000000000000000000001615613f9957600101613f39565b604080517fffffffffffffffffffffffffffffffff000000000000000000000000000000008516602082015281516030909101909152818152806105cd565b602081015160009060f81c60038111156102e6576102e6614c3a565b60606000603884901c64ffffffffff16612def6140128584846134c4565b6146db565b60008082126140315761402a8284615232565b90506102e6565b61403a82615bef565b61402a9084615a6c565b6131098161475b565b600080600080600080600080614067896000016020015190565b60408a015160608b0151919950975060f81c600281111561408a5761408a614c3a565b60618a015160818b015160a18c015160c18d015160e1909d01519b9d9a9c939b929a91995097509195509350915050565b606060006140c7611f02565b9050306001600160a01b038216036140ec576140e485858561477c565b915050611cd7565b6040517f1e7889770000000000000000000000000000000000000000000000000000000081526001600160a01b03821690631e7889779061413590889088908890600401615c27565b600060405180830381865afa158015614152573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526140e49190810190615951565b60405160208101601f19603f8484010116604052828252613b57858585846133f8565b600082826040516020016141b2929190615a7f565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b606060006142018560801c90565b90506fffffffffffffffffffffffffffffffff85166000858281614227576142276151b2565b04905060405193506020840160208202810160405281855260005b82811015613706578451871c825293870193602090910190600101614242565b602081015160408201516000905b9050915091565b604080516001808252818301909252600091829182916020808301908036833701905050905083816000815181106142b1576142b1614eed565b60209081029190910101526000808061430a7f7462776f726c6400000000000000000053797374656d73000000000000000000857e15020014010000000000000000000000000000000000000000000000000000612a50565b9250925092506110c28383836147b6565b611fe882826147c2565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061435e5761435e614eed565b602090810291909101015260006105cd7f7462776f726c6400000000000000000042616c616e636573000000000000000083837e20010020000000000000000000000000000000000000000000000000000000612dc2565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106143ec576143ec614eed565b6020026020010181815250506110197f7462776f726c6400000000000000000042616c616e636573000000000000000060001b8260008560405160200161443591815260200190565b60408051601f198184030181529190527e20010020000000000000000000000000000000000000000000000000000000612df8565b60006060836001600160a01b03166000614485858989614820565b6040516144929190615c53565b60006040518083038185875af1925050503d80600081146144cf576040519150601f19603f3d011682016040523d82523d6000602084013e6144d4565b606091505b509097909650945050505050565b60006060836001600160a01b03166144fb848888614820565b6040516145089190615c53565b600060405180830381855af49150503d80600081146144cf576040519150601f19603f3d011682016040523d82523d6000602084013e6144d4565b6040805160208101849052908101829052600090606001613ae5565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061459957614599614eed565b602090810291909101015260006145d17f746273746f726500000000000000000053746f7265486f6f6b73000000000000838361477c565b90506105cd6145e382600084516134c4565b61484f565b60008160ff16826145f98560581c90565b1660ff1614905092915050565b821561468057602083106146305760208304840193506020838161462c5761462c6151b2565b0692505b82156146805760208390036000600019600885021c1990506008850281811c91508351811c90508119875416828216178755508184116146715750506107e3565b50600194909401939182900391015b5b602082106146a25780518455600190930192601f1990910190602001614681565b81156107e3576000600019600884021c8554835182191691161785555050505050565b611019838383516146d68560200190565b614606565b606060006146e98360801c90565b90506fffffffffffffffffffffffffffffffff83168067ffffffffffffffff81111561471757614717614a1c565b6040519080825280601f01601f191660200182016040528015614741576020820181803683370190505b50925060208301614753838284614860565b505050919050565b80516a636f6e736f6c652e6c6f67602083016000808483855afa5050505050565b60606105cd61478c858585613378565b60006147b18561479c8989613365565b9060ff166028026038011c64ffffffffff1690565b61417a565b600080611c72856148ab565b60006148107f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617836148c7565b80611cd75750611cd783836148c7565b606083838360405160200161483793929190615c6f565b60405160208183030381529060405290509392505050565b60606000611cd783601560006141f3565b5b60208110614880578251825260209283019290910190601f1901614861565b8060000361488d57505050565b6000600019600883021c905080835116811985511617835250505050565b6020810151603482015160609190911c9060009060f81c614270565b60408051600280825260608201835260009283929190602083019080368337019050509050838160008151811061490057614900614eed565b602002602001018181525050826001600160a01b031660001b8160018151811061492c5761492c614eed565b60209081029190910101526000613f117f7462776f726c640000000000000000005265736f75726365416363657373000083837e01010001000000000000000000000000000000000000000000000000000000612dc2565b6040518061010001604052806000815260200160008152602001600060028111156149b1576149b1614c3a565b815260200160008152602001600081526020016000815260200160008152602001600081525090565b6000602082840312156149ec57600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114611cd757600080fd5b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715614a5557614a55614a1c565b60405290565b60405160a0810167ffffffffffffffff81118282101715614a5557614a55614a1c565b604051610100810167ffffffffffffffff81118282101715614a5557614a55614a1c565b604051610120810167ffffffffffffffff81118282101715614a5557614a55614a1c565b604051601f8201601f1916810167ffffffffffffffff81118282101715614aef57614aef614a1c565b604052919050565b600067ffffffffffffffff821115614b1157614b11614a1c565b5060051b60200190565b600082601f830112614b2c57600080fd5b81356020614b41614b3c83614af7565b614ac6565b8083825260208201915060208460051b870101935086841115614b6357600080fd5b602086015b84811015614b7f5780358352918301918301614b68565b509695505050505050565b803561ffff81168114611f3c57600080fd5b60008060008060808587031215614bb257600080fd5b843567ffffffffffffffff80821115614bca57600080fd5b614bd688838901614b1b565b95506020870135915080821115614bec57600080fd5b50614bf987828801614b1b565b935050614c0860408601614b8a565b9150614c1660608601614b8a565b905092959194509250565b600060208284031215614c3357600080fd5b5035919050565b634e487b7160e01b600052602160045260246000fd5b60028110614c6057614c60614c3a565b9052565b60008151808452602080850194506020840160005b83811015614c9557815187529582019590820190600101614c79565b509495945050505050565b60208152614cb2602082018351614c50565b602082015160408201526040820151606082015260608201516080820152608082015160a0820152600060a083015160e060c0840152614cf6610100840182614c64565b905060c0840151601f198483030160e0850152612def8282614c64565b600082601f830112614d2457600080fd5b81356020614d34614b3c83614af7565b82815260079290921b84018101918181019086841115614d5357600080fd5b8286015b84811015614b7f5760808189031215614d705760008081fd5b614d78614a32565b8135815284820135858201526040808301359082015260608083013590820152835291830191608001614d57565b600080600060608486031215614dbb57600080fd5b8335925060208401359150604084013567ffffffffffffffff811115614de057600080fd5b614dec86828701614d13565b9150509250925092565b600080600060608486031215614e0b57600080fd5b833560028110614e1a57600080fd5b9250602084013567ffffffffffffffff80821115614e3757600080fd5b614e4387838801614b1b565b93506040860135915080821115614e5957600080fd5b50614dec86828701614b1b565b6001600160a01b038116811461310957600080fd5b60008060408385031215614e8e57600080fd5b8235614e9981614e66565b9150602083013567ffffffffffffffff811115614eb557600080fd5b614ec185828601614b1b565b9150509250929050565b60008060408385031215614ede57600080fd5b50508035926020909101359150565b634e487b7160e01b600052603260045260246000fd5b600060208284031215614f1557600080fd5b81518015158114611cd757600080fd5b600060208284031215614f3757600080fd5b8151611cd781614e66565b614f4c8186614c50565b608060208201526000614f626080830186614c64565b8281036040840152614f748186614c64565b91505082606083015295945050505050565b634e487b7160e01b600052601160045260246000fd5b60006000198203614faf57614faf614f86565b5060010190565b60006040808301858452602060406020860152818651808452606093506060870191506020880160005b8281101561501757815180518552858101518686015287810151888601528601518685015260809093019290840190600101614fe0565b50919998505050505050505050565b6003811061310957613109614c3a565b60005b83811015615051578181015183820152602001615039565b50506000910152565b60008151808452615072816020860160208601615036565b601f01601f19169290920160200192915050565b83815261509283615026565b826020820152606060408201526000612def606083018461505a565b600082601f8301126150bf57600080fd5b815160206150cf614b3c83614af7565b8083825260208201915060208460051b8701019350868411156150f157600080fd5b602086015b84811015614b7f57805160ff811681146151105760008081fd5b83529183019183016150f6565b60006020828403121561512f57600080fd5b815167ffffffffffffffff8082111561514757600080fd5b9083019060a0828603121561515b57600080fd5b615163614a5b565b8251815260208301516020820152604083015160408201526060830151606082015260808301518281111561519757600080fd5b6151a3878286016150ae565b60808301525095945050505050565b634e487b7160e01b600052601260045260246000fd5b6000826151d7576151d76151b2565b60001983147f80000000000000000000000000000000000000000000000000000000000000008314161561520d5761520d614f86565b500590565b8181036000831280158383131683831282161715610b9257610b92614f86565b808201808211156102e6576102e6614f86565b600082615254576152546151b2565b500690565b600082615268576152686151b2565b500490565b8381526060602082015260006152866060830185614c64565b9050826040830152949350505050565b600082601f8301126152a757600080fd5b815167ffffffffffffffff8111156152c1576152c1614a1c565b6152d46020601f19601f84011601614ac6565b8181528460208386010111156152e957600080fd5b6105cd826020830160208701615036565b60008060006060848603121561530f57600080fd5b835167ffffffffffffffff8082111561532757600080fd5b61533387838801615296565b945060208601519350604086015191508082111561535057600080fd5b50614dec86828701615296565b6000815160208301517fffffffff00000000000000000000000000000000000000000000000000000000808216935060048310156147535760049290920360031b82901b161692915050565b6000600287106153bb576153bb614c3a565b5060f89590951b8552600185019390935260218401919091526041830152606182015260810190565b600083516153f6818460208801615036565b83519083019061540a818360208801615036565b01949350505050565b85815260a06020820152600061542c60a0830187614c64565b828103604084015261543e818761505a565b90508460608401528281036080840152615458818561505a565b98975050505050505050565b84815260806020820152600061547d6080830186614c64565b60ff949094166040830152506060015292915050565b6000602082840312156154a557600080fd5b5051919050565b85815260a0602082015260006154c560a0830187614c64565b60ff8616604084015282810360608401526154e0818661505a565b9150508260808301529695505050505050565b604081526000615506604083018561505a565b90506001600160a01b03831660208301529392505050565b6000610100828403121561553157600080fd5b615539614a7e565b825181526020830151602082015260408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e08201528091505092915050565b60006020828403121561559f57600080fd5b815167ffffffffffffffff808211156155b757600080fd5b9083019061010082860312156155cc57600080fd5b6155d4614a7e565b825181526020830151828111156155ea57600080fd5b6155f6878286016150ae565b60208301525060408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e082015280935050505092915050565b6000602080838503121561565757600080fd5b825167ffffffffffffffff8082111561566f57600080fd5b818501915085601f83011261568357600080fd5b8151615691614b3c82614af7565b81815260059190911b830184019084810190888311156156b057600080fd5b938501935b8285101561545857845184811681146156ce5760008081fd5b825293850193908501906156b5565b80820281158282048414176102e6576102e6614f86565b8082018281126000831280158216821582161715610c4b57610c4b614f86565b808202600082127f80000000000000000000000000000000000000000000000000000000000000008414161561574c5761574c614f86565b81810583148215176102e6576102e6614f86565b8d81528c60208201528b60408201528a606082015289151560f81b608082015288151560f81b608182015261579c6082820189151560f81b9052565b8660838201528560a38201526157b960c3820186151560f81b9052565b92151560f81b60c484015260c583019190915260e5820152610105019a9950505050505050505050565b805160038110611f3c57600080fd5b600082601f83011261580357600080fd5b81516020615813614b3c83614af7565b8083825260208201915060208460051b87010193508684111561583557600080fd5b602086015b84811015614b7f578051835291830191830161583a565b60006020828403121561586357600080fd5b815167ffffffffffffffff8082111561587b57600080fd5b90830190610120828603121561589057600080fd5b615898614aa2565b82518152602083015160208201526158b2604084016157e3565b6040820152606083015160608201526080830151608082015260a083015160a082015260c0830151828111156158e757600080fd5b6158f3878286016157f2565b60c08301525060e083810151908201526101009283015192810192909252509392505050565b600060ff821660ff810361592f5761592f614f86565b60010192915050565b8281526040602082015260006105cd604083018461505a565b60006020828403121561596357600080fd5b815167ffffffffffffffff81111561597a57600080fd5b6105cd84828501615296565b7fffff0000000000000000000000000000000000000000000000000000000000008416815260007f3a0000000000000000000000000000000000000000000000000000000000000080600284015284516159e7816003860160208901615036565b808401905081600382015284519150615a07826004830160208801615036565b0160040195945050505050565b602081526000611cd7602083018461505a565b888152876020820152615a3987615026565b60f89690961b604087015260418601949094526061850192909252608184015260a183015260c182015260e10192915050565b818103818111156102e6576102e6614f86565b8281526000602080830184516020860160005b82811015615aae57815184529284019290840190600101615a92565b5091979650505050505050565b606081526000615ace606083018661505a565b60208301949094525060400152919050565b608081526000615af36080830187614c64565b8281036020840152615b05818761505a565b90508460408401528281036060840152615b1f818561505a565b979650505050505050565b86815260c060208201526000615b4360c0830188614c64565b8281036040840152615b55818861505a565b90508560608401528281036080840152615b6f818661505a565b9150508260a0830152979650505050505050565b606081526000615b966060830186614c64565b65ffffffffffff851660208401528281036040840152610f7a818561505a565b848152608060208201526000615bcf6080830186614c64565b65ffffffffffff851660408401528281036060840152615b1f818561505a565b60007f80000000000000000000000000000000000000000000000000000000000000008203615c2057615c20614f86565b5060000390565b838152606060208201526000615c406060830185614c64565b905060ff83166040830152949350505050565b60008251615c65818460208701615036565b9190910192915050565b60008451615c81818460208901615036565b60609490941b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000169190930190815260148101919091526034019291505056fea2646970667358221220430b9ad49aa9c313df5fdd64a42a278d32d8a5f00d94ff80e2078f308e6e6c3a64736f6c63430008180033","sourceMap":"1281:16028:216:-:0;;;;;;;;;;;;;;;;;;;","linkReferences":{"src/libraries/LibChunks.sol":{"LibChunks":[{"start":8887,"length":20}]}}},"deployedBytecode":{"object":"0x6080604052600436106100c75760003560e01c8063aaa417b711610074578063c6ca743c1161004e578063c6ca743c146101fe578063e1af802c1461021e578063fc88ff631461023357600080fd5b8063aaa417b7146101b2578063b2467894146101d2578063bfea0b85146101f257600080fd5b806345ec9354116100a557806345ec93541461014e5780634dda27e81461017057806398d239b11461019d57600080fd5b806301ffc9a7146100cc578063119df25f14610101578063154510201461012e575b600080fd5b3480156100d857600080fd5b506100ec6100e73660046149da565b610253565b60405190151581526020015b60405180910390f35b34801561010d57600080fd5b506101166102ec565b6040516001600160a01b0390911681526020016100f8565b34801561013a57600080fd5b506100ec610149366004614b9c565b6102fb565b34801561015a57600080fd5b5036601f1901355b6040519081526020016100f8565b34801561017c57600080fd5b5061019061018b366004614c21565b6105d5565b6040516100f89190614ca0565b6101b06101ab366004614da6565b61061f565b005b3480156101be57600080fd5b506101626101cd366004614df6565b6107e9565b3480156101de57600080fd5b506100ec6101ed366004614e7b565b610ac3565b3480156101b057600080fd5b34801561020a57600080fd5b506100ec610219366004614ecb565b610b99565b34801561022a57600080fd5b50610116610c53565b34801561023f57600080fd5b506101b061024e366004614da6565b610c5d565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee1270000000000000000000000000000000000000000000000000000000014806102e657507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b60006102f6610e67565b905090565b600160005b855181101561046057610311610c53565b6001600160a01b031663fa1becc487838151811061033157610331614eed565b60200260200101516040518263ffffffff1660e01b815260040161035791815260200190565b602060405180830381865afa158015610374573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103989190614f03565b6103a55760009150610460565b6103ad610c53565b6001600160a01b031663f48a39728783815181106103cd576103cd614eed565b602002602001015186866040518463ffffffff1660e01b815260040161040a9392919092835261ffff918216602084015216604082015260600190565b602060405180830381865afa158015610427573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061044b9190614f03565b6104585760009150610460565b600101610300565b5080156105cd5760005b84518110156105cb5761047b610c53565b6001600160a01b031663fa1becc486838151811061049b5761049b614eed565b60200260200101516040518263ffffffff1660e01b81526004016104c191815260200190565b602060405180830381865afa1580156104de573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105029190614f03565b1561051057600091506105cb565b610518610c53565b6001600160a01b031663f48a397286838151811061053857610538614eed565b602002602001015186866040518463ffffffff1660e01b81526004016105759392919092835261ffff918216602084015216604082015260600190565b602060405180830381865afa158015610592573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105b69190614f03565b6105c357600091506105cb565b60010161046a565b505b949350505050565b6106166040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b6102e682610e99565b600061062a84610e99565b9050806020015160001415801561064357506040810151155b6106945760405162461bcd60e51b815260206004820181905260248201527f434f4d4241542053595354454d3a20494e56414c494420454e434f554e54455260448201526064015b60405180910390fd5b80608001518160600151106106eb5760405162461bcd60e51b815260206004820181905260248201527f434f4d4241542053595354454d3a204558504952454420454e434f554e544552604482015260640161068b565b6106f36102ec565b6001600160a01b0316610704610c53565b6001600160a01b0316634f10aabc856040518263ffffffff1660e01b815260040161073191815260200190565b602060405180830381865afa15801561074e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107729190614f25565b6001600160a01b031614801561078d575061078d8385610b99565b6107d95760405162461bcd60e51b815260206004820152601c60248201527f434f4d4241542053595354454d3a204e4f4e2d434f4d424154414e5400000000604482015260640161068b565b6107e38483610f84565b50505050565b60006107fc6107f66102ec565b84610ac3565b6108485760405162461bcd60e51b815260206004820152601d60248201527f434f4d4241542053595354454d3a20494e56414c49442053454e444552000000604482015260640161068b565b60008061086e8560008151811061086157610861614eed565b602002602001015161101e565b9150915085600181111561088457610884614c3a565b60010361096c57610897858584846102fb565b6108e35760405162461bcd60e51b815260206004820152601a60248201527f434f4d4241542053595354454d3a20494e56414c494420505645000000000000604482015260640161068b565b60405142906108fc908890889088908590602001614f42565b60405160208183030381529060405280519060200120935060006040518060e0016040528089600181111561093357610933614c3a565b81526020018381526020016000815260200160008152602001600f815260200187815260200188815250905061096985826110cf565b50505b85600181111561097e5761097e614c3a565b5060005b8451811015610a29576000801b6109b18683815181106109a4576109a4614eed565b6020026020010151611190565b146109fe5760405162461bcd60e51b815260206004820152601e60248201527f434f4d4241542053595354454d3a20454e54495459204f434355504945440000604482015260640161068b565b610a21858281518110610a1357610a13614eed565b602002602001015185611221565b600101610982565b5060005b8551811015610ab9576000801b610a4f8783815181106109a4576109a4614eed565b14610a9c5760405162461bcd60e51b815260206004820152601e60248201527f434f4d4241542053595354454d3a20454e54495459204f434355504945440000604482015260640161068b565b610ab1868281518110610a1357610a13614eed565b600101610a2d565b5050509392505050565b6000805b8251811015610b9257610ad8610c53565b6001600160a01b0316634f10aabc848381518110610af857610af8614eed565b60200260200101516040518263ffffffff1660e01b8152600401610b1e91815260200190565b602060405180830381865afa158015610b3b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b5f9190614f25565b6001600160a01b0316846001600160a01b031603610b805760019150610b92565b80610b8a81614f9c565b915050610ac7565b5092915050565b600080610ba583610e99565b905060005b8160c0015151811015610bf6578160c001518181518110610bcd57610bcd614eed565b60200260200101518503610be45760019250610bf6565b80610bee81614f9c565b915050610baa565b5081610b925760005b8160a0015151811015610c4b578160a001518181518110610c2257610c22614eed565b60200260200101518503610c395760019250610c4b565b80610c4381614f9c565b915050610bff565b505092915050565b60006102f66112d5565b610c6e30610c696102ec565b6112df565b6000610c7983610e99565b905060005b8251811015610d71576000838281518110610c9b57610c9b614eed565b602090810291909101810151604080516101a08101825281830151815260608084015182860152835192820192909252928201519083015260006080830181905260a0830181905260c0830181905260e083018190526101008301819052610120830181905261014083015243610160830152426101808301529150610d2181886112f5565b905080610140015115610d3d57610d3d816060015160016114d6565b80610120015115610d5757610d57816040015160016114d6565b610d67868560600151858461155a565b5050600101610c7e565b5060008060005b8360a0015151811015610dc657610dab8460a001518281518110610d9e57610d9e614eed565b6020026020010151611671565b15610dbe5782610dba81614f9c565b9350505b600101610d78565b5060005b8360c0015151811015610e0b57610df08460c001518281518110610d9e57610d9e614eed565b15610e035781610dff81614f9c565b9250505b600101610dca565b508260c0015151811480610e2357508260a001515182145b80610e35575082608001518360600151145b15610e4b57610e44858761170f565b5050610e5f565b60608301805190610e5b82614f9c565b9052505b505050505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c80610e965750335b90565b610eda6040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110610f1057610f10614eed565b602090810291909101015260008080610f697f74625544000000000000000000000000436f6d626174456e636f756e74657200857e81050201202020200000000000000000000000000000000000000000000000611a30565b925092509250610f7a838383611b00565b9695505050505050565b6110198260018484604051602001610f9d929190614fb6565b60408051601f1981840301815290829052610fbc939291602401615086565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb2aa60a400000000000000000000000000000000000000000000000000000000179052611bad565b505050565b6040805160018082528183019092526000918291829160208083019080368337019050509050838160008151811061105857611058614eed565b6020908102919091010152600080806110b17f74625544000000000000000000000000506f736974696f6e0000000000000000857e04020002020000000000000000000000000000000000000000000000000000611a30565b9250925092506110c2838383611c5b565b9550955050505050915091565b60006110f282600001518360200151846040015185606001518660800151611c7e565b905060006111088360a001518460c00151611cb3565b9050600061111e8460a001518560c00151611cde565b6040805160018082528183019092529192506000919060208083019080368337019050509050858160008151811061115857611158614eed565b6020908102919091010152610e5f7f74625544000000000000000000000000436f6d626174456e636f756e7465720082868686611d1a565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106111c9576111c9614eed565b602090810291909101015260006105cd7f746255440000000000000000000000004d61746368456e74697479000000000083837e41030020200100000000000000000000000000000000000000000000000000611dcf565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061125757611257614eed565b6020026020010181815250506110197f746255440000000000000000000000004d61746368456e74697479000000000060001b826000856040516020016112a091815260200190565b60408051601f198184030181529190527e41030020200100000000000000000000000000000000000000000000000000611e8c565b60006102f6611f02565b6112f16112eb83611f41565b82611fde565b5050565b604080516101a081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e081018290526101008101829052610120810182905261014081018290526101608101829052610180810191909152600061136d846000015161202a565b90508060200151516000036113c45760405162461bcd60e51b815260206004820152601560248201527f616374696f6e20646f6573206e6f742065786973740000000000000000000000604482015260640161068b565b805160038111156113d7576113d7614c3a565b60ff1660010361148657600081602001518060200190518101906113fb919061511d565b905061141681866040015187606001518860200151886120df565b151560c0880152158015608088015260e0870191909152611480576000620186a08660e0015161144691906151c8565b611453876060015161251e565b61145d9190615212565b9050600081136114705760016101408701525b61147e8660600151826125b0565b505b506114ce565b60405162461bcd60e51b815260206004820152601a60248201527f616374696f6e2074797065206e6f74207265636f676e697a6564000000000000604482015260640161068b565b509192915050565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061150c5761150c614eed565b6020026020010181815250506110197f746255440000000000000000000000004d61746368456e74697479000000000060001b826002856040516020016112a091151560f81b815260010190565b60006115aa826000015183602001518460400151856060015186608001518760a001518860c001518960e001518a61010001518b61012001518c61014001518d61016001518e6101800151612664565b6040805160038082526080820190925291925060009160609183919060208201848036833701905050905087816000815181106115e9576115e9614eed565b6020026020010181815250508660001b8160018151811061160c5761160c614eed565b6020026020010181815250508560001b8160028151811061162f5761162f614eed565b60209081029190910101526116677f6f745544000000000000000000000000416374696f6e4f7574636f6d6500000082868686611d1a565b5050505050505050565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106116aa576116aa614eed565b602090810291909101015260006117037f746255440000000000000000000000004d61746368456e7469747900000000008360027e41030020200100000000000000000000000000000000000000000000000000611dcf565b90506105cd8160f81c90565b600080600061171d85610e99565b905046617a69036117335743604082015261173a565b4260408201525b600080611745614984565b60005b8460c00151518110156117b25761177b8560c00151828151811061176e5761176e614eed565b60200260200101516126b1565b91508160e001518461178d9190615232565b935060008260a0015113156117aa57826117a681614f9c565b9350505b600101611748565b506000805b8560a001515181101561186c578560a0015181815181106117da576117da614eed565b602002602001015191506117ed82611671565b15611864576117fb82612759565b6118059089615232565b97506118158360e001518a6127eb565b61181f9088615232565b965061182c826000611221565b61186489838860c001518960c00151518d6118479190615245565b8151811061185757611857614eed565b6020026020010151612808565b6001016117b7565b506000805b8660c0015151811015611a18578660c00151818151811061189457611894614eed565b602002602001015191506118a6610c53565b6001600160a01b031663fa1becc4836040518263ffffffff1660e01b81526004016118d391815260200190565b602060405180830381865afa1580156118f0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119149190614f03565b15611a0557611922826126b1565b935060008460a0015113156119fb5787156119c75761193f610c53565b6001600160a01b031663fda0ce5083611958888c615259565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815260048101929092526024820152604401600060405180830381600087803b1580156119ae57600080fd5b505af11580156119c2573d6000803e3d6000fd5b505050505b6000891180156119d75750600085115b156119fb576119e6858a615259565b8460c0018181516119f79190615232565b9052505b611a0582856129a7565b611a10826000611221565b600101611871565b50611a238a876110cf565b5050505050509250929050565b6060600060606000611a40611f02565b9050306001600160a01b03821603611a6957611a5d878787612a50565b93509350935050611af7565b6040517f419b58fd0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063419b58fd90611ab2908a908a908a9060040161526d565b600060405180830381865afa158015611acf573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611a5d91908101906152fa565b93509350939050565b611b416040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b611b4a84612b58565b6080860181905260608601829052604086018390526020860184905285856001811115611b7957611b79614c3a565b6001811115611b8a57611b8a614c3a565b8152505050505050611b9c8383612ba8565b60c083015260a08201529392505050565b6060600080611bc3611bbe8561535d565b612bf7565b91509150816000801b03611c29576040517ffdde54e20000000000000000000000000000000000000000000000000000000081527fffffffff0000000000000000000000000000000000000000000000000000000060003516600482015260240161068b565b6020840180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16821790526105cd8285612cba565b60208301516022840151600091829160f091821c911c5b90969095509350505050565b60608585858585604051602001611c999594939291906153a9565b604051602081830303815290604052905095945050505050565b6000611cd783516020028351602002606081901b603883901b838301171792915050565b9392505050565b6060611ce983612d95565b611cf283612d95565b604051602001611d039291906153e4565b604051602081830303815290604052905092915050565b6000611d24611f02565b9050306001600160a01b03821603611d4857611d438686868686612da5565b610e5f565b6040517f298314fb0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063298314fb90611d959089908990899089908990600401615413565b600060405180830381600087803b158015611daf57600080fd5b505af1158015611dc3573d6000803e3d6000fd5b50505050505050505050565b600080611dda611f02565b9050306001600160a01b03821603611e0057611df886868686612dc2565b9150506105cd565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d5990611e4b908990899089908990600401615464565b602060405180830381865afa158015611e68573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611df89190615493565b6000611e96611f02565b9050306001600160a01b03821603611eb557611d438686868686612df8565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae090611d9590899089908990899089906004016154ac565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b031680611f3c573391505090565b919050565b60408051600180825281830190925260009182919060208083019080368337019050509050826001600160a01b031660001b81600081518110611f8657611f86614eed565b602090810291909101015260006105cd7f7462776f726c6400000000000000000053797374656d5265676973747279000083837e20010020000000000000000000000000000000000000000000000000000000611dcf565b611fe88282612e0d565b6112f157611ff582612e6b565b816040517fd787b73700000000000000000000000000000000000000000000000000000000815260040161068b9291906154f3565b60408051808201909152600081526060602082015260408051600180825281830190925260009160208083019080368337019050509050828160008151811061207557612075614eed565b6020908102919091010152600080806120ce7f74625544000000000000000000000000416374696f6e73000000000000000000857e01010101000000000000000000000000000000000000000000000000000000611a30565b925092509250610f7a838383612fa8565b6000806000806120ed610c53565b6001600160a01b03166354f1f2db896040518263ffffffff1660e01b815260040161211a91815260200190565b61010060405180830381865afa158015612138573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061215c919061551e565b90506000612168610c53565b6001600160a01b03166354f1f2db896040518263ffffffff1660e01b815260040161219591815260200190565b61010060405180830381865afa1580156121b3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121d7919061551e565b905060006121e3610c53565b6001600160a01b031663810c1dc1896040518263ffffffff1660e01b815260040161221091815260200190565b600060405180830381865afa15801561222d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612255919081019061558d565b905060008260a001511315612503576040517f4dddf8370000000000000000000000000000000000000000000000000000000081526004810188905260009073__$227e4555c1f608352b26068e438454dd8b$__90634dddf83790602401600060405180830381865af41580156122d0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526122f89190810190615644565b905061234f8160008151811061231057612310614eed565b602002602001015167ffffffffffffffff168260018151811061233557612335614eed565b602002602001015167ffffffffffffffff168e8787613005565b909650945085156124b657620186a060008d6020015185606001516123749190615212565b13612380576001612394565b8c6020015184606001516123949190615212565b61239e91906156dd565b8451620186a0906123b190600290615259565b8460a001518560800151856002815181106123ce576123ce614eed565b602002602001015167ffffffffffffffff166123ea9190615245565b11156124295784608001518460028151811061240857612408614eed565b602002602001015167ffffffffffffffff166124249190615245565b61242f565b8460a001515b8f5161243b91906156f4565b61244591906156f4565b61244f9190615714565b6124599190615212565b965084156124b15761249f6040518060400160405280600581526020017f4352495421000000000000000000000000000000000000000000000000000000815250613098565b6124aa600288615714565b9650600194505b6124fd565b6124f46040518060400160405280600581526020017f4d49535321000000000000000000000000000000000000000000000000000000815250613098565b60009650600095505b50612510565b6000955060009450600093505b505050955095509592505050565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061255757612557614eed565b602090810291909101015260006105cd7f74625544000000000000000000000000537461747300000000000000000000008360057ee1080020200120202020200000000000000000000000000000000000000000611dcf565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106125e6576125e6614eed565b6020026020010181815250506110197f746255440000000000000000000000005374617473000000000000000000000060001b8260058560405160200161262f91815260200190565b60408051601f198184030181529190527ee1080020200120202020200000000000000000000000000000000000000000611e8c565b60608d8d8d8d8d8d8d8d8d8d8d8d8d60405160200161268f9d9c9b9a99989796959493929190615760565b60405160208183030381529060405290509d9c50505050505050505050505050565b6126b9614984565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106126ef576126ef614eed565b6020908102919091010152600080806127487f7462554400000000000000000000000053746174730000000000000000000000857ee1080020200120202020200000000000000000000000000000000000000000611a30565b925092509250610f7a83838361310c565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061279257612792614eed565b602090810291909101015260006105cd7f74625544000000000000000000000000537461747300000000000000000000008360067ee1080020200120202020200000000000000000000000000000000000000000611dcf565b60006127fe8366038d7ea4c680006156dd565b611cd79083615245565b6000612812610c53565b6001600160a01b03166353d64640846040518263ffffffff1660e01b815260040161283f91815260200190565b602060405180830381865afa15801561285c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128809190615493565b9050600061288d82613184565b8060200190518101906128a09190615851565b905060005b8160c0015151811015610e5f5760006128da8360c0015183815181106128cd576128cd614eed565b60200260200101516131f9565b9050806128ea620186a089615245565b111561299e576128f8610c53565b6001600160a01b031663cd9caca2868560c00151858151811061291d5761291d614eed565b60209081029190910101516040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526004810192909252602482015260016044820152606401600060405180830381600087803b15801561298557600080fd5b505af1158015612999573d6000803e3d6000fd5b505050505b506001016128a5565b60006129d9826000015183602001518460400151856060015186608001518760a001518860c001518960e0015161328e565b604080516001808252818301909252919250600091606091839190602080830190803683370190505090508581600081518110612a1857612a18614eed565b6020908102919091010152610e5f7f746255440000000000000000000000005374617473000000000000000000000082868686611d1a565b6060600060606000612a61856132cc565b9050612a6e8787836132ef565b93506000612a7b86613328565b90508015612b4d57612a8d8888613365565b935066ffffffffffffff841667ffffffffffffffff811115612ab157612ab1614a1c565b6040519080825280601f01601f191660200182016040528015612adb576020820181803683370190505b5092506020830160005b828160ff161015612b4a576000612afd8b8b84613378565b90506000612b1a888460ff166028026038011c64ffffffffff1690565b9050612b2982600083876133f8565b612b338185615232565b935050508080612b4290615919565b915050612ae5565b50505b505093509350939050565b6000806000806000612b6e866000016020015190565b60f81c6001811115612b8257612b82614c3a565b602187015160418801516061890151608190990151929991989097509550909350915050565b6060806000603885901c64ffffffffff16612bcc612bc78684846134c4565b613552565b935090508064ffffffffff606087901c1601612bec612bc78684846134c4565b925050509250929050565b6040805160018082528183019092526000918291829160208083019080368337019050509050837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681600081518110612c5057612c50614eed565b602090810291909101015260008080612ca97f7462776f726c6400000000000000000046756e6374696f6e53656c6563746f72857e24020020040000000000000000000000000000000000000000000000000000611a30565b9250925092506110c2838383613563565b60606000612cc66112d5565b90506001600160a01b0381163003612d07576000612cee612ce5610e67565b6000878761356f565b9350905080612d0057612d00836136aa565b50506102e6565b6040517f3ae7af080000000000000000000000000000000000000000000000000000000081526001600160a01b03821690633ae7af0890612d4e9087908790600401615938565b6000604051808303816000875af1158015612d6d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526105cd9190810190615951565b606081611cd781602060006136b2565b612dbb8585858585612db68b613712565b613797565b5050505050565b6000612def612dd18686613ad0565b60ff858116601b0360080285901c16612dea8587613b26565b613b5f565b95945050505050565b612dbb8585612e078487613b26565b85613bb0565b6000612e5b7f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff0000000000000000000000000000000085161783613e54565b80611cd75750611cd78383613e54565b606081601081901b6000612e7e83613f1d565b9050827fffffffffffffffffffffffffffff000000000000000000000000000000000000831615612ed957612ed47fffffffffffffffffffffffffffff0000000000000000000000000000000000008416613f34565b612f10565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b7fffffffffffffffffffffffffffffffff00000000000000000000000000000000831615612f4657612f4183613f34565b612f7d565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b604051602001612f8f93929190615986565b6040516020818303038152906040529350505050919050565b604080518082019091526000815260606020820152612fc684613fd8565b81906003811115612fd957612fd9614c3a565b90816003811115612fec57612fec614c3a565b905250612ff98383613ff4565b60208201529392505050565b60008080620249f06130196103e88a615245565b61302b87602001518960400151614017565b6130359190615232565b61303f91906156dd565b90506000620186a085602001516103e88a61305a9190615245565b6130649190615232565b61306e91906156dd565b90508082119350831561308c5760026130878284615259565b101592505b50509550959350505050565b613109816040516024016130ac9190615a14565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f41304fac00000000000000000000000000000000000000000000000000000000179052614044565b50565b613114614984565b61311d8461404d565b60e0890181905260c0890182905260a08901839052608089018490526060890185905288602081016040820188600281111561315b5761315b614c3a565b600281111561316c5761316c614c3a565b90529790975250505093909252509195945050505050565b60408051600180825281830190925260609160009190602080830190803683370190505090508260001b816000815181106131c1576131c1614eed565b602090810291909101015260006105cd7f746255440000000000000000000000004d6f627300000000000000000000000083836140bb565b604080516001808252818301909252600091829190602080830190803683370190505090508260001b8160008151811061323557613235614eed565b602090810291909101015260006105cd7f746255440000000000000000000000004974656d7300000000000000000000008360017e21020101200000000000000000000000000000000000000000000000000000611dcf565b606088888888888888886040516020016132af989796959493929190615a27565b604051602081830303815290604052905098975050505050505050565b600060086132dc60026020615a6c565b6132e691906156dd565b9190911c919050565b60608160000361330e5750604080516020810190915260008152611cd7565b600061331a8585613ad0565b9050612def8160008561417a565b6000600860018061333b60026020615a6c565b6133459190615a6c565b61334f9190615a6c565b61335991906156dd565b8260ff911c1692915050565b6000611cd7613374848461419d565b5490565b6000838360405160200161338d929190615a7f565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b821561347f57602083106134225760208304840193506020838161341e5761341e6151b2565b0692505b821561347f5760208390036000818410156134455750600019600884021c61344f565b50600019600882021c5b8554600886021b8184511682198216178452508184116134705750506107e3565b50600194909401939182900391015b5b602082106134a15783548152600190930192601f1990910190602001613480565b81156107e3576000600019600884021c8251865482191691161782525050505050565b6000818311806134d45750835182115b15613511578383836040517f23230fa300000000000000000000000000000000000000000000000000000000815260040161068b93929190615abb565b6020840161351f8482615232565b9050600061352d8585615a6c565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60606000611cd783602060006141f3565b600080611c7285614262565b6000606060008061357f86614277565b90925090506001600160a01b0382166135d0578561359c87612e6b565b6040517ffbf10ce600000000000000000000000000000000000000000000000000000000815260040161068b929190615938565b806135df576135df868961431b565b861561364b577dffffffffffffffffffffffffffff0000000000000000000000000000000086167f6e7300000000000000000000000000000000000000000000000000000000000017600061363382614325565b9050613648826136438b84615232565b6143b6565b50505b60006136578760101b90565b7fffffffffffffffffffffffffffff000000000000000000000000000000000000161461368f5761368a8888848861446a565b61369b565b61369b888884886144e2565b90999098509650505050505050565b805160208201fd5b825160609060006136c385836156dd565b9050604051925060208301601f19603f83860101166040528184526000602088015b84821015613706578051871b835291870191600191909101906020016136e5565b50505050509392505050565b60007f8b9d8c8b908d9affffffffffffffffffab9e9d939a8d00000000000000000000820161376157507e60030220202000000000000000000000000000000000000000000000000000919050565b6102e661378e7f746273746f72650000000000000000005461626c65730000000000000000000084614543565b60206000613b5f565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff000000000000000000000000000000000000000000000000000000000000160361382357857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9868686866040516138169493929190615ae0565b60405180910390a2610e5f565b600061382e8761455f565b905060005b815181101561390757600082828151811061385057613850614eed565b6020026020010151905061387c6001826affffffffffffffffffffff19166145e890919063ffffffff16565b156138fe576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c906138cb908c908c908c908c908c908c90600401615b2a565b600060405180830381600087803b1580156138e557600080fd5b505af11580156138f9573d6000803e3d6000fd5b505050505b50600101613833565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a98787878760405161393e9493929190615ae0565b60405180910390a260006139528888613ad0565b9050600060208701905061396a826000895184614606565b600061397585613328565b11156139f95760006139878a8a61419d565b878155905060208601915060008060005b6139a188613328565b8160ff1610156139f4576139b68d8d83613378565b92506139d18a8260ff166028026038011c64ffffffffff1690565b91506139e08360008488614606565b6139ea8286615232565b9450600101613998565b505050505b60005b8351811015611dc3576000848281518110613a1957613a19614eed565b60200260200101519050613a456002826affffffffffffffffffffff19166145e890919063ffffffff16565b15613ac7576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90613a94908e908e908e908e908e908e90600401615b2a565b600060405180830381600087803b158015613aae57600080fd5b505af1158015613ac2573d6000803e3d6000fd5b505050505b506001016139fc565b60008282604051602001613ae5929190615a7f565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff16811015613b5757613b4d60ff601b83900360080287901c1683615232565b9150600101613b2b565b509392505050565b600060208210613b8557602082048401935060208281613b8157613b816151b2565b0691505b508254600882021b602082900380841115613b57576001850154600882021c82179150509392505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff0000000000000000000000000000000000000000000000000000000000001603613c3a57837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be848484604051613c2d93929190615b83565b60405180910390a26107e3565b6000613c468585613ad0565b90506000613c538661455f565b905060005b8151811015613d28576000828281518110613c7557613c75614eed565b60200260200101519050613ca16004826affffffffffffffffffffff19166145e890919063ffffffff16565b15613d1f576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d90613cec908b908b908b908b90600401615bb6565b600060405180830381600087803b158015613d0657600080fd5b505af1158015613d1a573d6000803e3d6000fd5b505050505b50600101613c58565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be868686604051613d5d93929190615b83565b60405180910390a2613d78828565ffffffffffff16856146c5565b60005b8151811015613e4b576000828281518110613d9857613d98614eed565b60200260200101519050613dc46008826affffffffffffffffffffff19166145e890919063ffffffff16565b15613e42576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba872190613e0f908b908b908b908b90600401615bb6565b600060405180830381600087803b158015613e2957600080fd5b505af1158015613e3d573d6000803e3d6000fd5b505050505b50600101613d7b565b50505050505050565b604080516002808252606082018352600092839291906020830190803683370190505090508381600081518110613e8d57613e8d614eed565b602002602001018181525050826001600160a01b031660001b81600181518110613eb957613eb9614eed565b60209081029190910101526000613f117f7462776f726c640000000000000000005265736f75726365416363657373000083837e01010001000000000000000000000000000000000000000000000000000000611dcf565b9050612def8160f81c90565b6000613f2b60706010615232565b9190911b919050565b606060005b6010811015613f99577fffffffffffffffffffffffffffffffff000000000000000000000000000000008316600882021b7fff000000000000000000000000000000000000000000000000000000000000001615613f9957600101613f39565b604080517fffffffffffffffffffffffffffffffff000000000000000000000000000000008516602082015281516030909101909152818152806105cd565b602081015160009060f81c60038111156102e6576102e6614c3a565b60606000603884901c64ffffffffff16612def6140128584846134c4565b6146db565b60008082126140315761402a8284615232565b90506102e6565b61403a82615bef565b61402a9084615a6c565b6131098161475b565b600080600080600080600080614067896000016020015190565b60408a015160608b0151919950975060f81c600281111561408a5761408a614c3a565b60618a015160818b015160a18c015160c18d015160e1909d01519b9d9a9c939b929a91995097509195509350915050565b606060006140c7611f02565b9050306001600160a01b038216036140ec576140e485858561477c565b915050611cd7565b6040517f1e7889770000000000000000000000000000000000000000000000000000000081526001600160a01b03821690631e7889779061413590889088908890600401615c27565b600060405180830381865afa158015614152573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526140e49190810190615951565b60405160208101601f19603f8484010116604052828252613b57858585846133f8565b600082826040516020016141b2929190615a7f565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b606060006142018560801c90565b90506fffffffffffffffffffffffffffffffff85166000858281614227576142276151b2565b04905060405193506020840160208202810160405281855260005b82811015613706578451871c825293870193602090910190600101614242565b602081015160408201516000905b9050915091565b604080516001808252818301909252600091829182916020808301908036833701905050905083816000815181106142b1576142b1614eed565b60209081029190910101526000808061430a7f7462776f726c6400000000000000000053797374656d73000000000000000000857e15020014010000000000000000000000000000000000000000000000000000612a50565b9250925092506110c28383836147b6565b611fe882826147c2565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061435e5761435e614eed565b602090810291909101015260006105cd7f7462776f726c6400000000000000000042616c616e636573000000000000000083837e20010020000000000000000000000000000000000000000000000000000000612dc2565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106143ec576143ec614eed565b6020026020010181815250506110197f7462776f726c6400000000000000000042616c616e636573000000000000000060001b8260008560405160200161443591815260200190565b60408051601f198184030181529190527e20010020000000000000000000000000000000000000000000000000000000612df8565b60006060836001600160a01b03166000614485858989614820565b6040516144929190615c53565b60006040518083038185875af1925050503d80600081146144cf576040519150601f19603f3d011682016040523d82523d6000602084013e6144d4565b606091505b509097909650945050505050565b60006060836001600160a01b03166144fb848888614820565b6040516145089190615c53565b600060405180830381855af49150503d80600081146144cf576040519150601f19603f3d011682016040523d82523d6000602084013e6144d4565b6040805160208101849052908101829052600090606001613ae5565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061459957614599614eed565b602090810291909101015260006145d17f746273746f726500000000000000000053746f7265486f6f6b73000000000000838361477c565b90506105cd6145e382600084516134c4565b61484f565b60008160ff16826145f98560581c90565b1660ff1614905092915050565b821561468057602083106146305760208304840193506020838161462c5761462c6151b2565b0692505b82156146805760208390036000600019600885021c1990506008850281811c91508351811c90508119875416828216178755508184116146715750506107e3565b50600194909401939182900391015b5b602082106146a25780518455600190930192601f1990910190602001614681565b81156107e3576000600019600884021c8554835182191691161785555050505050565b611019838383516146d68560200190565b614606565b606060006146e98360801c90565b90506fffffffffffffffffffffffffffffffff83168067ffffffffffffffff81111561471757614717614a1c565b6040519080825280601f01601f191660200182016040528015614741576020820181803683370190505b50925060208301614753838284614860565b505050919050565b80516a636f6e736f6c652e6c6f67602083016000808483855afa5050505050565b60606105cd61478c858585613378565b60006147b18561479c8989613365565b9060ff166028026038011c64ffffffffff1690565b61417a565b600080611c72856148ab565b60006148107f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617836148c7565b80611cd75750611cd783836148c7565b606083838360405160200161483793929190615c6f565b60405160208183030381529060405290509392505050565b60606000611cd783601560006141f3565b5b60208110614880578251825260209283019290910190601f1901614861565b8060000361488d57505050565b6000600019600883021c905080835116811985511617835250505050565b6020810151603482015160609190911c9060009060f81c614270565b60408051600280825260608201835260009283929190602083019080368337019050509050838160008151811061490057614900614eed565b602002602001018181525050826001600160a01b031660001b8160018151811061492c5761492c614eed565b60209081029190910101526000613f117f7462776f726c640000000000000000005265736f75726365416363657373000083837e01010001000000000000000000000000000000000000000000000000000000612dc2565b6040518061010001604052806000815260200160008152602001600060028111156149b1576149b1614c3a565b815260200160008152602001600081526020016000815260200160008152602001600081525090565b6000602082840312156149ec57600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114611cd757600080fd5b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715614a5557614a55614a1c565b60405290565b60405160a0810167ffffffffffffffff81118282101715614a5557614a55614a1c565b604051610100810167ffffffffffffffff81118282101715614a5557614a55614a1c565b604051610120810167ffffffffffffffff81118282101715614a5557614a55614a1c565b604051601f8201601f1916810167ffffffffffffffff81118282101715614aef57614aef614a1c565b604052919050565b600067ffffffffffffffff821115614b1157614b11614a1c565b5060051b60200190565b600082601f830112614b2c57600080fd5b81356020614b41614b3c83614af7565b614ac6565b8083825260208201915060208460051b870101935086841115614b6357600080fd5b602086015b84811015614b7f5780358352918301918301614b68565b509695505050505050565b803561ffff81168114611f3c57600080fd5b60008060008060808587031215614bb257600080fd5b843567ffffffffffffffff80821115614bca57600080fd5b614bd688838901614b1b565b95506020870135915080821115614bec57600080fd5b50614bf987828801614b1b565b935050614c0860408601614b8a565b9150614c1660608601614b8a565b905092959194509250565b600060208284031215614c3357600080fd5b5035919050565b634e487b7160e01b600052602160045260246000fd5b60028110614c6057614c60614c3a565b9052565b60008151808452602080850194506020840160005b83811015614c9557815187529582019590820190600101614c79565b509495945050505050565b60208152614cb2602082018351614c50565b602082015160408201526040820151606082015260608201516080820152608082015160a0820152600060a083015160e060c0840152614cf6610100840182614c64565b905060c0840151601f198483030160e0850152612def8282614c64565b600082601f830112614d2457600080fd5b81356020614d34614b3c83614af7565b82815260079290921b84018101918181019086841115614d5357600080fd5b8286015b84811015614b7f5760808189031215614d705760008081fd5b614d78614a32565b8135815284820135858201526040808301359082015260608083013590820152835291830191608001614d57565b600080600060608486031215614dbb57600080fd5b8335925060208401359150604084013567ffffffffffffffff811115614de057600080fd5b614dec86828701614d13565b9150509250925092565b600080600060608486031215614e0b57600080fd5b833560028110614e1a57600080fd5b9250602084013567ffffffffffffffff80821115614e3757600080fd5b614e4387838801614b1b565b93506040860135915080821115614e5957600080fd5b50614dec86828701614b1b565b6001600160a01b038116811461310957600080fd5b60008060408385031215614e8e57600080fd5b8235614e9981614e66565b9150602083013567ffffffffffffffff811115614eb557600080fd5b614ec185828601614b1b565b9150509250929050565b60008060408385031215614ede57600080fd5b50508035926020909101359150565b634e487b7160e01b600052603260045260246000fd5b600060208284031215614f1557600080fd5b81518015158114611cd757600080fd5b600060208284031215614f3757600080fd5b8151611cd781614e66565b614f4c8186614c50565b608060208201526000614f626080830186614c64565b8281036040840152614f748186614c64565b91505082606083015295945050505050565b634e487b7160e01b600052601160045260246000fd5b60006000198203614faf57614faf614f86565b5060010190565b60006040808301858452602060406020860152818651808452606093506060870191506020880160005b8281101561501757815180518552858101518686015287810151888601528601518685015260809093019290840190600101614fe0565b50919998505050505050505050565b6003811061310957613109614c3a565b60005b83811015615051578181015183820152602001615039565b50506000910152565b60008151808452615072816020860160208601615036565b601f01601f19169290920160200192915050565b83815261509283615026565b826020820152606060408201526000612def606083018461505a565b600082601f8301126150bf57600080fd5b815160206150cf614b3c83614af7565b8083825260208201915060208460051b8701019350868411156150f157600080fd5b602086015b84811015614b7f57805160ff811681146151105760008081fd5b83529183019183016150f6565b60006020828403121561512f57600080fd5b815167ffffffffffffffff8082111561514757600080fd5b9083019060a0828603121561515b57600080fd5b615163614a5b565b8251815260208301516020820152604083015160408201526060830151606082015260808301518281111561519757600080fd5b6151a3878286016150ae565b60808301525095945050505050565b634e487b7160e01b600052601260045260246000fd5b6000826151d7576151d76151b2565b60001983147f80000000000000000000000000000000000000000000000000000000000000008314161561520d5761520d614f86565b500590565b8181036000831280158383131683831282161715610b9257610b92614f86565b808201808211156102e6576102e6614f86565b600082615254576152546151b2565b500690565b600082615268576152686151b2565b500490565b8381526060602082015260006152866060830185614c64565b9050826040830152949350505050565b600082601f8301126152a757600080fd5b815167ffffffffffffffff8111156152c1576152c1614a1c565b6152d46020601f19601f84011601614ac6565b8181528460208386010111156152e957600080fd5b6105cd826020830160208701615036565b60008060006060848603121561530f57600080fd5b835167ffffffffffffffff8082111561532757600080fd5b61533387838801615296565b945060208601519350604086015191508082111561535057600080fd5b50614dec86828701615296565b6000815160208301517fffffffff00000000000000000000000000000000000000000000000000000000808216935060048310156147535760049290920360031b82901b161692915050565b6000600287106153bb576153bb614c3a565b5060f89590951b8552600185019390935260218401919091526041830152606182015260810190565b600083516153f6818460208801615036565b83519083019061540a818360208801615036565b01949350505050565b85815260a06020820152600061542c60a0830187614c64565b828103604084015261543e818761505a565b90508460608401528281036080840152615458818561505a565b98975050505050505050565b84815260806020820152600061547d6080830186614c64565b60ff949094166040830152506060015292915050565b6000602082840312156154a557600080fd5b5051919050565b85815260a0602082015260006154c560a0830187614c64565b60ff8616604084015282810360608401526154e0818661505a565b9150508260808301529695505050505050565b604081526000615506604083018561505a565b90506001600160a01b03831660208301529392505050565b6000610100828403121561553157600080fd5b615539614a7e565b825181526020830151602082015260408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e08201528091505092915050565b60006020828403121561559f57600080fd5b815167ffffffffffffffff808211156155b757600080fd5b9083019061010082860312156155cc57600080fd5b6155d4614a7e565b825181526020830151828111156155ea57600080fd5b6155f6878286016150ae565b60208301525060408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e082015280935050505092915050565b6000602080838503121561565757600080fd5b825167ffffffffffffffff8082111561566f57600080fd5b818501915085601f83011261568357600080fd5b8151615691614b3c82614af7565b81815260059190911b830184019084810190888311156156b057600080fd5b938501935b8285101561545857845184811681146156ce5760008081fd5b825293850193908501906156b5565b80820281158282048414176102e6576102e6614f86565b8082018281126000831280158216821582161715610c4b57610c4b614f86565b808202600082127f80000000000000000000000000000000000000000000000000000000000000008414161561574c5761574c614f86565b81810583148215176102e6576102e6614f86565b8d81528c60208201528b60408201528a606082015289151560f81b608082015288151560f81b608182015261579c6082820189151560f81b9052565b8660838201528560a38201526157b960c3820186151560f81b9052565b92151560f81b60c484015260c583019190915260e5820152610105019a9950505050505050505050565b805160038110611f3c57600080fd5b600082601f83011261580357600080fd5b81516020615813614b3c83614af7565b8083825260208201915060208460051b87010193508684111561583557600080fd5b602086015b84811015614b7f578051835291830191830161583a565b60006020828403121561586357600080fd5b815167ffffffffffffffff8082111561587b57600080fd5b90830190610120828603121561589057600080fd5b615898614aa2565b82518152602083015160208201526158b2604084016157e3565b6040820152606083015160608201526080830151608082015260a083015160a082015260c0830151828111156158e757600080fd5b6158f3878286016157f2565b60c08301525060e083810151908201526101009283015192810192909252509392505050565b600060ff821660ff810361592f5761592f614f86565b60010192915050565b8281526040602082015260006105cd604083018461505a565b60006020828403121561596357600080fd5b815167ffffffffffffffff81111561597a57600080fd5b6105cd84828501615296565b7fffff0000000000000000000000000000000000000000000000000000000000008416815260007f3a0000000000000000000000000000000000000000000000000000000000000080600284015284516159e7816003860160208901615036565b808401905081600382015284519150615a07826004830160208801615036565b0160040195945050505050565b602081526000611cd7602083018461505a565b888152876020820152615a3987615026565b60f89690961b604087015260418601949094526061850192909252608184015260a183015260c182015260e10192915050565b818103818111156102e6576102e6614f86565b8281526000602080830184516020860160005b82811015615aae57815184529284019290840190600101615a92565b5091979650505050505050565b606081526000615ace606083018661505a565b60208301949094525060400152919050565b608081526000615af36080830187614c64565b8281036020840152615b05818761505a565b90508460408401528281036060840152615b1f818561505a565b979650505050505050565b86815260c060208201526000615b4360c0830188614c64565b8281036040840152615b55818861505a565b90508560608401528281036080840152615b6f818661505a565b9150508260a0830152979650505050505050565b606081526000615b966060830186614c64565b65ffffffffffff851660208401528281036040840152610f7a818561505a565b848152608060208201526000615bcf6080830186614c64565b65ffffffffffff851660408401528281036060840152615b1f818561505a565b60007f80000000000000000000000000000000000000000000000000000000000000008203615c2057615c20614f86565b5060000390565b838152606060208201526000615c406060830185614c64565b905060ff83166040830152949350505050565b60008251615c65818460208701615036565b9190910192915050565b60008451615c81818460208901615036565b60609490941b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000169190930190815260148101919091526034019291505056fea2646970667358221220430b9ad49aa9c313df5fdd64a42a278d32d8a5f00d94ff80e2078f308e6e6c3a64736f6c63430008180033","sourceMap":"1281:16028:216:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2331:198:123;;;;;;;;;;-1:-1:-1;2331:198:123;;;;;:::i;:::-;;:::i;:::-;;;516:14:233;;509:22;491:41;;479:2;464:18;2331:198:123;;;;;;;;1262:113;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;707:55:233;;;689:74;;677:2;662:18;1262:113:123;543:226:233;3032:1020:216;;;;;;;;;;-1:-1:-1;3032:1020:216;;;;;:::i;:::-;;:::i;1616:110:123:-;;;;;;;;;;-1:-1:-1;3800:14:123;-1:-1:-1;;3796:25:123;3783:39;1616:110;;;4251:25:233;;;4239:2;4224:18;1616:110:123;4105:177:233;12413:163:216;;;;;;;;;;-1:-1:-1;12413:163:216;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;4226:630::-;;;;;;:::i;:::-;;:::i;:::-;;1487:1539;;;;;;;;;;-1:-1:-1;1487:1539:216;;;;;:::i;:::-;;:::i;5653:391::-;;;;;;;;;;-1:-1:-1;5653:391:216;;;;;:::i;:::-;;:::i;13522:42::-;;;;;;;;;4862:785;;;;;;;;;;-1:-1:-1;4862:785:216;;;;;:::i;:::-;;:::i;1942:98:123:-;;;;;;;;;;;;;:::i;6050:2386:216:-;;;;;;;;;;-1:-1:-1;6050:2386:216;;;;;:::i;:::-;;:::i;2331:198:123:-;2407:4;2426:54;;;2441:39;2426:54;;:98;;-1:-1:-1;2484:40:123;;;2499:25;2484:40;2426:98;2419:105;2331:198;-1:-1:-1;;2331:198:123:o;1262:113::-;1305:14;1334:36;:34;:36::i;:::-;1327:43;;1262:113;:::o;3032:1020:216:-;3219:4;3173:16;3233:350;3253:9;:16;3249:1;:20;3233:350;;;3302:8;:6;:8::i;:::-;-1:-1:-1;;;;;3295:39:216;;3335:9;3345:1;3335:12;;;;;;;;:::i;:::-;;;;;;;3295:53;;;;;;;;;;;;;4251:25:233;;4239:2;4224:18;;4105:177;3295:53:216;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3290:135;;3382:5;3368:19;;3405:5;;3290:135;3450:8;:6;:8::i;:::-;-1:-1:-1;;;;;3443:33:216;;3477:9;3487:1;3477:12;;;;;;;;:::i;:::-;;;;;;;3491:1;3494;3443:53;;;;;;;;;;;;;;;;10903:25:233;;;10947:6;10989:15;;;10984:2;10969:18;;10962:43;11041:15;11036:2;11021:18;;11014:43;10891:2;10876:18;;10705:358;3443:53:216;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3438:135;;3530:5;3516:19;;3553:5;;3438:135;3271:3;;3233:350;;;;3596:11;3592:426;;;3628:9;3623:385;3643:9;:16;3639:1;:20;3623:385;;;3695:8;:6;:8::i;:::-;-1:-1:-1;;;;;3688:39:216;;3728:9;3738:1;3728:12;;;;;;;;:::i;:::-;;;;;;;3688:53;;;;;;;;;;;;;4251:25:233;;4239:2;4224:18;;4105:177;3688:53:216;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3684:146;;;3779:5;3765:19;;3806:5;;3684:146;3859:8;:6;:8::i;:::-;-1:-1:-1;;;;;3852:33:216;;3886:9;3896:1;3886:12;;;;;;;;:::i;:::-;;;;;;;3900:1;3903;3852:53;;;;;;;;;;;;;;;;10903:25:233;;;10947:6;10989:15;;;10984:2;10969:18;;10962:43;11041:15;11036:2;11021:18;;11014:43;10891:2;10876:18;;10705:358;3852:53:216;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3847:147;;3943:5;3929:19;;3970:5;;3847:147;3661:3;;3623:385;;;;3592:426;3032:1020;;;;;;:::o;12413:163::-;12477:41;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12477:41:216;12537:32;12557:11;12537:19;:32::i;4226:630::-;4332:40;4375:32;4395:11;4375:19;:32::i;:::-;4332:75;;4425:13;:19;;;4448:1;4425:24;;:50;;;;-1:-1:-1;4453:17:216;;;;:22;4425:50;4417:95;;;;-1:-1:-1;;;4417:95:216;;11270:2:233;4417:95:216;;;11252:21:233;;;11289:18;;;11282:30;11348:34;11328:18;;;11321:62;11400:18;;4417:95:216;;;;;;;;;4558:13;:22;;;4530:13;:25;;;:50;4522:95;;;;-1:-1:-1;;;4522:95:216;;11631:2:233;4522:95:216;;;11613:21:233;;;11650:18;;;11643:30;11709:34;11689:18;;;11682:62;11761:18;;4522:95:216;11429:356:233;4522:95:216;4698:12;:10;:12::i;:::-;-1:-1:-1;;;;;4648:62:216;4655:8;:6;:8::i;:::-;-1:-1:-1;;;;;4648:36:216;;4685:8;4648:46;;;;;;;;;;;;;4251:25:233;;4239:2;4224:18;;4105:177;4648:46:216;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;4648:62:216;;:102;;;;;4714:36;4728:8;4738:11;4714:13;:36::i;:::-;4627:177;;;;-1:-1:-1;;;4627:177:216;;12248:2:233;4627:177:216;;;12230:21:233;12287:2;12267:18;;;12260:30;12326;12306:18;;;12299:58;12374:18;;4627:177:216;12046:352:233;4627:177:216;4814:35;4828:11;4841:7;4814:13;:35::i;:::-;4322:534;4226:630;;;:::o;1487:1539::-;1625:19;1668:38;1682:12;:10;:12::i;:::-;1696:9;1668:13;:38::i;:::-;1660:80;;;;-1:-1:-1;;;1660:80:216;;12605:2:233;1660:80:216;;;12587:21:233;12644:2;12624:18;;;12617:30;12683:31;12663:18;;;12656:59;12732:18;;1660:80:216;12403:353:233;1660:80:216;1751:8;1761;1773:26;1786:9;1796:1;1786:12;;;;;;;;:::i;:::-;;;;;;;1773;:26::i;:::-;1750:49;;;;1822:13;1814:22;;;;;;;;:::i;:::-;1840:1;1814:27;1810:686;;1865:38;1876:9;1887;1898:1;1901;1865:10;:38::i;:::-;1857:77;;;;-1:-1:-1;;;1857:77:216;;12963:2:233;1857:77:216;;;12945:21:233;13002:2;12982:18;;;12975:30;13041:28;13021:18;;;13014:56;13087:18;;1857:77:216;12761:350:233;1857:77:216;2021:58;;1968:15;;2021:58;;2032:13;;2047:9;;2058;;1968:15;;2021:58;;;:::i;:::-;;;;;;;;;;;;;2011:69;;;;;;1997:83;;2094:37;2134:292;;;;;;;;2187:13;2134:292;;;;;;;;:::i;:::-;;;;;2225:9;2134:292;;;;2257:1;2134:292;;;;2289:1;2134:292;;;;403:2:0;2134:292:216;;;;2364:9;2134:292;;;;2402:9;2134:292;;;2094:332;;2441:44;2461:11;2474:10;2441:19;:44::i;:::-;1843:653;;1810:686;2515:13;2509:20;;;;;;;;:::i;:::-;:25;2552:9;2547:232;2567:9;:16;2563:1;:20;2547:232;;;2664:1;2656:10;;2612:40;2639:9;2649:1;2639:12;;;;;;;;:::i;:::-;;;;;;;2612:26;:40::i;:::-;:54;2604:97;;;;-1:-1:-1;;;2604:97:216;;14480:2:233;2604:97:216;;;14462:21:233;14519:2;14499:18;;;14492:30;14558:32;14538:18;;;14531:60;14608:18;;2604:97:216;14278:354:233;2604:97:216;2715:53;2742:9;2752:1;2742:12;;;;;;;;:::i;:::-;;;;;;;2756:11;2715:26;:53::i;:::-;2585:3;;2547:232;;;;2793:9;2788:232;2808:9;:16;2804:1;:20;2788:232;;;2905:1;2897:10;;2853:40;2880:9;2890:1;2880:12;;;;;;;;:::i;2853:40::-;:54;2845:97;;;;-1:-1:-1;;;2845:97:216;;14480:2:233;2845:97:216;;;14462:21:233;14519:2;14499:18;;;14492:30;14558:32;14538:18;;;14531:60;14608:18;;2845:97:216;14278:354:233;2845:97:216;2956:53;2983:9;2993:1;2983:12;;;;;;;;:::i;2956:53::-;2826:3;;2788:232;;;;1650:1376;;1487:1539;;;;;:::o;5653:391::-;5745:19;5781:9;5776:262;5796:12;:19;5792:1;:23;5776:262;;;5854:8;:6;:8::i;:::-;-1:-1:-1;;;;;5847:36:216;;5884:12;5897:1;5884:15;;;;;;;;:::i;:::-;;;;;;;5847:53;;;;;;;;;;;;;4251:25:233;;4239:2;4224:18;;4105:177;5847:53:216;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;5836:64:216;:7;-1:-1:-1;;;;;5836:64:216;;5832:147;;5937:4;5920:21;;5959:5;;5832:147;6010:3;;;;:::i;:::-;;;;5776:262;;;;5653:391;;;;:::o;4862:785::-;4945:19;4976:40;5019:32;5039:11;5019:19;:32::i;:::-;4976:75;;5066:9;5061:247;5081:13;:23;;;:30;5077:1;:34;5061:247;;;5144:13;:23;;;5168:1;5144:26;;;;;;;;:::i;:::-;;;;;;;5132:8;:38;5128:121;;5207:4;5190:21;;5229:5;;5128:121;5280:3;;;;:::i;:::-;;;;5061:247;;;;5322:14;5317:324;;5357:9;5352:279;5372:13;:23;;;:30;5368:1;:34;5352:279;;;5439:13;:23;;;5463:1;5439:26;;;;;;;;:::i;:::-;;;;;;;5427:8;:38;5423:133;;5506:4;5489:21;;5532:5;;5423:133;5595:3;;;;:::i;:::-;;;;5352:279;;;;4966:681;4862:785;;;;:::o;1942:98:123:-;1981:7;2003:32;:30;:32::i;6050:2386:216:-;6229:43;6252:4;6259:12;:10;:12::i;:::-;6229:14;:43::i;:::-;6312:40;6355:32;6375:11;6355:19;:32::i;:::-;6312:75;;6403:9;6398:1274;6418:7;:14;6414:1;:18;6398:1274;;;6453:27;6483:7;6491:1;6483:10;;;;;;;;:::i;:::-;;;;;;;;;;;;6553:578;;;;;;;;6599:22;;;;6553:578;;6649:22;;;;;6553:578;;;;6701:30;;6553:578;;;;;;;6761:30;;;;6553:578;;;;6508:42;6553:578;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7060:12;6553:578;;;;7101:15;6553:578;;;;6483:10;-1:-1:-1;7196:47:216;6553:578;7230:12;7196:14;:47::i;:::-;7176:67;;7261:17;:30;;;7257:124;;;7311:55;7331:17;:28;;;7361:4;7311:19;:55::i;:::-;7398:17;:30;;;7394:124;;;7448:55;7468:17;:28;;;7498:4;7448:19;:55::i;:::-;7582:79;7600:11;7613:13;:25;;;7640:1;7643:17;7582;:79::i;:::-;-1:-1:-1;;6434:3:216;;6398:1274;;;;7682:27;7719;7761:9;7756:156;7776:13;:23;;;:30;7772:1;:34;7756:156;;;7831:47;7851:13;:23;;;7875:1;7851:26;;;;;;;;:::i;:::-;;;;;;;7831:19;:47::i;:::-;7827:74;;;7880:21;;;;:::i;:::-;;;;7827:74;7808:3;;7756:156;;;;7926:9;7921:156;7941:13;:23;;;:30;7937:1;:34;7921:156;;;7996:47;8016:13;:23;;;8040:1;8016:26;;;;;;;;:::i;7996:47::-;7992:74;;;8045:21;;;;:::i;:::-;;;;7992:74;7973:3;;7921:156;;;;8126:13;:23;;;:30;8103:19;:53;:126;;;;8199:13;:23;;;:30;8176:19;:53;8103:126;:197;;;;8278:13;:22;;;8249:13;:25;;;:51;8103:197;8086:344;;;8325:36;8335:11;8348:12;8325:9;:36::i;:::-;;;8086:344;;;8392:25;;;:27;;;;;;:::i;:::-;;;-1:-1:-1;8086:344:216;6148:2288;;;6050:2386;;;:::o;2992:383:123:-;3278:34;3282:14;3278:34;3265:48;3259:4;3255:59;;3325:45;;-1:-1:-1;3360:10:123;3325:45;2992:383;:::o;19860:418:180:-;19917:33;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19917:33:180;19987:16;;;20001:1;19987:16;;;;;;;;;19958:26;;19987:16;;;;;;;;;;;-1:-1:-1;19987:16:180;19958:45;;20024:11;20009:9;20019:1;20009:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;20043:24;;;20130:80;1334:66;20175:9;1463:66;20130:21;:80::i;:::-;20042:168;;;;;;20223:50;20230:11;20243:15;20260:12;20223:6;:50::i;:::-;20216:57;19860:418;-1:-1:-1;;;;;;19860:418:180:o;8442:241:216:-;8530:146;8596:11;8609:21;8643:11;8656:7;8632:32;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;8632:32:216;;;;;;;;;;8561:105;;;;;;;:::i;:::-;;;;-1:-1:-1;;8561:105:216;;;;;;;;;;;;;;;;;;;;8530:17;:146::i;:::-;;8442:241;;:::o;4891:393:192:-;4998:16;;;5012:1;4998:16;;;;;;;;;4943:8;;;;;;4998:16;;;;;;;;;;;-1:-1:-1;4998:16:192;4969:45;;5035:6;5020:9;5030:1;5020:12;;;;;;;;:::i;:::-;;;;;;;;;;:21;5049:24;;;5136:80;1065:66;5181:9;1194:66;5136:21;:80::i;:::-;5048:168;;;;;;5229:50;5236:11;5249:15;5266:12;5229:6;:50::i;:::-;5222:57;;;;;;;;4891:393;;;:::o;22274:598:180:-;22358:24;22385:133;22405:6;:20;;;22433:6;:12;;;22453:6;:10;;;22471:6;:18;;;22497:6;:15;;;22385:12;:133::i;:::-;22358:160;;22525:30;22558:49;22572:6;:16;;;22590:6;:16;;;22558:13;:49::i;:::-;22525:82;;22613:25;22641:49;22655:6;:16;;;22673:6;:16;;;22641:13;:49::i;:::-;22726:16;;;22740:1;22726:16;;;;;;;;;22613:77;;-1:-1:-1;22697:26:180;;22726:16;;;;;;;;;;;;-1:-1:-1;22726:16:180;22697:45;;22763:11;22748:9;22758:1;22748:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;22781:86;1334:66;22813:9;22824:11;22837:15;22854:12;22781:21;:86::i;2779:297:187:-;2905:16;;;2919:1;2905:16;;;;;;;;;2849:19;;;;2905:16;;;;;;;;;;;;-1:-1:-1;2905:16:187;2876:45;;2942:13;2927:9;2937:1;2927:12;;;;;;;;:::i;:::-;;;;;;;;;;:28;2962:13;2978:64;1157:66;3015:9;2962:13;1286:66;2978:26;:64::i;3464:271::-;3576:16;;;3590:1;3576:16;;;;;;;;;3547:26;;3576:16;;;;;;;;;;;-1:-1:-1;3576:16:187;3547:45;;3613:13;3598:9;3608:1;3598:12;;;;;;;;:::i;:::-;;;;;;:28;;;;;3633:97;1157:66;1141:83;;3670:9;3681:1;3702:11;3684:31;;;;;;17299:19:233;;17343:2;17334:12;;17170:182;3684:31:187;;;;-1:-1:-1;;3684:31:187;;;;;;;;;1286:66;3633:26;:97::i;4048::123:-;4089:7;4111:29;:27;:29::i;2631:154:224:-;2707:75;2738:35;2757:15;2738:18;:35::i;:::-;2775:6;2707:30;:75::i;:::-;2631:154;;:::o;8689:1499:216:-;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8880:29:216;8912:39;8924:17;:26;;;8912:11;:39::i;:::-;8880:71;;8969:10;:22;;;:29;9002:1;8969:34;8961:68;;;;-1:-1:-1;;;8961:68:216;;17559:2:233;8961:68:216;;;17541:21:233;17598:2;17578:18;;;17571:30;17637:23;17617:18;;;17610:51;17678:18;;8961:68:216;17357:345:233;8961:68:216;9096:21;;9090:28;;;;;;;;:::i;:::-;:33;;9122:1;9090:33;9086:1061;;9171:38;9223:10;:22;;;9212:57;;;;;;;;;;;;:::i;:::-;9171:98;;9415:233;9457:11;9486:17;:28;;;9532:17;:28;;;9578:17;:26;;;9622:12;9415:24;:233::i;:::-;9315:333;;9377:22;;;9315:333;;;;9354:21;;;9315:333;9316:36;;;9315:333;;;;9698:372;;9743:16;531:7:0;9840:17:216;:36;;;:62;;;;:::i;:::-;9762:48;9781:17;:28;;;9762:18;:48::i;:::-;:141;;;;:::i;:::-;9743:160;;9938:1;9925:9;:14;9921:57;;9974:4;9941:30;;;:37;9921:57;9996:59;10015:17;:28;;;10045:9;9996:18;:59::i;:::-;9725:345;9698:372;9125:955;9086:1061;;;10100:36;;-1:-1:-1;;;10100:36:216;;20304:2:233;10100:36:216;;;20286:21:233;20343:2;20323:18;;;20316:30;20382:28;20362:18;;;20355:56;20428:18;;10100:36:216;20102:350:233;9086:1061:216;-1:-1:-1;10164:17:216;;8689:1499;-1:-1:-1;;8689:1499:216:o;6105:247:187:-;6200:16;;;6214:1;6200:16;;;;;;;;;6171:26;;6200:16;;;;;;;;;;;-1:-1:-1;6200:16:187;6171:45;;6237:13;6222:9;6232:1;6222:12;;;;;;;;:::i;:::-;;;;;;:28;;;;;6257:90;1157:66;1141:83;;6294:9;6305:1;6326:4;6308:24;;;;;;20714:14:233;20707:22;20702:3;20698:32;20686:45;;20756:1;20747:11;;20563:201;17615:863:175;17760:24;17787:340;17807:6;:15;;;17830:6;:15;;;17853:6;:17;;;17878:6;:17;;;17903:6;:10;;;17921:6;:11;;;17940:6;:11;;;17959:6;:25;;;17992:6;:25;;;18025:6;:19;;;18052:6;:19;;;18079:6;:18;;;18105:6;:16;;;17787:12;:340::i;:::-;18231:16;;;18245:1;18231:16;;;;;;;;;17760:367;;-1:-1:-1;18134:30:175;;18170:25;;18134:30;;18231:16;;;;18170:25;;18231:16;;;;;-1:-1:-1;18231:16:175;18202:45;;18268:11;18253:9;18263:1;18253:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;18316:11;18300:29;;18285:9;18295:1;18285:12;;;;;;;;:::i;:::-;;;;;;:44;;;;;18366:12;18350:30;;18335:9;18345:1;18335:12;;;;;;;;:::i;:::-;;;;;;;;;;:45;18387:86;1380:66;18419:9;18430:11;18443:15;18460:12;18387:21;:86::i;:::-;17754:724;;;;17615:863;;;;:::o;5438:295:187:-;5547:16;;;5561:1;5547:16;;;;;;;;;5501:9;;;;5547:16;;;;;;;;;;;;-1:-1:-1;5547:16:187;5518:45;;5584:13;5569:9;5579:1;5569:12;;;;;;;;:::i;:::-;;;;;;;;;;:28;5604:13;5620:64;1157:66;5657:9;5668:1;1286:66;5620:26;:64::i;:::-;5604:80;;5698:29;5719:5;5706:20;;12543:5;12457:97;13570:2789:216;13666:17;13685:18;13719:40;13762:32;13782:11;13762:19;:32::i;:::-;13719:75;;13809:13;13826:5;13809:22;13805:151;;13867:12;13847:17;;;:32;13805:151;;;13930:15;13910:17;;;:35;13805:151;14012:32;14054:23;14088:26;;:::i;:::-;14130:9;14125:280;14145:13;:23;;;:30;14141:1;:34;14125:280;;;14208:37;14218:13;:23;;;14242:1;14218:26;;;;;;;;:::i;:::-;;;;;;;14208:9;:37::i;:::-;14196:49;;14287:9;:15;;;14259:43;;;;;:::i;:::-;;;14342:1;14320:9;:19;;;:23;14316:79;;;14363:17;;;;:::i;:::-;;;;14316:79;14177:3;;14125:280;;;;14603:20;14638:9;14633:579;14653:13;:23;;;:30;14649:1;:34;14633:579;;;14719:13;:23;;;14743:1;14719:26;;;;;;;;:::i;:::-;;;;;;;14704:41;;14763:33;14783:12;14763:19;:33::i;:::-;14759:443;;;14829:33;14849:12;14829:19;:33::i;:::-;14816:46;;;;:::i;:::-;;;14894:49;14913:9;:15;;;14930:12;14894:18;:49::i;:::-;14880:63;;;;:::i;:::-;;-1:-1:-1;14961:52:216;14988:12;15010:1;14961:26;:52::i;:::-;15031:156;15071:12;15085;15099:13;:23;;;15138:13;:23;;;:30;15123:12;:45;;;;:::i;:::-;15099:70;;;;;;;;:::i;:::-;;;;;;;15031:18;:156::i;:::-;14685:3;;14633:579;;;;15457:20;15492:9;15487:809;15507:13;:23;;;:30;15503:1;:34;15487:809;;;15573:13;:23;;;15597:1;15573:26;;;;;;;;:::i;:::-;;;;;;;15558:41;;15624:8;:6;:8::i;:::-;-1:-1:-1;;;;;15617:39:216;;15657:12;15617:53;;;;;;;;;;;;;4251:25:233;;4239:2;4224:18;;4105:177;15617:53:216;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15613:607;;;15702:23;15712:12;15702:9;:23::i;:::-;15690:35;;15776:1;15747:9;:19;;;:31;15743:411;;;15806:23;;15802:153;;15864:8;:6;:8::i;:::-;-1:-1:-1;;;;;15857:29:216;;15887:12;15902:28;15915:15;15902:10;:28;:::i;:::-;15857:75;;;;;;;;;;;;;21315:25:233;;;;21356:18;;;21349:34;21288:18;;15857:75:216;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15802:153;16000:1;15980:9;:22;:54;;;;;16032:1;16006:15;:28;15980:54;15976:160;;;16086:27;16098:15;16086:9;:27;:::i;:::-;16062:9;:20;;:51;;;;;;;:::i;:::-;;;-1:-1:-1;15976:160:216;16171:34;16181:12;16195:9;16171;:34::i;:::-;16233:52;16260:12;16282:1;16233:26;:52::i;:::-;15539:3;;15487:809;;;;16305:47;16325:11;16338:13;16305:19;:47::i;:::-;13709:2650;;;;;;13570:2789;;;;;:::o;15347:431:46:-;15477:12;15491:14;15507:12;15527:21;15551:17;:15;:17::i;:::-;15527:41;-1:-1:-1;15603:4:46;-1:-1:-1;;;;;15578:30:46;;;15574:200;;15625:51;15645:7;15654:8;15664:11;15625:19;:51::i;:::-;15618:58;;;;;;;;;15574:200;15704:63;;;;;-1:-1:-1;;;;;15704:31:46;;;;;:63;;15736:7;;15745:8;;15755:11;;15704:63;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;15704:63:46;;;;;;;;;;;;:::i;15347:431::-;;;;;;;;:::o;25028:389:180:-;25168:33;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25168:33:180;25297:25;25310:11;25297:12;:25::i;:::-;25278:15;;;25209:113;;;25258:18;;;25209:113;;;25246:10;;;25209:113;;;25232:12;;;25209:113;;;25210:6;25209:113;;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;;25368:44;25382:15;25399:12;25368:13;:44::i;:::-;25348:16;;;25329:83;25330:16;;;25329:83;25330:6;25028:389;-1:-1:-1;;;25028:389:180:o;3318:662:107:-;3373:23;3516:19;;3570:39;3592:16;3599:8;3592:16;:::i;:::-;3570:21;:39::i;:::-;3515:94;;;;3690:8;3703:1;3672:32;;;3668:97;;3713:52;;;;;3757:7;;;;3713:52;;;23677:98:233;23650:18;;3713:52:107;23533:248:233;3668:97:107;1759:4:23;1744:28;;1738:35;;1847:9;1836:21;1903:20;;1961:43;;3883:92:107;3900:8;3936;3883:4;:92::i;7036:160:192:-;2756:4:23;2742:27;;2736:34;2742:27;;;2736:34;7131:8:192;;;;6793:33;;;;;6839;7166:25;7157:34;;;;-1:-1:-1;7036:160:192;-1:-1:-1;;;;7036:160:192:o;26096:263:180:-;26261:12;26305:13;26320:5;26327:3;26332:11;26345:8;26288:66;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;26281:73;;26096:263;;;;;;;:::o;26550:354::-;26664:30;26825:68;26848:9;:16;26867:2;26848:21;26871:9;:16;26890:2;26871:21;2776:23:24;2761:39;;;975:16;2694:39;;;2662:5;;;2675:59;2742;2518:351;;;;;26825:68:180;26807:86;26550:354;-1:-1:-1;;;26550:354:180:o;27069:216::-;27171:12;27215:31;27235:9;27215:18;:31::i;:::-;27248;27268:9;27248:18;:31::i;:::-;27198:82;;;;;;;;;:::i;:::-;;;;;;;;;;;;;27191:89;;27069:216;;;;:::o;6458:480:46:-;6645:21;6669:17;:15;:17::i;:::-;6645:41;-1:-1:-1;6721:4:46;-1:-1:-1;;;;;6696:30:46;;;6692:242;;6736:79;6756:7;6765:8;6775:10;6787:14;6803:11;6736:19;:79::i;:::-;6692:242;;;6836:91;;;;;-1:-1:-1;;;;;6836:31:46;;;;;:91;;6868:7;;6877:8;;6887:10;;6899:14;;6915:11;;6836:91;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6639:299;6458:480;;;;;:::o;17775:457::-;17932:7;17947:21;17971:17;:15;:17::i;:::-;17947:41;-1:-1:-1;18023:4:46;-1:-1:-1;;;;;17998:30:46;;;17994:234;;18045:68;18070:7;18079:8;18089:10;18101:11;18045:24;:68::i;:::-;18038:75;;;;;17994:234;18141:80;;;;;-1:-1:-1;;;;;18141:36:46;;;;;:80;;18178:7;;18187:8;;18197:10;;18209:11;;18141:80;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;10761:455::-;10933:21;10957:17;:15;:17::i;:::-;10933:41;-1:-1:-1;11009:4:46;-1:-1:-1;;;;;10984:30:46;;;10980:232;;11024:74;11049:7;11058:8;11068:10;11080:4;11086:11;11024:24;:74::i;10980:232::-;11119:86;;;;;-1:-1:-1;;;;;11119:36:46;;;;;:86;;11156:7;;11165:8;;11175:10;;11187:4;;11193:11;;11119:86;;;:::i;1836:227::-;1066:42;1925:22;1886:7;;-1:-1:-1;;;;;1925:22:46;;1953:106;;2001:10;1994:17;;;1836:227;:::o;1953:106::-;2039:13;1836:227;-1:-1:-1;1836:227:46:o;3430:314:138:-;3538:16;;;3552:1;3538:16;;;;;;;;;3482:19;;;;3538:16;;;;;;;;;;;;-1:-1:-1;3538:16:138;3509:45;;3599:6;-1:-1:-1;;;;;3583:24:138;3575:33;;3560:9;3570:1;3560:12;;;;;;;;:::i;:::-;;;;;;;;;;:48;3615:13;3631:64;1169:66;3668:9;3615:13;1298:66;3631:26;:64::i;1698:281:106:-;1860:29;1870:10;1882:6;1860:9;:29::i;:::-;1855:120;;1938:21;:10;:19;:21::i;:::-;1961:6;1906:62;;;;;;;;;;;;:::i;9017:404:176:-;-1:-1:-1;;;;;;;;;;;;;;;;;9133:16:176;;;9147:1;9133:16;;;;;;;;;9104:26;;9133:16;;;;;;;;;;;-1:-1:-1;9133:16:176;9104:45;;9170:8;9155:9;9165:1;9155:12;;;;;;;;:::i;:::-;;;;;;;;;;:23;9186:24;;;9273:80;1201:66;9318:9;1330:66;9273:21;:80::i;:::-;9185:168;;;;;;9366:50;9373:11;9386:15;9403:12;9366:6;:50::i;10194:2213:216:-;10417:13;10432:8;10442:9;10487:35;10532:8;:6;:8::i;:::-;-1:-1:-1;;;;;10525:42:216;;10568:10;10525:54;;;;;;;;;;;;;4251:25:233;;4239:2;4224:18;;4105:177;10525:54:216;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10487:92;;10612:35;10657:8;:6;:8::i;:::-;-1:-1:-1;;;;;10650:42:216;;10693:10;10650:54;;;;;;;;;;;;;4251:25:233;;4239:2;4224:18;;4105:177;10650:54:216;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10612:92;;10742:25;10777:8;:6;:8::i;:::-;-1:-1:-1;;;;;10770:35:216;;10806:8;10770:45;;;;;;;;;;;;;4251:25:233;;4239:2;4224:18;;4105:177;10770:45:216;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;10770:45:216;;;;;;;;;;;;:::i;:::-;10742:73;;10851:1;10830:8;:18;;;:22;10826:1575;;;10895:34;;;;;;;;4251:25:233;;;10868:24:216;;10895:9;;:20;;4224:18:233;;10895:34:216;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;10895:34:216;;;;;;;;;;;;:::i;:::-;10868:61;;10957:139;11015:8;11024:1;11015:11;;;;;;;;:::i;:::-;;;;;;;11007:20;;11037:8;11046:1;11037:11;;;;;;;;:::i;:::-;;;;;;;11029:20;;11051:11;11064:8;11074;10957:32;:139::i;:::-;10943:153;;-1:-1:-1;10943:153:216;-1:-1:-1;11111:1188:216;;;;487:7:0;11766:1:216;11735:11;:28;;;11709:8;:22;;;11702:61;;;;:::i;:::-;:65;:215;;11915:1;11702:215;;;11843:11;:28;;;11817:8;:22;;;11810:61;;;;:::i;:::-;11672:290;;;;:::i;:::-;11521:25;;531:7:0;;11521:29:216;;11549:1;;11521:29;:::i;:::-;11332:6;:16;;;11312:6;:16;;;11297:8;11306:1;11297:11;;;;;;;;:::i;:::-;;;;;;;11289:20;;:39;;;;:::i;:::-;:59;;:192;;11465:6;:16;;;11450:8;11459:1;11450:11;;;;;;;;:::i;:::-;;;;;;;11442:20;;:39;;;;:::i;:::-;11289:192;;;11387:6;:16;;;11289:192;11195:23;;:316;;;;:::i;:::-;:356;;;;:::i;:::-;11169:430;;;;:::i;:::-;11147:837;;;;:::i;:::-;11138:846;;12006:4;12002:166;;;12034:21;;;;;;;;;;;;;;;;;;:12;:21::i;:::-;12086:30;573:1:0;12086:6:216;:30;:::i;:::-;12077:39;;12145:4;12138:11;;12002:166;11111:1188;;;12206:21;;;;;;;;;;;;;;;;;;:12;:21::i;:::-;12254:1;12245:10;;12279:5;12273:11;;11111:1188;10854:1455;10826:1575;;;12338:1;12329:10;;12359:5;12353:11;;12385:5;12378:12;;10826:1575;10453:1954;;;10194:2213;;;;;;;;;:::o;9380:299:196:-;9496:16;;;9510:1;9496:16;;;;;;;;;9443;;;;9496;;;;;;;;;;;;-1:-1:-1;9496:16:196;9467:45;;9533:8;9518:9;9528:1;9518:12;;;;;;;;:::i;:::-;;;;;;;;;;:23;9548:13;9564:64;1303:66;9601:9;9612:1;1432:66;9564:26;:64::i;10065:254::-;10167:16;;;10181:1;10167:16;;;;;;;;;10138:26;;10167:16;;;;;;;;;;;-1:-1:-1;10167:16:196;10138:45;;10204:8;10189:9;10199:1;10189:12;;;;;;;;:::i;:::-;;;;;;:23;;;;;10219:95;1303:66;1287:83;;10256:9;10267:1;10288:9;10270:29;;;;;;17299:19:233;;17343:2;17334:12;;17170:182;10270:29:196;;;;-1:-1:-1;;10270:29:196;;;;;;;;;1432:66;10219:26;:95::i;22361:660:175:-;22702:12;22761:8;22779;22797:10;22817;22837:3;22850:4;22864;22878:18;22906;22934:12;22956;22978:11;22999:9;22735:281;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;22722:294;;22361:660;;;;;;;;;;;;;;;:::o;13158:402:196:-;13212:23;;:::i;:::-;13272:16;;;13286:1;13272:16;;;;;;;;;13243:26;;13272:16;;;;;;;;;;;-1:-1:-1;13272:16:196;13243:45;;13309:8;13294:9;13304:1;13294:12;;;;;;;;:::i;:::-;;;;;;;;;;:23;13325:24;;;13412:80;1303:66;13457:9;1432:66;13412:21;:80::i;:::-;13324:168;;;;;;13505:50;13512:11;13525:15;13542:12;13505:6;:50::i;10661:294::-;10780:16;;;10794:1;10780:16;;;;;;;;;10725:18;;;;10780:16;;;;;;;;;;;;-1:-1:-1;10780:16:196;10751:45;;10817:8;10802:9;10812:1;10802:12;;;;;;;;:::i;:::-;;;;;;;;;;:23;10832:13;10848:64;1303:66;10885:9;10896:1;1432:66;10848:26;:64::i;16365:354:216:-;16456:18;16686:25;16703:8;633:4:0;16686:25:216;:::i;:::-;16670:42;;:12;:42;:::i;16725:582::-;16833:13;16856:8;:6;:8::i;:::-;-1:-1:-1;;;;;16849:29:216;;16879:8;16849:39;;;;;;;;;;;;;4251:25:233;;4239:2;4224:18;;4105:177;16849:39:216;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16833:55;;16898:32;16944:23;16961:5;16944:16;:23::i;:::-;16933:51;;;;;;;;;;;;:::i;:::-;16898:86;;16999:9;16994:307;17014:12;:22;;;:29;17010:1;:33;16994:307;;;17064:18;17085:46;17105:12;:22;;;17128:1;17105:25;;;;;;;;:::i;:::-;;;;;;;17085:19;:46::i;:::-;17064:67;-1:-1:-1;17064:67:216;17149:22;17164:7;17149:12;:22;:::i;:::-;:35;17145:146;;;17211:8;:6;:8::i;:::-;-1:-1:-1;;;;;17204:29:216;;17234:11;17247:12;:22;;;17270:1;17247:25;;;;;;;;:::i;:::-;;;;;;;;;;;17204:72;;;;;;;;;;;;;34698:25:233;;;;34739:18;;;34732:34;17274:1:216;34782:18:233;;;34775:34;34671:18;;17204:72:216;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17145:146;-1:-1:-1;17045:3:216;;16994:307;;15526:545:196;15597:24;15624:200;15644:6;:15;;;15667:6;:14;;;15689:6;:12;;;15709:6;:19;;;15736:6;:13;;;15757:6;:16;;;15781:6;:17;;;15806:6;:12;;;15624;:200::i;:::-;15928:16;;;15942:1;15928:16;;;;;;;;;15597:227;;-1:-1:-1;15831:30:196;;15867:25;;15831:30;;15928:16;;;;;;;;;;;;-1:-1:-1;15928:16:196;15899:45;;15965:8;15950:9;15960:1;15950:12;;;;;;;;:::i;:::-;;;;;;;;;;:23;15980:86;1303:66;16012:9;16023:11;16036:15;16053:12;15980:21;:86::i;32759:1315:45:-;32889:23;32914:29;32945:24;33011:20;33034:30;:11;:28;:30::i;:::-;33011:53;;33125:65;33158:7;33167:8;33177:12;33125:32;:65::i;:::-;33112:78;;33254:24;33281:30;:11;:28;:30::i;:::-;33254:57;-1:-1:-1;33321:20:45;;33317:753;;33414:66;33462:7;33471:8;33414:47;:66::i;:::-;33397:83;-1:-1:-1;6445:61:24;;;33532:33:45;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;33532:33:45;-1:-1:-1;33518:47:45;-1:-1:-1;894:4:40;884:15;;33573:21:45;33637:427;33655:16;33651:1;:20;;;33637:427;;;33688:27;33718:63;33760:7;33769:8;33779:1;33718:41;:63::i;:::-;33688:93;-1:-1:-1;33791:14:45;33808:25;:14;33831:1;7070:16:24;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;33808:25:45;33791:42;;33843:110;33874:19;33903:1;33914:6;33937:13;33843:12;:110::i;:::-;34032:23;34049:6;34032:23;;:::i;:::-;;;33678:386;;33673:3;;;;;:::i;:::-;;;;33637:427;;;;33343:727;33317:753;32971:1103;;32759:1315;;;;;;;:::o;23661:475:180:-;23746:27;23775:13;23790:11;23803:19;23824:16;23886:25;23902:5;23909:1;2742:27:23;2756:4;2742:27;2736:34;;2612:168;23886:25:180;23880:32;;23866:47;;;;;;;;:::i;:::-;2742:27:23;;;2736:34;2742:27;;;2736:34;2742:27;;;2736:34;2742:27;;;;2736:34;23850:63:180;;2736:34:23;;;;-1:-1:-1;2736:34:23;-1:-1:-1;2736:34:23;;-1:-1:-1;23661:475:180;-1:-1:-1;;23661:475:180:o;24239:522::-;24349:26;;24411:14;975:16:24;7017:70;;;6995:94;;24525:63:180;:41;24546:5;24411:14;6995:94:24;24525:20:180;:41::i;:::-;:61;:63::i;:::-;24512:77;-1:-1:-1;24605:4:180;-1:-1:-1;24605:4:180;6995:94:24;7059:27;7017:70;;;6995:94;24633:34:180;24692:63;:41;24713:5;24720:6;24633:34;24692:20;:41::i;:63::-;24679:77;;24405:356;;24239:522;;;;;:::o;5805:471:133:-;5966:16;;;5980:1;5966:16;;;;;;;;;5879:19;;;;;;5966:16;;;;;;;;;;;-1:-1:-1;5966:16:133;5937:45;;6011:21;6003:30;;;5988:9;5998:1;5988:12;;;;;;;;:::i;:::-;;;;;;;;;;:45;6041:24;;;6128:80;1174:66;6173:9;1303:66;6128:21;:80::i;:::-;6040:168;;;;;;6221:50;6228:11;6241:15;6258:12;6221:6;:50::i;2109:683:107:-;2185:23;2216:20;2239:32;:30;:32::i;:::-;2216:55;-1:-1:-1;;;;;;2350:29:107;;2358:4;2350:29;2346:322;;2389:12;2433:153;2467:36;:34;:36::i;:::-;2520:1;2541:8;2569;2433:15;:153::i;:::-;2409:177;-1:-1:-1;2409:177:107;-1:-1:-1;2409:177:107;2595:41;;2609:27;2625:10;2609:15;:27::i;:::-;2644:17;;;;2346:322;2736:51;;;;;-1:-1:-1;;;;;2736:31:107;;;;;:51;;2768:8;;2778;;2736:51;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;2736:51:107;;;;;;;;;;;;:::i;44950:222:57:-;45014:12;45104:6;45128:39;45104:6;45161:2;45165:1;45128:17;:39::i;12066:286:45:-;12253:94;12263:7;12272:8;12282:10;12294:14;12310:11;12323:23;12338:7;12323:14;:23::i;:::-;12253:9;:94::i;:::-;12066:286;;;;;:::o;36171:541::-;36328:7;36465:242;36509:59;36550:7;36559:8;36509:40;:59::i;:::-;36586:31;;;;4323:19:25;:27;579:1:52;4322:44:25;4288:79;;;4275:93;36635:63:45;36674:11;36687:10;36635:38;:63::i;:::-;36465:17;:242::i;:::-;36452:255;36171:541;-1:-1:-1;;;;;36171:541:45:o;23107:355::-;23279:178;23313:7;23338:8;23368:63;23407:11;23420:10;23368:38;:63::i;:::-;23446:4;23279:16;:178::i;1109:325:106:-;1190:4;1332:55;696:18:144;578:36:124;2955:46;;2954:74;1380:6:106;1332:18;:55::i;:::-;:97;;;;1391:38;1410:10;1422:6;1391:18;:38::i;3486:592:124:-;3550:13;3620:10;451:5:41;2637:44:124;;;3571:19;3718;3620:10;3718:7;:19::i;:::-;3695:42;-1:-1:-1;3800:12:124;3839:35;;;;:102;;3888:53;;;;:34;:53::i;:::-;3839:102;;;;;;;;;;;;;;;;;;;;;3968:25;;;;:87;;4007:48;4042:12;4007:34;:48::i;:::-;3968:87;;;;;;;;;;;;;;;;;;;;;3772:293;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;3743:330;;;;;3486:592;;;:::o;12940:299:176:-;-1:-1:-1;;;;;;;;;;;;;;;;;13135:25:176;13148:11;13135:12;:25::i;:::-;13114:6;;13113:47;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;13190:44:176;13204:15;13221:12;13190:13;:44::i;:::-;13168:18;;;13167:67;13168:6;12940:299;-1:-1:-1;;;12940:299:176:o;12582:934:216:-;12848:16;;;442:7:0;13127:17:216;13140:4;13127:10;:17;:::i;:::-;13056:67;13065:8;:24;;;13091:11;:31;;;13056:8;:67::i;:::-;:89;;;;:::i;:::-;13042:133;;;;:::i;:::-;13020:155;;13279:20;487:7:0;13326:8:216;:24;;;13318:4;13304:11;:18;;;;:::i;:::-;13303:47;;;;:::i;:::-;13302:68;;;;:::i;:::-;13279:91;;13408:12;13394:11;:26;13380:40;;13434:11;13430:80;;;13498:1;13468:26;13482:12;13468:11;:26;:::i;:::-;:31;;13461:38;;13430:80;12877:639;;12582:934;;;;;;;;:::o;6598:121:166:-;6653:59;6708:2;6669:42;;;;;;;;:::i;:::-;;;;-1:-1:-1;;6669:42:166;;;;;;;;;;;;;;;;;;;;6653:15;:59::i;:::-;6598:121;:::o;17711:363:196:-;17822:23;;:::i;:::-;18044:25;18057:11;18044:12;:25::i;:::-;18023:12;;;17853:216;;;17998:17;;;17853:216;;;17974:16;;;17853:216;;;17953:13;;;17853:216;;;17926:19;;;17853:216;;;17861:6;17884:14;;;17906:12;;;17853:216;;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;17853:216:196;;;;-1:-1:-1;17711:363:196;;;-1:-1:-1;;;;;17711:363:196:o;4118:288:188:-;4235:16;;;4249:1;4235:16;;;;;;;;;4177:21;;4206:26;;4235:16;;;;;;;;;;;;-1:-1:-1;4235:16:188;4206:45;;4288:5;4272:23;;4257:9;4267:1;4257:12;;;;;;;;:::i;:::-;;;;;;;;;;:38;4302:18;4323:51;1202:66;4361:9;4302:18;4323:27;:51::i;4150:308:184:-;4267:16;;;4281:1;4267:16;;;;;;;;;4212:18;;;;4267:16;;;;;;;;;;;;-1:-1:-1;4267:16:184;4238:45;;4320:6;4304:24;;4289:9;4299:1;4289:12;;;;;;;;:::i;:::-;;;;;;;;;;:39;4335:13;4351:64;1205:66;4388:9;4399:1;1334:66;4351:26;:64::i;18741:348:196:-;18963:12;19007:8;19017:7;19026:5;19033:12;19047:6;19055:9;19066:10;19078:5;18990:94;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;18983:101;;18741:348;;;;;;;;;;:::o;4598:171:25:-;4672:7;579:1:52;1354:13;1366:1;376:2;1354:13;:::i;:::-;1353:30;;;;:::i;:::-;4694:70:25;;;;;4598:171;-1:-1:-1;4598:171:25:o;48823:360:45:-;48949:12;48973:6;48983:1;48973:11;48969:26;;-1:-1:-1;48986:9:45;;;;;;;;;-1:-1:-1;48986:9:45;;;;48969:26;49036:16;49055:41;49078:7;49087:8;49055:22;:41::i;:::-;49036:60;;49109:69;49140:8;49158:1;49169:6;49109:12;:69::i;5377:173:25:-;5451:7;579:1:52;1704;;1684:13;1696:1;376:2;1684:13;:::i;:::-;:17;;;;:::i;:::-;:21;;;;:::i;:::-;1683:38;;;;:::i;:::-;5487:11:25;5466:79;5479:65;;5466:79;;5377:173;-1:-1:-1;;5377:173:25:o;53939:303:45:-;54060:14;54154:82;54185:48;54215:7;54224:8;54185:29;:48::i;:::-;4711:21:44;;4605:137;52742:274:45;52886:7;52991;53000:8;52974:35;;;;;;;;;:::i;:::-;;;;;;;;;;;;;52964:46;;;;;;52943:17;52936:25;;52916:45;;;42433:34;52916:45;:94;52908:103;;52901:110;;52742:274;;;;;:::o;6076:2380:44:-;6193:10;;6189:1542;;6346:2;6336:6;:12;6332:122;;6409:2;6400:6;:11;6382:29;;;;6433:2;6423:12;;;;;;:::i;:::-;;;;6332:122;6544:10;;6540:1185;;6752:2;:11;;;6626:21;6810:22;;;6806:135;;;-1:-1:-1;;;579:1:52;804:25:53;;782:48;6806:135:44;;;-1:-1:-1;;;579:1:52;804:25:53;;782:48;6806:135:44;7135:14;7129:21;7114:12;7106:6;7102:25;7098:53;7375:4;7359:13;7353:20;7349:31;7285:4;7281:9;7269:10;7265:26;7210:184;7183:13;7163:243;;7465:13;7455:6;:23;7451:36;;7480:7;;;;7451:36;-1:-1:-1;7628:1:44;7610:19;;;;;7683:23;;;;;7641:30;6540:1185;7760:253;7777:2;7767:6;:12;7760:253;;7871:21;;7849:44;;7946:1;7928:19;;;;-1:-1:-1;;7986:12:44;;;;7974:2;7957:19;7760:253;;;8081:10;;8077:375;;8101:12;-1:-1:-1;;579:1:52;804:25:53;;782:48;8389:20:44;;8299:21;;8322:9;;8295:37;8385:31;;8244:184;8201:237;;-1:-1:-1;6076:2380:44;;;;:::o;2003:574:43:-;2094:5;2189:3;2181:5;:11;:32;;;;2202:4;:11;2196:3;:17;2181:32;2177:93;;;2253:4;2259:5;2266:3;2222:48;;;;;;;;;;;;;:::i;2177:93::-;2336:4;2326:15;;2383:16;2394:5;2326:15;2383:16;:::i;:::-;;-1:-1:-1;2405:12:43;2420:11;2426:5;2420:3;:11;:::i;:::-;692:17;2555:15;2547:3;2536:14;;;;2535:36;;;;;;-1:-1:-1;;;;;2003:574:43:o;45284:220:56:-;45350:24;45382:30;45415:32;45433:6;45441:2;45445:1;45415:17;:32::i;8363:236:133:-;8474:19;8495:29;8569:25;8582:11;8569:12;:25::i;1761:1386:121:-;1888:12;1902:17;1956:21;1979:17;2000:22;2013:8;2000:12;:22::i;:::-;1955:67;;-1:-1:-1;1955:67:121;-1:-1:-1;;;;;;2067:27:121;;2063:106;;2139:8;2149:19;:8;:17;:19::i;:::-;2103:66;;;;;;;;;;;;:::i;2063:106::-;2275:12;2270:64;;2289:45;2317:8;2327:6;2289:27;:45::i;:::-;2413:9;;2409:197;;578:36:124;2955:46;;696:18:144;2954:74:124;2432:22:121;2515:26;2954:74:124;2515:13:121;:26::i;:::-;2490:51;-1:-1:-1;2549:50:121;2563:11;2576:22;2593:5;2490:51;2576:22;:::i;:::-;2549:13;:50::i;:::-;2424:182;;2409:197;2708:14;2681:23;:8;451:5:41;2637:44:124;;2539:148;2681:23:121;:41;;;:461;;2982:160;3043:6;3069:5;3092:13;3125:8;2982:39;:160::i;:::-;2681:461;;;2805:168;2874:6;2900:5;2923:13;2956:8;2805:47;:168::i;:::-;2663:479;;;;-1:-1:-1;1761:1386:121;-1:-1:-1;;;;;;;1761:1386:121:o;348:217:142:-;551:6;545:13;538:4;530:6;526:17;519:40;830:1343:58;1002:12;;955:17;;980:19;1043:26;1058:11;1002:12;1043:26;:::i;:::-;1020:49;;1441:4;1435:11;;-1:-1:-1;1484:4:58;1474:15;;-1:-1:-1;;1358:16:58;1531:32;;;1358:16;1354:32;1503:4;1496:69;1607:12;1601:4;1594:26;1651:1;1721:4;1714:5;1710:16;1628:535;1741:11;1738:1;1735:18;1628:535;;;2134:19;;2113:41;;2091:64;;2007:31;;;;1828:1;1821:9;;;;;1920:4;1902:23;1628:535;;;1632:102;;;1222:947;;830:1343;;;;;:::o;4015:652:45:-;4082:11;4318:64;;;4314:111;;-1:-1:-1;1342:66:51;;4015:652:45;-1:-1:-1;4015:652:45:o;4314:111::-;4469:185;4515:85;1213:66:51;4591:7:45;4515:40;:85::i;:::-;4620:2;4642:1;4469:17;:185::i;13212:3165::-;13507:23;13486:7;:44;;;13482:211;;13613:7;13584:88;13622:8;13632:10;13644:14;13660:11;13584:88;;;;;;;;;:::i;:::-;;;;;;;;13680:7;;13482:211;13831:22;13856:24;13872:7;13856:15;:24::i;:::-;13831:49;;13891:9;13886:340;13906:5;:12;13902:1;:16;13886:340;;;13933:9;13955:5;13961:1;13955:8;;;;;;;;:::i;:::-;;;;;;;13933:31;;13976:33;409:6:54;13976:4:45;:14;;;;;:33;;;;:::i;:::-;13972:248;;;14021:190;;;;;3536:35:26;;;;;14021:47:45;;:190;;14080:7;;14099:8;;14119:10;;14141:14;;14167:11;;14190;;14021:190;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13972:248;-1:-1:-1;13920:3:45;;13886:340;;;;14303:7;14274:88;14312:8;14322:10;14334:14;14350:11;14274:88;;;;;;;;;:::i;:::-;;;;;;;;14426:26;14455:59;14496:7;14505:8;14455:40;:59::i;:::-;14426:88;-1:-1:-1;14520:21:45;894:4:40;884:15;;14520:54:45;;14580:149;14618:18;14652:1;14669:10;:17;14709:13;14580;:149::i;:::-;14829:1;14796:30;:11;:28;:30::i;:::-;:34;14792:1174;;;14915:33;14951:66;14999:7;15008:8;14951:47;:66::i;:::-;695:28:44;;;14915:102:45;-1:-1:-1;894:4:40;884:15;;15191:47:45;;15347:27;15382:25;15420:7;15415:545;15433:30;:11;:28;:30::i;:::-;15429:1;:34;;;15415:545;;;15499:63;15541:7;15550:8;15560:1;15499:41;:63::i;:::-;15477:85;-1:-1:-1;15592:25:45;:14;15615:1;7070:16:24;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;15592:25:45;15572:45;;15627:170;15669:19;15708:1;15729:17;15773:13;15627;:170::i;:::-;15807:34;15824:17;15807:34;;:::i;:::-;;-1:-1:-1;15938:3:45;;15415:545;;;;14832:1134;;;14792:1174;16040:9;16035:338;16055:5;:12;16051:1;:16;16035:338;;;16082:9;16104:5;16110:1;16104:8;;;;;;;;:::i;:::-;;;;;;;16082:31;;16125:32;503:6:54;16125:4:45;:14;;;;;:32;;;;:::i;:::-;16121:246;;;16169:189;;;;;3536:35:26;;;;;16169:46:45;;:189;;16227:7;;16246:8;;16266:10;;16288:14;;16314:11;;16337;;16169:189;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16121:246;-1:-1:-1;16069:3:45;;16035:338;;50806:191;50908:7;50972;50981:8;50955:35;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;50955:35:45;;;;;;;;;50945:46;;50955:35;50945:46;;;;42361:22;50938:53;;50806:191;-1:-1:-1;;;50806:191:45:o;51823:242::-;51919:7;;;51958:84;51978:10;51974:14;;:1;:14;51958:84;;;52003:32;4275:93:25;4323:19;:27;;;579:1:52;4322:44:25;4288:79;;;4275:93;52003:32:45;;:::i;:::-;;-1:-1:-1;51990:3:45;;51958:84;;;-1:-1:-1;52054:6:45;51823:242;-1:-1:-1;;;51823:242:45:o;8945:812:44:-;9043:14;9079:2;9069:6;:12;9065:112;;9138:2;9129:6;:11;9111:29;;;;9160:2;9150:12;;;;;;:::i;:::-;;;;9065:112;-1:-1:-1;9368:21:44;;9353:12;9341:25;;9337:53;9516:2;:11;;;9598:22;;;9594:159;;;9734:1;9718:14;9714:22;9708:29;9693:12;9678:13;9674:32;9670:68;9662:6;9659:80;9649:90;;9059:698;8945:812;;;;;:::o;17013:1682:45:-;17213:23;17192:7;:44;;;17188:235;;17346:7;17299:103;17365:8;17382:5;17395:4;17299:103;;;;;;;;:::i;:::-;;;;;;;;17410:7;;17188:235;17429:16;17448:59;17489:7;17498:8;17448:40;:59::i;:::-;17429:78;;17653:22;17678:24;17694:7;17678:15;:24::i;:::-;17653:49;;17713:9;17708:328;17728:5;:12;17724:1;:16;17708:328;;;17755:9;17777:5;17783:1;17777:8;;;;;;;;:::i;:::-;;;;;;;17755:31;;17798:41;614:6:54;17798:4:45;:14;;;;;:41;;;;:::i;:::-;17794:236;;;17851:170;;;;;3536:35:26;;;;;17851:54:45;;:170;;17927:7;;17956:8;;17983:5;;18006:4;;17851:170;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17794:236;-1:-1:-1;17742:3:45;;17708:328;;;;18140:7;18093:103;18159:8;18176:5;18189:4;18093:103;;;;;;;;:::i;:::-;;;;;;;;18246:70;18278:8;18296:5;18246:70;;18309:4;18246:13;:70::i;:::-;18370:9;18365:326;18385:5;:12;18381:1;:16;18365:326;;;18412:9;18434:5;18440:1;18434:8;;;;;;;;:::i;:::-;;;;;;;18412:31;;18455:40;723:6:54;18455:4:45;:14;;;;;:40;;;;:::i;:::-;18451:234;;;18507:169;;;;;3536:35:26;;;;;18507:53:45;;:169;;18582:7;;18611:8;;18638:5;;18661:4;;18507:169;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18451:234;-1:-1:-1;18399:3:45;;18365:326;;;;17128:1567;;17013:1682;;;;:::o;3586:379:136:-;3709:16;;;3723:1;3709:16;;;;;;;;3661:11;;;;3709:16;3723:1;3709:16;;;;;;;;;;-1:-1:-1;3709:16:136;3680:45;;3764:10;3731:9;3741:1;3731:12;;;;;;;;:::i;:::-;;;;;;:44;;;;;3820:6;-1:-1:-1;;;;;3804:24:136;3796:33;;3781:9;3791:1;3781:12;;;;;;;;:::i;:::-;;;;;;;;;;:48;3836:13;3852:64;1169:66;3889:9;3836:13;1298:66;3852:26;:64::i;:::-;3836:80;;3930:29;3951:5;3938:20;;12543:5:187;12457:97;3165:160:124;3228:7;3292:26;438:6;451:5:41;3292:26:124;:::i;:::-;3258:61;;;;;3165:160;-1:-1:-1;3165:160:124:o;1862:325::-;1932:13;1953:14;1973:83;1989:2;1980:6;:11;1973:83;;;2007:37;;;3261:1:23;3257:13;;3253:24;2007:42:124;;2003:53;2051:5;2003:53;1993:8;;1973:83;;;2092:30;;;41980:66:233;41968:79;;2092:30:124;;;41956:92:233;2092:30:124;;42064:12:233;;;;2092:30:124;;;875:21:23;;;2092:30:124;2142:39;760:164:23;12092:156:176;2756:4:23;2742:27;;2736:34;12157:21:176;;12210:32;;12199:44;;;;;;;;:::i;12351:322::-;12461:24;12493:14;975:16:24;7017:70;;;6995:94;;12615:51:176;:41;12636:5;12493:14;6995:94:24;12615:20:176;:41::i;:::-;:49;:51::i;1035:205:212:-;1094:12;1128:1;1122:2;:7;1118:116;;1152:16;1165:2;1152;:16;:::i;:::-;1145:23;;;;1118:116;1219:3;1220:2;1219:3;:::i;:::-;1206:17;;:2;:17;:::i;868:133:166:-;939:55;986:7;965:19;939:55::i;16807:746:196:-;16899:16;16923:15;16946:13;16967:20;16995:14;17017:16;17041:18;17067:13;17115:26;17132:5;17139:1;2742:27:23;2756:4;2742:27;2736:34;;2612:168;17115:26:196;2742:27:23;;;2736:34;2742:27;;;2736:34;17107:35:196;;-1:-1:-1;2736:34:23;-1:-1:-1;17221:33:196;;17213:42;;;;;;;;:::i;:::-;2742:27:23;;;2736:34;2742:27;;;2736:34;2742:27;;;2736:34;2742:27;;;2736:34;2742:27;;;;2736:34;16807:746:196;;;;17205:50;;2736:34:23;;;;-1:-1:-1;2736:34:23;-1:-1:-1;2736:34:23;;-1:-1:-1;2736:34:23;-1:-1:-1;16807:746:196;-1:-1:-1;;16807:746:196:o;18598:431:46:-;18734:12;18754:21;18778:17;:15;:17::i;:::-;18754:41;-1:-1:-1;18830:4:46;-1:-1:-1;;;;;18805:30:46;;;18801:224;;18852:63;18878:7;18887:8;18897:17;18852:25;:63::i;:::-;18845:70;;;;;18801:224;18943:75;;;;;-1:-1:-1;;;;;18943:37:46;;;;;:75;;18981:7;;18990:8;;19000:17;;18943:75;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;18943:75:46;;;;;;;;;;;;:::i;5042:669:44:-;5458:4;5452:11;5499:4;5487:17;;-1:-1:-1;;1358:16:58;5546:26:44;;;1358:16:58;1354:32;5518:4:44;5511:63;5618:6;5610;5603:22;5636:51;5641:14;5657:6;5665;5673:13;5636:4;:51::i;53371:230:45:-;53492:7;53576;53585:8;53559:35;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;53559:35:45;;;;;;;;;53549:46;;53559:35;53549:46;;;;42524:40;53522:73;;53371:230;-1:-1:-1;;;53371:230:45:o;2681:1129:58:-;2801:22;2831:21;2855;:11;2997:3:43;2975:25;;2901:104;2855:21:58;2831:45;-1:-1:-1;692:17:43;3238:38;;2882:20:58;3044:11;3238:38:43;3044:11:58;3029:26;;;;:::i;:::-;;3015:40;;3164:4;3158:11;3149:20;;3207:4;3200:5;3196:16;3267:4;3254:11;3250:22;3236:12;3232:41;3226:4;3219:55;3317:11;3310:5;3303:26;3360:1;3337:463;3376:11;3373:1;3370:18;3337:463;;;3770:20;;3749:42;;3728:64;;3642:31;;;;3555:4;3537:23;;;;3463:1;3456:9;3337:463;;7963:242:133;2756:4:23;2742:27;;2736:34;2742:27;;;2736:34;8028:19:133;;8173:26;8147:53;;7963:242;;;:::o;5928:433:139:-;6056:16;;;6070:1;6056:16;;;;;;;;;5986:14;;;;;;6056:16;;;;;;;;;;;-1:-1:-1;6056:16:139;6027:45;;6111:8;6078:9;6088:1;6078:12;;;;;;;;:::i;:::-;;;;;;;;;;:42;6128:24;;;6215:78;1155:66;6258:9;1284:66;6215:19;:78::i;:::-;6127:166;;;;;;6306:50;6313:11;6326:15;6343:12;6306:6;:50::i;1546:281:108:-;1708:29;1718:10;1730:6;1708:9;:29::i;3758:308:132:-;3871:16;;;3885:1;3871:16;;;;;;;;;3819:15;;;;3871:16;;;;;;;;;;;;-1:-1:-1;3871:16:132;3842:45;;3926:11;3893:9;3903:1;3893:12;;;;;;;;:::i;:::-;;;;;;;;;;:45;3945:13;3961:62;1157:66;3996:9;3945:13;1286:66;3961:24;:62::i;5057:269::-;5156:16;;;5170:1;5156:16;;;;;;;;;5127:26;;5156:16;;;;;;;;;;;-1:-1:-1;5156:16:132;5127:45;;5211:11;5178:9;5188:1;5178:12;;;;;;;;:::i;:::-;;;;;;:45;;;;;5230:91;1157:66;1141:83;;5265:9;5276:1;5297:7;5279:27;;;;;;17299:19:233;;17343:2;17334:12;;17170:182;5279:27:132;;;;-1:-1:-1;;5279:27:132;;;;;;;;;1286:66;5230:24;:91::i;5594:317:123:-;5733:12;5747:17;5790:6;-1:-1:-1;;;;;5790:11:123;5810:1;5821:79;5847:8;5868:9;5889:8;5821:13;:79::i;:::-;5790:116;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5772:134:123;;;;-1:-1:-1;5594:317:123;-1:-1:-1;;;;;5594:317:123:o;6415:321::-;6562:12;6576:17;6619:6;-1:-1:-1;;;;;6619:19:123;6646:79;6672:8;6693:9;6714:8;6646:13;:79::i;:::-;6619:112;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;51249:282:45;51494:30;;;;;;43419:19:233;;;43454:12;;;43447:28;;;51337:7:45;;43491:12:233;;51494:30:45;43230:279:233;3658:342:50;3774:16;;;3788:1;3774:16;;;;;;;;;3715:22;;3745:26;;3774:16;;;;;;;;;;;;-1:-1:-1;3774:16:50;3745:45;;3829:7;3796:9;3806:1;3796:12;;;;;;;;:::i;:::-;;;;;;;;;;:41;3844:18;3865:49;971:66;3901:9;3844:18;3865:25;:49::i;:::-;3844:70;;3928:66;:44;3949:5;3956:1;3959:5;:12;3928:20;:44::i;:::-;:64;:66::i;3035:136:26:-;3105:4;3157:9;3124:42;;3143:9;3125:15;3135:4;3934:26;;;3804:162;3125:15;:27;3124:42;;;3117:49;;3035:136;;;;:::o;1489:2340:44:-;1602:10;;1598:1504;;1755:2;1745:6;:12;1741:122;;1818:2;1809:6;:11;1791:29;;;;1842:2;1832:12;;;;;;:::i;:::-;;;;1741:122;1953:10;;1949:1147;;2161:2;:11;;;2035:21;-1:-1:-1;;579:1:52;804:25:53;;782:48;2208:18:44;2193:33;;2395:12;2387:6;2383:25;2442:4;2431:9;2427:20;2419:28;;2497:13;2491:20;2480:9;2476:36;2458:54;;2745:4;2741:9;2724:14;2718:21;2714:37;2645:4;2633:10;2629:21;2572:193;2544:14;2524:253;;2836:13;2826:6;:23;2822:36;;2851:7;;;;2822:36;-1:-1:-1;2999:1:44;2981:19;;;;;3054:23;;;;;3012:30;1949:1147;3132:253;3149:2;3139:6;:12;3132:253;;3244:20;;3221:44;;3318:1;3300:19;;;;-1:-1:-1;;3358:12:44;;;;3346:2;3329:19;3132:253;;;3453:10;;3449:376;;3473:12;-1:-1:-1;;579:1:52;804:25:53;;782:48;3761:21:44;;3672:20;;3694:9;;3668:36;3757:32;;3617:184;3573:238;;-1:-1:-1;1489:2340:44;;;;:::o;966:162::-;1055:68;1061:14;1077:6;1085:4;:11;1098:24;1117:4;894::40;884:15;;758:151;1098:24:44;1055:5;:68::i;3545:418:43:-;3597:17;3622:19;3644:13;3652:4;2997:3;2975:25;;2901:104;3644:13;3622:35;-1:-1:-1;692:17:43;3238:38;;;3767:18;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3767:18:43;-1:-1:-1;3760:25:43;-1:-1:-1;3854:4:43;3844:15;;3914:44;3926:11;3844:15;3950:7;3914:11;:44::i;:::-;3616:347;;;3545:418;;;:::o;1007:380:166:-;1105:14;;591:42;1278:2;1265:16;;1081:21;;1105:14;1265:16;591:42;1314:5;1303:68;1294:77;;1231:150;;1007:380;:::o;37180:522:45:-;37316:12;37440:257;37479:79;37521:7;37530:8;37540:17;37479:41;:79::i;:::-;37576:1;37595:93;37670:17;37595:66;37643:7;37652:8;37595:47;:66::i;:::-;:74;7070:16:24;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;37595:93:45;37440:12;:257::i;7829:207:139:-;7940:14;7956:17;8006:25;8019:11;8006:12;:25::i;955:327:108:-;1036:4;1178:56;696:18:144;578:36:124;2955:46;;2954:74;1227:6:108;1178:19;:56::i;:::-;:99;;;;1238:39;1258:10;1270:6;1238:19;:39::i;4897:201:123:-;5019:12;5063:8;5073:9;5084:8;5046:47;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;5039:54;;4897:201;;;;;:::o;40103:220:56:-;40169:24;40201:30;40234:32;40252:6;40260:2;40264:1;40234:17;:32::i;1229:823:40:-;1346:324;1363:2;1353:6;:12;1346:324;;1453:18;;1435:37;;1604:2;1616:17;;;;1591:15;;;;-1:-1:-1;;1643:12:40;1346:324;;;1679:6;1689:1;1679:11;1675:24;;1229:823;;;:::o;1675:24::-;1738:12;-1:-1:-1;;579:1:52;804:25:53;;782:48;1738:32:40;;2019:4;2007:9;2001:16;1997:27;1942:4;1938:9;1924:11;1918:18;1914:34;1867:167;1848:9;1832:210;1824:224;1229:823;;;:::o;7448:223:139:-;2756:4:23;2742:27;;2736:34;2742:27;;;2736:34;7564:35:139;;;;;;7513:14;;7631:33;;7623:42;12457:97:187;4006:378:136;4130:16;;;4144:1;4130:16;;;;;;;;4082:11;;;;4130:16;4144:1;4130:16;;;;;;;;;;-1:-1:-1;4130:16:136;4101:45;;4185:10;4152:9;4162:1;4152:12;;;;;;;;:::i;:::-;;;;;;:44;;;;;4241:6;-1:-1:-1;;;;;4225:24:136;4217:33;;4202:9;4212:1;4202:12;;;;;;;;:::i;:::-;;;;;;;;;;:48;4257:13;4273:62;1169:66;4308:9;4257:13;1298:66;4273:24;:62::i;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:332:233:-;72:6;125:2;113:9;104:7;100:23;96:32;93:52;;;141:1;138;131:12;93:52;180:9;167:23;230:66;223:5;219:78;212:5;209:89;199:117;;312:1;309;302:12;774:184;-1:-1:-1;;;823:1:233;816:88;923:4;920:1;913:15;947:4;944:1;937:15;963:253;1035:2;1029:9;1077:4;1065:17;;1112:18;1097:34;;1133:22;;;1094:62;1091:88;;;1159:18;;:::i;:::-;1195:2;1188:22;963:253;:::o;1221:::-;1293:2;1287:9;1335:4;1323:17;;1370:18;1355:34;;1391:22;;;1352:62;1349:88;;;1417:18;;:::i;1479:252::-;1551:2;1545:9;1593:3;1581:16;;1627:18;1612:34;;1648:22;;;1609:62;1606:88;;;1674:18;;:::i;1736:255::-;1808:2;1802:9;1850:6;1838:19;;1887:18;1872:34;;1908:22;;;1869:62;1866:88;;;1934:18;;:::i;1996:334::-;2067:2;2061:9;2123:2;2113:13;;-1:-1:-1;;2109:86:233;2097:99;;2226:18;2211:34;;2247:22;;;2208:62;2205:88;;;2273:18;;:::i;:::-;2309:2;2302:22;1996:334;;-1:-1:-1;1996:334:233:o;2335:183::-;2395:4;2428:18;2420:6;2417:30;2414:56;;;2450:18;;:::i;:::-;-1:-1:-1;2495:1:233;2491:14;2507:4;2487:25;;2335:183::o;2523:668::-;2577:5;2630:3;2623:4;2615:6;2611:17;2607:27;2597:55;;2648:1;2645;2638:12;2597:55;2684:6;2671:20;2710:4;2734:60;2750:43;2790:2;2750:43;:::i;:::-;2734:60;:::i;:::-;2816:3;2840:2;2835:3;2828:15;2868:4;2863:3;2859:14;2852:21;;2925:4;2919:2;2916:1;2912:10;2904:6;2900:23;2896:34;2882:48;;2953:3;2945:6;2942:15;2939:35;;;2970:1;2967;2960:12;2939:35;3006:4;2998:6;2994:17;3020:142;3036:6;3031:3;3028:15;3020:142;;;3102:17;;3090:30;;3140:12;;;;3053;;3020:142;;;-1:-1:-1;3180:5:233;2523:668;-1:-1:-1;;;;;;2523:668:233:o;3196:159::-;3263:20;;3323:6;3312:18;;3302:29;;3292:57;;3345:1;3342;3335:12;3360:740;3494:6;3502;3510;3518;3571:3;3559:9;3550:7;3546:23;3542:33;3539:53;;;3588:1;3585;3578:12;3539:53;3628:9;3615:23;3657:18;3698:2;3690:6;3687:14;3684:34;;;3714:1;3711;3704:12;3684:34;3737:61;3790:7;3781:6;3770:9;3766:22;3737:61;:::i;:::-;3727:71;;3851:2;3840:9;3836:18;3823:32;3807:48;;3880:2;3870:8;3867:16;3864:36;;;3896:1;3893;3886:12;3864:36;;3919:63;3974:7;3963:8;3952:9;3948:24;3919:63;:::i;:::-;3909:73;;;4001:37;4034:2;4023:9;4019:18;4001:37;:::i;:::-;3991:47;;4057:37;4090:2;4079:9;4075:18;4057:37;:::i;:::-;4047:47;;3360:740;;;;;;;:::o;4287:180::-;4346:6;4399:2;4387:9;4378:7;4374:23;4370:32;4367:52;;;4415:1;4412;4405:12;4367:52;-1:-1:-1;4438:23:233;;4287:180;-1:-1:-1;4287:180:233:o;4472:184::-;-1:-1:-1;;;4521:1:233;4514:88;4621:4;4618:1;4611:15;4645:4;4642:1;4635:15;4661:144;4746:1;4739:5;4736:12;4726:46;;4752:18;;:::i;:::-;4781;;4661:144::o;4810:439::-;4863:3;4901:5;4895:12;4928:6;4923:3;4916:19;4954:4;4983;4978:3;4974:14;4967:21;;5022:4;5015:5;5011:16;5045:1;5055:169;5069:6;5066:1;5063:13;5055:169;;;5130:13;;5118:26;;5164:12;;;;5199:15;;;;5091:1;5084:9;5055:169;;;-1:-1:-1;5240:3:233;;4810:439;-1:-1:-1;;;;;4810:439:233:o;5254:965::-;5461:2;5450:9;5443:21;5473:64;5533:2;5522:9;5518:18;5509:6;5503:13;5473:64;:::i;:::-;5591:2;5583:6;5579:15;5573:22;5568:2;5557:9;5553:18;5546:50;5650:2;5642:6;5638:15;5632:22;5627:2;5616:9;5612:18;5605:50;5710:2;5702:6;5698:15;5692:22;5686:3;5675:9;5671:19;5664:51;5770:3;5762:6;5758:16;5752:23;5746:3;5735:9;5731:19;5724:52;5424:4;5823:3;5815:6;5811:16;5805:23;5865:4;5859:3;5848:9;5844:19;5837:33;5893:63;5951:3;5940:9;5936:19;5922:12;5893:63;:::i;:::-;5879:77;;6005:3;5997:6;5993:16;5987:23;-1:-1:-1;;6064:9:233;6056:6;6052:22;6048:95;6041:4;6030:9;6026:20;6019:125;6161:52;6206:6;6190:14;6161:52;:::i;6224:1117::-;6284:5;6337:3;6330:4;6322:6;6318:17;6314:27;6304:55;;6355:1;6352;6345:12;6304:55;6391:6;6378:20;6417:4;6441:60;6457:43;6497:2;6457:43;:::i;6441:60::-;6535:15;;;6621:1;6617:10;;;;6605:23;;6601:32;;;6566:12;;;;6645:15;;;6642:35;;;6673:1;6670;6663:12;6642:35;6709:2;6701:6;6697:15;6721:591;6737:6;6732:3;6729:15;6721:591;;;6815:4;6809:3;6804;6800:13;6796:24;6793:114;;;6861:1;6890:2;6886;6879:14;6793:114;6933:22;;:::i;:::-;6982:17;;6968:32;;7049:12;;;7036:26;7020:14;;;7013:50;7086:2;7137:12;;;7124:26;7108:14;;;7101:50;7174:2;7225:12;;;7212:26;7196:14;;;7189:50;7252:18;;7290:12;;;;6763:4;6754:14;6721:591;;7346:516;7474:6;7482;7490;7543:2;7531:9;7522:7;7518:23;7514:32;7511:52;;;7559:1;7556;7549:12;7511:52;7595:9;7582:23;7572:33;;7652:2;7641:9;7637:18;7624:32;7614:42;;7707:2;7696:9;7692:18;7679:32;7734:18;7726:6;7723:30;7720:50;;;7766:1;7763;7756:12;7720:50;7789:67;7848:7;7839:6;7828:9;7824:22;7789:67;:::i;:::-;7779:77;;;7346:516;;;;;:::o;7867:759::-;8014:6;8022;8030;8083:2;8071:9;8062:7;8058:23;8054:32;8051:52;;;8099:1;8096;8089:12;8051:52;8138:9;8125:23;8177:1;8170:5;8167:12;8157:40;;8193:1;8190;8183:12;8157:40;8216:5;-1:-1:-1;8272:2:233;8257:18;;8244:32;8295:18;8325:14;;;8322:34;;;8352:1;8349;8342:12;8322:34;8375:61;8428:7;8419:6;8408:9;8404:22;8375:61;:::i;:::-;8365:71;;8489:2;8478:9;8474:18;8461:32;8445:48;;8518:2;8508:8;8505:16;8502:36;;;8534:1;8531;8524:12;8502:36;;8557:63;8612:7;8601:8;8590:9;8586:24;8557:63;:::i;8813:154::-;-1:-1:-1;;;;;8892:5:233;8888:54;8881:5;8878:65;8868:93;;8957:1;8954;8947:12;8972:483;9065:6;9073;9126:2;9114:9;9105:7;9101:23;9097:32;9094:52;;;9142:1;9139;9132:12;9094:52;9181:9;9168:23;9200:31;9225:5;9200:31;:::i;:::-;9250:5;-1:-1:-1;9306:2:233;9291:18;;9278:32;9333:18;9322:30;;9319:50;;;9365:1;9362;9355:12;9319:50;9388:61;9441:7;9432:6;9421:9;9417:22;9388:61;:::i;:::-;9378:71;;;8972:483;;;;;:::o;9460:248::-;9528:6;9536;9589:2;9577:9;9568:7;9564:23;9560:32;9557:52;;;9605:1;9602;9595:12;9557:52;-1:-1:-1;;9628:23:233;;;9698:2;9683:18;;;9670:32;;-1:-1:-1;9460:248:233:o;10234:184::-;-1:-1:-1;;;10283:1:233;10276:88;10383:4;10380:1;10373:15;10407:4;10404:1;10397:15;10423:277;10490:6;10543:2;10531:9;10522:7;10518:23;10514:32;10511:52;;;10559:1;10556;10549:12;10511:52;10591:9;10585:16;10644:5;10637:13;10630:21;10623:5;10620:32;10610:60;;10666:1;10663;10656:12;11790:251;11860:6;11913:2;11901:9;11892:7;11888:23;11884:32;11881:52;;;11929:1;11926;11919:12;11881:52;11961:9;11955:16;11980:31;12005:5;11980:31;:::i;13581:692::-;13894:48;13932:9;13924:6;13894:48;:::i;:::-;13978:3;13973:2;13962:9;13958:18;13951:31;13875:4;14005:78;14078:3;14067:9;14063:19;14055:6;14005:78;:::i;:::-;14131:9;14123:6;14119:22;14114:2;14103:9;14099:18;14092:50;14159:65;14217:6;14209;14159:65;:::i;:::-;14151:73;;;14260:6;14255:2;14244:9;14240:18;14233:34;13581:692;;;;;;;:::o;14637:184::-;-1:-1:-1;;;14686:1:233;14679:88;14786:4;14783:1;14776:15;14810:4;14807:1;14800:15;14826:195;14865:3;-1:-1:-1;;14889:5:233;14886:77;14883:103;;14966:18;;:::i;:::-;-1:-1:-1;15013:1:233;15002:13;;14826:195::o;15026:990::-;15248:4;15277:2;15317;15306:9;15302:18;15347:6;15336:9;15329:25;15373:2;15411;15406;15395:9;15391:18;15384:30;15434:6;15469;15463:13;15500:6;15492;15485:22;15526:2;15516:12;;15559:2;15548:9;15544:18;15537:25;;15597:2;15589:6;15585:15;15618:1;15628:362;15642:6;15639:1;15636:13;15628:362;;;15701:13;;15739:9;;15727:22;;15789:11;;;15783:18;15769:12;;;15762:40;15842:11;;;15836:18;15822:12;;;15815:40;15895:11;;15889:18;15875:12;;;15868:40;15937:4;15928:14;;;;15965:15;;;;15664:1;15657:9;15628:362;;;-1:-1:-1;16007:3:233;;15026:990;-1:-1:-1;;;;;;;;;15026:990:233:o;16021:119::-;16108:1;16101:5;16098:12;16088:46;;16114:18;;:::i;16145:250::-;16230:1;16240:113;16254:6;16251:1;16248:13;16240:113;;;16330:11;;;16324:18;16311:11;;;16304:39;16276:2;16269:10;16240:113;;;-1:-1:-1;;16387:1:233;16369:16;;16362:27;16145:250::o;16400:329::-;16441:3;16479:5;16473:12;16506:6;16501:3;16494:19;16522:76;16591:6;16584:4;16579:3;16575:14;16568:4;16561:5;16557:16;16522:76;:::i;:::-;16643:2;16631:15;-1:-1:-1;;16627:88:233;16618:98;;;;16718:4;16614:109;;16400:329;-1:-1:-1;;16400:329:233:o;16734:431::-;16956:6;16945:9;16938:25;16972:44;17009:6;16972:44;:::i;:::-;17052:6;17047:2;17036:9;17032:18;17025:34;17095:2;17090;17079:9;17075:18;17068:30;16919:4;17115:44;17155:2;17144:9;17140:18;17132:6;17115:44;:::i;17707:832::-;17770:5;17823:3;17816:4;17808:6;17804:17;17800:27;17790:55;;17841:1;17838;17831:12;17790:55;17870:6;17864:13;17896:4;17920:60;17936:43;17976:2;17936:43;:::i;17920:60::-;18002:3;18026:2;18021:3;18014:15;18054:4;18049:3;18045:14;18038:21;;18111:4;18105:2;18102:1;18098:10;18090:6;18086:23;18082:34;18068:48;;18139:3;18131:6;18128:15;18125:35;;;18156:1;18153;18146:12;18125:35;18192:4;18184:6;18180:17;18206:304;18222:6;18217:3;18214:15;18206:304;;;18295:3;18289:10;18343:4;18336:5;18332:16;18325:5;18322:27;18312:125;;18391:1;18420:2;18416;18409:14;18312:125;18450:18;;18488:12;;;;18239;;18206:304;;18544:846;18653:6;18706:2;18694:9;18685:7;18681:23;18677:32;18674:52;;;18722:1;18719;18712:12;18674:52;18755:9;18749:16;18784:18;18825:2;18817:6;18814:14;18811:34;;;18841:1;18838;18831:12;18811:34;18864:22;;;;18920:4;18902:16;;;18898:27;18895:47;;;18938:1;18935;18928:12;18895:47;18964:22;;:::i;:::-;19015:2;19009:9;19002:5;18995:24;19065:2;19061;19057:11;19051:18;19046:2;19039:5;19035:14;19028:42;19116:2;19112;19108:11;19102:18;19097:2;19090:5;19086:14;19079:42;19167:2;19163;19159:11;19153:18;19148:2;19141:5;19137:14;19130:42;19211:3;19207:2;19203:12;19197:19;19241:2;19231:8;19228:16;19225:36;;;19257:1;19254;19247:12;19225:36;19294:65;19351:7;19340:8;19336:2;19332:17;19294:65;:::i;:::-;19288:3;19277:15;;19270:90;-1:-1:-1;19281:5:233;18544:846;-1:-1:-1;;;;;18544:846:233:o;19395:184::-;-1:-1:-1;;;19444:1:233;19437:88;19544:4;19541:1;19534:15;19568:4;19565:1;19558:15;19584:308;19623:1;19649;19639:35;;19654:18;;:::i;:::-;-1:-1:-1;;19768:1:233;19765:73;19696:66;19693:1;19690:73;19686:153;19683:179;;;19842:18;;:::i;:::-;-1:-1:-1;19876:10:233;;19584:308::o;19897:200::-;19963:9;;;19936:4;19991:9;;20019:10;;20031:12;;;20015:29;20054:12;;;20046:21;;20012:56;20009:82;;;20071:18;;:::i;20769:125::-;20834:9;;;20855:10;;;20852:36;;;20868:18;;:::i;20899:112::-;20931:1;20957;20947:35;;20962:18;;:::i;:::-;-1:-1:-1;20996:9:233;;20899:112::o;21016:120::-;21056:1;21082;21072:35;;21087:18;;:::i;:::-;-1:-1:-1;21121:9:233;;21016:120::o;21394:489::-;21694:6;21683:9;21676:25;21737:2;21732;21721:9;21717:18;21710:30;21657:4;21757:77;21830:2;21819:9;21815:18;21807:6;21757:77;:::i;:::-;21749:85;;21870:6;21865:2;21854:9;21850:18;21843:34;21394:489;;;;;;:::o;21888:568::-;21941:5;21994:3;21987:4;21979:6;21975:17;21971:27;21961:55;;22012:1;22009;22002:12;21961:55;22041:6;22035:13;22067:18;22063:2;22060:26;22057:52;;;22089:18;;:::i;:::-;22133:114;22241:4;-1:-1:-1;;22165:4:233;22161:2;22157:13;22153:86;22149:97;22133:114;:::i;:::-;22272:2;22263:7;22256:19;22318:3;22311:4;22306:2;22298:6;22294:15;22290:26;22287:35;22284:55;;;22335:1;22332;22325:12;22284:55;22348:77;22422:2;22415:4;22406:7;22402:18;22395:4;22387:6;22383:17;22348:77;:::i;22461:655::-;22603:6;22611;22619;22672:2;22660:9;22651:7;22647:23;22643:32;22640:52;;;22688:1;22685;22678:12;22640:52;22721:9;22715:16;22750:18;22791:2;22783:6;22780:14;22777:34;;;22807:1;22804;22797:12;22777:34;22830:60;22882:7;22873:6;22862:9;22858:22;22830:60;:::i;:::-;22820:70;;22930:2;22919:9;22915:18;22909:25;22899:35;;22980:2;22969:9;22965:18;22959:25;22943:41;;23009:2;22999:8;22996:16;22993:36;;;23025:1;23022;23015:12;22993:36;;23048:62;23102:7;23091:8;23080:9;23076:24;23048:62;:::i;23121:407::-;23204:5;23244;23238:12;23286:4;23279:5;23275:16;23269:23;23311:66;23403:2;23399;23395:11;23386:20;;23429:1;23421:6;23418:13;23415:107;;;23490:1;23486:14;;;;23483:1;23479:22;23475:31;;;23467:40;23463:49;;23121:407;-1:-1:-1;;23121:407:233:o;23786:526::-;24027:3;24066:1;24058:6;24055:13;24045:47;;24072:18;;:::i;:::-;-1:-1:-1;24117:3:233;24113:16;;;;24101:29;;24155:1;24146:11;;24139:27;;;;24191:2;24182:12;;24175:28;;;;24228:2;24219:12;;24212:28;24265:2;24256:12;;24249:28;24302:3;24293:13;;23786:526::o;24317:492::-;24492:3;24530:6;24524:13;24546:66;24605:6;24600:3;24593:4;24585:6;24581:17;24546:66;:::i;:::-;24675:13;;24634:16;;;;24697:70;24675:13;24634:16;24744:4;24732:17;;24697:70;:::i;:::-;24783:20;;24317:492;-1:-1:-1;;;;24317:492:233:o;24814:815::-;25209:6;25198:9;25191:25;25252:3;25247:2;25236:9;25232:18;25225:31;25172:4;25279:78;25352:3;25341:9;25337:19;25329:6;25279:78;:::i;:::-;25405:9;25397:6;25393:22;25388:2;25377:9;25373:18;25366:50;25439:32;25464:6;25456;25439:32;:::i;:::-;25425:46;;25507:6;25502:2;25491:9;25487:18;25480:34;25563:9;25555:6;25551:22;25545:3;25534:9;25530:19;25523:51;25591:32;25616:6;25608;25591:32;:::i;:::-;25583:40;24814:815;-1:-1:-1;;;;;;;;24814:815:233:o;25634:569::-;25958:6;25947:9;25940:25;26001:3;25996:2;25985:9;25981:18;25974:31;25921:4;26022:78;26095:3;26084:9;26080:19;26072:6;26022:78;:::i;:::-;26148:4;26136:17;;;;26131:2;26116:18;;26109:45;-1:-1:-1;26185:2:233;26170:18;26163:34;26014:86;25634:569;-1:-1:-1;;25634:569:233:o;26208:184::-;26278:6;26331:2;26319:9;26310:7;26306:23;26302:32;26299:52;;;26347:1;26344;26337:12;26299:52;-1:-1:-1;26370:16:233;;26208:184;-1:-1:-1;26208:184:233:o;26397:730::-;26767:6;26756:9;26749:25;26810:3;26805:2;26794:9;26790:18;26783:31;26730:4;26837:78;26910:3;26899:9;26895:19;26887:6;26837:78;:::i;:::-;26963:4;26955:6;26951:17;26946:2;26935:9;26931:18;26924:45;27017:9;27009:6;27005:22;27000:2;26989:9;26985:18;26978:50;27045:32;27070:6;27062;27045:32;:::i;:::-;27037:40;;;27114:6;27108:3;27097:9;27093:19;27086:35;26397:730;;;;;;;;:::o;27132:339::-;27309:2;27298:9;27291:21;27272:4;27329:44;27369:2;27358:9;27354:18;27346:6;27329:44;:::i;:::-;27321:52;;-1:-1:-1;;;;;27413:6:233;27409:55;27404:2;27393:9;27389:18;27382:83;27132:339;;;;;:::o;27476:711::-;27585:6;27638:3;27626:9;27617:7;27613:23;27609:33;27606:53;;;27655:1;27652;27645:12;27606:53;27681:22;;:::i;:::-;27732:9;27726:16;27719:5;27712:31;27796:2;27785:9;27781:18;27775:25;27770:2;27763:5;27759:14;27752:49;27854:2;27843:9;27839:18;27833:25;27828:2;27821:5;27817:14;27810:49;27912:2;27901:9;27897:18;27891:25;27886:2;27879:5;27875:14;27868:49;27971:3;27960:9;27956:19;27950:26;27944:3;27937:5;27933:15;27926:51;28031:3;28020:9;28016:19;28010:26;28004:3;27997:5;27993:15;27986:51;28091:3;28080:9;28076:19;28070:26;28064:3;28057:5;28053:15;28046:51;28151:3;28140:9;28136:19;28130:26;28124:3;28117:5;28113:15;28106:51;28176:5;28166:15;;;27476:711;;;;:::o;28192:999::-;28293:6;28346:2;28334:9;28325:7;28321:23;28317:32;28314:52;;;28362:1;28359;28352:12;28314:52;28395:9;28389:16;28424:18;28465:2;28457:6;28454:14;28451:34;;;28481:1;28478;28471:12;28451:34;28504:22;;;;28560:6;28542:16;;;28538:29;28535:49;;;28580:1;28577;28570:12;28535:49;28606:22;;:::i;:::-;28657:2;28651:9;28644:5;28637:24;28700:2;28696;28692:11;28686:18;28729:2;28719:8;28716:16;28713:36;;;28745:1;28742;28735:12;28713:36;28781:65;28838:7;28827:8;28823:2;28819:17;28781:65;:::i;:::-;28776:2;28769:5;28765:14;28758:89;;28893:2;28889;28885:11;28879:18;28874:2;28867:5;28863:14;28856:42;28944:2;28940;28936:11;28930:18;28925:2;28918:5;28914:14;28907:42;28996:3;28992:2;28988:12;28982:19;28976:3;28969:5;28965:15;28958:44;29049:3;29045:2;29041:12;29035:19;29029:3;29022:5;29018:15;29011:44;29102:3;29098:2;29094:12;29088:19;29082:3;29075:5;29071:15;29064:44;29155:3;29151:2;29147:12;29141:19;29135:3;29128:5;29124:15;29117:44;29180:5;29170:15;;;;;28192:999;;;;:::o;29386:1068::-;29480:6;29511:2;29554;29542:9;29533:7;29529:23;29525:32;29522:52;;;29570:1;29567;29560:12;29522:52;29603:9;29597:16;29632:18;29673:2;29665:6;29662:14;29659:34;;;29689:1;29686;29679:12;29659:34;29727:6;29716:9;29712:22;29702:32;;29772:7;29765:4;29761:2;29757:13;29753:27;29743:55;;29794:1;29791;29784:12;29743:55;29823:2;29817:9;29846:60;29862:43;29902:2;29862:43;:::i;29846:60::-;29940:15;;;30022:1;30018:10;;;;30010:19;;30006:28;;;29971:12;;;;30046:19;;;30043:39;;;30078:1;30075;30068:12;30043:39;30102:11;;;;30122:302;30138:6;30133:3;30130:15;30122:302;;;30211:3;30205:10;30259:2;30252:5;30248:14;30241:5;30238:25;30228:123;;30305:1;30334:2;30330;30323:14;30228:123;30364:18;;30155:12;;;;30402;;;;30122:302;;30459:168;30532:9;;;30563;;30580:15;;;30574:22;;30560:37;30550:71;;30601:18;;:::i;30632:216::-;30696:9;;;30724:11;;;30671:3;30754:9;;30782:10;;30778:19;;30807:10;;30799:19;;30775:44;30772:70;;;30822:18;;:::i;30853:292::-;30925:9;;;30892:7;30950:9;;30967:66;30961:73;;30946:89;30943:115;;;31038:18;;:::i;:::-;31111:1;31102:7;31097:16;31094:1;31091:23;31087:1;31080:9;31077:38;31067:72;;31119:18;;:::i;31335:1023::-;31781:6;31776:3;31769:19;31818:6;31813:2;31808:3;31804:12;31797:28;31855:6;31850:2;31845:3;31841:12;31834:28;31892:6;31887:2;31882:3;31878:12;31871:28;31953:6;31946:14;31939:22;31934:3;31930:32;31924:3;31919;31915:13;31908:55;32017:6;32010:14;32003:22;31998:3;31994:32;31988:3;31983;31979:13;31972:55;32036:38;32069:3;32064;32060:13;32052:6;20536:13;20529:21;20524:3;20520:31;20508:44;;20457:101;32036:38;32105:6;32099:3;32094;32090:13;32083:29;32143:6;32137:3;32132;32128:13;32121:29;32159:38;32192:3;32187;32183:13;32175:6;20536:13;20529:21;20524:3;20520:31;20508:44;;20457:101;32159:38;20536:13;;20529:21;20524:3;20520:31;32240:3;32231:13;;20508:44;32270:3;32261:13;;32254:30;;;;32309:3;32300:13;;32293:30;32348:3;32339:13;;;-1:-1:-1;;;;;;;;;;31335:1023:233:o;32552:152::-;32636:13;;32678:1;32668:12;;32658:40;;32694:1;32691;32684:12;32709:665;32774:5;32827:3;32820:4;32812:6;32808:17;32804:27;32794:55;;32845:1;32842;32835:12;32794:55;32874:6;32868:13;32900:4;32924:60;32940:43;32980:2;32940:43;:::i;32924:60::-;33006:3;33030:2;33025:3;33018:15;33058:4;33053:3;33049:14;33042:21;;33115:4;33109:2;33106:1;33102:10;33094:6;33090:23;33086:34;33072:48;;33143:3;33135:6;33132:15;33129:35;;;33160:1;33157;33150:12;33129:35;33196:4;33188:6;33184:17;33210:135;33226:6;33221:3;33218:15;33210:135;;;33292:10;;33280:23;;33323:12;;;;33243;;33210:135;;33379:1104;33481:6;33534:2;33522:9;33513:7;33509:23;33505:32;33502:52;;;33550:1;33547;33540:12;33502:52;33583:9;33577:16;33612:18;33653:2;33645:6;33642:14;33639:34;;;33669:1;33666;33659:12;33639:34;33692:22;;;;33748:6;33730:16;;;33726:29;33723:49;;;33768:1;33765;33758:12;33723:49;33794:22;;:::i;:::-;33845:2;33839:9;33832:5;33825:24;33895:2;33891;33887:11;33881:18;33876:2;33869:5;33865:14;33858:42;33932:47;33975:2;33971;33967:11;33932:47;:::i;:::-;33927:2;33920:5;33916:14;33909:71;34026:2;34022;34018:11;34012:18;34007:2;34000:5;33996:14;33989:42;34078:3;34074:2;34070:12;34064:19;34058:3;34051:5;34047:15;34040:44;34131:3;34127:2;34123:12;34117:19;34111:3;34104:5;34100:15;34093:44;34176:3;34172:2;34168:12;34162:19;34206:2;34196:8;34193:16;34190:36;;;34222:1;34219;34212:12;34190:36;34259:67;34318:7;34307:8;34303:2;34299:17;34259:67;:::i;:::-;34253:3;34242:15;;34235:92;-1:-1:-1;34374:3:233;34366:12;;;34360:19;34343:15;;;34336:44;34399:3;34440:11;;;34434:18;34418:14;;;34411:42;;;;-1:-1:-1;34246:5:233;33379:1104;-1:-1:-1;;;33379:1104:233:o;34820:175::-;34857:3;34901:4;34894:5;34890:16;34930:4;34921:7;34918:17;34915:43;;34938:18;;:::i;:::-;34987:1;34974:15;;34820:175;-1:-1:-1;;34820:175:233:o;35000:320::-;35207:6;35196:9;35189:25;35250:2;35245;35234:9;35230:18;35223:30;35170:4;35270:44;35310:2;35299:9;35295:18;35287:6;35270:44;:::i;35325:335::-;35404:6;35457:2;35445:9;35436:7;35432:23;35428:32;35425:52;;;35473:1;35470;35463:12;35425:52;35506:9;35500:16;35539:18;35531:6;35528:30;35525:50;;;35571:1;35568;35561:12;35525:50;35594:60;35646:7;35637:6;35626:9;35622:22;35594:60;:::i;35665:925::-;36114:66;36106:6;36102:79;36097:3;36090:92;36072:3;36201;36233:2;36229:1;36224:3;36220:11;36213:23;36265:6;36259:13;36281:74;36348:6;36344:1;36339:3;36335:11;36328:4;36320:6;36316:17;36281:74;:::i;:::-;36383:6;36378:3;36374:16;36364:26;;36418:2;36414:1;36410:2;36406:10;36399:22;36452:6;36446:13;36430:29;;36468:75;36534:8;36530:1;36526:2;36522:10;36515:4;36507:6;36503:17;36468:75;:::i;:::-;36563:17;36582:1;36559:25;;35665:925;-1:-1:-1;;;;;35665:925:233:o;36595:219::-;36744:2;36733:9;36726:21;36707:4;36764:44;36804:2;36793:9;36789:18;36781:6;36764:44;:::i;36819:714::-;37166:6;37161:3;37154:19;37203:6;37198:2;37193:3;37189:12;37182:28;37219:44;37256:6;37219:44;:::i;:::-;37297:3;37293:16;;;;37288:2;37279:12;;37272:38;37335:2;37326:12;;37319:28;;;;37372:2;37363:12;;37356:28;;;;37409:3;37400:13;;37393:29;37447:3;37438:13;;37431:29;37485:3;37476:13;;37469:29;37523:3;37514:13;;36819:714;-1:-1:-1;;36819:714:233:o;37538:128::-;37605:9;;;37626:11;;;37623:37;;;37640:18;;:::i;37671:640::-;37922:6;37917:3;37910:19;37892:3;37948:2;37981;37976:3;37972:12;38013:6;38007:13;38078:2;38070:6;38066:15;38099:1;38109:175;38123:6;38120:1;38117:13;38109:175;;;38186:13;;38172:28;;38222:14;;;;38259:15;;;;38145:1;38138:9;38109:175;;;-1:-1:-1;38300:5:233;;37671:640;-1:-1:-1;;;;;;;37671:640:233:o;38316:359::-;38519:2;38508:9;38501:21;38482:4;38539:44;38579:2;38568:9;38564:18;38556:6;38539:44;:::i;:::-;38614:2;38599:18;;38592:34;;;;-1:-1:-1;38657:2:233;38642:18;38635:34;38531:52;38316:359;-1:-1:-1;38316:359:233:o;39007:711::-;39342:3;39331:9;39324:22;39305:4;39369:78;39442:3;39431:9;39427:19;39419:6;39369:78;:::i;:::-;39495:9;39487:6;39483:22;39478:2;39467:9;39463:18;39456:50;39529:32;39554:6;39546;39529:32;:::i;:::-;39515:46;;39597:6;39592:2;39581:9;39577:18;39570:34;39652:9;39644:6;39640:22;39635:2;39624:9;39620:18;39613:50;39680:32;39705:6;39697;39680:32;:::i;:::-;39672:40;39007:711;-1:-1:-1;;;;;;;39007:711:233:o;39723:920::-;40179:6;40168:9;40161:25;40222:3;40217:2;40206:9;40202:18;40195:31;40142:4;40249:78;40322:3;40311:9;40307:19;40299:6;40249:78;:::i;:::-;40375:9;40367:6;40363:22;40358:2;40347:9;40343:18;40336:50;40409:32;40434:6;40426;40409:32;:::i;:::-;40395:46;;40477:6;40472:2;40461:9;40457:18;40450:34;40533:9;40525:6;40521:22;40515:3;40504:9;40500:19;40493:51;40561:32;40586:6;40578;40561:32;:::i;:::-;40553:40;;;40630:6;40624:3;40613:9;40609:19;40602:35;39723:920;;;;;;;;;:::o;40648:532::-;40899:2;40888:9;40881:21;40862:4;40925:77;40998:2;40987:9;40983:18;40975:6;40925:77;:::i;:::-;41050:14;41042:6;41038:27;41033:2;41022:9;41018:18;41011:55;41114:9;41106:6;41102:22;41097:2;41086:9;41082:18;41075:50;41142:32;41167:6;41159;41142:32;:::i;41185:637::-;41496:6;41485:9;41478:25;41539:3;41534:2;41523:9;41519:18;41512:31;41459:4;41566:78;41639:3;41628:9;41624:19;41616:6;41566:78;:::i;:::-;41692:14;41684:6;41680:27;41675:2;41664:9;41660:18;41653:55;41756:9;41748:6;41744:22;41739:2;41728:9;41724:18;41717:50;41784:32;41809:6;41801;41784:32;:::i;42087:191::-;42122:3;42153:66;42146:5;42143:77;42140:103;;42223:18;;:::i;:::-;-1:-1:-1;42263:1:233;42259:13;;42087:191::o;42283:463::-;42546:6;42535:9;42528:25;42589:2;42584;42573:9;42569:18;42562:30;42509:4;42609:77;42682:2;42671:9;42667:18;42659:6;42609:77;:::i;:::-;42601:85;;42734:4;42726:6;42722:17;42717:2;42706:9;42702:18;42695:45;42283:463;;;;;;:::o;42938:287::-;43067:3;43105:6;43099:13;43121:66;43180:6;43175:3;43168:4;43160:6;43156:17;43121:66;:::i;:::-;43203:16;;;;;42938:287;-1:-1:-1;;42938:287:233:o;43514:530::-;43699:3;43737:6;43731:13;43753:66;43812:6;43807:3;43800:4;43792:6;43788:17;43753:66;:::i;:::-;43888:2;43884:15;;;;43901:66;43880:88;43841:16;;;;43866:103;;;43996:2;43985:14;;43978:30;;;;44035:2;44024:14;;43514:530;-1:-1:-1;;43514:530:233:o","linkReferences":{"src/libraries/LibChunks.sol":{"LibChunks":[{"start":8854,"length":20}]}}},"methodIdentifiers":{"_calculateMagicAttack()":"bfea0b85","_msgSender()":"119df25f","_msgValue()":"45ec9354","_world()":"e1af802c","createMatch(uint8,bytes32[],bytes32[])":"aaa417b7","endTurn(bytes32,bytes32,(bytes32,bytes32,bytes32,uint256)[])":"98d239b1","executeCombat(uint256,bytes32,(bytes32,bytes32,bytes32,uint256)[])":"fc88ff63","getEncounter(bytes32)":"4dda27e8","isParticipant(address,bytes32[])":"b2467894","isParticipant(bytes32,bytes32)":"c6ca743c","isValidPvE(bytes32[],bytes32[],uint16,uint16)":"15451020","supportsInterface(bytes4)":"01ffc9a7"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"start\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"end\",\"type\":\"uint256\"}],\"name\":\"Slice_OutOfBounds\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"resource\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"caller\",\"type\":\"address\"}],\"name\":\"World_AccessDenied\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"functionSelector\",\"type\":\"bytes4\"}],\"name\":\"World_FunctionSelectorNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_ResourceNotFound\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"staticData\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"EncodedLengths\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"dynamicData\",\"type\":\"bytes\"}],\"name\":\"Store_SetRecord\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Store_SpliceStaticData\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"_calculateMagicAttack\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"_msgSender\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"_msgValue\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"_world\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"enum EncounterType\",\"name\":\"encounterType\",\"type\":\"uint8\"},{\"internalType\":\"bytes32[]\",\"name\":\"attackers\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes32[]\",\"name\":\"defenders\",\"type\":\"bytes32[]\"}],\"name\":\"createMatch\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"encounterId\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"encounterId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"playerId\",\"type\":\"bytes32\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"attackerEntityId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"defenderEntityId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"actionId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"weaponId\",\"type\":\"uint256\"}],\"internalType\":\"struct Action[]\",\"name\":\"actions\",\"type\":\"tuple[]\"}],\"name\":\"endTurn\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"randomNumber\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"encounterId\",\"type\":\"bytes32\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"attackerEntityId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"defenderEntityId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"actionId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"weaponId\",\"type\":\"uint256\"}],\"internalType\":\"struct Action[]\",\"name\":\"actions\",\"type\":\"tuple[]\"}],\"name\":\"executeCombat\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"encounterId\",\"type\":\"bytes32\"}],\"name\":\"getEncounter\",\"outputs\":[{\"components\":[{\"internalType\":\"enum EncounterType\",\"name\":\"encounterType\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"start\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"end\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"currentTurn\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxTurns\",\"type\":\"uint256\"},{\"internalType\":\"bytes32[]\",\"name\":\"defenders\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes32[]\",\"name\":\"attackers\",\"type\":\"bytes32[]\"}],\"internalType\":\"struct CombatEncounterData\",\"name\":\"_encounterData\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"bytes32[]\",\"name\":\"participants\",\"type\":\"bytes32[]\"}],\"name\":\"isParticipant\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_isParticipant\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"playerId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"encounterId\",\"type\":\"bytes32\"}],\"name\":\"isParticipant\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_isParticipant\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"attackers\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes32[]\",\"name\":\"defenders\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint16\",\"name\":\"x\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"y\",\"type\":\"uint16\"}],\"name\":\"isValidPvE\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_isValidPvE\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"}],\"devdoc\":{\"errors\":{\"Slice_OutOfBounds(bytes,uint256,uint256)\":[{\"details\":\"Raised if `start` is greater than `end` or `end` greater than the length of `data`.\",\"params\":{\"data\":\"The bytes array to subslice.\",\"end\":\"The end index for the subslice.\",\"start\":\"The start index for the subslice.\"}}],\"World_AccessDenied(string,address)\":[{\"params\":{\"caller\":\"The address of the user trying to access the resource.\",\"resource\":\"The resource's identifier.\"}}],\"World_FunctionSelectorNotFound(bytes4)\":[{\"params\":{\"functionSelector\":\"The function selector in question.\"}}],\"World_ResourceNotFound(bytes32,string)\":[{\"params\":{\"resourceId\":\"The ID of the resource.\",\"resourceIdString\":\"The string representation of the resource ID.\"}}]},\"events\":{\"Store_SetRecord(bytes32,bytes32[],bytes,bytes32,bytes)\":{\"params\":{\"dynamicData\":\"The dynamic data of the record.\",\"encodedLengths\":\"The encoded lengths of the dynamic data of the record.\",\"keyTuple\":\"An array representing the composite key for the record.\",\"staticData\":\"The static data of the record.\",\"tableId\":\"The ID of the table where the record is set.\"}},\"Store_SpliceStaticData(bytes32,bytes32[],uint48,bytes)\":{\"details\":\"In static data, data is always overwritten starting at the start position, so the total length of the data remains the same and no data is shifted.\",\"params\":{\"data\":\"The data to write to the static data of the record at the start byte.\",\"keyTuple\":\"An array representing the key for the record.\",\"start\":\"The start position in bytes for the splice operation.\",\"tableId\":\"The ID of the table where the data is spliced.\"}}},\"kind\":\"dev\",\"methods\":{\"_msgSender()\":{\"returns\":{\"sender\":\"The `msg.sender` in the call to the World contract before the World routed the call to the WorldContextConsumer contract.\"}},\"_msgValue()\":{\"returns\":{\"value\":\"The `msg.value` in the call to the World contract before the World routed the call to the WorldContextConsumer contract.\"}},\"_world()\":{\"returns\":{\"_0\":\"The address of the World contract that routed the call to this WorldContextConsumer.\"}},\"endTurn(bytes32,bytes32,(bytes32,bytes32,bytes32,uint256)[])\":{\"params\":{\"actions\":\": for a pve encounter player actions are calculated first and the mobs.\",\"encounterId\":\"the bytes32 id of the encounter\"}},\"supportsInterface(bytes4)\":{\"params\":{\"interfaceId\":\"The ID of the interface in question.\"},\"returns\":{\"_0\":\"True if the interface is supported, false otherwise.\"}}},\"version\":1},\"userdoc\":{\"errors\":{\"Slice_OutOfBounds(bytes,uint256,uint256)\":[{\"notice\":\"Error raised when the provided slice is out of bounds.\"}],\"World_AccessDenied(string,address)\":[{\"notice\":\"Raised when a user tries to access a resource they don't have permission for.\"}],\"World_FunctionSelectorNotFound(bytes4)\":[{\"notice\":\"Raised when the specified function selector is not found.\"}],\"World_ResourceNotFound(bytes32,string)\":[{\"notice\":\"Raised when the specified resource is not found.\"}]},\"events\":{\"Store_SetRecord(bytes32,bytes32[],bytes,bytes32,bytes)\":{\"notice\":\"Emitted when a new record is set in the store.\"},\"Store_SpliceStaticData(bytes32,bytes32[],uint48,bytes)\":{\"notice\":\"Emitted when static data in the store is spliced.\"}},\"kind\":\"user\",\"methods\":{\"_msgSender()\":{\"notice\":\"Extract the `msg.sender` from the context appended to the calldata.\"},\"_msgValue()\":{\"notice\":\"Extract the `msg.value` from the context appended to the calldata.\"},\"_world()\":{\"notice\":\"Get the address of the World contract that routed the call to this WorldContextConsumer.\"},\"supportsInterface(bytes4)\":{\"notice\":\"Checks if an interface is supported by the contract. using ERC-165 supportsInterface (see https://eips.ethereum.org/EIPS/eip-165)\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/systems/CombatSystem.sol\":\"CombatSystem\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":3000},\"remappings\":[\":@codegen/=src/codegen/\",\":@erc1155/=lib/ERC1155-puppet/\",\":@interfaces/=src/interfaces/\",\":@latticexyz/=node_modules/@latticexyz/\",\":@libraries/=src/libraries/\",\":@openzeppelin-upgradeable/=node_modules/@openzeppelin/contracts-upgradeable/\",\":@openzeppelin/=node_modules/@openzeppelin/contracts/\",\":@pythnetwork/=node_modules/@pythnetwork/entropy-sdk-solidity/\",\":@systems/=src/systems/\",\":@tables/=src/codegen/tables/\",\":@test/=test/\",\":@world/=src/codegen/world/\",\":ERC1155-puppet/=lib/ERC1155-puppet/\",\":ds-test/=node_modules/ds-test/src/\",\":forge-std/=node_modules/forge-std/src/\"]},\"sources\":{\"constants.sol\":{\"keccak256\":\"0xea645b3f1e153c1d76fe3ed1c15a22129928d78711f9eb6476ddc123460f25ed\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0e57cd5c8ca30c40156f7379c556ea7ca3394da3da286056cf9554e7c1567b14\",\"dweb:/ipfs/QmSdQyCEp65JnngKxz4d6QRzdDcMqB3g2Aw5J9vuEMgEW1\"]},\"node_modules/@latticexyz/schema-type/src/solidity/SchemaType.sol\":{\"keccak256\":\"0x650927696f7518fa216f2d6001835e9fdb419518034c781e86d2a2d33f4ecd2a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://72e91ac32ed00d36bd22fefeaf4ce1e9420143ddab7080eeb720c668a117bf44\",\"dweb:/ipfs/QmdVqn18WZvx5p84MDJPsB5tfVoXDR86wzm4sLx6WrGYYL\"]},\"node_modules/@latticexyz/store/src/Bytes.sol\":{\"keccak256\":\"0x7dec900f9c9e7dff59430fa6f520e76c56338c3e829201aea140d49342e4fef8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e55c1dfcda94dcc64b8577949b2e92a9d3fc44f5fba1ae77ceacccfdc8e22e35\",\"dweb:/ipfs/QmS7uRJbEQYkPuZ5Dz5aSNjaaxj9PA8RtxUeUGN2W3jZx6\"]},\"node_modules/@latticexyz/store/src/EncodedLengths.sol\":{\"keccak256\":\"0xebc0a6efd611e02b15c05a382382b597fe059eba7f2a9e90da81eeb2f7666774\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://00b2cac12599935e25ea0697e99fc9e6d5af6c1c982761996c16707d9cd6ca09\",\"dweb:/ipfs/QmXccFminkrFtDpNfx6X1pHvW7Tn1nA5XcGu9T17pJyZyK\"]},\"node_modules/@latticexyz/store/src/FieldLayout.sol\":{\"keccak256\":\"0x15f698b7eabc062a00ff7a2e02db0ace2dd51f8bd2bc51a45dc0afa88f2ee658\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f774202c98ad394b3b62be93292512c633dec63bc931c190ed984656c2d54ec7\",\"dweb:/ipfs/Qmd2D9mvP8S88ad2Q8WU54saNVr3Pwc5stPqEKHwcpo8AT\"]},\"node_modules/@latticexyz/store/src/Hook.sol\":{\"keccak256\":\"0xd016a2e1260f5a81ff9a8dfac58d7947e114414df8cce7302a2629908ea5f18e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0c558a6f3a5f540c0190fa6d642a094a185c5db1acfc2437c7dbde0340f00ac3\",\"dweb:/ipfs/QmViAHvR7U7HNfBiBZEMFiy1TTSHDFNiDzBfQSeLBShCky\"]},\"node_modules/@latticexyz/store/src/IERC165.sol\":{\"keccak256\":\"0x0efbf9afc716c585621482221f75e5bd60bcf0e813c9f7800d7c0309dcc3c927\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://31b6aeb5446a0a0d5bd71be15a68c5bde94b08c961369203b83c8abe36f401d2\",\"dweb:/ipfs/QmXhComne4es9ZMKaGNqHCdJZrFoFssxMYgLaqvCXPL1Mg\"]},\"node_modules/@latticexyz/store/src/IEncodedLengthsErrors.sol\":{\"keccak256\":\"0x06bb49164f44acc8d51df7b75ecf2f7aeb9281f7a3b357cae7d8d58bd1700dfa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://719027f4cc60fea30ce01cd4f672462f41fac750ae802e91a1a6d37c929e11ba\",\"dweb:/ipfs/QmWi5DM2jT5V5SGP1afRmFyRgFvuZiGDX2PWHwP19HssF1\"]},\"node_modules/@latticexyz/store/src/IFieldLayoutErrors.sol\":{\"keccak256\":\"0xaef70c46e412bded1024ac82c957cea81c1d1ab11878a95635531e2ac9673a53\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cda2c7dc02ee8f0163b1c8d0f3e1e05d48b2a009e5c7365d2418f17bc3455817\",\"dweb:/ipfs/QmXHDZuCPTxjHaeiEaJhA81koX2NJ3Gj1zt5WVWaz77FL8\"]},\"node_modules/@latticexyz/store/src/ISchemaErrors.sol\":{\"keccak256\":\"0x0ac3de36c9d0058a17fcd7f1a905132215fd16ea3ed3b5109de1de04ddd7c441\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f83fa2546009cfd16b3b3969dcec1d67c9d818d910177b885ba263b6a948c65d\",\"dweb:/ipfs/QmehywHdvFYBL9BTtoPsVVwJXsEA4Xjk8aPWoHw1R45KeY\"]},\"node_modules/@latticexyz/store/src/ISliceErrors.sol\":{\"keccak256\":\"0x72684b7dfc1b44537401ccf10d6120186d02323266fcc762bc81859985eded4c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8d037b6937969ae54018ddf647eeaf5eb69a2b0bf9edf9456d3d270316b2883\",\"dweb:/ipfs/QmfYJeyAmzRqpn68FteiM97p5t17iBw62FCET4bK5g4w37\"]},\"node_modules/@latticexyz/store/src/IStore.sol\":{\"keccak256\":\"0x42515d1410333a3573f78a460576271ef62c16edad5cf771ef6287b83ca1c706\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6a58d03c4cf420df57d2b2e2e7932daad877e46e89561b46e1fa9f593a701bdc\",\"dweb:/ipfs/QmeFmKS7J1WqqBAgXkyxxx2fGA8JzuGszUmVsV2T6DYtsL\"]},\"node_modules/@latticexyz/store/src/IStoreErrors.sol\":{\"keccak256\":\"0x37e4d2f015dd4005ff9b3f711257c891027804bc268db1791984af4989951912\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a4a566ea96b69211f503707f69a9f9012d5873a3fd57b3f221549f46a7518df6\",\"dweb:/ipfs/QmVgcE3JufJr3iyeV6xqkvS4YtDcy6Eqyram2yzWUhwoB4\"]},\"node_modules/@latticexyz/store/src/IStoreEvents.sol\":{\"keccak256\":\"0x8606e9de37943c74beabb9ac9acd2132f951bed1ef79f2f4f3de83ed1f271f6a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d13adeee7ae9e687bf1cd12a8c36223179685fc828a7c468ee9311c879401b08\",\"dweb:/ipfs/QmQeb2ArSoQpE6ujBbDj9LY3xqpVCPiz3bh9SLT6siE8RY\"]},\"node_modules/@latticexyz/store/src/IStoreHook.sol\":{\"keccak256\":\"0x6574a30a2bbd8a0de21b2504c55effb8802fdeff62296af82a9380bd753adcc4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://85a859c533f51b584a9a2e8a64d61b6cf6f69bfcff1b926ad787518b1cae9562\",\"dweb:/ipfs/QmVyjmyJ69ZeqaXHg91JtGLVahRfZ7KtWaessLWZ6rYk9p\"]},\"node_modules/@latticexyz/store/src/IStoreKernel.sol\":{\"keccak256\":\"0x37a23dcbabc5937a717f2fda636b6a97963ed4b5a96870a62dfb199a8b692f89\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac9741ea6daf21f39699be11afd919ae3ec07df24d948aaaa6549456fefd7fc0\",\"dweb:/ipfs/QmeiPQkZitM4Pc3i6L87thU71Fs1JVWAgMqXnSK8VrCq75\"]},\"node_modules/@latticexyz/store/src/IStoreRead.sol\":{\"keccak256\":\"0xdcf28b3293d4d6c1fe2808a8918c1b2122e4e0e49f2793c79ebd2b9ae210ff7b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bb3d9cc80f549ed0c5b768aea69fb1b3c364bd4f85d193a3040c411b594d94db\",\"dweb:/ipfs/QmYYdY5CjPHiW5ucXihTva1eHsCPNqBsvL6zYYafH3ap4p\"]},\"node_modules/@latticexyz/store/src/IStoreRegistration.sol\":{\"keccak256\":\"0x9e91a73f93cc9ebc00c265c83177f6a3f8a156749a9261202e2845e12aeaa96b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a39280d87d22dd0a959d8f55925cb092dba1fee2f11d3dd8e3ffabed45a9ab6a\",\"dweb:/ipfs/QmRMBFLJtT2KN43Xz9P3vUNWxXrP8rLTNBFw2P6Z7EGeaS\"]},\"node_modules/@latticexyz/store/src/IStoreWrite.sol\":{\"keccak256\":\"0x120fd448da5806e09ecb5327ad4dba64df01d2ee7232de0979133627e87e24ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7a3cb151b2ddee217f330d61813b2dcd997de94940c903719f6d066a21467890\",\"dweb:/ipfs/Qmbes1RRY6KdtsMohp8834xXyipeQK9GJ41NfgXK1d1QAZ\"]},\"node_modules/@latticexyz/store/src/Memory.sol\":{\"keccak256\":\"0xef6e7000b181c2991aeacbf99a9d886f8c4df88878b857713f851185b63a7811\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b079b4773d140ab2c01bdb04facfa56a78f753aea7122fa445b2bfa133411392\",\"dweb:/ipfs/QmWYWKFpwtsPeGdCSxcANgxXUbwAuMMgR7iMVPDSCZxz2A\"]},\"node_modules/@latticexyz/store/src/ResourceId.sol\":{\"keccak256\":\"0x889423054511cf8a83f5dfd65a0f984dc514aba798ef3db139b59d395b2327e2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://40b9495d455c87db8b063e291ca3973dc3ba1163f09c5d7446241a9e1cb69ed0\",\"dweb:/ipfs/Qmek1JKVjPUpoXnKwu66HfPS9rHstKtWTuBmG8YFxbPEWQ\"]},\"node_modules/@latticexyz/store/src/Schema.sol\":{\"keccak256\":\"0x0d2a08030d21292ecbcc850d9111f3817d03f17cd5e02186894848a9152d79d7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3f30024c1613fb587aaba4c1dcb8e4e46ed765a2cebd5b63fbebd327d1bf13d3\",\"dweb:/ipfs/QmZzqSnPMYKDYwbFNvUFrvuazMUyQHzQ59w3A9x6juHAm7\"]},\"node_modules/@latticexyz/store/src/Slice.sol\":{\"keccak256\":\"0xae6c03881fdfa56cba1879d9c9c6b52c2829e6a278a200176678d8da05a89345\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3cad7dc4944c0518de2e7f99697485d365ae37aa6cad6967996377c2dd951fe4\",\"dweb:/ipfs/QmW3grFwr8BcgJmLfjLbj3FthnD7NRUBFMFiahbXztHPr7\"]},\"node_modules/@latticexyz/store/src/Storage.sol\":{\"keccak256\":\"0x7e735a4c7fa8b8a5fe2371d90801e3287ddb78efed69b31e1a76f0b7b153c4c3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9e6db36bd52144b6feeecd91a58fc311127a3892fc96c4171db5b570fe9876ee\",\"dweb:/ipfs/QmS6LqnTZvpMc4eiz5JowBoNnh3RYemG6JHjqtYucT1rQi\"]},\"node_modules/@latticexyz/store/src/StoreCore.sol\":{\"keccak256\":\"0x9513dc38e5baadde0ba9b08320a324043b0e88a10702be5c3507da8c3d45e861\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://99c80c65a394763668e4aed69220fec6bb3ed847fb277ddd1ff1d4bfdf452da2\",\"dweb:/ipfs/QmRT2BATKtrYmixWMuWo9Cz8g8oscfLNSmvjxTyiTNA1pc\"]},\"node_modules/@latticexyz/store/src/StoreSwitch.sol\":{\"keccak256\":\"0x7edf7c1641408f3a580eb28bda58054583cb846f875608612671c6d40712ba40\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4146adef610d1daab085a81aa9f2d4fd8c4e5f459b9ef184f3ef23465573cf91\",\"dweb:/ipfs/QmQqZMsbkzSNG6VfYzQLdRCBCsNohBSVQmWoTP6QvKmKUP\"]},\"node_modules/@latticexyz/store/src/codegen/index.sol\":{\"keccak256\":\"0x094a6f1e2910b345b6b254e0fc2c8882b3190c673f7ee19742e857057a4d3f85\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://18908e2e7e878635abea72ef99851fddd204371e6b641f010e831ebfa0b1bfd4\",\"dweb:/ipfs/QmSNAxXqxTrzPkZ4rSAQgBnuer1yLPq74hoqnzrZV3WGsb\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Hooks.sol\":{\"keccak256\":\"0xfdea5b4cf666720c1c0d81a8acdede68e6220aee45d8a9f3c9834b4edc5da394\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b3a394dfe123cfb7200f65d379fb0cb3d2c84475b382faf6ee11bf9c45a63b53\",\"dweb:/ipfs/QmRMPHFBbCKtqKBVV9gvd2jhnfsyUKmCBEQkgviMoxi1UG\"]},\"node_modules/@latticexyz/store/src/codegen/tables/ResourceIds.sol\":{\"keccak256\":\"0xf192bceab34508cee21dd7c33e4d776f79c4a7ca55ee8905c6c694850ebfdf64\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c95113f76f6de671cb44710754e0942934182b544660a4330fc90a505e198905\",\"dweb:/ipfs/QmXma5ZxfK8Y9TbvB7QM9hdhfc1ixiMcLpo9BQxnVthHB5\"]},\"node_modules/@latticexyz/store/src/codegen/tables/StoreHooks.sol\":{\"keccak256\":\"0xa825218614acc19a4100357dd7ee410b67b994fe7aaa68650d5d0d4202d4ca8c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://09b0cbb598fe2b75bbcd269b47d686a66fcc89c0c40d9a09807eba7688b81fc6\",\"dweb:/ipfs/QmYk6XQwSLhRumujTCsqxdvugKuP8oLjjB926pMHR445ra\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Tables.sol\":{\"keccak256\":\"0x918b977e7f7f3e947d6d5aa189c54c9c7e7c106d0a0d53734ee959ad454abe09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3a3de63c04c838bf80c1903cf7464d201d0ece0f86a7aaca35462b730e9338fc\",\"dweb:/ipfs/QmSUkLZ88J7tSwdmR3viBJHU8QVgN2Gji6W8wYLJEDNkc2\"]},\"node_modules/@latticexyz/store/src/constants.sol\":{\"keccak256\":\"0x67e0d59237bd37424827ecde1ecdbe71f65376af517b0623cd8f8d5451bca7a6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://09c5ec7fe73e06140957d44a3d9938587711c783ccbf08ff017638c9279a3168\",\"dweb:/ipfs/QmfS9ZRqHXmBJ1h5B4x4gbU6d18DtMgKZSkxhQgNVRxueu\"]},\"node_modules/@latticexyz/store/src/rightMask.sol\":{\"keccak256\":\"0x28887aab8ad5ca598927e59d702999ca6e3b3128f1cddd2b995a381c8d04b275\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7710847f4689b7f5b81436c7d52ae4395f244a2eebf8d398b2edd43accb06754\",\"dweb:/ipfs/QmTD2wYqryXTynHAn5Vf9wtjUUSGeCJWENZTnWtBAK38pa\"]},\"node_modules/@latticexyz/store/src/storeHookTypes.sol\":{\"keccak256\":\"0x4f29001e53690ce74fe405a6d0376a564c9c743d1631d36fab04331865e4d572\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://138c80abd63225a3eeb01ebfa1f9288e188a7ee5b2266b275fb4ed31b5aa30e3\",\"dweb:/ipfs/QmdEx9uHgCCbTcetGwFH5a66Ft7ajmrMDXvP1fW7WjnnE2\"]},\"node_modules/@latticexyz/store/src/storeResourceTypes.sol\":{\"keccak256\":\"0x1c4cb6b3ecf76f614479ab304d7de3ade0e99c7ccfd07717b57c92f699a27261\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2c9b0e0c9b3b5610d6fd65a8ffd7c54df390a34ccc70d58f4a055c49ad1ea586\",\"dweb:/ipfs/QmP6ffpnR7aRyvq9AiUkVNH6LbGfFP3NDq7E2n2PVcHhp2\"]},\"node_modules/@latticexyz/store/src/tightcoder/DecodeSlice.sol\":{\"keccak256\":\"0x310523f7f3acca841e62fe50be8d8b042cad5b3c239cb1105d6623cf83e63152\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1cc40ca233acf6502bc65677b381c05331dd7323953e54b5df969051e47f851e\",\"dweb:/ipfs/QmTxy9mhodT8drezB5K1kPR78AMaARomoJqDyaWpLuCKui\"]},\"node_modules/@latticexyz/store/src/tightcoder/EncodeArray.sol\":{\"keccak256\":\"0x259ee545fd9dfd4767f0b7fef31f52fd3c54c4a1c6657d6fbda4927800c937b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0a4e31efa9f476cd267af7c3e11fe0151252206a1f6407a80a4092444c2de8ea\",\"dweb:/ipfs/QmRF4gWYw33mFTMh7nX8DJ1qzx3Ko6yMsnxubzYTRppdyo\"]},\"node_modules/@latticexyz/store/src/tightcoder/TightCoder.sol\":{\"keccak256\":\"0x0e74ff88ec94cb33f79d8afc1497c4fdccf02db40ab47f3701c7d02fc305d4d8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://36b7cd0c2a3f2dcdc83ab7ac5a93f123746ce29c0f1000f2b275ad2c647ff0f3\",\"dweb:/ipfs/QmYdipHYUhHhS78wLdtmKZUK14FEwpto5mFy3rNeZssMLz\"]},\"node_modules/@latticexyz/store/src/version.sol\":{\"keccak256\":\"0x78c571906ee999ee7e56d4f7702b8a93c3a9e55e6b552aca115b5f6ac7f1c80a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a9f141b2d556b2a2545e7db5606e8a038679a995a22aeaf1702cb3a60320b60a\",\"dweb:/ipfs/QmY7x258Fhj3TT3RT4sNyyfiRphVYdZXhtAnSYpasJ4xVQ\"]},\"node_modules/@latticexyz/world-modules/src/utils/AccessControlLib.sol\":{\"keccak256\":\"0x9fb1520ec94ce3396760a235db900192b4990c78fd459c449896a74c32b83542\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4025b37988ece6915b2c867702a4a381829755dd9e5b0b0b32ade85649b00b2a\",\"dweb:/ipfs/QmUsLyetPdhtSdN3MicE1uphXWscKBPSBif8Sd83RC1E6Z\"]},\"node_modules/@latticexyz/world-modules/src/utils/SystemSwitch.sol\":{\"keccak256\":\"0x5ac59bd7f2db0154a8b8f5eecc8eda69458c7ac488d5defd0c904d79025c79a7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://89adb066110da44661d12e487bc9adfa6c8396432516057b57ae72ba2ceda3e9\",\"dweb:/ipfs/Qmddoe1812LrdEWbaCzE876kL6AK4S7vUGkcMpzAxPyhvR\"]},\"node_modules/@latticexyz/world/src/AccessControl.sol\":{\"keccak256\":\"0xe9e1b1e588699a15ee81cc46f5959e14ff323787b576681abe7b0163d5988a4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f19076661965fcf60fbf5e58ee8a83daac63e174806af79f5fd4144929cab899\",\"dweb:/ipfs/QmVQxPrkHpSo1fbsqGvToXc6q9x8zrVrGaZjKTKY413QBm\"]},\"node_modules/@latticexyz/world/src/IERC165.sol\":{\"keccak256\":\"0xe3d9074a1be3247be67ff4dd2c9e41481650ddaa799285a249736bb85673e33d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0b6743ee1e6d0c74927bf17fc1da0cad7575aa7634871b94190ffbdb4c28c2a7\",\"dweb:/ipfs/Qma5bNsPJSBTesWxg3eAAMUBTDE7UjqWaHF7eMiGwP87jr\"]},\"node_modules/@latticexyz/world/src/IModule.sol\":{\"keccak256\":\"0xbb926cf64e685bbf2770d60124664cc84ab70bd3038e17a074f2d472c3fc2c57\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://143c3dcbdf1702dd4f9c869629609386c12f7c0247e88a6d062dc4d519ebe0d2\",\"dweb:/ipfs/QmQJSDd8uFL4sssw9fb9NHo4s6zjuDUgmrLHj3zsJuhMo1\"]},\"node_modules/@latticexyz/world/src/IModuleErrors.sol\":{\"keccak256\":\"0x60917e029779c81cfea1f5140c389269e51d7adb78987f39101b9e0d7bdad12d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://513f41920d67ca28c3e0fe247403c28a4d342785192df449c99d5f92db04fcea\",\"dweb:/ipfs/QmeAG2TtxAgcJQR4QxftuSvQrxisYQ1i1GZoyd7oeFQBDJ\"]},\"node_modules/@latticexyz/world/src/ISystemHook.sol\":{\"keccak256\":\"0x81f1743d7ca6a9c7efc4997cf95e603ccb2070885265ca0e540f461aa7430721\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://93d99e78b541b33ecd501bf0cd407a78cef490fec8eaef2f188bddb9e293a99f\",\"dweb:/ipfs/QmPrcMDxwhvBZTr2AxoGqJA9L3Mjx27KBc98h3gXSsa3PM\"]},\"node_modules/@latticexyz/world/src/IWorldContextConsumer.sol\":{\"keccak256\":\"0xb39e9d8cff4162e255f6c460ef9f9f0ad5b804627f745d967b2f10d0dd509299\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://18d957cd87febccc00d82b9454047f0f5236250c9245befc0f57978671675255\",\"dweb:/ipfs/QmdZ1eXBd15vLpLVqTNJDAAaTzzucpRLD8GPJahLKT4J7x\"]},\"node_modules/@latticexyz/world/src/IWorldErrors.sol\":{\"keccak256\":\"0x0abae6f4ed1b3070bddd0ed194c08b83a948b61ae959396202cf627bf1056a2b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a7037954f281cc0188a5aafc1d0cca0aabc110fd0234e6c43dca35ad69ed3baf\",\"dweb:/ipfs/Qmbv2nfK1qPpnoAbqNJFqWwo7AuyaX2ZEgZMFspMv7DR5B\"]},\"node_modules/@latticexyz/world/src/IWorldEvents.sol\":{\"keccak256\":\"0x39f6d8930db431c04158b85cc2a612c48d43dc81ec998f267076b12293c5d243\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d68f1543e5e166d639372d1aec57e3e193b5bb3b37270b6cb0488fab2c0ebe57\",\"dweb:/ipfs/QmdJUFDx87AHWFKP3jVrYg8xqAkiPfuT1M3tEotNt7KUoy\"]},\"node_modules/@latticexyz/world/src/IWorldKernel.sol\":{\"keccak256\":\"0xdaa1e92439036e392fe79892819ae165732f416b831f84d38050ca3d958e549b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ea8dc52e31a62e8971322ea9ed8f2e83d562ec199d7f93a392c293e96ff7f092\",\"dweb:/ipfs/QmSbM8MgHbrJLYP7uzemfZeC4xctqdyKDbspwHUsgeeVJC\"]},\"node_modules/@latticexyz/world/src/System.sol\":{\"keccak256\":\"0xadcb32bdc444a4420909b738d81fa662dc63739455fe93d5aa89c93a3ccfd2dd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d303094c84ebfb0f9f114c54ff4dfc68bfa1e526d0ebe304be6fbeb7cb2f0d3f\",\"dweb:/ipfs/QmYvUx1mNDhkxZFqxLeswW3w9HkvVqeoJiJKj1HN1SB7Gi\"]},\"node_modules/@latticexyz/world/src/SystemCall.sol\":{\"keccak256\":\"0x5012c0607c8d41a4eed69d8a0430f742844883d3c3f17a6717ac287608b4e6af\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c389f65d050849cc95a7df9f45145186a60ae892b7d02b26ec92f8a38f8e2ee5\",\"dweb:/ipfs/QmNQPBewaXghhVeJDaC1XUK6BbFrZ5qUjryhmJuyvgWdbF\"]},\"node_modules/@latticexyz/world/src/WorldContext.sol\":{\"keccak256\":\"0x50ca52bdd89a9f27d6b03ad00ef45c8c5a6884ea9d75e18f8fa53524ac2feed9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://55febdece37b291527094fb654919d4c8fe0b231792996a14c5e5cc76512b19e\",\"dweb:/ipfs/QmZHFbDDNmdFHWc1uTSvDgMUUgb8NgBPb1cDUJYajswbHT\"]},\"node_modules/@latticexyz/world/src/WorldResourceId.sol\":{\"keccak256\":\"0xaff9a22fac8a0f6eee5763b07a7ccb623c829d37922b85e42e914aad2ad417ee\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e598f0274d6d97c0a09806bf4fd1f0d054c310cf51b2123f5ce6380d6f3186ea\",\"dweb:/ipfs/QmaaVvqm21YsCgxozDyShcM17jKUXJhf2y26bk2YzPYZoM\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IAccessManagementSystem.sol\":{\"keccak256\":\"0x7e7321b86836bfbf4b96d0fb2a424ed678efcf01b15fa3d0b4ae4f0b975ad5dc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ead41554796bd0507e390f2997aa4a8df7bff8b51523b86fa3c5bd8acb1fec48\",\"dweb:/ipfs/QmVe1VUhfbRy8tviA7UcCtS8NjXhsF1E6Re9xLqWS5aRTK\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IBalanceTransferSystem.sol\":{\"keccak256\":\"0xe57042e82311847c56fa569377ed84459bf55afccdd3123312a5dff90c1d06f4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://baf3258c9118bf16ba68ebcfecdb5e5ffc85d5c0cdc2815ca298283dfcff2c83\",\"dweb:/ipfs/QmcBVyUBR3PVejz7249VrEBMCMKHi72KoUXQ8DFmMmY48F\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IBaseWorld.sol\":{\"keccak256\":\"0xf7acdfa0eb01c710d11fba129d613863fe86f1bed352f0bc5630bea81cceae17\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3e4107681cd20c018cd8f5dff6da72e8a4b02f631c7c59b618e8743482c7bc81\",\"dweb:/ipfs/QmXS8NLaKVXcf97HrD8U4hGHqb9ytYGwdZrTVHHb5EwrRj\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IBatchCallSystem.sol\":{\"keccak256\":\"0x600cc362780c319e640950ad3520af7fa558171268baab252ff4da4414aa0f1c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6d113a833b64bccbbe852f3d0261efd80ad4a0f6771802dc91af79c762a33ff2\",\"dweb:/ipfs/QmaXEdJJaMMQF8nZieWyXdVD15yuXnH89QLZHwD18LAndz\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IModuleInstallationSystem.sol\":{\"keccak256\":\"0x7070453d969eba7defd90047d58ae979e27e5c1fcf05598daa4d17fedbe84c35\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ee5c196c5e339ac0222cd1d14fd9d09451d255605f73732abc33397a9512503b\",\"dweb:/ipfs/QmYwNsWnxP24RzDqFYLnBYswZY97YE3nwG6Xf55f5FqNXa\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IRegistrationSystem.sol\":{\"keccak256\":\"0xe08d3af994098120b5507c71a1c3558763b8c1a88c6eae506aa438c2af78f800\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bb0c47b16ff524140388765fe9ef99211dd7d9b9374dae09144a9956138de00c\",\"dweb:/ipfs/Qma8ibVu6WZs1hFW3hMnUykV3pPXGZhZ3xJwJXNj6Xu7aL\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IWorldRegistrationSystem.sol\":{\"keccak256\":\"0x70bed82da026058ddccf52766823c7d55c7d29faad0ab1d76d763786d5277f7c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1da6476d62e450d3d935ea8292723612a84fa1d07342fbc052ee851181701a27\",\"dweb:/ipfs/Qmd1FQpmEVbQciLDPkHPXSKB7aYW1YB74BN5JXqn74erhR\"]},\"node_modules/@latticexyz/world/src/codegen/tables/Balances.sol\":{\"keccak256\":\"0x25248669a093cfdc9453491e5b5806f6aa092a805569799650c43c32f7b7877d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2f294f597122450abd267760d91682facd0a1040383caeb44aaadeb74770904a\",\"dweb:/ipfs/QmPXsoh8tUhpnhjdBYYTZCLc8MPHDZK6xUmN7F2DsMEXro\"]},\"node_modules/@latticexyz/world/src/codegen/tables/FunctionSelectors.sol\":{\"keccak256\":\"0x1ee313f4f1165034b92c5df1fe4cdd9be52b27780245388db3a0267c119fc926\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a3d58ca6a58e94bc30d5be0fc7a7d1325a92096c8b8b2b3a0531c2c5d0d60791\",\"dweb:/ipfs/QmZSisbANqwnFzwMJnnYBjemLW4Cqn3oL7MkV4HiQR7GKv\"]},\"node_modules/@latticexyz/world/src/codegen/tables/NamespaceOwner.sol\":{\"keccak256\":\"0x3a53f395fc56398b4095c1e4016ad5f87d06236fc00f1fb85b9cfe138575b614\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9d91d30c8506a2d07bcafe0f8feff002bbc7764060d7e7bef7f15b9c4a97c597\",\"dweb:/ipfs/QmVTAxSh1JSMpKD1jmJSTvXbDZQubdJW2DQDoePWecJskH\"]},\"node_modules/@latticexyz/world/src/codegen/tables/ResourceAccess.sol\":{\"keccak256\":\"0xb857dd63073a6469f5bb8deb6c0617763cd42c484821e247572c6b53bb1da3cc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://07c710d67440b98b145c1991623b7c8cc7f0805b4e6fa37a7d54afcece31239e\",\"dweb:/ipfs/Qmb368QqzbQGUttbDS7eVBGQ8KcXhiai2F9vy3Thyyk2vx\"]},\"node_modules/@latticexyz/world/src/codegen/tables/SystemHooks.sol\":{\"keccak256\":\"0xc27730dae8302cb86f5d65ddc9ae0e92afba17842285a6d0cd146a1e21d73c0f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4de5f820f1dfe36e53fe1fc77be6a52ac5fa72a7a5d5ec66e5d29ca6ce553674\",\"dweb:/ipfs/QmP5JUMHDCBxZkZ2YnoYQLqQFHeyCpoUVp14hJBWpSdiqV\"]},\"node_modules/@latticexyz/world/src/codegen/tables/SystemRegistry.sol\":{\"keccak256\":\"0xcb1e9fd5cd02cbb7125f2a64c02f89272d4b0f2afc0b43f24b727f023ef06493\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f4a923e67dea1c1c0a978cbb89d4e27f6e0205f49efe0556ac90b358bd2062ab\",\"dweb:/ipfs/QmZww8gDH9kyXsCaTYWzupNhL1QqR1emAbb5VifFWhDWYF\"]},\"node_modules/@latticexyz/world/src/codegen/tables/Systems.sol\":{\"keccak256\":\"0x1706fe4b5441a4e3982a3d32f7de2148627b8dfbbe3e38391dd4dab06b86478c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c0569fa73cd26c6476188646194ad58eb5cf78cb7c7dc7722748455c23c9d4d7\",\"dweb:/ipfs/Qma1RuR12bTXSVJJ8Q8Gw23KkBw7pyV9u5Kr8TGutaxYdz\"]},\"node_modules/@latticexyz/world/src/constants.sol\":{\"keccak256\":\"0xb8320f88ed5519a4fe2554ad94815ce328a50fef7719932375d6ce695265c2f5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a8f5de30fbcc63e469e46ad4a4d4bcd7d8e4b4f2d31fcf62a04aca48d999af22\",\"dweb:/ipfs/QmXw1jDQM2szfRY3tAGrRy6fEzte6yVFgebJAqCLMDHndV\"]},\"node_modules/@latticexyz/world/src/modules/init/types.sol\":{\"keccak256\":\"0x81b75eb286ec515bde6cbb16c3d089054abb530b744865bbace68343d23177bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://afc77bd51e24da666260bb48c44ff611869fb2e550921d732e5aac84a1f09525\",\"dweb:/ipfs/QmeU5N4yeRh5nEA65pvGtQQJNv1GvEPy4PkhMVRYRMoMvh\"]},\"node_modules/@latticexyz/world/src/revertWithBytes.sol\":{\"keccak256\":\"0xa1147f218a0152b153d4e8bada0f606bfed40ac1f184fd16a941c2d0033c53f5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3f5e0f6d1b51a3a04d4bd84537b2ced373b32824898cf6fbfd13ae1cbdf06359\",\"dweb:/ipfs/QmayYRmBZRUV9m4UnFxuC62VvHriXhkYXeH3HibZ3Gmxxf\"]},\"node_modules/@latticexyz/world/src/systemHookTypes.sol\":{\"keccak256\":\"0x15c25ae4b21e091209970e45a198cb51f31eeae482828862641099c1a9b2448a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0ce3c3eb58dc5c262d36babf372ad028d2846beea73a59d6e70f0eb8c90ee00d\",\"dweb:/ipfs/QmWUkgegTRtSJM3awvjg4J7DWZ2ME7Pnxp1dP2TWWzLNoo\"]},\"node_modules/@latticexyz/world/src/worldResourceTypes.sol\":{\"keccak256\":\"0xeb042e7d3638430f6fd394107f3237cf14e4325154f0098624e8a7826584d465\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://39e0b8eb87616b661f5a4f2fd7e1a727bd19b7fd8d40ad3d93fda26822f433ea\",\"dweb:/ipfs/QmacYMatKV9pwEwirVRY9a6r89RoNs5yk99ic37ieWA8Dk\"]},\"node_modules/forge-std/src/console2.sol\":{\"keccak256\":\"0x954646445d1014c3cd85c7918f5e7adeeca5ee44b68c00bafa237e597a4e35ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://516fa3be52da4763147175bfba4be0aa011fadbb0c1afb01f97265bd4cee7973\",\"dweb:/ipfs/QmdixAyMJefx7qePChgdxcBH5MxhmN7vsqPuPLx3CgrVmF\"]},\"src/codegen/common.sol\":{\"keccak256\":\"0x2d0a0176c583fcd95e430978a48ca29a38536c01b57b6effd08697d2d2bf5f42\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d1ea5054e1e53b703345992c9ef61e372f6da66247fcb4e89c279055f9085\",\"dweb:/ipfs/QmXCygeJuEesDRSAamMfJZU9Qz5UCz3dmkBj7SGfEvEEY7\"]},\"src/codegen/index.sol\":{\"keccak256\":\"0xc993a3f15c56e4b3e83c33b41a17dcff501b025e1e338645b62203cf26d2011f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d5229574e32c8131647fe4826eeee2f9305074496a5546e70dc6da9fcf1aea4c\",\"dweb:/ipfs/QmadU9mmUdvJMmwkJJwh83XyebzGG3BvqDvAASQ2T4Chjh\"]},\"src/codegen/tables/ActionOutcome.sol\":{\"keccak256\":\"0x3191cc4da6f6a0146b54ac4b6022f402981cda101a577c4b8f49d3dc4c9ca956\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc6ace9a0b33a4a1df297c712c0b37171c8e3946e0fd2bf0ea0483ab4d28147a\",\"dweb:/ipfs/QmPaVdRSLQt1xmbRbqeKWitcRXeTXGA3yuxJgPbgdh1WQ4\"]},\"src/codegen/tables/Actions.sol\":{\"keccak256\":\"0x63cd48bebaa0414728e9be2c856e4eb01efaead6627a6615da4c77b886805cef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1dfe138555b67362f41c26ce1ab074bfc1fcc4e7c6fd0284b82cc699d80d392\",\"dweb:/ipfs/QmNf8UGE3FZ4U96HkeioE4peWWz1SKPAjhKRrGnpEnCdkQ\"]},\"src/codegen/tables/Admin.sol\":{\"keccak256\":\"0x0daf45149c3403e88b492878aa7622c604687314a844023f4f2ebdb53213b17b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://074403d43b76610a90629582f3d7680f713719e0b0a5ac8563838f694d717d39\",\"dweb:/ipfs/QmVy5jEg33ZNWPTSEEYXYUafsghAdnDivCBGmdUKd7BDMb\"]},\"src/codegen/tables/CharacterEquipment.sol\":{\"keccak256\":\"0x5a911b5c2218dabb75a117ce2e8946ceccfe009edd2425a1d012d23727372d32\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d45dc0a37bb1814f9ebaf5264042b729268be557e9f9b58de928206d86e8ede2\",\"dweb:/ipfs/QmTWSB6XUZXtjQAYLRMkRxPeXNLKa8nADAVguFBKoMADHB\"]},\"src/codegen/tables/Characters.sol\":{\"keccak256\":\"0x907f9803924ab0065992e81ccf9c64f228876401e5a728c27d967448bfb35e98\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://809b9cc95a1c37663b48fe4307ba31fc1b0d794913258f5dc2f2f848b0448893\",\"dweb:/ipfs/QmbyQ5DkdeL5CZppx9vs87E2eRzm6CkYfPAYikGGdbcHxH\"]},\"src/codegen/tables/CombatEncounter.sol\":{\"keccak256\":\"0x27431d9ff6ee373083856c0b7ffc9ac15f1bb93535620e726c621a8b626f4696\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://50c1bf4f51c81d6299e05fbc65b0deb6104a0706ebeb1e618f5c3bd8e556a405\",\"dweb:/ipfs/QmZcgbtpq9RxfQNEDEM6iQ7eHR5ya9wY4AJkWnnxaEjMBq\"]},\"src/codegen/tables/CombatOutcome.sol\":{\"keccak256\":\"0xeb791c773448819c7377ce52c0226a936dec6d65450a832a91fc947b5922f0fd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6594f35264d88ef26048ed33de7ee17d9553b0eca23b1ae439fb1f72f6d19078\",\"dweb:/ipfs/QmVr6mm3WmXdz9JLbDgdsK3LS6ypW4DaJrMGpxEQaBWVUZ\"]},\"src/codegen/tables/Counters.sol\":{\"keccak256\":\"0x2f840caffed593a80b84a16f186701e0b55eff03cc6fa6c210a6dd9cdf25237d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7b6a76de959876e594bf5426dfe3ef9112b84d65e252a117031cfced3bce25a8\",\"dweb:/ipfs/QmTosFfy3ME9N71CjHmTRLUWGJWa8sK81jdNcB3YaFa9oG\"]},\"src/codegen/tables/EntitiesAtPosition.sol\":{\"keccak256\":\"0xd0b649485e3837ea8014c2eceb7efa5b5002ad49bb57e87503622d91e0da7501\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1c9559099385b1b1c23eb35d8bf72d50da0e813e5d29c90acccfab4a9ba7fe4\",\"dweb:/ipfs/QmX2JCEkcUkTJq1svXUsGs2ucMuSqvSi16z88N4MnZoKRB\"]},\"src/codegen/tables/Items.sol\":{\"keccak256\":\"0x369731e289e046f20bff48ebb31202c95024ca34bf8fc1d685426878e66dc31f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://59ec4b81dc56d99ab8ee12323ce7a2157558eb51e5c7094b8b54335c7bdfe50f\",\"dweb:/ipfs/QmbmYzo3LFHUNSNpZT4ZFZ7FFMAwk7DzyA27R8qqLc7mcj\"]},\"src/codegen/tables/Levels.sol\":{\"keccak256\":\"0x535e0e176169629b241caa38851bb5fe8862f822301552e8163bb405c9fc2327\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b22ef6fbbcdff6d59ccb2e1f3b48cd416ee58d64252aa1865f92ca53792ce7c4\",\"dweb:/ipfs/QmQ7yKMUUcHcVH4RFZTDx9jSnr3rwyiTa7zeVLPK6qUQtp\"]},\"src/codegen/tables/MapConfig.sol\":{\"keccak256\":\"0xf7ba7c8303a8146a874960b3f77484d5ae0d9e3478a698ac08ac08f24d05ff27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5d3905e07aaa32e028977c866e03cc0f1a92bd14945e30432f07fc3ebf8d8fc3\",\"dweb:/ipfs/Qmf3UJity3jA727Y8ge5swykZa6YrbQPxaqCygroD6U2ch\"]},\"src/codegen/tables/MatchEntity.sol\":{\"keccak256\":\"0xaabe20cc4e4d6c5a55658f59ed5094f37ef0a4a795d41db3a147926d4f7bbe7e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0c1690adf4c6629b794f8861239dd572a03cfb9c8688b51a4b52a54006efa6b5\",\"dweb:/ipfs/QmUDGdfRxruvzrcqn1qcEqZKfyJYzXLqtarV59EwNdHmp7\"]},\"src/codegen/tables/Mobs.sol\":{\"keccak256\":\"0x0d6040fb2c459f26ffe1f563af1b547c9844cc3b53ba3d8d21f8051cfccbf6f3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e7e422a289617179f3ecbdd519468996f36841526a30ab7245348ea78275d060\",\"dweb:/ipfs/QmZYLGnLb7witVgCqz3ppfwa8EejMNdAHhdGfBxe3NDVU9\"]},\"src/codegen/tables/MobsByLevel.sol\":{\"keccak256\":\"0xf84e0714feee0964737b282a981dfe06d408e5006fe5e31f17ebe02d12be550d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58eae71b254ef9d2d50ae3c46b0b03f1a7554b72e1a1743e9a4ef3b73df0f8c5\",\"dweb:/ipfs/QmcY1RuKgtCFrjPfgsfyrmuVW6k94MatmMa4MGT5eNeYj7\"]},\"src/codegen/tables/Name.sol\":{\"keccak256\":\"0x5b244643b0cc0f74c380fcd34e6cbe59cf0fabf15362bbaf04db527443f5df99\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cce9aed9aa8dc6a071b9c8f958ae9f73e50f17ca24dc3c2cc2a58752efc7d1a4\",\"dweb:/ipfs/QmaYLEjYKUnULFRcm35PUk4PQeWMpNEgg3N1JT6f6crf81\"]},\"src/codegen/tables/NameExists.sol\":{\"keccak256\":\"0xa8a8560b33be580fadbe6d92d8ee51225ea232788afd74252a12d1f724f7f9ab\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1bdc023458c300d9fd442c684d91bb3c48f8acc40ef629f7e6956af452bdcfdf\",\"dweb:/ipfs/Qme9weCKgFBzqvRosTTCGyZoRNyU9mz2jkECiZPUMbFpQC\"]},\"src/codegen/tables/Position.sol\":{\"keccak256\":\"0xf71ad66166f5f5ac451aef4b46e44c39958dd6096eaf1f34900e69137633224d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://52d3c128933601b8f02227b96225f0951234f7aec9ff9a9c8684f8cd101f8baa\",\"dweb:/ipfs/QmWNgxUAUYvogthUFSp6pHfWasWRves9727GMaipfdhzs7\"]},\"src/codegen/tables/RandomNumbers.sol\":{\"keccak256\":\"0x36271b8a638ab379293882f001c77c5b2c911c707c3cfaf8c63327a047e4fa22\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b764ae3b7573d191b544f66e01095e23c09c033a766c8d4f9fd635c780382df5\",\"dweb:/ipfs/QmZEDexSqLHBX84DDpYVpjvcxzYL1d4qtkupowY13ixQeA\"]},\"src/codegen/tables/Spawned.sol\":{\"keccak256\":\"0x2d1705df77428d3bf34209aa624ce6812b49ff5701f3ded65beace10c902450c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://72c2f8c81b79fd4cc392b8bd7de5479a649a426b66b0073c231acb3e3d80d905\",\"dweb:/ipfs/QmbA6xN5zS6MQ5D1gqSaucayoKjSKjSiprK1oXWmQSWUMw\"]},\"src/codegen/tables/StarterItems.sol\":{\"keccak256\":\"0x5ee8da401ed86fbcfe390b5dbd301e2553c278970b13e942a91b37eb930d8de3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ea2e69871f31015e9080b07a0c8fa8fa01519c0827e3dcd1409a5192994205e3\",\"dweb:/ipfs/QmV2raKphNUK5X6hds4e3c5AAk2XUP1vBNBMtsSz4VKGso\"]},\"src/codegen/tables/Stats.sol\":{\"keccak256\":\"0x4dbbe2a11e729ce5ed6569600e0e7237f5fa5e2476f6c049581e2b18830c93b2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d056287fefd267378a9a3f20ed25e28db2fa34604729f047e22c2ab016ac2c6a\",\"dweb:/ipfs/QmSunLJDjxsUMJaudJefjgeHHurT4KKsgrhNBSsEaU5jgm\"]},\"src/codegen/tables/UltimateDominionConfig.sol\":{\"keccak256\":\"0x6f439f3fef2c4db3b295718bb3e277f59500a3183f2306fe70890a30c3eeff26\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bde32ff627c137c1b52e6f45ff82df52eee9e6fe8fa668fc791132dba187f256\",\"dweb:/ipfs/Qmcj4S8ysUA1Lv8xbA5i1dzn4wwKPQrCEjpUd1MW6rh21w\"]},\"src/codegen/world/IActionSystem.sol\":{\"keccak256\":\"0x70c9205cb55d501725621d75489338dcfedcf93379cff8c4035d29efc9059d4a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8bc9da212ce3226d2a0f357d6f83ee3976659aa8008eef7c50a1cfe74a29dde2\",\"dweb:/ipfs/QmaSJLZSfG9mqmZ5j5GGMxK7TV1FTLK3AjZXSnAFzaKRCF\"]},\"src/codegen/world/IAdminSystem.sol\":{\"keccak256\":\"0xc7af156c71acd0d6cdab577dd76c0a4a7c56115d7bd22069ad8ad183d1a230e6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b167cfcac5a58cef4d3f018bbca81afcf7cc7a8d4f75537f4516f508a67f435b\",\"dweb:/ipfs/QmQEcFt4N5qBRRaCYDzAx9UwDuqPycSXBqQLGyZdVHFNzQ\"]},\"src/codegen/world/ICharacterSystem.sol\":{\"keccak256\":\"0x49ef649aa37c2f64fa032400e803aa2d6b6d94d8de47f024cf63479c217a1373\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c84ead4b32146eb7088cb0f3fa45f31de057cb252693efd92982698dc87a4f78\",\"dweb:/ipfs/QmVMhUEXVmVMZJVJLoP6vh9pB6RYq9YmrRC4jdJWujcqnd\"]},\"src/codegen/world/ICombatSystem.sol\":{\"keccak256\":\"0xece65bdfbb9f41aa91c926f2625a5afb62162c19a2be83749b02c04755b7143e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://de01bf77ca9c93a694d87dbb64370d5bd5770da42e461a40e55d640675fe777f\",\"dweb:/ipfs/QmbANbeftTp3YQizGFoYtXwozQHL4ouyoVEu5W1Z14wsQh\"]},\"src/codegen/world/IEquipmentSystem.sol\":{\"keccak256\":\"0x22fd0489fa8b774694038a2af88ed573bad4a917dbf6bece44c428ebd5a0f1d3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://67cf7c8fefa5271e81b97a149422c8cf81aa391c55b8e47f919b8fe8d78720fa\",\"dweb:/ipfs/QmdPPC8HTjB6zkdXs8siSTT4k6YFDvUxL8sDYyt9HGeStW\"]},\"src/codegen/world/IItemsSystem.sol\":{\"keccak256\":\"0xa53c467470bcd3a670b1d8f04a8e8b610bfe46634821110356b3ebd84810f76b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6637222d8c7b4c16c6586b6ea4bf726b80e559be14d831863d574ececa149f1b\",\"dweb:/ipfs/QmSG7tH5qZCuXVn44DxYjeHZUh3FM7JXqzmkoP5nMhDwQH\"]},\"src/codegen/world/ILootManagerSystem.sol\":{\"keccak256\":\"0xf40b0f25e8d4ba6552f4b1a3f2b86c17e2e7c1be7317bfbc15f7e24100bfa14d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0f0bd4c7e76b1d3397f85a76382218f4922681c046c5e62dcf606f3ea8884bc0\",\"dweb:/ipfs/QmcaSbhHrGAn9TPsroSHAEijriQmKWvA16ffSJuTw3AzN2\"]},\"src/codegen/world/IMapSystem.sol\":{\"keccak256\":\"0x1e306d0814b36dc00a65b4d4f4dcb2812b254aadc7e79d5adfe6a8fe9c697c80\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://018d71336b01c22f432ffcba50375fb124aa33bf7f0f96dc4b02eacd8064507e\",\"dweb:/ipfs/QmYJubK3du3ZCG87uNsTQBVDj6A646BXqifnRSJTHB6v72\"]},\"src/codegen/world/IMobSystem.sol\":{\"keccak256\":\"0x7ffc480cffe4c490a65836578d8468ba420cec99f919b67ce0fec75cc1579391\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c0171e839a340c252b00a44e08349dc4982317f82cc393a391f4e32b1b811d9c\",\"dweb:/ipfs/QmZTNzfeZEkT4PrrwvrPz3JFcpR2qBQ6YbXxUpmTEpyDgS\"]},\"src/codegen/world/IUltimateDominionConfigSystem.sol\":{\"keccak256\":\"0x7afcbb11522c4bb8fa8e86e1ca2f965eb5ba3cb7342a1229120210724ff3e828\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ae704bc31684551e05b29f55eddc7bd7fcd69e6bd4a54fa774d7d9a327a769b9\",\"dweb:/ipfs/QmZvXXubvwTdDLifLoYhmQbr1M1GKzpputcMo38Au5uvJb\"]},\"src/codegen/world/IWorld.sol\":{\"keccak256\":\"0x8f0c0461ad016b4d4f502d10fe5fa2a650836a4a76c883b2e55e714158194859\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2254a9f2f35ede55ef418440874945422b5e5f526724deb0bd397cabdf512f6c\",\"dweb:/ipfs/QmZrfF7SgNu2S9rgdNbKFpNsFZMJLTp9GyZpqwvVwQCNr9\"]},\"src/interfaces/IRngSystem.sol\":{\"keccak256\":\"0x87595683df74e1357f3562deffadb410ac94c98cbc765d4b7327ae3d39032ec0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c05e5ed25cff2606f26b2e370801257bfcd6c1fe10b23d21c68b3a6d55fcbb02\",\"dweb:/ipfs/QmV6Ddyj4A86bbsjGfi4J61wcJH6vR9C4RfXmhiQiJuZQn\"]},\"src/interfaces/Structs.sol\":{\"keccak256\":\"0x6259111a19c9e329bd16a154bca9afa89339ce179d278647e34bcdff1868d0de\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c67088e2ecdb887174b16cdaf87299ad3b3871d7ce1f8c4c51e8def5e6cc8fb5\",\"dweb:/ipfs/QmR2SXkYEkSqaacU6rWGsLdZiefy5kcsVqhvzg4Kob2fk1\"]},\"src/libraries/LibChunks.sol\":{\"keccak256\":\"0xb4314b9df31cb353ad6d4b434569294aa159fb23abea1260e638a6297781f767\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://decf1fd82655251b50dd10f1da26f53647d4a2a454a36cd6a735d05de3f8e8f9\",\"dweb:/ipfs/QmXZdcHrHY2tPfUVaxyoMqDxitkzH9o6UXYncihgJzqHwv\"]},\"src/libraries/Math.sol\":{\"keccak256\":\"0x7aba32d8d0d2b81758afb4f211afccbf3e85ce62defad5ac1fd8fd26c8fd5ab5\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://fb636fcaf2f6f692bf32cadc2f8089a28367676d7b6f3423a5d0593a23e8200a\",\"dweb:/ipfs/QmNQnrjDfwhM4jMzC9tFxHszohkZPGeFhiEendg7qi2crW\"]},\"src/systems/CombatSystem.sol\":{\"keccak256\":\"0xc16df9bf16d0a1916a559835ad26e86cc2687fbdbc1bb070b0bcfd824a022a2b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://034d0b4a2c8b002847d034514d63bfcd919d9c2d9117c083aa3b1f060772d248\",\"dweb:/ipfs/QmNzXVVqDcj65UG21jrPTaiYq1XFUu3RMoRGYGu4YciNDs\"]},\"src/utils.sol\":{\"keccak256\":\"0xf50d451bb280fb33e08f521e168952f5145e69eee7df284ffeb1865b8b5187cc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a78e6326639bdf19f606921e48c90663f387cbfd7d8160a461838e9ca6a0fc57\",\"dweb:/ipfs/QmPT6PNCCQKWVP9bwYC4JyfuXJSgbupsgq6MT898gYfa1q\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.24+commit.e11b9ed9"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint256","name":"start","type":"uint256"},{"internalType":"uint256","name":"end","type":"uint256"}],"type":"error","name":"Slice_OutOfBounds"},{"inputs":[{"internalType":"string","name":"resource","type":"string"},{"internalType":"address","name":"caller","type":"address"}],"type":"error","name":"World_AccessDenied"},{"inputs":[{"internalType":"bytes4","name":"functionSelector","type":"bytes4"}],"type":"error","name":"World_FunctionSelectorNotFound"},{"inputs":[{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"World_ResourceNotFound"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]","indexed":false},{"internalType":"bytes","name":"staticData","type":"bytes","indexed":false},{"internalType":"EncodedLengths","name":"encodedLengths","type":"bytes32","indexed":false},{"internalType":"bytes","name":"dynamicData","type":"bytes","indexed":false}],"type":"event","name":"Store_SetRecord","anonymous":false},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]","indexed":false},{"internalType":"uint48","name":"start","type":"uint48","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Store_SpliceStaticData","anonymous":false},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"_calculateMagicAttack"},{"inputs":[],"stateMutability":"view","type":"function","name":"_msgSender","outputs":[{"internalType":"address","name":"sender","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"_msgValue","outputs":[{"internalType":"uint256","name":"value","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"_world","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"enum EncounterType","name":"encounterType","type":"uint8"},{"internalType":"bytes32[]","name":"attackers","type":"bytes32[]"},{"internalType":"bytes32[]","name":"defenders","type":"bytes32[]"}],"stateMutability":"nonpayable","type":"function","name":"createMatch","outputs":[{"internalType":"bytes32","name":"encounterId","type":"bytes32"}]},{"inputs":[{"internalType":"bytes32","name":"encounterId","type":"bytes32"},{"internalType":"bytes32","name":"playerId","type":"bytes32"},{"internalType":"struct Action[]","name":"actions","type":"tuple[]","components":[{"internalType":"bytes32","name":"attackerEntityId","type":"bytes32"},{"internalType":"bytes32","name":"defenderEntityId","type":"bytes32"},{"internalType":"bytes32","name":"actionId","type":"bytes32"},{"internalType":"uint256","name":"weaponId","type":"uint256"}]}],"stateMutability":"payable","type":"function","name":"endTurn"},{"inputs":[{"internalType":"uint256","name":"randomNumber","type":"uint256"},{"internalType":"bytes32","name":"encounterId","type":"bytes32"},{"internalType":"struct Action[]","name":"actions","type":"tuple[]","components":[{"internalType":"bytes32","name":"attackerEntityId","type":"bytes32"},{"internalType":"bytes32","name":"defenderEntityId","type":"bytes32"},{"internalType":"bytes32","name":"actionId","type":"bytes32"},{"internalType":"uint256","name":"weaponId","type":"uint256"}]}],"stateMutability":"nonpayable","type":"function","name":"executeCombat"},{"inputs":[{"internalType":"bytes32","name":"encounterId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getEncounter","outputs":[{"internalType":"struct CombatEncounterData","name":"_encounterData","type":"tuple","components":[{"internalType":"enum EncounterType","name":"encounterType","type":"uint8"},{"internalType":"uint256","name":"start","type":"uint256"},{"internalType":"uint256","name":"end","type":"uint256"},{"internalType":"uint256","name":"currentTurn","type":"uint256"},{"internalType":"uint256","name":"maxTurns","type":"uint256"},{"internalType":"bytes32[]","name":"defenders","type":"bytes32[]"},{"internalType":"bytes32[]","name":"attackers","type":"bytes32[]"}]}]},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bytes32[]","name":"participants","type":"bytes32[]"}],"stateMutability":"view","type":"function","name":"isParticipant","outputs":[{"internalType":"bool","name":"_isParticipant","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"playerId","type":"bytes32"},{"internalType":"bytes32","name":"encounterId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"isParticipant","outputs":[{"internalType":"bool","name":"_isParticipant","type":"bool"}]},{"inputs":[{"internalType":"bytes32[]","name":"attackers","type":"bytes32[]"},{"internalType":"bytes32[]","name":"defenders","type":"bytes32[]"},{"internalType":"uint16","name":"x","type":"uint16"},{"internalType":"uint16","name":"y","type":"uint16"}],"stateMutability":"view","type":"function","name":"isValidPvE","outputs":[{"internalType":"bool","name":"_isValidPvE","type":"bool"}]},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"pure","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]}],"devdoc":{"kind":"dev","methods":{"_msgSender()":{"returns":{"sender":"The `msg.sender` in the call to the World contract before the World routed the call to the WorldContextConsumer contract."}},"_msgValue()":{"returns":{"value":"The `msg.value` in the call to the World contract before the World routed the call to the WorldContextConsumer contract."}},"_world()":{"returns":{"_0":"The address of the World contract that routed the call to this WorldContextConsumer."}},"endTurn(bytes32,bytes32,(bytes32,bytes32,bytes32,uint256)[])":{"params":{"actions":": for a pve encounter player actions are calculated first and the mobs.","encounterId":"the bytes32 id of the encounter"}},"supportsInterface(bytes4)":{"params":{"interfaceId":"The ID of the interface in question."},"returns":{"_0":"True if the interface is supported, false otherwise."}}},"version":1},"userdoc":{"kind":"user","methods":{"_msgSender()":{"notice":"Extract the `msg.sender` from the context appended to the calldata."},"_msgValue()":{"notice":"Extract the `msg.value` from the context appended to the calldata."},"_world()":{"notice":"Get the address of the World contract that routed the call to this WorldContextConsumer."},"supportsInterface(bytes4)":{"notice":"Checks if an interface is supported by the contract. using ERC-165 supportsInterface (see https://eips.ethereum.org/EIPS/eip-165)"}},"version":1}},"settings":{"remappings":["@codegen/=src/codegen/","@erc1155/=lib/ERC1155-puppet/","@interfaces/=src/interfaces/","@latticexyz/=node_modules/@latticexyz/","@libraries/=src/libraries/","@openzeppelin-upgradeable/=node_modules/@openzeppelin/contracts-upgradeable/","@openzeppelin/=node_modules/@openzeppelin/contracts/","@pythnetwork/=node_modules/@pythnetwork/entropy-sdk-solidity/","@systems/=src/systems/","@tables/=src/codegen/tables/","@test/=test/","@world/=src/codegen/world/","ERC1155-puppet/=lib/ERC1155-puppet/","ds-test/=node_modules/ds-test/src/","forge-std/=node_modules/forge-std/src/"],"optimizer":{"enabled":true,"runs":3000},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"src/systems/CombatSystem.sol":"CombatSystem"},"evmVersion":"paris","libraries":{}},"sources":{"constants.sol":{"keccak256":"0xea645b3f1e153c1d76fe3ed1c15a22129928d78711f9eb6476ddc123460f25ed","urls":["bzz-raw://0e57cd5c8ca30c40156f7379c556ea7ca3394da3da286056cf9554e7c1567b14","dweb:/ipfs/QmSdQyCEp65JnngKxz4d6QRzdDcMqB3g2Aw5J9vuEMgEW1"],"license":"MIT"},"node_modules/@latticexyz/schema-type/src/solidity/SchemaType.sol":{"keccak256":"0x650927696f7518fa216f2d6001835e9fdb419518034c781e86d2a2d33f4ecd2a","urls":["bzz-raw://72e91ac32ed00d36bd22fefeaf4ce1e9420143ddab7080eeb720c668a117bf44","dweb:/ipfs/QmdVqn18WZvx5p84MDJPsB5tfVoXDR86wzm4sLx6WrGYYL"],"license":"MIT"},"node_modules/@latticexyz/store/src/Bytes.sol":{"keccak256":"0x7dec900f9c9e7dff59430fa6f520e76c56338c3e829201aea140d49342e4fef8","urls":["bzz-raw://e55c1dfcda94dcc64b8577949b2e92a9d3fc44f5fba1ae77ceacccfdc8e22e35","dweb:/ipfs/QmS7uRJbEQYkPuZ5Dz5aSNjaaxj9PA8RtxUeUGN2W3jZx6"],"license":"MIT"},"node_modules/@latticexyz/store/src/EncodedLengths.sol":{"keccak256":"0xebc0a6efd611e02b15c05a382382b597fe059eba7f2a9e90da81eeb2f7666774","urls":["bzz-raw://00b2cac12599935e25ea0697e99fc9e6d5af6c1c982761996c16707d9cd6ca09","dweb:/ipfs/QmXccFminkrFtDpNfx6X1pHvW7Tn1nA5XcGu9T17pJyZyK"],"license":"MIT"},"node_modules/@latticexyz/store/src/FieldLayout.sol":{"keccak256":"0x15f698b7eabc062a00ff7a2e02db0ace2dd51f8bd2bc51a45dc0afa88f2ee658","urls":["bzz-raw://f774202c98ad394b3b62be93292512c633dec63bc931c190ed984656c2d54ec7","dweb:/ipfs/Qmd2D9mvP8S88ad2Q8WU54saNVr3Pwc5stPqEKHwcpo8AT"],"license":"MIT"},"node_modules/@latticexyz/store/src/Hook.sol":{"keccak256":"0xd016a2e1260f5a81ff9a8dfac58d7947e114414df8cce7302a2629908ea5f18e","urls":["bzz-raw://0c558a6f3a5f540c0190fa6d642a094a185c5db1acfc2437c7dbde0340f00ac3","dweb:/ipfs/QmViAHvR7U7HNfBiBZEMFiy1TTSHDFNiDzBfQSeLBShCky"],"license":"MIT"},"node_modules/@latticexyz/store/src/IERC165.sol":{"keccak256":"0x0efbf9afc716c585621482221f75e5bd60bcf0e813c9f7800d7c0309dcc3c927","urls":["bzz-raw://31b6aeb5446a0a0d5bd71be15a68c5bde94b08c961369203b83c8abe36f401d2","dweb:/ipfs/QmXhComne4es9ZMKaGNqHCdJZrFoFssxMYgLaqvCXPL1Mg"],"license":"MIT"},"node_modules/@latticexyz/store/src/IEncodedLengthsErrors.sol":{"keccak256":"0x06bb49164f44acc8d51df7b75ecf2f7aeb9281f7a3b357cae7d8d58bd1700dfa","urls":["bzz-raw://719027f4cc60fea30ce01cd4f672462f41fac750ae802e91a1a6d37c929e11ba","dweb:/ipfs/QmWi5DM2jT5V5SGP1afRmFyRgFvuZiGDX2PWHwP19HssF1"],"license":"MIT"},"node_modules/@latticexyz/store/src/IFieldLayoutErrors.sol":{"keccak256":"0xaef70c46e412bded1024ac82c957cea81c1d1ab11878a95635531e2ac9673a53","urls":["bzz-raw://cda2c7dc02ee8f0163b1c8d0f3e1e05d48b2a009e5c7365d2418f17bc3455817","dweb:/ipfs/QmXHDZuCPTxjHaeiEaJhA81koX2NJ3Gj1zt5WVWaz77FL8"],"license":"MIT"},"node_modules/@latticexyz/store/src/ISchemaErrors.sol":{"keccak256":"0x0ac3de36c9d0058a17fcd7f1a905132215fd16ea3ed3b5109de1de04ddd7c441","urls":["bzz-raw://f83fa2546009cfd16b3b3969dcec1d67c9d818d910177b885ba263b6a948c65d","dweb:/ipfs/QmehywHdvFYBL9BTtoPsVVwJXsEA4Xjk8aPWoHw1R45KeY"],"license":"MIT"},"node_modules/@latticexyz/store/src/ISliceErrors.sol":{"keccak256":"0x72684b7dfc1b44537401ccf10d6120186d02323266fcc762bc81859985eded4c","urls":["bzz-raw://e8d037b6937969ae54018ddf647eeaf5eb69a2b0bf9edf9456d3d270316b2883","dweb:/ipfs/QmfYJeyAmzRqpn68FteiM97p5t17iBw62FCET4bK5g4w37"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStore.sol":{"keccak256":"0x42515d1410333a3573f78a460576271ef62c16edad5cf771ef6287b83ca1c706","urls":["bzz-raw://6a58d03c4cf420df57d2b2e2e7932daad877e46e89561b46e1fa9f593a701bdc","dweb:/ipfs/QmeFmKS7J1WqqBAgXkyxxx2fGA8JzuGszUmVsV2T6DYtsL"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreErrors.sol":{"keccak256":"0x37e4d2f015dd4005ff9b3f711257c891027804bc268db1791984af4989951912","urls":["bzz-raw://a4a566ea96b69211f503707f69a9f9012d5873a3fd57b3f221549f46a7518df6","dweb:/ipfs/QmVgcE3JufJr3iyeV6xqkvS4YtDcy6Eqyram2yzWUhwoB4"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreEvents.sol":{"keccak256":"0x8606e9de37943c74beabb9ac9acd2132f951bed1ef79f2f4f3de83ed1f271f6a","urls":["bzz-raw://d13adeee7ae9e687bf1cd12a8c36223179685fc828a7c468ee9311c879401b08","dweb:/ipfs/QmQeb2ArSoQpE6ujBbDj9LY3xqpVCPiz3bh9SLT6siE8RY"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreHook.sol":{"keccak256":"0x6574a30a2bbd8a0de21b2504c55effb8802fdeff62296af82a9380bd753adcc4","urls":["bzz-raw://85a859c533f51b584a9a2e8a64d61b6cf6f69bfcff1b926ad787518b1cae9562","dweb:/ipfs/QmVyjmyJ69ZeqaXHg91JtGLVahRfZ7KtWaessLWZ6rYk9p"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreKernel.sol":{"keccak256":"0x37a23dcbabc5937a717f2fda636b6a97963ed4b5a96870a62dfb199a8b692f89","urls":["bzz-raw://ac9741ea6daf21f39699be11afd919ae3ec07df24d948aaaa6549456fefd7fc0","dweb:/ipfs/QmeiPQkZitM4Pc3i6L87thU71Fs1JVWAgMqXnSK8VrCq75"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreRead.sol":{"keccak256":"0xdcf28b3293d4d6c1fe2808a8918c1b2122e4e0e49f2793c79ebd2b9ae210ff7b","urls":["bzz-raw://bb3d9cc80f549ed0c5b768aea69fb1b3c364bd4f85d193a3040c411b594d94db","dweb:/ipfs/QmYYdY5CjPHiW5ucXihTva1eHsCPNqBsvL6zYYafH3ap4p"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreRegistration.sol":{"keccak256":"0x9e91a73f93cc9ebc00c265c83177f6a3f8a156749a9261202e2845e12aeaa96b","urls":["bzz-raw://a39280d87d22dd0a959d8f55925cb092dba1fee2f11d3dd8e3ffabed45a9ab6a","dweb:/ipfs/QmRMBFLJtT2KN43Xz9P3vUNWxXrP8rLTNBFw2P6Z7EGeaS"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreWrite.sol":{"keccak256":"0x120fd448da5806e09ecb5327ad4dba64df01d2ee7232de0979133627e87e24ba","urls":["bzz-raw://7a3cb151b2ddee217f330d61813b2dcd997de94940c903719f6d066a21467890","dweb:/ipfs/Qmbes1RRY6KdtsMohp8834xXyipeQK9GJ41NfgXK1d1QAZ"],"license":"MIT"},"node_modules/@latticexyz/store/src/Memory.sol":{"keccak256":"0xef6e7000b181c2991aeacbf99a9d886f8c4df88878b857713f851185b63a7811","urls":["bzz-raw://b079b4773d140ab2c01bdb04facfa56a78f753aea7122fa445b2bfa133411392","dweb:/ipfs/QmWYWKFpwtsPeGdCSxcANgxXUbwAuMMgR7iMVPDSCZxz2A"],"license":"MIT"},"node_modules/@latticexyz/store/src/ResourceId.sol":{"keccak256":"0x889423054511cf8a83f5dfd65a0f984dc514aba798ef3db139b59d395b2327e2","urls":["bzz-raw://40b9495d455c87db8b063e291ca3973dc3ba1163f09c5d7446241a9e1cb69ed0","dweb:/ipfs/Qmek1JKVjPUpoXnKwu66HfPS9rHstKtWTuBmG8YFxbPEWQ"],"license":"MIT"},"node_modules/@latticexyz/store/src/Schema.sol":{"keccak256":"0x0d2a08030d21292ecbcc850d9111f3817d03f17cd5e02186894848a9152d79d7","urls":["bzz-raw://3f30024c1613fb587aaba4c1dcb8e4e46ed765a2cebd5b63fbebd327d1bf13d3","dweb:/ipfs/QmZzqSnPMYKDYwbFNvUFrvuazMUyQHzQ59w3A9x6juHAm7"],"license":"MIT"},"node_modules/@latticexyz/store/src/Slice.sol":{"keccak256":"0xae6c03881fdfa56cba1879d9c9c6b52c2829e6a278a200176678d8da05a89345","urls":["bzz-raw://3cad7dc4944c0518de2e7f99697485d365ae37aa6cad6967996377c2dd951fe4","dweb:/ipfs/QmW3grFwr8BcgJmLfjLbj3FthnD7NRUBFMFiahbXztHPr7"],"license":"MIT"},"node_modules/@latticexyz/store/src/Storage.sol":{"keccak256":"0x7e735a4c7fa8b8a5fe2371d90801e3287ddb78efed69b31e1a76f0b7b153c4c3","urls":["bzz-raw://9e6db36bd52144b6feeecd91a58fc311127a3892fc96c4171db5b570fe9876ee","dweb:/ipfs/QmS6LqnTZvpMc4eiz5JowBoNnh3RYemG6JHjqtYucT1rQi"],"license":"MIT"},"node_modules/@latticexyz/store/src/StoreCore.sol":{"keccak256":"0x9513dc38e5baadde0ba9b08320a324043b0e88a10702be5c3507da8c3d45e861","urls":["bzz-raw://99c80c65a394763668e4aed69220fec6bb3ed847fb277ddd1ff1d4bfdf452da2","dweb:/ipfs/QmRT2BATKtrYmixWMuWo9Cz8g8oscfLNSmvjxTyiTNA1pc"],"license":"MIT"},"node_modules/@latticexyz/store/src/StoreSwitch.sol":{"keccak256":"0x7edf7c1641408f3a580eb28bda58054583cb846f875608612671c6d40712ba40","urls":["bzz-raw://4146adef610d1daab085a81aa9f2d4fd8c4e5f459b9ef184f3ef23465573cf91","dweb:/ipfs/QmQqZMsbkzSNG6VfYzQLdRCBCsNohBSVQmWoTP6QvKmKUP"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/index.sol":{"keccak256":"0x094a6f1e2910b345b6b254e0fc2c8882b3190c673f7ee19742e857057a4d3f85","urls":["bzz-raw://18908e2e7e878635abea72ef99851fddd204371e6b641f010e831ebfa0b1bfd4","dweb:/ipfs/QmSNAxXqxTrzPkZ4rSAQgBnuer1yLPq74hoqnzrZV3WGsb"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/Hooks.sol":{"keccak256":"0xfdea5b4cf666720c1c0d81a8acdede68e6220aee45d8a9f3c9834b4edc5da394","urls":["bzz-raw://b3a394dfe123cfb7200f65d379fb0cb3d2c84475b382faf6ee11bf9c45a63b53","dweb:/ipfs/QmRMPHFBbCKtqKBVV9gvd2jhnfsyUKmCBEQkgviMoxi1UG"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/ResourceIds.sol":{"keccak256":"0xf192bceab34508cee21dd7c33e4d776f79c4a7ca55ee8905c6c694850ebfdf64","urls":["bzz-raw://c95113f76f6de671cb44710754e0942934182b544660a4330fc90a505e198905","dweb:/ipfs/QmXma5ZxfK8Y9TbvB7QM9hdhfc1ixiMcLpo9BQxnVthHB5"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/StoreHooks.sol":{"keccak256":"0xa825218614acc19a4100357dd7ee410b67b994fe7aaa68650d5d0d4202d4ca8c","urls":["bzz-raw://09b0cbb598fe2b75bbcd269b47d686a66fcc89c0c40d9a09807eba7688b81fc6","dweb:/ipfs/QmYk6XQwSLhRumujTCsqxdvugKuP8oLjjB926pMHR445ra"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/Tables.sol":{"keccak256":"0x918b977e7f7f3e947d6d5aa189c54c9c7e7c106d0a0d53734ee959ad454abe09","urls":["bzz-raw://3a3de63c04c838bf80c1903cf7464d201d0ece0f86a7aaca35462b730e9338fc","dweb:/ipfs/QmSUkLZ88J7tSwdmR3viBJHU8QVgN2Gji6W8wYLJEDNkc2"],"license":"MIT"},"node_modules/@latticexyz/store/src/constants.sol":{"keccak256":"0x67e0d59237bd37424827ecde1ecdbe71f65376af517b0623cd8f8d5451bca7a6","urls":["bzz-raw://09c5ec7fe73e06140957d44a3d9938587711c783ccbf08ff017638c9279a3168","dweb:/ipfs/QmfS9ZRqHXmBJ1h5B4x4gbU6d18DtMgKZSkxhQgNVRxueu"],"license":"MIT"},"node_modules/@latticexyz/store/src/rightMask.sol":{"keccak256":"0x28887aab8ad5ca598927e59d702999ca6e3b3128f1cddd2b995a381c8d04b275","urls":["bzz-raw://7710847f4689b7f5b81436c7d52ae4395f244a2eebf8d398b2edd43accb06754","dweb:/ipfs/QmTD2wYqryXTynHAn5Vf9wtjUUSGeCJWENZTnWtBAK38pa"],"license":"MIT"},"node_modules/@latticexyz/store/src/storeHookTypes.sol":{"keccak256":"0x4f29001e53690ce74fe405a6d0376a564c9c743d1631d36fab04331865e4d572","urls":["bzz-raw://138c80abd63225a3eeb01ebfa1f9288e188a7ee5b2266b275fb4ed31b5aa30e3","dweb:/ipfs/QmdEx9uHgCCbTcetGwFH5a66Ft7ajmrMDXvP1fW7WjnnE2"],"license":"MIT"},"node_modules/@latticexyz/store/src/storeResourceTypes.sol":{"keccak256":"0x1c4cb6b3ecf76f614479ab304d7de3ade0e99c7ccfd07717b57c92f699a27261","urls":["bzz-raw://2c9b0e0c9b3b5610d6fd65a8ffd7c54df390a34ccc70d58f4a055c49ad1ea586","dweb:/ipfs/QmP6ffpnR7aRyvq9AiUkVNH6LbGfFP3NDq7E2n2PVcHhp2"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/DecodeSlice.sol":{"keccak256":"0x310523f7f3acca841e62fe50be8d8b042cad5b3c239cb1105d6623cf83e63152","urls":["bzz-raw://1cc40ca233acf6502bc65677b381c05331dd7323953e54b5df969051e47f851e","dweb:/ipfs/QmTxy9mhodT8drezB5K1kPR78AMaARomoJqDyaWpLuCKui"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/EncodeArray.sol":{"keccak256":"0x259ee545fd9dfd4767f0b7fef31f52fd3c54c4a1c6657d6fbda4927800c937b3","urls":["bzz-raw://0a4e31efa9f476cd267af7c3e11fe0151252206a1f6407a80a4092444c2de8ea","dweb:/ipfs/QmRF4gWYw33mFTMh7nX8DJ1qzx3Ko6yMsnxubzYTRppdyo"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/TightCoder.sol":{"keccak256":"0x0e74ff88ec94cb33f79d8afc1497c4fdccf02db40ab47f3701c7d02fc305d4d8","urls":["bzz-raw://36b7cd0c2a3f2dcdc83ab7ac5a93f123746ce29c0f1000f2b275ad2c647ff0f3","dweb:/ipfs/QmYdipHYUhHhS78wLdtmKZUK14FEwpto5mFy3rNeZssMLz"],"license":"MIT"},"node_modules/@latticexyz/store/src/version.sol":{"keccak256":"0x78c571906ee999ee7e56d4f7702b8a93c3a9e55e6b552aca115b5f6ac7f1c80a","urls":["bzz-raw://a9f141b2d556b2a2545e7db5606e8a038679a995a22aeaf1702cb3a60320b60a","dweb:/ipfs/QmY7x258Fhj3TT3RT4sNyyfiRphVYdZXhtAnSYpasJ4xVQ"],"license":"MIT"},"node_modules/@latticexyz/world-modules/src/utils/AccessControlLib.sol":{"keccak256":"0x9fb1520ec94ce3396760a235db900192b4990c78fd459c449896a74c32b83542","urls":["bzz-raw://4025b37988ece6915b2c867702a4a381829755dd9e5b0b0b32ade85649b00b2a","dweb:/ipfs/QmUsLyetPdhtSdN3MicE1uphXWscKBPSBif8Sd83RC1E6Z"],"license":"MIT"},"node_modules/@latticexyz/world-modules/src/utils/SystemSwitch.sol":{"keccak256":"0x5ac59bd7f2db0154a8b8f5eecc8eda69458c7ac488d5defd0c904d79025c79a7","urls":["bzz-raw://89adb066110da44661d12e487bc9adfa6c8396432516057b57ae72ba2ceda3e9","dweb:/ipfs/Qmddoe1812LrdEWbaCzE876kL6AK4S7vUGkcMpzAxPyhvR"],"license":"MIT"},"node_modules/@latticexyz/world/src/AccessControl.sol":{"keccak256":"0xe9e1b1e588699a15ee81cc46f5959e14ff323787b576681abe7b0163d5988a4e","urls":["bzz-raw://f19076661965fcf60fbf5e58ee8a83daac63e174806af79f5fd4144929cab899","dweb:/ipfs/QmVQxPrkHpSo1fbsqGvToXc6q9x8zrVrGaZjKTKY413QBm"],"license":"MIT"},"node_modules/@latticexyz/world/src/IERC165.sol":{"keccak256":"0xe3d9074a1be3247be67ff4dd2c9e41481650ddaa799285a249736bb85673e33d","urls":["bzz-raw://0b6743ee1e6d0c74927bf17fc1da0cad7575aa7634871b94190ffbdb4c28c2a7","dweb:/ipfs/Qma5bNsPJSBTesWxg3eAAMUBTDE7UjqWaHF7eMiGwP87jr"],"license":"MIT"},"node_modules/@latticexyz/world/src/IModule.sol":{"keccak256":"0xbb926cf64e685bbf2770d60124664cc84ab70bd3038e17a074f2d472c3fc2c57","urls":["bzz-raw://143c3dcbdf1702dd4f9c869629609386c12f7c0247e88a6d062dc4d519ebe0d2","dweb:/ipfs/QmQJSDd8uFL4sssw9fb9NHo4s6zjuDUgmrLHj3zsJuhMo1"],"license":"MIT"},"node_modules/@latticexyz/world/src/IModuleErrors.sol":{"keccak256":"0x60917e029779c81cfea1f5140c389269e51d7adb78987f39101b9e0d7bdad12d","urls":["bzz-raw://513f41920d67ca28c3e0fe247403c28a4d342785192df449c99d5f92db04fcea","dweb:/ipfs/QmeAG2TtxAgcJQR4QxftuSvQrxisYQ1i1GZoyd7oeFQBDJ"],"license":"MIT"},"node_modules/@latticexyz/world/src/ISystemHook.sol":{"keccak256":"0x81f1743d7ca6a9c7efc4997cf95e603ccb2070885265ca0e540f461aa7430721","urls":["bzz-raw://93d99e78b541b33ecd501bf0cd407a78cef490fec8eaef2f188bddb9e293a99f","dweb:/ipfs/QmPrcMDxwhvBZTr2AxoGqJA9L3Mjx27KBc98h3gXSsa3PM"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldContextConsumer.sol":{"keccak256":"0xb39e9d8cff4162e255f6c460ef9f9f0ad5b804627f745d967b2f10d0dd509299","urls":["bzz-raw://18d957cd87febccc00d82b9454047f0f5236250c9245befc0f57978671675255","dweb:/ipfs/QmdZ1eXBd15vLpLVqTNJDAAaTzzucpRLD8GPJahLKT4J7x"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldErrors.sol":{"keccak256":"0x0abae6f4ed1b3070bddd0ed194c08b83a948b61ae959396202cf627bf1056a2b","urls":["bzz-raw://a7037954f281cc0188a5aafc1d0cca0aabc110fd0234e6c43dca35ad69ed3baf","dweb:/ipfs/Qmbv2nfK1qPpnoAbqNJFqWwo7AuyaX2ZEgZMFspMv7DR5B"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldEvents.sol":{"keccak256":"0x39f6d8930db431c04158b85cc2a612c48d43dc81ec998f267076b12293c5d243","urls":["bzz-raw://d68f1543e5e166d639372d1aec57e3e193b5bb3b37270b6cb0488fab2c0ebe57","dweb:/ipfs/QmdJUFDx87AHWFKP3jVrYg8xqAkiPfuT1M3tEotNt7KUoy"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldKernel.sol":{"keccak256":"0xdaa1e92439036e392fe79892819ae165732f416b831f84d38050ca3d958e549b","urls":["bzz-raw://ea8dc52e31a62e8971322ea9ed8f2e83d562ec199d7f93a392c293e96ff7f092","dweb:/ipfs/QmSbM8MgHbrJLYP7uzemfZeC4xctqdyKDbspwHUsgeeVJC"],"license":"MIT"},"node_modules/@latticexyz/world/src/System.sol":{"keccak256":"0xadcb32bdc444a4420909b738d81fa662dc63739455fe93d5aa89c93a3ccfd2dd","urls":["bzz-raw://d303094c84ebfb0f9f114c54ff4dfc68bfa1e526d0ebe304be6fbeb7cb2f0d3f","dweb:/ipfs/QmYvUx1mNDhkxZFqxLeswW3w9HkvVqeoJiJKj1HN1SB7Gi"],"license":"MIT"},"node_modules/@latticexyz/world/src/SystemCall.sol":{"keccak256":"0x5012c0607c8d41a4eed69d8a0430f742844883d3c3f17a6717ac287608b4e6af","urls":["bzz-raw://c389f65d050849cc95a7df9f45145186a60ae892b7d02b26ec92f8a38f8e2ee5","dweb:/ipfs/QmNQPBewaXghhVeJDaC1XUK6BbFrZ5qUjryhmJuyvgWdbF"],"license":"MIT"},"node_modules/@latticexyz/world/src/WorldContext.sol":{"keccak256":"0x50ca52bdd89a9f27d6b03ad00ef45c8c5a6884ea9d75e18f8fa53524ac2feed9","urls":["bzz-raw://55febdece37b291527094fb654919d4c8fe0b231792996a14c5e5cc76512b19e","dweb:/ipfs/QmZHFbDDNmdFHWc1uTSvDgMUUgb8NgBPb1cDUJYajswbHT"],"license":"MIT"},"node_modules/@latticexyz/world/src/WorldResourceId.sol":{"keccak256":"0xaff9a22fac8a0f6eee5763b07a7ccb623c829d37922b85e42e914aad2ad417ee","urls":["bzz-raw://e598f0274d6d97c0a09806bf4fd1f0d054c310cf51b2123f5ce6380d6f3186ea","dweb:/ipfs/QmaaVvqm21YsCgxozDyShcM17jKUXJhf2y26bk2YzPYZoM"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IAccessManagementSystem.sol":{"keccak256":"0x7e7321b86836bfbf4b96d0fb2a424ed678efcf01b15fa3d0b4ae4f0b975ad5dc","urls":["bzz-raw://ead41554796bd0507e390f2997aa4a8df7bff8b51523b86fa3c5bd8acb1fec48","dweb:/ipfs/QmVe1VUhfbRy8tviA7UcCtS8NjXhsF1E6Re9xLqWS5aRTK"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IBalanceTransferSystem.sol":{"keccak256":"0xe57042e82311847c56fa569377ed84459bf55afccdd3123312a5dff90c1d06f4","urls":["bzz-raw://baf3258c9118bf16ba68ebcfecdb5e5ffc85d5c0cdc2815ca298283dfcff2c83","dweb:/ipfs/QmcBVyUBR3PVejz7249VrEBMCMKHi72KoUXQ8DFmMmY48F"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IBaseWorld.sol":{"keccak256":"0xf7acdfa0eb01c710d11fba129d613863fe86f1bed352f0bc5630bea81cceae17","urls":["bzz-raw://3e4107681cd20c018cd8f5dff6da72e8a4b02f631c7c59b618e8743482c7bc81","dweb:/ipfs/QmXS8NLaKVXcf97HrD8U4hGHqb9ytYGwdZrTVHHb5EwrRj"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IBatchCallSystem.sol":{"keccak256":"0x600cc362780c319e640950ad3520af7fa558171268baab252ff4da4414aa0f1c","urls":["bzz-raw://6d113a833b64bccbbe852f3d0261efd80ad4a0f6771802dc91af79c762a33ff2","dweb:/ipfs/QmaXEdJJaMMQF8nZieWyXdVD15yuXnH89QLZHwD18LAndz"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IModuleInstallationSystem.sol":{"keccak256":"0x7070453d969eba7defd90047d58ae979e27e5c1fcf05598daa4d17fedbe84c35","urls":["bzz-raw://ee5c196c5e339ac0222cd1d14fd9d09451d255605f73732abc33397a9512503b","dweb:/ipfs/QmYwNsWnxP24RzDqFYLnBYswZY97YE3nwG6Xf55f5FqNXa"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IRegistrationSystem.sol":{"keccak256":"0xe08d3af994098120b5507c71a1c3558763b8c1a88c6eae506aa438c2af78f800","urls":["bzz-raw://bb0c47b16ff524140388765fe9ef99211dd7d9b9374dae09144a9956138de00c","dweb:/ipfs/Qma8ibVu6WZs1hFW3hMnUykV3pPXGZhZ3xJwJXNj6Xu7aL"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IWorldRegistrationSystem.sol":{"keccak256":"0x70bed82da026058ddccf52766823c7d55c7d29faad0ab1d76d763786d5277f7c","urls":["bzz-raw://1da6476d62e450d3d935ea8292723612a84fa1d07342fbc052ee851181701a27","dweb:/ipfs/Qmd1FQpmEVbQciLDPkHPXSKB7aYW1YB74BN5JXqn74erhR"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/Balances.sol":{"keccak256":"0x25248669a093cfdc9453491e5b5806f6aa092a805569799650c43c32f7b7877d","urls":["bzz-raw://2f294f597122450abd267760d91682facd0a1040383caeb44aaadeb74770904a","dweb:/ipfs/QmPXsoh8tUhpnhjdBYYTZCLc8MPHDZK6xUmN7F2DsMEXro"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/FunctionSelectors.sol":{"keccak256":"0x1ee313f4f1165034b92c5df1fe4cdd9be52b27780245388db3a0267c119fc926","urls":["bzz-raw://a3d58ca6a58e94bc30d5be0fc7a7d1325a92096c8b8b2b3a0531c2c5d0d60791","dweb:/ipfs/QmZSisbANqwnFzwMJnnYBjemLW4Cqn3oL7MkV4HiQR7GKv"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/NamespaceOwner.sol":{"keccak256":"0x3a53f395fc56398b4095c1e4016ad5f87d06236fc00f1fb85b9cfe138575b614","urls":["bzz-raw://9d91d30c8506a2d07bcafe0f8feff002bbc7764060d7e7bef7f15b9c4a97c597","dweb:/ipfs/QmVTAxSh1JSMpKD1jmJSTvXbDZQubdJW2DQDoePWecJskH"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/ResourceAccess.sol":{"keccak256":"0xb857dd63073a6469f5bb8deb6c0617763cd42c484821e247572c6b53bb1da3cc","urls":["bzz-raw://07c710d67440b98b145c1991623b7c8cc7f0805b4e6fa37a7d54afcece31239e","dweb:/ipfs/Qmb368QqzbQGUttbDS7eVBGQ8KcXhiai2F9vy3Thyyk2vx"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/SystemHooks.sol":{"keccak256":"0xc27730dae8302cb86f5d65ddc9ae0e92afba17842285a6d0cd146a1e21d73c0f","urls":["bzz-raw://4de5f820f1dfe36e53fe1fc77be6a52ac5fa72a7a5d5ec66e5d29ca6ce553674","dweb:/ipfs/QmP5JUMHDCBxZkZ2YnoYQLqQFHeyCpoUVp14hJBWpSdiqV"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/SystemRegistry.sol":{"keccak256":"0xcb1e9fd5cd02cbb7125f2a64c02f89272d4b0f2afc0b43f24b727f023ef06493","urls":["bzz-raw://f4a923e67dea1c1c0a978cbb89d4e27f6e0205f49efe0556ac90b358bd2062ab","dweb:/ipfs/QmZww8gDH9kyXsCaTYWzupNhL1QqR1emAbb5VifFWhDWYF"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/Systems.sol":{"keccak256":"0x1706fe4b5441a4e3982a3d32f7de2148627b8dfbbe3e38391dd4dab06b86478c","urls":["bzz-raw://c0569fa73cd26c6476188646194ad58eb5cf78cb7c7dc7722748455c23c9d4d7","dweb:/ipfs/Qma1RuR12bTXSVJJ8Q8Gw23KkBw7pyV9u5Kr8TGutaxYdz"],"license":"MIT"},"node_modules/@latticexyz/world/src/constants.sol":{"keccak256":"0xb8320f88ed5519a4fe2554ad94815ce328a50fef7719932375d6ce695265c2f5","urls":["bzz-raw://a8f5de30fbcc63e469e46ad4a4d4bcd7d8e4b4f2d31fcf62a04aca48d999af22","dweb:/ipfs/QmXw1jDQM2szfRY3tAGrRy6fEzte6yVFgebJAqCLMDHndV"],"license":"MIT"},"node_modules/@latticexyz/world/src/modules/init/types.sol":{"keccak256":"0x81b75eb286ec515bde6cbb16c3d089054abb530b744865bbace68343d23177bc","urls":["bzz-raw://afc77bd51e24da666260bb48c44ff611869fb2e550921d732e5aac84a1f09525","dweb:/ipfs/QmeU5N4yeRh5nEA65pvGtQQJNv1GvEPy4PkhMVRYRMoMvh"],"license":"MIT"},"node_modules/@latticexyz/world/src/revertWithBytes.sol":{"keccak256":"0xa1147f218a0152b153d4e8bada0f606bfed40ac1f184fd16a941c2d0033c53f5","urls":["bzz-raw://3f5e0f6d1b51a3a04d4bd84537b2ced373b32824898cf6fbfd13ae1cbdf06359","dweb:/ipfs/QmayYRmBZRUV9m4UnFxuC62VvHriXhkYXeH3HibZ3Gmxxf"],"license":"MIT"},"node_modules/@latticexyz/world/src/systemHookTypes.sol":{"keccak256":"0x15c25ae4b21e091209970e45a198cb51f31eeae482828862641099c1a9b2448a","urls":["bzz-raw://0ce3c3eb58dc5c262d36babf372ad028d2846beea73a59d6e70f0eb8c90ee00d","dweb:/ipfs/QmWUkgegTRtSJM3awvjg4J7DWZ2ME7Pnxp1dP2TWWzLNoo"],"license":"MIT"},"node_modules/@latticexyz/world/src/worldResourceTypes.sol":{"keccak256":"0xeb042e7d3638430f6fd394107f3237cf14e4325154f0098624e8a7826584d465","urls":["bzz-raw://39e0b8eb87616b661f5a4f2fd7e1a727bd19b7fd8d40ad3d93fda26822f433ea","dweb:/ipfs/QmacYMatKV9pwEwirVRY9a6r89RoNs5yk99ic37ieWA8Dk"],"license":"MIT"},"node_modules/forge-std/src/console2.sol":{"keccak256":"0x954646445d1014c3cd85c7918f5e7adeeca5ee44b68c00bafa237e597a4e35ea","urls":["bzz-raw://516fa3be52da4763147175bfba4be0aa011fadbb0c1afb01f97265bd4cee7973","dweb:/ipfs/QmdixAyMJefx7qePChgdxcBH5MxhmN7vsqPuPLx3CgrVmF"],"license":"MIT"},"src/codegen/common.sol":{"keccak256":"0x2d0a0176c583fcd95e430978a48ca29a38536c01b57b6effd08697d2d2bf5f42","urls":["bzz-raw://720d1ea5054e1e53b703345992c9ef61e372f6da66247fcb4e89c279055f9085","dweb:/ipfs/QmXCygeJuEesDRSAamMfJZU9Qz5UCz3dmkBj7SGfEvEEY7"],"license":"MIT"},"src/codegen/index.sol":{"keccak256":"0xc993a3f15c56e4b3e83c33b41a17dcff501b025e1e338645b62203cf26d2011f","urls":["bzz-raw://d5229574e32c8131647fe4826eeee2f9305074496a5546e70dc6da9fcf1aea4c","dweb:/ipfs/QmadU9mmUdvJMmwkJJwh83XyebzGG3BvqDvAASQ2T4Chjh"],"license":"MIT"},"src/codegen/tables/ActionOutcome.sol":{"keccak256":"0x3191cc4da6f6a0146b54ac4b6022f402981cda101a577c4b8f49d3dc4c9ca956","urls":["bzz-raw://cc6ace9a0b33a4a1df297c712c0b37171c8e3946e0fd2bf0ea0483ab4d28147a","dweb:/ipfs/QmPaVdRSLQt1xmbRbqeKWitcRXeTXGA3yuxJgPbgdh1WQ4"],"license":"MIT"},"src/codegen/tables/Actions.sol":{"keccak256":"0x63cd48bebaa0414728e9be2c856e4eb01efaead6627a6615da4c77b886805cef","urls":["bzz-raw://c1dfe138555b67362f41c26ce1ab074bfc1fcc4e7c6fd0284b82cc699d80d392","dweb:/ipfs/QmNf8UGE3FZ4U96HkeioE4peWWz1SKPAjhKRrGnpEnCdkQ"],"license":"MIT"},"src/codegen/tables/Admin.sol":{"keccak256":"0x0daf45149c3403e88b492878aa7622c604687314a844023f4f2ebdb53213b17b","urls":["bzz-raw://074403d43b76610a90629582f3d7680f713719e0b0a5ac8563838f694d717d39","dweb:/ipfs/QmVy5jEg33ZNWPTSEEYXYUafsghAdnDivCBGmdUKd7BDMb"],"license":"MIT"},"src/codegen/tables/CharacterEquipment.sol":{"keccak256":"0x5a911b5c2218dabb75a117ce2e8946ceccfe009edd2425a1d012d23727372d32","urls":["bzz-raw://d45dc0a37bb1814f9ebaf5264042b729268be557e9f9b58de928206d86e8ede2","dweb:/ipfs/QmTWSB6XUZXtjQAYLRMkRxPeXNLKa8nADAVguFBKoMADHB"],"license":"MIT"},"src/codegen/tables/Characters.sol":{"keccak256":"0x907f9803924ab0065992e81ccf9c64f228876401e5a728c27d967448bfb35e98","urls":["bzz-raw://809b9cc95a1c37663b48fe4307ba31fc1b0d794913258f5dc2f2f848b0448893","dweb:/ipfs/QmbyQ5DkdeL5CZppx9vs87E2eRzm6CkYfPAYikGGdbcHxH"],"license":"MIT"},"src/codegen/tables/CombatEncounter.sol":{"keccak256":"0x27431d9ff6ee373083856c0b7ffc9ac15f1bb93535620e726c621a8b626f4696","urls":["bzz-raw://50c1bf4f51c81d6299e05fbc65b0deb6104a0706ebeb1e618f5c3bd8e556a405","dweb:/ipfs/QmZcgbtpq9RxfQNEDEM6iQ7eHR5ya9wY4AJkWnnxaEjMBq"],"license":"MIT"},"src/codegen/tables/CombatOutcome.sol":{"keccak256":"0xeb791c773448819c7377ce52c0226a936dec6d65450a832a91fc947b5922f0fd","urls":["bzz-raw://6594f35264d88ef26048ed33de7ee17d9553b0eca23b1ae439fb1f72f6d19078","dweb:/ipfs/QmVr6mm3WmXdz9JLbDgdsK3LS6ypW4DaJrMGpxEQaBWVUZ"],"license":"MIT"},"src/codegen/tables/Counters.sol":{"keccak256":"0x2f840caffed593a80b84a16f186701e0b55eff03cc6fa6c210a6dd9cdf25237d","urls":["bzz-raw://7b6a76de959876e594bf5426dfe3ef9112b84d65e252a117031cfced3bce25a8","dweb:/ipfs/QmTosFfy3ME9N71CjHmTRLUWGJWa8sK81jdNcB3YaFa9oG"],"license":"MIT"},"src/codegen/tables/EntitiesAtPosition.sol":{"keccak256":"0xd0b649485e3837ea8014c2eceb7efa5b5002ad49bb57e87503622d91e0da7501","urls":["bzz-raw://b1c9559099385b1b1c23eb35d8bf72d50da0e813e5d29c90acccfab4a9ba7fe4","dweb:/ipfs/QmX2JCEkcUkTJq1svXUsGs2ucMuSqvSi16z88N4MnZoKRB"],"license":"MIT"},"src/codegen/tables/Items.sol":{"keccak256":"0x369731e289e046f20bff48ebb31202c95024ca34bf8fc1d685426878e66dc31f","urls":["bzz-raw://59ec4b81dc56d99ab8ee12323ce7a2157558eb51e5c7094b8b54335c7bdfe50f","dweb:/ipfs/QmbmYzo3LFHUNSNpZT4ZFZ7FFMAwk7DzyA27R8qqLc7mcj"],"license":"MIT"},"src/codegen/tables/Levels.sol":{"keccak256":"0x535e0e176169629b241caa38851bb5fe8862f822301552e8163bb405c9fc2327","urls":["bzz-raw://b22ef6fbbcdff6d59ccb2e1f3b48cd416ee58d64252aa1865f92ca53792ce7c4","dweb:/ipfs/QmQ7yKMUUcHcVH4RFZTDx9jSnr3rwyiTa7zeVLPK6qUQtp"],"license":"MIT"},"src/codegen/tables/MapConfig.sol":{"keccak256":"0xf7ba7c8303a8146a874960b3f77484d5ae0d9e3478a698ac08ac08f24d05ff27","urls":["bzz-raw://5d3905e07aaa32e028977c866e03cc0f1a92bd14945e30432f07fc3ebf8d8fc3","dweb:/ipfs/Qmf3UJity3jA727Y8ge5swykZa6YrbQPxaqCygroD6U2ch"],"license":"MIT"},"src/codegen/tables/MatchEntity.sol":{"keccak256":"0xaabe20cc4e4d6c5a55658f59ed5094f37ef0a4a795d41db3a147926d4f7bbe7e","urls":["bzz-raw://0c1690adf4c6629b794f8861239dd572a03cfb9c8688b51a4b52a54006efa6b5","dweb:/ipfs/QmUDGdfRxruvzrcqn1qcEqZKfyJYzXLqtarV59EwNdHmp7"],"license":"MIT"},"src/codegen/tables/Mobs.sol":{"keccak256":"0x0d6040fb2c459f26ffe1f563af1b547c9844cc3b53ba3d8d21f8051cfccbf6f3","urls":["bzz-raw://e7e422a289617179f3ecbdd519468996f36841526a30ab7245348ea78275d060","dweb:/ipfs/QmZYLGnLb7witVgCqz3ppfwa8EejMNdAHhdGfBxe3NDVU9"],"license":"MIT"},"src/codegen/tables/MobsByLevel.sol":{"keccak256":"0xf84e0714feee0964737b282a981dfe06d408e5006fe5e31f17ebe02d12be550d","urls":["bzz-raw://58eae71b254ef9d2d50ae3c46b0b03f1a7554b72e1a1743e9a4ef3b73df0f8c5","dweb:/ipfs/QmcY1RuKgtCFrjPfgsfyrmuVW6k94MatmMa4MGT5eNeYj7"],"license":"MIT"},"src/codegen/tables/Name.sol":{"keccak256":"0x5b244643b0cc0f74c380fcd34e6cbe59cf0fabf15362bbaf04db527443f5df99","urls":["bzz-raw://cce9aed9aa8dc6a071b9c8f958ae9f73e50f17ca24dc3c2cc2a58752efc7d1a4","dweb:/ipfs/QmaYLEjYKUnULFRcm35PUk4PQeWMpNEgg3N1JT6f6crf81"],"license":"MIT"},"src/codegen/tables/NameExists.sol":{"keccak256":"0xa8a8560b33be580fadbe6d92d8ee51225ea232788afd74252a12d1f724f7f9ab","urls":["bzz-raw://1bdc023458c300d9fd442c684d91bb3c48f8acc40ef629f7e6956af452bdcfdf","dweb:/ipfs/Qme9weCKgFBzqvRosTTCGyZoRNyU9mz2jkECiZPUMbFpQC"],"license":"MIT"},"src/codegen/tables/Position.sol":{"keccak256":"0xf71ad66166f5f5ac451aef4b46e44c39958dd6096eaf1f34900e69137633224d","urls":["bzz-raw://52d3c128933601b8f02227b96225f0951234f7aec9ff9a9c8684f8cd101f8baa","dweb:/ipfs/QmWNgxUAUYvogthUFSp6pHfWasWRves9727GMaipfdhzs7"],"license":"MIT"},"src/codegen/tables/RandomNumbers.sol":{"keccak256":"0x36271b8a638ab379293882f001c77c5b2c911c707c3cfaf8c63327a047e4fa22","urls":["bzz-raw://b764ae3b7573d191b544f66e01095e23c09c033a766c8d4f9fd635c780382df5","dweb:/ipfs/QmZEDexSqLHBX84DDpYVpjvcxzYL1d4qtkupowY13ixQeA"],"license":"MIT"},"src/codegen/tables/Spawned.sol":{"keccak256":"0x2d1705df77428d3bf34209aa624ce6812b49ff5701f3ded65beace10c902450c","urls":["bzz-raw://72c2f8c81b79fd4cc392b8bd7de5479a649a426b66b0073c231acb3e3d80d905","dweb:/ipfs/QmbA6xN5zS6MQ5D1gqSaucayoKjSKjSiprK1oXWmQSWUMw"],"license":"MIT"},"src/codegen/tables/StarterItems.sol":{"keccak256":"0x5ee8da401ed86fbcfe390b5dbd301e2553c278970b13e942a91b37eb930d8de3","urls":["bzz-raw://ea2e69871f31015e9080b07a0c8fa8fa01519c0827e3dcd1409a5192994205e3","dweb:/ipfs/QmV2raKphNUK5X6hds4e3c5AAk2XUP1vBNBMtsSz4VKGso"],"license":"MIT"},"src/codegen/tables/Stats.sol":{"keccak256":"0x4dbbe2a11e729ce5ed6569600e0e7237f5fa5e2476f6c049581e2b18830c93b2","urls":["bzz-raw://d056287fefd267378a9a3f20ed25e28db2fa34604729f047e22c2ab016ac2c6a","dweb:/ipfs/QmSunLJDjxsUMJaudJefjgeHHurT4KKsgrhNBSsEaU5jgm"],"license":"MIT"},"src/codegen/tables/UltimateDominionConfig.sol":{"keccak256":"0x6f439f3fef2c4db3b295718bb3e277f59500a3183f2306fe70890a30c3eeff26","urls":["bzz-raw://bde32ff627c137c1b52e6f45ff82df52eee9e6fe8fa668fc791132dba187f256","dweb:/ipfs/Qmcj4S8ysUA1Lv8xbA5i1dzn4wwKPQrCEjpUd1MW6rh21w"],"license":"MIT"},"src/codegen/world/IActionSystem.sol":{"keccak256":"0x70c9205cb55d501725621d75489338dcfedcf93379cff8c4035d29efc9059d4a","urls":["bzz-raw://8bc9da212ce3226d2a0f357d6f83ee3976659aa8008eef7c50a1cfe74a29dde2","dweb:/ipfs/QmaSJLZSfG9mqmZ5j5GGMxK7TV1FTLK3AjZXSnAFzaKRCF"],"license":"MIT"},"src/codegen/world/IAdminSystem.sol":{"keccak256":"0xc7af156c71acd0d6cdab577dd76c0a4a7c56115d7bd22069ad8ad183d1a230e6","urls":["bzz-raw://b167cfcac5a58cef4d3f018bbca81afcf7cc7a8d4f75537f4516f508a67f435b","dweb:/ipfs/QmQEcFt4N5qBRRaCYDzAx9UwDuqPycSXBqQLGyZdVHFNzQ"],"license":"MIT"},"src/codegen/world/ICharacterSystem.sol":{"keccak256":"0x49ef649aa37c2f64fa032400e803aa2d6b6d94d8de47f024cf63479c217a1373","urls":["bzz-raw://c84ead4b32146eb7088cb0f3fa45f31de057cb252693efd92982698dc87a4f78","dweb:/ipfs/QmVMhUEXVmVMZJVJLoP6vh9pB6RYq9YmrRC4jdJWujcqnd"],"license":"MIT"},"src/codegen/world/ICombatSystem.sol":{"keccak256":"0xece65bdfbb9f41aa91c926f2625a5afb62162c19a2be83749b02c04755b7143e","urls":["bzz-raw://de01bf77ca9c93a694d87dbb64370d5bd5770da42e461a40e55d640675fe777f","dweb:/ipfs/QmbANbeftTp3YQizGFoYtXwozQHL4ouyoVEu5W1Z14wsQh"],"license":"MIT"},"src/codegen/world/IEquipmentSystem.sol":{"keccak256":"0x22fd0489fa8b774694038a2af88ed573bad4a917dbf6bece44c428ebd5a0f1d3","urls":["bzz-raw://67cf7c8fefa5271e81b97a149422c8cf81aa391c55b8e47f919b8fe8d78720fa","dweb:/ipfs/QmdPPC8HTjB6zkdXs8siSTT4k6YFDvUxL8sDYyt9HGeStW"],"license":"MIT"},"src/codegen/world/IItemsSystem.sol":{"keccak256":"0xa53c467470bcd3a670b1d8f04a8e8b610bfe46634821110356b3ebd84810f76b","urls":["bzz-raw://6637222d8c7b4c16c6586b6ea4bf726b80e559be14d831863d574ececa149f1b","dweb:/ipfs/QmSG7tH5qZCuXVn44DxYjeHZUh3FM7JXqzmkoP5nMhDwQH"],"license":"MIT"},"src/codegen/world/ILootManagerSystem.sol":{"keccak256":"0xf40b0f25e8d4ba6552f4b1a3f2b86c17e2e7c1be7317bfbc15f7e24100bfa14d","urls":["bzz-raw://0f0bd4c7e76b1d3397f85a76382218f4922681c046c5e62dcf606f3ea8884bc0","dweb:/ipfs/QmcaSbhHrGAn9TPsroSHAEijriQmKWvA16ffSJuTw3AzN2"],"license":"MIT"},"src/codegen/world/IMapSystem.sol":{"keccak256":"0x1e306d0814b36dc00a65b4d4f4dcb2812b254aadc7e79d5adfe6a8fe9c697c80","urls":["bzz-raw://018d71336b01c22f432ffcba50375fb124aa33bf7f0f96dc4b02eacd8064507e","dweb:/ipfs/QmYJubK3du3ZCG87uNsTQBVDj6A646BXqifnRSJTHB6v72"],"license":"MIT"},"src/codegen/world/IMobSystem.sol":{"keccak256":"0x7ffc480cffe4c490a65836578d8468ba420cec99f919b67ce0fec75cc1579391","urls":["bzz-raw://c0171e839a340c252b00a44e08349dc4982317f82cc393a391f4e32b1b811d9c","dweb:/ipfs/QmZTNzfeZEkT4PrrwvrPz3JFcpR2qBQ6YbXxUpmTEpyDgS"],"license":"MIT"},"src/codegen/world/IUltimateDominionConfigSystem.sol":{"keccak256":"0x7afcbb11522c4bb8fa8e86e1ca2f965eb5ba3cb7342a1229120210724ff3e828","urls":["bzz-raw://ae704bc31684551e05b29f55eddc7bd7fcd69e6bd4a54fa774d7d9a327a769b9","dweb:/ipfs/QmZvXXubvwTdDLifLoYhmQbr1M1GKzpputcMo38Au5uvJb"],"license":"MIT"},"src/codegen/world/IWorld.sol":{"keccak256":"0x8f0c0461ad016b4d4f502d10fe5fa2a650836a4a76c883b2e55e714158194859","urls":["bzz-raw://2254a9f2f35ede55ef418440874945422b5e5f526724deb0bd397cabdf512f6c","dweb:/ipfs/QmZrfF7SgNu2S9rgdNbKFpNsFZMJLTp9GyZpqwvVwQCNr9"],"license":"MIT"},"src/interfaces/IRngSystem.sol":{"keccak256":"0x87595683df74e1357f3562deffadb410ac94c98cbc765d4b7327ae3d39032ec0","urls":["bzz-raw://c05e5ed25cff2606f26b2e370801257bfcd6c1fe10b23d21c68b3a6d55fcbb02","dweb:/ipfs/QmV6Ddyj4A86bbsjGfi4J61wcJH6vR9C4RfXmhiQiJuZQn"],"license":"MIT"},"src/interfaces/Structs.sol":{"keccak256":"0x6259111a19c9e329bd16a154bca9afa89339ce179d278647e34bcdff1868d0de","urls":["bzz-raw://c67088e2ecdb887174b16cdaf87299ad3b3871d7ce1f8c4c51e8def5e6cc8fb5","dweb:/ipfs/QmR2SXkYEkSqaacU6rWGsLdZiefy5kcsVqhvzg4Kob2fk1"],"license":"MIT"},"src/libraries/LibChunks.sol":{"keccak256":"0xb4314b9df31cb353ad6d4b434569294aa159fb23abea1260e638a6297781f767","urls":["bzz-raw://decf1fd82655251b50dd10f1da26f53647d4a2a454a36cd6a735d05de3f8e8f9","dweb:/ipfs/QmXZdcHrHY2tPfUVaxyoMqDxitkzH9o6UXYncihgJzqHwv"],"license":"MIT"},"src/libraries/Math.sol":{"keccak256":"0x7aba32d8d0d2b81758afb4f211afccbf3e85ce62defad5ac1fd8fd26c8fd5ab5","urls":["bzz-raw://fb636fcaf2f6f692bf32cadc2f8089a28367676d7b6f3423a5d0593a23e8200a","dweb:/ipfs/QmNQnrjDfwhM4jMzC9tFxHszohkZPGeFhiEendg7qi2crW"],"license":"GPL-3.0"},"src/systems/CombatSystem.sol":{"keccak256":"0xc16df9bf16d0a1916a559835ad26e86cc2687fbdbc1bb070b0bcfd824a022a2b","urls":["bzz-raw://034d0b4a2c8b002847d034514d63bfcd919d9c2d9117c083aa3b1f060772d248","dweb:/ipfs/QmNzXVVqDcj65UG21jrPTaiYq1XFUu3RMoRGYGu4YciNDs"],"license":"MIT"},"src/utils.sol":{"keccak256":"0xf50d451bb280fb33e08f521e168952f5145e69eee7df284ffeb1865b8b5187cc","urls":["bzz-raw://a78e6326639bdf19f606921e48c90663f387cbfd7d8160a461838e9ca6a0fc57","dweb:/ipfs/QmPT6PNCCQKWVP9bwYC4JyfuXJSgbupsgq6MT898gYfa1q"],"license":"MIT"}},"version":1},"id":216}
\ No newline at end of file
+{"abi":[{"type":"function","name":"_calculateMagicAttack","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"_msgSender","inputs":[],"outputs":[{"name":"sender","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"_msgValue","inputs":[],"outputs":[{"name":"value","type":"uint256","internalType":"uint256"}],"stateMutability":"pure"},{"type":"function","name":"_world","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"createMatch","inputs":[{"name":"encounterType","type":"uint8","internalType":"enum EncounterType"},{"name":"attackers","type":"bytes32[]","internalType":"bytes32[]"},{"name":"defenders","type":"bytes32[]","internalType":"bytes32[]"}],"outputs":[{"name":"encounterId","type":"bytes32","internalType":"bytes32"}],"stateMutability":"nonpayable"},{"type":"function","name":"endTurn","inputs":[{"name":"encounterId","type":"bytes32","internalType":"bytes32"},{"name":"playerId","type":"bytes32","internalType":"bytes32"},{"name":"actions","type":"tuple[]","internalType":"struct Action[]","components":[{"name":"attackerEntityId","type":"bytes32","internalType":"bytes32"},{"name":"defenderEntityId","type":"bytes32","internalType":"bytes32"},{"name":"actionId","type":"bytes32","internalType":"bytes32"},{"name":"weaponId","type":"uint256","internalType":"uint256"}]}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"executeCombat","inputs":[{"name":"randomNumber","type":"uint256","internalType":"uint256"},{"name":"encounterId","type":"bytes32","internalType":"bytes32"},{"name":"actions","type":"tuple[]","internalType":"struct Action[]","components":[{"name":"attackerEntityId","type":"bytes32","internalType":"bytes32"},{"name":"defenderEntityId","type":"bytes32","internalType":"bytes32"},{"name":"actionId","type":"bytes32","internalType":"bytes32"},{"name":"weaponId","type":"uint256","internalType":"uint256"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"getEncounter","inputs":[{"name":"encounterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"_encounterData","type":"tuple","internalType":"struct CombatEncounterData","components":[{"name":"encounterType","type":"uint8","internalType":"enum EncounterType"},{"name":"start","type":"uint256","internalType":"uint256"},{"name":"end","type":"uint256","internalType":"uint256"},{"name":"currentTurn","type":"uint256","internalType":"uint256"},{"name":"maxTurns","type":"uint256","internalType":"uint256"},{"name":"defenders","type":"bytes32[]","internalType":"bytes32[]"},{"name":"attackers","type":"bytes32[]","internalType":"bytes32[]"}]}],"stateMutability":"view"},{"type":"function","name":"isParticipant","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"participants","type":"bytes32[]","internalType":"bytes32[]"}],"outputs":[{"name":"_isParticipant","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isParticipant","inputs":[{"name":"playerId","type":"bytes32","internalType":"bytes32"},{"name":"encounterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"_isParticipant","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isValidPvE","inputs":[{"name":"attackers","type":"bytes32[]","internalType":"bytes32[]"},{"name":"defenders","type":"bytes32[]","internalType":"bytes32[]"},{"name":"x","type":"uint16","internalType":"uint16"},{"name":"y","type":"uint16","internalType":"uint16"}],"outputs":[{"name":"_isValidPvE","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"pure"},{"type":"event","name":"Store_SetRecord","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"staticData","type":"bytes","indexed":false,"internalType":"bytes"},{"name":"encodedLengths","type":"bytes32","indexed":false,"internalType":"EncodedLengths"},{"name":"dynamicData","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"Store_SpliceStaticData","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"start","type":"uint48","indexed":false,"internalType":"uint48"},{"name":"data","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"error","name":"Slice_OutOfBounds","inputs":[{"name":"data","type":"bytes","internalType":"bytes"},{"name":"start","type":"uint256","internalType":"uint256"},{"name":"end","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"World_AccessDenied","inputs":[{"name":"resource","type":"string","internalType":"string"},{"name":"caller","type":"address","internalType":"address"}]},{"type":"error","name":"World_FunctionSelectorNotFound","inputs":[{"name":"functionSelector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"World_ResourceNotFound","inputs":[{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]}],"bytecode":{"object":"0x608060405234801561001057600080fd5b50615d0080620000216000396000f3fe6080604052600436106100c75760003560e01c8063aaa417b711610074578063c6ca743c1161004e578063c6ca743c146101fe578063e1af802c1461021e578063fc88ff631461023357600080fd5b8063aaa417b7146101b2578063b2467894146101d2578063bfea0b85146101f257600080fd5b806345ec9354116100a557806345ec93541461014e5780634dda27e81461017057806398d239b11461019d57600080fd5b806301ffc9a7146100cc578063119df25f14610101578063154510201461012e575b600080fd5b3480156100d857600080fd5b506100ec6100e73660046149e3565b610253565b60405190151581526020015b60405180910390f35b34801561010d57600080fd5b506101166102ec565b6040516001600160a01b0390911681526020016100f8565b34801561013a57600080fd5b506100ec610149366004614ba5565b6102fb565b34801561015a57600080fd5b5036601f1901355b6040519081526020016100f8565b34801561017c57600080fd5b5061019061018b366004614c2a565b6105d5565b6040516100f89190614ca9565b6101b06101ab366004614daf565b61061f565b005b3480156101be57600080fd5b506101626101cd366004614dff565b6107e9565b3480156101de57600080fd5b506100ec6101ed366004614e84565b610ac3565b3480156101b057600080fd5b34801561020a57600080fd5b506100ec610219366004614ed4565b610b99565b34801561022a57600080fd5b50610116610c53565b34801561023f57600080fd5b506101b061024e366004614daf565b610c5d565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee1270000000000000000000000000000000000000000000000000000000014806102e657507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b60006102f6610e70565b905090565b600160005b855181101561046057610311610c53565b6001600160a01b031663fa1becc487838151811061033157610331614ef6565b60200260200101516040518263ffffffff1660e01b815260040161035791815260200190565b602060405180830381865afa158015610374573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103989190614f0c565b6103a55760009150610460565b6103ad610c53565b6001600160a01b031663f48a39728783815181106103cd576103cd614ef6565b602002602001015186866040518463ffffffff1660e01b815260040161040a9392919092835261ffff918216602084015216604082015260600190565b602060405180830381865afa158015610427573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061044b9190614f0c565b6104585760009150610460565b600101610300565b5080156105cd5760005b84518110156105cb5761047b610c53565b6001600160a01b031663fa1becc486838151811061049b5761049b614ef6565b60200260200101516040518263ffffffff1660e01b81526004016104c191815260200190565b602060405180830381865afa1580156104de573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105029190614f0c565b1561051057600091506105cb565b610518610c53565b6001600160a01b031663f48a397286838151811061053857610538614ef6565b602002602001015186866040518463ffffffff1660e01b81526004016105759392919092835261ffff918216602084015216604082015260600190565b602060405180830381865afa158015610592573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105b69190614f0c565b6105c357600091506105cb565b60010161046a565b505b949350505050565b6106166040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b6102e682610ea2565b600061062a84610ea2565b9050806020015160001415801561064357506040810151155b6106945760405162461bcd60e51b815260206004820181905260248201527f434f4d4241542053595354454d3a20494e56414c494420454e434f554e54455260448201526064015b60405180910390fd5b80608001518160600151106106eb5760405162461bcd60e51b815260206004820181905260248201527f434f4d4241542053595354454d3a204558504952454420454e434f554e544552604482015260640161068b565b6106f36102ec565b6001600160a01b0316610704610c53565b6001600160a01b0316634f10aabc856040518263ffffffff1660e01b815260040161073191815260200190565b602060405180830381865afa15801561074e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107729190614f2e565b6001600160a01b031614801561078d575061078d8385610b99565b6107d95760405162461bcd60e51b815260206004820152601c60248201527f434f4d4241542053595354454d3a204e4f4e2d434f4d424154414e5400000000604482015260640161068b565b6107e38483610f8d565b50505050565b60006107fc6107f66102ec565b84610ac3565b6108485760405162461bcd60e51b815260206004820152601d60248201527f434f4d4241542053595354454d3a20494e56414c49442053454e444552000000604482015260640161068b565b60008061086e8560008151811061086157610861614ef6565b6020026020010151611027565b9150915085600181111561088457610884614c43565b60010361096c57610897858584846102fb565b6108e35760405162461bcd60e51b815260206004820152601a60248201527f434f4d4241542053595354454d3a20494e56414c494420505645000000000000604482015260640161068b565b60405142906108fc908890889088908590602001614f4b565b60405160208183030381529060405280519060200120935060006040518060e0016040528089600181111561093357610933614c43565b81526020018381526020016000815260200160008152602001600f815260200187815260200188815250905061096985826110d8565b50505b85600181111561097e5761097e614c43565b5060005b8451811015610a29576000801b6109b18683815181106109a4576109a4614ef6565b6020026020010151611199565b146109fe5760405162461bcd60e51b815260206004820152601e60248201527f434f4d4241542053595354454d3a20454e54495459204f434355504945440000604482015260640161068b565b610a21858281518110610a1357610a13614ef6565b60200260200101518561122a565b600101610982565b5060005b8551811015610ab9576000801b610a4f8783815181106109a4576109a4614ef6565b14610a9c5760405162461bcd60e51b815260206004820152601e60248201527f434f4d4241542053595354454d3a20454e54495459204f434355504945440000604482015260640161068b565b610ab1868281518110610a1357610a13614ef6565b600101610a2d565b5050509392505050565b6000805b8251811015610b9257610ad8610c53565b6001600160a01b0316634f10aabc848381518110610af857610af8614ef6565b60200260200101516040518263ffffffff1660e01b8152600401610b1e91815260200190565b602060405180830381865afa158015610b3b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b5f9190614f2e565b6001600160a01b0316846001600160a01b031603610b805760019150610b92565b80610b8a81614fa5565b915050610ac7565b5092915050565b600080610ba583610ea2565b905060005b8160c0015151811015610bf6578160c001518181518110610bcd57610bcd614ef6565b60200260200101518503610be45760019250610bf6565b80610bee81614fa5565b915050610baa565b5081610b925760005b8160a0015151811015610c4b578160a001518181518110610c2257610c22614ef6565b60200260200101518503610c395760019250610c4b565b80610c4381614fa5565b915050610bff565b505092915050565b60006102f66112de565b610c6e30610c696102ec565b6112e8565b6000610c7983610ea2565b905060005b8251811015610d71576000838281518110610c9b57610c9b614ef6565b602090810291909101810151604080516101a08101825281830151815260608084015182860152835192820192909252928201519083015260006080830181905260a0830181905260c0830181905260e083018190526101008301819052610120830181905261014083015243610160830152426101808301529150610d2181886112fe565b905080610140015115610d3d57610d3d816060015160016114df565b80610120015115610d5757610d57816040015160016114df565b610d678685606001518584611563565b5050600101610c7e565b5060008060005b8360a0015151811015610dc657610dab8460a001518281518110610d9e57610d9e614ef6565b602002602001015161167a565b15610dbe5782610dba81614fa5565b9350505b600101610d78565b5060005b8360c0015151811015610e0b57610df08460c001518281518110610d9e57610d9e614ef6565b15610e035781610dff81614fa5565b9250505b600101610dca565b508260c0015151811480610e2357508260a001515182145b80610e35575082608001518360600151145b15610e4b57610e448587611718565b5050610e68565b60608301805190610e5b82614fa5565b905250610e6885846110d8565b505050505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c80610e9f5750335b90565b610ee36040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110610f1957610f19614ef6565b602090810291909101015260008080610f727f74625544000000000000000000000000436f6d626174456e636f756e74657200857e81050201202020200000000000000000000000000000000000000000000000611a39565b925092509250610f83838383611b09565b9695505050505050565b6110228260018484604051602001610fa6929190614fbf565b60408051601f1981840301815290829052610fc593929160240161508f565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb2aa60a400000000000000000000000000000000000000000000000000000000179052611bb6565b505050565b6040805160018082528183019092526000918291829160208083019080368337019050509050838160008151811061106157611061614ef6565b6020908102919091010152600080806110ba7f74625544000000000000000000000000506f736974696f6e0000000000000000857e04020002020000000000000000000000000000000000000000000000000000611a39565b9250925092506110cb838383611c64565b9550955050505050915091565b60006110fb82600001518360200151846040015185606001518660800151611c87565b905060006111118360a001518460c00151611cbc565b905060006111278460a001518560c00151611ce7565b6040805160018082528183019092529192506000919060208083019080368337019050509050858160008151811061116157611161614ef6565b6020908102919091010152610e687f74625544000000000000000000000000436f6d626174456e636f756e7465720082868686611d23565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106111d2576111d2614ef6565b602090810291909101015260006105cd7f746255440000000000000000000000004d61746368456e74697479000000000083837e41030020200100000000000000000000000000000000000000000000000000611dd8565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061126057611260614ef6565b6020026020010181815250506110227f746255440000000000000000000000004d61746368456e74697479000000000060001b826000856040516020016112a991815260200190565b60408051601f198184030181529190527e41030020200100000000000000000000000000000000000000000000000000611e95565b60006102f6611f0b565b6112fa6112f483611f4a565b82611fe7565b5050565b604080516101a081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e08101829052610100810182905261012081018290526101408101829052610160810182905261018081019190915260006113768460000151612033565b90508060200151516000036113cd5760405162461bcd60e51b815260206004820152601560248201527f616374696f6e20646f6573206e6f742065786973740000000000000000000000604482015260640161068b565b805160038111156113e0576113e0614c43565b60ff1660010361148f57600081602001518060200190518101906114049190615126565b905061141f81866040015187606001518860200151886120e8565b151560c0880152158015608088015260e0870191909152611489576000620186a08660e0015161144f91906151d1565b61145c8760600151612527565b611466919061521b565b9050600081136114795760016101408701525b6114878660600151826125b9565b505b506114d7565b60405162461bcd60e51b815260206004820152601a60248201527f616374696f6e2074797065206e6f74207265636f676e697a6564000000000000604482015260640161068b565b509192915050565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061151557611515614ef6565b6020026020010181815250506110227f746255440000000000000000000000004d61746368456e74697479000000000060001b826002856040516020016112a991151560f81b815260010190565b60006115b3826000015183602001518460400151856060015186608001518760a001518860c001518960e001518a61010001518b61012001518c61014001518d61016001518e610180015161266d565b6040805160038082526080820190925291925060009160609183919060208201848036833701905050905087816000815181106115f2576115f2614ef6565b6020026020010181815250508660001b8160018151811061161557611615614ef6565b6020026020010181815250508560001b8160028151811061163857611638614ef6565b60209081029190910101526116707f6f745544000000000000000000000000416374696f6e4f7574636f6d6500000082868686611d23565b5050505050505050565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106116b3576116b3614ef6565b6020908102919091010152600061170c7f746255440000000000000000000000004d61746368456e7469747900000000008360027e41030020200100000000000000000000000000000000000000000000000000611dd8565b90506105cd8160f81c90565b600080600061172685610ea2565b905046617a690361173c57436040820152611743565b4260408201525b60008061174e61498d565b60005b8460c00151518110156117bb576117848560c00151828151811061177757611777614ef6565b60200260200101516126ba565b91508160e0015184611796919061523b565b935060008260a0015113156117b357826117af81614fa5565b9350505b600101611751565b506000805b8560a0015151811015611875578560a0015181815181106117e3576117e3614ef6565b602002602001015191506117f68261167a565b1561186d5761180482612762565b61180e908961523b565b975061181e8360e001518a6127f4565b611828908861523b565b965061183582600061122a565b61186d89838860c001518960c00151518d611850919061524e565b8151811061186057611860614ef6565b6020026020010151612811565b6001016117c0565b506000805b8660c0015151811015611a21578660c00151818151811061189d5761189d614ef6565b602002602001015191506118af610c53565b6001600160a01b031663fa1becc4836040518263ffffffff1660e01b81526004016118dc91815260200190565b602060405180830381865afa1580156118f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061191d9190614f0c565b15611a0e5761192b826126ba565b935060008460a001511315611a045787156119d057611948610c53565b6001600160a01b031663fda0ce5083611961888c615262565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815260048101929092526024820152604401600060405180830381600087803b1580156119b757600080fd5b505af11580156119cb573d6000803e3d6000fd5b505050505b6000891180156119e05750600085115b15611a04576119ef858a615262565b8460c001818151611a00919061523b565b9052505b611a0e82856129b0565b611a1982600061122a565b60010161187a565b50611a2c8a876110d8565b5050505050509250929050565b6060600060606000611a49611f0b565b9050306001600160a01b03821603611a7257611a66878787612a59565b93509350935050611b00565b6040517f419b58fd0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063419b58fd90611abb908a908a908a90600401615276565b600060405180830381865afa158015611ad8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611a669190810190615303565b93509350939050565b611b4a6040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b611b5384612b61565b6080860181905260608601829052604086018390526020860184905285856001811115611b8257611b82614c43565b6001811115611b9357611b93614c43565b8152505050505050611ba58383612bb1565b60c083015260a08201529392505050565b6060600080611bcc611bc785615366565b612c00565b91509150816000801b03611c32576040517ffdde54e20000000000000000000000000000000000000000000000000000000081527fffffffff0000000000000000000000000000000000000000000000000000000060003516600482015260240161068b565b6020840180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16821790526105cd8285612cc3565b60208301516022840151600091829160f091821c911c5b90969095509350505050565b60608585858585604051602001611ca29594939291906153b2565b604051602081830303815290604052905095945050505050565b6000611ce083516020028351602002606081901b603883901b838301171792915050565b9392505050565b6060611cf283612d9e565b611cfb83612d9e565b604051602001611d0c9291906153ed565b604051602081830303815290604052905092915050565b6000611d2d611f0b565b9050306001600160a01b03821603611d5157611d4c8686868686612dae565b610e68565b6040517f298314fb0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063298314fb90611d9e908990899089908990899060040161541c565b600060405180830381600087803b158015611db857600080fd5b505af1158015611dcc573d6000803e3d6000fd5b50505050505050505050565b600080611de3611f0b565b9050306001600160a01b03821603611e0957611e0186868686612dcb565b9150506105cd565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d5990611e5490899089908990899060040161546d565b602060405180830381865afa158015611e71573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e01919061549c565b6000611e9f611f0b565b9050306001600160a01b03821603611ebe57611d4c8686868686612e01565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae090611d9e90899089908990899089906004016154b5565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b031680611f45573391505090565b919050565b60408051600180825281830190925260009182919060208083019080368337019050509050826001600160a01b031660001b81600081518110611f8f57611f8f614ef6565b602090810291909101015260006105cd7f7462776f726c6400000000000000000053797374656d5265676973747279000083837e20010020000000000000000000000000000000000000000000000000000000611dd8565b611ff18282612e16565b6112fa57611ffe82612e74565b816040517fd787b73700000000000000000000000000000000000000000000000000000000815260040161068b9291906154fc565b60408051808201909152600081526060602082015260408051600180825281830190925260009160208083019080368337019050509050828160008151811061207e5761207e614ef6565b6020908102919091010152600080806120d77f74625544000000000000000000000000416374696f6e73000000000000000000857e01010101000000000000000000000000000000000000000000000000000000611a39565b925092509250610f83838383612fb1565b6000806000806120f6610c53565b6001600160a01b03166354f1f2db896040518263ffffffff1660e01b815260040161212391815260200190565b61010060405180830381865afa158015612141573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121659190615527565b90506000612171610c53565b6001600160a01b03166354f1f2db896040518263ffffffff1660e01b815260040161219e91815260200190565b61010060405180830381865afa1580156121bc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121e09190615527565b905060006121ec610c53565b6001600160a01b031663810c1dc1896040518263ffffffff1660e01b815260040161221991815260200190565b600060405180830381865afa158015612236573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261225e9190810190615596565b905060008260a00151131561250c576040517f4dddf8370000000000000000000000000000000000000000000000000000000081526004810188905260009073__$227e4555c1f608352b26068e438454dd8b$__90634dddf83790602401600060405180830381865af41580156122d9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612301919081019061564d565b90506123588160008151811061231957612319614ef6565b602002602001015167ffffffffffffffff168260018151811061233e5761233e614ef6565b602002602001015167ffffffffffffffff168e878761300e565b909650945085156124bf57620186a060008d60200151856060015161237d919061521b565b1361238957600161239d565b8c60200151846060015161239d919061521b565b6123a791906156e6565b8451620186a0906123ba90600290615262565b8460a001518560800151856002815181106123d7576123d7614ef6565b602002602001015167ffffffffffffffff166123f3919061524e565b11156124325784608001518460028151811061241157612411614ef6565b602002602001015167ffffffffffffffff1661242d919061524e565b612438565b8460a001515b8f5161244491906156fd565b61244e91906156fd565b612458919061571d565b612462919061521b565b965084156124ba576124a86040518060400160405280600581526020017f43524954210000000000000000000000000000000000000000000000000000008152506130a1565b6124b360028861571d565b9650600194505b612506565b6124fd6040518060400160405280600581526020017f4d495353210000000000000000000000000000000000000000000000000000008152506130a1565b60009650600095505b50612519565b6000955060009450600093505b505050955095509592505050565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061256057612560614ef6565b602090810291909101015260006105cd7f74625544000000000000000000000000537461747300000000000000000000008360057ee1080020200120202020200000000000000000000000000000000000000000611dd8565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106125ef576125ef614ef6565b6020026020010181815250506110227f746255440000000000000000000000005374617473000000000000000000000060001b8260058560405160200161263891815260200190565b60408051601f198184030181529190527ee1080020200120202020200000000000000000000000000000000000000000611e95565b60608d8d8d8d8d8d8d8d8d8d8d8d8d6040516020016126989d9c9b9a99989796959493929190615769565b60405160208183030381529060405290509d9c50505050505050505050505050565b6126c261498d565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106126f8576126f8614ef6565b6020908102919091010152600080806127517f7462554400000000000000000000000053746174730000000000000000000000857ee1080020200120202020200000000000000000000000000000000000000000611a39565b925092509250610f83838383613115565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061279b5761279b614ef6565b602090810291909101015260006105cd7f74625544000000000000000000000000537461747300000000000000000000008360067ee1080020200120202020200000000000000000000000000000000000000000611dd8565b60006128078366038d7ea4c680006156e6565b611ce0908361524e565b600061281b610c53565b6001600160a01b03166353d64640846040518263ffffffff1660e01b815260040161284891815260200190565b602060405180830381865afa158015612865573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612889919061549c565b905060006128968261318d565b8060200190518101906128a9919061585a565b905060005b8160c0015151811015610e685760006128e38360c0015183815181106128d6576128d6614ef6565b6020026020010151613202565b9050806128f3620186a08961524e565b11156129a757612901610c53565b6001600160a01b031663cd9caca2868560c00151858151811061292657612926614ef6565b60209081029190910101516040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526004810192909252602482015260016044820152606401600060405180830381600087803b15801561298e57600080fd5b505af11580156129a2573d6000803e3d6000fd5b505050505b506001016128ae565b60006129e2826000015183602001518460400151856060015186608001518760a001518860c001518960e00151613297565b604080516001808252818301909252919250600091606091839190602080830190803683370190505090508581600081518110612a2157612a21614ef6565b6020908102919091010152610e687f746255440000000000000000000000005374617473000000000000000000000082868686611d23565b6060600060606000612a6a856132d5565b9050612a778787836132f8565b93506000612a8486613331565b90508015612b5657612a96888861336e565b935066ffffffffffffff841667ffffffffffffffff811115612aba57612aba614a25565b6040519080825280601f01601f191660200182016040528015612ae4576020820181803683370190505b5092506020830160005b828160ff161015612b53576000612b068b8b84613381565b90506000612b23888460ff166028026038011c64ffffffffff1690565b9050612b328260008387613401565b612b3c818561523b565b935050508080612b4b90615922565b915050612aee565b50505b505093509350939050565b6000806000806000612b77866000016020015190565b60f81c6001811115612b8b57612b8b614c43565b602187015160418801516061890151608190990151929991989097509550909350915050565b6060806000603885901c64ffffffffff16612bd5612bd08684846134cd565b61355b565b935090508064ffffffffff606087901c1601612bf5612bd08684846134cd565b925050509250929050565b6040805160018082528183019092526000918291829160208083019080368337019050509050837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681600081518110612c5957612c59614ef6565b602090810291909101015260008080612cb27f7462776f726c6400000000000000000046756e6374696f6e53656c6563746f72857e24020020040000000000000000000000000000000000000000000000000000611a39565b9250925092506110cb83838361356c565b60606000612ccf6112de565b90506001600160a01b0381163003612d10576000612cf7612cee610e70565b60008787613578565b9350905080612d0957612d09836136b3565b50506102e6565b6040517f3ae7af080000000000000000000000000000000000000000000000000000000081526001600160a01b03821690633ae7af0890612d579087908790600401615941565b6000604051808303816000875af1158015612d76573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526105cd919081019061595a565b606081611ce081602060006136bb565b612dc48585858585612dbf8b61371b565b6137a0565b5050505050565b6000612df8612dda8686613ad9565b60ff858116601b0360080285901c16612df38587613b2f565b613b68565b95945050505050565b612dc48585612e108487613b2f565b85613bb9565b6000612e647f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff0000000000000000000000000000000085161783613e5d565b80611ce05750611ce08383613e5d565b606081601081901b6000612e8783613f26565b9050827fffffffffffffffffffffffffffff000000000000000000000000000000000000831615612ee257612edd7fffffffffffffffffffffffffffff0000000000000000000000000000000000008416613f3d565b612f19565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b7fffffffffffffffffffffffffffffffff00000000000000000000000000000000831615612f4f57612f4a83613f3d565b612f86565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b604051602001612f989392919061598f565b6040516020818303038152906040529350505050919050565b604080518082019091526000815260606020820152612fcf84613fe1565b81906003811115612fe257612fe2614c43565b90816003811115612ff557612ff5614c43565b9052506130028383613ffd565b60208201529392505050565b60008080620249f06130226103e88a61524e565b61303487602001518960400151614020565b61303e919061523b565b61304891906156e6565b90506000620186a085602001516103e88a613063919061524e565b61306d919061523b565b61307791906156e6565b9050808211935083156130955760026130908284615262565b101592505b50509550959350505050565b613112816040516024016130b59190615a1d565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f41304fac0000000000000000000000000000000000000000000000000000000017905261404d565b50565b61311d61498d565b61312684614056565b60e0890181905260c0890182905260a08901839052608089018490526060890185905288602081016040820188600281111561316457613164614c43565b600281111561317557613175614c43565b90529790975250505093909252509195945050505050565b60408051600180825281830190925260609160009190602080830190803683370190505090508260001b816000815181106131ca576131ca614ef6565b602090810291909101015260006105cd7f746255440000000000000000000000004d6f627300000000000000000000000083836140c4565b604080516001808252818301909252600091829190602080830190803683370190505090508260001b8160008151811061323e5761323e614ef6565b602090810291909101015260006105cd7f746255440000000000000000000000004974656d7300000000000000000000008360017e21020101200000000000000000000000000000000000000000000000000000611dd8565b606088888888888888886040516020016132b8989796959493929190615a30565b604051602081830303815290604052905098975050505050505050565b600060086132e560026020615a75565b6132ef91906156e6565b9190911c919050565b6060816000036133175750604080516020810190915260008152611ce0565b60006133238585613ad9565b9050612df881600085614183565b6000600860018061334460026020615a75565b61334e9190615a75565b6133589190615a75565b61336291906156e6565b8260ff911c1692915050565b6000611ce061337d84846141a6565b5490565b60008383604051602001613396929190615a88565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b8215613488576020831061342b57602083048401935060208381613427576134276151bb565b0692505b821561348857602083900360008184101561344e5750600019600884021c613458565b50600019600882021c5b8554600886021b8184511682198216178452508184116134795750506107e3565b50600194909401939182900391015b5b602082106134aa5783548152600190930192601f1990910190602001613489565b81156107e3576000600019600884021c8251865482191691161782525050505050565b6000818311806134dd5750835182115b1561351a578383836040517f23230fa300000000000000000000000000000000000000000000000000000000815260040161068b93929190615ac4565b60208401613528848261523b565b905060006135368585615a75565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60606000611ce083602060006141fc565b600080611c7b8561426b565b6000606060008061358886614280565b90925090506001600160a01b0382166135d957856135a587612e74565b6040517ffbf10ce600000000000000000000000000000000000000000000000000000000815260040161068b929190615941565b806135e8576135e88689614324565b8615613654577dffffffffffffffffffffffffffff0000000000000000000000000000000086167f6e7300000000000000000000000000000000000000000000000000000000000017600061363c8261432e565b90506136518261364c8b8461523b565b6143bf565b50505b60006136608760101b90565b7fffffffffffffffffffffffffffff00000000000000000000000000000000000016146136985761369388888488614473565b6136a4565b6136a4888884886144eb565b90999098509650505050505050565b805160208201fd5b825160609060006136cc85836156e6565b9050604051925060208301601f19603f83860101166040528184526000602088015b8482101561370f578051871b835291870191600191909101906020016136ee565b50505050509392505050565b60007f8b9d8c8b908d9affffffffffffffffffab9e9d939a8d00000000000000000000820161376a57507e60030220202000000000000000000000000000000000000000000000000000919050565b6102e66137977f746273746f72650000000000000000005461626c6573000000000000000000008461454c565b60206000613b68565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff000000000000000000000000000000000000000000000000000000000000160361382c57857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a98686868660405161381f9493929190615ae9565b60405180910390a2610e68565b600061383787614568565b905060005b815181101561391057600082828151811061385957613859614ef6565b602002602001015190506138856001826affffffffffffffffffffff19166145f190919063ffffffff16565b15613907576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c906138d4908c908c908c908c908c908c90600401615b33565b600060405180830381600087803b1580156138ee57600080fd5b505af1158015613902573d6000803e3d6000fd5b505050505b5060010161383c565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9878787876040516139479493929190615ae9565b60405180910390a2600061395b8888613ad9565b9050600060208701905061397382600089518461460f565b600061397e85613331565b1115613a025760006139908a8a6141a6565b878155905060208601915060008060005b6139aa88613331565b8160ff1610156139fd576139bf8d8d83613381565b92506139da8a8260ff166028026038011c64ffffffffff1690565b91506139e9836000848861460f565b6139f3828661523b565b94506001016139a1565b505050505b60005b8351811015611dcc576000848281518110613a2257613a22614ef6565b60200260200101519050613a4e6002826affffffffffffffffffffff19166145f190919063ffffffff16565b15613ad0576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90613a9d908e908e908e908e908e908e90600401615b33565b600060405180830381600087803b158015613ab757600080fd5b505af1158015613acb573d6000803e3d6000fd5b505050505b50600101613a05565b60008282604051602001613aee929190615a88565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff16811015613b6057613b5660ff601b83900360080287901c168361523b565b9150600101613b34565b509392505050565b600060208210613b8e57602082048401935060208281613b8a57613b8a6151bb565b0691505b508254600882021b602082900380841115613b60576001850154600882021c82179150509392505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff0000000000000000000000000000000000000000000000000000000000001603613c4357837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be848484604051613c3693929190615b8c565b60405180910390a26107e3565b6000613c4f8585613ad9565b90506000613c5c86614568565b905060005b8151811015613d31576000828281518110613c7e57613c7e614ef6565b60200260200101519050613caa6004826affffffffffffffffffffff19166145f190919063ffffffff16565b15613d28576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d90613cf5908b908b908b908b90600401615bbf565b600060405180830381600087803b158015613d0f57600080fd5b505af1158015613d23573d6000803e3d6000fd5b505050505b50600101613c61565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be868686604051613d6693929190615b8c565b60405180910390a2613d81828565ffffffffffff16856146ce565b60005b8151811015613e54576000828281518110613da157613da1614ef6565b60200260200101519050613dcd6008826affffffffffffffffffffff19166145f190919063ffffffff16565b15613e4b576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba872190613e18908b908b908b908b90600401615bbf565b600060405180830381600087803b158015613e3257600080fd5b505af1158015613e46573d6000803e3d6000fd5b505050505b50600101613d84565b50505050505050565b604080516002808252606082018352600092839291906020830190803683370190505090508381600081518110613e9657613e96614ef6565b602002602001018181525050826001600160a01b031660001b81600181518110613ec257613ec2614ef6565b60209081029190910101526000613f1a7f7462776f726c640000000000000000005265736f75726365416363657373000083837e01010001000000000000000000000000000000000000000000000000000000611dd8565b9050612df88160f81c90565b6000613f346070601061523b565b9190911b919050565b606060005b6010811015613fa2577fffffffffffffffffffffffffffffffff000000000000000000000000000000008316600882021b7fff000000000000000000000000000000000000000000000000000000000000001615613fa257600101613f42565b604080517fffffffffffffffffffffffffffffffff000000000000000000000000000000008516602082015281516030909101909152818152806105cd565b602081015160009060f81c60038111156102e6576102e6614c43565b60606000603884901c64ffffffffff16612df861401b8584846134cd565b6146e4565b600080821261403a57614033828461523b565b90506102e6565b61404382615bf8565b6140339084615a75565b61311281614764565b600080600080600080600080614070896000016020015190565b60408a015160608b0151919950975060f81c600281111561409357614093614c43565b60618a015160818b015160a18c015160c18d015160e1909d01519b9d9a9c939b929a91995097509195509350915050565b606060006140d0611f0b565b9050306001600160a01b038216036140f5576140ed858585614785565b915050611ce0565b6040517f1e7889770000000000000000000000000000000000000000000000000000000081526001600160a01b03821690631e7889779061413e90889088908890600401615c30565b600060405180830381865afa15801561415b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526140ed919081019061595a565b60405160208101601f19603f8484010116604052828252613b6085858584613401565b600082826040516020016141bb929190615a88565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b6060600061420a8560801c90565b90506fffffffffffffffffffffffffffffffff85166000858281614230576142306151bb565b04905060405193506020840160208202810160405281855260005b8281101561370f578451871c82529387019360209091019060010161424b565b602081015160408201516000905b9050915091565b604080516001808252818301909252600091829182916020808301908036833701905050905083816000815181106142ba576142ba614ef6565b6020908102919091010152600080806143137f7462776f726c6400000000000000000053797374656d73000000000000000000857e15020014010000000000000000000000000000000000000000000000000000612a59565b9250925092506110cb8383836147bf565b611ff182826147cb565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061436757614367614ef6565b602090810291909101015260006105cd7f7462776f726c6400000000000000000042616c616e636573000000000000000083837e20010020000000000000000000000000000000000000000000000000000000612dcb565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106143f5576143f5614ef6565b6020026020010181815250506110227f7462776f726c6400000000000000000042616c616e636573000000000000000060001b8260008560405160200161443e91815260200190565b60408051601f198184030181529190527e20010020000000000000000000000000000000000000000000000000000000612e01565b60006060836001600160a01b0316600061448e858989614829565b60405161449b9190615c5c565b60006040518083038185875af1925050503d80600081146144d8576040519150601f19603f3d011682016040523d82523d6000602084013e6144dd565b606091505b509097909650945050505050565b60006060836001600160a01b0316614504848888614829565b6040516145119190615c5c565b600060405180830381855af49150503d80600081146144d8576040519150601f19603f3d011682016040523d82523d6000602084013e6144dd565b6040805160208101849052908101829052600090606001613aee565b604080516001808252818301909252606091600091906020808301908036833701905050905082816000815181106145a2576145a2614ef6565b602090810291909101015260006145da7f746273746f726500000000000000000053746f7265486f6f6b730000000000008383614785565b90506105cd6145ec82600084516134cd565b614858565b60008160ff16826146028560581c90565b1660ff1614905092915050565b8215614689576020831061463957602083048401935060208381614635576146356151bb565b0692505b82156146895760208390036000600019600885021c1990506008850281811c91508351811c905081198754168282161787555081841161467a5750506107e3565b50600194909401939182900391015b5b602082106146ab5780518455600190930192601f199091019060200161468a565b81156107e3576000600019600884021c8554835182191691161785555050505050565b611022838383516146df8560200190565b61460f565b606060006146f28360801c90565b90506fffffffffffffffffffffffffffffffff83168067ffffffffffffffff81111561472057614720614a25565b6040519080825280601f01601f19166020018201604052801561474a576020820181803683370190505b5092506020830161475c838284614869565b505050919050565b80516a636f6e736f6c652e6c6f67602083016000808483855afa5050505050565b60606105cd614795858585613381565b60006147ba856147a5898961336e565b9060ff166028026038011c64ffffffffff1690565b614183565b600080611c7b856148b4565b60006148197f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617836148d0565b80611ce05750611ce083836148d0565b606083838360405160200161484093929190615c78565b60405160208183030381529060405290509392505050565b60606000611ce083601560006141fc565b5b60208110614889578251825260209283019290910190601f190161486a565b8060000361489657505050565b6000600019600883021c905080835116811985511617835250505050565b6020810151603482015160609190911c9060009060f81c614279565b60408051600280825260608201835260009283929190602083019080368337019050509050838160008151811061490957614909614ef6565b602002602001018181525050826001600160a01b031660001b8160018151811061493557614935614ef6565b60209081029190910101526000613f1a7f7462776f726c640000000000000000005265736f75726365416363657373000083837e01010001000000000000000000000000000000000000000000000000000000612dcb565b6040518061010001604052806000815260200160008152602001600060028111156149ba576149ba614c43565b815260200160008152602001600081526020016000815260200160008152602001600081525090565b6000602082840312156149f557600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114611ce057600080fd5b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715614a5e57614a5e614a25565b60405290565b60405160a0810167ffffffffffffffff81118282101715614a5e57614a5e614a25565b604051610100810167ffffffffffffffff81118282101715614a5e57614a5e614a25565b604051610120810167ffffffffffffffff81118282101715614a5e57614a5e614a25565b604051601f8201601f1916810167ffffffffffffffff81118282101715614af857614af8614a25565b604052919050565b600067ffffffffffffffff821115614b1a57614b1a614a25565b5060051b60200190565b600082601f830112614b3557600080fd5b81356020614b4a614b4583614b00565b614acf565b8083825260208201915060208460051b870101935086841115614b6c57600080fd5b602086015b84811015614b885780358352918301918301614b71565b509695505050505050565b803561ffff81168114611f4557600080fd5b60008060008060808587031215614bbb57600080fd5b843567ffffffffffffffff80821115614bd357600080fd5b614bdf88838901614b24565b95506020870135915080821115614bf557600080fd5b50614c0287828801614b24565b935050614c1160408601614b93565b9150614c1f60608601614b93565b905092959194509250565b600060208284031215614c3c57600080fd5b5035919050565b634e487b7160e01b600052602160045260246000fd5b60028110614c6957614c69614c43565b9052565b60008151808452602080850194506020840160005b83811015614c9e57815187529582019590820190600101614c82565b509495945050505050565b60208152614cbb602082018351614c59565b602082015160408201526040820151606082015260608201516080820152608082015160a0820152600060a083015160e060c0840152614cff610100840182614c6d565b905060c0840151601f198483030160e0850152612df88282614c6d565b600082601f830112614d2d57600080fd5b81356020614d3d614b4583614b00565b82815260079290921b84018101918181019086841115614d5c57600080fd5b8286015b84811015614b885760808189031215614d795760008081fd5b614d81614a3b565b8135815284820135858201526040808301359082015260608083013590820152835291830191608001614d60565b600080600060608486031215614dc457600080fd5b8335925060208401359150604084013567ffffffffffffffff811115614de957600080fd5b614df586828701614d1c565b9150509250925092565b600080600060608486031215614e1457600080fd5b833560028110614e2357600080fd5b9250602084013567ffffffffffffffff80821115614e4057600080fd5b614e4c87838801614b24565b93506040860135915080821115614e6257600080fd5b50614df586828701614b24565b6001600160a01b038116811461311257600080fd5b60008060408385031215614e9757600080fd5b8235614ea281614e6f565b9150602083013567ffffffffffffffff811115614ebe57600080fd5b614eca85828601614b24565b9150509250929050565b60008060408385031215614ee757600080fd5b50508035926020909101359150565b634e487b7160e01b600052603260045260246000fd5b600060208284031215614f1e57600080fd5b81518015158114611ce057600080fd5b600060208284031215614f4057600080fd5b8151611ce081614e6f565b614f558186614c59565b608060208201526000614f6b6080830186614c6d565b8281036040840152614f7d8186614c6d565b91505082606083015295945050505050565b634e487b7160e01b600052601160045260246000fd5b60006000198203614fb857614fb8614f8f565b5060010190565b60006040808301858452602060406020860152818651808452606093506060870191506020880160005b8281101561502057815180518552858101518686015287810151888601528601518685015260809093019290840190600101614fe9565b50919998505050505050505050565b6003811061311257613112614c43565b60005b8381101561505a578181015183820152602001615042565b50506000910152565b6000815180845261507b81602086016020860161503f565b601f01601f19169290920160200192915050565b83815261509b8361502f565b826020820152606060408201526000612df86060830184615063565b600082601f8301126150c857600080fd5b815160206150d8614b4583614b00565b8083825260208201915060208460051b8701019350868411156150fa57600080fd5b602086015b84811015614b8857805160ff811681146151195760008081fd5b83529183019183016150ff565b60006020828403121561513857600080fd5b815167ffffffffffffffff8082111561515057600080fd5b9083019060a0828603121561516457600080fd5b61516c614a64565b825181526020830151602082015260408301516040820152606083015160608201526080830151828111156151a057600080fd5b6151ac878286016150b7565b60808301525095945050505050565b634e487b7160e01b600052601260045260246000fd5b6000826151e0576151e06151bb565b60001983147f80000000000000000000000000000000000000000000000000000000000000008314161561521657615216614f8f565b500590565b8181036000831280158383131683831282161715610b9257610b92614f8f565b808201808211156102e6576102e6614f8f565b60008261525d5761525d6151bb565b500690565b600082615271576152716151bb565b500490565b83815260606020820152600061528f6060830185614c6d565b9050826040830152949350505050565b600082601f8301126152b057600080fd5b815167ffffffffffffffff8111156152ca576152ca614a25565b6152dd6020601f19601f84011601614acf565b8181528460208386010111156152f257600080fd5b6105cd82602083016020870161503f565b60008060006060848603121561531857600080fd5b835167ffffffffffffffff8082111561533057600080fd5b61533c8783880161529f565b945060208601519350604086015191508082111561535957600080fd5b50614df58682870161529f565b6000815160208301517fffffffff000000000000000000000000000000000000000000000000000000008082169350600483101561475c5760049290920360031b82901b161692915050565b6000600287106153c4576153c4614c43565b5060f89590951b8552600185019390935260218401919091526041830152606182015260810190565b600083516153ff81846020880161503f565b83519083019061541381836020880161503f565b01949350505050565b85815260a06020820152600061543560a0830187614c6d565b82810360408401526154478187615063565b905084606084015282810360808401526154618185615063565b98975050505050505050565b8481526080602082015260006154866080830186614c6d565b60ff949094166040830152506060015292915050565b6000602082840312156154ae57600080fd5b5051919050565b85815260a0602082015260006154ce60a0830187614c6d565b60ff8616604084015282810360608401526154e98186615063565b9150508260808301529695505050505050565b60408152600061550f6040830185615063565b90506001600160a01b03831660208301529392505050565b6000610100828403121561553a57600080fd5b615542614a87565b825181526020830151602082015260408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e08201528091505092915050565b6000602082840312156155a857600080fd5b815167ffffffffffffffff808211156155c057600080fd5b9083019061010082860312156155d557600080fd5b6155dd614a87565b825181526020830151828111156155f357600080fd5b6155ff878286016150b7565b60208301525060408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e082015280935050505092915050565b6000602080838503121561566057600080fd5b825167ffffffffffffffff8082111561567857600080fd5b818501915085601f83011261568c57600080fd5b815161569a614b4582614b00565b81815260059190911b830184019084810190888311156156b957600080fd5b938501935b8285101561546157845184811681146156d75760008081fd5b825293850193908501906156be565b80820281158282048414176102e6576102e6614f8f565b8082018281126000831280158216821582161715610c4b57610c4b614f8f565b808202600082127f80000000000000000000000000000000000000000000000000000000000000008414161561575557615755614f8f565b81810583148215176102e6576102e6614f8f565b8d81528c60208201528b60408201528a606082015289151560f81b608082015288151560f81b60818201526157a56082820189151560f81b9052565b8660838201528560a38201526157c260c3820186151560f81b9052565b92151560f81b60c484015260c583019190915260e5820152610105019a9950505050505050505050565b805160038110611f4557600080fd5b600082601f83011261580c57600080fd5b8151602061581c614b4583614b00565b8083825260208201915060208460051b87010193508684111561583e57600080fd5b602086015b84811015614b885780518352918301918301615843565b60006020828403121561586c57600080fd5b815167ffffffffffffffff8082111561588457600080fd5b90830190610120828603121561589957600080fd5b6158a1614aab565b82518152602083015160208201526158bb604084016157ec565b6040820152606083015160608201526080830151608082015260a083015160a082015260c0830151828111156158f057600080fd5b6158fc878286016157fb565b60c08301525060e083810151908201526101009283015192810192909252509392505050565b600060ff821660ff810361593857615938614f8f565b60010192915050565b8281526040602082015260006105cd6040830184615063565b60006020828403121561596c57600080fd5b815167ffffffffffffffff81111561598357600080fd5b6105cd8482850161529f565b7fffff0000000000000000000000000000000000000000000000000000000000008416815260007f3a0000000000000000000000000000000000000000000000000000000000000080600284015284516159f081600386016020890161503f565b808401905081600382015284519150615a1082600483016020880161503f565b0160040195945050505050565b602081526000611ce06020830184615063565b888152876020820152615a428761502f565b60f89690961b604087015260418601949094526061850192909252608184015260a183015260c182015260e10192915050565b818103818111156102e6576102e6614f8f565b8281526000602080830184516020860160005b82811015615ab757815184529284019290840190600101615a9b565b5091979650505050505050565b606081526000615ad76060830186615063565b60208301949094525060400152919050565b608081526000615afc6080830187614c6d565b8281036020840152615b0e8187615063565b90508460408401528281036060840152615b288185615063565b979650505050505050565b86815260c060208201526000615b4c60c0830188614c6d565b8281036040840152615b5e8188615063565b90508560608401528281036080840152615b788186615063565b9150508260a0830152979650505050505050565b606081526000615b9f6060830186614c6d565b65ffffffffffff851660208401528281036040840152610f838185615063565b848152608060208201526000615bd86080830186614c6d565b65ffffffffffff851660408401528281036060840152615b288185615063565b60007f80000000000000000000000000000000000000000000000000000000000000008203615c2957615c29614f8f565b5060000390565b838152606060208201526000615c496060830185614c6d565b905060ff83166040830152949350505050565b60008251615c6e81846020870161503f565b9190910192915050565b60008451615c8a81846020890161503f565b60609490941b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000169190930190815260148101919091526034019291505056fea264697066735822122064b7cf2073d75e67dfee76255729120efaf16f4cacec37a4d846ab9453a2f7b364736f6c63430008180033","sourceMap":"1281:16085:114:-:0;;;;;;;;;;;;;;;;;;;","linkReferences":{"src/libraries/LibChunks.sol":{"LibChunks":[{"start":8896,"length":20}]}}},"deployedBytecode":{"object":"0x6080604052600436106100c75760003560e01c8063aaa417b711610074578063c6ca743c1161004e578063c6ca743c146101fe578063e1af802c1461021e578063fc88ff631461023357600080fd5b8063aaa417b7146101b2578063b2467894146101d2578063bfea0b85146101f257600080fd5b806345ec9354116100a557806345ec93541461014e5780634dda27e81461017057806398d239b11461019d57600080fd5b806301ffc9a7146100cc578063119df25f14610101578063154510201461012e575b600080fd5b3480156100d857600080fd5b506100ec6100e73660046149e3565b610253565b60405190151581526020015b60405180910390f35b34801561010d57600080fd5b506101166102ec565b6040516001600160a01b0390911681526020016100f8565b34801561013a57600080fd5b506100ec610149366004614ba5565b6102fb565b34801561015a57600080fd5b5036601f1901355b6040519081526020016100f8565b34801561017c57600080fd5b5061019061018b366004614c2a565b6105d5565b6040516100f89190614ca9565b6101b06101ab366004614daf565b61061f565b005b3480156101be57600080fd5b506101626101cd366004614dff565b6107e9565b3480156101de57600080fd5b506100ec6101ed366004614e84565b610ac3565b3480156101b057600080fd5b34801561020a57600080fd5b506100ec610219366004614ed4565b610b99565b34801561022a57600080fd5b50610116610c53565b34801561023f57600080fd5b506101b061024e366004614daf565b610c5d565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee1270000000000000000000000000000000000000000000000000000000014806102e657507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b60006102f6610e70565b905090565b600160005b855181101561046057610311610c53565b6001600160a01b031663fa1becc487838151811061033157610331614ef6565b60200260200101516040518263ffffffff1660e01b815260040161035791815260200190565b602060405180830381865afa158015610374573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103989190614f0c565b6103a55760009150610460565b6103ad610c53565b6001600160a01b031663f48a39728783815181106103cd576103cd614ef6565b602002602001015186866040518463ffffffff1660e01b815260040161040a9392919092835261ffff918216602084015216604082015260600190565b602060405180830381865afa158015610427573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061044b9190614f0c565b6104585760009150610460565b600101610300565b5080156105cd5760005b84518110156105cb5761047b610c53565b6001600160a01b031663fa1becc486838151811061049b5761049b614ef6565b60200260200101516040518263ffffffff1660e01b81526004016104c191815260200190565b602060405180830381865afa1580156104de573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105029190614f0c565b1561051057600091506105cb565b610518610c53565b6001600160a01b031663f48a397286838151811061053857610538614ef6565b602002602001015186866040518463ffffffff1660e01b81526004016105759392919092835261ffff918216602084015216604082015260600190565b602060405180830381865afa158015610592573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105b69190614f0c565b6105c357600091506105cb565b60010161046a565b505b949350505050565b6106166040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b6102e682610ea2565b600061062a84610ea2565b9050806020015160001415801561064357506040810151155b6106945760405162461bcd60e51b815260206004820181905260248201527f434f4d4241542053595354454d3a20494e56414c494420454e434f554e54455260448201526064015b60405180910390fd5b80608001518160600151106106eb5760405162461bcd60e51b815260206004820181905260248201527f434f4d4241542053595354454d3a204558504952454420454e434f554e544552604482015260640161068b565b6106f36102ec565b6001600160a01b0316610704610c53565b6001600160a01b0316634f10aabc856040518263ffffffff1660e01b815260040161073191815260200190565b602060405180830381865afa15801561074e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107729190614f2e565b6001600160a01b031614801561078d575061078d8385610b99565b6107d95760405162461bcd60e51b815260206004820152601c60248201527f434f4d4241542053595354454d3a204e4f4e2d434f4d424154414e5400000000604482015260640161068b565b6107e38483610f8d565b50505050565b60006107fc6107f66102ec565b84610ac3565b6108485760405162461bcd60e51b815260206004820152601d60248201527f434f4d4241542053595354454d3a20494e56414c49442053454e444552000000604482015260640161068b565b60008061086e8560008151811061086157610861614ef6565b6020026020010151611027565b9150915085600181111561088457610884614c43565b60010361096c57610897858584846102fb565b6108e35760405162461bcd60e51b815260206004820152601a60248201527f434f4d4241542053595354454d3a20494e56414c494420505645000000000000604482015260640161068b565b60405142906108fc908890889088908590602001614f4b565b60405160208183030381529060405280519060200120935060006040518060e0016040528089600181111561093357610933614c43565b81526020018381526020016000815260200160008152602001600f815260200187815260200188815250905061096985826110d8565b50505b85600181111561097e5761097e614c43565b5060005b8451811015610a29576000801b6109b18683815181106109a4576109a4614ef6565b6020026020010151611199565b146109fe5760405162461bcd60e51b815260206004820152601e60248201527f434f4d4241542053595354454d3a20454e54495459204f434355504945440000604482015260640161068b565b610a21858281518110610a1357610a13614ef6565b60200260200101518561122a565b600101610982565b5060005b8551811015610ab9576000801b610a4f8783815181106109a4576109a4614ef6565b14610a9c5760405162461bcd60e51b815260206004820152601e60248201527f434f4d4241542053595354454d3a20454e54495459204f434355504945440000604482015260640161068b565b610ab1868281518110610a1357610a13614ef6565b600101610a2d565b5050509392505050565b6000805b8251811015610b9257610ad8610c53565b6001600160a01b0316634f10aabc848381518110610af857610af8614ef6565b60200260200101516040518263ffffffff1660e01b8152600401610b1e91815260200190565b602060405180830381865afa158015610b3b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b5f9190614f2e565b6001600160a01b0316846001600160a01b031603610b805760019150610b92565b80610b8a81614fa5565b915050610ac7565b5092915050565b600080610ba583610ea2565b905060005b8160c0015151811015610bf6578160c001518181518110610bcd57610bcd614ef6565b60200260200101518503610be45760019250610bf6565b80610bee81614fa5565b915050610baa565b5081610b925760005b8160a0015151811015610c4b578160a001518181518110610c2257610c22614ef6565b60200260200101518503610c395760019250610c4b565b80610c4381614fa5565b915050610bff565b505092915050565b60006102f66112de565b610c6e30610c696102ec565b6112e8565b6000610c7983610ea2565b905060005b8251811015610d71576000838281518110610c9b57610c9b614ef6565b602090810291909101810151604080516101a08101825281830151815260608084015182860152835192820192909252928201519083015260006080830181905260a0830181905260c0830181905260e083018190526101008301819052610120830181905261014083015243610160830152426101808301529150610d2181886112fe565b905080610140015115610d3d57610d3d816060015160016114df565b80610120015115610d5757610d57816040015160016114df565b610d678685606001518584611563565b5050600101610c7e565b5060008060005b8360a0015151811015610dc657610dab8460a001518281518110610d9e57610d9e614ef6565b602002602001015161167a565b15610dbe5782610dba81614fa5565b9350505b600101610d78565b5060005b8360c0015151811015610e0b57610df08460c001518281518110610d9e57610d9e614ef6565b15610e035781610dff81614fa5565b9250505b600101610dca565b508260c0015151811480610e2357508260a001515182145b80610e35575082608001518360600151145b15610e4b57610e448587611718565b5050610e68565b60608301805190610e5b82614fa5565b905250610e6885846110d8565b505050505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c80610e9f5750335b90565b610ee36040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110610f1957610f19614ef6565b602090810291909101015260008080610f727f74625544000000000000000000000000436f6d626174456e636f756e74657200857e81050201202020200000000000000000000000000000000000000000000000611a39565b925092509250610f83838383611b09565b9695505050505050565b6110228260018484604051602001610fa6929190614fbf565b60408051601f1981840301815290829052610fc593929160240161508f565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb2aa60a400000000000000000000000000000000000000000000000000000000179052611bb6565b505050565b6040805160018082528183019092526000918291829160208083019080368337019050509050838160008151811061106157611061614ef6565b6020908102919091010152600080806110ba7f74625544000000000000000000000000506f736974696f6e0000000000000000857e04020002020000000000000000000000000000000000000000000000000000611a39565b9250925092506110cb838383611c64565b9550955050505050915091565b60006110fb82600001518360200151846040015185606001518660800151611c87565b905060006111118360a001518460c00151611cbc565b905060006111278460a001518560c00151611ce7565b6040805160018082528183019092529192506000919060208083019080368337019050509050858160008151811061116157611161614ef6565b6020908102919091010152610e687f74625544000000000000000000000000436f6d626174456e636f756e7465720082868686611d23565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106111d2576111d2614ef6565b602090810291909101015260006105cd7f746255440000000000000000000000004d61746368456e74697479000000000083837e41030020200100000000000000000000000000000000000000000000000000611dd8565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061126057611260614ef6565b6020026020010181815250506110227f746255440000000000000000000000004d61746368456e74697479000000000060001b826000856040516020016112a991815260200190565b60408051601f198184030181529190527e41030020200100000000000000000000000000000000000000000000000000611e95565b60006102f6611f0b565b6112fa6112f483611f4a565b82611fe7565b5050565b604080516101a081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e08101829052610100810182905261012081018290526101408101829052610160810182905261018081019190915260006113768460000151612033565b90508060200151516000036113cd5760405162461bcd60e51b815260206004820152601560248201527f616374696f6e20646f6573206e6f742065786973740000000000000000000000604482015260640161068b565b805160038111156113e0576113e0614c43565b60ff1660010361148f57600081602001518060200190518101906114049190615126565b905061141f81866040015187606001518860200151886120e8565b151560c0880152158015608088015260e0870191909152611489576000620186a08660e0015161144f91906151d1565b61145c8760600151612527565b611466919061521b565b9050600081136114795760016101408701525b6114878660600151826125b9565b505b506114d7565b60405162461bcd60e51b815260206004820152601a60248201527f616374696f6e2074797065206e6f74207265636f676e697a6564000000000000604482015260640161068b565b509192915050565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061151557611515614ef6565b6020026020010181815250506110227f746255440000000000000000000000004d61746368456e74697479000000000060001b826002856040516020016112a991151560f81b815260010190565b60006115b3826000015183602001518460400151856060015186608001518760a001518860c001518960e001518a61010001518b61012001518c61014001518d61016001518e610180015161266d565b6040805160038082526080820190925291925060009160609183919060208201848036833701905050905087816000815181106115f2576115f2614ef6565b6020026020010181815250508660001b8160018151811061161557611615614ef6565b6020026020010181815250508560001b8160028151811061163857611638614ef6565b60209081029190910101526116707f6f745544000000000000000000000000416374696f6e4f7574636f6d6500000082868686611d23565b5050505050505050565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106116b3576116b3614ef6565b6020908102919091010152600061170c7f746255440000000000000000000000004d61746368456e7469747900000000008360027e41030020200100000000000000000000000000000000000000000000000000611dd8565b90506105cd8160f81c90565b600080600061172685610ea2565b905046617a690361173c57436040820152611743565b4260408201525b60008061174e61498d565b60005b8460c00151518110156117bb576117848560c00151828151811061177757611777614ef6565b60200260200101516126ba565b91508160e0015184611796919061523b565b935060008260a0015113156117b357826117af81614fa5565b9350505b600101611751565b506000805b8560a0015151811015611875578560a0015181815181106117e3576117e3614ef6565b602002602001015191506117f68261167a565b1561186d5761180482612762565b61180e908961523b565b975061181e8360e001518a6127f4565b611828908861523b565b965061183582600061122a565b61186d89838860c001518960c00151518d611850919061524e565b8151811061186057611860614ef6565b6020026020010151612811565b6001016117c0565b506000805b8660c0015151811015611a21578660c00151818151811061189d5761189d614ef6565b602002602001015191506118af610c53565b6001600160a01b031663fa1becc4836040518263ffffffff1660e01b81526004016118dc91815260200190565b602060405180830381865afa1580156118f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061191d9190614f0c565b15611a0e5761192b826126ba565b935060008460a001511315611a045787156119d057611948610c53565b6001600160a01b031663fda0ce5083611961888c615262565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815260048101929092526024820152604401600060405180830381600087803b1580156119b757600080fd5b505af11580156119cb573d6000803e3d6000fd5b505050505b6000891180156119e05750600085115b15611a04576119ef858a615262565b8460c001818151611a00919061523b565b9052505b611a0e82856129b0565b611a1982600061122a565b60010161187a565b50611a2c8a876110d8565b5050505050509250929050565b6060600060606000611a49611f0b565b9050306001600160a01b03821603611a7257611a66878787612a59565b93509350935050611b00565b6040517f419b58fd0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063419b58fd90611abb908a908a908a90600401615276565b600060405180830381865afa158015611ad8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611a669190810190615303565b93509350939050565b611b4a6040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b611b5384612b61565b6080860181905260608601829052604086018390526020860184905285856001811115611b8257611b82614c43565b6001811115611b9357611b93614c43565b8152505050505050611ba58383612bb1565b60c083015260a08201529392505050565b6060600080611bcc611bc785615366565b612c00565b91509150816000801b03611c32576040517ffdde54e20000000000000000000000000000000000000000000000000000000081527fffffffff0000000000000000000000000000000000000000000000000000000060003516600482015260240161068b565b6020840180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16821790526105cd8285612cc3565b60208301516022840151600091829160f091821c911c5b90969095509350505050565b60608585858585604051602001611ca29594939291906153b2565b604051602081830303815290604052905095945050505050565b6000611ce083516020028351602002606081901b603883901b838301171792915050565b9392505050565b6060611cf283612d9e565b611cfb83612d9e565b604051602001611d0c9291906153ed565b604051602081830303815290604052905092915050565b6000611d2d611f0b565b9050306001600160a01b03821603611d5157611d4c8686868686612dae565b610e68565b6040517f298314fb0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063298314fb90611d9e908990899089908990899060040161541c565b600060405180830381600087803b158015611db857600080fd5b505af1158015611dcc573d6000803e3d6000fd5b50505050505050505050565b600080611de3611f0b565b9050306001600160a01b03821603611e0957611e0186868686612dcb565b9150506105cd565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d5990611e5490899089908990899060040161546d565b602060405180830381865afa158015611e71573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e01919061549c565b6000611e9f611f0b565b9050306001600160a01b03821603611ebe57611d4c8686868686612e01565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae090611d9e90899089908990899089906004016154b5565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b031680611f45573391505090565b919050565b60408051600180825281830190925260009182919060208083019080368337019050509050826001600160a01b031660001b81600081518110611f8f57611f8f614ef6565b602090810291909101015260006105cd7f7462776f726c6400000000000000000053797374656d5265676973747279000083837e20010020000000000000000000000000000000000000000000000000000000611dd8565b611ff18282612e16565b6112fa57611ffe82612e74565b816040517fd787b73700000000000000000000000000000000000000000000000000000000815260040161068b9291906154fc565b60408051808201909152600081526060602082015260408051600180825281830190925260009160208083019080368337019050509050828160008151811061207e5761207e614ef6565b6020908102919091010152600080806120d77f74625544000000000000000000000000416374696f6e73000000000000000000857e01010101000000000000000000000000000000000000000000000000000000611a39565b925092509250610f83838383612fb1565b6000806000806120f6610c53565b6001600160a01b03166354f1f2db896040518263ffffffff1660e01b815260040161212391815260200190565b61010060405180830381865afa158015612141573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121659190615527565b90506000612171610c53565b6001600160a01b03166354f1f2db896040518263ffffffff1660e01b815260040161219e91815260200190565b61010060405180830381865afa1580156121bc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121e09190615527565b905060006121ec610c53565b6001600160a01b031663810c1dc1896040518263ffffffff1660e01b815260040161221991815260200190565b600060405180830381865afa158015612236573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261225e9190810190615596565b905060008260a00151131561250c576040517f4dddf8370000000000000000000000000000000000000000000000000000000081526004810188905260009073__$227e4555c1f608352b26068e438454dd8b$__90634dddf83790602401600060405180830381865af41580156122d9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612301919081019061564d565b90506123588160008151811061231957612319614ef6565b602002602001015167ffffffffffffffff168260018151811061233e5761233e614ef6565b602002602001015167ffffffffffffffff168e878761300e565b909650945085156124bf57620186a060008d60200151856060015161237d919061521b565b1361238957600161239d565b8c60200151846060015161239d919061521b565b6123a791906156e6565b8451620186a0906123ba90600290615262565b8460a001518560800151856002815181106123d7576123d7614ef6565b602002602001015167ffffffffffffffff166123f3919061524e565b11156124325784608001518460028151811061241157612411614ef6565b602002602001015167ffffffffffffffff1661242d919061524e565b612438565b8460a001515b8f5161244491906156fd565b61244e91906156fd565b612458919061571d565b612462919061521b565b965084156124ba576124a86040518060400160405280600581526020017f43524954210000000000000000000000000000000000000000000000000000008152506130a1565b6124b360028861571d565b9650600194505b612506565b6124fd6040518060400160405280600581526020017f4d495353210000000000000000000000000000000000000000000000000000008152506130a1565b60009650600095505b50612519565b6000955060009450600093505b505050955095509592505050565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061256057612560614ef6565b602090810291909101015260006105cd7f74625544000000000000000000000000537461747300000000000000000000008360057ee1080020200120202020200000000000000000000000000000000000000000611dd8565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106125ef576125ef614ef6565b6020026020010181815250506110227f746255440000000000000000000000005374617473000000000000000000000060001b8260058560405160200161263891815260200190565b60408051601f198184030181529190527ee1080020200120202020200000000000000000000000000000000000000000611e95565b60608d8d8d8d8d8d8d8d8d8d8d8d8d6040516020016126989d9c9b9a99989796959493929190615769565b60405160208183030381529060405290509d9c50505050505050505050505050565b6126c261498d565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106126f8576126f8614ef6565b6020908102919091010152600080806127517f7462554400000000000000000000000053746174730000000000000000000000857ee1080020200120202020200000000000000000000000000000000000000000611a39565b925092509250610f83838383613115565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061279b5761279b614ef6565b602090810291909101015260006105cd7f74625544000000000000000000000000537461747300000000000000000000008360067ee1080020200120202020200000000000000000000000000000000000000000611dd8565b60006128078366038d7ea4c680006156e6565b611ce0908361524e565b600061281b610c53565b6001600160a01b03166353d64640846040518263ffffffff1660e01b815260040161284891815260200190565b602060405180830381865afa158015612865573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612889919061549c565b905060006128968261318d565b8060200190518101906128a9919061585a565b905060005b8160c0015151811015610e685760006128e38360c0015183815181106128d6576128d6614ef6565b6020026020010151613202565b9050806128f3620186a08961524e565b11156129a757612901610c53565b6001600160a01b031663cd9caca2868560c00151858151811061292657612926614ef6565b60209081029190910101516040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526004810192909252602482015260016044820152606401600060405180830381600087803b15801561298e57600080fd5b505af11580156129a2573d6000803e3d6000fd5b505050505b506001016128ae565b60006129e2826000015183602001518460400151856060015186608001518760a001518860c001518960e00151613297565b604080516001808252818301909252919250600091606091839190602080830190803683370190505090508581600081518110612a2157612a21614ef6565b6020908102919091010152610e687f746255440000000000000000000000005374617473000000000000000000000082868686611d23565b6060600060606000612a6a856132d5565b9050612a778787836132f8565b93506000612a8486613331565b90508015612b5657612a96888861336e565b935066ffffffffffffff841667ffffffffffffffff811115612aba57612aba614a25565b6040519080825280601f01601f191660200182016040528015612ae4576020820181803683370190505b5092506020830160005b828160ff161015612b53576000612b068b8b84613381565b90506000612b23888460ff166028026038011c64ffffffffff1690565b9050612b328260008387613401565b612b3c818561523b565b935050508080612b4b90615922565b915050612aee565b50505b505093509350939050565b6000806000806000612b77866000016020015190565b60f81c6001811115612b8b57612b8b614c43565b602187015160418801516061890151608190990151929991989097509550909350915050565b6060806000603885901c64ffffffffff16612bd5612bd08684846134cd565b61355b565b935090508064ffffffffff606087901c1601612bf5612bd08684846134cd565b925050509250929050565b6040805160018082528183019092526000918291829160208083019080368337019050509050837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681600081518110612c5957612c59614ef6565b602090810291909101015260008080612cb27f7462776f726c6400000000000000000046756e6374696f6e53656c6563746f72857e24020020040000000000000000000000000000000000000000000000000000611a39565b9250925092506110cb83838361356c565b60606000612ccf6112de565b90506001600160a01b0381163003612d10576000612cf7612cee610e70565b60008787613578565b9350905080612d0957612d09836136b3565b50506102e6565b6040517f3ae7af080000000000000000000000000000000000000000000000000000000081526001600160a01b03821690633ae7af0890612d579087908790600401615941565b6000604051808303816000875af1158015612d76573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526105cd919081019061595a565b606081611ce081602060006136bb565b612dc48585858585612dbf8b61371b565b6137a0565b5050505050565b6000612df8612dda8686613ad9565b60ff858116601b0360080285901c16612df38587613b2f565b613b68565b95945050505050565b612dc48585612e108487613b2f565b85613bb9565b6000612e647f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff0000000000000000000000000000000085161783613e5d565b80611ce05750611ce08383613e5d565b606081601081901b6000612e8783613f26565b9050827fffffffffffffffffffffffffffff000000000000000000000000000000000000831615612ee257612edd7fffffffffffffffffffffffffffff0000000000000000000000000000000000008416613f3d565b612f19565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b7fffffffffffffffffffffffffffffffff00000000000000000000000000000000831615612f4f57612f4a83613f3d565b612f86565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b604051602001612f989392919061598f565b6040516020818303038152906040529350505050919050565b604080518082019091526000815260606020820152612fcf84613fe1565b81906003811115612fe257612fe2614c43565b90816003811115612ff557612ff5614c43565b9052506130028383613ffd565b60208201529392505050565b60008080620249f06130226103e88a61524e565b61303487602001518960400151614020565b61303e919061523b565b61304891906156e6565b90506000620186a085602001516103e88a613063919061524e565b61306d919061523b565b61307791906156e6565b9050808211935083156130955760026130908284615262565b101592505b50509550959350505050565b613112816040516024016130b59190615a1d565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f41304fac0000000000000000000000000000000000000000000000000000000017905261404d565b50565b61311d61498d565b61312684614056565b60e0890181905260c0890182905260a08901839052608089018490526060890185905288602081016040820188600281111561316457613164614c43565b600281111561317557613175614c43565b90529790975250505093909252509195945050505050565b60408051600180825281830190925260609160009190602080830190803683370190505090508260001b816000815181106131ca576131ca614ef6565b602090810291909101015260006105cd7f746255440000000000000000000000004d6f627300000000000000000000000083836140c4565b604080516001808252818301909252600091829190602080830190803683370190505090508260001b8160008151811061323e5761323e614ef6565b602090810291909101015260006105cd7f746255440000000000000000000000004974656d7300000000000000000000008360017e21020101200000000000000000000000000000000000000000000000000000611dd8565b606088888888888888886040516020016132b8989796959493929190615a30565b604051602081830303815290604052905098975050505050505050565b600060086132e560026020615a75565b6132ef91906156e6565b9190911c919050565b6060816000036133175750604080516020810190915260008152611ce0565b60006133238585613ad9565b9050612df881600085614183565b6000600860018061334460026020615a75565b61334e9190615a75565b6133589190615a75565b61336291906156e6565b8260ff911c1692915050565b6000611ce061337d84846141a6565b5490565b60008383604051602001613396929190615a88565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b8215613488576020831061342b57602083048401935060208381613427576134276151bb565b0692505b821561348857602083900360008184101561344e5750600019600884021c613458565b50600019600882021c5b8554600886021b8184511682198216178452508184116134795750506107e3565b50600194909401939182900391015b5b602082106134aa5783548152600190930192601f1990910190602001613489565b81156107e3576000600019600884021c8251865482191691161782525050505050565b6000818311806134dd5750835182115b1561351a578383836040517f23230fa300000000000000000000000000000000000000000000000000000000815260040161068b93929190615ac4565b60208401613528848261523b565b905060006135368585615a75565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60606000611ce083602060006141fc565b600080611c7b8561426b565b6000606060008061358886614280565b90925090506001600160a01b0382166135d957856135a587612e74565b6040517ffbf10ce600000000000000000000000000000000000000000000000000000000815260040161068b929190615941565b806135e8576135e88689614324565b8615613654577dffffffffffffffffffffffffffff0000000000000000000000000000000086167f6e7300000000000000000000000000000000000000000000000000000000000017600061363c8261432e565b90506136518261364c8b8461523b565b6143bf565b50505b60006136608760101b90565b7fffffffffffffffffffffffffffff00000000000000000000000000000000000016146136985761369388888488614473565b6136a4565b6136a4888884886144eb565b90999098509650505050505050565b805160208201fd5b825160609060006136cc85836156e6565b9050604051925060208301601f19603f83860101166040528184526000602088015b8482101561370f578051871b835291870191600191909101906020016136ee565b50505050509392505050565b60007f8b9d8c8b908d9affffffffffffffffffab9e9d939a8d00000000000000000000820161376a57507e60030220202000000000000000000000000000000000000000000000000000919050565b6102e66137977f746273746f72650000000000000000005461626c6573000000000000000000008461454c565b60206000613b68565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff000000000000000000000000000000000000000000000000000000000000160361382c57857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a98686868660405161381f9493929190615ae9565b60405180910390a2610e68565b600061383787614568565b905060005b815181101561391057600082828151811061385957613859614ef6565b602002602001015190506138856001826affffffffffffffffffffff19166145f190919063ffffffff16565b15613907576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c906138d4908c908c908c908c908c908c90600401615b33565b600060405180830381600087803b1580156138ee57600080fd5b505af1158015613902573d6000803e3d6000fd5b505050505b5060010161383c565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9878787876040516139479493929190615ae9565b60405180910390a2600061395b8888613ad9565b9050600060208701905061397382600089518461460f565b600061397e85613331565b1115613a025760006139908a8a6141a6565b878155905060208601915060008060005b6139aa88613331565b8160ff1610156139fd576139bf8d8d83613381565b92506139da8a8260ff166028026038011c64ffffffffff1690565b91506139e9836000848861460f565b6139f3828661523b565b94506001016139a1565b505050505b60005b8351811015611dcc576000848281518110613a2257613a22614ef6565b60200260200101519050613a4e6002826affffffffffffffffffffff19166145f190919063ffffffff16565b15613ad0576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90613a9d908e908e908e908e908e908e90600401615b33565b600060405180830381600087803b158015613ab757600080fd5b505af1158015613acb573d6000803e3d6000fd5b505050505b50600101613a05565b60008282604051602001613aee929190615a88565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff16811015613b6057613b5660ff601b83900360080287901c168361523b565b9150600101613b34565b509392505050565b600060208210613b8e57602082048401935060208281613b8a57613b8a6151bb565b0691505b508254600882021b602082900380841115613b60576001850154600882021c82179150509392505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff0000000000000000000000000000000000000000000000000000000000001603613c4357837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be848484604051613c3693929190615b8c565b60405180910390a26107e3565b6000613c4f8585613ad9565b90506000613c5c86614568565b905060005b8151811015613d31576000828281518110613c7e57613c7e614ef6565b60200260200101519050613caa6004826affffffffffffffffffffff19166145f190919063ffffffff16565b15613d28576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d90613cf5908b908b908b908b90600401615bbf565b600060405180830381600087803b158015613d0f57600080fd5b505af1158015613d23573d6000803e3d6000fd5b505050505b50600101613c61565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be868686604051613d6693929190615b8c565b60405180910390a2613d81828565ffffffffffff16856146ce565b60005b8151811015613e54576000828281518110613da157613da1614ef6565b60200260200101519050613dcd6008826affffffffffffffffffffff19166145f190919063ffffffff16565b15613e4b576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba872190613e18908b908b908b908b90600401615bbf565b600060405180830381600087803b158015613e3257600080fd5b505af1158015613e46573d6000803e3d6000fd5b505050505b50600101613d84565b50505050505050565b604080516002808252606082018352600092839291906020830190803683370190505090508381600081518110613e9657613e96614ef6565b602002602001018181525050826001600160a01b031660001b81600181518110613ec257613ec2614ef6565b60209081029190910101526000613f1a7f7462776f726c640000000000000000005265736f75726365416363657373000083837e01010001000000000000000000000000000000000000000000000000000000611dd8565b9050612df88160f81c90565b6000613f346070601061523b565b9190911b919050565b606060005b6010811015613fa2577fffffffffffffffffffffffffffffffff000000000000000000000000000000008316600882021b7fff000000000000000000000000000000000000000000000000000000000000001615613fa257600101613f42565b604080517fffffffffffffffffffffffffffffffff000000000000000000000000000000008516602082015281516030909101909152818152806105cd565b602081015160009060f81c60038111156102e6576102e6614c43565b60606000603884901c64ffffffffff16612df861401b8584846134cd565b6146e4565b600080821261403a57614033828461523b565b90506102e6565b61404382615bf8565b6140339084615a75565b61311281614764565b600080600080600080600080614070896000016020015190565b60408a015160608b0151919950975060f81c600281111561409357614093614c43565b60618a015160818b015160a18c015160c18d015160e1909d01519b9d9a9c939b929a91995097509195509350915050565b606060006140d0611f0b565b9050306001600160a01b038216036140f5576140ed858585614785565b915050611ce0565b6040517f1e7889770000000000000000000000000000000000000000000000000000000081526001600160a01b03821690631e7889779061413e90889088908890600401615c30565b600060405180830381865afa15801561415b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526140ed919081019061595a565b60405160208101601f19603f8484010116604052828252613b6085858584613401565b600082826040516020016141bb929190615a88565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b6060600061420a8560801c90565b90506fffffffffffffffffffffffffffffffff85166000858281614230576142306151bb565b04905060405193506020840160208202810160405281855260005b8281101561370f578451871c82529387019360209091019060010161424b565b602081015160408201516000905b9050915091565b604080516001808252818301909252600091829182916020808301908036833701905050905083816000815181106142ba576142ba614ef6565b6020908102919091010152600080806143137f7462776f726c6400000000000000000053797374656d73000000000000000000857e15020014010000000000000000000000000000000000000000000000000000612a59565b9250925092506110cb8383836147bf565b611ff182826147cb565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061436757614367614ef6565b602090810291909101015260006105cd7f7462776f726c6400000000000000000042616c616e636573000000000000000083837e20010020000000000000000000000000000000000000000000000000000000612dcb565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106143f5576143f5614ef6565b6020026020010181815250506110227f7462776f726c6400000000000000000042616c616e636573000000000000000060001b8260008560405160200161443e91815260200190565b60408051601f198184030181529190527e20010020000000000000000000000000000000000000000000000000000000612e01565b60006060836001600160a01b0316600061448e858989614829565b60405161449b9190615c5c565b60006040518083038185875af1925050503d80600081146144d8576040519150601f19603f3d011682016040523d82523d6000602084013e6144dd565b606091505b509097909650945050505050565b60006060836001600160a01b0316614504848888614829565b6040516145119190615c5c565b600060405180830381855af49150503d80600081146144d8576040519150601f19603f3d011682016040523d82523d6000602084013e6144dd565b6040805160208101849052908101829052600090606001613aee565b604080516001808252818301909252606091600091906020808301908036833701905050905082816000815181106145a2576145a2614ef6565b602090810291909101015260006145da7f746273746f726500000000000000000053746f7265486f6f6b730000000000008383614785565b90506105cd6145ec82600084516134cd565b614858565b60008160ff16826146028560581c90565b1660ff1614905092915050565b8215614689576020831061463957602083048401935060208381614635576146356151bb565b0692505b82156146895760208390036000600019600885021c1990506008850281811c91508351811c905081198754168282161787555081841161467a5750506107e3565b50600194909401939182900391015b5b602082106146ab5780518455600190930192601f199091019060200161468a565b81156107e3576000600019600884021c8554835182191691161785555050505050565b611022838383516146df8560200190565b61460f565b606060006146f28360801c90565b90506fffffffffffffffffffffffffffffffff83168067ffffffffffffffff81111561472057614720614a25565b6040519080825280601f01601f19166020018201604052801561474a576020820181803683370190505b5092506020830161475c838284614869565b505050919050565b80516a636f6e736f6c652e6c6f67602083016000808483855afa5050505050565b60606105cd614795858585613381565b60006147ba856147a5898961336e565b9060ff166028026038011c64ffffffffff1690565b614183565b600080611c7b856148b4565b60006148197f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617836148d0565b80611ce05750611ce083836148d0565b606083838360405160200161484093929190615c78565b60405160208183030381529060405290509392505050565b60606000611ce083601560006141fc565b5b60208110614889578251825260209283019290910190601f190161486a565b8060000361489657505050565b6000600019600883021c905080835116811985511617835250505050565b6020810151603482015160609190911c9060009060f81c614279565b60408051600280825260608201835260009283929190602083019080368337019050509050838160008151811061490957614909614ef6565b602002602001018181525050826001600160a01b031660001b8160018151811061493557614935614ef6565b60209081029190910101526000613f1a7f7462776f726c640000000000000000005265736f75726365416363657373000083837e01010001000000000000000000000000000000000000000000000000000000612dcb565b6040518061010001604052806000815260200160008152602001600060028111156149ba576149ba614c43565b815260200160008152602001600081526020016000815260200160008152602001600081525090565b6000602082840312156149f557600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114611ce057600080fd5b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715614a5e57614a5e614a25565b60405290565b60405160a0810167ffffffffffffffff81118282101715614a5e57614a5e614a25565b604051610100810167ffffffffffffffff81118282101715614a5e57614a5e614a25565b604051610120810167ffffffffffffffff81118282101715614a5e57614a5e614a25565b604051601f8201601f1916810167ffffffffffffffff81118282101715614af857614af8614a25565b604052919050565b600067ffffffffffffffff821115614b1a57614b1a614a25565b5060051b60200190565b600082601f830112614b3557600080fd5b81356020614b4a614b4583614b00565b614acf565b8083825260208201915060208460051b870101935086841115614b6c57600080fd5b602086015b84811015614b885780358352918301918301614b71565b509695505050505050565b803561ffff81168114611f4557600080fd5b60008060008060808587031215614bbb57600080fd5b843567ffffffffffffffff80821115614bd357600080fd5b614bdf88838901614b24565b95506020870135915080821115614bf557600080fd5b50614c0287828801614b24565b935050614c1160408601614b93565b9150614c1f60608601614b93565b905092959194509250565b600060208284031215614c3c57600080fd5b5035919050565b634e487b7160e01b600052602160045260246000fd5b60028110614c6957614c69614c43565b9052565b60008151808452602080850194506020840160005b83811015614c9e57815187529582019590820190600101614c82565b509495945050505050565b60208152614cbb602082018351614c59565b602082015160408201526040820151606082015260608201516080820152608082015160a0820152600060a083015160e060c0840152614cff610100840182614c6d565b905060c0840151601f198483030160e0850152612df88282614c6d565b600082601f830112614d2d57600080fd5b81356020614d3d614b4583614b00565b82815260079290921b84018101918181019086841115614d5c57600080fd5b8286015b84811015614b885760808189031215614d795760008081fd5b614d81614a3b565b8135815284820135858201526040808301359082015260608083013590820152835291830191608001614d60565b600080600060608486031215614dc457600080fd5b8335925060208401359150604084013567ffffffffffffffff811115614de957600080fd5b614df586828701614d1c565b9150509250925092565b600080600060608486031215614e1457600080fd5b833560028110614e2357600080fd5b9250602084013567ffffffffffffffff80821115614e4057600080fd5b614e4c87838801614b24565b93506040860135915080821115614e6257600080fd5b50614df586828701614b24565b6001600160a01b038116811461311257600080fd5b60008060408385031215614e9757600080fd5b8235614ea281614e6f565b9150602083013567ffffffffffffffff811115614ebe57600080fd5b614eca85828601614b24565b9150509250929050565b60008060408385031215614ee757600080fd5b50508035926020909101359150565b634e487b7160e01b600052603260045260246000fd5b600060208284031215614f1e57600080fd5b81518015158114611ce057600080fd5b600060208284031215614f4057600080fd5b8151611ce081614e6f565b614f558186614c59565b608060208201526000614f6b6080830186614c6d565b8281036040840152614f7d8186614c6d565b91505082606083015295945050505050565b634e487b7160e01b600052601160045260246000fd5b60006000198203614fb857614fb8614f8f565b5060010190565b60006040808301858452602060406020860152818651808452606093506060870191506020880160005b8281101561502057815180518552858101518686015287810151888601528601518685015260809093019290840190600101614fe9565b50919998505050505050505050565b6003811061311257613112614c43565b60005b8381101561505a578181015183820152602001615042565b50506000910152565b6000815180845261507b81602086016020860161503f565b601f01601f19169290920160200192915050565b83815261509b8361502f565b826020820152606060408201526000612df86060830184615063565b600082601f8301126150c857600080fd5b815160206150d8614b4583614b00565b8083825260208201915060208460051b8701019350868411156150fa57600080fd5b602086015b84811015614b8857805160ff811681146151195760008081fd5b83529183019183016150ff565b60006020828403121561513857600080fd5b815167ffffffffffffffff8082111561515057600080fd5b9083019060a0828603121561516457600080fd5b61516c614a64565b825181526020830151602082015260408301516040820152606083015160608201526080830151828111156151a057600080fd5b6151ac878286016150b7565b60808301525095945050505050565b634e487b7160e01b600052601260045260246000fd5b6000826151e0576151e06151bb565b60001983147f80000000000000000000000000000000000000000000000000000000000000008314161561521657615216614f8f565b500590565b8181036000831280158383131683831282161715610b9257610b92614f8f565b808201808211156102e6576102e6614f8f565b60008261525d5761525d6151bb565b500690565b600082615271576152716151bb565b500490565b83815260606020820152600061528f6060830185614c6d565b9050826040830152949350505050565b600082601f8301126152b057600080fd5b815167ffffffffffffffff8111156152ca576152ca614a25565b6152dd6020601f19601f84011601614acf565b8181528460208386010111156152f257600080fd5b6105cd82602083016020870161503f565b60008060006060848603121561531857600080fd5b835167ffffffffffffffff8082111561533057600080fd5b61533c8783880161529f565b945060208601519350604086015191508082111561535957600080fd5b50614df58682870161529f565b6000815160208301517fffffffff000000000000000000000000000000000000000000000000000000008082169350600483101561475c5760049290920360031b82901b161692915050565b6000600287106153c4576153c4614c43565b5060f89590951b8552600185019390935260218401919091526041830152606182015260810190565b600083516153ff81846020880161503f565b83519083019061541381836020880161503f565b01949350505050565b85815260a06020820152600061543560a0830187614c6d565b82810360408401526154478187615063565b905084606084015282810360808401526154618185615063565b98975050505050505050565b8481526080602082015260006154866080830186614c6d565b60ff949094166040830152506060015292915050565b6000602082840312156154ae57600080fd5b5051919050565b85815260a0602082015260006154ce60a0830187614c6d565b60ff8616604084015282810360608401526154e98186615063565b9150508260808301529695505050505050565b60408152600061550f6040830185615063565b90506001600160a01b03831660208301529392505050565b6000610100828403121561553a57600080fd5b615542614a87565b825181526020830151602082015260408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e08201528091505092915050565b6000602082840312156155a857600080fd5b815167ffffffffffffffff808211156155c057600080fd5b9083019061010082860312156155d557600080fd5b6155dd614a87565b825181526020830151828111156155f357600080fd5b6155ff878286016150b7565b60208301525060408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e082015280935050505092915050565b6000602080838503121561566057600080fd5b825167ffffffffffffffff8082111561567857600080fd5b818501915085601f83011261568c57600080fd5b815161569a614b4582614b00565b81815260059190911b830184019084810190888311156156b957600080fd5b938501935b8285101561546157845184811681146156d75760008081fd5b825293850193908501906156be565b80820281158282048414176102e6576102e6614f8f565b8082018281126000831280158216821582161715610c4b57610c4b614f8f565b808202600082127f80000000000000000000000000000000000000000000000000000000000000008414161561575557615755614f8f565b81810583148215176102e6576102e6614f8f565b8d81528c60208201528b60408201528a606082015289151560f81b608082015288151560f81b60818201526157a56082820189151560f81b9052565b8660838201528560a38201526157c260c3820186151560f81b9052565b92151560f81b60c484015260c583019190915260e5820152610105019a9950505050505050505050565b805160038110611f4557600080fd5b600082601f83011261580c57600080fd5b8151602061581c614b4583614b00565b8083825260208201915060208460051b87010193508684111561583e57600080fd5b602086015b84811015614b885780518352918301918301615843565b60006020828403121561586c57600080fd5b815167ffffffffffffffff8082111561588457600080fd5b90830190610120828603121561589957600080fd5b6158a1614aab565b82518152602083015160208201526158bb604084016157ec565b6040820152606083015160608201526080830151608082015260a083015160a082015260c0830151828111156158f057600080fd5b6158fc878286016157fb565b60c08301525060e083810151908201526101009283015192810192909252509392505050565b600060ff821660ff810361593857615938614f8f565b60010192915050565b8281526040602082015260006105cd6040830184615063565b60006020828403121561596c57600080fd5b815167ffffffffffffffff81111561598357600080fd5b6105cd8482850161529f565b7fffff0000000000000000000000000000000000000000000000000000000000008416815260007f3a0000000000000000000000000000000000000000000000000000000000000080600284015284516159f081600386016020890161503f565b808401905081600382015284519150615a1082600483016020880161503f565b0160040195945050505050565b602081526000611ce06020830184615063565b888152876020820152615a428761502f565b60f89690961b604087015260418601949094526061850192909252608184015260a183015260c182015260e10192915050565b818103818111156102e6576102e6614f8f565b8281526000602080830184516020860160005b82811015615ab757815184529284019290840190600101615a9b565b5091979650505050505050565b606081526000615ad76060830186615063565b60208301949094525060400152919050565b608081526000615afc6080830187614c6d565b8281036020840152615b0e8187615063565b90508460408401528281036060840152615b288185615063565b979650505050505050565b86815260c060208201526000615b4c60c0830188614c6d565b8281036040840152615b5e8188615063565b90508560608401528281036080840152615b788186615063565b9150508260a0830152979650505050505050565b606081526000615b9f6060830186614c6d565b65ffffffffffff851660208401528281036040840152610f838185615063565b848152608060208201526000615bd86080830186614c6d565b65ffffffffffff851660408401528281036060840152615b288185615063565b60007f80000000000000000000000000000000000000000000000000000000000000008203615c2957615c29614f8f565b5060000390565b838152606060208201526000615c496060830185614c6d565b905060ff83166040830152949350505050565b60008251615c6e81846020870161503f565b9190910192915050565b60008451615c8a81846020890161503f565b60609490941b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000169190930190815260148101919091526034019291505056fea264697066735822122064b7cf2073d75e67dfee76255729120efaf16f4cacec37a4d846ab9453a2f7b364736f6c63430008180033","sourceMap":"1281:16085:114:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2331:198:52;;;;;;;;;;-1:-1:-1;2331:198:52;;;;;:::i;:::-;;:::i;:::-;;;516:14:116;;509:22;491:41;;479:2;464:18;2331:198:52;;;;;;;;1262:113;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;707:55:116;;;689:74;;677:2;662:18;1262:113:52;543:226:116;3032:1020:114;;;;;;;;;;-1:-1:-1;3032:1020:114;;;;;:::i;:::-;;:::i;1616:110:52:-;;;;;;;;;;-1:-1:-1;3800:14:52;-1:-1:-1;;3796:25:52;3783:39;1616:110;;;4251:25:116;;;4239:2;4224:18;1616:110:52;4105:177:116;12470:163:114;;;;;;;;;;-1:-1:-1;12470:163:114;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;4226:630::-;;;;;;:::i;:::-;;:::i;:::-;;1487:1539;;;;;;;;;;-1:-1:-1;1487:1539:114;;;;;:::i;:::-;;:::i;5653:391::-;;;;;;;;;;-1:-1:-1;5653:391:114;;;;;:::i;:::-;;:::i;13579:42::-;;;;;;;;;4862:785;;;;;;;;;;-1:-1:-1;4862:785:114;;;;;:::i;:::-;;:::i;1942:98:52:-;;;;;;;;;;;;;:::i;6050:2443:114:-;;;;;;;;;;-1:-1:-1;6050:2443:114;;;;;:::i;:::-;;:::i;2331:198:52:-;2407:4;2426:54;;;2441:39;2426:54;;:98;;-1:-1:-1;2484:40:52;;;2499:25;2484:40;2426:98;2419:105;2331:198;-1:-1:-1;;2331:198:52:o;1262:113::-;1305:14;1334:36;:34;:36::i;:::-;1327:43;;1262:113;:::o;3032:1020:114:-;3219:4;3173:16;3233:350;3253:9;:16;3249:1;:20;3233:350;;;3302:8;:6;:8::i;:::-;-1:-1:-1;;;;;3295:39:114;;3335:9;3345:1;3335:12;;;;;;;;:::i;:::-;;;;;;;3295:53;;;;;;;;;;;;;4251:25:116;;4239:2;4224:18;;4105:177;3295:53:114;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3290:135;;3382:5;3368:19;;3405:5;;3290:135;3450:8;:6;:8::i;:::-;-1:-1:-1;;;;;3443:33:114;;3477:9;3487:1;3477:12;;;;;;;;:::i;:::-;;;;;;;3491:1;3494;3443:53;;;;;;;;;;;;;;;;10898:25:116;;;10942:6;10984:15;;;10979:2;10964:18;;10957:43;11036:15;11031:2;11016:18;;11009:43;10886:2;10871:18;;10700:358;3443:53:114;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3438:135;;3530:5;3516:19;;3553:5;;3438:135;3271:3;;3233:350;;;;3596:11;3592:426;;;3628:9;3623:385;3643:9;:16;3639:1;:20;3623:385;;;3695:8;:6;:8::i;:::-;-1:-1:-1;;;;;3688:39:114;;3728:9;3738:1;3728:12;;;;;;;;:::i;:::-;;;;;;;3688:53;;;;;;;;;;;;;4251:25:116;;4239:2;4224:18;;4105:177;3688:53:114;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3684:146;;;3779:5;3765:19;;3806:5;;3684:146;3859:8;:6;:8::i;:::-;-1:-1:-1;;;;;3852:33:114;;3886:9;3896:1;3886:12;;;;;;;;:::i;:::-;;;;;;;3900:1;3903;3852:53;;;;;;;;;;;;;;;;10898:25:116;;;10942:6;10984:15;;;10979:2;10964:18;;10957:43;11036:15;11031:2;11016:18;;11009:43;10886:2;10871:18;;10700:358;3852:53:114;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3847:147;;3943:5;3929:19;;3970:5;;3847:147;3661:3;;3623:385;;;;3592:426;3032:1020;;;;;;:::o;12470:163::-;12534:41;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12534:41:114;12594:32;12614:11;12594:19;:32::i;4226:630::-;4332:40;4375:32;4395:11;4375:19;:32::i;:::-;4332:75;;4425:13;:19;;;4448:1;4425:24;;:50;;;;-1:-1:-1;4453:17:114;;;;:22;4425:50;4417:95;;;;-1:-1:-1;;;4417:95:114;;11265:2:116;4417:95:114;;;11247:21:116;;;11284:18;;;11277:30;11343:34;11323:18;;;11316:62;11395:18;;4417:95:114;;;;;;;;;4558:13;:22;;;4530:13;:25;;;:50;4522:95;;;;-1:-1:-1;;;4522:95:114;;11626:2:116;4522:95:114;;;11608:21:116;;;11645:18;;;11638:30;11704:34;11684:18;;;11677:62;11756:18;;4522:95:114;11424:356:116;4522:95:114;4698:12;:10;:12::i;:::-;-1:-1:-1;;;;;4648:62:114;4655:8;:6;:8::i;:::-;-1:-1:-1;;;;;4648:36:114;;4685:8;4648:46;;;;;;;;;;;;;4251:25:116;;4239:2;4224:18;;4105:177;4648:46:114;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;4648:62:114;;:102;;;;;4714:36;4728:8;4738:11;4714:13;:36::i;:::-;4627:177;;;;-1:-1:-1;;;4627:177:114;;12243:2:116;4627:177:114;;;12225:21:116;12282:2;12262:18;;;12255:30;12321;12301:18;;;12294:58;12369:18;;4627:177:114;12041:352:116;4627:177:114;4814:35;4828:11;4841:7;4814:13;:35::i;:::-;4322:534;4226:630;;;:::o;1487:1539::-;1625:19;1668:38;1682:12;:10;:12::i;:::-;1696:9;1668:13;:38::i;:::-;1660:80;;;;-1:-1:-1;;;1660:80:114;;12600:2:116;1660:80:114;;;12582:21:116;12639:2;12619:18;;;12612:30;12678:31;12658:18;;;12651:59;12727:18;;1660:80:114;12398:353:116;1660:80:114;1751:8;1761;1773:26;1786:9;1796:1;1786:12;;;;;;;;:::i;:::-;;;;;;;1773;:26::i;:::-;1750:49;;;;1822:13;1814:22;;;;;;;;:::i;:::-;1840:1;1814:27;1810:686;;1865:38;1876:9;1887;1898:1;1901;1865:10;:38::i;:::-;1857:77;;;;-1:-1:-1;;;1857:77:114;;12958:2:116;1857:77:114;;;12940:21:116;12997:2;12977:18;;;12970:30;13036:28;13016:18;;;13009:56;13082:18;;1857:77:114;12756:350:116;1857:77:114;2021:58;;1968:15;;2021:58;;2032:13;;2047:9;;2058;;1968:15;;2021:58;;;:::i;:::-;;;;;;;;;;;;;2011:69;;;;;;1997:83;;2094:37;2134:292;;;;;;;;2187:13;2134:292;;;;;;;;:::i;:::-;;;;;2225:9;2134:292;;;;2257:1;2134:292;;;;2289:1;2134:292;;;;403:2:0;2134:292:114;;;;2364:9;2134:292;;;;2402:9;2134:292;;;2094:332;;2441:44;2461:11;2474:10;2441:19;:44::i;:::-;1843:653;;1810:686;2515:13;2509:20;;;;;;;;:::i;:::-;:25;2552:9;2547:232;2567:9;:16;2563:1;:20;2547:232;;;2664:1;2656:10;;2612:40;2639:9;2649:1;2639:12;;;;;;;;:::i;:::-;;;;;;;2612:26;:40::i;:::-;:54;2604:97;;;;-1:-1:-1;;;2604:97:114;;14474:2:116;2604:97:114;;;14456:21:116;14513:2;14493:18;;;14486:30;14552:32;14532:18;;;14525:60;14602:18;;2604:97:114;14272:354:116;2604:97:114;2715:53;2742:9;2752:1;2742:12;;;;;;;;:::i;:::-;;;;;;;2756:11;2715:26;:53::i;:::-;2585:3;;2547:232;;;;2793:9;2788:232;2808:9;:16;2804:1;:20;2788:232;;;2905:1;2897:10;;2853:40;2880:9;2890:1;2880:12;;;;;;;;:::i;2853:40::-;:54;2845:97;;;;-1:-1:-1;;;2845:97:114;;14474:2:116;2845:97:114;;;14456:21:116;14513:2;14493:18;;;14486:30;14552:32;14532:18;;;14525:60;14602:18;;2845:97:114;14272:354:116;2845:97:114;2956:53;2983:9;2993:1;2983:12;;;;;;;;:::i;2956:53::-;2826:3;;2788:232;;;;1650:1376;;1487:1539;;;;;:::o;5653:391::-;5745:19;5781:9;5776:262;5796:12;:19;5792:1;:23;5776:262;;;5854:8;:6;:8::i;:::-;-1:-1:-1;;;;;5847:36:114;;5884:12;5897:1;5884:15;;;;;;;;:::i;:::-;;;;;;;5847:53;;;;;;;;;;;;;4251:25:116;;4239:2;4224:18;;4105:177;5847:53:114;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;5836:64:114;:7;-1:-1:-1;;;;;5836:64:114;;5832:147;;5937:4;5920:21;;5959:5;;5832:147;6010:3;;;;:::i;:::-;;;;5776:262;;;;5653:391;;;;:::o;4862:785::-;4945:19;4976:40;5019:32;5039:11;5019:19;:32::i;:::-;4976:75;;5066:9;5061:247;5081:13;:23;;;:30;5077:1;:34;5061:247;;;5144:13;:23;;;5168:1;5144:26;;;;;;;;:::i;:::-;;;;;;;5132:8;:38;5128:121;;5207:4;5190:21;;5229:5;;5128:121;5280:3;;;;:::i;:::-;;;;5061:247;;;;5322:14;5317:324;;5357:9;5352:279;5372:13;:23;;;:30;5368:1;:34;5352:279;;;5439:13;:23;;;5463:1;5439:26;;;;;;;;:::i;:::-;;;;;;;5427:8;:38;5423:133;;5506:4;5489:21;;5532:5;;5423:133;5595:3;;;;:::i;:::-;;;;5352:279;;;;4966:681;4862:785;;;;:::o;1942:98:52:-;1981:7;2003:32;:30;:32::i;6050:2443:114:-;6229:43;6252:4;6259:12;:10;:12::i;:::-;6229:14;:43::i;:::-;6312:40;6355:32;6375:11;6355:19;:32::i;:::-;6312:75;;6403:9;6398:1274;6418:7;:14;6414:1;:18;6398:1274;;;6453:27;6483:7;6491:1;6483:10;;;;;;;;:::i;:::-;;;;;;;;;;;;6553:578;;;;;;;;6599:22;;;;6553:578;;6649:22;;;;;6553:578;;;;6701:30;;6553:578;;;;;;;6761:30;;;;6553:578;;;;6508:42;6553:578;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7060:12;6553:578;;;;7101:15;6553:578;;;;6483:10;-1:-1:-1;7196:47:114;6553:578;7230:12;7196:14;:47::i;:::-;7176:67;;7261:17;:30;;;7257:124;;;7311:55;7331:17;:28;;;7361:4;7311:19;:55::i;:::-;7398:17;:30;;;7394:124;;;7448:55;7468:17;:28;;;7498:4;7448:19;:55::i;:::-;7582:79;7600:11;7613:13;:25;;;7640:1;7643:17;7582;:79::i;:::-;-1:-1:-1;;6434:3:114;;6398:1274;;;;7682:27;7719;7761:9;7756:156;7776:13;:23;;;:30;7772:1;:34;7756:156;;;7831:47;7851:13;:23;;;7875:1;7851:26;;;;;;;;:::i;:::-;;;;;;;7831:19;:47::i;:::-;7827:74;;;7880:21;;;;:::i;:::-;;;;7827:74;7808:3;;7756:156;;;;7926:9;7921:156;7941:13;:23;;;:30;7937:1;:34;7921:156;;;7996:47;8016:13;:23;;;8040:1;8016:26;;;;;;;;:::i;7996:47::-;7992:74;;;8045:21;;;;:::i;:::-;;;;7992:74;7973:3;;7921:156;;;;8126:13;:23;;;:30;8103:19;:53;:126;;;;8199:13;:23;;;:30;8176:19;:53;8103:126;:197;;;;8278:13;:22;;;8249:13;:25;;;:51;8103:197;8086:401;;;8325:36;8335:11;8348:12;8325:9;:36::i;:::-;;;8086:401;;;8392:25;;;:27;;;;;;:::i;:::-;;;-1:-1:-1;8429:47:114;8449:11;8462:13;8429:19;:47::i;:::-;6148:2345;;;6050:2443;;;:::o;2992:383:52:-;3278:34;3282:14;3278:34;3265:48;3259:4;3255:59;;3325:45;;-1:-1:-1;3360:10:52;3325:45;2992:383;:::o;19860:418:81:-;19917:33;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19917:33:81;19987:16;;;20001:1;19987:16;;;;;;;;;19958:26;;19987:16;;;;;;;;;;;-1:-1:-1;19987:16:81;19958:45;;20024:11;20009:9;20019:1;20009:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;20043:24;;;20130:80;1334:66;20175:9;1463:66;20130:21;:80::i;:::-;20042:168;;;;;;20223:50;20230:11;20243:15;20260:12;20223:6;:50::i;:::-;20216:57;19860:418;-1:-1:-1;;;;;;19860:418:81:o;8499:241:114:-;8587:146;8653:11;8666:21;8700:11;8713:7;8689:32;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;8689:32:114;;;;;;;;;;8618:105;;;;;;;:::i;:::-;;;;-1:-1:-1;;8618:105:114;;;;;;;;;;;;;;;;;;;;8587:17;:146::i;:::-;;8499:241;;:::o;4891:393:93:-;4998:16;;;5012:1;4998:16;;;;;;;;;4943:8;;;;;;4998:16;;;;;;;;;;;-1:-1:-1;4998:16:93;4969:45;;5035:6;5020:9;5030:1;5020:12;;;;;;;;:::i;:::-;;;;;;;;;;:21;5049:24;;;5136:80;1065:66;5181:9;1194:66;5136:21;:80::i;:::-;5048:168;;;;;;5229:50;5236:11;5249:15;5266:12;5229:6;:50::i;:::-;5222:57;;;;;;;;4891:393;;;:::o;22274:598:81:-;22358:24;22385:133;22405:6;:20;;;22433:6;:12;;;22453:6;:10;;;22471:6;:18;;;22497:6;:15;;;22385:12;:133::i;:::-;22358:160;;22525:30;22558:49;22572:6;:16;;;22590:6;:16;;;22558:13;:49::i;:::-;22525:82;;22613:25;22641:49;22655:6;:16;;;22673:6;:16;;;22641:13;:49::i;:::-;22726:16;;;22740:1;22726:16;;;;;;;;;22613:77;;-1:-1:-1;22697:26:81;;22726:16;;;;;;;;;;;;-1:-1:-1;22726:16:81;22697:45;;22763:11;22748:9;22758:1;22748:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;22781:86;1334:66;22813:9;22824:11;22837:15;22854:12;22781:21;:86::i;2779:297:88:-;2905:16;;;2919:1;2905:16;;;;;;;;;2849:19;;;;2905:16;;;;;;;;;;;;-1:-1:-1;2905:16:88;2876:45;;2942:13;2927:9;2937:1;2927:12;;;;;;;;:::i;:::-;;;;;;;;;;:28;2962:13;2978:64;1157:66;3015:9;2962:13;1286:66;2978:26;:64::i;3464:271::-;3576:16;;;3590:1;3576:16;;;;;;;;;3547:26;;3576:16;;;;;;;;;;;-1:-1:-1;3576:16:88;3547:45;;3613:13;3598:9;3608:1;3598:12;;;;;;;;:::i;:::-;;;;;;:28;;;;;3633:97;1157:66;1141:83;;3670:9;3681:1;3702:11;3684:31;;;;;;17290:19:116;;17334:2;17325:12;;17161:182;3684:31:88;;;;-1:-1:-1;;3684:31:88;;;;;;;;;1286:66;3633:26;:97::i;4048::52:-;4089:7;4111:29;:27;:29::i;2631:154:115:-;2707:75;2738:35;2757:15;2738:18;:35::i;:::-;2775:6;2707:30;:75::i;:::-;2631:154;;:::o;8746:1499:114:-;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8937:29:114;8969:39;8981:17;:26;;;8969:11;:39::i;:::-;8937:71;;9026:10;:22;;;:29;9059:1;9026:34;9018:68;;;;-1:-1:-1;;;9018:68:114;;17550:2:116;9018:68:114;;;17532:21:116;17589:2;17569:18;;;17562:30;17628:23;17608:18;;;17601:51;17669:18;;9018:68:114;17348:345:116;9018:68:114;9153:21;;9147:28;;;;;;;;:::i;:::-;:33;;9179:1;9147:33;9143:1061;;9228:38;9280:10;:22;;;9269:57;;;;;;;;;;;;:::i;:::-;9228:98;;9472:233;9514:11;9543:17;:28;;;9589:17;:28;;;9635:17;:26;;;9679:12;9472:24;:233::i;:::-;9372:333;;9434:22;;;9372:333;;;;9411:21;;;9372:333;9373:36;;;9372:333;;;;9755:372;;9800:16;531:7:0;9897:17:114;:36;;;:62;;;;:::i;:::-;9819:48;9838:17;:28;;;9819:18;:48::i;:::-;:141;;;;:::i;:::-;9800:160;;9995:1;9982:9;:14;9978:57;;10031:4;9998:30;;;:37;9978:57;10053:59;10072:17;:28;;;10102:9;10053:18;:59::i;:::-;9782:345;9755:372;9182:955;9143:1061;;;10157:36;;-1:-1:-1;;;10157:36:114;;20294:2:116;10157:36:114;;;20276:21:116;20333:2;20313:18;;;20306:30;20372:28;20352:18;;;20345:56;20418:18;;10157:36:114;20092:350:116;9143:1061:114;-1:-1:-1;10221:17:114;;8746:1499;-1:-1:-1;;8746:1499:114:o;6105:247:88:-;6200:16;;;6214:1;6200:16;;;;;;;;;6171:26;;6200:16;;;;;;;;;;;-1:-1:-1;6200:16:88;6171:45;;6237:13;6222:9;6232:1;6222:12;;;;;;;;:::i;:::-;;;;;;:28;;;;;6257:90;1157:66;1141:83;;6294:9;6305:1;6326:4;6308:24;;;;;;20704:14:116;20697:22;20692:3;20688:32;20676:45;;20746:1;20737:11;;20553:201;17615:863:76;17760:24;17787:340;17807:6;:15;;;17830:6;:15;;;17853:6;:17;;;17878:6;:17;;;17903:6;:10;;;17921:6;:11;;;17940:6;:11;;;17959:6;:25;;;17992:6;:25;;;18025:6;:19;;;18052:6;:19;;;18079:6;:18;;;18105:6;:16;;;17787:12;:340::i;:::-;18231:16;;;18245:1;18231:16;;;;;;;;;17760:367;;-1:-1:-1;18134:30:76;;18170:25;;18134:30;;18231:16;;;;18170:25;;18231:16;;;;;-1:-1:-1;18231:16:76;18202:45;;18268:11;18253:9;18263:1;18253:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;18316:11;18300:29;;18285:9;18295:1;18285:12;;;;;;;;:::i;:::-;;;;;;:44;;;;;18366:12;18350:30;;18335:9;18345:1;18335:12;;;;;;;;:::i;:::-;;;;;;;;;;:45;18387:86;1380:66;18419:9;18430:11;18443:15;18460:12;18387:21;:86::i;:::-;17754:724;;;;17615:863;;;;:::o;5438:295:88:-;5547:16;;;5561:1;5547:16;;;;;;;;;5501:9;;;;5547:16;;;;;;;;;;;;-1:-1:-1;5547:16:88;5518:45;;5584:13;5569:9;5579:1;5569:12;;;;;;;;:::i;:::-;;;;;;;;;;:28;5604:13;5620:64;1157:66;5657:9;5668:1;1286:66;5620:26;:64::i;:::-;5604:80;;5698:29;5719:5;5706:20;;12543:5;12457:97;13627:2789:114;13723:17;13742:18;13776:40;13819:32;13839:11;13819:19;:32::i;:::-;13776:75;;13866:13;13883:5;13866:22;13862:151;;13924:12;13904:17;;;:32;13862:151;;;13987:15;13967:17;;;:35;13862:151;14069:32;14111:23;14145:26;;:::i;:::-;14187:9;14182:280;14202:13;:23;;;:30;14198:1;:34;14182:280;;;14265:37;14275:13;:23;;;14299:1;14275:26;;;;;;;;:::i;:::-;;;;;;;14265:9;:37::i;:::-;14253:49;;14344:9;:15;;;14316:43;;;;;:::i;:::-;;;14399:1;14377:9;:19;;;:23;14373:79;;;14420:17;;;;:::i;:::-;;;;14373:79;14234:3;;14182:280;;;;14660:20;14695:9;14690:579;14710:13;:23;;;:30;14706:1;:34;14690:579;;;14776:13;:23;;;14800:1;14776:26;;;;;;;;:::i;:::-;;;;;;;14761:41;;14820:33;14840:12;14820:19;:33::i;:::-;14816:443;;;14886:33;14906:12;14886:19;:33::i;:::-;14873:46;;;;:::i;:::-;;;14951:49;14970:9;:15;;;14987:12;14951:18;:49::i;:::-;14937:63;;;;:::i;:::-;;-1:-1:-1;15018:52:114;15045:12;15067:1;15018:26;:52::i;:::-;15088:156;15128:12;15142;15156:13;:23;;;15195:13;:23;;;:30;15180:12;:45;;;;:::i;:::-;15156:70;;;;;;;;:::i;:::-;;;;;;;15088:18;:156::i;:::-;14742:3;;14690:579;;;;15514:20;15549:9;15544:809;15564:13;:23;;;:30;15560:1;:34;15544:809;;;15630:13;:23;;;15654:1;15630:26;;;;;;;;:::i;:::-;;;;;;;15615:41;;15681:8;:6;:8::i;:::-;-1:-1:-1;;;;;15674:39:114;;15714:12;15674:53;;;;;;;;;;;;;4251:25:116;;4239:2;4224:18;;4105:177;15674:53:114;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15670:607;;;15759:23;15769:12;15759:9;:23::i;:::-;15747:35;;15833:1;15804:9;:19;;;:31;15800:411;;;15863:23;;15859:153;;15921:8;:6;:8::i;:::-;-1:-1:-1;;;;;15914:29:114;;15944:12;15959:28;15972:15;15959:10;:28;:::i;:::-;15914:75;;;;;;;;;;;;;21305:25:116;;;;21346:18;;;21339:34;21278:18;;15914:75:114;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15859:153;16057:1;16037:9;:22;:54;;;;;16089:1;16063:15;:28;16037:54;16033:160;;;16143:27;16155:15;16143:9;:27;:::i;:::-;16119:9;:20;;:51;;;;;;;:::i;:::-;;;-1:-1:-1;16033:160:114;16228:34;16238:12;16252:9;16228;:34::i;:::-;16290:52;16317:12;16339:1;16290:26;:52::i;:::-;15596:3;;15544:809;;;;16362:47;16382:11;16395:13;16362:19;:47::i;:::-;13766:2650;;;;;;13627:2789;;;;;:::o;15347:431:25:-;15477:12;15491:14;15507:12;15527:21;15551:17;:15;:17::i;:::-;15527:41;-1:-1:-1;15603:4:25;-1:-1:-1;;;;;15578:30:25;;;15574:200;;15625:51;15645:7;15654:8;15664:11;15625:19;:51::i;:::-;15618:58;;;;;;;;;15574:200;15704:63;;;;;-1:-1:-1;;;;;15704:31:25;;;;;:63;;15736:7;;15745:8;;15755:11;;15704:63;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;15704:63:25;;;;;;;;;;;;:::i;15347:431::-;;;;;;;;:::o;25028:389:81:-;25168:33;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25168:33:81;25297:25;25310:11;25297:12;:25::i;:::-;25278:15;;;25209:113;;;25258:18;;;25209:113;;;25246:10;;;25209:113;;;25232:12;;;25209:113;;;25210:6;25209:113;;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;;25368:44;25382:15;25399:12;25368:13;:44::i;:::-;25348:16;;;25329:83;25330:16;;;25329:83;25330:6;25028:389;-1:-1:-1;;;25028:389:81:o;3318:662:40:-;3373:23;3516:19;;3570:39;3592:16;3599:8;3592:16;:::i;:::-;3570:21;:39::i;:::-;3515:94;;;;3690:8;3703:1;3672:32;;;3668:97;;3713:52;;;;;3757:7;;;;3713:52;;;23664:98:116;23637:18;;3713:52:40;23520:248:116;3668:97:40;1759:4:2;1744:28;;1738:35;;1847:9;1836:21;1903:20;;1961:43;;3883:92:40;3900:8;3936;3883:4;:92::i;7036:160:93:-;2756:4:2;2742:27;;2736:34;2742:27;;;2736:34;7131:8:93;;;;6793:33;;;;;6839;7166:25;7157:34;;;;-1:-1:-1;7036:160:93;-1:-1:-1;;;;7036:160:93:o;26096:263:81:-;26261:12;26305:13;26320:5;26327:3;26332:11;26345:8;26288:66;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;26281:73;;26096:263;;;;;;;:::o;26550:354::-;26664:30;26825:68;26848:9;:16;26867:2;26848:21;26871:9;:16;26890:2;26871:21;2776:23:3;2761:39;;;975:16;2694:39;;;2662:5;;;2675:59;2742;2518:351;;;;;26825:68:81;26807:86;26550:354;-1:-1:-1;;;26550:354:81:o;27069:216::-;27171:12;27215:31;27235:9;27215:18;:31::i;:::-;27248;27268:9;27248:18;:31::i;:::-;27198:82;;;;;;;;;:::i;:::-;;;;;;;;;;;;;27191:89;;27069:216;;;;:::o;6458:480:25:-;6645:21;6669:17;:15;:17::i;:::-;6645:41;-1:-1:-1;6721:4:25;-1:-1:-1;;;;;6696:30:25;;;6692:242;;6736:79;6756:7;6765:8;6775:10;6787:14;6803:11;6736:19;:79::i;:::-;6692:242;;;6836:91;;;;;-1:-1:-1;;;;;6836:31:25;;;;;:91;;6868:7;;6877:8;;6887:10;;6899:14;;6915:11;;6836:91;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6639:299;6458:480;;;;;:::o;17775:457::-;17932:7;17947:21;17971:17;:15;:17::i;:::-;17947:41;-1:-1:-1;18023:4:25;-1:-1:-1;;;;;17998:30:25;;;17994:234;;18045:68;18070:7;18079:8;18089:10;18101:11;18045:24;:68::i;:::-;18038:75;;;;;17994:234;18141:80;;;;;-1:-1:-1;;;;;18141:36:25;;;;;:80;;18178:7;;18187:8;;18197:10;;18209:11;;18141:80;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;10761:455::-;10933:21;10957:17;:15;:17::i;:::-;10933:41;-1:-1:-1;11009:4:25;-1:-1:-1;;;;;10984:30:25;;;10980:232;;11024:74;11049:7;11058:8;11068:10;11080:4;11086:11;11024:24;:74::i;10980:232::-;11119:86;;;;;-1:-1:-1;;;;;11119:36:25;;;;;:86;;11156:7;;11165:8;;11175:10;;11187:4;;11193:11;;11119:86;;;:::i;1836:227::-;1066:42;1925:22;1886:7;;-1:-1:-1;;;;;1925:22:25;;1953:106;;2001:10;1994:17;;;1836:227;:::o;1953:106::-;2039:13;1836:227;-1:-1:-1;1836:227:25:o;3430:314:66:-;3538:16;;;3552:1;3538:16;;;;;;;;;3482:19;;;;3538:16;;;;;;;;;;;;-1:-1:-1;3538:16:66;3509:45;;3599:6;-1:-1:-1;;;;;3583:24:66;3575:33;;3560:9;3570:1;3560:12;;;;;;;;:::i;:::-;;;;;;;;;;:48;3615:13;3631:64;1169:66;3668:9;3615:13;1298:66;3631:26;:64::i;1698:281:39:-;1860:29;1870:10;1882:6;1860:9;:29::i;:::-;1855:120;;1938:21;:10;:19;:21::i;:::-;1961:6;1906:62;;;;;;;;;;;;:::i;9017:404:77:-;-1:-1:-1;;;;;;;;;;;;;;;;;9133:16:77;;;9147:1;9133:16;;;;;;;;;9104:26;;9133:16;;;;;;;;;;;-1:-1:-1;9133:16:77;9104:45;;9170:8;9155:9;9165:1;9155:12;;;;;;;;:::i;:::-;;;;;;;;;;:23;9186:24;;;9273:80;1201:66;9318:9;1330:66;9273:21;:80::i;:::-;9185:168;;;;;;9366:50;9373:11;9386:15;9403:12;9366:6;:50::i;10251:2213:114:-;10474:13;10489:8;10499:9;10544:35;10589:8;:6;:8::i;:::-;-1:-1:-1;;;;;10582:42:114;;10625:10;10582:54;;;;;;;;;;;;;4251:25:116;;4239:2;4224:18;;4105:177;10582:54:114;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10544:92;;10669:35;10714:8;:6;:8::i;:::-;-1:-1:-1;;;;;10707:42:114;;10750:10;10707:54;;;;;;;;;;;;;4251:25:116;;4239:2;4224:18;;4105:177;10707:54:114;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10669:92;;10799:25;10834:8;:6;:8::i;:::-;-1:-1:-1;;;;;10827:35:114;;10863:8;10827:45;;;;;;;;;;;;;4251:25:116;;4239:2;4224:18;;4105:177;10827:45:114;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;10827:45:114;;;;;;;;;;;;:::i;:::-;10799:73;;10908:1;10887:8;:18;;;:22;10883:1575;;;10952:34;;;;;;;;4251:25:116;;;10925:24:114;;10952:9;;:20;;4224:18:116;;10952:34:114;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;10952:34:114;;;;;;;;;;;;:::i;:::-;10925:61;;11014:139;11072:8;11081:1;11072:11;;;;;;;;:::i;:::-;;;;;;;11064:20;;11094:8;11103:1;11094:11;;;;;;;;:::i;:::-;;;;;;;11086:20;;11108:11;11121:8;11131;11014:32;:139::i;:::-;11000:153;;-1:-1:-1;11000:153:114;-1:-1:-1;11168:1188:114;;;;487:7:0;11823:1:114;11792:11;:28;;;11766:8;:22;;;11759:61;;;;:::i;:::-;:65;:215;;11972:1;11759:215;;;11900:11;:28;;;11874:8;:22;;;11867:61;;;;:::i;:::-;11729:290;;;;:::i;:::-;11578:25;;531:7:0;;11578:29:114;;11606:1;;11578:29;:::i;:::-;11389:6;:16;;;11369:6;:16;;;11354:8;11363:1;11354:11;;;;;;;;:::i;:::-;;;;;;;11346:20;;:39;;;;:::i;:::-;:59;;:192;;11522:6;:16;;;11507:8;11516:1;11507:11;;;;;;;;:::i;:::-;;;;;;;11499:20;;:39;;;;:::i;:::-;11346:192;;;11444:6;:16;;;11346:192;11252:23;;:316;;;;:::i;:::-;:356;;;;:::i;:::-;11226:430;;;;:::i;:::-;11204:837;;;;:::i;:::-;11195:846;;12063:4;12059:166;;;12091:21;;;;;;;;;;;;;;;;;;:12;:21::i;:::-;12143:30;573:1:0;12143:6:114;:30;:::i;:::-;12134:39;;12202:4;12195:11;;12059:166;11168:1188;;;12263:21;;;;;;;;;;;;;;;;;;:12;:21::i;:::-;12311:1;12302:10;;12336:5;12330:11;;11168:1188;10911:1455;10883:1575;;;12395:1;12386:10;;12416:5;12410:11;;12442:5;12435:12;;10883:1575;10510:1954;;;10251:2213;;;;;;;;;:::o;9380:299:97:-;9496:16;;;9510:1;9496:16;;;;;;;;;9443;;;;9496;;;;;;;;;;;;-1:-1:-1;9496:16:97;9467:45;;9533:8;9518:9;9528:1;9518:12;;;;;;;;:::i;:::-;;;;;;;;;;:23;9548:13;9564:64;1303:66;9601:9;9612:1;1432:66;9564:26;:64::i;10065:254::-;10167:16;;;10181:1;10167:16;;;;;;;;;10138:26;;10167:16;;;;;;;;;;;-1:-1:-1;10167:16:97;10138:45;;10204:8;10189:9;10199:1;10189:12;;;;;;;;:::i;:::-;;;;;;:23;;;;;10219:95;1303:66;1287:83;;10256:9;10267:1;10288:9;10270:29;;;;;;17290:19:116;;17334:2;17325:12;;17161:182;10270:29:97;;;;-1:-1:-1;;10270:29:97;;;;;;;;;1432:66;10219:26;:95::i;22361:660:76:-;22702:12;22761:8;22779;22797:10;22817;22837:3;22850:4;22864;22878:18;22906;22934:12;22956;22978:11;22999:9;22735:281;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;22722:294;;22361:660;;;;;;;;;;;;;;;:::o;13158:402:97:-;13212:23;;:::i;:::-;13272:16;;;13286:1;13272:16;;;;;;;;;13243:26;;13272:16;;;;;;;;;;;-1:-1:-1;13272:16:97;13243:45;;13309:8;13294:9;13304:1;13294:12;;;;;;;;:::i;:::-;;;;;;;;;;:23;13325:24;;;13412:80;1303:66;13457:9;1432:66;13412:21;:80::i;:::-;13324:168;;;;;;13505:50;13512:11;13525:15;13542:12;13505:6;:50::i;10661:294::-;10780:16;;;10794:1;10780:16;;;;;;;;;10725:18;;;;10780:16;;;;;;;;;;;;-1:-1:-1;10780:16:97;10751:45;;10817:8;10802:9;10812:1;10802:12;;;;;;;;:::i;:::-;;;;;;;;;;:23;10832:13;10848:64;1303:66;10885:9;10896:1;1432:66;10848:26;:64::i;16422:354:114:-;16513:18;16743:25;16760:8;633:4:0;16743:25:114;:::i;:::-;16727:42;;:12;:42;:::i;16782:582::-;16890:13;16913:8;:6;:8::i;:::-;-1:-1:-1;;;;;16906:29:114;;16936:8;16906:39;;;;;;;;;;;;;4251:25:116;;4239:2;4224:18;;4105:177;16906:39:114;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16890:55;;16955:32;17001:23;17018:5;17001:16;:23::i;:::-;16990:51;;;;;;;;;;;;:::i;:::-;16955:86;;17056:9;17051:307;17071:12;:22;;;:29;17067:1;:33;17051:307;;;17121:18;17142:46;17162:12;:22;;;17185:1;17162:25;;;;;;;;:::i;:::-;;;;;;;17142:19;:46::i;:::-;17121:67;-1:-1:-1;17121:67:114;17206:22;17221:7;17206:12;:22;:::i;:::-;:35;17202:146;;;17268:8;:6;:8::i;:::-;-1:-1:-1;;;;;17261:29:114;;17291:11;17304:12;:22;;;17327:1;17304:25;;;;;;;;:::i;:::-;;;;;;;;;;;17261:72;;;;;;;;;;;;;34675:25:116;;;;34716:18;;;34709:34;17331:1:114;34759:18:116;;;34752:34;34648:18;;17261:72:114;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17202:146;-1:-1:-1;17102:3:114;;17051:307;;15526:545:97;15597:24;15624:200;15644:6;:15;;;15667:6;:14;;;15689:6;:12;;;15709:6;:19;;;15736:6;:13;;;15757:6;:16;;;15781:6;:17;;;15806:6;:12;;;15624;:200::i;:::-;15928:16;;;15942:1;15928:16;;;;;;;;;15597:227;;-1:-1:-1;15831:30:97;;15867:25;;15831:30;;15928:16;;;;;;;;;;;;-1:-1:-1;15928:16:97;15899:45;;15965:8;15950:9;15960:1;15950:12;;;;;;;;:::i;:::-;;;;;;;;;;:23;15980:86;1303:66;16012:9;16023:11;16036:15;16053:12;15980:21;:86::i;32759:1315:24:-;32889:23;32914:29;32945:24;33011:20;33034:30;:11;:28;:30::i;:::-;33011:53;;33125:65;33158:7;33167:8;33177:12;33125:32;:65::i;:::-;33112:78;;33254:24;33281:30;:11;:28;:30::i;:::-;33254:57;-1:-1:-1;33321:20:24;;33317:753;;33414:66;33462:7;33471:8;33414:47;:66::i;:::-;33397:83;-1:-1:-1;6445:61:3;;;33532:33:24;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;33532:33:24;-1:-1:-1;33518:47:24;-1:-1:-1;894:4:19;884:15;;33573:21:24;33637:427;33655:16;33651:1;:20;;;33637:427;;;33688:27;33718:63;33760:7;33769:8;33779:1;33718:41;:63::i;:::-;33688:93;-1:-1:-1;33791:14:24;33808:25;:14;33831:1;7070:16:3;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;33808:25:24;33791:42;;33843:110;33874:19;33903:1;33914:6;33937:13;33843:12;:110::i;:::-;34032:23;34049:6;34032:23;;:::i;:::-;;;33678:386;;33673:3;;;;;:::i;:::-;;;;33637:427;;;;33343:727;33317:753;32971:1103;;32759:1315;;;;;;;:::o;23661:475:81:-;23746:27;23775:13;23790:11;23803:19;23824:16;23886:25;23902:5;23909:1;2742:27:2;2756:4;2742:27;2736:34;;2612:168;23886:25:81;23880:32;;23866:47;;;;;;;;:::i;:::-;2742:27:2;;;2736:34;2742:27;;;2736:34;2742:27;;;2736:34;2742:27;;;;2736:34;23850:63:81;;2736:34:2;;;;-1:-1:-1;2736:34:2;-1:-1:-1;2736:34:2;;-1:-1:-1;23661:475:81;-1:-1:-1;;23661:475:81:o;24239:522::-;24349:26;;24411:14;975:16:3;7017:70;;;6995:94;;24525:63:81;:41;24546:5;24411:14;6995:94:3;24525:20:81;:41::i;:::-;:61;:63::i;:::-;24512:77;-1:-1:-1;24605:4:81;-1:-1:-1;24605:4:81;6995:94:3;7059:27;7017:70;;;6995:94;24633:34:81;24692:63;:41;24713:5;24720:6;24633:34;24692:20;:41::i;:63::-;24679:77;;24405:356;;24239:522;;;;;:::o;5805:471:62:-;5966:16;;;5980:1;5966:16;;;;;;;;;5879:19;;;;;;5966:16;;;;;;;;;;;-1:-1:-1;5966:16:62;5937:45;;6011:21;6003:30;;;5988:9;5998:1;5988:12;;;;;;;;:::i;:::-;;;;;;;;;;:45;6041:24;;;6128:80;1174:66;6173:9;1303:66;6128:21;:80::i;:::-;6040:168;;;;;;6221:50;6228:11;6241:15;6258:12;6221:6;:50::i;2109:683:40:-;2185:23;2216:20;2239:32;:30;:32::i;:::-;2216:55;-1:-1:-1;;;;;;2350:29:40;;2358:4;2350:29;2346:322;;2389:12;2433:153;2467:36;:34;:36::i;:::-;2520:1;2541:8;2569;2433:15;:153::i;:::-;2409:177;-1:-1:-1;2409:177:40;-1:-1:-1;2409:177:40;2595:41;;2609:27;2625:10;2609:15;:27::i;:::-;2644:17;;;;2346:322;2736:51;;;;;-1:-1:-1;;;;;2736:31:40;;;;;:51;;2768:8;;2778;;2736:51;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;2736:51:40;;;;;;;;;;;;:::i;44950:222:36:-;45014:12;45104:6;45128:39;45104:6;45161:2;45165:1;45128:17;:39::i;12066:286:24:-;12253:94;12263:7;12272:8;12282:10;12294:14;12310:11;12323:23;12338:7;12323:14;:23::i;:::-;12253:9;:94::i;:::-;12066:286;;;;;:::o;36171:541::-;36328:7;36465:242;36509:59;36550:7;36559:8;36509:40;:59::i;:::-;36586:31;;;;4323:19:4;:27;579:1:31;4322:44:4;4288:79;;;4275:93;36635:63:24;36674:11;36687:10;36635:38;:63::i;:::-;36465:17;:242::i;:::-;36452:255;36171:541;-1:-1:-1;;;;;36171:541:24:o;23107:355::-;23279:178;23313:7;23338:8;23368:63;23407:11;23420:10;23368:38;:63::i;:::-;23446:4;23279:16;:178::i;1109:325:39:-;1190:4;1332:55;696:18:72;578:36:53;2955:46;;2954:74;1380:6:39;1332:18;:55::i;:::-;:97;;;;1391:38;1410:10;1422:6;1391:18;:38::i;3486:592:53:-;3550:13;3620:10;451:5:20;2637:44:53;;;3571:19;3718;3620:10;3718:7;:19::i;:::-;3695:42;-1:-1:-1;3800:12:53;3839:35;;;;:102;;3888:53;;;;:34;:53::i;:::-;3839:102;;;;;;;;;;;;;;;;;;;;;3968:25;;;;:87;;4007:48;4042:12;4007:34;:48::i;:::-;3968:87;;;;;;;;;;;;;;;;;;;;;3772:293;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;3743:330;;;;;3486:592;;;:::o;12940:299:77:-;-1:-1:-1;;;;;;;;;;;;;;;;;13135:25:77;13148:11;13135:12;:25::i;:::-;13114:6;;13113:47;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;13190:44:77;13204:15;13221:12;13190:13;:44::i;:::-;13168:18;;;13167:67;13168:6;12940:299;-1:-1:-1;;;12940:299:77:o;12639:934:114:-;12905:16;;;442:7:0;13184:17:114;13197:4;13184:10;:17;:::i;:::-;13113:67;13122:8;:24;;;13148:11;:31;;;13113:8;:67::i;:::-;:89;;;;:::i;:::-;13099:133;;;;:::i;:::-;13077:155;;13336:20;487:7:0;13383:8:114;:24;;;13375:4;13361:11;:18;;;;:::i;:::-;13360:47;;;;:::i;:::-;13359:68;;;;:::i;:::-;13336:91;;13465:12;13451:11;:26;13437:40;;13491:11;13487:80;;;13555:1;13525:26;13539:12;13525:11;:26;:::i;:::-;:31;;13518:38;;13487:80;12934:639;;12639:934;;;;;;;;:::o;6598:121:73:-;6653:59;6708:2;6669:42;;;;;;;;:::i;:::-;;;;-1:-1:-1;;6669:42:73;;;;;;;;;;;;;;;;;;;;6653:15;:59::i;:::-;6598:121;:::o;17711:363:97:-;17822:23;;:::i;:::-;18044:25;18057:11;18044:12;:25::i;:::-;18023:12;;;17853:216;;;17998:17;;;17853:216;;;17974:16;;;17853:216;;;17953:13;;;17853:216;;;17926:19;;;17853:216;;;17861:6;17884:14;;;17906:12;;;17853:216;;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;17853:216:97;;;;-1:-1:-1;17711:363:97;;;-1:-1:-1;;;;;17711:363:97:o;4118:288:89:-;4235:16;;;4249:1;4235:16;;;;;;;;;4177:21;;4206:26;;4235:16;;;;;;;;;;;;-1:-1:-1;4235:16:89;4206:45;;4288:5;4272:23;;4257:9;4267:1;4257:12;;;;;;;;:::i;:::-;;;;;;;;;;:38;4302:18;4323:51;1202:66;4361:9;4302:18;4323:27;:51::i;4150:308:85:-;4267:16;;;4281:1;4267:16;;;;;;;;;4212:18;;;;4267:16;;;;;;;;;;;;-1:-1:-1;4267:16:85;4238:45;;4320:6;4304:24;;4289:9;4299:1;4289:12;;;;;;;;:::i;:::-;;;;;;;;;;:39;4335:13;4351:64;1205:66;4388:9;4399:1;1334:66;4351:26;:64::i;18741:348:97:-;18963:12;19007:8;19017:7;19026:5;19033:12;19047:6;19055:9;19066:10;19078:5;18990:94;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;18983:101;;18741:348;;;;;;;;;;:::o;4598:171:4:-;4672:7;579:1:31;1354:13;1366:1;376:2;1354:13;:::i;:::-;1353:30;;;;:::i;:::-;4694:70:4;;;;;4598:171;-1:-1:-1;4598:171:4:o;48823:360:24:-;48949:12;48973:6;48983:1;48973:11;48969:26;;-1:-1:-1;48986:9:24;;;;;;;;;-1:-1:-1;48986:9:24;;;;48969:26;49036:16;49055:41;49078:7;49087:8;49055:22;:41::i;:::-;49036:60;;49109:69;49140:8;49158:1;49169:6;49109:12;:69::i;5377:173:4:-;5451:7;579:1:31;1704;;1684:13;1696:1;376:2;1684:13;:::i;:::-;:17;;;;:::i;:::-;:21;;;;:::i;:::-;1683:38;;;;:::i;:::-;5487:11:4;5466:79;5479:65;;5466:79;;5377:173;-1:-1:-1;;5377:173:4:o;53939:303:24:-;54060:14;54154:82;54185:48;54215:7;54224:8;54185:29;:48::i;:::-;4711:21:23;;4605:137;52742:274:24;52886:7;52991;53000:8;52974:35;;;;;;;;;:::i;:::-;;;;;;;;;;;;;52964:46;;;;;;52943:17;52936:25;;52916:45;;;42433:34;52916:45;:94;52908:103;;52901:110;;52742:274;;;;;:::o;6076:2380:23:-;6193:10;;6189:1542;;6346:2;6336:6;:12;6332:122;;6409:2;6400:6;:11;6382:29;;;;6433:2;6423:12;;;;;;:::i;:::-;;;;6332:122;6544:10;;6540:1185;;6752:2;:11;;;6626:21;6810:22;;;6806:135;;;-1:-1:-1;;;579:1:31;804:25:32;;782:48;6806:135:23;;;-1:-1:-1;;;579:1:31;804:25:32;;782:48;6806:135:23;7135:14;7129:21;7114:12;7106:6;7102:25;7098:53;7375:4;7359:13;7353:20;7349:31;7285:4;7281:9;7269:10;7265:26;7210:184;7183:13;7163:243;;7465:13;7455:6;:23;7451:36;;7480:7;;;;7451:36;-1:-1:-1;7628:1:23;7610:19;;;;;7683:23;;;;;7641:30;6540:1185;7760:253;7777:2;7767:6;:12;7760:253;;7871:21;;7849:44;;7946:1;7928:19;;;;-1:-1:-1;;7986:12:23;;;;7974:2;7957:19;7760:253;;;8081:10;;8077:375;;8101:12;-1:-1:-1;;579:1:31;804:25:32;;782:48;8389:20:23;;8299:21;;8322:9;;8295:37;8385:31;;8244:184;8201:237;;-1:-1:-1;6076:2380:23;;;;:::o;2003:574:22:-;2094:5;2189:3;2181:5;:11;:32;;;;2202:4;:11;2196:3;:17;2181:32;2177:93;;;2253:4;2259:5;2266:3;2222:48;;;;;;;;;;;;;:::i;2177:93::-;2336:4;2326:15;;2383:16;2394:5;2326:15;2383:16;:::i;:::-;;-1:-1:-1;2405:12:22;2420:11;2426:5;2420:3;:11;:::i;:::-;692:17;2555:15;2547:3;2536:14;;;;2535:36;;;;;;-1:-1:-1;;;;;2003:574:22:o;45284:220:35:-;45350:24;45382:30;45415:32;45433:6;45441:2;45445:1;45415:17;:32::i;8363:236:62:-;8474:19;8495:29;8569:25;8582:11;8569:12;:25::i;1761:1386:51:-;1888:12;1902:17;1956:21;1979:17;2000:22;2013:8;2000:12;:22::i;:::-;1955:67;;-1:-1:-1;1955:67:51;-1:-1:-1;;;;;;2067:27:51;;2063:106;;2139:8;2149:19;:8;:17;:19::i;:::-;2103:66;;;;;;;;;;;;:::i;2063:106::-;2275:12;2270:64;;2289:45;2317:8;2327:6;2289:27;:45::i;:::-;2413:9;;2409:197;;578:36:53;2955:46;;696:18:72;2954:74:53;2432:22:51;2515:26;2954:74:53;2515:13:51;:26::i;:::-;2490:51;-1:-1:-1;2549:50:51;2563:11;2576:22;2593:5;2490:51;2576:22;:::i;:::-;2549:13;:50::i;:::-;2424:182;;2409:197;2708:14;2681:23;:8;451:5:20;2637:44:53;;2539:148;2681:23:51;:41;;;:461;;2982:160;3043:6;3069:5;3092:13;3125:8;2982:39;:160::i;:::-;2681:461;;;2805:168;2874:6;2900:5;2923:13;2956:8;2805:47;:168::i;:::-;2663:479;;;;-1:-1:-1;1761:1386:51;-1:-1:-1;;;;;;;1761:1386:51:o;348:217:70:-;551:6;545:13;538:4;530:6;526:17;519:40;830:1343:37;1002:12;;955:17;;980:19;1043:26;1058:11;1002:12;1043:26;:::i;:::-;1020:49;;1441:4;1435:11;;-1:-1:-1;1484:4:37;1474:15;;-1:-1:-1;;1358:16:37;1531:32;;;1358:16;1354:32;1503:4;1496:69;1607:12;1601:4;1594:26;1651:1;1721:4;1714:5;1710:16;1628:535;1741:11;1738:1;1735:18;1628:535;;;2134:19;;2113:41;;2091:64;;2007:31;;;;1828:1;1821:9;;;;;1920:4;1902:23;1628:535;;;1632:102;;;1222:947;;830:1343;;;;;:::o;4015:652:24:-;4082:11;4318:64;;;4314:111;;-1:-1:-1;1342:66:30;;4015:652:24;-1:-1:-1;4015:652:24:o;4314:111::-;4469:185;4515:85;1213:66:30;4591:7:24;4515:40;:85::i;:::-;4620:2;4642:1;4469:17;:185::i;13212:3165::-;13507:23;13486:7;:44;;;13482:211;;13613:7;13584:88;13622:8;13632:10;13644:14;13660:11;13584:88;;;;;;;;;:::i;:::-;;;;;;;;13680:7;;13482:211;13831:22;13856:24;13872:7;13856:15;:24::i;:::-;13831:49;;13891:9;13886:340;13906:5;:12;13902:1;:16;13886:340;;;13933:9;13955:5;13961:1;13955:8;;;;;;;;:::i;:::-;;;;;;;13933:31;;13976:33;409:6:33;13976:4:24;:14;;;;;:33;;;;:::i;:::-;13972:248;;;14021:190;;;;;3536:35:5;;;;;14021:47:24;;:190;;14080:7;;14099:8;;14119:10;;14141:14;;14167:11;;14190;;14021:190;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13972:248;-1:-1:-1;13920:3:24;;13886:340;;;;14303:7;14274:88;14312:8;14322:10;14334:14;14350:11;14274:88;;;;;;;;;:::i;:::-;;;;;;;;14426:26;14455:59;14496:7;14505:8;14455:40;:59::i;:::-;14426:88;-1:-1:-1;14520:21:24;894:4:19;884:15;;14520:54:24;;14580:149;14618:18;14652:1;14669:10;:17;14709:13;14580;:149::i;:::-;14829:1;14796:30;:11;:28;:30::i;:::-;:34;14792:1174;;;14915:33;14951:66;14999:7;15008:8;14951:47;:66::i;:::-;695:28:23;;;14915:102:24;-1:-1:-1;894:4:19;884:15;;15191:47:24;;15347:27;15382:25;15420:7;15415:545;15433:30;:11;:28;:30::i;:::-;15429:1;:34;;;15415:545;;;15499:63;15541:7;15550:8;15560:1;15499:41;:63::i;:::-;15477:85;-1:-1:-1;15592:25:24;:14;15615:1;7070:16:3;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;15592:25:24;15572:45;;15627:170;15669:19;15708:1;15729:17;15773:13;15627;:170::i;:::-;15807:34;15824:17;15807:34;;:::i;:::-;;-1:-1:-1;15938:3:24;;15415:545;;;;14832:1134;;;14792:1174;16040:9;16035:338;16055:5;:12;16051:1;:16;16035:338;;;16082:9;16104:5;16110:1;16104:8;;;;;;;;:::i;:::-;;;;;;;16082:31;;16125:32;503:6:33;16125:4:24;:14;;;;;:32;;;;:::i;:::-;16121:246;;;16169:189;;;;;3536:35:5;;;;;16169:46:24;;:189;;16227:7;;16246:8;;16266:10;;16288:14;;16314:11;;16337;;16169:189;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16121:246;-1:-1:-1;16069:3:24;;16035:338;;50806:191;50908:7;50972;50981:8;50955:35;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;50955:35:24;;;;;;;;;50945:46;;50955:35;50945:46;;;;42361:22;50938:53;;50806:191;-1:-1:-1;;;50806:191:24:o;51823:242::-;51919:7;;;51958:84;51978:10;51974:14;;:1;:14;51958:84;;;52003:32;4275:93:4;4323:19;:27;;;579:1:31;4322:44:4;4288:79;;;4275:93;52003:32:24;;:::i;:::-;;-1:-1:-1;51990:3:24;;51958:84;;;-1:-1:-1;52054:6:24;51823:242;-1:-1:-1;;;51823:242:24:o;8945:812:23:-;9043:14;9079:2;9069:6;:12;9065:112;;9138:2;9129:6;:11;9111:29;;;;9160:2;9150:12;;;;;;:::i;:::-;;;;9065:112;-1:-1:-1;9368:21:23;;9353:12;9341:25;;9337:53;9516:2;:11;;;9598:22;;;9594:159;;;9734:1;9718:14;9714:22;9708:29;9693:12;9678:13;9674:32;9670:68;9662:6;9659:80;9649:90;;9059:698;8945:812;;;;;:::o;17013:1682:24:-;17213:23;17192:7;:44;;;17188:235;;17346:7;17299:103;17365:8;17382:5;17395:4;17299:103;;;;;;;;:::i;:::-;;;;;;;;17410:7;;17188:235;17429:16;17448:59;17489:7;17498:8;17448:40;:59::i;:::-;17429:78;;17653:22;17678:24;17694:7;17678:15;:24::i;:::-;17653:49;;17713:9;17708:328;17728:5;:12;17724:1;:16;17708:328;;;17755:9;17777:5;17783:1;17777:8;;;;;;;;:::i;:::-;;;;;;;17755:31;;17798:41;614:6:33;17798:4:24;:14;;;;;:41;;;;:::i;:::-;17794:236;;;17851:170;;;;;3536:35:5;;;;;17851:54:24;;:170;;17927:7;;17956:8;;17983:5;;18006:4;;17851:170;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17794:236;-1:-1:-1;17742:3:24;;17708:328;;;;18140:7;18093:103;18159:8;18176:5;18189:4;18093:103;;;;;;;;:::i;:::-;;;;;;;;18246:70;18278:8;18296:5;18246:70;;18309:4;18246:13;:70::i;:::-;18370:9;18365:326;18385:5;:12;18381:1;:16;18365:326;;;18412:9;18434:5;18440:1;18434:8;;;;;;;;:::i;:::-;;;;;;;18412:31;;18455:40;723:6:33;18455:4:24;:14;;;;;:40;;;;:::i;:::-;18451:234;;;18507:169;;;;;3536:35:5;;;;;18507:53:24;;:169;;18582:7;;18611:8;;18638:5;;18661:4;;18507:169;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18451:234;-1:-1:-1;18399:3:24;;18365:326;;;;17128:1567;;17013:1682;;;;:::o;3586:379:64:-;3709:16;;;3723:1;3709:16;;;;;;;;3661:11;;;;3709:16;3723:1;3709:16;;;;;;;;;;-1:-1:-1;3709:16:64;3680:45;;3764:10;3731:9;3741:1;3731:12;;;;;;;;:::i;:::-;;;;;;:44;;;;;3820:6;-1:-1:-1;;;;;3804:24:64;3796:33;;3781:9;3791:1;3781:12;;;;;;;;:::i;:::-;;;;;;;;;;:48;3836:13;3852:64;1169:66;3889:9;3836:13;1298:66;3852:26;:64::i;:::-;3836:80;;3930:29;3951:5;3938:20;;12543:5:88;12457:97;3165:160:53;3228:7;3292:26;438:6;451:5:20;3292:26:53;:::i;:::-;3258:61;;;;;3165:160;-1:-1:-1;3165:160:53:o;1862:325::-;1932:13;1953:14;1973:83;1989:2;1980:6;:11;1973:83;;;2007:37;;;3261:1:2;3257:13;;3253:24;2007:42:53;;2003:53;2051:5;2003:53;1993:8;;1973:83;;;2092:30;;;41948:66:116;41936:79;;2092:30:53;;;41924:92:116;2092:30:53;;42032:12:116;;;;2092:30:53;;;875:21:2;;;2092:30:53;2142:39;760:164:2;12092:156:77;2756:4:2;2742:27;;2736:34;12157:21:77;;12210:32;;12199:44;;;;;;;;:::i;12351:322::-;12461:24;12493:14;975:16:3;7017:70;;;6995:94;;12615:51:77;:41;12636:5;12493:14;6995:94:3;12615:20:77;:41::i;:::-;:49;:51::i;1035:205:113:-;1094:12;1128:1;1122:2;:7;1118:116;;1152:16;1165:2;1152;:16;:::i;:::-;1145:23;;;;1118:116;1219:3;1220:2;1219:3;:::i;:::-;1206:17;;:2;:17;:::i;868:133:73:-;939:55;986:7;965:19;939:55::i;16807:746:97:-;16899:16;16923:15;16946:13;16967:20;16995:14;17017:16;17041:18;17067:13;17115:26;17132:5;17139:1;2742:27:2;2756:4;2742:27;2736:34;;2612:168;17115:26:97;2742:27:2;;;2736:34;2742:27;;;2736:34;17107:35:97;;-1:-1:-1;2736:34:2;-1:-1:-1;17221:33:97;;17213:42;;;;;;;;:::i;:::-;2742:27:2;;;2736:34;2742:27;;;2736:34;2742:27;;;2736:34;2742:27;;;2736:34;2742:27;;;;2736:34;16807:746:97;;;;17205:50;;2736:34:2;;;;-1:-1:-1;2736:34:2;-1:-1:-1;2736:34:2;;-1:-1:-1;2736:34:2;-1:-1:-1;16807:746:97;-1:-1:-1;;16807:746:97:o;18598:431:25:-;18734:12;18754:21;18778:17;:15;:17::i;:::-;18754:41;-1:-1:-1;18830:4:25;-1:-1:-1;;;;;18805:30:25;;;18801:224;;18852:63;18878:7;18887:8;18897:17;18852:25;:63::i;:::-;18845:70;;;;;18801:224;18943:75;;;;;-1:-1:-1;;;;;18943:37:25;;;;;:75;;18981:7;;18990:8;;19000:17;;18943:75;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;18943:75:25;;;;;;;;;;;;:::i;5042:669:23:-;5458:4;5452:11;5499:4;5487:17;;-1:-1:-1;;1358:16:37;5546:26:23;;;1358:16:37;1354:32;5518:4:23;5511:63;5618:6;5610;5603:22;5636:51;5641:14;5657:6;5665;5673:13;5636:4;:51::i;53371:230:24:-;53492:7;53576;53585:8;53559:35;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;53559:35:24;;;;;;;;;53549:46;;53559:35;53549:46;;;;42524:40;53522:73;;53371:230;-1:-1:-1;;;53371:230:24:o;2681:1129:37:-;2801:22;2831:21;2855;:11;2997:3:22;2975:25;;2901:104;2855:21:37;2831:45;-1:-1:-1;692:17:22;3238:38;;2882:20:37;3044:11;3238:38:22;3044:11:37;3029:26;;;;:::i;:::-;;3015:40;;3164:4;3158:11;3149:20;;3207:4;3200:5;3196:16;3267:4;3254:11;3250:22;3236:12;3232:41;3226:4;3219:55;3317:11;3310:5;3303:26;3360:1;3337:463;3376:11;3373:1;3370:18;3337:463;;;3770:20;;3749:42;;3728:64;;3642:31;;;;3555:4;3537:23;;;;3463:1;3456:9;3337:463;;7963:242:62;2756:4:2;2742:27;;2736:34;2742:27;;;2736:34;8028:19:62;;8173:26;8147:53;;7963:242;;;:::o;5928:433:67:-;6056:16;;;6070:1;6056:16;;;;;;;;;5986:14;;;;;;6056:16;;;;;;;;;;;-1:-1:-1;6056:16:67;6027:45;;6111:8;6078:9;6088:1;6078:12;;;;;;;;:::i;:::-;;;;;;;;;;:42;6128:24;;;6215:78;1155:66;6258:9;1284:66;6215:19;:78::i;:::-;6127:166;;;;;;6306:50;6313:11;6326:15;6343:12;6306:6;:50::i;1546:281:41:-;1708:29;1718:10;1730:6;1708:9;:29::i;3758:308:61:-;3871:16;;;3885:1;3871:16;;;;;;;;;3819:15;;;;3871:16;;;;;;;;;;;;-1:-1:-1;3871:16:61;3842:45;;3926:11;3893:9;3903:1;3893:12;;;;;;;;:::i;:::-;;;;;;;;;;:45;3945:13;3961:62;1157:66;3996:9;3945:13;1286:66;3961:24;:62::i;5057:269::-;5156:16;;;5170:1;5156:16;;;;;;;;;5127:26;;5156:16;;;;;;;;;;;-1:-1:-1;5156:16:61;5127:45;;5211:11;5178:9;5188:1;5178:12;;;;;;;;:::i;:::-;;;;;;:45;;;;;5230:91;1157:66;1141:83;;5265:9;5276:1;5297:7;5279:27;;;;;;17290:19:116;;17334:2;17325:12;;17161:182;5279:27:61;;;;-1:-1:-1;;5279:27:61;;;;;;;;;1286:66;5230:24;:91::i;5594:317:52:-;5733:12;5747:17;5790:6;-1:-1:-1;;;;;5790:11:52;5810:1;5821:79;5847:8;5868:9;5889:8;5821:13;:79::i;:::-;5790:116;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5772:134:52;;;;-1:-1:-1;5594:317:52;-1:-1:-1;;;;;5594:317:52:o;6415:321::-;6562:12;6576:17;6619:6;-1:-1:-1;;;;;6619:19:52;6646:79;6672:8;6693:9;6714:8;6646:13;:79::i;:::-;6619:112;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;51249:282:24;51494:30;;;;;;43385:19:116;;;43420:12;;;43413:28;;;51337:7:24;;43457:12:116;;51494:30:24;43197:278:116;3658:342:29;3774:16;;;3788:1;3774:16;;;;;;;;;3715:22;;3745:26;;3774:16;;;;;;;;;;;;-1:-1:-1;3774:16:29;3745:45;;3829:7;3796:9;3806:1;3796:12;;;;;;;;:::i;:::-;;;;;;;;;;:41;3844:18;3865:49;971:66;3901:9;3844:18;3865:25;:49::i;:::-;3844:70;;3928:66;:44;3949:5;3956:1;3959:5;:12;3928:20;:44::i;:::-;:64;:66::i;3035:136:5:-;3105:4;3157:9;3124:42;;3143:9;3125:15;3135:4;3934:26;;;3804:162;3125:15;:27;3124:42;;;3117:49;;3035:136;;;;:::o;1489:2340:23:-;1602:10;;1598:1504;;1755:2;1745:6;:12;1741:122;;1818:2;1809:6;:11;1791:29;;;;1842:2;1832:12;;;;;;:::i;:::-;;;;1741:122;1953:10;;1949:1147;;2161:2;:11;;;2035:21;-1:-1:-1;;579:1:31;804:25:32;;782:48;2208:18:23;2193:33;;2395:12;2387:6;2383:25;2442:4;2431:9;2427:20;2419:28;;2497:13;2491:20;2480:9;2476:36;2458:54;;2745:4;2741:9;2724:14;2718:21;2714:37;2645:4;2633:10;2629:21;2572:193;2544:14;2524:253;;2836:13;2826:6;:23;2822:36;;2851:7;;;;2822:36;-1:-1:-1;2999:1:23;2981:19;;;;;3054:23;;;;;3012:30;1949:1147;3132:253;3149:2;3139:6;:12;3132:253;;3244:20;;3221:44;;3318:1;3300:19;;;;-1:-1:-1;;3358:12:23;;;;3346:2;3329:19;3132:253;;;3453:10;;3449:376;;3473:12;-1:-1:-1;;579:1:31;804:25:32;;782:48;3761:21:23;;3672:20;;3694:9;;3668:36;3757:32;;3617:184;3573:238;;-1:-1:-1;1489:2340:23;;;;:::o;966:162::-;1055:68;1061:14;1077:6;1085:4;:11;1098:24;1117:4;894::19;884:15;;758:151;1098:24:23;1055:5;:68::i;3545:418:22:-;3597:17;3622:19;3644:13;3652:4;2997:3;2975:25;;2901:104;3644:13;3622:35;-1:-1:-1;692:17:22;3238:38;;;3767:18;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3767:18:22;-1:-1:-1;3760:25:22;-1:-1:-1;3854:4:22;3844:15;;3914:44;3926:11;3844:15;3950:7;3914:11;:44::i;:::-;3616:347;;;3545:418;;;:::o;1007:380:73:-;1105:14;;591:42;1278:2;1265:16;;1081:21;;1105:14;1265:16;591:42;1314:5;1303:68;1294:77;;1231:150;;1007:380;:::o;37180:522:24:-;37316:12;37440:257;37479:79;37521:7;37530:8;37540:17;37479:41;:79::i;:::-;37576:1;37595:93;37670:17;37595:66;37643:7;37652:8;37595:47;:66::i;:::-;:74;7070:16:3;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;37595:93:24;37440:12;:257::i;7829:207:67:-;7940:14;7956:17;8006:25;8019:11;8006:12;:25::i;955:327:41:-;1036:4;1178:56;696:18:72;578:36:53;2955:46;;2954:74;1227:6:41;1178:19;:56::i;:::-;:99;;;;1238:39;1258:10;1270:6;1238:19;:39::i;4897:201:52:-;5019:12;5063:8;5073:9;5084:8;5046:47;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;5039:54;;4897:201;;;;;:::o;40103:220:35:-;40169:24;40201:30;40234:32;40252:6;40260:2;40264:1;40234:17;:32::i;1229:823:19:-;1346:324;1363:2;1353:6;:12;1346:324;;1453:18;;1435:37;;1604:2;1616:17;;;;1591:15;;;;-1:-1:-1;;1643:12:19;1346:324;;;1679:6;1689:1;1679:11;1675:24;;1229:823;;;:::o;1675:24::-;1738:12;-1:-1:-1;;579:1:31;804:25:32;;782:48;1738:32:19;;2019:4;2007:9;2001:16;1997:27;1942:4;1938:9;1924:11;1918:18;1914:34;1867:167;1848:9;1832:210;1824:224;1229:823;;;:::o;7448:223:67:-;2756:4:2;2742:27;;2736:34;2742:27;;;2736:34;7564:35:67;;;;;;7513:14;;7631:33;;7623:42;12457:97:88;4006:378:64;4130:16;;;4144:1;4130:16;;;;;;;;4082:11;;;;4130:16;4144:1;4130:16;;;;;;;;;;-1:-1:-1;4130:16:64;4101:45;;4185:10;4152:9;4162:1;4152:12;;;;;;;;:::i;:::-;;;;;;:44;;;;;4241:6;-1:-1:-1;;;;;4225:24:64;4217:33;;4202:9;4212:1;4202:12;;;;;;;;:::i;:::-;;;;;;;;;;:48;4257:13;4273:62;1169:66;4308:9;4257:13;1298:66;4273:24;:62::i;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:332:116:-;72:6;125:2;113:9;104:7;100:23;96:32;93:52;;;141:1;138;131:12;93:52;180:9;167:23;230:66;223:5;219:78;212:5;209:89;199:117;;312:1;309;302:12;774:184;-1:-1:-1;;;823:1:116;816:88;923:4;920:1;913:15;947:4;944:1;937:15;963:253;1035:2;1029:9;1077:4;1065:17;;1112:18;1097:34;;1133:22;;;1094:62;1091:88;;;1159:18;;:::i;:::-;1195:2;1188:22;963:253;:::o;1221:::-;1293:2;1287:9;1335:4;1323:17;;1370:18;1355:34;;1391:22;;;1352:62;1349:88;;;1417:18;;:::i;1479:252::-;1551:2;1545:9;1593:3;1581:16;;1627:18;1612:34;;1648:22;;;1609:62;1606:88;;;1674:18;;:::i;1736:255::-;1808:2;1802:9;1850:6;1838:19;;1887:18;1872:34;;1908:22;;;1869:62;1866:88;;;1934:18;;:::i;1996:334::-;2067:2;2061:9;2123:2;2113:13;;-1:-1:-1;;2109:86:116;2097:99;;2226:18;2211:34;;2247:22;;;2208:62;2205:88;;;2273:18;;:::i;:::-;2309:2;2302:22;1996:334;;-1:-1:-1;1996:334:116:o;2335:183::-;2395:4;2428:18;2420:6;2417:30;2414:56;;;2450:18;;:::i;:::-;-1:-1:-1;2495:1:116;2491:14;2507:4;2487:25;;2335:183::o;2523:668::-;2577:5;2630:3;2623:4;2615:6;2611:17;2607:27;2597:55;;2648:1;2645;2638:12;2597:55;2684:6;2671:20;2710:4;2734:60;2750:43;2790:2;2750:43;:::i;:::-;2734:60;:::i;:::-;2816:3;2840:2;2835:3;2828:15;2868:4;2863:3;2859:14;2852:21;;2925:4;2919:2;2916:1;2912:10;2904:6;2900:23;2896:34;2882:48;;2953:3;2945:6;2942:15;2939:35;;;2970:1;2967;2960:12;2939:35;3006:4;2998:6;2994:17;3020:142;3036:6;3031:3;3028:15;3020:142;;;3102:17;;3090:30;;3140:12;;;;3053;;3020:142;;;-1:-1:-1;3180:5:116;2523:668;-1:-1:-1;;;;;;2523:668:116:o;3196:159::-;3263:20;;3323:6;3312:18;;3302:29;;3292:57;;3345:1;3342;3335:12;3360:740;3494:6;3502;3510;3518;3571:3;3559:9;3550:7;3546:23;3542:33;3539:53;;;3588:1;3585;3578:12;3539:53;3628:9;3615:23;3657:18;3698:2;3690:6;3687:14;3684:34;;;3714:1;3711;3704:12;3684:34;3737:61;3790:7;3781:6;3770:9;3766:22;3737:61;:::i;:::-;3727:71;;3851:2;3840:9;3836:18;3823:32;3807:48;;3880:2;3870:8;3867:16;3864:36;;;3896:1;3893;3886:12;3864:36;;3919:63;3974:7;3963:8;3952:9;3948:24;3919:63;:::i;:::-;3909:73;;;4001:37;4034:2;4023:9;4019:18;4001:37;:::i;:::-;3991:47;;4057:37;4090:2;4079:9;4075:18;4057:37;:::i;:::-;4047:47;;3360:740;;;;;;;:::o;4287:180::-;4346:6;4399:2;4387:9;4378:7;4374:23;4370:32;4367:52;;;4415:1;4412;4405:12;4367:52;-1:-1:-1;4438:23:116;;4287:180;-1:-1:-1;4287:180:116:o;4472:184::-;-1:-1:-1;;;4521:1:116;4514:88;4621:4;4618:1;4611:15;4645:4;4642:1;4635:15;4661:144;4746:1;4739:5;4736:12;4726:46;;4752:18;;:::i;:::-;4781;;4661:144::o;4810:439::-;4863:3;4901:5;4895:12;4928:6;4923:3;4916:19;4954:4;4983;4978:3;4974:14;4967:21;;5022:4;5015:5;5011:16;5045:1;5055:169;5069:6;5066:1;5063:13;5055:169;;;5130:13;;5118:26;;5164:12;;;;5199:15;;;;5091:1;5084:9;5055:169;;;-1:-1:-1;5240:3:116;;4810:439;-1:-1:-1;;;;;4810:439:116:o;5254:963::-;5459:2;5448:9;5441:21;5471:64;5531:2;5520:9;5516:18;5507:6;5501:13;5471:64;:::i;:::-;5589:2;5581:6;5577:15;5571:22;5566:2;5555:9;5551:18;5544:50;5648:2;5640:6;5636:15;5630:22;5625:2;5614:9;5610:18;5603:50;5708:2;5700:6;5696:15;5690:22;5684:3;5673:9;5669:19;5662:51;5768:3;5760:6;5756:16;5750:23;5744:3;5733:9;5729:19;5722:52;5422:4;5821:3;5813:6;5809:16;5803:23;5863:4;5857:3;5846:9;5842:19;5835:33;5891:63;5949:3;5938:9;5934:19;5920:12;5891:63;:::i;:::-;5877:77;;6003:3;5995:6;5991:16;5985:23;-1:-1:-1;;6062:9:116;6054:6;6050:22;6046:95;6039:4;6028:9;6024:20;6017:125;6159:52;6204:6;6188:14;6159:52;:::i;6222:1117::-;6282:5;6335:3;6328:4;6320:6;6316:17;6312:27;6302:55;;6353:1;6350;6343:12;6302:55;6389:6;6376:20;6415:4;6439:60;6455:43;6495:2;6455:43;:::i;6439:60::-;6533:15;;;6619:1;6615:10;;;;6603:23;;6599:32;;;6564:12;;;;6643:15;;;6640:35;;;6671:1;6668;6661:12;6640:35;6707:2;6699:6;6695:15;6719:591;6735:6;6730:3;6727:15;6719:591;;;6813:4;6807:3;6802;6798:13;6794:24;6791:114;;;6859:1;6888:2;6884;6877:14;6791:114;6931:22;;:::i;:::-;6980:17;;6966:32;;7047:12;;;7034:26;7018:14;;;7011:50;7084:2;7135:12;;;7122:26;7106:14;;;7099:50;7172:2;7223:12;;;7210:26;7194:14;;;7187:50;7250:18;;7288:12;;;;6761:4;6752:14;6719:591;;7344:515;7471:6;7479;7487;7540:2;7528:9;7519:7;7515:23;7511:32;7508:52;;;7556:1;7553;7546:12;7508:52;7592:9;7579:23;7569:33;;7649:2;7638:9;7634:18;7621:32;7611:42;;7704:2;7693:9;7689:18;7676:32;7731:18;7723:6;7720:30;7717:50;;;7763:1;7760;7753:12;7717:50;7786:67;7845:7;7836:6;7825:9;7821:22;7786:67;:::i;:::-;7776:77;;;7344:515;;;;;:::o;7864:758::-;8010:6;8018;8026;8079:2;8067:9;8058:7;8054:23;8050:32;8047:52;;;8095:1;8092;8085:12;8047:52;8134:9;8121:23;8173:1;8166:5;8163:12;8153:40;;8189:1;8186;8179:12;8153:40;8212:5;-1:-1:-1;8268:2:116;8253:18;;8240:32;8291:18;8321:14;;;8318:34;;;8348:1;8345;8338:12;8318:34;8371:61;8424:7;8415:6;8404:9;8400:22;8371:61;:::i;:::-;8361:71;;8485:2;8474:9;8470:18;8457:32;8441:48;;8514:2;8504:8;8501:16;8498:36;;;8530:1;8527;8520:12;8498:36;;8553:63;8608:7;8597:8;8586:9;8582:24;8553:63;:::i;8809:154::-;-1:-1:-1;;;;;8888:5:116;8884:54;8877:5;8874:65;8864:93;;8953:1;8950;8943:12;8968:483;9061:6;9069;9122:2;9110:9;9101:7;9097:23;9093:32;9090:52;;;9138:1;9135;9128:12;9090:52;9177:9;9164:23;9196:31;9221:5;9196:31;:::i;:::-;9246:5;-1:-1:-1;9302:2:116;9287:18;;9274:32;9329:18;9318:30;;9315:50;;;9361:1;9358;9351:12;9315:50;9384:61;9437:7;9428:6;9417:9;9413:22;9384:61;:::i;:::-;9374:71;;;8968:483;;;;;:::o;9456:248::-;9524:6;9532;9585:2;9573:9;9564:7;9560:23;9556:32;9553:52;;;9601:1;9598;9591:12;9553:52;-1:-1:-1;;9624:23:116;;;9694:2;9679:18;;;9666:32;;-1:-1:-1;9456:248:116:o;10229:184::-;-1:-1:-1;;;10278:1:116;10271:88;10378:4;10375:1;10368:15;10402:4;10399:1;10392:15;10418:277;10485:6;10538:2;10526:9;10517:7;10513:23;10509:32;10506:52;;;10554:1;10551;10544:12;10506:52;10586:9;10580:16;10639:5;10632:13;10625:21;10618:5;10615:32;10605:60;;10661:1;10658;10651:12;11785:251;11855:6;11908:2;11896:9;11887:7;11883:23;11879:32;11876:52;;;11924:1;11921;11914:12;11876:52;11956:9;11950:16;11975:31;12000:5;11975:31;:::i;13576:691::-;13888:48;13926:9;13918:6;13888:48;:::i;:::-;13972:3;13967:2;13956:9;13952:18;13945:31;13869:4;13999:78;14072:3;14061:9;14057:19;14049:6;13999:78;:::i;:::-;14125:9;14117:6;14113:22;14108:2;14097:9;14093:18;14086:50;14153:65;14211:6;14203;14153:65;:::i;:::-;14145:73;;;14254:6;14249:2;14238:9;14234:18;14227:34;13576:691;;;;;;;:::o;14631:184::-;-1:-1:-1;;;14680:1:116;14673:88;14780:4;14777:1;14770:15;14804:4;14801:1;14794:15;14820:195;14859:3;-1:-1:-1;;14883:5:116;14880:77;14877:103;;14960:18;;:::i;:::-;-1:-1:-1;15007:1:116;14996:13;;14820:195::o;15020:988::-;15240:4;15269:2;15309;15298:9;15294:18;15339:6;15328:9;15321:25;15365:2;15403;15398;15387:9;15383:18;15376:30;15426:6;15461;15455:13;15492:6;15484;15477:22;15518:2;15508:12;;15551:2;15540:9;15536:18;15529:25;;15589:2;15581:6;15577:15;15610:1;15620:362;15634:6;15631:1;15628:13;15620:362;;;15693:13;;15731:9;;15719:22;;15781:11;;;15775:18;15761:12;;;15754:40;15834:11;;;15828:18;15814:12;;;15807:40;15887:11;;15881:18;15867:12;;;15860:40;15929:4;15920:14;;;;15957:15;;;;15656:1;15649:9;15620:362;;;-1:-1:-1;15999:3:116;;15020:988;-1:-1:-1;;;;;;;;;15020:988:116:o;16013:119::-;16100:1;16093:5;16090:12;16080:46;;16106:18;;:::i;16137:250::-;16222:1;16232:113;16246:6;16243:1;16240:13;16232:113;;;16322:11;;;16316:18;16303:11;;;16296:39;16268:2;16261:10;16232:113;;;-1:-1:-1;;16379:1:116;16361:16;;16354:27;16137:250::o;16392:329::-;16433:3;16471:5;16465:12;16498:6;16493:3;16486:19;16514:76;16583:6;16576:4;16571:3;16567:14;16560:4;16553:5;16549:16;16514:76;:::i;:::-;16635:2;16623:15;-1:-1:-1;;16619:88:116;16610:98;;;;16710:4;16606:109;;16392:329;-1:-1:-1;;16392:329:116:o;16726:430::-;16947:6;16936:9;16929:25;16963:44;17000:6;16963:44;:::i;:::-;17043:6;17038:2;17027:9;17023:18;17016:34;17086:2;17081;17070:9;17066:18;17059:30;16910:4;17106:44;17146:2;17135:9;17131:18;17123:6;17106:44;:::i;17698:832::-;17761:5;17814:3;17807:4;17799:6;17795:17;17791:27;17781:55;;17832:1;17829;17822:12;17781:55;17861:6;17855:13;17887:4;17911:60;17927:43;17967:2;17927:43;:::i;17911:60::-;17993:3;18017:2;18012:3;18005:15;18045:4;18040:3;18036:14;18029:21;;18102:4;18096:2;18093:1;18089:10;18081:6;18077:23;18073:34;18059:48;;18130:3;18122:6;18119:15;18116:35;;;18147:1;18144;18137:12;18116:35;18183:4;18175:6;18171:17;18197:304;18213:6;18208:3;18205:15;18197:304;;;18286:3;18280:10;18334:4;18327:5;18323:16;18316:5;18313:27;18303:125;;18382:1;18411:2;18407;18400:14;18303:125;18441:18;;18479:12;;;;18230;;18197:304;;18535:845;18643:6;18696:2;18684:9;18675:7;18671:23;18667:32;18664:52;;;18712:1;18709;18702:12;18664:52;18745:9;18739:16;18774:18;18815:2;18807:6;18804:14;18801:34;;;18831:1;18828;18821:12;18801:34;18854:22;;;;18910:4;18892:16;;;18888:27;18885:47;;;18928:1;18925;18918:12;18885:47;18954:22;;:::i;:::-;19005:2;18999:9;18992:5;18985:24;19055:2;19051;19047:11;19041:18;19036:2;19029:5;19025:14;19018:42;19106:2;19102;19098:11;19092:18;19087:2;19080:5;19076:14;19069:42;19157:2;19153;19149:11;19143:18;19138:2;19131:5;19127:14;19120:42;19201:3;19197:2;19193:12;19187:19;19231:2;19221:8;19218:16;19215:36;;;19247:1;19244;19237:12;19215:36;19284:65;19341:7;19330:8;19326:2;19322:17;19284:65;:::i;:::-;19278:3;19267:15;;19260:90;-1:-1:-1;19271:5:116;18535:845;-1:-1:-1;;;;;18535:845:116:o;19385:184::-;-1:-1:-1;;;19434:1:116;19427:88;19534:4;19531:1;19524:15;19558:4;19555:1;19548:15;19574:308;19613:1;19639;19629:35;;19644:18;;:::i;:::-;-1:-1:-1;;19758:1:116;19755:73;19686:66;19683:1;19680:73;19676:153;19673:179;;;19832:18;;:::i;:::-;-1:-1:-1;19866:10:116;;19574:308::o;19887:200::-;19953:9;;;19926:4;19981:9;;20009:10;;20021:12;;;20005:29;20044:12;;;20036:21;;20002:56;19999:82;;;20061:18;;:::i;20759:125::-;20824:9;;;20845:10;;;20842:36;;;20858:18;;:::i;20889:112::-;20921:1;20947;20937:35;;20952:18;;:::i;:::-;-1:-1:-1;20986:9:116;;20889:112::o;21006:120::-;21046:1;21072;21062:35;;21077:18;;:::i;:::-;-1:-1:-1;21111:9:116;;21006:120::o;21384:487::-;21682:6;21671:9;21664:25;21725:2;21720;21709:9;21705:18;21698:30;21645:4;21745:77;21818:2;21807:9;21803:18;21795:6;21745:77;:::i;:::-;21737:85;;21858:6;21853:2;21842:9;21838:18;21831:34;21384:487;;;;;;:::o;21876:568::-;21929:5;21982:3;21975:4;21967:6;21963:17;21959:27;21949:55;;22000:1;21997;21990:12;21949:55;22029:6;22023:13;22055:18;22051:2;22048:26;22045:52;;;22077:18;;:::i;:::-;22121:114;22229:4;-1:-1:-1;;22153:4:116;22149:2;22145:13;22141:86;22137:97;22121:114;:::i;:::-;22260:2;22251:7;22244:19;22306:3;22299:4;22294:2;22286:6;22282:15;22278:26;22275:35;22272:55;;;22323:1;22320;22313:12;22272:55;22336:77;22410:2;22403:4;22394:7;22390:18;22383:4;22375:6;22371:17;22336:77;:::i;22449:654::-;22590:6;22598;22606;22659:2;22647:9;22638:7;22634:23;22630:32;22627:52;;;22675:1;22672;22665:12;22627:52;22708:9;22702:16;22737:18;22778:2;22770:6;22767:14;22764:34;;;22794:1;22791;22784:12;22764:34;22817:60;22869:7;22860:6;22849:9;22845:22;22817:60;:::i;:::-;22807:70;;22917:2;22906:9;22902:18;22896:25;22886:35;;22967:2;22956:9;22952:18;22946:25;22930:41;;22996:2;22986:8;22983:16;22980:36;;;23012:1;23009;23002:12;22980:36;;23035:62;23089:7;23078:8;23067:9;23063:24;23035:62;:::i;23108:407::-;23191:5;23231;23225:12;23273:4;23266:5;23262:16;23256:23;23298:66;23390:2;23386;23382:11;23373:20;;23416:1;23408:6;23405:13;23402:107;;;23477:1;23473:14;;;;23470:1;23466:22;23462:31;;;23454:40;23450:49;;23108:407;-1:-1:-1;;23108:407:116:o;23773:525::-;24013:3;24052:1;24044:6;24041:13;24031:47;;24058:18;;:::i;:::-;-1:-1:-1;24103:3:116;24099:16;;;;24087:29;;24141:1;24132:11;;24125:27;;;;24177:2;24168:12;;24161:28;;;;24214:2;24205:12;;24198:28;24251:2;24242:12;;24235:28;24288:3;24279:13;;23773:525::o;24303:492::-;24478:3;24516:6;24510:13;24532:66;24591:6;24586:3;24579:4;24571:6;24567:17;24532:66;:::i;:::-;24661:13;;24620:16;;;;24683:70;24661:13;24620:16;24730:4;24718:17;;24683:70;:::i;:::-;24769:20;;24303:492;-1:-1:-1;;;;24303:492:116:o;24800:813::-;25193:6;25182:9;25175:25;25236:3;25231:2;25220:9;25216:18;25209:31;25156:4;25263:78;25336:3;25325:9;25321:19;25313:6;25263:78;:::i;:::-;25389:9;25381:6;25377:22;25372:2;25361:9;25357:18;25350:50;25423:32;25448:6;25440;25423:32;:::i;:::-;25409:46;;25491:6;25486:2;25475:9;25471:18;25464:34;25547:9;25539:6;25535:22;25529:3;25518:9;25514:19;25507:51;25575:32;25600:6;25592;25575:32;:::i;:::-;25567:40;24800:813;-1:-1:-1;;;;;;;;24800:813:116:o;25618:567::-;25940:6;25929:9;25922:25;25983:3;25978:2;25967:9;25963:18;25956:31;25903:4;26004:78;26077:3;26066:9;26062:19;26054:6;26004:78;:::i;:::-;26130:4;26118:17;;;;26113:2;26098:18;;26091:45;-1:-1:-1;26167:2:116;26152:18;26145:34;25996:86;25618:567;-1:-1:-1;;25618:567:116:o;26190:184::-;26260:6;26313:2;26301:9;26292:7;26288:23;26284:32;26281:52;;;26329:1;26326;26319:12;26281:52;-1:-1:-1;26352:16:116;;26190:184;-1:-1:-1;26190:184:116:o;26379:728::-;26747:6;26736:9;26729:25;26790:3;26785:2;26774:9;26770:18;26763:31;26710:4;26817:78;26890:3;26879:9;26875:19;26867:6;26817:78;:::i;:::-;26943:4;26935:6;26931:17;26926:2;26915:9;26911:18;26904:45;26997:9;26989:6;26985:22;26980:2;26969:9;26965:18;26958:50;27025:32;27050:6;27042;27025:32;:::i;:::-;27017:40;;;27094:6;27088:3;27077:9;27073:19;27066:35;26379:728;;;;;;;;:::o;27112:339::-;27289:2;27278:9;27271:21;27252:4;27309:44;27349:2;27338:9;27334:18;27326:6;27309:44;:::i;:::-;27301:52;;-1:-1:-1;;;;;27393:6:116;27389:55;27384:2;27373:9;27369:18;27362:83;27112:339;;;;;:::o;27456:710::-;27564:6;27617:3;27605:9;27596:7;27592:23;27588:33;27585:53;;;27634:1;27631;27624:12;27585:53;27660:22;;:::i;:::-;27711:9;27705:16;27698:5;27691:31;27775:2;27764:9;27760:18;27754:25;27749:2;27742:5;27738:14;27731:49;27833:2;27822:9;27818:18;27812:25;27807:2;27800:5;27796:14;27789:49;27891:2;27880:9;27876:18;27870:25;27865:2;27858:5;27854:14;27847:49;27950:3;27939:9;27935:19;27929:26;27923:3;27916:5;27912:15;27905:51;28010:3;27999:9;27995:19;27989:26;27983:3;27976:5;27972:15;27965:51;28070:3;28059:9;28055:19;28049:26;28043:3;28036:5;28032:15;28025:51;28130:3;28119:9;28115:19;28109:26;28103:3;28096:5;28092:15;28085:51;28155:5;28145:15;;;27456:710;;;;:::o;28171:998::-;28271:6;28324:2;28312:9;28303:7;28299:23;28295:32;28292:52;;;28340:1;28337;28330:12;28292:52;28373:9;28367:16;28402:18;28443:2;28435:6;28432:14;28429:34;;;28459:1;28456;28449:12;28429:34;28482:22;;;;28538:6;28520:16;;;28516:29;28513:49;;;28558:1;28555;28548:12;28513:49;28584:22;;:::i;:::-;28635:2;28629:9;28622:5;28615:24;28678:2;28674;28670:11;28664:18;28707:2;28697:8;28694:16;28691:36;;;28723:1;28720;28713:12;28691:36;28759:65;28816:7;28805:8;28801:2;28797:17;28759:65;:::i;:::-;28754:2;28747:5;28743:14;28736:89;;28871:2;28867;28863:11;28857:18;28852:2;28845:5;28841:14;28834:42;28922:2;28918;28914:11;28908:18;28903:2;28896:5;28892:14;28885:42;28974:3;28970:2;28966:12;28960:19;28954:3;28947:5;28943:15;28936:44;29027:3;29023:2;29019:12;29013:19;29007:3;29000:5;28996:15;28989:44;29080:3;29076:2;29072:12;29066:19;29060:3;29053:5;29049:15;29042:44;29133:3;29129:2;29125:12;29119:19;29113:3;29106:5;29102:15;29095:44;29158:5;29148:15;;;;;28171:998;;;;:::o;29364:1068::-;29458:6;29489:2;29532;29520:9;29511:7;29507:23;29503:32;29500:52;;;29548:1;29545;29538:12;29500:52;29581:9;29575:16;29610:18;29651:2;29643:6;29640:14;29637:34;;;29667:1;29664;29657:12;29637:34;29705:6;29694:9;29690:22;29680:32;;29750:7;29743:4;29739:2;29735:13;29731:27;29721:55;;29772:1;29769;29762:12;29721:55;29801:2;29795:9;29824:60;29840:43;29880:2;29840:43;:::i;29824:60::-;29918:15;;;30000:1;29996:10;;;;29988:19;;29984:28;;;29949:12;;;;30024:19;;;30021:39;;;30056:1;30053;30046:12;30021:39;30080:11;;;;30100:302;30116:6;30111:3;30108:15;30100:302;;;30189:3;30183:10;30237:2;30230:5;30226:14;30219:5;30216:25;30206:123;;30283:1;30312:2;30308;30301:14;30206:123;30342:18;;30133:12;;;;30380;;;;30100:302;;30437:168;30510:9;;;30541;;30558:15;;;30552:22;;30538:37;30528:71;;30579:18;;:::i;30610:216::-;30674:9;;;30702:11;;;30649:3;30732:9;;30760:10;;30756:19;;30785:10;;30777:19;;30753:44;30750:70;;;30800:18;;:::i;30831:292::-;30903:9;;;30870:7;30928:9;;30945:66;30939:73;;30924:89;30921:115;;;31016:18;;:::i;:::-;31089:1;31080:7;31075:16;31072:1;31069:23;31065:1;31058:9;31055:38;31045:72;;31097:18;;:::i;31313:1023::-;31759:6;31754:3;31747:19;31796:6;31791:2;31786:3;31782:12;31775:28;31833:6;31828:2;31823:3;31819:12;31812:28;31870:6;31865:2;31860:3;31856:12;31849:28;31931:6;31924:14;31917:22;31912:3;31908:32;31902:3;31897;31893:13;31886:55;31995:6;31988:14;31981:22;31976:3;31972:32;31966:3;31961;31957:13;31950:55;32014:38;32047:3;32042;32038:13;32030:6;20526:13;20519:21;20514:3;20510:31;20498:44;;20447:101;32014:38;32083:6;32077:3;32072;32068:13;32061:29;32121:6;32115:3;32110;32106:13;32099:29;32137:38;32170:3;32165;32161:13;32153:6;20526:13;20519:21;20514:3;20510:31;20498:44;;20447:101;32137:38;20526:13;;20519:21;20514:3;20510:31;32218:3;32209:13;;20498:44;32248:3;32239:13;;32232:30;;;;32287:3;32278:13;;32271:30;32326:3;32317:13;;;-1:-1:-1;;;;;;;;;;31313:1023:116:o;32530:152::-;32614:13;;32656:1;32646:12;;32636:40;;32672:1;32669;32662:12;32687:665;32752:5;32805:3;32798:4;32790:6;32786:17;32782:27;32772:55;;32823:1;32820;32813:12;32772:55;32852:6;32846:13;32878:4;32902:60;32918:43;32958:2;32918:43;:::i;32902:60::-;32984:3;33008:2;33003:3;32996:15;33036:4;33031:3;33027:14;33020:21;;33093:4;33087:2;33084:1;33080:10;33072:6;33068:23;33064:34;33050:48;;33121:3;33113:6;33110:15;33107:35;;;33138:1;33135;33128:12;33107:35;33174:4;33166:6;33162:17;33188:135;33204:6;33199:3;33196:15;33188:135;;;33270:10;;33258:23;;33301:12;;;;33221;;33188:135;;33357:1103;33458:6;33511:2;33499:9;33490:7;33486:23;33482:32;33479:52;;;33527:1;33524;33517:12;33479:52;33560:9;33554:16;33589:18;33630:2;33622:6;33619:14;33616:34;;;33646:1;33643;33636:12;33616:34;33669:22;;;;33725:6;33707:16;;;33703:29;33700:49;;;33745:1;33742;33735:12;33700:49;33771:22;;:::i;:::-;33822:2;33816:9;33809:5;33802:24;33872:2;33868;33864:11;33858:18;33853:2;33846:5;33842:14;33835:42;33909:47;33952:2;33948;33944:11;33909:47;:::i;:::-;33904:2;33897:5;33893:14;33886:71;34003:2;33999;33995:11;33989:18;33984:2;33977:5;33973:14;33966:42;34055:3;34051:2;34047:12;34041:19;34035:3;34028:5;34024:15;34017:44;34108:3;34104:2;34100:12;34094:19;34088:3;34081:5;34077:15;34070:44;34153:3;34149:2;34145:12;34139:19;34183:2;34173:8;34170:16;34167:36;;;34199:1;34196;34189:12;34167:36;34236:67;34295:7;34284:8;34280:2;34276:17;34236:67;:::i;:::-;34230:3;34219:15;;34212:92;-1:-1:-1;34351:3:116;34343:12;;;34337:19;34320:15;;;34313:44;34376:3;34417:11;;;34411:18;34395:14;;;34388:42;;;;-1:-1:-1;34223:5:116;33357:1103;-1:-1:-1;;;33357:1103:116:o;34797:175::-;34834:3;34878:4;34871:5;34867:16;34907:4;34898:7;34895:17;34892:43;;34915:18;;:::i;:::-;34964:1;34951:15;;34797:175;-1:-1:-1;;34797:175:116:o;34977:319::-;35183:6;35172:9;35165:25;35226:2;35221;35210:9;35206:18;35199:30;35146:4;35246:44;35286:2;35275:9;35271:18;35263:6;35246:44;:::i;35301:335::-;35380:6;35433:2;35421:9;35412:7;35408:23;35404:32;35401:52;;;35449:1;35446;35439:12;35401:52;35482:9;35476:16;35515:18;35507:6;35504:30;35501:50;;;35547:1;35544;35537:12;35501:50;35570:60;35622:7;35613:6;35602:9;35598:22;35570:60;:::i;35641:925::-;36090:66;36082:6;36078:79;36073:3;36066:92;36048:3;36177;36209:2;36205:1;36200:3;36196:11;36189:23;36241:6;36235:13;36257:74;36324:6;36320:1;36315:3;36311:11;36304:4;36296:6;36292:17;36257:74;:::i;:::-;36359:6;36354:3;36350:16;36340:26;;36394:2;36390:1;36386:2;36382:10;36375:22;36428:6;36422:13;36406:29;;36444:75;36510:8;36506:1;36502:2;36498:10;36491:4;36483:6;36479:17;36444:75;:::i;:::-;36539:17;36558:1;36535:25;;35641:925;-1:-1:-1;;;;;35641:925:116:o;36571:219::-;36720:2;36709:9;36702:21;36683:4;36740:44;36780:2;36769:9;36765:18;36757:6;36740:44;:::i;36795:713::-;37141:6;37136:3;37129:19;37178:6;37173:2;37168:3;37164:12;37157:28;37194:44;37231:6;37194:44;:::i;:::-;37272:3;37268:16;;;;37263:2;37254:12;;37247:38;37310:2;37301:12;;37294:28;;;;37347:2;37338:12;;37331:28;;;;37384:3;37375:13;;37368:29;37422:3;37413:13;;37406:29;37460:3;37451:13;;37444:29;37498:3;37489:13;;36795:713;-1:-1:-1;;36795:713:116:o;37513:128::-;37580:9;;;37601:11;;;37598:37;;;37615:18;;:::i;37646:639::-;37896:6;37891:3;37884:19;37866:3;37922:2;37955;37950:3;37946:12;37987:6;37981:13;38052:2;38044:6;38040:15;38073:1;38083:175;38097:6;38094:1;38091:13;38083:175;;;38160:13;;38146:28;;38196:14;;;;38233:15;;;;38119:1;38112:9;38083:175;;;-1:-1:-1;38274:5:116;;37646:639;-1:-1:-1;;;;;;;37646:639:116:o;38290:359::-;38493:2;38482:9;38475:21;38456:4;38513:44;38553:2;38542:9;38538:18;38530:6;38513:44;:::i;:::-;38588:2;38573:18;;38566:34;;;;-1:-1:-1;38631:2:116;38616:18;38609:34;38505:52;38290:359;-1:-1:-1;38290:359:116:o;38980:710::-;39314:3;39303:9;39296:22;39277:4;39341:78;39414:3;39403:9;39399:19;39391:6;39341:78;:::i;:::-;39467:9;39459:6;39455:22;39450:2;39439:9;39435:18;39428:50;39501:32;39526:6;39518;39501:32;:::i;:::-;39487:46;;39569:6;39564:2;39553:9;39549:18;39542:34;39624:9;39616:6;39612:22;39607:2;39596:9;39592:18;39585:50;39652:32;39677:6;39669;39652:32;:::i;:::-;39644:40;38980:710;-1:-1:-1;;;;;;;38980:710:116:o;39695:917::-;40148:6;40137:9;40130:25;40191:3;40186:2;40175:9;40171:18;40164:31;40111:4;40218:78;40291:3;40280:9;40276:19;40268:6;40218:78;:::i;:::-;40344:9;40336:6;40332:22;40327:2;40316:9;40312:18;40305:50;40378:32;40403:6;40395;40378:32;:::i;:::-;40364:46;;40446:6;40441:2;40430:9;40426:18;40419:34;40502:9;40494:6;40490:22;40484:3;40473:9;40469:19;40462:51;40530:32;40555:6;40547;40530:32;:::i;:::-;40522:40;;;40599:6;40593:3;40582:9;40578:19;40571:35;39695:917;;;;;;;;;:::o;40617:532::-;40868:2;40857:9;40850:21;40831:4;40894:77;40967:2;40956:9;40952:18;40944:6;40894:77;:::i;:::-;41019:14;41011:6;41007:27;41002:2;40991:9;40987:18;40980:55;41083:9;41075:6;41071:22;41066:2;41055:9;41051:18;41044:50;41111:32;41136:6;41128;41111:32;:::i;41154:636::-;41464:6;41453:9;41446:25;41507:3;41502:2;41491:9;41487:18;41480:31;41427:4;41534:78;41607:3;41596:9;41592:19;41584:6;41534:78;:::i;:::-;41660:14;41652:6;41648:27;41643:2;41632:9;41628:18;41621:55;41724:9;41716:6;41712:22;41707:2;41696:9;41692:18;41685:50;41752:32;41777:6;41769;41752:32;:::i;42055:191::-;42090:3;42121:66;42114:5;42111:77;42108:103;;42191:18;;:::i;:::-;-1:-1:-1;42231:1:116;42227:13;;42055:191::o;42251:462::-;42513:6;42502:9;42495:25;42556:2;42551;42540:9;42536:18;42529:30;42476:4;42576:77;42649:2;42638:9;42634:18;42626:6;42576:77;:::i;:::-;42568:85;;42701:4;42693:6;42689:17;42684:2;42673:9;42669:18;42662:45;42251:462;;;;;;:::o;42905:287::-;43034:3;43072:6;43066:13;43088:66;43147:6;43142:3;43135:4;43127:6;43123:17;43088:66;:::i;:::-;43170:16;;;;;42905:287;-1:-1:-1;;42905:287:116:o;43480:530::-;43665:3;43703:6;43697:13;43719:66;43778:6;43773:3;43766:4;43758:6;43754:17;43719:66;:::i;:::-;43854:2;43850:15;;;;43867:66;43846:88;43807:16;;;;43832:103;;;43962:2;43951:14;;43944:30;;;;44001:2;43990:14;;43480:530;-1:-1:-1;;43480:530:116:o","linkReferences":{"src/libraries/LibChunks.sol":{"LibChunks":[{"start":8863,"length":20}]}}},"methodIdentifiers":{"_calculateMagicAttack()":"bfea0b85","_msgSender()":"119df25f","_msgValue()":"45ec9354","_world()":"e1af802c","createMatch(uint8,bytes32[],bytes32[])":"aaa417b7","endTurn(bytes32,bytes32,(bytes32,bytes32,bytes32,uint256)[])":"98d239b1","executeCombat(uint256,bytes32,(bytes32,bytes32,bytes32,uint256)[])":"fc88ff63","getEncounter(bytes32)":"4dda27e8","isParticipant(address,bytes32[])":"b2467894","isParticipant(bytes32,bytes32)":"c6ca743c","isValidPvE(bytes32[],bytes32[],uint16,uint16)":"15451020","supportsInterface(bytes4)":"01ffc9a7"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"start\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"end\",\"type\":\"uint256\"}],\"name\":\"Slice_OutOfBounds\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"resource\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"caller\",\"type\":\"address\"}],\"name\":\"World_AccessDenied\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"functionSelector\",\"type\":\"bytes4\"}],\"name\":\"World_FunctionSelectorNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_ResourceNotFound\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"staticData\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"EncodedLengths\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"dynamicData\",\"type\":\"bytes\"}],\"name\":\"Store_SetRecord\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Store_SpliceStaticData\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"_calculateMagicAttack\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"_msgSender\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"_msgValue\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"_world\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"enum EncounterType\",\"name\":\"encounterType\",\"type\":\"uint8\"},{\"internalType\":\"bytes32[]\",\"name\":\"attackers\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes32[]\",\"name\":\"defenders\",\"type\":\"bytes32[]\"}],\"name\":\"createMatch\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"encounterId\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"encounterId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"playerId\",\"type\":\"bytes32\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"attackerEntityId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"defenderEntityId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"actionId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"weaponId\",\"type\":\"uint256\"}],\"internalType\":\"struct Action[]\",\"name\":\"actions\",\"type\":\"tuple[]\"}],\"name\":\"endTurn\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"randomNumber\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"encounterId\",\"type\":\"bytes32\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"attackerEntityId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"defenderEntityId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"actionId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"weaponId\",\"type\":\"uint256\"}],\"internalType\":\"struct Action[]\",\"name\":\"actions\",\"type\":\"tuple[]\"}],\"name\":\"executeCombat\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"encounterId\",\"type\":\"bytes32\"}],\"name\":\"getEncounter\",\"outputs\":[{\"components\":[{\"internalType\":\"enum EncounterType\",\"name\":\"encounterType\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"start\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"end\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"currentTurn\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxTurns\",\"type\":\"uint256\"},{\"internalType\":\"bytes32[]\",\"name\":\"defenders\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes32[]\",\"name\":\"attackers\",\"type\":\"bytes32[]\"}],\"internalType\":\"struct CombatEncounterData\",\"name\":\"_encounterData\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"bytes32[]\",\"name\":\"participants\",\"type\":\"bytes32[]\"}],\"name\":\"isParticipant\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_isParticipant\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"playerId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"encounterId\",\"type\":\"bytes32\"}],\"name\":\"isParticipant\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_isParticipant\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"attackers\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes32[]\",\"name\":\"defenders\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint16\",\"name\":\"x\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"y\",\"type\":\"uint16\"}],\"name\":\"isValidPvE\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_isValidPvE\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"}],\"devdoc\":{\"errors\":{\"Slice_OutOfBounds(bytes,uint256,uint256)\":[{\"details\":\"Raised if `start` is greater than `end` or `end` greater than the length of `data`.\",\"params\":{\"data\":\"The bytes array to subslice.\",\"end\":\"The end index for the subslice.\",\"start\":\"The start index for the subslice.\"}}],\"World_AccessDenied(string,address)\":[{\"params\":{\"caller\":\"The address of the user trying to access the resource.\",\"resource\":\"The resource's identifier.\"}}],\"World_FunctionSelectorNotFound(bytes4)\":[{\"params\":{\"functionSelector\":\"The function selector in question.\"}}],\"World_ResourceNotFound(bytes32,string)\":[{\"params\":{\"resourceId\":\"The ID of the resource.\",\"resourceIdString\":\"The string representation of the resource ID.\"}}]},\"events\":{\"Store_SetRecord(bytes32,bytes32[],bytes,bytes32,bytes)\":{\"params\":{\"dynamicData\":\"The dynamic data of the record.\",\"encodedLengths\":\"The encoded lengths of the dynamic data of the record.\",\"keyTuple\":\"An array representing the composite key for the record.\",\"staticData\":\"The static data of the record.\",\"tableId\":\"The ID of the table where the record is set.\"}},\"Store_SpliceStaticData(bytes32,bytes32[],uint48,bytes)\":{\"details\":\"In static data, data is always overwritten starting at the start position, so the total length of the data remains the same and no data is shifted.\",\"params\":{\"data\":\"The data to write to the static data of the record at the start byte.\",\"keyTuple\":\"An array representing the key for the record.\",\"start\":\"The start position in bytes for the splice operation.\",\"tableId\":\"The ID of the table where the data is spliced.\"}}},\"kind\":\"dev\",\"methods\":{\"_msgSender()\":{\"returns\":{\"sender\":\"The `msg.sender` in the call to the World contract before the World routed the call to the WorldContextConsumer contract.\"}},\"_msgValue()\":{\"returns\":{\"value\":\"The `msg.value` in the call to the World contract before the World routed the call to the WorldContextConsumer contract.\"}},\"_world()\":{\"returns\":{\"_0\":\"The address of the World contract that routed the call to this WorldContextConsumer.\"}},\"endTurn(bytes32,bytes32,(bytes32,bytes32,bytes32,uint256)[])\":{\"params\":{\"actions\":\": for a pve encounter player actions are calculated first and the mobs.\",\"encounterId\":\"the bytes32 id of the encounter\"}},\"supportsInterface(bytes4)\":{\"params\":{\"interfaceId\":\"The ID of the interface in question.\"},\"returns\":{\"_0\":\"True if the interface is supported, false otherwise.\"}}},\"version\":1},\"userdoc\":{\"errors\":{\"Slice_OutOfBounds(bytes,uint256,uint256)\":[{\"notice\":\"Error raised when the provided slice is out of bounds.\"}],\"World_AccessDenied(string,address)\":[{\"notice\":\"Raised when a user tries to access a resource they don't have permission for.\"}],\"World_FunctionSelectorNotFound(bytes4)\":[{\"notice\":\"Raised when the specified function selector is not found.\"}],\"World_ResourceNotFound(bytes32,string)\":[{\"notice\":\"Raised when the specified resource is not found.\"}]},\"events\":{\"Store_SetRecord(bytes32,bytes32[],bytes,bytes32,bytes)\":{\"notice\":\"Emitted when a new record is set in the store.\"},\"Store_SpliceStaticData(bytes32,bytes32[],uint48,bytes)\":{\"notice\":\"Emitted when static data in the store is spliced.\"}},\"kind\":\"user\",\"methods\":{\"_msgSender()\":{\"notice\":\"Extract the `msg.sender` from the context appended to the calldata.\"},\"_msgValue()\":{\"notice\":\"Extract the `msg.value` from the context appended to the calldata.\"},\"_world()\":{\"notice\":\"Get the address of the World contract that routed the call to this WorldContextConsumer.\"},\"supportsInterface(bytes4)\":{\"notice\":\"Checks if an interface is supported by the contract. using ERC-165 supportsInterface (see https://eips.ethereum.org/EIPS/eip-165)\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/systems/CombatSystem.sol\":\"CombatSystem\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":3000},\"remappings\":[\":@codegen/=src/codegen/\",\":@erc1155/=lib/ERC1155-puppet/\",\":@interfaces/=src/interfaces/\",\":@latticexyz/=node_modules/@latticexyz/\",\":@libraries/=src/libraries/\",\":@openzeppelin-upgradeable/=node_modules/@openzeppelin/contracts-upgradeable/\",\":@openzeppelin/=node_modules/@openzeppelin/contracts/\",\":@pythnetwork/=node_modules/@pythnetwork/entropy-sdk-solidity/\",\":@systems/=src/systems/\",\":@tables/=src/codegen/tables/\",\":@test/=test/\",\":@world/=src/codegen/world/\",\":ERC1155-puppet/=lib/ERC1155-puppet/\",\":ds-test/=node_modules/ds-test/src/\",\":forge-std/=node_modules/forge-std/src/\"]},\"sources\":{\"constants.sol\":{\"keccak256\":\"0xea645b3f1e153c1d76fe3ed1c15a22129928d78711f9eb6476ddc123460f25ed\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0e57cd5c8ca30c40156f7379c556ea7ca3394da3da286056cf9554e7c1567b14\",\"dweb:/ipfs/QmSdQyCEp65JnngKxz4d6QRzdDcMqB3g2Aw5J9vuEMgEW1\"]},\"node_modules/@latticexyz/schema-type/src/solidity/SchemaType.sol\":{\"keccak256\":\"0x650927696f7518fa216f2d6001835e9fdb419518034c781e86d2a2d33f4ecd2a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://72e91ac32ed00d36bd22fefeaf4ce1e9420143ddab7080eeb720c668a117bf44\",\"dweb:/ipfs/QmdVqn18WZvx5p84MDJPsB5tfVoXDR86wzm4sLx6WrGYYL\"]},\"node_modules/@latticexyz/store/src/Bytes.sol\":{\"keccak256\":\"0x7dec900f9c9e7dff59430fa6f520e76c56338c3e829201aea140d49342e4fef8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e55c1dfcda94dcc64b8577949b2e92a9d3fc44f5fba1ae77ceacccfdc8e22e35\",\"dweb:/ipfs/QmS7uRJbEQYkPuZ5Dz5aSNjaaxj9PA8RtxUeUGN2W3jZx6\"]},\"node_modules/@latticexyz/store/src/EncodedLengths.sol\":{\"keccak256\":\"0xebc0a6efd611e02b15c05a382382b597fe059eba7f2a9e90da81eeb2f7666774\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://00b2cac12599935e25ea0697e99fc9e6d5af6c1c982761996c16707d9cd6ca09\",\"dweb:/ipfs/QmXccFminkrFtDpNfx6X1pHvW7Tn1nA5XcGu9T17pJyZyK\"]},\"node_modules/@latticexyz/store/src/FieldLayout.sol\":{\"keccak256\":\"0x15f698b7eabc062a00ff7a2e02db0ace2dd51f8bd2bc51a45dc0afa88f2ee658\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f774202c98ad394b3b62be93292512c633dec63bc931c190ed984656c2d54ec7\",\"dweb:/ipfs/Qmd2D9mvP8S88ad2Q8WU54saNVr3Pwc5stPqEKHwcpo8AT\"]},\"node_modules/@latticexyz/store/src/Hook.sol\":{\"keccak256\":\"0xd016a2e1260f5a81ff9a8dfac58d7947e114414df8cce7302a2629908ea5f18e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0c558a6f3a5f540c0190fa6d642a094a185c5db1acfc2437c7dbde0340f00ac3\",\"dweb:/ipfs/QmViAHvR7U7HNfBiBZEMFiy1TTSHDFNiDzBfQSeLBShCky\"]},\"node_modules/@latticexyz/store/src/IERC165.sol\":{\"keccak256\":\"0x0efbf9afc716c585621482221f75e5bd60bcf0e813c9f7800d7c0309dcc3c927\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://31b6aeb5446a0a0d5bd71be15a68c5bde94b08c961369203b83c8abe36f401d2\",\"dweb:/ipfs/QmXhComne4es9ZMKaGNqHCdJZrFoFssxMYgLaqvCXPL1Mg\"]},\"node_modules/@latticexyz/store/src/IEncodedLengthsErrors.sol\":{\"keccak256\":\"0x06bb49164f44acc8d51df7b75ecf2f7aeb9281f7a3b357cae7d8d58bd1700dfa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://719027f4cc60fea30ce01cd4f672462f41fac750ae802e91a1a6d37c929e11ba\",\"dweb:/ipfs/QmWi5DM2jT5V5SGP1afRmFyRgFvuZiGDX2PWHwP19HssF1\"]},\"node_modules/@latticexyz/store/src/IFieldLayoutErrors.sol\":{\"keccak256\":\"0xaef70c46e412bded1024ac82c957cea81c1d1ab11878a95635531e2ac9673a53\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cda2c7dc02ee8f0163b1c8d0f3e1e05d48b2a009e5c7365d2418f17bc3455817\",\"dweb:/ipfs/QmXHDZuCPTxjHaeiEaJhA81koX2NJ3Gj1zt5WVWaz77FL8\"]},\"node_modules/@latticexyz/store/src/ISchemaErrors.sol\":{\"keccak256\":\"0x0ac3de36c9d0058a17fcd7f1a905132215fd16ea3ed3b5109de1de04ddd7c441\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f83fa2546009cfd16b3b3969dcec1d67c9d818d910177b885ba263b6a948c65d\",\"dweb:/ipfs/QmehywHdvFYBL9BTtoPsVVwJXsEA4Xjk8aPWoHw1R45KeY\"]},\"node_modules/@latticexyz/store/src/ISliceErrors.sol\":{\"keccak256\":\"0x72684b7dfc1b44537401ccf10d6120186d02323266fcc762bc81859985eded4c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8d037b6937969ae54018ddf647eeaf5eb69a2b0bf9edf9456d3d270316b2883\",\"dweb:/ipfs/QmfYJeyAmzRqpn68FteiM97p5t17iBw62FCET4bK5g4w37\"]},\"node_modules/@latticexyz/store/src/IStore.sol\":{\"keccak256\":\"0x42515d1410333a3573f78a460576271ef62c16edad5cf771ef6287b83ca1c706\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6a58d03c4cf420df57d2b2e2e7932daad877e46e89561b46e1fa9f593a701bdc\",\"dweb:/ipfs/QmeFmKS7J1WqqBAgXkyxxx2fGA8JzuGszUmVsV2T6DYtsL\"]},\"node_modules/@latticexyz/store/src/IStoreErrors.sol\":{\"keccak256\":\"0x37e4d2f015dd4005ff9b3f711257c891027804bc268db1791984af4989951912\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a4a566ea96b69211f503707f69a9f9012d5873a3fd57b3f221549f46a7518df6\",\"dweb:/ipfs/QmVgcE3JufJr3iyeV6xqkvS4YtDcy6Eqyram2yzWUhwoB4\"]},\"node_modules/@latticexyz/store/src/IStoreEvents.sol\":{\"keccak256\":\"0x8606e9de37943c74beabb9ac9acd2132f951bed1ef79f2f4f3de83ed1f271f6a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d13adeee7ae9e687bf1cd12a8c36223179685fc828a7c468ee9311c879401b08\",\"dweb:/ipfs/QmQeb2ArSoQpE6ujBbDj9LY3xqpVCPiz3bh9SLT6siE8RY\"]},\"node_modules/@latticexyz/store/src/IStoreHook.sol\":{\"keccak256\":\"0x6574a30a2bbd8a0de21b2504c55effb8802fdeff62296af82a9380bd753adcc4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://85a859c533f51b584a9a2e8a64d61b6cf6f69bfcff1b926ad787518b1cae9562\",\"dweb:/ipfs/QmVyjmyJ69ZeqaXHg91JtGLVahRfZ7KtWaessLWZ6rYk9p\"]},\"node_modules/@latticexyz/store/src/IStoreKernel.sol\":{\"keccak256\":\"0x37a23dcbabc5937a717f2fda636b6a97963ed4b5a96870a62dfb199a8b692f89\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac9741ea6daf21f39699be11afd919ae3ec07df24d948aaaa6549456fefd7fc0\",\"dweb:/ipfs/QmeiPQkZitM4Pc3i6L87thU71Fs1JVWAgMqXnSK8VrCq75\"]},\"node_modules/@latticexyz/store/src/IStoreRead.sol\":{\"keccak256\":\"0xdcf28b3293d4d6c1fe2808a8918c1b2122e4e0e49f2793c79ebd2b9ae210ff7b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bb3d9cc80f549ed0c5b768aea69fb1b3c364bd4f85d193a3040c411b594d94db\",\"dweb:/ipfs/QmYYdY5CjPHiW5ucXihTva1eHsCPNqBsvL6zYYafH3ap4p\"]},\"node_modules/@latticexyz/store/src/IStoreRegistration.sol\":{\"keccak256\":\"0x9e91a73f93cc9ebc00c265c83177f6a3f8a156749a9261202e2845e12aeaa96b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a39280d87d22dd0a959d8f55925cb092dba1fee2f11d3dd8e3ffabed45a9ab6a\",\"dweb:/ipfs/QmRMBFLJtT2KN43Xz9P3vUNWxXrP8rLTNBFw2P6Z7EGeaS\"]},\"node_modules/@latticexyz/store/src/IStoreWrite.sol\":{\"keccak256\":\"0x120fd448da5806e09ecb5327ad4dba64df01d2ee7232de0979133627e87e24ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7a3cb151b2ddee217f330d61813b2dcd997de94940c903719f6d066a21467890\",\"dweb:/ipfs/Qmbes1RRY6KdtsMohp8834xXyipeQK9GJ41NfgXK1d1QAZ\"]},\"node_modules/@latticexyz/store/src/Memory.sol\":{\"keccak256\":\"0xef6e7000b181c2991aeacbf99a9d886f8c4df88878b857713f851185b63a7811\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b079b4773d140ab2c01bdb04facfa56a78f753aea7122fa445b2bfa133411392\",\"dweb:/ipfs/QmWYWKFpwtsPeGdCSxcANgxXUbwAuMMgR7iMVPDSCZxz2A\"]},\"node_modules/@latticexyz/store/src/ResourceId.sol\":{\"keccak256\":\"0x889423054511cf8a83f5dfd65a0f984dc514aba798ef3db139b59d395b2327e2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://40b9495d455c87db8b063e291ca3973dc3ba1163f09c5d7446241a9e1cb69ed0\",\"dweb:/ipfs/Qmek1JKVjPUpoXnKwu66HfPS9rHstKtWTuBmG8YFxbPEWQ\"]},\"node_modules/@latticexyz/store/src/Schema.sol\":{\"keccak256\":\"0x0d2a08030d21292ecbcc850d9111f3817d03f17cd5e02186894848a9152d79d7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3f30024c1613fb587aaba4c1dcb8e4e46ed765a2cebd5b63fbebd327d1bf13d3\",\"dweb:/ipfs/QmZzqSnPMYKDYwbFNvUFrvuazMUyQHzQ59w3A9x6juHAm7\"]},\"node_modules/@latticexyz/store/src/Slice.sol\":{\"keccak256\":\"0xae6c03881fdfa56cba1879d9c9c6b52c2829e6a278a200176678d8da05a89345\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3cad7dc4944c0518de2e7f99697485d365ae37aa6cad6967996377c2dd951fe4\",\"dweb:/ipfs/QmW3grFwr8BcgJmLfjLbj3FthnD7NRUBFMFiahbXztHPr7\"]},\"node_modules/@latticexyz/store/src/Storage.sol\":{\"keccak256\":\"0x7e735a4c7fa8b8a5fe2371d90801e3287ddb78efed69b31e1a76f0b7b153c4c3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9e6db36bd52144b6feeecd91a58fc311127a3892fc96c4171db5b570fe9876ee\",\"dweb:/ipfs/QmS6LqnTZvpMc4eiz5JowBoNnh3RYemG6JHjqtYucT1rQi\"]},\"node_modules/@latticexyz/store/src/StoreCore.sol\":{\"keccak256\":\"0x9513dc38e5baadde0ba9b08320a324043b0e88a10702be5c3507da8c3d45e861\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://99c80c65a394763668e4aed69220fec6bb3ed847fb277ddd1ff1d4bfdf452da2\",\"dweb:/ipfs/QmRT2BATKtrYmixWMuWo9Cz8g8oscfLNSmvjxTyiTNA1pc\"]},\"node_modules/@latticexyz/store/src/StoreSwitch.sol\":{\"keccak256\":\"0x7edf7c1641408f3a580eb28bda58054583cb846f875608612671c6d40712ba40\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4146adef610d1daab085a81aa9f2d4fd8c4e5f459b9ef184f3ef23465573cf91\",\"dweb:/ipfs/QmQqZMsbkzSNG6VfYzQLdRCBCsNohBSVQmWoTP6QvKmKUP\"]},\"node_modules/@latticexyz/store/src/codegen/index.sol\":{\"keccak256\":\"0x094a6f1e2910b345b6b254e0fc2c8882b3190c673f7ee19742e857057a4d3f85\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://18908e2e7e878635abea72ef99851fddd204371e6b641f010e831ebfa0b1bfd4\",\"dweb:/ipfs/QmSNAxXqxTrzPkZ4rSAQgBnuer1yLPq74hoqnzrZV3WGsb\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Hooks.sol\":{\"keccak256\":\"0xfdea5b4cf666720c1c0d81a8acdede68e6220aee45d8a9f3c9834b4edc5da394\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b3a394dfe123cfb7200f65d379fb0cb3d2c84475b382faf6ee11bf9c45a63b53\",\"dweb:/ipfs/QmRMPHFBbCKtqKBVV9gvd2jhnfsyUKmCBEQkgviMoxi1UG\"]},\"node_modules/@latticexyz/store/src/codegen/tables/ResourceIds.sol\":{\"keccak256\":\"0xf192bceab34508cee21dd7c33e4d776f79c4a7ca55ee8905c6c694850ebfdf64\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c95113f76f6de671cb44710754e0942934182b544660a4330fc90a505e198905\",\"dweb:/ipfs/QmXma5ZxfK8Y9TbvB7QM9hdhfc1ixiMcLpo9BQxnVthHB5\"]},\"node_modules/@latticexyz/store/src/codegen/tables/StoreHooks.sol\":{\"keccak256\":\"0xa825218614acc19a4100357dd7ee410b67b994fe7aaa68650d5d0d4202d4ca8c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://09b0cbb598fe2b75bbcd269b47d686a66fcc89c0c40d9a09807eba7688b81fc6\",\"dweb:/ipfs/QmYk6XQwSLhRumujTCsqxdvugKuP8oLjjB926pMHR445ra\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Tables.sol\":{\"keccak256\":\"0x918b977e7f7f3e947d6d5aa189c54c9c7e7c106d0a0d53734ee959ad454abe09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3a3de63c04c838bf80c1903cf7464d201d0ece0f86a7aaca35462b730e9338fc\",\"dweb:/ipfs/QmSUkLZ88J7tSwdmR3viBJHU8QVgN2Gji6W8wYLJEDNkc2\"]},\"node_modules/@latticexyz/store/src/constants.sol\":{\"keccak256\":\"0x67e0d59237bd37424827ecde1ecdbe71f65376af517b0623cd8f8d5451bca7a6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://09c5ec7fe73e06140957d44a3d9938587711c783ccbf08ff017638c9279a3168\",\"dweb:/ipfs/QmfS9ZRqHXmBJ1h5B4x4gbU6d18DtMgKZSkxhQgNVRxueu\"]},\"node_modules/@latticexyz/store/src/rightMask.sol\":{\"keccak256\":\"0x28887aab8ad5ca598927e59d702999ca6e3b3128f1cddd2b995a381c8d04b275\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7710847f4689b7f5b81436c7d52ae4395f244a2eebf8d398b2edd43accb06754\",\"dweb:/ipfs/QmTD2wYqryXTynHAn5Vf9wtjUUSGeCJWENZTnWtBAK38pa\"]},\"node_modules/@latticexyz/store/src/storeHookTypes.sol\":{\"keccak256\":\"0x4f29001e53690ce74fe405a6d0376a564c9c743d1631d36fab04331865e4d572\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://138c80abd63225a3eeb01ebfa1f9288e188a7ee5b2266b275fb4ed31b5aa30e3\",\"dweb:/ipfs/QmdEx9uHgCCbTcetGwFH5a66Ft7ajmrMDXvP1fW7WjnnE2\"]},\"node_modules/@latticexyz/store/src/storeResourceTypes.sol\":{\"keccak256\":\"0x1c4cb6b3ecf76f614479ab304d7de3ade0e99c7ccfd07717b57c92f699a27261\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2c9b0e0c9b3b5610d6fd65a8ffd7c54df390a34ccc70d58f4a055c49ad1ea586\",\"dweb:/ipfs/QmP6ffpnR7aRyvq9AiUkVNH6LbGfFP3NDq7E2n2PVcHhp2\"]},\"node_modules/@latticexyz/store/src/tightcoder/DecodeSlice.sol\":{\"keccak256\":\"0x310523f7f3acca841e62fe50be8d8b042cad5b3c239cb1105d6623cf83e63152\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1cc40ca233acf6502bc65677b381c05331dd7323953e54b5df969051e47f851e\",\"dweb:/ipfs/QmTxy9mhodT8drezB5K1kPR78AMaARomoJqDyaWpLuCKui\"]},\"node_modules/@latticexyz/store/src/tightcoder/EncodeArray.sol\":{\"keccak256\":\"0x259ee545fd9dfd4767f0b7fef31f52fd3c54c4a1c6657d6fbda4927800c937b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0a4e31efa9f476cd267af7c3e11fe0151252206a1f6407a80a4092444c2de8ea\",\"dweb:/ipfs/QmRF4gWYw33mFTMh7nX8DJ1qzx3Ko6yMsnxubzYTRppdyo\"]},\"node_modules/@latticexyz/store/src/tightcoder/TightCoder.sol\":{\"keccak256\":\"0x0e74ff88ec94cb33f79d8afc1497c4fdccf02db40ab47f3701c7d02fc305d4d8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://36b7cd0c2a3f2dcdc83ab7ac5a93f123746ce29c0f1000f2b275ad2c647ff0f3\",\"dweb:/ipfs/QmYdipHYUhHhS78wLdtmKZUK14FEwpto5mFy3rNeZssMLz\"]},\"node_modules/@latticexyz/store/src/version.sol\":{\"keccak256\":\"0x78c571906ee999ee7e56d4f7702b8a93c3a9e55e6b552aca115b5f6ac7f1c80a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a9f141b2d556b2a2545e7db5606e8a038679a995a22aeaf1702cb3a60320b60a\",\"dweb:/ipfs/QmY7x258Fhj3TT3RT4sNyyfiRphVYdZXhtAnSYpasJ4xVQ\"]},\"node_modules/@latticexyz/world-modules/src/utils/AccessControlLib.sol\":{\"keccak256\":\"0x9fb1520ec94ce3396760a235db900192b4990c78fd459c449896a74c32b83542\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4025b37988ece6915b2c867702a4a381829755dd9e5b0b0b32ade85649b00b2a\",\"dweb:/ipfs/QmUsLyetPdhtSdN3MicE1uphXWscKBPSBif8Sd83RC1E6Z\"]},\"node_modules/@latticexyz/world-modules/src/utils/SystemSwitch.sol\":{\"keccak256\":\"0x5ac59bd7f2db0154a8b8f5eecc8eda69458c7ac488d5defd0c904d79025c79a7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://89adb066110da44661d12e487bc9adfa6c8396432516057b57ae72ba2ceda3e9\",\"dweb:/ipfs/Qmddoe1812LrdEWbaCzE876kL6AK4S7vUGkcMpzAxPyhvR\"]},\"node_modules/@latticexyz/world/src/AccessControl.sol\":{\"keccak256\":\"0xe9e1b1e588699a15ee81cc46f5959e14ff323787b576681abe7b0163d5988a4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f19076661965fcf60fbf5e58ee8a83daac63e174806af79f5fd4144929cab899\",\"dweb:/ipfs/QmVQxPrkHpSo1fbsqGvToXc6q9x8zrVrGaZjKTKY413QBm\"]},\"node_modules/@latticexyz/world/src/IERC165.sol\":{\"keccak256\":\"0xe3d9074a1be3247be67ff4dd2c9e41481650ddaa799285a249736bb85673e33d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0b6743ee1e6d0c74927bf17fc1da0cad7575aa7634871b94190ffbdb4c28c2a7\",\"dweb:/ipfs/Qma5bNsPJSBTesWxg3eAAMUBTDE7UjqWaHF7eMiGwP87jr\"]},\"node_modules/@latticexyz/world/src/IModule.sol\":{\"keccak256\":\"0xbb926cf64e685bbf2770d60124664cc84ab70bd3038e17a074f2d472c3fc2c57\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://143c3dcbdf1702dd4f9c869629609386c12f7c0247e88a6d062dc4d519ebe0d2\",\"dweb:/ipfs/QmQJSDd8uFL4sssw9fb9NHo4s6zjuDUgmrLHj3zsJuhMo1\"]},\"node_modules/@latticexyz/world/src/IModuleErrors.sol\":{\"keccak256\":\"0x60917e029779c81cfea1f5140c389269e51d7adb78987f39101b9e0d7bdad12d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://513f41920d67ca28c3e0fe247403c28a4d342785192df449c99d5f92db04fcea\",\"dweb:/ipfs/QmeAG2TtxAgcJQR4QxftuSvQrxisYQ1i1GZoyd7oeFQBDJ\"]},\"node_modules/@latticexyz/world/src/ISystemHook.sol\":{\"keccak256\":\"0x81f1743d7ca6a9c7efc4997cf95e603ccb2070885265ca0e540f461aa7430721\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://93d99e78b541b33ecd501bf0cd407a78cef490fec8eaef2f188bddb9e293a99f\",\"dweb:/ipfs/QmPrcMDxwhvBZTr2AxoGqJA9L3Mjx27KBc98h3gXSsa3PM\"]},\"node_modules/@latticexyz/world/src/IWorldContextConsumer.sol\":{\"keccak256\":\"0xb39e9d8cff4162e255f6c460ef9f9f0ad5b804627f745d967b2f10d0dd509299\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://18d957cd87febccc00d82b9454047f0f5236250c9245befc0f57978671675255\",\"dweb:/ipfs/QmdZ1eXBd15vLpLVqTNJDAAaTzzucpRLD8GPJahLKT4J7x\"]},\"node_modules/@latticexyz/world/src/IWorldErrors.sol\":{\"keccak256\":\"0x0abae6f4ed1b3070bddd0ed194c08b83a948b61ae959396202cf627bf1056a2b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a7037954f281cc0188a5aafc1d0cca0aabc110fd0234e6c43dca35ad69ed3baf\",\"dweb:/ipfs/Qmbv2nfK1qPpnoAbqNJFqWwo7AuyaX2ZEgZMFspMv7DR5B\"]},\"node_modules/@latticexyz/world/src/IWorldEvents.sol\":{\"keccak256\":\"0x39f6d8930db431c04158b85cc2a612c48d43dc81ec998f267076b12293c5d243\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d68f1543e5e166d639372d1aec57e3e193b5bb3b37270b6cb0488fab2c0ebe57\",\"dweb:/ipfs/QmdJUFDx87AHWFKP3jVrYg8xqAkiPfuT1M3tEotNt7KUoy\"]},\"node_modules/@latticexyz/world/src/IWorldKernel.sol\":{\"keccak256\":\"0xdaa1e92439036e392fe79892819ae165732f416b831f84d38050ca3d958e549b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ea8dc52e31a62e8971322ea9ed8f2e83d562ec199d7f93a392c293e96ff7f092\",\"dweb:/ipfs/QmSbM8MgHbrJLYP7uzemfZeC4xctqdyKDbspwHUsgeeVJC\"]},\"node_modules/@latticexyz/world/src/System.sol\":{\"keccak256\":\"0xadcb32bdc444a4420909b738d81fa662dc63739455fe93d5aa89c93a3ccfd2dd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d303094c84ebfb0f9f114c54ff4dfc68bfa1e526d0ebe304be6fbeb7cb2f0d3f\",\"dweb:/ipfs/QmYvUx1mNDhkxZFqxLeswW3w9HkvVqeoJiJKj1HN1SB7Gi\"]},\"node_modules/@latticexyz/world/src/SystemCall.sol\":{\"keccak256\":\"0x5012c0607c8d41a4eed69d8a0430f742844883d3c3f17a6717ac287608b4e6af\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c389f65d050849cc95a7df9f45145186a60ae892b7d02b26ec92f8a38f8e2ee5\",\"dweb:/ipfs/QmNQPBewaXghhVeJDaC1XUK6BbFrZ5qUjryhmJuyvgWdbF\"]},\"node_modules/@latticexyz/world/src/WorldContext.sol\":{\"keccak256\":\"0x50ca52bdd89a9f27d6b03ad00ef45c8c5a6884ea9d75e18f8fa53524ac2feed9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://55febdece37b291527094fb654919d4c8fe0b231792996a14c5e5cc76512b19e\",\"dweb:/ipfs/QmZHFbDDNmdFHWc1uTSvDgMUUgb8NgBPb1cDUJYajswbHT\"]},\"node_modules/@latticexyz/world/src/WorldResourceId.sol\":{\"keccak256\":\"0xaff9a22fac8a0f6eee5763b07a7ccb623c829d37922b85e42e914aad2ad417ee\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e598f0274d6d97c0a09806bf4fd1f0d054c310cf51b2123f5ce6380d6f3186ea\",\"dweb:/ipfs/QmaaVvqm21YsCgxozDyShcM17jKUXJhf2y26bk2YzPYZoM\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IAccessManagementSystem.sol\":{\"keccak256\":\"0x7e7321b86836bfbf4b96d0fb2a424ed678efcf01b15fa3d0b4ae4f0b975ad5dc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ead41554796bd0507e390f2997aa4a8df7bff8b51523b86fa3c5bd8acb1fec48\",\"dweb:/ipfs/QmVe1VUhfbRy8tviA7UcCtS8NjXhsF1E6Re9xLqWS5aRTK\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IBalanceTransferSystem.sol\":{\"keccak256\":\"0xe57042e82311847c56fa569377ed84459bf55afccdd3123312a5dff90c1d06f4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://baf3258c9118bf16ba68ebcfecdb5e5ffc85d5c0cdc2815ca298283dfcff2c83\",\"dweb:/ipfs/QmcBVyUBR3PVejz7249VrEBMCMKHi72KoUXQ8DFmMmY48F\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IBaseWorld.sol\":{\"keccak256\":\"0xf7acdfa0eb01c710d11fba129d613863fe86f1bed352f0bc5630bea81cceae17\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3e4107681cd20c018cd8f5dff6da72e8a4b02f631c7c59b618e8743482c7bc81\",\"dweb:/ipfs/QmXS8NLaKVXcf97HrD8U4hGHqb9ytYGwdZrTVHHb5EwrRj\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IBatchCallSystem.sol\":{\"keccak256\":\"0x600cc362780c319e640950ad3520af7fa558171268baab252ff4da4414aa0f1c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6d113a833b64bccbbe852f3d0261efd80ad4a0f6771802dc91af79c762a33ff2\",\"dweb:/ipfs/QmaXEdJJaMMQF8nZieWyXdVD15yuXnH89QLZHwD18LAndz\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IModuleInstallationSystem.sol\":{\"keccak256\":\"0x7070453d969eba7defd90047d58ae979e27e5c1fcf05598daa4d17fedbe84c35\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ee5c196c5e339ac0222cd1d14fd9d09451d255605f73732abc33397a9512503b\",\"dweb:/ipfs/QmYwNsWnxP24RzDqFYLnBYswZY97YE3nwG6Xf55f5FqNXa\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IRegistrationSystem.sol\":{\"keccak256\":\"0xe08d3af994098120b5507c71a1c3558763b8c1a88c6eae506aa438c2af78f800\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bb0c47b16ff524140388765fe9ef99211dd7d9b9374dae09144a9956138de00c\",\"dweb:/ipfs/Qma8ibVu6WZs1hFW3hMnUykV3pPXGZhZ3xJwJXNj6Xu7aL\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IWorldRegistrationSystem.sol\":{\"keccak256\":\"0x70bed82da026058ddccf52766823c7d55c7d29faad0ab1d76d763786d5277f7c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1da6476d62e450d3d935ea8292723612a84fa1d07342fbc052ee851181701a27\",\"dweb:/ipfs/Qmd1FQpmEVbQciLDPkHPXSKB7aYW1YB74BN5JXqn74erhR\"]},\"node_modules/@latticexyz/world/src/codegen/tables/Balances.sol\":{\"keccak256\":\"0x25248669a093cfdc9453491e5b5806f6aa092a805569799650c43c32f7b7877d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2f294f597122450abd267760d91682facd0a1040383caeb44aaadeb74770904a\",\"dweb:/ipfs/QmPXsoh8tUhpnhjdBYYTZCLc8MPHDZK6xUmN7F2DsMEXro\"]},\"node_modules/@latticexyz/world/src/codegen/tables/FunctionSelectors.sol\":{\"keccak256\":\"0x1ee313f4f1165034b92c5df1fe4cdd9be52b27780245388db3a0267c119fc926\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a3d58ca6a58e94bc30d5be0fc7a7d1325a92096c8b8b2b3a0531c2c5d0d60791\",\"dweb:/ipfs/QmZSisbANqwnFzwMJnnYBjemLW4Cqn3oL7MkV4HiQR7GKv\"]},\"node_modules/@latticexyz/world/src/codegen/tables/NamespaceOwner.sol\":{\"keccak256\":\"0x3a53f395fc56398b4095c1e4016ad5f87d06236fc00f1fb85b9cfe138575b614\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9d91d30c8506a2d07bcafe0f8feff002bbc7764060d7e7bef7f15b9c4a97c597\",\"dweb:/ipfs/QmVTAxSh1JSMpKD1jmJSTvXbDZQubdJW2DQDoePWecJskH\"]},\"node_modules/@latticexyz/world/src/codegen/tables/ResourceAccess.sol\":{\"keccak256\":\"0xb857dd63073a6469f5bb8deb6c0617763cd42c484821e247572c6b53bb1da3cc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://07c710d67440b98b145c1991623b7c8cc7f0805b4e6fa37a7d54afcece31239e\",\"dweb:/ipfs/Qmb368QqzbQGUttbDS7eVBGQ8KcXhiai2F9vy3Thyyk2vx\"]},\"node_modules/@latticexyz/world/src/codegen/tables/SystemHooks.sol\":{\"keccak256\":\"0xc27730dae8302cb86f5d65ddc9ae0e92afba17842285a6d0cd146a1e21d73c0f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4de5f820f1dfe36e53fe1fc77be6a52ac5fa72a7a5d5ec66e5d29ca6ce553674\",\"dweb:/ipfs/QmP5JUMHDCBxZkZ2YnoYQLqQFHeyCpoUVp14hJBWpSdiqV\"]},\"node_modules/@latticexyz/world/src/codegen/tables/SystemRegistry.sol\":{\"keccak256\":\"0xcb1e9fd5cd02cbb7125f2a64c02f89272d4b0f2afc0b43f24b727f023ef06493\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f4a923e67dea1c1c0a978cbb89d4e27f6e0205f49efe0556ac90b358bd2062ab\",\"dweb:/ipfs/QmZww8gDH9kyXsCaTYWzupNhL1QqR1emAbb5VifFWhDWYF\"]},\"node_modules/@latticexyz/world/src/codegen/tables/Systems.sol\":{\"keccak256\":\"0x1706fe4b5441a4e3982a3d32f7de2148627b8dfbbe3e38391dd4dab06b86478c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c0569fa73cd26c6476188646194ad58eb5cf78cb7c7dc7722748455c23c9d4d7\",\"dweb:/ipfs/Qma1RuR12bTXSVJJ8Q8Gw23KkBw7pyV9u5Kr8TGutaxYdz\"]},\"node_modules/@latticexyz/world/src/constants.sol\":{\"keccak256\":\"0xb8320f88ed5519a4fe2554ad94815ce328a50fef7719932375d6ce695265c2f5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a8f5de30fbcc63e469e46ad4a4d4bcd7d8e4b4f2d31fcf62a04aca48d999af22\",\"dweb:/ipfs/QmXw1jDQM2szfRY3tAGrRy6fEzte6yVFgebJAqCLMDHndV\"]},\"node_modules/@latticexyz/world/src/modules/init/types.sol\":{\"keccak256\":\"0x81b75eb286ec515bde6cbb16c3d089054abb530b744865bbace68343d23177bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://afc77bd51e24da666260bb48c44ff611869fb2e550921d732e5aac84a1f09525\",\"dweb:/ipfs/QmeU5N4yeRh5nEA65pvGtQQJNv1GvEPy4PkhMVRYRMoMvh\"]},\"node_modules/@latticexyz/world/src/revertWithBytes.sol\":{\"keccak256\":\"0xa1147f218a0152b153d4e8bada0f606bfed40ac1f184fd16a941c2d0033c53f5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3f5e0f6d1b51a3a04d4bd84537b2ced373b32824898cf6fbfd13ae1cbdf06359\",\"dweb:/ipfs/QmayYRmBZRUV9m4UnFxuC62VvHriXhkYXeH3HibZ3Gmxxf\"]},\"node_modules/@latticexyz/world/src/systemHookTypes.sol\":{\"keccak256\":\"0x15c25ae4b21e091209970e45a198cb51f31eeae482828862641099c1a9b2448a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0ce3c3eb58dc5c262d36babf372ad028d2846beea73a59d6e70f0eb8c90ee00d\",\"dweb:/ipfs/QmWUkgegTRtSJM3awvjg4J7DWZ2ME7Pnxp1dP2TWWzLNoo\"]},\"node_modules/@latticexyz/world/src/worldResourceTypes.sol\":{\"keccak256\":\"0xeb042e7d3638430f6fd394107f3237cf14e4325154f0098624e8a7826584d465\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://39e0b8eb87616b661f5a4f2fd7e1a727bd19b7fd8d40ad3d93fda26822f433ea\",\"dweb:/ipfs/QmacYMatKV9pwEwirVRY9a6r89RoNs5yk99ic37ieWA8Dk\"]},\"node_modules/forge-std/src/console2.sol\":{\"keccak256\":\"0x954646445d1014c3cd85c7918f5e7adeeca5ee44b68c00bafa237e597a4e35ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://516fa3be52da4763147175bfba4be0aa011fadbb0c1afb01f97265bd4cee7973\",\"dweb:/ipfs/QmdixAyMJefx7qePChgdxcBH5MxhmN7vsqPuPLx3CgrVmF\"]},\"src/codegen/common.sol\":{\"keccak256\":\"0x2d0a0176c583fcd95e430978a48ca29a38536c01b57b6effd08697d2d2bf5f42\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d1ea5054e1e53b703345992c9ef61e372f6da66247fcb4e89c279055f9085\",\"dweb:/ipfs/QmXCygeJuEesDRSAamMfJZU9Qz5UCz3dmkBj7SGfEvEEY7\"]},\"src/codegen/index.sol\":{\"keccak256\":\"0xc993a3f15c56e4b3e83c33b41a17dcff501b025e1e338645b62203cf26d2011f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d5229574e32c8131647fe4826eeee2f9305074496a5546e70dc6da9fcf1aea4c\",\"dweb:/ipfs/QmadU9mmUdvJMmwkJJwh83XyebzGG3BvqDvAASQ2T4Chjh\"]},\"src/codegen/tables/ActionOutcome.sol\":{\"keccak256\":\"0x3191cc4da6f6a0146b54ac4b6022f402981cda101a577c4b8f49d3dc4c9ca956\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc6ace9a0b33a4a1df297c712c0b37171c8e3946e0fd2bf0ea0483ab4d28147a\",\"dweb:/ipfs/QmPaVdRSLQt1xmbRbqeKWitcRXeTXGA3yuxJgPbgdh1WQ4\"]},\"src/codegen/tables/Actions.sol\":{\"keccak256\":\"0x63cd48bebaa0414728e9be2c856e4eb01efaead6627a6615da4c77b886805cef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1dfe138555b67362f41c26ce1ab074bfc1fcc4e7c6fd0284b82cc699d80d392\",\"dweb:/ipfs/QmNf8UGE3FZ4U96HkeioE4peWWz1SKPAjhKRrGnpEnCdkQ\"]},\"src/codegen/tables/Admin.sol\":{\"keccak256\":\"0x0daf45149c3403e88b492878aa7622c604687314a844023f4f2ebdb53213b17b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://074403d43b76610a90629582f3d7680f713719e0b0a5ac8563838f694d717d39\",\"dweb:/ipfs/QmVy5jEg33ZNWPTSEEYXYUafsghAdnDivCBGmdUKd7BDMb\"]},\"src/codegen/tables/CharacterEquipment.sol\":{\"keccak256\":\"0x5a911b5c2218dabb75a117ce2e8946ceccfe009edd2425a1d012d23727372d32\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d45dc0a37bb1814f9ebaf5264042b729268be557e9f9b58de928206d86e8ede2\",\"dweb:/ipfs/QmTWSB6XUZXtjQAYLRMkRxPeXNLKa8nADAVguFBKoMADHB\"]},\"src/codegen/tables/Characters.sol\":{\"keccak256\":\"0x907f9803924ab0065992e81ccf9c64f228876401e5a728c27d967448bfb35e98\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://809b9cc95a1c37663b48fe4307ba31fc1b0d794913258f5dc2f2f848b0448893\",\"dweb:/ipfs/QmbyQ5DkdeL5CZppx9vs87E2eRzm6CkYfPAYikGGdbcHxH\"]},\"src/codegen/tables/CombatEncounter.sol\":{\"keccak256\":\"0x27431d9ff6ee373083856c0b7ffc9ac15f1bb93535620e726c621a8b626f4696\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://50c1bf4f51c81d6299e05fbc65b0deb6104a0706ebeb1e618f5c3bd8e556a405\",\"dweb:/ipfs/QmZcgbtpq9RxfQNEDEM6iQ7eHR5ya9wY4AJkWnnxaEjMBq\"]},\"src/codegen/tables/CombatOutcome.sol\":{\"keccak256\":\"0xeb791c773448819c7377ce52c0226a936dec6d65450a832a91fc947b5922f0fd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6594f35264d88ef26048ed33de7ee17d9553b0eca23b1ae439fb1f72f6d19078\",\"dweb:/ipfs/QmVr6mm3WmXdz9JLbDgdsK3LS6ypW4DaJrMGpxEQaBWVUZ\"]},\"src/codegen/tables/Counters.sol\":{\"keccak256\":\"0x2f840caffed593a80b84a16f186701e0b55eff03cc6fa6c210a6dd9cdf25237d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7b6a76de959876e594bf5426dfe3ef9112b84d65e252a117031cfced3bce25a8\",\"dweb:/ipfs/QmTosFfy3ME9N71CjHmTRLUWGJWa8sK81jdNcB3YaFa9oG\"]},\"src/codegen/tables/EntitiesAtPosition.sol\":{\"keccak256\":\"0xd0b649485e3837ea8014c2eceb7efa5b5002ad49bb57e87503622d91e0da7501\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1c9559099385b1b1c23eb35d8bf72d50da0e813e5d29c90acccfab4a9ba7fe4\",\"dweb:/ipfs/QmX2JCEkcUkTJq1svXUsGs2ucMuSqvSi16z88N4MnZoKRB\"]},\"src/codegen/tables/Items.sol\":{\"keccak256\":\"0x369731e289e046f20bff48ebb31202c95024ca34bf8fc1d685426878e66dc31f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://59ec4b81dc56d99ab8ee12323ce7a2157558eb51e5c7094b8b54335c7bdfe50f\",\"dweb:/ipfs/QmbmYzo3LFHUNSNpZT4ZFZ7FFMAwk7DzyA27R8qqLc7mcj\"]},\"src/codegen/tables/Levels.sol\":{\"keccak256\":\"0x535e0e176169629b241caa38851bb5fe8862f822301552e8163bb405c9fc2327\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b22ef6fbbcdff6d59ccb2e1f3b48cd416ee58d64252aa1865f92ca53792ce7c4\",\"dweb:/ipfs/QmQ7yKMUUcHcVH4RFZTDx9jSnr3rwyiTa7zeVLPK6qUQtp\"]},\"src/codegen/tables/MapConfig.sol\":{\"keccak256\":\"0xf7ba7c8303a8146a874960b3f77484d5ae0d9e3478a698ac08ac08f24d05ff27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5d3905e07aaa32e028977c866e03cc0f1a92bd14945e30432f07fc3ebf8d8fc3\",\"dweb:/ipfs/Qmf3UJity3jA727Y8ge5swykZa6YrbQPxaqCygroD6U2ch\"]},\"src/codegen/tables/MatchEntity.sol\":{\"keccak256\":\"0xaabe20cc4e4d6c5a55658f59ed5094f37ef0a4a795d41db3a147926d4f7bbe7e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0c1690adf4c6629b794f8861239dd572a03cfb9c8688b51a4b52a54006efa6b5\",\"dweb:/ipfs/QmUDGdfRxruvzrcqn1qcEqZKfyJYzXLqtarV59EwNdHmp7\"]},\"src/codegen/tables/Mobs.sol\":{\"keccak256\":\"0x0d6040fb2c459f26ffe1f563af1b547c9844cc3b53ba3d8d21f8051cfccbf6f3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e7e422a289617179f3ecbdd519468996f36841526a30ab7245348ea78275d060\",\"dweb:/ipfs/QmZYLGnLb7witVgCqz3ppfwa8EejMNdAHhdGfBxe3NDVU9\"]},\"src/codegen/tables/MobsByLevel.sol\":{\"keccak256\":\"0xf84e0714feee0964737b282a981dfe06d408e5006fe5e31f17ebe02d12be550d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58eae71b254ef9d2d50ae3c46b0b03f1a7554b72e1a1743e9a4ef3b73df0f8c5\",\"dweb:/ipfs/QmcY1RuKgtCFrjPfgsfyrmuVW6k94MatmMa4MGT5eNeYj7\"]},\"src/codegen/tables/Name.sol\":{\"keccak256\":\"0x5b244643b0cc0f74c380fcd34e6cbe59cf0fabf15362bbaf04db527443f5df99\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cce9aed9aa8dc6a071b9c8f958ae9f73e50f17ca24dc3c2cc2a58752efc7d1a4\",\"dweb:/ipfs/QmaYLEjYKUnULFRcm35PUk4PQeWMpNEgg3N1JT6f6crf81\"]},\"src/codegen/tables/NameExists.sol\":{\"keccak256\":\"0xa8a8560b33be580fadbe6d92d8ee51225ea232788afd74252a12d1f724f7f9ab\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1bdc023458c300d9fd442c684d91bb3c48f8acc40ef629f7e6956af452bdcfdf\",\"dweb:/ipfs/Qme9weCKgFBzqvRosTTCGyZoRNyU9mz2jkECiZPUMbFpQC\"]},\"src/codegen/tables/Position.sol\":{\"keccak256\":\"0xf71ad66166f5f5ac451aef4b46e44c39958dd6096eaf1f34900e69137633224d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://52d3c128933601b8f02227b96225f0951234f7aec9ff9a9c8684f8cd101f8baa\",\"dweb:/ipfs/QmWNgxUAUYvogthUFSp6pHfWasWRves9727GMaipfdhzs7\"]},\"src/codegen/tables/RandomNumbers.sol\":{\"keccak256\":\"0x36271b8a638ab379293882f001c77c5b2c911c707c3cfaf8c63327a047e4fa22\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b764ae3b7573d191b544f66e01095e23c09c033a766c8d4f9fd635c780382df5\",\"dweb:/ipfs/QmZEDexSqLHBX84DDpYVpjvcxzYL1d4qtkupowY13ixQeA\"]},\"src/codegen/tables/Spawned.sol\":{\"keccak256\":\"0x2d1705df77428d3bf34209aa624ce6812b49ff5701f3ded65beace10c902450c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://72c2f8c81b79fd4cc392b8bd7de5479a649a426b66b0073c231acb3e3d80d905\",\"dweb:/ipfs/QmbA6xN5zS6MQ5D1gqSaucayoKjSKjSiprK1oXWmQSWUMw\"]},\"src/codegen/tables/StarterItems.sol\":{\"keccak256\":\"0x5ee8da401ed86fbcfe390b5dbd301e2553c278970b13e942a91b37eb930d8de3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ea2e69871f31015e9080b07a0c8fa8fa01519c0827e3dcd1409a5192994205e3\",\"dweb:/ipfs/QmV2raKphNUK5X6hds4e3c5AAk2XUP1vBNBMtsSz4VKGso\"]},\"src/codegen/tables/Stats.sol\":{\"keccak256\":\"0x4dbbe2a11e729ce5ed6569600e0e7237f5fa5e2476f6c049581e2b18830c93b2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d056287fefd267378a9a3f20ed25e28db2fa34604729f047e22c2ab016ac2c6a\",\"dweb:/ipfs/QmSunLJDjxsUMJaudJefjgeHHurT4KKsgrhNBSsEaU5jgm\"]},\"src/codegen/tables/UltimateDominionConfig.sol\":{\"keccak256\":\"0x6f439f3fef2c4db3b295718bb3e277f59500a3183f2306fe70890a30c3eeff26\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bde32ff627c137c1b52e6f45ff82df52eee9e6fe8fa668fc791132dba187f256\",\"dweb:/ipfs/Qmcj4S8ysUA1Lv8xbA5i1dzn4wwKPQrCEjpUd1MW6rh21w\"]},\"src/codegen/world/IActionSystem.sol\":{\"keccak256\":\"0x70c9205cb55d501725621d75489338dcfedcf93379cff8c4035d29efc9059d4a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8bc9da212ce3226d2a0f357d6f83ee3976659aa8008eef7c50a1cfe74a29dde2\",\"dweb:/ipfs/QmaSJLZSfG9mqmZ5j5GGMxK7TV1FTLK3AjZXSnAFzaKRCF\"]},\"src/codegen/world/IAdminSystem.sol\":{\"keccak256\":\"0xc7af156c71acd0d6cdab577dd76c0a4a7c56115d7bd22069ad8ad183d1a230e6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b167cfcac5a58cef4d3f018bbca81afcf7cc7a8d4f75537f4516f508a67f435b\",\"dweb:/ipfs/QmQEcFt4N5qBRRaCYDzAx9UwDuqPycSXBqQLGyZdVHFNzQ\"]},\"src/codegen/world/ICharacterSystem.sol\":{\"keccak256\":\"0x49ef649aa37c2f64fa032400e803aa2d6b6d94d8de47f024cf63479c217a1373\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c84ead4b32146eb7088cb0f3fa45f31de057cb252693efd92982698dc87a4f78\",\"dweb:/ipfs/QmVMhUEXVmVMZJVJLoP6vh9pB6RYq9YmrRC4jdJWujcqnd\"]},\"src/codegen/world/ICombatSystem.sol\":{\"keccak256\":\"0xece65bdfbb9f41aa91c926f2625a5afb62162c19a2be83749b02c04755b7143e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://de01bf77ca9c93a694d87dbb64370d5bd5770da42e461a40e55d640675fe777f\",\"dweb:/ipfs/QmbANbeftTp3YQizGFoYtXwozQHL4ouyoVEu5W1Z14wsQh\"]},\"src/codegen/world/IEquipmentSystem.sol\":{\"keccak256\":\"0x22fd0489fa8b774694038a2af88ed573bad4a917dbf6bece44c428ebd5a0f1d3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://67cf7c8fefa5271e81b97a149422c8cf81aa391c55b8e47f919b8fe8d78720fa\",\"dweb:/ipfs/QmdPPC8HTjB6zkdXs8siSTT4k6YFDvUxL8sDYyt9HGeStW\"]},\"src/codegen/world/IItemsSystem.sol\":{\"keccak256\":\"0xa53c467470bcd3a670b1d8f04a8e8b610bfe46634821110356b3ebd84810f76b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6637222d8c7b4c16c6586b6ea4bf726b80e559be14d831863d574ececa149f1b\",\"dweb:/ipfs/QmSG7tH5qZCuXVn44DxYjeHZUh3FM7JXqzmkoP5nMhDwQH\"]},\"src/codegen/world/ILootManagerSystem.sol\":{\"keccak256\":\"0xf40b0f25e8d4ba6552f4b1a3f2b86c17e2e7c1be7317bfbc15f7e24100bfa14d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0f0bd4c7e76b1d3397f85a76382218f4922681c046c5e62dcf606f3ea8884bc0\",\"dweb:/ipfs/QmcaSbhHrGAn9TPsroSHAEijriQmKWvA16ffSJuTw3AzN2\"]},\"src/codegen/world/IMapSystem.sol\":{\"keccak256\":\"0x1e306d0814b36dc00a65b4d4f4dcb2812b254aadc7e79d5adfe6a8fe9c697c80\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://018d71336b01c22f432ffcba50375fb124aa33bf7f0f96dc4b02eacd8064507e\",\"dweb:/ipfs/QmYJubK3du3ZCG87uNsTQBVDj6A646BXqifnRSJTHB6v72\"]},\"src/codegen/world/IMobSystem.sol\":{\"keccak256\":\"0x7ffc480cffe4c490a65836578d8468ba420cec99f919b67ce0fec75cc1579391\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c0171e839a340c252b00a44e08349dc4982317f82cc393a391f4e32b1b811d9c\",\"dweb:/ipfs/QmZTNzfeZEkT4PrrwvrPz3JFcpR2qBQ6YbXxUpmTEpyDgS\"]},\"src/codegen/world/IUltimateDominionConfigSystem.sol\":{\"keccak256\":\"0x7afcbb11522c4bb8fa8e86e1ca2f965eb5ba3cb7342a1229120210724ff3e828\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ae704bc31684551e05b29f55eddc7bd7fcd69e6bd4a54fa774d7d9a327a769b9\",\"dweb:/ipfs/QmZvXXubvwTdDLifLoYhmQbr1M1GKzpputcMo38Au5uvJb\"]},\"src/codegen/world/IWorld.sol\":{\"keccak256\":\"0x8f0c0461ad016b4d4f502d10fe5fa2a650836a4a76c883b2e55e714158194859\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2254a9f2f35ede55ef418440874945422b5e5f526724deb0bd397cabdf512f6c\",\"dweb:/ipfs/QmZrfF7SgNu2S9rgdNbKFpNsFZMJLTp9GyZpqwvVwQCNr9\"]},\"src/interfaces/IRngSystem.sol\":{\"keccak256\":\"0x87595683df74e1357f3562deffadb410ac94c98cbc765d4b7327ae3d39032ec0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c05e5ed25cff2606f26b2e370801257bfcd6c1fe10b23d21c68b3a6d55fcbb02\",\"dweb:/ipfs/QmV6Ddyj4A86bbsjGfi4J61wcJH6vR9C4RfXmhiQiJuZQn\"]},\"src/interfaces/Structs.sol\":{\"keccak256\":\"0x6259111a19c9e329bd16a154bca9afa89339ce179d278647e34bcdff1868d0de\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c67088e2ecdb887174b16cdaf87299ad3b3871d7ce1f8c4c51e8def5e6cc8fb5\",\"dweb:/ipfs/QmR2SXkYEkSqaacU6rWGsLdZiefy5kcsVqhvzg4Kob2fk1\"]},\"src/libraries/LibChunks.sol\":{\"keccak256\":\"0xb4314b9df31cb353ad6d4b434569294aa159fb23abea1260e638a6297781f767\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://decf1fd82655251b50dd10f1da26f53647d4a2a454a36cd6a735d05de3f8e8f9\",\"dweb:/ipfs/QmXZdcHrHY2tPfUVaxyoMqDxitkzH9o6UXYncihgJzqHwv\"]},\"src/libraries/Math.sol\":{\"keccak256\":\"0x7aba32d8d0d2b81758afb4f211afccbf3e85ce62defad5ac1fd8fd26c8fd5ab5\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://fb636fcaf2f6f692bf32cadc2f8089a28367676d7b6f3423a5d0593a23e8200a\",\"dweb:/ipfs/QmNQnrjDfwhM4jMzC9tFxHszohkZPGeFhiEendg7qi2crW\"]},\"src/systems/CombatSystem.sol\":{\"keccak256\":\"0x7c68577cd62c32dc2ccafbbe2cb429b01fdc8fe36e3d8774327d3c97120f2ebc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6669b99054f2997c860ef7357bbc1193c09bb1da28ad23b4e8d45ce4a4298d8c\",\"dweb:/ipfs/QmYWif1xT3FceU4swX4iqUDWfPBzV5QJYs3i5dbHsdqDDP\"]},\"src/utils.sol\":{\"keccak256\":\"0xf50d451bb280fb33e08f521e168952f5145e69eee7df284ffeb1865b8b5187cc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a78e6326639bdf19f606921e48c90663f387cbfd7d8160a461838e9ca6a0fc57\",\"dweb:/ipfs/QmPT6PNCCQKWVP9bwYC4JyfuXJSgbupsgq6MT898gYfa1q\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.24+commit.e11b9ed9"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint256","name":"start","type":"uint256"},{"internalType":"uint256","name":"end","type":"uint256"}],"type":"error","name":"Slice_OutOfBounds"},{"inputs":[{"internalType":"string","name":"resource","type":"string"},{"internalType":"address","name":"caller","type":"address"}],"type":"error","name":"World_AccessDenied"},{"inputs":[{"internalType":"bytes4","name":"functionSelector","type":"bytes4"}],"type":"error","name":"World_FunctionSelectorNotFound"},{"inputs":[{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"World_ResourceNotFound"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]","indexed":false},{"internalType":"bytes","name":"staticData","type":"bytes","indexed":false},{"internalType":"EncodedLengths","name":"encodedLengths","type":"bytes32","indexed":false},{"internalType":"bytes","name":"dynamicData","type":"bytes","indexed":false}],"type":"event","name":"Store_SetRecord","anonymous":false},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]","indexed":false},{"internalType":"uint48","name":"start","type":"uint48","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Store_SpliceStaticData","anonymous":false},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"_calculateMagicAttack"},{"inputs":[],"stateMutability":"view","type":"function","name":"_msgSender","outputs":[{"internalType":"address","name":"sender","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"_msgValue","outputs":[{"internalType":"uint256","name":"value","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"_world","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"enum EncounterType","name":"encounterType","type":"uint8"},{"internalType":"bytes32[]","name":"attackers","type":"bytes32[]"},{"internalType":"bytes32[]","name":"defenders","type":"bytes32[]"}],"stateMutability":"nonpayable","type":"function","name":"createMatch","outputs":[{"internalType":"bytes32","name":"encounterId","type":"bytes32"}]},{"inputs":[{"internalType":"bytes32","name":"encounterId","type":"bytes32"},{"internalType":"bytes32","name":"playerId","type":"bytes32"},{"internalType":"struct Action[]","name":"actions","type":"tuple[]","components":[{"internalType":"bytes32","name":"attackerEntityId","type":"bytes32"},{"internalType":"bytes32","name":"defenderEntityId","type":"bytes32"},{"internalType":"bytes32","name":"actionId","type":"bytes32"},{"internalType":"uint256","name":"weaponId","type":"uint256"}]}],"stateMutability":"payable","type":"function","name":"endTurn"},{"inputs":[{"internalType":"uint256","name":"randomNumber","type":"uint256"},{"internalType":"bytes32","name":"encounterId","type":"bytes32"},{"internalType":"struct Action[]","name":"actions","type":"tuple[]","components":[{"internalType":"bytes32","name":"attackerEntityId","type":"bytes32"},{"internalType":"bytes32","name":"defenderEntityId","type":"bytes32"},{"internalType":"bytes32","name":"actionId","type":"bytes32"},{"internalType":"uint256","name":"weaponId","type":"uint256"}]}],"stateMutability":"nonpayable","type":"function","name":"executeCombat"},{"inputs":[{"internalType":"bytes32","name":"encounterId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getEncounter","outputs":[{"internalType":"struct CombatEncounterData","name":"_encounterData","type":"tuple","components":[{"internalType":"enum EncounterType","name":"encounterType","type":"uint8"},{"internalType":"uint256","name":"start","type":"uint256"},{"internalType":"uint256","name":"end","type":"uint256"},{"internalType":"uint256","name":"currentTurn","type":"uint256"},{"internalType":"uint256","name":"maxTurns","type":"uint256"},{"internalType":"bytes32[]","name":"defenders","type":"bytes32[]"},{"internalType":"bytes32[]","name":"attackers","type":"bytes32[]"}]}]},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bytes32[]","name":"participants","type":"bytes32[]"}],"stateMutability":"view","type":"function","name":"isParticipant","outputs":[{"internalType":"bool","name":"_isParticipant","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"playerId","type":"bytes32"},{"internalType":"bytes32","name":"encounterId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"isParticipant","outputs":[{"internalType":"bool","name":"_isParticipant","type":"bool"}]},{"inputs":[{"internalType":"bytes32[]","name":"attackers","type":"bytes32[]"},{"internalType":"bytes32[]","name":"defenders","type":"bytes32[]"},{"internalType":"uint16","name":"x","type":"uint16"},{"internalType":"uint16","name":"y","type":"uint16"}],"stateMutability":"view","type":"function","name":"isValidPvE","outputs":[{"internalType":"bool","name":"_isValidPvE","type":"bool"}]},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"pure","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]}],"devdoc":{"kind":"dev","methods":{"_msgSender()":{"returns":{"sender":"The `msg.sender` in the call to the World contract before the World routed the call to the WorldContextConsumer contract."}},"_msgValue()":{"returns":{"value":"The `msg.value` in the call to the World contract before the World routed the call to the WorldContextConsumer contract."}},"_world()":{"returns":{"_0":"The address of the World contract that routed the call to this WorldContextConsumer."}},"endTurn(bytes32,bytes32,(bytes32,bytes32,bytes32,uint256)[])":{"params":{"actions":": for a pve encounter player actions are calculated first and the mobs.","encounterId":"the bytes32 id of the encounter"}},"supportsInterface(bytes4)":{"params":{"interfaceId":"The ID of the interface in question."},"returns":{"_0":"True if the interface is supported, false otherwise."}}},"version":1},"userdoc":{"kind":"user","methods":{"_msgSender()":{"notice":"Extract the `msg.sender` from the context appended to the calldata."},"_msgValue()":{"notice":"Extract the `msg.value` from the context appended to the calldata."},"_world()":{"notice":"Get the address of the World contract that routed the call to this WorldContextConsumer."},"supportsInterface(bytes4)":{"notice":"Checks if an interface is supported by the contract. using ERC-165 supportsInterface (see https://eips.ethereum.org/EIPS/eip-165)"}},"version":1}},"settings":{"remappings":["@codegen/=src/codegen/","@erc1155/=lib/ERC1155-puppet/","@interfaces/=src/interfaces/","@latticexyz/=node_modules/@latticexyz/","@libraries/=src/libraries/","@openzeppelin-upgradeable/=node_modules/@openzeppelin/contracts-upgradeable/","@openzeppelin/=node_modules/@openzeppelin/contracts/","@pythnetwork/=node_modules/@pythnetwork/entropy-sdk-solidity/","@systems/=src/systems/","@tables/=src/codegen/tables/","@test/=test/","@world/=src/codegen/world/","ERC1155-puppet/=lib/ERC1155-puppet/","ds-test/=node_modules/ds-test/src/","forge-std/=node_modules/forge-std/src/"],"optimizer":{"enabled":true,"runs":3000},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"src/systems/CombatSystem.sol":"CombatSystem"},"evmVersion":"paris","libraries":{}},"sources":{"constants.sol":{"keccak256":"0xea645b3f1e153c1d76fe3ed1c15a22129928d78711f9eb6476ddc123460f25ed","urls":["bzz-raw://0e57cd5c8ca30c40156f7379c556ea7ca3394da3da286056cf9554e7c1567b14","dweb:/ipfs/QmSdQyCEp65JnngKxz4d6QRzdDcMqB3g2Aw5J9vuEMgEW1"],"license":"MIT"},"node_modules/@latticexyz/schema-type/src/solidity/SchemaType.sol":{"keccak256":"0x650927696f7518fa216f2d6001835e9fdb419518034c781e86d2a2d33f4ecd2a","urls":["bzz-raw://72e91ac32ed00d36bd22fefeaf4ce1e9420143ddab7080eeb720c668a117bf44","dweb:/ipfs/QmdVqn18WZvx5p84MDJPsB5tfVoXDR86wzm4sLx6WrGYYL"],"license":"MIT"},"node_modules/@latticexyz/store/src/Bytes.sol":{"keccak256":"0x7dec900f9c9e7dff59430fa6f520e76c56338c3e829201aea140d49342e4fef8","urls":["bzz-raw://e55c1dfcda94dcc64b8577949b2e92a9d3fc44f5fba1ae77ceacccfdc8e22e35","dweb:/ipfs/QmS7uRJbEQYkPuZ5Dz5aSNjaaxj9PA8RtxUeUGN2W3jZx6"],"license":"MIT"},"node_modules/@latticexyz/store/src/EncodedLengths.sol":{"keccak256":"0xebc0a6efd611e02b15c05a382382b597fe059eba7f2a9e90da81eeb2f7666774","urls":["bzz-raw://00b2cac12599935e25ea0697e99fc9e6d5af6c1c982761996c16707d9cd6ca09","dweb:/ipfs/QmXccFminkrFtDpNfx6X1pHvW7Tn1nA5XcGu9T17pJyZyK"],"license":"MIT"},"node_modules/@latticexyz/store/src/FieldLayout.sol":{"keccak256":"0x15f698b7eabc062a00ff7a2e02db0ace2dd51f8bd2bc51a45dc0afa88f2ee658","urls":["bzz-raw://f774202c98ad394b3b62be93292512c633dec63bc931c190ed984656c2d54ec7","dweb:/ipfs/Qmd2D9mvP8S88ad2Q8WU54saNVr3Pwc5stPqEKHwcpo8AT"],"license":"MIT"},"node_modules/@latticexyz/store/src/Hook.sol":{"keccak256":"0xd016a2e1260f5a81ff9a8dfac58d7947e114414df8cce7302a2629908ea5f18e","urls":["bzz-raw://0c558a6f3a5f540c0190fa6d642a094a185c5db1acfc2437c7dbde0340f00ac3","dweb:/ipfs/QmViAHvR7U7HNfBiBZEMFiy1TTSHDFNiDzBfQSeLBShCky"],"license":"MIT"},"node_modules/@latticexyz/store/src/IERC165.sol":{"keccak256":"0x0efbf9afc716c585621482221f75e5bd60bcf0e813c9f7800d7c0309dcc3c927","urls":["bzz-raw://31b6aeb5446a0a0d5bd71be15a68c5bde94b08c961369203b83c8abe36f401d2","dweb:/ipfs/QmXhComne4es9ZMKaGNqHCdJZrFoFssxMYgLaqvCXPL1Mg"],"license":"MIT"},"node_modules/@latticexyz/store/src/IEncodedLengthsErrors.sol":{"keccak256":"0x06bb49164f44acc8d51df7b75ecf2f7aeb9281f7a3b357cae7d8d58bd1700dfa","urls":["bzz-raw://719027f4cc60fea30ce01cd4f672462f41fac750ae802e91a1a6d37c929e11ba","dweb:/ipfs/QmWi5DM2jT5V5SGP1afRmFyRgFvuZiGDX2PWHwP19HssF1"],"license":"MIT"},"node_modules/@latticexyz/store/src/IFieldLayoutErrors.sol":{"keccak256":"0xaef70c46e412bded1024ac82c957cea81c1d1ab11878a95635531e2ac9673a53","urls":["bzz-raw://cda2c7dc02ee8f0163b1c8d0f3e1e05d48b2a009e5c7365d2418f17bc3455817","dweb:/ipfs/QmXHDZuCPTxjHaeiEaJhA81koX2NJ3Gj1zt5WVWaz77FL8"],"license":"MIT"},"node_modules/@latticexyz/store/src/ISchemaErrors.sol":{"keccak256":"0x0ac3de36c9d0058a17fcd7f1a905132215fd16ea3ed3b5109de1de04ddd7c441","urls":["bzz-raw://f83fa2546009cfd16b3b3969dcec1d67c9d818d910177b885ba263b6a948c65d","dweb:/ipfs/QmehywHdvFYBL9BTtoPsVVwJXsEA4Xjk8aPWoHw1R45KeY"],"license":"MIT"},"node_modules/@latticexyz/store/src/ISliceErrors.sol":{"keccak256":"0x72684b7dfc1b44537401ccf10d6120186d02323266fcc762bc81859985eded4c","urls":["bzz-raw://e8d037b6937969ae54018ddf647eeaf5eb69a2b0bf9edf9456d3d270316b2883","dweb:/ipfs/QmfYJeyAmzRqpn68FteiM97p5t17iBw62FCET4bK5g4w37"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStore.sol":{"keccak256":"0x42515d1410333a3573f78a460576271ef62c16edad5cf771ef6287b83ca1c706","urls":["bzz-raw://6a58d03c4cf420df57d2b2e2e7932daad877e46e89561b46e1fa9f593a701bdc","dweb:/ipfs/QmeFmKS7J1WqqBAgXkyxxx2fGA8JzuGszUmVsV2T6DYtsL"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreErrors.sol":{"keccak256":"0x37e4d2f015dd4005ff9b3f711257c891027804bc268db1791984af4989951912","urls":["bzz-raw://a4a566ea96b69211f503707f69a9f9012d5873a3fd57b3f221549f46a7518df6","dweb:/ipfs/QmVgcE3JufJr3iyeV6xqkvS4YtDcy6Eqyram2yzWUhwoB4"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreEvents.sol":{"keccak256":"0x8606e9de37943c74beabb9ac9acd2132f951bed1ef79f2f4f3de83ed1f271f6a","urls":["bzz-raw://d13adeee7ae9e687bf1cd12a8c36223179685fc828a7c468ee9311c879401b08","dweb:/ipfs/QmQeb2ArSoQpE6ujBbDj9LY3xqpVCPiz3bh9SLT6siE8RY"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreHook.sol":{"keccak256":"0x6574a30a2bbd8a0de21b2504c55effb8802fdeff62296af82a9380bd753adcc4","urls":["bzz-raw://85a859c533f51b584a9a2e8a64d61b6cf6f69bfcff1b926ad787518b1cae9562","dweb:/ipfs/QmVyjmyJ69ZeqaXHg91JtGLVahRfZ7KtWaessLWZ6rYk9p"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreKernel.sol":{"keccak256":"0x37a23dcbabc5937a717f2fda636b6a97963ed4b5a96870a62dfb199a8b692f89","urls":["bzz-raw://ac9741ea6daf21f39699be11afd919ae3ec07df24d948aaaa6549456fefd7fc0","dweb:/ipfs/QmeiPQkZitM4Pc3i6L87thU71Fs1JVWAgMqXnSK8VrCq75"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreRead.sol":{"keccak256":"0xdcf28b3293d4d6c1fe2808a8918c1b2122e4e0e49f2793c79ebd2b9ae210ff7b","urls":["bzz-raw://bb3d9cc80f549ed0c5b768aea69fb1b3c364bd4f85d193a3040c411b594d94db","dweb:/ipfs/QmYYdY5CjPHiW5ucXihTva1eHsCPNqBsvL6zYYafH3ap4p"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreRegistration.sol":{"keccak256":"0x9e91a73f93cc9ebc00c265c83177f6a3f8a156749a9261202e2845e12aeaa96b","urls":["bzz-raw://a39280d87d22dd0a959d8f55925cb092dba1fee2f11d3dd8e3ffabed45a9ab6a","dweb:/ipfs/QmRMBFLJtT2KN43Xz9P3vUNWxXrP8rLTNBFw2P6Z7EGeaS"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreWrite.sol":{"keccak256":"0x120fd448da5806e09ecb5327ad4dba64df01d2ee7232de0979133627e87e24ba","urls":["bzz-raw://7a3cb151b2ddee217f330d61813b2dcd997de94940c903719f6d066a21467890","dweb:/ipfs/Qmbes1RRY6KdtsMohp8834xXyipeQK9GJ41NfgXK1d1QAZ"],"license":"MIT"},"node_modules/@latticexyz/store/src/Memory.sol":{"keccak256":"0xef6e7000b181c2991aeacbf99a9d886f8c4df88878b857713f851185b63a7811","urls":["bzz-raw://b079b4773d140ab2c01bdb04facfa56a78f753aea7122fa445b2bfa133411392","dweb:/ipfs/QmWYWKFpwtsPeGdCSxcANgxXUbwAuMMgR7iMVPDSCZxz2A"],"license":"MIT"},"node_modules/@latticexyz/store/src/ResourceId.sol":{"keccak256":"0x889423054511cf8a83f5dfd65a0f984dc514aba798ef3db139b59d395b2327e2","urls":["bzz-raw://40b9495d455c87db8b063e291ca3973dc3ba1163f09c5d7446241a9e1cb69ed0","dweb:/ipfs/Qmek1JKVjPUpoXnKwu66HfPS9rHstKtWTuBmG8YFxbPEWQ"],"license":"MIT"},"node_modules/@latticexyz/store/src/Schema.sol":{"keccak256":"0x0d2a08030d21292ecbcc850d9111f3817d03f17cd5e02186894848a9152d79d7","urls":["bzz-raw://3f30024c1613fb587aaba4c1dcb8e4e46ed765a2cebd5b63fbebd327d1bf13d3","dweb:/ipfs/QmZzqSnPMYKDYwbFNvUFrvuazMUyQHzQ59w3A9x6juHAm7"],"license":"MIT"},"node_modules/@latticexyz/store/src/Slice.sol":{"keccak256":"0xae6c03881fdfa56cba1879d9c9c6b52c2829e6a278a200176678d8da05a89345","urls":["bzz-raw://3cad7dc4944c0518de2e7f99697485d365ae37aa6cad6967996377c2dd951fe4","dweb:/ipfs/QmW3grFwr8BcgJmLfjLbj3FthnD7NRUBFMFiahbXztHPr7"],"license":"MIT"},"node_modules/@latticexyz/store/src/Storage.sol":{"keccak256":"0x7e735a4c7fa8b8a5fe2371d90801e3287ddb78efed69b31e1a76f0b7b153c4c3","urls":["bzz-raw://9e6db36bd52144b6feeecd91a58fc311127a3892fc96c4171db5b570fe9876ee","dweb:/ipfs/QmS6LqnTZvpMc4eiz5JowBoNnh3RYemG6JHjqtYucT1rQi"],"license":"MIT"},"node_modules/@latticexyz/store/src/StoreCore.sol":{"keccak256":"0x9513dc38e5baadde0ba9b08320a324043b0e88a10702be5c3507da8c3d45e861","urls":["bzz-raw://99c80c65a394763668e4aed69220fec6bb3ed847fb277ddd1ff1d4bfdf452da2","dweb:/ipfs/QmRT2BATKtrYmixWMuWo9Cz8g8oscfLNSmvjxTyiTNA1pc"],"license":"MIT"},"node_modules/@latticexyz/store/src/StoreSwitch.sol":{"keccak256":"0x7edf7c1641408f3a580eb28bda58054583cb846f875608612671c6d40712ba40","urls":["bzz-raw://4146adef610d1daab085a81aa9f2d4fd8c4e5f459b9ef184f3ef23465573cf91","dweb:/ipfs/QmQqZMsbkzSNG6VfYzQLdRCBCsNohBSVQmWoTP6QvKmKUP"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/index.sol":{"keccak256":"0x094a6f1e2910b345b6b254e0fc2c8882b3190c673f7ee19742e857057a4d3f85","urls":["bzz-raw://18908e2e7e878635abea72ef99851fddd204371e6b641f010e831ebfa0b1bfd4","dweb:/ipfs/QmSNAxXqxTrzPkZ4rSAQgBnuer1yLPq74hoqnzrZV3WGsb"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/Hooks.sol":{"keccak256":"0xfdea5b4cf666720c1c0d81a8acdede68e6220aee45d8a9f3c9834b4edc5da394","urls":["bzz-raw://b3a394dfe123cfb7200f65d379fb0cb3d2c84475b382faf6ee11bf9c45a63b53","dweb:/ipfs/QmRMPHFBbCKtqKBVV9gvd2jhnfsyUKmCBEQkgviMoxi1UG"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/ResourceIds.sol":{"keccak256":"0xf192bceab34508cee21dd7c33e4d776f79c4a7ca55ee8905c6c694850ebfdf64","urls":["bzz-raw://c95113f76f6de671cb44710754e0942934182b544660a4330fc90a505e198905","dweb:/ipfs/QmXma5ZxfK8Y9TbvB7QM9hdhfc1ixiMcLpo9BQxnVthHB5"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/StoreHooks.sol":{"keccak256":"0xa825218614acc19a4100357dd7ee410b67b994fe7aaa68650d5d0d4202d4ca8c","urls":["bzz-raw://09b0cbb598fe2b75bbcd269b47d686a66fcc89c0c40d9a09807eba7688b81fc6","dweb:/ipfs/QmYk6XQwSLhRumujTCsqxdvugKuP8oLjjB926pMHR445ra"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/Tables.sol":{"keccak256":"0x918b977e7f7f3e947d6d5aa189c54c9c7e7c106d0a0d53734ee959ad454abe09","urls":["bzz-raw://3a3de63c04c838bf80c1903cf7464d201d0ece0f86a7aaca35462b730e9338fc","dweb:/ipfs/QmSUkLZ88J7tSwdmR3viBJHU8QVgN2Gji6W8wYLJEDNkc2"],"license":"MIT"},"node_modules/@latticexyz/store/src/constants.sol":{"keccak256":"0x67e0d59237bd37424827ecde1ecdbe71f65376af517b0623cd8f8d5451bca7a6","urls":["bzz-raw://09c5ec7fe73e06140957d44a3d9938587711c783ccbf08ff017638c9279a3168","dweb:/ipfs/QmfS9ZRqHXmBJ1h5B4x4gbU6d18DtMgKZSkxhQgNVRxueu"],"license":"MIT"},"node_modules/@latticexyz/store/src/rightMask.sol":{"keccak256":"0x28887aab8ad5ca598927e59d702999ca6e3b3128f1cddd2b995a381c8d04b275","urls":["bzz-raw://7710847f4689b7f5b81436c7d52ae4395f244a2eebf8d398b2edd43accb06754","dweb:/ipfs/QmTD2wYqryXTynHAn5Vf9wtjUUSGeCJWENZTnWtBAK38pa"],"license":"MIT"},"node_modules/@latticexyz/store/src/storeHookTypes.sol":{"keccak256":"0x4f29001e53690ce74fe405a6d0376a564c9c743d1631d36fab04331865e4d572","urls":["bzz-raw://138c80abd63225a3eeb01ebfa1f9288e188a7ee5b2266b275fb4ed31b5aa30e3","dweb:/ipfs/QmdEx9uHgCCbTcetGwFH5a66Ft7ajmrMDXvP1fW7WjnnE2"],"license":"MIT"},"node_modules/@latticexyz/store/src/storeResourceTypes.sol":{"keccak256":"0x1c4cb6b3ecf76f614479ab304d7de3ade0e99c7ccfd07717b57c92f699a27261","urls":["bzz-raw://2c9b0e0c9b3b5610d6fd65a8ffd7c54df390a34ccc70d58f4a055c49ad1ea586","dweb:/ipfs/QmP6ffpnR7aRyvq9AiUkVNH6LbGfFP3NDq7E2n2PVcHhp2"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/DecodeSlice.sol":{"keccak256":"0x310523f7f3acca841e62fe50be8d8b042cad5b3c239cb1105d6623cf83e63152","urls":["bzz-raw://1cc40ca233acf6502bc65677b381c05331dd7323953e54b5df969051e47f851e","dweb:/ipfs/QmTxy9mhodT8drezB5K1kPR78AMaARomoJqDyaWpLuCKui"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/EncodeArray.sol":{"keccak256":"0x259ee545fd9dfd4767f0b7fef31f52fd3c54c4a1c6657d6fbda4927800c937b3","urls":["bzz-raw://0a4e31efa9f476cd267af7c3e11fe0151252206a1f6407a80a4092444c2de8ea","dweb:/ipfs/QmRF4gWYw33mFTMh7nX8DJ1qzx3Ko6yMsnxubzYTRppdyo"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/TightCoder.sol":{"keccak256":"0x0e74ff88ec94cb33f79d8afc1497c4fdccf02db40ab47f3701c7d02fc305d4d8","urls":["bzz-raw://36b7cd0c2a3f2dcdc83ab7ac5a93f123746ce29c0f1000f2b275ad2c647ff0f3","dweb:/ipfs/QmYdipHYUhHhS78wLdtmKZUK14FEwpto5mFy3rNeZssMLz"],"license":"MIT"},"node_modules/@latticexyz/store/src/version.sol":{"keccak256":"0x78c571906ee999ee7e56d4f7702b8a93c3a9e55e6b552aca115b5f6ac7f1c80a","urls":["bzz-raw://a9f141b2d556b2a2545e7db5606e8a038679a995a22aeaf1702cb3a60320b60a","dweb:/ipfs/QmY7x258Fhj3TT3RT4sNyyfiRphVYdZXhtAnSYpasJ4xVQ"],"license":"MIT"},"node_modules/@latticexyz/world-modules/src/utils/AccessControlLib.sol":{"keccak256":"0x9fb1520ec94ce3396760a235db900192b4990c78fd459c449896a74c32b83542","urls":["bzz-raw://4025b37988ece6915b2c867702a4a381829755dd9e5b0b0b32ade85649b00b2a","dweb:/ipfs/QmUsLyetPdhtSdN3MicE1uphXWscKBPSBif8Sd83RC1E6Z"],"license":"MIT"},"node_modules/@latticexyz/world-modules/src/utils/SystemSwitch.sol":{"keccak256":"0x5ac59bd7f2db0154a8b8f5eecc8eda69458c7ac488d5defd0c904d79025c79a7","urls":["bzz-raw://89adb066110da44661d12e487bc9adfa6c8396432516057b57ae72ba2ceda3e9","dweb:/ipfs/Qmddoe1812LrdEWbaCzE876kL6AK4S7vUGkcMpzAxPyhvR"],"license":"MIT"},"node_modules/@latticexyz/world/src/AccessControl.sol":{"keccak256":"0xe9e1b1e588699a15ee81cc46f5959e14ff323787b576681abe7b0163d5988a4e","urls":["bzz-raw://f19076661965fcf60fbf5e58ee8a83daac63e174806af79f5fd4144929cab899","dweb:/ipfs/QmVQxPrkHpSo1fbsqGvToXc6q9x8zrVrGaZjKTKY413QBm"],"license":"MIT"},"node_modules/@latticexyz/world/src/IERC165.sol":{"keccak256":"0xe3d9074a1be3247be67ff4dd2c9e41481650ddaa799285a249736bb85673e33d","urls":["bzz-raw://0b6743ee1e6d0c74927bf17fc1da0cad7575aa7634871b94190ffbdb4c28c2a7","dweb:/ipfs/Qma5bNsPJSBTesWxg3eAAMUBTDE7UjqWaHF7eMiGwP87jr"],"license":"MIT"},"node_modules/@latticexyz/world/src/IModule.sol":{"keccak256":"0xbb926cf64e685bbf2770d60124664cc84ab70bd3038e17a074f2d472c3fc2c57","urls":["bzz-raw://143c3dcbdf1702dd4f9c869629609386c12f7c0247e88a6d062dc4d519ebe0d2","dweb:/ipfs/QmQJSDd8uFL4sssw9fb9NHo4s6zjuDUgmrLHj3zsJuhMo1"],"license":"MIT"},"node_modules/@latticexyz/world/src/IModuleErrors.sol":{"keccak256":"0x60917e029779c81cfea1f5140c389269e51d7adb78987f39101b9e0d7bdad12d","urls":["bzz-raw://513f41920d67ca28c3e0fe247403c28a4d342785192df449c99d5f92db04fcea","dweb:/ipfs/QmeAG2TtxAgcJQR4QxftuSvQrxisYQ1i1GZoyd7oeFQBDJ"],"license":"MIT"},"node_modules/@latticexyz/world/src/ISystemHook.sol":{"keccak256":"0x81f1743d7ca6a9c7efc4997cf95e603ccb2070885265ca0e540f461aa7430721","urls":["bzz-raw://93d99e78b541b33ecd501bf0cd407a78cef490fec8eaef2f188bddb9e293a99f","dweb:/ipfs/QmPrcMDxwhvBZTr2AxoGqJA9L3Mjx27KBc98h3gXSsa3PM"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldContextConsumer.sol":{"keccak256":"0xb39e9d8cff4162e255f6c460ef9f9f0ad5b804627f745d967b2f10d0dd509299","urls":["bzz-raw://18d957cd87febccc00d82b9454047f0f5236250c9245befc0f57978671675255","dweb:/ipfs/QmdZ1eXBd15vLpLVqTNJDAAaTzzucpRLD8GPJahLKT4J7x"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldErrors.sol":{"keccak256":"0x0abae6f4ed1b3070bddd0ed194c08b83a948b61ae959396202cf627bf1056a2b","urls":["bzz-raw://a7037954f281cc0188a5aafc1d0cca0aabc110fd0234e6c43dca35ad69ed3baf","dweb:/ipfs/Qmbv2nfK1qPpnoAbqNJFqWwo7AuyaX2ZEgZMFspMv7DR5B"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldEvents.sol":{"keccak256":"0x39f6d8930db431c04158b85cc2a612c48d43dc81ec998f267076b12293c5d243","urls":["bzz-raw://d68f1543e5e166d639372d1aec57e3e193b5bb3b37270b6cb0488fab2c0ebe57","dweb:/ipfs/QmdJUFDx87AHWFKP3jVrYg8xqAkiPfuT1M3tEotNt7KUoy"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldKernel.sol":{"keccak256":"0xdaa1e92439036e392fe79892819ae165732f416b831f84d38050ca3d958e549b","urls":["bzz-raw://ea8dc52e31a62e8971322ea9ed8f2e83d562ec199d7f93a392c293e96ff7f092","dweb:/ipfs/QmSbM8MgHbrJLYP7uzemfZeC4xctqdyKDbspwHUsgeeVJC"],"license":"MIT"},"node_modules/@latticexyz/world/src/System.sol":{"keccak256":"0xadcb32bdc444a4420909b738d81fa662dc63739455fe93d5aa89c93a3ccfd2dd","urls":["bzz-raw://d303094c84ebfb0f9f114c54ff4dfc68bfa1e526d0ebe304be6fbeb7cb2f0d3f","dweb:/ipfs/QmYvUx1mNDhkxZFqxLeswW3w9HkvVqeoJiJKj1HN1SB7Gi"],"license":"MIT"},"node_modules/@latticexyz/world/src/SystemCall.sol":{"keccak256":"0x5012c0607c8d41a4eed69d8a0430f742844883d3c3f17a6717ac287608b4e6af","urls":["bzz-raw://c389f65d050849cc95a7df9f45145186a60ae892b7d02b26ec92f8a38f8e2ee5","dweb:/ipfs/QmNQPBewaXghhVeJDaC1XUK6BbFrZ5qUjryhmJuyvgWdbF"],"license":"MIT"},"node_modules/@latticexyz/world/src/WorldContext.sol":{"keccak256":"0x50ca52bdd89a9f27d6b03ad00ef45c8c5a6884ea9d75e18f8fa53524ac2feed9","urls":["bzz-raw://55febdece37b291527094fb654919d4c8fe0b231792996a14c5e5cc76512b19e","dweb:/ipfs/QmZHFbDDNmdFHWc1uTSvDgMUUgb8NgBPb1cDUJYajswbHT"],"license":"MIT"},"node_modules/@latticexyz/world/src/WorldResourceId.sol":{"keccak256":"0xaff9a22fac8a0f6eee5763b07a7ccb623c829d37922b85e42e914aad2ad417ee","urls":["bzz-raw://e598f0274d6d97c0a09806bf4fd1f0d054c310cf51b2123f5ce6380d6f3186ea","dweb:/ipfs/QmaaVvqm21YsCgxozDyShcM17jKUXJhf2y26bk2YzPYZoM"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IAccessManagementSystem.sol":{"keccak256":"0x7e7321b86836bfbf4b96d0fb2a424ed678efcf01b15fa3d0b4ae4f0b975ad5dc","urls":["bzz-raw://ead41554796bd0507e390f2997aa4a8df7bff8b51523b86fa3c5bd8acb1fec48","dweb:/ipfs/QmVe1VUhfbRy8tviA7UcCtS8NjXhsF1E6Re9xLqWS5aRTK"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IBalanceTransferSystem.sol":{"keccak256":"0xe57042e82311847c56fa569377ed84459bf55afccdd3123312a5dff90c1d06f4","urls":["bzz-raw://baf3258c9118bf16ba68ebcfecdb5e5ffc85d5c0cdc2815ca298283dfcff2c83","dweb:/ipfs/QmcBVyUBR3PVejz7249VrEBMCMKHi72KoUXQ8DFmMmY48F"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IBaseWorld.sol":{"keccak256":"0xf7acdfa0eb01c710d11fba129d613863fe86f1bed352f0bc5630bea81cceae17","urls":["bzz-raw://3e4107681cd20c018cd8f5dff6da72e8a4b02f631c7c59b618e8743482c7bc81","dweb:/ipfs/QmXS8NLaKVXcf97HrD8U4hGHqb9ytYGwdZrTVHHb5EwrRj"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IBatchCallSystem.sol":{"keccak256":"0x600cc362780c319e640950ad3520af7fa558171268baab252ff4da4414aa0f1c","urls":["bzz-raw://6d113a833b64bccbbe852f3d0261efd80ad4a0f6771802dc91af79c762a33ff2","dweb:/ipfs/QmaXEdJJaMMQF8nZieWyXdVD15yuXnH89QLZHwD18LAndz"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IModuleInstallationSystem.sol":{"keccak256":"0x7070453d969eba7defd90047d58ae979e27e5c1fcf05598daa4d17fedbe84c35","urls":["bzz-raw://ee5c196c5e339ac0222cd1d14fd9d09451d255605f73732abc33397a9512503b","dweb:/ipfs/QmYwNsWnxP24RzDqFYLnBYswZY97YE3nwG6Xf55f5FqNXa"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IRegistrationSystem.sol":{"keccak256":"0xe08d3af994098120b5507c71a1c3558763b8c1a88c6eae506aa438c2af78f800","urls":["bzz-raw://bb0c47b16ff524140388765fe9ef99211dd7d9b9374dae09144a9956138de00c","dweb:/ipfs/Qma8ibVu6WZs1hFW3hMnUykV3pPXGZhZ3xJwJXNj6Xu7aL"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IWorldRegistrationSystem.sol":{"keccak256":"0x70bed82da026058ddccf52766823c7d55c7d29faad0ab1d76d763786d5277f7c","urls":["bzz-raw://1da6476d62e450d3d935ea8292723612a84fa1d07342fbc052ee851181701a27","dweb:/ipfs/Qmd1FQpmEVbQciLDPkHPXSKB7aYW1YB74BN5JXqn74erhR"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/Balances.sol":{"keccak256":"0x25248669a093cfdc9453491e5b5806f6aa092a805569799650c43c32f7b7877d","urls":["bzz-raw://2f294f597122450abd267760d91682facd0a1040383caeb44aaadeb74770904a","dweb:/ipfs/QmPXsoh8tUhpnhjdBYYTZCLc8MPHDZK6xUmN7F2DsMEXro"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/FunctionSelectors.sol":{"keccak256":"0x1ee313f4f1165034b92c5df1fe4cdd9be52b27780245388db3a0267c119fc926","urls":["bzz-raw://a3d58ca6a58e94bc30d5be0fc7a7d1325a92096c8b8b2b3a0531c2c5d0d60791","dweb:/ipfs/QmZSisbANqwnFzwMJnnYBjemLW4Cqn3oL7MkV4HiQR7GKv"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/NamespaceOwner.sol":{"keccak256":"0x3a53f395fc56398b4095c1e4016ad5f87d06236fc00f1fb85b9cfe138575b614","urls":["bzz-raw://9d91d30c8506a2d07bcafe0f8feff002bbc7764060d7e7bef7f15b9c4a97c597","dweb:/ipfs/QmVTAxSh1JSMpKD1jmJSTvXbDZQubdJW2DQDoePWecJskH"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/ResourceAccess.sol":{"keccak256":"0xb857dd63073a6469f5bb8deb6c0617763cd42c484821e247572c6b53bb1da3cc","urls":["bzz-raw://07c710d67440b98b145c1991623b7c8cc7f0805b4e6fa37a7d54afcece31239e","dweb:/ipfs/Qmb368QqzbQGUttbDS7eVBGQ8KcXhiai2F9vy3Thyyk2vx"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/SystemHooks.sol":{"keccak256":"0xc27730dae8302cb86f5d65ddc9ae0e92afba17842285a6d0cd146a1e21d73c0f","urls":["bzz-raw://4de5f820f1dfe36e53fe1fc77be6a52ac5fa72a7a5d5ec66e5d29ca6ce553674","dweb:/ipfs/QmP5JUMHDCBxZkZ2YnoYQLqQFHeyCpoUVp14hJBWpSdiqV"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/SystemRegistry.sol":{"keccak256":"0xcb1e9fd5cd02cbb7125f2a64c02f89272d4b0f2afc0b43f24b727f023ef06493","urls":["bzz-raw://f4a923e67dea1c1c0a978cbb89d4e27f6e0205f49efe0556ac90b358bd2062ab","dweb:/ipfs/QmZww8gDH9kyXsCaTYWzupNhL1QqR1emAbb5VifFWhDWYF"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/Systems.sol":{"keccak256":"0x1706fe4b5441a4e3982a3d32f7de2148627b8dfbbe3e38391dd4dab06b86478c","urls":["bzz-raw://c0569fa73cd26c6476188646194ad58eb5cf78cb7c7dc7722748455c23c9d4d7","dweb:/ipfs/Qma1RuR12bTXSVJJ8Q8Gw23KkBw7pyV9u5Kr8TGutaxYdz"],"license":"MIT"},"node_modules/@latticexyz/world/src/constants.sol":{"keccak256":"0xb8320f88ed5519a4fe2554ad94815ce328a50fef7719932375d6ce695265c2f5","urls":["bzz-raw://a8f5de30fbcc63e469e46ad4a4d4bcd7d8e4b4f2d31fcf62a04aca48d999af22","dweb:/ipfs/QmXw1jDQM2szfRY3tAGrRy6fEzte6yVFgebJAqCLMDHndV"],"license":"MIT"},"node_modules/@latticexyz/world/src/modules/init/types.sol":{"keccak256":"0x81b75eb286ec515bde6cbb16c3d089054abb530b744865bbace68343d23177bc","urls":["bzz-raw://afc77bd51e24da666260bb48c44ff611869fb2e550921d732e5aac84a1f09525","dweb:/ipfs/QmeU5N4yeRh5nEA65pvGtQQJNv1GvEPy4PkhMVRYRMoMvh"],"license":"MIT"},"node_modules/@latticexyz/world/src/revertWithBytes.sol":{"keccak256":"0xa1147f218a0152b153d4e8bada0f606bfed40ac1f184fd16a941c2d0033c53f5","urls":["bzz-raw://3f5e0f6d1b51a3a04d4bd84537b2ced373b32824898cf6fbfd13ae1cbdf06359","dweb:/ipfs/QmayYRmBZRUV9m4UnFxuC62VvHriXhkYXeH3HibZ3Gmxxf"],"license":"MIT"},"node_modules/@latticexyz/world/src/systemHookTypes.sol":{"keccak256":"0x15c25ae4b21e091209970e45a198cb51f31eeae482828862641099c1a9b2448a","urls":["bzz-raw://0ce3c3eb58dc5c262d36babf372ad028d2846beea73a59d6e70f0eb8c90ee00d","dweb:/ipfs/QmWUkgegTRtSJM3awvjg4J7DWZ2ME7Pnxp1dP2TWWzLNoo"],"license":"MIT"},"node_modules/@latticexyz/world/src/worldResourceTypes.sol":{"keccak256":"0xeb042e7d3638430f6fd394107f3237cf14e4325154f0098624e8a7826584d465","urls":["bzz-raw://39e0b8eb87616b661f5a4f2fd7e1a727bd19b7fd8d40ad3d93fda26822f433ea","dweb:/ipfs/QmacYMatKV9pwEwirVRY9a6r89RoNs5yk99ic37ieWA8Dk"],"license":"MIT"},"node_modules/forge-std/src/console2.sol":{"keccak256":"0x954646445d1014c3cd85c7918f5e7adeeca5ee44b68c00bafa237e597a4e35ea","urls":["bzz-raw://516fa3be52da4763147175bfba4be0aa011fadbb0c1afb01f97265bd4cee7973","dweb:/ipfs/QmdixAyMJefx7qePChgdxcBH5MxhmN7vsqPuPLx3CgrVmF"],"license":"MIT"},"src/codegen/common.sol":{"keccak256":"0x2d0a0176c583fcd95e430978a48ca29a38536c01b57b6effd08697d2d2bf5f42","urls":["bzz-raw://720d1ea5054e1e53b703345992c9ef61e372f6da66247fcb4e89c279055f9085","dweb:/ipfs/QmXCygeJuEesDRSAamMfJZU9Qz5UCz3dmkBj7SGfEvEEY7"],"license":"MIT"},"src/codegen/index.sol":{"keccak256":"0xc993a3f15c56e4b3e83c33b41a17dcff501b025e1e338645b62203cf26d2011f","urls":["bzz-raw://d5229574e32c8131647fe4826eeee2f9305074496a5546e70dc6da9fcf1aea4c","dweb:/ipfs/QmadU9mmUdvJMmwkJJwh83XyebzGG3BvqDvAASQ2T4Chjh"],"license":"MIT"},"src/codegen/tables/ActionOutcome.sol":{"keccak256":"0x3191cc4da6f6a0146b54ac4b6022f402981cda101a577c4b8f49d3dc4c9ca956","urls":["bzz-raw://cc6ace9a0b33a4a1df297c712c0b37171c8e3946e0fd2bf0ea0483ab4d28147a","dweb:/ipfs/QmPaVdRSLQt1xmbRbqeKWitcRXeTXGA3yuxJgPbgdh1WQ4"],"license":"MIT"},"src/codegen/tables/Actions.sol":{"keccak256":"0x63cd48bebaa0414728e9be2c856e4eb01efaead6627a6615da4c77b886805cef","urls":["bzz-raw://c1dfe138555b67362f41c26ce1ab074bfc1fcc4e7c6fd0284b82cc699d80d392","dweb:/ipfs/QmNf8UGE3FZ4U96HkeioE4peWWz1SKPAjhKRrGnpEnCdkQ"],"license":"MIT"},"src/codegen/tables/Admin.sol":{"keccak256":"0x0daf45149c3403e88b492878aa7622c604687314a844023f4f2ebdb53213b17b","urls":["bzz-raw://074403d43b76610a90629582f3d7680f713719e0b0a5ac8563838f694d717d39","dweb:/ipfs/QmVy5jEg33ZNWPTSEEYXYUafsghAdnDivCBGmdUKd7BDMb"],"license":"MIT"},"src/codegen/tables/CharacterEquipment.sol":{"keccak256":"0x5a911b5c2218dabb75a117ce2e8946ceccfe009edd2425a1d012d23727372d32","urls":["bzz-raw://d45dc0a37bb1814f9ebaf5264042b729268be557e9f9b58de928206d86e8ede2","dweb:/ipfs/QmTWSB6XUZXtjQAYLRMkRxPeXNLKa8nADAVguFBKoMADHB"],"license":"MIT"},"src/codegen/tables/Characters.sol":{"keccak256":"0x907f9803924ab0065992e81ccf9c64f228876401e5a728c27d967448bfb35e98","urls":["bzz-raw://809b9cc95a1c37663b48fe4307ba31fc1b0d794913258f5dc2f2f848b0448893","dweb:/ipfs/QmbyQ5DkdeL5CZppx9vs87E2eRzm6CkYfPAYikGGdbcHxH"],"license":"MIT"},"src/codegen/tables/CombatEncounter.sol":{"keccak256":"0x27431d9ff6ee373083856c0b7ffc9ac15f1bb93535620e726c621a8b626f4696","urls":["bzz-raw://50c1bf4f51c81d6299e05fbc65b0deb6104a0706ebeb1e618f5c3bd8e556a405","dweb:/ipfs/QmZcgbtpq9RxfQNEDEM6iQ7eHR5ya9wY4AJkWnnxaEjMBq"],"license":"MIT"},"src/codegen/tables/CombatOutcome.sol":{"keccak256":"0xeb791c773448819c7377ce52c0226a936dec6d65450a832a91fc947b5922f0fd","urls":["bzz-raw://6594f35264d88ef26048ed33de7ee17d9553b0eca23b1ae439fb1f72f6d19078","dweb:/ipfs/QmVr6mm3WmXdz9JLbDgdsK3LS6ypW4DaJrMGpxEQaBWVUZ"],"license":"MIT"},"src/codegen/tables/Counters.sol":{"keccak256":"0x2f840caffed593a80b84a16f186701e0b55eff03cc6fa6c210a6dd9cdf25237d","urls":["bzz-raw://7b6a76de959876e594bf5426dfe3ef9112b84d65e252a117031cfced3bce25a8","dweb:/ipfs/QmTosFfy3ME9N71CjHmTRLUWGJWa8sK81jdNcB3YaFa9oG"],"license":"MIT"},"src/codegen/tables/EntitiesAtPosition.sol":{"keccak256":"0xd0b649485e3837ea8014c2eceb7efa5b5002ad49bb57e87503622d91e0da7501","urls":["bzz-raw://b1c9559099385b1b1c23eb35d8bf72d50da0e813e5d29c90acccfab4a9ba7fe4","dweb:/ipfs/QmX2JCEkcUkTJq1svXUsGs2ucMuSqvSi16z88N4MnZoKRB"],"license":"MIT"},"src/codegen/tables/Items.sol":{"keccak256":"0x369731e289e046f20bff48ebb31202c95024ca34bf8fc1d685426878e66dc31f","urls":["bzz-raw://59ec4b81dc56d99ab8ee12323ce7a2157558eb51e5c7094b8b54335c7bdfe50f","dweb:/ipfs/QmbmYzo3LFHUNSNpZT4ZFZ7FFMAwk7DzyA27R8qqLc7mcj"],"license":"MIT"},"src/codegen/tables/Levels.sol":{"keccak256":"0x535e0e176169629b241caa38851bb5fe8862f822301552e8163bb405c9fc2327","urls":["bzz-raw://b22ef6fbbcdff6d59ccb2e1f3b48cd416ee58d64252aa1865f92ca53792ce7c4","dweb:/ipfs/QmQ7yKMUUcHcVH4RFZTDx9jSnr3rwyiTa7zeVLPK6qUQtp"],"license":"MIT"},"src/codegen/tables/MapConfig.sol":{"keccak256":"0xf7ba7c8303a8146a874960b3f77484d5ae0d9e3478a698ac08ac08f24d05ff27","urls":["bzz-raw://5d3905e07aaa32e028977c866e03cc0f1a92bd14945e30432f07fc3ebf8d8fc3","dweb:/ipfs/Qmf3UJity3jA727Y8ge5swykZa6YrbQPxaqCygroD6U2ch"],"license":"MIT"},"src/codegen/tables/MatchEntity.sol":{"keccak256":"0xaabe20cc4e4d6c5a55658f59ed5094f37ef0a4a795d41db3a147926d4f7bbe7e","urls":["bzz-raw://0c1690adf4c6629b794f8861239dd572a03cfb9c8688b51a4b52a54006efa6b5","dweb:/ipfs/QmUDGdfRxruvzrcqn1qcEqZKfyJYzXLqtarV59EwNdHmp7"],"license":"MIT"},"src/codegen/tables/Mobs.sol":{"keccak256":"0x0d6040fb2c459f26ffe1f563af1b547c9844cc3b53ba3d8d21f8051cfccbf6f3","urls":["bzz-raw://e7e422a289617179f3ecbdd519468996f36841526a30ab7245348ea78275d060","dweb:/ipfs/QmZYLGnLb7witVgCqz3ppfwa8EejMNdAHhdGfBxe3NDVU9"],"license":"MIT"},"src/codegen/tables/MobsByLevel.sol":{"keccak256":"0xf84e0714feee0964737b282a981dfe06d408e5006fe5e31f17ebe02d12be550d","urls":["bzz-raw://58eae71b254ef9d2d50ae3c46b0b03f1a7554b72e1a1743e9a4ef3b73df0f8c5","dweb:/ipfs/QmcY1RuKgtCFrjPfgsfyrmuVW6k94MatmMa4MGT5eNeYj7"],"license":"MIT"},"src/codegen/tables/Name.sol":{"keccak256":"0x5b244643b0cc0f74c380fcd34e6cbe59cf0fabf15362bbaf04db527443f5df99","urls":["bzz-raw://cce9aed9aa8dc6a071b9c8f958ae9f73e50f17ca24dc3c2cc2a58752efc7d1a4","dweb:/ipfs/QmaYLEjYKUnULFRcm35PUk4PQeWMpNEgg3N1JT6f6crf81"],"license":"MIT"},"src/codegen/tables/NameExists.sol":{"keccak256":"0xa8a8560b33be580fadbe6d92d8ee51225ea232788afd74252a12d1f724f7f9ab","urls":["bzz-raw://1bdc023458c300d9fd442c684d91bb3c48f8acc40ef629f7e6956af452bdcfdf","dweb:/ipfs/Qme9weCKgFBzqvRosTTCGyZoRNyU9mz2jkECiZPUMbFpQC"],"license":"MIT"},"src/codegen/tables/Position.sol":{"keccak256":"0xf71ad66166f5f5ac451aef4b46e44c39958dd6096eaf1f34900e69137633224d","urls":["bzz-raw://52d3c128933601b8f02227b96225f0951234f7aec9ff9a9c8684f8cd101f8baa","dweb:/ipfs/QmWNgxUAUYvogthUFSp6pHfWasWRves9727GMaipfdhzs7"],"license":"MIT"},"src/codegen/tables/RandomNumbers.sol":{"keccak256":"0x36271b8a638ab379293882f001c77c5b2c911c707c3cfaf8c63327a047e4fa22","urls":["bzz-raw://b764ae3b7573d191b544f66e01095e23c09c033a766c8d4f9fd635c780382df5","dweb:/ipfs/QmZEDexSqLHBX84DDpYVpjvcxzYL1d4qtkupowY13ixQeA"],"license":"MIT"},"src/codegen/tables/Spawned.sol":{"keccak256":"0x2d1705df77428d3bf34209aa624ce6812b49ff5701f3ded65beace10c902450c","urls":["bzz-raw://72c2f8c81b79fd4cc392b8bd7de5479a649a426b66b0073c231acb3e3d80d905","dweb:/ipfs/QmbA6xN5zS6MQ5D1gqSaucayoKjSKjSiprK1oXWmQSWUMw"],"license":"MIT"},"src/codegen/tables/StarterItems.sol":{"keccak256":"0x5ee8da401ed86fbcfe390b5dbd301e2553c278970b13e942a91b37eb930d8de3","urls":["bzz-raw://ea2e69871f31015e9080b07a0c8fa8fa01519c0827e3dcd1409a5192994205e3","dweb:/ipfs/QmV2raKphNUK5X6hds4e3c5AAk2XUP1vBNBMtsSz4VKGso"],"license":"MIT"},"src/codegen/tables/Stats.sol":{"keccak256":"0x4dbbe2a11e729ce5ed6569600e0e7237f5fa5e2476f6c049581e2b18830c93b2","urls":["bzz-raw://d056287fefd267378a9a3f20ed25e28db2fa34604729f047e22c2ab016ac2c6a","dweb:/ipfs/QmSunLJDjxsUMJaudJefjgeHHurT4KKsgrhNBSsEaU5jgm"],"license":"MIT"},"src/codegen/tables/UltimateDominionConfig.sol":{"keccak256":"0x6f439f3fef2c4db3b295718bb3e277f59500a3183f2306fe70890a30c3eeff26","urls":["bzz-raw://bde32ff627c137c1b52e6f45ff82df52eee9e6fe8fa668fc791132dba187f256","dweb:/ipfs/Qmcj4S8ysUA1Lv8xbA5i1dzn4wwKPQrCEjpUd1MW6rh21w"],"license":"MIT"},"src/codegen/world/IActionSystem.sol":{"keccak256":"0x70c9205cb55d501725621d75489338dcfedcf93379cff8c4035d29efc9059d4a","urls":["bzz-raw://8bc9da212ce3226d2a0f357d6f83ee3976659aa8008eef7c50a1cfe74a29dde2","dweb:/ipfs/QmaSJLZSfG9mqmZ5j5GGMxK7TV1FTLK3AjZXSnAFzaKRCF"],"license":"MIT"},"src/codegen/world/IAdminSystem.sol":{"keccak256":"0xc7af156c71acd0d6cdab577dd76c0a4a7c56115d7bd22069ad8ad183d1a230e6","urls":["bzz-raw://b167cfcac5a58cef4d3f018bbca81afcf7cc7a8d4f75537f4516f508a67f435b","dweb:/ipfs/QmQEcFt4N5qBRRaCYDzAx9UwDuqPycSXBqQLGyZdVHFNzQ"],"license":"MIT"},"src/codegen/world/ICharacterSystem.sol":{"keccak256":"0x49ef649aa37c2f64fa032400e803aa2d6b6d94d8de47f024cf63479c217a1373","urls":["bzz-raw://c84ead4b32146eb7088cb0f3fa45f31de057cb252693efd92982698dc87a4f78","dweb:/ipfs/QmVMhUEXVmVMZJVJLoP6vh9pB6RYq9YmrRC4jdJWujcqnd"],"license":"MIT"},"src/codegen/world/ICombatSystem.sol":{"keccak256":"0xece65bdfbb9f41aa91c926f2625a5afb62162c19a2be83749b02c04755b7143e","urls":["bzz-raw://de01bf77ca9c93a694d87dbb64370d5bd5770da42e461a40e55d640675fe777f","dweb:/ipfs/QmbANbeftTp3YQizGFoYtXwozQHL4ouyoVEu5W1Z14wsQh"],"license":"MIT"},"src/codegen/world/IEquipmentSystem.sol":{"keccak256":"0x22fd0489fa8b774694038a2af88ed573bad4a917dbf6bece44c428ebd5a0f1d3","urls":["bzz-raw://67cf7c8fefa5271e81b97a149422c8cf81aa391c55b8e47f919b8fe8d78720fa","dweb:/ipfs/QmdPPC8HTjB6zkdXs8siSTT4k6YFDvUxL8sDYyt9HGeStW"],"license":"MIT"},"src/codegen/world/IItemsSystem.sol":{"keccak256":"0xa53c467470bcd3a670b1d8f04a8e8b610bfe46634821110356b3ebd84810f76b","urls":["bzz-raw://6637222d8c7b4c16c6586b6ea4bf726b80e559be14d831863d574ececa149f1b","dweb:/ipfs/QmSG7tH5qZCuXVn44DxYjeHZUh3FM7JXqzmkoP5nMhDwQH"],"license":"MIT"},"src/codegen/world/ILootManagerSystem.sol":{"keccak256":"0xf40b0f25e8d4ba6552f4b1a3f2b86c17e2e7c1be7317bfbc15f7e24100bfa14d","urls":["bzz-raw://0f0bd4c7e76b1d3397f85a76382218f4922681c046c5e62dcf606f3ea8884bc0","dweb:/ipfs/QmcaSbhHrGAn9TPsroSHAEijriQmKWvA16ffSJuTw3AzN2"],"license":"MIT"},"src/codegen/world/IMapSystem.sol":{"keccak256":"0x1e306d0814b36dc00a65b4d4f4dcb2812b254aadc7e79d5adfe6a8fe9c697c80","urls":["bzz-raw://018d71336b01c22f432ffcba50375fb124aa33bf7f0f96dc4b02eacd8064507e","dweb:/ipfs/QmYJubK3du3ZCG87uNsTQBVDj6A646BXqifnRSJTHB6v72"],"license":"MIT"},"src/codegen/world/IMobSystem.sol":{"keccak256":"0x7ffc480cffe4c490a65836578d8468ba420cec99f919b67ce0fec75cc1579391","urls":["bzz-raw://c0171e839a340c252b00a44e08349dc4982317f82cc393a391f4e32b1b811d9c","dweb:/ipfs/QmZTNzfeZEkT4PrrwvrPz3JFcpR2qBQ6YbXxUpmTEpyDgS"],"license":"MIT"},"src/codegen/world/IUltimateDominionConfigSystem.sol":{"keccak256":"0x7afcbb11522c4bb8fa8e86e1ca2f965eb5ba3cb7342a1229120210724ff3e828","urls":["bzz-raw://ae704bc31684551e05b29f55eddc7bd7fcd69e6bd4a54fa774d7d9a327a769b9","dweb:/ipfs/QmZvXXubvwTdDLifLoYhmQbr1M1GKzpputcMo38Au5uvJb"],"license":"MIT"},"src/codegen/world/IWorld.sol":{"keccak256":"0x8f0c0461ad016b4d4f502d10fe5fa2a650836a4a76c883b2e55e714158194859","urls":["bzz-raw://2254a9f2f35ede55ef418440874945422b5e5f526724deb0bd397cabdf512f6c","dweb:/ipfs/QmZrfF7SgNu2S9rgdNbKFpNsFZMJLTp9GyZpqwvVwQCNr9"],"license":"MIT"},"src/interfaces/IRngSystem.sol":{"keccak256":"0x87595683df74e1357f3562deffadb410ac94c98cbc765d4b7327ae3d39032ec0","urls":["bzz-raw://c05e5ed25cff2606f26b2e370801257bfcd6c1fe10b23d21c68b3a6d55fcbb02","dweb:/ipfs/QmV6Ddyj4A86bbsjGfi4J61wcJH6vR9C4RfXmhiQiJuZQn"],"license":"MIT"},"src/interfaces/Structs.sol":{"keccak256":"0x6259111a19c9e329bd16a154bca9afa89339ce179d278647e34bcdff1868d0de","urls":["bzz-raw://c67088e2ecdb887174b16cdaf87299ad3b3871d7ce1f8c4c51e8def5e6cc8fb5","dweb:/ipfs/QmR2SXkYEkSqaacU6rWGsLdZiefy5kcsVqhvzg4Kob2fk1"],"license":"MIT"},"src/libraries/LibChunks.sol":{"keccak256":"0xb4314b9df31cb353ad6d4b434569294aa159fb23abea1260e638a6297781f767","urls":["bzz-raw://decf1fd82655251b50dd10f1da26f53647d4a2a454a36cd6a735d05de3f8e8f9","dweb:/ipfs/QmXZdcHrHY2tPfUVaxyoMqDxitkzH9o6UXYncihgJzqHwv"],"license":"MIT"},"src/libraries/Math.sol":{"keccak256":"0x7aba32d8d0d2b81758afb4f211afccbf3e85ce62defad5ac1fd8fd26c8fd5ab5","urls":["bzz-raw://fb636fcaf2f6f692bf32cadc2f8089a28367676d7b6f3423a5d0593a23e8200a","dweb:/ipfs/QmNQnrjDfwhM4jMzC9tFxHszohkZPGeFhiEendg7qi2crW"],"license":"GPL-3.0"},"src/systems/CombatSystem.sol":{"keccak256":"0x7c68577cd62c32dc2ccafbbe2cb429b01fdc8fe36e3d8774327d3c97120f2ebc","urls":["bzz-raw://6669b99054f2997c860ef7357bbc1193c09bb1da28ad23b4e8d45ce4a4298d8c","dweb:/ipfs/QmYWif1xT3FceU4swX4iqUDWfPBzV5QJYs3i5dbHsdqDDP"],"license":"MIT"},"src/utils.sol":{"keccak256":"0xf50d451bb280fb33e08f521e168952f5145e69eee7df284ffeb1865b8b5187cc","urls":["bzz-raw://a78e6326639bdf19f606921e48c90663f387cbfd7d8160a461838e9ca6a0fc57","dweb:/ipfs/QmPT6PNCCQKWVP9bwYC4JyfuXJSgbupsgq6MT898gYfa1q"],"license":"MIT"}},"version":1},"id":114}
\ No newline at end of file
diff --git a/packages/contracts/src/systems/CombatSystem.sol b/packages/contracts/src/systems/CombatSystem.sol
index 9a96e13fd..37e7c496a 100644
--- a/packages/contracts/src/systems/CombatSystem.sol
+++ b/packages/contracts/src/systems/CombatSystem.sol
@@ -223,6 +223,7 @@ contract CombatSystem is System {
_endMatch(encounterId, randomNumber);
} else {
encounterData.currentTurn++;
+ CombatEncounter.set(encounterId, encounterData);
}
}
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 4f1a00928..1cc473578 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -95,28 +95,28 @@ importers:
version: 5.0.13
'@latticexyz/common':
specifier: 2.0.11
- version: 2.0.11([email protected])([email protected])
+ version: 2.0.11([email protected])
'@latticexyz/dev-tools':
specifier: 2.0.11
- version: 2.0.11(@latticexyz/[email protected])(@latticexyz/[email protected])(@latticexyz/[email protected])(@latticexyz/[email protected])(@latticexyz/[email protected])(@latticexyz/[email protected])(@types/[email protected])([email protected])([email protected])
+ version: 2.0.11(@latticexyz/[email protected])(@latticexyz/[email protected])(@latticexyz/[email protected])(@latticexyz/[email protected])(@latticexyz/[email protected])(@latticexyz/[email protected])(@types/[email protected])([email protected])
'@latticexyz/react':
specifier: 2.0.11
- version: 2.0.11([email protected])([email protected])
+ version: 2.0.11([email protected])
'@latticexyz/recs':
specifier: 2.0.11
- version: 2.0.11([email protected])([email protected])
+ version: 2.0.11([email protected])
'@latticexyz/schema-type':
specifier: 2.0.11
- version: 2.0.11([email protected])([email protected])
+ version: 2.0.11([email protected])
'@latticexyz/store-sync':
specifier: 2.0.11
- version: 2.0.11(@types/[email protected])([email protected])([email protected])
+ version: 2.0.11(@types/[email protected])([email protected])
'@latticexyz/utils':
specifier: 2.0.11
version: 2.0.11
'@latticexyz/world':
specifier: 2.0.11
- version: 2.0.11([email protected])
+ version: 2.0.11
'@rainbow-me/rainbowkit':
specifier: ^2.1.1
version: 2.1.1(@tanstack/[email protected])(@types/[email protected])([email protected])([email protected])([email protected])([email protected])
@@ -153,15 +153,18 @@ importers:
react-router-dom:
specifier: ^6.23.1
version: 6.23.1([email protected])([email protected])
+ react-typist:
+ specifier: ^2.0.5
+ version: 2.0.5([email protected])([email protected])
rxjs:
specifier: 7.5.5
version: 7.5.5
viem:
specifier: 2.9.20
- version: 2.9.20([email protected])([email protected])
+ version: 2.9.20([email protected])
wagmi:
specifier: ^2.9.6
- version: 2.9.6(@tanstack/[email protected])(@types/[email protected])([email protected])([email protected])([email protected])([email protected])([email protected])([email protected])([email protected])
+ version: 2.9.6(@tanstack/[email protected])(@types/[email protected])([email protected])([email protected])([email protected])([email protected])([email protected])([email protected])
devDependencies:
'@types/react':
specifier: 18.2.22
@@ -169,6 +172,9 @@ importers:
'@types/react-dom':
specifier: 18.2.7
version: 18.2.7
+ '@types/react-typist':
+ specifier: ^2.0.6
+ version: 2.0.6
'@vitejs/plugin-react':
specifier: ^3.1.0
version: 3.1.0([email protected])
@@ -177,10 +183,10 @@ importers:
version: 9.1.0([email protected])
eslint-import-resolver-typescript:
specifier: ^3.6.1
- version: 3.6.1(@typescript-eslint/[email protected])([email protected])([email protected])
+ version: 3.6.1([email protected])([email protected])
eslint-plugin-import:
specifier: ^2.29.1
- version: 2.29.1(@typescript-eslint/[email protected])([email protected])([email protected])
+ version: 2.29.1([email protected])([email protected])
eslint-plugin-jsx-a11y:
specifier: ^6.8.0
version: 6.8.0([email protected])
@@ -756,7 +762,7 @@ packages:
'@babel/traverse': 7.24.5
'@babel/types': 7.24.5
convert-source-map: 2.0.0
- debug: 4.3.4([email protected])
+ debug: 4.3.4
gensync: 1.0.0-beta.2
json5: 2.2.3
semver: 6.3.1
@@ -845,7 +851,7 @@ packages:
'@babel/core': 7.24.5
'@babel/helper-compilation-targets': 7.24.6
'@babel/helper-plugin-utils': 7.24.6
- debug: 4.3.4([email protected])
+ debug: 4.3.4
lodash.debounce: 4.0.8
resolve: 1.22.8
transitivePeerDependencies:
@@ -2260,7 +2266,7 @@ packages:
'@babel/helper-split-export-declaration': 7.24.5
'@babel/parser': 7.24.5
'@babel/types': 7.24.5
- debug: 4.3.4([email protected])
+ debug: 4.3.4
globals: 11.12.0
transitivePeerDependencies:
- supports-color
@@ -3947,7 +3953,7 @@ packages:
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dependencies:
ajv: 6.12.6
- debug: 4.3.4([email protected])
+ debug: 4.3.4
espree: 9.6.1
globals: 13.24.0
ignore: 5.3.1
@@ -4306,7 +4312,7 @@ packages:
deprecated: Use @eslint/config-array instead
dependencies:
'@humanwhocodes/object-schema': 2.0.3
- debug: 4.3.4([email protected])
+ debug: 4.3.4
minimatch: 3.1.2
transitivePeerDependencies:
- supports-color
@@ -4624,14 +4630,14 @@ packages:
transitivePeerDependencies:
- supports-color
- /@latticexyz/[email protected]([email protected])([email protected]):
+ /@latticexyz/[email protected]([email protected]):
resolution: {integrity: sha512-NXoX58QxGfbpExuFwc/ErRAhtXXkU75NQspti9p+8WLBUvWpbxGDlVyBYXAqzfDHh5FM8UdZ+aKqcACV+C2KQA==}
dependencies:
- '@latticexyz/common': 2.0.11([email protected])([email protected])
- abitype: 1.0.0([email protected])([email protected])
- debug: 4.3.4([email protected])
+ '@latticexyz/common': 2.0.11([email protected])
+ abitype: 1.0.0([email protected])
+ debug: 4.3.4
rxjs: 7.5.5
- viem: 2.9.20([email protected])([email protected])
+ viem: 2.9.20([email protected])
transitivePeerDependencies:
- '@aws-sdk/client-kms'
- asn1.js
@@ -4743,6 +4749,53 @@ packages:
- zod
dev: false
+ /@latticexyz/[email protected]([email protected]):
+ resolution: {integrity: sha512-Eyw2chjMQEB2S9z0EO1Rm2dqLK53pcoU8yHewA5fBtIgX/XcGENjPhr3l+c4TwjMup2Cgs7cgPj++zTUpDY1Eg==}
+ peerDependencies:
+ '@aws-sdk/client-kms': 3.x
+ asn1.js: 5.x
+ peerDependenciesMeta:
+ '@aws-sdk/client-kms':
+ optional: true
+ asn1.js:
+ optional: true
+ dependencies:
+ '@latticexyz/schema-type': 2.0.11([email protected])
+ '@solidity-parser/parser': 0.16.2
+ debug: 4.3.4
+ execa: 7.2.0
+ p-queue: 7.4.1
+ p-retry: 5.1.2
+ prettier: 3.2.5
+ prettier-plugin-solidity: 1.3.1([email protected])
+ viem: 2.9.20([email protected])
+ transitivePeerDependencies:
+ - bufferutil
+ - supports-color
+ - typescript
+ - utf-8-validate
+ - zod
+ dev: false
+
+ /@latticexyz/[email protected]:
+ resolution: {integrity: sha512-Jm7Q4Lwlg25fqDc14GgvGhzbP2KWNPOFf7M9A63m7xfy6gfqZ9whDDHZonvSJgXcWUFevwgqucOwVY9x7Qz5/Q==}
+ dependencies:
+ '@latticexyz/common': 2.0.11([email protected])
+ '@latticexyz/schema-type': 2.0.11([email protected])
+ esbuild: 0.17.19
+ find-up: 6.3.0
+ viem: 2.9.20([email protected])
+ zod: 3.23.8
+ zod-validation-error: 1.5.0([email protected])
+ transitivePeerDependencies:
+ - '@aws-sdk/client-kms'
+ - asn1.js
+ - bufferutil
+ - supports-color
+ - typescript
+ - utf-8-validate
+ dev: false
+
/@latticexyz/[email protected](@aws-sdk/[email protected])([email protected])([email protected]):
resolution: {integrity: sha512-Jm7Q4Lwlg25fqDc14GgvGhzbP2KWNPOFf7M9A63m7xfy6gfqZ9whDDHZonvSJgXcWUFevwgqucOwVY9x7Qz5/Q==}
dependencies:
@@ -4780,7 +4833,7 @@ packages:
- utf-8-validate
dev: false
- /@latticexyz/[email protected](@latticexyz/[email protected])(@latticexyz/[email protected])(@latticexyz/[email protected])(@latticexyz/[email protected])(@latticexyz/[email protected])(@latticexyz/[email protected])(@types/[email protected])([email protected])([email protected]):
+ /@latticexyz/[email protected](@latticexyz/[email protected])(@latticexyz/[email protected])(@latticexyz/[email protected])(@latticexyz/[email protected])(@latticexyz/[email protected])(@latticexyz/[email protected])(@types/[email protected])([email protected]):
resolution: {integrity: sha512-D5zwyuv8WjYEu620WGo2xOPk0NCVc0NLuJi3OYiEgU7Bud0DXc4SIypr6oy9GhhCYuv8zUyIp4Itu7ZGU21nAA==}
peerDependencies:
'@latticexyz/common': 2.0.11
@@ -4790,21 +4843,21 @@ packages:
'@latticexyz/utils': 2.0.11
'@latticexyz/world': 2.0.11
dependencies:
- '@latticexyz/common': 2.0.11([email protected])([email protected])
- '@latticexyz/react': 2.0.11([email protected])([email protected])
- '@latticexyz/recs': 2.0.11([email protected])([email protected])
- '@latticexyz/schema-type': 2.0.11([email protected])([email protected])
- '@latticexyz/store': 2.0.11([email protected])
- '@latticexyz/store-sync': 2.0.11(@types/[email protected])([email protected])([email protected])
+ '@latticexyz/common': 2.0.11([email protected])
+ '@latticexyz/react': 2.0.11([email protected])
+ '@latticexyz/recs': 2.0.11([email protected])
+ '@latticexyz/schema-type': 2.0.11([email protected])
+ '@latticexyz/store': 2.0.11
+ '@latticexyz/store-sync': 2.0.11(@types/[email protected])([email protected])
'@latticexyz/utils': 2.0.11
- '@latticexyz/world': 2.0.11([email protected])
+ '@latticexyz/world': 2.0.11
react: 18.3.1
react-dom: 18.3.1([email protected])
react-router-dom: 6.23.1([email protected])([email protected])
rxjs: 7.5.5
tailwind-merge: 1.14.0
use-local-storage-state: 18.3.3([email protected])([email protected])
- viem: 2.9.20([email protected])([email protected])
+ viem: 2.9.20([email protected])
zustand: 4.5.2(@types/[email protected])([email protected])
transitivePeerDependencies:
- '@aws-sdk/client-kms'
@@ -4878,14 +4931,32 @@ packages:
- zod
dev: false
- /@latticexyz/[email protected]([email protected])([email protected]):
+ /@latticexyz/[email protected]([email protected]):
+ resolution: {integrity: sha512-z1PnNiBg1zmkLUvJato5SEzw+L2XWMkoGIjKRBr8LypqgJgDhZUg4TaFsiw8aI/QRkEQaXtiG7j+9kwXQxQ5Fg==}
+ dependencies:
+ '@latticexyz/common': 2.0.11([email protected])
+ '@latticexyz/config': 2.0.11
+ '@latticexyz/schema-type': 2.0.11([email protected])
+ abitype: 1.0.0([email protected])
+ viem: 2.9.20([email protected])
+ transitivePeerDependencies:
+ - '@aws-sdk/client-kms'
+ - asn1.js
+ - bufferutil
+ - supports-color
+ - typescript
+ - utf-8-validate
+ - zod
+ dev: false
+
+ /@latticexyz/[email protected]([email protected]):
resolution: {integrity: sha512-gqsOswYpf92k4hA1zsGNdb/itJYcoSvo08lBC1mI/Ob330NvN6TjPqh9bFNKzByqKBgW5O3wnEVWkqlD5mGOGw==}
dependencies:
- '@latticexyz/common': 2.0.11([email protected])([email protected])
- '@latticexyz/config': 2.0.11([email protected])
- '@latticexyz/schema-type': 2.0.11([email protected])([email protected])
- '@latticexyz/store': 2.0.11([email protected])
- viem: 2.9.20([email protected])([email protected])
+ '@latticexyz/common': 2.0.11([email protected])
+ '@latticexyz/config': 2.0.11
+ '@latticexyz/schema-type': 2.0.11([email protected])
+ '@latticexyz/store': 2.0.11
+ viem: 2.9.20([email protected])
transitivePeerDependencies:
- '@aws-sdk/client-kms'
- asn1.js
@@ -4896,11 +4967,11 @@ packages:
- zod
dev: false
- /@latticexyz/[email protected]([email protected])([email protected]):
+ /@latticexyz/[email protected]([email protected]):
resolution: {integrity: sha512-RucIF/Go06QRobZjGWiCDuT+hl97nBKuwl4Yrxr2x+6U793LT/cuxcUVUR+/dR9WE6inMV3FawyYV+tQfOmJ3Q==}
dependencies:
- '@latticexyz/recs': 2.0.11([email protected])([email protected])
- '@latticexyz/store': 2.0.11([email protected])
+ '@latticexyz/recs': 2.0.11([email protected])
+ '@latticexyz/store': 2.0.11
fast-deep-equal: 3.1.3
mobx: 6.12.3
react: 18.3.1
@@ -4915,10 +4986,10 @@ packages:
- zod
dev: false
- /@latticexyz/[email protected]([email protected])([email protected]):
+ /@latticexyz/[email protected]([email protected]):
resolution: {integrity: sha512-0qsVD69shRbJW5hRaLriOMfPBSnOWpRg1k4hUG5g1uY4rmV404gVpiJTBhPOsEdCtzFJnX2x6o3aZjJd/2ftsw==}
dependencies:
- '@latticexyz/schema-type': 2.0.11([email protected])([email protected])
+ '@latticexyz/schema-type': 2.0.11([email protected])
'@latticexyz/utils': 2.0.11
mobx: 6.12.3
rxjs: 7.5.5
@@ -4952,22 +5023,34 @@ packages:
- utf-8-validate
- zod
- /@latticexyz/[email protected](@types/[email protected])([email protected])([email protected]):
+ /@latticexyz/[email protected]([email protected]):
+ resolution: {integrity: sha512-H6KO7zHJkYNNT12FLFMQivRE27rfyuoY62UtLfvBrWSQm6tiL6j5NBlylo8cK4cB+oQ9eUMZ78PSvzHEBm6aKg==}
+ dependencies:
+ abitype: 1.0.0([email protected])
+ viem: 2.9.20([email protected])
+ transitivePeerDependencies:
+ - bufferutil
+ - typescript
+ - utf-8-validate
+ - zod
+ dev: false
+
+ /@latticexyz/[email protected](@types/[email protected])([email protected]):
resolution: {integrity: sha512-r1KMBjSwEr1jKF0FaYSwjjqp1RzwURHh++T0kHKkPU2BBBbNtwAk1pDHC5i7rRLjr/4LIrrq5ozyBavycQez4g==}
dependencies:
- '@latticexyz/block-logs-stream': 2.0.11([email protected])([email protected])
- '@latticexyz/common': 2.0.11([email protected])([email protected])
- '@latticexyz/config': 2.0.11([email protected])
- '@latticexyz/protocol-parser': 2.0.11([email protected])([email protected])
- '@latticexyz/query': 2.0.11([email protected])([email protected])
- '@latticexyz/recs': 2.0.11([email protected])([email protected])
- '@latticexyz/schema-type': 2.0.11([email protected])([email protected])
- '@latticexyz/store': 2.0.11([email protected])
- '@latticexyz/world': 2.0.11([email protected])
+ '@latticexyz/block-logs-stream': 2.0.11([email protected])
+ '@latticexyz/common': 2.0.11([email protected])
+ '@latticexyz/config': 2.0.11
+ '@latticexyz/protocol-parser': 2.0.11([email protected])
+ '@latticexyz/query': 2.0.11([email protected])
+ '@latticexyz/recs': 2.0.11([email protected])
+ '@latticexyz/schema-type': 2.0.11([email protected])
+ '@latticexyz/store': 2.0.11
+ '@latticexyz/world': 2.0.11
'@trpc/client': 10.34.0(@trpc/[email protected])
'@trpc/server': 10.34.0
change-case: 5.4.4
- debug: 4.3.4([email protected])
+ debug: 4.3.4
drizzle-orm: 0.28.6([email protected])([email protected])([email protected])
fast-deep-equal: 3.1.3
kysely: 0.26.3
@@ -4975,7 +5058,7 @@ packages:
rxjs: 7.5.5
sql.js: 1.10.3
superjson: 1.13.3
- viem: 2.9.20([email protected])([email protected])
+ viem: 2.9.20([email protected])
zod: 3.23.8
zustand: 4.5.2(@types/[email protected])([email protected])
transitivePeerDependencies:
@@ -5006,6 +5089,27 @@ packages:
- utf-8-validate
dev: false
+ /@latticexyz/[email protected]:
+ resolution: {integrity: sha512-cCXVxzTRKjLuWgGjnr77qtox0U5ckPwajcB17TL0m6WyoiBV/NRRMX9JKroBOpifngeZWnxp7r8OPR2uUCdSTw==}
+ dependencies:
+ '@arktype/util': 0.0.29
+ '@latticexyz/common': 2.0.11([email protected])
+ '@latticexyz/config': 2.0.11
+ '@latticexyz/protocol-parser': 2.0.11([email protected])
+ '@latticexyz/schema-type': 2.0.11([email protected])
+ abitype: 1.0.0([email protected])
+ arktype: 1.0.29-alpha
+ viem: 2.9.20([email protected])
+ zod: 3.23.8
+ transitivePeerDependencies:
+ - '@aws-sdk/client-kms'
+ - asn1.js
+ - bufferutil
+ - supports-color
+ - typescript
+ - utf-8-validate
+ dev: false
+
/@latticexyz/[email protected](@aws-sdk/[email protected])([email protected])([email protected]):
resolution: {integrity: sha512-cCXVxzTRKjLuWgGjnr77qtox0U5ckPwajcB17TL0m6WyoiBV/NRRMX9JKroBOpifngeZWnxp7r8OPR2uUCdSTw==}
dependencies:
@@ -5072,6 +5176,28 @@ packages:
- utf-8-validate
dev: false
+ /@latticexyz/[email protected]:
+ resolution: {integrity: sha512-kxAkaBY9Dmjv5i9xOlm0qTZZpajlo57vtMyquL1utBRwiVijHp+6BChykDRkDIhrFnLW4og295CRHD8tyK6EBg==}
+ dependencies:
+ '@arktype/util': 0.0.29
+ '@latticexyz/common': 2.0.11([email protected])
+ '@latticexyz/config': 2.0.11
+ '@latticexyz/protocol-parser': 2.0.11([email protected])
+ '@latticexyz/schema-type': 2.0.11([email protected])
+ '@latticexyz/store': 2.0.11
+ abitype: 1.0.0([email protected])
+ arktype: 1.0.29-alpha
+ viem: 2.9.20([email protected])
+ zod: 3.23.8
+ transitivePeerDependencies:
+ - '@aws-sdk/client-kms'
+ - asn1.js
+ - bufferutil
+ - supports-color
+ - typescript
+ - utf-8-validate
+ dev: false
+
/@latticexyz/[email protected](@aws-sdk/[email protected])([email protected])([email protected]):
resolution: {integrity: sha512-kxAkaBY9Dmjv5i9xOlm0qTZZpajlo57vtMyquL1utBRwiVijHp+6BChykDRkDIhrFnLW4og295CRHD8tyK6EBg==}
dependencies:
@@ -5242,7 +5368,7 @@ packages:
bufferutil: 4.0.8
cross-fetch: 4.0.0
date-fns: 2.30.0
- debug: 4.3.4([email protected])
+ debug: 4.3.4
eciesjs: 0.3.18
eventemitter2: 6.4.9
readable-stream: 3.6.2
@@ -5295,7 +5421,7 @@ packages:
'@types/dom-screen-wake-lock': 1.0.3
bowser: 2.11.0
cross-fetch: 4.0.0
- debug: 4.3.4([email protected])
+ debug: 4.3.4
eciesjs: 0.3.18
eth-rpc-errors: 4.0.3
eventemitter2: 6.4.9
@@ -5328,7 +5454,7 @@ packages:
dependencies:
'@ethereumjs/tx': 4.2.0
'@types/debug': 4.1.7
- debug: 4.3.4([email protected])
+ debug: 4.3.4
semver: 7.6.2
superstruct: 1.0.4
transitivePeerDependencies:
@@ -5343,7 +5469,7 @@ packages:
'@noble/hashes': 1.3.2
'@scure/base': 1.1.6
'@types/debug': 4.1.7
- debug: 4.3.4([email protected])
+ debug: 4.3.4
pony-cause: 2.1.11
semver: 7.6.2
superstruct: 1.0.4
@@ -5722,8 +5848,8 @@ packages:
react-dom: 18.3.1([email protected])
react-remove-scroll: 2.5.7(@types/[email protected])([email protected])
ua-parser-js: 1.0.37
- viem: 2.9.20([email protected])([email protected])
- wagmi: 2.9.6(@tanstack/[email protected])(@types/[email protected])([email protected])([email protected])([email protected])([email protected])([email protected])([email protected])([email protected])
+ viem: 2.9.20([email protected])
+ wagmi: 2.9.6(@tanstack/[email protected])(@types/[email protected])([email protected])([email protected])([email protected])([email protected])([email protected])([email protected])
transitivePeerDependencies:
- '@types/react'
dev: false
@@ -6116,10 +6242,10 @@ packages:
picomatch: 2.3.1
dev: false
- /@safe-global/[email protected]([email protected])([email protected]):
+ /@safe-global/[email protected]([email protected]):
resolution: {integrity: sha512-V4a05A3EgJcriqtDoJklDz1BOinWhC6P0hjUSxshA4KOZM7rGPCTto/usXs09zr1vvL28evl/NldSTv97j2bmg==}
dependencies:
- '@safe-global/safe-apps-sdk': 8.1.0([email protected])([email protected])
+ '@safe-global/safe-apps-sdk': 8.1.0([email protected])
events: 3.3.0
transitivePeerDependencies:
- bufferutil
@@ -6128,11 +6254,11 @@ packages:
- zod
dev: false
- /@safe-global/[email protected]([email protected])([email protected]):
+ /@safe-global/[email protected]([email protected]):
resolution: {integrity: sha512-XJbEPuaVc7b9n23MqlF6c+ToYIS3f7P2Sel8f3cSBQ9WORE4xrSuvhMpK9fDSFqJ7by/brc+rmJR/5HViRr0/w==}
dependencies:
'@safe-global/safe-gateway-typescript-sdk': 3.21.1
- viem: 1.21.4([email protected])([email protected])
+ viem: 1.21.4([email protected])
transitivePeerDependencies:
- bufferutil
- typescript
@@ -6873,6 +6999,12 @@ packages:
'@types/react': 18.2.22
dev: false
+ /@types/[email protected]:
+ resolution: {integrity: sha512-/7tmwNwKLOAdL1kx0y7yel4DqOvdQSk13MlCnBX8GyLoYicrU7t8rPOzu2soFTzq0c6QAeX6uSqTRX3tdya7rg==}
+ dependencies:
+ '@types/react': 18.2.22
+ dev: true
+
/@types/[email protected]:
resolution: {integrity: sha512-60fLTOLqzarLED2O3UQImc/lsNRgG0jE/a1mPW9KjMemY0LMITWEsbS4VvZ4p6rorEHd5YKxxmMKSDK505GHpA==}
dependencies:
@@ -7303,7 +7435,7 @@ packages:
- supports-color
dev: true
- /@wagmi/[email protected](@types/[email protected])(@wagmi/[email protected])([email protected])([email protected])([email protected])([email protected])([email protected])([email protected])([email protected]):
+ /@wagmi/[email protected](@types/[email protected])(@wagmi/[email protected])([email protected])([email protected])([email protected])([email protected])([email protected])([email protected]):
resolution: {integrity: sha512-EjMsmPeu4iYDSSfpvsCbpIwhns+E2FrMqujpcgqTboWkAeSoUEbhoAsSwmivMts+5XojOX8NTs6/KP4zQriolg==}
peerDependencies:
'@wagmi/core': 2.10.3
@@ -7315,14 +7447,13 @@ packages:
dependencies:
'@coinbase/wallet-sdk': 4.0.2
'@metamask/sdk': 0.20.3([email protected])([email protected])([email protected])([email protected])
- '@safe-global/safe-apps-provider': 0.18.1([email protected])([email protected])
- '@safe-global/safe-apps-sdk': 8.1.0([email protected])([email protected])
- '@wagmi/core': 2.10.3(@types/[email protected])([email protected])([email protected])([email protected])([email protected])
+ '@safe-global/safe-apps-provider': 0.18.1([email protected])
+ '@safe-global/safe-apps-sdk': 8.1.0([email protected])
+ '@wagmi/core': 2.10.3(@types/[email protected])([email protected])([email protected])([email protected])
'@walletconnect/ethereum-provider': 2.13.0(@types/[email protected])([email protected])
'@walletconnect/modal': 2.6.2(@types/[email protected])([email protected])
cbw-sdk: /@coinbase/[email protected]
- typescript: 5.3.3
- viem: 2.9.20([email protected])([email protected])
+ viem: 2.9.20([email protected])
transitivePeerDependencies:
- '@azure/app-configuration'
- '@azure/cosmos'
@@ -7351,7 +7482,7 @@ packages:
- zod
dev: false
- /@wagmi/[email protected](@types/[email protected])([email protected])([email protected])([email protected])([email protected]):
+ /@wagmi/[email protected](@types/[email protected])([email protected])([email protected])([email protected]):
resolution: {integrity: sha512-Sx5tWFzbLnwJk/aYPsaG8o4SQ8pVs5ucV5AVyPzA9Ibg3+J1P7qxOcfwPDXSNk67vmCGyZWlmBF/IwQChOJYbQ==}
peerDependencies:
'@tanstack/query-core': '>=5.0.0'
@@ -7364,9 +7495,8 @@ packages:
optional: true
dependencies:
eventemitter3: 5.0.1
- mipd: 0.0.5([email protected])([email protected])
- typescript: 5.3.3
- viem: 2.9.20([email protected])([email protected])
+ mipd: 0.0.5([email protected])
+ viem: 2.9.20([email protected])
zustand: 4.4.1(@types/[email protected])([email protected])
transitivePeerDependencies:
- '@types/react'
@@ -7768,7 +7898,7 @@ packages:
resolution: {integrity: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==}
dev: false
- /[email protected]([email protected])([email protected]):
+ /[email protected]([email protected]):
resolution: {integrity: sha512-puLifILdm+8sjyss4S+fsUN09obiT1g2YW6CtcQF+QDzxR0euzgEB29MZujC6zMk2a6SVmtttq1fc6+YFA7WYQ==}
peerDependencies:
typescript: '>=5.0.4'
@@ -7779,7 +7909,6 @@ packages:
zod:
optional: true
dependencies:
- typescript: 5.3.3
zod: 3.23.8
dev: false
@@ -7812,6 +7941,20 @@ packages:
typescript: 5.4.2
zod: 3.23.8
+ /[email protected]([email protected]):
+ resolution: {integrity: sha512-NMeMah//6bJ56H5XRj8QCV4AwuW6hB6zqz2LnhhLdcWVQOsXki6/Pn3APeqxCma62nXIcmZWdu1DlHWS74umVQ==}
+ peerDependencies:
+ typescript: '>=5.0.4'
+ zod: ^3 >=3.22.0
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ zod:
+ optional: true
+ dependencies:
+ zod: 3.23.8
+ dev: false
+
/[email protected]:
resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==}
engines: {node: '>=6.5'}
@@ -9006,6 +9149,17 @@ packages:
ms: 2.1.3
dev: false
+ /[email protected]:
+ resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==}
+ engines: {node: '>=6.0'}
+ peerDependencies:
+ supports-color: '*'
+ peerDependenciesMeta:
+ supports-color:
+ optional: true
+ dependencies:
+ ms: 2.1.2
+
/[email protected]([email protected]):
resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==}
engines: {node: '>=6.0'}
@@ -9319,7 +9473,7 @@ packages:
resolution: {integrity: sha512-9Z0qLB0NIisTRt1DZ/8U2k12RJn8yls/nXMZLn+/N8hANT3TcYjKFKcwbw5zFQiN4NTde3TSY9zb79e1ij6j9Q==}
dependencies:
'@socket.io/component-emitter': 3.1.2
- debug: 4.3.4([email protected])
+ debug: 4.3.4
engine.io-parser: 5.2.2
ws: 8.11.0
xmlhttprequest-ssl: 2.0.0
@@ -9791,18 +9945,18 @@ packages:
- supports-color
dev: true
- /[email protected](@typescript-eslint/[email protected])([email protected])([email protected]):
+ /[email protected]([email protected])([email protected]):
resolution: {integrity: sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==}
engines: {node: ^14.18.0 || >=16.0.0}
peerDependencies:
eslint: '*'
eslint-plugin-import: '*'
dependencies:
- debug: 4.3.4([email protected])
+ debug: 4.3.4
enhanced-resolve: 5.16.1
eslint: 8.57.0
- eslint-module-utils: 2.8.1(@typescript-eslint/[email protected])([email protected])([email protected])([email protected])
- eslint-plugin-import: 2.29.1(@typescript-eslint/[email protected])([email protected])([email protected])
+ eslint-module-utils: 2.8.1([email protected])([email protected])([email protected])
+ eslint-plugin-import: 2.29.1([email protected])([email protected])
fast-glob: 3.3.2
get-tsconfig: 4.7.5
is-core-module: 2.13.1
@@ -9814,7 +9968,7 @@ packages:
- supports-color
dev: true
- /[email protected](@typescript-eslint/[email protected])([email protected])([email protected])([email protected]):
+ /[email protected]([email protected])([email protected])([email protected]):
resolution: {integrity: sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q==}
engines: {node: '>=4'}
peerDependencies:
@@ -9835,16 +9989,15 @@ packages:
eslint-import-resolver-webpack:
optional: true
dependencies:
- '@typescript-eslint/parser': 7.1.1([email protected])([email protected])
debug: 3.2.7
eslint: 8.57.0
eslint-import-resolver-node: 0.3.9
- eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/[email protected])([email protected])([email protected])
+ eslint-import-resolver-typescript: 3.6.1([email protected])([email protected])
transitivePeerDependencies:
- supports-color
dev: true
- /[email protected](@typescript-eslint/[email protected])([email protected])([email protected]):
+ /[email protected]([email protected])([email protected]):
resolution: {integrity: sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==}
engines: {node: '>=4'}
peerDependencies:
@@ -9854,7 +10007,6 @@ packages:
'@typescript-eslint/parser':
optional: true
dependencies:
- '@typescript-eslint/parser': 7.1.1([email protected])([email protected])
array-includes: 3.1.8
array.prototype.findlastindex: 1.2.5
array.prototype.flat: 1.3.2
@@ -9863,7 +10015,7 @@ packages:
doctrine: 2.1.0
eslint: 8.57.0
eslint-import-resolver-node: 0.3.9
- eslint-module-utils: 2.8.1(@typescript-eslint/[email protected])([email protected])([email protected])([email protected])
+ eslint-module-utils: 2.8.1([email protected])([email protected])([email protected])
hasown: 2.0.2
is-core-module: 2.13.1
is-glob: 4.0.3
@@ -9995,7 +10147,7 @@ packages:
ajv: 6.12.6
chalk: 4.1.2
cross-spawn: 7.0.3
- debug: 4.3.4([email protected])
+ debug: 4.3.4
doctrine: 3.0.0
escape-string-regexp: 4.0.0
eslint-scope: 7.2.2
@@ -12248,7 +12400,7 @@ packages:
yallist: 4.0.0
dev: false
- /[email protected]([email protected])([email protected]):
+ /[email protected]([email protected]):
resolution: {integrity: sha512-gbKA784D2WKb5H/GtqEv+Ofd1S9Zj+Z/PGDIl1u1QAbswkxD28BQ5bSXQxkeBzPBABg1iDSbiwGG1XqlOxRspA==}
peerDependencies:
typescript: '>=5.0.4'
@@ -12256,8 +12408,7 @@ packages:
typescript:
optional: true
dependencies:
- typescript: 5.3.3
- viem: 1.21.4([email protected])([email protected])
+ viem: 1.21.4([email protected])
transitivePeerDependencies:
- bufferutil
- utf-8-validate
@@ -13597,6 +13748,17 @@ packages:
tslib: 2.6.2
dev: false
+ /[email protected]([email protected])([email protected]):
+ resolution: {integrity: sha512-iZCkeqeegO0TlkTMiH2JD1tvMtY9RrXkRylnAI6m8aCVAUUwNzoWTVF7CKLij6THeOMcUDCznLDDvNp55s+YZA==}
+ peerDependencies:
+ react: ^0.14 || ^15.0 || ^16.0
+ react-dom: ^^0.14 || ^15.0 || ^16.0
+ dependencies:
+ prop-types: 15.8.1
+ react: 18.3.1
+ react-dom: 18.3.1([email protected])
+ dev: false
+
/[email protected]:
resolution: {integrity: sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==}
engines: {node: '>=0.10.0'}
@@ -14120,7 +14282,7 @@ packages:
engines: {node: '>=10.0.0'}
dependencies:
'@socket.io/component-emitter': 3.1.2
- debug: 4.3.4([email protected])
+ debug: 4.3.4
engine.io-client: 6.5.3
socket.io-parser: 4.2.4
transitivePeerDependencies:
@@ -14134,7 +14296,7 @@ packages:
engines: {node: '>=10.0.0'}
dependencies:
'@socket.io/component-emitter': 3.1.2
- debug: 4.3.4([email protected])
+ debug: 4.3.4
transitivePeerDependencies:
- supports-color
dev: false
@@ -15147,7 +15309,7 @@ packages:
- supports-color
dev: false
- /[email protected]([email protected])([email protected]):
+ /[email protected]([email protected]):
resolution: {integrity: sha512-BNVYdSaUjeS2zKQgPs+49e5JKocfo60Ib2yiXOWBT6LuVxY1I/6fFX3waEtpXvL1Xn4qu+BVitVtMh9lyThyhQ==}
peerDependencies:
typescript: '>=5.0.4'
@@ -15160,9 +15322,8 @@ packages:
'@noble/hashes': 1.3.2
'@scure/bip32': 1.3.2
'@scure/bip39': 1.2.1
- abitype: 0.9.8([email protected])([email protected])
+ abitype: 0.9.8([email protected])
isows: 1.0.3([email protected])
- typescript: 5.3.3
ws: 8.13.0
transitivePeerDependencies:
- bufferutil
@@ -15215,6 +15376,28 @@ packages:
- utf-8-validate
- zod
+ /[email protected]([email protected]):
+ resolution: {integrity: sha512-PHb1MrBHMrSZ8Ayuk3Y/6wUTcMbzlACQaM6AJBSv9kRKX3xYSZ/kehi+gvS0swQJeAlTQ4eZM7jsHQJNAOarmg==}
+ peerDependencies:
+ typescript: '>=5.0.4'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ dependencies:
+ '@adraffy/ens-normalize': 1.10.0
+ '@noble/curves': 1.2.0
+ '@noble/hashes': 1.3.2
+ '@scure/bip32': 1.3.2
+ '@scure/bip39': 1.2.1
+ abitype: 1.0.0([email protected])
+ isows: 1.0.3([email protected])
+ ws: 8.13.0
+ transitivePeerDependencies:
+ - bufferutil
+ - utf-8-validate
+ - zod
+ dev: false
+
/[email protected]:
resolution: {integrity: sha512-kQL23kMeX92v3ph7IauVkXkikdDRsYMGTVl5KY2E9OY4ONLvkHf04MDTbnfo6NKxZiDLWzVpP5oTa8hQD8U3dg==}
engines: {node: ^14.18.0 || >=16.0.0}
@@ -15259,7 +15442,7 @@ packages:
engines: {node: '>=0.10.0'}
dev: false
- /[email protected](@tanstack/[email protected])(@types/[email protected])([email protected])([email protected])([email protected])([email protected])([email protected])([email protected])([email protected]):
+ /[email protected](@tanstack/[email protected])(@types/[email protected])([email protected])([email protected])([email protected])([email protected])([email protected])([email protected]):
resolution: {integrity: sha512-cRZJrI/N8XoPs5DwWP1JPaXPQnUKOr4q3w8xbbKSw2hv++4VXngyUn+clo5vqa/23AZTWwRo4vcJYJoHtHP9Hw==}
peerDependencies:
'@tanstack/react-query': '>=5.0.0'
@@ -15271,12 +15454,11 @@ packages:
optional: true
dependencies:
'@tanstack/react-query': 5.37.1([email protected])
- '@wagmi/connectors': 5.0.5(@types/[email protected])(@wagmi/[email protected])([email protected])([email protected])([email protected])([email protected])([email protected])([email protected])([email protected])
- '@wagmi/core': 2.10.3(@types/[email protected])([email protected])([email protected])([email protected])([email protected])
+ '@wagmi/connectors': 5.0.5(@types/[email protected])(@wagmi/[email protected])([email protected])([email protected])([email protected])([email protected])([email protected])([email protected])
+ '@wagmi/core': 2.10.3(@types/[email protected])([email protected])([email protected])([email protected])
react: 18.3.1
- typescript: 5.3.3
use-sync-external-store: 1.2.0([email protected])
- viem: 2.9.20([email protected])([email protected])
+ viem: 2.9.20([email protected])
transitivePeerDependencies:
- '@azure/app-configuration'
- '@azure/cosmos'
@@ -15313,7 +15495,7 @@ packages:
dependencies:
chalk: 4.1.2
commander: 9.5.0
- debug: 4.3.4([email protected])
+ debug: 4.3.4
transitivePeerDependencies:
- supports-color
dev: true
From 3779c3f4b7228990a1252c538a5474d9862b014a Mon Sep 17 00:00:00 2001
From: ECWireless
Date: Fri, 26 Jul 2024 15:33:13 -0600
Subject: [PATCH 2/2] Deploy to base sepolia
---
packages/contracts/worlds.json | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/packages/contracts/worlds.json b/packages/contracts/worlds.json
index fbe2554b3..c8b2cbce9 100644
--- a/packages/contracts/worlds.json
+++ b/packages/contracts/worlds.json
@@ -1,9 +1,9 @@
{
"31337": {
- "address": "0x9195d7fa0f3a6495d9a8faacf9ee21c0c07e7f7c"
+ "address": "0x57beaf0c70d8d429c144f71b0758d243d0b942e1"
},
"84532": {
- "address": "0x12858302105dcdb6131a1add11389419390596a3",
- "blockNumber": 12983760
+ "address": "0xdf2332face5011cf84e9a97e3903ab786cd2ac6e",
+ "blockNumber": 13130230
}
-}
+}
\ No newline at end of file