diff --git a/packages/client/src/components/ActionsPanel.tsx b/packages/client/src/components/ActionsPanel.tsx
index 805fe1555..cd3ef49b2 100644
--- a/packages/client/src/components/ActionsPanel.tsx
+++ b/packages/client/src/components/ActionsPanel.tsx
@@ -1,4 +1,4 @@
-import { Button, HStack, Stack, Text, VStack } from '@chakra-ui/react';
+import { Button, HStack, Stack, Text } from '@chakra-ui/react';
import { Has, HasValue, runQuery } from '@latticexyz/recs';
import { useCallback, useMemo, useState } from 'react';
import { Link } from 'react-router-dom';
@@ -9,7 +9,6 @@ import { useMapNavigation } from '../contexts/MapNavigationContext';
import { useMUD } from '../contexts/MUDContext';
import { useToast } from '../hooks/useToast';
import { ActionType } from '../utils/types';
-import { HealthBar } from './HealthBar';
// enum ActionEvents {
// Attack = 'attack',
@@ -61,22 +60,34 @@ export const ActionsPanel = (): JSX.Element => {
systemCalls: { endTurn },
} = useMUD();
const { character, equippedItems, refreshCharacter } = useCharacter();
- const { currentBattle, monster } = useCombat();
- const { isSpawned } = useMapNavigation();
+ const { isSpawned, monsters, position } = useMapNavigation();
+ const { currentBattle, monsterOponent } = useCombat();
const [isAttacking, setIsAttacking] = useState(false);
const actionText = useMemo(() => {
- if (!isSpawned) {
- return 'You must spawn on the map to start battling.';
+ if (!(isSpawned && position)) {
+ return 'In order to begin battling, you must spawn your character.';
}
- if (currentBattle && monster) {
- return `You are currently in a battle with a ${monster.name}.`;
+ 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 'To initiate a battle, move into a new tile and click on a monster.';
- }, [currentBattle, isSpawned, monster]);
+ 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.';
+ }
+
+ 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 '';
+ }, [currentBattle, isSpawned, monsterOponent, monsters, position]);
const onAttack = useCallback(
async (itemId: string) => {
@@ -95,7 +106,7 @@ export const ActionsPanel = (): JSX.Element => {
throw new Error('Battle not found.');
}
- if (!monster) {
+ if (!monsterOponent) {
throw new Error('Monster not found.');
}
@@ -113,7 +124,7 @@ export const ActionsPanel = (): JSX.Element => {
const { error, success } = await endTurn(
currentBattle.encounterId,
character.characterId,
- monster.monsterId,
+ monsterOponent.monsterId,
basicAttackId,
itemId,
currentBattle.currentTurn,
@@ -136,7 +147,7 @@ export const ActionsPanel = (): JSX.Element => {
currentBattle,
delegatorAddress,
endTurn,
- monster,
+ monsterOponent,
refreshCharacter,
renderError,
],
@@ -145,16 +156,10 @@ export const ActionsPanel = (): JSX.Element => {
return (
- {actionText}
- {currentBattle && equippedItems && monster && (
-
+ {!currentBattle && (
+ {actionText}
)}
- {currentBattle && equippedItems && monster && (
+ {currentBattle && equippedItems && monsterOponent && (
{equippedItems.length === 0 && (
@@ -184,16 +189,6 @@ export const ActionsPanel = (): JSX.Element => {
))}
)}
- {currentBattle && equippedItems && monster && (
-
- MONSTER STATS:
-
- Attack: {monster.agility}
- Defense: {monster.intelligence}
- Level: {monster.level}
-
-
- )}
{/*
{BATTLE_EVENTS.map((event, i) => (
diff --git a/packages/client/src/components/HealthBar.tsx b/packages/client/src/components/HealthBar.tsx
index 2ea18c7a5..8904c5b45 100644
--- a/packages/client/src/components/HealthBar.tsx
+++ b/packages/client/src/components/HealthBar.tsx
@@ -14,21 +14,30 @@ export const HealthBar = ({
return (
-
+
HP
-
+
-
+
{currentHp} / {baseHp}
diff --git a/packages/client/src/components/StatsPanel.tsx b/packages/client/src/components/StatsPanel.tsx
index fbc9455d7..0511b4cf8 100644
--- a/packages/client/src/components/StatsPanel.tsx
+++ b/packages/client/src/components/StatsPanel.tsx
@@ -16,7 +16,7 @@ import { encodeEntity } from '@latticexyz/store-sync/recs';
import { useMemo } from 'react';
import { GiRogue } from 'react-icons/gi';
import { IoIosArrowForward } from 'react-icons/io';
-import { useNavigate } from 'react-router-dom';
+import { Link as RouterLink, useNavigate } from 'react-router-dom';
import { useCharacter } from '../contexts/CharacterContext';
import { useMUD } from '../contexts/MUDContext';
@@ -193,6 +193,7 @@ export const StatsPanel = (): JSX.Element => {
<>
{
Auction House
{
const { renderError, renderSuccess } = useToast();
+ const isDesktop = useBreakpointValue({ base: false, lg: true });
const {
delegatorAddress,
@@ -33,7 +36,7 @@ export const TileDetailsPanel = (): JSX.Element => {
} = useMUD();
const { character } = useCharacter();
const { isRefreshing, monsters, otherPlayers } = useMapNavigation();
- const { currentBattle } = useCombat();
+ const { currentBattle, monsterOponent } = useCombat();
const [isInitiating, setIsInitiating] = useState(false);
@@ -78,6 +81,94 @@ export const TileDetailsPanel = (): JSX.Element => {
);
}
+ if (character && currentBattle && monsterOponent) {
+ return (
+
+
+
+
+ {isDesktop
+ ? monsterOponent.name.slice(0, -3)
+ : monsterOponent.name}
+
+ {isDesktop && (
+ {monsterOponent.name.slice(-3)}
+ )}
+
+
+
+
+
+
+ {character.name}
+
+
+
+
+
+
+
+
+
+ Agility: {monsterOponent.agility}
+
+
+ Intelligence: {monsterOponent.intelligence}
+
+
+ Strength: {monsterOponent.strength}
+
+
+
+
+
+
+
+ Agility: {character.agility}
+
+
+ Intelligence: {character.intelligence}
+
+
+ Strength: {character.strength}
+
+
+
+
+
+ );
+ }
+
+ if (isInitiating) {
+ return (
+
+
+
+ Initiating battle!
+
+
+
+
+ );
+ }
+
return (
@@ -147,40 +238,6 @@ export const TileDetailsPanel = (): JSX.Element => {
)}
- {isInitiating && (
-
-
-
- Initiating battle!
-
-
-
-
- )}
- {currentBattle && (
-
-
-
- Battle in progress!
-
-
-
-
- )}
);
};
@@ -198,43 +255,48 @@ const MonsterRow = ({
monster: Monster;
onClick: () => void;
}) => {
- const { level, name } = monster;
-
- const isFighting = false;
+ const { inBattle, level, name } = monster;
return (
{name}
-
- Level {level}
-
+ {!inBattle && (
+
+ Level {level}
+
+ )}
+ {inBattle && (
+
+ (In battle...)
+
+ )}
);
};
diff --git a/packages/client/src/contexts/CharacterContext.tsx b/packages/client/src/contexts/CharacterContext.tsx
index 2d2f5d02a..093d2b545 100644
--- a/packages/client/src/contexts/CharacterContext.tsx
+++ b/packages/client/src/contexts/CharacterContext.tsx
@@ -13,7 +13,7 @@ import {
useEffect,
useState,
} from 'react';
-import { formatEther, hexToString } from 'viem';
+import { formatEther, hexToString, zeroHash } from 'viem';
import { useToast } from '../hooks/useToast';
import { fetchMetadataFromUri, uriToHttp } from '../utils/helpers';
@@ -56,6 +56,7 @@ export const CharacterProvider = ({
ItemsOwners,
ItemsTokenURI,
GoldBalances,
+ MatchEntity,
Stats,
},
delegatorAddress,
@@ -88,6 +89,9 @@ export const CharacterProvider = ({
const goldBalance =
getComponentValue(GoldBalances, ownerEntity)?.value ?? BigInt(0);
+ const encounterId = getComponentValue(MatchEntity, entity)?.encounterId;
+ const inBattle = !!encounterId && encounterId !== zeroHash;
+
return {
agility: characterStats?.agility.toString() ?? '0',
baseHp: characterStats?.baseHp.toString() ?? '0',
@@ -96,6 +100,7 @@ export const CharacterProvider = ({
entityClass: characterStats?.class ?? 0,
experience: characterStats?.experience.toString() ?? '0',
goldBalance: formatEther(goldBalance).toString(),
+ inBattle,
intelligence: characterStats?.intelligence.toString() ?? '0',
level: characterStats?.level.toString() ?? '0',
locked: characterData.locked,
@@ -132,6 +137,7 @@ export const CharacterProvider = ({
CharactersTokenURI,
delegatorAddress,
GoldBalances,
+ MatchEntity,
publicClient,
Stats,
worldContract,
diff --git a/packages/client/src/contexts/CombatContext.tsx b/packages/client/src/contexts/CombatContext.tsx
index 3663112b8..76853cca1 100644
--- a/packages/client/src/contexts/CombatContext.tsx
+++ b/packages/client/src/contexts/CombatContext.tsx
@@ -9,12 +9,12 @@ import { useMUD } from './MUDContext';
type CombatContextType = {
currentBattle: CombatDetails | null;
- monster: Monster | null;
+ monsterOponent: Monster | null;
};
const CombatContext = createContext({
currentBattle: null,
- monster: null,
+ monsterOponent: null,
});
export type NavigationProviderProps = {
@@ -59,7 +59,7 @@ export const CombatProvider = ({
encounter?.defenders.includes(character.characterId)),
)[0] ?? null;
- const monster = useMemo(() => {
+ const monsterOponent = useMemo(() => {
if (!currentBattle) return null;
return (
@@ -73,7 +73,7 @@ export const CombatProvider = ({
{children}
diff --git a/packages/client/src/contexts/MapNavigationContext.tsx b/packages/client/src/contexts/MapNavigationContext.tsx
index 0ce50b33e..ca171037d 100644
--- a/packages/client/src/contexts/MapNavigationContext.tsx
+++ b/packages/client/src/contexts/MapNavigationContext.tsx
@@ -1,6 +1,7 @@
import { useComponentValue, useEntityQuery } from '@latticexyz/react';
import {
Entity,
+ getComponentValue,
getComponentValueStrict,
Has,
HasValue,
@@ -16,7 +17,13 @@ import {
useState,
} from 'react';
import { useLocation } from 'react-router-dom';
-import { bytesToHex, formatEther, hexToBytes, hexToString } from 'viem';
+import {
+ bytesToHex,
+ formatEther,
+ hexToBytes,
+ hexToString,
+ zeroHash,
+} from 'viem';
import { useToast } from '../hooks/useToast';
import { GAME_BOARD_PATH } from '../Routes';
@@ -61,6 +68,7 @@ export const MapNavigationProvider = ({
Characters,
CharactersTokenURI,
GoldBalances,
+ MatchEntity,
Mobs,
Position,
Spawned,
@@ -147,6 +155,12 @@ export const MapNavigationProvider = ({
uriToHttp(`ipfs://${metadataURI}`)[0],
);
+ const encounterId = getComponentValue(
+ MatchEntity,
+ entity,
+ )?.encounterId;
+ const inBattle = !!encounterId && encounterId !== zeroHash;
+
return {
...fetachedMetadata,
agility: characterStats.agility.toString(),
@@ -155,6 +169,7 @@ export const MapNavigationProvider = ({
entityClass: characterStats.class,
experience: characterStats.experience.toString(),
goldBalance: formatEther(goldBalance as bigint).toString(),
+ inBattle,
intelligence: characterStats.intelligence.toString(),
level: characterStats.level.toString(),
locked: characterData.locked,
@@ -178,6 +193,7 @@ export const MapNavigationProvider = ({
CharactersTokenURI,
delegatorAddress,
GoldBalances,
+ MatchEntity,
publicClient,
renderError,
Stats,
@@ -205,6 +221,11 @@ export const MapNavigationProvider = ({
encodeEntity({ mobId: 'uint256' }, { mobId: BigInt(mobId) }),
);
const monsterStats = getComponentValueStrict(Stats, monsterId);
+ const encounterId = getComponentValue(
+ MatchEntity,
+ monsterId,
+ )?.encounterId;
+ const inBattle = !!encounterId && encounterId !== zeroHash;
const { mobMetadata: metadataURI } = mobData;
@@ -218,6 +239,7 @@ export const MapNavigationProvider = ({
currentHp: monsterStats.currentHp.toString(),
entityClass: monsterStats.class,
experience: monsterStats.experience.toString(),
+ inBattle,
intelligence: monsterStats.intelligence.toString(),
level: monsterStats.level.toString(),
mobId,
@@ -233,7 +255,7 @@ export const MapNavigationProvider = ({
renderError('Failed to fetch monsters.', e);
}
},
- [Mobs, renderError, Stats],
+ [MatchEntity, Mobs, renderError, Stats],
);
useEffect(() => {
diff --git a/packages/client/src/pages/Character.tsx b/packages/client/src/pages/Character.tsx
index 46b1c5c13..f1a552ec2 100644
--- a/packages/client/src/pages/Character.tsx
+++ b/packages/client/src/pages/Character.tsx
@@ -32,7 +32,7 @@ import { useCallback, useEffect, useMemo, useState } from 'react';
import { FaHatWizard } from 'react-icons/fa';
import { GiAxeSword, GiRogue } from 'react-icons/gi';
import { useNavigate, useParams } from 'react-router-dom';
-import { formatEther, hexToString } from 'viem';
+import { formatEther, hexToString, zeroHash } from 'viem';
import { EditCharacterModal } from '../components/EditCharacterModal';
import { ItemCard } from '../components/ItemCard';
@@ -71,6 +71,7 @@ export const CharacterPage = (): JSX.Element => {
ItemsOwners,
ItemsTokenURI,
Levels,
+ MatchEntity,
Stats,
},
isSynced,
@@ -132,6 +133,12 @@ export const CharacterPage = (): JSX.Element => {
uriToHttp(`ipfs://${metadataURI}`)[0],
);
+ const encounterId = getComponentValue(
+ MatchEntity,
+ characterId as Entity,
+ )?.encounterId;
+ const inBattle = !!encounterId && encounterId !== zeroHash;
+
const _character = {
...fetachedMetadata,
agility: characterStats.agility.toString(),
@@ -141,6 +148,7 @@ export const CharacterPage = (): JSX.Element => {
currentHp: characterStats.currentHp.toString(),
experience: characterStats.experience.toString(),
goldBalance: formatEther(goldBalance as bigint).toString(),
+ inBattle,
intelligence: characterStats.intelligence.toString(),
level: characterStats.level.toString(),
locked: characterData.locked,
@@ -165,6 +173,7 @@ export const CharacterPage = (): JSX.Element => {
Characters,
CharactersTokenURI,
GoldBalances,
+ MatchEntity,
renderError,
Stats,
publicClient,
diff --git a/packages/client/src/utils/types.ts b/packages/client/src/utils/types.ts
index 6826adb77..9cf0cb521 100644
--- a/packages/client/src/utils/types.ts
+++ b/packages/client/src/utils/types.ts
@@ -32,6 +32,7 @@ export type Character = CharacterData & EntityStats & Metadata;
export type CharacterData = {
characterId: Entity;
goldBalance: string;
+ inBattle: boolean;
locked: boolean;
owner: string;
tokenId: string;
@@ -67,6 +68,7 @@ export type Metadata = {
export type Monster = Metadata &
EntityStats & {
+ inBattle: boolean;
mobId: string;
monsterId: Entity;
};
diff --git a/packages/contracts/out/CombatSystem.sol/CombatSystem.json b/packages/contracts/out/CombatSystem.sol/CombatSystem.json
index 2afa68846..d3c177d0f 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:182:-:0;;;;;;;;;;;;;;;;;;;","linkReferences":{"src/libraries/LibChunks.sol":{"LibChunks":[{"start":8887,"length":20}]}}},"deployedBytecode":{"object":"0x6080604052600436106100c75760003560e01c8063aaa417b711610074578063c6ca743c1161004e578063c6ca743c146101fe578063e1af802c1461021e578063fc88ff631461023357600080fd5b8063aaa417b7146101b2578063b2467894146101d2578063bfea0b85146101f257600080fd5b806345ec9354116100a557806345ec93541461014e5780634dda27e81461017057806398d239b11461019d57600080fd5b806301ffc9a7146100cc578063119df25f14610101578063154510201461012e575b600080fd5b3480156100d857600080fd5b506100ec6100e73660046149da565b610253565b60405190151581526020015b60405180910390f35b34801561010d57600080fd5b506101166102ec565b6040516001600160a01b0390911681526020016100f8565b34801561013a57600080fd5b506100ec610149366004614b9c565b6102fb565b34801561015a57600080fd5b5036601f1901355b6040519081526020016100f8565b34801561017c57600080fd5b5061019061018b366004614c21565b6105d5565b6040516100f89190614ca0565b6101b06101ab366004614da6565b61061f565b005b3480156101be57600080fd5b506101626101cd366004614df6565b6107e9565b3480156101de57600080fd5b506100ec6101ed366004614e7b565b610ac3565b3480156101b057600080fd5b34801561020a57600080fd5b506100ec610219366004614ecb565b610b99565b34801561022a57600080fd5b50610116610c53565b34801561023f57600080fd5b506101b061024e366004614da6565b610c5d565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee1270000000000000000000000000000000000000000000000000000000014806102e657507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b60006102f6610e67565b905090565b600160005b855181101561046057610311610c53565b6001600160a01b031663fa1becc487838151811061033157610331614eed565b60200260200101516040518263ffffffff1660e01b815260040161035791815260200190565b602060405180830381865afa158015610374573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103989190614f03565b6103a55760009150610460565b6103ad610c53565b6001600160a01b031663f48a39728783815181106103cd576103cd614eed565b602002602001015186866040518463ffffffff1660e01b815260040161040a9392919092835261ffff918216602084015216604082015260600190565b602060405180830381865afa158015610427573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061044b9190614f03565b6104585760009150610460565b600101610300565b5080156105cd5760005b84518110156105cb5761047b610c53565b6001600160a01b031663fa1becc486838151811061049b5761049b614eed565b60200260200101516040518263ffffffff1660e01b81526004016104c191815260200190565b602060405180830381865afa1580156104de573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105029190614f03565b1561051057600091506105cb565b610518610c53565b6001600160a01b031663f48a397286838151811061053857610538614eed565b602002602001015186866040518463ffffffff1660e01b81526004016105759392919092835261ffff918216602084015216604082015260600190565b602060405180830381865afa158015610592573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105b69190614f03565b6105c357600091506105cb565b60010161046a565b505b949350505050565b6106166040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b6102e682610e99565b600061062a84610e99565b9050806020015160001415801561064357506040810151155b6106945760405162461bcd60e51b815260206004820181905260248201527f434f4d4241542053595354454d3a20494e56414c494420454e434f554e54455260448201526064015b60405180910390fd5b80608001518160600151106106eb5760405162461bcd60e51b815260206004820181905260248201527f434f4d4241542053595354454d3a204558504952454420454e434f554e544552604482015260640161068b565b6106f36102ec565b6001600160a01b0316610704610c53565b6001600160a01b0316634f10aabc856040518263ffffffff1660e01b815260040161073191815260200190565b602060405180830381865afa15801561074e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107729190614f25565b6001600160a01b031614801561078d575061078d8385610b99565b6107d95760405162461bcd60e51b815260206004820152601c60248201527f434f4d4241542053595354454d3a204e4f4e2d434f4d424154414e5400000000604482015260640161068b565b6107e38483610f84565b50505050565b60006107fc6107f66102ec565b84610ac3565b6108485760405162461bcd60e51b815260206004820152601d60248201527f434f4d4241542053595354454d3a20494e56414c49442053454e444552000000604482015260640161068b565b60008061086e8560008151811061086157610861614eed565b602002602001015161101e565b9150915085600181111561088457610884614c3a565b60010361096c57610897858584846102fb565b6108e35760405162461bcd60e51b815260206004820152601a60248201527f434f4d4241542053595354454d3a20494e56414c494420505645000000000000604482015260640161068b565b60405142906108fc908890889088908590602001614f42565b60405160208183030381529060405280519060200120935060006040518060e0016040528089600181111561093357610933614c3a565b81526020018381526020016000815260200160008152602001600f815260200187815260200188815250905061096985826110cf565b50505b85600181111561097e5761097e614c3a565b5060005b8451811015610a29576000801b6109b18683815181106109a4576109a4614eed565b6020026020010151611190565b146109fe5760405162461bcd60e51b815260206004820152601e60248201527f434f4d4241542053595354454d3a20454e54495459204f434355504945440000604482015260640161068b565b610a21858281518110610a1357610a13614eed565b602002602001015185611221565b600101610982565b5060005b8551811015610ab9576000801b610a4f8783815181106109a4576109a4614eed565b14610a9c5760405162461bcd60e51b815260206004820152601e60248201527f434f4d4241542053595354454d3a20454e54495459204f434355504945440000604482015260640161068b565b610ab1868281518110610a1357610a13614eed565b600101610a2d565b5050509392505050565b6000805b8251811015610b9257610ad8610c53565b6001600160a01b0316634f10aabc848381518110610af857610af8614eed565b60200260200101516040518263ffffffff1660e01b8152600401610b1e91815260200190565b602060405180830381865afa158015610b3b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b5f9190614f25565b6001600160a01b0316846001600160a01b031603610b805760019150610b92565b80610b8a81614f9c565b915050610ac7565b5092915050565b600080610ba583610e99565b905060005b8160c0015151811015610bf6578160c001518181518110610bcd57610bcd614eed565b60200260200101518503610be45760019250610bf6565b80610bee81614f9c565b915050610baa565b5081610b925760005b8160a0015151811015610c4b578160a001518181518110610c2257610c22614eed565b60200260200101518503610c395760019250610c4b565b80610c4381614f9c565b915050610bff565b505092915050565b60006102f66112d5565b610c6e30610c696102ec565b6112df565b6000610c7983610e99565b905060005b8251811015610d71576000838281518110610c9b57610c9b614eed565b602090810291909101810151604080516101a08101825281830151815260608084015182860152835192820192909252928201519083015260006080830181905260a0830181905260c0830181905260e083018190526101008301819052610120830181905261014083015243610160830152426101808301529150610d2181886112f5565b905080610140015115610d3d57610d3d816060015160016114d6565b80610120015115610d5757610d57816040015160016114d6565b610d67868560600151858461155a565b5050600101610c7e565b5060008060005b8360a0015151811015610dc657610dab8460a001518281518110610d9e57610d9e614eed565b6020026020010151611671565b15610dbe5782610dba81614f9c565b9350505b600101610d78565b5060005b8360c0015151811015610e0b57610df08460c001518281518110610d9e57610d9e614eed565b15610e035781610dff81614f9c565b9250505b600101610dca565b508260c0015151811480610e2357508260a001515182145b80610e35575082608001518360600151145b15610e4b57610e44858761170f565b5050610e5f565b60608301805190610e5b82614f9c565b9052505b505050505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c80610e965750335b90565b610eda6040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110610f1057610f10614eed565b602090810291909101015260008080610f697f74625544000000000000000000000000436f6d626174456e636f756e74657200857e81050201202020200000000000000000000000000000000000000000000000611a30565b925092509250610f7a838383611b00565b9695505050505050565b6110198260018484604051602001610f9d929190614fb6565b60408051601f1981840301815290829052610fbc939291602401615086565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb2aa60a400000000000000000000000000000000000000000000000000000000179052611bad565b505050565b6040805160018082528183019092526000918291829160208083019080368337019050509050838160008151811061105857611058614eed565b6020908102919091010152600080806110b17f74625544000000000000000000000000506f736974696f6e0000000000000000857e04020002020000000000000000000000000000000000000000000000000000611a30565b9250925092506110c2838383611c5b565b9550955050505050915091565b60006110f282600001518360200151846040015185606001518660800151611c7e565b905060006111088360a001518460c00151611cb3565b9050600061111e8460a001518560c00151611cde565b6040805160018082528183019092529192506000919060208083019080368337019050509050858160008151811061115857611158614eed565b6020908102919091010152610e5f7f74625544000000000000000000000000436f6d626174456e636f756e7465720082868686611d1a565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106111c9576111c9614eed565b602090810291909101015260006105cd7f746255440000000000000000000000004d61746368456e74697479000000000083837e41030020200100000000000000000000000000000000000000000000000000611dcf565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061125757611257614eed565b6020026020010181815250506110197f746255440000000000000000000000004d61746368456e74697479000000000060001b826000856040516020016112a091815260200190565b60408051601f198184030181529190527e41030020200100000000000000000000000000000000000000000000000000611e8c565b60006102f6611f02565b6112f16112eb83611f41565b82611fde565b5050565b604080516101a081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e081018290526101008101829052610120810182905261014081018290526101608101829052610180810191909152600061136d846000015161202a565b90508060200151516000036113c45760405162461bcd60e51b815260206004820152601560248201527f616374696f6e20646f6573206e6f742065786973740000000000000000000000604482015260640161068b565b805160038111156113d7576113d7614c3a565b60ff1660010361148657600081602001518060200190518101906113fb919061511d565b905061141681866040015187606001518860200151886120df565b151560c0880152158015608088015260e0870191909152611480576000620186a08660e0015161144691906151c8565b611453876060015161251e565b61145d9190615212565b9050600081136114705760016101408701525b61147e8660600151826125b0565b505b506114ce565b60405162461bcd60e51b815260206004820152601a60248201527f616374696f6e2074797065206e6f74207265636f676e697a6564000000000000604482015260640161068b565b509192915050565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061150c5761150c614eed565b6020026020010181815250506110197f746255440000000000000000000000004d61746368456e74697479000000000060001b826002856040516020016112a091151560f81b815260010190565b60006115aa826000015183602001518460400151856060015186608001518760a001518860c001518960e001518a61010001518b61012001518c61014001518d61016001518e6101800151612664565b6040805160038082526080820190925291925060009160609183919060208201848036833701905050905087816000815181106115e9576115e9614eed565b6020026020010181815250508660001b8160018151811061160c5761160c614eed565b6020026020010181815250508560001b8160028151811061162f5761162f614eed565b60209081029190910101526116677f6f745544000000000000000000000000416374696f6e4f7574636f6d6500000082868686611d1a565b5050505050505050565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106116aa576116aa614eed565b602090810291909101015260006117037f746255440000000000000000000000004d61746368456e7469747900000000008360027e41030020200100000000000000000000000000000000000000000000000000611dcf565b90506105cd8160f81c90565b600080600061171d85610e99565b905046617a69036117335743604082015261173a565b4260408201525b600080611745614984565b60005b8460c00151518110156117b25761177b8560c00151828151811061176e5761176e614eed565b60200260200101516126b1565b91508160e001518461178d9190615232565b935060008260a0015113156117aa57826117a681614f9c565b9350505b600101611748565b506000805b8560a001515181101561186c578560a0015181815181106117da576117da614eed565b602002602001015191506117ed82611671565b15611864576117fb82612759565b6118059089615232565b97506118158360e001518a6127eb565b61181f9088615232565b965061182c826000611221565b61186489838860c001518960c00151518d6118479190615245565b8151811061185757611857614eed565b6020026020010151612808565b6001016117b7565b506000805b8660c0015151811015611a18578660c00151818151811061189457611894614eed565b602002602001015191506118a6610c53565b6001600160a01b031663fa1becc4836040518263ffffffff1660e01b81526004016118d391815260200190565b602060405180830381865afa1580156118f0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119149190614f03565b15611a0557611922826126b1565b935060008460a0015113156119fb5787156119c75761193f610c53565b6001600160a01b031663fda0ce5083611958888c615259565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815260048101929092526024820152604401600060405180830381600087803b1580156119ae57600080fd5b505af11580156119c2573d6000803e3d6000fd5b505050505b6000891180156119d75750600085115b156119fb576119e6858a615259565b8460c0018181516119f79190615232565b9052505b611a0582856129a7565b611a10826000611221565b600101611871565b50611a238a876110cf565b5050505050509250929050565b6060600060606000611a40611f02565b9050306001600160a01b03821603611a6957611a5d878787612a50565b93509350935050611af7565b6040517f419b58fd0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063419b58fd90611ab2908a908a908a9060040161526d565b600060405180830381865afa158015611acf573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611a5d91908101906152fa565b93509350939050565b611b416040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b611b4a84612b58565b6080860181905260608601829052604086018390526020860184905285856001811115611b7957611b79614c3a565b6001811115611b8a57611b8a614c3a565b8152505050505050611b9c8383612ba8565b60c083015260a08201529392505050565b6060600080611bc3611bbe8561535d565b612bf7565b91509150816000801b03611c29576040517ffdde54e20000000000000000000000000000000000000000000000000000000081527fffffffff0000000000000000000000000000000000000000000000000000000060003516600482015260240161068b565b6020840180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16821790526105cd8285612cba565b60208301516022840151600091829160f091821c911c5b90969095509350505050565b60608585858585604051602001611c999594939291906153a9565b604051602081830303815290604052905095945050505050565b6000611cd783516020028351602002606081901b603883901b838301171792915050565b9392505050565b6060611ce983612d95565b611cf283612d95565b604051602001611d039291906153e4565b604051602081830303815290604052905092915050565b6000611d24611f02565b9050306001600160a01b03821603611d4857611d438686868686612da5565b610e5f565b6040517f298314fb0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063298314fb90611d959089908990899089908990600401615413565b600060405180830381600087803b158015611daf57600080fd5b505af1158015611dc3573d6000803e3d6000fd5b50505050505050505050565b600080611dda611f02565b9050306001600160a01b03821603611e0057611df886868686612dc2565b9150506105cd565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d5990611e4b908990899089908990600401615464565b602060405180830381865afa158015611e68573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611df89190615493565b6000611e96611f02565b9050306001600160a01b03821603611eb557611d438686868686612df8565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae090611d9590899089908990899089906004016154ac565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b031680611f3c573391505090565b919050565b60408051600180825281830190925260009182919060208083019080368337019050509050826001600160a01b031660001b81600081518110611f8657611f86614eed565b602090810291909101015260006105cd7f7462776f726c6400000000000000000053797374656d5265676973747279000083837e20010020000000000000000000000000000000000000000000000000000000611dcf565b611fe88282612e0d565b6112f157611ff582612e6b565b816040517fd787b73700000000000000000000000000000000000000000000000000000000815260040161068b9291906154f3565b60408051808201909152600081526060602082015260408051600180825281830190925260009160208083019080368337019050509050828160008151811061207557612075614eed565b6020908102919091010152600080806120ce7f74625544000000000000000000000000416374696f6e73000000000000000000857e01010101000000000000000000000000000000000000000000000000000000611a30565b925092509250610f7a838383612fa8565b6000806000806120ed610c53565b6001600160a01b03166354f1f2db896040518263ffffffff1660e01b815260040161211a91815260200190565b61010060405180830381865afa158015612138573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061215c919061551e565b90506000612168610c53565b6001600160a01b03166354f1f2db896040518263ffffffff1660e01b815260040161219591815260200190565b61010060405180830381865afa1580156121b3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121d7919061551e565b905060006121e3610c53565b6001600160a01b031663810c1dc1896040518263ffffffff1660e01b815260040161221091815260200190565b600060405180830381865afa15801561222d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612255919081019061558d565b905060008260a001511315612503576040517f4dddf8370000000000000000000000000000000000000000000000000000000081526004810188905260009073__$227e4555c1f608352b26068e438454dd8b$__90634dddf83790602401600060405180830381865af41580156122d0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526122f89190810190615644565b905061234f8160008151811061231057612310614eed565b602002602001015167ffffffffffffffff168260018151811061233557612335614eed565b602002602001015167ffffffffffffffff168e8787613005565b909650945085156124b657620186a060008d6020015185606001516123749190615212565b13612380576001612394565b8c6020015184606001516123949190615212565b61239e91906156dd565b8451620186a0906123b190600290615259565b8460a001518560800151856002815181106123ce576123ce614eed565b602002602001015167ffffffffffffffff166123ea9190615245565b11156124295784608001518460028151811061240857612408614eed565b602002602001015167ffffffffffffffff166124249190615245565b61242f565b8460a001515b8f5161243b91906156f4565b61244591906156f4565b61244f9190615714565b6124599190615212565b965084156124b15761249f6040518060400160405280600581526020017f4352495421000000000000000000000000000000000000000000000000000000815250613098565b6124aa600288615714565b9650600194505b6124fd565b6124f46040518060400160405280600581526020017f4d49535321000000000000000000000000000000000000000000000000000000815250613098565b60009650600095505b50612510565b6000955060009450600093505b505050955095509592505050565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061255757612557614eed565b602090810291909101015260006105cd7f74625544000000000000000000000000537461747300000000000000000000008360057ee1080020200120202020200000000000000000000000000000000000000000611dcf565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106125e6576125e6614eed565b6020026020010181815250506110197f746255440000000000000000000000005374617473000000000000000000000060001b8260058560405160200161262f91815260200190565b60408051601f198184030181529190527ee1080020200120202020200000000000000000000000000000000000000000611e8c565b60608d8d8d8d8d8d8d8d8d8d8d8d8d60405160200161268f9d9c9b9a99989796959493929190615760565b60405160208183030381529060405290509d9c50505050505050505050505050565b6126b9614984565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106126ef576126ef614eed565b6020908102919091010152600080806127487f7462554400000000000000000000000053746174730000000000000000000000857ee1080020200120202020200000000000000000000000000000000000000000611a30565b925092509250610f7a83838361310c565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061279257612792614eed565b602090810291909101015260006105cd7f74625544000000000000000000000000537461747300000000000000000000008360067ee1080020200120202020200000000000000000000000000000000000000000611dcf565b60006127fe8366038d7ea4c680006156dd565b611cd79083615245565b6000612812610c53565b6001600160a01b03166353d64640846040518263ffffffff1660e01b815260040161283f91815260200190565b602060405180830381865afa15801561285c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128809190615493565b9050600061288d82613184565b8060200190518101906128a09190615851565b905060005b8160c0015151811015610e5f5760006128da8360c0015183815181106128cd576128cd614eed565b60200260200101516131f9565b9050806128ea620186a089615245565b111561299e576128f8610c53565b6001600160a01b031663cd9caca2868560c00151858151811061291d5761291d614eed565b60209081029190910101516040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526004810192909252602482015260016044820152606401600060405180830381600087803b15801561298557600080fd5b505af1158015612999573d6000803e3d6000fd5b505050505b506001016128a5565b60006129d9826000015183602001518460400151856060015186608001518760a001518860c001518960e0015161328e565b604080516001808252818301909252919250600091606091839190602080830190803683370190505090508581600081518110612a1857612a18614eed565b6020908102919091010152610e5f7f746255440000000000000000000000005374617473000000000000000000000082868686611d1a565b6060600060606000612a61856132cc565b9050612a6e8787836132ef565b93506000612a7b86613328565b90508015612b4d57612a8d8888613365565b935066ffffffffffffff841667ffffffffffffffff811115612ab157612ab1614a1c565b6040519080825280601f01601f191660200182016040528015612adb576020820181803683370190505b5092506020830160005b828160ff161015612b4a576000612afd8b8b84613378565b90506000612b1a888460ff166028026038011c64ffffffffff1690565b9050612b2982600083876133f8565b612b338185615232565b935050508080612b4290615919565b915050612ae5565b50505b505093509350939050565b6000806000806000612b6e866000016020015190565b60f81c6001811115612b8257612b82614c3a565b602187015160418801516061890151608190990151929991989097509550909350915050565b6060806000603885901c64ffffffffff16612bcc612bc78684846134c4565b613552565b935090508064ffffffffff606087901c1601612bec612bc78684846134c4565b925050509250929050565b6040805160018082528183019092526000918291829160208083019080368337019050509050837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681600081518110612c5057612c50614eed565b602090810291909101015260008080612ca97f7462776f726c6400000000000000000046756e6374696f6e53656c6563746f72857e24020020040000000000000000000000000000000000000000000000000000611a30565b9250925092506110c2838383613563565b60606000612cc66112d5565b90506001600160a01b0381163003612d07576000612cee612ce5610e67565b6000878761356f565b9350905080612d0057612d00836136aa565b50506102e6565b6040517f3ae7af080000000000000000000000000000000000000000000000000000000081526001600160a01b03821690633ae7af0890612d4e9087908790600401615938565b6000604051808303816000875af1158015612d6d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526105cd9190810190615951565b606081611cd781602060006136b2565b612dbb8585858585612db68b613712565b613797565b5050505050565b6000612def612dd18686613ad0565b60ff858116601b0360080285901c16612dea8587613b26565b613b5f565b95945050505050565b612dbb8585612e078487613b26565b85613bb0565b6000612e5b7f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff0000000000000000000000000000000085161783613e54565b80611cd75750611cd78383613e54565b606081601081901b6000612e7e83613f1d565b9050827fffffffffffffffffffffffffffff000000000000000000000000000000000000831615612ed957612ed47fffffffffffffffffffffffffffff0000000000000000000000000000000000008416613f34565b612f10565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b7fffffffffffffffffffffffffffffffff00000000000000000000000000000000831615612f4657612f4183613f34565b612f7d565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b604051602001612f8f93929190615986565b6040516020818303038152906040529350505050919050565b604080518082019091526000815260606020820152612fc684613fd8565b81906003811115612fd957612fd9614c3a565b90816003811115612fec57612fec614c3a565b905250612ff98383613ff4565b60208201529392505050565b60008080620249f06130196103e88a615245565b61302b87602001518960400151614017565b6130359190615232565b61303f91906156dd565b90506000620186a085602001516103e88a61305a9190615245565b6130649190615232565b61306e91906156dd565b90508082119350831561308c5760026130878284615259565b101592505b50509550959350505050565b613109816040516024016130ac9190615a14565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f41304fac00000000000000000000000000000000000000000000000000000000179052614044565b50565b613114614984565b61311d8461404d565b60e0890181905260c0890182905260a08901839052608089018490526060890185905288602081016040820188600281111561315b5761315b614c3a565b600281111561316c5761316c614c3a565b90529790975250505093909252509195945050505050565b60408051600180825281830190925260609160009190602080830190803683370190505090508260001b816000815181106131c1576131c1614eed565b602090810291909101015260006105cd7f746255440000000000000000000000004d6f627300000000000000000000000083836140bb565b604080516001808252818301909252600091829190602080830190803683370190505090508260001b8160008151811061323557613235614eed565b602090810291909101015260006105cd7f746255440000000000000000000000004974656d7300000000000000000000008360017e21020101200000000000000000000000000000000000000000000000000000611dcf565b606088888888888888886040516020016132af989796959493929190615a27565b604051602081830303815290604052905098975050505050505050565b600060086132dc60026020615a6c565b6132e691906156dd565b9190911c919050565b60608160000361330e5750604080516020810190915260008152611cd7565b600061331a8585613ad0565b9050612def8160008561417a565b6000600860018061333b60026020615a6c565b6133459190615a6c565b61334f9190615a6c565b61335991906156dd565b8260ff911c1692915050565b6000611cd7613374848461419d565b5490565b6000838360405160200161338d929190615a7f565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b821561347f57602083106134225760208304840193506020838161341e5761341e6151b2565b0692505b821561347f5760208390036000818410156134455750600019600884021c61344f565b50600019600882021c5b8554600886021b8184511682198216178452508184116134705750506107e3565b50600194909401939182900391015b5b602082106134a15783548152600190930192601f1990910190602001613480565b81156107e3576000600019600884021c8251865482191691161782525050505050565b6000818311806134d45750835182115b15613511578383836040517f23230fa300000000000000000000000000000000000000000000000000000000815260040161068b93929190615abb565b6020840161351f8482615232565b9050600061352d8585615a6c565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60606000611cd783602060006141f3565b600080611c7285614262565b6000606060008061357f86614277565b90925090506001600160a01b0382166135d0578561359c87612e6b565b6040517ffbf10ce600000000000000000000000000000000000000000000000000000000815260040161068b929190615938565b806135df576135df868961431b565b861561364b577dffffffffffffffffffffffffffff0000000000000000000000000000000086167f6e7300000000000000000000000000000000000000000000000000000000000017600061363382614325565b9050613648826136438b84615232565b6143b6565b50505b60006136578760101b90565b7fffffffffffffffffffffffffffff000000000000000000000000000000000000161461368f5761368a8888848861446a565b61369b565b61369b888884886144e2565b90999098509650505050505050565b805160208201fd5b825160609060006136c385836156dd565b9050604051925060208301601f19603f83860101166040528184526000602088015b84821015613706578051871b835291870191600191909101906020016136e5565b50505050509392505050565b60007f8b9d8c8b908d9affffffffffffffffffab9e9d939a8d00000000000000000000820161376157507e60030220202000000000000000000000000000000000000000000000000000919050565b6102e661378e7f746273746f72650000000000000000005461626c65730000000000000000000084614543565b60206000613b5f565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff000000000000000000000000000000000000000000000000000000000000160361382357857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9868686866040516138169493929190615ae0565b60405180910390a2610e5f565b600061382e8761455f565b905060005b815181101561390757600082828151811061385057613850614eed565b6020026020010151905061387c6001826affffffffffffffffffffff19166145e890919063ffffffff16565b156138fe576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c906138cb908c908c908c908c908c908c90600401615b2a565b600060405180830381600087803b1580156138e557600080fd5b505af11580156138f9573d6000803e3d6000fd5b505050505b50600101613833565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a98787878760405161393e9493929190615ae0565b60405180910390a260006139528888613ad0565b9050600060208701905061396a826000895184614606565b600061397585613328565b11156139f95760006139878a8a61419d565b878155905060208601915060008060005b6139a188613328565b8160ff1610156139f4576139b68d8d83613378565b92506139d18a8260ff166028026038011c64ffffffffff1690565b91506139e08360008488614606565b6139ea8286615232565b9450600101613998565b505050505b60005b8351811015611dc3576000848281518110613a1957613a19614eed565b60200260200101519050613a456002826affffffffffffffffffffff19166145e890919063ffffffff16565b15613ac7576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90613a94908e908e908e908e908e908e90600401615b2a565b600060405180830381600087803b158015613aae57600080fd5b505af1158015613ac2573d6000803e3d6000fd5b505050505b506001016139fc565b60008282604051602001613ae5929190615a7f565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff16811015613b5757613b4d60ff601b83900360080287901c1683615232565b9150600101613b2b565b509392505050565b600060208210613b8557602082048401935060208281613b8157613b816151b2565b0691505b508254600882021b602082900380841115613b57576001850154600882021c82179150509392505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff0000000000000000000000000000000000000000000000000000000000001603613c3a57837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be848484604051613c2d93929190615b83565b60405180910390a26107e3565b6000613c468585613ad0565b90506000613c538661455f565b905060005b8151811015613d28576000828281518110613c7557613c75614eed565b60200260200101519050613ca16004826affffffffffffffffffffff19166145e890919063ffffffff16565b15613d1f576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d90613cec908b908b908b908b90600401615bb6565b600060405180830381600087803b158015613d0657600080fd5b505af1158015613d1a573d6000803e3d6000fd5b505050505b50600101613c58565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be868686604051613d5d93929190615b83565b60405180910390a2613d78828565ffffffffffff16856146c5565b60005b8151811015613e4b576000828281518110613d9857613d98614eed565b60200260200101519050613dc46008826affffffffffffffffffffff19166145e890919063ffffffff16565b15613e42576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba872190613e0f908b908b908b908b90600401615bb6565b600060405180830381600087803b158015613e2957600080fd5b505af1158015613e3d573d6000803e3d6000fd5b505050505b50600101613d7b565b50505050505050565b604080516002808252606082018352600092839291906020830190803683370190505090508381600081518110613e8d57613e8d614eed565b602002602001018181525050826001600160a01b031660001b81600181518110613eb957613eb9614eed565b60209081029190910101526000613f117f7462776f726c640000000000000000005265736f75726365416363657373000083837e01010001000000000000000000000000000000000000000000000000000000611dcf565b9050612def8160f81c90565b6000613f2b60706010615232565b9190911b919050565b606060005b6010811015613f99577fffffffffffffffffffffffffffffffff000000000000000000000000000000008316600882021b7fff000000000000000000000000000000000000000000000000000000000000001615613f9957600101613f39565b604080517fffffffffffffffffffffffffffffffff000000000000000000000000000000008516602082015281516030909101909152818152806105cd565b602081015160009060f81c60038111156102e6576102e6614c3a565b60606000603884901c64ffffffffff16612def6140128584846134c4565b6146db565b60008082126140315761402a8284615232565b90506102e6565b61403a82615bef565b61402a9084615a6c565b6131098161475b565b600080600080600080600080614067896000016020015190565b60408a015160608b0151919950975060f81c600281111561408a5761408a614c3a565b60618a015160818b015160a18c015160c18d015160e1909d01519b9d9a9c939b929a91995097509195509350915050565b606060006140c7611f02565b9050306001600160a01b038216036140ec576140e485858561477c565b915050611cd7565b6040517f1e7889770000000000000000000000000000000000000000000000000000000081526001600160a01b03821690631e7889779061413590889088908890600401615c27565b600060405180830381865afa158015614152573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526140e49190810190615951565b60405160208101601f19603f8484010116604052828252613b57858585846133f8565b600082826040516020016141b2929190615a7f565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b606060006142018560801c90565b90506fffffffffffffffffffffffffffffffff85166000858281614227576142276151b2565b04905060405193506020840160208202810160405281855260005b82811015613706578451871c825293870193602090910190600101614242565b602081015160408201516000905b9050915091565b604080516001808252818301909252600091829182916020808301908036833701905050905083816000815181106142b1576142b1614eed565b60209081029190910101526000808061430a7f7462776f726c6400000000000000000053797374656d73000000000000000000857e15020014010000000000000000000000000000000000000000000000000000612a50565b9250925092506110c28383836147b6565b611fe882826147c2565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061435e5761435e614eed565b602090810291909101015260006105cd7f7462776f726c6400000000000000000042616c616e636573000000000000000083837e20010020000000000000000000000000000000000000000000000000000000612dc2565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106143ec576143ec614eed565b6020026020010181815250506110197f7462776f726c6400000000000000000042616c616e636573000000000000000060001b8260008560405160200161443591815260200190565b60408051601f198184030181529190527e20010020000000000000000000000000000000000000000000000000000000612df8565b60006060836001600160a01b03166000614485858989614820565b6040516144929190615c53565b60006040518083038185875af1925050503d80600081146144cf576040519150601f19603f3d011682016040523d82523d6000602084013e6144d4565b606091505b509097909650945050505050565b60006060836001600160a01b03166144fb848888614820565b6040516145089190615c53565b600060405180830381855af49150503d80600081146144cf576040519150601f19603f3d011682016040523d82523d6000602084013e6144d4565b6040805160208101849052908101829052600090606001613ae5565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061459957614599614eed565b602090810291909101015260006145d17f746273746f726500000000000000000053746f7265486f6f6b73000000000000838361477c565b90506105cd6145e382600084516134c4565b61484f565b60008160ff16826145f98560581c90565b1660ff1614905092915050565b821561468057602083106146305760208304840193506020838161462c5761462c6151b2565b0692505b82156146805760208390036000600019600885021c1990506008850281811c91508351811c90508119875416828216178755508184116146715750506107e3565b50600194909401939182900391015b5b602082106146a25780518455600190930192601f1990910190602001614681565b81156107e3576000600019600884021c8554835182191691161785555050505050565b611019838383516146d68560200190565b614606565b606060006146e98360801c90565b90506fffffffffffffffffffffffffffffffff83168067ffffffffffffffff81111561471757614717614a1c565b6040519080825280601f01601f191660200182016040528015614741576020820181803683370190505b50925060208301614753838284614860565b505050919050565b80516a636f6e736f6c652e6c6f67602083016000808483855afa5050505050565b60606105cd61478c858585613378565b60006147b18561479c8989613365565b9060ff166028026038011c64ffffffffff1690565b61417a565b600080611c72856148ab565b60006148107f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617836148c7565b80611cd75750611cd783836148c7565b606083838360405160200161483793929190615c6f565b60405160208183030381529060405290509392505050565b60606000611cd783601560006141f3565b5b60208110614880578251825260209283019290910190601f1901614861565b8060000361488d57505050565b6000600019600883021c905080835116811985511617835250505050565b6020810151603482015160609190911c9060009060f81c614270565b60408051600280825260608201835260009283929190602083019080368337019050509050838160008151811061490057614900614eed565b602002602001018181525050826001600160a01b031660001b8160018151811061492c5761492c614eed565b60209081029190910101526000613f117f7462776f726c640000000000000000005265736f75726365416363657373000083837e01010001000000000000000000000000000000000000000000000000000000612dc2565b6040518061010001604052806000815260200160008152602001600060028111156149b1576149b1614c3a565b815260200160008152602001600081526020016000815260200160008152602001600081525090565b6000602082840312156149ec57600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114611cd757600080fd5b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715614a5557614a55614a1c565b60405290565b60405160a0810167ffffffffffffffff81118282101715614a5557614a55614a1c565b604051610100810167ffffffffffffffff81118282101715614a5557614a55614a1c565b604051610120810167ffffffffffffffff81118282101715614a5557614a55614a1c565b604051601f8201601f1916810167ffffffffffffffff81118282101715614aef57614aef614a1c565b604052919050565b600067ffffffffffffffff821115614b1157614b11614a1c565b5060051b60200190565b600082601f830112614b2c57600080fd5b81356020614b41614b3c83614af7565b614ac6565b8083825260208201915060208460051b870101935086841115614b6357600080fd5b602086015b84811015614b7f5780358352918301918301614b68565b509695505050505050565b803561ffff81168114611f3c57600080fd5b60008060008060808587031215614bb257600080fd5b843567ffffffffffffffff80821115614bca57600080fd5b614bd688838901614b1b565b95506020870135915080821115614bec57600080fd5b50614bf987828801614b1b565b935050614c0860408601614b8a565b9150614c1660608601614b8a565b905092959194509250565b600060208284031215614c3357600080fd5b5035919050565b634e487b7160e01b600052602160045260246000fd5b60028110614c6057614c60614c3a565b9052565b60008151808452602080850194506020840160005b83811015614c9557815187529582019590820190600101614c79565b509495945050505050565b60208152614cb2602082018351614c50565b602082015160408201526040820151606082015260608201516080820152608082015160a0820152600060a083015160e060c0840152614cf6610100840182614c64565b905060c0840151601f198483030160e0850152612def8282614c64565b600082601f830112614d2457600080fd5b81356020614d34614b3c83614af7565b82815260079290921b84018101918181019086841115614d5357600080fd5b8286015b84811015614b7f5760808189031215614d705760008081fd5b614d78614a32565b8135815284820135858201526040808301359082015260608083013590820152835291830191608001614d57565b600080600060608486031215614dbb57600080fd5b8335925060208401359150604084013567ffffffffffffffff811115614de057600080fd5b614dec86828701614d13565b9150509250925092565b600080600060608486031215614e0b57600080fd5b833560028110614e1a57600080fd5b9250602084013567ffffffffffffffff80821115614e3757600080fd5b614e4387838801614b1b565b93506040860135915080821115614e5957600080fd5b50614dec86828701614b1b565b6001600160a01b038116811461310957600080fd5b60008060408385031215614e8e57600080fd5b8235614e9981614e66565b9150602083013567ffffffffffffffff811115614eb557600080fd5b614ec185828601614b1b565b9150509250929050565b60008060408385031215614ede57600080fd5b50508035926020909101359150565b634e487b7160e01b600052603260045260246000fd5b600060208284031215614f1557600080fd5b81518015158114611cd757600080fd5b600060208284031215614f3757600080fd5b8151611cd781614e66565b614f4c8186614c50565b608060208201526000614f626080830186614c64565b8281036040840152614f748186614c64565b91505082606083015295945050505050565b634e487b7160e01b600052601160045260246000fd5b60006000198203614faf57614faf614f86565b5060010190565b60006040808301858452602060406020860152818651808452606093506060870191506020880160005b8281101561501757815180518552858101518686015287810151888601528601518685015260809093019290840190600101614fe0565b50919998505050505050505050565b6003811061310957613109614c3a565b60005b83811015615051578181015183820152602001615039565b50506000910152565b60008151808452615072816020860160208601615036565b601f01601f19169290920160200192915050565b83815261509283615026565b826020820152606060408201526000612def606083018461505a565b600082601f8301126150bf57600080fd5b815160206150cf614b3c83614af7565b8083825260208201915060208460051b8701019350868411156150f157600080fd5b602086015b84811015614b7f57805160ff811681146151105760008081fd5b83529183019183016150f6565b60006020828403121561512f57600080fd5b815167ffffffffffffffff8082111561514757600080fd5b9083019060a0828603121561515b57600080fd5b615163614a5b565b8251815260208301516020820152604083015160408201526060830151606082015260808301518281111561519757600080fd5b6151a3878286016150ae565b60808301525095945050505050565b634e487b7160e01b600052601260045260246000fd5b6000826151d7576151d76151b2565b60001983147f80000000000000000000000000000000000000000000000000000000000000008314161561520d5761520d614f86565b500590565b8181036000831280158383131683831282161715610b9257610b92614f86565b808201808211156102e6576102e6614f86565b600082615254576152546151b2565b500690565b600082615268576152686151b2565b500490565b8381526060602082015260006152866060830185614c64565b9050826040830152949350505050565b600082601f8301126152a757600080fd5b815167ffffffffffffffff8111156152c1576152c1614a1c565b6152d46020601f19601f84011601614ac6565b8181528460208386010111156152e957600080fd5b6105cd826020830160208701615036565b60008060006060848603121561530f57600080fd5b835167ffffffffffffffff8082111561532757600080fd5b61533387838801615296565b945060208601519350604086015191508082111561535057600080fd5b50614dec86828701615296565b6000815160208301517fffffffff00000000000000000000000000000000000000000000000000000000808216935060048310156147535760049290920360031b82901b161692915050565b6000600287106153bb576153bb614c3a565b5060f89590951b8552600185019390935260218401919091526041830152606182015260810190565b600083516153f6818460208801615036565b83519083019061540a818360208801615036565b01949350505050565b85815260a06020820152600061542c60a0830187614c64565b828103604084015261543e818761505a565b90508460608401528281036080840152615458818561505a565b98975050505050505050565b84815260806020820152600061547d6080830186614c64565b60ff949094166040830152506060015292915050565b6000602082840312156154a557600080fd5b5051919050565b85815260a0602082015260006154c560a0830187614c64565b60ff8616604084015282810360608401526154e0818661505a565b9150508260808301529695505050505050565b604081526000615506604083018561505a565b90506001600160a01b03831660208301529392505050565b6000610100828403121561553157600080fd5b615539614a7e565b825181526020830151602082015260408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e08201528091505092915050565b60006020828403121561559f57600080fd5b815167ffffffffffffffff808211156155b757600080fd5b9083019061010082860312156155cc57600080fd5b6155d4614a7e565b825181526020830151828111156155ea57600080fd5b6155f6878286016150ae565b60208301525060408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e082015280935050505092915050565b6000602080838503121561565757600080fd5b825167ffffffffffffffff8082111561566f57600080fd5b818501915085601f83011261568357600080fd5b8151615691614b3c82614af7565b81815260059190911b830184019084810190888311156156b057600080fd5b938501935b8285101561545857845184811681146156ce5760008081fd5b825293850193908501906156b5565b80820281158282048414176102e6576102e6614f86565b8082018281126000831280158216821582161715610c4b57610c4b614f86565b808202600082127f80000000000000000000000000000000000000000000000000000000000000008414161561574c5761574c614f86565b81810583148215176102e6576102e6614f86565b8d81528c60208201528b60408201528a606082015289151560f81b608082015288151560f81b608182015261579c6082820189151560f81b9052565b8660838201528560a38201526157b960c3820186151560f81b9052565b92151560f81b60c484015260c583019190915260e5820152610105019a9950505050505050505050565b805160038110611f3c57600080fd5b600082601f83011261580357600080fd5b81516020615813614b3c83614af7565b8083825260208201915060208460051b87010193508684111561583557600080fd5b602086015b84811015614b7f578051835291830191830161583a565b60006020828403121561586357600080fd5b815167ffffffffffffffff8082111561587b57600080fd5b90830190610120828603121561589057600080fd5b615898614aa2565b82518152602083015160208201526158b2604084016157e3565b6040820152606083015160608201526080830151608082015260a083015160a082015260c0830151828111156158e757600080fd5b6158f3878286016157f2565b60c08301525060e083810151908201526101009283015192810192909252509392505050565b600060ff821660ff810361592f5761592f614f86565b60010192915050565b8281526040602082015260006105cd604083018461505a565b60006020828403121561596357600080fd5b815167ffffffffffffffff81111561597a57600080fd5b6105cd84828501615296565b7fffff0000000000000000000000000000000000000000000000000000000000008416815260007f3a0000000000000000000000000000000000000000000000000000000000000080600284015284516159e7816003860160208901615036565b808401905081600382015284519150615a07826004830160208801615036565b0160040195945050505050565b602081526000611cd7602083018461505a565b888152876020820152615a3987615026565b60f89690961b604087015260418601949094526061850192909252608184015260a183015260c182015260e10192915050565b818103818111156102e6576102e6614f86565b8281526000602080830184516020860160005b82811015615aae57815184529284019290840190600101615a92565b5091979650505050505050565b606081526000615ace606083018661505a565b60208301949094525060400152919050565b608081526000615af36080830187614c64565b8281036020840152615b05818761505a565b90508460408401528281036060840152615b1f818561505a565b979650505050505050565b86815260c060208201526000615b4360c0830188614c64565b8281036040840152615b55818861505a565b90508560608401528281036080840152615b6f818661505a565b9150508260a0830152979650505050505050565b606081526000615b966060830186614c64565b65ffffffffffff851660208401528281036040840152610f7a818561505a565b848152608060208201526000615bcf6080830186614c64565b65ffffffffffff851660408401528281036060840152615b1f818561505a565b60007f80000000000000000000000000000000000000000000000000000000000000008203615c2057615c20614f86565b5060000390565b838152606060208201526000615c406060830185614c64565b905060ff83166040830152949350505050565b60008251615c65818460208701615036565b9190910192915050565b60008451615c81818460208901615036565b60609490941b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000169190930190815260148101919091526034019291505056fea2646970667358221220430b9ad49aa9c313df5fdd64a42a278d32d8a5f00d94ff80e2078f308e6e6c3a64736f6c63430008180033","sourceMap":"1281:16028:182:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2331:198:98;;;;;;;;;;-1:-1:-1;2331:198:98;;;;;:::i;:::-;;:::i;:::-;;;516:14:192;;509:22;491:41;;479:2;464:18;2331:198:98;;;;;;;;1262:113;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;707:55:192;;;689:74;;677:2;662:18;1262:113:98;543:226:192;3032:1020:182;;;;;;;;;;-1:-1:-1;3032:1020:182;;;;;:::i;:::-;;:::i;1616:110:98:-;;;;;;;;;;-1:-1:-1;3800:14:98;-1:-1:-1;;3796:25:98;3783:39;1616:110;;;4251:25:192;;;4239:2;4224:18;1616:110:98;4105:177:192;12413:163:182;;;;;;;;;;-1:-1:-1;12413:163:182;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;4226:630::-;;;;;;:::i;:::-;;:::i;:::-;;1487:1539;;;;;;;;;;-1:-1:-1;1487:1539:182;;;;;:::i;:::-;;:::i;5653:391::-;;;;;;;;;;-1:-1:-1;5653:391:182;;;;;:::i;:::-;;:::i;13522:42::-;;;;;;;;;4862:785;;;;;;;;;;-1:-1:-1;4862:785:182;;;;;:::i;:::-;;:::i;1942:98:98:-;;;;;;;;;;;;;:::i;6050:2386:182:-;;;;;;;;;;-1:-1:-1;6050:2386:182;;;;;:::i;:::-;;:::i;2331:198:98:-;2407:4;2426:54;;;2441:39;2426:54;;:98;;-1:-1:-1;2484:40:98;;;2499:25;2484:40;2426:98;2419:105;2331:198;-1:-1:-1;;2331:198:98:o;1262:113::-;1305:14;1334:36;:34;:36::i;:::-;1327:43;;1262:113;:::o;3032:1020:182:-;3219:4;3173:16;3233:350;3253:9;:16;3249:1;:20;3233:350;;;3302:8;:6;:8::i;:::-;-1:-1:-1;;;;;3295:39:182;;3335:9;3345:1;3335:12;;;;;;;;:::i;:::-;;;;;;;3295:53;;;;;;;;;;;;;4251:25:192;;4239:2;4224:18;;4105:177;3295:53:182;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3290:135;;3382:5;3368:19;;3405:5;;3290:135;3450:8;:6;:8::i;:::-;-1:-1:-1;;;;;3443:33:182;;3477:9;3487:1;3477:12;;;;;;;;:::i;:::-;;;;;;;3491:1;3494;3443:53;;;;;;;;;;;;;;;;10900:25:192;;;10944:6;10986:15;;;10981:2;10966:18;;10959:43;11038:15;11033:2;11018:18;;11011:43;10888:2;10873:18;;10702:358;3443:53:182;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::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:182;;3728:9;3738:1;3728:12;;;;;;;;:::i;:::-;;;;;;;3688:53;;;;;;;;;;;;;4251:25:192;;4239:2;4224:18;;4105:177;3688:53:182;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3684:146;;;3779:5;3765:19;;3806:5;;3684:146;3859:8;:6;:8::i;:::-;-1:-1:-1;;;;;3852:33:182;;3886:9;3896:1;3886:12;;;;;;;;:::i;:::-;;;;;;;3900:1;3903;3852:53;;;;;;;;;;;;;;;;10900:25:192;;;10944:6;10986:15;;;10981:2;10966:18;;10959:43;11038:15;11033:2;11018:18;;11011:43;10888:2;10873:18;;10702:358;3852:53:182;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::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:182;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:182;;;;:22;4425:50;4417:95;;;;-1:-1:-1;;;4417:95:182;;11267:2:192;4417:95:182;;;11249:21:192;;;11286:18;;;11279:30;11345:34;11325:18;;;11318:62;11397:18;;4417:95:182;;;;;;;;;4558:13;:22;;;4530:13;:25;;;:50;4522:95;;;;-1:-1:-1;;;4522:95:182;;11628:2:192;4522:95:182;;;11610:21:192;;;11647:18;;;11640:30;11706:34;11686:18;;;11679:62;11758:18;;4522:95:182;11426:356:192;4522:95:182;4698:12;:10;:12::i;:::-;-1:-1:-1;;;;;4648:62:182;4655:8;:6;:8::i;:::-;-1:-1:-1;;;;;4648:36:182;;4685:8;4648:46;;;;;;;;;;;;;4251:25:192;;4239:2;4224:18;;4105:177;4648:46:182;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;4648:62:182;;:102;;;;;4714:36;4728:8;4738:11;4714:13;:36::i;:::-;4627:177;;;;-1:-1:-1;;;4627:177:182;;12245:2:192;4627:177:182;;;12227:21:192;12284:2;12264:18;;;12257:30;12323;12303:18;;;12296:58;12371:18;;4627:177:182;12043:352:192;4627:177:182;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:182;;12602:2:192;1660:80:182;;;12584:21:192;12641:2;12621:18;;;12614:30;12680:31;12660:18;;;12653:59;12729:18;;1660:80:182;12400:353:192;1660:80:182;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:182;;12960:2:192;1857:77:182;;;12942:21:192;12999:2;12979:18;;;12972:30;13038:28;13018:18;;;13011:56;13084:18;;1857:77:182;12758:350:192;1857:77:182;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:182;;;;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:182;;14476:2:192;2604:97:182;;;14458:21:192;14515:2;14495:18;;;14488:30;14554:32;14534:18;;;14527:60;14604:18;;2604:97:182;14274:354:192;2604:97:182;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:182;;14476:2:192;2845:97:182;;;14458:21:192;14515:2;14495:18;;;14488:30;14554:32;14534:18;;;14527:60;14604:18;;2845:97:182;14274:354:192;2845:97:182;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:182;;5884:12;5897:1;5884:15;;;;;;;;:::i;:::-;;;;;;;5847:53;;;;;;;;;;;;;4251:25:192;;4239:2;4224:18;;4105:177;5847:53:182;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;5836:64:182;:7;-1:-1:-1;;;;;5836:64:182;;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:98:-;1981:7;2003:32;:30;:32::i;6050:2386:182:-;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:182;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:182;;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:182;6148:2288;;;6050:2386;;;:::o;2992:383:98:-;3278:34;3282:14;3278:34;3265:48;3259:4;3255:59;;3325:45;;-1:-1:-1;3360:10:98;3325:45;2992:383;:::o;19860:418:149:-;19917:33;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19917:33:149;19987:16;;;20001:1;19987:16;;;;;;;;;19958:26;;19987:16;;;;;;;;;;;-1:-1:-1;19987:16:149;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:149:o;8442:241:182:-;8530:146;8596:11;8609:21;8643:11;8656:7;8632:32;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;8632:32:182;;;;;;;;;;8561:105;;;;;;;:::i;:::-;;;;-1:-1:-1;;8561:105:182;;;;;;;;;;;;;;;;;;;;8530:17;:146::i;:::-;;8442:241;;:::o;4891:393:161:-;4998:16;;;5012:1;4998:16;;;;;;;;;4943:8;;;;;;4998:16;;;;;;;;;;;-1:-1:-1;4998:16:161;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:149:-;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:149;;22726:16;;;;;;;;;;;;-1:-1:-1;22726:16:149;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:156:-;2905:16;;;2919:1;2905:16;;;;;;;;;2849:19;;;;2905:16;;;;;;;;;;;;-1:-1:-1;2905:16:156;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:156;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;;;;;;17294:19:192;;17338:2;17329:12;;17165:182;3684:31:156;;;;-1:-1:-1;;3684:31:156;;;;;;;;;1286:66;3633:26;:97::i;4048::98:-;4089:7;4111:29;:27;:29::i;2631:154:184:-;2707:75;2738:35;2757:15;2738:18;:35::i;:::-;2775:6;2707:30;:75::i;:::-;2631:154;;:::o;8689:1499:182:-;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8880:29:182;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:182;;17554:2:192;8961:68:182;;;17536:21:192;17593:2;17573:18;;;17566:30;17632:23;17612:18;;;17605:51;17673:18;;8961:68:182;17352:345:192;8961:68:182;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:182;: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:182;;20299:2:192;10100:36:182;;;20281:21:192;20338:2;20318:18;;;20311:30;20377:28;20357:18;;;20350:56;20423:18;;10100:36:182;20097:350:192;9086:1061:182;-1:-1:-1;10164:17:182;;8689:1499;-1:-1:-1;;8689:1499:182:o;6105:247:156:-;6200:16;;;6214:1;6200:16;;;;;;;;;6171:26;;6200:16;;;;;;;;;;;-1:-1:-1;6200:16:156;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;;;;;;20709:14:192;20702:22;20697:3;20693:32;20681:45;;20751:1;20742:11;;20558:201;17615:863:144;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:144;;18170:25;;18134:30;;18231:16;;;;18170:25;;18231:16;;;;;-1:-1:-1;18231:16:144;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:156:-;5547:16;;;5561:1;5547:16;;;;;;;;;5501:9;;;;5547:16;;;;;;;;;;;;-1:-1:-1;5547:16:156;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:182;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:182;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:182;;15657:12;15617:53;;;;;;;;;;;;;4251:25:192;;4239:2;4224:18;;4105:177;15617:53:182;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::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:182;;15887:12;15902:28;15915:15;15902:10;:28;:::i;:::-;15857:75;;;;;;;;;;;;;21310:25:192;;;;21351:18;;;21344:34;21283:18;;15857:75:182;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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:182;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:149:-;25168:33;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25168:33:149;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:149:o;3318:662:83:-;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;;;23672:98:192;23645:18;;3713:52:83;23528:248:192;3668:97:83;1759:4:23;1744:28;;1738:35;;1847:9;1836:21;1903:20;;1961:43;;3883:92:83;3900:8;3936;3883:4;:92::i;7036:160:161:-;2756:4:23;2742:27;;2736:34;2742:27;;;2736:34;7131:8:161;;;;6793:33;;;;;6839;7166:25;7157:34;;;;-1:-1:-1;7036:160:161;-1:-1:-1;;;;7036:160:161:o;26096:263:149:-;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:149;26807:86;26550:354;-1:-1:-1;;;26550:354:149: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:113:-;3538:16;;;3552:1;3538:16;;;;;;;;;3482:19;;;;3538:16;;;;;;;;;;;;-1:-1:-1;3538:16:113;3509:45;;3599:6;-1:-1:-1;;;;;3583:24:113;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:82:-;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:145:-;-1:-1:-1;;;;;;;;;;;;;;;;;9133:16:145;;;9147:1;9133:16;;;;;;;;;9104:26;;9133:16;;;;;;;;;;;-1:-1:-1;9133:16:145;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:182:-;10417:13;10432:8;10442:9;10487:35;10532:8;:6;:8::i;:::-;-1:-1:-1;;;;;10525:42:182;;10568:10;10525:54;;;;;;;;;;;;;4251:25:192;;4239:2;4224:18;;4105:177;10525:54:182;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10487:92;;10612:35;10657:8;:6;:8::i;:::-;-1:-1:-1;;;;;10650:42:182;;10693:10;10650:54;;;;;;;;;;;;;4251:25:192;;4239:2;4224:18;;4105:177;10650:54:182;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10612:92;;10742:25;10777:8;:6;:8::i;:::-;-1:-1:-1;;;;;10770:35:182;;10806:8;10770:45;;;;;;;;;;;;;4251:25:192;;4239:2;4224:18;;4105:177;10770:45:182;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;10770:45:182;;;;;;;;;;;;:::i;:::-;10742:73;;10851:1;10830:8;:18;;;:22;10826:1575;;;10895:34;;;;;;;;4251:25:192;;;10868:24:182;;10895:9;;:20;;4224:18:192;;10895:34:182;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;10895:34:182;;;;;;;;;;;;:::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:182;-1:-1:-1;11111:1188:182;;;;487:7:0;11766:1:182;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:182;;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:182;: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:165:-;9496:16;;;9510:1;9496:16;;;;;;;;;9443;;;;9496;;;;;;;;;;;;-1:-1:-1;9496:16:165;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:165;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;;;;;;17294:19:192;;17338:2;17329:12;;17165:182;10270:29:165;;;;-1:-1:-1;;10270:29:165;;;;;;;;;1432:66;10219:26;:95::i;22361:660:144:-;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:165:-;13212:23;;:::i;:::-;13272:16;;;13286:1;13272:16;;;;;;;;;13243:26;;13272:16;;;;;;;;;;;-1:-1:-1;13272:16:165;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:165;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:182:-;16456:18;16686:25;16703:8;633:4:0;16686:25:182;:::i;:::-;16670:42;;:12;:42;:::i;16725:582::-;16833:13;16856:8;:6;:8::i;:::-;-1:-1:-1;;;;;16849:29:182;;16879:8;16849:39;;;;;;;;;;;;;4251:25:192;;4239:2;4224:18;;4105:177;16849:39:182;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::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:182;17149:22;17164:7;17149:12;:22;:::i;:::-;:35;17145:146;;;17211:8;:6;:8::i;:::-;-1:-1:-1;;;;;17204:29:182;;17234:11;17247:12;:22;;;17270:1;17247:25;;;;;;;;:::i;:::-;;;;;;;;;;;17204:72;;;;;;;;;;;;;34692:25:192;;;;34733:18;;;34726:34;17274:1:182;34776:18:192;;;34769:34;34665:18;;17204:72:182;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17145:146;-1:-1:-1;17045:3:182;;16994:307;;15526:545:165;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:165;;15867:25;;15831:30;;15928:16;;;;;;;;;;;;-1:-1:-1;15928:16:165;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:149:-;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:149;23880:32;;23866:47;;;;;;;;:::i;:::-;2742:27:23;;;2736:34;2742:27;;;2736:34;2742:27;;;2736:34;2742:27;;;;2736:34;23850:63:149;;2736:34:23;;;;-1:-1:-1;2736:34:23;-1:-1:-1;2736:34:23;;-1:-1:-1;23661:475:149;-1:-1:-1;;23661:475:149:o;24239:522::-;24349:26;;24411:14;975:16:24;7017:70;;;6995:94;;24525:63:149;:41;24546:5;24411:14;6995:94:24;24525:20:149;:41::i;:::-;:61;:63::i;:::-;24512:77;-1:-1:-1;24605:4:149;-1:-1:-1;24605:4:149;6995:94:24;7059:27;7017:70;;;6995:94;24633:34:149;24692:63;:41;24713:5;24720:6;24633:34;24692:20;:41::i;:63::-;24679:77;;24405:356;;24239:522;;;;;:::o;5805:471:108:-;5966:16;;;5980:1;5966:16;;;;;;;;;5879:19;;;;;;5966:16;;;;;;;;;;;-1:-1:-1;5966:16:108;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:83:-;2185:23;2216:20;2239:32;:30;:32::i;:::-;2216:55;-1:-1:-1;;;;;;2350:29:83;;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:83;-1:-1:-1;2409:177:83;2595:41;;2609:27;2625:10;2609:15;:27::i;:::-;2644:17;;;;2346:322;2736:51;;;;;-1:-1:-1;;;;;2736:31:83;;;;;:51;;2768:8;;2778;;2736:51;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;2736:51:83;;;;;;;;;;;;:::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:82:-;1190:4;1332:55;696:18:119;578:36:99;2955:46;;2954:74;1380:6:82;1332:18;:55::i;:::-;:97;;;;1391:38;1410:10;1422:6;1391:18;:38::i;3486:592:99:-;3550:13;3620:10;451:5:41;2637:44:99;;;3571:19;3718;3620:10;3718:7;:19::i;:::-;3695:42;-1:-1:-1;3800:12:99;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:145:-;-1:-1:-1;;;;;;;;;;;;;;;;;13135:25:145;13148:11;13135:12;:25::i;:::-;13114:6;;13113:47;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;13190:44:145;13204:15;13221:12;13190:13;:44::i;:::-;13168:18;;;13167:67;13168:6;12940:299;-1:-1:-1;;;12940:299:145:o;12582:934:182:-;12848:16;;;442:7:0;13127:17:182;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:182;: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:139:-;6653:59;6708:2;6669:42;;;;;;;;:::i;:::-;;;;-1:-1:-1;;6669:42:139;;;;;;;;;;;;;;;;;;;;6653:15;:59::i;:::-;6598:121;:::o;17711:363:165:-;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:165;;;;-1:-1:-1;17711:363:165;;;-1:-1:-1;;;;;17711:363:165:o;4118:288:157:-;4235:16;;;4249:1;4235:16;;;;;;;;;4177:21;;4206:26;;4235:16;;;;;;;;;;;;-1:-1:-1;4235:16:157;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:153:-;4267:16;;;4281:1;4267:16;;;;;;;;;4212:18;;;;4267:16;;;;;;;;;;;;-1:-1:-1;4267:16:153;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:165:-;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:108:-;8474:19;8495:29;8569:25;8582:11;8569:12;:25::i;1761:1386:97:-;1888:12;1902:17;1956:21;1979:17;2000:22;2013:8;2000:12;:22::i;:::-;1955:67;;-1:-1:-1;1955:67:97;-1:-1:-1;;;;;;2067:27:97;;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:99;2955:46;;696:18:119;2954:74:99;2432:22:97;2515:26;2954:74:99;2515:13:97;:26::i;:::-;2490:51;-1:-1:-1;2549:50:97;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:99;;2539:148;2681:23:97;: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:97;-1:-1:-1;;;;;;;1761:1386:97:o;348:217:117:-;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:111:-;3709:16;;;3723:1;3709:16;;;;;;;;3661:11;;;;3709:16;3723:1;3709:16;;;;;;;;;;-1:-1:-1;3709:16:111;3680:45;;3764:10;3731:9;3741:1;3731:12;;;;;;;;:::i;:::-;;;;;;:44;;;;;3820:6;-1:-1:-1;;;;;3804:24:111;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:156;12457:97;3165:160:99;3228:7;3292:26;438:6;451:5:41;3292:26:99;:::i;:::-;3258:61;;;;;3165:160;-1:-1:-1;3165:160:99: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:99;;2003:53;2051:5;2003:53;1993:8;;1973:83;;;2092:30;;;41973:66:192;41961:79;;2092:30:99;;;41949:92:192;2092:30:99;;42057:12:192;;;;2092:30:99;;;875:21:23;;;2092:30:99;2142:39;760:164:23;12092:156:145;2756:4:23;2742:27;;2736:34;12157:21:145;;12210:32;;12199:44;;;;;;;;:::i;12351:322::-;12461:24;12493:14;975:16:24;7017:70;;;6995:94;;12615:51:145;:41;12636:5;12493:14;6995:94:24;12615:20:145;:41::i;:::-;:49;:51::i;1035:205:181:-;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:139:-;939:55;986:7;965:19;939:55::i;16807:746:165:-;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:165;2742:27:23;;;2736:34;2742:27;;;2736:34;17107:35:165;;-1:-1:-1;2736:34:23;-1:-1:-1;17221:33:165;;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:165;;;;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:165;-1:-1:-1;;16807:746:165: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:108;2756:4:23;2742:27;;2736:34;2742:27;;;2736:34;8028:19:108;;8173:26;8147:53;;7963:242;;;:::o;5928:433:114:-;6056:16;;;6070:1;6056:16;;;;;;;;;5986:14;;;;;;6056:16;;;;;;;;;;;-1:-1:-1;6056:16:114;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:84:-;1708:29;1718:10;1730:6;1708:9;:29::i;3758:308:107:-;3871:16;;;3885:1;3871:16;;;;;;;;;3819:15;;;;3871:16;;;;;;;;;;;;-1:-1:-1;3871:16:107;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:107;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;;;;;;17294:19:192;;17338:2;17329:12;;17165:182;5279:27:107;;;;-1:-1:-1;;5279:27:107;;;;;;;;;1286:66;5230:24;:91::i;5594:317:98:-;5733:12;5747:17;5790:6;-1:-1:-1;;;;;5790:11:98;5810:1;5821:79;5847:8;5868:9;5889:8;5821:13;:79::i;:::-;5790:116;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5772:134:98;;;;-1:-1:-1;5594:317:98;-1:-1:-1;;;;;5594:317:98:o;6415:321::-;6562:12;6576:17;6619:6;-1:-1:-1;;;;;6619:19:98;6646:79;6672:8;6693:9;6714:8;6646:13;:79::i;:::-;6619:112;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;51249:282:45;51494:30;;;;;;43412:19:192;;;43447:12;;;43440:28;;;51337:7:45;;43484:12:192;;51494:30:45;43223:279:192;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:139:-;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:114:-;7940:14;7956:17;8006:25;8019:11;8006:12;:25::i;955:327:84:-;1036:4;1178:56;696:18:119;578:36:99;2955:46;;2954:74;1227:6:84;1178:19;:56::i;:::-;:99;;;;1238:39;1258:10;1270:6;1238:19;:39::i;4897:201:98:-;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:114:-;2756:4:23;2742:27;;2736:34;2742:27;;;2736:34;7564:35:114;;;;;;7513:14;;7631:33;;7623:42;12457:97:156;4006:378:111;4130:16;;;4144:1;4130:16;;;;;;;;4082:11;;;;4130:16;4144:1;4130:16;;;;;;;;;;-1:-1:-1;4130:16:111;4101:45;;4185:10;4152:9;4162:1;4152:12;;;;;;;;:::i;:::-;;;;;;:44;;;;;4241:6;-1:-1:-1;;;;;4225:24:111;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:192:-;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:192;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:192;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:192:o;2335:183::-;2395:4;2428:18;2420:6;2417:30;2414:56;;;2450:18;;:::i;:::-;-1:-1:-1;2495:1:192;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:192;2523:668;-1:-1:-1;;;;;;2523:668:192: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:192;;4287:180;-1:-1:-1;4287:180:192:o;4472:184::-;-1:-1:-1;;;4521:1:192;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:192;;4810:439;-1:-1:-1;;;;;4810:439:192: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:192;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:516;7472:6;7480;7488;7541:2;7529:9;7520:7;7516:23;7512:32;7509:52;;;7557:1;7554;7547:12;7509:52;7593:9;7580:23;7570:33;;7650:2;7639:9;7635:18;7622:32;7612:42;;7705:2;7694:9;7690:18;7677:32;7732:18;7724:6;7721:30;7718:50;;;7764:1;7761;7754:12;7718:50;7787:67;7846:7;7837:6;7826:9;7822:22;7787:67;:::i;:::-;7777:77;;;7344:516;;;;;:::o;7865:758::-;8011:6;8019;8027;8080:2;8068:9;8059:7;8055:23;8051:32;8048:52;;;8096:1;8093;8086:12;8048:52;8135:9;8122:23;8174:1;8167:5;8164:12;8154:40;;8190:1;8187;8180:12;8154:40;8213:5;-1:-1:-1;8269:2:192;8254:18;;8241:32;8292:18;8322:14;;;8319:34;;;8349:1;8346;8339:12;8319:34;8372:61;8425:7;8416:6;8405:9;8401:22;8372:61;:::i;:::-;8362:71;;8486:2;8475:9;8471:18;8458:32;8442:48;;8515:2;8505:8;8502:16;8499:36;;;8531:1;8528;8521:12;8499:36;;8554:63;8609:7;8598:8;8587:9;8583:24;8554:63;:::i;8810:154::-;-1:-1:-1;;;;;8889:5:192;8885:54;8878:5;8875:65;8865:93;;8954:1;8951;8944:12;8969:483;9062:6;9070;9123:2;9111:9;9102:7;9098:23;9094:32;9091:52;;;9139:1;9136;9129:12;9091:52;9178:9;9165:23;9197:31;9222:5;9197:31;:::i;:::-;9247:5;-1:-1:-1;9303:2:192;9288:18;;9275:32;9330:18;9319:30;;9316:50;;;9362:1;9359;9352:12;9316:50;9385:61;9438:7;9429:6;9418:9;9414:22;9385:61;:::i;:::-;9375:71;;;8969:483;;;;;:::o;9457:248::-;9525:6;9533;9586:2;9574:9;9565:7;9561:23;9557:32;9554:52;;;9602:1;9599;9592:12;9554:52;-1:-1:-1;;9625:23:192;;;9695:2;9680:18;;;9667:32;;-1:-1:-1;9457:248:192:o;10231:184::-;-1:-1:-1;;;10280:1:192;10273:88;10380:4;10377:1;10370:15;10404:4;10401:1;10394:15;10420:277;10487:6;10540:2;10528:9;10519:7;10515:23;10511:32;10508:52;;;10556:1;10553;10546:12;10508:52;10588:9;10582:16;10641:5;10634:13;10627:21;10620:5;10617:32;10607:60;;10663:1;10660;10653:12;11787:251;11857:6;11910:2;11898:9;11889:7;11885:23;11881:32;11878:52;;;11926:1;11923;11916:12;11878:52;11958:9;11952:16;11977:31;12002:5;11977:31;:::i;13578:691::-;13890:48;13928:9;13920:6;13890:48;:::i;:::-;13974:3;13969:2;13958:9;13954:18;13947:31;13871:4;14001:78;14074:3;14063:9;14059:19;14051:6;14001:78;:::i;:::-;14127:9;14119:6;14115:22;14110:2;14099:9;14095:18;14088:50;14155:65;14213:6;14205;14155:65;:::i;:::-;14147:73;;;14256:6;14251:2;14240:9;14236:18;14229:34;13578:691;;;;;;;:::o;14633:184::-;-1:-1:-1;;;14682:1:192;14675:88;14782:4;14779:1;14772:15;14806:4;14803:1;14796:15;14822:195;14861:3;-1:-1:-1;;14885:5:192;14882:77;14879:103;;14962:18;;:::i;:::-;-1:-1:-1;15009:1:192;14998:13;;14822:195::o;15022:990::-;15244:4;15273:2;15313;15302:9;15298:18;15343:6;15332:9;15325:25;15369:2;15407;15402;15391:9;15387:18;15380:30;15430:6;15465;15459:13;15496:6;15488;15481:22;15522:2;15512:12;;15555:2;15544:9;15540:18;15533:25;;15593:2;15585:6;15581:15;15614:1;15624:362;15638:6;15635:1;15632:13;15624:362;;;15697:13;;15735:9;;15723:22;;15785:11;;;15779:18;15765:12;;;15758:40;15838:11;;;15832:18;15818:12;;;15811:40;15891:11;;15885:18;15871:12;;;15864:40;15933:4;15924:14;;;;15961:15;;;;15660:1;15653:9;15624:362;;;-1:-1:-1;16003:3:192;;15022:990;-1:-1:-1;;;;;;;;;15022:990:192:o;16017:119::-;16104:1;16097:5;16094:12;16084:46;;16110:18;;:::i;16141:250::-;16226:1;16236:113;16250:6;16247:1;16244:13;16236:113;;;16326:11;;;16320:18;16307:11;;;16300:39;16272:2;16265:10;16236:113;;;-1:-1:-1;;16383:1:192;16365:16;;16358:27;16141:250::o;16396:329::-;16437:3;16475:5;16469:12;16502:6;16497:3;16490:19;16518:76;16587:6;16580:4;16575:3;16571:14;16564:4;16557:5;16553:16;16518:76;:::i;:::-;16639:2;16627:15;-1:-1:-1;;16623:88:192;16614:98;;;;16714:4;16610:109;;16396:329;-1:-1:-1;;16396:329:192:o;16730:430::-;16951:6;16940:9;16933:25;16967:44;17004:6;16967:44;:::i;:::-;17047:6;17042:2;17031:9;17027:18;17020:34;17090:2;17085;17074:9;17070:18;17063:30;16914:4;17110:44;17150:2;17139:9;17135:18;17127:6;17110:44;:::i;17702:832::-;17765:5;17818:3;17811:4;17803:6;17799:17;17795:27;17785:55;;17836:1;17833;17826:12;17785:55;17865:6;17859:13;17891:4;17915:60;17931:43;17971:2;17931:43;:::i;17915:60::-;17997:3;18021:2;18016:3;18009:15;18049:4;18044:3;18040:14;18033:21;;18106:4;18100:2;18097:1;18093:10;18085:6;18081:23;18077:34;18063:48;;18134:3;18126:6;18123:15;18120:35;;;18151:1;18148;18141:12;18120:35;18187:4;18179:6;18175:17;18201:304;18217:6;18212:3;18209:15;18201:304;;;18290:3;18284:10;18338:4;18331:5;18327:16;18320:5;18317:27;18307:125;;18386:1;18415:2;18411;18404:14;18307:125;18445:18;;18483:12;;;;18234;;18201:304;;18539:846;18648:6;18701:2;18689:9;18680:7;18676:23;18672:32;18669:52;;;18717:1;18714;18707:12;18669:52;18750:9;18744:16;18779:18;18820:2;18812:6;18809:14;18806:34;;;18836:1;18833;18826:12;18806:34;18859:22;;;;18915:4;18897:16;;;18893:27;18890:47;;;18933:1;18930;18923:12;18890:47;18959:22;;:::i;:::-;19010:2;19004:9;18997:5;18990:24;19060:2;19056;19052:11;19046:18;19041:2;19034:5;19030:14;19023:42;19111:2;19107;19103:11;19097:18;19092:2;19085:5;19081:14;19074:42;19162:2;19158;19154:11;19148:18;19143:2;19136:5;19132:14;19125:42;19206:3;19202:2;19198:12;19192:19;19236:2;19226:8;19223:16;19220:36;;;19252:1;19249;19242:12;19220:36;19289:65;19346:7;19335:8;19331:2;19327:17;19289:65;:::i;:::-;19283:3;19272:15;;19265:90;-1:-1:-1;19276:5:192;18539:846;-1:-1:-1;;;;;18539:846:192:o;19390:184::-;-1:-1:-1;;;19439:1:192;19432:88;19539:4;19536:1;19529:15;19563:4;19560:1;19553:15;19579:308;19618:1;19644;19634:35;;19649:18;;:::i;:::-;-1:-1:-1;;19763:1:192;19760:73;19691:66;19688:1;19685:73;19681:153;19678:179;;;19837:18;;:::i;:::-;-1:-1:-1;19871:10:192;;19579:308::o;19892:200::-;19958:9;;;19931:4;19986:9;;20014:10;;20026:12;;;20010:29;20049:12;;;20041:21;;20007:56;20004:82;;;20066:18;;:::i;20764:125::-;20829:9;;;20850:10;;;20847:36;;;20863:18;;:::i;20894:112::-;20926:1;20952;20942:35;;20957:18;;:::i;:::-;-1:-1:-1;20991:9:192;;20894:112::o;21011:120::-;21051:1;21077;21067:35;;21082:18;;:::i;:::-;-1:-1:-1;21116:9:192;;21011:120::o;21389:489::-;21689:6;21678:9;21671:25;21732:2;21727;21716:9;21712:18;21705:30;21652:4;21752:77;21825:2;21814:9;21810:18;21802:6;21752:77;:::i;:::-;21744:85;;21865:6;21860:2;21849:9;21845:18;21838:34;21389:489;;;;;;:::o;21883:568::-;21936:5;21989:3;21982:4;21974:6;21970:17;21966:27;21956:55;;22007:1;22004;21997:12;21956:55;22036:6;22030:13;22062:18;22058:2;22055:26;22052:52;;;22084:18;;:::i;:::-;22128:114;22236:4;-1:-1:-1;;22160:4:192;22156:2;22152:13;22148:86;22144:97;22128:114;:::i;:::-;22267:2;22258:7;22251:19;22313:3;22306:4;22301:2;22293:6;22289:15;22285:26;22282:35;22279:55;;;22330:1;22327;22320:12;22279:55;22343:77;22417:2;22410:4;22401:7;22397:18;22390:4;22382:6;22378:17;22343:77;:::i;22456:655::-;22598:6;22606;22614;22667:2;22655:9;22646:7;22642:23;22638:32;22635:52;;;22683:1;22680;22673:12;22635:52;22716:9;22710:16;22745:18;22786:2;22778:6;22775:14;22772:34;;;22802:1;22799;22792:12;22772:34;22825:60;22877:7;22868:6;22857:9;22853:22;22825:60;:::i;:::-;22815:70;;22925:2;22914:9;22910:18;22904:25;22894:35;;22975:2;22964:9;22960:18;22954:25;22938:41;;23004:2;22994:8;22991:16;22988:36;;;23020:1;23017;23010:12;22988:36;;23043:62;23097:7;23086:8;23075:9;23071:24;23043:62;:::i;23116:407::-;23199:5;23239;23233:12;23281:4;23274:5;23270:16;23264:23;23306:66;23398:2;23394;23390:11;23381:20;;23424:1;23416:6;23413:13;23410:107;;;23485:1;23481:14;;;;23478:1;23474:22;23470:31;;;23462:40;23458:49;;23116:407;-1:-1:-1;;23116:407:192:o;23781:525::-;24021:3;24060:1;24052:6;24049:13;24039:47;;24066:18;;:::i;:::-;-1:-1:-1;24111:3:192;24107:16;;;;24095:29;;24149:1;24140:11;;24133:27;;;;24185:2;24176:12;;24169:28;;;;24222:2;24213:12;;24206:28;24259:2;24250:12;;24243:28;24296:3;24287:13;;23781:525::o;24311:492::-;24486:3;24524:6;24518:13;24540:66;24599:6;24594:3;24587:4;24579:6;24575:17;24540:66;:::i;:::-;24669:13;;24628:16;;;;24691:70;24669:13;24628:16;24738:4;24726:17;;24691:70;:::i;:::-;24777:20;;24311:492;-1:-1:-1;;;;24311:492:192:o;24808:815::-;25203:6;25192:9;25185:25;25246:3;25241:2;25230:9;25226:18;25219:31;25166:4;25273:78;25346:3;25335:9;25331:19;25323:6;25273:78;:::i;:::-;25399:9;25391:6;25387:22;25382:2;25371:9;25367:18;25360:50;25433:32;25458:6;25450;25433:32;:::i;:::-;25419:46;;25501:6;25496:2;25485:9;25481:18;25474:34;25557:9;25549:6;25545:22;25539:3;25528:9;25524:19;25517:51;25585:32;25610:6;25602;25585:32;:::i;:::-;25577:40;24808:815;-1:-1:-1;;;;;;;;24808:815:192:o;25628:569::-;25952:6;25941:9;25934:25;25995:3;25990:2;25979:9;25975:18;25968:31;25915:4;26016:78;26089:3;26078:9;26074:19;26066:6;26016:78;:::i;:::-;26142:4;26130:17;;;;26125:2;26110:18;;26103:45;-1:-1:-1;26179:2:192;26164:18;26157:34;26008:86;25628:569;-1:-1:-1;;25628:569:192:o;26202:184::-;26272:6;26325:2;26313:9;26304:7;26300:23;26296:32;26293:52;;;26341:1;26338;26331:12;26293:52;-1:-1:-1;26364:16:192;;26202:184;-1:-1:-1;26202:184:192:o;26391:730::-;26761:6;26750:9;26743:25;26804:3;26799:2;26788:9;26784:18;26777:31;26724:4;26831:78;26904:3;26893:9;26889:19;26881:6;26831:78;:::i;:::-;26957:4;26949:6;26945:17;26940:2;26929:9;26925:18;26918:45;27011:9;27003:6;26999:22;26994:2;26983:9;26979:18;26972:50;27039:32;27064:6;27056;27039:32;:::i;:::-;27031:40;;;27108:6;27102:3;27091:9;27087:19;27080:35;26391:730;;;;;;;;:::o;27126:339::-;27303:2;27292:9;27285:21;27266:4;27323:44;27363:2;27352:9;27348:18;27340:6;27323:44;:::i;:::-;27315:52;;-1:-1:-1;;;;;27407:6:192;27403:55;27398:2;27387:9;27383:18;27376:83;27126:339;;;;;:::o;27470:711::-;27579:6;27632:3;27620:9;27611:7;27607:23;27603:33;27600:53;;;27649:1;27646;27639:12;27600:53;27675:22;;:::i;:::-;27726:9;27720:16;27713:5;27706:31;27790:2;27779:9;27775:18;27769:25;27764:2;27757:5;27753:14;27746:49;27848:2;27837:9;27833:18;27827:25;27822:2;27815:5;27811:14;27804:49;27906:2;27895:9;27891:18;27885:25;27880:2;27873:5;27869:14;27862:49;27965:3;27954:9;27950:19;27944:26;27938:3;27931:5;27927:15;27920:51;28025:3;28014:9;28010:19;28004:26;27998:3;27991:5;27987:15;27980:51;28085:3;28074:9;28070:19;28064:26;28058:3;28051:5;28047:15;28040:51;28145:3;28134:9;28130:19;28124:26;28118:3;28111:5;28107:15;28100:51;28170:5;28160:15;;;27470:711;;;;:::o;28186:999::-;28287:6;28340:2;28328:9;28319:7;28315:23;28311:32;28308:52;;;28356:1;28353;28346:12;28308:52;28389:9;28383:16;28418:18;28459:2;28451:6;28448:14;28445:34;;;28475:1;28472;28465:12;28445:34;28498:22;;;;28554:6;28536:16;;;28532:29;28529:49;;;28574:1;28571;28564:12;28529:49;28600:22;;:::i;:::-;28651:2;28645:9;28638:5;28631:24;28694:2;28690;28686:11;28680:18;28723:2;28713:8;28710:16;28707:36;;;28739:1;28736;28729:12;28707:36;28775:65;28832:7;28821:8;28817:2;28813:17;28775:65;:::i;:::-;28770:2;28763:5;28759:14;28752:89;;28887:2;28883;28879:11;28873:18;28868:2;28861:5;28857:14;28850:42;28938:2;28934;28930:11;28924:18;28919:2;28912:5;28908:14;28901:42;28990:3;28986:2;28982:12;28976:19;28970:3;28963:5;28959:15;28952:44;29043:3;29039:2;29035:12;29029:19;29023:3;29016:5;29012:15;29005:44;29096:3;29092:2;29088:12;29082:19;29076:3;29069:5;29065:15;29058:44;29149:3;29145:2;29141:12;29135:19;29129:3;29122:5;29118:15;29111:44;29174:5;29164:15;;;;;28186:999;;;;:::o;29380:1068::-;29474:6;29505:2;29548;29536:9;29527:7;29523:23;29519:32;29516:52;;;29564:1;29561;29554:12;29516:52;29597:9;29591:16;29626:18;29667:2;29659:6;29656:14;29653:34;;;29683:1;29680;29673:12;29653:34;29721:6;29710:9;29706:22;29696:32;;29766:7;29759:4;29755:2;29751:13;29747:27;29737:55;;29788:1;29785;29778:12;29737:55;29817:2;29811:9;29840:60;29856:43;29896:2;29856:43;:::i;29840:60::-;29934:15;;;30016:1;30012:10;;;;30004:19;;30000:28;;;29965:12;;;;30040:19;;;30037:39;;;30072:1;30069;30062:12;30037:39;30096:11;;;;30116:302;30132:6;30127:3;30124:15;30116:302;;;30205:3;30199:10;30253:2;30246:5;30242:14;30235:5;30232:25;30222:123;;30299:1;30328:2;30324;30317:14;30222:123;30358:18;;30149:12;;;;30396;;;;30116:302;;30453:168;30526:9;;;30557;;30574:15;;;30568:22;;30554:37;30544:71;;30595:18;;:::i;30626:216::-;30690:9;;;30718:11;;;30665:3;30748:9;;30776:10;;30772:19;;30801:10;;30793:19;;30769:44;30766:70;;;30816:18;;:::i;30847:292::-;30919:9;;;30886:7;30944:9;;30961:66;30955:73;;30940:89;30937:115;;;31032:18;;:::i;:::-;31105:1;31096:7;31091:16;31088:1;31085:23;31081:1;31074:9;31071:38;31061:72;;31113:18;;:::i;31329:1023::-;31775:6;31770:3;31763:19;31812:6;31807:2;31802:3;31798:12;31791:28;31849:6;31844:2;31839:3;31835:12;31828:28;31886:6;31881:2;31876:3;31872:12;31865:28;31947:6;31940:14;31933:22;31928:3;31924:32;31918:3;31913;31909:13;31902:55;32011:6;32004:14;31997:22;31992:3;31988:32;31982:3;31977;31973:13;31966:55;32030:38;32063:3;32058;32054:13;32046:6;20531:13;20524:21;20519:3;20515:31;20503:44;;20452:101;32030:38;32099:6;32093:3;32088;32084:13;32077:29;32137:6;32131:3;32126;32122:13;32115:29;32153:38;32186:3;32181;32177:13;32169:6;20531:13;20524:21;20519:3;20515:31;20503:44;;20452:101;32153:38;20531:13;;20524:21;20519:3;20515:31;32234:3;32225:13;;20503:44;32264:3;32255:13;;32248:30;;;;32303:3;32294:13;;32287:30;32342:3;32333:13;;;-1:-1:-1;;;;;;;;;;31329:1023:192:o;32546:152::-;32630:13;;32672:1;32662:12;;32652:40;;32688:1;32685;32678:12;32703:665;32768:5;32821:3;32814:4;32806:6;32802:17;32798:27;32788:55;;32839:1;32836;32829:12;32788:55;32868:6;32862:13;32894:4;32918:60;32934:43;32974:2;32934:43;:::i;32918:60::-;33000:3;33024:2;33019:3;33012:15;33052:4;33047:3;33043:14;33036:21;;33109:4;33103:2;33100:1;33096:10;33088:6;33084:23;33080:34;33066:48;;33137:3;33129:6;33126:15;33123:35;;;33154:1;33151;33144:12;33123:35;33190:4;33182:6;33178:17;33204:135;33220:6;33215:3;33212:15;33204:135;;;33286:10;;33274:23;;33317:12;;;;33237;;33204:135;;33373:1104;33475:6;33528:2;33516:9;33507:7;33503:23;33499:32;33496:52;;;33544:1;33541;33534:12;33496:52;33577:9;33571:16;33606:18;33647:2;33639:6;33636:14;33633:34;;;33663:1;33660;33653:12;33633:34;33686:22;;;;33742:6;33724:16;;;33720:29;33717:49;;;33762:1;33759;33752:12;33717:49;33788:22;;:::i;:::-;33839:2;33833:9;33826:5;33819:24;33889:2;33885;33881:11;33875:18;33870:2;33863:5;33859:14;33852:42;33926:47;33969:2;33965;33961:11;33926:47;:::i;:::-;33921:2;33914:5;33910:14;33903:71;34020:2;34016;34012:11;34006:18;34001:2;33994:5;33990:14;33983:42;34072:3;34068:2;34064:12;34058:19;34052:3;34045:5;34041:15;34034:44;34125:3;34121:2;34117:12;34111:19;34105:3;34098:5;34094:15;34087:44;34170:3;34166:2;34162:12;34156:19;34200:2;34190:8;34187:16;34184:36;;;34216:1;34213;34206:12;34184:36;34253:67;34312:7;34301:8;34297:2;34293:17;34253:67;:::i;:::-;34247:3;34236:15;;34229:92;-1:-1:-1;34368:3:192;34360:12;;;34354:19;34337:15;;;34330:44;34393:3;34434:11;;;34428:18;34412:14;;;34405:42;;;;-1:-1:-1;34240:5:192;33373:1104;-1:-1:-1;;;33373:1104:192:o;34814:175::-;34851:3;34895:4;34888:5;34884:16;34924:4;34915:7;34912:17;34909:43;;34932:18;;:::i;:::-;34981:1;34968:15;;34814:175;-1:-1:-1;;34814:175:192:o;34994:320::-;35201:6;35190:9;35183:25;35244:2;35239;35228:9;35224:18;35217:30;35164:4;35264:44;35304:2;35293:9;35289:18;35281:6;35264:44;:::i;35319:335::-;35398:6;35451:2;35439:9;35430:7;35426:23;35422:32;35419:52;;;35467:1;35464;35457:12;35419:52;35500:9;35494:16;35533:18;35525:6;35522:30;35519:50;;;35565:1;35562;35555:12;35519:50;35588:60;35640:7;35631:6;35620:9;35616:22;35588:60;:::i;35659:925::-;36108:66;36100:6;36096:79;36091:3;36084:92;36066:3;36195;36227:2;36223:1;36218:3;36214:11;36207:23;36259:6;36253:13;36275:74;36342:6;36338:1;36333:3;36329:11;36322:4;36314:6;36310:17;36275:74;:::i;:::-;36377:6;36372:3;36368:16;36358:26;;36412:2;36408:1;36404:2;36400:10;36393:22;36446:6;36440:13;36424:29;;36462:75;36528:8;36524:1;36520:2;36516:10;36509:4;36501:6;36497:17;36462:75;:::i;:::-;36557:17;36576:1;36553:25;;35659:925;-1:-1:-1;;;;;35659:925:192:o;36589:219::-;36738:2;36727:9;36720:21;36701:4;36758:44;36798:2;36787:9;36783:18;36775:6;36758:44;:::i;36813:713::-;37159:6;37154:3;37147:19;37196:6;37191:2;37186:3;37182:12;37175:28;37212:44;37249:6;37212:44;:::i;:::-;37290:3;37286:16;;;;37281:2;37272:12;;37265:38;37328:2;37319:12;;37312:28;;;;37365:2;37356:12;;37349:28;;;;37402:3;37393:13;;37386:29;37440:3;37431:13;;37424:29;37478:3;37469:13;;37462:29;37516:3;37507:13;;36813:713;-1:-1:-1;;36813:713:192:o;37531:128::-;37598:9;;;37619:11;;;37616:37;;;37633:18;;:::i;37664:640::-;37915:6;37910:3;37903:19;37885:3;37941:2;37974;37969:3;37965:12;38006:6;38000:13;38071:2;38063:6;38059:15;38092:1;38102:175;38116:6;38113:1;38110:13;38102:175;;;38179:13;;38165:28;;38215:14;;;;38252:15;;;;38138:1;38131:9;38102:175;;;-1:-1:-1;38293:5:192;;37664:640;-1:-1:-1;;;;;;;37664:640:192:o;38309:359::-;38512:2;38501:9;38494:21;38475:4;38532:44;38572:2;38561:9;38557:18;38549:6;38532:44;:::i;:::-;38607:2;38592:18;;38585:34;;;;-1:-1:-1;38650:2:192;38635:18;38628:34;38524:52;38309:359;-1:-1:-1;38309:359:192:o;39000:711::-;39335:3;39324:9;39317:22;39298:4;39362:78;39435:3;39424:9;39420:19;39412:6;39362:78;:::i;:::-;39488:9;39480:6;39476:22;39471:2;39460:9;39456:18;39449:50;39522:32;39547:6;39539;39522:32;:::i;:::-;39508:46;;39590:6;39585:2;39574:9;39570:18;39563:34;39645:9;39637:6;39633:22;39628:2;39617:9;39613:18;39606:50;39673:32;39698:6;39690;39673:32;:::i;:::-;39665:40;39000:711;-1:-1:-1;;;;;;;39000:711:192:o;39716:920::-;40172:6;40161:9;40154:25;40215:3;40210:2;40199:9;40195:18;40188:31;40135:4;40242:78;40315:3;40304:9;40300:19;40292:6;40242:78;:::i;:::-;40368:9;40360:6;40356:22;40351:2;40340:9;40336:18;40329:50;40402:32;40427:6;40419;40402:32;:::i;:::-;40388:46;;40470:6;40465:2;40454:9;40450:18;40443:34;40526:9;40518:6;40514:22;40508:3;40497:9;40493:19;40486:51;40554:32;40579:6;40571;40554:32;:::i;:::-;40546:40;;;40623:6;40617:3;40606:9;40602:19;40595:35;39716:920;;;;;;;;;:::o;40641:532::-;40892:2;40881:9;40874:21;40855:4;40918:77;40991:2;40980:9;40976:18;40968:6;40918:77;:::i;:::-;41043:14;41035:6;41031:27;41026:2;41015:9;41011:18;41004:55;41107:9;41099:6;41095:22;41090:2;41079:9;41075:18;41068:50;41135:32;41160:6;41152;41135:32;:::i;41178:637::-;41489:6;41478:9;41471:25;41532:3;41527:2;41516:9;41512:18;41505:31;41452:4;41559:78;41632:3;41621:9;41617:19;41609:6;41559:78;:::i;:::-;41685:14;41677:6;41673:27;41668:2;41657:9;41653:18;41646:55;41749:9;41741:6;41737:22;41732:2;41721:9;41717:18;41710:50;41777:32;41802:6;41794;41777:32;:::i;42080:191::-;42115:3;42146:66;42139:5;42136:77;42133:103;;42216:18;;:::i;:::-;-1:-1:-1;42256:1:192;42252:13;;42080:191::o;42276:463::-;42539:6;42528:9;42521:25;42582:2;42577;42566:9;42562:18;42555:30;42502:4;42602:77;42675:2;42664:9;42660:18;42652:6;42602:77;:::i;:::-;42594:85;;42727:4;42719:6;42715:17;42710:2;42699:9;42695:18;42688:45;42276:463;;;;;;:::o;42931:287::-;43060:3;43098:6;43092:13;43114:66;43173:6;43168:3;43161:4;43153:6;43149:17;43114:66;:::i;:::-;43196:16;;;;;42931:287;-1:-1:-1;;42931:287:192:o;43507:530::-;43692:3;43730:6;43724:13;43746:66;43805:6;43800:3;43793:4;43785:6;43781:17;43746:66;:::i;:::-;43881:2;43877:15;;;;43894:66;43873:88;43834:16;;;;43859:103;;;43989:2;43978:14;;43971:30;;;;44028:2;44017:14;;43507:530;-1:-1:-1;;43507:530:192: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":182}
\ 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":"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
diff --git a/packages/contracts/worlds.json b/packages/contracts/worlds.json
index 830f438cb..fbe2554b3 100644
--- a/packages/contracts/worlds.json
+++ b/packages/contracts/worlds.json
@@ -6,4 +6,4 @@
"address": "0x12858302105dcdb6131a1add11389419390596a3",
"blockNumber": 12983760
}
-}
\ No newline at end of file
+}