From a16c9bc2560707d5452f8beaa4c0d4a74cc4f9f3 Mon Sep 17 00:00:00 2001 From: ECWireless Date: Mon, 15 Jul 2024 12:06:36 -0600 Subject: [PATCH 01/14] Add createMatch functionality to the client --- packages/client/src/components/DevTools.ts | 2 + .../src/components/InitiateCombatModal.tsx | 109 ++++++++++++ .../client/src/components/ItemEquipModal.tsx | 159 ++++++++---------- .../src/components/TileDetailsPanel.tsx | 65 ++++++- .../client/src/lib/mud/createSystemCalls.ts | 53 +++++- packages/client/src/pages/GameBoard.tsx | 1 + packages/client/src/utils/theme.ts | 6 + packages/client/src/utils/types.ts | 17 +- 8 files changed, 315 insertions(+), 97 deletions(-) create mode 100644 packages/client/src/components/InitiateCombatModal.tsx diff --git a/packages/client/src/components/DevTools.ts b/packages/client/src/components/DevTools.ts index e8408c325..9fc7c312a 100644 --- a/packages/client/src/components/DevTools.ts +++ b/packages/client/src/components/DevTools.ts @@ -1,5 +1,6 @@ import mudConfig from 'contracts/mud.config'; import characterSystemAbi from 'contracts/out/CharacterSystem.sol/CharacterSystem.abi.json'; +import combatSystemAbi from 'contracts/out/CombatSystem.sol/CombatSystem.abi.json'; import mapSystemAbi from 'contracts/out/MapSystem.sol/MapSystem.abi.json'; import { useEffect, useMemo } from 'react'; @@ -13,6 +14,7 @@ export function DevTools(): null { () => [ ...network.worldContract.abi, ...characterSystemAbi, + ...combatSystemAbi, ...mapSystemAbi, ], [network.worldContract.abi], diff --git a/packages/client/src/components/InitiateCombatModal.tsx b/packages/client/src/components/InitiateCombatModal.tsx new file mode 100644 index 000000000..18d01c576 --- /dev/null +++ b/packages/client/src/components/InitiateCombatModal.tsx @@ -0,0 +1,109 @@ +import { + Button, + Modal, + ModalBody, + ModalCloseButton, + ModalContent, + ModalFooter, + ModalHeader, + ModalOverlay, +} from '@chakra-ui/react'; +import { useCallback, useState } from 'react'; + +import { useCharacter } from '../contexts/CharacterContext'; +import { useMUD } from '../contexts/MUDContext'; +import { useToast } from '../hooks/useToast'; +import { EncounterType, type Monster } from '../utils/types'; + +type InitiateCombatModalProps = Monster & { + isOpen: boolean; + onClose: () => void; +}; + +export const InitiateCombatModal: React.FC = ({ + isOpen, + onClose, + ...monster +}): JSX.Element => { + const { renderError, renderSuccess } = useToast(); + const { + burnerBalance, + delegatorAddress, + systemCalls: { createMatch }, + } = useMUD(); + const { character } = useCharacter(); + + const [isInitiating, setIsInitiating] = useState(false); + + const onInitiateCombat = useCallback(async () => { + try { + setIsInitiating(true); + + if (!character) { + throw new Error('Character not found.'); + } + + if (burnerBalance === '0') { + throw new Error( + 'Insufficient funds. Please top off your session account.', + ); + } + + if (!delegatorAddress) { + throw new Error('Missing delegation.'); + } + + const success = await createMatch( + EncounterType.PvE, + [character.characterId], + [monster.monsterId], + ); + + if (!success) { + throw new Error('Contract call failed'); + } + + renderSuccess(`Battle has begun!`); + onClose(); + } catch (e) { + renderError(e, 'Failed to initiate battle'); + } finally { + setIsInitiating(false); + } + }, [ + burnerBalance, + character, + createMatch, + delegatorAddress, + monster, + onClose, + renderError, + renderSuccess, + ]); + + return ( + + + + Initiate Battle + + + Are you sure you want to initiate a battle with {monster.name}? + + + + + + + + ); +}; diff --git a/packages/client/src/components/ItemEquipModal.tsx b/packages/client/src/components/ItemEquipModal.tsx index 9fe5687b3..25ad09473 100644 --- a/packages/client/src/components/ItemEquipModal.tsx +++ b/packages/client/src/components/ItemEquipModal.tsx @@ -44,104 +44,89 @@ export const ItemEquipModal: React.FC = ({ [character, weapon.owner], ); - const onEquipItem = useCallback( - async (e: React.FormEvent) => { - e.preventDefault(); - - try { - setIsEquipping(true); - - if (!character) { - throw new Error('Character not found.'); - } - - if (burnerBalance === '0') { - throw new Error( - 'Insufficient funds. Please top off your session account.', - ); - } - - if (!delegatorAddress) { - throw new Error('Missing delegation.'); - } - - const success = await equipItems(character.characterId, [ - weapon.tokenId, - ]); - - if (!success) { - throw new Error('Contract call failed'); - } - - renderSuccess(`${weapon.name} equipped successfully!`); - onClose(); - } catch (e) { - renderError(e, 'Failed to equip item.'); - } finally { - setIsEquipping(false); + const onEquipItem = useCallback(async () => { + try { + setIsEquipping(true); + + if (!character) { + throw new Error('Character not found.'); } - }, - [ - burnerBalance, - character, - delegatorAddress, - equipItems, - onClose, - renderError, - renderSuccess, - weapon, - ], - ); - const onUnequipItem = useCallback( - async (e: React.FormEvent) => { - e.preventDefault(); + if (burnerBalance === '0') { + throw new Error( + 'Insufficient funds. Please top off your session account.', + ); + } - try { - setIsEquipping(true); + if (!delegatorAddress) { + throw new Error('Missing delegation.'); + } - if (!character) { - throw new Error('Character not found.'); - } + const success = await equipItems(character.characterId, [weapon.tokenId]); - if (burnerBalance === '0') { - throw new Error( - 'Insufficient funds. Please top off your session account.', - ); - } + if (!success) { + throw new Error('Contract call failed'); + } - if (!delegatorAddress) { - throw new Error('Missing delegation.'); - } + renderSuccess(`${weapon.name} equipped successfully!`); + onClose(); + } catch (e) { + renderError(e, 'Failed to equip item.'); + } finally { + setIsEquipping(false); + } + }, [ + burnerBalance, + character, + delegatorAddress, + equipItems, + onClose, + renderError, + renderSuccess, + weapon, + ]); + + const onUnequipItem = useCallback(async () => { + try { + setIsEquipping(true); + + if (!character) { + throw new Error('Character not found.'); + } - const success = await unequipItem( - character.characterId, - weapon.tokenId, + if (burnerBalance === '0') { + throw new Error( + 'Insufficient funds. Please top off your session account.', ); + } + + if (!delegatorAddress) { + throw new Error('Missing delegation.'); + } - if (!success) { - throw new Error('Contract call failed'); - } + const success = await unequipItem(character.characterId, weapon.tokenId); - renderSuccess(`${weapon.name} unequipped successfully!`); - onClose(); - } catch (e) { - renderError(e, 'Failed to unequip item.'); - } finally { - setIsEquipping(false); + if (!success) { + throw new Error('Contract call failed'); } - }, - [ - burnerBalance, - character, - delegatorAddress, - onClose, - renderError, - renderSuccess, - unequipItem, - weapon, - ], - ); + + renderSuccess(`${weapon.name} unequipped successfully!`); + onClose(); + } catch (e) { + renderError(e, 'Failed to unequip item.'); + } finally { + setIsEquipping(false); + } + }, [ + burnerBalance, + character, + delegatorAddress, + onClose, + renderError, + renderSuccess, + unequipItem, + weapon, + ]); if (isEquipped) { return ( diff --git a/packages/client/src/components/TileDetailsPanel.tsx b/packages/client/src/components/TileDetailsPanel.tsx index 6819916a2..6f402526a 100644 --- a/packages/client/src/components/TileDetailsPanel.tsx +++ b/packages/client/src/components/TileDetailsPanel.tsx @@ -8,17 +8,45 @@ import { Spinner, Text, useBreakpointValue, + useDisclosure, + VStack, } from '@chakra-ui/react'; +import { useEntityQuery } from '@latticexyz/react'; +import { getComponentValue, Has } from '@latticexyz/recs'; +import { useState } from 'react'; +import { GiCrossedSwords } from 'react-icons/gi'; import { IoIosArrowForward } from 'react-icons/io'; import { useNavigate } from 'react-router-dom'; +import { useCharacter } from '../contexts/CharacterContext'; import { useMapNavigation } from '../contexts/MapNavigationContext'; +import { useMUD } from '../contexts/MUDContext'; import { type Character, type Monster } from '../utils/types'; +import { InitiateCombatModal } from './InitiateCombatModal'; const ROW_HEIGHT = { base: 5, md: 8, lg: 10 }; export const TileDetailsPanel = (): JSX.Element => { const { isRefreshing, monsters, otherPlayers } = useMapNavigation(); + const { isOpen, onOpen, onClose } = useDisclosure(); + const { + components: { CombatEncounter }, + } = useMUD(); + const { character } = useCharacter(); + + const currentBattle = Array.from(useEntityQuery([Has(CombatEncounter)])) + .map(entity => { + const encounter = getComponentValue(CombatEncounter, entity); + return encounter; + }) + .filter( + encounter => + character && + (encounter?.attackers.includes(character.characterId) || + encounter?.defenders.includes(character.characterId)), + )[0]; + + const [selectedMonster, setSelectedMonster] = useState(null); if (isRefreshing) { return ( @@ -56,6 +84,10 @@ export const TileDetailsPanel = (): JSX.Element => { { + setSelectedMonster(monster); + onOpen(); + }} /> ))} {monsters.length === 0 && ( @@ -94,6 +126,30 @@ export const TileDetailsPanel = (): JSX.Element => { )} + {selectedMonster && ( + + )} + {currentBattle && ( + + + + Combat in progress! + + + + + )} ); }; @@ -104,7 +160,13 @@ const MONSTER_COLORS = { [2]: 'green', }; -const MonsterRow = ({ monster }: { monster: Monster }) => { +const MonsterRow = ({ + monster, + onClick, +}: { + monster: Monster; + onClick: () => void; +}) => { const { level, name } = monster; const isFighting = false; @@ -116,6 +178,7 @@ const MonsterRow = ({ monster }: { monster: Monster }) => { border="1px solid transparent" h={ROW_HEIGHT} justifyContent="space-between" + onClick={onClick} px={{ base: 1, sm: 2, md: 4 }} transition="all 0.3s ease" w="100%" diff --git a/packages/client/src/lib/mud/createSystemCalls.ts b/packages/client/src/lib/mud/createSystemCalls.ts index b872e3bf2..294014f52 100644 --- a/packages/client/src/lib/mud/createSystemCalls.ts +++ b/packages/client/src/lib/mud/createSystemCalls.ts @@ -6,7 +6,13 @@ // import { getComponentValue } from '@latticexyz/recs'; // import { singletonEntity } from '@latticexyz/store-sync/recs'; -import { Entity, getComponentValue } from '@latticexyz/recs'; +import { + Entity, + getComponentValue, + Has, + HasValue, + runQuery, +} from '@latticexyz/recs'; import { encodeEntity } from '@latticexyz/store-sync/recs'; import { uuid } from '@latticexyz/utils'; import { @@ -18,7 +24,7 @@ import { toBytes, } from 'viem'; -import { StatsClasses } from '../../utils/types'; +import { EncounterType, StatsClasses } from '../../utils/types'; import { ClientComponents } from './createClientComponents'; import { SetupNetworkResult } from './setupNetwork'; @@ -46,8 +52,48 @@ export function createSystemCalls( * (https://github.com/latticexyz/mud/blob/main/templates/react/packages/client/src/mud/setupNetwork.ts#L77-L83). */ { publicClient, waitForTransaction, worldContract }: SetupNetworkResult, - { CharacterEquipment, Characters, Position, Spawned }: ClientComponents, + { + CharacterEquipment, + Characters, + CombatEncounter, + Position, + Spawned, + }: ClientComponents, ) { + const createMatch = async ( + encounterType: EncounterType, + attackers: string[], + defenders: string[], + ) => { + try { + const tx = await worldContract.write.UD__createMatch([ + encounterType, + attackers as `0x${string}`[], + defenders as `0x${string}`[], + ]); + + await waitForTransaction(tx); + + const success = !!Array.from( + runQuery([ + Has(CombatEncounter), + HasValue(CombatEncounter, { encounterType }), + ]), + ).filter(entity => { + const encounter = getComponentValue(CombatEncounter, entity); + return ( + encounter && + encounter.attackers.some(attacker => attackers.includes(attacker)) && + encounter.defenders.some(defender => defenders.includes(defender)) + ); + })[0]; + + return success; + } catch (err) { + return false; + } + }; + const enterGame = async (characterEntity: Entity) => { try { const tx = await worldContract.write.UD__enterGame([ @@ -235,6 +281,7 @@ export function createSystemCalls( }; return { + createMatch, enterGame, equipItems, mintCharacter, diff --git a/packages/client/src/pages/GameBoard.tsx b/packages/client/src/pages/GameBoard.tsx index 59f96eb2d..69017de9e 100644 --- a/packages/client/src/pages/GameBoard.tsx +++ b/packages/client/src/pages/GameBoard.tsx @@ -66,6 +66,7 @@ export const GameBoard = (): JSX.Element => { colStart={{ base: 0, lg: 5 }} overflowY="auto" p={{ base: 2, lg: 4 }} + pos="relative" rowSpan={{ base: 3, lg: 6 }} rowStart={{ base: 0, lg: 0 }} > diff --git a/packages/client/src/utils/theme.ts b/packages/client/src/utils/theme.ts index 11d856253..e1327de26 100644 --- a/packages/client/src/utils/theme.ts +++ b/packages/client/src/utils/theme.ts @@ -145,6 +145,12 @@ const Text = { lg: { fontSize: '18px', }, + xl: { + fontSize: '24px', + }, + '2xl': { + fontSize: '32px', + }, }, }; diff --git a/packages/client/src/utils/types.ts b/packages/client/src/utils/types.ts index f76d1cff5..7f53456c5 100644 --- a/packages/client/src/utils/types.ts +++ b/packages/client/src/utils/types.ts @@ -1,5 +1,16 @@ import { Entity } from '@latticexyz/recs'; +export enum EncounterType { + PvP, + PvE, +} + +export enum StatsClasses { + Warrior, + Rogue, + Mage, +} + export type Character = CharacterData & CharacterStats & Metadata; export type CharacterData = { @@ -20,12 +31,6 @@ export type CharacterStats = { strength: string; }; -export enum StatsClasses { - Warrior, - Rogue, - Mage, -} - export type Metadata = { description: string; image: string; From 65f8a574d3579f885c8981bdfed20f1a85a93894 Mon Sep 17 00:00:00 2001 From: ECWireless Date: Mon, 15 Jul 2024 19:27:02 -0600 Subject: [PATCH 02/14] Add CombatContext --- .../client/src/components/ActionsPanel.tsx | 23 ++- packages/client/src/components/DevTools.ts | 2 + packages/client/src/components/MapPanel.tsx | 19 ++- .../src/components/TileDetailsPanel.tsx | 22 +-- .../client/src/contexts/CombatContext.tsx | 79 ++++++++++ packages/client/src/pages/GameBoard.tsx | 143 +++++++++--------- packages/client/src/utils/types.ts | 11 ++ 7 files changed, 199 insertions(+), 100 deletions(-) create mode 100644 packages/client/src/contexts/CombatContext.tsx diff --git a/packages/client/src/components/ActionsPanel.tsx b/packages/client/src/components/ActionsPanel.tsx index 2a46e643b..18fc7b42f 100644 --- a/packages/client/src/components/ActionsPanel.tsx +++ b/packages/client/src/components/ActionsPanel.tsx @@ -1,4 +1,8 @@ import { Stack, Text } from '@chakra-ui/react'; +import { useMemo } from 'react'; + +import { useCombat } from '../contexts/CombatContext'; +import { useMapNavigation } from '../contexts/MapNavigationContext'; // enum ActionEvents { // Attack = 'attack', @@ -43,12 +47,25 @@ import { Stack, Text } from '@chakra-ui/react'; // ]; export const ActionsPanel = (): JSX.Element => { + const { currentBattle, monster } = useCombat(); + const { isSpawned } = useMapNavigation(); + + const actionText = useMemo(() => { + if (!isSpawned) { + return 'You must spawn on the map to start battling.'; + } + + if (currentBattle && monster) { + return `You are currently in a battle with a ${monster.name}.`; + } + + return 'To initiate a battle, move into a new tile and click on a monster.'; + }, [currentBattle, isSpawned, monster]); + return ( - - You must spawn on the map to start battling. - + {actionText} {/* {BATTLE_EVENTS.map((event, i) => ( diff --git a/packages/client/src/components/DevTools.ts b/packages/client/src/components/DevTools.ts index 9fc7c312a..6b4e390c8 100644 --- a/packages/client/src/components/DevTools.ts +++ b/packages/client/src/components/DevTools.ts @@ -1,6 +1,7 @@ import mudConfig from 'contracts/mud.config'; import characterSystemAbi from 'contracts/out/CharacterSystem.sol/CharacterSystem.abi.json'; import combatSystemAbi from 'contracts/out/CombatSystem.sol/CombatSystem.abi.json'; +import equipmentSystemAbi from 'contracts/out/EquipmentSystem.sol/EquipmentSystem.abi.json'; import mapSystemAbi from 'contracts/out/MapSystem.sol/MapSystem.abi.json'; import { useEffect, useMemo } from 'react'; @@ -15,6 +16,7 @@ export function DevTools(): null { ...network.worldContract.abi, ...characterSystemAbi, ...combatSystemAbi, + ...equipmentSystemAbi, ...mapSystemAbi, ], [network.worldContract.abi], diff --git a/packages/client/src/components/MapPanel.tsx b/packages/client/src/components/MapPanel.tsx index 53276a7bd..11792083d 100644 --- a/packages/client/src/components/MapPanel.tsx +++ b/packages/client/src/components/MapPanel.tsx @@ -8,6 +8,7 @@ import { } from 'react-icons/io'; import { TbDirectionArrows } from 'react-icons/tb'; +import { useCombat } from '../contexts/CombatContext'; import { useMapNavigation } from '../contexts/MapNavigationContext'; const SAFE_ZONE_AREA = { @@ -25,6 +26,7 @@ export const MapPanel = (): JSX.Element => { otherPlayers, position, } = useMapNavigation(); + const { currentBattle } = useCombat(); return ( { {isSpawned ? ( - + ) : ( - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + ); }; diff --git a/packages/client/src/utils/types.ts b/packages/client/src/utils/types.ts index 7f53456c5..c0f9200c8 100644 --- a/packages/client/src/utils/types.ts +++ b/packages/client/src/utils/types.ts @@ -31,6 +31,17 @@ export type CharacterStats = { strength: string; }; +export type CombatDetails = { + attackers: Entity[]; + currentTurn: string; + defenders: Entity[]; + encounterId: Entity; + encounterType: EncounterType; + end: string; + maxTurns: string; + start: string; +}; + export type Metadata = { description: string; image: string; From 71471e820f313678051efbb874725a79c07a8dfb Mon Sep 17 00:00:00 2001 From: ECWireless Date: Tue, 16 Jul 2024 08:32:04 -0600 Subject: [PATCH 03/14] Create basicAttack in PostDeploy --- .../client/src/components/ActionsPanel.tsx | 95 ++++++++++++++++++- .../client/src/lib/mud/createSystemCalls.ts | 31 ++++++ packages/client/src/pages/Character.tsx | 8 +- packages/client/src/utils/types.ts | 7 ++ packages/contracts/script/PostDeploy.s.sol | 8 +- packages/contracts/worlds.json | 6 +- 6 files changed, 141 insertions(+), 14 deletions(-) diff --git a/packages/client/src/components/ActionsPanel.tsx b/packages/client/src/components/ActionsPanel.tsx index 18fc7b42f..c52ab6f1f 100644 --- a/packages/client/src/components/ActionsPanel.tsx +++ b/packages/client/src/components/ActionsPanel.tsx @@ -1,8 +1,13 @@ -import { Stack, Text } from '@chakra-ui/react'; -import { useMemo } from 'react'; +import { Button, HStack, Stack, Text } from '@chakra-ui/react'; +import { Has, HasValue, runQuery } from '@latticexyz/recs'; +import { useCallback, useMemo, useState } from 'react'; +import { useCharacter } from '../contexts/CharacterContext'; import { useCombat } from '../contexts/CombatContext'; import { useMapNavigation } from '../contexts/MapNavigationContext'; +import { useMUD } from '../contexts/MUDContext'; +import { useToast } from '../hooks/useToast'; +import { ActionType } from '../utils/types'; // enum ActionEvents { // Attack = 'attack', @@ -47,9 +52,19 @@ import { useMapNavigation } from '../contexts/MapNavigationContext'; // ]; export const ActionsPanel = (): JSX.Element => { + const { renderError } = useToast(); + const { + burnerBalance, + components: { Actions }, + delegatorAddress, + systemCalls: { endTurn }, + } = useMUD(); + const { character } = useCharacter(); const { currentBattle, monster } = useCombat(); const { isSpawned } = useMapNavigation(); + const [isAttacking, setIsAttacking] = useState(false); + const actionText = useMemo(() => { if (!isSpawned) { return 'You must spawn on the map to start battling.'; @@ -62,10 +77,86 @@ export const ActionsPanel = (): JSX.Element => { return 'To initiate a battle, move into a new tile and click on a monster.'; }, [currentBattle, isSpawned, monster]); + const onAttack = useCallback(async () => { + try { + setIsAttacking(true); + + if (burnerBalance === '0') { + throw new Error( + 'Insufficient funds. Please top off your session account.', + ); + } + + if (!delegatorAddress) { + throw new Error('Missing delegation.'); + } + + if (!character) { + throw new Error('Character not found.'); + } + + if (!currentBattle) { + throw new Error('Battle not found.'); + } + + if (!monster) { + throw new Error('Monster not found.'); + } + + const basicAttackId = Array.from( + runQuery([ + Has(Actions), + HasValue(Actions, { actionType: ActionType.PhysicalAttack }), + ]), + )[0]; + + if (!basicAttackId) { + throw new Error('Basic attack not found.'); + } + + const success = await endTurn( + currentBattle.encounterId, + character.characterId, + monster.monsterId, + basicAttackId, + '1', + ); + + if (!success) { + throw new Error('Contract call failed'); + } + } catch (e) { + renderError(e, 'Failed to roll stats.'); + } finally { + setIsAttacking(false); + } + }, [ + Actions, + burnerBalance, + character, + currentBattle, + delegatorAddress, + endTurn, + monster, + renderError, + ]); + return ( {actionText} + {currentBattle && monster && ( + + + + )} {/* {BATTLE_EVENTS.map((event, i) => ( diff --git a/packages/client/src/lib/mud/createSystemCalls.ts b/packages/client/src/lib/mud/createSystemCalls.ts index 294014f52..763b7a3dd 100644 --- a/packages/client/src/lib/mud/createSystemCalls.ts +++ b/packages/client/src/lib/mud/createSystemCalls.ts @@ -94,6 +94,36 @@ export function createSystemCalls( } }; + const endTurn = async ( + encounterId: Entity, + playerId: Entity, + defenderId: Entity, + actionId: Entity, + weaponId: string, + ) => { + try { + const actions = [ + { + attackerEntityId: playerId.toString() as `0x${string}`, + defenderEntityId: defenderId.toString() as `0x${string}`, + actionId: actionId.toString() as `0x${string}`, + weaponId: BigInt(weaponId), + }, + ]; + const tx = await worldContract.write.UD__endTurn([ + encounterId.toString() as `0x${string}`, + playerId.toString() as `0x${string}`, + actions, + ]); + + await waitForTransaction(tx); + + return true; + } catch (e) { + return false; + } + }; + const enterGame = async (characterEntity: Entity) => { try { const tx = await worldContract.write.UD__enterGame([ @@ -282,6 +312,7 @@ export function createSystemCalls( return { createMatch, + endTurn, enterGame, equipItems, mintCharacter, diff --git a/packages/client/src/pages/Character.tsx b/packages/client/src/pages/Character.tsx index 42079d5fa..25a0fef1e 100644 --- a/packages/client/src/pages/Character.tsx +++ b/packages/client/src/pages/Character.tsx @@ -15,7 +15,6 @@ import { getComponentValue, getComponentValueStrict, Has, - NotValue, runQuery, } from '@latticexyz/recs'; import { @@ -144,12 +143,7 @@ export const CharacterPage = (): JSX.Element => { const fetchCharacterItems = useCallback( async (_character: Character) => { try { - const _items = Array.from( - runQuery([ - Has(ItemsOwners), - NotValue(ItemsOwners, { balance: BigInt(0) }), - ]), - ) + const _items = Array.from(runQuery([Has(ItemsOwners)])) .map(entity => { const itemOwner = getComponentValueStrict(ItemsOwners, entity); const { owner, tokenId } = decodeEntity( diff --git a/packages/client/src/utils/types.ts b/packages/client/src/utils/types.ts index c0f9200c8..ee3caf68c 100644 --- a/packages/client/src/utils/types.ts +++ b/packages/client/src/utils/types.ts @@ -1,5 +1,12 @@ import { Entity } from '@latticexyz/recs'; +export enum ActionType { + Temporary, + PhysicalAttack, + MagicAttack, + StatusEffect, +} + export enum EncounterType { PvP, PvE, diff --git a/packages/contracts/script/PostDeploy.s.sol b/packages/contracts/script/PostDeploy.s.sol index 5d906f8c3..dce3740aa 100644 --- a/packages/contracts/script/PostDeploy.s.sol +++ b/packages/contracts/script/PostDeploy.s.sol @@ -21,8 +21,8 @@ import { ERC721MetadataData } from "@latticexyz/world-modules/src/modules/erc721 import { GOLD_NAMESPACE, CHARACTERS_NAMESPACE, ERC721_NAME, ERC721_SYMBOL, ITEMS_NAMESPACE, TOKEN_URI } from "../constants.sol"; import { NoTransferHook } from "../src/NoTransferHook.sol"; import { BEFORE_CALL_SYSTEM } from "@latticexyz/world/src/systemHookTypes.sol"; -import { Classes, ItemType, MobType } from "@codegen/common.sol"; -import { WeaponStats, MonsterStats, MonsterTemplateDetails, WeaponTemplateDetails } from "@interfaces/Structs.sol"; +import { ActionType, Classes, ItemType, MobType } from "@codegen/common.sol"; +import { WeaponStats, MonsterStats, MonsterTemplateDetails, PhysicalAttackStats, WeaponTemplateDetails } from "@interfaces/Structs.sol"; import { IERC20Mintable } from "@latticexyz/world-modules/src/modules/erc20-puppet/IERC20Mintable.sol"; import { ERC20MetadataData } from "@latticexyz/world-modules/src/modules/erc20-puppet/tables/ERC20Metadata.sol"; import { ERC20System } from "@latticexyz/world-modules/src/modules/erc20-puppet/ERC20System.sol"; @@ -174,6 +174,10 @@ contract PostDeploy is Script { world.grantAccess(resourceIds.combatSystemId, UltimateDominionConfig.getEntropy()); _createStarterItems(); _createMonsters(); + + PhysicalAttackStats memory basicAttack = PhysicalAttackStats({bonusDamage: 0, armorPenetration: 0, attackModifierBonus: 0, critChanceBonus: 0}); + world.UD__createAction(ActionType.PhysicalAttack, abi.encode(basicAttack)); + setLevels(); vm.stopBroadcast(); } diff --git a/packages/contracts/worlds.json b/packages/contracts/worlds.json index 816c90d02..e4a7c4c97 100644 --- a/packages/contracts/worlds.json +++ b/packages/contracts/worlds.json @@ -1,9 +1,9 @@ { "31337": { - "address": "0xb0eb8eb2a362195dfb259990695cea53a4efa5bf" + "address": "0x908e585f6b8e3d2091954fdbf9723b205ac61dc1" }, "84532": { - "address": "0x304d17a51415f9ce2a1c3d5213a10c58098b1d44", - "blockNumber": 12345888 + "address": "0xa0c48020347122d9a03c312aaf84a196c962b624", + "blockNumber": 12655705 } } \ No newline at end of file From d9cd174a6f18d9ee0a61ccdff11f9e818d0a99a5 Mon Sep 17 00:00:00 2001 From: ECWireless Date: Tue, 16 Jul 2024 19:14:28 -0600 Subject: [PATCH 04/14] Add basic endTurn functionality --- .../client/src/components/ActionsPanel.tsx | 146 +++++++++--------- packages/client/src/components/StatsPanel.tsx | 132 ++-------------- .../client/src/contexts/CharacterContext.tsx | 136 +++++++++++++++- .../client/src/lib/mud/createSystemCalls.ts | 52 ++++--- 4 files changed, 249 insertions(+), 217 deletions(-) diff --git a/packages/client/src/components/ActionsPanel.tsx b/packages/client/src/components/ActionsPanel.tsx index c52ab6f1f..a391e30b7 100644 --- a/packages/client/src/components/ActionsPanel.tsx +++ b/packages/client/src/components/ActionsPanel.tsx @@ -59,7 +59,7 @@ export const ActionsPanel = (): JSX.Element => { delegatorAddress, systemCalls: { endTurn }, } = useMUD(); - const { character } = useCharacter(); + const { character, equippedItems } = useCharacter(); const { currentBattle, monster } = useCombat(); const { isSpawned } = useMapNavigation(); @@ -77,84 +77,90 @@ export const ActionsPanel = (): JSX.Element => { return 'To initiate a battle, move into a new tile and click on a monster.'; }, [currentBattle, isSpawned, monster]); - const onAttack = useCallback(async () => { - try { - setIsAttacking(true); - - if (burnerBalance === '0') { - throw new Error( - 'Insufficient funds. Please top off your session account.', + const onAttack = useCallback( + async (itemId: string) => { + try { + setIsAttacking(true); + + if (burnerBalance === '0') { + throw new Error( + 'Insufficient funds. Please top off your session account.', + ); + } + + if (!delegatorAddress) { + throw new Error('Missing delegation.'); + } + + if (!character) { + throw new Error('Character not found.'); + } + + if (!currentBattle) { + throw new Error('Battle not found.'); + } + + if (!monster) { + throw new Error('Monster not found.'); + } + + const basicAttackId = Array.from( + runQuery([ + Has(Actions), + HasValue(Actions, { actionType: ActionType.PhysicalAttack }), + ]), + )[0]; + + if (!basicAttackId) { + throw new Error('Basic attack not found.'); + } + + const success = await endTurn( + currentBattle.encounterId, + character.characterId, + monster.monsterId, + basicAttackId, + itemId, ); - } - - if (!delegatorAddress) { - throw new Error('Missing delegation.'); - } - - if (!character) { - throw new Error('Character not found.'); - } - - if (!currentBattle) { - throw new Error('Battle not found.'); - } - if (!monster) { - throw new Error('Monster not found.'); + if (!success) { + throw new Error('Contract call failed'); + } + } catch (e) { + renderError(e, 'Failed to roll stats.'); + } finally { + setIsAttacking(false); } - - const basicAttackId = Array.from( - runQuery([ - Has(Actions), - HasValue(Actions, { actionType: ActionType.PhysicalAttack }), - ]), - )[0]; - - if (!basicAttackId) { - throw new Error('Basic attack not found.'); - } - - const success = await endTurn( - currentBattle.encounterId, - character.characterId, - monster.monsterId, - basicAttackId, - '1', - ); - - if (!success) { - throw new Error('Contract call failed'); - } - } catch (e) { - renderError(e, 'Failed to roll stats.'); - } finally { - setIsAttacking(false); - } - }, [ - Actions, - burnerBalance, - character, - currentBattle, - delegatorAddress, - endTurn, - monster, - renderError, - ]); + }, + [ + Actions, + burnerBalance, + character, + currentBattle, + delegatorAddress, + endTurn, + monster, + renderError, + ], + ); return ( {actionText} - {currentBattle && monster && ( + {currentBattle && equippedItems && monster && ( - + {equippedItems.map((item, index) => ( + + ))} )} diff --git a/packages/client/src/components/StatsPanel.tsx b/packages/client/src/components/StatsPanel.tsx index f8145c06e..6134f91c6 100644 --- a/packages/client/src/components/StatsPanel.tsx +++ b/packages/client/src/components/StatsPanel.tsx @@ -12,41 +12,26 @@ import { VStack, } from '@chakra-ui/react'; import { useComponentValue } from '@latticexyz/react'; -import { getComponentValue, getComponentValueStrict } from '@latticexyz/recs'; -import { encodeEntity, singletonEntity } from '@latticexyz/store-sync/recs'; -import { useCallback, useEffect, useMemo, useState } from 'react'; +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 { useCharacter } from '../contexts/CharacterContext'; import { useMUD } from '../contexts/MUDContext'; -import { useToast } from '../hooks/useToast'; import { MAX_EQUIPPED_WEAPONS } from '../utils/constants'; -import { fetchMetadataFromUri, uriToHttp } from '../utils/helpers'; -import type { Character, StatsClasses, Weapon } from '../utils/types'; import { Level } from './Level'; const CURRENT_LEVEL = 1; export const StatsPanel = (): JSX.Element => { const navigate = useNavigate(); - const { renderError } = useToast(); const isDesktop = useBreakpointValue({ base: false, lg: true }); const { - components: { - CharacterEquipment, - ItemsBaseURI, - ItemsOwners, - ItemsTokenURI, - Levels, - }, - isSynced, - network: { worldContract }, + components: { Levels }, } = useMUD(); - const { character } = useCharacter(); - - const [items, setItems] = useState(null); + const { character, equippedItems } = useCharacter(); const nextLevelXpRequirement = useComponentValue( Levels, @@ -60,106 +45,7 @@ export const StatsPanel = (): JSX.Element => { ); }, [character, nextLevelXpRequirement]); - const fetchCharacterItems = useCallback( - async (_character: Character, _equippedWeapons: bigint[]) => { - try { - if (_equippedWeapons.length === 0) { - setItems([]); - return; - } - - const _items = _equippedWeapons - .map(tokenId => { - const tokenOwnersEntity = encodeEntity( - { owner: 'address', tokenId: 'uint256' }, - { - owner: _character.owner as `0x${string}`, - tokenId: BigInt(tokenId), - }, - ); - const itemOwner = getComponentValueStrict( - ItemsOwners, - tokenOwnersEntity, - ); - - return { - balance: itemOwner.balance.toString(), - itemId: tokenOwnersEntity, - owner: _character.owner, - tokenId: tokenId.toString(), - }; - }) - .filter(item => item.owner === _character.owner) - .sort((a, b) => { - return Number(a.tokenId) - Number(b.tokenId); - }); - - const fullItems = await Promise.all( - _items.map(async item => { - const itemTemplateStats = - await worldContract.read.UD__getWeaponStats([ - BigInt(item.tokenId), - ]); - - const tokenIdEntity = encodeEntity( - { tokenId: 'uint256' }, - { tokenId: BigInt(item.tokenId) }, - ); - - const baseURI = getComponentValueStrict( - ItemsBaseURI, - singletonEntity, - ).uri; - - const tokenURI = getComponentValueStrict( - ItemsTokenURI, - tokenIdEntity, - ).uri; - - const metadata = await fetchMetadataFromUri( - uriToHttp(`${baseURI}${tokenURI}`)[0], - ); - - return { - ...metadata, - agiModifier: itemTemplateStats.agiModifier.toString(), - balance: item.balance, - classRestrictions: itemTemplateStats.classRestrictions.map( - (classRestriction: number) => classRestriction as StatsClasses, - ), - hitPointModifier: itemTemplateStats.hitPointModifier.toString(), - intModifier: itemTemplateStats.intModifier.toString(), - itemId: item.itemId, - maxDamage: itemTemplateStats.maxDamage.toString(), - minDamage: itemTemplateStats.minDamage.toString(), - minLevel: itemTemplateStats.minLevel.toString(), - owner: item.owner, - strModifier: itemTemplateStats.strModifier.toString(), - tokenId: item.tokenId, - } as Weapon; - }), - ); - - setItems(fullItems); - } catch (error) { - renderError(error, 'Failed to fetch character data'); - } - }, - [ItemsBaseURI, ItemsOwners, ItemsTokenURI, renderError, worldContract], - ); - - useEffect(() => { - if (!isSynced) return; - (async (): Promise => { - if (!character) return; - const equippedWeapons = - getComponentValue(CharacterEquipment, character.characterId) - ?.equippedWeapons ?? []; - await fetchCharacterItems(character, equippedWeapons); - })(); - }, [character, CharacterEquipment, fetchCharacterItems, isSynced]); - - if (!(character && items)) { + if (!(character && equippedItems)) { return ( @@ -243,13 +129,13 @@ export const StatsPanel = (): JSX.Element => { - Active Items + Equipped Items - {items.length}/{MAX_EQUIPPED_WEAPONS} + {equippedItems.length}/{MAX_EQUIPPED_WEAPONS} - {items.map((item, index) => ( + {equippedItems.map((item, index) => ( { ))} {Array.from({ - length: MAX_EQUIPPED_WEAPONS - items.length, + length: MAX_EQUIPPED_WEAPONS - equippedItems.length, }).map((_, index) => ( Promise; }; const CharacterContext = createContext({ character: null, + equippedItems: null, isRefreshing: false, refreshCharacter: async () => {}, }); @@ -40,14 +48,25 @@ export const CharacterProvider = ({ children, }: CharacterProviderProps): JSX.Element => { const { - components: { Characters, CharactersTokenURI, GoldBalances, Stats }, + components: { + CharacterEquipment, + Characters, + CharactersTokenURI, + ItemsBaseURI, + ItemsOwners, + ItemsTokenURI, + GoldBalances, + Stats, + }, delegatorAddress, + isSynced, network: { publicClient, worldContract }, } = useMUD(); const { renderError } = useToast(); const [userCharacter, setUserCharacter] = useState(null); const [isRefreshing, setIsRefreshing] = useState(false); + const [equippedItems, setEquippedItems] = useState(null); const fetchCharacterData = useCallback(async () => { if (!(delegatorAddress && publicClient && worldContract)) return; @@ -129,14 +148,121 @@ export const CharacterProvider = ({ }, [fetchCharacterData, renderError]); useEffect(() => { - if (!(delegatorAddress && publicClient && worldContract)) return; + if (!(delegatorAddress && isSynced && publicClient && worldContract)) + return; fetchCharacterData(); - }, [delegatorAddress, fetchCharacterData, publicClient, worldContract]); + }, [ + delegatorAddress, + fetchCharacterData, + isSynced, + publicClient, + worldContract, + ]); + + const fetchCharacterItems = useCallback( + async (_character: Character, _equippedWeapons: bigint[]) => { + try { + if (_equippedWeapons.length === 0) { + setEquippedItems([]); + return; + } + + const _items = _equippedWeapons + .map(tokenId => { + const tokenOwnersEntity = encodeEntity( + { owner: 'address', tokenId: 'uint256' }, + { + owner: _character.owner as `0x${string}`, + tokenId: BigInt(tokenId), + }, + ); + const itemOwner = getComponentValueStrict( + ItemsOwners, + tokenOwnersEntity, + ); + + return { + balance: itemOwner.balance.toString(), + itemId: tokenOwnersEntity, + owner: _character.owner, + tokenId: tokenId.toString(), + }; + }) + .filter(item => item.owner === _character.owner) + .sort((a, b) => { + return Number(a.tokenId) - Number(b.tokenId); + }); + + const fullItems = await Promise.all( + _items.map(async item => { + const itemTemplateStats = + await worldContract.read.UD__getWeaponStats([ + BigInt(item.tokenId), + ]); + + const tokenIdEntity = encodeEntity( + { tokenId: 'uint256' }, + { tokenId: BigInt(item.tokenId) }, + ); + + const baseURI = getComponentValueStrict( + ItemsBaseURI, + singletonEntity, + ).uri; + + const tokenURI = getComponentValueStrict( + ItemsTokenURI, + tokenIdEntity, + ).uri; + + const metadata = await fetchMetadataFromUri( + uriToHttp(`${baseURI}${tokenURI}`)[0], + ); + + return { + ...metadata, + agiModifier: itemTemplateStats.agiModifier.toString(), + balance: item.balance, + classRestrictions: itemTemplateStats.classRestrictions.map( + (classRestriction: number) => classRestriction as StatsClasses, + ), + hitPointModifier: itemTemplateStats.hitPointModifier.toString(), + intModifier: itemTemplateStats.intModifier.toString(), + itemId: item.itemId, + maxDamage: itemTemplateStats.maxDamage.toString(), + minDamage: itemTemplateStats.minDamage.toString(), + minLevel: itemTemplateStats.minLevel.toString(), + owner: item.owner, + strModifier: itemTemplateStats.strModifier.toString(), + tokenId: item.tokenId, + } as Weapon; + }), + ); + + setEquippedItems(fullItems); + } catch (error) { + renderError(error, 'Failed to fetch character data'); + } + }, + [ItemsBaseURI, ItemsOwners, ItemsTokenURI, renderError, worldContract], + ); + + useEffect(() => { + if (!isSynced) return; + (async (): Promise => { + if (!userCharacter) return; + const equippedWeapons = + getComponentValue(CharacterEquipment, userCharacter.characterId) + ?.equippedWeapons ?? []; + await fetchCharacterItems(userCharacter, equippedWeapons); + })(); + }, [userCharacter, CharacterEquipment, fetchCharacterItems, isSynced]); return ( { try { - const entropyAddress = await worldContract.read.UD__getEntropy(); - const providerAddress = await worldContract.read.UD__getPythProvider(); - - const entropyContract = getContract({ - address: entropyAddress, - abi: [ - parseAbiItem( - 'function getFee(address provider) view returns (uint256)', - ), - ], - client: publicClient, - }); - - const fee = await entropyContract.read.getFee([providerAddress]); + const fee = await getFee(); const randomString = 'UltimateDominion'; const userRandomNumber = keccak256(toBytes(randomString)); @@ -310,6 +305,25 @@ export function createSystemCalls( } }; + const getFee = async () => { + const entropyAddress = await worldContract.read.UD__getEntropy(); + const providerAddress = await worldContract.read.UD__getPythProvider(); + + const entropyContract = getContract({ + address: entropyAddress, + abi: [ + parseAbiItem( + 'function getFee(address provider) view returns (uint256)', + ), + ], + client: publicClient, + }); + + const fee = await entropyContract.read.getFee([providerAddress]); + + return fee; + }; + return { createMatch, endTurn, From aef1da6ad899bb1e3336221e3f1889d893d6e673 Mon Sep 17 00:00:00 2001 From: MrDeadCe11 Date: Wed, 17 Jul 2024 16:51:07 -0500 Subject: [PATCH 05/14] tweaked end-match function --- packages/contracts/src/systems/CombatSystem.sol | 14 +++++++++----- packages/contracts/test/CombatSystem.t.sol | 9 ++++++++- packages/contracts/worlds.json | 2 +- 3 files changed, 18 insertions(+), 7 deletions(-) diff --git a/packages/contracts/src/systems/CombatSystem.sol b/packages/contracts/src/systems/CombatSystem.sol index 88098b806..5ccef3a1e 100644 --- a/packages/contracts/src/systems/CombatSystem.sol +++ b/packages/contracts/src/systems/CombatSystem.sol @@ -363,12 +363,16 @@ contract CombatSystem is System { entityIdTemp = encounterData.attackers[i]; if (IWorld(_world()).UD__isValidCharacterId(entityIdTemp)) { statsTemp = Stats.get(entityIdTemp); - if (statsTemp.currentHp > int256(0) && goldDrop > 0) { - statsTemp.experience += expDrop / livingAttackers; - IWorld(_world()).UD__dropGold(entityIdTemp, (goldDrop / livingAttackers)); - Stats.set(entityIdTemp, statsTemp); - MatchEntity.setEncounterId(encounterData.attackers[i], bytes32(0)); + if (statsTemp.currentHp > int256(0)) { + if (goldDrop > uint256(0)) { + IWorld(_world()).UD__dropGold(entityIdTemp, (goldDrop / livingAttackers)); + } + if (expDrop > uint256(0) && livingAttackers > uint256(0)) { + statsTemp.experience += expDrop / livingAttackers; + } } + Stats.set(entityIdTemp, statsTemp); + MatchEntity.setEncounterId(encounterData.attackers[i], bytes32(0)); } } } diff --git a/packages/contracts/test/CombatSystem.t.sol b/packages/contracts/test/CombatSystem.t.sol index ee78ed9bd..1e0fdf0b2 100644 --- a/packages/contracts/test/CombatSystem.t.sol +++ b/packages/contracts/test/CombatSystem.t.sol @@ -31,6 +31,7 @@ contract Test_CombatSystem is SetUp, GasReporter { bytes32[] public defenders; bytes32[] public attackers; bytes32 entityId; + bytes32 entityId2; function setUp() public override { super.setUp(); @@ -38,6 +39,7 @@ contract Test_CombatSystem is SetUp, GasReporter { world.grantAccess(_mobSystemId("UD"), address(this)); entityId = world.UD__spawnMob(1, 0, 0); + entityId2 = world.UD__spawnMob(1, 0, 0); defenders.push(entityId); attackers.push(bobCharacterId); @@ -50,7 +52,7 @@ contract Test_CombatSystem is SetUp, GasReporter { } function test_createMatch_Revert_Entities_Wrong_Position() public { - bytes32 entityId2 = world.UD__spawnMob(1, 0, 1); + entityId2 = world.UD__spawnMob(1, 0, 1); defenders[0] = entityId2; vm.prank(bob); vm.expectRevert("COMBAT SYSTEM: INVALID PVE"); @@ -88,6 +90,11 @@ contract Test_CombatSystem is SetUp, GasReporter { assertNotEq(startingStats.currentHp, int256(Stats.get(entityId).baseHitPoints)); assertGt(endingStats.experience, startingStats.experience); assertGt(endingGold, startingGold); + + // start new match + defenders[0] = entityId2; + vm.prank(bob); + bytes32 matchId2 = world.UD__createMatch(EncounterType.PvE, attackers, defenders); } function test_EndTurn_Revert_NonCombatant() public { diff --git a/packages/contracts/worlds.json b/packages/contracts/worlds.json index 913bdbd2a..92f37e7c9 100644 --- a/packages/contracts/worlds.json +++ b/packages/contracts/worlds.json @@ -1,6 +1,6 @@ { "31337": { - "address": "0x8a5a247b8f295ee4b14557c2939090e39f4bd866" + "address": "0x4e1586964f733ca3d608279bf27a3046b10362bb" }, "84532": { "address": "0xa0c48020347122d9a03c312aaf84a196c962b624", From 7e7bda319c0481e3d77a7784a7d8c5c849a6885b Mon Sep 17 00:00:00 2001 From: ECWireless Date: Wed, 17 Jul 2024 16:24:06 -0600 Subject: [PATCH 06/14] Render basic combat details --- .../client/src/components/ActionsPanel.tsx | 16 +- .../client/src/components/Character/Stats.tsx | 6 +- packages/client/src/components/StatsPanel.tsx | 5 +- .../client/src/contexts/CharacterContext.tsx | 7 +- .../client/src/contexts/CombatContext.tsx | 9 +- .../src/contexts/MapNavigationContext.tsx | 19 +- packages/client/src/lib/mud/createBurner.ts | 5 +- .../client/src/lib/mud/createSystemCalls.ts | 35 +- packages/client/src/pages/Character.tsx | 4 +- .../client/src/pages/CharacterCreation.tsx | 9 +- packages/client/src/pages/GameBoard.tsx | 4 +- packages/client/src/utils/types.ts | 18 +- packages/contracts/.gitignore | 2 + packages/contracts/items.json | 14 +- packages/contracts/monsters.json | 40 +- .../CombatSystem.sol/CombatSystem.abi.json | 580 ++++++++++++++++++ .../CombatSystem.abi.json.d.ts | 580 ++++++++++++++++++ .../out/CombatSystem.sol/CombatSystem.json | 1 + .../EquipmentSystem.abi.json | 498 +++++++++++++++ .../EquipmentSystem.abi.json.d.ts | 498 +++++++++++++++ .../EquipmentSystem.sol/EquipmentSystem.json | 1 + 21 files changed, 2285 insertions(+), 66 deletions(-) create mode 100644 packages/contracts/out/CombatSystem.sol/CombatSystem.abi.json create mode 100644 packages/contracts/out/CombatSystem.sol/CombatSystem.abi.json.d.ts create mode 100644 packages/contracts/out/CombatSystem.sol/CombatSystem.json create mode 100644 packages/contracts/out/EquipmentSystem.sol/EquipmentSystem.abi.json create mode 100644 packages/contracts/out/EquipmentSystem.sol/EquipmentSystem.abi.json.d.ts create mode 100644 packages/contracts/out/EquipmentSystem.sol/EquipmentSystem.json diff --git a/packages/client/src/components/ActionsPanel.tsx b/packages/client/src/components/ActionsPanel.tsx index a391e30b7..6bb975339 100644 --- a/packages/client/src/components/ActionsPanel.tsx +++ b/packages/client/src/components/ActionsPanel.tsx @@ -1,4 +1,4 @@ -import { Button, HStack, Stack, Text } from '@chakra-ui/react'; +import { Button, HStack, Stack, Text, VStack } from '@chakra-ui/react'; import { Has, HasValue, runQuery } from '@latticexyz/recs'; import { useCallback, useMemo, useState } from 'react'; @@ -163,6 +163,20 @@ export const ActionsPanel = (): JSX.Element => { ))} )} + {currentBattle && equippedItems && monster && ( + + MONSTER STATS: + + Max Health: {monster.baseHitPoints} + Current Health: {monster.currentHp} + + + Attack: {monster.agility} + Defense: {monster.intelligence} + Level: {monster.level} + + + )} {/* {BATTLE_EVENTS.map((event, i) => ( diff --git a/packages/client/src/components/Character/Stats.tsx b/packages/client/src/components/Character/Stats.tsx index 10f63fdfb..39b819dab 100644 --- a/packages/client/src/components/Character/Stats.tsx +++ b/packages/client/src/components/Character/Stats.tsx @@ -3,11 +3,13 @@ import { HStack, Text, VStack } from '@chakra-ui/react'; export const Stats = ({ agility, baseHitPoints, + currentHp, intelligence, strength, }: { agility: string; baseHitPoints: string; + currentHp: string; intelligence: string; strength: string; }): JSX.Element => { @@ -27,7 +29,9 @@ export const Stats = ({ HP - Hit - {baseHitPoints} + + {currentHp}/{baseHitPoints} + diff --git a/packages/client/src/components/StatsPanel.tsx b/packages/client/src/components/StatsPanel.tsx index 6134f91c6..7de786cb4 100644 --- a/packages/client/src/components/StatsPanel.tsx +++ b/packages/client/src/components/StatsPanel.tsx @@ -56,6 +56,7 @@ export const StatsPanel = (): JSX.Element => { const { agility, baseHitPoints, + currentHp, experience, goldBalance, image, @@ -89,7 +90,9 @@ export const StatsPanel = (): JSX.Element => { - {baseHitPoints} + + {currentHp}/{baseHitPoints} + diff --git a/packages/client/src/contexts/CharacterContext.tsx b/packages/client/src/contexts/CharacterContext.tsx index bdb4cd52f..6b75aa8c3 100644 --- a/packages/client/src/contexts/CharacterContext.tsx +++ b/packages/client/src/contexts/CharacterContext.tsx @@ -20,7 +20,7 @@ import { fetchMetadataFromUri, uriToHttp } from '../utils/helpers'; import type { Character, CharacterData, - CharacterStats, + EntityStats, StatsClasses, Weapon, } from '../utils/types'; @@ -70,7 +70,7 @@ export const CharacterProvider = ({ const fetchCharacterData = useCallback(async () => { if (!(delegatorAddress && publicClient && worldContract)) return; - const partialCharacter: CharacterData & CharacterStats = Array.from( + const partialCharacter: CharacterData & EntityStats = Array.from( runQuery([ HasValue(Characters, { owner: delegatorAddress, @@ -91,8 +91,9 @@ export const CharacterProvider = ({ return { agility: characterStats?.agility.toString() ?? '0', baseHitPoints: characterStats?.baseHitPoints.toString() ?? '0', - characterClass: characterStats?.class ?? 0, + currentHp: characterStats?.currentHp.toString() ?? '0', characterId: entity, + entityClass: characterStats?.class ?? 0, experience: characterStats?.experience.toString() ?? '0', goldBalance: formatEther(goldBalance).toString(), intelligence: characterStats?.intelligence.toString() ?? '0', diff --git a/packages/client/src/contexts/CombatContext.tsx b/packages/client/src/contexts/CombatContext.tsx index ca3c37c93..3663112b8 100644 --- a/packages/client/src/contexts/CombatContext.tsx +++ b/packages/client/src/contexts/CombatContext.tsx @@ -1,5 +1,5 @@ import { useEntityQuery } from '@latticexyz/react'; -import { Entity, getComponentValue, Has } from '@latticexyz/recs'; +import { Entity, getComponentValue, Has, HasValue } from '@latticexyz/recs'; import { createContext, ReactNode, useContext, useMemo } from 'react'; import type { CombatDetails, Monster } from '../utils/types'; @@ -31,7 +31,12 @@ export const CombatProvider = ({ const { monsters } = useMapNavigation(); const currentBattle = - Array.from(useEntityQuery([Has(CombatEncounter)])) + Array.from( + useEntityQuery([ + Has(CombatEncounter), + HasValue(CombatEncounter, { end: BigInt(0) }), + ]), + ) .map(entity => { const encounter = getComponentValue(CombatEncounter, entity); if (!encounter) return null; diff --git a/packages/client/src/contexts/MapNavigationContext.tsx b/packages/client/src/contexts/MapNavigationContext.tsx index 522cb64ec..9355c28ad 100644 --- a/packages/client/src/contexts/MapNavigationContext.tsx +++ b/packages/client/src/contexts/MapNavigationContext.tsx @@ -152,8 +152,8 @@ export const MapNavigationProvider = ({ ...fetachedMetadata, agility: characterStats.agility.toString(), baseHitPoints: characterStats.baseHitPoints.toString(), - characterClass: characterStats.class, characterId: entity, + entityClass: characterStats.class, experience: characterStats.experience.toString(), goldBalance: formatEther(goldBalance as bigint).toString(), intelligence: characterStats.intelligence.toString(), @@ -209,31 +209,32 @@ export const MapNavigationProvider = ({ const { mobMetadata: metadataURI } = mobData; - const monsterTemplateStats = - (await worldContract.read.UD__getMonsterStats([ - monsterId as `0x${string}`, - ])) as { class: number }; - const fetachedMetadata = await fetchMetadataFromUri( uriToHttp(metadataURI)[0], ); return { - class: monsterTemplateStats.class, + agility: monsterStats.agility.toString(), + baseHitPoints: monsterStats.baseHitPoints.toString(), + currentHp: monsterStats.currentHp.toString(), + entityClass: monsterStats.class, + experience: monsterStats.experience.toString(), + intelligence: monsterStats.intelligence.toString(), level: monsterStats.level.toString(), mobId, monsterId, + strength: monsterStats.strength.toString(), ...fetachedMetadata, }; }), ); - setMonsters(_monsters); + setMonsters(_monsters.filter(m => Number(m.currentHp) > 0)); } catch (error) { renderError(error, 'Failed to fetch monsters'); } }, - [Mobs, renderError, Stats, worldContract], + [Mobs, renderError, Stats], ); useEffect(() => { diff --git a/packages/client/src/lib/mud/createBurner.ts b/packages/client/src/lib/mud/createBurner.ts index 67fee1421..563d0f58c 100644 --- a/packages/client/src/lib/mud/createBurner.ts +++ b/packages/client/src/lib/mud/createBurner.ts @@ -5,7 +5,7 @@ import { encodeEntity } from '@latticexyz/store-sync/recs'; import { callFrom } from '@latticexyz/world/internal'; import IWorldAbi from 'contracts/out/IWorld.sol/IWorld.abi.json'; import { share, Subject } from 'rxjs'; -import { createWalletClient, getContract, type Hex } from 'viem'; +import { type Address, createWalletClient, getContract, type Hex } from 'viem'; import { createSystemCalls } from '../mud/createSystemCalls'; import { type SetupNetworkResult } from '../mud/setupNetwork'; @@ -25,7 +25,7 @@ export type WorldContract = Burner['worldContract']; // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types export function createBurner( network: SetupNetworkResult, - delegatorAddress?: Hex, + delegatorAddress?: Address, ) { /* * Create an observable for contract writes that we can @@ -108,6 +108,7 @@ export function createBurner( systemCalls: createSystemCalls( { ...network, + delegatorAddress, worldContract: worldContract, }, burnerComponents, diff --git a/packages/client/src/lib/mud/createSystemCalls.ts b/packages/client/src/lib/mud/createSystemCalls.ts index 3e66645bb..c81cadf75 100644 --- a/packages/client/src/lib/mud/createSystemCalls.ts +++ b/packages/client/src/lib/mud/createSystemCalls.ts @@ -17,6 +17,8 @@ import { encodeEntity } from '@latticexyz/store-sync/recs'; import { uuid } from '@latticexyz/utils'; import { Address, + BaseError, + ContractFunctionRevertedError, getContract, keccak256, parseAbiItem, @@ -51,7 +53,12 @@ export function createSystemCalls( * syncToRecs * (https://github.com/latticexyz/mud/blob/main/templates/react/packages/client/src/mud/setupNetwork.ts#L77-L83). */ - { publicClient, waitForTransaction, worldContract }: SetupNetworkResult, + { + delegatorAddress, + publicClient, + waitForTransaction, + worldContract, + }: SetupNetworkResult & { delegatorAddress?: Address }, { CharacterEquipment, Characters, @@ -66,6 +73,22 @@ export function createSystemCalls( defenders: string[], ) => { try { + if (!delegatorAddress) { + throw new Error('Delegator address not found'); + } + + await publicClient.simulateContract({ + address: worldContract.address, + abi: worldContract.abi, + functionName: 'UD__createMatch', + args: [ + encounterType, + attackers as `0x${string}`[], + defenders as `0x${string}`[], + ], + account: delegatorAddress, + }); + const tx = await worldContract.write.UD__createMatch([ encounterType, attackers as `0x${string}`[], @@ -90,6 +113,16 @@ export function createSystemCalls( return success; } catch (err) { + if (err instanceof BaseError) { + const revertError = err.walk( + err => err instanceof ContractFunctionRevertedError, + ); + if (revertError instanceof ContractFunctionRevertedError) { + const args = revertError.data?.args ?? []; + // eslint-disable-next-line no-console + console.error(args); + } + } return false; } }; diff --git a/packages/client/src/pages/Character.tsx b/packages/client/src/pages/Character.tsx index 0610ce7a2..295051028 100644 --- a/packages/client/src/pages/Character.tsx +++ b/packages/client/src/pages/Character.tsx @@ -112,8 +112,9 @@ export const CharacterPage = (): JSX.Element => { ...fetachedMetadata, agility: characterStats.agility.toString(), baseHitPoints: characterStats.baseHitPoints.toString(), - characterClass: characterStats.class, + entityClass: characterStats.class, characterId: characterId as Entity, + currentHp: characterStats.currentHp.toString(), experience: characterStats.experience.toString(), goldBalance: formatEther(goldBalance as bigint).toString(), intelligence: characterStats.intelligence.toString(), @@ -321,6 +322,7 @@ export const CharacterPage = (): JSX.Element => { diff --git a/packages/client/src/pages/CharacterCreation.tsx b/packages/client/src/pages/CharacterCreation.tsx index 50bb10d07..31d0404d1 100644 --- a/packages/client/src/pages/CharacterCreation.tsx +++ b/packages/client/src/pages/CharacterCreation.tsx @@ -323,7 +323,7 @@ export const CharacterCreation = (): JSX.Element => { useEffect(() => { if (character && rolledOnce) { - setCharacterClass(character.characterClass); + setCharacterClass(character.entityClass); } if (character?.locked) { @@ -392,8 +392,7 @@ export const CharacterCreation = (): JSX.Element => { {character.description} - Class:{' '} - {rolledOnce ? StatsClasses[character.characterClass] : 'None'} + Class: {rolledOnce ? StatsClasses[character.entityClass] : 'None'} @@ -542,11 +541,11 @@ export const CharacterCreation = (): JSX.Element => { {character && rolledOnce && - characterClass !== character.characterClass && ( + characterClass !== character.entityClass && ( Your current class is{' '} - {StatsClasses[character.characterClass]} + {StatsClasses[character.entityClass]} . Re-roll stats to change class. diff --git a/packages/client/src/pages/GameBoard.tsx b/packages/client/src/pages/GameBoard.tsx index a0371e80d..fa3a0106c 100644 --- a/packages/client/src/pages/GameBoard.tsx +++ b/packages/client/src/pages/GameBoard.tsx @@ -29,11 +29,13 @@ export const GameBoard = (): JSX.Element => { const { character } = useCharacter(); useEffect(() => { + if (!isSynced) return; + if (!externalWalletClient) { navigate(HOME_PATH); } - if (isSynced && !delegatorAddress) { + if (!delegatorAddress) { navigate(HOME_PATH); } diff --git a/packages/client/src/utils/types.ts b/packages/client/src/utils/types.ts index 96a4a165d..8c779b6de 100644 --- a/packages/client/src/utils/types.ts +++ b/packages/client/src/utils/types.ts @@ -27,7 +27,7 @@ export enum StatsClasses { Mage, } -export type Character = CharacterData & CharacterStats & Metadata; +export type Character = CharacterData & EntityStats & Metadata; export type CharacterData = { characterId: Entity; @@ -37,10 +37,11 @@ export type CharacterData = { tokenId: string; }; -export type CharacterStats = { +export type EntityStats = { agility: string; baseHitPoints: string; - characterClass: StatsClasses; + currentHp: string; + entityClass: StatsClasses; experience: string; intelligence: string; level: string; @@ -64,12 +65,11 @@ export type Metadata = { name: string; }; -export type Monster = Metadata & { - class: StatsClasses; - level: string; - mobId: string; - monsterId: Entity; -}; +export type Monster = Metadata & + EntityStats & { + mobId: string; + monsterId: Entity; + }; export type Weapon = WeaponStats & Metadata & { diff --git a/packages/contracts/.gitignore b/packages/contracts/.gitignore index 30f0ae176..cb8d9820b 100644 --- a/packages/contracts/.gitignore +++ b/packages/contracts/.gitignore @@ -1,6 +1,8 @@ out/* !out/IWorld.sol !out/CharacterSystem.sol +!out/CombatSystem.sol +!out/EquipmentSystem.sol !out/MapSystem.sol cache/ node_modules/ diff --git a/packages/contracts/items.json b/packages/contracts/items.json index 97ce8bd36..e1b46a43f 100644 --- a/packages/contracts/items.json +++ b/packages/contracts/items.json @@ -25,9 +25,7 @@ "name": "Rusty Sword", "stats": { "agiModifier": 4, - "classRestrictions": [ - 0 - ], + "classRestrictions": [0], "hitPointModifier": 6, "intModifier": 5, "maxDamage": 2, @@ -43,9 +41,7 @@ "name": "Cracked Dagger", "stats": { "agiModifier": 4, - "classRestrictions": [ - 1 - ], + "classRestrictions": [1], "hitPointModifier": 6, "intModifier": 5, "maxDamage": 2, @@ -61,9 +57,7 @@ "name": "Cobbled Wand", "stats": { "agiModifier": 4, - "classRestrictions": [ - 2 - ], + "classRestrictions": [2], "hitPointModifier": 6, "intModifier": 5, "maxDamage": 2, @@ -73,4 +67,4 @@ } } ] -} \ No newline at end of file +} diff --git a/packages/contracts/monsters.json b/packages/contracts/monsters.json index 1ea4a44f6..5549e1675 100644 --- a/packages/contracts/monsters.json +++ b/packages/contracts/monsters.json @@ -5,14 +5,14 @@ "name": "Cave Rat", "stats": { "agility": 1, - "armor": 2, + "armor": 1, "class": 0, - "experience": 3, - "hitPoints": 4, - "intelligence": 5, + "experience": 300, + "hitPoints": 10, + "intelligence": 1, "inventory": [1], "level": 1, - "strength": 7 + "strength": 1 } }, { @@ -20,14 +20,14 @@ "name": "Green Slime", "stats": { "agility": 1, - "armor": 2, + "armor": 1, "class": 1, - "experience": 3, - "hitPoints": 4, - "intelligence": 5, + "experience": 300, + "hitPoints": 10, + "intelligence": 1, "inventory": [1], "level": 1, - "strength": 7 + "strength": 1 } }, { @@ -35,14 +35,14 @@ "name": "Kobold Scout", "stats": { "agility": 1, - "armor": 2, + "armor": 1, "class": 2, - "experience": 3, - "hitPoints": 4, - "intelligence": 5, + "experience": 300, + "hitPoints": 10, + "intelligence": 1, "inventory": [1], "level": 1, - "strength": 7 + "strength": 1 } }, { @@ -52,7 +52,7 @@ "agility": 1, "armor": 2, "class": 2, - "experience": 3, + "experience": 300, "hitPoints": 4, "intelligence": 5, "inventory": [1], @@ -67,7 +67,7 @@ "agility": 1, "armor": 2, "class": 2, - "experience": 3, + "experience": 300, "hitPoints": 4, "intelligence": 5, "inventory": [1], @@ -82,7 +82,7 @@ "agility": 1, "armor": 2, "class": 2, - "experience": 3, + "experience": 300, "hitPoints": 4, "intelligence": 5, "inventory": [1], @@ -97,7 +97,7 @@ "agility": 1, "armor": 2, "class": 2, - "experience": 3, + "experience": 300, "hitPoints": 4, "intelligence": 5, "inventory": [1], @@ -112,7 +112,7 @@ "agility": 1, "armor": 2, "class": 2, - "experience": 3, + "experience": 300, "hitPoints": 4, "intelligence": 5, "inventory": [1], diff --git a/packages/contracts/out/CombatSystem.sol/CombatSystem.abi.json b/packages/contracts/out/CombatSystem.sol/CombatSystem.abi.json new file mode 100644 index 000000000..cabe79236 --- /dev/null +++ b/packages/contracts/out/CombatSystem.sol/CombatSystem.abi.json @@ -0,0 +1,580 @@ +[ + { + "type": "function", + "name": "_calculateMagicAttack", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "_calculatePhysicalAttack", + "inputs": [ + { + "name": "attackStats", + "type": "tuple", + "internalType": "struct PhysicalAttackStats", + "components": [ + { + "name": "bonusDamage", + "type": "int256", + "internalType": "int256" + }, + { + "name": "armorPenetration", + "type": "int256", + "internalType": "int256" + }, + { + "name": "attackModifierBonus", + "type": "int256", + "internalType": "int256" + }, + { + "name": "critChanceBonus", + "type": "int256", + "internalType": "int256" + }, + { + "name": "classRestrictions", + "type": "uint8[]", + "internalType": "uint8[]" + } + ] + }, + { + "name": "attackerId", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "defenderId", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "weaponId", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "randomNumber", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "damage", + "type": "int256", + "internalType": "int256" + }, + { + "name": "hit", + "type": "bool", + "internalType": "bool" + }, + { + "name": "crit", + "type": "bool", + "internalType": "bool" + } + ], + "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": "calculateGoldDrop", + "inputs": [ + { + "name": "mobLevel", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "randomNumber", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "dropAmount", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "calculateItemDrop", + "inputs": [ + { + "name": "randomNumber", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "itemId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "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" + } + ] + } +] \ No newline at end of file diff --git a/packages/contracts/out/CombatSystem.sol/CombatSystem.abi.json.d.ts b/packages/contracts/out/CombatSystem.sol/CombatSystem.abi.json.d.ts new file mode 100644 index 000000000..67f4c3196 --- /dev/null +++ b/packages/contracts/out/CombatSystem.sol/CombatSystem.abi.json.d.ts @@ -0,0 +1,580 @@ +declare const abi: [ + { + "type": "function", + "name": "_calculateMagicAttack", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "_calculatePhysicalAttack", + "inputs": [ + { + "name": "attackStats", + "type": "tuple", + "internalType": "struct PhysicalAttackStats", + "components": [ + { + "name": "bonusDamage", + "type": "int256", + "internalType": "int256" + }, + { + "name": "armorPenetration", + "type": "int256", + "internalType": "int256" + }, + { + "name": "attackModifierBonus", + "type": "int256", + "internalType": "int256" + }, + { + "name": "critChanceBonus", + "type": "int256", + "internalType": "int256" + }, + { + "name": "classRestrictions", + "type": "uint8[]", + "internalType": "uint8[]" + } + ] + }, + { + "name": "attackerId", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "defenderId", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "weaponId", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "randomNumber", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "damage", + "type": "int256", + "internalType": "int256" + }, + { + "name": "hit", + "type": "bool", + "internalType": "bool" + }, + { + "name": "crit", + "type": "bool", + "internalType": "bool" + } + ], + "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": "calculateGoldDrop", + "inputs": [ + { + "name": "mobLevel", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "randomNumber", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "dropAmount", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "calculateItemDrop", + "inputs": [ + { + "name": "randomNumber", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "itemId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "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" + } + ] + } +]; export default abi; diff --git a/packages/contracts/out/CombatSystem.sol/CombatSystem.json b/packages/contracts/out/CombatSystem.sol/CombatSystem.json new file mode 100644 index 000000000..ac9f53fe9 --- /dev/null +++ b/packages/contracts/out/CombatSystem.sol/CombatSystem.json @@ -0,0 +1 @@ +{"abi":[{"type":"function","name":"_calculateMagicAttack","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"_calculatePhysicalAttack","inputs":[{"name":"attackStats","type":"tuple","internalType":"struct PhysicalAttackStats","components":[{"name":"bonusDamage","type":"int256","internalType":"int256"},{"name":"armorPenetration","type":"int256","internalType":"int256"},{"name":"attackModifierBonus","type":"int256","internalType":"int256"},{"name":"critChanceBonus","type":"int256","internalType":"int256"},{"name":"classRestrictions","type":"uint8[]","internalType":"uint8[]"}]},{"name":"attackerId","type":"bytes32","internalType":"bytes32"},{"name":"defenderId","type":"bytes32","internalType":"bytes32"},{"name":"weaponId","type":"uint256","internalType":"uint256"},{"name":"randomNumber","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"damage","type":"int256","internalType":"int256"},{"name":"hit","type":"bool","internalType":"bool"},{"name":"crit","type":"bool","internalType":"bool"}],"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":"calculateGoldDrop","inputs":[{"name":"mobLevel","type":"uint256","internalType":"uint256"},{"name":"randomNumber","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"dropAmount","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"calculateItemDrop","inputs":[{"name":"randomNumber","type":"uint256","internalType":"uint256"},{"name":"itemId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"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":"0x608060405234801561001057600080fd5b50615461806100206000396000f3fe6080604052600436106100e85760003560e01c806398d239b11161008a578063bfea0b8511610059578063bfea0b8514610297578063c6ca743c146102a3578063e1af802c146102c3578063fc88ff63146102d857600080fd5b806398d239b114610205578063aaa417b71461021a578063b127ae901461023a578063b24678941461027757600080fd5b8063195e75c4116100c6578063195e75c41461016f57806332aeffdf1461019d57806345ec9354146101c05780634dda27e8146101d857600080fd5b806301ffc9a7146100ed578063119df25f14610122578063154510201461014f575b600080fd5b3480156100f957600080fd5b5061010d61010836600461422d565b6102f8565b60405190151581526020015b60405180910390f35b34801561012e57600080fd5b50610137610391565b6040516001600160a01b039091168152602001610119565b34801561015b57600080fd5b5061010d61016a3660046143cb565b6103a0565b34801561017b57600080fd5b5061018f61018a366004614450565b61067a565b604051908152602001610119565b3480156101a957600080fd5b5061010d6101b8366004614450565b600092915050565b3480156101cc57600080fd5b5036601f19013561018f565b3480156101e457600080fd5b506101f86101f3366004614472565b61069e565b60405161011991906144f1565b6102186102133660046145f7565b6106e8565b005b34801561022657600080fd5b5061018f610235366004614647565b6108b2565b34801561024657600080fd5b5061025a6102553660046146c6565b610b8c565b604080519384529115156020840152151590820152606001610119565b34801561028357600080fd5b5061010d6102923660046147f3565b610fc3565b34801561021857600080fd5b3480156102af57600080fd5b5061010d6102be366004614450565b611099565b3480156102cf57600080fd5b50610137611153565b3480156102e457600080fd5b506102186102f33660046145f7565b61115d565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee12700000000000000000000000000000000000000000000000000000000148061038b57507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b600061039b6113d6565b905090565b600160005b8551811015610505576103b6611153565b6001600160a01b031663fa1becc48783815181106103d6576103d6614843565b60200260200101516040518263ffffffff1660e01b81526004016103fc91815260200190565b602060405180830381865afa158015610419573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061043d9190614859565b61044a5760009150610505565b610452611153565b6001600160a01b031663f48a397287838151811061047257610472614843565b602002602001015186866040518463ffffffff1660e01b81526004016104af9392919092835261ffff918216602084015216604082015260600190565b602060405180830381865afa1580156104cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104f09190614859565b6104fd5760009150610505565b6001016103a5565b5080156106725760005b845181101561067057610520611153565b6001600160a01b031663fa1becc486838151811061054057610540614843565b60200260200101516040518263ffffffff1660e01b815260040161056691815260200190565b602060405180830381865afa158015610583573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105a79190614859565b156105b55760009150610670565b6105bd611153565b6001600160a01b031663f48a39728683815181106105dd576105dd614843565b602002602001015186866040518463ffffffff1660e01b815260040161061a9392919092835261ffff918216602084015216604082015260600190565b602060405180830381865afa158015610637573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061065b9190614859565b6106685760009150610670565b60010161050f565b505b949350505050565b600061068d8366038d7ea4c68000614891565b61069790836148be565b9392505050565b6106df6040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b61038b82611408565b60006106f384611408565b9050806020015160001415801561070c57506040810151155b61075d5760405162461bcd60e51b815260206004820181905260248201527f434f4d4241542053595354454d3a20494e56414c494420454e434f554e54455260448201526064015b60405180910390fd5b80608001518160600151106107b45760405162461bcd60e51b815260206004820181905260248201527f434f4d4241542053595354454d3a204558504952454420454e434f554e5445526044820152606401610754565b6107bc610391565b6001600160a01b03166107cd611153565b6001600160a01b0316634f10aabc856040518263ffffffff1660e01b81526004016107fa91815260200190565b602060405180830381865afa158015610817573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061083b91906148d2565b6001600160a01b031614801561085657506108568385611099565b6108a25760405162461bcd60e51b815260206004820152601c60248201527f434f4d4241542053595354454d3a204e4f4e2d434f4d424154414e54000000006044820152606401610754565b6108ac84836114f3565b50505050565b60006108c56108bf610391565b84610fc3565b6109115760405162461bcd60e51b815260206004820152601d60248201527f434f4d4241542053595354454d3a20494e56414c49442053454e4445520000006044820152606401610754565b6000806109378560008151811061092a5761092a614843565b602002602001015161158d565b9150915085600181111561094d5761094d61448b565b600103610a3557610960858584846103a0565b6109ac5760405162461bcd60e51b815260206004820152601a60248201527f434f4d4241542053595354454d3a20494e56414c4944205056450000000000006044820152606401610754565b60405142906109c59088908890889085906020016148ef565b60405160208183030381529060405280519060200120935060006040518060e001604052808960018111156109fc576109fc61448b565b81526020018381526020016000815260200160008152602001600f8152602001878152602001888152509050610a32858261163e565b50505b856001811115610a4757610a4761448b565b5060005b8451811015610af2576000801b610a7a868381518110610a6d57610a6d614843565b60200260200101516116ff565b14610ac75760405162461bcd60e51b815260206004820152601e60248201527f434f4d4241542053595354454d3a20454e54495459204f4343555049454400006044820152606401610754565b610aea858281518110610adc57610adc614843565b602002602001015185611790565b600101610a4b565b5060005b8551811015610b82576000801b610b18878381518110610a6d57610a6d614843565b14610b655760405162461bcd60e51b815260206004820152601e60248201527f434f4d4241542053595354454d3a20454e54495459204f4343555049454400006044820152606401610754565b610b7a868281518110610adc57610adc614843565b600101610af6565b5050509392505050565b600080600080610b9a611153565b6001600160a01b03166354f1f2db896040518263ffffffff1660e01b8152600401610bc791815260200190565b61010060405180830381865afa158015610be5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c099190614933565b90506000610c15611153565b6001600160a01b03166354f1f2db896040518263ffffffff1660e01b8152600401610c4291815260200190565b61010060405180830381865afa158015610c60573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c849190614933565b90506000610c90611153565b6001600160a01b031663810c1dc1896040518263ffffffff1660e01b8152600401610cbd91815260200190565b600060405180830381865afa158015610cda573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610d029190810190614a0a565b905060008260a001511315610fa8576040517f4dddf8370000000000000000000000000000000000000000000000000000000081526004810188905260009073__$227e4555c1f608352b26068e438454dd8b$__90634dddf83790602401600060405180830381865af4158015610d7d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610da59190810190614ac1565b9050610dfc81600081518110610dbd57610dbd614843565b602002602001015167ffffffffffffffff1682600181518110610de257610de2614843565b602002602001015167ffffffffffffffff168e8787611844565b90965094508515610f5f57620186a060008d602001518560600151610e219190614b66565b13610e2d576001610e41565b8c602001518460600151610e419190614b66565b610e4b9190614891565b8451620186a090610e5e90600290614b86565b8460a00151856080015185600281518110610e7b57610e7b614843565b602002602001015167ffffffffffffffff16610e9791906148be565b1115610ed657846080015184600281518110610eb557610eb5614843565b602002602001015167ffffffffffffffff16610ed191906148be565b610edc565b8460a001515b8f51610ee89190614b9a565b610ef29190614b9a565b610efc9190614bba565b610f069190614b66565b96508415610f5a57610f4c6040518060400160405280600581526020017f43524954210000000000000000000000000000000000000000000000000000008152506118d7565b610f57600288614bba565b96505b610fa2565b610f9d6040518060400160405280600581526020017f4d495353210000000000000000000000000000000000000000000000000000008152506118d7565b600096505b50610fb5565b6000955060009450600093505b505050955095509592505050565b6000805b825181101561109257610fd8611153565b6001600160a01b0316634f10aabc848381518110610ff857610ff8614843565b60200260200101516040518263ffffffff1660e01b815260040161101e91815260200190565b602060405180830381865afa15801561103b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061105f91906148d2565b6001600160a01b0316846001600160a01b0316036110805760019150611092565b8061108a81614c06565b915050610fc7565b5092915050565b6000806110a583611408565b905060005b8160c00151518110156110f6578160c0015181815181106110cd576110cd614843565b602002602001015185036110e457600192506110f6565b806110ee81614c06565b9150506110aa565b50816110925760005b8160a001515181101561114b578160a00151818151811061112257611122614843565b60200260200101518503611139576001925061114b565b8061114381614c06565b9150506110ff565b505092915050565b600061039b61194b565b61116e30611169610391565b611955565b600061117983611408565b905060005b82518110156111cc57600083828151811061119b5761119b614843565b602002602001015190506111c38582604001518360000151846020015185606001518b61196b565b5060010161117e565b50606081018051906111dd82614c06565b905250600080805b8360a001515181101561131c57600061121a8560a00151838151811061120d5761120d614843565b6020026020010151611a08565b905060008113611313578361122e81614c06565b945050846000015160018111156112475761124761448b565b60ff1660000361131357611259611153565b6001600160a01b031663fa1becc48660a00151848151811061127d5761127d614843565b60200260200101516040518263ffffffff1660e01b81526004016112a391815260200190565b602060405180830381865afa1580156112c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112e49190614859565b15611313576113138560a00151838151811061130257611302614843565b60200260200101516000801b611790565b506001016111e5565b5060005b8360c00151518110156113815760006113488560c00151838151811061120d5761120d614843565b905060008113611378578261135c81614c06565b9350506113788560c00151838151811061130257611302614843565b50600101611320565b508260c001515181148061139957508260a001515182145b806113ab575082608001518360600151145b156113ce574360408401526113c0858461163e565b6113ca8587611a9a565b5050505b505050505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c806114055750335b90565b6114496040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061147f5761147f614843565b6020908102919091010152600080806114d87f74625544000000000000000000000000436f6d626174456e636f756e74657200857e81050201202020200000000000000000000000000000000000000000000000611ccf565b9250925092506114e9838383611d9f565b9695505050505050565b611588826001848460405160200161150c929190614c20565b60408051601f198184030181529082905261152b939291602401614cf0565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb2aa60a400000000000000000000000000000000000000000000000000000000179052611e4c565b505050565b604080516001808252818301909252600091829182916020808301908036833701905050905083816000815181106115c7576115c7614843565b6020908102919091010152600080806116207f74625544000000000000000000000000506f736974696f6e0000000000000000857e04020002020000000000000000000000000000000000000000000000000000611ccf565b925092509250611631838383611efa565b9550955050505050915091565b600061166182600001518360200151846040015185606001518660800151611f1d565b905060006116778360a001518460c00151611f52565b9050600061168d8460a001518560c00151611f76565b604080516001808252818301909252919250600091906020808301908036833701905050905085816000815181106116c7576116c7614843565b60209081029190910101526113ce7f74625544000000000000000000000000436f6d626174456e636f756e7465720082868686611fb2565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061173857611738614843565b602090810291909101015260006106727f746255440000000000000000000000004d61746368456e74697479000000000083837e40020020200000000000000000000000000000000000000000000000000000612067565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106117c6576117c6614843565b6020026020010181815250506115887f746255440000000000000000000000004d61746368456e74697479000000000060001b8260008560405160200161180f91815260200190565b60408051601f198184030181529190527e40020020200000000000000000000000000000000000000000000000000000612124565b60008080620249f06118586103e88a6148be565b61186a8760200151896040015161219a565b6118749190614d18565b61187e9190614891565b90506000620186a085602001516103e88a61189991906148be565b6118a39190614d18565b6118ad9190614891565b9050808211935083156118cb5760026118c68284614b86565b101592505b50509550959350505050565b611948816040516024016118eb9190614d2b565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f41304fac000000000000000000000000000000000000000000000000000000001790526121c7565b50565b600061039b6121d0565b6119676119618361220f565b826122ac565b5050565b6000611976866122f8565b8051909150600381111561198c5761198c61448b565b60ff166001036119ff57600081602001518060200190518101906119b09190614d3e565b905060008060006119c4848a8a8a8a610b8c565b9194509250905060006119da620186a085614dd3565b6119e38a611a08565b6119ed9190614b66565b90506119f989826123ad565b50505050505b50505050505050565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110611a4157611a41614843565b602090810291909101015260006106727f74625544000000000000000000000000537461747300000000000000000000008360057ee1080020200120202020200000000000000000000000000000000000000000612067565b606080600080611aa986611408565b90506000806000611ab86141d7565b60005b8560c0015151811015611b2557611aee8660c001518281518110611ae157611ae1614843565b6020026020010151612461565b91508160e0015185611b009190614d18565b945060008260a001511315611b1d5783611b1981614c06565b9450505b600101611abb565b5060008060005b8760a0015151811015611bac57611b528860a001518281518110611ae157611ae1614843565b935060008460a0015113611ba45760c0840151611b6f9083614d18565b9150611b7f8460e001518d61067a565b611b899084614d18565b9250611ba48860a00151828151811061130257611302614843565b600101611b2c565b5060005b8760c0015151811015611cc0578760c001518181518110611bd357611bd3614843565b60200260200101519450611be685612461565b9350611bf28683614b86565b8460c001818151611c039190614d18565b905250611c0e611153565b6001600160a01b031663fda0ce5086611c278987614b86565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815260048101929092526024820152604401600060405180830381600087803b158015611c7d57600080fd5b505af1158015611c91573d6000803e3d6000fd5b50505050611c9f8585612509565b611cb88860c00151828151811061130257611302614843565b600101611bb0565b50505050505050509250925092565b6060600060606000611cdf6121d0565b9050306001600160a01b03821603611d0857611cfc8787876125b2565b93509350935050611d96565b6040517f419b58fd0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063419b58fd90611d51908a908a908a90600401614e1d565b600060405180830381865afa158015611d6e573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611cfc9190810190614eaa565b93509350939050565b611de06040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b611de9846126ba565b6080860181905260608601829052604086018390526020860184905285856001811115611e1857611e1861448b565b6001811115611e2957611e2961448b565b8152505050505050611e3b838361270a565b60c083015260a08201529392505050565b6060600080611e62611e5d85614f0d565b612759565b91509150816000801b03611ec8576040517ffdde54e20000000000000000000000000000000000000000000000000000000081527fffffffff00000000000000000000000000000000000000000000000000000000600035166004820152602401610754565b6020840180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1682179052610672828561281c565b60208301516022840151600091829160f091821c911c5b90969095509350505050565b60608585858585604051602001611f38959493929190614f59565b604051602081830303815290604052905095945050505050565b600061069783516020028351602002606081901b603883901b838301171792915050565b6060611f81836128f7565b611f8a836128f7565b604051602001611f9b929190614f94565b604051602081830303815290604052905092915050565b6000611fbc6121d0565b9050306001600160a01b03821603611fe057611fdb8686868686612907565b6113ce565b6040517f298314fb0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063298314fb9061202d9089908990899089908990600401614fc3565b600060405180830381600087803b15801561204757600080fd5b505af115801561205b573d6000803e3d6000fd5b50505050505050505050565b6000806120726121d0565b9050306001600160a01b038216036120985761209086868686612924565b915050610672565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d59906120e3908990899089908990600401615008565b602060405180830381865afa158015612100573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120909190615037565b600061212e6121d0565b9050306001600160a01b0382160361214d57611fdb868686868661295a565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae09061202d9089908990899089908990600401615050565b60008082126121b4576121ad8284614d18565b905061038b565b6121bd82615097565b6121ad90846150cf565b6119488161296f565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b03168061220a573391505090565b919050565b60408051600180825281830190925260009182919060208083019080368337019050509050826001600160a01b031660001b8160008151811061225457612254614843565b602090810291909101015260006106727f7462776f726c6400000000000000000053797374656d5265676973747279000083837e20010020000000000000000000000000000000000000000000000000000000612067565b6122b68282612990565b611967576122c3826129ee565b816040517fd787b7370000000000000000000000000000000000000000000000000000000081526004016107549291906150e2565b60408051808201909152600081526060602082015260408051600180825281830190925260009160208083019080368337019050509050828160008151811061234357612343614843565b60209081029190910101526000808061239c7f74625544000000000000000000000000416374696f6e73000000000000000000857e01010101000000000000000000000000000000000000000000000000000000611ccf565b9250925092506114e9838383612b2b565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106123e3576123e3614843565b6020026020010181815250506115887f746255440000000000000000000000005374617473000000000000000000000060001b8260058560405160200161242c91815260200190565b60408051601f198184030181529190527ee1080020200120202020200000000000000000000000000000000000000000612124565b6124696141d7565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061249f5761249f614843565b6020908102919091010152600080806124f87f7462554400000000000000000000000053746174730000000000000000000000857ee1080020200120202020200000000000000000000000000000000000000000611ccf565b9250925092506114e9838383612b88565b600061253b826000015183602001518460400151856060015186608001518760a001518860c001518960e00151612c00565b60408051600180825281830190925291925060009160609183919060208083019080368337019050509050858160008151811061257a5761257a614843565b60209081029190910101526113ce7f746255440000000000000000000000005374617473000000000000000000000082868686611fb2565b60606000606060006125c385612c3e565b90506125d0878783612c61565b935060006125dd86612c9a565b905080156126af576125ef8888612cd7565b935066ffffffffffffff841667ffffffffffffffff8111156126135761261361426f565b6040519080825280601f01601f19166020018201604052801561263d576020820181803683370190505b5092506020830160005b828160ff1610156126ac57600061265f8b8b84612cea565b9050600061267c888460ff166028026038011c64ffffffffff1690565b905061268b8260008387612d6a565b6126958185614d18565b9350505080806126a49061510d565b915050612647565b50505b505093509350939050565b60008060008060006126d0866000016020015190565b60f81c60018111156126e4576126e461448b565b602187015160418801516061890151608190990151929991989097509550909350915050565b6060806000603885901c64ffffffffff1661272e612729868484612e36565b612ec4565b935090508064ffffffffff606087901c160161274e612729868484612e36565b925050509250929050565b6040805160018082528183019092526000918291829160208083019080368337019050509050837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916816000815181106127b2576127b2614843565b60209081029190910101526000808061280b7f7462776f726c6400000000000000000046756e6374696f6e53656c6563746f72857e24020020040000000000000000000000000000000000000000000000000000611ccf565b925092509250611631838383612ed5565b6060600061282861194b565b90506001600160a01b03811630036128695760006128506128476113d6565b60008787612ee1565b9350905080612862576128628361301c565b505061038b565b6040517f3ae7af080000000000000000000000000000000000000000000000000000000081526001600160a01b03821690633ae7af08906128b0908790879060040161512c565b6000604051808303816000875af11580156128cf573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106729190810190615145565b6060816106978160206000613024565b61291d85858585856129188b613084565b613109565b5050505050565b60006129516129338686613442565b60ff858116601b0360080285901c1661294c8587613498565b6134d1565b95945050505050565b61291d85856129698487613498565b85613522565b80516a636f6e736f6c652e6c6f67602083016000808483855afa5050505050565b60006129de7f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617836137bd565b80610697575061069783836137bd565b606081601081901b6000612a0183613886565b9050827fffffffffffffffffffffffffffff000000000000000000000000000000000000831615612a5c57612a577fffffffffffffffffffffffffffff000000000000000000000000000000000000841661389d565b612a93565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b7fffffffffffffffffffffffffffffffff00000000000000000000000000000000831615612ac957612ac48361389d565b612b00565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b604051602001612b129392919061517a565b6040516020818303038152906040529350505050919050565b604080518082019091526000815260606020820152612b4984613941565b81906003811115612b5c57612b5c61448b565b90816003811115612b6f57612b6f61448b565b905250612b7c838361395d565b60208201529392505050565b612b906141d7565b612b9984613980565b60e0890181905260c0890182905260a089018390526080890184905260608901859052886020810160408201886002811115612bd757612bd761448b565b6002811115612be857612be861448b565b90529790975250505093909252509195945050505050565b60608888888888888888604051602001612c21989796959493929190615208565b604051602081830303815290604052905098975050505050505050565b60006008612c4e600260206150cf565b612c589190614891565b9190911c919050565b606081600003612c805750604080516020810190915260008152610697565b6000612c8c8585613442565b9050612951816000856139ee565b60006008600180612cad600260206150cf565b612cb791906150cf565b612cc191906150cf565b612ccb9190614891565b8260ff911c1692915050565b6000610697612ce68484613a11565b5490565b60008383604051602001612cff92919061524d565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b8215612df15760208310612d9457602083048401935060208381612d9057612d906148a8565b0692505b8215612df1576020839003600081841015612db75750600019600884021c612dc1565b50600019600882021c5b8554600886021b818451168219821617845250818411612de25750506108ac565b50600194909401939182900391015b5b60208210612e135783548152600190930192601f1990910190602001612df2565b81156108ac576000600019600884021c8251865482191691161782525050505050565b600081831180612e465750835182115b15612e83578383836040517f23230fa300000000000000000000000000000000000000000000000000000000815260040161075493929190615289565b60208401612e918482614d18565b90506000612e9f85856150cf565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b606060006106978360206000613a67565b600080611f1185613ad6565b60006060600080612ef186613aeb565b90925090506001600160a01b038216612f425785612f0e876129ee565b6040517ffbf10ce600000000000000000000000000000000000000000000000000000000815260040161075492919061512c565b80612f5157612f518689613b8f565b8615612fbd577dffffffffffffffffffffffffffff0000000000000000000000000000000086167f6e73000000000000000000000000000000000000000000000000000000000000176000612fa582613b99565b9050612fba82612fb58b84614d18565b613c2a565b50505b6000612fc98760101b90565b7fffffffffffffffffffffffffffff000000000000000000000000000000000000161461300157612ffc88888488613cde565b61300d565b61300d88888488613d56565b90999098509650505050505050565b805160208201fd5b825160609060006130358583614891565b9050604051925060208301601f19603f83860101166040528184526000602088015b84821015613078578051871b83529187019160019190910190602001613057565b50505050509392505050565b60007f8b9d8c8b908d9affffffffffffffffffab9e9d939a8d0000000000000000000082016130d357507e60030220202000000000000000000000000000000000000000000000000000919050565b61038b6131007f746273746f72650000000000000000005461626c65730000000000000000000084613db7565b602060006134d1565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff000000000000000000000000000000000000000000000000000000000000160361319557857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a98686868660405161318894939291906152ae565b60405180910390a26113ce565b60006131a087613dd3565b905060005b81518110156132795760008282815181106131c2576131c2614843565b602002602001015190506131ee6001826affffffffffffffffffffff1916613e5c90919063ffffffff16565b15613270576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c9061323d908c908c908c908c908c908c906004016152f8565b600060405180830381600087803b15801561325757600080fd5b505af115801561326b573d6000803e3d6000fd5b505050505b506001016131a5565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9878787876040516132b094939291906152ae565b60405180910390a260006132c48888613442565b905060006020870190506132dc826000895184613e7a565b60006132e785612c9a565b111561336b5760006132f98a8a613a11565b878155905060208601915060008060005b61331388612c9a565b8160ff161015613366576133288d8d83612cea565b92506133438a8260ff166028026038011c64ffffffffff1690565b91506133528360008488613e7a565b61335c8286614d18565b945060010161330a565b505050505b60005b835181101561205b57600084828151811061338b5761338b614843565b602002602001015190506133b76002826affffffffffffffffffffff1916613e5c90919063ffffffff16565b15613439576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90613406908e908e908e908e908e908e906004016152f8565b600060405180830381600087803b15801561342057600080fd5b505af1158015613434573d6000803e3d6000fd5b505050505b5060010161336e565b6000828260405160200161345792919061524d565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff168110156134c9576134bf60ff601b83900360080287901c1683614d18565b915060010161349d565b509392505050565b6000602082106134f7576020820484019350602082816134f3576134f36148a8565b0691505b508254600882021b6020829003808411156134c9576001850154600882021c82179150509392505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff00000000000000000000000000000000000000000000000000000000000016036135ac57837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be84848460405161359f93929190615351565b60405180910390a26108ac565b60006135b88585613442565b905060006135c586613dd3565b905060005b815181101561369a5760008282815181106135e7576135e7614843565b602002602001015190506136136004826affffffffffffffffffffff1916613e5c90919063ffffffff16565b15613691576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d9061365e908b908b908b908b90600401615384565b600060405180830381600087803b15801561367857600080fd5b505af115801561368c573d6000803e3d6000fd5b505050505b506001016135ca565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8686866040516136cf93929190615351565b60405180910390a26136ea828565ffffffffffff1685613f39565b60005b81518110156119ff57600082828151811061370a5761370a614843565b602002602001015190506137366008826affffffffffffffffffffff1916613e5c90919063ffffffff16565b156137b4576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba872190613781908b908b908b908b90600401615384565b600060405180830381600087803b15801561379b57600080fd5b505af11580156137af573d6000803e3d6000fd5b505050505b506001016136ed565b6040805160028082526060820183526000928392919060208301908036833701905050905083816000815181106137f6576137f6614843565b602002602001018181525050826001600160a01b031660001b8160018151811061382257613822614843565b6020908102919091010152600061387a7f7462776f726c640000000000000000005265736f75726365416363657373000083837e01010001000000000000000000000000000000000000000000000000000000612067565b90506129518160f81c90565b600061389460706010614d18565b9190911b919050565b606060005b6010811015613902577fffffffffffffffffffffffffffffffff000000000000000000000000000000008316600882021b7fff000000000000000000000000000000000000000000000000000000000000001615613902576001016138a2565b604080517fffffffffffffffffffffffffffffffff00000000000000000000000000000000851660208201528151603090910190915281815280610672565b602081015160009060f81c600381111561038b5761038b61448b565b60606000603884901c64ffffffffff1661295161397b858484612e36565b613f4f565b60008060008060008060008061399a896000016020015190565b60408a015160608b0151919950975060f81c60028111156139bd576139bd61448b565b60618a015160818b015160a18c015160c18d015160e1909d01519b9d9a9c939b929a91995097509195509350915050565b60405160208101601f19603f84840101166040528282526134c985858584612d6a565b60008282604051602001613a2692919061524d565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b60606000613a758560801c90565b90506fffffffffffffffffffffffffffffffff85166000858281613a9b57613a9b6148a8565b04905060405193506020840160208202810160405281855260005b82811015613078578451871c825293870193602090910190600101613ab6565b602081015160408201516000905b9050915091565b60408051600180825281830190925260009182918291602080830190803683370190505090508381600081518110613b2557613b25614843565b602090810291909101015260008080613b7e7f7462776f726c6400000000000000000053797374656d73000000000000000000857e150200140100000000000000000000000000000000000000000000000000006125b2565b925092509250611631838383613fcf565b6122b68282613fdb565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110613bd257613bd2614843565b602090810291909101015260006106727f7462776f726c6400000000000000000042616c616e636573000000000000000083837e20010020000000000000000000000000000000000000000000000000000000612924565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110613c6057613c60614843565b6020026020010181815250506115887f7462776f726c6400000000000000000042616c616e636573000000000000000060001b82600085604051602001613ca991815260200190565b60408051601f198184030181529190527e2001002000000000000000000000000000000000000000000000000000000061295a565b60006060836001600160a01b03166000613cf9858989614039565b604051613d0691906153bd565b60006040518083038185875af1925050503d8060008114613d43576040519150601f19603f3d011682016040523d82523d6000602084013e613d48565b606091505b509097909650945050505050565b60006060836001600160a01b0316613d6f848888614039565b604051613d7c91906153bd565b600060405180830381855af49150503d8060008114613d43576040519150601f19603f3d011682016040523d82523d6000602084013e613d48565b6040805160208101849052908101829052600090606001613457565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110613e0d57613e0d614843565b60209081029190910101526000613e457f746273746f726500000000000000000053746f7265486f6f6b730000000000008383614068565b9050610672613e578260008451612e36565b6140a2565b60008160ff1682613e6d8560581c90565b1660ff1614905092915050565b8215613ef45760208310613ea457602083048401935060208381613ea057613ea06148a8565b0692505b8215613ef45760208390036000600019600885021c1990506008850281811c91508351811c9050811987541682821617875550818411613ee55750506108ac565b50600194909401939182900391015b5b60208210613f165780518455600190930192601f1990910190602001613ef5565b81156108ac576000600019600884021c8554835182191691161785555050505050565b61158883838351613f4a8560200190565b613e7a565b60606000613f5d8360801c90565b90506fffffffffffffffffffffffffffffffff83168067ffffffffffffffff811115613f8b57613f8b61426f565b6040519080825280601f01601f191660200182016040528015613fb5576020820181803683370190505b50925060208301613fc78382846140b3565b505050919050565b600080611f11856140fe565b60006140297f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff000000000000000000000000000000008516178361411a565b806106975750610697838361411a565b6060838383604051602001614050939291906153d9565b60405160208183030381529060405290509392505050565b6060610672614078858585612cea565b600061409d856140888989612cd7565b9060ff166028026038011c64ffffffffff1690565b6139ee565b606060006106978360156000613a67565b5b602081106140d3578251825260209283019290910190601f19016140b4565b806000036140e057505050565b6000600019600883021c905080835116811985511617835250505050565b6020810151603482015160609190911c9060009060f81c613ae4565b60408051600280825260608201835260009283929190602083019080368337019050509050838160008151811061415357614153614843565b602002602001018181525050826001600160a01b031660001b8160018151811061417f5761417f614843565b6020908102919091010152600061387a7f7462776f726c640000000000000000005265736f75726365416363657373000083837e01010001000000000000000000000000000000000000000000000000000000612924565b6040518061010001604052806000815260200160008152602001600060028111156142045761420461448b565b815260200160008152602001600081526020016000815260200160008152602001600081525090565b60006020828403121561423f57600080fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461069757600080fd5b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff811182821017156142a8576142a861426f565b60405290565b60405160a0810167ffffffffffffffff811182821017156142a8576142a861426f565b604051610100810167ffffffffffffffff811182821017156142a8576142a861426f565b604051601f8201601f1916810167ffffffffffffffff8111828210171561431e5761431e61426f565b604052919050565b600067ffffffffffffffff8211156143405761434061426f565b5060051b60200190565b600082601f83011261435b57600080fd5b8135602061437061436b83614326565b6142f5565b8083825260208201915060208460051b87010193508684111561439257600080fd5b602086015b848110156143ae5780358352918301918301614397565b509695505050505050565b803561ffff8116811461220a57600080fd5b600080600080608085870312156143e157600080fd5b843567ffffffffffffffff808211156143f957600080fd5b6144058883890161434a565b9550602087013591508082111561441b57600080fd5b506144288782880161434a565b935050614437604086016143b9565b9150614445606086016143b9565b905092959194509250565b6000806040838503121561446357600080fd5b50508035926020909101359150565b60006020828403121561448457600080fd5b5035919050565b634e487b7160e01b600052602160045260246000fd5b600281106144b1576144b161448b565b9052565b60008151808452602080850194506020840160005b838110156144e6578151875295820195908201906001016144ca565b509495945050505050565b602081526145036020820183516144a1565b602082015160408201526040820151606082015260608201516080820152608082015160a0820152600060a083015160e060c08401526145476101008401826144b5565b905060c0840151601f198483030160e085015261295182826144b5565b600082601f83011261457557600080fd5b8135602061458561436b83614326565b82815260079290921b840181019181810190868411156145a457600080fd5b8286015b848110156143ae57608081890312156145c15760008081fd5b6145c9614285565b81358152848201358582015260408083013590820152606080830135908201528352918301916080016145a8565b60008060006060848603121561460c57600080fd5b8335925060208401359150604084013567ffffffffffffffff81111561463157600080fd5b61463d86828701614564565b9150509250925092565b60008060006060848603121561465c57600080fd5b83356002811061466b57600080fd5b9250602084013567ffffffffffffffff8082111561468857600080fd5b6146948783880161434a565b935060408601359150808211156146aa57600080fd5b5061463d8682870161434a565b60ff8116811461194857600080fd5b600080600080600060a086880312156146de57600080fd5b853567ffffffffffffffff808211156146f657600080fd5b9087019060a0828a03121561470a57600080fd5b6147126142ae565b8235815260208084013581830152604084013560408301526060840135606083015260808401358381111561474657600080fd5b8085019450508a601f85011261475b57600080fd5b8335925061476b61436b84614326565b83815260059390931b8401810192818101908c85111561478a57600080fd5b948201945b848610156147b15785356147a2816146b7565b8252948201949082019061478f565b608084810191909152929c918b01359b505060408a01359960608101359950909101359650945050505050565b6001600160a01b038116811461194857600080fd5b6000806040838503121561480657600080fd5b8235614811816147de565b9150602083013567ffffffffffffffff81111561482d57600080fd5b6148398582860161434a565b9150509250929050565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561486b57600080fd5b8151801515811461069757600080fd5b634e487b7160e01b600052601160045260246000fd5b808202811582820484141761038b5761038b61487b565b634e487b7160e01b600052601260045260246000fd5b6000826148cd576148cd6148a8565b500690565b6000602082840312156148e457600080fd5b8151610697816147de565b6148f981866144a1565b60806020820152600061490f60808301866144b5565b828103604084015261492181866144b5565b91505082606083015295945050505050565b6000610100828403121561494657600080fd5b61494e6142d1565b825181526020830151602082015260408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e08201528091505092915050565b600082601f8301126149b357600080fd5b815160206149c361436b83614326565b8083825260208201915060208460051b8701019350868411156149e557600080fd5b602086015b848110156143ae5780516149fd816146b7565b83529183019183016149ea565b600060208284031215614a1c57600080fd5b815167ffffffffffffffff80821115614a3457600080fd5b908301906101008286031215614a4957600080fd5b614a516142d1565b82518152602083015182811115614a6757600080fd5b614a73878286016149a2565b60208301525060408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e082015280935050505092915050565b60006020808385031215614ad457600080fd5b825167ffffffffffffffff80821115614aec57600080fd5b818501915085601f830112614b0057600080fd5b8151614b0e61436b82614326565b81815260059190911b83018401908481019088831115614b2d57600080fd5b938501935b82851015614b5a5784518481168114614b4b5760008081fd5b82529385019390850190614b32565b98975050505050505050565b81810360008312801583831316838312821617156110925761109261487b565b600082614b9557614b956148a8565b500490565b808201828112600083128015821682158216171561114b5761114b61487b565b808202600082127f800000000000000000000000000000000000000000000000000000000000000084141615614bf257614bf261487b565b818105831482151761038b5761038b61487b565b60006000198203614c1957614c1961487b565b5060010190565b60006040808301858452602060406020860152818651808452606093506060870191506020880160005b82811015614c8157815180518552858101518686015287810151888601528601518685015260809093019290840190600101614c4a565b50919998505050505050505050565b600381106119485761194861448b565b60005b83811015614cbb578181015183820152602001614ca3565b50506000910152565b60008151808452614cdc816020860160208601614ca0565b601f01601f19169290920160200192915050565b838152614cfc83614c90565b8260208201526060604082015260006129516060830184614cc4565b8082018082111561038b5761038b61487b565b6020815260006106976020830184614cc4565b600060208284031215614d5057600080fd5b815167ffffffffffffffff80821115614d6857600080fd5b9083019060a08286031215614d7c57600080fd5b614d846142ae565b82518152602083015160208201526040830151604082015260608301516060820152608083015182811115614db857600080fd5b614dc4878286016149a2565b60808301525095945050505050565b600082614de257614de26148a8565b60001983147f800000000000000000000000000000000000000000000000000000000000000083141615614e1857614e1861487b565b500590565b838152606060208201526000614e3660608301856144b5565b9050826040830152949350505050565b600082601f830112614e5757600080fd5b815167ffffffffffffffff811115614e7157614e7161426f565b614e846020601f19601f840116016142f5565b818152846020838601011115614e9957600080fd5b610672826020830160208701614ca0565b600080600060608486031215614ebf57600080fd5b835167ffffffffffffffff80821115614ed757600080fd5b614ee387838801614e46565b9450602086015193506040860151915080821115614f0057600080fd5b5061463d86828701614e46565b6000815160208301517fffffffff0000000000000000000000000000000000000000000000000000000080821693506004831015613fc75760049290920360031b82901b161692915050565b600060028710614f6b57614f6b61448b565b5060f89590951b8552600185019390935260218401919091526041830152606182015260810190565b60008351614fa6818460208801614ca0565b835190830190614fba818360208801614ca0565b01949350505050565b85815260a060208201526000614fdc60a08301876144b5565b8281036040840152614fee8187614cc4565b90508460608401528281036080840152614b5a8185614cc4565b84815260806020820152600061502160808301866144b5565b60ff949094166040830152506060015292915050565b60006020828403121561504957600080fd5b5051919050565b85815260a06020820152600061506960a08301876144b5565b60ff8616604084015282810360608401526150848186614cc4565b9150508260808301529695505050505050565b60007f800000000000000000000000000000000000000000000000000000000000000082036150c8576150c861487b565b5060000390565b8181038181111561038b5761038b61487b565b6040815260006150f56040830185614cc4565b90506001600160a01b03831660208301529392505050565b600060ff821660ff81036151235761512361487b565b60010192915050565b8281526040602082015260006106726040830184614cc4565b60006020828403121561515757600080fd5b815167ffffffffffffffff81111561516e57600080fd5b61067284828501614e46565b7fffff0000000000000000000000000000000000000000000000000000000000008416815260007f3a0000000000000000000000000000000000000000000000000000000000000080600284015284516151db816003860160208901614ca0565b8084019050816003820152845191506151fb826004830160208801614ca0565b0160040195945050505050565b88815287602082015261521a87614c90565b60f89690961b604087015260418601949094526061850192909252608184015260a183015260c182015260e10192915050565b8281526000602080830184516020860160005b8281101561527c57815184529284019290840190600101615260565b5091979650505050505050565b60608152600061529c6060830186614cc4565b60208301949094525060400152919050565b6080815260006152c160808301876144b5565b82810360208401526152d38187614cc4565b905084604084015282810360608401526152ed8185614cc4565b979650505050505050565b86815260c06020820152600061531160c08301886144b5565b82810360408401526153238188614cc4565b9050856060840152828103608084015261533d8186614cc4565b9150508260a0830152979650505050505050565b60608152600061536460608301866144b5565b65ffffffffffff8516602084015282810360408401526114e98185614cc4565b84815260806020820152600061539d60808301866144b5565b65ffffffffffff8516604084015282810360608401526152ed8185614cc4565b600082516153cf818460208701614ca0565b9190910192915050565b600084516153eb818460208901614ca0565b60609490941b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000169190930190815260148101919091526034019291505056fea2646970667358221220e0b06e430c1d6652950eb639c715b921ba1255c065dc37c90f90cd46f3c8c4c564736f6c63430008180033","sourceMap":"1142:11988:111:-:0;;;;;;;;;;;;;;;;;;;","linkReferences":{"src/libraries/LibChunks.sol":{"LibChunks":[{"start":3427,"length":20}]}}},"deployedBytecode":{"object":"0x6080604052600436106100e85760003560e01c806398d239b11161008a578063bfea0b8511610059578063bfea0b8514610297578063c6ca743c146102a3578063e1af802c146102c3578063fc88ff63146102d857600080fd5b806398d239b114610205578063aaa417b71461021a578063b127ae901461023a578063b24678941461027757600080fd5b8063195e75c4116100c6578063195e75c41461016f57806332aeffdf1461019d57806345ec9354146101c05780634dda27e8146101d857600080fd5b806301ffc9a7146100ed578063119df25f14610122578063154510201461014f575b600080fd5b3480156100f957600080fd5b5061010d61010836600461422d565b6102f8565b60405190151581526020015b60405180910390f35b34801561012e57600080fd5b50610137610391565b6040516001600160a01b039091168152602001610119565b34801561015b57600080fd5b5061010d61016a3660046143cb565b6103a0565b34801561017b57600080fd5b5061018f61018a366004614450565b61067a565b604051908152602001610119565b3480156101a957600080fd5b5061010d6101b8366004614450565b600092915050565b3480156101cc57600080fd5b5036601f19013561018f565b3480156101e457600080fd5b506101f86101f3366004614472565b61069e565b60405161011991906144f1565b6102186102133660046145f7565b6106e8565b005b34801561022657600080fd5b5061018f610235366004614647565b6108b2565b34801561024657600080fd5b5061025a6102553660046146c6565b610b8c565b604080519384529115156020840152151590820152606001610119565b34801561028357600080fd5b5061010d6102923660046147f3565b610fc3565b34801561021857600080fd5b3480156102af57600080fd5b5061010d6102be366004614450565b611099565b3480156102cf57600080fd5b50610137611153565b3480156102e457600080fd5b506102186102f33660046145f7565b61115d565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee12700000000000000000000000000000000000000000000000000000000148061038b57507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b600061039b6113d6565b905090565b600160005b8551811015610505576103b6611153565b6001600160a01b031663fa1becc48783815181106103d6576103d6614843565b60200260200101516040518263ffffffff1660e01b81526004016103fc91815260200190565b602060405180830381865afa158015610419573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061043d9190614859565b61044a5760009150610505565b610452611153565b6001600160a01b031663f48a397287838151811061047257610472614843565b602002602001015186866040518463ffffffff1660e01b81526004016104af9392919092835261ffff918216602084015216604082015260600190565b602060405180830381865afa1580156104cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104f09190614859565b6104fd5760009150610505565b6001016103a5565b5080156106725760005b845181101561067057610520611153565b6001600160a01b031663fa1becc486838151811061054057610540614843565b60200260200101516040518263ffffffff1660e01b815260040161056691815260200190565b602060405180830381865afa158015610583573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105a79190614859565b156105b55760009150610670565b6105bd611153565b6001600160a01b031663f48a39728683815181106105dd576105dd614843565b602002602001015186866040518463ffffffff1660e01b815260040161061a9392919092835261ffff918216602084015216604082015260600190565b602060405180830381865afa158015610637573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061065b9190614859565b6106685760009150610670565b60010161050f565b505b949350505050565b600061068d8366038d7ea4c68000614891565b61069790836148be565b9392505050565b6106df6040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b61038b82611408565b60006106f384611408565b9050806020015160001415801561070c57506040810151155b61075d5760405162461bcd60e51b815260206004820181905260248201527f434f4d4241542053595354454d3a20494e56414c494420454e434f554e54455260448201526064015b60405180910390fd5b80608001518160600151106107b45760405162461bcd60e51b815260206004820181905260248201527f434f4d4241542053595354454d3a204558504952454420454e434f554e5445526044820152606401610754565b6107bc610391565b6001600160a01b03166107cd611153565b6001600160a01b0316634f10aabc856040518263ffffffff1660e01b81526004016107fa91815260200190565b602060405180830381865afa158015610817573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061083b91906148d2565b6001600160a01b031614801561085657506108568385611099565b6108a25760405162461bcd60e51b815260206004820152601c60248201527f434f4d4241542053595354454d3a204e4f4e2d434f4d424154414e54000000006044820152606401610754565b6108ac84836114f3565b50505050565b60006108c56108bf610391565b84610fc3565b6109115760405162461bcd60e51b815260206004820152601d60248201527f434f4d4241542053595354454d3a20494e56414c49442053454e4445520000006044820152606401610754565b6000806109378560008151811061092a5761092a614843565b602002602001015161158d565b9150915085600181111561094d5761094d61448b565b600103610a3557610960858584846103a0565b6109ac5760405162461bcd60e51b815260206004820152601a60248201527f434f4d4241542053595354454d3a20494e56414c4944205056450000000000006044820152606401610754565b60405142906109c59088908890889085906020016148ef565b60405160208183030381529060405280519060200120935060006040518060e001604052808960018111156109fc576109fc61448b565b81526020018381526020016000815260200160008152602001600f8152602001878152602001888152509050610a32858261163e565b50505b856001811115610a4757610a4761448b565b5060005b8451811015610af2576000801b610a7a868381518110610a6d57610a6d614843565b60200260200101516116ff565b14610ac75760405162461bcd60e51b815260206004820152601e60248201527f434f4d4241542053595354454d3a20454e54495459204f4343555049454400006044820152606401610754565b610aea858281518110610adc57610adc614843565b602002602001015185611790565b600101610a4b565b5060005b8551811015610b82576000801b610b18878381518110610a6d57610a6d614843565b14610b655760405162461bcd60e51b815260206004820152601e60248201527f434f4d4241542053595354454d3a20454e54495459204f4343555049454400006044820152606401610754565b610b7a868281518110610adc57610adc614843565b600101610af6565b5050509392505050565b600080600080610b9a611153565b6001600160a01b03166354f1f2db896040518263ffffffff1660e01b8152600401610bc791815260200190565b61010060405180830381865afa158015610be5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c099190614933565b90506000610c15611153565b6001600160a01b03166354f1f2db896040518263ffffffff1660e01b8152600401610c4291815260200190565b61010060405180830381865afa158015610c60573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c849190614933565b90506000610c90611153565b6001600160a01b031663810c1dc1896040518263ffffffff1660e01b8152600401610cbd91815260200190565b600060405180830381865afa158015610cda573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610d029190810190614a0a565b905060008260a001511315610fa8576040517f4dddf8370000000000000000000000000000000000000000000000000000000081526004810188905260009073__$227e4555c1f608352b26068e438454dd8b$__90634dddf83790602401600060405180830381865af4158015610d7d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610da59190810190614ac1565b9050610dfc81600081518110610dbd57610dbd614843565b602002602001015167ffffffffffffffff1682600181518110610de257610de2614843565b602002602001015167ffffffffffffffff168e8787611844565b90965094508515610f5f57620186a060008d602001518560600151610e219190614b66565b13610e2d576001610e41565b8c602001518460600151610e419190614b66565b610e4b9190614891565b8451620186a090610e5e90600290614b86565b8460a00151856080015185600281518110610e7b57610e7b614843565b602002602001015167ffffffffffffffff16610e9791906148be565b1115610ed657846080015184600281518110610eb557610eb5614843565b602002602001015167ffffffffffffffff16610ed191906148be565b610edc565b8460a001515b8f51610ee89190614b9a565b610ef29190614b9a565b610efc9190614bba565b610f069190614b66565b96508415610f5a57610f4c6040518060400160405280600581526020017f43524954210000000000000000000000000000000000000000000000000000008152506118d7565b610f57600288614bba565b96505b610fa2565b610f9d6040518060400160405280600581526020017f4d495353210000000000000000000000000000000000000000000000000000008152506118d7565b600096505b50610fb5565b6000955060009450600093505b505050955095509592505050565b6000805b825181101561109257610fd8611153565b6001600160a01b0316634f10aabc848381518110610ff857610ff8614843565b60200260200101516040518263ffffffff1660e01b815260040161101e91815260200190565b602060405180830381865afa15801561103b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061105f91906148d2565b6001600160a01b0316846001600160a01b0316036110805760019150611092565b8061108a81614c06565b915050610fc7565b5092915050565b6000806110a583611408565b905060005b8160c00151518110156110f6578160c0015181815181106110cd576110cd614843565b602002602001015185036110e457600192506110f6565b806110ee81614c06565b9150506110aa565b50816110925760005b8160a001515181101561114b578160a00151818151811061112257611122614843565b60200260200101518503611139576001925061114b565b8061114381614c06565b9150506110ff565b505092915050565b600061039b61194b565b61116e30611169610391565b611955565b600061117983611408565b905060005b82518110156111cc57600083828151811061119b5761119b614843565b602002602001015190506111c38582604001518360000151846020015185606001518b61196b565b5060010161117e565b50606081018051906111dd82614c06565b905250600080805b8360a001515181101561131c57600061121a8560a00151838151811061120d5761120d614843565b6020026020010151611a08565b905060008113611313578361122e81614c06565b945050846000015160018111156112475761124761448b565b60ff1660000361131357611259611153565b6001600160a01b031663fa1becc48660a00151848151811061127d5761127d614843565b60200260200101516040518263ffffffff1660e01b81526004016112a391815260200190565b602060405180830381865afa1580156112c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112e49190614859565b15611313576113138560a00151838151811061130257611302614843565b60200260200101516000801b611790565b506001016111e5565b5060005b8360c00151518110156113815760006113488560c00151838151811061120d5761120d614843565b905060008113611378578261135c81614c06565b9350506113788560c00151838151811061130257611302614843565b50600101611320565b508260c001515181148061139957508260a001515182145b806113ab575082608001518360600151145b156113ce574360408401526113c0858461163e565b6113ca8587611a9a565b5050505b505050505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c806114055750335b90565b6114496040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061147f5761147f614843565b6020908102919091010152600080806114d87f74625544000000000000000000000000436f6d626174456e636f756e74657200857e81050201202020200000000000000000000000000000000000000000000000611ccf565b9250925092506114e9838383611d9f565b9695505050505050565b611588826001848460405160200161150c929190614c20565b60408051601f198184030181529082905261152b939291602401614cf0565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb2aa60a400000000000000000000000000000000000000000000000000000000179052611e4c565b505050565b604080516001808252818301909252600091829182916020808301908036833701905050905083816000815181106115c7576115c7614843565b6020908102919091010152600080806116207f74625544000000000000000000000000506f736974696f6e0000000000000000857e04020002020000000000000000000000000000000000000000000000000000611ccf565b925092509250611631838383611efa565b9550955050505050915091565b600061166182600001518360200151846040015185606001518660800151611f1d565b905060006116778360a001518460c00151611f52565b9050600061168d8460a001518560c00151611f76565b604080516001808252818301909252919250600091906020808301908036833701905050905085816000815181106116c7576116c7614843565b60209081029190910101526113ce7f74625544000000000000000000000000436f6d626174456e636f756e7465720082868686611fb2565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061173857611738614843565b602090810291909101015260006106727f746255440000000000000000000000004d61746368456e74697479000000000083837e40020020200000000000000000000000000000000000000000000000000000612067565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106117c6576117c6614843565b6020026020010181815250506115887f746255440000000000000000000000004d61746368456e74697479000000000060001b8260008560405160200161180f91815260200190565b60408051601f198184030181529190527e40020020200000000000000000000000000000000000000000000000000000612124565b60008080620249f06118586103e88a6148be565b61186a8760200151896040015161219a565b6118749190614d18565b61187e9190614891565b90506000620186a085602001516103e88a61189991906148be565b6118a39190614d18565b6118ad9190614891565b9050808211935083156118cb5760026118c68284614b86565b101592505b50509550959350505050565b611948816040516024016118eb9190614d2b565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f41304fac000000000000000000000000000000000000000000000000000000001790526121c7565b50565b600061039b6121d0565b6119676119618361220f565b826122ac565b5050565b6000611976866122f8565b8051909150600381111561198c5761198c61448b565b60ff166001036119ff57600081602001518060200190518101906119b09190614d3e565b905060008060006119c4848a8a8a8a610b8c565b9194509250905060006119da620186a085614dd3565b6119e38a611a08565b6119ed9190614b66565b90506119f989826123ad565b50505050505b50505050505050565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110611a4157611a41614843565b602090810291909101015260006106727f74625544000000000000000000000000537461747300000000000000000000008360057ee1080020200120202020200000000000000000000000000000000000000000612067565b606080600080611aa986611408565b90506000806000611ab86141d7565b60005b8560c0015151811015611b2557611aee8660c001518281518110611ae157611ae1614843565b6020026020010151612461565b91508160e0015185611b009190614d18565b945060008260a001511315611b1d5783611b1981614c06565b9450505b600101611abb565b5060008060005b8760a0015151811015611bac57611b528860a001518281518110611ae157611ae1614843565b935060008460a0015113611ba45760c0840151611b6f9083614d18565b9150611b7f8460e001518d61067a565b611b899084614d18565b9250611ba48860a00151828151811061130257611302614843565b600101611b2c565b5060005b8760c0015151811015611cc0578760c001518181518110611bd357611bd3614843565b60200260200101519450611be685612461565b9350611bf28683614b86565b8460c001818151611c039190614d18565b905250611c0e611153565b6001600160a01b031663fda0ce5086611c278987614b86565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815260048101929092526024820152604401600060405180830381600087803b158015611c7d57600080fd5b505af1158015611c91573d6000803e3d6000fd5b50505050611c9f8585612509565b611cb88860c00151828151811061130257611302614843565b600101611bb0565b50505050505050509250925092565b6060600060606000611cdf6121d0565b9050306001600160a01b03821603611d0857611cfc8787876125b2565b93509350935050611d96565b6040517f419b58fd0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063419b58fd90611d51908a908a908a90600401614e1d565b600060405180830381865afa158015611d6e573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611cfc9190810190614eaa565b93509350939050565b611de06040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b611de9846126ba565b6080860181905260608601829052604086018390526020860184905285856001811115611e1857611e1861448b565b6001811115611e2957611e2961448b565b8152505050505050611e3b838361270a565b60c083015260a08201529392505050565b6060600080611e62611e5d85614f0d565b612759565b91509150816000801b03611ec8576040517ffdde54e20000000000000000000000000000000000000000000000000000000081527fffffffff00000000000000000000000000000000000000000000000000000000600035166004820152602401610754565b6020840180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1682179052610672828561281c565b60208301516022840151600091829160f091821c911c5b90969095509350505050565b60608585858585604051602001611f38959493929190614f59565b604051602081830303815290604052905095945050505050565b600061069783516020028351602002606081901b603883901b838301171792915050565b6060611f81836128f7565b611f8a836128f7565b604051602001611f9b929190614f94565b604051602081830303815290604052905092915050565b6000611fbc6121d0565b9050306001600160a01b03821603611fe057611fdb8686868686612907565b6113ce565b6040517f298314fb0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063298314fb9061202d9089908990899089908990600401614fc3565b600060405180830381600087803b15801561204757600080fd5b505af115801561205b573d6000803e3d6000fd5b50505050505050505050565b6000806120726121d0565b9050306001600160a01b038216036120985761209086868686612924565b915050610672565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d59906120e3908990899089908990600401615008565b602060405180830381865afa158015612100573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120909190615037565b600061212e6121d0565b9050306001600160a01b0382160361214d57611fdb868686868661295a565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae09061202d9089908990899089908990600401615050565b60008082126121b4576121ad8284614d18565b905061038b565b6121bd82615097565b6121ad90846150cf565b6119488161296f565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b03168061220a573391505090565b919050565b60408051600180825281830190925260009182919060208083019080368337019050509050826001600160a01b031660001b8160008151811061225457612254614843565b602090810291909101015260006106727f7462776f726c6400000000000000000053797374656d5265676973747279000083837e20010020000000000000000000000000000000000000000000000000000000612067565b6122b68282612990565b611967576122c3826129ee565b816040517fd787b7370000000000000000000000000000000000000000000000000000000081526004016107549291906150e2565b60408051808201909152600081526060602082015260408051600180825281830190925260009160208083019080368337019050509050828160008151811061234357612343614843565b60209081029190910101526000808061239c7f74625544000000000000000000000000416374696f6e73000000000000000000857e01010101000000000000000000000000000000000000000000000000000000611ccf565b9250925092506114e9838383612b2b565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106123e3576123e3614843565b6020026020010181815250506115887f746255440000000000000000000000005374617473000000000000000000000060001b8260058560405160200161242c91815260200190565b60408051601f198184030181529190527ee1080020200120202020200000000000000000000000000000000000000000612124565b6124696141d7565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061249f5761249f614843565b6020908102919091010152600080806124f87f7462554400000000000000000000000053746174730000000000000000000000857ee1080020200120202020200000000000000000000000000000000000000000611ccf565b9250925092506114e9838383612b88565b600061253b826000015183602001518460400151856060015186608001518760a001518860c001518960e00151612c00565b60408051600180825281830190925291925060009160609183919060208083019080368337019050509050858160008151811061257a5761257a614843565b60209081029190910101526113ce7f746255440000000000000000000000005374617473000000000000000000000082868686611fb2565b60606000606060006125c385612c3e565b90506125d0878783612c61565b935060006125dd86612c9a565b905080156126af576125ef8888612cd7565b935066ffffffffffffff841667ffffffffffffffff8111156126135761261361426f565b6040519080825280601f01601f19166020018201604052801561263d576020820181803683370190505b5092506020830160005b828160ff1610156126ac57600061265f8b8b84612cea565b9050600061267c888460ff166028026038011c64ffffffffff1690565b905061268b8260008387612d6a565b6126958185614d18565b9350505080806126a49061510d565b915050612647565b50505b505093509350939050565b60008060008060006126d0866000016020015190565b60f81c60018111156126e4576126e461448b565b602187015160418801516061890151608190990151929991989097509550909350915050565b6060806000603885901c64ffffffffff1661272e612729868484612e36565b612ec4565b935090508064ffffffffff606087901c160161274e612729868484612e36565b925050509250929050565b6040805160018082528183019092526000918291829160208083019080368337019050509050837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916816000815181106127b2576127b2614843565b60209081029190910101526000808061280b7f7462776f726c6400000000000000000046756e6374696f6e53656c6563746f72857e24020020040000000000000000000000000000000000000000000000000000611ccf565b925092509250611631838383612ed5565b6060600061282861194b565b90506001600160a01b03811630036128695760006128506128476113d6565b60008787612ee1565b9350905080612862576128628361301c565b505061038b565b6040517f3ae7af080000000000000000000000000000000000000000000000000000000081526001600160a01b03821690633ae7af08906128b0908790879060040161512c565b6000604051808303816000875af11580156128cf573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106729190810190615145565b6060816106978160206000613024565b61291d85858585856129188b613084565b613109565b5050505050565b60006129516129338686613442565b60ff858116601b0360080285901c1661294c8587613498565b6134d1565b95945050505050565b61291d85856129698487613498565b85613522565b80516a636f6e736f6c652e6c6f67602083016000808483855afa5050505050565b60006129de7f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617836137bd565b80610697575061069783836137bd565b606081601081901b6000612a0183613886565b9050827fffffffffffffffffffffffffffff000000000000000000000000000000000000831615612a5c57612a577fffffffffffffffffffffffffffff000000000000000000000000000000000000841661389d565b612a93565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b7fffffffffffffffffffffffffffffffff00000000000000000000000000000000831615612ac957612ac48361389d565b612b00565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b604051602001612b129392919061517a565b6040516020818303038152906040529350505050919050565b604080518082019091526000815260606020820152612b4984613941565b81906003811115612b5c57612b5c61448b565b90816003811115612b6f57612b6f61448b565b905250612b7c838361395d565b60208201529392505050565b612b906141d7565b612b9984613980565b60e0890181905260c0890182905260a089018390526080890184905260608901859052886020810160408201886002811115612bd757612bd761448b565b6002811115612be857612be861448b565b90529790975250505093909252509195945050505050565b60608888888888888888604051602001612c21989796959493929190615208565b604051602081830303815290604052905098975050505050505050565b60006008612c4e600260206150cf565b612c589190614891565b9190911c919050565b606081600003612c805750604080516020810190915260008152610697565b6000612c8c8585613442565b9050612951816000856139ee565b60006008600180612cad600260206150cf565b612cb791906150cf565b612cc191906150cf565b612ccb9190614891565b8260ff911c1692915050565b6000610697612ce68484613a11565b5490565b60008383604051602001612cff92919061524d565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b8215612df15760208310612d9457602083048401935060208381612d9057612d906148a8565b0692505b8215612df1576020839003600081841015612db75750600019600884021c612dc1565b50600019600882021c5b8554600886021b818451168219821617845250818411612de25750506108ac565b50600194909401939182900391015b5b60208210612e135783548152600190930192601f1990910190602001612df2565b81156108ac576000600019600884021c8251865482191691161782525050505050565b600081831180612e465750835182115b15612e83578383836040517f23230fa300000000000000000000000000000000000000000000000000000000815260040161075493929190615289565b60208401612e918482614d18565b90506000612e9f85856150cf565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b606060006106978360206000613a67565b600080611f1185613ad6565b60006060600080612ef186613aeb565b90925090506001600160a01b038216612f425785612f0e876129ee565b6040517ffbf10ce600000000000000000000000000000000000000000000000000000000815260040161075492919061512c565b80612f5157612f518689613b8f565b8615612fbd577dffffffffffffffffffffffffffff0000000000000000000000000000000086167f6e73000000000000000000000000000000000000000000000000000000000000176000612fa582613b99565b9050612fba82612fb58b84614d18565b613c2a565b50505b6000612fc98760101b90565b7fffffffffffffffffffffffffffff000000000000000000000000000000000000161461300157612ffc88888488613cde565b61300d565b61300d88888488613d56565b90999098509650505050505050565b805160208201fd5b825160609060006130358583614891565b9050604051925060208301601f19603f83860101166040528184526000602088015b84821015613078578051871b83529187019160019190910190602001613057565b50505050509392505050565b60007f8b9d8c8b908d9affffffffffffffffffab9e9d939a8d0000000000000000000082016130d357507e60030220202000000000000000000000000000000000000000000000000000919050565b61038b6131007f746273746f72650000000000000000005461626c65730000000000000000000084613db7565b602060006134d1565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff000000000000000000000000000000000000000000000000000000000000160361319557857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a98686868660405161318894939291906152ae565b60405180910390a26113ce565b60006131a087613dd3565b905060005b81518110156132795760008282815181106131c2576131c2614843565b602002602001015190506131ee6001826affffffffffffffffffffff1916613e5c90919063ffffffff16565b15613270576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c9061323d908c908c908c908c908c908c906004016152f8565b600060405180830381600087803b15801561325757600080fd5b505af115801561326b573d6000803e3d6000fd5b505050505b506001016131a5565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9878787876040516132b094939291906152ae565b60405180910390a260006132c48888613442565b905060006020870190506132dc826000895184613e7a565b60006132e785612c9a565b111561336b5760006132f98a8a613a11565b878155905060208601915060008060005b61331388612c9a565b8160ff161015613366576133288d8d83612cea565b92506133438a8260ff166028026038011c64ffffffffff1690565b91506133528360008488613e7a565b61335c8286614d18565b945060010161330a565b505050505b60005b835181101561205b57600084828151811061338b5761338b614843565b602002602001015190506133b76002826affffffffffffffffffffff1916613e5c90919063ffffffff16565b15613439576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90613406908e908e908e908e908e908e906004016152f8565b600060405180830381600087803b15801561342057600080fd5b505af1158015613434573d6000803e3d6000fd5b505050505b5060010161336e565b6000828260405160200161345792919061524d565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff168110156134c9576134bf60ff601b83900360080287901c1683614d18565b915060010161349d565b509392505050565b6000602082106134f7576020820484019350602082816134f3576134f36148a8565b0691505b508254600882021b6020829003808411156134c9576001850154600882021c82179150509392505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff00000000000000000000000000000000000000000000000000000000000016036135ac57837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be84848460405161359f93929190615351565b60405180910390a26108ac565b60006135b88585613442565b905060006135c586613dd3565b905060005b815181101561369a5760008282815181106135e7576135e7614843565b602002602001015190506136136004826affffffffffffffffffffff1916613e5c90919063ffffffff16565b15613691576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d9061365e908b908b908b908b90600401615384565b600060405180830381600087803b15801561367857600080fd5b505af115801561368c573d6000803e3d6000fd5b505050505b506001016135ca565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8686866040516136cf93929190615351565b60405180910390a26136ea828565ffffffffffff1685613f39565b60005b81518110156119ff57600082828151811061370a5761370a614843565b602002602001015190506137366008826affffffffffffffffffffff1916613e5c90919063ffffffff16565b156137b4576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba872190613781908b908b908b908b90600401615384565b600060405180830381600087803b15801561379b57600080fd5b505af11580156137af573d6000803e3d6000fd5b505050505b506001016136ed565b6040805160028082526060820183526000928392919060208301908036833701905050905083816000815181106137f6576137f6614843565b602002602001018181525050826001600160a01b031660001b8160018151811061382257613822614843565b6020908102919091010152600061387a7f7462776f726c640000000000000000005265736f75726365416363657373000083837e01010001000000000000000000000000000000000000000000000000000000612067565b90506129518160f81c90565b600061389460706010614d18565b9190911b919050565b606060005b6010811015613902577fffffffffffffffffffffffffffffffff000000000000000000000000000000008316600882021b7fff000000000000000000000000000000000000000000000000000000000000001615613902576001016138a2565b604080517fffffffffffffffffffffffffffffffff00000000000000000000000000000000851660208201528151603090910190915281815280610672565b602081015160009060f81c600381111561038b5761038b61448b565b60606000603884901c64ffffffffff1661295161397b858484612e36565b613f4f565b60008060008060008060008061399a896000016020015190565b60408a015160608b0151919950975060f81c60028111156139bd576139bd61448b565b60618a015160818b015160a18c015160c18d015160e1909d01519b9d9a9c939b929a91995097509195509350915050565b60405160208101601f19603f84840101166040528282526134c985858584612d6a565b60008282604051602001613a2692919061524d565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b60606000613a758560801c90565b90506fffffffffffffffffffffffffffffffff85166000858281613a9b57613a9b6148a8565b04905060405193506020840160208202810160405281855260005b82811015613078578451871c825293870193602090910190600101613ab6565b602081015160408201516000905b9050915091565b60408051600180825281830190925260009182918291602080830190803683370190505090508381600081518110613b2557613b25614843565b602090810291909101015260008080613b7e7f7462776f726c6400000000000000000053797374656d73000000000000000000857e150200140100000000000000000000000000000000000000000000000000006125b2565b925092509250611631838383613fcf565b6122b68282613fdb565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110613bd257613bd2614843565b602090810291909101015260006106727f7462776f726c6400000000000000000042616c616e636573000000000000000083837e20010020000000000000000000000000000000000000000000000000000000612924565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110613c6057613c60614843565b6020026020010181815250506115887f7462776f726c6400000000000000000042616c616e636573000000000000000060001b82600085604051602001613ca991815260200190565b60408051601f198184030181529190527e2001002000000000000000000000000000000000000000000000000000000061295a565b60006060836001600160a01b03166000613cf9858989614039565b604051613d0691906153bd565b60006040518083038185875af1925050503d8060008114613d43576040519150601f19603f3d011682016040523d82523d6000602084013e613d48565b606091505b509097909650945050505050565b60006060836001600160a01b0316613d6f848888614039565b604051613d7c91906153bd565b600060405180830381855af49150503d8060008114613d43576040519150601f19603f3d011682016040523d82523d6000602084013e613d48565b6040805160208101849052908101829052600090606001613457565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110613e0d57613e0d614843565b60209081029190910101526000613e457f746273746f726500000000000000000053746f7265486f6f6b730000000000008383614068565b9050610672613e578260008451612e36565b6140a2565b60008160ff1682613e6d8560581c90565b1660ff1614905092915050565b8215613ef45760208310613ea457602083048401935060208381613ea057613ea06148a8565b0692505b8215613ef45760208390036000600019600885021c1990506008850281811c91508351811c9050811987541682821617875550818411613ee55750506108ac565b50600194909401939182900391015b5b60208210613f165780518455600190930192601f1990910190602001613ef5565b81156108ac576000600019600884021c8554835182191691161785555050505050565b61158883838351613f4a8560200190565b613e7a565b60606000613f5d8360801c90565b90506fffffffffffffffffffffffffffffffff83168067ffffffffffffffff811115613f8b57613f8b61426f565b6040519080825280601f01601f191660200182016040528015613fb5576020820181803683370190505b50925060208301613fc78382846140b3565b505050919050565b600080611f11856140fe565b60006140297f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff000000000000000000000000000000008516178361411a565b806106975750610697838361411a565b6060838383604051602001614050939291906153d9565b60405160208183030381529060405290509392505050565b6060610672614078858585612cea565b600061409d856140888989612cd7565b9060ff166028026038011c64ffffffffff1690565b6139ee565b606060006106978360156000613a67565b5b602081106140d3578251825260209283019290910190601f19016140b4565b806000036140e057505050565b6000600019600883021c905080835116811985511617835250505050565b6020810151603482015160609190911c9060009060f81c613ae4565b60408051600280825260608201835260009283929190602083019080368337019050509050838160008151811061415357614153614843565b602002602001018181525050826001600160a01b031660001b8160018151811061417f5761417f614843565b6020908102919091010152600061387a7f7462776f726c640000000000000000005265736f75726365416363657373000083837e01010001000000000000000000000000000000000000000000000000000000612924565b6040518061010001604052806000815260200160008152602001600060028111156142045761420461448b565b815260200160008152602001600081526020016000815260200160008152602001600081525090565b60006020828403121561423f57600080fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461069757600080fd5b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff811182821017156142a8576142a861426f565b60405290565b60405160a0810167ffffffffffffffff811182821017156142a8576142a861426f565b604051610100810167ffffffffffffffff811182821017156142a8576142a861426f565b604051601f8201601f1916810167ffffffffffffffff8111828210171561431e5761431e61426f565b604052919050565b600067ffffffffffffffff8211156143405761434061426f565b5060051b60200190565b600082601f83011261435b57600080fd5b8135602061437061436b83614326565b6142f5565b8083825260208201915060208460051b87010193508684111561439257600080fd5b602086015b848110156143ae5780358352918301918301614397565b509695505050505050565b803561ffff8116811461220a57600080fd5b600080600080608085870312156143e157600080fd5b843567ffffffffffffffff808211156143f957600080fd5b6144058883890161434a565b9550602087013591508082111561441b57600080fd5b506144288782880161434a565b935050614437604086016143b9565b9150614445606086016143b9565b905092959194509250565b6000806040838503121561446357600080fd5b50508035926020909101359150565b60006020828403121561448457600080fd5b5035919050565b634e487b7160e01b600052602160045260246000fd5b600281106144b1576144b161448b565b9052565b60008151808452602080850194506020840160005b838110156144e6578151875295820195908201906001016144ca565b509495945050505050565b602081526145036020820183516144a1565b602082015160408201526040820151606082015260608201516080820152608082015160a0820152600060a083015160e060c08401526145476101008401826144b5565b905060c0840151601f198483030160e085015261295182826144b5565b600082601f83011261457557600080fd5b8135602061458561436b83614326565b82815260079290921b840181019181810190868411156145a457600080fd5b8286015b848110156143ae57608081890312156145c15760008081fd5b6145c9614285565b81358152848201358582015260408083013590820152606080830135908201528352918301916080016145a8565b60008060006060848603121561460c57600080fd5b8335925060208401359150604084013567ffffffffffffffff81111561463157600080fd5b61463d86828701614564565b9150509250925092565b60008060006060848603121561465c57600080fd5b83356002811061466b57600080fd5b9250602084013567ffffffffffffffff8082111561468857600080fd5b6146948783880161434a565b935060408601359150808211156146aa57600080fd5b5061463d8682870161434a565b60ff8116811461194857600080fd5b600080600080600060a086880312156146de57600080fd5b853567ffffffffffffffff808211156146f657600080fd5b9087019060a0828a03121561470a57600080fd5b6147126142ae565b8235815260208084013581830152604084013560408301526060840135606083015260808401358381111561474657600080fd5b8085019450508a601f85011261475b57600080fd5b8335925061476b61436b84614326565b83815260059390931b8401810192818101908c85111561478a57600080fd5b948201945b848610156147b15785356147a2816146b7565b8252948201949082019061478f565b608084810191909152929c918b01359b505060408a01359960608101359950909101359650945050505050565b6001600160a01b038116811461194857600080fd5b6000806040838503121561480657600080fd5b8235614811816147de565b9150602083013567ffffffffffffffff81111561482d57600080fd5b6148398582860161434a565b9150509250929050565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561486b57600080fd5b8151801515811461069757600080fd5b634e487b7160e01b600052601160045260246000fd5b808202811582820484141761038b5761038b61487b565b634e487b7160e01b600052601260045260246000fd5b6000826148cd576148cd6148a8565b500690565b6000602082840312156148e457600080fd5b8151610697816147de565b6148f981866144a1565b60806020820152600061490f60808301866144b5565b828103604084015261492181866144b5565b91505082606083015295945050505050565b6000610100828403121561494657600080fd5b61494e6142d1565b825181526020830151602082015260408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e08201528091505092915050565b600082601f8301126149b357600080fd5b815160206149c361436b83614326565b8083825260208201915060208460051b8701019350868411156149e557600080fd5b602086015b848110156143ae5780516149fd816146b7565b83529183019183016149ea565b600060208284031215614a1c57600080fd5b815167ffffffffffffffff80821115614a3457600080fd5b908301906101008286031215614a4957600080fd5b614a516142d1565b82518152602083015182811115614a6757600080fd5b614a73878286016149a2565b60208301525060408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e082015280935050505092915050565b60006020808385031215614ad457600080fd5b825167ffffffffffffffff80821115614aec57600080fd5b818501915085601f830112614b0057600080fd5b8151614b0e61436b82614326565b81815260059190911b83018401908481019088831115614b2d57600080fd5b938501935b82851015614b5a5784518481168114614b4b5760008081fd5b82529385019390850190614b32565b98975050505050505050565b81810360008312801583831316838312821617156110925761109261487b565b600082614b9557614b956148a8565b500490565b808201828112600083128015821682158216171561114b5761114b61487b565b808202600082127f800000000000000000000000000000000000000000000000000000000000000084141615614bf257614bf261487b565b818105831482151761038b5761038b61487b565b60006000198203614c1957614c1961487b565b5060010190565b60006040808301858452602060406020860152818651808452606093506060870191506020880160005b82811015614c8157815180518552858101518686015287810151888601528601518685015260809093019290840190600101614c4a565b50919998505050505050505050565b600381106119485761194861448b565b60005b83811015614cbb578181015183820152602001614ca3565b50506000910152565b60008151808452614cdc816020860160208601614ca0565b601f01601f19169290920160200192915050565b838152614cfc83614c90565b8260208201526060604082015260006129516060830184614cc4565b8082018082111561038b5761038b61487b565b6020815260006106976020830184614cc4565b600060208284031215614d5057600080fd5b815167ffffffffffffffff80821115614d6857600080fd5b9083019060a08286031215614d7c57600080fd5b614d846142ae565b82518152602083015160208201526040830151604082015260608301516060820152608083015182811115614db857600080fd5b614dc4878286016149a2565b60808301525095945050505050565b600082614de257614de26148a8565b60001983147f800000000000000000000000000000000000000000000000000000000000000083141615614e1857614e1861487b565b500590565b838152606060208201526000614e3660608301856144b5565b9050826040830152949350505050565b600082601f830112614e5757600080fd5b815167ffffffffffffffff811115614e7157614e7161426f565b614e846020601f19601f840116016142f5565b818152846020838601011115614e9957600080fd5b610672826020830160208701614ca0565b600080600060608486031215614ebf57600080fd5b835167ffffffffffffffff80821115614ed757600080fd5b614ee387838801614e46565b9450602086015193506040860151915080821115614f0057600080fd5b5061463d86828701614e46565b6000815160208301517fffffffff0000000000000000000000000000000000000000000000000000000080821693506004831015613fc75760049290920360031b82901b161692915050565b600060028710614f6b57614f6b61448b565b5060f89590951b8552600185019390935260218401919091526041830152606182015260810190565b60008351614fa6818460208801614ca0565b835190830190614fba818360208801614ca0565b01949350505050565b85815260a060208201526000614fdc60a08301876144b5565b8281036040840152614fee8187614cc4565b90508460608401528281036080840152614b5a8185614cc4565b84815260806020820152600061502160808301866144b5565b60ff949094166040830152506060015292915050565b60006020828403121561504957600080fd5b5051919050565b85815260a06020820152600061506960a08301876144b5565b60ff8616604084015282810360608401526150848186614cc4565b9150508260808301529695505050505050565b60007f800000000000000000000000000000000000000000000000000000000000000082036150c8576150c861487b565b5060000390565b8181038181111561038b5761038b61487b565b6040815260006150f56040830185614cc4565b90506001600160a01b03831660208301529392505050565b600060ff821660ff81036151235761512361487b565b60010192915050565b8281526040602082015260006106726040830184614cc4565b60006020828403121561515757600080fd5b815167ffffffffffffffff81111561516e57600080fd5b61067284828501614e46565b7fffff0000000000000000000000000000000000000000000000000000000000008416815260007f3a0000000000000000000000000000000000000000000000000000000000000080600284015284516151db816003860160208901614ca0565b8084019050816003820152845191506151fb826004830160208801614ca0565b0160040195945050505050565b88815287602082015261521a87614c90565b60f89690961b604087015260418601949094526061850192909252608184015260a183015260c182015260e10192915050565b8281526000602080830184516020860160005b8281101561527c57815184529284019290840190600101615260565b5091979650505050505050565b60608152600061529c6060830186614cc4565b60208301949094525060400152919050565b6080815260006152c160808301876144b5565b82810360208401526152d38187614cc4565b905084604084015282810360608401526152ed8185614cc4565b979650505050505050565b86815260c06020820152600061531160c08301886144b5565b82810360408401526153238188614cc4565b9050856060840152828103608084015261533d8186614cc4565b9150508260a0830152979650505050505050565b60608152600061536460608301866144b5565b65ffffffffffff8516602084015282810360408401526114e98185614cc4565b84815260806020820152600061539d60808301866144b5565b65ffffffffffff8516604084015282810360608401526152ed8185614cc4565b600082516153cf818460208701614ca0565b9190910192915050565b600084516153eb818460208901614ca0565b60609490941b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000169190930190815260148101919091526034019291505056fea2646970667358221220e0b06e430c1d6652950eb639c715b921ba1255c065dc37c90f90cd46f3c8c4c564736f6c63430008180033","sourceMap":"1142:11988:111:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2331:198:52;;;;;;;;;;-1:-1:-1;2331:198:52;;;;;:::i;:::-;;:::i;:::-;;;516:14:113;;509:22;491:41;;479:2;464:18;2331:198:52;;;;;;;;1262:113;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;707:55:113;;;689:74;;677:2;662:18;1262:113:52;543:226:113;2725:846:111;;;;;;;;;;-1:-1:-1;2725:846:111;;;;;:::i;:::-;;:::i;12831:204::-;;;;;;;;;;-1:-1:-1;12831:204:111;;;;;:::i;:::-;;:::i;:::-;;;4243:25:113;;;4231:2;4216:18;12831:204:111;4097:177:113;13039:89:111;;;;;;;;;;-1:-1:-1;13039:89:111;;;;;:::i;:::-;13120:4;13039:89;;;;;1616:110:52;;;;;;;;;;-1:-1:-1;3800:14:52;-1:-1:-1;;3796:25:52;3783:39;1616:110;1262:113;9991:157:111;;;;;;;;;;-1:-1:-1;9991:157:111;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;3735:592::-;;;;;;:::i;:::-;;:::i;:::-;;1340:1381;;;;;;;;;;-1:-1:-1;1340:1381:111;;;;;:::i;:::-;;:::i;8234:1753::-;;;;;;;;;;-1:-1:-1;8234:1753:111;;;;;:::i;:::-;;:::i;:::-;;;;10875:25:113;;;10943:14;;10936:22;10931:2;10916:18;;10909:50;11002:14;10995:22;10975:18;;;10968:50;10863:2;10848:18;8234:1753:111;10687:337:113;4978:334:111;;;;;;;;;;-1:-1:-1;4978:334:111;;;;;:::i;:::-;;:::i;10882:42::-;;;;;;;;;4331:643;;;;;;;;;;-1:-1:-1;4331:643:111;;;;;:::i;:::-;;:::i;1942:98:52:-;;;;;;;;;;;;;:::i;5316:1885:111:-;;;;;;;;;;-1:-1:-1;5316:1885:111;;;;;:::i;:::-;;:::i;2331:198:52:-;2407:4;2426:54;;;2441:39;2426:54;;:98;;-1:-1:-1;2484:40:52;;;2499:25;2484:40;2426:98;2419:105;2331:198;-1:-1:-1;;2331:198:52:o;1262:113::-;1305:14;1334:36;:34;:36::i;:::-;1327:43;;1262:113;:::o;2725:846:111:-;2900:4;2862:16;2910:290;2930:9;:16;2926:1;:20;2910:290;;;2973:8;:6;:8::i;:::-;-1:-1:-1;;;;;2966:39:111;;3006:9;3016:1;3006:12;;;;;;;;:::i;:::-;;;;;;;2966:53;;;;;;;;;;;;;4243:25:113;;4231:2;4216:18;;4097:177;2966:53:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2961:113;;3045:5;3031:19;;3060:5;;2961:113;3093:8;:6;:8::i;:::-;-1:-1:-1;;;;;3086:33:111;;3120:9;3130:1;3120:12;;;;;;;;:::i;:::-;;;;;;;3134:1;3137;3086:53;;;;;;;;;;;;;;;;13118:25:113;;;13162:6;13204:15;;;13199:2;13184:18;;13177:43;13256:15;13251:2;13236:18;;13229:43;13106:2;13091:18;;12920:358;3086:53:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3081:113;;3165:5;3151:19;;3180:5;;3081:113;2948:3;;2910:290;;;;3209:11;3205:338;;;3235:9;3230:307;3250:9;:16;3246:1;:20;3230:307;;;3294:8;:6;:8::i;:::-;-1:-1:-1;;;;;3287:39:111;;3327:9;3337:1;3327:12;;;;;;;;:::i;:::-;;;;;;;3287:53;;;;;;;;;;;;;4243:25:113;;4231:2;4216:18;;4097:177;3287:53:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3283:118;;;3368:5;3354:19;;3385:5;;3283:118;3422:8;:6;:8::i;:::-;-1:-1:-1;;;;;3415:33:111;;3449:9;3459:1;3449:12;;;;;;;;:::i;:::-;;;;;;;3463:1;3466;3415:53;;;;;;;;;;;;;;;;13118:25:113;;;13162:6;13204:15;;;13199:2;13184:18;;13177:43;13256:15;13251:2;13236:18;;13229:43;13106:2;13091:18;;12920:358;3415:53:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3410:119;;3496:5;3482:19;;3513:5;;3410:119;3268:3;;3230:307;;;;3205:338;2725:846;;;;;;:::o;12831:204::-;12914:18;13004:25;13021:8;633:4:0;13004:25:111;:::i;:::-;12988:42;;:12;:42;:::i;:::-;12975:55;12831:204;-1:-1:-1;;;12831:204:111:o;9991:157::-;10055:41;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10055:41:111;10111:32;10131:11;10111:19;:32::i;3735:592::-;3837:40;3880:32;3900:11;3880:19;:32::i;:::-;3837:75;;3926:13;:19;;;3949:1;3926:24;;:50;;;;-1:-1:-1;3954:17:111;;;;:22;3926:50;3918:95;;;;-1:-1:-1;;;3918:95:111;;14153:2:113;3918:95:111;;;14135:21:113;;;14172:18;;;14165:30;14231:34;14211:18;;;14204:62;14283:18;;3918:95:111;;;;;;;;;4055:13;:22;;;4027:13;:25;;;:50;4019:95;;;;-1:-1:-1;;;4019:95:111;;14514:2:113;4019:95:111;;;14496:21:113;;;14533:18;;;14526:30;14592:34;14572:18;;;14565:62;14644:18;;4019:95:111;14312:356:113;4019:95:111;4185:12;:10;:12::i;:::-;-1:-1:-1;;;;;4135:62:111;4142:8;:6;:8::i;:::-;-1:-1:-1;;;;;4135:36:111;;4172:8;4135:46;;;;;;;;;;;;;4243:25:113;;4231:2;4216:18;;4097:177;4135:46:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;4135:62:111;;:102;;;;;4201:36;4215:8;4225:11;4201:13;:36::i;:::-;4120:161;;;;-1:-1:-1;;;4120:161:111;;15131:2:113;4120:161:111;;;15113:21:113;15170:2;15150:18;;;15143:30;15209;15189:18;;;15182:58;15257:18;;4120:161:111;14929:352:113;4120:161:111;4287:35;4301:11;4314:7;4287:13;:35::i;:::-;3831:496;3735:592;;;:::o;1340:1381::-;1478:19;1513:38;1527:12;:10;:12::i;:::-;1541:9;1513:13;:38::i;:::-;1505:80;;;;-1:-1:-1;;;1505:80:111;;15488:2:113;1505:80:111;;;15470:21:113;15527:2;15507:18;;;15500:30;15566:31;15546:18;;;15539:59;15615:18;;1505:80:111;15286:353:113;1505:80:111;1592:8;1602;1614:26;1627:9;1637:1;1627:12;;;;;;;;:::i;:::-;;;;;;;1614;:26::i;:::-;1591:49;;;;1659:13;1651:22;;;;;;;;:::i;:::-;1677:1;1651:27;1647:590;;1696:38;1707:9;1718;1729:1;1732;1696:10;:38::i;:::-;1688:77;;;;-1:-1:-1;;;1688:77:111;;15846:2:113;1688:77:111;;;15828:21:113;15885:2;15865:18;;;15858:30;15924:28;15904:18;;;15897:56;15970:18;;1688:77:111;15644:350:113;1688:77:111;1840:58;;1793:15;;1840:58;;1851:13;;1866:9;;1877;;1793:15;;1840:58;;;:::i;:::-;;;;;;;;;;;;;1830:69;;;;;;1816:83;;1907:37;1947:230;;;;;;;;1992:13;1947:230;;;;;;;;:::i;:::-;;;;;2022:9;1947:230;;;;2046:1;1947:230;;;;2070:1;1947:230;;;;403:2:0;1947:230:111;;;;2129:9;1947:230;;;;2159:9;1947:230;;;1907:270;;2186:44;2206:11;2219:10;2186:19;:44::i;:::-;1680:557;;1647:590;2252:13;2246:20;;;;;;;;:::i;:::-;:25;2285:9;2280:216;2300:9;:16;2296:1;:20;2280:216;;;2391:1;2383:10;;2339:40;2366:9;2376:1;2366:12;;;;;;;;:::i;:::-;;;;;;;2339:26;:40::i;:::-;:54;2331:97;;;;-1:-1:-1;;;2331:97:111;;17362:2:113;2331:97:111;;;17344:21:113;17401:2;17381:18;;;17374:30;17440:32;17420:18;;;17413:60;17490:18;;2331:97:111;17160:354:113;2331:97:111;2436:53;2463:9;2473:1;2463:12;;;;;;;;:::i;:::-;;;;;;;2477:11;2436:26;:53::i;:::-;2318:3;;2280:216;;;;2506:9;2501:216;2521:9;:16;2517:1;:20;2501:216;;;2612:1;2604:10;;2560:40;2587:9;2597:1;2587:12;;;;;;;;:::i;2560:40::-;:54;2552:97;;;;-1:-1:-1;;;2552:97:111;;17362:2:113;2552:97:111;;;17344:21:113;17401:2;17381:18;;;17374:30;17440:32;17420:18;;;17413:60;17490:18;;2552:97:111;17160:354:113;2552:97:111;2657:53;2684:9;2694:1;2684:12;;;;;;;;:::i;2657:53::-;2539:3;;2501:216;;;;1499:1222;;1340:1381;;;;;:::o;8234:1753::-;8428:13;8443:8;8453:9;8490:35;8535:8;:6;:8::i;:::-;-1:-1:-1;;;;;8528:42:111;;8571:10;8528:54;;;;;;;;;;;;;4243:25:113;;4231:2;4216:18;;4097:177;8528:54:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8490:92;;8607:35;8652:8;:6;:8::i;:::-;-1:-1:-1;;;;;8645:42:111;;8688:10;8645:54;;;;;;;;;;;;;4243:25:113;;4231:2;4216:18;;4097:177;8645:54:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8607:92;;8729:25;8764:8;:6;:8::i;:::-;-1:-1:-1;;;;;8757:35:111;;8793:8;8757:45;;;;;;;;;;;;;4243:25:113;;4231:2;4216:18;;4097:177;8757:45:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;8757:45:111;;;;;;;;;;;;:::i;:::-;8729:73;;8834:1;8813:8;:18;;;:22;8809:1174;;;8872:34;;;;;;;;4243:25:113;;;8845:24:111;;8872:9;;:20;;4216:18:113;;8872:34:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;8872:34:111;;;;;;;;;;;;:::i;:::-;8845:61;;8929:157;8979:8;8988:1;8979:11;;;;;;;;:::i;:::-;;;;;;;8971:20;;9009:8;9018:1;9009:11;;;;;;;;:::i;:::-;;;;;;;9001:20;;9031:11;9052:8;9070;8929:32;:157::i;:::-;8915:171;;-1:-1:-1;8915:171:111;-1:-1:-1;9095:812:111;;;;487:7:0;9554:1:111;9523:11;:28;;;9497:8;:22;;;9490:61;;;;:::i;:::-;:65;:183;;9671:1;9490:183;;;9615:11;:28;;;9589:8;:22;;;9582:61;;;;:::i;:::-;9474:232;;;;:::i;:::-;9383:25;;531:7:0;;9383:29:111;;9411:1;;9383:29;:::i;:::-;9238:6;:16;;;9218:6;:16;;;9203:8;9212:1;9203:11;;;;;;;;:::i;:::-;;;;;;;9195:20;;:39;;;;:::i;:::-;:59;;:152;;9331:6;:16;;;9316:8;9325:1;9316:11;;;;;;;;:::i;:::-;;;;;;;9308:20;;:39;;;;:::i;:::-;9195:152;;;9273:6;:16;;;9195:152;9135:23;;:226;;;;:::i;:::-;:278;;;;:::i;:::-;9134:306;;;;:::i;:::-;9133:585;;;;:::i;:::-;9114:604;;9732:4;9728:105;;;9750:21;;;;;;;;;;;;;;;;;;:12;:21::i;:::-;9792:30;573:1:0;9792:6:111;:30;:::i;:::-;9783:39;;9728:105;9095:812;;;9857:21;;;;;;;;;;;;;;;;;;:12;:21::i;:::-;9897:1;9888:10;;9095:812;8837:1076;8809:1174;;;9936:1;9927:10;;9951:5;9945:11;;9971:5;9964:12;;8809:1174;8464:1523;;;8234:1753;;;;;;;;;:::o;4978:334::-;5070:19;5102:9;5097:211;5117:12;:19;5113:1;:23;5097:211;;;5170:8;:6;:8::i;:::-;-1:-1:-1;;;;;5163:36:111;;5200:12;5213:1;5200:15;;;;;;;;:::i;:::-;;;;;;;5163:53;;;;;;;;;;;;;4243:25:113;;4231:2;4216:18;;4097:177;5163:53:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;5152:64:111;:7;-1:-1:-1;;;;;5152:64:111;;5148:125;;5245:4;5228:21;;5259:5;;5148:125;5290:3;;;;:::i;:::-;;;;5097:211;;;;4978:334;;;;:::o;4331:643::-;4414:19;4441:40;4484:32;4504:11;4484:19;:32::i;:::-;4441:75;;4527:9;4522:196;4542:13;:23;;;:30;4538:1;:34;4522:196;;;4600:13;:23;;;4624:1;4600:26;;;;;;;;:::i;:::-;;;;;;;4588:8;:38;4584:99;;4655:4;4638:21;;4669:5;;4584:99;4700:3;;;;:::i;:::-;;;;4522:196;;;;4728:14;4723:247;;4757:9;4752:212;4772:13;:23;;;:30;4768:1;:34;4752:212;;;4832:13;:23;;;4856:1;4832:26;;;;;;;;:::i;:::-;;;;;;;4820:8;:38;4816:105;;4889:4;4872:21;;4905:5;;4816:105;4942:3;;;;:::i;:::-;;;;4752:212;;;;4435:539;4331:643;;;;:::o;1942:98:52:-;1981:7;2003:32;:30;:32::i;5316:1885:111:-;5487:43;5510:4;5517:12;:10;:12::i;:::-;5487:14;:43::i;:::-;5562:40;5605:32;5625:11;5605:19;:32::i;:::-;5562:75;;5649:9;5644:314;5664:7;:14;5660:1;:18;5644:314;;;5693:27;5723:7;5731:1;5723:10;;;;;;;;:::i;:::-;;;;;;;5693:40;;5742:209;5766:11;5787:13;:22;;;5819:13;:30;;;5859:13;:30;;;5899:13;:22;;;5931:12;5742:14;:209::i;:::-;-1:-1:-1;5680:3:111;;5644:314;;;-1:-1:-1;5964:25:111;;;:27;;;;;;:::i;:::-;;;-1:-1:-1;5997:27:111;;;6063:438;6083:13;:23;;;:30;6079:1;:34;6063:438;;;6128:12;6143:46;6162:13;:23;;;6186:1;6162:26;;;;;;;;:::i;:::-;;;;;;;6143:18;:46::i;:::-;6128:61;;6210:1;6201:5;:10;6197:298;;6223:21;;;;:::i;:::-;;;;6264:13;:27;;;6258:34;;;;;;;;:::i;:::-;:39;;6296:1;6258:39;6254:233;;6322:8;:6;:8::i;:::-;-1:-1:-1;;;;;6315:39:111;;6355:13;:23;;;6379:1;6355:26;;;;;;;;:::i;:::-;;;;;;;6315:67;;;;;;;;;;;;;4243:25:113;;4231:2;4216:18;;4097:177;6315:67:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6311:166;;;6398:66;6425:13;:23;;;6449:1;6425:26;;;;;;;;:::i;:::-;;;;;;;6461:1;6453:10;;6398:26;:66::i;:::-;-1:-1:-1;6115:3:111;;6063:438;;;;6511:9;6506:272;6526:13;:23;;;:30;6522:1;:34;6506:272;;;6571:12;6586:46;6605:13;:23;;;6629:1;6605:26;;;;;;;;:::i;6586:46::-;6571:61;;6653:1;6644:5;:10;6640:132;;6666:21;;;;:::i;:::-;;;;6697:66;6724:13;:23;;;6748:1;6724:26;;;;;;;;:::i;6697:66::-;-1:-1:-1;6558:3:111;;6506:272;;;;6817:13;:23;;;:30;6794:19;:53;:116;;;;6880:13;:23;;;:30;6857:19;:53;6794:116;:177;;;;6949:13;:22;;;6920:13;:25;;;:51;6794:177;6783:414;;;7079:12;7059:17;;;:32;7099:47;7119:11;7059:13;7099:19;:47::i;:::-;7154:36;7164:11;7177:12;7154:9;:36::i;:::-;;;;6783:414;5414:1787;;;5316:1885;;;:::o;2992:383:52:-;3278:34;3282:14;3278:34;3265:48;3259:4;3255:59;;3325:45;;-1:-1:-1;3360:10:52;3325:45;2992:383;:::o;19860:418:80:-;19917:33;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19917:33:80;19987:16;;;20001:1;19987:16;;;;;;;;;19958:26;;19987:16;;;;;;;;;;;-1:-1:-1;19987:16:80;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:80:o;7205:225:111:-;7289:136;7349:11;7362:21;7396:11;7409:7;7385:32;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;7385:32:111;;;;;;;;;;7314:105;;;;;;;:::i;:::-;;;;-1:-1:-1;;7314:105:111;;;;;;;;;;;;;;;;;;;;7289:17;:136::i;:::-;;7205:225;;:::o;4891:393:91:-;4998:16;;;5012:1;4998:16;;;;;;;;;4943:8;;;;;;4998:16;;;;;;;;;;;-1:-1:-1;4998:16:91;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:80:-;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:80;;22726:16;;;;;;;;;;;;-1:-1:-1;22726:16:80;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;2732:297:86:-;2858:16;;;2872:1;2858:16;;;;;;;;;2802:19;;;;2858:16;;;;;;;;;;;;-1:-1:-1;2858:16:86;2829:45;;2895:13;2880:9;2890:1;2880:12;;;;;;;;:::i;:::-;;;;;;;;;;:28;2915:13;2931:64;1144:66;2968:9;2915:13;1273:66;2931:26;:64::i;3417:271::-;3529:16;;;3543:1;3529:16;;;;;;;;;3500:26;;3529:16;;;;;;;;;;;-1:-1:-1;3529:16:86;3500:45;;3566:13;3551:9;3561:1;3551:12;;;;;;;;:::i;:::-;;;;;;:28;;;;;3586:97;1144:66;1128:83;;3623:9;3634:1;3655:11;3637:31;;;;;;24559:19:113;;24603:2;24594:12;;24430:182;3637:31:86;;;;-1:-1:-1;;3637:31:86;;;;;;;;;1273:66;3586:26;:97::i;10152:726:111:-;10391:16;;;442:7:0;10520:17:111;10533:4;10520:10;:17;:::i;:::-;10449:67;10458:8;:24;;;10484:11;:31;;;10449:8;:67::i;:::-;:89;;;;:::i;:::-;10448:117;;;;:::i;:::-;10426:139;;10661:20;487:7:0;10708:8:111;:24;;;10700:4;10686:11;:18;;;;:::i;:::-;10685:47;;;;:::i;:::-;10684:68;;;;:::i;:::-;10661:91;;10786:12;10772:11;:26;10758:40;;10808:11;10804:70;;;10866:1;10836:26;10850:12;10836:11;:26;:::i;:::-;:31;;10829:38;;10804:70;10420:458;;10152:726;;;;;;;;:::o;6598:121:73:-;6653:59;6708:2;6669:42;;;;;;;;:::i;:::-;;;;-1:-1:-1;;6669:42:73;;;;;;;;;;;;;;;;;;;;6653:15;:59::i;:::-;6598:121;:::o;4048:97:52:-;4089:7;4111:29;:27;:29::i;2631:154:112:-;2707:75;2738:35;2757:15;2738:18;:35::i;:::-;2775:6;2707:30;:75::i;:::-;2631:154;;:::o;7434:796:111:-;7643:29;7675:21;7687:8;7675:11;:21::i;:::-;7755;;7643:53;;-1:-1:-1;7749:28:111;;;;;;;;:::i;:::-;:33;;7781:1;7749:33;7745:481;;7792:38;7844:10;:22;;;7833:57;;;;;;;;;;;;:::i;:::-;7792:98;;7899:13;7914:8;7924:9;7937:133;7971:11;7992:10;8012;8032:8;8050:12;7937:24;:133::i;:::-;7898:172;;-1:-1:-1;7898:172:111;-1:-1:-1;7898:172:111;-1:-1:-1;8078:16:111;8137:32;531:7:0;7898:172:111;8137:32;:::i;:::-;8097:30;8116:10;8097:18;:30::i;:::-;:73;;;;:::i;:::-;8078:92;;8178:41;8197:10;8209:9;8178:18;:41::i;:::-;7784:442;;;;;7745:481;7614:616;7434:796;;;;;;:::o;9492:299:95:-;9608:16;;;9622:1;9608:16;;;;;;;;;9555;;;;9608;;;;;;;;;;;;-1:-1:-1;9608:16:95;9579:45;;9645:8;9630:9;9640:1;9630:12;;;;;;;;:::i;:::-;;;;;;;;;;:23;9660:13;9676:64;1310:66;9713:9;9724:1;1439:66;9676:26;:64::i;10928:1899:111:-;11020:24;11046;11072:18;11098:40;11141:32;11161:11;11141:19;:32::i;:::-;11098:75;;11222:32;11260:23;11289:20;11315:26;;:::i;:::-;11352:9;11347:244;11367:13;:23;;;:30;11363:1;:34;11347:244;;;11424:37;11434:13;:23;;;11458:1;11434:26;;;;;;;;:::i;:::-;;;;;;;11424:9;:37::i;:::-;11412:49;;11497:9;:15;;;11469:43;;;;;:::i;:::-;;;11546:1;11524:9;:19;;;:23;11520:65;;;11559:17;;;;:::i;:::-;;;;11520:65;11399:3;;11347:244;;;;11778:16;11800:15;11826:9;11821:362;11841:13;:23;;;:30;11837:1;:34;11821:362;;;11898:37;11908:13;:23;;;11932:1;11908:26;;;;;;;;:::i;11898:37::-;11886:49;;11977:1;11947:9;:19;;;:32;11943:234;;12002:20;;;;11991:31;;;;:::i;:::-;;;12044:48;12062:9;:15;;;12079:12;12044:17;:48::i;:::-;12032:60;;;;:::i;:::-;;;12102:66;12129:13;:23;;;12153:1;12129:26;;;;;;;;:::i;12102:66::-;11873:3;;11821:362;;;;12418:9;12413:410;12433:13;:23;;;:30;12429:1;:34;12413:410;;;12493:13;:23;;;12517:1;12493:26;;;;;;;;:::i;:::-;;;;;;;12478:41;;12539:23;12549:12;12539:9;:23::i;:::-;12527:35;-1:-1:-1;12594:25:111;12604:15;12594:7;:25;:::i;:::-;12570:9;:20;;:49;;;;;;;:::i;:::-;;;-1:-1:-1;12634:8:111;:6;:8::i;:::-;-1:-1:-1;;;;;12627:29:111;;12657:12;12672:26;12683:15;12672:8;:26;:::i;:::-;12627:73;;;;;;;;;;;;;26308:25:113;;;;26349:18;;;26342:34;26281:18;;12627:73:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12708:34;12718:12;12732:9;12708;:34::i;:::-;12750:66;12777:13;:23;;;12801:1;12777:26;;;;;;;;:::i;12750:66::-;12465:3;;12413:410;;;;11092:1735;;;;;;;10928:1899;;;;;:::o;15347:431:25:-;15477:12;15491:14;15507:12;15527:21;15551:17;:15;:17::i;:::-;15527:41;-1:-1:-1;15603:4:25;-1:-1:-1;;;;;15578:30:25;;;15574:200;;15625:51;15645:7;15654:8;15664:11;15625:19;:51::i;:::-;15618:58;;;;;;;;;15574:200;15704:63;;;;;-1:-1:-1;;;;;15704:31:25;;;;;:63;;15736:7;;15745:8;;15755:11;;15704:63;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;15704:63:25;;;;;;;;;;;;:::i;15347:431::-;;;;;;;;:::o;25028:389:80:-;25168:33;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25168:33:80;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:80:o;3318:662:40:-;3373:23;3516:19;;3570:39;3592:16;3599:8;3592:16;:::i;:::-;3570:21;:39::i;:::-;3515:94;;;;3690:8;3703:1;3672:32;;;3668:97;;3713:52;;;;;3757:7;;;;3713:52;;;28667:98:113;28640:18;;3713:52:40;28523:248:113;3668:97:40;1759:4:2;1744:28;;1738:35;;1847:9;1836:21;1903:20;;1961:43;;3883:92:40;3900:8;3936;3883:4;:92::i;7036:160:91:-;2756:4:2;2742:27;;2736:34;2742:27;;;2736:34;7131:8:91;;;;6793:33;;;;;6839;7166:25;7157:34;;;;-1:-1:-1;7036:160:91;-1:-1:-1;;;;7036:160:91:o;26096:263:80:-;26261:12;26305:13;26320:5;26327:3;26332:11;26345:8;26288:66;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;26281:73;;26096:263;;;;;;;:::o;26550:354::-;26664:30;26825:68;26848:9;:16;26867:2;26848:21;26871:9;:16;26890:2;26871:21;2776:23:3;2761:39;;;975:16;2694:39;;;2662:5;;;2675:59;2742;2518:351;;;;;27069:216:80;27171:12;27215:31;27235:9;27215:18;:31::i;:::-;27248;27268:9;27248:18;:31::i;:::-;27198:82;;;;;;;;;:::i;:::-;;;;;;;;;;;;;27191:89;;27069:216;;;;:::o;6458:480:25:-;6645:21;6669:17;:15;:17::i;:::-;6645:41;-1:-1:-1;6721:4:25;-1:-1:-1;;;;;6696:30:25;;;6692:242;;6736:79;6756:7;6765:8;6775:10;6787:14;6803:11;6736:19;:79::i;:::-;6692:242;;;6836:91;;;;;-1:-1:-1;;;;;6836:31:25;;;;;:91;;6868:7;;6877:8;;6887:10;;6899:14;;6915:11;;6836:91;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6639:299;6458:480;;;;;:::o;17775:457::-;17932:7;17947:21;17971:17;:15;:17::i;:::-;17947:41;-1:-1:-1;18023:4:25;-1:-1:-1;;;;;17998:30:25;;;17994:234;;18045:68;18070:7;18079:8;18089:10;18101:11;18045:24;:68::i;:::-;18038:75;;;;;17994:234;18141:80;;;;;-1:-1:-1;;;;;18141:36:25;;;;;:80;;18178:7;;18187:8;;18197:10;;18209:11;;18141:80;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;10761:455::-;10933:21;10957:17;:15;:17::i;:::-;10933:41;-1:-1:-1;11009:4:25;-1:-1:-1;;;;;10984:30:25;;;10980:232;;11024:74;11049:7;11058:8;11068:10;11080:4;11086:11;11024:24;:74::i;10980:232::-;11119:86;;;;;-1:-1:-1;;;;;11119:36:25;;;;;:86;;11156:7;;11165:8;;11175:10;;11187:4;;11193:11;;11119:86;;;:::i;1035:205:110:-;1094:12;1128:1;1122:2;:7;1118:116;;1152:16;1165:2;1152;:16;:::i;:::-;1145:23;;;;1118:116;1219:3;1220:2;1219:3;:::i;:::-;1206:17;;:2;:17;:::i;868:133:73:-;939:55;986:7;965:19;939:55::i;1836:227:25:-;1066:42;1925:22;1886:7;;-1:-1:-1;;;;;1925:22:25;;1953:106;;2001:10;1994:17;;;1836:227;:::o;1953:106::-;2039:13;1836:227;-1:-1:-1;1836:227:25:o;3430:314:66:-;3538:16;;;3552:1;3538:16;;;;;;;;;3482:19;;;;3538:16;;;;;;;;;;;;-1:-1:-1;3538:16:66;3509:45;;3599:6;-1:-1:-1;;;;;3583:24:66;3575:33;;3560:9;3570:1;3560:12;;;;;;;;:::i;:::-;;;;;;;;;;:48;3615:13;3631:64;1169:66;3668:9;3615:13;1298:66;3631:26;:64::i;1698:281:39:-;1860:29;1870:10;1882:6;1860:9;:29::i;:::-;1855:120;;1938:21;:10;:19;:21::i;:::-;1961:6;1906:62;;;;;;;;;;;;:::i;9017:404:76:-;-1:-1:-1;;;;;;;;;;;;;;;;;9133:16:76;;;9147:1;9133:16;;;;;;;;;9104:26;;9133:16;;;;;;;;;;;-1:-1:-1;9133:16:76;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;10177:254:95:-;10279:16;;;10293:1;10279:16;;;;;;;;;10250:26;;10279:16;;;;;;;;;;;-1:-1:-1;10279:16:95;10250:45;;10316:8;10301:9;10311:1;10301:12;;;;;;;;:::i;:::-;;;;;;:23;;;;;10331:95;1310:66;1294:83;;10368:9;10379:1;10400:9;10382:29;;;;;;24559:19:113;;24603:2;24594:12;;24430:182;10382:29:95;;;;-1:-1:-1;;10382:29:95;;;;;;;;;1439:66;10331:26;:95::i;13270:402::-;13324:23;;:::i;:::-;13384:16;;;13398:1;13384:16;;;;;;;;;13355:26;;13384:16;;;;;;;;;;;-1:-1:-1;13384:16:95;13355:45;;13421:8;13406:9;13416:1;13406:12;;;;;;;;:::i;:::-;;;;;;;;;;:23;13437:24;;;13524:80;1310:66;13569:9;1439:66;13524:21;:80::i;:::-;13436:168;;;;;;13617:50;13624:11;13637:15;13654:12;13617:6;:50::i;15666:552::-;15737:24;15764:207;15784:6;:15;;;15807:6;:14;;;15829:6;:12;;;15849:6;:19;;;15876:6;:20;;;15904:6;:16;;;15928:6;:17;;;15953:6;:12;;;15764;:207::i;:::-;16075:16;;;16089:1;16075:16;;;;;;;;;15737:234;;-1:-1:-1;15978:30:95;;16014:25;;15978:30;;16075:16;;;;;;;;;;;;-1:-1:-1;16075:16:95;16046:45;;16112:8;16097:9;16107:1;16097:12;;;;;;;;:::i;:::-;;;;;;;;;;:23;16127:86;1310:66;16159:9;16170:11;16183:15;16200:12;16127:21;:86::i;32759:1315:24:-;32889:23;32914:29;32945:24;33011:20;33034:30;:11;:28;:30::i;:::-;33011:53;;33125:65;33158:7;33167:8;33177:12;33125:32;:65::i;:::-;33112:78;;33254:24;33281:30;:11;:28;:30::i;:::-;33254:57;-1:-1:-1;33321:20:24;;33317:753;;33414:66;33462:7;33471:8;33414:47;:66::i;:::-;33397:83;-1:-1:-1;6445:61:3;;;33532:33:24;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;33532:33:24;-1:-1:-1;33518:47:24;-1:-1:-1;894:4:19;884:15;;33573:21:24;33637:427;33655:16;33651:1;:20;;;33637:427;;;33688:27;33718:63;33760:7;33769:8;33779:1;33718:41;:63::i;:::-;33688:93;-1:-1:-1;33791:14:24;33808:25;:14;33831:1;7070:16:3;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;33808:25:24;33791:42;;33843:110;33874:19;33903:1;33914:6;33937:13;33843:12;:110::i;:::-;34032:23;34049:6;34032:23;;:::i;:::-;;;33678:386;;33673:3;;;;;:::i;:::-;;;;33637:427;;;;33343:727;33317:753;32971:1103;;32759:1315;;;;;;;:::o;23661:475:80:-;23746:27;23775:13;23790:11;23803:19;23824:16;23886:25;23902:5;23909:1;2742:27:2;2756:4;2742:27;2736:34;;2612:168;23886:25:80;23880:32;;23866:47;;;;;;;;:::i;:::-;2742:27:2;;;2736:34;2742:27;;;2736:34;2742:27;;;2736:34;2742:27;;;;2736:34;23850:63:80;;2736:34:2;;;;-1:-1:-1;2736:34:2;-1:-1:-1;2736:34:2;;-1:-1:-1;23661:475:80;-1:-1:-1;;23661:475:80:o;24239:522::-;24349:26;;24411:14;975:16:3;7017:70;;;6995:94;;24525:63:80;:41;24546:5;24411:14;6995:94:3;24525:20:80;:41::i;:::-;:61;:63::i;:::-;24512:77;-1:-1:-1;24605:4:80;-1:-1:-1;24605:4:80;6995:94:3;7059:27;7017:70;;;6995:94;24633:34:80;24692:63;:41;24713:5;24720:6;24633:34;24692:20;:41::i;:63::-;24679:77;;24405:356;;24239:522;;;;;:::o;5805:471:62:-;5966:16;;;5980:1;5966:16;;;;;;;;;5879:19;;;;;;5966:16;;;;;;;;;;;-1:-1:-1;5966:16:62;5937:45;;6011:21;6003:30;;;5988:9;5998:1;5988:12;;;;;;;;:::i;:::-;;;;;;;;;;:45;6041:24;;;6128:80;1174:66;6173:9;1303:66;6128:21;:80::i;:::-;6040:168;;;;;;6221:50;6228:11;6241:15;6258:12;6221:6;:50::i;2109:683:40:-;2185:23;2216:20;2239:32;:30;:32::i;:::-;2216:55;-1:-1:-1;;;;;;2350:29:40;;2358:4;2350:29;2346:322;;2389:12;2433:153;2467:36;:34;:36::i;:::-;2520:1;2541:8;2569;2433:15;:153::i;:::-;2409:177;-1:-1:-1;2409:177:40;-1:-1:-1;2409:177:40;2595:41;;2609:27;2625:10;2609:15;:27::i;:::-;2644:17;;;;2346:322;2736:51;;;;;-1:-1:-1;;;;;2736:31:40;;;;;:51;;2768:8;;2778;;2736:51;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;2736:51:40;;;;;;;;;;;;:::i;44950:222:36:-;45014:12;45104:6;45128:39;45104:6;45161:2;45165:1;45128:17;:39::i;12066:286:24:-;12253:94;12263:7;12272:8;12282:10;12294:14;12310:11;12323:23;12338:7;12323:14;:23::i;:::-;12253:9;:94::i;:::-;12066:286;;;;;:::o;36171:541::-;36328:7;36465:242;36509:59;36550:7;36559:8;36509:40;:59::i;:::-;36586:31;;;;4323:19:4;:27;579:1:31;4322:44:4;4288:79;;;4275:93;36635:63:24;36674:11;36687:10;36635:38;:63::i;:::-;36465:17;:242::i;:::-;36452:255;36171:541;-1:-1:-1;;;;;36171:541:24:o;23107:355::-;23279:178;23313:7;23338:8;23368:63;23407:11;23420:10;23368:38;:63::i;:::-;23446:4;23279:16;:178::i;1007:380:73:-;1105:14;;591:42;1278:2;1265:16;;1081:21;;1105:14;1265:16;591:42;1314:5;1303:68;1294:77;;1231:150;;1007:380;:::o;1109:325:39:-;1190:4;1332:55;696:18:72;578:36:53;2955:46;;2954:74;1380:6:39;1332:18;:55::i;:::-;:97;;;;1391:38;1410:10;1422:6;1391:18;:38::i;3486:592:53:-;3550:13;3620:10;451:5:20;2637:44:53;;;3571:19;3718;3620:10;3718:7;:19::i;:::-;3695:42;-1:-1:-1;3800:12:53;3839:35;;;;:102;;3888:53;;;;:34;:53::i;:::-;3839:102;;;;;;;;;;;;;;;;;;;;;3968:25;;;;:87;;4007:48;4042:12;4007:34;:48::i;:::-;3968:87;;;;;;;;;;;;;;;;;;;;;3772:293;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;3743:330;;;;;3486:592;;;:::o;12940:299:76:-;-1:-1:-1;;;;;;;;;;;;;;;;;13135:25:76;13148:11;13135:12;:25::i;:::-;13114:6;;13113:47;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;13190:44:76;13204:15;13221:12;13190:13;:44::i;:::-;13168:18;;;13167:67;13168:6;12940:299;-1:-1:-1;;;12940:299:76:o;17879:370:95:-;17990:23;;:::i;:::-;18219:25;18232:11;18219:12;:25::i;:::-;18198:12;;;18021:223;;;18173:17;;;18021:223;;;18149:16;;;18021:223;;;18121:20;;;18021:223;;;18094:19;;;18021:223;;;18029:6;18052:14;;;18074:12;;;18021:223;;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;18021:223:95;;;;-1:-1:-1;17879:370:95;;;-1:-1:-1;;;;;17879:370:95:o;18916:362::-;19145:12;19189:8;19199:7;19208:5;19215:12;19229:13;19244:9;19255:10;19267:5;19172:101;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;19165:108;;18916:362;;;;;;;;;;:::o;4598:171:4:-;4672:7;579:1:31;1354:13;1366:1;376:2;1354:13;:::i;:::-;1353:30;;;;:::i;:::-;4694:70:4;;;;;4598:171;-1:-1:-1;4598:171:4:o;48823:360:24:-;48949:12;48973:6;48983:1;48973:11;48969:26;;-1:-1:-1;48986:9:24;;;;;;;;;-1:-1:-1;48986:9:24;;;;48969:26;49036:16;49055:41;49078:7;49087:8;49055:22;:41::i;:::-;49036:60;;49109:69;49140:8;49158:1;49169:6;49109:12;:69::i;5377:173:4:-;5451:7;579:1:31;1704;;1684:13;1696:1;376:2;1684:13;:::i;:::-;:17;;;;:::i;:::-;:21;;;;:::i;:::-;1683:38;;;;:::i;:::-;5487:11:4;5466:79;5479:65;;5466:79;;5377:173;-1:-1:-1;;5377:173:4:o;53939:303:24:-;54060:14;54154:82;54185:48;54215:7;54224:8;54185:29;:48::i;:::-;4711:21:23;;4605:137;52742:274:24;52886:7;52991;53000:8;52974:35;;;;;;;;;:::i;:::-;;;;;;;;;;;;;52964:46;;;;;;52943:17;52936:25;;52916:45;;;42433:34;52916:45;:94;52908:103;;52901:110;;52742:274;;;;;:::o;6076:2380:23:-;6193:10;;6189:1542;;6346:2;6336:6;:12;6332:122;;6409:2;6400:6;:11;6382:29;;;;6433:2;6423:12;;;;;;:::i;:::-;;;;6332:122;6544:10;;6540:1185;;6752:2;:11;;;6626:21;6810:22;;;6806:135;;;-1:-1:-1;;;579:1:31;804:25:32;;782:48;6806:135:23;;;-1:-1:-1;;;579:1:31;804:25:32;;782:48;6806:135:23;7135:14;7129:21;7114:12;7106:6;7102:25;7098:53;7375:4;7359:13;7353:20;7349:31;7285:4;7281:9;7269:10;7265:26;7210:184;7183:13;7163:243;;7465:13;7455:6;:23;7451:36;;7480:7;;;;7451:36;-1:-1:-1;7628:1:23;7610:19;;;;;7683:23;;;;;7641:30;6540:1185;7760:253;7777:2;7767:6;:12;7760:253;;7871:21;;7849:44;;7946:1;7928:19;;;;-1:-1:-1;;7986:12:23;;;;7974:2;7957:19;7760:253;;;8081:10;;8077:375;;8101:12;-1:-1:-1;;579:1:31;804:25:32;;782:48;8389:20:23;;8299:21;;8322:9;;8295:37;8385:31;;8244:184;8201:237;;-1:-1:-1;6076:2380:23;;;;:::o;2003:574:22:-;2094:5;2189:3;2181:5;:11;:32;;;;2202:4;:11;2196:3;:17;2181:32;2177:93;;;2253:4;2259:5;2266:3;2222:48;;;;;;;;;;;;;:::i;2177:93::-;2336:4;2326:15;;2383:16;2394:5;2326:15;2383:16;:::i;:::-;;-1:-1:-1;2405:12:22;2420:11;2426:5;2420:3;:11;:::i;:::-;692:17;2555:15;2547:3;2536:14;;;;2535:36;;;;;;-1:-1:-1;;;;;2003:574:22:o;45284:220:35:-;45350:24;45382:30;45415:32;45433:6;45441:2;45445:1;45415:17;:32::i;8363:236:62:-;8474:19;8495:29;8569:25;8582:11;8569:12;:25::i;1761:1386:51:-;1888:12;1902:17;1956:21;1979:17;2000:22;2013:8;2000:12;:22::i;:::-;1955:67;;-1:-1:-1;1955:67:51;-1:-1:-1;;;;;;2067:27:51;;2063:106;;2139:8;2149:19;:8;:17;:19::i;:::-;2103:66;;;;;;;;;;;;:::i;2063:106::-;2275:12;2270:64;;2289:45;2317:8;2327:6;2289:27;:45::i;:::-;2413:9;;2409:197;;578:36:53;2955:46;;696:18:72;2954:74:53;2432:22:51;2515:26;2954:74:53;2515:13:51;:26::i;:::-;2490:51;-1:-1:-1;2549:50:51;2563:11;2576:22;2593:5;2490:51;2576:22;:::i;:::-;2549:13;:50::i;:::-;2424:182;;2409:197;2708:14;2681:23;:8;451:5:20;2637:44:53;;2539:148;2681:23:51;:41;;;:461;;2982:160;3043:6;3069:5;3092:13;3125:8;2982:39;:160::i;:::-;2681:461;;;2805:168;2874:6;2900:5;2923:13;2956:8;2805:47;:168::i;:::-;2663:479;;;;-1:-1:-1;1761:1386:51;-1:-1:-1;;;;;;;1761:1386:51:o;348:217:70:-;551:6;545:13;538:4;530:6;526:17;519:40;830:1343:37;1002:12;;955:17;;980:19;1043:26;1058:11;1002:12;1043:26;:::i;:::-;1020:49;;1441:4;1435:11;;-1:-1:-1;1484:4:37;1474:15;;-1:-1:-1;;1358:16:37;1531:32;;;1358:16;1354:32;1503:4;1496:69;1607:12;1601:4;1594:26;1651:1;1721:4;1714:5;1710:16;1628:535;1741:11;1738:1;1735:18;1628:535;;;2134:19;;2113:41;;2091:64;;2007:31;;;;1828:1;1821:9;;;;;1920:4;1902:23;1628:535;;;1632:102;;;1222:947;;830:1343;;;;;:::o;4015:652:24:-;4082:11;4318:64;;;4314:111;;-1:-1:-1;1342:66:30;;4015:652:24;-1:-1:-1;4015:652:24:o;4314:111::-;4469:185;4515:85;1213:66:30;4591:7:24;4515:40;:85::i;:::-;4620:2;4642:1;4469:17;:185::i;13212:3165::-;13507:23;13486:7;:44;;;13482:211;;13613:7;13584:88;13622:8;13632:10;13644:14;13660:11;13584:88;;;;;;;;;:::i;:::-;;;;;;;;13680:7;;13482:211;13831:22;13856:24;13872:7;13856:15;:24::i;:::-;13831:49;;13891:9;13886:340;13906:5;:12;13902:1;:16;13886:340;;;13933:9;13955:5;13961:1;13955:8;;;;;;;;:::i;:::-;;;;;;;13933:31;;13976:33;409:6:33;13976:4:24;:14;;;;;:33;;;;:::i;:::-;13972:248;;;14021:190;;;;;3536:35:5;;;;;14021:47:24;;:190;;14080:7;;14099:8;;14119:10;;14141:14;;14167:11;;14190;;14021:190;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13972:248;-1:-1:-1;13920:3:24;;13886:340;;;;14303:7;14274:88;14312:8;14322:10;14334:14;14350:11;14274:88;;;;;;;;;:::i;:::-;;;;;;;;14426:26;14455:59;14496:7;14505:8;14455:40;:59::i;:::-;14426:88;-1:-1:-1;14520:21:24;894:4:19;884:15;;14520:54:24;;14580:149;14618:18;14652:1;14669:10;:17;14709:13;14580;:149::i;:::-;14829:1;14796:30;:11;:28;:30::i;:::-;:34;14792:1174;;;14915:33;14951:66;14999:7;15008:8;14951:47;:66::i;:::-;695:28:23;;;14915:102:24;-1:-1:-1;894:4:19;884:15;;15191:47:24;;15347:27;15382:25;15420:7;15415:545;15433:30;:11;:28;:30::i;:::-;15429:1;:34;;;15415:545;;;15499:63;15541:7;15550:8;15560:1;15499:41;:63::i;:::-;15477:85;-1:-1:-1;15592:25:24;:14;15615:1;7070:16:3;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;15592:25:24;15572:45;;15627:170;15669:19;15708:1;15729:17;15773:13;15627;:170::i;:::-;15807:34;15824:17;15807:34;;:::i;:::-;;-1:-1:-1;15938:3:24;;15415:545;;;;14832:1134;;;14792:1174;16040:9;16035:338;16055:5;:12;16051:1;:16;16035:338;;;16082:9;16104:5;16110:1;16104:8;;;;;;;;:::i;:::-;;;;;;;16082:31;;16125:32;503:6:33;16125:4:24;:14;;;;;:32;;;;:::i;:::-;16121:246;;;16169:189;;;;;3536:35:5;;;;;16169:46:24;;:189;;16227:7;;16246:8;;16266:10;;16288:14;;16314:11;;16337;;16169:189;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16121:246;-1:-1:-1;16069:3:24;;16035:338;;50806:191;50908:7;50972;50981:8;50955:35;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;50955:35:24;;;;;;;;;50945:46;;50955:35;50945:46;;;;42361:22;50938:53;;50806:191;-1:-1:-1;;;50806:191:24:o;51823:242::-;51919:7;;;51958:84;51978:10;51974:14;;:1;:14;51958:84;;;52003:32;4275:93:4;4323:19;:27;;;579:1:31;4322:44:4;4288:79;;;4275:93;52003:32:24;;:::i;:::-;;-1:-1:-1;51990:3:24;;51958:84;;;-1:-1:-1;52054:6:24;51823:242;-1:-1:-1;;;51823:242:24:o;8945:812:23:-;9043:14;9079:2;9069:6;:12;9065:112;;9138:2;9129:6;:11;9111:29;;;;9160:2;9150:12;;;;;;:::i;:::-;;;;9065:112;-1:-1:-1;9368:21:23;;9353:12;9341:25;;9337:53;9516:2;:11;;;9598:22;;;9594:159;;;9734:1;9718:14;9714:22;9708:29;9693:12;9678:13;9674:32;9670:68;9662:6;9659:80;9649:90;;9059:698;8945:812;;;;;:::o;17013:1682:24:-;17213:23;17192:7;:44;;;17188:235;;17346:7;17299:103;17365:8;17382:5;17395:4;17299:103;;;;;;;;:::i;:::-;;;;;;;;17410:7;;17188:235;17429:16;17448:59;17489:7;17498:8;17448:40;:59::i;:::-;17429:78;;17653:22;17678:24;17694:7;17678:15;:24::i;:::-;17653:49;;17713:9;17708:328;17728:5;:12;17724:1;:16;17708:328;;;17755:9;17777:5;17783:1;17777:8;;;;;;;;:::i;:::-;;;;;;;17755:31;;17798:41;614:6:33;17798:4:24;:14;;;;;:41;;;;:::i;:::-;17794:236;;;17851:170;;;;;3536:35:5;;;;;17851:54:24;;:170;;17927:7;;17956:8;;17983:5;;18006:4;;17851:170;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17794:236;-1:-1:-1;17742:3:24;;17708:328;;;;18140:7;18093:103;18159:8;18176:5;18189:4;18093:103;;;;;;;;:::i;:::-;;;;;;;;18246:70;18278:8;18296:5;18246:70;;18309:4;18246:13;:70::i;:::-;18370:9;18365:326;18385:5;:12;18381:1;:16;18365:326;;;18412:9;18434:5;18440:1;18434:8;;;;;;;;:::i;:::-;;;;;;;18412:31;;18455:40;723:6:33;18455:4:24;:14;;;;;:40;;;;:::i;:::-;18451:234;;;18507:169;;;;;3536:35:5;;;;;18507:53:24;;:169;;18582:7;;18611:8;;18638:5;;18661:4;;18507:169;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18451:234;-1:-1:-1;18399:3:24;;18365:326;;3586:379:64;3709:16;;;3723:1;3709:16;;;;;;;;3661:11;;;;3709:16;3723:1;3709:16;;;;;;;;;;-1:-1:-1;3709:16:64;3680:45;;3764:10;3731:9;3741:1;3731:12;;;;;;;;:::i;:::-;;;;;;:44;;;;;3820:6;-1:-1:-1;;;;;3804:24:64;3796:33;;3781:9;3791:1;3781:12;;;;;;;;:::i;:::-;;;;;;;;;;:48;3836:13;3852:64;1169:66;3889:9;3836:13;1298:66;3852:26;:64::i;:::-;3836:80;;3930:29;3951:5;3938:20;;1650:10:20;1541:126;3165:160:53;3228:7;3292:26;438:6;451:5:20;3292:26:53;:::i;:::-;3258:61;;;;;3165:160;-1:-1:-1;3165:160:53:o;1862:325::-;1932:13;1953:14;1973:83;1989:2;1980:6;:11;1973:83;;;2007:37;;;3261:1:2;3257:13;;3253:24;2007:42:53;;2003:53;2051:5;2003:53;1993:8;;1973:83;;;2092:30;;;39767:66:113;39755:79;;2092:30:53;;;39743:92:113;2092:30:53;;39851:12:113;;;;2092:30:53;;;875:21:2;;;2092:30:53;2142:39;760:164:2;12092:156:76;2756:4:2;2742:27;;2736:34;12157:21:76;;12210:32;;12199:44;;;;;;;;:::i;12351:322::-;12461:24;12493:14;975:16:3;7017:70;;;6995:94;;12615:51:76;:41;12636:5;12493:14;6995:94:3;12615:20:76;:41::i;:::-;:49;:51::i;16961:760:95:-;17053:16;17077:15;17100:13;17121:20;17149:21;17178:16;17202:18;17228:13;17276:26;17293:5;17300:1;2742:27:2;2756:4;2742:27;2736:34;;2612:168;17276:26:95;2742:27:2;;;2736:34;2742:27;;;2736:34;17268:35:95;;-1:-1:-1;2736:34:2;-1:-1:-1;17382:33:95;;17374:42;;;;;;;;:::i;:::-;2742:27:2;;;2736:34;2742:27;;;2736:34;2742:27;;;2736:34;2742:27;;;2736:34;2742:27;;;;2736:34;16961:760:95;;;;17366:50;;2736:34:2;;;;-1:-1:-1;2736:34:2;-1:-1:-1;2736:34:2;;-1:-1:-1;2736:34:2;-1:-1:-1;16961:760:95;-1:-1:-1;;16961:760:95:o;5042:669:23:-;5458:4;5452:11;5499:4;5487:17;;-1:-1:-1;;1358:16:37;5546:26:23;;;1358:16:37;1354:32;5518:4:23;5511:63;5618:6;5610;5603:22;5636:51;5641:14;5657:6;5665;5673:13;5636:4;:51::i;53371:230:24:-;53492:7;53576;53585:8;53559:35;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;53559:35:24;;;;;;;;;53549:46;;53559:35;53549:46;;;;42524:40;53522:73;;53371:230;-1:-1:-1;;;53371:230:24:o;2681:1129:37:-;2801:22;2831:21;2855;:11;2997:3:22;2975:25;;2901:104;2855:21:37;2831:45;-1:-1:-1;692:17:22;3238:38;;2882:20:37;3044:11;3238:38:22;3044:11:37;3029:26;;;;:::i;:::-;;3015:40;;3164:4;3158:11;3149:20;;3207:4;3200:5;3196:16;3267:4;3254:11;3250:22;3236:12;3232:41;3226:4;3219:55;3317:11;3310:5;3303:26;3360:1;3337:463;3376:11;3373:1;3370:18;3337:463;;;3770:20;;3749:42;;3728:64;;3642:31;;;;3555:4;3537:23;;;;3463:1;3456:9;3337:463;;7963:242:62;2756:4:2;2742:27;;2736:34;2742:27;;;2736:34;8028:19:62;;8173:26;8147:53;;7963:242;;;:::o;5928:433:67:-;6056:16;;;6070:1;6056:16;;;;;;;;;5986:14;;;;;;6056:16;;;;;;;;;;;-1:-1:-1;6056:16:67;6027:45;;6111:8;6078:9;6088:1;6078:12;;;;;;;;:::i;:::-;;;;;;;;;;:42;6128:24;;;6215:78;1155:66;6258:9;1284:66;6215:19;:78::i;:::-;6127:166;;;;;;6306:50;6313:11;6326:15;6343:12;6306:6;:50::i;1546:281:41:-;1708:29;1718:10;1730:6;1708:9;:29::i;3758:308:61:-;3871:16;;;3885:1;3871:16;;;;;;;;;3819:15;;;;3871:16;;;;;;;;;;;;-1:-1:-1;3871:16:61;3842:45;;3926:11;3893:9;3903:1;3893:12;;;;;;;;:::i;:::-;;;;;;;;;;:45;3945:13;3961:62;1157:66;3996:9;3945:13;1286:66;3961:24;:62::i;5057:269::-;5156:16;;;5170:1;5156:16;;;;;;;;;5127:26;;5156:16;;;;;;;;;;;-1:-1:-1;5156:16:61;5127:45;;5211:11;5178:9;5188:1;5178:12;;;;;;;;:::i;:::-;;;;;;:45;;;;;5230:91;1157:66;1141:83;;5265:9;5276:1;5297:7;5279:27;;;;;;24559:19:113;;24603:2;24594:12;;24430:182;5279:27:61;;;;-1:-1:-1;;5279:27:61;;;;;;;;;1286:66;5230:24;:91::i;5594:317:52:-;5733:12;5747:17;5790:6;-1:-1:-1;;;;;5790:11:52;5810:1;5821:79;5847:8;5868:9;5889:8;5821:13;:79::i;:::-;5790:116;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5772:134:52;;;;-1:-1:-1;5594:317:52;-1:-1:-1;;;;;5594:317:52:o;6415:321::-;6562:12;6576:17;6619:6;-1:-1:-1;;;;;6619:19:52;6646:79;6672:8;6693:9;6714:8;6646:13;:79::i;:::-;6619:112;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;51249:282:24;51494:30;;;;;;40541:19:113;;;40576:12;;;40569:28;;;51337:7:24;;40613:12:113;;51494:30:24;40353:278:113;3658:342:29;3774:16;;;3788:1;3774:16;;;;;;;;;3715:22;;3745:26;;3774:16;;;;;;;;;;;;-1:-1:-1;3774:16:29;3745:45;;3829:7;3796:9;3806:1;3796:12;;;;;;;;:::i;:::-;;;;;;;;;;:41;3844:18;3865:49;971:66;3901:9;3844:18;3865:25;:49::i;:::-;3844:70;;3928:66;:44;3949:5;3956:1;3959:5;:12;3928:20;:44::i;:::-;:64;:66::i;3035:136:5:-;3105:4;3157:9;3124:42;;3143:9;3125:15;3135:4;3934:26;;;3804:162;3125:15;:27;3124:42;;;3117:49;;3035:136;;;;:::o;1489:2340:23:-;1602:10;;1598:1504;;1755:2;1745:6;:12;1741:122;;1818:2;1809:6;:11;1791:29;;;;1842:2;1832:12;;;;;;:::i;:::-;;;;1741:122;1953:10;;1949:1147;;2161:2;:11;;;2035:21;-1:-1:-1;;579:1:31;804:25:32;;782:48;2208:18:23;2193:33;;2395:12;2387:6;2383:25;2442:4;2431:9;2427:20;2419:28;;2497:13;2491:20;2480:9;2476:36;2458:54;;2745:4;2741:9;2724:14;2718:21;2714:37;2645:4;2633:10;2629:21;2572:193;2544:14;2524:253;;2836:13;2826:6;:23;2822:36;;2851:7;;;;2822:36;-1:-1:-1;2999:1:23;2981:19;;;;;3054:23;;;;;3012:30;1949:1147;3132:253;3149:2;3139:6;:12;3132:253;;3244:20;;3221:44;;3318:1;3300:19;;;;-1:-1:-1;;3358:12:23;;;;3346:2;3329:19;3132:253;;;3453:10;;3449:376;;3473:12;-1:-1:-1;;579:1:31;804:25:32;;782:48;3761:21:23;;3672:20;;3694:9;;3668:36;3757:32;;3617:184;3573:238;;-1:-1:-1;1489:2340:23;;;;:::o;966:162::-;1055:68;1061:14;1077:6;1085:4;:11;1098:24;1117:4;894::19;884:15;;758:151;1098:24:23;1055:5;:68::i;3545:418:22:-;3597:17;3622:19;3644:13;3652:4;2997:3;2975:25;;2901:104;3644:13;3622:35;-1:-1:-1;692:17:22;3238:38;;;3767:18;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3767:18:22;-1:-1:-1;3760:25:22;-1:-1:-1;3854:4:22;3844:15;;3914:44;3926:11;3844:15;3950:7;3914:11;:44::i;:::-;3616:347;;;3545:418;;;:::o;7829:207:67:-;7940:14;7956:17;8006:25;8019:11;8006:12;:25::i;955:327:41:-;1036:4;1178:56;696:18:72;578:36:53;2955:46;;2954:74;1227:6:41;1178:19;:56::i;:::-;:99;;;;1238:39;1258:10;1270:6;1238:19;:39::i;4897:201:52:-;5019:12;5063:8;5073:9;5084:8;5046:47;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;5039:54;;4897:201;;;;;:::o;37180:522:24:-;37316:12;37440:257;37479:79;37521:7;37530:8;37540:17;37479:41;:79::i;:::-;37576:1;37595:93;37670:17;37595:66;37643:7;37652:8;37595:47;:66::i;:::-;:74;7070:16:3;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;37595:93:24;37440:12;:257::i;40103:220:35:-;40169:24;40201:30;40234:32;40252:6;40260:2;40264:1;40234:17;:32::i;1229:823:19:-;1346:324;1363:2;1353:6;:12;1346:324;;1453:18;;1435:37;;1604:2;1616:17;;;;1591:15;;;;-1:-1:-1;;1643:12:19;1346:324;;;1679:6;1689:1;1679:11;1675:24;;1229:823;;;:::o;1675:24::-;1738:12;-1:-1:-1;;579:1:31;804:25:32;;782:48;1738:32:19;;2019:4;2007:9;2001:16;1997:27;1942:4;1938:9;1924:11;1918:18;1914:34;1867:167;1848:9;1832:210;1824:224;1229:823;;;:::o;7448:223:67:-;2756:4:2;2742:27;;2736:34;2742:27;;;2736:34;7564:35:67;;;;;;7513:14;;7631:33;;7623:42;1541:126:20;4006:378:64;4130:16;;;4144:1;4130:16;;;;;;;;4082:11;;;;4130:16;4144:1;4130:16;;;;;;;;;;-1:-1:-1;4130:16:64;4101:45;;4185:10;4152:9;4162:1;4152:12;;;;;;;;:::i;:::-;;;;;;:44;;;;;4241:6;-1:-1:-1;;;;;4225:24:64;4217:33;;4202:9;4212:1;4202:12;;;;;;;;:::i;:::-;;;;;;;;;;:48;4257:13;4273:62;1169:66;4308:9;4257:13;1298:66;4273:24;:62::i;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:332:113:-;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:113;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:252::-;1293:2;1287:9;1335:3;1323:16;;1369:18;1354:34;;1390:22;;;1351:62;1348:88;;;1416:18;;:::i;1478:252::-;1550:2;1544:9;1592:3;1580:16;;1626:18;1611:34;;1647:22;;;1608:62;1605:88;;;1673:18;;:::i;1735:334::-;1806:2;1800:9;1862:2;1852:13;;-1:-1:-1;;1848:86:113;1836:99;;1965:18;1950:34;;1986:22;;;1947:62;1944:88;;;2012:18;;:::i;:::-;2048:2;2041:22;1735:334;;-1:-1:-1;1735:334:113:o;2074:183::-;2134:4;2167:18;2159:6;2156:30;2153:56;;;2189:18;;:::i;:::-;-1:-1:-1;2234:1:113;2230:14;2246:4;2226:25;;2074:183::o;2262:668::-;2316:5;2369:3;2362:4;2354:6;2350:17;2346:27;2336:55;;2387:1;2384;2377:12;2336:55;2423:6;2410:20;2449:4;2473:60;2489:43;2529:2;2489:43;:::i;:::-;2473:60;:::i;:::-;2555:3;2579:2;2574:3;2567:15;2607:4;2602:3;2598:14;2591:21;;2664:4;2658:2;2655:1;2651:10;2643:6;2639:23;2635:34;2621:48;;2692:3;2684:6;2681:15;2678:35;;;2709:1;2706;2699:12;2678:35;2745:4;2737:6;2733:17;2759:142;2775:6;2770:3;2767:15;2759:142;;;2841:17;;2829:30;;2879:12;;;;2792;;2759:142;;;-1:-1:-1;2919:5:113;2262:668;-1:-1:-1;;;;;;2262:668:113:o;2935:159::-;3002:20;;3062:6;3051:18;;3041:29;;3031:57;;3084:1;3081;3074:12;3099:740;3233:6;3241;3249;3257;3310:3;3298:9;3289:7;3285:23;3281:33;3278:53;;;3327:1;3324;3317:12;3278:53;3367:9;3354:23;3396:18;3437:2;3429:6;3426:14;3423:34;;;3453:1;3450;3443:12;3423:34;3476:61;3529:7;3520:6;3509:9;3505:22;3476:61;:::i;:::-;3466:71;;3590:2;3579:9;3575:18;3562:32;3546:48;;3619:2;3609:8;3606:16;3603:36;;;3635:1;3632;3625:12;3603:36;;3658:63;3713:7;3702:8;3691:9;3687:24;3658:63;:::i;:::-;3648:73;;;3740:37;3773:2;3762:9;3758:18;3740:37;:::i;:::-;3730:47;;3796:37;3829:2;3818:9;3814:18;3796:37;:::i;:::-;3786:47;;3099:740;;;;;;;:::o;3844:248::-;3912:6;3920;3973:2;3961:9;3952:7;3948:23;3944:32;3941:52;;;3989:1;3986;3979:12;3941:52;-1:-1:-1;;4012:23:113;;;4082:2;4067:18;;;4054:32;;-1:-1:-1;3844:248:113:o;4279:180::-;4338:6;4391:2;4379:9;4370:7;4366:23;4362:32;4359:52;;;4407:1;4404;4397:12;4359:52;-1:-1:-1;4430:23:113;;4279:180;-1:-1:-1;4279:180:113:o;4464:184::-;-1:-1:-1;;;4513:1:113;4506:88;4613:4;4610:1;4603:15;4637:4;4634:1;4627:15;4653:144;4738:1;4731:5;4728:12;4718:46;;4744:18;;:::i;:::-;4773;;4653:144::o;4802:439::-;4855:3;4893:5;4887:12;4920:6;4915:3;4908:19;4946:4;4975;4970:3;4966:14;4959:21;;5014:4;5007:5;5003:16;5037:1;5047:169;5061:6;5058:1;5055:13;5047:169;;;5122:13;;5110:26;;5156:12;;;;5191:15;;;;5083:1;5076:9;5047:169;;;-1:-1:-1;5232:3:113;;4802:439;-1:-1:-1;;;;;4802:439:113:o;5246:963::-;5451:2;5440:9;5433:21;5463:64;5523:2;5512:9;5508:18;5499:6;5493:13;5463:64;:::i;:::-;5581:2;5573:6;5569:15;5563:22;5558:2;5547:9;5543:18;5536:50;5640:2;5632:6;5628:15;5622:22;5617:2;5606:9;5602:18;5595:50;5700:2;5692:6;5688:15;5682:22;5676:3;5665:9;5661:19;5654:51;5760:3;5752:6;5748:16;5742:23;5736:3;5725:9;5721:19;5714:52;5414:4;5813:3;5805:6;5801:16;5795:23;5855:4;5849:3;5838:9;5834:19;5827:33;5883:63;5941:3;5930:9;5926:19;5912:12;5883:63;:::i;:::-;5869:77;;5995:3;5987:6;5983:16;5977:23;-1:-1:-1;;6054:9:113;6046:6;6042:22;6038:95;6031:4;6020:9;6016:20;6009:125;6151:52;6196:6;6180:14;6151:52;:::i;6214:1117::-;6274:5;6327:3;6320:4;6312:6;6308:17;6304:27;6294:55;;6345:1;6342;6335:12;6294:55;6381:6;6368:20;6407:4;6431:60;6447:43;6487:2;6447:43;:::i;6431:60::-;6525:15;;;6611:1;6607:10;;;;6595:23;;6591:32;;;6556:12;;;;6635:15;;;6632:35;;;6663:1;6660;6653:12;6632:35;6699:2;6691:6;6687:15;6711:591;6727:6;6722:3;6719:15;6711:591;;;6805:4;6799:3;6794;6790:13;6786:24;6783:114;;;6851:1;6880:2;6876;6869:14;6783:114;6923:22;;:::i;:::-;6972:17;;6958:32;;7039:12;;;7026:26;7010:14;;;7003:50;7076:2;7127:12;;;7114:26;7098:14;;;7091:50;7164:2;7215:12;;;7202:26;7186:14;;;7179:50;7242:18;;7280:12;;;;6753:4;6744:14;6711:591;;7336:515;7463:6;7471;7479;7532:2;7520:9;7511:7;7507:23;7503:32;7500:52;;;7548:1;7545;7538:12;7500:52;7584:9;7571:23;7561:33;;7641:2;7630:9;7626:18;7613:32;7603:42;;7696:2;7685:9;7681:18;7668:32;7723:18;7715:6;7712:30;7709:50;;;7755:1;7752;7745:12;7709:50;7778:67;7837:7;7828:6;7817:9;7813:22;7778:67;:::i;:::-;7768:77;;;7336:515;;;;;:::o;7856:758::-;8002:6;8010;8018;8071:2;8059:9;8050:7;8046:23;8042:32;8039:52;;;8087:1;8084;8077:12;8039:52;8126:9;8113:23;8165:1;8158:5;8155:12;8145:40;;8181:1;8178;8171:12;8145:40;8204:5;-1:-1:-1;8260:2:113;8245:18;;8232:32;8283:18;8313:14;;;8310:34;;;8340:1;8337;8330:12;8310:34;8363:61;8416:7;8407:6;8396:9;8392:22;8363:61;:::i;:::-;8353:71;;8477:2;8466:9;8462:18;8449:32;8433:48;;8506:2;8496:8;8493:16;8490:36;;;8522:1;8519;8512:12;8490:36;;8545:63;8600:7;8589:8;8578:9;8574:24;8545:63;:::i;8801:114::-;8885:4;8878:5;8874:16;8867:5;8864:27;8854:55;;8905:1;8902;8895:12;8920:1762;9053:6;9061;9069;9077;9085;9138:3;9126:9;9117:7;9113:23;9109:33;9106:53;;;9155:1;9152;9145:12;9106:53;9195:9;9182:23;9224:18;9265:2;9257:6;9254:14;9251:34;;;9281:1;9278;9271:12;9251:34;9304:22;;;;9360:3;9342:16;;;9338:26;9335:46;;;9377:1;9374;9367:12;9335:46;9403:22;;:::i;:::-;9461:2;9448:16;9441:5;9434:31;9484:2;9539;9535;9531:11;9518:25;9513:2;9506:5;9502:14;9495:49;9597:2;9593;9589:11;9576:25;9571:2;9564:5;9560:14;9553:49;9655:2;9651;9647:11;9634:25;9629:2;9622:5;9618:14;9611:49;9706:3;9702:2;9698:12;9685:26;9736:2;9726:8;9723:16;9720:36;;;9752:1;9749;9742:12;9720:36;9783:8;9779:2;9775:17;9765:27;;;9830:7;9823:4;9819:2;9815:13;9811:27;9801:55;;9852:1;9849;9842:12;9801:55;9888:2;9875:16;9865:26;;9911:60;9927:43;9967:2;9927:43;:::i;9911:60::-;10005:15;;;10087:1;10083:10;;;;10075:19;;10071:28;;;10036:12;;;;10111:19;;;10108:39;;;10143:1;10140;10133:12;10108:39;10167:11;;;;10187:221;10203:6;10198:3;10195:15;10187:221;;;10285:3;10272:17;10302:31;10325:7;10302:31;:::i;:::-;10346:20;;10220:12;;;;10386;;;;10187:221;;;10435:3;10424:15;;;10417:30;;;;10428:5;;10503:18;;;10490:32;;-1:-1:-1;;10569:2:113;10554:18;;10541:32;;10620:2;10605:18;;10592:32;;-1:-1:-1;10656:19:113;;;10643:33;;-1:-1:-1;8920:1762:113;-1:-1:-1;;;;;8920:1762:113:o;11029:154::-;-1:-1:-1;;;;;11108:5:113;11104:54;11097:5;11094:65;11084:93;;11173:1;11170;11163:12;11188:483;11281:6;11289;11342:2;11330:9;11321:7;11317:23;11313:32;11310:52;;;11358:1;11355;11348:12;11310:52;11397:9;11384:23;11416:31;11441:5;11416:31;:::i;:::-;11466:5;-1:-1:-1;11522:2:113;11507:18;;11494:32;11549:18;11538:30;;11535:50;;;11581:1;11578;11571:12;11535:50;11604:61;11657:7;11648:6;11637:9;11633:22;11604:61;:::i;:::-;11594:71;;;11188:483;;;;;:::o;12449:184::-;-1:-1:-1;;;12498:1:113;12491:88;12598:4;12595:1;12588:15;12622:4;12619:1;12612:15;12638:277;12705:6;12758:2;12746:9;12737:7;12733:23;12729:32;12726:52;;;12774:1;12771;12764:12;12726:52;12806:9;12800:16;12859:5;12852:13;12845:21;12838:5;12835:32;12825:60;;12881:1;12878;12871:12;13283:184;-1:-1:-1;;;13332:1:113;13325:88;13432:4;13429:1;13422:15;13456:4;13453:1;13446:15;13472:168;13545:9;;;13576;;13593:15;;;13587:22;;13573:37;13563:71;;13614:18;;:::i;13645:184::-;-1:-1:-1;;;13694:1:113;13687:88;13794:4;13791:1;13784:15;13818:4;13815:1;13808:15;13834:112;13866:1;13892;13882:35;;13897:18;;:::i;:::-;-1:-1:-1;13931:9:113;;13834:112::o;14673:251::-;14743:6;14796:2;14784:9;14775:7;14771:23;14767:32;14764:52;;;14812:1;14809;14802:12;14764:52;14844:9;14838:16;14863:31;14888:5;14863:31;:::i;16464:691::-;16776:48;16814:9;16806:6;16776:48;:::i;:::-;16860:3;16855:2;16844:9;16840:18;16833:31;16757:4;16887:78;16960:3;16949:9;16945:19;16937:6;16887:78;:::i;:::-;17013:9;17005:6;17001:22;16996:2;16985:9;16981:18;16974:50;17041:65;17099:6;17091;17041:65;:::i;:::-;17033:73;;;17142:6;17137:2;17126:9;17122:18;17115:34;16464:691;;;;;;;:::o;17519:710::-;17627:6;17680:3;17668:9;17659:7;17655:23;17651:33;17648:53;;;17697:1;17694;17687:12;17648:53;17723:22;;:::i;:::-;17774:9;17768:16;17761:5;17754:31;17838:2;17827:9;17823:18;17817:25;17812:2;17805:5;17801:14;17794:49;17896:2;17885:9;17881:18;17875:25;17870:2;17863:5;17859:14;17852:49;17954:2;17943:9;17939:18;17933:25;17928:2;17921:5;17917:14;17910:49;18013:3;18002:9;17998:19;17992:26;17986:3;17979:5;17975:15;17968:51;18073:3;18062:9;18058:19;18052:26;18046:3;18039:5;18035:15;18028:51;18133:3;18122:9;18118:19;18112:26;18106:3;18099:5;18095:15;18088:51;18193:3;18182:9;18178:19;18172:26;18166:3;18159:5;18155:15;18148:51;18218:5;18208:15;;;17519:710;;;;:::o;18234:736::-;18297:5;18350:3;18343:4;18335:6;18331:17;18327:27;18317:55;;18368:1;18365;18358:12;18317:55;18397:6;18391:13;18423:4;18447:60;18463:43;18503:2;18463:43;:::i;18447:60::-;18529:3;18553:2;18548:3;18541:15;18581:4;18576:3;18572:14;18565:21;;18638:4;18632:2;18629:1;18625:10;18617:6;18613:23;18609:34;18595:48;;18666:3;18658:6;18655:15;18652:35;;;18683:1;18680;18673:12;18652:35;18719:4;18711:6;18707:17;18733:208;18749:6;18744:3;18741:15;18733:208;;;18822:3;18816:10;18839:29;18862:5;18839:29;:::i;:::-;18881:18;;18919:12;;;;18766;;18733:208;;18975:998;19075:6;19128:2;19116:9;19107:7;19103:23;19099:32;19096:52;;;19144:1;19141;19134:12;19096:52;19177:9;19171:16;19206:18;19247:2;19239:6;19236:14;19233:34;;;19263:1;19260;19253:12;19233:34;19286:22;;;;19342:6;19324:16;;;19320:29;19317:49;;;19362:1;19359;19352:12;19317:49;19388:22;;:::i;:::-;19439:2;19433:9;19426:5;19419:24;19482:2;19478;19474:11;19468:18;19511:2;19501:8;19498:16;19495:36;;;19527:1;19524;19517:12;19495:36;19563:65;19620:7;19609:8;19605:2;19601:17;19563:65;:::i;:::-;19558:2;19551:5;19547:14;19540:89;;19675:2;19671;19667:11;19661:18;19656:2;19649:5;19645:14;19638:42;19726:2;19722;19718:11;19712:18;19707:2;19700:5;19696:14;19689:42;19778:3;19774:2;19770:12;19764:19;19758:3;19751:5;19747:15;19740:44;19831:3;19827:2;19823:12;19817:19;19811:3;19804:5;19800:15;19793:44;19884:3;19880:2;19876:12;19870:19;19864:3;19857:5;19853:15;19846:44;19937:3;19933:2;19929:12;19923:19;19917:3;19910:5;19906:15;19899:44;19962:5;19952:15;;;;;18975:998;;;;:::o;20168:1068::-;20262:6;20293:2;20336;20324:9;20315:7;20311:23;20307:32;20304:52;;;20352:1;20349;20342:12;20304:52;20385:9;20379:16;20414:18;20455:2;20447:6;20444:14;20441:34;;;20471:1;20468;20461:12;20441:34;20509:6;20498:9;20494:22;20484:32;;20554:7;20547:4;20543:2;20539:13;20535:27;20525:55;;20576:1;20573;20566:12;20525:55;20605:2;20599:9;20628:60;20644:43;20684:2;20644:43;:::i;20628:60::-;20722:15;;;20804:1;20800:10;;;;20792:19;;20788:28;;;20753:12;;;;20828:19;;;20825:39;;;20860:1;20857;20850:12;20825:39;20884:11;;;;20904:302;20920:6;20915:3;20912:15;20904:302;;;20993:3;20987:10;21041:2;21034:5;21030:14;21023:5;21020:25;21010:123;;21087:1;21116:2;21112;21105:14;21010:123;21146:18;;20937:12;;;;21184;;;;20904:302;;;21225:5;20168:1068;-1:-1:-1;;;;;;;;20168:1068:113:o;21241:200::-;21307:9;;;21280:4;21335:9;;21363:10;;21375:12;;;21359:29;21398:12;;;21390:21;;21356:56;21353:82;;;21415:18;;:::i;21446:120::-;21486:1;21512;21502:35;;21517:18;;:::i;:::-;-1:-1:-1;21551:9:113;;21446:120::o;21571:216::-;21635:9;;;21663:11;;;21610:3;21693:9;;21721:10;;21717:19;;21746:10;;21738:19;;21714:44;21711:70;;;21761:18;;:::i;21792:292::-;21864:9;;;21831:7;21889:9;;21906:66;21900:73;;21885:89;21882:115;;;21977:18;;:::i;:::-;22050:1;22041:7;22036:16;22033:1;22030:23;22026:1;22019:9;22016:38;22006:72;;22058:18;;:::i;22089:195::-;22128:3;-1:-1:-1;;22152:5:113;22149:77;22146:103;;22229:18;;:::i;:::-;-1:-1:-1;22276:1:113;22265:13;;22089:195::o;22289:988::-;22509:4;22538:2;22578;22567:9;22563:18;22608:6;22597:9;22590:25;22634:2;22672;22667;22656:9;22652:18;22645:30;22695:6;22730;22724:13;22761:6;22753;22746:22;22787:2;22777:12;;22820:2;22809:9;22805:18;22798:25;;22858:2;22850:6;22846:15;22879:1;22889:362;22903:6;22900:1;22897:13;22889:362;;;22962:13;;23000:9;;22988:22;;23050:11;;;23044:18;23030:12;;;23023:40;23103:11;;;23097:18;23083:12;;;23076:40;23156:11;;23150:18;23136:12;;;23129:40;23198:4;23189:14;;;;23226:15;;;;22925:1;22918:9;22889:362;;;-1:-1:-1;23268:3:113;;22289:988;-1:-1:-1;;;;;;;;;22289:988:113:o;23282:119::-;23369:1;23362:5;23359:12;23349:46;;23375:18;;:::i;23406:250::-;23491:1;23501:113;23515:6;23512:1;23509:13;23501:113;;;23591:11;;;23585:18;23572:11;;;23565:39;23537:2;23530:10;23501:113;;;-1:-1:-1;;23648:1:113;23630:16;;23623:27;23406:250::o;23661:329::-;23702:3;23740:5;23734:12;23767:6;23762:3;23755:19;23783:76;23852:6;23845:4;23840:3;23836:14;23829:4;23822:5;23818:16;23783:76;:::i;:::-;23904:2;23892:15;-1:-1:-1;;23888:88:113;23879:98;;;;23979:4;23875:109;;23661:329;-1:-1:-1;;23661:329:113:o;23995:430::-;24216:6;24205:9;24198:25;24232:44;24269:6;24232:44;:::i;:::-;24312:6;24307:2;24296:9;24292:18;24285:34;24355:2;24350;24339:9;24335:18;24328:30;24179:4;24375:44;24415:2;24404:9;24400:18;24392:6;24375:44;:::i;24617:125::-;24682:9;;;24703:10;;;24700:36;;;24716:18;;:::i;24747:219::-;24896:2;24885:9;24878:21;24859:4;24916:44;24956:2;24945:9;24941:18;24933:6;24916:44;:::i;24971:845::-;25079:6;25132:2;25120:9;25111:7;25107:23;25103:32;25100:52;;;25148:1;25145;25138:12;25100:52;25181:9;25175:16;25210:18;25251:2;25243:6;25240:14;25237:34;;;25267:1;25264;25257:12;25237:34;25290:22;;;;25346:4;25328:16;;;25324:27;25321:47;;;25364:1;25361;25354:12;25321:47;25390:22;;:::i;:::-;25441:2;25435:9;25428:5;25421:24;25491:2;25487;25483:11;25477:18;25472:2;25465:5;25461:14;25454:42;25542:2;25538;25534:11;25528:18;25523:2;25516:5;25512:14;25505:42;25593:2;25589;25585:11;25579:18;25574:2;25567:5;25563:14;25556:42;25637:3;25633:2;25629:12;25623:19;25667:2;25657:8;25654:16;25651:36;;;25683:1;25680;25673:12;25651:36;25720:65;25777:7;25766:8;25762:2;25758:17;25720:65;:::i;:::-;25714:3;25703:15;;25696:90;-1:-1:-1;25707:5:113;24971:845;-1:-1:-1;;;;;24971:845:113:o;25821:308::-;25860:1;25886;25876:35;;25891:18;;:::i;:::-;-1:-1:-1;;26005:1:113;26002:73;25933:66;25930:1;25927:73;25923:153;25920:179;;;26079:18;;:::i;:::-;-1:-1:-1;26113:10:113;;25821:308::o;26387:487::-;26685:6;26674:9;26667:25;26728:2;26723;26712:9;26708:18;26701:30;26648:4;26748:77;26821:2;26810:9;26806:18;26798:6;26748:77;:::i;:::-;26740:85;;26861:6;26856:2;26845:9;26841:18;26834:34;26387:487;;;;;;:::o;26879:568::-;26932:5;26985:3;26978:4;26970:6;26966:17;26962:27;26952:55;;27003:1;27000;26993:12;26952:55;27032:6;27026:13;27058:18;27054:2;27051:26;27048:52;;;27080:18;;:::i;:::-;27124:114;27232:4;-1:-1:-1;;27156:4:113;27152:2;27148:13;27144:86;27140:97;27124:114;:::i;:::-;27263:2;27254:7;27247:19;27309:3;27302:4;27297:2;27289:6;27285:15;27281:26;27278:35;27275:55;;;27326:1;27323;27316:12;27275:55;27339:77;27413:2;27406:4;27397:7;27393:18;27386:4;27378:6;27374:17;27339:77;:::i;27452:654::-;27593:6;27601;27609;27662:2;27650:9;27641:7;27637:23;27633:32;27630:52;;;27678:1;27675;27668:12;27630:52;27711:9;27705:16;27740:18;27781:2;27773:6;27770:14;27767:34;;;27797:1;27794;27787:12;27767:34;27820:60;27872:7;27863:6;27852:9;27848:22;27820:60;:::i;:::-;27810:70;;27920:2;27909:9;27905:18;27899:25;27889:35;;27970:2;27959:9;27955:18;27949:25;27933:41;;27999:2;27989:8;27986:16;27983:36;;;28015:1;28012;28005:12;27983:36;;28038:62;28092:7;28081:8;28070:9;28066:24;28038:62;:::i;28111:407::-;28194:5;28234;28228:12;28276:4;28269:5;28265:16;28259:23;28301:66;28393:2;28389;28385:11;28376:20;;28419:1;28411:6;28408:13;28405:107;;;28480:1;28476:14;;;;28473:1;28469:22;28465:31;;;28457:40;28453:49;;28111:407;-1:-1:-1;;28111:407:113:o;28776:525::-;29016:3;29055:1;29047:6;29044:13;29034:47;;29061:18;;:::i;:::-;-1:-1:-1;29106:3:113;29102:16;;;;29090:29;;29144:1;29135:11;;29128:27;;;;29180:2;29171:12;;29164:28;;;;29217:2;29208:12;;29201:28;29254:2;29245:12;;29238:28;29291:3;29282:13;;28776:525::o;29306:492::-;29481:3;29519:6;29513:13;29535:66;29594:6;29589:3;29582:4;29574:6;29570:17;29535:66;:::i;:::-;29664:13;;29623:16;;;;29686:70;29664:13;29623:16;29733:4;29721:17;;29686:70;:::i;:::-;29772:20;;29306:492;-1:-1:-1;;;;29306:492:113:o;29803:813::-;30196:6;30185:9;30178:25;30239:3;30234:2;30223:9;30219:18;30212:31;30159:4;30266:78;30339:3;30328:9;30324:19;30316:6;30266:78;:::i;:::-;30392:9;30384:6;30380:22;30375:2;30364:9;30360:18;30353:50;30426:32;30451:6;30443;30426:32;:::i;:::-;30412:46;;30494:6;30489:2;30478:9;30474:18;30467:34;30550:9;30542:6;30538:22;30532:3;30521:9;30517:19;30510:51;30578:32;30603:6;30595;30578:32;:::i;30621:567::-;30943:6;30932:9;30925:25;30986:3;30981:2;30970:9;30966:18;30959:31;30906:4;31007:78;31080:3;31069:9;31065:19;31057:6;31007:78;:::i;:::-;31133:4;31121:17;;;;31116:2;31101:18;;31094:45;-1:-1:-1;31170:2:113;31155:18;31148:34;30999:86;30621:567;-1:-1:-1;;30621:567:113:o;31193:184::-;31263:6;31316:2;31304:9;31295:7;31291:23;31287:32;31284:52;;;31332:1;31329;31322:12;31284:52;-1:-1:-1;31355:16:113;;31193:184;-1:-1:-1;31193:184:113:o;31382:728::-;31750:6;31739:9;31732:25;31793:3;31788:2;31777:9;31773:18;31766:31;31713:4;31820:78;31893:3;31882:9;31878:19;31870:6;31820:78;:::i;:::-;31946:4;31938:6;31934:17;31929:2;31918:9;31914:18;31907:45;32000:9;31992:6;31988:22;31983:2;31972:9;31968:18;31961:50;32028:32;32053:6;32045;32028:32;:::i;:::-;32020:40;;;32097:6;32091:3;32080:9;32076:19;32069:35;31382:728;;;;;;;;:::o;32115:191::-;32150:3;32181:66;32174:5;32171:77;32168:103;;32251:18;;:::i;:::-;-1:-1:-1;32291:1:113;32287:13;;32115:191::o;32311:128::-;32378:9;;;32399:11;;;32396:37;;;32413:18;;:::i;32444:339::-;32621:2;32610:9;32603:21;32584:4;32641:44;32681:2;32670:9;32666:18;32658:6;32641:44;:::i;:::-;32633:52;;-1:-1:-1;;;;;32725:6:113;32721:55;32716:2;32705:9;32701:18;32694:83;32444:339;;;;;:::o;32973:175::-;33010:3;33054:4;33047:5;33043:16;33083:4;33074:7;33071:17;33068:43;;33091:18;;:::i;:::-;33140:1;33127:15;;32973:175;-1:-1:-1;;32973:175:113:o;33153:319::-;33359:6;33348:9;33341:25;33402:2;33397;33386:9;33382:18;33375:30;33322:4;33422:44;33462:2;33451:9;33447:18;33439:6;33422:44;:::i;33477:335::-;33556:6;33609:2;33597:9;33588:7;33584:23;33580:32;33577:52;;;33625:1;33622;33615:12;33577:52;33658:9;33652:16;33691:18;33683:6;33680:30;33677:50;;;33723:1;33720;33713:12;33677:50;33746:60;33798:7;33789:6;33778:9;33774:22;33746:60;:::i;33817:925::-;34266:66;34258:6;34254:79;34249:3;34242:92;34224:3;34353;34385:2;34381:1;34376:3;34372:11;34365:23;34417:6;34411:13;34433:74;34500:6;34496:1;34491:3;34487:11;34480:4;34472:6;34468:17;34433:74;:::i;:::-;34535:6;34530:3;34526:16;34516:26;;34570:2;34566:1;34562:2;34558:10;34551:22;34604:6;34598:13;34582:29;;34620:75;34686:8;34682:1;34678:2;34674:10;34667:4;34659:6;34655:17;34620:75;:::i;:::-;34715:17;34734:1;34711:25;;33817:925;-1:-1:-1;;;;;33817:925:113:o;34747:713::-;35093:6;35088:3;35081:19;35130:6;35125:2;35120:3;35116:12;35109:28;35146:44;35183:6;35146:44;:::i;:::-;35224:3;35220:16;;;;35215:2;35206:12;;35199:38;35262:2;35253:12;;35246:28;;;;35299:2;35290:12;;35283:28;;;;35336:3;35327:13;;35320:29;35374:3;35365:13;;35358:29;35412:3;35403:13;;35396:29;35450:3;35441:13;;34747:713;-1:-1:-1;;34747:713:113:o;35465:639::-;35715:6;35710:3;35703:19;35685:3;35741:2;35774;35769:3;35765:12;35806:6;35800:13;35871:2;35863:6;35859:15;35892:1;35902:175;35916:6;35913:1;35910:13;35902:175;;;35979:13;;35965:28;;36015:14;;;;36052:15;;;;35938:1;35931:9;35902:175;;;-1:-1:-1;36093:5:113;;35465:639;-1:-1:-1;;;;;;;35465:639:113:o;36109:359::-;36312:2;36301:9;36294:21;36275:4;36332:44;36372:2;36361:9;36357:18;36349:6;36332:44;:::i;:::-;36407:2;36392:18;;36385:34;;;;-1:-1:-1;36450:2:113;36435:18;36428:34;36324:52;36109:359;-1:-1:-1;36109:359:113:o;36799:710::-;37133:3;37122:9;37115:22;37096:4;37160:78;37233:3;37222:9;37218:19;37210:6;37160:78;:::i;:::-;37286:9;37278:6;37274:22;37269:2;37258:9;37254:18;37247:50;37320:32;37345:6;37337;37320:32;:::i;:::-;37306:46;;37388:6;37383:2;37372:9;37368:18;37361:34;37443:9;37435:6;37431:22;37426:2;37415:9;37411:18;37404:50;37471:32;37496:6;37488;37471:32;:::i;:::-;37463:40;36799:710;-1:-1:-1;;;;;;;36799:710:113:o;37514:917::-;37967:6;37956:9;37949:25;38010:3;38005:2;37994:9;37990:18;37983:31;37930:4;38037:78;38110:3;38099:9;38095:19;38087:6;38037:78;:::i;:::-;38163:9;38155:6;38151:22;38146:2;38135:9;38131:18;38124:50;38197:32;38222:6;38214;38197:32;:::i;:::-;38183:46;;38265:6;38260:2;38249:9;38245:18;38238:34;38321:9;38313:6;38309:22;38303:3;38292:9;38288:19;38281:51;38349:32;38374:6;38366;38349:32;:::i;:::-;38341:40;;;38418:6;38412:3;38401:9;38397:19;38390:35;37514:917;;;;;;;;;:::o;38436:532::-;38687:2;38676:9;38669:21;38650:4;38713:77;38786:2;38775:9;38771:18;38763:6;38713:77;:::i;:::-;38838:14;38830:6;38826:27;38821:2;38810:9;38806:18;38799:55;38902:9;38894:6;38890:22;38885:2;38874:9;38870:18;38863:50;38930:32;38955:6;38947;38930:32;:::i;38973:636::-;39283:6;39272:9;39265:25;39326:3;39321:2;39310:9;39306:18;39299:31;39246:4;39353:78;39426:3;39415:9;39411:19;39403:6;39353:78;:::i;:::-;39479:14;39471:6;39467:27;39462:2;39451:9;39447:18;39440:55;39543:9;39535:6;39531:22;39526:2;39515:9;39511:18;39504:50;39571:32;39596:6;39588;39571:32;:::i;40061:287::-;40190:3;40228:6;40222:13;40244:66;40303:6;40298:3;40291:4;40283:6;40279:17;40244:66;:::i;:::-;40326:16;;;;;40061:287;-1:-1:-1;;40061:287:113:o;40636:530::-;40821:3;40859:6;40853:13;40875:66;40934:6;40929:3;40922:4;40914:6;40910:17;40875:66;:::i;:::-;41010:2;41006:15;;;;41023:66;41002:88;40963:16;;;;40988:103;;;41118:2;41107:14;;41100:30;;;;41157:2;41146:14;;40636:530;-1:-1:-1;;40636:530:113:o","linkReferences":{"src/libraries/LibChunks.sol":{"LibChunks":[{"start":3395,"length":20}]}}},"methodIdentifiers":{"_calculateMagicAttack()":"bfea0b85","_calculatePhysicalAttack((int256,int256,int256,int256,uint8[]),bytes32,bytes32,uint256,uint256)":"b127ae90","_msgSender()":"119df25f","_msgValue()":"45ec9354","_world()":"e1af802c","calculateGoldDrop(uint256,uint256)":"195e75c4","calculateItemDrop(uint256,uint256)":"32aeffdf","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\":[{\"components\":[{\"internalType\":\"int256\",\"name\":\"bonusDamage\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"armorPenetration\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"attackModifierBonus\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"critChanceBonus\",\"type\":\"int256\"},{\"internalType\":\"uint8[]\",\"name\":\"classRestrictions\",\"type\":\"uint8[]\"}],\"internalType\":\"struct PhysicalAttackStats\",\"name\":\"attackStats\",\"type\":\"tuple\"},{\"internalType\":\"bytes32\",\"name\":\"attackerId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"defenderId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"weaponId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"randomNumber\",\"type\":\"uint256\"}],\"name\":\"_calculatePhysicalAttack\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"damage\",\"type\":\"int256\"},{\"internalType\":\"bool\",\"name\":\"hit\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"crit\",\"type\":\"bool\"}],\"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\":\"uint256\",\"name\":\"mobLevel\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"randomNumber\",\"type\":\"uint256\"}],\"name\":\"calculateGoldDrop\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"dropAmount\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"randomNumber\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"}],\"name\":\"calculateItemDrop\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"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\":\"0xdd3ebcb4c411e951e1d5c68d6287c597f8f6ab874b48ae96600e024326bd7059\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://61cf2ec85c2dcfde0de8d6c12cdb78b59f8b94a8662dd122bc1aca013cc69c7c\",\"dweb:/ipfs/QmdsELzf5enAbpe5ERXRJgyg2PvtiAUiiX7dT85BLtKpCM\"]},\"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\":\"0x84ff02d4275be694bfbe1e60e24539a891dda5df3bacf04f0eb2a974425603d0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f88775b86cdc8322742e528072b64d01df3d3ef70d4fc5104412522e468ae4e2\",\"dweb:/ipfs/Qme75CeS2sA8pr1Tyx9GN5atmuG4aBGjMPaagaGtYTjc2R\"]},\"src/codegen/tables/Actions.sol\":{\"keccak256\":\"0x63cd48bebaa0414728e9be2c856e4eb01efaead6627a6615da4c77b886805cef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1dfe138555b67362f41c26ce1ab074bfc1fcc4e7c6fd0284b82cc699d80d392\",\"dweb:/ipfs/QmNf8UGE3FZ4U96HkeioE4peWWz1SKPAjhKRrGnpEnCdkQ\"]},\"src/codegen/tables/Admin.sol\":{\"keccak256\":\"0xe3b7e993ca2e420d73b845fb37388d453486e24522b941503a2f81c639769725\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e638c35d3ec5805180122b70849bd3a93aa680f3251ac9e7fe4f0ff24722f614\",\"dweb:/ipfs/QmVL3xJPrsVDgXQTdxBEkq4PRmyNDCFHGHKJxLQzuFy9XJ\"]},\"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/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\":\"0x1f0b21a82c18d474347446546973619289392ee9cc745eccbfb4ba802771b2e2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f0a514e9aa8c0265e8ac7284587cdfec829ad4904e511a284d44a325f9ee511b\",\"dweb:/ipfs/QmYGbphJpnBQMsTEtAM78kqH56FrzrmBFVNthRM4WLdUSQ\"]},\"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\":\"0xe941a99c5bc6b4f21b69b4ad61870a3c4b35fa3a7d8e162c75ac3e7515717891\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://eaa285996201485c500f114b98515ce121d87ec29780085dc509d32dff96b227\",\"dweb:/ipfs/QmbnDdw5KqwfGspTKgikXCkvn6Gi6mVWca2yXiPoumhEJP\"]},\"src/codegen/tables/UltimateDominionConfig.sol\":{\"keccak256\":\"0x6f439f3fef2c4db3b295718bb3e277f59500a3183f2306fe70890a30c3eeff26\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bde32ff627c137c1b52e6f45ff82df52eee9e6fe8fa668fc791132dba187f256\",\"dweb:/ipfs/Qmcj4S8ysUA1Lv8xbA5i1dzn4wwKPQrCEjpUd1MW6rh21w\"]},\"src/codegen/world/IActionSystem.sol\":{\"keccak256\":\"0x3ea10f6af2b29e07f658e961113a68db383bb5df7ec853bd797bd1cc14d19b0d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c834cb0bb80ffe10c6175f8a16b827dde9804d459e6aa33691484e419587d47f\",\"dweb:/ipfs/QmXnLXquHjNXN8CCsEL3NPNrQHW6UWY78oginRPtcHZFcw\"]},\"src/codegen/world/ICharacterSystem.sol\":{\"keccak256\":\"0x54157279932a37b055d247901f034848c1f0bffbf262028cf9c69eeedc9b7235\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ead77ae9ab020f705a998be6229e975b9352486deaa9aa800b6de10338190782\",\"dweb:/ipfs/QmaLrytghaAH6ipaBr4XwsaBcCzeVa5gujHGRNxeztuo4X\"]},\"src/codegen/world/ICombatSystem.sol\":{\"keccak256\":\"0x8b522a844626b33d69ae186dd26f2f7bfd921bf92ed7ed0cee2b8c349d9b64f9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://647f99949a4584cf4b528415ffea01ad243147548455fe5a8373b042b6af3087\",\"dweb:/ipfs/QmYsgXQDTwrqg7YSJkKtiNZzf63f4jdA4xfni5gb9ap5K5\"]},\"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\":\"0xc6caadf1800d688083c234a12cd151746f0271be03a50bb6a654634270ab0864\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://084766afac89e6f74162f69534635f90ec56570019223e22d20342f7853fb4e0\",\"dweb:/ipfs/QmbrQXrTewfgW2NydLgPCdt3Vton5V7nfE7HViXtyrMnoK\"]},\"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\":\"0xfb774a3d4388291fa5bae54bf1c592cc366a0585e6d24388dfeebaf3abd666b4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0986371fcb9f53bac88f2c190faf0f5a77fac686eced664aed5f2f1eb6eaca64\",\"dweb:/ipfs/QmWdgLEV31t27nNQC1KGEfaZHFcuBUayxHm2giZJpAG8hv\"]},\"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\":\"0x22d65c64ce4ebff13ef3adebf2021db5ea2cfc01001a0a177421320227ab4b56\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4c3eee91d607e056de292ae040f2b969fb14e94c47b086906394519490f19ee1\",\"dweb:/ipfs/QmVe74VEQKZ22uq4dbphmu6qc6PwhkrYD5TffUBCawWbU8\"]},\"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":[{"internalType":"struct PhysicalAttackStats","name":"attackStats","type":"tuple","components":[{"internalType":"int256","name":"bonusDamage","type":"int256"},{"internalType":"int256","name":"armorPenetration","type":"int256"},{"internalType":"int256","name":"attackModifierBonus","type":"int256"},{"internalType":"int256","name":"critChanceBonus","type":"int256"},{"internalType":"uint8[]","name":"classRestrictions","type":"uint8[]"}]},{"internalType":"bytes32","name":"attackerId","type":"bytes32"},{"internalType":"bytes32","name":"defenderId","type":"bytes32"},{"internalType":"uint256","name":"weaponId","type":"uint256"},{"internalType":"uint256","name":"randomNumber","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"_calculatePhysicalAttack","outputs":[{"internalType":"int256","name":"damage","type":"int256"},{"internalType":"bool","name":"hit","type":"bool"},{"internalType":"bool","name":"crit","type":"bool"}]},{"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":"uint256","name":"mobLevel","type":"uint256"},{"internalType":"uint256","name":"randomNumber","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"calculateGoldDrop","outputs":[{"internalType":"uint256","name":"dropAmount","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"randomNumber","type":"uint256"},{"internalType":"uint256","name":"itemId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"calculateItemDrop","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"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":"0xdd3ebcb4c411e951e1d5c68d6287c597f8f6ab874b48ae96600e024326bd7059","urls":["bzz-raw://61cf2ec85c2dcfde0de8d6c12cdb78b59f8b94a8662dd122bc1aca013cc69c7c","dweb:/ipfs/QmdsELzf5enAbpe5ERXRJgyg2PvtiAUiiX7dT85BLtKpCM"],"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":"0x84ff02d4275be694bfbe1e60e24539a891dda5df3bacf04f0eb2a974425603d0","urls":["bzz-raw://f88775b86cdc8322742e528072b64d01df3d3ef70d4fc5104412522e468ae4e2","dweb:/ipfs/Qme75CeS2sA8pr1Tyx9GN5atmuG4aBGjMPaagaGtYTjc2R"],"license":"MIT"},"src/codegen/tables/Actions.sol":{"keccak256":"0x63cd48bebaa0414728e9be2c856e4eb01efaead6627a6615da4c77b886805cef","urls":["bzz-raw://c1dfe138555b67362f41c26ce1ab074bfc1fcc4e7c6fd0284b82cc699d80d392","dweb:/ipfs/QmNf8UGE3FZ4U96HkeioE4peWWz1SKPAjhKRrGnpEnCdkQ"],"license":"MIT"},"src/codegen/tables/Admin.sol":{"keccak256":"0xe3b7e993ca2e420d73b845fb37388d453486e24522b941503a2f81c639769725","urls":["bzz-raw://e638c35d3ec5805180122b70849bd3a93aa680f3251ac9e7fe4f0ff24722f614","dweb:/ipfs/QmVL3xJPrsVDgXQTdxBEkq4PRmyNDCFHGHKJxLQzuFy9XJ"],"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/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":"0x1f0b21a82c18d474347446546973619289392ee9cc745eccbfb4ba802771b2e2","urls":["bzz-raw://f0a514e9aa8c0265e8ac7284587cdfec829ad4904e511a284d44a325f9ee511b","dweb:/ipfs/QmYGbphJpnBQMsTEtAM78kqH56FrzrmBFVNthRM4WLdUSQ"],"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":"0xe941a99c5bc6b4f21b69b4ad61870a3c4b35fa3a7d8e162c75ac3e7515717891","urls":["bzz-raw://eaa285996201485c500f114b98515ce121d87ec29780085dc509d32dff96b227","dweb:/ipfs/QmbnDdw5KqwfGspTKgikXCkvn6Gi6mVWca2yXiPoumhEJP"],"license":"MIT"},"src/codegen/tables/UltimateDominionConfig.sol":{"keccak256":"0x6f439f3fef2c4db3b295718bb3e277f59500a3183f2306fe70890a30c3eeff26","urls":["bzz-raw://bde32ff627c137c1b52e6f45ff82df52eee9e6fe8fa668fc791132dba187f256","dweb:/ipfs/Qmcj4S8ysUA1Lv8xbA5i1dzn4wwKPQrCEjpUd1MW6rh21w"],"license":"MIT"},"src/codegen/world/IActionSystem.sol":{"keccak256":"0x3ea10f6af2b29e07f658e961113a68db383bb5df7ec853bd797bd1cc14d19b0d","urls":["bzz-raw://c834cb0bb80ffe10c6175f8a16b827dde9804d459e6aa33691484e419587d47f","dweb:/ipfs/QmXnLXquHjNXN8CCsEL3NPNrQHW6UWY78oginRPtcHZFcw"],"license":"MIT"},"src/codegen/world/ICharacterSystem.sol":{"keccak256":"0x54157279932a37b055d247901f034848c1f0bffbf262028cf9c69eeedc9b7235","urls":["bzz-raw://ead77ae9ab020f705a998be6229e975b9352486deaa9aa800b6de10338190782","dweb:/ipfs/QmaLrytghaAH6ipaBr4XwsaBcCzeVa5gujHGRNxeztuo4X"],"license":"MIT"},"src/codegen/world/ICombatSystem.sol":{"keccak256":"0x8b522a844626b33d69ae186dd26f2f7bfd921bf92ed7ed0cee2b8c349d9b64f9","urls":["bzz-raw://647f99949a4584cf4b528415ffea01ad243147548455fe5a8373b042b6af3087","dweb:/ipfs/QmYsgXQDTwrqg7YSJkKtiNZzf63f4jdA4xfni5gb9ap5K5"],"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":"0xc6caadf1800d688083c234a12cd151746f0271be03a50bb6a654634270ab0864","urls":["bzz-raw://084766afac89e6f74162f69534635f90ec56570019223e22d20342f7853fb4e0","dweb:/ipfs/QmbrQXrTewfgW2NydLgPCdt3Vton5V7nfE7HViXtyrMnoK"],"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":"0xfb774a3d4388291fa5bae54bf1c592cc366a0585e6d24388dfeebaf3abd666b4","urls":["bzz-raw://0986371fcb9f53bac88f2c190faf0f5a77fac686eced664aed5f2f1eb6eaca64","dweb:/ipfs/QmWdgLEV31t27nNQC1KGEfaZHFcuBUayxHm2giZJpAG8hv"],"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":"0x22d65c64ce4ebff13ef3adebf2021db5ea2cfc01001a0a177421320227ab4b56","urls":["bzz-raw://4c3eee91d607e056de292ae040f2b969fb14e94c47b086906394519490f19ee1","dweb:/ipfs/QmVe74VEQKZ22uq4dbphmu6qc6PwhkrYD5TffUBCawWbU8"],"license":"MIT"},"src/utils.sol":{"keccak256":"0xf50d451bb280fb33e08f521e168952f5145e69eee7df284ffeb1865b8b5187cc","urls":["bzz-raw://a78e6326639bdf19f606921e48c90663f387cbfd7d8160a461838e9ca6a0fc57","dweb:/ipfs/QmPT6PNCCQKWVP9bwYC4JyfuXJSgbupsgq6MT898gYfa1q"],"license":"MIT"}},"version":1},"id":111} \ No newline at end of file diff --git a/packages/contracts/out/EquipmentSystem.sol/EquipmentSystem.abi.json b/packages/contracts/out/EquipmentSystem.sol/EquipmentSystem.abi.json new file mode 100644 index 000000000..378db43c1 --- /dev/null +++ b/packages/contracts/out/EquipmentSystem.sol/EquipmentSystem.abi.json @@ -0,0 +1,498 @@ +[ + { + "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": "applyEquipmentBonuses", + "inputs": [ + { + "name": "entityId", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [ + { + "name": "modifiedStats", + "type": "tuple", + "internalType": "struct AdjustedCombatStats", + "components": [ + { + "name": "adjustedStrength", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "adjustedAgility", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "adjustedIntelligence", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "adjustedArmor", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "adjustedMaxHp", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "currentHp", + "type": "int256", + "internalType": "int256" + }, + { + "name": "level", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "class", + "type": "uint256", + "internalType": "uint256" + } + ] + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "checkRequirements", + "inputs": [ + { + "name": "characterId", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "itemId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "canUse", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "equipItems", + "inputs": [ + { + "name": "characterId", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "itemIds", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "getArmorStats", + "inputs": [ + { + "name": "itemId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "_ArmorStats", + "type": "tuple", + "internalType": "struct ArmorStats", + "components": [ + { + "name": "agiModifier", + "type": "int256", + "internalType": "int256" + }, + { + "name": "armorModifier", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "classRestrictions", + "type": "uint8[]", + "internalType": "uint8[]" + }, + { + "name": "hitPointModifier", + "type": "int256", + "internalType": "int256" + }, + { + "name": "intModifier", + "type": "int256", + "internalType": "int256" + }, + { + "name": "minLevel", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "strModifier", + "type": "int256", + "internalType": "int256" + } + ] + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getWeaponStats", + "inputs": [ + { + "name": "itemId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "_weaponStats", + "type": "tuple", + "internalType": "struct WeaponStats", + "components": [ + { + "name": "agiModifier", + "type": "int256", + "internalType": "int256" + }, + { + "name": "classRestrictions", + "type": "uint8[]", + "internalType": "uint8[]" + }, + { + "name": "hitPointModifier", + "type": "int256", + "internalType": "int256" + }, + { + "name": "intModifier", + "type": "int256", + "internalType": "int256" + }, + { + "name": "maxDamage", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "minDamage", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "minLevel", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "strModifier", + "type": "int256", + "internalType": "int256" + } + ] + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "isEquipped", + "inputs": [ + { + "name": "characterId", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "itemId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "_isEquipped", + "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": "function", + "name": "unequipItem", + "inputs": [ + { + "name": "characterId", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "itemId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "success", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "event", + "name": "Store_SpliceDynamicData", + "inputs": [ + { + "name": "tableId", + "type": "bytes32", + "indexed": true, + "internalType": "ResourceId" + }, + { + "name": "keyTuple", + "type": "bytes32[]", + "indexed": false, + "internalType": "bytes32[]" + }, + { + "name": "dynamicFieldIndex", + "type": "uint8", + "indexed": false, + "internalType": "uint8" + }, + { + "name": "start", + "type": "uint48", + "indexed": false, + "internalType": "uint48" + }, + { + "name": "deleteCount", + "type": "uint40", + "indexed": false, + "internalType": "uint40" + }, + { + "name": "encodedLengths", + "type": "bytes32", + "indexed": false, + "internalType": "EncodedLengths" + }, + { + "name": "data", + "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": "EncodedLengths_InvalidLength", + "inputs": [ + { + "name": "length", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "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": "Store_IndexOutOfBounds", + "inputs": [ + { + "name": "length", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "accessedIndex", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "Store_InvalidResourceType", + "inputs": [ + { + "name": "expected", + "type": "bytes2", + "internalType": "bytes2" + }, + { + "name": "resourceId", + "type": "bytes32", + "internalType": "ResourceId" + }, + { + "name": "resourceIdString", + "type": "string", + "internalType": "string" + } + ] + }, + { + "type": "error", + "name": "Store_InvalidSplice", + "inputs": [ + { + "name": "startWithinField", + "type": "uint40", + "internalType": "uint40" + }, + { + "name": "deleteCount", + "type": "uint40", + "internalType": "uint40" + }, + { + "name": "fieldLength", + "type": "uint40", + "internalType": "uint40" + } + ] + } +] \ No newline at end of file diff --git a/packages/contracts/out/EquipmentSystem.sol/EquipmentSystem.abi.json.d.ts b/packages/contracts/out/EquipmentSystem.sol/EquipmentSystem.abi.json.d.ts new file mode 100644 index 000000000..c09a36e62 --- /dev/null +++ b/packages/contracts/out/EquipmentSystem.sol/EquipmentSystem.abi.json.d.ts @@ -0,0 +1,498 @@ +declare const abi: [ + { + "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": "applyEquipmentBonuses", + "inputs": [ + { + "name": "entityId", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [ + { + "name": "modifiedStats", + "type": "tuple", + "internalType": "struct AdjustedCombatStats", + "components": [ + { + "name": "adjustedStrength", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "adjustedAgility", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "adjustedIntelligence", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "adjustedArmor", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "adjustedMaxHp", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "currentHp", + "type": "int256", + "internalType": "int256" + }, + { + "name": "level", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "class", + "type": "uint256", + "internalType": "uint256" + } + ] + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "checkRequirements", + "inputs": [ + { + "name": "characterId", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "itemId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "canUse", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "equipItems", + "inputs": [ + { + "name": "characterId", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "itemIds", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "getArmorStats", + "inputs": [ + { + "name": "itemId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "_ArmorStats", + "type": "tuple", + "internalType": "struct ArmorStats", + "components": [ + { + "name": "agiModifier", + "type": "int256", + "internalType": "int256" + }, + { + "name": "armorModifier", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "classRestrictions", + "type": "uint8[]", + "internalType": "uint8[]" + }, + { + "name": "hitPointModifier", + "type": "int256", + "internalType": "int256" + }, + { + "name": "intModifier", + "type": "int256", + "internalType": "int256" + }, + { + "name": "minLevel", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "strModifier", + "type": "int256", + "internalType": "int256" + } + ] + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getWeaponStats", + "inputs": [ + { + "name": "itemId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "_weaponStats", + "type": "tuple", + "internalType": "struct WeaponStats", + "components": [ + { + "name": "agiModifier", + "type": "int256", + "internalType": "int256" + }, + { + "name": "classRestrictions", + "type": "uint8[]", + "internalType": "uint8[]" + }, + { + "name": "hitPointModifier", + "type": "int256", + "internalType": "int256" + }, + { + "name": "intModifier", + "type": "int256", + "internalType": "int256" + }, + { + "name": "maxDamage", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "minDamage", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "minLevel", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "strModifier", + "type": "int256", + "internalType": "int256" + } + ] + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "isEquipped", + "inputs": [ + { + "name": "characterId", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "itemId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "_isEquipped", + "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": "function", + "name": "unequipItem", + "inputs": [ + { + "name": "characterId", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "itemId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "success", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "event", + "name": "Store_SpliceDynamicData", + "inputs": [ + { + "name": "tableId", + "type": "bytes32", + "indexed": true, + "internalType": "ResourceId" + }, + { + "name": "keyTuple", + "type": "bytes32[]", + "indexed": false, + "internalType": "bytes32[]" + }, + { + "name": "dynamicFieldIndex", + "type": "uint8", + "indexed": false, + "internalType": "uint8" + }, + { + "name": "start", + "type": "uint48", + "indexed": false, + "internalType": "uint48" + }, + { + "name": "deleteCount", + "type": "uint40", + "indexed": false, + "internalType": "uint40" + }, + { + "name": "encodedLengths", + "type": "bytes32", + "indexed": false, + "internalType": "EncodedLengths" + }, + { + "name": "data", + "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": "EncodedLengths_InvalidLength", + "inputs": [ + { + "name": "length", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "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": "Store_IndexOutOfBounds", + "inputs": [ + { + "name": "length", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "accessedIndex", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "Store_InvalidResourceType", + "inputs": [ + { + "name": "expected", + "type": "bytes2", + "internalType": "bytes2" + }, + { + "name": "resourceId", + "type": "bytes32", + "internalType": "ResourceId" + }, + { + "name": "resourceIdString", + "type": "string", + "internalType": "string" + } + ] + }, + { + "type": "error", + "name": "Store_InvalidSplice", + "inputs": [ + { + "name": "startWithinField", + "type": "uint40", + "internalType": "uint40" + }, + { + "name": "deleteCount", + "type": "uint40", + "internalType": "uint40" + }, + { + "name": "fieldLength", + "type": "uint40", + "internalType": "uint40" + } + ] + } +]; export default abi; diff --git a/packages/contracts/out/EquipmentSystem.sol/EquipmentSystem.json b/packages/contracts/out/EquipmentSystem.sol/EquipmentSystem.json new file mode 100644 index 000000000..5e76453e6 --- /dev/null +++ b/packages/contracts/out/EquipmentSystem.sol/EquipmentSystem.json @@ -0,0 +1 @@ +{"abi":[{"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":"applyEquipmentBonuses","inputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"modifiedStats","type":"tuple","internalType":"struct AdjustedCombatStats","components":[{"name":"adjustedStrength","type":"uint256","internalType":"uint256"},{"name":"adjustedAgility","type":"uint256","internalType":"uint256"},{"name":"adjustedIntelligence","type":"uint256","internalType":"uint256"},{"name":"adjustedArmor","type":"uint256","internalType":"uint256"},{"name":"adjustedMaxHp","type":"uint256","internalType":"uint256"},{"name":"currentHp","type":"int256","internalType":"int256"},{"name":"level","type":"uint256","internalType":"uint256"},{"name":"class","type":"uint256","internalType":"uint256"}]}],"stateMutability":"view"},{"type":"function","name":"checkRequirements","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"itemId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"canUse","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"equipItems","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"itemIds","type":"uint256[]","internalType":"uint256[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"getArmorStats","inputs":[{"name":"itemId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"_ArmorStats","type":"tuple","internalType":"struct ArmorStats","components":[{"name":"agiModifier","type":"int256","internalType":"int256"},{"name":"armorModifier","type":"uint256","internalType":"uint256"},{"name":"classRestrictions","type":"uint8[]","internalType":"uint8[]"},{"name":"hitPointModifier","type":"int256","internalType":"int256"},{"name":"intModifier","type":"int256","internalType":"int256"},{"name":"minLevel","type":"uint256","internalType":"uint256"},{"name":"strModifier","type":"int256","internalType":"int256"}]}],"stateMutability":"view"},{"type":"function","name":"getWeaponStats","inputs":[{"name":"itemId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"_weaponStats","type":"tuple","internalType":"struct WeaponStats","components":[{"name":"agiModifier","type":"int256","internalType":"int256"},{"name":"classRestrictions","type":"uint8[]","internalType":"uint8[]"},{"name":"hitPointModifier","type":"int256","internalType":"int256"},{"name":"intModifier","type":"int256","internalType":"int256"},{"name":"maxDamage","type":"uint256","internalType":"uint256"},{"name":"minDamage","type":"uint256","internalType":"uint256"},{"name":"minLevel","type":"uint256","internalType":"uint256"},{"name":"strModifier","type":"int256","internalType":"int256"}]}],"stateMutability":"view"},{"type":"function","name":"isEquipped","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"itemId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"_isEquipped","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":"function","name":"unequipItem","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"itemId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"success","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"event","name":"Store_SpliceDynamicData","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","indexed":false,"internalType":"uint8"},{"name":"start","type":"uint48","indexed":false,"internalType":"uint48"},{"name":"deleteCount","type":"uint40","indexed":false,"internalType":"uint40"},{"name":"encodedLengths","type":"bytes32","indexed":false,"internalType":"EncodedLengths"},{"name":"data","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":"EncodedLengths_InvalidLength","inputs":[{"name":"length","type":"uint256","internalType":"uint256"}]},{"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":"Store_IndexOutOfBounds","inputs":[{"name":"length","type":"uint256","internalType":"uint256"},{"name":"accessedIndex","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidResourceType","inputs":[{"name":"expected","type":"bytes2","internalType":"bytes2"},{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"Store_InvalidSplice","inputs":[{"name":"startWithinField","type":"uint40","internalType":"uint40"},{"name":"deleteCount","type":"uint40","internalType":"uint40"},{"name":"fieldLength","type":"uint40","internalType":"uint40"}]}],"bytecode":{"object":"0x608060405234801561001057600080fd5b50614373806100206000396000f3fe608060405234801561001057600080fd5b50600436106100c95760003560e01c80639056fa2811610081578063cc77a2de1161005b578063cc77a2de14610203578063e1af802c14610218578063edcfef821461022057600080fd5b80639056fa28146101695780639a8bb9a2146101dd578063b2aca84b146101f057600080fd5b806340a5ed2a116100b257806340a5ed2a1461011657806345ec93541461013657806363ff22871461014957600080fd5b806301ffc9a7146100ce578063119df25f146100f6575b600080fd5b6100e16100dc36600461388a565b610233565b60405190151581526020015b60405180910390f35b6100fe6102cc565b6040516001600160a01b0390911681526020016100ed565b6101296101243660046138cc565b6102db565b6040516100ed9190613924565b604051601f1936013581526020016100ed565b61015c6101573660046138cc565b6103ae565b6040516100ed9190613989565b61017c6101773660046138cc565b61047d565b6040516100ed9190600061010082019050825182526020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015260c083015160c083015260e083015160e083015292915050565b6100e16101eb3660046139fa565b61061e565b6100e16101fe3660046139fa565b61080a565b610216610211366004613ad4565b610b4a565b005b6100fe610e9a565b6100e161022e3660046139fa565b610ea4565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee1270000000000000000000000000000000000000000000000000000000014806102c657507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b60006102d661102f565b905090565b61031b6040518060e00160405280600081526020016000815260200160608152602001600081526020016000815260200160008152602001600081525090565b600061032683611061565b905060018151600581111561033d5761033d613b76565b1461038f5760405162461bcd60e51b815260206004820152601360248201527f4954454d533a204e6f742061202041726d6f720000000000000000000000000060448201526064015b60405180910390fd5b80604001518060200190518101906103a79190613c06565b9392505050565b6103f660405180610100016040528060008152602001606081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b600061040183611061565b905060008151600581111561041857610418613b76565b146104655760405162461bcd60e51b815260206004820152601460248201527f4954454d533a204e6f7420612020776561706f6e0000000000000000000000006044820152606401610386565b80604001518060200190518101906103a79190613cb2565b6104c560405180610100016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b60006104d08361112a565b905061051a60405180610100016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b6000610525856111d2565b805184519192506000916105399190613d7f565b1215610546576000610554565b805183516105549190613d7f565b82526020808201519084015160009161056c91613d7f565b121561057957600061058d565b8060200151836020015161058d9190613d7f565b6020830152604081015160608401516000916105a891613d7f565b12156105b55760006105c9565b806040015183606001516105c99190613d7f565b6040830152606081015160808401516000916105e491613d7f565b12156105f1576001610605565b806060015183608001516106059190613d7f565b60808301525060a0918201519181019190915292915050565b60008061062a83611061565b905060006106378561112a565b825160019450909150600581111561065157610651613b76565b60ff1660000361072057600082604001518060200190518101906106759190613cb2565b60c081015160e0840151602083015151929350101590600090156107035760005b8360200151518110156106fd57836020015181815181106106b9576106b9613d9f565b602002602001015160ff16856040015160028111156106da576106da613b76565b60ff16036106eb57600191506106fd565b806106f581613db5565b915050610696565b50610707565b5060015b811580610712575080155b1561071c57600095505b5050505b8151600581111561073357610733613b76565b60ff1660010361080257600082604001518060200190518101906107579190613c06565b60a081015160e0840151604083015151929350101590600090156107e55760005b8360400151518110156107df578360400151818151811061079b5761079b613d9f565b602002602001015160ff16856040015160028111156107bc576107bc613b76565b60ff16036107cd57600191506107df565b806107d781613db5565b915050610778565b506107e9565b5060015b8115806107f4575080155b156107fe57600095505b5050505b505092915050565b6000826000610818826112ba565b9050806060015161086b5760405162461bcd60e51b815260206004820152601960248201527f436861726163746572206e6f7420696e207468652047616d65000000000000006044820152606401610386565b6000610875610e9a565b6001600160a01b031663777c2caf876040518263ffffffff1660e01b81526004016108a291815260200190565b602060405180830381865afa1580156108bf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108e39190613dcf565b90506108ed6102cc565b6001600160a01b0316816001600160a01b03161461094d5760405162461bcd60e51b815260206004820152601a60248201527f4954454d533a204e6f7420436861726163746572204f776e65720000000000006044820152606401610386565b6000610957610e9a565b6001600160a01b031663cdaccbae876040518263ffffffff1660e01b815260040161098491815260200190565b602060405180830381865afa1580156109a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109c59190613df8565b60058111156109d6576109d6613b76565b905060ff8116610a415760006109f4876109ef8a61137f565b611411565b9050868160018351610a069190613e19565b81518110610a1657610a16613d9f565b602002602001015103610a3b57610a2d88826114e6565b610a3688611561565b600195505b50610b37565b60001960ff821601610a9e576000610a5c876109ef8a6115d8565b9050868160018351610a6e9190613e19565b81518110610a7e57610a7e613d9f565b602002602001015103610a3b57610a95888261164a565b610a36886116bb565b7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe60ff82160115610b375760405162461bcd60e51b815260206004820152602160248201527f45515549504d454e543a20554e5245434f474e495a4544204954454d2054595060448201527f45000000000000000000000000000000000000000000000000000000000000006064820152608401610386565b610b408761172e565b5050505092915050565b816000610b56826112ba565b90508060600151610ba95760405162461bcd60e51b815260206004820152601960248201527f436861726163746572206e6f7420696e207468652047616d65000000000000006044820152606401610386565b6000610bb3610e9a565b6001600160a01b031663777c2caf866040518263ffffffff1660e01b8152600401610be091815260200190565b602060405180830381865afa158015610bfd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c219190613dcf565b9050610c2b6102cc565b6001600160a01b0316816001600160a01b031614610c8b5760405162461bcd60e51b815260206004820152601a60248201527f4954454d533a204e6f7420436861726163746572204f776e65720000000000006044820152606401610386565b6000805b8551811015610e8857858181518110610caa57610caa613d9f565b60200260200101519150610cbc610e9a565b6001600160a01b031663b363411883610cd36102cc565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815260048101929092526001600160a01b03166024820152604401602060405180830381865afa158015610d35573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d599190613e2c565b610da55760405162461bcd60e51b815260206004820152601560248201527f4954454d533a204e6f74204974656d204f776e657200000000000000000000006044820152606401610386565b6000610db083611061565b9050600381600001516005811115610dca57610dca613b76565b60ff1610610e1a5760405162461bcd60e51b815260206004820152601d60248201527f4954454d533a204e6f7420616e2065717569707061626c65204974656d0000006044820152606401610386565b610e24888461061e565b610e705760405162461bcd60e51b815260206004820152601b60248201527f4954454d533a20526571756972656d656e7473206e6f74206d657400000000006044820152606401610386565b610e7f88848360000151611934565b50600101610c8f565b50610e928661172e565b505050505050565b60006102d6611a9f565b600080610eb083611061565b80519091506005811115610ec657610ec6613b76565b60ff16600003610f2b576000610edb8561137f565b905060005b8151811015610f245784828281518110610efc57610efc613d9f565b602002602001015103610f125760019350610f24565b80610f1c81613db5565b915050610ee0565b5050611028565b80516005811115610f3e57610f3e613b76565b60ff16600103610f9c576000610f53856115d8565b905060005b8151811015610f245784828281518110610f7457610f74613d9f565b602002602001015103610f8a5760019350610f24565b80610f9481613db5565b915050610f58565b80516005811115610faf57610faf613b76565b60ff16600203156110285760405162461bcd60e51b815260206004820152602160248201527f45515549504d454e543a20554e5245434f474e495a4544204954454d2054595060448201527f45000000000000000000000000000000000000000000000000000000000000006064820152608401610386565b5092915050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c8061105e5750335b90565b60408051606080820183526000808352602083015291810191909152604080516001808252818301909252600091602080830190803683370190505090508260001b816000815181106110b6576110b6613d9f565b60209081029190910101526000808061110f7f746255440000000000000000000000004974656d730000000000000000000000857e21020101200000000000000000000000000000000000000000000000000000611aa9565b925092509250611120838383611b79565b9695505050505050565b611132613834565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061116857611168613d9f565b6020908102919091010152600080806111c17f7462554400000000000000000000000053746174730000000000000000000000857ee1080020200120202020200000000000000000000000000000000000000000611aa9565b925092509250611120838383611be4565b61121a60405180610100016040528060008152602001600081526020016000815260200160008152602001600081526020016060815260200160608152602001606081525090565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061125057611250613d9f565b6020908102919091010152600080806112a97f7462554400000000000000000000000043686172616374657245717569706d65857ea0050320202020200000000000000000000000000000000000000000000000611aa9565b925092509250611120838383611c5c565b6040805160808101825260008082526020820181905281830181905260608201819052825160018082528185019094529192909190816020016020820280368337019050509050828160008151811061131557611315613d9f565b60209081029190910101526000808061136e7f7462554400000000000000000000000043686172616374657273000000000000857e55040020142001000000000000000000000000000000000000000000000000611aa9565b925092509250611120838383611ce3565b604080516001808252818301909252606091600091906020808301908036833701905050905082816000815181106113b9576113b9613d9f565b602090810291909101015260006113f27f7462554400000000000000000000000043686172616374657245717569706d65836001611d33565b90506114096114048260008451611dfa565b611e88565b949350505050565b60606001825111156114e05760005b82518110156114da578383828151811061143c5761143c613d9f565b6020026020010151036114c8576000836001855161145a9190613e19565b8151811061146a5761146a613d9f565b602002602001015190508084838151811061148757611487613d9f565b6020026020010181815250508484600186516114a39190613e19565b815181106114b3576114b3613d9f565b602002602001018181525050839250506114da565b806114d281613db5565b915050611420565b506102c6565b50919050565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061151c5761151c613d9f565b602090810291909101015261155c7f7462554400000000000000000000000043686172616374657245717569706d6582600161155786611e99565b611ea9565b505050565b60408051600180825281830190925260009160208083019080368337019050509050818160008151811061159757611597613d9f565b6020026020010181815250506115d47f7462554400000000000000000000000043686172616374657245717569706d6560001b8260016020611f5b565b5050565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061161257611612613d9f565b602090810291909101015260006113f27f7462554400000000000000000000000043686172616374657245717569706d658383611d33565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061168057611680613d9f565b602090810291909101015261155c7f7462554400000000000000000000000043686172616374657245717569706d6582600061155786611e99565b6040805160018082528183019092526000916020808301908036833701905050905081816000815181106116f1576116f1613d9f565b6020026020010181815250506115d47f7462554400000000000000000000000043686172616374657245717569706d6560001b8260006020611f5b565b6000611739826115d8565b905060006117468361137f565b905060008060008060006117906040518060e00160405280600081526020016000815260200160608152602001600081526020016000815260200160008152602001600081525090565b6117d860405180610100016040528060008152602001606081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b8851156118705760005b895181101561186e5761180d8a828151811061180057611800613d9f565b60200260200101516102db565b925082602001518861181f9190613e4e565b97508260c00151876118319190613d7f565b83519097506118409087613d7f565b95508260800151856118529190613d7f565b94508260600151846118649190613d7f565b93506001016117e2565b505b8751156118f65760005b88518110156118f4576118a589828151811061189857611898613d9f565b60200260200101516103ae565b91508160e00151876118b79190613d7f565b82519097506118c69087613d7f565b95508160600151856118d89190613d7f565b94508160400151846118ea9190613d7f565b935060010161187a565b505b6119008a87611fce565b61190a8a86612082565b6119148a85612101565b61191e8a84612180565b6119288a886121ff565b50505050505050505050565b61193e8383610ea4565b1561198b5760405162461bcd60e51b815260206004820152601b60248201527f45515549504d454e543a20414c524541445920455155495050454400000000006044820152606401610386565b80600581111561199d5761199d613b76565b60ff16600003611a095760036119b28461227e565b106119ff5760405162461bcd60e51b815260206004820181905260248201527f4954454d533a20546f6f206d616e7920776561706f6e732065717569707065646044820152606401610386565b611a0983836122fc565b806005811115611a1b57611a1b613b76565b60ff16600103611a87576003611a308461238f565b10611a7d5760405162461bcd60e51b815260206004820181905260248201527f4954454d533a20546f6f206d616e7920776561706f6e732065717569707065646044820152606401610386565b611a878383612400565b806005811115611a9957611a99613b76565b50505050565b60006102d661247f565b6060600060606000611ab961247f565b9050306001600160a01b03821603611ae257611ad68787876124be565b93509350935050611b70565b6040517f419b58fd0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063419b58fd90611b2b908a908a908a90600401613e92565b600060405180830381865afa158015611b48573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611ad69190810190613f43565b93509350939050565b60408051606080820183526000808352602083015291810191909152611b9e846125c6565b6020830181905282826005811115611bb857611bb8613b76565b6005811115611bc957611bc9613b76565b8152505050611bd883836125f2565b60408201529392505050565b611bec613834565b611bf58461261e565b60e0890181905260c0890182905260a089018390526080890184905260608901859052886020810160408201886002811115611c3357611c33613b76565b6002811115611c4457611c44613b76565b90529790975250505093909252509195945050505050565b611ca460405180610100016040528060008152602001600081526020016000815260200160008152602001600081526020016060815260200160608152602001606081525090565b611cad8461268c565b60808601526060850152604084015260208301528152611ccd83836126c8565b60e084015260c083015260a08201529392505050565b604080516080810182526000808252602082018190529181018290526060810191909152611d1084612733565b1515606085015260408401526001600160a01b0316602083015281529392505050565b60606000611d3f61247f565b9050306001600160a01b03821603611d6457611d5c85858561276d565b9150506103a7565b6040517f1e7889770000000000000000000000000000000000000000000000000000000081526001600160a01b03821690631e78897790611dad90889088908890600401613fb0565b600060405180830381865afa158015611dca573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611d5c9190810190613fdc565b509392505050565b600081831180611e0a5750835182115b15611e47578383836040517f23230fa30000000000000000000000000000000000000000000000000000000081526004016103869392919061403d565b60208401611e558482613e4e565b90506000611e638585613e19565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b606060006103a783602060006127a7565b6060816103a78160206000612822565b6000611eb361247f565b9050306001600160a01b03821603611ed657611ed185858585612876565b611f54565b6040517fef6ea8620000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063ef6ea86290611f21908890889088908890600401614062565b600060405180830381600087803b158015611f3b57600080fd5b505af1158015611f4f573d6000803e3d6000fd5b505050505b5050505050565b6000611f6561247f565b9050306001600160a01b03821603611f8357611ed1858585856128b1565b6040517fd9c03a040000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063d9c03a0490611f219088908890889088906004016140a1565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061200457612004613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260008560405160200161204d91815260200190565b60408051601f198184030181529190527ea005032020202020000000000000000000000000000000000000000000000061290a565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106120b8576120b8613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260018560405160200161204d91815260200190565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061213757612137613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260028560405160200161204d91815260200190565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106121b6576121b6613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260038560405160200161204d91815260200190565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061223557612235613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260048560405160200161204d91815260200190565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106122b7576122b7613d9f565b602090810291909101015260006122f07f7462554400000000000000000000000043686172616374657245717569706d658360016129b3565b60209004949350505050565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061233257612332613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260018560405160200161237b91815260200190565b604051602081830303815290604052612a65565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106123c8576123c8613d9f565b602090810291909101015260006122f07f7462554400000000000000000000000043686172616374657245717569706d6583836129b3565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061243657612436613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260008560405160200161237b91815260200190565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b0316806124b9573391505090565b919050565b60606000606060006124cf85612ad8565b90506124dc878783612afb565b935060006124e986612b34565b905080156125bb576124fb8888612b71565b935066ffffffffffffff841667ffffffffffffffff81111561251f5761251f613a1c565b6040519080825280601f01601f191660200182016040528015612549576020820181803683370190505b5092506020830160005b828160ff1610156125b857600061256b8b8b84612b84565b90506000612588888460ff166028026038011c64ffffffffff1690565b90506125978260008387612c04565b6125a18185613e4e565b9350505080806125b0906140e6565b915050612553565b50505b505093509350939050565b6020810151600090819060f81c60058111156125e4576125e4613b76565b602193909301519293915050565b60606000603884901c64ffffffffff16612615612610858484611dfa565b612cd0565b95945050505050565b600080600080600080600080612638896000016020015190565b60408a015160608b0151919950975060f81c600281111561265b5761265b613b76565b60618a015160818b015160a18c015160c18d015160e1909d01519b9d9a9c939b929a91995097509195509350915050565b60008060008060006126a2866000016020015190565b60408701516060880151608089015160a090990151929991989097509550909350915050565b606080806000603886901c64ffffffffff166126e8611404878484611dfa565b945090508064ffffffffff606088901c1601612708611404878484611dfa565b935090508064ffffffffff608888901c1601612728611404878484611dfa565b925050509250925092565b600080600080612747856000016020015190565b6040860151605487015191955060601c9350607486015190925060f81c90509193509193565b606061140961277d858585612b84565b60006127a28561278d8989612b71565b9060ff166028026038011c64ffffffffff1690565b612d50565b606060006127b58560801c90565b90506fffffffffffffffffffffffffffffffff851660008582816127db576127db6140d0565b04905060405193506020840160208202810160405281855260005b82811015612816578451871c8252938701936020909101906001016127f6565b50505050509392505050565b825160609060006128338583614105565b9050604051925060208301601f19603f83860101166040528184526000602088015b84821015612816578051871b83529187019160019190910190602001612855565b60006128828585612b71565b9050600061289f828560ff166028026038011c64ffffffffff1690565b9050610e928686866000858888612d73565b60006128bd8585612b71565b905060006128da828560ff166028026038011c64ffffffffff1690565b9050610e928686866128f38764ffffffffff8716613e19565b604080516000815260208101909152889088612d73565b600061291461247f565b9050306001600160a01b038216036129385761293386868686866131ad565b610e92565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae090612985908990899089908990899060040161411c565b600060405180830381600087803b15801561299f57600080fd5b505af1158015611928573d6000803e3d6000fd5b6000806129be61247f565b9050306001600160a01b038216036129db57611d5c8585856131c2565b6040517fdbbf0e210000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063dbbf0e2190612a2490889088908890600401613fb0565b602060405180830381865afa158015612a41573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d5c9190614163565b6000612a6f61247f565b9050306001600160a01b03821603612a8d57611ed1858585856131d2565b6040517f150f32620000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063150f326290611f21908890889088908890600401614062565b60006008612ae860026020613e19565b612af29190614105565b9190911c919050565b606081600003612b1a57506040805160208101909152600081526103a7565b6000612b26858561320d565b905061261581600085612d50565b60006008600180612b4760026020613e19565b612b519190613e19565b612b5b9190613e19565b612b659190614105565b8260ff911c1692915050565b60006103a7612b808484613263565b5490565b60008383604051602001612b9992919061417c565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b8215612c8b5760208310612c2e57602083048401935060208381612c2a57612c2a6140d0565b0692505b8215612c8b576020839003600081841015612c515750600019600884021c612c5b565b50600019600882021c5b8554600886021b818451168219821617845250818411612c7c575050611a99565b50600194909401939182900391015b5b60208210612cad5783548152600190930192601f1990910190602001612c8c565b8115611a99576000600019600884021c8251865482191691161782525050505050565b60606000612cde8360801c90565b90506fffffffffffffffffffffffffffffffff83168067ffffffffffffffff811115612d0c57612d0c613a1c565b6040519080825280601f01601f191660200182016040528015612d36576020820181803683370190505b50925060208301612d488382846132b9565b505050919050565b60405160208101601f19603f8484010116604052828252611df285858584612c04565b7f7462000000000000000000000000000000000000000000000000000000000000877fffff0000000000000000000000000000000000000000000000000000000000001614612e33577f74620000000000000000000000000000000000000000000000000000000000008788604051602001612df191815260200190565b60408051601f19818403018152908290527f31b466830000000000000000000000000000000000000000000000000000000082526103869392916004016141b8565b6000612e4e828760ff166028026038011c64ffffffffff1690565b9050600083518564ffffffffff1683612e679190613e19565b612e719190613e4e565b9050808214158015612e93575081612e8986886141f9565b64ffffffffff1614155b15612ee3576040517fa65010b400000000000000000000000000000000000000000000000000000000815264ffffffffff8088166004830152808716602483015283166044820152606401610386565b818664ffffffffff161115612f34576040517f7e8578d30000000000000000000000000000000000000000000000000000000081526004810183905264ffffffffff87166024820152604401610386565b6000612f41848984613304565b90506000612f4e8b6133d2565b905060005b8151811015613019576000828281518110612f7057612f70613d9f565b60200260200101519050612f9c6010826affffffffffffffffffffff191661345b90919063ffffffff16565b1561301057606081901c6001600160a01b03166355eb5a288e8e8e8e8e8d8f6040518863ffffffff1660e01b8152600401612fdd9796959493929190614217565b600060405180830381600087803b158015612ff757600080fd5b505af115801561300b573d6000803e3d6000fd5b505050505b50600101612f53565b5064ffffffffff881660005b8a60ff168160ff1610156130585761304c878260ff166028026038011c64ffffffffff1690565b90910190600101613025565b508b7ffe158a7adba34e256807c8a149028d3162918713c3838afc643ce9f96716ebfd8c8c848c888d60405161309396959493929190614275565b60405180910390a2508284146130b45760006130af8c8c613263565b839055505b60006130c18c8c8c612b84565b90506130d5818a64ffffffffff1689613479565b5060005b815181101561319f5760008282815181106130f6576130f6613d9f565b602002602001015190506131226020826affffffffffffffffffffff191661345b90919063ffffffff16565b1561319657606081901c6001600160a01b031663635845338e8e8e8e8e8a8f6040518863ffffffff1660e01b81526004016131639796959493929190614217565b600060405180830381600087803b15801561317d57600080fd5b505af1158015613191573d6000803e3d6000fd5b505050505b506001016130d9565b505050505050505050505050565b611f5485856131bc848761348f565b856134c0565b60006114098261278d8686612b71565b60006131de8585612b71565b905060006131fb828560ff166028026038011c64ffffffffff1690565b9050610e928686868460008888612d73565b6000828260405160200161322292919061417c565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b6000828260405160200161327892919061417c565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b5b602081106132d9578251825260209283019290910190601f19016132ba565b806000036132e657505050565b6000600019600883021c905080835116811985511617835250505050565b600064ffffffffff821115613348576040517f7149a3c100000000000000000000000000000000000000000000000000000000815260048101839052602401610386565b8366ffffffffffffff811660ff851660280260380182901c64ffffffffff1680851061337a5780850382019150613382565b848103820391505b5064ffffffffff6038602860ff8816020181811b197fffffffffffffffffffffffffffffffffffffffffffffffffff000000000000009490941690921792909216918416901b1790509392505050565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061340c5761340c613d9f565b602090810291909101015260006134447f746273746f726500000000000000000053746f7265486f6f6b73000000000000838361276d565b90506114096134568260008451611dfa565b613764565b60008160ff168261346c8560581c90565b1660ff1614905092915050565b61155c8383835161348a8560200190565b613775565b600080805b8360ff16811015611df2576134b660ff601b83900360080287901c1683613e4e565b9150600101613494565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff000000000000000000000000000000000000000000000000000000000000160361354a57837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be84848460405161353d939291906142d1565b60405180910390a2611a99565b6000613556858561320d565b90506000613563866133d2565b905060005b815181101561363857600082828151811061358557613585613d9f565b602002602001015190506135b16004826affffffffffffffffffffff191661345b90919063ffffffff16565b1561362f576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d906135fc908b908b908b908b90600401614304565b600060405180830381600087803b15801561361657600080fd5b505af115801561362a573d6000803e3d6000fd5b505050505b50600101613568565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be86868660405161366d939291906142d1565b60405180910390a2613688828565ffffffffffff1685613479565b60005b815181101561375b5760008282815181106136a8576136a8613d9f565b602002602001015190506136d46008826affffffffffffffffffffff191661345b90919063ffffffff16565b15613752576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba87219061371f908b908b908b908b90600401614304565b600060405180830381600087803b15801561373957600080fd5b505af115801561374d573d6000803e3d6000fd5b505050505b5060010161368b565b50505050505050565b606060006103a783601560006127a7565b82156137ef576020831061379f5760208304840193506020838161379b5761379b6140d0565b0692505b82156137ef5760208390036000600019600885021c1990506008850281811c91508351811c90508119875416828216178755508184116137e0575050611a99565b50600194909401939182900391015b5b602082106138115780518455600190930192601f19909101906020016137f0565b8115611a99576000600019600884021c8554835182191691161785555050505050565b60405180610100016040528060008152602001600081526020016000600281111561386157613861613b76565b815260200160008152602001600081526020016000815260200160008152602001600081525090565b60006020828403121561389c57600080fd5b81357fffffffff00000000000000000000000000000000000000000000000000000000811681146103a757600080fd5b6000602082840312156138de57600080fd5b5035919050565b60008151808452602080850194506020840160005b8381101561391957815160ff16875295820195908201906001016138fa565b509495945050505050565b6020815281516020820152602082015160408201526000604083015160e060608401526139556101008401826138e5565b905060608401516080840152608084015160a084015260a084015160c084015260c084015160e08401528091505092915050565b6020815281516020820152600060208301516101008060408501526139b26101208501836138e5565b91506040850151606085015260608501516080850152608085015160a085015260a085015160c085015260c085015160e085015260e085015181850152508091505092915050565b60008060408385031215613a0d57600080fd5b50508035926020909101359150565b634e487b7160e01b600052604160045260246000fd5b60405160e0810167ffffffffffffffff81118282101715613a5557613a55613a1c565b60405290565b604051610100810167ffffffffffffffff81118282101715613a5557613a55613a1c565b604051601f8201601f1916810167ffffffffffffffff81118282101715613aa857613aa8613a1c565b604052919050565b600067ffffffffffffffff821115613aca57613aca613a1c565b5060051b60200190565b60008060408385031215613ae757600080fd5b8235915060208084013567ffffffffffffffff811115613b0657600080fd5b8401601f81018613613b1757600080fd5b8035613b2a613b2582613ab0565b613a7f565b81815260059190911b82018301908381019088831115613b4957600080fd5b928401925b82841015613b6757833582529284019290840190613b4e565b80955050505050509250929050565b634e487b7160e01b600052602160045260246000fd5b600082601f830112613b9d57600080fd5b81516020613bad613b2583613ab0565b8083825260208201915060208460051b870101935086841115613bcf57600080fd5b602086015b84811015613bfb57805160ff81168114613bee5760008081fd5b8352918301918301613bd4565b509695505050505050565b600060208284031215613c1857600080fd5b815167ffffffffffffffff80821115613c3057600080fd5b9083019060e08286031215613c4457600080fd5b613c4c613a32565b8251815260208301516020820152604083015182811115613c6c57600080fd5b613c7887828601613b8c565b604083015250606083015160608201526080830151608082015260a083015160a082015260c083015160c082015280935050505092915050565b600060208284031215613cc457600080fd5b815167ffffffffffffffff80821115613cdc57600080fd5b908301906101008286031215613cf157600080fd5b613cf9613a5b565b82518152602083015182811115613d0f57600080fd5b613d1b87828601613b8c565b60208301525060408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e082015280935050505092915050565b634e487b7160e01b600052601160045260246000fd5b808201828112600083128015821682158216171561080257610802613d69565b634e487b7160e01b600052603260045260246000fd5b60006000198203613dc857613dc8613d69565b5060010190565b600060208284031215613de157600080fd5b81516001600160a01b03811681146103a757600080fd5b600060208284031215613e0a57600080fd5b8151600681106103a757600080fd5b818103818111156102c6576102c6613d69565b600060208284031215613e3e57600080fd5b815180151581146103a757600080fd5b808201808211156102c6576102c6613d69565b60008151808452602080850194506020840160005b8381101561391957815187529582019590820190600101613e76565b838152606060208201526000613eab6060830185613e61565b9050826040830152949350505050565b60005b83811015613ed6578181015183820152602001613ebe565b50506000910152565b600082601f830112613ef057600080fd5b815167ffffffffffffffff811115613f0a57613f0a613a1c565b613f1d6020601f19601f84011601613a7f565b818152846020838601011115613f3257600080fd5b611409826020830160208701613ebb565b600080600060608486031215613f5857600080fd5b835167ffffffffffffffff80821115613f7057600080fd5b613f7c87838801613edf565b9450602086015193506040860151915080821115613f9957600080fd5b50613fa686828701613edf565b9150509250925092565b838152606060208201526000613fc96060830185613e61565b905060ff83166040830152949350505050565b600060208284031215613fee57600080fd5b815167ffffffffffffffff81111561400557600080fd5b61140984828501613edf565b60008151808452614029816020860160208601613ebb565b601f01601f19169290920160200192915050565b6060815260006140506060830186614011565b60208301949094525060400152919050565b84815260806020820152600061407b6080830186613e61565b60ff8516604084015282810360608401526140968185614011565b979650505050505050565b8481526080602082015260006140ba6080830186613e61565b60ff949094166040830152506060015292915050565b634e487b7160e01b600052601260045260246000fd5b600060ff821660ff81036140fc576140fc613d69565b60010192915050565b80820281158282048414176102c6576102c6613d69565b85815260a06020820152600061413560a0830187613e61565b60ff8616604084015282810360608401526141508186614011565b9150508260808301529695505050505050565b60006020828403121561417557600080fd5b5051919050565b8281526000602080830184516020860160005b828110156141ab5781518452928401929084019060010161418f565b5091979650505050505050565b7fffff000000000000000000000000000000000000000000000000000000000000841681528260208201526060604082015260006126156060830184614011565b64ffffffffff81811683821601908082111561102857611028613d69565b87815260e06020820152600061423060e0830189613e61565b60ff8816604084015264ffffffffff87811660608501528616608084015260a0830185905282810360c08401526142678185614011565b9a9950505050505050505050565b60c08152600061428860c0830189613e61565b60ff8816602084015265ffffffffffff8716604084015264ffffffffff8616606084015284608084015282810360a08401526142c48185614011565b9998505050505050505050565b6060815260006142e46060830186613e61565b65ffffffffffff8516602084015282810360408401526111208185614011565b84815260806020820152600061431d6080830186613e61565b65ffffffffffff851660408401528281036060840152614096818561401156fea26469706673582212200d6f278b73fdd62546f66df21c40f6a4cc8b18e36ddf4b3c7697e432dbdc942364736f6c63430008180033","sourceMap":"1643:11866:213:-:0;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561001057600080fd5b50600436106100c95760003560e01c80639056fa2811610081578063cc77a2de1161005b578063cc77a2de14610203578063e1af802c14610218578063edcfef821461022057600080fd5b80639056fa28146101695780639a8bb9a2146101dd578063b2aca84b146101f057600080fd5b806340a5ed2a116100b257806340a5ed2a1461011657806345ec93541461013657806363ff22871461014957600080fd5b806301ffc9a7146100ce578063119df25f146100f6575b600080fd5b6100e16100dc36600461388a565b610233565b60405190151581526020015b60405180910390f35b6100fe6102cc565b6040516001600160a01b0390911681526020016100ed565b6101296101243660046138cc565b6102db565b6040516100ed9190613924565b604051601f1936013581526020016100ed565b61015c6101573660046138cc565b6103ae565b6040516100ed9190613989565b61017c6101773660046138cc565b61047d565b6040516100ed9190600061010082019050825182526020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015260c083015160c083015260e083015160e083015292915050565b6100e16101eb3660046139fa565b61061e565b6100e16101fe3660046139fa565b61080a565b610216610211366004613ad4565b610b4a565b005b6100fe610e9a565b6100e161022e3660046139fa565b610ea4565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee1270000000000000000000000000000000000000000000000000000000014806102c657507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b60006102d661102f565b905090565b61031b6040518060e00160405280600081526020016000815260200160608152602001600081526020016000815260200160008152602001600081525090565b600061032683611061565b905060018151600581111561033d5761033d613b76565b1461038f5760405162461bcd60e51b815260206004820152601360248201527f4954454d533a204e6f742061202041726d6f720000000000000000000000000060448201526064015b60405180910390fd5b80604001518060200190518101906103a79190613c06565b9392505050565b6103f660405180610100016040528060008152602001606081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b600061040183611061565b905060008151600581111561041857610418613b76565b146104655760405162461bcd60e51b815260206004820152601460248201527f4954454d533a204e6f7420612020776561706f6e0000000000000000000000006044820152606401610386565b80604001518060200190518101906103a79190613cb2565b6104c560405180610100016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b60006104d08361112a565b905061051a60405180610100016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b6000610525856111d2565b805184519192506000916105399190613d7f565b1215610546576000610554565b805183516105549190613d7f565b82526020808201519084015160009161056c91613d7f565b121561057957600061058d565b8060200151836020015161058d9190613d7f565b6020830152604081015160608401516000916105a891613d7f565b12156105b55760006105c9565b806040015183606001516105c99190613d7f565b6040830152606081015160808401516000916105e491613d7f565b12156105f1576001610605565b806060015183608001516106059190613d7f565b60808301525060a0918201519181019190915292915050565b60008061062a83611061565b905060006106378561112a565b825160019450909150600581111561065157610651613b76565b60ff1660000361072057600082604001518060200190518101906106759190613cb2565b60c081015160e0840151602083015151929350101590600090156107035760005b8360200151518110156106fd57836020015181815181106106b9576106b9613d9f565b602002602001015160ff16856040015160028111156106da576106da613b76565b60ff16036106eb57600191506106fd565b806106f581613db5565b915050610696565b50610707565b5060015b811580610712575080155b1561071c57600095505b5050505b8151600581111561073357610733613b76565b60ff1660010361080257600082604001518060200190518101906107579190613c06565b60a081015160e0840151604083015151929350101590600090156107e55760005b8360400151518110156107df578360400151818151811061079b5761079b613d9f565b602002602001015160ff16856040015160028111156107bc576107bc613b76565b60ff16036107cd57600191506107df565b806107d781613db5565b915050610778565b506107e9565b5060015b8115806107f4575080155b156107fe57600095505b5050505b505092915050565b6000826000610818826112ba565b9050806060015161086b5760405162461bcd60e51b815260206004820152601960248201527f436861726163746572206e6f7420696e207468652047616d65000000000000006044820152606401610386565b6000610875610e9a565b6001600160a01b031663777c2caf876040518263ffffffff1660e01b81526004016108a291815260200190565b602060405180830381865afa1580156108bf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108e39190613dcf565b90506108ed6102cc565b6001600160a01b0316816001600160a01b03161461094d5760405162461bcd60e51b815260206004820152601a60248201527f4954454d533a204e6f7420436861726163746572204f776e65720000000000006044820152606401610386565b6000610957610e9a565b6001600160a01b031663cdaccbae876040518263ffffffff1660e01b815260040161098491815260200190565b602060405180830381865afa1580156109a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109c59190613df8565b60058111156109d6576109d6613b76565b905060ff8116610a415760006109f4876109ef8a61137f565b611411565b9050868160018351610a069190613e19565b81518110610a1657610a16613d9f565b602002602001015103610a3b57610a2d88826114e6565b610a3688611561565b600195505b50610b37565b60001960ff821601610a9e576000610a5c876109ef8a6115d8565b9050868160018351610a6e9190613e19565b81518110610a7e57610a7e613d9f565b602002602001015103610a3b57610a95888261164a565b610a36886116bb565b7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe60ff82160115610b375760405162461bcd60e51b815260206004820152602160248201527f45515549504d454e543a20554e5245434f474e495a4544204954454d2054595060448201527f45000000000000000000000000000000000000000000000000000000000000006064820152608401610386565b610b408761172e565b5050505092915050565b816000610b56826112ba565b90508060600151610ba95760405162461bcd60e51b815260206004820152601960248201527f436861726163746572206e6f7420696e207468652047616d65000000000000006044820152606401610386565b6000610bb3610e9a565b6001600160a01b031663777c2caf866040518263ffffffff1660e01b8152600401610be091815260200190565b602060405180830381865afa158015610bfd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c219190613dcf565b9050610c2b6102cc565b6001600160a01b0316816001600160a01b031614610c8b5760405162461bcd60e51b815260206004820152601a60248201527f4954454d533a204e6f7420436861726163746572204f776e65720000000000006044820152606401610386565b6000805b8551811015610e8857858181518110610caa57610caa613d9f565b60200260200101519150610cbc610e9a565b6001600160a01b031663b363411883610cd36102cc565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815260048101929092526001600160a01b03166024820152604401602060405180830381865afa158015610d35573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d599190613e2c565b610da55760405162461bcd60e51b815260206004820152601560248201527f4954454d533a204e6f74204974656d204f776e657200000000000000000000006044820152606401610386565b6000610db083611061565b9050600381600001516005811115610dca57610dca613b76565b60ff1610610e1a5760405162461bcd60e51b815260206004820152601d60248201527f4954454d533a204e6f7420616e2065717569707061626c65204974656d0000006044820152606401610386565b610e24888461061e565b610e705760405162461bcd60e51b815260206004820152601b60248201527f4954454d533a20526571756972656d656e7473206e6f74206d657400000000006044820152606401610386565b610e7f88848360000151611934565b50600101610c8f565b50610e928661172e565b505050505050565b60006102d6611a9f565b600080610eb083611061565b80519091506005811115610ec657610ec6613b76565b60ff16600003610f2b576000610edb8561137f565b905060005b8151811015610f245784828281518110610efc57610efc613d9f565b602002602001015103610f125760019350610f24565b80610f1c81613db5565b915050610ee0565b5050611028565b80516005811115610f3e57610f3e613b76565b60ff16600103610f9c576000610f53856115d8565b905060005b8151811015610f245784828281518110610f7457610f74613d9f565b602002602001015103610f8a5760019350610f24565b80610f9481613db5565b915050610f58565b80516005811115610faf57610faf613b76565b60ff16600203156110285760405162461bcd60e51b815260206004820152602160248201527f45515549504d454e543a20554e5245434f474e495a4544204954454d2054595060448201527f45000000000000000000000000000000000000000000000000000000000000006064820152608401610386565b5092915050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c8061105e5750335b90565b60408051606080820183526000808352602083015291810191909152604080516001808252818301909252600091602080830190803683370190505090508260001b816000815181106110b6576110b6613d9f565b60209081029190910101526000808061110f7f746255440000000000000000000000004974656d730000000000000000000000857e21020101200000000000000000000000000000000000000000000000000000611aa9565b925092509250611120838383611b79565b9695505050505050565b611132613834565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061116857611168613d9f565b6020908102919091010152600080806111c17f7462554400000000000000000000000053746174730000000000000000000000857ee1080020200120202020200000000000000000000000000000000000000000611aa9565b925092509250611120838383611be4565b61121a60405180610100016040528060008152602001600081526020016000815260200160008152602001600081526020016060815260200160608152602001606081525090565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061125057611250613d9f565b6020908102919091010152600080806112a97f7462554400000000000000000000000043686172616374657245717569706d65857ea0050320202020200000000000000000000000000000000000000000000000611aa9565b925092509250611120838383611c5c565b6040805160808101825260008082526020820181905281830181905260608201819052825160018082528185019094529192909190816020016020820280368337019050509050828160008151811061131557611315613d9f565b60209081029190910101526000808061136e7f7462554400000000000000000000000043686172616374657273000000000000857e55040020142001000000000000000000000000000000000000000000000000611aa9565b925092509250611120838383611ce3565b604080516001808252818301909252606091600091906020808301908036833701905050905082816000815181106113b9576113b9613d9f565b602090810291909101015260006113f27f7462554400000000000000000000000043686172616374657245717569706d65836001611d33565b90506114096114048260008451611dfa565b611e88565b949350505050565b60606001825111156114e05760005b82518110156114da578383828151811061143c5761143c613d9f565b6020026020010151036114c8576000836001855161145a9190613e19565b8151811061146a5761146a613d9f565b602002602001015190508084838151811061148757611487613d9f565b6020026020010181815250508484600186516114a39190613e19565b815181106114b3576114b3613d9f565b602002602001018181525050839250506114da565b806114d281613db5565b915050611420565b506102c6565b50919050565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061151c5761151c613d9f565b602090810291909101015261155c7f7462554400000000000000000000000043686172616374657245717569706d6582600161155786611e99565b611ea9565b505050565b60408051600180825281830190925260009160208083019080368337019050509050818160008151811061159757611597613d9f565b6020026020010181815250506115d47f7462554400000000000000000000000043686172616374657245717569706d6560001b8260016020611f5b565b5050565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061161257611612613d9f565b602090810291909101015260006113f27f7462554400000000000000000000000043686172616374657245717569706d658383611d33565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061168057611680613d9f565b602090810291909101015261155c7f7462554400000000000000000000000043686172616374657245717569706d6582600061155786611e99565b6040805160018082528183019092526000916020808301908036833701905050905081816000815181106116f1576116f1613d9f565b6020026020010181815250506115d47f7462554400000000000000000000000043686172616374657245717569706d6560001b8260006020611f5b565b6000611739826115d8565b905060006117468361137f565b905060008060008060006117906040518060e00160405280600081526020016000815260200160608152602001600081526020016000815260200160008152602001600081525090565b6117d860405180610100016040528060008152602001606081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b8851156118705760005b895181101561186e5761180d8a828151811061180057611800613d9f565b60200260200101516102db565b925082602001518861181f9190613e4e565b97508260c00151876118319190613d7f565b83519097506118409087613d7f565b95508260800151856118529190613d7f565b94508260600151846118649190613d7f565b93506001016117e2565b505b8751156118f65760005b88518110156118f4576118a589828151811061189857611898613d9f565b60200260200101516103ae565b91508160e00151876118b79190613d7f565b82519097506118c69087613d7f565b95508160600151856118d89190613d7f565b94508160400151846118ea9190613d7f565b935060010161187a565b505b6119008a87611fce565b61190a8a86612082565b6119148a85612101565b61191e8a84612180565b6119288a886121ff565b50505050505050505050565b61193e8383610ea4565b1561198b5760405162461bcd60e51b815260206004820152601b60248201527f45515549504d454e543a20414c524541445920455155495050454400000000006044820152606401610386565b80600581111561199d5761199d613b76565b60ff16600003611a095760036119b28461227e565b106119ff5760405162461bcd60e51b815260206004820181905260248201527f4954454d533a20546f6f206d616e7920776561706f6e732065717569707065646044820152606401610386565b611a0983836122fc565b806005811115611a1b57611a1b613b76565b60ff16600103611a87576003611a308461238f565b10611a7d5760405162461bcd60e51b815260206004820181905260248201527f4954454d533a20546f6f206d616e7920776561706f6e732065717569707065646044820152606401610386565b611a878383612400565b806005811115611a9957611a99613b76565b50505050565b60006102d661247f565b6060600060606000611ab961247f565b9050306001600160a01b03821603611ae257611ad68787876124be565b93509350935050611b70565b6040517f419b58fd0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063419b58fd90611b2b908a908a908a90600401613e92565b600060405180830381865afa158015611b48573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611ad69190810190613f43565b93509350939050565b60408051606080820183526000808352602083015291810191909152611b9e846125c6565b6020830181905282826005811115611bb857611bb8613b76565b6005811115611bc957611bc9613b76565b8152505050611bd883836125f2565b60408201529392505050565b611bec613834565b611bf58461261e565b60e0890181905260c0890182905260a089018390526080890184905260608901859052886020810160408201886002811115611c3357611c33613b76565b6002811115611c4457611c44613b76565b90529790975250505093909252509195945050505050565b611ca460405180610100016040528060008152602001600081526020016000815260200160008152602001600081526020016060815260200160608152602001606081525090565b611cad8461268c565b60808601526060850152604084015260208301528152611ccd83836126c8565b60e084015260c083015260a08201529392505050565b604080516080810182526000808252602082018190529181018290526060810191909152611d1084612733565b1515606085015260408401526001600160a01b0316602083015281529392505050565b60606000611d3f61247f565b9050306001600160a01b03821603611d6457611d5c85858561276d565b9150506103a7565b6040517f1e7889770000000000000000000000000000000000000000000000000000000081526001600160a01b03821690631e78897790611dad90889088908890600401613fb0565b600060405180830381865afa158015611dca573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611d5c9190810190613fdc565b509392505050565b600081831180611e0a5750835182115b15611e47578383836040517f23230fa30000000000000000000000000000000000000000000000000000000081526004016103869392919061403d565b60208401611e558482613e4e565b90506000611e638585613e19565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b606060006103a783602060006127a7565b6060816103a78160206000612822565b6000611eb361247f565b9050306001600160a01b03821603611ed657611ed185858585612876565b611f54565b6040517fef6ea8620000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063ef6ea86290611f21908890889088908890600401614062565b600060405180830381600087803b158015611f3b57600080fd5b505af1158015611f4f573d6000803e3d6000fd5b505050505b5050505050565b6000611f6561247f565b9050306001600160a01b03821603611f8357611ed1858585856128b1565b6040517fd9c03a040000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063d9c03a0490611f219088908890889088906004016140a1565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061200457612004613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260008560405160200161204d91815260200190565b60408051601f198184030181529190527ea005032020202020000000000000000000000000000000000000000000000061290a565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106120b8576120b8613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260018560405160200161204d91815260200190565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061213757612137613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260028560405160200161204d91815260200190565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106121b6576121b6613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260038560405160200161204d91815260200190565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061223557612235613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260048560405160200161204d91815260200190565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106122b7576122b7613d9f565b602090810291909101015260006122f07f7462554400000000000000000000000043686172616374657245717569706d658360016129b3565b60209004949350505050565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061233257612332613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260018560405160200161237b91815260200190565b604051602081830303815290604052612a65565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106123c8576123c8613d9f565b602090810291909101015260006122f07f7462554400000000000000000000000043686172616374657245717569706d6583836129b3565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061243657612436613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260008560405160200161237b91815260200190565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b0316806124b9573391505090565b919050565b60606000606060006124cf85612ad8565b90506124dc878783612afb565b935060006124e986612b34565b905080156125bb576124fb8888612b71565b935066ffffffffffffff841667ffffffffffffffff81111561251f5761251f613a1c565b6040519080825280601f01601f191660200182016040528015612549576020820181803683370190505b5092506020830160005b828160ff1610156125b857600061256b8b8b84612b84565b90506000612588888460ff166028026038011c64ffffffffff1690565b90506125978260008387612c04565b6125a18185613e4e565b9350505080806125b0906140e6565b915050612553565b50505b505093509350939050565b6020810151600090819060f81c60058111156125e4576125e4613b76565b602193909301519293915050565b60606000603884901c64ffffffffff16612615612610858484611dfa565b612cd0565b95945050505050565b600080600080600080600080612638896000016020015190565b60408a015160608b0151919950975060f81c600281111561265b5761265b613b76565b60618a015160818b015160a18c015160c18d015160e1909d01519b9d9a9c939b929a91995097509195509350915050565b60008060008060006126a2866000016020015190565b60408701516060880151608089015160a090990151929991989097509550909350915050565b606080806000603886901c64ffffffffff166126e8611404878484611dfa565b945090508064ffffffffff606088901c1601612708611404878484611dfa565b935090508064ffffffffff608888901c1601612728611404878484611dfa565b925050509250925092565b600080600080612747856000016020015190565b6040860151605487015191955060601c9350607486015190925060f81c90509193509193565b606061140961277d858585612b84565b60006127a28561278d8989612b71565b9060ff166028026038011c64ffffffffff1690565b612d50565b606060006127b58560801c90565b90506fffffffffffffffffffffffffffffffff851660008582816127db576127db6140d0565b04905060405193506020840160208202810160405281855260005b82811015612816578451871c8252938701936020909101906001016127f6565b50505050509392505050565b825160609060006128338583614105565b9050604051925060208301601f19603f83860101166040528184526000602088015b84821015612816578051871b83529187019160019190910190602001612855565b60006128828585612b71565b9050600061289f828560ff166028026038011c64ffffffffff1690565b9050610e928686866000858888612d73565b60006128bd8585612b71565b905060006128da828560ff166028026038011c64ffffffffff1690565b9050610e928686866128f38764ffffffffff8716613e19565b604080516000815260208101909152889088612d73565b600061291461247f565b9050306001600160a01b038216036129385761293386868686866131ad565b610e92565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae090612985908990899089908990899060040161411c565b600060405180830381600087803b15801561299f57600080fd5b505af1158015611928573d6000803e3d6000fd5b6000806129be61247f565b9050306001600160a01b038216036129db57611d5c8585856131c2565b6040517fdbbf0e210000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063dbbf0e2190612a2490889088908890600401613fb0565b602060405180830381865afa158015612a41573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d5c9190614163565b6000612a6f61247f565b9050306001600160a01b03821603612a8d57611ed1858585856131d2565b6040517f150f32620000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063150f326290611f21908890889088908890600401614062565b60006008612ae860026020613e19565b612af29190614105565b9190911c919050565b606081600003612b1a57506040805160208101909152600081526103a7565b6000612b26858561320d565b905061261581600085612d50565b60006008600180612b4760026020613e19565b612b519190613e19565b612b5b9190613e19565b612b659190614105565b8260ff911c1692915050565b60006103a7612b808484613263565b5490565b60008383604051602001612b9992919061417c565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b8215612c8b5760208310612c2e57602083048401935060208381612c2a57612c2a6140d0565b0692505b8215612c8b576020839003600081841015612c515750600019600884021c612c5b565b50600019600882021c5b8554600886021b818451168219821617845250818411612c7c575050611a99565b50600194909401939182900391015b5b60208210612cad5783548152600190930192601f1990910190602001612c8c565b8115611a99576000600019600884021c8251865482191691161782525050505050565b60606000612cde8360801c90565b90506fffffffffffffffffffffffffffffffff83168067ffffffffffffffff811115612d0c57612d0c613a1c565b6040519080825280601f01601f191660200182016040528015612d36576020820181803683370190505b50925060208301612d488382846132b9565b505050919050565b60405160208101601f19603f8484010116604052828252611df285858584612c04565b7f7462000000000000000000000000000000000000000000000000000000000000877fffff0000000000000000000000000000000000000000000000000000000000001614612e33577f74620000000000000000000000000000000000000000000000000000000000008788604051602001612df191815260200190565b60408051601f19818403018152908290527f31b466830000000000000000000000000000000000000000000000000000000082526103869392916004016141b8565b6000612e4e828760ff166028026038011c64ffffffffff1690565b9050600083518564ffffffffff1683612e679190613e19565b612e719190613e4e565b9050808214158015612e93575081612e8986886141f9565b64ffffffffff1614155b15612ee3576040517fa65010b400000000000000000000000000000000000000000000000000000000815264ffffffffff8088166004830152808716602483015283166044820152606401610386565b818664ffffffffff161115612f34576040517f7e8578d30000000000000000000000000000000000000000000000000000000081526004810183905264ffffffffff87166024820152604401610386565b6000612f41848984613304565b90506000612f4e8b6133d2565b905060005b8151811015613019576000828281518110612f7057612f70613d9f565b60200260200101519050612f9c6010826affffffffffffffffffffff191661345b90919063ffffffff16565b1561301057606081901c6001600160a01b03166355eb5a288e8e8e8e8e8d8f6040518863ffffffff1660e01b8152600401612fdd9796959493929190614217565b600060405180830381600087803b158015612ff757600080fd5b505af115801561300b573d6000803e3d6000fd5b505050505b50600101612f53565b5064ffffffffff881660005b8a60ff168160ff1610156130585761304c878260ff166028026038011c64ffffffffff1690565b90910190600101613025565b508b7ffe158a7adba34e256807c8a149028d3162918713c3838afc643ce9f96716ebfd8c8c848c888d60405161309396959493929190614275565b60405180910390a2508284146130b45760006130af8c8c613263565b839055505b60006130c18c8c8c612b84565b90506130d5818a64ffffffffff1689613479565b5060005b815181101561319f5760008282815181106130f6576130f6613d9f565b602002602001015190506131226020826affffffffffffffffffffff191661345b90919063ffffffff16565b1561319657606081901c6001600160a01b031663635845338e8e8e8e8e8a8f6040518863ffffffff1660e01b81526004016131639796959493929190614217565b600060405180830381600087803b15801561317d57600080fd5b505af1158015613191573d6000803e3d6000fd5b505050505b506001016130d9565b505050505050505050505050565b611f5485856131bc848761348f565b856134c0565b60006114098261278d8686612b71565b60006131de8585612b71565b905060006131fb828560ff166028026038011c64ffffffffff1690565b9050610e928686868460008888612d73565b6000828260405160200161322292919061417c565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b6000828260405160200161327892919061417c565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b5b602081106132d9578251825260209283019290910190601f19016132ba565b806000036132e657505050565b6000600019600883021c905080835116811985511617835250505050565b600064ffffffffff821115613348576040517f7149a3c100000000000000000000000000000000000000000000000000000000815260048101839052602401610386565b8366ffffffffffffff811660ff851660280260380182901c64ffffffffff1680851061337a5780850382019150613382565b848103820391505b5064ffffffffff6038602860ff8816020181811b197fffffffffffffffffffffffffffffffffffffffffffffffffff000000000000009490941690921792909216918416901b1790509392505050565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061340c5761340c613d9f565b602090810291909101015260006134447f746273746f726500000000000000000053746f7265486f6f6b73000000000000838361276d565b90506114096134568260008451611dfa565b613764565b60008160ff168261346c8560581c90565b1660ff1614905092915050565b61155c8383835161348a8560200190565b613775565b600080805b8360ff16811015611df2576134b660ff601b83900360080287901c1683613e4e565b9150600101613494565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff000000000000000000000000000000000000000000000000000000000000160361354a57837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be84848460405161353d939291906142d1565b60405180910390a2611a99565b6000613556858561320d565b90506000613563866133d2565b905060005b815181101561363857600082828151811061358557613585613d9f565b602002602001015190506135b16004826affffffffffffffffffffff191661345b90919063ffffffff16565b1561362f576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d906135fc908b908b908b908b90600401614304565b600060405180830381600087803b15801561361657600080fd5b505af115801561362a573d6000803e3d6000fd5b505050505b50600101613568565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be86868660405161366d939291906142d1565b60405180910390a2613688828565ffffffffffff1685613479565b60005b815181101561375b5760008282815181106136a8576136a8613d9f565b602002602001015190506136d46008826affffffffffffffffffffff191661345b90919063ffffffff16565b15613752576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba87219061371f908b908b908b908b90600401614304565b600060405180830381600087803b15801561373957600080fd5b505af115801561374d573d6000803e3d6000fd5b505050505b5060010161368b565b50505050505050565b606060006103a783601560006127a7565b82156137ef576020831061379f5760208304840193506020838161379b5761379b6140d0565b0692505b82156137ef5760208390036000600019600885021c1990506008850281811c91508351811c90508119875416828216178755508184116137e0575050611a99565b50600194909401939182900391015b5b602082106138115780518455600190930192601f19909101906020016137f0565b8115611a99576000600019600884021c8554835182191691161785555050505050565b60405180610100016040528060008152602001600081526020016000600281111561386157613861613b76565b815260200160008152602001600081526020016000815260200160008152602001600081525090565b60006020828403121561389c57600080fd5b81357fffffffff00000000000000000000000000000000000000000000000000000000811681146103a757600080fd5b6000602082840312156138de57600080fd5b5035919050565b60008151808452602080850194506020840160005b8381101561391957815160ff16875295820195908201906001016138fa565b509495945050505050565b6020815281516020820152602082015160408201526000604083015160e060608401526139556101008401826138e5565b905060608401516080840152608084015160a084015260a084015160c084015260c084015160e08401528091505092915050565b6020815281516020820152600060208301516101008060408501526139b26101208501836138e5565b91506040850151606085015260608501516080850152608085015160a085015260a085015160c085015260c085015160e085015260e085015181850152508091505092915050565b60008060408385031215613a0d57600080fd5b50508035926020909101359150565b634e487b7160e01b600052604160045260246000fd5b60405160e0810167ffffffffffffffff81118282101715613a5557613a55613a1c565b60405290565b604051610100810167ffffffffffffffff81118282101715613a5557613a55613a1c565b604051601f8201601f1916810167ffffffffffffffff81118282101715613aa857613aa8613a1c565b604052919050565b600067ffffffffffffffff821115613aca57613aca613a1c565b5060051b60200190565b60008060408385031215613ae757600080fd5b8235915060208084013567ffffffffffffffff811115613b0657600080fd5b8401601f81018613613b1757600080fd5b8035613b2a613b2582613ab0565b613a7f565b81815260059190911b82018301908381019088831115613b4957600080fd5b928401925b82841015613b6757833582529284019290840190613b4e565b80955050505050509250929050565b634e487b7160e01b600052602160045260246000fd5b600082601f830112613b9d57600080fd5b81516020613bad613b2583613ab0565b8083825260208201915060208460051b870101935086841115613bcf57600080fd5b602086015b84811015613bfb57805160ff81168114613bee5760008081fd5b8352918301918301613bd4565b509695505050505050565b600060208284031215613c1857600080fd5b815167ffffffffffffffff80821115613c3057600080fd5b9083019060e08286031215613c4457600080fd5b613c4c613a32565b8251815260208301516020820152604083015182811115613c6c57600080fd5b613c7887828601613b8c565b604083015250606083015160608201526080830151608082015260a083015160a082015260c083015160c082015280935050505092915050565b600060208284031215613cc457600080fd5b815167ffffffffffffffff80821115613cdc57600080fd5b908301906101008286031215613cf157600080fd5b613cf9613a5b565b82518152602083015182811115613d0f57600080fd5b613d1b87828601613b8c565b60208301525060408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e082015280935050505092915050565b634e487b7160e01b600052601160045260246000fd5b808201828112600083128015821682158216171561080257610802613d69565b634e487b7160e01b600052603260045260246000fd5b60006000198203613dc857613dc8613d69565b5060010190565b600060208284031215613de157600080fd5b81516001600160a01b03811681146103a757600080fd5b600060208284031215613e0a57600080fd5b8151600681106103a757600080fd5b818103818111156102c6576102c6613d69565b600060208284031215613e3e57600080fd5b815180151581146103a757600080fd5b808201808211156102c6576102c6613d69565b60008151808452602080850194506020840160005b8381101561391957815187529582019590820190600101613e76565b838152606060208201526000613eab6060830185613e61565b9050826040830152949350505050565b60005b83811015613ed6578181015183820152602001613ebe565b50506000910152565b600082601f830112613ef057600080fd5b815167ffffffffffffffff811115613f0a57613f0a613a1c565b613f1d6020601f19601f84011601613a7f565b818152846020838601011115613f3257600080fd5b611409826020830160208701613ebb565b600080600060608486031215613f5857600080fd5b835167ffffffffffffffff80821115613f7057600080fd5b613f7c87838801613edf565b9450602086015193506040860151915080821115613f9957600080fd5b50613fa686828701613edf565b9150509250925092565b838152606060208201526000613fc96060830185613e61565b905060ff83166040830152949350505050565b600060208284031215613fee57600080fd5b815167ffffffffffffffff81111561400557600080fd5b61140984828501613edf565b60008151808452614029816020860160208601613ebb565b601f01601f19169290920160200192915050565b6060815260006140506060830186614011565b60208301949094525060400152919050565b84815260806020820152600061407b6080830186613e61565b60ff8516604084015282810360608401526140968185614011565b979650505050505050565b8481526080602082015260006140ba6080830186613e61565b60ff949094166040830152506060015292915050565b634e487b7160e01b600052601260045260246000fd5b600060ff821660ff81036140fc576140fc613d69565b60010192915050565b80820281158282048414176102c6576102c6613d69565b85815260a06020820152600061413560a0830187613e61565b60ff8616604084015282810360608401526141508186614011565b9150508260808301529695505050505050565b60006020828403121561417557600080fd5b5051919050565b8281526000602080830184516020860160005b828110156141ab5781518452928401929084019060010161418f565b5091979650505050505050565b7fffff000000000000000000000000000000000000000000000000000000000000841681528260208201526060604082015260006126156060830184614011565b64ffffffffff81811683821601908082111561102857611028613d69565b87815260e06020820152600061423060e0830189613e61565b60ff8816604084015264ffffffffff87811660608501528616608084015260a0830185905282810360c08401526142678185614011565b9a9950505050505050505050565b60c08152600061428860c0830189613e61565b60ff8816602084015265ffffffffffff8716604084015264ffffffffff8616606084015284608084015282810360a08401526142c48185614011565b9998505050505050505050565b6060815260006142e46060830186613e61565b65ffffffffffff8516602084015282810360408401526111208185614011565b84815260806020820152600061431d6080830186613e61565b65ffffffffffff851660408401528281036060840152614096818561401156fea26469706673582212200d6f278b73fdd62546f66df21c40f6a4cc8b18e36ddf4b3c7697e432dbdc942364736f6c63430008180033","sourceMap":"1643:11866:213:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2331:198:123;;;;;;:::i;:::-;;:::i;:::-;;;516:14:229;;509:22;491:41;;479:2;464:18;2331:198:123;;;;;;;;1262:113;;;:::i;:::-;;;-1:-1:-1;;;;;707:55:229;;;689:74;;677:2;662:18;1262:113:123;543:226:229;13222:285:213;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;1616:110:123:-;;;-1:-1:-1;;3800:14:123;3796:25;3783:39;2313:25:229;;2301:2;2286:18;1616:110:123;2167:177:229;12924:292:213;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;10106:1386::-;;;;;;:::i;:::-;;:::i;:::-;;;;;;3543:4:229;3585:3;3574:9;3570:19;3562:27;;3622:6;3616:13;3605:9;3598:32;3686:4;3678:6;3674:17;3668:24;3661:4;3650:9;3646:20;3639:54;3749:4;3741:6;3737:17;3731:24;3724:4;3713:9;3709:20;3702:54;3812:4;3804:6;3800:17;3794:24;3787:4;3776:9;3772:20;3765:54;3875:4;3867:6;3863:17;3857:24;3850:4;3839:9;3835:20;3828:54;3938:4;3930:6;3926:17;3920:24;3913:4;3902:9;3898:20;3891:54;4001:4;3993:6;3989:17;3983:24;3976:4;3965:9;3961:20;3954:54;4064:4;4056:6;4052:17;4046:24;4039:4;4028:9;4024:20;4017:54;3373:704;;;;;3845:1806:213;;;;;;:::i;:::-;;:::i;8329:1771::-;;;;;;:::i;:::-;;:::i;1878:819::-;;;;;;:::i;:::-;;:::i;:::-;;1942:98:123;;;:::i;2703:1136:213:-;;;;;;:::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;13222:285:213:-;13282:29;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13282:29:213;13323:22;13348:17;13358:6;13348:9;:17::i;:::-;13323:42;-1:-1:-1;13401:14:213;13383;;:32;;;;;;;;:::i;:::-;;13375:64;;;;-1:-1:-1;;;13375:64:213;;6924:2:229;13375:64:213;;;6906:21:229;6963:2;6943:18;;;6936:30;7002:21;6982:18;;;6975:49;7041:18;;13375:64:213;;;;;;;;;13474:5;:11;;;13463:37;;;;;;;;;;;;:::i;:::-;13449:51;13222:285;-1:-1:-1;;;13222:285:213:o;12924:292::-;12985:31;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12985:31:213;13028:22;13053:17;13063:6;13053:9;:17::i;:::-;13028:42;-1:-1:-1;13106:15:213;13088:14;;:33;;;;;;;;:::i;:::-;;13080:66;;;;-1:-1:-1;;;13080:66:213;;9057:2:229;13080:66:213;;;9039:21:229;9096:2;9076:18;;;9069:30;9135:22;9115:18;;;9108:50;9175:18;;13080:66:213;8855:344:229;13080:66:213;13182:5;:11;;;13171:38;;;;;;;;;;;;:::i;10106:1386::-;10176:40;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10176:40:213;10228:28;10259:19;10269:8;10259:9;:19::i;:::-;10228:50;;10288:38;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10288:38:213;10337:44;10384:32;10407:8;10384:22;:32::i;:::-;10553:23;;10529:20;;10337:79;;-1:-1:-1;10580:1:213;;10522:54;;10553:23;10522:54;:::i;:::-;:59;;:160;;10680:1;10522:160;;;10631:23;;10607:20;;10600:54;;10631:23;10600:54;:::i;:::-;10470:222;;10783:23;;;;;10760:19;;;;10470:28;;10753:53;;;:::i;:::-;:58;;:158;;10909:1;10753:158;;;10860:14;:23;;;10837:11;:19;;;10830:53;;;;:::i;:::-;10702:27;;;:219;11022:23;;;;10994:24;;;;11049:1;;10987:58;;;:::i;:::-;:63;;:168;;11153:1;10987:168;;;11104:14;:23;;;11076:11;:24;;;11069:58;;;;:::i;:::-;10931:32;;;:234;11260:22;;;;11231:25;;;;11286:1;;11224:58;;;:::i;:::-;:63;;:168;;11390:1;11224:168;;;11342:14;:22;;;11313:11;:25;;;11306:58;;;;:::i;:::-;11175:25;;;:227;-1:-1:-1;11436:21:213;;;;;11412;;;:45;;;;11175:11;10106:1386;-1:-1:-1;;10106:1386:213:o;3845:1806::-;3930:11;3953:25;3981:17;3991:6;3981:9;:17::i;:::-;3953:45;;4008:26;4037:22;4047:11;4037:9;:22::i;:::-;4104:17;;4079:4;;-1:-1:-1;4008:51:213;;-1:-1:-1;4098:24:213;;;;;;;;:::i;:::-;:29;;4126:1;4098:29;4094:763;;4143:30;4187:8;:14;;;4176:41;;;;;;;;;;;;:::i;:::-;4265:20;;;;4246:15;;;;4329:29;;;;:36;4143:74;;-1:-1:-1;4246:39:213;;;4231:12;;4329:40;4325:468;;4394:9;4389:337;4409:11;:29;;;:36;4405:1;:40;4389:337;;;4506:11;:29;;;4536:1;4506:32;;;;;;;;:::i;:::-;;;;;;;4474:65;;4480:9;:15;;;4474:22;;;;;;;;:::i;:::-;:65;;;4470:165;;4577:4;4567:14;;4607:5;;4470:165;4682:3;;;;:::i;:::-;;;;4389:337;;;;4325:468;;;-1:-1:-1;4774:4:213;4325:468;4811:7;4810:8;:20;;;;4823:7;4822:8;4810:20;4806:40;;;4841:5;4832:14;;4806:40;4129:728;;;4094:763;4876:17;;4870:24;;;;;;;;:::i;:::-;:29;;4898:1;4870:29;4866:756;;4915:28;4957:8;:14;;;4946:40;;;;;;;;;;;;:::i;:::-;5034:19;;;;5015:15;;;;5097:28;;;;:35;4915:71;;-1:-1:-1;5015:38:213;;;5000:12;;5097:39;5093:465;;5161:9;5156:335;5176:10;:28;;;:35;5172:1;:39;5156:335;;;5272:10;:28;;;5301:1;5272:31;;;;;;;;:::i;:::-;;;;;;;5240:64;;5246:9;:15;;;5240:22;;;;;;;;:::i;:::-;:64;;;5236:164;;5342:4;5332:14;;5372:5;;5236:164;5447:3;;;;:::i;:::-;;;;5156:335;;;;5093:465;;;-1:-1:-1;5539:4:213;5093:465;5576:7;5575:8;:20;;;;5588:7;5587:8;5575:20;5571:40;;;5606:5;5597:14;;5571:40;4901:721;;;4866:756;5631:13;;3845:1806;;;;:::o;8329:1771::-;8423:12;8401:11;1731:30;1764:27;1779:11;1764:14;:27::i;:::-;1731:60;;1809:8;:15;;;1801:53;;;;-1:-1:-1;;;1801:53:213;;11209:2:229;1801:53:213;;;11191:21:229;11248:2;11228:18;;;11221:30;11287:27;11267:18;;;11260:55;11332:18;;1801:53:213;11007:349:229;1801:53:213;8447:22:::1;8479:8;:6;:8::i;:::-;-1:-1:-1::0;;;;;8472:29:213::1;;8502:11;8472:42;;;;;;;;;;;;;2313:25:229::0;;2301:2;2286:18;;2167:177;8472:42:213::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8447:67;;8550:12;:10;:12::i;:::-;-1:-1:-1::0;;;;;8532:30:213::1;:14;-1:-1:-1::0;;;;;8532:30:213::1;;8524:69;;;::::0;-1:-1:-1;;;8524:69:213;;12063:2:229;8524:69:213::1;::::0;::::1;12045:21:229::0;12102:2;12082:18;;;12075:30;12141:28;12121:18;;;12114:56;12187:18;;8524:69:213::1;11861:350:229::0;8524:69:213::1;8603:14;8633:8;:6;:8::i;:::-;-1:-1:-1::0;;;;;8626:32:213::1;;8659:6;8626:40;;;;;;;;;;;;;2313:25:229::0;;2301:2;2286:18;;2167:177;8626:40:213::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8620:47;;;;;;;;:::i;:::-;8603:64:::0;-1:-1:-1;8681:20:213::1;::::0;::::1;8677:1374;;8717:28;8748:77;8766:6;8774:50;8812:11;8774:37;:50::i;:::-;8748:17;:77::i;:::-;8717:108;;8882:6;8843:11;8876:1;8855:11;:18;:22;;;;:::i;:::-;8843:35;;;;;;;;:::i;:::-;;;;;;;:45:::0;8839:248:::1;;8908:63;8946:11;8959;8908:37;:63::i;:::-;8989:50;9027:11;8989:37;:50::i;:::-;9068:4;9058:14;;8839:248;8703:394;8677:1374;;;-1:-1:-1::0;;9107:20:213::1;::::0;::::1;::::0;9103:948:::1;;9143:28;9174:75;9192:6;9200:48;9236:11;9200:35;:48::i;9174:75::-;9143:106;;9306:6;9267:11;9300:1;9279:11;:18;:22;;;;:::i;:::-;9267:35;;;;;;;;:::i;:::-;;;;;;;:45:::0;9263:243:::1;;9332:61;9368:11;9381;9332:35;:61::i;:::-;9411:48;9447:11;9411:35;:48::i;9103:948::-;9526:20:::0;::::1;::::0;::::1;::::0;9522:529;::::1;;9997:43;::::0;-1:-1:-1;;;9997:43:213;;12831:2:229;9997:43:213::1;::::0;::::1;12813:21:229::0;12870:2;12850:18;;;12843:30;12909:34;12889:18;;;12882:62;12980:3;12960:18;;;12953:31;13001:19;;9997:43:213::1;12629:397:229::0;9522:529:213::1;10060:33;10081:11;10060:20;:33::i;:::-;8437:1663;;1721:151:::0;8329:1771;;;;;:::o;1878:819::-;1959:11;1731:30;1764:27;1779:11;1764:14;:27::i;:::-;1731:60;;1809:8;:15;;;1801:53;;;;-1:-1:-1;;;1801:53:213;;11209:2:229;1801:53:213;;;11191:21:229;11248:2;11228:18;;;11221:30;11287:27;11267:18;;;11260:55;11332:18;;1801:53:213;11007:349:229;1801:53:213;1982:22:::1;2014:8;:6;:8::i;:::-;-1:-1:-1::0;;;;;2007:29:213::1;;2037:11;2007:42;;;;;;;;;;;;;2313:25:229::0;;2301:2;2286:18;;2167:177;2007:42:213::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1982:67;;2085:12;:10;:12::i;:::-;-1:-1:-1::0;;;;;2067:30:213::1;:14;-1:-1:-1::0;;;;;2067:30:213::1;;2059:69;;;::::0;-1:-1:-1;;;2059:69:213;;12063:2:229;2059:69:213::1;::::0;::::1;12045:21:229::0;12102:2;12082:18;;;12075:30;12141:28;12121:18;;;12114:56;12187:18;;2059:69:213::1;11861:350:229::0;2059:69:213::1;2138:14;2167:9:::0;2162:486:::1;2182:7;:14;2178:1;:18;2162:486;;;2226:7;2234:1;2226:10;;;;;;;;:::i;:::-;;;;;;;2217:19;;2265:8;:6;:8::i;:::-;-1:-1:-1::0;;;;;2258:32:213::1;;2291:6;2299:12;:10;:12::i;:::-;2258:54;::::0;;::::1;::::0;;;;;;::::1;::::0;::::1;13205:25:229::0;;;;-1:-1:-1;;;;;13266:55:229;13246:18;;;13239:83;13178:18;;2258:54:213::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2250:88;;;::::0;-1:-1:-1;;;2250:88:213;;13817:2:229;2250:88:213::1;::::0;::::1;13799:21:229::0;13856:2;13836:18;;;13829:30;13895:23;13875:18;;;13868:51;13936:18;;2250:88:213::1;13615:345:229::0;2250:88:213::1;2352:25;2380:17;2390:6;2380:9;:17::i;:::-;2352:45;;2446:1;2425:8;:17;;;2419:24;;;;;;;;:::i;:::-;:28;;;2411:70;;;::::0;-1:-1:-1;;;2411:70:213;;14167:2:229;2411:70:213::1;::::0;::::1;14149:21:229::0;14206:2;14186:18;;;14179:30;14245:31;14225:18;;;14218:59;14294:18;;2411:70:213::1;13965:353:229::0;2411:70:213::1;2503:38;2521:11;2534:6;2503:17;:38::i;:::-;2495:78;;;::::0;-1:-1:-1;;;2495:78:213;;14525:2:229;2495:78:213::1;::::0;::::1;14507:21:229::0;14564:2;14544:18;;;14537:30;14603:29;14583:18;;;14576:57;14650:18;;2495:78:213::1;14323:351:229::0;2495:78:213::1;2587:50;2598:11;2611:6;2619:8;:17;;;2587:10;:50::i;:::-;-1:-1:-1::0;2198:3:213::1;;2162:486;;;;2657:33;2678:11;2657:20;:33::i;:::-;1972:725;;1721:151:::0;1878:819;;;:::o;1942:98:123:-;1981:7;2003:32;:30;:32::i;2703:1136:213:-;2781:16;2809:25;2837:17;2847:6;2837:9;:17::i;:::-;2874;;2809:45;;-1:-1:-1;2868:24:213;;;;;;;;:::i;:::-;:29;;2896:1;2868:29;2864:969;;2913:29;2945:50;2983:11;2945:37;:50::i;:::-;2913:82;;3014:9;3009:252;3029:12;:19;3025:1;:23;3009:252;;;3092:6;3073:12;3086:1;3073:15;;;;;;;;:::i;:::-;;;;;;;:25;3069:117;;3136:4;3122:18;;3162:5;;3069:117;3225:3;;;;:::i;:::-;;;;3009:252;;;;2899:372;2864:969;;;3287:17;;3281:24;;;;;;;;:::i;:::-;:29;;3309:1;3281:29;3277:556;;3326:30;3359:48;3395:11;3359:35;:48::i;:::-;3326:81;;3426:9;3421:254;3441:13;:20;3437:1;:24;3421:254;;;3506:6;3486:13;3500:1;3486:16;;;;;;;;:::i;:::-;;;;;;;:26;3482:118;;3550:4;3536:18;;3576:5;;3482:118;3639:3;;;;:::i;:::-;;;;3421:254;;3277:556;3701:17;;3695:24;;;;;;;;:::i;:::-;:29;;3723:1;3695:29;3691:142;;;3779:43;;-1:-1:-1;;;3779:43:213;;12831:2:229;3779:43:213;;;12813:21:229;12870:2;12850:18;;;12843:30;12909:34;12889:18;;;12882:62;12980:3;12960:18;;;12953:31;13001:19;;3779:43:213;12629:397:229;3691:142:213;2799:1040;2703:1136;;;;:::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;10400:416:182:-;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;10512:16:182;;;10526:1;10512:16;;;;;;;;;10483:26;;10512:16;;;;;;;;;;;-1:-1:-1;10512:16:182;10483:45;;10565:6;10549:24;;10534:9;10544:1;10534:12;;;;;;;;:::i;:::-;;;;;;;;;;:39;10581:24;;;10668:80;1205:66;10713:9;1334:66;10668:21;:80::i;:::-;10580:168;;;;;;10761:50;10768:11;10781:15;10798:12;10761:6;:50::i;:::-;10754:57;10400:416;-1:-1:-1;;;;;;10400:416:182:o;13270:402:194:-;13324:23;;:::i;:::-;13384:16;;;13398:1;13384:16;;;;;;;;;13355:26;;13384:16;;;;;;;;;;;-1:-1:-1;13384:16:194;13355:45;;13421:8;13406:9;13416:1;13406:12;;;;;;;;:::i;:::-;;;;;;;;;;:23;13437:24;;;13524:80;1310:66;13569:9;1439:66;13524:21;:80::i;:::-;13436:168;;;;;;13617:50;13624:11;13637:15;13654:12;13617:6;:50::i;25502:421:177:-;25559:36;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25559:36:177;25632:16;;;25646:1;25632:16;;;;;;;;;25603:26;;25632:16;;;;;;;;;;;-1:-1:-1;25632:16:177;25603:45;;25669:11;25654:9;25664:1;25654:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;25688:24;;;25775:80;1294:66;25820:9;1423:66;25775:21;:80::i;:::-;25687:168;;;;;;25868:50;25875:11;25888:15;25905:12;25868:6;:50::i;7769:413:178:-;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7891:16:178;;7905:1;7891:16;;;;;;;;;-1:-1:-1;;;;7891:16:178;;;;;;;;;;;;;-1:-1:-1;7891:16:178;7862:45;;7928:11;7913:9;7923:1;7913:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;7947:24;;;8034:80;1163:66;8079:9;1292:66;8034:21;:80::i;:::-;7946:168;;;;;;8127:50;8134:11;8147:15;8164:12;8127:6;:50::i;14822:354:177:-;14963:16;;;14977:1;14963:16;;;;;;;;;14894:32;;14934:26;;14963:16;;;;;;;;;;;;-1:-1:-1;14963:16:177;14934:45;;15000:11;14985:9;14995:1;14985:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;15018:18;15039:51;1294:66;15077:9;15088:1;15039:27;:51::i;:::-;15018:72;;15104:66;:44;15125:5;15132:1;15135:5;:12;15104:20;:44::i;:::-;:64;:66::i;:::-;15096:75;14822:354;-1:-1:-1;;;;14822:354:177:o;12265:653:213:-;12379:29;12443:1;12428:5;:12;:16;12424:488;;;12465:9;12460:391;12480:5;:12;12476:1;:16;12460:391;;;12529:6;12517:5;12523:1;12517:8;;;;;;;;:::i;:::-;;;;;;;:18;12513:263;;12559:12;12574:5;12595:1;12580:5;:12;:16;;;;:::i;:::-;12574:23;;;;;;;;:::i;:::-;;;;;;;12559:38;;12630:4;12619:5;12625:1;12619:8;;;;;;;;:::i;:::-;;;;;;:15;;;;;12682:6;12656:5;12677:1;12662:5;:12;:16;;;;:::i;:::-;12656:23;;;;;;;;:::i;:::-;;;;;;:32;;;;;12725:5;12710:20;;12752:5;;;12513:263;12815:3;;;;:::i;:::-;;;;12460:391;;;;12424:488;;;-1:-1:-1;12896:5:213;12265:653;-1:-1:-1;12265:653:213:o;15629:277:177:-;15756:16;;;15770:1;15756:16;;;;;;;;;15727:26;;15756:16;;;;;;;;;;;-1:-1:-1;15756:16:177;15727:45;;15793:11;15778:9;15788:1;15778:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;15811:90;1294:66;15849:9;15860:1;15863:37;15883:15;15863:18;:37::i;:::-;15811:27;:90::i;:::-;15721:185;15629:277;;:::o;18727:212::-;18820:16;;;18834:1;18820:16;;;;;;;;;18791:26;;18820:16;;;;;;;;;;;-1:-1:-1;18820:16:177;18791:45;;18857:11;18842:9;18852:1;18842:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;18875:59;1294:66;1278:83;;18917:9;18928:1;18931:2;18875:31;:59::i;:::-;18785:154;18727:212;:::o;9521:350::-;9658:16;;;9672:1;9658:16;;;;;;;;;9591:30;;9629:26;;9658:16;;;;;;;;;;;;-1:-1:-1;9658:16:177;9629:45;;9695:11;9680:9;9690:1;9680:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;9713:18;9734:51;1294:66;9772:9;9713:18;9734:27;:51::i;10316:271::-;10439:16;;;10453:1;10439:16;;;;;;;;;10410:26;;10439:16;;;;;;;;;;;-1:-1:-1;10439:16:177;10410:45;;10476:11;10461:9;10471:1;10461:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;10494:88;1294:66;10532:9;1278:83;10546:35;10566:13;10546:18;:35::i;13374:210::-;13465:16;;;13479:1;13465:16;;;;;;;;;13436:26;;13465:16;;;;;;;;;;;-1:-1:-1;13465:16:177;13436:45;;13502:11;13487:9;13497:1;13487:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;13520:59;1294:66;1278:83;;13562:9;13573:1;13576:2;13520:31;:59::i;6543:1780:213:-;6613:30;6646:48;6682:11;6646:35;:48::i;:::-;6613:81;;6704:32;6739:50;6777:11;6739:37;:50::i;:::-;6704:85;;6799:18;6827:24;6861;6895;6929:23;6962:28;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6962:28:213;7000:30;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7000:30:213;7044:20;;:24;7040:482;;7089:9;7084:428;7104:13;:20;7100:1;:24;7084:428;;;7162:31;7176:13;7190:1;7176:16;;;;;;;;:::i;:::-;;;;;;;7162:13;:31::i;:::-;7149:44;;7225:10;:24;;;7211:38;;;;;:::i;:::-;;;7288:10;:22;;;7267:43;;;;;:::i;:::-;7349:22;;7267:43;;-1:-1:-1;7328:43:213;;;;:::i;:::-;;;7410:10;:22;;;7389:43;;;;;:::i;:::-;;;7470:10;:27;;;7450:47;;;;;:::i;:::-;;-1:-1:-1;7126:3:213;;7084:428;;;;7040:482;7535:22;;:26;7531:438;;7582:9;7577:382;7597:15;:22;7593:1;:26;7577:382;;;7658:34;7673:15;7689:1;7673:18;;;;;;;;:::i;:::-;;;;;;;7658:14;:34::i;:::-;7644:48;;7731:11;:23;;;7710:44;;;;;:::i;:::-;7793:23;;7710:44;;-1:-1:-1;7772:44:213;;;;:::i;:::-;;;7855:11;:23;;;7834:44;;;;;:::i;:::-;;;7916:11;:28;;;7896:48;;;;;:::i;:::-;;-1:-1:-1;7621:3:213;;7577:382;;;;7531:438;7978:62;8009:11;8022:17;7978:30;:62::i;:::-;8050;8081:11;8094:17;8050:30;:62::i;:::-;8122;8153:11;8166:17;8122:30;:62::i;:::-;8194:60;8224:11;8237:16;8194:29;:60::i;:::-;8264:52;8292:11;8305:10;8264:27;:52::i;:::-;6603:1720;;;;;;;;;6543:1780;:::o;5657:880::-;5761:31;5772:11;5785:6;5761:10;:31::i;:::-;5760:32;5752:72;;;;-1:-1:-1;;;5752:72:213;;15011:2:229;5752:72:213;;;14993:21:229;15050:2;15030:18;;;15023:30;15089:29;15069:18;;;15062:57;15136:18;;5752:72:213;14809:351:229;5752:72:213;5844:8;5838:15;;;;;;;;:::i;:::-;:20;;5857:1;5838:20;5834:226;;5938:1;5882:53;5923:11;5882:40;:53::i;:::-;:57;5874:102;;;;-1:-1:-1;;;5874:102:213;;15367:2:229;5874:102:213;;;15349:21:229;;;15386:18;;;15379:30;15445:34;15425:18;;;15418:62;15497:18;;5874:102:213;15165:356:229;5874:102:213;5990:59;6029:11;6042:6;5990:38;:59::i;:::-;6079:8;6073:15;;;;;;;;:::i;:::-;:20;;6092:1;6073:20;6069:222;;6171:1;6117:51;6156:11;6117:38;:51::i;:::-;:55;6109:100;;;;-1:-1:-1;;;6109:100:213;;15367:2:229;6109:100:213;;;15349:21:229;;;15386:18;;;15379:30;15445:34;15425:18;;;15418:62;15497:18;;6109:100:213;15165:356:229;6109:100:213;6223:57;6260:11;6273:6;6223:36;:57::i;:::-;6311:8;6305:15;;;;;;;;:::i;:::-;:20;5657:880;;;:::o;4048:97:123:-;4089:7;4111:29;:27;:29::i;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;14482:308:182:-;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;14692:25:182;14705:11;14692:12;:25::i;:::-;14671:17;;;14653:64;;;14654:6;14653:64;;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;14741:44;14755:15;14772:12;14741:13;:44::i;:::-;14725:12;;;14724:61;14725:6;14482:308;-1:-1:-1;;;14482:308:182:o;17879:370:194:-;17990:23;;:::i;:::-;18219:25;18232:11;18219:12;:25::i;:::-;18198:12;;;18021:223;;;18173:17;;;18021:223;;;18149:16;;;18021:223;;;18121:20;;;18021:223;;;18094:19;;;18021:223;;;18029:6;18052:14;;;18074:12;;;18021:223;;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;18021:223:194;;;;-1:-1:-1;17879:370:194;;;-1:-1:-1;;;;;17879:370:194:o;31199:439:177:-;31339:36;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;31339:36:177;31467:25;31480:11;31467:12;:25::i;:::-;31451:12;;;31383:109;31435:14;;;31383:109;31418:15;;;31383:109;31401:15;;;31383:109;;;31571:62;31592:15;31615:12;31571:13;:62::i;:::-;31546:21;;;31499:134;31522:22;;;31499:134;31500:20;;;31499:134;31500:6;31199:439;-1:-1:-1;;;31199:439:177:o;11270:238:178:-;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11478:25:178;11491:11;11478:12;:25::i;:::-;11417:86;;11461:13;;;11417:86;11448:11;;;11417:86;-1:-1:-1;;;;;11417:86:178;11434:12;;;11417:86;;;11418:6;11270:238;-1:-1:-1;;;11270:238:178: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;18801:224::-;18748:281;18598:431;;;;;:::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;15325:220:56:-;15391:24;15423:30;15456:32;15474:6;15482:2;15486:1;15456:17;:32::i;15129:222:57:-;15193:12;15283:6;15307:39;15283:6;15340:2;15344:1;15307:17;:39::i;11569:424:46:-;11720:21;11744:17;:15;:17::i;:::-;11720:41;-1:-1:-1;11796:4:46;-1:-1:-1;;;;;11771:30:46;;;11767:222;;11811:69;11837:7;11846:8;11856:17;11875:4;11811:25;:69::i;:::-;11767:222;;;11901:81;;;;;-1:-1:-1;;;;;11901:37:46;;;;;:81;;11939:7;;11948:8;;11958:17;;11977:4;;11901:81;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11767:222;11714:279;11569:424;;;;:::o;13190:464::-;13351:21;13375:17;:15;:17::i;:::-;13351:41;-1:-1:-1;13427:4:46;-1:-1:-1;;;;;13402:30:46;;;13398:252;;13442:84;13472:7;13481:8;13491:17;13510:15;13442:29;:84::i;13398:252::-;13547:96;;;;;-1:-1:-1;;;;;13547:41:46;;;;;:96;;13589:7;;13598:8;;13608:17;;13627:15;;13547:96;;;:::i;3825:257:177:-;3928:16;;;3942:1;3928:16;;;;;;;;;3899:26;;3928:16;;;;;;;;;;;-1:-1:-1;3928:16:177;3899:45;;3965:11;3950:9;3960:1;3950:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;3983:94;1294:66;1278:83;;4020:9;4031:1;4052:8;4034:28;;;;;;20672:19:229;;20716:2;20707:12;;20545:180;4034:28:177;;;;-1:-1:-1;;4034:28:177;;;;;;;;;1423:66;3983:26;:94::i;5115:257::-;5218:16;;;5232:1;5218:16;;;;;;;;;5189:26;;5218:16;;;;;;;;;;;-1:-1:-1;5218:16:177;5189:45;;5255:11;5240:9;5250:1;5240:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;5273:94;1294:66;1278:83;;5310:9;5321:1;5342:8;5324:28;;;;;;20672:19:229;;20716:2;20707:12;;20545:180;6405:257:177;6508:16;;;6522:1;6508:16;;;;;;;;;6479:26;;6508:16;;;;;;;;;;;-1:-1:-1;6508:16:177;6479:45;;6545:11;6530:9;6540:1;6530:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;6563:94;1294:66;1278:83;;6600:9;6611:1;6632:8;6614:28;;;;;;20672:19:229;;20716:2;20707:12;;20545:180;7688:254:177;7789:16;;;7803:1;7789:16;;;;;;;;;7760:26;;7789:16;;;;;;;;;;;-1:-1:-1;7789:16:177;7760:45;;7826:11;7811:9;7821:1;7811:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;7844:93;1294:66;1278:83;;7881:9;7892:1;7913:7;7895:27;;;;;;20672:19:229;;20716:2;20707:12;;20545:180;8936:249:177;9034:16;;;9048:1;9034:16;;;;;;;;;9005:26;;9034:16;;;;;;;;;;;-1:-1:-1;9034:16:177;9005:45;;9071:11;9056:9;9066:1;9056:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;9089:91;1294:66;1278:83;;9126:9;9137:1;9158:5;9140:25;;;;;;20672:19:229;;20716:2;20707:12;;20545:180;16296:311:177;16415:16;;;16429:1;16415:16;;;;;;;;;16371:7;;;;16415:16;;;;;;;;;;;;-1:-1:-1;16415:16:177;16386:45;;16452:11;16437:9;16447:1;16437:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;16470:19;16492:57;1294:66;16536:9;16547:1;16492:33;:57::i;:::-;16594:2;16580:16;;;;-1:-1:-1;;;;16296:311:177:o;18085:256::-;18197:16;;;18211:1;18197:16;;;;;;;;;18168:26;;18197:16;;;;;;;;;;;-1:-1:-1;18197:16:177;18168:45;;18234:11;18219:9;18229:1;18219:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;18252:84;1294:66;1278:83;;18293:9;18304:1;18325:8;18307:28;;;;;;20672:19:229;;20716:2;20707:12;;20545:180;18307:28:177;;;;;;;;;;;;;18252:30;:84::i;10967:309::-;11084:16;;;11098:1;11084:16;;;;;;;;;11040:7;;;;11084:16;;;;;;;;;;;;-1:-1:-1;11084:16:177;11055:45;;11121:11;11106:9;11116:1;11106:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;11139:19;11161:57;1294:66;11205:9;11139:19;11161:33;:57::i;12740:254::-;12850:16;;;12864:1;12850:16;;;;;;;;;12821:26;;12850:16;;;;;;;;;;;-1:-1:-1;12850:16:177;12821:45;;12887:11;12872:9;12882:1;12872:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;12905:84;1294:66;1278:83;;12946:9;12957:1;12978:8;12960:28;;;;;;20672:19:229;;20716:2;20707:12;;20545:180;1836:227:46;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;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;13577:225:182:-;2756:4:23;2742:27;;2736:34;13642:17:182;;;;13707:32;;13698:42;;;;;;;;:::i;:::-;2742:27:23;;;;;2736:34;13687:53:182;;13577:225;-1:-1:-1;;13577:225:182:o;13905:310::-;14015:18;14041:14;975:16:24;7017:70;;;6995:94;;14157:51:182;:41;14178:5;14041:14;6995:94:24;14157:20:182;:41::i;:::-;:49;:51::i;:::-;14142:68;13905:310;-1:-1:-1;;;;;13905:310:182:o;16961:760:194:-;17053:16;17077:15;17100:13;17121:20;17149:21;17178:16;17202:18;17228:13;17276:26;17293:5;17300:1;2742:27:23;2756:4;2742:27;2736:34;;2612:168;17276:26:194;2742:27:23;;;2736:34;2742:27;;;2736:34;17268:35:194;;-1:-1:-1;2736:34:23;-1:-1:-1;17382:33:194;;17374:42;;;;;;;;:::i;:::-;2742:27:23;;;2736:34;2742:27;;;2736:34;2742:27;;;2736:34;2742:27;;;2736:34;2742:27;;;;2736:34;16961:760:194;;;;17366: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;16961:760:194;-1:-1:-1;;16961:760:194:o;29601:467:177:-;29674:15;29691;29708;29725:14;29741:13;29789:26;29806:5;29813:1;2742:27:23;2756:4;2742:27;2736:34;;2612:168;29789:26:177;2742:27:23;;;2736:34;2742:27;;;2736:34;2742:27;;;2736:34;2742:27;;;;2736:34;29781:35:177;;2736:34:23;;;;-1:-1:-1;2736:34:23;-1:-1:-1;2736:34:23;;-1:-1:-1;29601:467:177;-1:-1:-1;;29601:467:177:o;30171:761::-;30293:30;;;30400:14;975:16:24;7017:70;;;6995:94;;30518:63:177;:41;30539:5;30400:14;6995:94:24;30518:20:177;:41::i;:63::-;30501:81;-1:-1:-1;30598:4:177;-1:-1:-1;30598:4:177;6995:94:24;7059:27;7017:70;;;6995:94;30626:34:177;30691:63;:41;30712:5;30719:6;30626:34;30691:20;:41::i;:63::-;30672:83;-1:-1:-1;30771:4:177;-1:-1:-1;30771:4:177;6995:94:24;7059:27;7017:70;;;6995:94;30799:34:177;30863:63;:41;30884:5;30891:6;30799:34;30863:20;:41::i;:63::-;30845:82;;30394:538;;30171:761;;;;;:::o;10766:346:178:-;10839:15;10856:13;10871:12;10885:11;10923:26;10940:5;10947:1;2742:27:23;2756:4;2742:27;2736:34;;2612:168;10923:26:178;2742:27:23;;;2736:34;2742:27;;;2736:34;10915:35:178;;-1:-1:-1;10967:36:178;;;-1:-1:-1;2742:27:23;;;2736:34;11011:36:178;;-1:-1:-1;11072:33:178;;11054:53;;10766:346;;;;;:::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;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;;;3341:28;;3116:690;;;2681:1129;;;;;:::o;830:1343::-;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;;24152:738:45;24403:37;24443:66;24491:7;24500:8;24443:47;:66::i;:::-;24403:106;-1:-1:-1;24515:26:45;24551:49;24403:106;24582:17;7070:16:24;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;24551:49:45;24515:86;;24608:277;24662:7;24687:8;24722:17;24765:1;24787:19;24820:4;24856:22;24608:36;:277::i;30235:834::-;30495:37;30535:66;30583:7;30592:8;30535:47;:66::i;:::-;30495:106;-1:-1:-1;30607:26:45;30643:49;30495:106;30674:17;7070:16:24;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;30643:49:45;30607:86;-1:-1:-1;30731:333:45;30785:7;30810:8;30845:17;30895:37;30917:15;30895:37;;;;:::i;:::-;30991:12;;;31001:1;30991:12;;;;;;;;30961:15;;31035:22;30731:36;:333::i;10761:455:46:-;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;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21091:444;21233:7;21248:21;21272:17;:15;:17::i;:::-;21248:41;-1:-1:-1;21324:4:46;-1:-1:-1;;;;;21299:30:46;;;21295:236;;21346:69;21378:7;21387:8;21397:17;21346:31;:69::i;21295:236::-;21443:81;;;;;-1:-1:-1;;;;;21443:43:46;;;;;:81;;21487:7;;21496:8;;21506:17;;21443:81;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;12345:451::-;12505:21;12529:17;:15;:17::i;:::-;12505:41;-1:-1:-1;12581:4:46;-1:-1:-1;;;;;12556:30:46;;;12552:240;;12596:78;12625:7;12634:8;12644:17;12663:10;12596:28;:78::i;12552:240::-;12695:90;;;;;-1:-1:-1;;;;;12695:40:46;;;;;:90;;12736:7;;12745:8;;12755:17;;12774:10;;12695:90;;;:::i;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;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;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;44254:4001:45:-;44673:14;44652:7;:35;;;44648:161;;44743:14;44759:7;44792;44775:25;;;;;;20672:19:229;;20716:2;20707:12;;20545:180;44775:25:45;;;;-1:-1:-1;;44775:25:45;;;;;;;;;;44704:98;;;;;;;;;;:::i;44648:161::-;44815:27;44845:49;:22;44876:17;7070:16:24;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;44845:49:45;44815:79;;44900:26;44965:4;:11;44951;44929:33;;:19;:33;;;;:::i;:::-;:47;;;;:::i;:::-;44900:76;;45248:18;45225:19;:41;;:98;;;;-1:-1:-1;45304:19:45;45270:30;45289:11;45270:16;:30;:::i;:::-;:53;;;;45225:98;45221:218;;;45340:92;;;;;24080:12:229;24119:15;;;45340:92:45;;;24101:34:229;24171:15;;;24151:18;;;24144:43;24223:15;;24203:18;;;24196:43;24043:18;;45340:92:45;23874:371:229;45221:218:45;45545:19;45526:16;:38;;;45522:140;;;45581:74;;;;;;;;24423:25:229;;;24496:12;24484:25;;24464:18;;;24457:53;24396:18;;45581:74:45;24250:266:229;45522:140:45;45701:36;45740:72;:22;45774:17;45793:18;45740:33;:72::i;:::-;45701:111;;45959:22;45984:24;46000:7;45984:15;:24::i;:::-;45959:49;;46019:9;46014:486;46034:5;:12;46030:1;:16;46014:486;;;46061:9;46083:5;46089:1;46083:8;;;;;;;;:::i;:::-;;;;;;;46061:31;;46104:42;836:6:54;46104:4:45;:14;;;;;:42;;;;:::i;:::-;46100:394;;;3536:35:26;;;;-1:-1:-1;;;;;46158:55:45;;46235:7;46264:8;46303:17;46350:16;46391:11;46430:22;46470:4;46158:327;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;46100:394;-1:-1:-1;46048:3:45;;46014:486;;;-1:-1:-1;46558:32:45;;;:13;46698:107;46716:17;46712:21;;:1;:21;;;46698:107;;;46761:33;:22;46792:1;7070:16:24;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;46761:33:45;46752:42;;;;46735:3;;46698:107;;;;46930:7;46874:277;46957:8;46994:17;47035:5;47064:11;47101:21;47138:4;46874:277;;;;;;;;;;;:::i;:::-;;;;;;;;46506:652;47243:18;47220:19;:41;47216:248;;47271:31;47305:48;47335:7;47344:8;47305:29;:48::i;:::-;695:28:44;;;-1:-1:-1;47216:248:45;47521:27;47551:61;47575:7;47584:8;47594:17;47551:23;:61::i;:::-;47521:91;;47620:92;47652:19;47681:16;47620:92;;47705:4;47620:13;:92::i;:::-;47513:206;47773:9;47768:483;47788:5;:12;47784:1;:16;47768:483;;;47815:9;47837:5;47843:1;47837:8;;;;;;;;:::i;:::-;;;;;;;47815:31;;47858:41;947:6:54;47858:4:45;:14;;;;;:41;;;;:::i;:::-;47854:391;;;3536:35:26;;;;-1:-1:-1;;;;;47911:54:45;;47987:7;48016:8;48055:17;48102:16;48143:11;48182:21;48221:4;47911:325;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;47854:391;-1:-1:-1;47802:3:45;;47768:483;;;;44498:3757;;;;44254:4001;;;;;;;:::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;39909:262::-;40051:7;40073:93;40148:17;40073:66;40121:7;40130:8;40073:47;:66::i;28764:791::-;29023:37;29063:66;29111:7;29120:8;29063:47;:66::i;:::-;29023:106;-1:-1:-1;29135:26:45;29171:49;29023:106;29202:17;7070:16:24;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;29171:49:45;29135:86;;29259:291;29313:7;29338:8;29373:17;29423:19;29464:1;29479:10;29521:22;29259:36;:291::i;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;53371:230::-;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;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;7468:1525:24:-;7596:14;1145:16;7622:25;;7618:120;;;7664:67;;;;;;;;2313:25:229;;;2286:18;;7664:67:24;2167:177:229;7618:120:24;7802:14;6445:61;;;7070:16;;;1063;7070;975;7059:27;7017:70;;;6995:94;;8068:38;;;8064:192;;8151:19;8133:15;:37;8118:52;;;;8064:192;;;8232:15;8210:19;:37;8195:52;;;;8064:192;-1:-1:-1;8572:16:24;975;1063;8439;;;;8428:27;8564:35;;;8882:5;8719:26;8699:46;;;;8698:62;;;8862:25;;;;8892:34;;;;;8861:66;;-1:-1:-1;7468:1525:24;;;;;:::o;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;966:162:44:-;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;51823:242:45:-;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;;17013:1682;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;40103:220:56:-;40169:24;40201:30;40234:32;40252:6;40260:2;40264:1;40234:17;:32::i;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;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:332:229:-;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:180;833:6;886:2;874:9;865:7;861:23;857:32;854:52;;;902:1;899;892:12;854:52;-1:-1:-1;925:23:229;;774:180;-1:-1:-1;774:180:229:o;959:448::-;1010:3;1048:5;1042:12;1075:6;1070:3;1063:19;1101:4;1130;1125:3;1121:14;1114:21;;1169:4;1162:5;1158:16;1192:1;1202:180;1216:6;1213:1;1210:13;1202:180;;;1281:13;;1296:4;1277:24;1265:37;;1322:12;;;;1357:15;;;;1238:1;1231:9;1202:180;;;-1:-1:-1;1398:3:229;;959:448;-1:-1:-1;;;;;959:448:229:o;1412:750::-;1601:2;1590:9;1583:21;1646:6;1640:13;1635:2;1624:9;1620:18;1613:41;1708:2;1700:6;1696:15;1690:22;1685:2;1674:9;1670:18;1663:50;1564:4;1760:2;1752:6;1748:15;1742:22;1800:4;1795:2;1784:9;1780:18;1773:32;1828:61;1884:3;1873:9;1869:19;1855:12;1828:61;:::i;:::-;1814:75;;1944:2;1936:6;1932:15;1926:22;1920:3;1909:9;1905:19;1898:51;2004:3;1996:6;1992:16;1986:23;1980:3;1969:9;1965:19;1958:52;2065:3;2057:6;2053:16;2047:23;2041:3;2030:9;2026:19;2019:52;2127:3;2119:6;2115:16;2109:23;2102:4;2091:9;2087:20;2080:53;2150:6;2142:14;;;1412:750;;;;:::o;2349:834::-;2540:2;2529:9;2522:21;2585:6;2579:13;2574:2;2563:9;2559:18;2552:41;2503:4;2640:2;2632:6;2628:15;2622:22;2663:6;2705:2;2700;2689:9;2685:18;2678:30;2731:61;2787:3;2776:9;2772:19;2758:12;2731:61;:::i;:::-;2717:75;;2846:2;2838:6;2834:15;2828:22;2823:2;2812:9;2808:18;2801:50;2906:2;2898:6;2894:15;2888:22;2882:3;2871:9;2867:19;2860:51;2966:3;2958:6;2954:16;2948:23;2942:3;2931:9;2927:19;2920:52;3027:3;3019:6;3015:16;3009:23;3003:3;2992:9;2988:19;2981:52;3088:3;3080:6;3076:16;3070:23;3064:3;3053:9;3049:19;3042:52;3148:3;3140:6;3136:16;3130:23;3125:2;3114:9;3110:18;3103:51;;3171:6;3163:14;;;2349:834;;;;:::o;4082:248::-;4150:6;4158;4211:2;4199:9;4190:7;4186:23;4182:32;4179:52;;;4227:1;4224;4217:12;4179:52;-1:-1:-1;;4250:23:229;;;4320:2;4305:18;;;4292:32;;-1:-1:-1;4082:248:229:o;4335:184::-;-1:-1:-1;;;4384:1:229;4377:88;4484:4;4481:1;4474:15;4508:4;4505:1;4498:15;4524:253;4596:2;4590:9;4638:4;4626:17;;4673:18;4658:34;;4694:22;;;4655:62;4652:88;;;4720:18;;:::i;:::-;4756:2;4749:22;4524:253;:::o;4782:255::-;4854:2;4848:9;4896:6;4884:19;;4933:18;4918:34;;4954:22;;;4915:62;4912:88;;;4980:18;;:::i;5042:334::-;5113:2;5107:9;5169:2;5159:13;;-1:-1:-1;;5155:86:229;5143:99;;5272:18;5257:34;;5293:22;;;5254:62;5251:88;;;5319:18;;:::i;:::-;5355:2;5348:22;5042:334;;-1:-1:-1;5042:334:229:o;5381:183::-;5441:4;5474:18;5466:6;5463:30;5460:56;;;5496:18;;:::i;:::-;-1:-1:-1;5541:1:229;5537:14;5553:4;5533:25;;5381:183::o;5569:959::-;5662:6;5670;5723:2;5711:9;5702:7;5698:23;5694:32;5691:52;;;5739:1;5736;5729:12;5691:52;5775:9;5762:23;5752:33;;5804:2;5857;5846:9;5842:18;5829:32;5884:18;5876:6;5873:30;5870:50;;;5916:1;5913;5906:12;5870:50;5939:22;;5992:4;5984:13;;5980:27;-1:-1:-1;5970:55:229;;6021:1;6018;6011:12;5970:55;6057:2;6044:16;6080:60;6096:43;6136:2;6096:43;:::i;:::-;6080:60;:::i;:::-;6174:15;;;6256:1;6252:10;;;;6244:19;;6240:28;;;6205:12;;;;6280:19;;;6277:39;;;6312:1;6309;6302:12;6277:39;6336:11;;;;6356:142;6372:6;6367:3;6364:15;6356:142;;;6438:17;;6426:30;;6389:12;;;;6476;;;;6356:142;;;6517:5;6507:15;;;;;;;5569:959;;;;;:::o;6533:184::-;-1:-1:-1;;;6582:1:229;6575:88;6682:4;6679:1;6672:15;6706:4;6703:1;6696:15;7070:832;7133:5;7186:3;7179:4;7171:6;7167:17;7163:27;7153:55;;7204:1;7201;7194:12;7153:55;7233:6;7227:13;7259:4;7283:60;7299:43;7339:2;7299:43;:::i;7283:60::-;7365:3;7389:2;7384:3;7377:15;7417:4;7412:3;7408:14;7401:21;;7474:4;7468:2;7465:1;7461:10;7453:6;7449:23;7445:34;7431:48;;7502:3;7494:6;7491:15;7488:35;;;7519:1;7516;7509:12;7488:35;7555:4;7547:6;7543:17;7569:304;7585:6;7580:3;7577:15;7569:304;;;7658:3;7652:10;7706:4;7699:5;7695:16;7688:5;7685:27;7675:125;;7754:1;7783:2;7779;7772:14;7675:125;7813:18;;7851:12;;;;7602;;7569:304;;;-1:-1:-1;7891:5:229;7070:832;-1:-1:-1;;;;;;7070:832:229:o;7907:943::-;8007:6;8060:2;8048:9;8039:7;8035:23;8031:32;8028:52;;;8076:1;8073;8066:12;8028:52;8109:9;8103:16;8138:18;8179:2;8171:6;8168:14;8165:34;;;8195:1;8192;8185:12;8165:34;8218:22;;;;8274:4;8256:16;;;8252:27;8249:47;;;8292:1;8289;8282:12;8249:47;8318:22;;:::i;:::-;8369:2;8363:9;8356:5;8349:24;8419:2;8415;8411:11;8405:18;8400:2;8393:5;8389:14;8382:42;8463:2;8459;8455:11;8449:18;8492:2;8482:8;8479:16;8476:36;;;8508:1;8505;8498:12;8476:36;8544:65;8601:7;8590:8;8586:2;8582:17;8544:65;:::i;:::-;8539:2;8532:5;8528:14;8521:89;;8656:2;8652;8648:11;8642:18;8637:2;8630:5;8626:14;8619:42;8708:3;8704:2;8700:12;8694:19;8688:3;8681:5;8677:15;8670:44;8761:3;8757:2;8753:12;8747:19;8741:3;8734:5;8730:15;8723:44;8814:3;8810:2;8806:12;8800:19;8794:3;8787:5;8783:15;8776:44;8839:5;8829:15;;;;;7907:943;;;;:::o;9204:999::-;9305:6;9358:2;9346:9;9337:7;9333:23;9329:32;9326:52;;;9374:1;9371;9364:12;9326:52;9407:9;9401:16;9436:18;9477:2;9469:6;9466:14;9463:34;;;9493:1;9490;9483:12;9463:34;9516:22;;;;9572:6;9554:16;;;9550:29;9547:49;;;9592:1;9589;9582:12;9547:49;9618:22;;:::i;:::-;9669:2;9663:9;9656:5;9649:24;9712:2;9708;9704:11;9698:18;9741:2;9731:8;9728:16;9725:36;;;9757:1;9754;9747:12;9725:36;9793:65;9850:7;9839:8;9835:2;9831:17;9793:65;:::i;:::-;9788:2;9781:5;9777:14;9770:89;;9905:2;9901;9897:11;9891:18;9886:2;9879:5;9875:14;9868:42;9956:2;9952;9948:11;9942:18;9937:2;9930:5;9926:14;9919:42;10008:3;10004:2;10000:12;9994:19;9988:3;9981:5;9977:15;9970:44;10061:3;10057:2;10053:12;10047:19;10041:3;10034:5;10030:15;10023:44;10114:3;10110:2;10106:12;10100:19;10094:3;10087:5;10083:15;10076:44;10167:3;10163:2;10159:12;10153:19;10147:3;10140:5;10136:15;10129:44;10192:5;10182:15;;;;;9204:999;;;;:::o;10208:184::-;-1:-1:-1;;;10257:1:229;10250:88;10357:4;10354:1;10347:15;10381:4;10378:1;10371:15;10397:216;10461:9;;;10489:11;;;10436:3;10519:9;;10547:10;;10543:19;;10572:10;;10564:19;;10540:44;10537:70;;;10587:18;;:::i;10618:184::-;-1:-1:-1;;;10667:1:229;10660:88;10767:4;10764:1;10757:15;10791:4;10788:1;10781:15;10807:195;10846:3;-1:-1:-1;;10870:5:229;10867:77;10864:103;;10947:18;;:::i;:::-;-1:-1:-1;10994:1:229;10983:13;;10807:195::o;11543:313::-;11613:6;11666:2;11654:9;11645:7;11641:23;11637:32;11634:52;;;11682:1;11679;11672:12;11634:52;11714:9;11708:16;-1:-1:-1;;;;;11757:5:229;11753:54;11746:5;11743:65;11733:93;;11822:1;11819;11812:12;12216:275;12301:6;12354:2;12342:9;12333:7;12329:23;12325:32;12322:52;;;12370:1;12367;12360:12;12322:52;12402:9;12396:16;12441:1;12434:5;12431:12;12421:40;;12457:1;12454;12447:12;12496:128;12563:9;;;12584:11;;;12581:37;;;12598:18;;:::i;13333:277::-;13400:6;13453:2;13441:9;13432:7;13428:23;13424:32;13421:52;;;13469:1;13466;13459:12;13421:52;13501:9;13495:16;13554:5;13547:13;13540:21;13533:5;13530:32;13520:60;;13576:1;13573;13566:12;14679:125;14744:9;;;14765:10;;;14762:36;;;14778:18;;:::i;15526:439::-;15579:3;15617:5;15611:12;15644:6;15639:3;15632:19;15670:4;15699;15694:3;15690:14;15683:21;;15738:4;15731:5;15727:16;15761:1;15771:169;15785:6;15782:1;15779:13;15771:169;;;15846:13;;15834:26;;15880:12;;;;15915:15;;;;15807:1;15800:9;15771:169;;15970:468;16270:6;16259:9;16252:25;16313:2;16308;16297:9;16293:18;16286:30;16233:4;16333:56;16385:2;16374:9;16370:18;16362:6;16333:56;:::i;:::-;16325:64;;16425:6;16420:2;16409:9;16405:18;16398:34;15970:468;;;;;;:::o;16443:250::-;16528:1;16538:113;16552:6;16549:1;16546:13;16538:113;;;16628:11;;;16622:18;16609:11;;;16602:39;16574:2;16567:10;16538:113;;;-1:-1:-1;;16685:1:229;16667:16;;16660:27;16443:250::o;16698:568::-;16751:5;16804:3;16797:4;16789:6;16785:17;16781:27;16771:55;;16822:1;16819;16812:12;16771:55;16851:6;16845:13;16877:18;16873:2;16870:26;16867:52;;;16899:18;;:::i;:::-;16943:114;17051:4;-1:-1:-1;;16975:4:229;16971:2;16967:13;16963:86;16959:97;16943:114;:::i;:::-;17082:2;17073:7;17066:19;17128:3;17121:4;17116:2;17108:6;17104:15;17100:26;17097:35;17094:55;;;17145:1;17142;17135:12;17094:55;17158:77;17232:2;17225:4;17216:7;17212:18;17205:4;17197:6;17193:17;17158:77;:::i;17271:655::-;17413:6;17421;17429;17482:2;17470:9;17461:7;17457:23;17453:32;17450:52;;;17498:1;17495;17488:12;17450:52;17531:9;17525:16;17560:18;17601:2;17593:6;17590:14;17587:34;;;17617:1;17614;17607:12;17587:34;17640:60;17692:7;17683:6;17672:9;17668:22;17640:60;:::i;:::-;17630:70;;17740:2;17729:9;17725:18;17719:25;17709:35;;17790:2;17779:9;17775:18;17769:25;17753:41;;17819:2;17809:8;17806:16;17803:36;;;17835:1;17832;17825:12;17803:36;;17858:62;17912:7;17901:8;17890:9;17886:24;17858:62;:::i;:::-;17848:72;;;17271:655;;;;;:::o;17931:442::-;18194:6;18183:9;18176:25;18237:2;18232;18221:9;18217:18;18210:30;18157:4;18257:56;18309:2;18298:9;18294:18;18286:6;18257:56;:::i;:::-;18249:64;;18361:4;18353:6;18349:17;18344:2;18333:9;18329:18;18322:45;17931:442;;;;;;:::o;18378:335::-;18457:6;18510:2;18498:9;18489:7;18485:23;18481:32;18478:52;;;18526:1;18523;18516:12;18478:52;18559:9;18553:16;18592:18;18584:6;18581:30;18578:50;;;18624:1;18621;18614:12;18578:50;18647:60;18699:7;18690:6;18679:9;18675:22;18647:60;:::i;18718:329::-;18759:3;18797:5;18791:12;18824:6;18819:3;18812:19;18840:76;18909:6;18902:4;18897:3;18893:14;18886:4;18879:5;18875:16;18840:76;:::i;:::-;18961:2;18949:15;-1:-1:-1;;18945:88:229;18936:98;;;;19036:4;18932:109;;18718:329;-1:-1:-1;;18718:329:229:o;19052:359::-;19255:2;19244:9;19237:21;19218:4;19275:44;19315:2;19304:9;19300:18;19292:6;19275:44;:::i;:::-;19350:2;19335:18;;19328:34;;;;-1:-1:-1;19393:2:229;19378:18;19371:34;19267:52;19052:359;-1:-1:-1;19052:359:229:o;19416:604::-;19725:6;19714:9;19707:25;19768:3;19763:2;19752:9;19748:18;19741:31;19688:4;19795:57;19847:3;19836:9;19832:19;19824:6;19795:57;:::i;:::-;19900:4;19892:6;19888:17;19883:2;19872:9;19868:18;19861:45;19954:9;19946:6;19942:22;19937:2;19926:9;19922:18;19915:50;19982:32;20007:6;19999;19982:32;:::i;:::-;19974:40;19416:604;-1:-1:-1;;;;;;;19416:604:229:o;20025:515::-;20316:6;20305:9;20298:25;20359:3;20354:2;20343:9;20339:18;20332:31;20279:4;20380:57;20432:3;20421:9;20417:19;20409:6;20380:57;:::i;:::-;20485:4;20473:17;;;;20468:2;20453:18;;20446:45;-1:-1:-1;20522:2:229;20507:18;20500:34;20372:65;20025:515;-1:-1:-1;;20025:515:229:o;20917:184::-;-1:-1:-1;;;20966:1:229;20959:88;21066:4;21063:1;21056:15;21090:4;21087:1;21080:15;21106:175;21143:3;21187:4;21180:5;21176:16;21216:4;21207:7;21204:17;21201:43;;21224:18;;:::i;:::-;21273:1;21260:15;;21106:175;-1:-1:-1;;21106:175:229:o;21286:168::-;21359:9;;;21390;;21407:15;;;21401:22;;21387:37;21377:71;;21428:18;;:::i;21459:709::-;21829:6;21818:9;21811:25;21872:3;21867:2;21856:9;21852:18;21845:31;21792:4;21899:57;21951:3;21940:9;21936:19;21928:6;21899:57;:::i;:::-;22004:4;21996:6;21992:17;21987:2;21976:9;21972:18;21965:45;22058:9;22050:6;22046:22;22041:2;22030:9;22026:18;22019:50;22086:32;22111:6;22103;22086:32;:::i;:::-;22078:40;;;22155:6;22149:3;22138:9;22134:19;22127:35;21459:709;;;;;;;;:::o;22173:184::-;22243:6;22296:2;22284:9;22275:7;22271:23;22267:32;22264:52;;;22312:1;22309;22302:12;22264:52;-1:-1:-1;22335:16:229;;22173:184;-1:-1:-1;22173:184:229:o;22362:640::-;22613:6;22608:3;22601:19;22583:3;22639:2;22672;22667:3;22663:12;22704:6;22698:13;22769:2;22761:6;22757:15;22790:1;22800:175;22814:6;22811:1;22808:13;22800:175;;;22877:13;;22863:28;;22913:14;;;;22950:15;;;;22836:1;22829:9;22800:175;;;-1:-1:-1;22991:5:229;;22362:640;-1:-1:-1;;;;;;;22362:640:229:o;23226:464::-;23473:66;23465:6;23461:79;23450:9;23443:98;23577:6;23572:2;23561:9;23557:18;23550:34;23620:2;23615;23604:9;23600:18;23593:30;23424:4;23640:44;23680:2;23669:9;23665:18;23657:6;23640:44;:::i;23695:174::-;23762:12;23794:10;;;23806;;;23790:27;;23829:11;;;23826:37;;;23843:18;;:::i;24521:901::-;24946:6;24935:9;24928:25;24989:3;24984:2;24973:9;24969:18;24962:31;24909:4;25016:57;25068:3;25057:9;25053:19;25045:6;25016:57;:::i;:::-;25121:4;25109:17;;25104:2;25089:18;;25082:45;25146:12;25194:15;;;25189:2;25174:18;;25167:43;25247:15;;25241:3;25226:19;;25219:44;25294:3;25279:19;;25272:35;;;25344:22;;;25338:3;25323:19;;25316:51;25384:32;25348:6;25401;25384:32;:::i;:::-;25376:40;24521:901;-1:-1:-1;;;;;;;;;;24521:901:229:o;25427:788::-;25792:3;25781:9;25774:22;25755:4;25819:57;25871:3;25860:9;25856:19;25848:6;25819:57;:::i;:::-;25924:4;25916:6;25912:17;25907:2;25896:9;25892:18;25885:45;25978:14;25970:6;25966:27;25961:2;25950:9;25946:18;25939:55;26042:12;26034:6;26030:25;26025:2;26014:9;26010:18;26003:53;26093:6;26087:3;26076:9;26072:19;26065:35;26149:9;26141:6;26137:22;26131:3;26120:9;26116:19;26109:51;26177:32;26202:6;26194;26177:32;:::i;:::-;26169:40;25427:788;-1:-1:-1;;;;;;;;;25427:788:229:o;26220:511::-;26471:2;26460:9;26453:21;26434:4;26497:56;26549:2;26538:9;26534:18;26526:6;26497:56;:::i;:::-;26601:14;26593:6;26589:27;26584:2;26573:9;26569:18;26562:55;26665:9;26657:6;26653:22;26648:2;26637:9;26633:18;26626:50;26693:32;26718:6;26710;26693:32;:::i;26736:616::-;27047:6;27036:9;27029:25;27090:3;27085:2;27074:9;27070:18;27063:31;27010:4;27117:57;27169:3;27158:9;27154:19;27146:6;27117:57;:::i;:::-;27222:14;27214:6;27210:27;27205:2;27194:9;27190:18;27183:55;27286:9;27278:6;27274:22;27269:2;27258:9;27254:18;27247:50;27314:32;27339:6;27331;27314:32;:::i","linkReferences":{}},"methodIdentifiers":{"_msgSender()":"119df25f","_msgValue()":"45ec9354","_world()":"e1af802c","applyEquipmentBonuses(bytes32)":"9056fa28","checkRequirements(bytes32,uint256)":"9a8bb9a2","equipItems(bytes32,uint256[])":"cc77a2de","getArmorStats(uint256)":"40a5ed2a","getWeaponStats(uint256)":"63ff2287","isEquipped(bytes32,uint256)":"edcfef82","supportsInterface(bytes4)":"01ffc9a7","unequipItem(bytes32,uint256)":"b2aca84b"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"}],\"name\":\"EncodedLengths_InvalidLength\",\"type\":\"error\"},{\"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\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"accessedIndex\",\"type\":\"uint256\"}],\"name\":\"Store_IndexOutOfBounds\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes2\",\"name\":\"expected\",\"type\":\"bytes2\"},{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"Store_InvalidResourceType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint40\",\"name\":\"startWithinField\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"fieldLength\",\"type\":\"uint40\"}],\"name\":\"Store_InvalidSplice\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"indexed\":false,\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"indexed\":false,\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"indexed\":false,\"internalType\":\"EncodedLengths\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Store_SpliceDynamicData\",\"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\":\"_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\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"}],\"name\":\"applyEquipmentBonuses\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"adjustedStrength\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"adjustedAgility\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"adjustedIntelligence\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"adjustedArmor\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"adjustedMaxHp\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"currentHp\",\"type\":\"int256\"},{\"internalType\":\"uint256\",\"name\":\"level\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"class\",\"type\":\"uint256\"}],\"internalType\":\"struct AdjustedCombatStats\",\"name\":\"modifiedStats\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"}],\"name\":\"checkRequirements\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"canUse\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256[]\",\"name\":\"itemIds\",\"type\":\"uint256[]\"}],\"name\":\"equipItems\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"}],\"name\":\"getArmorStats\",\"outputs\":[{\"components\":[{\"internalType\":\"int256\",\"name\":\"agiModifier\",\"type\":\"int256\"},{\"internalType\":\"uint256\",\"name\":\"armorModifier\",\"type\":\"uint256\"},{\"internalType\":\"uint8[]\",\"name\":\"classRestrictions\",\"type\":\"uint8[]\"},{\"internalType\":\"int256\",\"name\":\"hitPointModifier\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"intModifier\",\"type\":\"int256\"},{\"internalType\":\"uint256\",\"name\":\"minLevel\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"strModifier\",\"type\":\"int256\"}],\"internalType\":\"struct ArmorStats\",\"name\":\"_ArmorStats\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"}],\"name\":\"getWeaponStats\",\"outputs\":[{\"components\":[{\"internalType\":\"int256\",\"name\":\"agiModifier\",\"type\":\"int256\"},{\"internalType\":\"uint8[]\",\"name\":\"classRestrictions\",\"type\":\"uint8[]\"},{\"internalType\":\"int256\",\"name\":\"hitPointModifier\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"intModifier\",\"type\":\"int256\"},{\"internalType\":\"uint256\",\"name\":\"maxDamage\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minDamage\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minLevel\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"strModifier\",\"type\":\"int256\"}],\"internalType\":\"struct WeaponStats\",\"name\":\"_weaponStats\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"}],\"name\":\"isEquipped\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_isEquipped\",\"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\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"}],\"name\":\"unequipItem\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"errors\":{\"EncodedLengths_InvalidLength(uint256)\":[{\"params\":{\"length\":\"The length of the encoded lengths.\"}}],\"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.\"}}],\"Store_IndexOutOfBounds(uint256,uint256)\":[{\"details\":\"Raised if the start index is larger than the previous length of the field.\",\"params\":{\"accessedIndex\":\"FIXME\",\"length\":\"FIXME\"}}],\"Store_InvalidResourceType(bytes2,bytes32,string)\":[{\"params\":{\"expected\":\"The expected resource type.\",\"resourceId\":\"The resource ID.\",\"resourceIdString\":\"The stringified resource ID (for easier debugging).\"}}],\"Store_InvalidSplice(uint40,uint40,uint40)\":[{\"details\":\"Raised if the splice total length of the field is changed but the splice is not at the end of the field.\",\"params\":{\"deleteCount\":\"The number of bytes to delete in the splice operation.\",\"fieldLength\":\"The field length for the splice operation.\",\"startWithinField\":\"The start index within the field for the splice operation.\"}}]},\"events\":{\"Store_SpliceDynamicData(bytes32,bytes32[],uint8,uint48,uint40,bytes32,bytes)\":{\"params\":{\"data\":\"The data to insert into the dynamic data of the record at the start byte.\",\"deleteCount\":\"The number of bytes to delete in the splice operation.\",\"dynamicFieldIndex\":\"The index of the dynamic field to splice data, relative to the start of the dynamic fields. (Dynamic field index = field index - number of static fields)\",\"encodedLengths\":\"The encoded lengths of the dynamic data of the record.\",\"keyTuple\":\"An array representing the composite 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.\"}},\"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.\"}},\"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\":{\"EncodedLengths_InvalidLength(uint256)\":[{\"notice\":\"Error raised when the provided encoded lengths has an invalid length.\"}],\"Slice_OutOfBounds(bytes,uint256,uint256)\":[{\"notice\":\"Error raised when the provided slice is out of bounds.\"}],\"Store_IndexOutOfBounds(uint256,uint256)\":[{\"notice\":\"Error raised if the provided index is out of bounds.\"}],\"Store_InvalidResourceType(bytes2,bytes32,string)\":[{\"notice\":\"Error raised if the provided resource ID cannot be found.\"}],\"Store_InvalidSplice(uint40,uint40,uint40)\":[{\"notice\":\"Error raised if the provided splice is invalid.\"}]},\"events\":{\"Store_SpliceDynamicData(bytes32,bytes32[],uint8,uint48,uint40,bytes32,bytes)\":{\"notice\":\"Emitted when dynamic data in the store is spliced.\"},\"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/EquipmentSystem.sol\":\"EquipmentSystem\"},\"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\":\"0xdd3ebcb4c411e951e1d5c68d6287c597f8f6ab874b48ae96600e024326bd7059\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://61cf2ec85c2dcfde0de8d6c12cdb78b59f8b94a8662dd122bc1aca013cc69c7c\",\"dweb:/ipfs/QmdsELzf5enAbpe5ERXRJgyg2PvtiAUiiX7dT85BLtKpCM\"]},\"lib/ERC1155-puppet/ERC1155System.sol\":{\"keccak256\":\"0x37bfddf9abf8e10002749d0f3e5c2d765da2359b4aa0c10549d61728da1ddae3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://77cef81d1373f77daac326d90895bbe692166b82895ae4b5f11ed92d4c5ad21c\",\"dweb:/ipfs/Qmcjk2FUweGK5McuAQh8jXjMa6t3wW4YoWtwitEKD3jqhG\"]},\"lib/ERC1155-puppet/IERC1155.sol\":{\"keccak256\":\"0xba76a0cbf29f93fdcf613ee19a3e8a36d8579628c3e657f68edd29f682cfe05d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c40994dd35444a97b97eacd9c5af7f27373c357642000bbcbcafe7169bd2179e\",\"dweb:/ipfs/QmSVGhh4AT7gkSmVtnitew14xtQFepACdhbGbWXJh39mk1\"]},\"lib/ERC1155-puppet/IERC1155Errors.sol\":{\"keccak256\":\"0x507875c8e9e6f2e706e95c565d51f20030165eb2dc241f49a42cedb96caaead2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b96ff50d61db0f5773b5322c8d3dc8b062a92f9da21bf9a821ac7bae58bcdecb\",\"dweb:/ipfs/QmcXnAhbPWL4ekfgLVPXuBRPuUUMM7zfU5xwP8pPoihnTu\"]},\"lib/ERC1155-puppet/IERC1155Events.sol\":{\"keccak256\":\"0x43dcbad156d27946650411971fabb2dcac1f234f78a5e7a776e18560c9ef64d5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://299a141df22563efaa23eb10ab2a311d3b4cc252a3f63a4c73902b198f731859\",\"dweb:/ipfs/QmbaTrv7SwCrYcQ4qyyPf4YxUFQLrcuYMy1aF5sp3VwswN\"]},\"lib/ERC1155-puppet/IERC1155MetadataURI.sol\":{\"keccak256\":\"0x73546c8cf58dc8ce002f50f172ebb8207e65856d12402f8d86fca8ba9288c4d8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c81bc7f8b4f61810c1562c0197499be6ce636313c2beb9d095455ea8ccd21ae0\",\"dweb:/ipfs/QmR67xU45dQWo51gHyaZB6wy8CbnRLg6nFvD4KeTX6mfZz\"]},\"lib/ERC1155-puppet/IERC1155Receiver.sol\":{\"keccak256\":\"0x9a6fd2d799610585460b2eeba3a38fe7706b8e7291f05411622a979fb462383f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d3c78236d3e2b76209e1e2bb175820449bb1527c0ca99e526b19a73f207d38b3\",\"dweb:/ipfs/Qma552XoWh5sYX4SSiUgwsSpTxe4qR47ozuac4nDsRetxF\"]},\"lib/ERC1155-puppet/IERC1155System.sol\":{\"keccak256\":\"0x324481afcc10bb871430340e0ddea5613a7a7dc7436ad8067b64e787791d9c74\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cbf2f86e7c18feb303c9201417a85af320f148907fa637b25b56e7484325d64c\",\"dweb:/ipfs/QmW35pffC8PK5Y7afxLc6qYYiDjH4NayRggogPazy5JsEi\"]},\"lib/ERC1155-puppet/constants.sol\":{\"keccak256\":\"0xe41618b4227fc0aaa1c22fc3972420734e23e0441a2315269de368af69d67c70\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9e67f2b3f6597a30810afaccd9cd90146b7164fc6c8e91a16261f2424b6b62ee\",\"dweb:/ipfs/QmeJoceERJVcjfH4g1YQTpZGQdUnTFSgZz2eWTRtuwKXje\"]},\"lib/ERC1155-puppet/libraries/LibString.sol\":{\"keccak256\":\"0xb53857d461ac8c546fcd96b94a9f4e34001ac555bbc7b3fc3471c52b16afe2fb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://24cae538067519ffa04a943330b10cba87d26e2c03227edd8a0ebe671186fb73\",\"dweb:/ipfs/QmcZuKmY8GyCWDSSSYAV5ZLuGyhkYhiJXb5AMvViUYgAuz\"]},\"lib/ERC1155-puppet/libraries/utils/ERC1155Utils.sol\":{\"keccak256\":\"0x981a5c3d788baf2b20b043c1a1f005fa9aa224f660233ecc63c6aa2e719b0f21\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5270b523c823caf879a3d338914d1c44070aace2825fb4fbd83d744267a26f5f\",\"dweb:/ipfs/QmVfXQPAPsr24W5rz5qDiiVp2n6owM417skseKnEHxqXmq\"]},\"lib/ERC1155-puppet/libraries/utils/draft-IERC6093.sol\":{\"keccak256\":\"0xb016571337f659bda4d98117bfd0ea8e26d5e7b696eff5cc308275b420b9120e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://72ad563fb7c394adfce5a899bc94afb6e463c2773d9de1b98cae3747f85cd779\",\"dweb:/ipfs/QmZwZGrZreuHMW7EHmzpXpN6JVtmcmQY4othHaTqR2ucV6\"]},\"lib/ERC1155-puppet/tables/ERC1155MetadataURI.sol\":{\"keccak256\":\"0x5e7be6ad3cd2280a13cbc155496131b2453d411da565d17e68df8a2b479ae3ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a6ccc261562a5c76ac720adc8634d931cae7a7ecc40c96e5db7837a262c38fe\",\"dweb:/ipfs/QmY3G99LXRifTJpJA4FqPRDUBboe8GD2PcEagu9MiwuUqL\"]},\"lib/ERC1155-puppet/tables/ERC1155URIStorage.sol\":{\"keccak256\":\"0x41b5c9f2a05119ab0cdc2ed8ebafca81338e71637dc79b218c3c35a4d901d40e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://526fc37c04ba0e53d742e26cf7e6b899f520482fd02fe484e17100eb3b1a256d\",\"dweb:/ipfs/Qmex48c3aPQYRHkduC9fxxzvAYYvnqesyP1AKZNnrXC2cQ\"]},\"lib/ERC1155-puppet/tables/OperatorApproval.sol\":{\"keccak256\":\"0xbbed481b7ccef9525cd566c8e36f42512c8de94c7431510356b35c853c2764d5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://984af22419c3ba9e19775b47cdd981872bb1aff430ebab83752a0ea3f6b6fb79\",\"dweb:/ipfs/Qmdr1FByP2aWAuursvKr126EZhNzT29H4bGs3qx9yacVfg\"]},\"lib/ERC1155-puppet/tables/Owners.sol\":{\"keccak256\":\"0x1dce77dc5f33c570e2163f8cbb9e5b3a628ae8f6abbf097dfc24422ff7d50636\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c604d7d03c963f322ed07c2978e1276e89d4a61ad2f2d6790eba98d7f663c7a3\",\"dweb:/ipfs/QmakymS49hdSh7i5igXbTX9f44A4h3yh4cFAxTaMfNvXTp\"]},\"lib/ERC1155-puppet/tables/TotalSupply.sol\":{\"keccak256\":\"0x892ee6cca8571fc5e43563a5834d5a44330a27206a838bb755f7711bbd357c4a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f3120b4a608f998c88b42a50ec33b6ffa709e7079d37f0ec88998f6fb441919b\",\"dweb:/ipfs/QmP4RFLPi75jTn19cUYXshfZgSAJoDzHAio6xGnYSK9NLE\"]},\"lib/ERC1155-puppet/utils.sol\":{\"keccak256\":\"0x4c264da22c936a784106d81aa3cdb94f54d90d46e15ad1b66b53bf28bbcbdf49\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b47674f3483134a57c6a3ac0193e6cdd3643774d12ad433de0541b8358ea9dd0\",\"dweb:/ipfs/QmSqmfS5s7aqrsLgi67b91s3f51AaDJs5F5xzioZcussXH\"]},\"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/modules/puppet/Puppet.sol\":{\"keccak256\":\"0x0793dc274d0e27b9a00369935693952f2b15e85b243ebed5994cc0c5fd806bc9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d94877420ab98c06013f327ce43e18a7dd3f9a42a33f76a5291ae8424b2699a6\",\"dweb:/ipfs/QmcpKAzLV2eKSU7Pfbb7wgkidNeWSUyUD5J2Scgio16RS8\"]},\"node_modules/@latticexyz/world-modules/src/modules/puppet/PuppetMaster.sol\":{\"keccak256\":\"0xc83209af82eba3b3452a5c62531d52edb13d69db67c768ec12989cfaf9191c72\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f1d83a60ed2e3a15cde57d6fc859ee7c76e6d089010f41189151e799eb90525c\",\"dweb:/ipfs/QmfZLVNQ9G3kkMBxu3koZbMVPqhtxGTw2iziZQbob4AFhm\"]},\"node_modules/@latticexyz/world-modules/src/modules/puppet/constants.sol\":{\"keccak256\":\"0x55dc370e83d22bd3ddb79172658731deb725c7609c1966d58cfdc5276bc20a7e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6bc27074a755a64d238f32cfd07b4226cfd47fd157f4f0829c13d8d5406d5f9d\",\"dweb:/ipfs/QmZesmQK815TdF6AuZpKZ249NXP2Qqnzmy9k3WpNRc5Cyq\"]},\"node_modules/@latticexyz/world-modules/src/modules/puppet/tables/PuppetRegistry.sol\":{\"keccak256\":\"0x37273e42577e71b80621bcaa9132b8f9d28ded452242fb478fd7e52f382b83a6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://26403866f063923a910cc1e6f4ff7b0e74e4f343b1222675658d1b9a1ecdbe14\",\"dweb:/ipfs/QmSTqLMbg9PvyFkVexVbLPUPLr1aBuBtcfnBZGbqEaje7Q\"]},\"node_modules/@latticexyz/world-modules/src/modules/puppet/utils.sol\":{\"keccak256\":\"0x0c07e1daf167a9ebcf81d1b176e4aef23d12b0bc01333c572c0482b699fd199d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7f2ec0928e530ae3b75aadfe224a5c1654d0c26b8f10e06e490274fff3871489\",\"dweb:/ipfs/QmPLfak2kwefQ5tcNFxuE9TXsQ4PVkvTraHWZU8PK9GkR4\"]},\"node_modules/@latticexyz/world-modules/src/utils/AccessControlLib.sol\":{\"keccak256\":\"0x9fb1520ec94ce3396760a235db900192b4990c78fd459c449896a74c32b83542\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4025b37988ece6915b2c867702a4a381829755dd9e5b0b0b32ade85649b00b2a\",\"dweb:/ipfs/QmUsLyetPdhtSdN3MicE1uphXWscKBPSBif8Sd83RC1E6Z\"]},\"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/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/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/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/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\":\"0x84ff02d4275be694bfbe1e60e24539a891dda5df3bacf04f0eb2a974425603d0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f88775b86cdc8322742e528072b64d01df3d3ef70d4fc5104412522e468ae4e2\",\"dweb:/ipfs/Qme75CeS2sA8pr1Tyx9GN5atmuG4aBGjMPaagaGtYTjc2R\"]},\"src/codegen/tables/Actions.sol\":{\"keccak256\":\"0x63cd48bebaa0414728e9be2c856e4eb01efaead6627a6615da4c77b886805cef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1dfe138555b67362f41c26ce1ab074bfc1fcc4e7c6fd0284b82cc699d80d392\",\"dweb:/ipfs/QmNf8UGE3FZ4U96HkeioE4peWWz1SKPAjhKRrGnpEnCdkQ\"]},\"src/codegen/tables/Admin.sol\":{\"keccak256\":\"0xe3b7e993ca2e420d73b845fb37388d453486e24522b941503a2f81c639769725\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e638c35d3ec5805180122b70849bd3a93aa680f3251ac9e7fe4f0ff24722f614\",\"dweb:/ipfs/QmVL3xJPrsVDgXQTdxBEkq4PRmyNDCFHGHKJxLQzuFy9XJ\"]},\"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/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\":\"0x1f0b21a82c18d474347446546973619289392ee9cc745eccbfb4ba802771b2e2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f0a514e9aa8c0265e8ac7284587cdfec829ad4904e511a284d44a325f9ee511b\",\"dweb:/ipfs/QmYGbphJpnBQMsTEtAM78kqH56FrzrmBFVNthRM4WLdUSQ\"]},\"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\":\"0xe941a99c5bc6b4f21b69b4ad61870a3c4b35fa3a7d8e162c75ac3e7515717891\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://eaa285996201485c500f114b98515ce121d87ec29780085dc509d32dff96b227\",\"dweb:/ipfs/QmbnDdw5KqwfGspTKgikXCkvn6Gi6mVWca2yXiPoumhEJP\"]},\"src/codegen/tables/UltimateDominionConfig.sol\":{\"keccak256\":\"0x6f439f3fef2c4db3b295718bb3e277f59500a3183f2306fe70890a30c3eeff26\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bde32ff627c137c1b52e6f45ff82df52eee9e6fe8fa668fc791132dba187f256\",\"dweb:/ipfs/Qmcj4S8ysUA1Lv8xbA5i1dzn4wwKPQrCEjpUd1MW6rh21w\"]},\"src/codegen/world/IActionSystem.sol\":{\"keccak256\":\"0x3ea10f6af2b29e07f658e961113a68db383bb5df7ec853bd797bd1cc14d19b0d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c834cb0bb80ffe10c6175f8a16b827dde9804d459e6aa33691484e419587d47f\",\"dweb:/ipfs/QmXnLXquHjNXN8CCsEL3NPNrQHW6UWY78oginRPtcHZFcw\"]},\"src/codegen/world/ICharacterSystem.sol\":{\"keccak256\":\"0x54157279932a37b055d247901f034848c1f0bffbf262028cf9c69eeedc9b7235\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ead77ae9ab020f705a998be6229e975b9352486deaa9aa800b6de10338190782\",\"dweb:/ipfs/QmaLrytghaAH6ipaBr4XwsaBcCzeVa5gujHGRNxeztuo4X\"]},\"src/codegen/world/ICombatSystem.sol\":{\"keccak256\":\"0x8b522a844626b33d69ae186dd26f2f7bfd921bf92ed7ed0cee2b8c349d9b64f9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://647f99949a4584cf4b528415ffea01ad243147548455fe5a8373b042b6af3087\",\"dweb:/ipfs/QmYsgXQDTwrqg7YSJkKtiNZzf63f4jdA4xfni5gb9ap5K5\"]},\"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\":\"0xc6caadf1800d688083c234a12cd151746f0271be03a50bb6a654634270ab0864\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://084766afac89e6f74162f69534635f90ec56570019223e22d20342f7853fb4e0\",\"dweb:/ipfs/QmbrQXrTewfgW2NydLgPCdt3Vton5V7nfE7HViXtyrMnoK\"]},\"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\":\"0xfb774a3d4388291fa5bae54bf1c592cc366a0585e6d24388dfeebaf3abd666b4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0986371fcb9f53bac88f2c190faf0f5a77fac686eced664aed5f2f1eb6eaca64\",\"dweb:/ipfs/QmWdgLEV31t27nNQC1KGEfaZHFcuBUayxHm2giZJpAG8hv\"]},\"src/interfaces/Structs.sol\":{\"keccak256\":\"0x6259111a19c9e329bd16a154bca9afa89339ce179d278647e34bcdff1868d0de\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c67088e2ecdb887174b16cdaf87299ad3b3871d7ce1f8c4c51e8def5e6cc8fb5\",\"dweb:/ipfs/QmR2SXkYEkSqaacU6rWGsLdZiefy5kcsVqhvzg4Kob2fk1\"]},\"src/systems/EquipmentSystem.sol\":{\"keccak256\":\"0x1e2d2ce9e21b7b142de98109eacd7abea8291356520974aa1d24b9bfb3d3aadc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be102dcd2585521e76e5301bcc4b8d48c61c15f9d9305c81638e6c585aa9135e\",\"dweb:/ipfs/QmPX7SuadW3SrXfqYgqCeaLceonsSAtBWKGFqVwYBNRWWD\"]},\"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":"uint256","name":"length","type":"uint256"}],"type":"error","name":"EncodedLengths_InvalidLength"},{"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":"uint256","name":"length","type":"uint256"},{"internalType":"uint256","name":"accessedIndex","type":"uint256"}],"type":"error","name":"Store_IndexOutOfBounds"},{"inputs":[{"internalType":"bytes2","name":"expected","type":"bytes2"},{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"Store_InvalidResourceType"},{"inputs":[{"internalType":"uint40","name":"startWithinField","type":"uint40"},{"internalType":"uint40","name":"deleteCount","type":"uint40"},{"internalType":"uint40","name":"fieldLength","type":"uint40"}],"type":"error","name":"Store_InvalidSplice"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]","indexed":false},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8","indexed":false},{"internalType":"uint48","name":"start","type":"uint48","indexed":false},{"internalType":"uint40","name":"deleteCount","type":"uint40","indexed":false},{"internalType":"EncodedLengths","name":"encodedLengths","type":"bytes32","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Store_SpliceDynamicData","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":"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":"bytes32","name":"entityId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"applyEquipmentBonuses","outputs":[{"internalType":"struct AdjustedCombatStats","name":"modifiedStats","type":"tuple","components":[{"internalType":"uint256","name":"adjustedStrength","type":"uint256"},{"internalType":"uint256","name":"adjustedAgility","type":"uint256"},{"internalType":"uint256","name":"adjustedIntelligence","type":"uint256"},{"internalType":"uint256","name":"adjustedArmor","type":"uint256"},{"internalType":"uint256","name":"adjustedMaxHp","type":"uint256"},{"internalType":"int256","name":"currentHp","type":"int256"},{"internalType":"uint256","name":"level","type":"uint256"},{"internalType":"uint256","name":"class","type":"uint256"}]}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"uint256","name":"itemId","type":"uint256"}],"stateMutability":"view","type":"function","name":"checkRequirements","outputs":[{"internalType":"bool","name":"canUse","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"uint256[]","name":"itemIds","type":"uint256[]"}],"stateMutability":"nonpayable","type":"function","name":"equipItems"},{"inputs":[{"internalType":"uint256","name":"itemId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getArmorStats","outputs":[{"internalType":"struct ArmorStats","name":"_ArmorStats","type":"tuple","components":[{"internalType":"int256","name":"agiModifier","type":"int256"},{"internalType":"uint256","name":"armorModifier","type":"uint256"},{"internalType":"uint8[]","name":"classRestrictions","type":"uint8[]"},{"internalType":"int256","name":"hitPointModifier","type":"int256"},{"internalType":"int256","name":"intModifier","type":"int256"},{"internalType":"uint256","name":"minLevel","type":"uint256"},{"internalType":"int256","name":"strModifier","type":"int256"}]}]},{"inputs":[{"internalType":"uint256","name":"itemId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getWeaponStats","outputs":[{"internalType":"struct WeaponStats","name":"_weaponStats","type":"tuple","components":[{"internalType":"int256","name":"agiModifier","type":"int256"},{"internalType":"uint8[]","name":"classRestrictions","type":"uint8[]"},{"internalType":"int256","name":"hitPointModifier","type":"int256"},{"internalType":"int256","name":"intModifier","type":"int256"},{"internalType":"uint256","name":"maxDamage","type":"uint256"},{"internalType":"uint256","name":"minDamage","type":"uint256"},{"internalType":"uint256","name":"minLevel","type":"uint256"},{"internalType":"int256","name":"strModifier","type":"int256"}]}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"uint256","name":"itemId","type":"uint256"}],"stateMutability":"view","type":"function","name":"isEquipped","outputs":[{"internalType":"bool","name":"_isEquipped","type":"bool"}]},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"pure","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"uint256","name":"itemId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"unequipItem","outputs":[{"internalType":"bool","name":"success","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."}},"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/EquipmentSystem.sol":"EquipmentSystem"},"evmVersion":"paris","libraries":{}},"sources":{"constants.sol":{"keccak256":"0xdd3ebcb4c411e951e1d5c68d6287c597f8f6ab874b48ae96600e024326bd7059","urls":["bzz-raw://61cf2ec85c2dcfde0de8d6c12cdb78b59f8b94a8662dd122bc1aca013cc69c7c","dweb:/ipfs/QmdsELzf5enAbpe5ERXRJgyg2PvtiAUiiX7dT85BLtKpCM"],"license":"MIT"},"lib/ERC1155-puppet/ERC1155System.sol":{"keccak256":"0x37bfddf9abf8e10002749d0f3e5c2d765da2359b4aa0c10549d61728da1ddae3","urls":["bzz-raw://77cef81d1373f77daac326d90895bbe692166b82895ae4b5f11ed92d4c5ad21c","dweb:/ipfs/Qmcjk2FUweGK5McuAQh8jXjMa6t3wW4YoWtwitEKD3jqhG"],"license":"MIT"},"lib/ERC1155-puppet/IERC1155.sol":{"keccak256":"0xba76a0cbf29f93fdcf613ee19a3e8a36d8579628c3e657f68edd29f682cfe05d","urls":["bzz-raw://c40994dd35444a97b97eacd9c5af7f27373c357642000bbcbcafe7169bd2179e","dweb:/ipfs/QmSVGhh4AT7gkSmVtnitew14xtQFepACdhbGbWXJh39mk1"],"license":"MIT"},"lib/ERC1155-puppet/IERC1155Errors.sol":{"keccak256":"0x507875c8e9e6f2e706e95c565d51f20030165eb2dc241f49a42cedb96caaead2","urls":["bzz-raw://b96ff50d61db0f5773b5322c8d3dc8b062a92f9da21bf9a821ac7bae58bcdecb","dweb:/ipfs/QmcXnAhbPWL4ekfgLVPXuBRPuUUMM7zfU5xwP8pPoihnTu"],"license":"MIT"},"lib/ERC1155-puppet/IERC1155Events.sol":{"keccak256":"0x43dcbad156d27946650411971fabb2dcac1f234f78a5e7a776e18560c9ef64d5","urls":["bzz-raw://299a141df22563efaa23eb10ab2a311d3b4cc252a3f63a4c73902b198f731859","dweb:/ipfs/QmbaTrv7SwCrYcQ4qyyPf4YxUFQLrcuYMy1aF5sp3VwswN"],"license":"MIT"},"lib/ERC1155-puppet/IERC1155MetadataURI.sol":{"keccak256":"0x73546c8cf58dc8ce002f50f172ebb8207e65856d12402f8d86fca8ba9288c4d8","urls":["bzz-raw://c81bc7f8b4f61810c1562c0197499be6ce636313c2beb9d095455ea8ccd21ae0","dweb:/ipfs/QmR67xU45dQWo51gHyaZB6wy8CbnRLg6nFvD4KeTX6mfZz"],"license":"MIT"},"lib/ERC1155-puppet/IERC1155Receiver.sol":{"keccak256":"0x9a6fd2d799610585460b2eeba3a38fe7706b8e7291f05411622a979fb462383f","urls":["bzz-raw://d3c78236d3e2b76209e1e2bb175820449bb1527c0ca99e526b19a73f207d38b3","dweb:/ipfs/Qma552XoWh5sYX4SSiUgwsSpTxe4qR47ozuac4nDsRetxF"],"license":"MIT"},"lib/ERC1155-puppet/IERC1155System.sol":{"keccak256":"0x324481afcc10bb871430340e0ddea5613a7a7dc7436ad8067b64e787791d9c74","urls":["bzz-raw://cbf2f86e7c18feb303c9201417a85af320f148907fa637b25b56e7484325d64c","dweb:/ipfs/QmW35pffC8PK5Y7afxLc6qYYiDjH4NayRggogPazy5JsEi"],"license":"MIT"},"lib/ERC1155-puppet/constants.sol":{"keccak256":"0xe41618b4227fc0aaa1c22fc3972420734e23e0441a2315269de368af69d67c70","urls":["bzz-raw://9e67f2b3f6597a30810afaccd9cd90146b7164fc6c8e91a16261f2424b6b62ee","dweb:/ipfs/QmeJoceERJVcjfH4g1YQTpZGQdUnTFSgZz2eWTRtuwKXje"],"license":"MIT"},"lib/ERC1155-puppet/libraries/LibString.sol":{"keccak256":"0xb53857d461ac8c546fcd96b94a9f4e34001ac555bbc7b3fc3471c52b16afe2fb","urls":["bzz-raw://24cae538067519ffa04a943330b10cba87d26e2c03227edd8a0ebe671186fb73","dweb:/ipfs/QmcZuKmY8GyCWDSSSYAV5ZLuGyhkYhiJXb5AMvViUYgAuz"],"license":"MIT"},"lib/ERC1155-puppet/libraries/utils/ERC1155Utils.sol":{"keccak256":"0x981a5c3d788baf2b20b043c1a1f005fa9aa224f660233ecc63c6aa2e719b0f21","urls":["bzz-raw://5270b523c823caf879a3d338914d1c44070aace2825fb4fbd83d744267a26f5f","dweb:/ipfs/QmVfXQPAPsr24W5rz5qDiiVp2n6owM417skseKnEHxqXmq"],"license":"MIT"},"lib/ERC1155-puppet/libraries/utils/draft-IERC6093.sol":{"keccak256":"0xb016571337f659bda4d98117bfd0ea8e26d5e7b696eff5cc308275b420b9120e","urls":["bzz-raw://72ad563fb7c394adfce5a899bc94afb6e463c2773d9de1b98cae3747f85cd779","dweb:/ipfs/QmZwZGrZreuHMW7EHmzpXpN6JVtmcmQY4othHaTqR2ucV6"],"license":"MIT"},"lib/ERC1155-puppet/tables/ERC1155MetadataURI.sol":{"keccak256":"0x5e7be6ad3cd2280a13cbc155496131b2453d411da565d17e68df8a2b479ae3ea","urls":["bzz-raw://1a6ccc261562a5c76ac720adc8634d931cae7a7ecc40c96e5db7837a262c38fe","dweb:/ipfs/QmY3G99LXRifTJpJA4FqPRDUBboe8GD2PcEagu9MiwuUqL"],"license":"MIT"},"lib/ERC1155-puppet/tables/ERC1155URIStorage.sol":{"keccak256":"0x41b5c9f2a05119ab0cdc2ed8ebafca81338e71637dc79b218c3c35a4d901d40e","urls":["bzz-raw://526fc37c04ba0e53d742e26cf7e6b899f520482fd02fe484e17100eb3b1a256d","dweb:/ipfs/Qmex48c3aPQYRHkduC9fxxzvAYYvnqesyP1AKZNnrXC2cQ"],"license":"MIT"},"lib/ERC1155-puppet/tables/OperatorApproval.sol":{"keccak256":"0xbbed481b7ccef9525cd566c8e36f42512c8de94c7431510356b35c853c2764d5","urls":["bzz-raw://984af22419c3ba9e19775b47cdd981872bb1aff430ebab83752a0ea3f6b6fb79","dweb:/ipfs/Qmdr1FByP2aWAuursvKr126EZhNzT29H4bGs3qx9yacVfg"],"license":"MIT"},"lib/ERC1155-puppet/tables/Owners.sol":{"keccak256":"0x1dce77dc5f33c570e2163f8cbb9e5b3a628ae8f6abbf097dfc24422ff7d50636","urls":["bzz-raw://c604d7d03c963f322ed07c2978e1276e89d4a61ad2f2d6790eba98d7f663c7a3","dweb:/ipfs/QmakymS49hdSh7i5igXbTX9f44A4h3yh4cFAxTaMfNvXTp"],"license":"MIT"},"lib/ERC1155-puppet/tables/TotalSupply.sol":{"keccak256":"0x892ee6cca8571fc5e43563a5834d5a44330a27206a838bb755f7711bbd357c4a","urls":["bzz-raw://f3120b4a608f998c88b42a50ec33b6ffa709e7079d37f0ec88998f6fb441919b","dweb:/ipfs/QmP4RFLPi75jTn19cUYXshfZgSAJoDzHAio6xGnYSK9NLE"],"license":"MIT"},"lib/ERC1155-puppet/utils.sol":{"keccak256":"0x4c264da22c936a784106d81aa3cdb94f54d90d46e15ad1b66b53bf28bbcbdf49","urls":["bzz-raw://b47674f3483134a57c6a3ac0193e6cdd3643774d12ad433de0541b8358ea9dd0","dweb:/ipfs/QmSqmfS5s7aqrsLgi67b91s3f51AaDJs5F5xzioZcussXH"],"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/modules/puppet/Puppet.sol":{"keccak256":"0x0793dc274d0e27b9a00369935693952f2b15e85b243ebed5994cc0c5fd806bc9","urls":["bzz-raw://d94877420ab98c06013f327ce43e18a7dd3f9a42a33f76a5291ae8424b2699a6","dweb:/ipfs/QmcpKAzLV2eKSU7Pfbb7wgkidNeWSUyUD5J2Scgio16RS8"],"license":"MIT"},"node_modules/@latticexyz/world-modules/src/modules/puppet/PuppetMaster.sol":{"keccak256":"0xc83209af82eba3b3452a5c62531d52edb13d69db67c768ec12989cfaf9191c72","urls":["bzz-raw://f1d83a60ed2e3a15cde57d6fc859ee7c76e6d089010f41189151e799eb90525c","dweb:/ipfs/QmfZLVNQ9G3kkMBxu3koZbMVPqhtxGTw2iziZQbob4AFhm"],"license":"MIT"},"node_modules/@latticexyz/world-modules/src/modules/puppet/constants.sol":{"keccak256":"0x55dc370e83d22bd3ddb79172658731deb725c7609c1966d58cfdc5276bc20a7e","urls":["bzz-raw://6bc27074a755a64d238f32cfd07b4226cfd47fd157f4f0829c13d8d5406d5f9d","dweb:/ipfs/QmZesmQK815TdF6AuZpKZ249NXP2Qqnzmy9k3WpNRc5Cyq"],"license":"MIT"},"node_modules/@latticexyz/world-modules/src/modules/puppet/tables/PuppetRegistry.sol":{"keccak256":"0x37273e42577e71b80621bcaa9132b8f9d28ded452242fb478fd7e52f382b83a6","urls":["bzz-raw://26403866f063923a910cc1e6f4ff7b0e74e4f343b1222675658d1b9a1ecdbe14","dweb:/ipfs/QmSTqLMbg9PvyFkVexVbLPUPLr1aBuBtcfnBZGbqEaje7Q"],"license":"MIT"},"node_modules/@latticexyz/world-modules/src/modules/puppet/utils.sol":{"keccak256":"0x0c07e1daf167a9ebcf81d1b176e4aef23d12b0bc01333c572c0482b699fd199d","urls":["bzz-raw://7f2ec0928e530ae3b75aadfe224a5c1654d0c26b8f10e06e490274fff3871489","dweb:/ipfs/QmPLfak2kwefQ5tcNFxuE9TXsQ4PVkvTraHWZU8PK9GkR4"],"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/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/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/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/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/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":"0x84ff02d4275be694bfbe1e60e24539a891dda5df3bacf04f0eb2a974425603d0","urls":["bzz-raw://f88775b86cdc8322742e528072b64d01df3d3ef70d4fc5104412522e468ae4e2","dweb:/ipfs/Qme75CeS2sA8pr1Tyx9GN5atmuG4aBGjMPaagaGtYTjc2R"],"license":"MIT"},"src/codegen/tables/Actions.sol":{"keccak256":"0x63cd48bebaa0414728e9be2c856e4eb01efaead6627a6615da4c77b886805cef","urls":["bzz-raw://c1dfe138555b67362f41c26ce1ab074bfc1fcc4e7c6fd0284b82cc699d80d392","dweb:/ipfs/QmNf8UGE3FZ4U96HkeioE4peWWz1SKPAjhKRrGnpEnCdkQ"],"license":"MIT"},"src/codegen/tables/Admin.sol":{"keccak256":"0xe3b7e993ca2e420d73b845fb37388d453486e24522b941503a2f81c639769725","urls":["bzz-raw://e638c35d3ec5805180122b70849bd3a93aa680f3251ac9e7fe4f0ff24722f614","dweb:/ipfs/QmVL3xJPrsVDgXQTdxBEkq4PRmyNDCFHGHKJxLQzuFy9XJ"],"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/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":"0x1f0b21a82c18d474347446546973619289392ee9cc745eccbfb4ba802771b2e2","urls":["bzz-raw://f0a514e9aa8c0265e8ac7284587cdfec829ad4904e511a284d44a325f9ee511b","dweb:/ipfs/QmYGbphJpnBQMsTEtAM78kqH56FrzrmBFVNthRM4WLdUSQ"],"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":"0xe941a99c5bc6b4f21b69b4ad61870a3c4b35fa3a7d8e162c75ac3e7515717891","urls":["bzz-raw://eaa285996201485c500f114b98515ce121d87ec29780085dc509d32dff96b227","dweb:/ipfs/QmbnDdw5KqwfGspTKgikXCkvn6Gi6mVWca2yXiPoumhEJP"],"license":"MIT"},"src/codegen/tables/UltimateDominionConfig.sol":{"keccak256":"0x6f439f3fef2c4db3b295718bb3e277f59500a3183f2306fe70890a30c3eeff26","urls":["bzz-raw://bde32ff627c137c1b52e6f45ff82df52eee9e6fe8fa668fc791132dba187f256","dweb:/ipfs/Qmcj4S8ysUA1Lv8xbA5i1dzn4wwKPQrCEjpUd1MW6rh21w"],"license":"MIT"},"src/codegen/world/IActionSystem.sol":{"keccak256":"0x3ea10f6af2b29e07f658e961113a68db383bb5df7ec853bd797bd1cc14d19b0d","urls":["bzz-raw://c834cb0bb80ffe10c6175f8a16b827dde9804d459e6aa33691484e419587d47f","dweb:/ipfs/QmXnLXquHjNXN8CCsEL3NPNrQHW6UWY78oginRPtcHZFcw"],"license":"MIT"},"src/codegen/world/ICharacterSystem.sol":{"keccak256":"0x54157279932a37b055d247901f034848c1f0bffbf262028cf9c69eeedc9b7235","urls":["bzz-raw://ead77ae9ab020f705a998be6229e975b9352486deaa9aa800b6de10338190782","dweb:/ipfs/QmaLrytghaAH6ipaBr4XwsaBcCzeVa5gujHGRNxeztuo4X"],"license":"MIT"},"src/codegen/world/ICombatSystem.sol":{"keccak256":"0x8b522a844626b33d69ae186dd26f2f7bfd921bf92ed7ed0cee2b8c349d9b64f9","urls":["bzz-raw://647f99949a4584cf4b528415ffea01ad243147548455fe5a8373b042b6af3087","dweb:/ipfs/QmYsgXQDTwrqg7YSJkKtiNZzf63f4jdA4xfni5gb9ap5K5"],"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":"0xc6caadf1800d688083c234a12cd151746f0271be03a50bb6a654634270ab0864","urls":["bzz-raw://084766afac89e6f74162f69534635f90ec56570019223e22d20342f7853fb4e0","dweb:/ipfs/QmbrQXrTewfgW2NydLgPCdt3Vton5V7nfE7HViXtyrMnoK"],"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":"0xfb774a3d4388291fa5bae54bf1c592cc366a0585e6d24388dfeebaf3abd666b4","urls":["bzz-raw://0986371fcb9f53bac88f2c190faf0f5a77fac686eced664aed5f2f1eb6eaca64","dweb:/ipfs/QmWdgLEV31t27nNQC1KGEfaZHFcuBUayxHm2giZJpAG8hv"],"license":"MIT"},"src/interfaces/Structs.sol":{"keccak256":"0x6259111a19c9e329bd16a154bca9afa89339ce179d278647e34bcdff1868d0de","urls":["bzz-raw://c67088e2ecdb887174b16cdaf87299ad3b3871d7ce1f8c4c51e8def5e6cc8fb5","dweb:/ipfs/QmR2SXkYEkSqaacU6rWGsLdZiefy5kcsVqhvzg4Kob2fk1"],"license":"MIT"},"src/systems/EquipmentSystem.sol":{"keccak256":"0x1e2d2ce9e21b7b142de98109eacd7abea8291356520974aa1d24b9bfb3d3aadc","urls":["bzz-raw://be102dcd2585521e76e5301bcc4b8d48c61c15f9d9305c81638e6c585aa9135e","dweb:/ipfs/QmPX7SuadW3SrXfqYgqCeaLceonsSAtBWKGFqVwYBNRWWD"],"license":"MIT"},"src/utils.sol":{"keccak256":"0xf50d451bb280fb33e08f521e168952f5145e69eee7df284ffeb1865b8b5187cc","urls":["bzz-raw://a78e6326639bdf19f606921e48c90663f387cbfd7d8160a461838e9ca6a0fc57","dweb:/ipfs/QmPT6PNCCQKWVP9bwYC4JyfuXJSgbupsgq6MT898gYfa1q"],"license":"MIT"}},"version":1},"id":213} \ No newline at end of file From cca44cdfd46bbb117ab8aa0ca86c2e3195331f08 Mon Sep 17 00:00:00 2001 From: MrDeadCe11 Date: Wed, 17 Jul 2024 18:23:10 -0500 Subject: [PATCH 07/14] another fixt to end match --- packages/contracts/.prettierrc | 8 --- packages/contracts/mud.config.ts | 16 ++++-- .../contracts/src/codegen/tables/Stats.sol | 50 +++++++++---------- .../contracts/src/systems/CharacterSystem.sol | 2 +- .../contracts/src/systems/CombatSystem.sol | 5 +- .../contracts/src/systems/EquipmentSystem.sol | 4 +- packages/contracts/src/systems/MobSystem.sol | 2 +- packages/contracts/src/systems/RngSystem.sol | 6 +-- packages/contracts/test/CharacterSystem.t.sol | 10 ++-- packages/contracts/test/CombatSystem.t.sol | 4 +- packages/contracts/test/EquipmentSystem.t.sol | 2 +- 11 files changed, 57 insertions(+), 52 deletions(-) delete mode 100644 packages/contracts/.prettierrc diff --git a/packages/contracts/.prettierrc b/packages/contracts/.prettierrc deleted file mode 100644 index bf689e8c4..000000000 --- a/packages/contracts/.prettierrc +++ /dev/null @@ -1,8 +0,0 @@ -{ - "plugins": ["prettier-plugin-solidity"], - "printWidth": 120, - "semi": true, - "tabWidth": 2, - "useTabs": false, - "bracketSpacing": true -} diff --git a/packages/contracts/mud.config.ts b/packages/contracts/mud.config.ts index cec28e9c3..fb0a6b3ce 100644 --- a/packages/contracts/mud.config.ts +++ b/packages/contracts/mud.config.ts @@ -4,7 +4,10 @@ export default defineWorld({ namespace: "UD", deploy: {}, userTypes: { - ResourceId: { filePath: "@latticexyz/store/src/ResourceId.sol", type: "bytes32" }, + ResourceId: { + filePath: "@latticexyz/store/src/ResourceId.sol", + type: "bytes32", + }, }, systems: {}, enums: { @@ -19,7 +22,14 @@ export default defineWorld({ Alignment: ["Loyalist", "Neutral", "Rebel", "Aggro"], EncounterType: ["PvP", "PvE"], ActionType: ["Temporary", "PhysicalAttack", "MagicAttack", "StatusEffect"], - StatusEffects: ["ToHitModifier", "DoT", "HitPointMod", "ArmorMod", "WeaponMod", "Stun"], + StatusEffects: [ + "ToHitModifier", + "DoT", + "HitPointMod", + "ArmorMod", + "WeaponMod", + "Stun", + ], }, tables: { /** @@ -44,7 +54,7 @@ export default defineWorld({ agility: "uint256", class: "Classes", intelligence: "uint256", - baseHitPoints: "uint256", + baseHp: "uint256", currentHp: "int256", experience: "uint256", level: "uint256", diff --git a/packages/contracts/src/codegen/tables/Stats.sol b/packages/contracts/src/codegen/tables/Stats.sol index 56842ab5e..6d2ea5aa7 100644 --- a/packages/contracts/src/codegen/tables/Stats.sol +++ b/packages/contracts/src/codegen/tables/Stats.sol @@ -24,7 +24,7 @@ struct StatsData { uint256 agility; Classes class; uint256 intelligence; - uint256 baseHitPoints; + uint256 baseHp; int256 currentHp; uint256 experience; uint256 level; @@ -61,7 +61,7 @@ library Stats { fieldNames[1] = "agility"; fieldNames[2] = "class"; fieldNames[3] = "intelligence"; - fieldNames[4] = "baseHitPoints"; + fieldNames[4] = "baseHp"; fieldNames[5] = "currentHp"; fieldNames[6] = "experience"; fieldNames[7] = "level"; @@ -250,9 +250,9 @@ library Stats { } /** - * @notice Get baseHitPoints. + * @notice Get baseHp. */ - function getBaseHitPoints(bytes32 entityId) internal view returns (uint256 baseHitPoints) { + function getBaseHp(bytes32 entityId) internal view returns (uint256 baseHp) { bytes32[] memory _keyTuple = new bytes32[](1); _keyTuple[0] = entityId; @@ -261,9 +261,9 @@ library Stats { } /** - * @notice Get baseHitPoints. + * @notice Get baseHp. */ - function _getBaseHitPoints(bytes32 entityId) internal view returns (uint256 baseHitPoints) { + function _getBaseHp(bytes32 entityId) internal view returns (uint256 baseHp) { bytes32[] memory _keyTuple = new bytes32[](1); _keyTuple[0] = entityId; @@ -272,23 +272,23 @@ library Stats { } /** - * @notice Set baseHitPoints. + * @notice Set baseHp. */ - function setBaseHitPoints(bytes32 entityId, uint256 baseHitPoints) internal { + function setBaseHp(bytes32 entityId, uint256 baseHp) internal { bytes32[] memory _keyTuple = new bytes32[](1); _keyTuple[0] = entityId; - StoreSwitch.setStaticField(_tableId, _keyTuple, 4, abi.encodePacked((baseHitPoints)), _fieldLayout); + StoreSwitch.setStaticField(_tableId, _keyTuple, 4, abi.encodePacked((baseHp)), _fieldLayout); } /** - * @notice Set baseHitPoints. + * @notice Set baseHp. */ - function _setBaseHitPoints(bytes32 entityId, uint256 baseHitPoints) internal { + function _setBaseHp(bytes32 entityId, uint256 baseHp) internal { bytes32[] memory _keyTuple = new bytes32[](1); _keyTuple[0] = entityId; - StoreCore.setStaticField(_tableId, _keyTuple, 4, abi.encodePacked((baseHitPoints)), _fieldLayout); + StoreCore.setStaticField(_tableId, _keyTuple, 4, abi.encodePacked((baseHp)), _fieldLayout); } /** @@ -456,7 +456,7 @@ library Stats { uint256 agility, Classes class, uint256 intelligence, - uint256 baseHitPoints, + uint256 baseHp, int256 currentHp, uint256 experience, uint256 level @@ -466,7 +466,7 @@ library Stats { agility, class, intelligence, - baseHitPoints, + baseHp, currentHp, experience, level @@ -490,7 +490,7 @@ library Stats { uint256 agility, Classes class, uint256 intelligence, - uint256 baseHitPoints, + uint256 baseHp, int256 currentHp, uint256 experience, uint256 level @@ -500,7 +500,7 @@ library Stats { agility, class, intelligence, - baseHitPoints, + baseHp, currentHp, experience, level @@ -524,7 +524,7 @@ library Stats { _table.agility, _table.class, _table.intelligence, - _table.baseHitPoints, + _table.baseHp, _table.currentHp, _table.experience, _table.level @@ -548,7 +548,7 @@ library Stats { _table.agility, _table.class, _table.intelligence, - _table.baseHitPoints, + _table.baseHp, _table.currentHp, _table.experience, _table.level @@ -576,7 +576,7 @@ library Stats { uint256 agility, Classes class, uint256 intelligence, - uint256 baseHitPoints, + uint256 baseHp, int256 currentHp, uint256 experience, uint256 level @@ -590,7 +590,7 @@ library Stats { intelligence = (uint256(Bytes.getBytes32(_blob, 65))); - baseHitPoints = (uint256(Bytes.getBytes32(_blob, 97))); + baseHp = (uint256(Bytes.getBytes32(_blob, 97))); currentHp = (int256(uint256(Bytes.getBytes32(_blob, 129)))); @@ -615,7 +615,7 @@ library Stats { _table.agility, _table.class, _table.intelligence, - _table.baseHitPoints, + _table.baseHp, _table.currentHp, _table.experience, _table.level @@ -651,12 +651,12 @@ library Stats { uint256 agility, Classes class, uint256 intelligence, - uint256 baseHitPoints, + uint256 baseHp, int256 currentHp, uint256 experience, uint256 level ) internal pure returns (bytes memory) { - return abi.encodePacked(strength, agility, class, intelligence, baseHitPoints, currentHp, experience, level); + return abi.encodePacked(strength, agility, class, intelligence, baseHp, currentHp, experience, level); } /** @@ -670,7 +670,7 @@ library Stats { uint256 agility, Classes class, uint256 intelligence, - uint256 baseHitPoints, + uint256 baseHp, int256 currentHp, uint256 experience, uint256 level @@ -680,7 +680,7 @@ library Stats { agility, class, intelligence, - baseHitPoints, + baseHp, currentHp, experience, level diff --git a/packages/contracts/src/systems/CharacterSystem.sol b/packages/contracts/src/systems/CharacterSystem.sol index a624eef8e..782f3e6be 100644 --- a/packages/contracts/src/systems/CharacterSystem.sol +++ b/packages/contracts/src/systems/CharacterSystem.sol @@ -121,7 +121,7 @@ contract CharacterSystem is System { require(!Characters.getLocked(characterId), "you have entered the game"); StatsData memory tempStats = Stats.get(characterId); tempStats.level = 1; - tempStats.currentHp = int256(tempStats.baseHitPoints); + tempStats.currentHp = int256(tempStats.baseHp); Stats.set(characterId, tempStats); IWorld(_world()).UD__dropGold(characterId, 5 ether); // issue starter gear diff --git a/packages/contracts/src/systems/CombatSystem.sol b/packages/contracts/src/systems/CombatSystem.sol index 5ccef3a1e..9e9990b72 100644 --- a/packages/contracts/src/systems/CombatSystem.sol +++ b/packages/contracts/src/systems/CombatSystem.sol @@ -332,7 +332,6 @@ contract CombatSystem is System { // check dead attackers and defenders uint256 cumulativeAttackerLevels; uint256 livingAttackers; - bytes32 entityIdTemp; StatsData memory statsTemp; for (uint256 i; i < encounterData.attackers.length; i++) { statsTemp = Stats.get(encounterData.attackers[i]); @@ -358,7 +357,7 @@ contract CombatSystem is System { // drop gold reward calculated from the level of mob to player journey wallet (can mint tokens when he returns to 0,0). // if dead player, drop transfer 50% of un-banked gold to world contract // distribute loot - + bytes32 entityIdTemp; for (uint256 i; i < encounterData.attackers.length; i++) { entityIdTemp = encounterData.attackers[i]; if (IWorld(_world()).UD__isValidCharacterId(entityIdTemp)) { @@ -372,8 +371,8 @@ contract CombatSystem is System { } } Stats.set(entityIdTemp, statsTemp); - MatchEntity.setEncounterId(encounterData.attackers[i], bytes32(0)); } + MatchEntity.setEncounterId(entityIdTemp, bytes32(0)); } } diff --git a/packages/contracts/src/systems/EquipmentSystem.sol b/packages/contracts/src/systems/EquipmentSystem.sol index cd5943e30..c76758ddf 100644 --- a/packages/contracts/src/systems/EquipmentSystem.sol +++ b/packages/contracts/src/systems/EquipmentSystem.sol @@ -249,8 +249,8 @@ contract EquipmentSystem is System { : int256(0) ); combatStats.adjustedMaxHp = uint256( - int256(entityStats.baseHitPoints) + equipmentStats.hpBonus >= 0 - ? int256(entityStats.baseHitPoints) + equipmentStats.hpBonus + int256(entityStats.baseHp) + equipmentStats.hpBonus >= 0 + ? int256(entityStats.baseHp) + equipmentStats.hpBonus : int256(1) ); combatStats.currentHp = entityStats.currentHp; diff --git a/packages/contracts/src/systems/MobSystem.sol b/packages/contracts/src/systems/MobSystem.sol index deabdf61d..8bf65a1a7 100644 --- a/packages/contracts/src/systems/MobSystem.sol +++ b/packages/contracts/src/systems/MobSystem.sol @@ -50,7 +50,7 @@ contract MobSystem is System { strength: monsterStats.strength, agility: monsterStats.agility, intelligence: monsterStats.intelligence, - baseHitPoints: monsterStats.hitPoints, + baseHp: monsterStats.hitPoints, class: monsterStats.class, currentHp: int256(monsterStats.hitPoints), experience: monsterStats.experience, diff --git a/packages/contracts/src/systems/RngSystem.sol b/packages/contracts/src/systems/RngSystem.sol index 2a253a007..44ba88d87 100644 --- a/packages/contracts/src/systems/RngSystem.sol +++ b/packages/contracts/src/systems/RngSystem.sol @@ -131,13 +131,13 @@ contract RngSystem is System, IEntropyConsumer { // Class-based adjustments; should total to 21 if (characterClass == Classes.Warrior) { stats.strength += 2; - stats.baseHitPoints = uint256(10); + stats.baseHp = uint256(10); } else if (characterClass == Classes.Rogue) { stats.agility += 2; - stats.baseHitPoints = uint256(6); + stats.baseHp = uint256(6); } else if (characterClass == Classes.Mage) { stats.intelligence += 2; - stats.baseHitPoints = uint256(8); + stats.baseHp = uint256(8); } Stats.set(characterId, stats); diff --git a/packages/contracts/test/CharacterSystem.t.sol b/packages/contracts/test/CharacterSystem.t.sol index 76c0adcc0..8433d9af8 100644 --- a/packages/contracts/test/CharacterSystem.t.sol +++ b/packages/contracts/test/CharacterSystem.t.sol @@ -31,10 +31,7 @@ contract Test_CharacterSystem is SetUp, GasReporter { StatsData memory alicesCharacter = world.UD__getStats(alicesCharacterId); assertEq(uint8(alicesCharacter.class), uint8(Classes.Rogue)); assertEq( - ( - alicesCharacter.strength + alicesCharacter.agility + alicesCharacter.baseHitPoints - + alicesCharacter.intelligence - ), + (alicesCharacter.strength + alicesCharacter.agility + alicesCharacter.baseHp + alicesCharacter.intelligence), 27 ); @@ -69,4 +66,9 @@ contract Test_CharacterSystem is SetUp, GasReporter { assertEq(IERC721Metadata(address(characterToken)).tokenURI(2), "ipfs://newTokenUri"); } + + function test_getCharacterId() public { + uint256 bobTokenId = world.UD__getCharacterTokenId(bobCharacterId); + assertEq(bobTokenId, 2); + } } diff --git a/packages/contracts/test/CombatSystem.t.sol b/packages/contracts/test/CombatSystem.t.sol index 1e0fdf0b2..a021b8203 100644 --- a/packages/contracts/test/CombatSystem.t.sol +++ b/packages/contracts/test/CombatSystem.t.sol @@ -3,6 +3,7 @@ pragma solidity >=0.8.24; import {SetUp} from "./SetUp.sol"; import {Classes, ItemType, EncounterType} from "@codegen/common.sol"; import {StatsData, Stats} from "@tables/Stats.sol"; +import {MatchEntity} from "@tables/MatchEntity.sol"; import "forge-std/console2.sol"; import {PuppetModule} from "@latticexyz/world-modules/src/modules/puppet/PuppetModule.sol"; import {UltimateDominionConfig} from "@codegen/index.sol"; @@ -87,9 +88,10 @@ contract Test_CombatSystem is SetUp, GasReporter { StatsData memory endingStats = Stats.get(bobCharacterId); uint256 endingGold = goldToken.balanceOf(bob); - assertNotEq(startingStats.currentHp, int256(Stats.get(entityId).baseHitPoints)); + assertNotEq(startingStats.currentHp, int256(Stats.get(entityId).baseHp)); assertGt(endingStats.experience, startingStats.experience); assertGt(endingGold, startingGold); + assertEq(MatchEntity.getEncounterId(bobCharacterId), bytes32(0)); // start new match defenders[0] = entityId2; diff --git a/packages/contracts/test/EquipmentSystem.t.sol b/packages/contracts/test/EquipmentSystem.t.sol index c3dc2ed0c..1992c28d9 100644 --- a/packages/contracts/test/EquipmentSystem.t.sol +++ b/packages/contracts/test/EquipmentSystem.t.sol @@ -75,7 +75,7 @@ contract Test_EquipmentSystem is SetUp, GasReporter { assertEq(modifiedStats.adjustedStrength, uint256(int256(baseStats.strength) + armorStats.strModifier)); assertEq(modifiedStats.adjustedAgility, uint256(int256(baseStats.agility) + armorStats.agiModifier)); assertEq(modifiedStats.adjustedIntelligence, uint256(int256(baseStats.intelligence) + armorStats.intModifier)); - assertEq(modifiedStats.adjustedMaxHp, uint256(int256(baseStats.baseHitPoints) + armorStats.hitPointModifier)); + assertEq(modifiedStats.adjustedMaxHp, uint256(int256(baseStats.baseHp) + armorStats.hitPointModifier)); } function test_unequipItem() public { From f3ec232ef8239420ac1056fa94956178d88f533a Mon Sep 17 00:00:00 2001 From: ECWireless Date: Thu, 18 Jul 2024 08:16:07 -0600 Subject: [PATCH 08/14] Change baseHitPoints to baseHp --- packages/client/src/components/Character/Stats.tsx | 6 +++--- packages/client/src/components/StatsPanel.tsx | 4 ++-- packages/client/src/contexts/CharacterContext.tsx | 2 +- packages/client/src/contexts/MapNavigationContext.tsx | 4 ++-- packages/client/src/pages/Character.tsx | 4 ++-- packages/client/src/pages/CharacterCreation.tsx | 4 ++-- packages/client/src/utils/types.ts | 2 +- .../out/CharacterSystem.sol/CharacterSystem.abi.json | 2 +- .../out/CharacterSystem.sol/CharacterSystem.abi.json.d.ts | 2 +- .../contracts/out/CharacterSystem.sol/CharacterSystem.json | 2 +- packages/contracts/out/CombatSystem.sol/CombatSystem.json | 2 +- .../contracts/out/EquipmentSystem.sol/EquipmentSystem.json | 2 +- packages/contracts/out/IWorld.sol/IWorld.abi.json | 2 +- packages/contracts/out/IWorld.sol/IWorld.abi.json.d.ts | 2 +- packages/contracts/out/IWorld.sol/IWorld.json | 2 +- packages/contracts/out/MapSystem.sol/MapSystem.json | 2 +- 16 files changed, 22 insertions(+), 22 deletions(-) diff --git a/packages/client/src/components/Character/Stats.tsx b/packages/client/src/components/Character/Stats.tsx index 39b819dab..ffe74c0c1 100644 --- a/packages/client/src/components/Character/Stats.tsx +++ b/packages/client/src/components/Character/Stats.tsx @@ -2,13 +2,13 @@ import { HStack, Text, VStack } from '@chakra-ui/react'; export const Stats = ({ agility, - baseHitPoints, + baseHp, currentHp, intelligence, strength, }: { agility: string; - baseHitPoints: string; + baseHp: string; currentHp: string; intelligence: string; strength: string; @@ -30,7 +30,7 @@ export const Stats = ({ HP - Hit - {currentHp}/{baseHitPoints} + {currentHp}/{baseHp} diff --git a/packages/client/src/components/StatsPanel.tsx b/packages/client/src/components/StatsPanel.tsx index 7de786cb4..8570ff6ee 100644 --- a/packages/client/src/components/StatsPanel.tsx +++ b/packages/client/src/components/StatsPanel.tsx @@ -55,7 +55,7 @@ export const StatsPanel = (): JSX.Element => { const { agility, - baseHitPoints, + baseHp, currentHp, experience, goldBalance, @@ -91,7 +91,7 @@ export const StatsPanel = (): JSX.Element => { - {currentHp}/{baseHitPoints} + {currentHp}/{baseHp} diff --git a/packages/client/src/contexts/CharacterContext.tsx b/packages/client/src/contexts/CharacterContext.tsx index 6b75aa8c3..a0e11040f 100644 --- a/packages/client/src/contexts/CharacterContext.tsx +++ b/packages/client/src/contexts/CharacterContext.tsx @@ -90,7 +90,7 @@ export const CharacterProvider = ({ return { agility: characterStats?.agility.toString() ?? '0', - baseHitPoints: characterStats?.baseHitPoints.toString() ?? '0', + baseHp: characterStats?.baseHp.toString() ?? '0', currentHp: characterStats?.currentHp.toString() ?? '0', characterId: entity, entityClass: characterStats?.class ?? 0, diff --git a/packages/client/src/contexts/MapNavigationContext.tsx b/packages/client/src/contexts/MapNavigationContext.tsx index 9355c28ad..0cc019f14 100644 --- a/packages/client/src/contexts/MapNavigationContext.tsx +++ b/packages/client/src/contexts/MapNavigationContext.tsx @@ -151,7 +151,7 @@ export const MapNavigationProvider = ({ return { ...fetachedMetadata, agility: characterStats.agility.toString(), - baseHitPoints: characterStats.baseHitPoints.toString(), + baseHp: characterStats.baseHp.toString(), characterId: entity, entityClass: characterStats.class, experience: characterStats.experience.toString(), @@ -215,7 +215,7 @@ export const MapNavigationProvider = ({ return { agility: monsterStats.agility.toString(), - baseHitPoints: monsterStats.baseHitPoints.toString(), + baseHp: monsterStats.baseHp.toString(), currentHp: monsterStats.currentHp.toString(), entityClass: monsterStats.class, experience: monsterStats.experience.toString(), diff --git a/packages/client/src/pages/Character.tsx b/packages/client/src/pages/Character.tsx index 295051028..f3181cf10 100644 --- a/packages/client/src/pages/Character.tsx +++ b/packages/client/src/pages/Character.tsx @@ -111,7 +111,7 @@ export const CharacterPage = (): JSX.Element => { const _character = { ...fetachedMetadata, agility: characterStats.agility.toString(), - baseHitPoints: characterStats.baseHitPoints.toString(), + baseHp: characterStats.baseHp.toString(), entityClass: characterStats.class, characterId: characterId as Entity, currentHp: characterStats.currentHp.toString(), @@ -321,7 +321,7 @@ export const CharacterPage = (): JSX.Element => { > { const rolledOnce = useMemo(() => { if (!character) return false; - return character.baseHitPoints !== '0'; + return character.baseHp !== '0'; }, [character]); const onEnterGame = useCallback(async () => { @@ -572,7 +572,7 @@ export const CharacterCreation = (): JSX.Element => { HP - Hit - {character?.baseHitPoints ?? '0'} + {character?.baseHp ?? '0'} STR - Strength diff --git a/packages/client/src/utils/types.ts b/packages/client/src/utils/types.ts index 8c779b6de..6826adb77 100644 --- a/packages/client/src/utils/types.ts +++ b/packages/client/src/utils/types.ts @@ -39,7 +39,7 @@ export type CharacterData = { export type EntityStats = { agility: string; - baseHitPoints: string; + baseHp: string; currentHp: string; entityClass: StatsClasses; experience: string; diff --git a/packages/contracts/out/CharacterSystem.sol/CharacterSystem.abi.json b/packages/contracts/out/CharacterSystem.sol/CharacterSystem.abi.json index 96cadeadc..3e4dc5c79 100644 --- a/packages/contracts/out/CharacterSystem.sol/CharacterSystem.abi.json +++ b/packages/contracts/out/CharacterSystem.sol/CharacterSystem.abi.json @@ -240,7 +240,7 @@ "internalType": "uint256" }, { - "name": "baseHitPoints", + "name": "baseHp", "type": "uint256", "internalType": "uint256" }, diff --git a/packages/contracts/out/CharacterSystem.sol/CharacterSystem.abi.json.d.ts b/packages/contracts/out/CharacterSystem.sol/CharacterSystem.abi.json.d.ts index 79e4faeef..cbb974f45 100644 --- a/packages/contracts/out/CharacterSystem.sol/CharacterSystem.abi.json.d.ts +++ b/packages/contracts/out/CharacterSystem.sol/CharacterSystem.abi.json.d.ts @@ -240,7 +240,7 @@ declare const abi: [ "internalType": "uint256" }, { - "name": "baseHitPoints", + "name": "baseHp", "type": "uint256", "internalType": "uint256" }, diff --git a/packages/contracts/out/CharacterSystem.sol/CharacterSystem.json b/packages/contracts/out/CharacterSystem.sol/CharacterSystem.json index b9f945ee8..beddba1d3 100644 --- a/packages/contracts/out/CharacterSystem.sol/CharacterSystem.json +++ b/packages/contracts/out/CharacterSystem.sol/CharacterSystem.json @@ -1 +1 @@ -{"abi":[{"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":"enterGame","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"getCharacterTokenId","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"pure"},{"type":"function","name":"getClass","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"_class","type":"uint8","internalType":"enum Classes"}],"stateMutability":"view"},{"type":"function","name":"getCurrentAvailableLevel","inputs":[{"name":"experience","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"currentLevel","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getExperience","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getName","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"_name","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getOwner","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getOwnerAddress","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"getPlayerEntityId","inputs":[{"name":"characterTokenId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getStats","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"tuple","internalType":"struct StatsData","components":[{"name":"strength","type":"uint256","internalType":"uint256"},{"name":"agility","type":"uint256","internalType":"uint256"},{"name":"class","type":"uint8","internalType":"enum Classes"},{"name":"intelligence","type":"uint256","internalType":"uint256"},{"name":"baseHitPoints","type":"uint256","internalType":"uint256"},{"name":"currentHp","type":"int256","internalType":"int256"},{"name":"experience","type":"uint256","internalType":"uint256"},{"name":"level","type":"uint256","internalType":"uint256"}]}],"stateMutability":"view"},{"type":"function","name":"isValidCharacterId","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isValidOwner","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"owner","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"mintCharacter","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"name","type":"bytes32","internalType":"bytes32"},{"name":"tokenUri","type":"string","internalType":"string"}],"outputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"stateMutability":"nonpayable"},{"type":"function","name":"rollStats","inputs":[{"name":"userRandomNumber","type":"bytes32","internalType":"bytes32"},{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"class","type":"uint8","internalType":"enum Classes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"pure"},{"type":"function","name":"updateTokenUri","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"tokenUri","type":"string","internalType":"string"}],"outputs":[],"stateMutability":"nonpayable"},{"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_SpliceDynamicData","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","indexed":false,"internalType":"uint8"},{"name":"start","type":"uint48","indexed":false,"internalType":"uint48"},{"name":"deleteCount","type":"uint40","indexed":false,"internalType":"uint40"},{"name":"encodedLengths","type":"bytes32","indexed":false,"internalType":"EncodedLengths"},{"name":"data","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":"EncodedLengths_InvalidLength","inputs":[{"name":"length","type":"uint256","internalType":"uint256"}]},{"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":"Store_IndexOutOfBounds","inputs":[{"name":"length","type":"uint256","internalType":"uint256"},{"name":"accessedIndex","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidResourceType","inputs":[{"name":"expected","type":"bytes2","internalType":"bytes2"},{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"Store_InvalidSplice","inputs":[{"name":"startWithinField","type":"uint40","internalType":"uint40"},{"name":"deleteCount","type":"uint40","internalType":"uint40"},{"name":"fieldLength","type":"uint40","internalType":"uint40"}]},{"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":"0x608060405234801561001057600080fd5b5061497d806100206000396000f3fe6080604052600436106101435760003560e01c8063623daa05116100c0578063c74dedc811610074578063e1af802c11610059578063e1af802c14610380578063ebee03bb14610395578063f8c67561146103b557600080fd5b8063c74dedc814610340578063deb931a21461036057600080fd5b80638338f0e0116100a55780638338f0e0146102e05780639b63ec0514610300578063b27cbcbb1461032057600080fd5b8063623daa05146102ab578063679ee16d146102cb57600080fd5b8063143f30211161011757806323801570116100fc578063238015701461024657806345ec93541461027357806354b8d5e31461028b57600080fd5b8063143f3021146101f85780631ecb393f1461022657600080fd5b8062d43ec61461014857806301ffc9a7146101865780630bb700dc146101b6578063119df25f146101e3575b600080fd5b34801561015457600080fd5b50610169610163366004613e65565b60601c90565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561019257600080fd5b506101a66101a1366004613e7e565b6103e1565b604051901515815260200161017d565b3480156101c257600080fd5b506101d66101d1366004613e65565b61047a565b60405161017d9190613ef7565b3480156101ef57600080fd5b5061016961048b565b34801561020457600080fd5b50610218610213366004614032565b61049a565b60405190815260200161017d565b34801561023257600080fd5b50610218610241366004613e65565b6106fc565b34801561025257600080fd5b50610266610261366004613e65565b61077a565b60405161017d919061408b565b34801561027f57600080fd5b5036601f190135610218565b34801561029757600080fd5b506102186102a6366004613e65565b610785565b3480156102b757600080fd5b506101a66102c6366004613e65565b610790565b6102de6102d936600461409e565b6108bc565b005b3480156102ec57600080fd5b506102186102fb366004613e65565b610a34565b34801561030c57600080fd5b506101a661031b3660046140db565b610ac9565b34801561032c57600080fd5b506102de61033b36600461410b565b610b90565b34801561034c57600080fd5b506102de61035b366004613e65565b610c01565b34801561036c57600080fd5b5061016961037b366004613e65565b610dd1565b34801561038c57600080fd5b50610169610ddc565b3480156103a157600080fd5b506102186103b0366004613e65565b610de6565b3480156103c157600080fd5b506102186103d0366004613e65565b6bffffffffffffffffffffffff1690565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee12700000000000000000000000000000000000000000000000000000000148061047457507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b610482613e0f565b61047482610df1565b6000610495610ea3565b905090565b6000806104a5610ed5565b90506bffffffffffffffffffffffff811061052d5760405162461bcd60e51b815260206004820152602360248201527f43484152414341544552533a204d61782063686172616374657273207265616360448201527f686564000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b610535610ddc565b6001600160a01b0316633ae7af0861056c7f4368617261637465727300000000000000000000000000000000000000000000610f08565b6040516001600160a01b03891660248201526044810185905260640160408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f40c10f1900000000000000000000000000000000000000000000000000000000179052517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526106189291906004016141a2565b6000604051808303816000875af1158015610637573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261065f9190810190614200565b5061066981610a34565b91506106758286610f55565b61067f8282611024565b610688846110a3565b156106d55760405162461bcd60e51b815260206004820152601360248201527f4e616d6520616c726561647920657869737473000000000000000000000000006044820152606401610524565b6106e0846001611148565b6106ea8285611201565b6106f48184611280565b509392505050565b600061070860136112b3565b821061071657506014919050565b60005b6014811015610774578261072c826112b3565b1115801561074b57508261074961074483600161424b565b6112b3565b115b156107625761075b81600161424b565b9150610774565b8061076c8161425e565b915050610719565b50919050565b60006104748261132f565b6000610474826113d9565b60008061079d8360601c90565b90506bffffffffffffffffffffffff831660006107b861146b565b6001600160a01b0316636352211e836040518263ffffffff1660e01b81526004016107e591815260200190565b602060405180830381865afa92505050801561081e575060408051601f3d908101601f1916820190925261081b91810190614278565b60015b1561089d5761082b61146b565b6001600160a01b0316636352211e846040518263ffffffff1660e01b815260040161085891815260200190565b602060405180830381865afa158015610875573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108999190614278565b9150505b826001600160a01b0316816001600160a01b0316149350505050919050565b6108c582611475565b156109385760405162461bcd60e51b815260206004820152602b60248201527f434841524143544552533a2063686172616374657220616c726561647920696e60448201527f2067616d6520776f726c640000000000000000000000000000000000000000006064820152608401610524565b61094182611507565b61098d5760405162461bcd60e51b815260206004820152601360248201527f4e6f7420796f7572204368617261637465722e000000000000000000000000006044820152606401610524565b600061099983836115c3565b610a2d8482856040516020016109b191815260200190565b60408051601f19818403018152908290526109d0939291602401614295565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb2aa60a4000000000000000000000000000000000000000000000000000000001790526116ac565b5050505050565b600080610a3f61146b565b6001600160a01b0316636352211e846040518263ffffffff1660e01b8152600401610a6c91815260200190565b602060405180830381865afa158015610a89573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aad9190614278565b60601b6bffffffffffffffffffffffff19169290921792915050565b6000610ad483610790565b8015610b895750816001600160a01b0316610aed61146b565b6040517f6352211e0000000000000000000000000000000000000000000000000000000081526bffffffffffffffffffffffff861660048201526001600160a01b039190911690636352211e90602401602060405180830381865afa158015610b5a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b7e9190614278565b6001600160a01b0316145b9392505050565b610b9982611507565b610be55760405162461bcd60e51b815260206004820152601a60248201527f434841524143544552533a204e4f5420415554484f52495a45440000000000006044820152606401610524565b610bfd6bffffffffffffffffffffffff831682611280565b5050565b610c0a81611507565b610c565760405162461bcd60e51b815260206004820152601260248201527f6e6f7420796f75722063686172616374657200000000000000000000000000006044820152606401610524565b610c5f81611475565b15610cac5760405162461bcd60e51b815260206004820152601960248201527f796f75206861766520656e7465726564207468652067616d65000000000000006044820152606401610524565b6000610cb782610df1565b600160e0820152608081015160a08201529050610cd4828261175a565b610cdc610ddc565b6040517ffda0ce5000000000000000000000000000000000000000000000000000000000815260048101849052674563918244f4000060248201526001600160a01b03919091169063fda0ce5090604401600060405180830381600087803b158015610d4757600080fd5b505af1158015610d5b573d6000803e3d6000fd5b50505050610d67610ddc565b6001600160a01b031663f9d175ed836040518263ffffffff1660e01b8152600401610d9491815260200190565b600060405180830381600087803b158015610dae57600080fd5b505af1158015610dc2573d6000803e3d6000fd5b50505050610bfd82600161180b565b60006104748261188f565b600061049561192c565b600061047482611936565b610df9613e0f565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110610e2f57610e2f6142bd565b602090810291909101015260008080610e887f7462554400000000000000000000000053746174730000000000000000000000857ee10800202001202020202000000000000000000000000000000000000000006119c8565b925092509250610e99838383611a98565b9695505050505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c80610ed25750335b90565b600080610ee0611b10565b90506000610eef826000611b78565b610efa90600161424b565b905061047482600083611c29565b60006104747f7379000000000000000000000000000000000000000000000000000000000000837f45524337323153797374656d0000000000000000000000000000000000000000611cf9565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110610f8b57610f8b6142bd565b60200260200101818152505061101f7f746255440000000000000000000000004368617261637465727300000000000060001b82600185604051602001610fea919060609190911b6bffffffffffffffffffffffff1916815260140190565b60408051601f198184030181529190527e55040020142001000000000000000000000000000000000000000000000000611d70565b505050565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061105a5761105a6142bd565b60200260200101818152505061101f7f746255440000000000000000000000004368617261637465727300000000000060001b82600085604051602001610fea91815260200190565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106110dc576110dc6142bd565b602090810291909101015260006111347f746255440000000000000000000000004e616d6545786973747300000000000083837e01010001000000000000000000000000000000000000000000000000000000611e25565b90506111408160f81c90565b949350505050565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061117e5761117e6142bd565b60200260200101818152505061101f7f746255440000000000000000000000004e616d6545786973747300000000000060001b826000856040516020016111cc91151560f81b815260010190565b60408051601f198184030181529190527e01010001000000000000000000000000000000000000000000000000000000611d70565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110611237576112376142bd565b60200260200101818152505061101f7f746255440000000000000000000000004368617261637465727300000000000060001b82600285604051602001610fea91815260200190565b610bfd6112ac7f4368617261637465727300000000000000000000000000000000000000000000611ee2565b8383611f2f565b604080516001808252818301909252600091829190602080830190803683370190505090508260001b816000815181106112ef576112ef6142bd565b602090810291909101015260006111407f746255440000000000000000000000004c6576656c73000000000000000000008383630100080160dd1b611e25565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110611368576113686142bd565b602090810291909101015260006113c17f74625544000000000000000000000000537461747300000000000000000000008360027ee1080020200120202020200000000000000000000000000000000000000000611e25565b905060f881901c600281111561114057611140613ec0565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110611412576114126142bd565b602090810291909101015260006111407f74625544000000000000000000000000436861726163746572730000000000008360027e55040020142001000000000000000000000000000000000000000000000000611e25565b6000610495611b10565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106114ae576114ae6142bd565b602090810291909101015260006111347f74625544000000000000000000000000436861726163746572730000000000008360037e55040020142001000000000000000000000000000000000000000000000000611e25565b600061151161146b565b6040517f6352211e0000000000000000000000000000000000000000000000000000000081526bffffffffffffffffffffffff841660048201526001600160a01b039190911690636352211e90602401602060405180830381865afa15801561157e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115a29190614278565b6001600160a01b03166115b361048b565b6001600160a01b03161492915050565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106115f9576115f96142bd565b602090810291909101015261101f7f7462554400000000000000000000000053746174730000000000000000000000826002858181111561163c5761163c613ec0565b604051602001611677919060f89190911b7fff0000000000000000000000000000000000000000000000000000000000000016815260010190565b60408051601f198184030181529190527ee1080020200120202020200000000000000000000000000000000000000000611d70565b60606000806116c26116bd856142d3565b611f81565b91509150816000801b03611728576040517ffdde54e20000000000000000000000000000000000000000000000000000000081527fffffffff00000000000000000000000000000000000000000000000000000000600035166004820152602401610524565b6020840180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16821790526111408285612051565b600061178c826000015183602001518460400151856060015186608001518760a001518860c001518960e0015161212c565b6040805160018082528183019092529192506000916060918391906020808301908036833701905050905085816000815181106117cb576117cb6142bd565b60209081029190910101526118037f74625544000000000000000000000000537461747300000000000000000000008286868661216a565b505050505050565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110611841576118416142bd565b60200260200101818152505061101f7f746255440000000000000000000000004368617261637465727300000000000060001b82600385604051602001610fea91151560f81b815260010190565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106118c8576118c86142bd565b602090810291909101015260006119217f74625544000000000000000000000000436861726163746572730000000000008360017e55040020142001000000000000000000000000000000000000000000000000611e25565b60601c949350505050565b60006104956121e0565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061196f5761196f6142bd565b602090810291909101015260006111407f74625544000000000000000000000000537461747300000000000000000000008360067ee1080020200120202020200000000000000000000000000000000000000000611e25565b60606000606060006119d86121e0565b9050306001600160a01b03821603611a01576119f587878761221f565b93509350935050611a8f565b6040517f419b58fd0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063419b58fd90611a4a908a908a908a9060040161435f565b600060405180830381865afa158015611a67573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526119f59190810190614388565b93509350939050565b611aa0613e0f565b611aa984612327565b60e0890181905260c0890182905260a089018390526080890184905260608901859052886020810160408201886002811115611ae757611ae7613ec0565b6002811115611af857611af8613ec0565b90529790975250505093909252509195945050505050565b604080516000808252602082019092526000611b6e7f74625544000000000000000000000000556c74696d617465446f6d696e696f6e8360027e65060001141414141400000000000000000000000000000000000000000000611e25565b60601c9392505050565b60408051600280825260608201835260009283929190602083019080368337019050509050836001600160a01b031660001b81600081518110611bbd57611bbd6142bd565b6020026020010181815250508260001b81600181518110611be057611be06142bd565b60209081029190910101526000611c207f74625544000000000000000000000000436f756e7465727300000000000000008383630100080160dd1b611e25565b95945050505050565b604080516002808252606082018352600092602083019080368337019050509050836001600160a01b031660001b81600081518110611c6a57611c6a6142bd565b6020026020010181815250508260001b81600181518110611c8d57611c8d6142bd565b602002602001018181525050611cf37f74625544000000000000000000000000436f756e74657273000000000000000060001b82600085604051602001611cd691815260200190565b60408051601f19818403018152919052630100080160dd1b611d70565b50505050565b6000611d076070601061424b565b6fffffffffffffffffffffffffffffffff198316901c601084901c7dffffffffffffffffffffffffffff00000000000000000000000000000000167fffff0000000000000000000000000000000000000000000000000000000000008616171790509392505050565b6000611d7a6121e0565b9050306001600160a01b03821603611d9e57611d998686868686612395565b611803565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae090611deb90899089908990899089906004016143eb565b600060405180830381600087803b158015611e0557600080fd5b505af1158015611e19573d6000803e3d6000fd5b50505050505050505050565b600080611e306121e0565b9050306001600160a01b03821603611e5657611e4e868686866123aa565b915050611140565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d5990611ea1908990899089908990600401614432565b602060405180830381865afa158015611ebe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e4e9190614461565b60006104747f7462000000000000000000000000000000000000000000000000000000000000837f546f6b656e555249000000000000000000000000000000000000000000000000611cf9565b604080516001808252818301909252600091602080830190803683370190505090508260001b81600081518110611f6857611f686142bd565b602002602001018181525050611cf384826000856123d7565b6040805160018082528183019092526000918291829160208083019080368337019050509050837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681600081518110611fda57611fda6142bd565b6020908102919091010152600080806120337f7462776f726c6400000000000000000046756e6374696f6e53656c6563746f72857e240200200400000000000000000000000000000000000000000000000000006119c8565b925092509250612044838383612488565b9550955050505050915091565b6060600061205d61192c565b90506001600160a01b038116300361209e57600061208561207c610ea3565b600087876124a0565b935090508061209757612097836125db565b5050610474565b6040517f3ae7af080000000000000000000000000000000000000000000000000000000081526001600160a01b03821690633ae7af08906120e590879087906004016141a2565b6000604051808303816000875af1158015612104573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526111409190810190614200565b6060888888888888888860405160200161214d98979695949392919061447a565b604051602081830303815290604052905098975050505050505050565b60006121746121e0565b9050306001600160a01b0382160361219357611d9986868686866125e3565b6040517f298314fb0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063298314fb90611deb90899089908990899089906004016144bf565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b03168061221a573391505090565b919050565b6060600060606000612230856125f9565b905061223d87878361261c565b9350600061224a86612655565b9050801561231c5761225c8888612692565b935066ffffffffffffff841667ffffffffffffffff81111561228057612280613f6d565b6040519080825280601f01601f1916602001820160405280156122aa576020820181803683370190505b5092506020830160005b828160ff1610156123195760006122cc8b8b846126a5565b905060006122e9888460ff166028026038011c64ffffffffff1690565b90506122f88260008387612725565b612302818561424b565b93505050808061231190614510565b9150506122b4565b50505b505093509350939050565b600080600080600080600080612341896000016020015190565b60408a015160608b0151919950975060f81c600281111561236457612364613ec0565b60618a015160818b015160a18c015160c18d015160e1909d01519b9d9a9c939b929a91995097509195509350915050565b610a2d85856123a484876127f1565b85612822565b6000611c206123b98686612ac6565b60ff858116601b0360080285901c166123d285876127f1565b612b1c565b60006123e16121e0565b9050306001600160a01b03821603612404576123ff85858585612b6d565b610a2d565b6040517fef6ea8620000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063ef6ea8629061244f90889088908890889060040161452f565b600060405180830381600087803b15801561246957600080fd5b505af115801561247d573d6000803e3d6000fd5b505050505050505050565b60008061249485612ba8565b90969095509350505050565b600060606000806124b086612bbd565b90925090506001600160a01b03821661250157856124cd87612c61565b6040517ffbf10ce60000000000000000000000000000000000000000000000000000000081526004016105249291906141a2565b80612510576125108689612d8f565b861561257c577dffffffffffffffffffffffffffff0000000000000000000000000000000086167f6e7300000000000000000000000000000000000000000000000000000000000017600061256482612ddb565b9050612579826125748b8461424b565b612e54565b50505b60006125888760101b90565b7fffffffffffffffffffffffffffff00000000000000000000000000000000000016146125c0576125bb88888488612ef0565b6125cc565b6125cc88888488612f68565b90999098509650505050505050565b805160208201fd5b610a2d85858585856125f48b612fc9565b61304e565b600060086126096002602061456e565b6126139190614581565b9190911c919050565b60608160000361263b5750604080516020810190915260008152610b89565b60006126478585612ac6565b9050611c2081600085613387565b600060086001806126686002602061456e565b612672919061456e565b61267c919061456e565b6126869190614581565b8260ff911c1692915050565b6000610b896126a184846133aa565b5490565b600083836040516020016126ba929190614598565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b82156127ac576020831061274f5760208304840193506020838161274b5761274b6145d4565b0692505b82156127ac5760208390036000818410156127725750600019600884021c61277c565b50600019600882021c5b8554600886021b81845116821982161784525081841161279d575050611cf3565b50600194909401939182900391015b5b602082106127ce5783548152600190930192601f19909101906020016127ad565b8115611cf3576000600019600884021c8251865482191691161782525050505050565b600080805b8360ff168110156106f45761281860ff601b83900360080287901c168361424b565b91506001016127f6565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff00000000000000000000000000000000000000000000000000000000000016036128ac57837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be84848460405161289f939291906145ea565b60405180910390a2611cf3565b60006128b88585612ac6565b905060006128c586613400565b905060005b815181101561299a5760008282815181106128e7576128e76142bd565b602002602001015190506129136004826affffffffffffffffffffff191661348990919063ffffffff16565b15612991576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d9061295e908b908b908b908b9060040161461d565b600060405180830381600087803b15801561297857600080fd5b505af115801561298c573d6000803e3d6000fd5b505050505b506001016128ca565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8686866040516129cf939291906145ea565b60405180910390a26129ea828565ffffffffffff16856134a7565b60005b8151811015612abd576000828281518110612a0a57612a0a6142bd565b60200260200101519050612a366008826affffffffffffffffffffff191661348990919063ffffffff16565b15612ab4576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba872190612a81908b908b908b908b9060040161461d565b600060405180830381600087803b158015612a9b57600080fd5b505af1158015612aaf573d6000803e3d6000fd5b505050505b506001016129ed565b50505050505050565b60008282604051602001612adb929190614598565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600060208210612b4257602082048401935060208281612b3e57612b3e6145d4565b0691505b508254600882021b6020829003808411156106f4576001850154600882021c82179150509392505050565b6000612b798585612692565b90506000612b96828560ff166028026038011c64ffffffffff1690565b905061180386868660008588886134bd565b602081015160408201516000905b9050915091565b60408051600180825281830190925260009182918291602080830190803683370190505090508381600081518110612bf757612bf76142bd565b602090810291909101015260008080612c507f7462776f726c6400000000000000000053797374656d73000000000000000000857e1502001401000000000000000000000000000000000000000000000000000061221f565b9250925092506120448383836138f7565b606081601081901b6000612c7483613903565b9050827fffffffffffffffffffffffffffff000000000000000000000000000000000000831615612ccf57612cca7fffffffffffffffffffffffffffff000000000000000000000000000000000000841661391a565b612d06565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b6fffffffffffffffffffffffffffffffff19831615612d2d57612d288361391a565b612d64565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b604051602001612d7693929190614656565b6040516020818303038152906040529350505050919050565b612d9982826139a0565b610bfd57612da682612c61565b816040517fd787b7370000000000000000000000000000000000000000000000000000000081526004016105249291906146e4565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110612e1457612e146142bd565b602090810291909101015260006111407f7462776f726c6400000000000000000042616c616e63657300000000000000008383630100080160dd1b6123aa565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110612e8a57612e8a6142bd565b60200260200101818152505061101f7f7462776f726c6400000000000000000042616c616e636573000000000000000060001b82600085604051602001612ed391815260200190565b60408051601f19818403018152919052630100080160dd1b612395565b60006060836001600160a01b03166000612f0b8589896139fe565b604051612f18919061470f565b60006040518083038185875af1925050503d8060008114612f55576040519150601f19603f3d011682016040523d82523d6000602084013e612f5a565b606091505b509097909650945050505050565b60006060836001600160a01b0316612f818488886139fe565b604051612f8e919061470f565b600060405180830381855af49150503d8060008114612f55576040519150601f19603f3d011682016040523d82523d6000602084013e612f5a565b60007f8b9d8c8b908d9affffffffffffffffffab9e9d939a8d00000000000000000000820161301857507e60030220202000000000000000000000000000000000000000000000000000919050565b6104746130457f746273746f72650000000000000000005461626c65730000000000000000000084613a2d565b60206000612b1c565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff00000000000000000000000000000000000000000000000000000000000016036130da57857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9868686866040516130cd949392919061472b565b60405180910390a2611803565b60006130e587613400565b905060005b81518110156131be576000828281518110613107576131076142bd565b602002602001015190506131336001826affffffffffffffffffffff191661348990919063ffffffff16565b156131b5576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c90613182908c908c908c908c908c908c9060040161476a565b600060405180830381600087803b15801561319c57600080fd5b505af11580156131b0573d6000803e3d6000fd5b505050505b506001016130ea565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9878787876040516131f5949392919061472b565b60405180910390a260006132098888612ac6565b90506000602087019050613221826000895184613a49565b600061322c85612655565b11156132b057600061323e8a8a6133aa565b878155905060208601915060008060005b61325888612655565b8160ff1610156132ab5761326d8d8d836126a5565b92506132888a8260ff166028026038011c64ffffffffff1690565b91506132978360008488613a49565b6132a1828661424b565b945060010161324f565b505050505b60005b8351811015611e195760008482815181106132d0576132d06142bd565b602002602001015190506132fc6002826affffffffffffffffffffff191661348990919063ffffffff16565b1561337e576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf9061334b908e908e908e908e908e908e9060040161476a565b600060405180830381600087803b15801561336557600080fd5b505af1158015613379573d6000803e3d6000fd5b505050505b506001016132b3565b60405160208101601f19603f84840101166040528282526106f485858584612725565b600082826040516020016133bf929190614598565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061343a5761343a6142bd565b602090810291909101015260006134727f746273746f726500000000000000000053746f7265486f6f6b730000000000008383613b08565b90506111406134848260008451613b42565b613bd0565b60008160ff168261349a8560581c90565b1660ff1614905092915050565b61101f838383516134b88560200190565b613a49565b7f7462000000000000000000000000000000000000000000000000000000000000877fffff000000000000000000000000000000000000000000000000000000000000161461357d577f7462000000000000000000000000000000000000000000000000000000000000878860405160200161353b91815260200190565b60408051601f19818403018152908290527f31b466830000000000000000000000000000000000000000000000000000000082526105249392916004016147c3565b6000613598828760ff166028026038011c64ffffffffff1690565b9050600083518564ffffffffff16836135b1919061456e565b6135bb919061424b565b90508082141580156135dd5750816135d38688614804565b64ffffffffff1614155b1561362d576040517fa65010b400000000000000000000000000000000000000000000000000000000815264ffffffffff8088166004830152808716602483015283166044820152606401610524565b818664ffffffffff16111561367e576040517f7e8578d30000000000000000000000000000000000000000000000000000000081526004810183905264ffffffffff87166024820152604401610524565b600061368b848984613be1565b905060006136988b613400565b905060005b81518110156137635760008282815181106136ba576136ba6142bd565b602002602001015190506136e66010826affffffffffffffffffffff191661348990919063ffffffff16565b1561375a57606081901c6001600160a01b03166355eb5a288e8e8e8e8e8d8f6040518863ffffffff1660e01b81526004016137279796959493929190614829565b600060405180830381600087803b15801561374157600080fd5b505af1158015613755573d6000803e3d6000fd5b505050505b5060010161369d565b5064ffffffffff881660005b8a60ff168160ff1610156137a257613796878260ff166028026038011c64ffffffffff1690565b9091019060010161376f565b508b7ffe158a7adba34e256807c8a149028d3162918713c3838afc643ce9f96716ebfd8c8c848c888d6040516137dd96959493929190614887565b60405180910390a2508284146137fe5760006137f98c8c6133aa565b839055505b600061380b8c8c8c6126a5565b905061381f818a64ffffffffff16896134a7565b5060005b81518110156138e9576000828281518110613840576138406142bd565b6020026020010151905061386c6020826affffffffffffffffffffff191661348990919063ffffffff16565b156138e057606081901c6001600160a01b031663635845338e8e8e8e8e8a8f6040518863ffffffff1660e01b81526004016138ad9796959493929190614829565b600060405180830381600087803b1580156138c757600080fd5b505af11580156138db573d6000803e3d6000fd5b505050505b50600101613823565b505050505050505050505050565b60008061249485613caf565b60006139116070601061424b565b9190911b919050565b606060005b6010811015613970576fffffffffffffffffffffffffffffffff198316600882021b7fff0000000000000000000000000000000000000000000000000000000000000016156139705760010161391f565b604080516fffffffffffffffffffffffffffffffff19851660208201528151603090910190915281815280611140565b60006139ee7f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff0000000000000000000000000000000085161783613ccb565b80610b895750610b898383613ccb565b6060838383604051602001613a15939291906148e3565b60405160208183030381529060405290509392505050565b6040805160208101849052908101829052600090606001612adb565b8215613ac35760208310613a7357602083048401935060208381613a6f57613a6f6145d4565b0692505b8215613ac35760208390036000600019600885021c1990506008850281811c91508351811c9050811987541682821617875550818411613ab4575050611cf3565b50600194909401939182900391015b5b60208210613ae55780518455600190930192601f1990910190602001613ac4565b8115611cf3576000600019600884021c8554835182191691161785555050505050565b6060611140613b188585856126a5565b6000613b3d85613b288989612692565b9060ff166028026038011c64ffffffffff1690565b613387565b600081831180613b525750835182115b15613b8f578383836040517f23230fa300000000000000000000000000000000000000000000000000000000815260040161052493929190614922565b60208401613b9d848261424b565b90506000613bab858561456e565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60606000610b898360156000613d94565b600064ffffffffff821115613c25576040517f7149a3c100000000000000000000000000000000000000000000000000000000815260048101839052602401610524565b8366ffffffffffffff811660ff851660280260380182901c64ffffffffff16808510613c575780850382019150613c5f565b848103820391505b5064ffffffffff6038602860ff8816020181811b197fffffffffffffffffffffffffffffffffffffffffffffffffff000000000000009490941690921792909216918416901b1790509392505050565b6020810151603482015160609190911c9060009060f81c612bb6565b604080516002808252606082018352600092839291906020830190803683370190505090508381600081518110613d0457613d046142bd565b602002602001018181525050826001600160a01b031660001b81600181518110613d3057613d306142bd565b60209081029190910101526000613d887f7462776f726c640000000000000000005265736f75726365416363657373000083837e010100010000000000000000000000000000000000000000000000000000006123aa565b9050611c208160f81c90565b60606000613da28560801c90565b90506fffffffffffffffffffffffffffffffff85166000858281613dc857613dc86145d4565b04905060405193506020840160208202810160405281855260005b82811015613e03578451871c825293870193602090910190600101613de3565b50505050509392505050565b604051806101000160405280600081526020016000815260200160006002811115613e3c57613e3c613ec0565b815260200160008152602001600081526020016000815260200160008152602001600081525090565b600060208284031215613e7757600080fd5b5035919050565b600060208284031215613e9057600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610b8957600080fd5b634e487b7160e01b600052602160045260246000fd5b60038110613ef457634e487b7160e01b600052602160045260246000fd5b50565b81518152602080830151908201526040820151610100820190613f1981613ed6565b80604084015250606083015160608301526080830151608083015260a083015160a083015260c083015160c083015260e083015160e083015292915050565b6001600160a01b0381168114613ef457600080fd5b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715613fac57613fac613f6d565b604052919050565b600067ffffffffffffffff821115613fce57613fce613f6d565b50601f01601f191660200190565b600082601f830112613fed57600080fd5b8135614000613ffb82613fb4565b613f83565b81815284602083860101111561401557600080fd5b816020850160208301376000918101602001919091529392505050565b60008060006060848603121561404757600080fd5b833561405281613f58565b925060208401359150604084013567ffffffffffffffff81111561407557600080fd5b61408186828701613fdc565b9150509250925092565b6020810161409883613ed6565b91905290565b6000806000606084860312156140b357600080fd5b83359250602084013591506040840135600381106140d057600080fd5b809150509250925092565b600080604083850312156140ee57600080fd5b82359150602083013561410081613f58565b809150509250929050565b6000806040838503121561411e57600080fd5b82359150602083013567ffffffffffffffff81111561413c57600080fd5b61414885828601613fdc565b9150509250929050565b60005b8381101561416d578181015183820152602001614155565b50506000910152565b6000815180845261418e816020860160208601614152565b601f01601f19169290920160200192915050565b8281526040602082015260006111406040830184614176565b600082601f8301126141cc57600080fd5b81516141da613ffb82613fb4565b8181528460208386010111156141ef57600080fd5b611140826020830160208701614152565b60006020828403121561421257600080fd5b815167ffffffffffffffff81111561422957600080fd5b611140848285016141bb565b634e487b7160e01b600052601160045260246000fd5b8082018082111561047457610474614235565b6000600019820361427157614271614235565b5060010190565b60006020828403121561428a57600080fd5b8151610b8981613f58565b8381526142a183613ed6565b826020820152606060408201526000611c206060830184614176565b634e487b7160e01b600052603260045260246000fd5b6000815160208301517fffffffff000000000000000000000000000000000000000000000000000000008082169350600483101561431b5780818460040360031b1b83161693505b505050919050565b60008151808452602080850194506020840160005b8381101561435457815187529582019590820190600101614338565b509495945050505050565b8381526060602082015260006143786060830185614323565b9050826040830152949350505050565b60008060006060848603121561439d57600080fd5b835167ffffffffffffffff808211156143b557600080fd5b6143c1878388016141bb565b94506020860151935060408601519150808211156143de57600080fd5b50614081868287016141bb565b85815260a06020820152600061440460a0830187614323565b60ff86166040840152828103606084015261441f8186614176565b9150508260808301529695505050505050565b84815260806020820152600061444b6080830186614323565b60ff949094166040830152506060015292915050565b60006020828403121561447357600080fd5b5051919050565b88815287602082015261448c87613ed6565b60f89690961b604087015260418601949094526061850192909252608184015260a183015260c182015260e10192915050565b85815260a0602082015260006144d860a0830187614323565b82810360408401526144ea8187614176565b905084606084015282810360808401526145048185614176565b98975050505050505050565b600060ff821660ff810361452657614526614235565b60010192915050565b8481526080602082015260006145486080830186614323565b60ff8516604084015282810360608401526145638185614176565b979650505050505050565b8181038181111561047457610474614235565b808202811582820484141761047457610474614235565b8281526000602080830184516020860160005b828110156145c7578151845292840192908401906001016145ab565b5091979650505050505050565b634e487b7160e01b600052601260045260246000fd5b6060815260006145fd6060830186614323565b65ffffffffffff851660208401528281036040840152610e998185614176565b8481526080602082015260006146366080830186614323565b65ffffffffffff8516604084015282810360608401526145638185614176565b7fffff0000000000000000000000000000000000000000000000000000000000008416815260007f3a0000000000000000000000000000000000000000000000000000000000000080600284015284516146b7816003860160208901614152565b8084019050816003820152845191506146d7826004830160208801614152565b0160040195945050505050565b6040815260006146f76040830185614176565b90506001600160a01b03831660208301529392505050565b60008251614721818460208701614152565b9190910192915050565b60808152600061473e6080830187614323565b82810360208401526147508187614176565b905084604084015282810360608401526145638185614176565b86815260c06020820152600061478360c0830188614323565b82810360408401526147958188614176565b905085606084015282810360808401526147af8186614176565b9150508260a0830152979650505050505050565b7fffff00000000000000000000000000000000000000000000000000000000000084168152826020820152606060408201526000611c206060830184614176565b64ffffffffff81811683821601908082111561482257614822614235565b5092915050565b87815260e06020820152600061484260e0830189614323565b60ff8816604084015264ffffffffff87811660608501528616608084015260a0830185905282810360c08401526148798185614176565b9a9950505050505050505050565b60c08152600061489a60c0830189614323565b60ff8816602084015265ffffffffffff8716604084015264ffffffffff8616606084015284608084015282810360a08401526148d68185614176565b9998505050505050505050565b600084516148f5818460208901614152565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b6060815260006149356060830186614176565b6020830194909452506040015291905056fea26469706673582212205c1861d323ad8a0004b311ef7f75024cde0dfa48823ac2e8e54f579ec3be1e0364736f6c63430008180033","sourceMap":"1812:6250:211:-:0;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x6080604052600436106101435760003560e01c8063623daa05116100c0578063c74dedc811610074578063e1af802c11610059578063e1af802c14610380578063ebee03bb14610395578063f8c67561146103b557600080fd5b8063c74dedc814610340578063deb931a21461036057600080fd5b80638338f0e0116100a55780638338f0e0146102e05780639b63ec0514610300578063b27cbcbb1461032057600080fd5b8063623daa05146102ab578063679ee16d146102cb57600080fd5b8063143f30211161011757806323801570116100fc578063238015701461024657806345ec93541461027357806354b8d5e31461028b57600080fd5b8063143f3021146101f85780631ecb393f1461022657600080fd5b8062d43ec61461014857806301ffc9a7146101865780630bb700dc146101b6578063119df25f146101e3575b600080fd5b34801561015457600080fd5b50610169610163366004613e65565b60601c90565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561019257600080fd5b506101a66101a1366004613e7e565b6103e1565b604051901515815260200161017d565b3480156101c257600080fd5b506101d66101d1366004613e65565b61047a565b60405161017d9190613ef7565b3480156101ef57600080fd5b5061016961048b565b34801561020457600080fd5b50610218610213366004614032565b61049a565b60405190815260200161017d565b34801561023257600080fd5b50610218610241366004613e65565b6106fc565b34801561025257600080fd5b50610266610261366004613e65565b61077a565b60405161017d919061408b565b34801561027f57600080fd5b5036601f190135610218565b34801561029757600080fd5b506102186102a6366004613e65565b610785565b3480156102b757600080fd5b506101a66102c6366004613e65565b610790565b6102de6102d936600461409e565b6108bc565b005b3480156102ec57600080fd5b506102186102fb366004613e65565b610a34565b34801561030c57600080fd5b506101a661031b3660046140db565b610ac9565b34801561032c57600080fd5b506102de61033b36600461410b565b610b90565b34801561034c57600080fd5b506102de61035b366004613e65565b610c01565b34801561036c57600080fd5b5061016961037b366004613e65565b610dd1565b34801561038c57600080fd5b50610169610ddc565b3480156103a157600080fd5b506102186103b0366004613e65565b610de6565b3480156103c157600080fd5b506102186103d0366004613e65565b6bffffffffffffffffffffffff1690565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee12700000000000000000000000000000000000000000000000000000000148061047457507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b610482613e0f565b61047482610df1565b6000610495610ea3565b905090565b6000806104a5610ed5565b90506bffffffffffffffffffffffff811061052d5760405162461bcd60e51b815260206004820152602360248201527f43484152414341544552533a204d61782063686172616374657273207265616360448201527f686564000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b610535610ddc565b6001600160a01b0316633ae7af0861056c7f4368617261637465727300000000000000000000000000000000000000000000610f08565b6040516001600160a01b03891660248201526044810185905260640160408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f40c10f1900000000000000000000000000000000000000000000000000000000179052517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526106189291906004016141a2565b6000604051808303816000875af1158015610637573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261065f9190810190614200565b5061066981610a34565b91506106758286610f55565b61067f8282611024565b610688846110a3565b156106d55760405162461bcd60e51b815260206004820152601360248201527f4e616d6520616c726561647920657869737473000000000000000000000000006044820152606401610524565b6106e0846001611148565b6106ea8285611201565b6106f48184611280565b509392505050565b600061070860136112b3565b821061071657506014919050565b60005b6014811015610774578261072c826112b3565b1115801561074b57508261074961074483600161424b565b6112b3565b115b156107625761075b81600161424b565b9150610774565b8061076c8161425e565b915050610719565b50919050565b60006104748261132f565b6000610474826113d9565b60008061079d8360601c90565b90506bffffffffffffffffffffffff831660006107b861146b565b6001600160a01b0316636352211e836040518263ffffffff1660e01b81526004016107e591815260200190565b602060405180830381865afa92505050801561081e575060408051601f3d908101601f1916820190925261081b91810190614278565b60015b1561089d5761082b61146b565b6001600160a01b0316636352211e846040518263ffffffff1660e01b815260040161085891815260200190565b602060405180830381865afa158015610875573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108999190614278565b9150505b826001600160a01b0316816001600160a01b0316149350505050919050565b6108c582611475565b156109385760405162461bcd60e51b815260206004820152602b60248201527f434841524143544552533a2063686172616374657220616c726561647920696e60448201527f2067616d6520776f726c640000000000000000000000000000000000000000006064820152608401610524565b61094182611507565b61098d5760405162461bcd60e51b815260206004820152601360248201527f4e6f7420796f7572204368617261637465722e000000000000000000000000006044820152606401610524565b600061099983836115c3565b610a2d8482856040516020016109b191815260200190565b60408051601f19818403018152908290526109d0939291602401614295565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb2aa60a4000000000000000000000000000000000000000000000000000000001790526116ac565b5050505050565b600080610a3f61146b565b6001600160a01b0316636352211e846040518263ffffffff1660e01b8152600401610a6c91815260200190565b602060405180830381865afa158015610a89573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aad9190614278565b60601b6bffffffffffffffffffffffff19169290921792915050565b6000610ad483610790565b8015610b895750816001600160a01b0316610aed61146b565b6040517f6352211e0000000000000000000000000000000000000000000000000000000081526bffffffffffffffffffffffff861660048201526001600160a01b039190911690636352211e90602401602060405180830381865afa158015610b5a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b7e9190614278565b6001600160a01b0316145b9392505050565b610b9982611507565b610be55760405162461bcd60e51b815260206004820152601a60248201527f434841524143544552533a204e4f5420415554484f52495a45440000000000006044820152606401610524565b610bfd6bffffffffffffffffffffffff831682611280565b5050565b610c0a81611507565b610c565760405162461bcd60e51b815260206004820152601260248201527f6e6f7420796f75722063686172616374657200000000000000000000000000006044820152606401610524565b610c5f81611475565b15610cac5760405162461bcd60e51b815260206004820152601960248201527f796f75206861766520656e7465726564207468652067616d65000000000000006044820152606401610524565b6000610cb782610df1565b600160e0820152608081015160a08201529050610cd4828261175a565b610cdc610ddc565b6040517ffda0ce5000000000000000000000000000000000000000000000000000000000815260048101849052674563918244f4000060248201526001600160a01b03919091169063fda0ce5090604401600060405180830381600087803b158015610d4757600080fd5b505af1158015610d5b573d6000803e3d6000fd5b50505050610d67610ddc565b6001600160a01b031663f9d175ed836040518263ffffffff1660e01b8152600401610d9491815260200190565b600060405180830381600087803b158015610dae57600080fd5b505af1158015610dc2573d6000803e3d6000fd5b50505050610bfd82600161180b565b60006104748261188f565b600061049561192c565b600061047482611936565b610df9613e0f565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110610e2f57610e2f6142bd565b602090810291909101015260008080610e887f7462554400000000000000000000000053746174730000000000000000000000857ee10800202001202020202000000000000000000000000000000000000000006119c8565b925092509250610e99838383611a98565b9695505050505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c80610ed25750335b90565b600080610ee0611b10565b90506000610eef826000611b78565b610efa90600161424b565b905061047482600083611c29565b60006104747f7379000000000000000000000000000000000000000000000000000000000000837f45524337323153797374656d0000000000000000000000000000000000000000611cf9565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110610f8b57610f8b6142bd565b60200260200101818152505061101f7f746255440000000000000000000000004368617261637465727300000000000060001b82600185604051602001610fea919060609190911b6bffffffffffffffffffffffff1916815260140190565b60408051601f198184030181529190527e55040020142001000000000000000000000000000000000000000000000000611d70565b505050565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061105a5761105a6142bd565b60200260200101818152505061101f7f746255440000000000000000000000004368617261637465727300000000000060001b82600085604051602001610fea91815260200190565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106110dc576110dc6142bd565b602090810291909101015260006111347f746255440000000000000000000000004e616d6545786973747300000000000083837e01010001000000000000000000000000000000000000000000000000000000611e25565b90506111408160f81c90565b949350505050565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061117e5761117e6142bd565b60200260200101818152505061101f7f746255440000000000000000000000004e616d6545786973747300000000000060001b826000856040516020016111cc91151560f81b815260010190565b60408051601f198184030181529190527e01010001000000000000000000000000000000000000000000000000000000611d70565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110611237576112376142bd565b60200260200101818152505061101f7f746255440000000000000000000000004368617261637465727300000000000060001b82600285604051602001610fea91815260200190565b610bfd6112ac7f4368617261637465727300000000000000000000000000000000000000000000611ee2565b8383611f2f565b604080516001808252818301909252600091829190602080830190803683370190505090508260001b816000815181106112ef576112ef6142bd565b602090810291909101015260006111407f746255440000000000000000000000004c6576656c73000000000000000000008383630100080160dd1b611e25565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110611368576113686142bd565b602090810291909101015260006113c17f74625544000000000000000000000000537461747300000000000000000000008360027ee1080020200120202020200000000000000000000000000000000000000000611e25565b905060f881901c600281111561114057611140613ec0565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110611412576114126142bd565b602090810291909101015260006111407f74625544000000000000000000000000436861726163746572730000000000008360027e55040020142001000000000000000000000000000000000000000000000000611e25565b6000610495611b10565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106114ae576114ae6142bd565b602090810291909101015260006111347f74625544000000000000000000000000436861726163746572730000000000008360037e55040020142001000000000000000000000000000000000000000000000000611e25565b600061151161146b565b6040517f6352211e0000000000000000000000000000000000000000000000000000000081526bffffffffffffffffffffffff841660048201526001600160a01b039190911690636352211e90602401602060405180830381865afa15801561157e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115a29190614278565b6001600160a01b03166115b361048b565b6001600160a01b03161492915050565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106115f9576115f96142bd565b602090810291909101015261101f7f7462554400000000000000000000000053746174730000000000000000000000826002858181111561163c5761163c613ec0565b604051602001611677919060f89190911b7fff0000000000000000000000000000000000000000000000000000000000000016815260010190565b60408051601f198184030181529190527ee1080020200120202020200000000000000000000000000000000000000000611d70565b60606000806116c26116bd856142d3565b611f81565b91509150816000801b03611728576040517ffdde54e20000000000000000000000000000000000000000000000000000000081527fffffffff00000000000000000000000000000000000000000000000000000000600035166004820152602401610524565b6020840180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16821790526111408285612051565b600061178c826000015183602001518460400151856060015186608001518760a001518860c001518960e0015161212c565b6040805160018082528183019092529192506000916060918391906020808301908036833701905050905085816000815181106117cb576117cb6142bd565b60209081029190910101526118037f74625544000000000000000000000000537461747300000000000000000000008286868661216a565b505050505050565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110611841576118416142bd565b60200260200101818152505061101f7f746255440000000000000000000000004368617261637465727300000000000060001b82600385604051602001610fea91151560f81b815260010190565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106118c8576118c86142bd565b602090810291909101015260006119217f74625544000000000000000000000000436861726163746572730000000000008360017e55040020142001000000000000000000000000000000000000000000000000611e25565b60601c949350505050565b60006104956121e0565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061196f5761196f6142bd565b602090810291909101015260006111407f74625544000000000000000000000000537461747300000000000000000000008360067ee1080020200120202020200000000000000000000000000000000000000000611e25565b60606000606060006119d86121e0565b9050306001600160a01b03821603611a01576119f587878761221f565b93509350935050611a8f565b6040517f419b58fd0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063419b58fd90611a4a908a908a908a9060040161435f565b600060405180830381865afa158015611a67573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526119f59190810190614388565b93509350939050565b611aa0613e0f565b611aa984612327565b60e0890181905260c0890182905260a089018390526080890184905260608901859052886020810160408201886002811115611ae757611ae7613ec0565b6002811115611af857611af8613ec0565b90529790975250505093909252509195945050505050565b604080516000808252602082019092526000611b6e7f74625544000000000000000000000000556c74696d617465446f6d696e696f6e8360027e65060001141414141400000000000000000000000000000000000000000000611e25565b60601c9392505050565b60408051600280825260608201835260009283929190602083019080368337019050509050836001600160a01b031660001b81600081518110611bbd57611bbd6142bd565b6020026020010181815250508260001b81600181518110611be057611be06142bd565b60209081029190910101526000611c207f74625544000000000000000000000000436f756e7465727300000000000000008383630100080160dd1b611e25565b95945050505050565b604080516002808252606082018352600092602083019080368337019050509050836001600160a01b031660001b81600081518110611c6a57611c6a6142bd565b6020026020010181815250508260001b81600181518110611c8d57611c8d6142bd565b602002602001018181525050611cf37f74625544000000000000000000000000436f756e74657273000000000000000060001b82600085604051602001611cd691815260200190565b60408051601f19818403018152919052630100080160dd1b611d70565b50505050565b6000611d076070601061424b565b6fffffffffffffffffffffffffffffffff198316901c601084901c7dffffffffffffffffffffffffffff00000000000000000000000000000000167fffff0000000000000000000000000000000000000000000000000000000000008616171790509392505050565b6000611d7a6121e0565b9050306001600160a01b03821603611d9e57611d998686868686612395565b611803565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae090611deb90899089908990899089906004016143eb565b600060405180830381600087803b158015611e0557600080fd5b505af1158015611e19573d6000803e3d6000fd5b50505050505050505050565b600080611e306121e0565b9050306001600160a01b03821603611e5657611e4e868686866123aa565b915050611140565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d5990611ea1908990899089908990600401614432565b602060405180830381865afa158015611ebe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e4e9190614461565b60006104747f7462000000000000000000000000000000000000000000000000000000000000837f546f6b656e555249000000000000000000000000000000000000000000000000611cf9565b604080516001808252818301909252600091602080830190803683370190505090508260001b81600081518110611f6857611f686142bd565b602002602001018181525050611cf384826000856123d7565b6040805160018082528183019092526000918291829160208083019080368337019050509050837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681600081518110611fda57611fda6142bd565b6020908102919091010152600080806120337f7462776f726c6400000000000000000046756e6374696f6e53656c6563746f72857e240200200400000000000000000000000000000000000000000000000000006119c8565b925092509250612044838383612488565b9550955050505050915091565b6060600061205d61192c565b90506001600160a01b038116300361209e57600061208561207c610ea3565b600087876124a0565b935090508061209757612097836125db565b5050610474565b6040517f3ae7af080000000000000000000000000000000000000000000000000000000081526001600160a01b03821690633ae7af08906120e590879087906004016141a2565b6000604051808303816000875af1158015612104573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526111409190810190614200565b6060888888888888888860405160200161214d98979695949392919061447a565b604051602081830303815290604052905098975050505050505050565b60006121746121e0565b9050306001600160a01b0382160361219357611d9986868686866125e3565b6040517f298314fb0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063298314fb90611deb90899089908990899089906004016144bf565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b03168061221a573391505090565b919050565b6060600060606000612230856125f9565b905061223d87878361261c565b9350600061224a86612655565b9050801561231c5761225c8888612692565b935066ffffffffffffff841667ffffffffffffffff81111561228057612280613f6d565b6040519080825280601f01601f1916602001820160405280156122aa576020820181803683370190505b5092506020830160005b828160ff1610156123195760006122cc8b8b846126a5565b905060006122e9888460ff166028026038011c64ffffffffff1690565b90506122f88260008387612725565b612302818561424b565b93505050808061231190614510565b9150506122b4565b50505b505093509350939050565b600080600080600080600080612341896000016020015190565b60408a015160608b0151919950975060f81c600281111561236457612364613ec0565b60618a015160818b015160a18c015160c18d015160e1909d01519b9d9a9c939b929a91995097509195509350915050565b610a2d85856123a484876127f1565b85612822565b6000611c206123b98686612ac6565b60ff858116601b0360080285901c166123d285876127f1565b612b1c565b60006123e16121e0565b9050306001600160a01b03821603612404576123ff85858585612b6d565b610a2d565b6040517fef6ea8620000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063ef6ea8629061244f90889088908890889060040161452f565b600060405180830381600087803b15801561246957600080fd5b505af115801561247d573d6000803e3d6000fd5b505050505050505050565b60008061249485612ba8565b90969095509350505050565b600060606000806124b086612bbd565b90925090506001600160a01b03821661250157856124cd87612c61565b6040517ffbf10ce60000000000000000000000000000000000000000000000000000000081526004016105249291906141a2565b80612510576125108689612d8f565b861561257c577dffffffffffffffffffffffffffff0000000000000000000000000000000086167f6e7300000000000000000000000000000000000000000000000000000000000017600061256482612ddb565b9050612579826125748b8461424b565b612e54565b50505b60006125888760101b90565b7fffffffffffffffffffffffffffff00000000000000000000000000000000000016146125c0576125bb88888488612ef0565b6125cc565b6125cc88888488612f68565b90999098509650505050505050565b805160208201fd5b610a2d85858585856125f48b612fc9565b61304e565b600060086126096002602061456e565b6126139190614581565b9190911c919050565b60608160000361263b5750604080516020810190915260008152610b89565b60006126478585612ac6565b9050611c2081600085613387565b600060086001806126686002602061456e565b612672919061456e565b61267c919061456e565b6126869190614581565b8260ff911c1692915050565b6000610b896126a184846133aa565b5490565b600083836040516020016126ba929190614598565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b82156127ac576020831061274f5760208304840193506020838161274b5761274b6145d4565b0692505b82156127ac5760208390036000818410156127725750600019600884021c61277c565b50600019600882021c5b8554600886021b81845116821982161784525081841161279d575050611cf3565b50600194909401939182900391015b5b602082106127ce5783548152600190930192601f19909101906020016127ad565b8115611cf3576000600019600884021c8251865482191691161782525050505050565b600080805b8360ff168110156106f45761281860ff601b83900360080287901c168361424b565b91506001016127f6565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff00000000000000000000000000000000000000000000000000000000000016036128ac57837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be84848460405161289f939291906145ea565b60405180910390a2611cf3565b60006128b88585612ac6565b905060006128c586613400565b905060005b815181101561299a5760008282815181106128e7576128e76142bd565b602002602001015190506129136004826affffffffffffffffffffff191661348990919063ffffffff16565b15612991576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d9061295e908b908b908b908b9060040161461d565b600060405180830381600087803b15801561297857600080fd5b505af115801561298c573d6000803e3d6000fd5b505050505b506001016128ca565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8686866040516129cf939291906145ea565b60405180910390a26129ea828565ffffffffffff16856134a7565b60005b8151811015612abd576000828281518110612a0a57612a0a6142bd565b60200260200101519050612a366008826affffffffffffffffffffff191661348990919063ffffffff16565b15612ab4576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba872190612a81908b908b908b908b9060040161461d565b600060405180830381600087803b158015612a9b57600080fd5b505af1158015612aaf573d6000803e3d6000fd5b505050505b506001016129ed565b50505050505050565b60008282604051602001612adb929190614598565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600060208210612b4257602082048401935060208281612b3e57612b3e6145d4565b0691505b508254600882021b6020829003808411156106f4576001850154600882021c82179150509392505050565b6000612b798585612692565b90506000612b96828560ff166028026038011c64ffffffffff1690565b905061180386868660008588886134bd565b602081015160408201516000905b9050915091565b60408051600180825281830190925260009182918291602080830190803683370190505090508381600081518110612bf757612bf76142bd565b602090810291909101015260008080612c507f7462776f726c6400000000000000000053797374656d73000000000000000000857e1502001401000000000000000000000000000000000000000000000000000061221f565b9250925092506120448383836138f7565b606081601081901b6000612c7483613903565b9050827fffffffffffffffffffffffffffff000000000000000000000000000000000000831615612ccf57612cca7fffffffffffffffffffffffffffff000000000000000000000000000000000000841661391a565b612d06565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b6fffffffffffffffffffffffffffffffff19831615612d2d57612d288361391a565b612d64565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b604051602001612d7693929190614656565b6040516020818303038152906040529350505050919050565b612d9982826139a0565b610bfd57612da682612c61565b816040517fd787b7370000000000000000000000000000000000000000000000000000000081526004016105249291906146e4565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110612e1457612e146142bd565b602090810291909101015260006111407f7462776f726c6400000000000000000042616c616e63657300000000000000008383630100080160dd1b6123aa565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110612e8a57612e8a6142bd565b60200260200101818152505061101f7f7462776f726c6400000000000000000042616c616e636573000000000000000060001b82600085604051602001612ed391815260200190565b60408051601f19818403018152919052630100080160dd1b612395565b60006060836001600160a01b03166000612f0b8589896139fe565b604051612f18919061470f565b60006040518083038185875af1925050503d8060008114612f55576040519150601f19603f3d011682016040523d82523d6000602084013e612f5a565b606091505b509097909650945050505050565b60006060836001600160a01b0316612f818488886139fe565b604051612f8e919061470f565b600060405180830381855af49150503d8060008114612f55576040519150601f19603f3d011682016040523d82523d6000602084013e612f5a565b60007f8b9d8c8b908d9affffffffffffffffffab9e9d939a8d00000000000000000000820161301857507e60030220202000000000000000000000000000000000000000000000000000919050565b6104746130457f746273746f72650000000000000000005461626c65730000000000000000000084613a2d565b60206000612b1c565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff00000000000000000000000000000000000000000000000000000000000016036130da57857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9868686866040516130cd949392919061472b565b60405180910390a2611803565b60006130e587613400565b905060005b81518110156131be576000828281518110613107576131076142bd565b602002602001015190506131336001826affffffffffffffffffffff191661348990919063ffffffff16565b156131b5576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c90613182908c908c908c908c908c908c9060040161476a565b600060405180830381600087803b15801561319c57600080fd5b505af11580156131b0573d6000803e3d6000fd5b505050505b506001016130ea565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9878787876040516131f5949392919061472b565b60405180910390a260006132098888612ac6565b90506000602087019050613221826000895184613a49565b600061322c85612655565b11156132b057600061323e8a8a6133aa565b878155905060208601915060008060005b61325888612655565b8160ff1610156132ab5761326d8d8d836126a5565b92506132888a8260ff166028026038011c64ffffffffff1690565b91506132978360008488613a49565b6132a1828661424b565b945060010161324f565b505050505b60005b8351811015611e195760008482815181106132d0576132d06142bd565b602002602001015190506132fc6002826affffffffffffffffffffff191661348990919063ffffffff16565b1561337e576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf9061334b908e908e908e908e908e908e9060040161476a565b600060405180830381600087803b15801561336557600080fd5b505af1158015613379573d6000803e3d6000fd5b505050505b506001016132b3565b60405160208101601f19603f84840101166040528282526106f485858584612725565b600082826040516020016133bf929190614598565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061343a5761343a6142bd565b602090810291909101015260006134727f746273746f726500000000000000000053746f7265486f6f6b730000000000008383613b08565b90506111406134848260008451613b42565b613bd0565b60008160ff168261349a8560581c90565b1660ff1614905092915050565b61101f838383516134b88560200190565b613a49565b7f7462000000000000000000000000000000000000000000000000000000000000877fffff000000000000000000000000000000000000000000000000000000000000161461357d577f7462000000000000000000000000000000000000000000000000000000000000878860405160200161353b91815260200190565b60408051601f19818403018152908290527f31b466830000000000000000000000000000000000000000000000000000000082526105249392916004016147c3565b6000613598828760ff166028026038011c64ffffffffff1690565b9050600083518564ffffffffff16836135b1919061456e565b6135bb919061424b565b90508082141580156135dd5750816135d38688614804565b64ffffffffff1614155b1561362d576040517fa65010b400000000000000000000000000000000000000000000000000000000815264ffffffffff8088166004830152808716602483015283166044820152606401610524565b818664ffffffffff16111561367e576040517f7e8578d30000000000000000000000000000000000000000000000000000000081526004810183905264ffffffffff87166024820152604401610524565b600061368b848984613be1565b905060006136988b613400565b905060005b81518110156137635760008282815181106136ba576136ba6142bd565b602002602001015190506136e66010826affffffffffffffffffffff191661348990919063ffffffff16565b1561375a57606081901c6001600160a01b03166355eb5a288e8e8e8e8e8d8f6040518863ffffffff1660e01b81526004016137279796959493929190614829565b600060405180830381600087803b15801561374157600080fd5b505af1158015613755573d6000803e3d6000fd5b505050505b5060010161369d565b5064ffffffffff881660005b8a60ff168160ff1610156137a257613796878260ff166028026038011c64ffffffffff1690565b9091019060010161376f565b508b7ffe158a7adba34e256807c8a149028d3162918713c3838afc643ce9f96716ebfd8c8c848c888d6040516137dd96959493929190614887565b60405180910390a2508284146137fe5760006137f98c8c6133aa565b839055505b600061380b8c8c8c6126a5565b905061381f818a64ffffffffff16896134a7565b5060005b81518110156138e9576000828281518110613840576138406142bd565b6020026020010151905061386c6020826affffffffffffffffffffff191661348990919063ffffffff16565b156138e057606081901c6001600160a01b031663635845338e8e8e8e8e8a8f6040518863ffffffff1660e01b81526004016138ad9796959493929190614829565b600060405180830381600087803b1580156138c757600080fd5b505af11580156138db573d6000803e3d6000fd5b505050505b50600101613823565b505050505050505050505050565b60008061249485613caf565b60006139116070601061424b565b9190911b919050565b606060005b6010811015613970576fffffffffffffffffffffffffffffffff198316600882021b7fff0000000000000000000000000000000000000000000000000000000000000016156139705760010161391f565b604080516fffffffffffffffffffffffffffffffff19851660208201528151603090910190915281815280611140565b60006139ee7f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff0000000000000000000000000000000085161783613ccb565b80610b895750610b898383613ccb565b6060838383604051602001613a15939291906148e3565b60405160208183030381529060405290509392505050565b6040805160208101849052908101829052600090606001612adb565b8215613ac35760208310613a7357602083048401935060208381613a6f57613a6f6145d4565b0692505b8215613ac35760208390036000600019600885021c1990506008850281811c91508351811c9050811987541682821617875550818411613ab4575050611cf3565b50600194909401939182900391015b5b60208210613ae55780518455600190930192601f1990910190602001613ac4565b8115611cf3576000600019600884021c8554835182191691161785555050505050565b6060611140613b188585856126a5565b6000613b3d85613b288989612692565b9060ff166028026038011c64ffffffffff1690565b613387565b600081831180613b525750835182115b15613b8f578383836040517f23230fa300000000000000000000000000000000000000000000000000000000815260040161052493929190614922565b60208401613b9d848261424b565b90506000613bab858561456e565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60606000610b898360156000613d94565b600064ffffffffff821115613c25576040517f7149a3c100000000000000000000000000000000000000000000000000000000815260048101839052602401610524565b8366ffffffffffffff811660ff851660280260380182901c64ffffffffff16808510613c575780850382019150613c5f565b848103820391505b5064ffffffffff6038602860ff8816020181811b197fffffffffffffffffffffffffffffffffffffffffffffffffff000000000000009490941690921792909216918416901b1790509392505050565b6020810151603482015160609190911c9060009060f81c612bb6565b604080516002808252606082018352600092839291906020830190803683370190505090508381600081518110613d0457613d046142bd565b602002602001018181525050826001600160a01b031660001b81600181518110613d3057613d306142bd565b60209081029190910101526000613d887f7462776f726c640000000000000000005265736f75726365416363657373000083837e010100010000000000000000000000000000000000000000000000000000006123aa565b9050611c208160f81c90565b60606000613da28560801c90565b90506fffffffffffffffffffffffffffffffff85166000858281613dc857613dc86145d4565b04905060405193506020840160208202810160405281855260005b82811015613e03578451871c825293870193602090910190600101613de3565b50505050509392505050565b604051806101000160405280600081526020016000815260200160006002811115613e3c57613e3c613ec0565b815260200160008152602001600081526020016000815260200160008152602001600081525090565b600060208284031215613e7757600080fd5b5035919050565b600060208284031215613e9057600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610b8957600080fd5b634e487b7160e01b600052602160045260246000fd5b60038110613ef457634e487b7160e01b600052602160045260246000fd5b50565b81518152602080830151908201526040820151610100820190613f1981613ed6565b80604084015250606083015160608301526080830151608083015260a083015160a083015260c083015160c083015260e083015160e083015292915050565b6001600160a01b0381168114613ef457600080fd5b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715613fac57613fac613f6d565b604052919050565b600067ffffffffffffffff821115613fce57613fce613f6d565b50601f01601f191660200190565b600082601f830112613fed57600080fd5b8135614000613ffb82613fb4565b613f83565b81815284602083860101111561401557600080fd5b816020850160208301376000918101602001919091529392505050565b60008060006060848603121561404757600080fd5b833561405281613f58565b925060208401359150604084013567ffffffffffffffff81111561407557600080fd5b61408186828701613fdc565b9150509250925092565b6020810161409883613ed6565b91905290565b6000806000606084860312156140b357600080fd5b83359250602084013591506040840135600381106140d057600080fd5b809150509250925092565b600080604083850312156140ee57600080fd5b82359150602083013561410081613f58565b809150509250929050565b6000806040838503121561411e57600080fd5b82359150602083013567ffffffffffffffff81111561413c57600080fd5b61414885828601613fdc565b9150509250929050565b60005b8381101561416d578181015183820152602001614155565b50506000910152565b6000815180845261418e816020860160208601614152565b601f01601f19169290920160200192915050565b8281526040602082015260006111406040830184614176565b600082601f8301126141cc57600080fd5b81516141da613ffb82613fb4565b8181528460208386010111156141ef57600080fd5b611140826020830160208701614152565b60006020828403121561421257600080fd5b815167ffffffffffffffff81111561422957600080fd5b611140848285016141bb565b634e487b7160e01b600052601160045260246000fd5b8082018082111561047457610474614235565b6000600019820361427157614271614235565b5060010190565b60006020828403121561428a57600080fd5b8151610b8981613f58565b8381526142a183613ed6565b826020820152606060408201526000611c206060830184614176565b634e487b7160e01b600052603260045260246000fd5b6000815160208301517fffffffff000000000000000000000000000000000000000000000000000000008082169350600483101561431b5780818460040360031b1b83161693505b505050919050565b60008151808452602080850194506020840160005b8381101561435457815187529582019590820190600101614338565b509495945050505050565b8381526060602082015260006143786060830185614323565b9050826040830152949350505050565b60008060006060848603121561439d57600080fd5b835167ffffffffffffffff808211156143b557600080fd5b6143c1878388016141bb565b94506020860151935060408601519150808211156143de57600080fd5b50614081868287016141bb565b85815260a06020820152600061440460a0830187614323565b60ff86166040840152828103606084015261441f8186614176565b9150508260808301529695505050505050565b84815260806020820152600061444b6080830186614323565b60ff949094166040830152506060015292915050565b60006020828403121561447357600080fd5b5051919050565b88815287602082015261448c87613ed6565b60f89690961b604087015260418601949094526061850192909252608184015260a183015260c182015260e10192915050565b85815260a0602082015260006144d860a0830187614323565b82810360408401526144ea8187614176565b905084606084015282810360808401526145048185614176565b98975050505050505050565b600060ff821660ff810361452657614526614235565b60010192915050565b8481526080602082015260006145486080830186614323565b60ff8516604084015282810360608401526145638185614176565b979650505050505050565b8181038181111561047457610474614235565b808202811582820484141761047457610474614235565b8281526000602080830184516020860160005b828110156145c7578151845292840192908401906001016145ab565b5091979650505050505050565b634e487b7160e01b600052601260045260246000fd5b6060815260006145fd6060830186614323565b65ffffffffffff851660208401528281036040840152610e998185614176565b8481526080602082015260006146366080830186614323565b65ffffffffffff8516604084015282810360608401526145638185614176565b7fffff0000000000000000000000000000000000000000000000000000000000008416815260007f3a0000000000000000000000000000000000000000000000000000000000000080600284015284516146b7816003860160208901614152565b8084019050816003820152845191506146d7826004830160208801614152565b0160040195945050505050565b6040815260006146f76040830185614176565b90506001600160a01b03831660208301529392505050565b60008251614721818460208701614152565b9190910192915050565b60808152600061473e6080830187614323565b82810360208401526147508187614176565b905084604084015282810360608401526145638185614176565b86815260c06020820152600061478360c0830188614323565b82810360408401526147958188614176565b905085606084015282810360808401526147af8186614176565b9150508260a0830152979650505050505050565b7fffff00000000000000000000000000000000000000000000000000000000000084168152826020820152606060408201526000611c206060830184614176565b64ffffffffff81811683821601908082111561482257614822614235565b5092915050565b87815260e06020820152600061484260e0830189614323565b60ff8816604084015264ffffffffff87811660608501528616608084015260a0830185905282810360c08401526148798185614176565b9a9950505050505050505050565b60c08152600061489a60c0830189614323565b60ff8816602084015265ffffffffffff8716604084015264ffffffffff8616606084015284608084015282810360a08401526148d68185614176565b9998505050505050505050565b600084516148f5818460208901614152565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b6060815260006149356060830186614176565b6020830194909452506040015291905056fea26469706673582212205c1861d323ad8a0004b311ef7f75024cde0dfa48823ac2e8e54f579ec3be1e0364736f6c63430008180033","sourceMap":"1812:6250:211:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2973:144;;;;;;;;;;-1:-1:-1;2973:144:211;;;;;:::i;:::-;3106:2;3082:26;;2973:144;;;;-1:-1:-1;;;;;363:55:229;;;345:74;;333:2;318:18;2973:144:211;;;;;;;;2331:198:123;;;;;;;;;;-1:-1:-1;2331:198:123;;;;;:::i;:::-;;:::i;:::-;;;932:14:229;;925:22;907:41;;895:2;880:18;2331:198:123;767:187:229;7936:124:211;;;;;;;;;;-1:-1:-1;7936:124:211;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;1262:113:123:-;;;;;;;;;;;;;:::i;4111:837:211:-;;;;;;;;;;-1:-1:-1;4111:837:211;;;;;:::i;:::-;;:::i;:::-;;;4284:25:229;;;4272:2;4257:18;4111:837:211;4138:177:229;6106:492:211;;;;;;;;;;-1:-1:-1;6106:492:211;;;;;:::i;:::-;;:::i;1989:129::-;;;;;;;;;;-1:-1:-1;1989:129:211;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;1616:110:123:-;;;;;;;;;;-1:-1:-1;3800:14:123;-1:-1:-1;;3796:25:123;3783:39;1616:110;1262:113;1853:130:211;;;;;;;;;;-1:-1:-1;1853:130:211;;;;;:::i;:::-;;:::i;3123:413::-;;;;;;;;;;-1:-1:-1;3123:413:211;;;;;:::i;:::-;;:::i;4954:545::-;;;;;;:::i;:::-;;:::i;:::-;;2460:266;;;;;;;;;;-1:-1:-1;2460:266:211;;;;;:::i;:::-;;:::i;3542:212::-;;;;;;;;;;-1:-1:-1;3542:212:211;;;;;:::i;:::-;;:::i;6604:219::-;;;;;;;;;;-1:-1:-1;6604:219:211;;;;;:::i;:::-;;:::i;5505:595::-;;;;;;;;;;-1:-1:-1;5505:595:211;;;;;:::i;:::-;;:::i;7669:125::-;;;;;;;;;;-1:-1:-1;7669:125:211;;;;;:::i;:::-;;:::i;1942:98:123:-;;;;;;;;;;;;;:::i;7800:130:211:-;;;;;;;;;;-1:-1:-1;7800:130:211;;;;;:::i;:::-;;:::i;2732:143::-;;;;;;;;;;-1:-1:-1;2732:143:211;;;;;:::i;:::-;2830:37;;;2732:143;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;7936:124:211:-;7996:16;;:::i;:::-;8031:22;8041:11;8031:9;:22::i;1262:113:123:-;1305:14;1334:36;:34;:36::i;:::-;1327:43;;1262:113;:::o;4111:837:211:-;4221:19;4256:24;4283:28;:26;:28::i;:::-;4256:55;-1:-1:-1;4348:16:211;4329:35;;4321:83;;;;-1:-1:-1;;;4321:83:211;;6255:2:229;4321:83:211;;;6237:21:229;6294:2;6274:18;;;6267:30;6333:34;6313:18;;;6306:62;6404:5;6384:18;;;6377:33;6427:19;;4321:83:211;;;;;;;;;4421:8;:6;:8::i;:::-;-1:-1:-1;;;;;4414:21:211;;4449:37;4465:20;4449:15;:37::i;:::-;4488:65;;-1:-1:-1;;;;;6649:55:229;;4488:65:211;;;6631:74:229;6721:18;;;6714:34;;;6604:18;;4488:65:211;;;-1:-1:-1;;4488:65:211;;;;;;;;;;;;;;;;;;;;4414:149;;4488:65;4414:149;;;;;;;;;4488:65;4414:149;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4414:149:211;;;;;;;;;;;;:::i;:::-;;4587:35;4605:16;4587:17;:35::i;:::-;4573:49;;4632:41;4652:11;4665:7;4632:19;:41::i;:::-;4683:52;4705:11;4718:16;4683:21;:52::i;:::-;4754:25;4774:4;4754:19;:25::i;:::-;4753:26;4745:58;;;;-1:-1:-1;;;4745:58:211;;8662:2:229;4745:58:211;;;8644:21:229;8701:2;8681:18;;;8674:30;8740:21;8720:18;;;8713:49;8779:18;;4745:58:211;8460:343:229;4745:58:211;4813:31;4833:4;4839;4813:19;:31::i;:::-;4854:37;4873:11;4886:4;4854:18;:37::i;:::-;4901:40;4914:16;4932:8;4901:12;:40::i;:::-;4246:702;4111:837;;;;;:::o;6106:492::-;6181:20;6231:14;6242:2;6231:10;:14::i;:::-;6217:10;:28;6213:379;;-1:-1:-1;6276:2:211;6106:492;;;:::o;6213:379::-;6314:9;6309:273;6329:2;6325:1;:6;6309:273;;;6373:10;6356:13;6367:1;6356:10;:13::i;:::-;:27;;:61;;;;-1:-1:-1;6407:10:211;6387:17;6398:5;:1;6402;6398:5;:::i;:::-;6387:10;:17::i;:::-;:30;6356:61;6352:155;;;6456:5;:1;6460;6456:5;:::i;:::-;6441:20;;6483:5;;6352:155;6546:3;;;;:::i;:::-;;;;6309:273;;;;6106:492;;;:::o;1989:129::-;2049:14;2084:27;2099:11;2084:14;:27::i;1853:130::-;1912:13;1945:31;1964:11;1945:18;:31::i;3123:413::-;3193:4;3209:20;3232:28;3248:11;3106:2;3082:26;;2973:144;3232:28;3209:51;-1:-1:-1;2830:37:211;;;3270:15;3359:17;:15;:17::i;:::-;-1:-1:-1;;;;;3359:25:211;;3385:7;3359:34;;;;;;;;;;;;;4284:25:229;;4272:2;4257:18;;4138:177;3359:34:211;;;;;;;;;;;;;;;;;;;-1:-1:-1;3359:34:211;;;;;;;;-1:-1:-1;;3359:34:211;;;;;;;;;;;;:::i;:::-;;;3355:135;;;3436:17;:15;:17::i;:::-;-1:-1:-1;;;;;3436:25:211;;3462:7;3436:34;;;;;;;;;;;;;4284:25:229;;4272:2;4257:18;;4138:177;3436:34:211;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3426:44;;3394:87;3355:135;3517:12;-1:-1:-1;;;;;3506:23:211;:7;-1:-1:-1;;;;;3506:23:211;;3499:30;;;;;3123:413;;;:::o;4954:545::-;5069:33;5090:11;5069:20;:33::i;:::-;5068:34;5060:90;;;;-1:-1:-1;;;5060:90:211;;9785:2:229;5060:90:211;;;9767:21:229;9824:2;9804:18;;;9797:30;9863:34;9843:18;;;9836:62;9934:13;9914:18;;;9907:41;9965:19;;5060:90:211;9583:407:229;5060:90:211;5168:21;5177:11;5168:8;:21::i;:::-;5160:53;;;;-1:-1:-1;;;5160:53:211;;10197:2:229;5160:53:211;;;10179:21:229;10236:2;10216:18;;;10209:30;10275:21;10255:18;;;10248:49;10314:18;;5160:53:211;9995:343:229;5160:53:211;5223:26;5291:34;5306:11;5319:5;5291:14;:34::i;:::-;5382:110;5435:16;5453:11;5477;5466:23;;;;;;4284:25:229;;4272:2;4257:18;;4138:177;5466:23:211;;;;-1:-1:-1;;5466:23:211;;;;;;;;;;5400:91;;;;;;;:::i;:::-;;;;-1:-1:-1;;5400:91:211;;;;;;;;;;;;;;;;;;;;5382:17;:110::i;:::-;;5050:449;4954:545;;;:::o;2460:266::-;2534:19;2565:20;2588:17;:15;:17::i;:::-;-1:-1:-1;;;;;2588:25:211;;2614:16;2588:43;;;;;;;;;;;;;4284:25:229;;4272:2;4257:18;;4138:177;2588:43:211;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2697:2;2663:36;-1:-1:-1;;2663:36:211;:55;;;;;;-1:-1:-1;;2460:266:211:o;3542:212::-;3621:4;3644:31;3663:11;3644:18;:31::i;:::-;:103;;;;;3742:5;-1:-1:-1;;;;;3679:68:211;:17;:15;:17::i;:::-;:59;;;;;2830:37;;;3679:59;;;4284:25:229;-1:-1:-1;;;;;3679:25:211;;;;;;;4257:18:229;;3679:59:211;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;3679:68:211;;3644:103;3637:110;3542:212;-1:-1:-1;;;3542:212:211:o;6604:219::-;6698:21;6707:11;6698:8;:21::i;:::-;6690:60;;;;-1:-1:-1;;;6690:60:211;;10974:2:229;6690:60:211;;;10956:21:229;11013:2;10993:18;;;10986:30;11052:28;11032:18;;;11025:56;11098:18;;6690:60:211;10772:350:229;6690:60:211;6760:56;2830:37;;;6807:8;6760:12;:56::i;:::-;6604:219;;:::o;5505:595::-;5570:21;5579:11;5570:8;:21::i;:::-;5562:52;;;;-1:-1:-1;;;5562:52:211;;11329:2:229;5562:52:211;;;11311:21:229;11368:2;11348:18;;;11341:30;11407:20;11387:18;;;11380:48;11445:18;;5562:52:211;11127:342:229;5562:52:211;5633:33;5654:11;5633:20;:33::i;:::-;5632:34;5624:72;;;;-1:-1:-1;;;5624:72:211;;11676:2:229;5624:72:211;;;11658:21:229;11715:2;11695:18;;;11688:30;11754:27;11734:18;;;11727:55;11799:18;;5624:72:211;11474:349:229;5624:72:211;5706:26;5735:22;5745:11;5735:9;:22::i;:::-;5785:1;5767:15;;;:19;5825:23;;;;5796:19;;;:53;5706:51;-1:-1:-1;5859:33:211;5869:11;5706:51;5859:9;:33::i;:::-;5909:8;:6;:8::i;:::-;5902:51;;;;;;;;12028:25:229;;;5945:7:211;12069:18:229;;;12062:34;-1:-1:-1;;;;;5902:29:211;;;;;;;12001:18:229;;5902:51:211;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6000:8;:6;:8::i;:::-;-1:-1:-1;;;;;5993:38:211;;6032:11;5993:51;;;;;;;;;;;;;4284:25:229;;4272:2;4257:18;;4138:177;5993:51:211;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6054:39;6075:11;6088:4;6054:20;:39::i;7669:125::-;7729:7;7755:32;7775:11;7755:19;:32::i;1942:98:123:-;1981:7;2003:32;:30;:32::i;7800:130:211:-;7865:7;7891:32;7911:11;7891:19;:32::i;13270:402:194:-;13324:23;;:::i;:::-;13384:16;;;13398:1;13384:16;;;;;;;;;13355:26;;13384:16;;;;;;;;;;;-1:-1:-1;13384:16:194;13355:45;;13421:8;13406:9;13416:1;13406:12;;;;;;;;:::i;:::-;;;;;;;;;;:23;13437:24;;;13524:80;1310:66;13569:9;1439:66;13524:21;:80::i;:::-;13436:168;;;;;;13617:50;13624:11;13637:15;13654:12;13617:6;:50::i;:::-;13610:57;13270:402;-1:-1:-1;;;;;;13270:402:194: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;7003:347:211:-;7059:7;7078:25;7106:42;:40;:42::i;:::-;7078:70;;7158:24;7185:50;7213:17;7233:1;7185:19;:50::i;:::-;:54;;7238:1;7185:54;:::i;:::-;7158:81;;7249:61;7269:17;7288:1;7292:16;7249:19;:61::i;1157:186:220:-;1215:10;1240:100;1275:15;1303:9;1320:18;1240:25;:100::i;4730:249:178:-;4828:16;;;4842:1;4828:16;;;;;;;;;4799:26;;4828:16;;;;;;;;;;;-1:-1:-1;4828:16:178;4799:45;;4865:11;4850:9;4860:1;4850:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;4883:91;1163:66;1147:83;;4920:9;4931:1;4952:5;4934:25;;;;;;;12445:2:229;12441:15;;;;-1:-1:-1;;12437:88:229;12425:101;;12551:2;12542:12;;12296:264;4934:25:178;;;;-1:-1:-1;;4934:25:178;;;;;;;;;1292:66;4883:26;:91::i;:::-;4793:186;4730:249;;:::o;3480:255::-;3582:16;;;3596:1;3582:16;;;;;;;;;3553:26;;3582:16;;;;;;;;;;;-1:-1:-1;3582:16:178;3553:45;;3619:11;3604:9;3614:1;3604:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;3637:93;1163:66;1147:83;;3674:9;3685:1;3706:7;3688:27;;;;;;12694:19:229;;12738:2;12729:12;;12565:182;2594:287:189;2700:16;;;2714:1;2700:16;;;;;;;;;2653:10;;;;2700:16;;;;;;;;;;;;-1:-1:-1;2700:16:189;2671:45;;2737:8;2722:9;2732:1;2722:12;;;;;;;;:::i;:::-;;;;;;;;;;:23;2752:13;2768:64;1069:66;2805:9;2752:13;1198:66;2768:26;:64::i;:::-;2752:80;;2846:29;2867:5;2854:20;;6948:5;6862:97;2846:29;2838:38;2594:287;-1:-1:-1;;;;2594:287:189:o;3890:240::-;3982:16;;;3996:1;3982:16;;;;;;;;;3953:26;;3982:16;;;;;;;;;;;-1:-1:-1;3982:16:189;3953:45;;4019:8;4004:9;4014:1;4004:12;;;;;;;;:::i;:::-;;;;;;:23;;;;;4034:91;1069:66;1053:83;;4071:9;4082:1;4103:5;4085:25;;;;;;12903:14:229;12896:22;12891:3;12887:32;12875:45;;12945:1;12936:11;;12752:201;4085:25:189;;;;-1:-1:-1;;4085:25:189;;;;;;;;;1198:66;4034:26;:91::i;5941:246:178:-;6037:16;;;6051:1;6037:16;;;;;;;;;6008:26;;6037:16;;;;;;;;;;;-1:-1:-1;6037:16:178;6008:45;;6074:11;6059:9;6069:1;6059:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;6092:90;1163:66;1147:83;;6129:9;6140:1;6161:4;6143:24;;;;;;12694:19:229;;12738:2;12729:12;;12565:182;6829:168:211;6911:79;6932:38;6949:20;6932:16;:38::i;:::-;6972:7;6981:8;6911:20;:79::i;3297:296:183:-;3403:16;;;3417:1;3403:16;;;;;;;;;3348:18;;;;3403:16;;;;;;;;;;;;-1:-1:-1;3403:16:183;3374:45;;3456:5;3440:23;;3425:9;3435:1;3425:12;;;;;;;;:::i;:::-;;;;;;;;;;:38;3470:13;3486:64;1061:66;3523:9;3470:13;-1:-1:-1;;;3486:26:183;:64::i;5624:288:194:-;5733:16;;;5747:1;5733:16;;;;;;;;;5683:13;;;;5733:16;;;;;;;;;;;;-1:-1:-1;5733:16:194;5704:45;;5770:8;5755:9;5765:1;5755:12;;;;;;;;:::i;:::-;;;;;;;;;;:23;5785:13;5801:64;1310:66;5838:9;5849:1;1439:66;5801:26;:64::i;:::-;5785:80;-1:-1:-1;5886:20:194;;;;5878:29;;;;;;;;:::i;5306:279:178:-;5416:16;;;5430:1;5416:16;;;;;;;;;5367:12;;;;5416:16;;;;;;;;;;;;-1:-1:-1;5416:16:178;5387:45;;5453:11;5438:9;5448:1;5438:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;5471:13;5487:64;1163:66;5524:9;5535:1;1292:66;5487:26;:64::i;2279:175:211:-;2329:30;2404:42;:40;:42::i;6512:295:178:-;6623:16;;;6637:1;6623:16;;;;;;;;;6575:11;;;;6623:16;;;;;;;;;;;;-1:-1:-1;6623:16:178;6594:45;;6660:11;6645:9;6655:1;6645:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;6678:13;6694:64;1163:66;6731:9;6742:1;1292:66;6694:26;:64::i;7496:167:211:-;7558:4;7597:17;:15;:17::i;:::-;:59;;;;;2830:37;;;7597:59;;;4284:25:229;-1:-1:-1;;;;;7597:25:211;;;;;;;4257:18:229;;7597:59:211;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;7581:75:211;:12;:10;:12::i;:::-;-1:-1:-1;;;;;7581:75:211;;;7496:167;-1:-1:-1;;7496:167:211:o;6279:248:194:-;6374:16;;;6388:1;6374:16;;;;;;;;;6345:26;;6374:16;;;;;;;;;;;-1:-1:-1;6374:16:194;6345:45;;6411:8;6396:9;6406:1;6396:12;;;;;;;;:::i;:::-;;;;;;;;;;:23;6426:96;1310:66;6463:9;6474:1;6500:5;6494:12;;;;;;;;:::i;:::-;6477:30;;;;;;;13290:3:229;13286:16;;;;13304:66;13282:89;13270:102;;13397:1;13388:11;;13145:260;6477:30:194;;;;-1:-1:-1;;6477:30:194;;;;;;;;;1439:66;6426:26;:96::i;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;;;13966:98:229;13939:18;;3713:52:107;13822:248:229;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;15666:552:194:-;15737:24;15764:207;15784:6;:15;;;15807:6;:14;;;15829:6;:12;;;15849:6;:19;;;15876:6;:20;;;15904:6;:16;;;15928:6;:17;;;15953:6;:12;;;15764;:207::i;:::-;16075:16;;;16089:1;16075:16;;;;;;;;;15737:234;;-1:-1:-1;15978:30:194;;16014:25;;15978:30;;16075:16;;;;;;;;;;;;-1:-1:-1;16075:16:194;16046:45;;16112:8;16097:9;16107:1;16097:12;;;;;;;;:::i;:::-;;;;;;;;;;:23;16127:86;1310:66;16159:9;16170:11;16183:15;16200:12;16127:21;:86::i;:::-;15731:487;;;;15666:552;;:::o;7183:249:178:-;7280:16;;;7294:1;7280:16;;;;;;;;;7251:26;;7280:16;;;;;;;;;;;-1:-1:-1;7280:16:178;7251:45;;7317:11;7302:9;7312:1;7302:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;7335:92;1163:66;1147:83;;7372:9;7383:1;7404:6;7386:26;;;;;;12903:14:229;12896:22;12891:3;12887:32;12875:45;;12945:1;12936:11;;12752:201;4071:290:178;4183:16;;;4197:1;4183:16;;;;;;;;;4133:13;;;;4183:16;;;;;;;;;;;;-1:-1:-1;4183:16:178;4154:45;;4220:11;4205:9;4215:1;4205:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;4238:13;4254:64;1163:66;4291:9;4302:1;1292:66;4254:26;:64::i;:::-;4332:23;;;4071:290;-1:-1:-1;;;;4071:290:178:o;4048:97:123:-;4089:7;4111:29;:27;:29::i;10773:294:194:-;10892:16;;;10906:1;10892:16;;;;;;;;;10837:18;;;;10892:16;;;;;;;;;;;;-1:-1:-1;10892:16:194;10863:45;;10929:8;10914:9;10924:1;10914:12;;;;;;;;:::i;:::-;;;;;;;;;;:23;10944:13;10960:64;1310:66;10997:9;11008:1;1439:66;10960:26;:64::i;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;17879:370:194:-;17990:23;;:::i;:::-;18219:25;18232:11;18219:12;:25::i;:::-;18198:12;;;18021:223;;;18173:17;;;18021:223;;;18149:16;;;18021:223;;;18121:20;;;18021:223;;;18094:19;;;18021:223;;;18029:6;18052:14;;;18074:12;;;18021:223;;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;18021:223:194;;;;-1:-1:-1;17879:370:194;;;-1:-1:-1;;;;;17879:370:194:o;5084:257:195:-;5195:16;;;5136:22;5195:16;;;;;;;;;5218:13;5234:64;1248:66;5166:45;5282:1;1377:66;5234:26;:64::i;:::-;5312:23;;;5084:257;-1:-1:-1;;;5084:257:195:o;2640:388:180:-;2775:16;;;2789:1;2775:16;;;;;;;;2723:15;;;;2775:16;2789:1;2775:16;;;;;;;;;;-1:-1:-1;2775:16:180;2746:45;;2836:15;-1:-1:-1;;;;;2820:33:180;2812:42;;2797:9;2807:1;2797:12;;;;;;;;:::i;:::-;;;;;;:57;;;;;2891:5;2875:23;;2860:9;2870:1;2860:12;;;;;;;;:::i;:::-;;;;;;;;;;:38;2905:13;2921:64;1065:66;2958:9;2905:13;-1:-1:-1;;;2921:26:180;:64::i;:::-;2905:80;2640:388;-1:-1:-1;;;;;2640:388:180:o;4344:349::-;4465:16;;;4479:1;4465:16;;;;;;;;4436:26;;4465:16;;;;;;;;;;-1:-1:-1;4465:16:180;4436:45;;4526:15;-1:-1:-1;;;;;4510:33:180;4502:42;;4487:9;4497:1;4487:12;;;;;;;;:::i;:::-;;;;;;:57;;;;;4581:5;4565:23;;4550:9;4560:1;4550:12;;;;;;;;:::i;:::-;;;;;;:38;;;;;4595:93;1065:66;1049:83;;4632:9;4643:1;4664:7;4646:27;;;;;;12694:19:229;;12738:2;12729:12;;12565:182;4646:27:180;;;;-1:-1:-1;;4646:27:180;;;;;;;;;-1:-1:-1;;;4595:26:180;:93::i;:::-;4430:263;4344:349;;;:::o;1046:257:124:-;1133:10;1262:26;438:6;451:5:41;1262:26:124;:::i;:::-;-1:-1:-1;;1244:13:124;;:45;;451:5:41;1208:31:124;;;;;1189:15;;;:51;:101;;-1:-1:-1;1046:257:124;;;;;:::o;10761:455:46:-;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;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10927:289;10761:455;;;;;:::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;1465:182:91:-;1524:10;1547:97;1583:14;1610:9;1627:14;1547:25;:97::i;3806:271:90:-;3933:16;;;3947:1;3933:16;;;;;;;;;3904:26;;3933:16;;;;;;;;;;;-1:-1:-1;3933:16:90;3904:45;;3986:7;3970:25;;3955:9;3965:1;3955:12;;;;;;;;:::i;:::-;;;;;;:40;;;;;4002:70;4030:8;4040:9;4051:1;4061:8;4002:27;:70::i;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;:::-;6214:57;;;;;;;;5805:471;;;:::o;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;18916:362:194:-;19145:12;19189:8;19199:7;19208:5;19215:12;19229:13;19244:9;19255:10;19267:5;19172:101;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;19165:108;;18916:362;;;;;;;;;;:::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;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;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;16961:760:194:-;17053:16;17077:15;17100:13;17121:20;17149:21;17178:16;17202:18;17228:13;17276:26;17293:5;17300:1;35409:27:23;35423:4;35409:27;35403:34;;35277:170;17276:26:194;35409:27:23;;;35403:34;35409:27;;;35403:34;17268:35:194;;-1:-1:-1;35403:34:23;-1:-1:-1;17382:33:194;;17374:42;;;;;;;;:::i;:::-;35409:27:23;;;35403:34;35409:27;;;35403:34;35409:27;;;35403:34;35409:27;;;35403:34;35409:27;;;;35403:34;16961:760:194;;;;17366:50;;35403:34:23;;;;-1:-1:-1;35403:34:23;-1:-1:-1;35403:34:23;;-1:-1:-1;35403:34:23;-1:-1:-1;16961:760:194;-1:-1:-1;;16961:760:194:o;23107:355:45:-;23279:178;23313:7;23338:8;23368:63;23407:11;23420:10;23368:38;:63::i;:::-;23446:4;23279:16;:178::i;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;11569:424:46:-;11720:21;11744:17;:15;:17::i;:::-;11720:41;-1:-1:-1;11796:4:46;-1:-1:-1;;;;;11771:30:46;;;11767:222;;11811:69;11837:7;11846:8;11856:17;11875:4;11811:25;:69::i;:::-;11767:222;;;11901:81;;;;;-1:-1:-1;;;;;11901:37:46;;;;;:81;;11939:7;;11948:8;;11958:17;;11977:4;;11901:81;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11714:279;11569:424;;;;:::o;8363:236:133:-;8474:19;8495:29;8569:25;8582:11;8569:12;:25::i;:::-;8532:62;;;;-1:-1:-1;8363:236:133;-1:-1:-1;;;;8363:236:133:o;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;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;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;51823:242:45:-;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;;17013:1682;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;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;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;24152:738:45:-;24403:37;24443:66;24491:7;24500:8;24443:47;:66::i;:::-;24403:106;-1:-1:-1;24515:26:45;24551:49;24403:106;24582:17;7070:16:24;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;24551:49:45;24515:86;;24608:277;24662:7;24687:8;24722:17;24765:1;24787:19;24820:4;24856:22;24608:36;:277::i;7963:242:133:-;35423:4:23;35409:27;;35403:34;35409:27;;;35403: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;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;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;3968:25:124;;;:87;;4007:48;4042:12;4007:34;:48::i;:::-;3968:87;;;;;;;;;;;;;;;;;;;;;3772:293;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;3743:330;;;;;3486:592;;;:::o;1546:281:108:-;1708:29;1718:10;1730:6;1708:9;:29::i;:::-;1703:120;;1786:21;:10;:19;:21::i;:::-;1809:6;1754:62;;;;;;;;;;;;:::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;-1:-1:-1;;;3961:24:132;: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;;;;;;12694:19:229;;12738:2;12729:12;;12565:182;5279:27:132;;;;-1:-1:-1;;5279:27:132;;;;;;;;;-1:-1:-1;;;5230:24:132;: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;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;;5042:669:44;5458:4;5452:11;5499:4;5487:17;;-1:-1:-1;;5373:16:44;5546:26;;;5373:16;5369:32;5518:4;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;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;966:162:44:-;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;44254:4001:45:-;44673:14;44652:7;:35;;;44648:161;;44743:14;44759:7;44792;44775:25;;;;;;12694:19:229;;12738:2;12729:12;;12565:182;44775:25:45;;;;-1:-1:-1;;44775:25:45;;;;;;;;;;44704:98;;;;;;;;;;:::i;44648:161::-;44815:27;44845:49;:22;44876:17;7070:16:24;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;44845:49:45;44815:79;;44900:26;44965:4;:11;44951;44929:33;;:19;:33;;;;:::i;:::-;:47;;;;:::i;:::-;44900:76;;45248:18;45225:19;:41;;:98;;;;-1:-1:-1;45304:19:45;45270:30;45289:11;45270:16;:30;:::i;:::-;:53;;;;45225:98;45221:218;;;45340:92;;;;;26250:12:229;26289:15;;;45340:92:45;;;26271:34:229;26341:15;;;26321:18;;;26314:43;26393:15;;26373:18;;;26366:43;26213:18;;45340:92:45;26044:371:229;45221:218:45;45545:19;45526:16;:38;;;45522:140;;;45581:74;;;;;;;;26593:25:229;;;26666:12;26654:25;;26634:18;;;26627:53;26566:18;;45581:74:45;26420:266:229;45522:140:45;45701:36;45740:72;:22;45774:17;45793:18;45740:33;:72::i;:::-;45701:111;;45959:22;45984:24;46000:7;45984:15;:24::i;:::-;45959:49;;46019:9;46014:486;46034:5;:12;46030:1;:16;46014:486;;;46061:9;46083:5;46089:1;46083:8;;;;;;;;:::i;:::-;;;;;;;46061:31;;46104:42;836:6:54;46104:4:45;:14;;;;;:42;;;;:::i;:::-;46100:394;;;3536:35:26;;;;-1:-1:-1;;;;;46158:55:45;;46235:7;46264:8;46303:17;46350:16;46391:11;46430:22;46470:4;46158:327;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;46100:394;-1:-1:-1;46048:3:45;;46014:486;;;-1:-1:-1;46558:32:45;;;:13;46698:107;46716:17;46712:21;;:1;:21;;;46698:107;;;46761:33;:22;46792:1;7070:16:24;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;46761:33:45;46752:42;;;;46735:3;;46698:107;;;;46930:7;46874:277;46957:8;46994:17;47035:5;47064:11;47101:21;47138:4;46874:277;;;;;;;;;;;:::i;:::-;;;;;;;;46506:652;47243:18;47220:19;:41;47216:248;;47271:31;47305:48;47335:7;47344:8;47305:29;:48::i;:::-;695:28:44;;;-1:-1:-1;47216:248:45;47521:27;47551:61;47575:7;47584:8;47594:17;47551:23;:61::i;:::-;47521:91;;47620:92;47652:19;47681:16;47620:92;;47705:4;47620:13;:92::i;:::-;47513:206;47773:9;47768:483;47788:5;:12;47784:1;:16;47768:483;;;47815:9;47837:5;47843:1;47837:8;;;;;;;;:::i;:::-;;;;;;;47815:31;;47858:41;947:6:54;47858:4:45;:14;;;;;:41;;;;:::i;:::-;47854:391;;;3536:35:26;;;;-1:-1:-1;;;;;47911:54:45;;47987:7;48016:8;48055:17;48102:16;48143:11;48182:21;48221:4;47911:325;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;47854:391;-1:-1:-1;47802:3:45;;47768:483;;;;44498:3757;;;;44254:4001;;;;;;;:::o;7829:207:139:-;7940:14;7956:17;8006:25;8019:11;8006:12;:25::i;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;;;-1:-1:-1;;2007:37:124;;3261:1:23;3257:13;;3253:24;2007:42:124;;2003:53;2051:5;2003:53;1993:8;;1973:83;;;2092:30;;;-1:-1:-1;;28531:79:229;;2092:30:124;;;28519:92:229;2092:30:124;;28627:12:229;;;;2092:30:124;;;875:21:23;;;2092:30:124;2142:39;760:164:23;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;51249:282:45:-;51494:30;;;;;;29374:19:229;;;29409:12;;;29402:28;;;51337:7:45;;29446:12:229;;51494:30:45;29185:279:229;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;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;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;40103:220:56:-;40169:24;40201:30;40234:32;40252:6;40260:2;40264:1;40234:17;:32::i;7468:1525:24:-;7596:14;1145:16;7622:25;;7618:120;;;7664:67;;;;;;;;4284:25:229;;;4257:18;;7664:67:24;4138:177:229;7618:120:24;7802:14;6445:61;;;7070:16;;;1063;7070;975;7059:27;7017:70;;;6995:94;;8068:38;;;8064:192;;8151:19;8133:15;:37;8118:52;;;;8064:192;;;8232:15;8210:19;:37;8195:52;;;;8064:192;-1:-1:-1;8572:16:24;975;1063;8439;;;;8428:27;8564:35;;;8882:5;8719:26;8699:46;;;;8698:62;;;8862:25;;;;8892:34;;;;;8861:66;;-1:-1:-1;7468:1525:24;;;;;:::o;7448:223:139:-;35423:4:23;35409:27;;35403:34;35409:27;;;35403:34;7564:35:139;;;;;;7513:14;;7631:33;;7623:42;6862:97:189;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;:::-;4257:78;;4349:29;4370:5;4357:20;;6948:5:189;6862:97;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;;;3341:28;;3116:690;;;2681:1129;;;;;:::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:180:229:-;73:6;126:2;114:9;105:7;101:23;97:32;94:52;;;142:1;139;132:12;94:52;-1:-1:-1;165:23:229;;14:180;-1:-1:-1;14:180:229:o;430:332::-;488:6;541:2;529:9;520:7;516:23;512:32;509:52;;;557:1;554;547:12;509:52;596:9;583:23;646:66;639:5;635:78;628:5;625:89;615:117;;728:1;725;718:12;959:184;-1:-1:-1;;;1008:1:229;1001:88;1108:4;1105:1;1098:15;1132:4;1129:1;1122:15;1148:266;1228:1;1221:5;1218:12;1208:200;;-1:-1:-1;;;1261:1:229;1254:88;1365:4;1362:1;1355:15;1393:4;1390:1;1383:15;1208:200;1148:266;:::o;1419:777::-;1642:13;;1624:32;;1712:4;1700:17;;;1694:24;1672:20;;;1665:54;1766:4;1754:17;;1748:24;1611:3;1596:19;;;1781:43;1748:24;1781:43;:::i;:::-;1862:12;1855:4;1844:9;1840:20;1833:42;;1931:4;1923:6;1919:17;1913:24;1906:4;1895:9;1891:20;1884:54;1994:4;1986:6;1982:17;1976:24;1969:4;1958:9;1954:20;1947:54;2057:4;2049:6;2045:17;2039:24;2032:4;2021:9;2017:20;2010:54;2120:4;2112:6;2108:17;2102:24;2095:4;2084:9;2080:20;2073:54;2183:4;2175:6;2171:17;2165:24;2158:4;2147:9;2143:20;2136:54;1419:777;;;;:::o;2201:154::-;-1:-1:-1;;;;;2280:5:229;2276:54;2269:5;2266:65;2256:93;;2345:1;2342;2335:12;2360:184;-1:-1:-1;;;2409:1:229;2402:88;2509:4;2506:1;2499:15;2533:4;2530:1;2523:15;2549:334;2620:2;2614:9;2676:2;2666:13;;-1:-1:-1;;2662:86:229;2650:99;;2779:18;2764:34;;2800:22;;;2761:62;2758:88;;;2826:18;;:::i;:::-;2862:2;2855:22;2549:334;;-1:-1:-1;2549:334:229:o;2888:246::-;2937:4;2970:18;2962:6;2959:30;2956:56;;;2992:18;;:::i;:::-;-1:-1:-1;3049:2:229;3037:15;-1:-1:-1;;3033:88:229;3123:4;3029:99;;2888:246::o;3139:464::-;3182:5;3235:3;3228:4;3220:6;3216:17;3212:27;3202:55;;3253:1;3250;3243:12;3202:55;3289:6;3276:20;3320:49;3336:32;3365:2;3336:32;:::i;:::-;3320:49;:::i;:::-;3394:2;3385:7;3378:19;3440:3;3433:4;3428:2;3420:6;3416:15;3412:26;3409:35;3406:55;;;3457:1;3454;3447:12;3406:55;3522:2;3515:4;3507:6;3503:17;3496:4;3487:7;3483:18;3470:55;3570:1;3545:16;;;3563:4;3541:27;3534:38;;;;3549:7;3139:464;-1:-1:-1;;;3139:464:229:o;3608:525::-;3695:6;3703;3711;3764:2;3752:9;3743:7;3739:23;3735:32;3732:52;;;3780:1;3777;3770:12;3732:52;3819:9;3806:23;3838:31;3863:5;3838:31;:::i;:::-;3888:5;-1:-1:-1;3940:2:229;3925:18;;3912:32;;-1:-1:-1;3995:2:229;3980:18;;3967:32;4022:18;4011:30;;4008:50;;;4054:1;4051;4044:12;4008:50;4077;4119:7;4110:6;4099:9;4095:22;4077:50;:::i;:::-;4067:60;;;3608:525;;;;;:::o;4687:235::-;4833:2;4818:18;;4845:37;4875:6;4845:37;:::i;:::-;4891:25;;;4687:235;:::o;4927:406::-;5018:6;5026;5034;5087:2;5075:9;5066:7;5062:23;5058:32;5055:52;;;5103:1;5100;5093:12;5055:52;5139:9;5126:23;5116:33;;5196:2;5185:9;5181:18;5168:32;5158:42;;5250:2;5239:9;5235:18;5222:32;5283:1;5276:5;5273:12;5263:40;;5299:1;5296;5289:12;5263:40;5322:5;5312:15;;;4927:406;;;;;:::o;5338:315::-;5406:6;5414;5467:2;5455:9;5446:7;5442:23;5438:32;5435:52;;;5483:1;5480;5473:12;5435:52;5519:9;5506:23;5496:33;;5579:2;5568:9;5564:18;5551:32;5592:31;5617:5;5592:31;:::i;:::-;5642:5;5632:15;;;5338:315;;;;;:::o;5658:390::-;5736:6;5744;5797:2;5785:9;5776:7;5772:23;5768:32;5765:52;;;5813:1;5810;5803:12;5765:52;5849:9;5836:23;5826:33;;5910:2;5899:9;5895:18;5882:32;5937:18;5929:6;5926:30;5923:50;;;5969:1;5966;5959:12;5923:50;5992;6034:7;6025:6;6014:9;6010:22;5992:50;:::i;:::-;5982:60;;;5658:390;;;;;:::o;6759:250::-;6844:1;6854:113;6868:6;6865:1;6862:13;6854:113;;;6944:11;;;6938:18;6925:11;;;6918:39;6890:2;6883:10;6854:113;;;-1:-1:-1;;7001:1:229;6983:16;;6976:27;6759:250::o;7014:329::-;7055:3;7093:5;7087:12;7120:6;7115:3;7108:19;7136:76;7205:6;7198:4;7193:3;7189:14;7182:4;7175:5;7171:16;7136:76;:::i;:::-;7257:2;7245:15;-1:-1:-1;;7241:88:229;7232:98;;;;7332:4;7228:109;;7014:329;-1:-1:-1;;7014:329:229:o;7348:320::-;7555:6;7544:9;7537:25;7598:2;7593;7582:9;7578:18;7571:30;7518:4;7618:44;7658:2;7647:9;7643:18;7635:6;7618:44;:::i;7673:442::-;7726:5;7779:3;7772:4;7764:6;7760:17;7756:27;7746:55;;7797:1;7794;7787:12;7746:55;7826:6;7820:13;7857:49;7873:32;7902:2;7873:32;:::i;7857:49::-;7931:2;7922:7;7915:19;7977:3;7970:4;7965:2;7957:6;7953:15;7949:26;7946:35;7943:55;;;7994:1;7991;7984:12;7943:55;8007:77;8081:2;8074:4;8065:7;8061:18;8054:4;8046:6;8042:17;8007:77;:::i;8120:335::-;8199:6;8252:2;8240:9;8231:7;8227:23;8223:32;8220:52;;;8268:1;8265;8258:12;8220:52;8301:9;8295:16;8334:18;8326:6;8323:30;8320:50;;;8366:1;8363;8356:12;8320:50;8389:60;8441:7;8432:6;8421:9;8417:22;8389:60;:::i;8808:184::-;-1:-1:-1;;;8857:1:229;8850:88;8957:4;8954:1;8947:15;8981:4;8978:1;8971:15;8997:125;9062:9;;;9083:10;;;9080:36;;;9096:18;;:::i;9127:195::-;9166:3;-1:-1:-1;;9190:5:229;9187:77;9184:103;;9267:18;;:::i;:::-;-1:-1:-1;9314:1:229;9303:13;;9127:195::o;9327:251::-;9397:6;9450:2;9438:9;9429:7;9425:23;9421:32;9418:52;;;9466:1;9463;9456:12;9418:52;9498:9;9492:16;9517:31;9542:5;9517:31;:::i;10343:424::-;10565:6;10554:9;10547:25;10581:37;10611:6;10581:37;:::i;:::-;10654:6;10649:2;10638:9;10634:18;10627:34;10697:2;10692;10681:9;10677:18;10670:30;10528:4;10717:44;10757:2;10746:9;10742:18;10734:6;10717:44;:::i;12107:184::-;-1:-1:-1;;;12156:1:229;12149:88;12256:4;12253:1;12246:15;12280:4;12277:1;12270:15;13410:407;13493:5;13533;13527:12;13575:4;13568:5;13564:16;13558:23;13600:66;13692:2;13688;13684:11;13675:20;;13718:1;13710:6;13707:13;13704:107;;;13798:2;13792;13782:6;13779:1;13775:14;13772:1;13768:22;13764:31;13760:2;13756:40;13752:49;13743:58;;13704:107;;;;13410:407;;;:::o;14075:439::-;14128:3;14166:5;14160:12;14193:6;14188:3;14181:19;14219:4;14248;14243:3;14239:14;14232:21;;14287:4;14280:5;14276:16;14310:1;14320:169;14334:6;14331:1;14328:13;14320:169;;;14395:13;;14383:26;;14429:12;;;;14464:15;;;;14356:1;14349:9;14320:169;;;-1:-1:-1;14505:3:229;;14075:439;-1:-1:-1;;;;;14075:439:229:o;14519:468::-;14819:6;14808:9;14801:25;14862:2;14857;14846:9;14842:18;14835:30;14782:4;14882:56;14934:2;14923:9;14919:18;14911:6;14882:56;:::i;:::-;14874:64;;14974:6;14969:2;14958:9;14954:18;14947:34;14519:468;;;;;;:::o;14992:655::-;15134:6;15142;15150;15203:2;15191:9;15182:7;15178:23;15174:32;15171:52;;;15219:1;15216;15209:12;15171:52;15252:9;15246:16;15281:18;15322:2;15314:6;15311:14;15308:34;;;15338:1;15335;15328:12;15308:34;15361:60;15413:7;15404:6;15393:9;15389:22;15361:60;:::i;:::-;15351:70;;15461:2;15450:9;15446:18;15440:25;15430:35;;15511:2;15500:9;15496:18;15490:25;15474:41;;15540:2;15530:8;15527:16;15524:36;;;15556:1;15553;15546:12;15524:36;;15579:62;15633:7;15622:8;15611:9;15607:24;15579:62;:::i;15652:709::-;16022:6;16011:9;16004:25;16065:3;16060:2;16049:9;16045:18;16038:31;15985:4;16092:57;16144:3;16133:9;16129:19;16121:6;16092:57;:::i;:::-;16197:4;16189:6;16185:17;16180:2;16169:9;16165:18;16158:45;16251:9;16243:6;16239:22;16234:2;16223:9;16219:18;16212:50;16279:32;16304:6;16296;16279:32;:::i;:::-;16271:40;;;16348:6;16342:3;16331:9;16327:19;16320:35;15652:709;;;;;;;;:::o;16366:548::-;16690:6;16679:9;16672:25;16733:3;16728:2;16717:9;16713:18;16706:31;16653:4;16754:57;16806:3;16795:9;16791:19;16783:6;16754:57;:::i;:::-;16859:4;16847:17;;;;16842:2;16827:18;;16820:45;-1:-1:-1;16896:2:229;16881:18;16874:34;16746:65;16366:548;-1:-1:-1;;16366:548:229:o;16919:184::-;16989:6;17042:2;17030:9;17021:7;17017:23;17013:32;17010:52;;;17058:1;17055;17048:12;17010:52;-1:-1:-1;17081:16:229;;16919:184;-1:-1:-1;16919:184:229:o;17108:707::-;17455:6;17450:3;17443:19;17492:6;17487:2;17482:3;17478:12;17471:28;17508:37;17538:6;17508:37;:::i;:::-;17579:3;17575:16;;;;17570:2;17561:12;;17554:38;17617:2;17608:12;;17601:28;;;;17654:2;17645:12;;17638:28;;;;17691:3;17682:13;;17675:29;17729:3;17720:13;;17713:29;17767:3;17758:13;;17751:29;17805:3;17796:13;;17108:707;-1:-1:-1;;17108:707:229:o;17820:794::-;18215:6;18204:9;18197:25;18258:3;18253:2;18242:9;18238:18;18231:31;18178:4;18285:57;18337:3;18326:9;18322:19;18314:6;18285:57;:::i;:::-;18390:9;18382:6;18378:22;18373:2;18362:9;18358:18;18351:50;18424:32;18449:6;18441;18424:32;:::i;:::-;18410:46;;18492:6;18487:2;18476:9;18472:18;18465:34;18548:9;18540:6;18536:22;18530:3;18519:9;18515:19;18508:51;18576:32;18601:6;18593;18576:32;:::i;:::-;18568:40;17820:794;-1:-1:-1;;;;;;;;17820:794:229:o;18619:175::-;18656:3;18700:4;18693:5;18689:16;18729:4;18720:7;18717:17;18714:43;;18737:18;;:::i;:::-;18786:1;18773:15;;18619:175;-1:-1:-1;;18619:175:229:o;18799:604::-;19108:6;19097:9;19090:25;19151:3;19146:2;19135:9;19131:18;19124:31;19071:4;19178:57;19230:3;19219:9;19215:19;19207:6;19178:57;:::i;:::-;19283:4;19275:6;19271:17;19266:2;19255:9;19251:18;19244:45;19337:9;19329:6;19325:22;19320:2;19309:9;19305:18;19298:50;19365:32;19390:6;19382;19365:32;:::i;:::-;19357:40;18799:604;-1:-1:-1;;;;;;;18799:604:229:o;19735:128::-;19802:9;;;19823:11;;;19820:37;;;19837:18;;:::i;19868:168::-;19941:9;;;19972;;19989:15;;;19983:22;;19969:37;19959:71;;20010:18;;:::i;20041:640::-;20292:6;20287:3;20280:19;20262:3;20318:2;20351;20346:3;20342:12;20383:6;20377:13;20448:2;20440:6;20436:15;20469:1;20479:175;20493:6;20490:1;20487:13;20479:175;;;20556:13;;20542:28;;20592:14;;;;20629:15;;;;20515:1;20508:9;20479:175;;;-1:-1:-1;20670:5:229;;20041:640;-1:-1:-1;;;;;;;20041:640:229:o;20686:184::-;-1:-1:-1;;;20735:1:229;20728:88;20835:4;20832:1;20825:15;20859:4;20856:1;20849:15;20875:511;21126:2;21115:9;21108:21;21089:4;21152:56;21204:2;21193:9;21189:18;21181:6;21152:56;:::i;:::-;21256:14;21248:6;21244:27;21239:2;21228:9;21224:18;21217:55;21320:9;21312:6;21308:22;21303:2;21292:9;21288:18;21281:50;21348:32;21373:6;21365;21348:32;:::i;21391:616::-;21702:6;21691:9;21684:25;21745:3;21740:2;21729:9;21725:18;21718:31;21665:4;21772:57;21824:3;21813:9;21809:19;21801:6;21772:57;:::i;:::-;21877:14;21869:6;21865:27;21860:2;21849:9;21845:18;21838:55;21941:9;21933:6;21929:22;21924:2;21913:9;21909:18;21902:50;21969:32;21994:6;21986;21969:32;:::i;22012:925::-;22461:66;22453:6;22449:79;22444:3;22437:92;22419:3;22548;22580:2;22576:1;22571:3;22567:11;22560:23;22612:6;22606:13;22628:74;22695:6;22691:1;22686:3;22682:11;22675:4;22667:6;22663:17;22628:74;:::i;:::-;22730:6;22725:3;22721:16;22711:26;;22765:2;22761:1;22757:2;22753:10;22746:22;22799:6;22793:13;22777:29;;22815:75;22881:8;22877:1;22873:2;22869:10;22862:4;22854:6;22850:17;22815:75;:::i;:::-;22910:17;22929:1;22906:25;;22012:925;-1:-1:-1;;;;;22012:925:229:o;22942:339::-;23119:2;23108:9;23101:21;23082:4;23139:44;23179:2;23168:9;23164:18;23156:6;23139:44;:::i;:::-;23131:52;;-1:-1:-1;;;;;23223:6:229;23219:55;23214:2;23203:9;23199:18;23192:83;22942:339;;;;;:::o;23286:287::-;23415:3;23453:6;23447:13;23469:66;23528:6;23523:3;23516:4;23508:6;23504:17;23469:66;:::i;:::-;23551:16;;;;;23286:287;-1:-1:-1;;23286:287:229:o;23578:690::-;23913:3;23902:9;23895:22;23876:4;23940:57;23992:3;23981:9;23977:19;23969:6;23940:57;:::i;:::-;24045:9;24037:6;24033:22;24028:2;24017:9;24013:18;24006:50;24079:32;24104:6;24096;24079:32;:::i;:::-;24065:46;;24147:6;24142:2;24131:9;24127:18;24120:34;24202:9;24194:6;24190:22;24185:2;24174:9;24170:18;24163:50;24230:32;24255:6;24247;24230:32;:::i;24273:899::-;24729:6;24718:9;24711:25;24772:3;24767:2;24756:9;24752:18;24745:31;24692:4;24799:57;24851:3;24840:9;24836:19;24828:6;24799:57;:::i;:::-;24904:9;24896:6;24892:22;24887:2;24876:9;24872:18;24865:50;24938:32;24963:6;24955;24938:32;:::i;:::-;24924:46;;25006:6;25001:2;24990:9;24986:18;24979:34;25062:9;25054:6;25050:22;25044:3;25033:9;25029:19;25022:51;25090:32;25115:6;25107;25090:32;:::i;:::-;25082:40;;;25159:6;25153:3;25142:9;25138:19;25131:35;24273:899;;;;;;;;;:::o;25396:464::-;25643:66;25635:6;25631:79;25620:9;25613:98;25747:6;25742:2;25731:9;25727:18;25720:34;25790:2;25785;25774:9;25770:18;25763:30;25594:4;25810:44;25850:2;25839:9;25835:18;25827:6;25810:44;:::i;25865:174::-;25932:12;25964:10;;;25976;;;25960:27;;25999:11;;;25996:37;;;26013:18;;:::i;:::-;25996:37;25865:174;;;;:::o;26691:901::-;27116:6;27105:9;27098:25;27159:3;27154:2;27143:9;27139:18;27132:31;27079:4;27186:57;27238:3;27227:9;27223:19;27215:6;27186:57;:::i;:::-;27291:4;27279:17;;27274:2;27259:18;;27252:45;27316:12;27364:15;;;27359:2;27344:18;;27337:43;27417:15;;27411:3;27396:19;;27389:44;27464:3;27449:19;;27442:35;;;27514:22;;;27508:3;27493:19;;27486:51;27554:32;27518:6;27571;27554:32;:::i;:::-;27546:40;26691:901;-1:-1:-1;;;;;;;;;;26691:901:229:o;27597:788::-;27962:3;27951:9;27944:22;27925:4;27989:57;28041:3;28030:9;28026:19;28018:6;27989:57;:::i;:::-;28094:4;28086:6;28082:17;28077:2;28066:9;28062:18;28055:45;28148:14;28140:6;28136:27;28131:2;28120:9;28116:18;28109:55;28212:12;28204:6;28200:25;28195:2;28184:9;28180:18;28173:53;28263:6;28257:3;28246:9;28242:19;28235:35;28319:9;28311:6;28307:22;28301:3;28290:9;28286:19;28279:51;28347:32;28372:6;28364;28347:32;:::i;:::-;28339:40;27597:788;-1:-1:-1;;;;;;;;;27597:788:229:o;28650:530::-;28835:3;28873:6;28867:13;28889:66;28948:6;28943:3;28936:4;28928:6;28924:17;28889:66;:::i;:::-;29024:2;29020:15;;;;-1:-1:-1;;29016:88:229;28977:16;;;;29002:103;;;29132:2;29121:14;;29114:30;;;;29171:2;29160:14;;28650:530;-1:-1:-1;;28650:530:229:o;29469:359::-;29672:2;29661:9;29654:21;29635:4;29692:44;29732:2;29721:9;29717:18;29709:6;29692:44;:::i;:::-;29767:2;29752:18;;29745:34;;;;-1:-1:-1;29810:2:229;29795:18;29788:34;29684:52;29469:359;-1:-1:-1;29469:359:229:o","linkReferences":{}},"methodIdentifiers":{"_msgSender()":"119df25f","_msgValue()":"45ec9354","_world()":"e1af802c","enterGame(bytes32)":"c74dedc8","getCharacterTokenId(bytes32)":"f8c67561","getClass(bytes32)":"23801570","getCurrentAvailableLevel(uint256)":"1ecb393f","getExperience(bytes32)":"ebee03bb","getName(bytes32)":"54b8d5e3","getOwner(bytes32)":"deb931a2","getOwnerAddress(bytes32)":"00d43ec6","getPlayerEntityId(uint256)":"8338f0e0","getStats(bytes32)":"0bb700dc","isValidCharacterId(bytes32)":"623daa05","isValidOwner(bytes32,address)":"9b63ec05","mintCharacter(address,bytes32,string)":"143f3021","rollStats(bytes32,bytes32,uint8)":"679ee16d","supportsInterface(bytes4)":"01ffc9a7","updateTokenUri(bytes32,string)":"b27cbcbb"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"}],\"name\":\"EncodedLengths_InvalidLength\",\"type\":\"error\"},{\"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\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"accessedIndex\",\"type\":\"uint256\"}],\"name\":\"Store_IndexOutOfBounds\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes2\",\"name\":\"expected\",\"type\":\"bytes2\"},{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"Store_InvalidResourceType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint40\",\"name\":\"startWithinField\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"fieldLength\",\"type\":\"uint40\"}],\"name\":\"Store_InvalidSplice\",\"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\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"indexed\":false,\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"indexed\":false,\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"indexed\":false,\"internalType\":\"EncodedLengths\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Store_SpliceDynamicData\",\"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\":\"_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\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"enterGame\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"getCharacterTokenId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"getClass\",\"outputs\":[{\"internalType\":\"enum Classes\",\"name\":\"_class\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"experience\",\"type\":\"uint256\"}],\"name\":\"getCurrentAvailableLevel\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"currentLevel\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"getExperience\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"getName\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"_name\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"getOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"getOwnerAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"characterTokenId\",\"type\":\"uint256\"}],\"name\":\"getPlayerEntityId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"getStats\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"strength\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"agility\",\"type\":\"uint256\"},{\"internalType\":\"enum Classes\",\"name\":\"class\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"intelligence\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"baseHitPoints\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"currentHp\",\"type\":\"int256\"},{\"internalType\":\"uint256\",\"name\":\"experience\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"level\",\"type\":\"uint256\"}],\"internalType\":\"struct StatsData\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"isValidCharacterId\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"isValidOwner\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"name\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"tokenUri\",\"type\":\"string\"}],\"name\":\"mintCharacter\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"userRandomNumber\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"enum Classes\",\"name\":\"class\",\"type\":\"uint8\"}],\"name\":\"rollStats\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"tokenUri\",\"type\":\"string\"}],\"name\":\"updateTokenUri\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"errors\":{\"EncodedLengths_InvalidLength(uint256)\":[{\"params\":{\"length\":\"The length of the encoded lengths.\"}}],\"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.\"}}],\"Store_IndexOutOfBounds(uint256,uint256)\":[{\"details\":\"Raised if the start index is larger than the previous length of the field.\",\"params\":{\"accessedIndex\":\"FIXME\",\"length\":\"FIXME\"}}],\"Store_InvalidResourceType(bytes2,bytes32,string)\":[{\"params\":{\"expected\":\"The expected resource type.\",\"resourceId\":\"The resource ID.\",\"resourceIdString\":\"The stringified resource ID (for easier debugging).\"}}],\"Store_InvalidSplice(uint40,uint40,uint40)\":[{\"details\":\"Raised if the splice total length of the field is changed but the splice is not at the end of the field.\",\"params\":{\"deleteCount\":\"The number of bytes to delete in the splice operation.\",\"fieldLength\":\"The field length for the splice operation.\",\"startWithinField\":\"The start index within the field for the splice operation.\"}}],\"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_SpliceDynamicData(bytes32,bytes32[],uint8,uint48,uint40,bytes32,bytes)\":{\"params\":{\"data\":\"The data to insert into the dynamic data of the record at the start byte.\",\"deleteCount\":\"The number of bytes to delete in the splice operation.\",\"dynamicFieldIndex\":\"The index of the dynamic field to splice data, relative to the start of the dynamic fields. (Dynamic field index = field index - number of static fields)\",\"encodedLengths\":\"The encoded lengths of the dynamic data of the record.\",\"keyTuple\":\"An array representing the composite 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.\"}},\"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.\"}},\"getOwnerAddress(bytes32)\":{\"details\":\"extracts the character nft owner address from the character Id\"},\"mintCharacter(address,bytes32,string)\":{\"params\":{\"account\":\"the address of the account that will own the character\",\"name\":\"the keccack256 hash of the characters name to check for duplicates\",\"tokenUri\":\"the token uri to be set for the character token\"},\"returns\":{\"characterId\":\"the bytes32 character id combination of the owner address and the tokenId\"}},\"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\":{\"EncodedLengths_InvalidLength(uint256)\":[{\"notice\":\"Error raised when the provided encoded lengths has an invalid length.\"}],\"Slice_OutOfBounds(bytes,uint256,uint256)\":[{\"notice\":\"Error raised when the provided slice is out of bounds.\"}],\"Store_IndexOutOfBounds(uint256,uint256)\":[{\"notice\":\"Error raised if the provided index is out of bounds.\"}],\"Store_InvalidResourceType(bytes2,bytes32,string)\":[{\"notice\":\"Error raised if the provided resource ID cannot be found.\"}],\"Store_InvalidSplice(uint40,uint40,uint40)\":[{\"notice\":\"Error raised if the provided splice is invalid.\"}],\"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_SpliceDynamicData(bytes32,bytes32[],uint8,uint48,uint40,bytes32,bytes)\":{\"notice\":\"Emitted when dynamic data in the store is spliced.\"},\"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/CharacterSystem.sol\":\"CharacterSystem\"},\"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\":\"0xdd3ebcb4c411e951e1d5c68d6287c597f8f6ab874b48ae96600e024326bd7059\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://61cf2ec85c2dcfde0de8d6c12cdb78b59f8b94a8662dd122bc1aca013cc69c7c\",\"dweb:/ipfs/QmdsELzf5enAbpe5ERXRJgyg2PvtiAUiiX7dT85BLtKpCM\"]},\"lib/ERC1155-puppet/IERC1155System.sol\":{\"keccak256\":\"0x324481afcc10bb871430340e0ddea5613a7a7dc7436ad8067b64e787791d9c74\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cbf2f86e7c18feb303c9201417a85af320f148907fa637b25b56e7484325d64c\",\"dweb:/ipfs/QmW35pffC8PK5Y7afxLc6qYYiDjH4NayRggogPazy5JsEi\"]},\"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/interfaces/IERC20System.sol\":{\"keccak256\":\"0xedfc9636840fcf8c665f0535b0e9469ba191a2b028d6913dcd7a134dc9844ec1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d9cc01f46fd862d4cb5a5efd93911c5b98420112ab999d46f0c24fec74a58b4b\",\"dweb:/ipfs/QmXrpDMPj7VS8ywkt4mkhE1FatJcQtR2gCAwr7aEYonmrg\"]},\"node_modules/@latticexyz/world-modules/src/modules/erc721-puppet/IERC721.sol\":{\"keccak256\":\"0x87b18a3fe819a06930749c60912e28d3add40de2881d976d4d7565858468ac8e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://90d6f52696977e65bbc4a3d937ac4be843e2d1006591b861b2b3038c7a7e1d16\",\"dweb:/ipfs/QmS2vsjycwSgGPgWrPEDdFK5WTvE6ixhzYQLL57xHJAXNv\"]},\"node_modules/@latticexyz/world-modules/src/modules/erc721-puppet/IERC721Errors.sol\":{\"keccak256\":\"0xc408b8c878980829678cf94ca6d83c71c0587e802221d226c84b66c60a198903\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9a04ce4eafe37b18476b4dbbd207eff2e33b1ea073a06d5ff8df8e08aa69ac47\",\"dweb:/ipfs/QmTqKcfCXBntqtEcGobHMTJyy37xv93t1342RvqtpgnDQx\"]},\"node_modules/@latticexyz/world-modules/src/modules/erc721-puppet/IERC721Events.sol\":{\"keccak256\":\"0x4ea76f18fbb68319807fe1fa39d3035b8177bd30c3977c40ed41e9810ffebb13\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2f0508d70a34ce0661e52b4201996bea5e61e0108a4a218acc3728be5d51fbc2\",\"dweb:/ipfs/QmQx9bX9cYUENRvXV55NhHL3TFiNXGqvVyy8aYDA1KCagn\"]},\"node_modules/@latticexyz/world-modules/src/modules/erc721-puppet/IERC721Mintable.sol\":{\"keccak256\":\"0xa647391a56ac17e6e73a5fb04d641c8a97abde19a7da80a8fc80902d7cce36aa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://862f638b4e4b300067f6a485580ec904d428281de46e3a186b558ff3e15e4733\",\"dweb:/ipfs/QmUkgdfZJtwyBSrCyckw9GVFrZsD1rUAK2Nd3GBH12duLo\"]},\"node_modules/@latticexyz/world-modules/src/modules/erc721-puppet/constants.sol\":{\"keccak256\":\"0xf8a29616bcb176258295bae6dcb8c9eada8e18812c823c3490ff238370f3a64d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f800f102f773e4c5b2281b44a9f477d7a4d7dca13ddb369fa0d4479cddbfb04c\",\"dweb:/ipfs/QmSiqQuHY8cPTXkpnK3NyZCkeATzjYNpoR8vrijrfLdwqn\"]},\"node_modules/@latticexyz/world-modules/src/modules/erc721-puppet/tables/TokenURI.sol\":{\"keccak256\":\"0x7fe5517ff1843d9fe70dd37beb18a954efe3c62f2d484fbf8e0646f22a1493a7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://abc83f7656b5a33f695d900f9da3fb5896054a41eb0f5c963d2b01794a8461e3\",\"dweb:/ipfs/QmWXV2jZ8Tp3k4zNyqG3GNN9SchsDK1zSQwFXCvEGmnRuy\"]},\"node_modules/@latticexyz/world-modules/src/modules/erc721-puppet/utils.sol\":{\"keccak256\":\"0xd497c2610d37ef3b800e3aef80d36661c60b5e36325565c3bc5c3ce986b641a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7406b572bdef593e1a8d0faaa94e9869108fc2cc7955da3aa3a62a56428c9a0c\",\"dweb:/ipfs/QmPKnuzAkPVyhpJz25fNCfGcvyPPZZWgsm5QbKZva82EWS\"]},\"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/@pythnetwork/entropy-sdk-solidity/EntropyEvents.sol\":{\"keccak256\":\"0xd8a8c77c864481ee7620adf8b92219f3c68c626271887e26330362642053f504\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://f918e6fcdf4cc8c991ff4c7d81860c6b0e3b4b536e543361309cfecd8a8ecf67\",\"dweb:/ipfs/QmdBuzs7dyGGaceP4QDqu3MLnqeBLbsEpCKGWyz3a9kY8v\"]},\"node_modules/@pythnetwork/entropy-sdk-solidity/EntropyStructs.sol\":{\"keccak256\":\"0xace052155e23df810ba04a93da02fc527efd0a6fd9244d95574af5d8891934e7\",\"license\":\"Apache 2\",\"urls\":[\"bzz-raw://31d77a8a3cfb552c684867ec96bb8ea0e59573db7d3108cd561b03e4749fd415\",\"dweb:/ipfs/QmepPDf6digkAGepANKv3yW8d5QqmJQqWjgmWSzNJVkMLq\"]},\"node_modules/@pythnetwork/entropy-sdk-solidity/IEntropy.sol\":{\"keccak256\":\"0x9d4556ea3b36960a43e6f4c2df53f5e4ffa980deaa2c15bfdefc5f66258ca748\",\"license\":\"Apache 2\",\"urls\":[\"bzz-raw://21d4bded2b3b30f3ced6ea24694e3b04bb94cab28796ee2786720a80e0b73bdd\",\"dweb:/ipfs/QmQfBFzSZj9cNxne8izUE1fYvfFoGjAisUa3aeh2YYDuqc\"]},\"node_modules/@pythnetwork/entropy-sdk-solidity/IEntropyConsumer.sol\":{\"keccak256\":\"0xf3d3dee1e9cbdef70b6c1f4d79aa8b438413e4636c00e79e615da9dc4df9c379\",\"license\":\"Apache 2\",\"urls\":[\"bzz-raw://0e473522447c8f92a43f4fa3e54d83a789e12cc44b2a86847bd238a7f8827952\",\"dweb:/ipfs/Qmdihx73a89EZYy2GpitTxK92SWDLyPWeWnJTZ4Acva958\"]},\"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\":\"0x84ff02d4275be694bfbe1e60e24539a891dda5df3bacf04f0eb2a974425603d0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f88775b86cdc8322742e528072b64d01df3d3ef70d4fc5104412522e468ae4e2\",\"dweb:/ipfs/Qme75CeS2sA8pr1Tyx9GN5atmuG4aBGjMPaagaGtYTjc2R\"]},\"src/codegen/tables/Actions.sol\":{\"keccak256\":\"0x63cd48bebaa0414728e9be2c856e4eb01efaead6627a6615da4c77b886805cef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1dfe138555b67362f41c26ce1ab074bfc1fcc4e7c6fd0284b82cc699d80d392\",\"dweb:/ipfs/QmNf8UGE3FZ4U96HkeioE4peWWz1SKPAjhKRrGnpEnCdkQ\"]},\"src/codegen/tables/Admin.sol\":{\"keccak256\":\"0xe3b7e993ca2e420d73b845fb37388d453486e24522b941503a2f81c639769725\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e638c35d3ec5805180122b70849bd3a93aa680f3251ac9e7fe4f0ff24722f614\",\"dweb:/ipfs/QmVL3xJPrsVDgXQTdxBEkq4PRmyNDCFHGHKJxLQzuFy9XJ\"]},\"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/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\":\"0x1f0b21a82c18d474347446546973619289392ee9cc745eccbfb4ba802771b2e2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f0a514e9aa8c0265e8ac7284587cdfec829ad4904e511a284d44a325f9ee511b\",\"dweb:/ipfs/QmYGbphJpnBQMsTEtAM78kqH56FrzrmBFVNthRM4WLdUSQ\"]},\"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\":\"0xe941a99c5bc6b4f21b69b4ad61870a3c4b35fa3a7d8e162c75ac3e7515717891\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://eaa285996201485c500f114b98515ce121d87ec29780085dc509d32dff96b227\",\"dweb:/ipfs/QmbnDdw5KqwfGspTKgikXCkvn6Gi6mVWca2yXiPoumhEJP\"]},\"src/codegen/tables/UltimateDominionConfig.sol\":{\"keccak256\":\"0x6f439f3fef2c4db3b295718bb3e277f59500a3183f2306fe70890a30c3eeff26\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bde32ff627c137c1b52e6f45ff82df52eee9e6fe8fa668fc791132dba187f256\",\"dweb:/ipfs/Qmcj4S8ysUA1Lv8xbA5i1dzn4wwKPQrCEjpUd1MW6rh21w\"]},\"src/codegen/world/IActionSystem.sol\":{\"keccak256\":\"0x3ea10f6af2b29e07f658e961113a68db383bb5df7ec853bd797bd1cc14d19b0d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c834cb0bb80ffe10c6175f8a16b827dde9804d459e6aa33691484e419587d47f\",\"dweb:/ipfs/QmXnLXquHjNXN8CCsEL3NPNrQHW6UWY78oginRPtcHZFcw\"]},\"src/codegen/world/ICharacterSystem.sol\":{\"keccak256\":\"0x54157279932a37b055d247901f034848c1f0bffbf262028cf9c69eeedc9b7235\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ead77ae9ab020f705a998be6229e975b9352486deaa9aa800b6de10338190782\",\"dweb:/ipfs/QmaLrytghaAH6ipaBr4XwsaBcCzeVa5gujHGRNxeztuo4X\"]},\"src/codegen/world/ICombatSystem.sol\":{\"keccak256\":\"0x8b522a844626b33d69ae186dd26f2f7bfd921bf92ed7ed0cee2b8c349d9b64f9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://647f99949a4584cf4b528415ffea01ad243147548455fe5a8373b042b6af3087\",\"dweb:/ipfs/QmYsgXQDTwrqg7YSJkKtiNZzf63f4jdA4xfni5gb9ap5K5\"]},\"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\":\"0xc6caadf1800d688083c234a12cd151746f0271be03a50bb6a654634270ab0864\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://084766afac89e6f74162f69534635f90ec56570019223e22d20342f7853fb4e0\",\"dweb:/ipfs/QmbrQXrTewfgW2NydLgPCdt3Vton5V7nfE7HViXtyrMnoK\"]},\"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\":\"0xfb774a3d4388291fa5bae54bf1c592cc366a0585e6d24388dfeebaf3abd666b4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0986371fcb9f53bac88f2c190faf0f5a77fac686eced664aed5f2f1eb6eaca64\",\"dweb:/ipfs/QmWdgLEV31t27nNQC1KGEfaZHFcuBUayxHm2giZJpAG8hv\"]},\"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/systems/CharacterSystem.sol\":{\"keccak256\":\"0x2d85d572da7e3e926a21e3ee464616d739cdea77f4aad1bd4a9e7af71d3da488\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://33cfed9d7ab860d8662aad43f26548c1a29aab365af93b0f38e26a958161b465\",\"dweb:/ipfs/Qmdz2hKBD39WCNWksM1rTxLtMdAbBCbwfcnyqAPbgGEJpN\"]},\"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":"uint256","name":"length","type":"uint256"}],"type":"error","name":"EncodedLengths_InvalidLength"},{"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":"uint256","name":"length","type":"uint256"},{"internalType":"uint256","name":"accessedIndex","type":"uint256"}],"type":"error","name":"Store_IndexOutOfBounds"},{"inputs":[{"internalType":"bytes2","name":"expected","type":"bytes2"},{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"Store_InvalidResourceType"},{"inputs":[{"internalType":"uint40","name":"startWithinField","type":"uint40"},{"internalType":"uint40","name":"deleteCount","type":"uint40"},{"internalType":"uint40","name":"fieldLength","type":"uint40"}],"type":"error","name":"Store_InvalidSplice"},{"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":"uint8","name":"dynamicFieldIndex","type":"uint8","indexed":false},{"internalType":"uint48","name":"start","type":"uint48","indexed":false},{"internalType":"uint40","name":"deleteCount","type":"uint40","indexed":false},{"internalType":"EncodedLengths","name":"encodedLengths","type":"bytes32","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Store_SpliceDynamicData","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":"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":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"enterGame"},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"pure","type":"function","name":"getCharacterTokenId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getClass","outputs":[{"internalType":"enum Classes","name":"_class","type":"uint8"}]},{"inputs":[{"internalType":"uint256","name":"experience","type":"uint256"}],"stateMutability":"view","type":"function","name":"getCurrentAvailableLevel","outputs":[{"internalType":"uint256","name":"currentLevel","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getExperience","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getName","outputs":[{"internalType":"bytes32","name":"_name","type":"bytes32"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"pure","type":"function","name":"getOwnerAddress","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"uint256","name":"characterTokenId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getPlayerEntityId","outputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getStats","outputs":[{"internalType":"struct StatsData","name":"","type":"tuple","components":[{"internalType":"uint256","name":"strength","type":"uint256"},{"internalType":"uint256","name":"agility","type":"uint256"},{"internalType":"enum Classes","name":"class","type":"uint8"},{"internalType":"uint256","name":"intelligence","type":"uint256"},{"internalType":"uint256","name":"baseHitPoints","type":"uint256"},{"internalType":"int256","name":"currentHp","type":"int256"},{"internalType":"uint256","name":"experience","type":"uint256"},{"internalType":"uint256","name":"level","type":"uint256"}]}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"isValidCharacterId","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"view","type":"function","name":"isValidOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bytes32","name":"name","type":"bytes32"},{"internalType":"string","name":"tokenUri","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"mintCharacter","outputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}]},{"inputs":[{"internalType":"bytes32","name":"userRandomNumber","type":"bytes32"},{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"enum Classes","name":"class","type":"uint8"}],"stateMutability":"payable","type":"function","name":"rollStats"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"pure","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"string","name":"tokenUri","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"updateTokenUri"}],"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."}},"getOwnerAddress(bytes32)":{"details":"extracts the character nft owner address from the character Id"},"mintCharacter(address,bytes32,string)":{"params":{"account":"the address of the account that will own the character","name":"the keccack256 hash of the characters name to check for duplicates","tokenUri":"the token uri to be set for the character token"},"returns":{"characterId":"the bytes32 character id combination of the owner address and the tokenId"}},"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/CharacterSystem.sol":"CharacterSystem"},"evmVersion":"paris","libraries":{}},"sources":{"constants.sol":{"keccak256":"0xdd3ebcb4c411e951e1d5c68d6287c597f8f6ab874b48ae96600e024326bd7059","urls":["bzz-raw://61cf2ec85c2dcfde0de8d6c12cdb78b59f8b94a8662dd122bc1aca013cc69c7c","dweb:/ipfs/QmdsELzf5enAbpe5ERXRJgyg2PvtiAUiiX7dT85BLtKpCM"],"license":"MIT"},"lib/ERC1155-puppet/IERC1155System.sol":{"keccak256":"0x324481afcc10bb871430340e0ddea5613a7a7dc7436ad8067b64e787791d9c74","urls":["bzz-raw://cbf2f86e7c18feb303c9201417a85af320f148907fa637b25b56e7484325d64c","dweb:/ipfs/QmW35pffC8PK5Y7afxLc6qYYiDjH4NayRggogPazy5JsEi"],"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/interfaces/IERC20System.sol":{"keccak256":"0xedfc9636840fcf8c665f0535b0e9469ba191a2b028d6913dcd7a134dc9844ec1","urls":["bzz-raw://d9cc01f46fd862d4cb5a5efd93911c5b98420112ab999d46f0c24fec74a58b4b","dweb:/ipfs/QmXrpDMPj7VS8ywkt4mkhE1FatJcQtR2gCAwr7aEYonmrg"],"license":"MIT"},"node_modules/@latticexyz/world-modules/src/modules/erc721-puppet/IERC721.sol":{"keccak256":"0x87b18a3fe819a06930749c60912e28d3add40de2881d976d4d7565858468ac8e","urls":["bzz-raw://90d6f52696977e65bbc4a3d937ac4be843e2d1006591b861b2b3038c7a7e1d16","dweb:/ipfs/QmS2vsjycwSgGPgWrPEDdFK5WTvE6ixhzYQLL57xHJAXNv"],"license":"MIT"},"node_modules/@latticexyz/world-modules/src/modules/erc721-puppet/IERC721Errors.sol":{"keccak256":"0xc408b8c878980829678cf94ca6d83c71c0587e802221d226c84b66c60a198903","urls":["bzz-raw://9a04ce4eafe37b18476b4dbbd207eff2e33b1ea073a06d5ff8df8e08aa69ac47","dweb:/ipfs/QmTqKcfCXBntqtEcGobHMTJyy37xv93t1342RvqtpgnDQx"],"license":"MIT"},"node_modules/@latticexyz/world-modules/src/modules/erc721-puppet/IERC721Events.sol":{"keccak256":"0x4ea76f18fbb68319807fe1fa39d3035b8177bd30c3977c40ed41e9810ffebb13","urls":["bzz-raw://2f0508d70a34ce0661e52b4201996bea5e61e0108a4a218acc3728be5d51fbc2","dweb:/ipfs/QmQx9bX9cYUENRvXV55NhHL3TFiNXGqvVyy8aYDA1KCagn"],"license":"MIT"},"node_modules/@latticexyz/world-modules/src/modules/erc721-puppet/IERC721Mintable.sol":{"keccak256":"0xa647391a56ac17e6e73a5fb04d641c8a97abde19a7da80a8fc80902d7cce36aa","urls":["bzz-raw://862f638b4e4b300067f6a485580ec904d428281de46e3a186b558ff3e15e4733","dweb:/ipfs/QmUkgdfZJtwyBSrCyckw9GVFrZsD1rUAK2Nd3GBH12duLo"],"license":"MIT"},"node_modules/@latticexyz/world-modules/src/modules/erc721-puppet/constants.sol":{"keccak256":"0xf8a29616bcb176258295bae6dcb8c9eada8e18812c823c3490ff238370f3a64d","urls":["bzz-raw://f800f102f773e4c5b2281b44a9f477d7a4d7dca13ddb369fa0d4479cddbfb04c","dweb:/ipfs/QmSiqQuHY8cPTXkpnK3NyZCkeATzjYNpoR8vrijrfLdwqn"],"license":"MIT"},"node_modules/@latticexyz/world-modules/src/modules/erc721-puppet/tables/TokenURI.sol":{"keccak256":"0x7fe5517ff1843d9fe70dd37beb18a954efe3c62f2d484fbf8e0646f22a1493a7","urls":["bzz-raw://abc83f7656b5a33f695d900f9da3fb5896054a41eb0f5c963d2b01794a8461e3","dweb:/ipfs/QmWXV2jZ8Tp3k4zNyqG3GNN9SchsDK1zSQwFXCvEGmnRuy"],"license":"MIT"},"node_modules/@latticexyz/world-modules/src/modules/erc721-puppet/utils.sol":{"keccak256":"0xd497c2610d37ef3b800e3aef80d36661c60b5e36325565c3bc5c3ce986b641a5","urls":["bzz-raw://7406b572bdef593e1a8d0faaa94e9869108fc2cc7955da3aa3a62a56428c9a0c","dweb:/ipfs/QmPKnuzAkPVyhpJz25fNCfGcvyPPZZWgsm5QbKZva82EWS"],"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/@pythnetwork/entropy-sdk-solidity/EntropyEvents.sol":{"keccak256":"0xd8a8c77c864481ee7620adf8b92219f3c68c626271887e26330362642053f504","urls":["bzz-raw://f918e6fcdf4cc8c991ff4c7d81860c6b0e3b4b536e543361309cfecd8a8ecf67","dweb:/ipfs/QmdBuzs7dyGGaceP4QDqu3MLnqeBLbsEpCKGWyz3a9kY8v"],"license":"Apache-2.0"},"node_modules/@pythnetwork/entropy-sdk-solidity/EntropyStructs.sol":{"keccak256":"0xace052155e23df810ba04a93da02fc527efd0a6fd9244d95574af5d8891934e7","urls":["bzz-raw://31d77a8a3cfb552c684867ec96bb8ea0e59573db7d3108cd561b03e4749fd415","dweb:/ipfs/QmepPDf6digkAGepANKv3yW8d5QqmJQqWjgmWSzNJVkMLq"],"license":"Apache 2"},"node_modules/@pythnetwork/entropy-sdk-solidity/IEntropy.sol":{"keccak256":"0x9d4556ea3b36960a43e6f4c2df53f5e4ffa980deaa2c15bfdefc5f66258ca748","urls":["bzz-raw://21d4bded2b3b30f3ced6ea24694e3b04bb94cab28796ee2786720a80e0b73bdd","dweb:/ipfs/QmQfBFzSZj9cNxne8izUE1fYvfFoGjAisUa3aeh2YYDuqc"],"license":"Apache 2"},"node_modules/@pythnetwork/entropy-sdk-solidity/IEntropyConsumer.sol":{"keccak256":"0xf3d3dee1e9cbdef70b6c1f4d79aa8b438413e4636c00e79e615da9dc4df9c379","urls":["bzz-raw://0e473522447c8f92a43f4fa3e54d83a789e12cc44b2a86847bd238a7f8827952","dweb:/ipfs/Qmdihx73a89EZYy2GpitTxK92SWDLyPWeWnJTZ4Acva958"],"license":"Apache 2"},"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":"0x84ff02d4275be694bfbe1e60e24539a891dda5df3bacf04f0eb2a974425603d0","urls":["bzz-raw://f88775b86cdc8322742e528072b64d01df3d3ef70d4fc5104412522e468ae4e2","dweb:/ipfs/Qme75CeS2sA8pr1Tyx9GN5atmuG4aBGjMPaagaGtYTjc2R"],"license":"MIT"},"src/codegen/tables/Actions.sol":{"keccak256":"0x63cd48bebaa0414728e9be2c856e4eb01efaead6627a6615da4c77b886805cef","urls":["bzz-raw://c1dfe138555b67362f41c26ce1ab074bfc1fcc4e7c6fd0284b82cc699d80d392","dweb:/ipfs/QmNf8UGE3FZ4U96HkeioE4peWWz1SKPAjhKRrGnpEnCdkQ"],"license":"MIT"},"src/codegen/tables/Admin.sol":{"keccak256":"0xe3b7e993ca2e420d73b845fb37388d453486e24522b941503a2f81c639769725","urls":["bzz-raw://e638c35d3ec5805180122b70849bd3a93aa680f3251ac9e7fe4f0ff24722f614","dweb:/ipfs/QmVL3xJPrsVDgXQTdxBEkq4PRmyNDCFHGHKJxLQzuFy9XJ"],"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/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":"0x1f0b21a82c18d474347446546973619289392ee9cc745eccbfb4ba802771b2e2","urls":["bzz-raw://f0a514e9aa8c0265e8ac7284587cdfec829ad4904e511a284d44a325f9ee511b","dweb:/ipfs/QmYGbphJpnBQMsTEtAM78kqH56FrzrmBFVNthRM4WLdUSQ"],"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":"0xe941a99c5bc6b4f21b69b4ad61870a3c4b35fa3a7d8e162c75ac3e7515717891","urls":["bzz-raw://eaa285996201485c500f114b98515ce121d87ec29780085dc509d32dff96b227","dweb:/ipfs/QmbnDdw5KqwfGspTKgikXCkvn6Gi6mVWca2yXiPoumhEJP"],"license":"MIT"},"src/codegen/tables/UltimateDominionConfig.sol":{"keccak256":"0x6f439f3fef2c4db3b295718bb3e277f59500a3183f2306fe70890a30c3eeff26","urls":["bzz-raw://bde32ff627c137c1b52e6f45ff82df52eee9e6fe8fa668fc791132dba187f256","dweb:/ipfs/Qmcj4S8ysUA1Lv8xbA5i1dzn4wwKPQrCEjpUd1MW6rh21w"],"license":"MIT"},"src/codegen/world/IActionSystem.sol":{"keccak256":"0x3ea10f6af2b29e07f658e961113a68db383bb5df7ec853bd797bd1cc14d19b0d","urls":["bzz-raw://c834cb0bb80ffe10c6175f8a16b827dde9804d459e6aa33691484e419587d47f","dweb:/ipfs/QmXnLXquHjNXN8CCsEL3NPNrQHW6UWY78oginRPtcHZFcw"],"license":"MIT"},"src/codegen/world/ICharacterSystem.sol":{"keccak256":"0x54157279932a37b055d247901f034848c1f0bffbf262028cf9c69eeedc9b7235","urls":["bzz-raw://ead77ae9ab020f705a998be6229e975b9352486deaa9aa800b6de10338190782","dweb:/ipfs/QmaLrytghaAH6ipaBr4XwsaBcCzeVa5gujHGRNxeztuo4X"],"license":"MIT"},"src/codegen/world/ICombatSystem.sol":{"keccak256":"0x8b522a844626b33d69ae186dd26f2f7bfd921bf92ed7ed0cee2b8c349d9b64f9","urls":["bzz-raw://647f99949a4584cf4b528415ffea01ad243147548455fe5a8373b042b6af3087","dweb:/ipfs/QmYsgXQDTwrqg7YSJkKtiNZzf63f4jdA4xfni5gb9ap5K5"],"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":"0xc6caadf1800d688083c234a12cd151746f0271be03a50bb6a654634270ab0864","urls":["bzz-raw://084766afac89e6f74162f69534635f90ec56570019223e22d20342f7853fb4e0","dweb:/ipfs/QmbrQXrTewfgW2NydLgPCdt3Vton5V7nfE7HViXtyrMnoK"],"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":"0xfb774a3d4388291fa5bae54bf1c592cc366a0585e6d24388dfeebaf3abd666b4","urls":["bzz-raw://0986371fcb9f53bac88f2c190faf0f5a77fac686eced664aed5f2f1eb6eaca64","dweb:/ipfs/QmWdgLEV31t27nNQC1KGEfaZHFcuBUayxHm2giZJpAG8hv"],"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/systems/CharacterSystem.sol":{"keccak256":"0x2d85d572da7e3e926a21e3ee464616d739cdea77f4aad1bd4a9e7af71d3da488","urls":["bzz-raw://33cfed9d7ab860d8662aad43f26548c1a29aab365af93b0f38e26a958161b465","dweb:/ipfs/Qmdz2hKBD39WCNWksM1rTxLtMdAbBCbwfcnyqAPbgGEJpN"],"license":"MIT"},"src/utils.sol":{"keccak256":"0xf50d451bb280fb33e08f521e168952f5145e69eee7df284ffeb1865b8b5187cc","urls":["bzz-raw://a78e6326639bdf19f606921e48c90663f387cbfd7d8160a461838e9ca6a0fc57","dweb:/ipfs/QmPT6PNCCQKWVP9bwYC4JyfuXJSgbupsgq6MT898gYfa1q"],"license":"MIT"}},"version":1},"id":211} \ No newline at end of file +{"abi":[{"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":"enterGame","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"getCharacterTokenId","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"pure"},{"type":"function","name":"getClass","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"_class","type":"uint8","internalType":"enum Classes"}],"stateMutability":"view"},{"type":"function","name":"getCurrentAvailableLevel","inputs":[{"name":"experience","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"currentLevel","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getExperience","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getName","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"_name","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getOwner","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getOwnerAddress","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"getPlayerEntityId","inputs":[{"name":"characterTokenId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getStats","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"tuple","internalType":"struct StatsData","components":[{"name":"strength","type":"uint256","internalType":"uint256"},{"name":"agility","type":"uint256","internalType":"uint256"},{"name":"class","type":"uint8","internalType":"enum Classes"},{"name":"intelligence","type":"uint256","internalType":"uint256"},{"name":"baseHp","type":"uint256","internalType":"uint256"},{"name":"currentHp","type":"int256","internalType":"int256"},{"name":"experience","type":"uint256","internalType":"uint256"},{"name":"level","type":"uint256","internalType":"uint256"}]}],"stateMutability":"view"},{"type":"function","name":"isValidCharacterId","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isValidOwner","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"owner","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"mintCharacter","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"name","type":"bytes32","internalType":"bytes32"},{"name":"tokenUri","type":"string","internalType":"string"}],"outputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"stateMutability":"nonpayable"},{"type":"function","name":"rollStats","inputs":[{"name":"userRandomNumber","type":"bytes32","internalType":"bytes32"},{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"class","type":"uint8","internalType":"enum Classes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"pure"},{"type":"function","name":"updateTokenUri","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"tokenUri","type":"string","internalType":"string"}],"outputs":[],"stateMutability":"nonpayable"},{"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_SpliceDynamicData","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","indexed":false,"internalType":"uint8"},{"name":"start","type":"uint48","indexed":false,"internalType":"uint48"},{"name":"deleteCount","type":"uint40","indexed":false,"internalType":"uint40"},{"name":"encodedLengths","type":"bytes32","indexed":false,"internalType":"EncodedLengths"},{"name":"data","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":"EncodedLengths_InvalidLength","inputs":[{"name":"length","type":"uint256","internalType":"uint256"}]},{"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":"Store_IndexOutOfBounds","inputs":[{"name":"length","type":"uint256","internalType":"uint256"},{"name":"accessedIndex","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidResourceType","inputs":[{"name":"expected","type":"bytes2","internalType":"bytes2"},{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"Store_InvalidSplice","inputs":[{"name":"startWithinField","type":"uint40","internalType":"uint40"},{"name":"deleteCount","type":"uint40","internalType":"uint40"},{"name":"fieldLength","type":"uint40","internalType":"uint40"}]},{"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":"0x608060405234801561001057600080fd5b5061497d806100206000396000f3fe6080604052600436106101435760003560e01c8063623daa05116100c0578063c74dedc811610074578063e1af802c11610059578063e1af802c14610380578063ebee03bb14610395578063f8c67561146103b557600080fd5b8063c74dedc814610340578063deb931a21461036057600080fd5b80638338f0e0116100a55780638338f0e0146102e05780639b63ec0514610300578063b27cbcbb1461032057600080fd5b8063623daa05146102ab578063679ee16d146102cb57600080fd5b8063143f30211161011757806323801570116100fc578063238015701461024657806345ec93541461027357806354b8d5e31461028b57600080fd5b8063143f3021146101f85780631ecb393f1461022657600080fd5b8062d43ec61461014857806301ffc9a7146101865780630bb700dc146101b6578063119df25f146101e3575b600080fd5b34801561015457600080fd5b50610169610163366004613e65565b60601c90565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561019257600080fd5b506101a66101a1366004613e7e565b6103e1565b604051901515815260200161017d565b3480156101c257600080fd5b506101d66101d1366004613e65565b61047a565b60405161017d9190613ef7565b3480156101ef57600080fd5b5061016961048b565b34801561020457600080fd5b50610218610213366004614032565b61049a565b60405190815260200161017d565b34801561023257600080fd5b50610218610241366004613e65565b6106fc565b34801561025257600080fd5b50610266610261366004613e65565b61077a565b60405161017d919061408b565b34801561027f57600080fd5b5036601f190135610218565b34801561029757600080fd5b506102186102a6366004613e65565b610785565b3480156102b757600080fd5b506101a66102c6366004613e65565b610790565b6102de6102d936600461409e565b6108bc565b005b3480156102ec57600080fd5b506102186102fb366004613e65565b610a34565b34801561030c57600080fd5b506101a661031b3660046140db565b610ac9565b34801561032c57600080fd5b506102de61033b36600461410b565b610b90565b34801561034c57600080fd5b506102de61035b366004613e65565b610c01565b34801561036c57600080fd5b5061016961037b366004613e65565b610dd1565b34801561038c57600080fd5b50610169610ddc565b3480156103a157600080fd5b506102186103b0366004613e65565b610de6565b3480156103c157600080fd5b506102186103d0366004613e65565b6bffffffffffffffffffffffff1690565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee12700000000000000000000000000000000000000000000000000000000148061047457507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b610482613e0f565b61047482610df1565b6000610495610ea3565b905090565b6000806104a5610ed5565b90506bffffffffffffffffffffffff811061052d5760405162461bcd60e51b815260206004820152602360248201527f43484152414341544552533a204d61782063686172616374657273207265616360448201527f686564000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b610535610ddc565b6001600160a01b0316633ae7af0861056c7f4368617261637465727300000000000000000000000000000000000000000000610f08565b6040516001600160a01b03891660248201526044810185905260640160408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f40c10f1900000000000000000000000000000000000000000000000000000000179052517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526106189291906004016141a2565b6000604051808303816000875af1158015610637573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261065f9190810190614200565b5061066981610a34565b91506106758286610f55565b61067f8282611024565b610688846110a3565b156106d55760405162461bcd60e51b815260206004820152601360248201527f4e616d6520616c726561647920657869737473000000000000000000000000006044820152606401610524565b6106e0846001611148565b6106ea8285611201565b6106f48184611280565b509392505050565b600061070860136112b3565b821061071657506014919050565b60005b6014811015610774578261072c826112b3565b1115801561074b57508261074961074483600161424b565b6112b3565b115b156107625761075b81600161424b565b9150610774565b8061076c8161425e565b915050610719565b50919050565b60006104748261132f565b6000610474826113d9565b60008061079d8360601c90565b90506bffffffffffffffffffffffff831660006107b861146b565b6001600160a01b0316636352211e836040518263ffffffff1660e01b81526004016107e591815260200190565b602060405180830381865afa92505050801561081e575060408051601f3d908101601f1916820190925261081b91810190614278565b60015b1561089d5761082b61146b565b6001600160a01b0316636352211e846040518263ffffffff1660e01b815260040161085891815260200190565b602060405180830381865afa158015610875573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108999190614278565b9150505b826001600160a01b0316816001600160a01b0316149350505050919050565b6108c582611475565b156109385760405162461bcd60e51b815260206004820152602b60248201527f434841524143544552533a2063686172616374657220616c726561647920696e60448201527f2067616d6520776f726c640000000000000000000000000000000000000000006064820152608401610524565b61094182611507565b61098d5760405162461bcd60e51b815260206004820152601360248201527f4e6f7420796f7572204368617261637465722e000000000000000000000000006044820152606401610524565b600061099983836115c3565b610a2d8482856040516020016109b191815260200190565b60408051601f19818403018152908290526109d0939291602401614295565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb2aa60a4000000000000000000000000000000000000000000000000000000001790526116ac565b5050505050565b600080610a3f61146b565b6001600160a01b0316636352211e846040518263ffffffff1660e01b8152600401610a6c91815260200190565b602060405180830381865afa158015610a89573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aad9190614278565b60601b6bffffffffffffffffffffffff19169290921792915050565b6000610ad483610790565b8015610b895750816001600160a01b0316610aed61146b565b6040517f6352211e0000000000000000000000000000000000000000000000000000000081526bffffffffffffffffffffffff861660048201526001600160a01b039190911690636352211e90602401602060405180830381865afa158015610b5a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b7e9190614278565b6001600160a01b0316145b9392505050565b610b9982611507565b610be55760405162461bcd60e51b815260206004820152601a60248201527f434841524143544552533a204e4f5420415554484f52495a45440000000000006044820152606401610524565b610bfd6bffffffffffffffffffffffff831682611280565b5050565b610c0a81611507565b610c565760405162461bcd60e51b815260206004820152601260248201527f6e6f7420796f75722063686172616374657200000000000000000000000000006044820152606401610524565b610c5f81611475565b15610cac5760405162461bcd60e51b815260206004820152601960248201527f796f75206861766520656e7465726564207468652067616d65000000000000006044820152606401610524565b6000610cb782610df1565b600160e0820152608081015160a08201529050610cd4828261175a565b610cdc610ddc565b6040517ffda0ce5000000000000000000000000000000000000000000000000000000000815260048101849052674563918244f4000060248201526001600160a01b03919091169063fda0ce5090604401600060405180830381600087803b158015610d4757600080fd5b505af1158015610d5b573d6000803e3d6000fd5b50505050610d67610ddc565b6001600160a01b031663f9d175ed836040518263ffffffff1660e01b8152600401610d9491815260200190565b600060405180830381600087803b158015610dae57600080fd5b505af1158015610dc2573d6000803e3d6000fd5b50505050610bfd82600161180b565b60006104748261188f565b600061049561192c565b600061047482611936565b610df9613e0f565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110610e2f57610e2f6142bd565b602090810291909101015260008080610e887f7462554400000000000000000000000053746174730000000000000000000000857ee10800202001202020202000000000000000000000000000000000000000006119c8565b925092509250610e99838383611a98565b9695505050505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c80610ed25750335b90565b600080610ee0611b10565b90506000610eef826000611b78565b610efa90600161424b565b905061047482600083611c29565b60006104747f7379000000000000000000000000000000000000000000000000000000000000837f45524337323153797374656d0000000000000000000000000000000000000000611cf9565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110610f8b57610f8b6142bd565b60200260200101818152505061101f7f746255440000000000000000000000004368617261637465727300000000000060001b82600185604051602001610fea919060609190911b6bffffffffffffffffffffffff1916815260140190565b60408051601f198184030181529190527e55040020142001000000000000000000000000000000000000000000000000611d70565b505050565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061105a5761105a6142bd565b60200260200101818152505061101f7f746255440000000000000000000000004368617261637465727300000000000060001b82600085604051602001610fea91815260200190565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106110dc576110dc6142bd565b602090810291909101015260006111347f746255440000000000000000000000004e616d6545786973747300000000000083837e01010001000000000000000000000000000000000000000000000000000000611e25565b90506111408160f81c90565b949350505050565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061117e5761117e6142bd565b60200260200101818152505061101f7f746255440000000000000000000000004e616d6545786973747300000000000060001b826000856040516020016111cc91151560f81b815260010190565b60408051601f198184030181529190527e01010001000000000000000000000000000000000000000000000000000000611d70565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110611237576112376142bd565b60200260200101818152505061101f7f746255440000000000000000000000004368617261637465727300000000000060001b82600285604051602001610fea91815260200190565b610bfd6112ac7f4368617261637465727300000000000000000000000000000000000000000000611ee2565b8383611f2f565b604080516001808252818301909252600091829190602080830190803683370190505090508260001b816000815181106112ef576112ef6142bd565b602090810291909101015260006111407f746255440000000000000000000000004c6576656c73000000000000000000008383630100080160dd1b611e25565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110611368576113686142bd565b602090810291909101015260006113c17f74625544000000000000000000000000537461747300000000000000000000008360027ee1080020200120202020200000000000000000000000000000000000000000611e25565b905060f881901c600281111561114057611140613ec0565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110611412576114126142bd565b602090810291909101015260006111407f74625544000000000000000000000000436861726163746572730000000000008360027e55040020142001000000000000000000000000000000000000000000000000611e25565b6000610495611b10565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106114ae576114ae6142bd565b602090810291909101015260006111347f74625544000000000000000000000000436861726163746572730000000000008360037e55040020142001000000000000000000000000000000000000000000000000611e25565b600061151161146b565b6040517f6352211e0000000000000000000000000000000000000000000000000000000081526bffffffffffffffffffffffff841660048201526001600160a01b039190911690636352211e90602401602060405180830381865afa15801561157e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115a29190614278565b6001600160a01b03166115b361048b565b6001600160a01b03161492915050565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106115f9576115f96142bd565b602090810291909101015261101f7f7462554400000000000000000000000053746174730000000000000000000000826002858181111561163c5761163c613ec0565b604051602001611677919060f89190911b7fff0000000000000000000000000000000000000000000000000000000000000016815260010190565b60408051601f198184030181529190527ee1080020200120202020200000000000000000000000000000000000000000611d70565b60606000806116c26116bd856142d3565b611f81565b91509150816000801b03611728576040517ffdde54e20000000000000000000000000000000000000000000000000000000081527fffffffff00000000000000000000000000000000000000000000000000000000600035166004820152602401610524565b6020840180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16821790526111408285612051565b600061178c826000015183602001518460400151856060015186608001518760a001518860c001518960e0015161212c565b6040805160018082528183019092529192506000916060918391906020808301908036833701905050905085816000815181106117cb576117cb6142bd565b60209081029190910101526118037f74625544000000000000000000000000537461747300000000000000000000008286868661216a565b505050505050565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110611841576118416142bd565b60200260200101818152505061101f7f746255440000000000000000000000004368617261637465727300000000000060001b82600385604051602001610fea91151560f81b815260010190565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106118c8576118c86142bd565b602090810291909101015260006119217f74625544000000000000000000000000436861726163746572730000000000008360017e55040020142001000000000000000000000000000000000000000000000000611e25565b60601c949350505050565b60006104956121e0565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061196f5761196f6142bd565b602090810291909101015260006111407f74625544000000000000000000000000537461747300000000000000000000008360067ee1080020200120202020200000000000000000000000000000000000000000611e25565b60606000606060006119d86121e0565b9050306001600160a01b03821603611a01576119f587878761221f565b93509350935050611a8f565b6040517f419b58fd0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063419b58fd90611a4a908a908a908a9060040161435f565b600060405180830381865afa158015611a67573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526119f59190810190614388565b93509350939050565b611aa0613e0f565b611aa984612327565b60e0890181905260c0890182905260a089018390526080890184905260608901859052886020810160408201886002811115611ae757611ae7613ec0565b6002811115611af857611af8613ec0565b90529790975250505093909252509195945050505050565b604080516000808252602082019092526000611b6e7f74625544000000000000000000000000556c74696d617465446f6d696e696f6e8360027e65060001141414141400000000000000000000000000000000000000000000611e25565b60601c9392505050565b60408051600280825260608201835260009283929190602083019080368337019050509050836001600160a01b031660001b81600081518110611bbd57611bbd6142bd565b6020026020010181815250508260001b81600181518110611be057611be06142bd565b60209081029190910101526000611c207f74625544000000000000000000000000436f756e7465727300000000000000008383630100080160dd1b611e25565b95945050505050565b604080516002808252606082018352600092602083019080368337019050509050836001600160a01b031660001b81600081518110611c6a57611c6a6142bd565b6020026020010181815250508260001b81600181518110611c8d57611c8d6142bd565b602002602001018181525050611cf37f74625544000000000000000000000000436f756e74657273000000000000000060001b82600085604051602001611cd691815260200190565b60408051601f19818403018152919052630100080160dd1b611d70565b50505050565b6000611d076070601061424b565b6fffffffffffffffffffffffffffffffff198316901c601084901c7dffffffffffffffffffffffffffff00000000000000000000000000000000167fffff0000000000000000000000000000000000000000000000000000000000008616171790509392505050565b6000611d7a6121e0565b9050306001600160a01b03821603611d9e57611d998686868686612395565b611803565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae090611deb90899089908990899089906004016143eb565b600060405180830381600087803b158015611e0557600080fd5b505af1158015611e19573d6000803e3d6000fd5b50505050505050505050565b600080611e306121e0565b9050306001600160a01b03821603611e5657611e4e868686866123aa565b915050611140565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d5990611ea1908990899089908990600401614432565b602060405180830381865afa158015611ebe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e4e9190614461565b60006104747f7462000000000000000000000000000000000000000000000000000000000000837f546f6b656e555249000000000000000000000000000000000000000000000000611cf9565b604080516001808252818301909252600091602080830190803683370190505090508260001b81600081518110611f6857611f686142bd565b602002602001018181525050611cf384826000856123d7565b6040805160018082528183019092526000918291829160208083019080368337019050509050837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681600081518110611fda57611fda6142bd565b6020908102919091010152600080806120337f7462776f726c6400000000000000000046756e6374696f6e53656c6563746f72857e240200200400000000000000000000000000000000000000000000000000006119c8565b925092509250612044838383612488565b9550955050505050915091565b6060600061205d61192c565b90506001600160a01b038116300361209e57600061208561207c610ea3565b600087876124a0565b935090508061209757612097836125db565b5050610474565b6040517f3ae7af080000000000000000000000000000000000000000000000000000000081526001600160a01b03821690633ae7af08906120e590879087906004016141a2565b6000604051808303816000875af1158015612104573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526111409190810190614200565b6060888888888888888860405160200161214d98979695949392919061447a565b604051602081830303815290604052905098975050505050505050565b60006121746121e0565b9050306001600160a01b0382160361219357611d9986868686866125e3565b6040517f298314fb0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063298314fb90611deb90899089908990899089906004016144bf565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b03168061221a573391505090565b919050565b6060600060606000612230856125f9565b905061223d87878361261c565b9350600061224a86612655565b9050801561231c5761225c8888612692565b935066ffffffffffffff841667ffffffffffffffff81111561228057612280613f6d565b6040519080825280601f01601f1916602001820160405280156122aa576020820181803683370190505b5092506020830160005b828160ff1610156123195760006122cc8b8b846126a5565b905060006122e9888460ff166028026038011c64ffffffffff1690565b90506122f88260008387612725565b612302818561424b565b93505050808061231190614510565b9150506122b4565b50505b505093509350939050565b600080600080600080600080612341896000016020015190565b60408a015160608b0151919950975060f81c600281111561236457612364613ec0565b60618a015160818b015160a18c015160c18d015160e1909d01519b9d9a9c939b929a91995097509195509350915050565b610a2d85856123a484876127f1565b85612822565b6000611c206123b98686612ac6565b60ff858116601b0360080285901c166123d285876127f1565b612b1c565b60006123e16121e0565b9050306001600160a01b03821603612404576123ff85858585612b6d565b610a2d565b6040517fef6ea8620000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063ef6ea8629061244f90889088908890889060040161452f565b600060405180830381600087803b15801561246957600080fd5b505af115801561247d573d6000803e3d6000fd5b505050505050505050565b60008061249485612ba8565b90969095509350505050565b600060606000806124b086612bbd565b90925090506001600160a01b03821661250157856124cd87612c61565b6040517ffbf10ce60000000000000000000000000000000000000000000000000000000081526004016105249291906141a2565b80612510576125108689612d8f565b861561257c577dffffffffffffffffffffffffffff0000000000000000000000000000000086167f6e7300000000000000000000000000000000000000000000000000000000000017600061256482612ddb565b9050612579826125748b8461424b565b612e54565b50505b60006125888760101b90565b7fffffffffffffffffffffffffffff00000000000000000000000000000000000016146125c0576125bb88888488612ef0565b6125cc565b6125cc88888488612f68565b90999098509650505050505050565b805160208201fd5b610a2d85858585856125f48b612fc9565b61304e565b600060086126096002602061456e565b6126139190614581565b9190911c919050565b60608160000361263b5750604080516020810190915260008152610b89565b60006126478585612ac6565b9050611c2081600085613387565b600060086001806126686002602061456e565b612672919061456e565b61267c919061456e565b6126869190614581565b8260ff911c1692915050565b6000610b896126a184846133aa565b5490565b600083836040516020016126ba929190614598565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b82156127ac576020831061274f5760208304840193506020838161274b5761274b6145d4565b0692505b82156127ac5760208390036000818410156127725750600019600884021c61277c565b50600019600882021c5b8554600886021b81845116821982161784525081841161279d575050611cf3565b50600194909401939182900391015b5b602082106127ce5783548152600190930192601f19909101906020016127ad565b8115611cf3576000600019600884021c8251865482191691161782525050505050565b600080805b8360ff168110156106f45761281860ff601b83900360080287901c168361424b565b91506001016127f6565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff00000000000000000000000000000000000000000000000000000000000016036128ac57837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be84848460405161289f939291906145ea565b60405180910390a2611cf3565b60006128b88585612ac6565b905060006128c586613400565b905060005b815181101561299a5760008282815181106128e7576128e76142bd565b602002602001015190506129136004826affffffffffffffffffffff191661348990919063ffffffff16565b15612991576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d9061295e908b908b908b908b9060040161461d565b600060405180830381600087803b15801561297857600080fd5b505af115801561298c573d6000803e3d6000fd5b505050505b506001016128ca565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8686866040516129cf939291906145ea565b60405180910390a26129ea828565ffffffffffff16856134a7565b60005b8151811015612abd576000828281518110612a0a57612a0a6142bd565b60200260200101519050612a366008826affffffffffffffffffffff191661348990919063ffffffff16565b15612ab4576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba872190612a81908b908b908b908b9060040161461d565b600060405180830381600087803b158015612a9b57600080fd5b505af1158015612aaf573d6000803e3d6000fd5b505050505b506001016129ed565b50505050505050565b60008282604051602001612adb929190614598565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600060208210612b4257602082048401935060208281612b3e57612b3e6145d4565b0691505b508254600882021b6020829003808411156106f4576001850154600882021c82179150509392505050565b6000612b798585612692565b90506000612b96828560ff166028026038011c64ffffffffff1690565b905061180386868660008588886134bd565b602081015160408201516000905b9050915091565b60408051600180825281830190925260009182918291602080830190803683370190505090508381600081518110612bf757612bf76142bd565b602090810291909101015260008080612c507f7462776f726c6400000000000000000053797374656d73000000000000000000857e1502001401000000000000000000000000000000000000000000000000000061221f565b9250925092506120448383836138f7565b606081601081901b6000612c7483613903565b9050827fffffffffffffffffffffffffffff000000000000000000000000000000000000831615612ccf57612cca7fffffffffffffffffffffffffffff000000000000000000000000000000000000841661391a565b612d06565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b6fffffffffffffffffffffffffffffffff19831615612d2d57612d288361391a565b612d64565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b604051602001612d7693929190614656565b6040516020818303038152906040529350505050919050565b612d9982826139a0565b610bfd57612da682612c61565b816040517fd787b7370000000000000000000000000000000000000000000000000000000081526004016105249291906146e4565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110612e1457612e146142bd565b602090810291909101015260006111407f7462776f726c6400000000000000000042616c616e63657300000000000000008383630100080160dd1b6123aa565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110612e8a57612e8a6142bd565b60200260200101818152505061101f7f7462776f726c6400000000000000000042616c616e636573000000000000000060001b82600085604051602001612ed391815260200190565b60408051601f19818403018152919052630100080160dd1b612395565b60006060836001600160a01b03166000612f0b8589896139fe565b604051612f18919061470f565b60006040518083038185875af1925050503d8060008114612f55576040519150601f19603f3d011682016040523d82523d6000602084013e612f5a565b606091505b509097909650945050505050565b60006060836001600160a01b0316612f818488886139fe565b604051612f8e919061470f565b600060405180830381855af49150503d8060008114612f55576040519150601f19603f3d011682016040523d82523d6000602084013e612f5a565b60007f8b9d8c8b908d9affffffffffffffffffab9e9d939a8d00000000000000000000820161301857507e60030220202000000000000000000000000000000000000000000000000000919050565b6104746130457f746273746f72650000000000000000005461626c65730000000000000000000084613a2d565b60206000612b1c565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff00000000000000000000000000000000000000000000000000000000000016036130da57857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9868686866040516130cd949392919061472b565b60405180910390a2611803565b60006130e587613400565b905060005b81518110156131be576000828281518110613107576131076142bd565b602002602001015190506131336001826affffffffffffffffffffff191661348990919063ffffffff16565b156131b5576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c90613182908c908c908c908c908c908c9060040161476a565b600060405180830381600087803b15801561319c57600080fd5b505af11580156131b0573d6000803e3d6000fd5b505050505b506001016130ea565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9878787876040516131f5949392919061472b565b60405180910390a260006132098888612ac6565b90506000602087019050613221826000895184613a49565b600061322c85612655565b11156132b057600061323e8a8a6133aa565b878155905060208601915060008060005b61325888612655565b8160ff1610156132ab5761326d8d8d836126a5565b92506132888a8260ff166028026038011c64ffffffffff1690565b91506132978360008488613a49565b6132a1828661424b565b945060010161324f565b505050505b60005b8351811015611e195760008482815181106132d0576132d06142bd565b602002602001015190506132fc6002826affffffffffffffffffffff191661348990919063ffffffff16565b1561337e576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf9061334b908e908e908e908e908e908e9060040161476a565b600060405180830381600087803b15801561336557600080fd5b505af1158015613379573d6000803e3d6000fd5b505050505b506001016132b3565b60405160208101601f19603f84840101166040528282526106f485858584612725565b600082826040516020016133bf929190614598565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061343a5761343a6142bd565b602090810291909101015260006134727f746273746f726500000000000000000053746f7265486f6f6b730000000000008383613b08565b90506111406134848260008451613b42565b613bd0565b60008160ff168261349a8560581c90565b1660ff1614905092915050565b61101f838383516134b88560200190565b613a49565b7f7462000000000000000000000000000000000000000000000000000000000000877fffff000000000000000000000000000000000000000000000000000000000000161461357d577f7462000000000000000000000000000000000000000000000000000000000000878860405160200161353b91815260200190565b60408051601f19818403018152908290527f31b466830000000000000000000000000000000000000000000000000000000082526105249392916004016147c3565b6000613598828760ff166028026038011c64ffffffffff1690565b9050600083518564ffffffffff16836135b1919061456e565b6135bb919061424b565b90508082141580156135dd5750816135d38688614804565b64ffffffffff1614155b1561362d576040517fa65010b400000000000000000000000000000000000000000000000000000000815264ffffffffff8088166004830152808716602483015283166044820152606401610524565b818664ffffffffff16111561367e576040517f7e8578d30000000000000000000000000000000000000000000000000000000081526004810183905264ffffffffff87166024820152604401610524565b600061368b848984613be1565b905060006136988b613400565b905060005b81518110156137635760008282815181106136ba576136ba6142bd565b602002602001015190506136e66010826affffffffffffffffffffff191661348990919063ffffffff16565b1561375a57606081901c6001600160a01b03166355eb5a288e8e8e8e8e8d8f6040518863ffffffff1660e01b81526004016137279796959493929190614829565b600060405180830381600087803b15801561374157600080fd5b505af1158015613755573d6000803e3d6000fd5b505050505b5060010161369d565b5064ffffffffff881660005b8a60ff168160ff1610156137a257613796878260ff166028026038011c64ffffffffff1690565b9091019060010161376f565b508b7ffe158a7adba34e256807c8a149028d3162918713c3838afc643ce9f96716ebfd8c8c848c888d6040516137dd96959493929190614887565b60405180910390a2508284146137fe5760006137f98c8c6133aa565b839055505b600061380b8c8c8c6126a5565b905061381f818a64ffffffffff16896134a7565b5060005b81518110156138e9576000828281518110613840576138406142bd565b6020026020010151905061386c6020826affffffffffffffffffffff191661348990919063ffffffff16565b156138e057606081901c6001600160a01b031663635845338e8e8e8e8e8a8f6040518863ffffffff1660e01b81526004016138ad9796959493929190614829565b600060405180830381600087803b1580156138c757600080fd5b505af11580156138db573d6000803e3d6000fd5b505050505b50600101613823565b505050505050505050505050565b60008061249485613caf565b60006139116070601061424b565b9190911b919050565b606060005b6010811015613970576fffffffffffffffffffffffffffffffff198316600882021b7fff0000000000000000000000000000000000000000000000000000000000000016156139705760010161391f565b604080516fffffffffffffffffffffffffffffffff19851660208201528151603090910190915281815280611140565b60006139ee7f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff0000000000000000000000000000000085161783613ccb565b80610b895750610b898383613ccb565b6060838383604051602001613a15939291906148e3565b60405160208183030381529060405290509392505050565b6040805160208101849052908101829052600090606001612adb565b8215613ac35760208310613a7357602083048401935060208381613a6f57613a6f6145d4565b0692505b8215613ac35760208390036000600019600885021c1990506008850281811c91508351811c9050811987541682821617875550818411613ab4575050611cf3565b50600194909401939182900391015b5b60208210613ae55780518455600190930192601f1990910190602001613ac4565b8115611cf3576000600019600884021c8554835182191691161785555050505050565b6060611140613b188585856126a5565b6000613b3d85613b288989612692565b9060ff166028026038011c64ffffffffff1690565b613387565b600081831180613b525750835182115b15613b8f578383836040517f23230fa300000000000000000000000000000000000000000000000000000000815260040161052493929190614922565b60208401613b9d848261424b565b90506000613bab858561456e565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60606000610b898360156000613d94565b600064ffffffffff821115613c25576040517f7149a3c100000000000000000000000000000000000000000000000000000000815260048101839052602401610524565b8366ffffffffffffff811660ff851660280260380182901c64ffffffffff16808510613c575780850382019150613c5f565b848103820391505b5064ffffffffff6038602860ff8816020181811b197fffffffffffffffffffffffffffffffffffffffffffffffffff000000000000009490941690921792909216918416901b1790509392505050565b6020810151603482015160609190911c9060009060f81c612bb6565b604080516002808252606082018352600092839291906020830190803683370190505090508381600081518110613d0457613d046142bd565b602002602001018181525050826001600160a01b031660001b81600181518110613d3057613d306142bd565b60209081029190910101526000613d887f7462776f726c640000000000000000005265736f75726365416363657373000083837e010100010000000000000000000000000000000000000000000000000000006123aa565b9050611c208160f81c90565b60606000613da28560801c90565b90506fffffffffffffffffffffffffffffffff85166000858281613dc857613dc86145d4565b04905060405193506020840160208202810160405281855260005b82811015613e03578451871c825293870193602090910190600101613de3565b50505050509392505050565b604051806101000160405280600081526020016000815260200160006002811115613e3c57613e3c613ec0565b815260200160008152602001600081526020016000815260200160008152602001600081525090565b600060208284031215613e7757600080fd5b5035919050565b600060208284031215613e9057600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610b8957600080fd5b634e487b7160e01b600052602160045260246000fd5b60038110613ef457634e487b7160e01b600052602160045260246000fd5b50565b81518152602080830151908201526040820151610100820190613f1981613ed6565b80604084015250606083015160608301526080830151608083015260a083015160a083015260c083015160c083015260e083015160e083015292915050565b6001600160a01b0381168114613ef457600080fd5b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715613fac57613fac613f6d565b604052919050565b600067ffffffffffffffff821115613fce57613fce613f6d565b50601f01601f191660200190565b600082601f830112613fed57600080fd5b8135614000613ffb82613fb4565b613f83565b81815284602083860101111561401557600080fd5b816020850160208301376000918101602001919091529392505050565b60008060006060848603121561404757600080fd5b833561405281613f58565b925060208401359150604084013567ffffffffffffffff81111561407557600080fd5b61408186828701613fdc565b9150509250925092565b6020810161409883613ed6565b91905290565b6000806000606084860312156140b357600080fd5b83359250602084013591506040840135600381106140d057600080fd5b809150509250925092565b600080604083850312156140ee57600080fd5b82359150602083013561410081613f58565b809150509250929050565b6000806040838503121561411e57600080fd5b82359150602083013567ffffffffffffffff81111561413c57600080fd5b61414885828601613fdc565b9150509250929050565b60005b8381101561416d578181015183820152602001614155565b50506000910152565b6000815180845261418e816020860160208601614152565b601f01601f19169290920160200192915050565b8281526040602082015260006111406040830184614176565b600082601f8301126141cc57600080fd5b81516141da613ffb82613fb4565b8181528460208386010111156141ef57600080fd5b611140826020830160208701614152565b60006020828403121561421257600080fd5b815167ffffffffffffffff81111561422957600080fd5b611140848285016141bb565b634e487b7160e01b600052601160045260246000fd5b8082018082111561047457610474614235565b6000600019820361427157614271614235565b5060010190565b60006020828403121561428a57600080fd5b8151610b8981613f58565b8381526142a183613ed6565b826020820152606060408201526000611c206060830184614176565b634e487b7160e01b600052603260045260246000fd5b6000815160208301517fffffffff000000000000000000000000000000000000000000000000000000008082169350600483101561431b5780818460040360031b1b83161693505b505050919050565b60008151808452602080850194506020840160005b8381101561435457815187529582019590820190600101614338565b509495945050505050565b8381526060602082015260006143786060830185614323565b9050826040830152949350505050565b60008060006060848603121561439d57600080fd5b835167ffffffffffffffff808211156143b557600080fd5b6143c1878388016141bb565b94506020860151935060408601519150808211156143de57600080fd5b50614081868287016141bb565b85815260a06020820152600061440460a0830187614323565b60ff86166040840152828103606084015261441f8186614176565b9150508260808301529695505050505050565b84815260806020820152600061444b6080830186614323565b60ff949094166040830152506060015292915050565b60006020828403121561447357600080fd5b5051919050565b88815287602082015261448c87613ed6565b60f89690961b604087015260418601949094526061850192909252608184015260a183015260c182015260e10192915050565b85815260a0602082015260006144d860a0830187614323565b82810360408401526144ea8187614176565b905084606084015282810360808401526145048185614176565b98975050505050505050565b600060ff821660ff810361452657614526614235565b60010192915050565b8481526080602082015260006145486080830186614323565b60ff8516604084015282810360608401526145638185614176565b979650505050505050565b8181038181111561047457610474614235565b808202811582820484141761047457610474614235565b8281526000602080830184516020860160005b828110156145c7578151845292840192908401906001016145ab565b5091979650505050505050565b634e487b7160e01b600052601260045260246000fd5b6060815260006145fd6060830186614323565b65ffffffffffff851660208401528281036040840152610e998185614176565b8481526080602082015260006146366080830186614323565b65ffffffffffff8516604084015282810360608401526145638185614176565b7fffff0000000000000000000000000000000000000000000000000000000000008416815260007f3a0000000000000000000000000000000000000000000000000000000000000080600284015284516146b7816003860160208901614152565b8084019050816003820152845191506146d7826004830160208801614152565b0160040195945050505050565b6040815260006146f76040830185614176565b90506001600160a01b03831660208301529392505050565b60008251614721818460208701614152565b9190910192915050565b60808152600061473e6080830187614323565b82810360208401526147508187614176565b905084604084015282810360608401526145638185614176565b86815260c06020820152600061478360c0830188614323565b82810360408401526147958188614176565b905085606084015282810360808401526147af8186614176565b9150508260a0830152979650505050505050565b7fffff00000000000000000000000000000000000000000000000000000000000084168152826020820152606060408201526000611c206060830184614176565b64ffffffffff81811683821601908082111561482257614822614235565b5092915050565b87815260e06020820152600061484260e0830189614323565b60ff8816604084015264ffffffffff87811660608501528616608084015260a0830185905282810360c08401526148798185614176565b9a9950505050505050505050565b60c08152600061489a60c0830189614323565b60ff8816602084015265ffffffffffff8716604084015264ffffffffff8616606084015284608084015282810360a08401526148d68185614176565b9998505050505050505050565b600084516148f5818460208901614152565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b6060815260006149356060830186614176565b6020830194909452506040015291905056fea264697066735822122021386ea8bd5ecafffb03dd69f22a4529bb58992ad444d7bbc8874a6f742c0f7164736f6c63430008180033","sourceMap":"1812:6243:211:-:0;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x6080604052600436106101435760003560e01c8063623daa05116100c0578063c74dedc811610074578063e1af802c11610059578063e1af802c14610380578063ebee03bb14610395578063f8c67561146103b557600080fd5b8063c74dedc814610340578063deb931a21461036057600080fd5b80638338f0e0116100a55780638338f0e0146102e05780639b63ec0514610300578063b27cbcbb1461032057600080fd5b8063623daa05146102ab578063679ee16d146102cb57600080fd5b8063143f30211161011757806323801570116100fc578063238015701461024657806345ec93541461027357806354b8d5e31461028b57600080fd5b8063143f3021146101f85780631ecb393f1461022657600080fd5b8062d43ec61461014857806301ffc9a7146101865780630bb700dc146101b6578063119df25f146101e3575b600080fd5b34801561015457600080fd5b50610169610163366004613e65565b60601c90565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561019257600080fd5b506101a66101a1366004613e7e565b6103e1565b604051901515815260200161017d565b3480156101c257600080fd5b506101d66101d1366004613e65565b61047a565b60405161017d9190613ef7565b3480156101ef57600080fd5b5061016961048b565b34801561020457600080fd5b50610218610213366004614032565b61049a565b60405190815260200161017d565b34801561023257600080fd5b50610218610241366004613e65565b6106fc565b34801561025257600080fd5b50610266610261366004613e65565b61077a565b60405161017d919061408b565b34801561027f57600080fd5b5036601f190135610218565b34801561029757600080fd5b506102186102a6366004613e65565b610785565b3480156102b757600080fd5b506101a66102c6366004613e65565b610790565b6102de6102d936600461409e565b6108bc565b005b3480156102ec57600080fd5b506102186102fb366004613e65565b610a34565b34801561030c57600080fd5b506101a661031b3660046140db565b610ac9565b34801561032c57600080fd5b506102de61033b36600461410b565b610b90565b34801561034c57600080fd5b506102de61035b366004613e65565b610c01565b34801561036c57600080fd5b5061016961037b366004613e65565b610dd1565b34801561038c57600080fd5b50610169610ddc565b3480156103a157600080fd5b506102186103b0366004613e65565b610de6565b3480156103c157600080fd5b506102186103d0366004613e65565b6bffffffffffffffffffffffff1690565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee12700000000000000000000000000000000000000000000000000000000148061047457507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b610482613e0f565b61047482610df1565b6000610495610ea3565b905090565b6000806104a5610ed5565b90506bffffffffffffffffffffffff811061052d5760405162461bcd60e51b815260206004820152602360248201527f43484152414341544552533a204d61782063686172616374657273207265616360448201527f686564000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b610535610ddc565b6001600160a01b0316633ae7af0861056c7f4368617261637465727300000000000000000000000000000000000000000000610f08565b6040516001600160a01b03891660248201526044810185905260640160408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f40c10f1900000000000000000000000000000000000000000000000000000000179052517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526106189291906004016141a2565b6000604051808303816000875af1158015610637573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261065f9190810190614200565b5061066981610a34565b91506106758286610f55565b61067f8282611024565b610688846110a3565b156106d55760405162461bcd60e51b815260206004820152601360248201527f4e616d6520616c726561647920657869737473000000000000000000000000006044820152606401610524565b6106e0846001611148565b6106ea8285611201565b6106f48184611280565b509392505050565b600061070860136112b3565b821061071657506014919050565b60005b6014811015610774578261072c826112b3565b1115801561074b57508261074961074483600161424b565b6112b3565b115b156107625761075b81600161424b565b9150610774565b8061076c8161425e565b915050610719565b50919050565b60006104748261132f565b6000610474826113d9565b60008061079d8360601c90565b90506bffffffffffffffffffffffff831660006107b861146b565b6001600160a01b0316636352211e836040518263ffffffff1660e01b81526004016107e591815260200190565b602060405180830381865afa92505050801561081e575060408051601f3d908101601f1916820190925261081b91810190614278565b60015b1561089d5761082b61146b565b6001600160a01b0316636352211e846040518263ffffffff1660e01b815260040161085891815260200190565b602060405180830381865afa158015610875573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108999190614278565b9150505b826001600160a01b0316816001600160a01b0316149350505050919050565b6108c582611475565b156109385760405162461bcd60e51b815260206004820152602b60248201527f434841524143544552533a2063686172616374657220616c726561647920696e60448201527f2067616d6520776f726c640000000000000000000000000000000000000000006064820152608401610524565b61094182611507565b61098d5760405162461bcd60e51b815260206004820152601360248201527f4e6f7420796f7572204368617261637465722e000000000000000000000000006044820152606401610524565b600061099983836115c3565b610a2d8482856040516020016109b191815260200190565b60408051601f19818403018152908290526109d0939291602401614295565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb2aa60a4000000000000000000000000000000000000000000000000000000001790526116ac565b5050505050565b600080610a3f61146b565b6001600160a01b0316636352211e846040518263ffffffff1660e01b8152600401610a6c91815260200190565b602060405180830381865afa158015610a89573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aad9190614278565b60601b6bffffffffffffffffffffffff19169290921792915050565b6000610ad483610790565b8015610b895750816001600160a01b0316610aed61146b565b6040517f6352211e0000000000000000000000000000000000000000000000000000000081526bffffffffffffffffffffffff861660048201526001600160a01b039190911690636352211e90602401602060405180830381865afa158015610b5a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b7e9190614278565b6001600160a01b0316145b9392505050565b610b9982611507565b610be55760405162461bcd60e51b815260206004820152601a60248201527f434841524143544552533a204e4f5420415554484f52495a45440000000000006044820152606401610524565b610bfd6bffffffffffffffffffffffff831682611280565b5050565b610c0a81611507565b610c565760405162461bcd60e51b815260206004820152601260248201527f6e6f7420796f75722063686172616374657200000000000000000000000000006044820152606401610524565b610c5f81611475565b15610cac5760405162461bcd60e51b815260206004820152601960248201527f796f75206861766520656e7465726564207468652067616d65000000000000006044820152606401610524565b6000610cb782610df1565b600160e0820152608081015160a08201529050610cd4828261175a565b610cdc610ddc565b6040517ffda0ce5000000000000000000000000000000000000000000000000000000000815260048101849052674563918244f4000060248201526001600160a01b03919091169063fda0ce5090604401600060405180830381600087803b158015610d4757600080fd5b505af1158015610d5b573d6000803e3d6000fd5b50505050610d67610ddc565b6001600160a01b031663f9d175ed836040518263ffffffff1660e01b8152600401610d9491815260200190565b600060405180830381600087803b158015610dae57600080fd5b505af1158015610dc2573d6000803e3d6000fd5b50505050610bfd82600161180b565b60006104748261188f565b600061049561192c565b600061047482611936565b610df9613e0f565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110610e2f57610e2f6142bd565b602090810291909101015260008080610e887f7462554400000000000000000000000053746174730000000000000000000000857ee10800202001202020202000000000000000000000000000000000000000006119c8565b925092509250610e99838383611a98565b9695505050505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c80610ed25750335b90565b600080610ee0611b10565b90506000610eef826000611b78565b610efa90600161424b565b905061047482600083611c29565b60006104747f7379000000000000000000000000000000000000000000000000000000000000837f45524337323153797374656d0000000000000000000000000000000000000000611cf9565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110610f8b57610f8b6142bd565b60200260200101818152505061101f7f746255440000000000000000000000004368617261637465727300000000000060001b82600185604051602001610fea919060609190911b6bffffffffffffffffffffffff1916815260140190565b60408051601f198184030181529190527e55040020142001000000000000000000000000000000000000000000000000611d70565b505050565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061105a5761105a6142bd565b60200260200101818152505061101f7f746255440000000000000000000000004368617261637465727300000000000060001b82600085604051602001610fea91815260200190565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106110dc576110dc6142bd565b602090810291909101015260006111347f746255440000000000000000000000004e616d6545786973747300000000000083837e01010001000000000000000000000000000000000000000000000000000000611e25565b90506111408160f81c90565b949350505050565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061117e5761117e6142bd565b60200260200101818152505061101f7f746255440000000000000000000000004e616d6545786973747300000000000060001b826000856040516020016111cc91151560f81b815260010190565b60408051601f198184030181529190527e01010001000000000000000000000000000000000000000000000000000000611d70565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110611237576112376142bd565b60200260200101818152505061101f7f746255440000000000000000000000004368617261637465727300000000000060001b82600285604051602001610fea91815260200190565b610bfd6112ac7f4368617261637465727300000000000000000000000000000000000000000000611ee2565b8383611f2f565b604080516001808252818301909252600091829190602080830190803683370190505090508260001b816000815181106112ef576112ef6142bd565b602090810291909101015260006111407f746255440000000000000000000000004c6576656c73000000000000000000008383630100080160dd1b611e25565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110611368576113686142bd565b602090810291909101015260006113c17f74625544000000000000000000000000537461747300000000000000000000008360027ee1080020200120202020200000000000000000000000000000000000000000611e25565b905060f881901c600281111561114057611140613ec0565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110611412576114126142bd565b602090810291909101015260006111407f74625544000000000000000000000000436861726163746572730000000000008360027e55040020142001000000000000000000000000000000000000000000000000611e25565b6000610495611b10565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106114ae576114ae6142bd565b602090810291909101015260006111347f74625544000000000000000000000000436861726163746572730000000000008360037e55040020142001000000000000000000000000000000000000000000000000611e25565b600061151161146b565b6040517f6352211e0000000000000000000000000000000000000000000000000000000081526bffffffffffffffffffffffff841660048201526001600160a01b039190911690636352211e90602401602060405180830381865afa15801561157e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115a29190614278565b6001600160a01b03166115b361048b565b6001600160a01b03161492915050565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106115f9576115f96142bd565b602090810291909101015261101f7f7462554400000000000000000000000053746174730000000000000000000000826002858181111561163c5761163c613ec0565b604051602001611677919060f89190911b7fff0000000000000000000000000000000000000000000000000000000000000016815260010190565b60408051601f198184030181529190527ee1080020200120202020200000000000000000000000000000000000000000611d70565b60606000806116c26116bd856142d3565b611f81565b91509150816000801b03611728576040517ffdde54e20000000000000000000000000000000000000000000000000000000081527fffffffff00000000000000000000000000000000000000000000000000000000600035166004820152602401610524565b6020840180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16821790526111408285612051565b600061178c826000015183602001518460400151856060015186608001518760a001518860c001518960e0015161212c565b6040805160018082528183019092529192506000916060918391906020808301908036833701905050905085816000815181106117cb576117cb6142bd565b60209081029190910101526118037f74625544000000000000000000000000537461747300000000000000000000008286868661216a565b505050505050565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110611841576118416142bd565b60200260200101818152505061101f7f746255440000000000000000000000004368617261637465727300000000000060001b82600385604051602001610fea91151560f81b815260010190565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106118c8576118c86142bd565b602090810291909101015260006119217f74625544000000000000000000000000436861726163746572730000000000008360017e55040020142001000000000000000000000000000000000000000000000000611e25565b60601c949350505050565b60006104956121e0565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061196f5761196f6142bd565b602090810291909101015260006111407f74625544000000000000000000000000537461747300000000000000000000008360067ee1080020200120202020200000000000000000000000000000000000000000611e25565b60606000606060006119d86121e0565b9050306001600160a01b03821603611a01576119f587878761221f565b93509350935050611a8f565b6040517f419b58fd0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063419b58fd90611a4a908a908a908a9060040161435f565b600060405180830381865afa158015611a67573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526119f59190810190614388565b93509350939050565b611aa0613e0f565b611aa984612327565b60e0890181905260c0890182905260a089018390526080890184905260608901859052886020810160408201886002811115611ae757611ae7613ec0565b6002811115611af857611af8613ec0565b90529790975250505093909252509195945050505050565b604080516000808252602082019092526000611b6e7f74625544000000000000000000000000556c74696d617465446f6d696e696f6e8360027e65060001141414141400000000000000000000000000000000000000000000611e25565b60601c9392505050565b60408051600280825260608201835260009283929190602083019080368337019050509050836001600160a01b031660001b81600081518110611bbd57611bbd6142bd565b6020026020010181815250508260001b81600181518110611be057611be06142bd565b60209081029190910101526000611c207f74625544000000000000000000000000436f756e7465727300000000000000008383630100080160dd1b611e25565b95945050505050565b604080516002808252606082018352600092602083019080368337019050509050836001600160a01b031660001b81600081518110611c6a57611c6a6142bd565b6020026020010181815250508260001b81600181518110611c8d57611c8d6142bd565b602002602001018181525050611cf37f74625544000000000000000000000000436f756e74657273000000000000000060001b82600085604051602001611cd691815260200190565b60408051601f19818403018152919052630100080160dd1b611d70565b50505050565b6000611d076070601061424b565b6fffffffffffffffffffffffffffffffff198316901c601084901c7dffffffffffffffffffffffffffff00000000000000000000000000000000167fffff0000000000000000000000000000000000000000000000000000000000008616171790509392505050565b6000611d7a6121e0565b9050306001600160a01b03821603611d9e57611d998686868686612395565b611803565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae090611deb90899089908990899089906004016143eb565b600060405180830381600087803b158015611e0557600080fd5b505af1158015611e19573d6000803e3d6000fd5b50505050505050505050565b600080611e306121e0565b9050306001600160a01b03821603611e5657611e4e868686866123aa565b915050611140565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d5990611ea1908990899089908990600401614432565b602060405180830381865afa158015611ebe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e4e9190614461565b60006104747f7462000000000000000000000000000000000000000000000000000000000000837f546f6b656e555249000000000000000000000000000000000000000000000000611cf9565b604080516001808252818301909252600091602080830190803683370190505090508260001b81600081518110611f6857611f686142bd565b602002602001018181525050611cf384826000856123d7565b6040805160018082528183019092526000918291829160208083019080368337019050509050837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681600081518110611fda57611fda6142bd565b6020908102919091010152600080806120337f7462776f726c6400000000000000000046756e6374696f6e53656c6563746f72857e240200200400000000000000000000000000000000000000000000000000006119c8565b925092509250612044838383612488565b9550955050505050915091565b6060600061205d61192c565b90506001600160a01b038116300361209e57600061208561207c610ea3565b600087876124a0565b935090508061209757612097836125db565b5050610474565b6040517f3ae7af080000000000000000000000000000000000000000000000000000000081526001600160a01b03821690633ae7af08906120e590879087906004016141a2565b6000604051808303816000875af1158015612104573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526111409190810190614200565b6060888888888888888860405160200161214d98979695949392919061447a565b604051602081830303815290604052905098975050505050505050565b60006121746121e0565b9050306001600160a01b0382160361219357611d9986868686866125e3565b6040517f298314fb0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063298314fb90611deb90899089908990899089906004016144bf565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b03168061221a573391505090565b919050565b6060600060606000612230856125f9565b905061223d87878361261c565b9350600061224a86612655565b9050801561231c5761225c8888612692565b935066ffffffffffffff841667ffffffffffffffff81111561228057612280613f6d565b6040519080825280601f01601f1916602001820160405280156122aa576020820181803683370190505b5092506020830160005b828160ff1610156123195760006122cc8b8b846126a5565b905060006122e9888460ff166028026038011c64ffffffffff1690565b90506122f88260008387612725565b612302818561424b565b93505050808061231190614510565b9150506122b4565b50505b505093509350939050565b600080600080600080600080612341896000016020015190565b60408a015160608b0151919950975060f81c600281111561236457612364613ec0565b60618a015160818b015160a18c015160c18d015160e1909d01519b9d9a9c939b929a91995097509195509350915050565b610a2d85856123a484876127f1565b85612822565b6000611c206123b98686612ac6565b60ff858116601b0360080285901c166123d285876127f1565b612b1c565b60006123e16121e0565b9050306001600160a01b03821603612404576123ff85858585612b6d565b610a2d565b6040517fef6ea8620000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063ef6ea8629061244f90889088908890889060040161452f565b600060405180830381600087803b15801561246957600080fd5b505af115801561247d573d6000803e3d6000fd5b505050505050505050565b60008061249485612ba8565b90969095509350505050565b600060606000806124b086612bbd565b90925090506001600160a01b03821661250157856124cd87612c61565b6040517ffbf10ce60000000000000000000000000000000000000000000000000000000081526004016105249291906141a2565b80612510576125108689612d8f565b861561257c577dffffffffffffffffffffffffffff0000000000000000000000000000000086167f6e7300000000000000000000000000000000000000000000000000000000000017600061256482612ddb565b9050612579826125748b8461424b565b612e54565b50505b60006125888760101b90565b7fffffffffffffffffffffffffffff00000000000000000000000000000000000016146125c0576125bb88888488612ef0565b6125cc565b6125cc88888488612f68565b90999098509650505050505050565b805160208201fd5b610a2d85858585856125f48b612fc9565b61304e565b600060086126096002602061456e565b6126139190614581565b9190911c919050565b60608160000361263b5750604080516020810190915260008152610b89565b60006126478585612ac6565b9050611c2081600085613387565b600060086001806126686002602061456e565b612672919061456e565b61267c919061456e565b6126869190614581565b8260ff911c1692915050565b6000610b896126a184846133aa565b5490565b600083836040516020016126ba929190614598565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b82156127ac576020831061274f5760208304840193506020838161274b5761274b6145d4565b0692505b82156127ac5760208390036000818410156127725750600019600884021c61277c565b50600019600882021c5b8554600886021b81845116821982161784525081841161279d575050611cf3565b50600194909401939182900391015b5b602082106127ce5783548152600190930192601f19909101906020016127ad565b8115611cf3576000600019600884021c8251865482191691161782525050505050565b600080805b8360ff168110156106f45761281860ff601b83900360080287901c168361424b565b91506001016127f6565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff00000000000000000000000000000000000000000000000000000000000016036128ac57837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be84848460405161289f939291906145ea565b60405180910390a2611cf3565b60006128b88585612ac6565b905060006128c586613400565b905060005b815181101561299a5760008282815181106128e7576128e76142bd565b602002602001015190506129136004826affffffffffffffffffffff191661348990919063ffffffff16565b15612991576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d9061295e908b908b908b908b9060040161461d565b600060405180830381600087803b15801561297857600080fd5b505af115801561298c573d6000803e3d6000fd5b505050505b506001016128ca565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8686866040516129cf939291906145ea565b60405180910390a26129ea828565ffffffffffff16856134a7565b60005b8151811015612abd576000828281518110612a0a57612a0a6142bd565b60200260200101519050612a366008826affffffffffffffffffffff191661348990919063ffffffff16565b15612ab4576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba872190612a81908b908b908b908b9060040161461d565b600060405180830381600087803b158015612a9b57600080fd5b505af1158015612aaf573d6000803e3d6000fd5b505050505b506001016129ed565b50505050505050565b60008282604051602001612adb929190614598565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600060208210612b4257602082048401935060208281612b3e57612b3e6145d4565b0691505b508254600882021b6020829003808411156106f4576001850154600882021c82179150509392505050565b6000612b798585612692565b90506000612b96828560ff166028026038011c64ffffffffff1690565b905061180386868660008588886134bd565b602081015160408201516000905b9050915091565b60408051600180825281830190925260009182918291602080830190803683370190505090508381600081518110612bf757612bf76142bd565b602090810291909101015260008080612c507f7462776f726c6400000000000000000053797374656d73000000000000000000857e1502001401000000000000000000000000000000000000000000000000000061221f565b9250925092506120448383836138f7565b606081601081901b6000612c7483613903565b9050827fffffffffffffffffffffffffffff000000000000000000000000000000000000831615612ccf57612cca7fffffffffffffffffffffffffffff000000000000000000000000000000000000841661391a565b612d06565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b6fffffffffffffffffffffffffffffffff19831615612d2d57612d288361391a565b612d64565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b604051602001612d7693929190614656565b6040516020818303038152906040529350505050919050565b612d9982826139a0565b610bfd57612da682612c61565b816040517fd787b7370000000000000000000000000000000000000000000000000000000081526004016105249291906146e4565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110612e1457612e146142bd565b602090810291909101015260006111407f7462776f726c6400000000000000000042616c616e63657300000000000000008383630100080160dd1b6123aa565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110612e8a57612e8a6142bd565b60200260200101818152505061101f7f7462776f726c6400000000000000000042616c616e636573000000000000000060001b82600085604051602001612ed391815260200190565b60408051601f19818403018152919052630100080160dd1b612395565b60006060836001600160a01b03166000612f0b8589896139fe565b604051612f18919061470f565b60006040518083038185875af1925050503d8060008114612f55576040519150601f19603f3d011682016040523d82523d6000602084013e612f5a565b606091505b509097909650945050505050565b60006060836001600160a01b0316612f818488886139fe565b604051612f8e919061470f565b600060405180830381855af49150503d8060008114612f55576040519150601f19603f3d011682016040523d82523d6000602084013e612f5a565b60007f8b9d8c8b908d9affffffffffffffffffab9e9d939a8d00000000000000000000820161301857507e60030220202000000000000000000000000000000000000000000000000000919050565b6104746130457f746273746f72650000000000000000005461626c65730000000000000000000084613a2d565b60206000612b1c565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff00000000000000000000000000000000000000000000000000000000000016036130da57857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9868686866040516130cd949392919061472b565b60405180910390a2611803565b60006130e587613400565b905060005b81518110156131be576000828281518110613107576131076142bd565b602002602001015190506131336001826affffffffffffffffffffff191661348990919063ffffffff16565b156131b5576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c90613182908c908c908c908c908c908c9060040161476a565b600060405180830381600087803b15801561319c57600080fd5b505af11580156131b0573d6000803e3d6000fd5b505050505b506001016130ea565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9878787876040516131f5949392919061472b565b60405180910390a260006132098888612ac6565b90506000602087019050613221826000895184613a49565b600061322c85612655565b11156132b057600061323e8a8a6133aa565b878155905060208601915060008060005b61325888612655565b8160ff1610156132ab5761326d8d8d836126a5565b92506132888a8260ff166028026038011c64ffffffffff1690565b91506132978360008488613a49565b6132a1828661424b565b945060010161324f565b505050505b60005b8351811015611e195760008482815181106132d0576132d06142bd565b602002602001015190506132fc6002826affffffffffffffffffffff191661348990919063ffffffff16565b1561337e576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf9061334b908e908e908e908e908e908e9060040161476a565b600060405180830381600087803b15801561336557600080fd5b505af1158015613379573d6000803e3d6000fd5b505050505b506001016132b3565b60405160208101601f19603f84840101166040528282526106f485858584612725565b600082826040516020016133bf929190614598565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061343a5761343a6142bd565b602090810291909101015260006134727f746273746f726500000000000000000053746f7265486f6f6b730000000000008383613b08565b90506111406134848260008451613b42565b613bd0565b60008160ff168261349a8560581c90565b1660ff1614905092915050565b61101f838383516134b88560200190565b613a49565b7f7462000000000000000000000000000000000000000000000000000000000000877fffff000000000000000000000000000000000000000000000000000000000000161461357d577f7462000000000000000000000000000000000000000000000000000000000000878860405160200161353b91815260200190565b60408051601f19818403018152908290527f31b466830000000000000000000000000000000000000000000000000000000082526105249392916004016147c3565b6000613598828760ff166028026038011c64ffffffffff1690565b9050600083518564ffffffffff16836135b1919061456e565b6135bb919061424b565b90508082141580156135dd5750816135d38688614804565b64ffffffffff1614155b1561362d576040517fa65010b400000000000000000000000000000000000000000000000000000000815264ffffffffff8088166004830152808716602483015283166044820152606401610524565b818664ffffffffff16111561367e576040517f7e8578d30000000000000000000000000000000000000000000000000000000081526004810183905264ffffffffff87166024820152604401610524565b600061368b848984613be1565b905060006136988b613400565b905060005b81518110156137635760008282815181106136ba576136ba6142bd565b602002602001015190506136e66010826affffffffffffffffffffff191661348990919063ffffffff16565b1561375a57606081901c6001600160a01b03166355eb5a288e8e8e8e8e8d8f6040518863ffffffff1660e01b81526004016137279796959493929190614829565b600060405180830381600087803b15801561374157600080fd5b505af1158015613755573d6000803e3d6000fd5b505050505b5060010161369d565b5064ffffffffff881660005b8a60ff168160ff1610156137a257613796878260ff166028026038011c64ffffffffff1690565b9091019060010161376f565b508b7ffe158a7adba34e256807c8a149028d3162918713c3838afc643ce9f96716ebfd8c8c848c888d6040516137dd96959493929190614887565b60405180910390a2508284146137fe5760006137f98c8c6133aa565b839055505b600061380b8c8c8c6126a5565b905061381f818a64ffffffffff16896134a7565b5060005b81518110156138e9576000828281518110613840576138406142bd565b6020026020010151905061386c6020826affffffffffffffffffffff191661348990919063ffffffff16565b156138e057606081901c6001600160a01b031663635845338e8e8e8e8e8a8f6040518863ffffffff1660e01b81526004016138ad9796959493929190614829565b600060405180830381600087803b1580156138c757600080fd5b505af11580156138db573d6000803e3d6000fd5b505050505b50600101613823565b505050505050505050505050565b60008061249485613caf565b60006139116070601061424b565b9190911b919050565b606060005b6010811015613970576fffffffffffffffffffffffffffffffff198316600882021b7fff0000000000000000000000000000000000000000000000000000000000000016156139705760010161391f565b604080516fffffffffffffffffffffffffffffffff19851660208201528151603090910190915281815280611140565b60006139ee7f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff0000000000000000000000000000000085161783613ccb565b80610b895750610b898383613ccb565b6060838383604051602001613a15939291906148e3565b60405160208183030381529060405290509392505050565b6040805160208101849052908101829052600090606001612adb565b8215613ac35760208310613a7357602083048401935060208381613a6f57613a6f6145d4565b0692505b8215613ac35760208390036000600019600885021c1990506008850281811c91508351811c9050811987541682821617875550818411613ab4575050611cf3565b50600194909401939182900391015b5b60208210613ae55780518455600190930192601f1990910190602001613ac4565b8115611cf3576000600019600884021c8554835182191691161785555050505050565b6060611140613b188585856126a5565b6000613b3d85613b288989612692565b9060ff166028026038011c64ffffffffff1690565b613387565b600081831180613b525750835182115b15613b8f578383836040517f23230fa300000000000000000000000000000000000000000000000000000000815260040161052493929190614922565b60208401613b9d848261424b565b90506000613bab858561456e565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60606000610b898360156000613d94565b600064ffffffffff821115613c25576040517f7149a3c100000000000000000000000000000000000000000000000000000000815260048101839052602401610524565b8366ffffffffffffff811660ff851660280260380182901c64ffffffffff16808510613c575780850382019150613c5f565b848103820391505b5064ffffffffff6038602860ff8816020181811b197fffffffffffffffffffffffffffffffffffffffffffffffffff000000000000009490941690921792909216918416901b1790509392505050565b6020810151603482015160609190911c9060009060f81c612bb6565b604080516002808252606082018352600092839291906020830190803683370190505090508381600081518110613d0457613d046142bd565b602002602001018181525050826001600160a01b031660001b81600181518110613d3057613d306142bd565b60209081029190910101526000613d887f7462776f726c640000000000000000005265736f75726365416363657373000083837e010100010000000000000000000000000000000000000000000000000000006123aa565b9050611c208160f81c90565b60606000613da28560801c90565b90506fffffffffffffffffffffffffffffffff85166000858281613dc857613dc86145d4565b04905060405193506020840160208202810160405281855260005b82811015613e03578451871c825293870193602090910190600101613de3565b50505050509392505050565b604051806101000160405280600081526020016000815260200160006002811115613e3c57613e3c613ec0565b815260200160008152602001600081526020016000815260200160008152602001600081525090565b600060208284031215613e7757600080fd5b5035919050565b600060208284031215613e9057600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610b8957600080fd5b634e487b7160e01b600052602160045260246000fd5b60038110613ef457634e487b7160e01b600052602160045260246000fd5b50565b81518152602080830151908201526040820151610100820190613f1981613ed6565b80604084015250606083015160608301526080830151608083015260a083015160a083015260c083015160c083015260e083015160e083015292915050565b6001600160a01b0381168114613ef457600080fd5b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715613fac57613fac613f6d565b604052919050565b600067ffffffffffffffff821115613fce57613fce613f6d565b50601f01601f191660200190565b600082601f830112613fed57600080fd5b8135614000613ffb82613fb4565b613f83565b81815284602083860101111561401557600080fd5b816020850160208301376000918101602001919091529392505050565b60008060006060848603121561404757600080fd5b833561405281613f58565b925060208401359150604084013567ffffffffffffffff81111561407557600080fd5b61408186828701613fdc565b9150509250925092565b6020810161409883613ed6565b91905290565b6000806000606084860312156140b357600080fd5b83359250602084013591506040840135600381106140d057600080fd5b809150509250925092565b600080604083850312156140ee57600080fd5b82359150602083013561410081613f58565b809150509250929050565b6000806040838503121561411e57600080fd5b82359150602083013567ffffffffffffffff81111561413c57600080fd5b61414885828601613fdc565b9150509250929050565b60005b8381101561416d578181015183820152602001614155565b50506000910152565b6000815180845261418e816020860160208601614152565b601f01601f19169290920160200192915050565b8281526040602082015260006111406040830184614176565b600082601f8301126141cc57600080fd5b81516141da613ffb82613fb4565b8181528460208386010111156141ef57600080fd5b611140826020830160208701614152565b60006020828403121561421257600080fd5b815167ffffffffffffffff81111561422957600080fd5b611140848285016141bb565b634e487b7160e01b600052601160045260246000fd5b8082018082111561047457610474614235565b6000600019820361427157614271614235565b5060010190565b60006020828403121561428a57600080fd5b8151610b8981613f58565b8381526142a183613ed6565b826020820152606060408201526000611c206060830184614176565b634e487b7160e01b600052603260045260246000fd5b6000815160208301517fffffffff000000000000000000000000000000000000000000000000000000008082169350600483101561431b5780818460040360031b1b83161693505b505050919050565b60008151808452602080850194506020840160005b8381101561435457815187529582019590820190600101614338565b509495945050505050565b8381526060602082015260006143786060830185614323565b9050826040830152949350505050565b60008060006060848603121561439d57600080fd5b835167ffffffffffffffff808211156143b557600080fd5b6143c1878388016141bb565b94506020860151935060408601519150808211156143de57600080fd5b50614081868287016141bb565b85815260a06020820152600061440460a0830187614323565b60ff86166040840152828103606084015261441f8186614176565b9150508260808301529695505050505050565b84815260806020820152600061444b6080830186614323565b60ff949094166040830152506060015292915050565b60006020828403121561447357600080fd5b5051919050565b88815287602082015261448c87613ed6565b60f89690961b604087015260418601949094526061850192909252608184015260a183015260c182015260e10192915050565b85815260a0602082015260006144d860a0830187614323565b82810360408401526144ea8187614176565b905084606084015282810360808401526145048185614176565b98975050505050505050565b600060ff821660ff810361452657614526614235565b60010192915050565b8481526080602082015260006145486080830186614323565b60ff8516604084015282810360608401526145638185614176565b979650505050505050565b8181038181111561047457610474614235565b808202811582820484141761047457610474614235565b8281526000602080830184516020860160005b828110156145c7578151845292840192908401906001016145ab565b5091979650505050505050565b634e487b7160e01b600052601260045260246000fd5b6060815260006145fd6060830186614323565b65ffffffffffff851660208401528281036040840152610e998185614176565b8481526080602082015260006146366080830186614323565b65ffffffffffff8516604084015282810360608401526145638185614176565b7fffff0000000000000000000000000000000000000000000000000000000000008416815260007f3a0000000000000000000000000000000000000000000000000000000000000080600284015284516146b7816003860160208901614152565b8084019050816003820152845191506146d7826004830160208801614152565b0160040195945050505050565b6040815260006146f76040830185614176565b90506001600160a01b03831660208301529392505050565b60008251614721818460208701614152565b9190910192915050565b60808152600061473e6080830187614323565b82810360208401526147508187614176565b905084604084015282810360608401526145638185614176565b86815260c06020820152600061478360c0830188614323565b82810360408401526147958188614176565b905085606084015282810360808401526147af8186614176565b9150508260a0830152979650505050505050565b7fffff00000000000000000000000000000000000000000000000000000000000084168152826020820152606060408201526000611c206060830184614176565b64ffffffffff81811683821601908082111561482257614822614235565b5092915050565b87815260e06020820152600061484260e0830189614323565b60ff8816604084015264ffffffffff87811660608501528616608084015260a0830185905282810360c08401526148798185614176565b9a9950505050505050505050565b60c08152600061489a60c0830189614323565b60ff8816602084015265ffffffffffff8716604084015264ffffffffff8616606084015284608084015282810360a08401526148d68185614176565b9998505050505050505050565b600084516148f5818460208901614152565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b6060815260006149356060830186614176565b6020830194909452506040015291905056fea264697066735822122021386ea8bd5ecafffb03dd69f22a4529bb58992ad444d7bbc8874a6f742c0f7164736f6c63430008180033","sourceMap":"1812:6243:211:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2973:144;;;;;;;;;;-1:-1:-1;2973:144:211;;;;;:::i;:::-;3106:2;3082:26;;2973:144;;;;-1:-1:-1;;;;;363:55:229;;;345:74;;333:2;318:18;2973:144:211;;;;;;;;2331:198:123;;;;;;;;;;-1:-1:-1;2331:198:123;;;;;:::i;:::-;;:::i;:::-;;;932:14:229;;925:22;907:41;;895:2;880:18;2331:198:123;767:187:229;7929:124:211;;;;;;;;;;-1:-1:-1;7929:124:211;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;1262:113:123:-;;;;;;;;;;;;;:::i;4111:837:211:-;;;;;;;;;;-1:-1:-1;4111:837:211;;;;;:::i;:::-;;:::i;:::-;;;4284:25:229;;;4272:2;4257:18;4111:837:211;4138:177:229;6099:492:211;;;;;;;;;;-1:-1:-1;6099:492:211;;;;;:::i;:::-;;:::i;1989:129::-;;;;;;;;;;-1:-1:-1;1989:129:211;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;1616:110:123:-;;;;;;;;;;-1:-1:-1;3800:14:123;-1:-1:-1;;3796:25:123;3783:39;1616:110;1262:113;1853:130:211;;;;;;;;;;-1:-1:-1;1853:130:211;;;;;:::i;:::-;;:::i;3123:413::-;;;;;;;;;;-1:-1:-1;3123:413:211;;;;;:::i;:::-;;:::i;4954:545::-;;;;;;:::i;:::-;;:::i;:::-;;2460:266;;;;;;;;;;-1:-1:-1;2460:266:211;;;;;:::i;:::-;;:::i;3542:212::-;;;;;;;;;;-1:-1:-1;3542:212:211;;;;;:::i;:::-;;:::i;6597:219::-;;;;;;;;;;-1:-1:-1;6597:219:211;;;;;:::i;:::-;;:::i;5505:588::-;;;;;;;;;;-1:-1:-1;5505:588:211;;;;;:::i;:::-;;:::i;7662:125::-;;;;;;;;;;-1:-1:-1;7662:125:211;;;;;:::i;:::-;;:::i;1942:98:123:-;;;;;;;;;;;;;:::i;7793:130:211:-;;;;;;;;;;-1:-1:-1;7793:130:211;;;;;:::i;:::-;;:::i;2732:143::-;;;;;;;;;;-1:-1:-1;2732:143:211;;;;;:::i;:::-;2830:37;;;2732:143;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;7929:124:211:-;7989:16;;:::i;:::-;8024:22;8034:11;8024:9;:22::i;1262:113:123:-;1305:14;1334:36;:34;:36::i;:::-;1327:43;;1262:113;:::o;4111:837:211:-;4221:19;4256:24;4283:28;:26;:28::i;:::-;4256:55;-1:-1:-1;4348:16:211;4329:35;;4321:83;;;;-1:-1:-1;;;4321:83:211;;6255:2:229;4321:83:211;;;6237:21:229;6294:2;6274:18;;;6267:30;6333:34;6313:18;;;6306:62;6404:5;6384:18;;;6377:33;6427:19;;4321:83:211;;;;;;;;;4421:8;:6;:8::i;:::-;-1:-1:-1;;;;;4414:21:211;;4449:37;4465:20;4449:15;:37::i;:::-;4488:65;;-1:-1:-1;;;;;6649:55:229;;4488:65:211;;;6631:74:229;6721:18;;;6714:34;;;6604:18;;4488:65:211;;;-1:-1:-1;;4488:65:211;;;;;;;;;;;;;;;;;;;;4414:149;;4488:65;4414:149;;;;;;;;;4488:65;4414:149;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4414:149:211;;;;;;;;;;;;:::i;:::-;;4587:35;4605:16;4587:17;:35::i;:::-;4573:49;;4632:41;4652:11;4665:7;4632:19;:41::i;:::-;4683:52;4705:11;4718:16;4683:21;:52::i;:::-;4754:25;4774:4;4754:19;:25::i;:::-;4753:26;4745:58;;;;-1:-1:-1;;;4745:58:211;;8662:2:229;4745:58:211;;;8644:21:229;8701:2;8681:18;;;8674:30;8740:21;8720:18;;;8713:49;8779:18;;4745:58:211;8460:343:229;4745:58:211;4813:31;4833:4;4839;4813:19;:31::i;:::-;4854:37;4873:11;4886:4;4854:18;:37::i;:::-;4901:40;4914:16;4932:8;4901:12;:40::i;:::-;4246:702;4111:837;;;;;:::o;6099:492::-;6174:20;6224:14;6235:2;6224:10;:14::i;:::-;6210:10;:28;6206:379;;-1:-1:-1;6269:2:211;6099:492;;;:::o;6206:379::-;6307:9;6302:273;6322:2;6318:1;:6;6302:273;;;6366:10;6349:13;6360:1;6349:10;:13::i;:::-;:27;;:61;;;;-1:-1:-1;6400:10:211;6380:17;6391:5;:1;6395;6391:5;:::i;:::-;6380:10;:17::i;:::-;:30;6349:61;6345:155;;;6449:5;:1;6453;6449:5;:::i;:::-;6434:20;;6476:5;;6345:155;6539:3;;;;:::i;:::-;;;;6302:273;;;;6099:492;;;:::o;1989:129::-;2049:14;2084:27;2099:11;2084:14;:27::i;1853:130::-;1912:13;1945:31;1964:11;1945:18;:31::i;3123:413::-;3193:4;3209:20;3232:28;3248:11;3106:2;3082:26;;2973:144;3232:28;3209:51;-1:-1:-1;2830:37:211;;;3270:15;3359:17;:15;:17::i;:::-;-1:-1:-1;;;;;3359:25:211;;3385:7;3359:34;;;;;;;;;;;;;4284:25:229;;4272:2;4257:18;;4138:177;3359:34:211;;;;;;;;;;;;;;;;;;;-1:-1:-1;3359:34:211;;;;;;;;-1:-1:-1;;3359:34:211;;;;;;;;;;;;:::i;:::-;;;3355:135;;;3436:17;:15;:17::i;:::-;-1:-1:-1;;;;;3436:25:211;;3462:7;3436:34;;;;;;;;;;;;;4284:25:229;;4272:2;4257:18;;4138:177;3436:34:211;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3426:44;;3394:87;3355:135;3517:12;-1:-1:-1;;;;;3506:23:211;:7;-1:-1:-1;;;;;3506:23:211;;3499:30;;;;;3123:413;;;:::o;4954:545::-;5069:33;5090:11;5069:20;:33::i;:::-;5068:34;5060:90;;;;-1:-1:-1;;;5060:90:211;;9785:2:229;5060:90:211;;;9767:21:229;9824:2;9804:18;;;9797:30;9863:34;9843:18;;;9836:62;9934:13;9914:18;;;9907:41;9965:19;;5060:90:211;9583:407:229;5060:90:211;5168:21;5177:11;5168:8;:21::i;:::-;5160:53;;;;-1:-1:-1;;;5160:53:211;;10197:2:229;5160:53:211;;;10179:21:229;10236:2;10216:18;;;10209:30;10275:21;10255:18;;;10248:49;10314:18;;5160:53:211;9995:343:229;5160:53:211;5223:26;5291:34;5306:11;5319:5;5291:14;:34::i;:::-;5382:110;5435:16;5453:11;5477;5466:23;;;;;;4284:25:229;;4272:2;4257:18;;4138:177;5466:23:211;;;;-1:-1:-1;;5466:23:211;;;;;;;;;;5400:91;;;;;;;:::i;:::-;;;;-1:-1:-1;;5400:91:211;;;;;;;;;;;;;;;;;;;;5382:17;:110::i;:::-;;5050:449;4954:545;;;:::o;2460:266::-;2534:19;2565:20;2588:17;:15;:17::i;:::-;-1:-1:-1;;;;;2588:25:211;;2614:16;2588:43;;;;;;;;;;;;;4284:25:229;;4272:2;4257:18;;4138:177;2588:43:211;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2697:2;2663:36;-1:-1:-1;;2663:36:211;:55;;;;;;-1:-1:-1;;2460:266:211:o;3542:212::-;3621:4;3644:31;3663:11;3644:18;:31::i;:::-;:103;;;;;3742:5;-1:-1:-1;;;;;3679:68:211;:17;:15;:17::i;:::-;:59;;;;;2830:37;;;3679:59;;;4284:25:229;-1:-1:-1;;;;;3679:25:211;;;;;;;4257:18:229;;3679:59:211;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;3679:68:211;;3644:103;3637:110;3542:212;-1:-1:-1;;;3542:212:211:o;6597:219::-;6691:21;6700:11;6691:8;:21::i;:::-;6683:60;;;;-1:-1:-1;;;6683:60:211;;10974:2:229;6683:60:211;;;10956:21:229;11013:2;10993:18;;;10986:30;11052:28;11032:18;;;11025:56;11098:18;;6683:60:211;10772:350:229;6683:60:211;6753:56;2830:37;;;6800:8;6753:12;:56::i;:::-;6597:219;;:::o;5505:588::-;5570:21;5579:11;5570:8;:21::i;:::-;5562:52;;;;-1:-1:-1;;;5562:52:211;;11329:2:229;5562:52:211;;;11311:21:229;11368:2;11348:18;;;11341:30;11407:20;11387:18;;;11380:48;11445:18;;5562:52:211;11127:342:229;5562:52:211;5633:33;5654:11;5633:20;:33::i;:::-;5632:34;5624:72;;;;-1:-1:-1;;;5624:72:211;;11676:2:229;5624:72:211;;;11658:21:229;11715:2;11695:18;;;11688:30;11754:27;11734:18;;;11727:55;11799:18;;5624:72:211;11474:349:229;5624:72:211;5706:26;5735:22;5745:11;5735:9;:22::i;:::-;5785:1;5767:15;;;:19;5825:16;;;;5796:19;;;:46;5706:51;-1:-1:-1;5852:33:211;5862:11;5706:51;5852:9;:33::i;:::-;5902:8;:6;:8::i;:::-;5895:51;;;;;;;;12028:25:229;;;5938:7:211;12069:18:229;;;12062:34;-1:-1:-1;;;;;5895:29:211;;;;;;;12001:18:229;;5895:51:211;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5993:8;:6;:8::i;:::-;-1:-1:-1;;;;;5986:38:211;;6025:11;5986:51;;;;;;;;;;;;;4284:25:229;;4272:2;4257:18;;4138:177;5986:51:211;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6047:39;6068:11;6081:4;6047:20;:39::i;7662:125::-;7722:7;7748:32;7768:11;7748:19;:32::i;1942:98:123:-;1981:7;2003:32;:30;:32::i;7793:130:211:-;7858:7;7884:32;7904:11;7884:19;:32::i;13158:402:194:-;13212:23;;:::i;:::-;13272:16;;;13286:1;13272:16;;;;;;;;;13243:26;;13272:16;;;;;;;;;;;-1:-1:-1;13272:16:194;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;:::-;13498:57;13158:402;-1:-1:-1;;;;;;13158:402:194: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;6996:347:211:-;7052:7;7071:25;7099:42;:40;:42::i;:::-;7071:70;;7151:24;7178:50;7206:17;7226:1;7178:19;:50::i;:::-;:54;;7231:1;7178:54;:::i;:::-;7151:81;;7242:61;7262:17;7281:1;7285:16;7242:19;:61::i;1157:186:220:-;1215:10;1240:100;1275:15;1303:9;1320:18;1240:25;:100::i;4730:249:178:-;4828:16;;;4842:1;4828:16;;;;;;;;;4799:26;;4828:16;;;;;;;;;;;-1:-1:-1;4828:16:178;4799:45;;4865:11;4850:9;4860:1;4850:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;4883:91;1163:66;1147:83;;4920:9;4931:1;4952:5;4934:25;;;;;;;12445:2:229;12441:15;;;;-1:-1:-1;;12437:88:229;12425:101;;12551:2;12542:12;;12296:264;4934:25:178;;;;-1:-1:-1;;4934:25:178;;;;;;;;;1292:66;4883:26;:91::i;:::-;4793:186;4730:249;;:::o;3480:255::-;3582:16;;;3596:1;3582:16;;;;;;;;;3553:26;;3582:16;;;;;;;;;;;-1:-1:-1;3582:16:178;3553:45;;3619:11;3604:9;3614:1;3604:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;3637:93;1163:66;1147:83;;3674:9;3685:1;3706:7;3688:27;;;;;;12694:19:229;;12738:2;12729:12;;12565:182;2594:287:189;2700:16;;;2714:1;2700:16;;;;;;;;;2653:10;;;;2700:16;;;;;;;;;;;;-1:-1:-1;2700:16:189;2671:45;;2737:8;2722:9;2732:1;2722:12;;;;;;;;:::i;:::-;;;;;;;;;;:23;2752:13;2768:64;1069:66;2805:9;2752:13;1198:66;2768:26;:64::i;:::-;2752:80;;2846:29;2867:5;2854:20;;6948:5;6862:97;2846:29;2838:38;2594:287;-1:-1:-1;;;;2594:287:189:o;3890:240::-;3982:16;;;3996:1;3982:16;;;;;;;;;3953:26;;3982:16;;;;;;;;;;;-1:-1:-1;3982:16:189;3953:45;;4019:8;4004:9;4014:1;4004:12;;;;;;;;:::i;:::-;;;;;;:23;;;;;4034:91;1069:66;1053:83;;4071:9;4082:1;4103:5;4085:25;;;;;;12903:14:229;12896:22;12891:3;12887:32;12875:45;;12945:1;12936:11;;12752:201;4085:25:189;;;;-1:-1:-1;;4085:25:189;;;;;;;;;1198:66;4034:26;:91::i;5941:246:178:-;6037:16;;;6051:1;6037:16;;;;;;;;;6008:26;;6037:16;;;;;;;;;;;-1:-1:-1;6037:16:178;6008:45;;6074:11;6059:9;6069:1;6059:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;6092:90;1163:66;1147:83;;6129:9;6140:1;6161:4;6143:24;;;;;;12694:19:229;;12738:2;12729:12;;12565:182;6822:168:211;6904:79;6925:38;6942:20;6925:16;:38::i;:::-;6965:7;6974:8;6904:20;:79::i;3297:296:183:-;3403:16;;;3417:1;3403:16;;;;;;;;;3348:18;;;;3403:16;;;;;;;;;;;;-1:-1:-1;3403:16:183;3374:45;;3456:5;3440:23;;3425:9;3435:1;3425:12;;;;;;;;:::i;:::-;;;;;;;;;;:38;3470:13;3486:64;1061:66;3523:9;3470:13;-1:-1:-1;;;3486:26:183;:64::i;5610:288:194:-;5719:16;;;5733:1;5719:16;;;;;;;;;5669:13;;;;5719:16;;;;;;;;;;;;-1:-1:-1;5719:16:194;5690:45;;5756:8;5741:9;5751:1;5741:12;;;;;;;;:::i;:::-;;;;;;;;;;:23;5771:13;5787:64;1303:66;5824:9;5835:1;1432:66;5787:26;:64::i;:::-;5771:80;-1:-1:-1;5872:20:194;;;;5864:29;;;;;;;;:::i;5306:279:178:-;5416:16;;;5430:1;5416:16;;;;;;;;;5367:12;;;;5416:16;;;;;;;;;;;;-1:-1:-1;5416:16:178;5387:45;;5453:11;5438:9;5448:1;5438:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;5471:13;5487:64;1163:66;5524:9;5535:1;1292:66;5487:26;:64::i;2279:175:211:-;2329:30;2404:42;:40;:42::i;6512:295:178:-;6623:16;;;6637:1;6623:16;;;;;;;;;6575:11;;;;6623:16;;;;;;;;;;;;-1:-1:-1;6623:16:178;6594:45;;6660:11;6645:9;6655:1;6645:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;6678:13;6694:64;1163:66;6731:9;6742:1;1292:66;6694:26;:64::i;7489:167:211:-;7551:4;7590:17;:15;:17::i;:::-;:59;;;;;2830:37;;;7590:59;;;4284:25:229;-1:-1:-1;;;;;7590:25:211;;;;;;;4257:18:229;;7590:59:211;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;7574:75:211;:12;:10;:12::i;:::-;-1:-1:-1;;;;;7574:75:211;;;7489:167;-1:-1:-1;;7489:167:211:o;6265:248:194:-;6360:16;;;6374:1;6360:16;;;;;;;;;6331:26;;6360:16;;;;;;;;;;;-1:-1:-1;6360:16:194;6331:45;;6397:8;6382:9;6392:1;6382:12;;;;;;;;:::i;:::-;;;;;;;;;;:23;6412:96;1303:66;6449:9;6460:1;6486:5;6480:12;;;;;;;;:::i;:::-;6463:30;;;;;;;13290:3:229;13286:16;;;;13304:66;13282:89;13270:102;;13397:1;13388:11;;13145:260;6463:30:194;;;;-1:-1:-1;;6463:30:194;;;;;;;;;1432:66;6412:26;:96::i;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;;;13966:98:229;13939:18;;3713:52:107;13822:248:229;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;15526:545:194:-;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:194;;15867:25;;15831:30;;15928:16;;;;;;;;;;;;-1:-1:-1;15928:16:194;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;:::-;15591:480;;;;15526:545;;:::o;7183:249:178:-;7280:16;;;7294:1;7280:16;;;;;;;;;7251:26;;7280:16;;;;;;;;;;;-1:-1:-1;7280:16:178;7251:45;;7317:11;7302:9;7312:1;7302:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;7335:92;1163:66;1147:83;;7372:9;7383:1;7404:6;7386:26;;;;;;12903:14:229;12896:22;12891:3;12887:32;12875:45;;12945:1;12936:11;;12752:201;4071:290:178;4183:16;;;4197:1;4183:16;;;;;;;;;4133:13;;;;4183:16;;;;;;;;;;;;-1:-1:-1;4183:16:178;4154:45;;4220:11;4205:9;4215:1;4205:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;4238:13;4254:64;1163:66;4291:9;4302:1;1292:66;4254:26;:64::i;:::-;4332:23;;;4071:290;-1:-1:-1;;;;4071:290:178:o;4048:97:123:-;4089:7;4111:29;:27;:29::i;10661:294:194:-;10780:16;;;10794:1;10780:16;;;;;;;;;10725:18;;;;10780:16;;;;;;;;;;;;-1:-1:-1;10780:16:194;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;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;17711:363:194:-;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:194;;;;-1:-1:-1;17711:363:194;;;-1:-1:-1;;;;;17711:363:194:o;5084:257:195:-;5195:16;;;5136:22;5195:16;;;;;;;;;5218:13;5234:64;1248:66;5166:45;5282:1;1377:66;5234:26;:64::i;:::-;5312:23;;;5084:257;-1:-1:-1;;;5084:257:195:o;2640:388:180:-;2775:16;;;2789:1;2775:16;;;;;;;;2723:15;;;;2775:16;2789:1;2775:16;;;;;;;;;;-1:-1:-1;2775:16:180;2746:45;;2836:15;-1:-1:-1;;;;;2820:33:180;2812:42;;2797:9;2807:1;2797:12;;;;;;;;:::i;:::-;;;;;;:57;;;;;2891:5;2875:23;;2860:9;2870:1;2860:12;;;;;;;;:::i;:::-;;;;;;;;;;:38;2905:13;2921:64;1065:66;2958:9;2905:13;-1:-1:-1;;;2921:26:180;:64::i;:::-;2905:80;2640:388;-1:-1:-1;;;;;2640:388:180:o;4344:349::-;4465:16;;;4479:1;4465:16;;;;;;;;4436:26;;4465:16;;;;;;;;;;-1:-1:-1;4465:16:180;4436:45;;4526:15;-1:-1:-1;;;;;4510:33:180;4502:42;;4487:9;4497:1;4487:12;;;;;;;;:::i;:::-;;;;;;:57;;;;;4581:5;4565:23;;4550:9;4560:1;4550:12;;;;;;;;:::i;:::-;;;;;;:38;;;;;4595:93;1065:66;1049:83;;4632:9;4643:1;4664:7;4646:27;;;;;;12694:19:229;;12738:2;12729:12;;12565:182;4646:27:180;;;;-1:-1:-1;;4646:27:180;;;;;;;;;-1:-1:-1;;;4595:26:180;:93::i;:::-;4430:263;4344:349;;;:::o;1046:257:124:-;1133:10;1262:26;438:6;451:5:41;1262:26:124;:::i;:::-;-1:-1:-1;;1244:13:124;;:45;;451:5:41;1208:31:124;;;;;1189:15;;;:51;:101;;-1:-1:-1;1046:257:124;;;;;:::o;10761:455:46:-;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;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10927:289;10761:455;;;;;:::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;1465:182:91:-;1524:10;1547:97;1583:14;1610:9;1627:14;1547:25;:97::i;3806:271:90:-;3933:16;;;3947:1;3933:16;;;;;;;;;3904:26;;3933:16;;;;;;;;;;;-1:-1:-1;3933:16:90;3904:45;;3986:7;3970:25;;3955:9;3965:1;3955:12;;;;;;;;:::i;:::-;;;;;;:40;;;;;4002:70;4030:8;4040:9;4051:1;4061:8;4002:27;:70::i;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;:::-;6214:57;;;;;;;;5805:471;;;:::o;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;18741:348:194:-;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;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;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;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;16807:746:194:-;16899:16;16923:15;16946:13;16967:20;16995:14;17017:16;17041:18;17067:13;17115:26;17132:5;17139:1;35409:27:23;35423:4;35409:27;35403:34;;35277:170;17115:26:194;35409:27:23;;;35403:34;35409:27;;;35403:34;17107:35:194;;-1:-1:-1;35403:34:23;-1:-1:-1;17221:33:194;;17213:42;;;;;;;;:::i;:::-;35409:27:23;;;35403:34;35409:27;;;35403:34;35409:27;;;35403:34;35409:27;;;35403:34;35409:27;;;;35403:34;16807:746:194;;;;17205:50;;35403:34:23;;;;-1:-1:-1;35403:34:23;-1:-1:-1;35403:34:23;;-1:-1:-1;35403:34:23;-1:-1:-1;16807:746:194;-1:-1:-1;;16807:746:194:o;23107:355:45:-;23279:178;23313:7;23338:8;23368:63;23407:11;23420:10;23368:38;:63::i;:::-;23446:4;23279:16;:178::i;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;11569:424:46:-;11720:21;11744:17;:15;:17::i;:::-;11720:41;-1:-1:-1;11796:4:46;-1:-1:-1;;;;;11771:30:46;;;11767:222;;11811:69;11837:7;11846:8;11856:17;11875:4;11811:25;:69::i;:::-;11767:222;;;11901:81;;;;;-1:-1:-1;;;;;11901:37:46;;;;;:81;;11939:7;;11948:8;;11958:17;;11977:4;;11901:81;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11714:279;11569:424;;;;:::o;8363:236:133:-;8474:19;8495:29;8569:25;8582:11;8569:12;:25::i;:::-;8532:62;;;;-1:-1:-1;8363:236:133;-1:-1:-1;;;;8363:236:133:o;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;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;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;51823:242:45:-;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;;17013:1682;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;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;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;24152:738:45:-;24403:37;24443:66;24491:7;24500:8;24443:47;:66::i;:::-;24403:106;-1:-1:-1;24515:26:45;24551:49;24403:106;24582:17;7070:16:24;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;24551:49:45;24515:86;;24608:277;24662:7;24687:8;24722:17;24765:1;24787:19;24820:4;24856:22;24608:36;:277::i;7963:242:133:-;35423:4:23;35409:27;;35403:34;35409:27;;;35403: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;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;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;3968:25:124;;;:87;;4007:48;4042:12;4007:34;:48::i;:::-;3968:87;;;;;;;;;;;;;;;;;;;;;3772:293;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;3743:330;;;;;3486:592;;;:::o;1546:281:108:-;1708:29;1718:10;1730:6;1708:9;:29::i;:::-;1703:120;;1786:21;:10;:19;:21::i;:::-;1809:6;1754:62;;;;;;;;;;;;:::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;-1:-1:-1;;;3961:24:132;: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;;;;;;12694:19:229;;12738:2;12729:12;;12565:182;5279:27:132;;;;-1:-1:-1;;5279:27:132;;;;;;;;;-1:-1:-1;;;5230:24:132;: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;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;;5042:669:44;5458:4;5452:11;5499:4;5487:17;;-1:-1:-1;;5373:16:44;5546:26;;;5373:16;5369:32;5518:4;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;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;966:162:44:-;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;44254:4001:45:-;44673:14;44652:7;:35;;;44648:161;;44743:14;44759:7;44792;44775:25;;;;;;12694:19:229;;12738:2;12729:12;;12565:182;44775:25:45;;;;-1:-1:-1;;44775:25:45;;;;;;;;;;44704:98;;;;;;;;;;:::i;44648:161::-;44815:27;44845:49;:22;44876:17;7070:16:24;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;44845:49:45;44815:79;;44900:26;44965:4;:11;44951;44929:33;;:19;:33;;;;:::i;:::-;:47;;;;:::i;:::-;44900:76;;45248:18;45225:19;:41;;:98;;;;-1:-1:-1;45304:19:45;45270:30;45289:11;45270:16;:30;:::i;:::-;:53;;;;45225:98;45221:218;;;45340:92;;;;;26250:12:229;26289:15;;;45340:92:45;;;26271:34:229;26341:15;;;26321:18;;;26314:43;26393:15;;26373:18;;;26366:43;26213:18;;45340:92:45;26044:371:229;45221:218:45;45545:19;45526:16;:38;;;45522:140;;;45581:74;;;;;;;;26593:25:229;;;26666:12;26654:25;;26634:18;;;26627:53;26566:18;;45581:74:45;26420:266:229;45522:140:45;45701:36;45740:72;:22;45774:17;45793:18;45740:33;:72::i;:::-;45701:111;;45959:22;45984:24;46000:7;45984:15;:24::i;:::-;45959:49;;46019:9;46014:486;46034:5;:12;46030:1;:16;46014:486;;;46061:9;46083:5;46089:1;46083:8;;;;;;;;:::i;:::-;;;;;;;46061:31;;46104:42;836:6:54;46104:4:45;:14;;;;;:42;;;;:::i;:::-;46100:394;;;3536:35:26;;;;-1:-1:-1;;;;;46158:55:45;;46235:7;46264:8;46303:17;46350:16;46391:11;46430:22;46470:4;46158:327;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;46100:394;-1:-1:-1;46048:3:45;;46014:486;;;-1:-1:-1;46558:32:45;;;:13;46698:107;46716:17;46712:21;;:1;:21;;;46698:107;;;46761:33;:22;46792:1;7070:16:24;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;46761:33:45;46752:42;;;;46735:3;;46698:107;;;;46930:7;46874:277;46957:8;46994:17;47035:5;47064:11;47101:21;47138:4;46874:277;;;;;;;;;;;:::i;:::-;;;;;;;;46506:652;47243:18;47220:19;:41;47216:248;;47271:31;47305:48;47335:7;47344:8;47305:29;:48::i;:::-;695:28:44;;;-1:-1:-1;47216:248:45;47521:27;47551:61;47575:7;47584:8;47594:17;47551:23;:61::i;:::-;47521:91;;47620:92;47652:19;47681:16;47620:92;;47705:4;47620:13;:92::i;:::-;47513:206;47773:9;47768:483;47788:5;:12;47784:1;:16;47768:483;;;47815:9;47837:5;47843:1;47837:8;;;;;;;;:::i;:::-;;;;;;;47815:31;;47858:41;947:6:54;47858:4:45;:14;;;;;:41;;;;:::i;:::-;47854:391;;;3536:35:26;;;;-1:-1:-1;;;;;47911:54:45;;47987:7;48016:8;48055:17;48102:16;48143:11;48182:21;48221:4;47911:325;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;47854:391;-1:-1:-1;47802:3:45;;47768:483;;;;44498:3757;;;;44254:4001;;;;;;;:::o;7829:207:139:-;7940:14;7956:17;8006:25;8019:11;8006:12;:25::i;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;;;-1:-1:-1;;2007:37:124;;3261:1:23;3257:13;;3253:24;2007:42:124;;2003:53;2051:5;2003:53;1993:8;;1973:83;;;2092:30;;;-1:-1:-1;;28531:79:229;;2092:30:124;;;28519:92:229;2092:30:124;;28627:12:229;;;;2092:30:124;;;875:21:23;;;2092:30:124;2142:39;760:164:23;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;51249:282:45:-;51494:30;;;;;;29374:19:229;;;29409:12;;;29402:28;;;51337:7:45;;29446:12:229;;51494:30:45;29185:279:229;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;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;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;40103:220:56:-;40169:24;40201:30;40234:32;40252:6;40260:2;40264:1;40234:17;:32::i;7468:1525:24:-;7596:14;1145:16;7622:25;;7618:120;;;7664:67;;;;;;;;4284:25:229;;;4257:18;;7664:67:24;4138:177:229;7618:120:24;7802:14;6445:61;;;7070:16;;;1063;7070;975;7059:27;7017:70;;;6995:94;;8068:38;;;8064:192;;8151:19;8133:15;:37;8118:52;;;;8064:192;;;8232:15;8210:19;:37;8195:52;;;;8064:192;-1:-1:-1;8572:16:24;975;1063;8439;;;;8428:27;8564:35;;;8882:5;8719:26;8699:46;;;;8698:62;;;8862:25;;;;8892:34;;;;;8861:66;;-1:-1:-1;7468:1525:24;;;;;:::o;7448:223:139:-;35423:4:23;35409:27;;35403:34;35409:27;;;35403:34;7564:35:139;;;;;;7513:14;;7631:33;;7623:42;6862:97:189;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;:::-;4257:78;;4349:29;4370:5;4357:20;;6948:5:189;6862:97;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;;;3341:28;;3116:690;;;2681:1129;;;;;:::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:180:229:-;73:6;126:2;114:9;105:7;101:23;97:32;94:52;;;142:1;139;132:12;94:52;-1:-1:-1;165:23:229;;14:180;-1:-1:-1;14:180:229:o;430:332::-;488:6;541:2;529:9;520:7;516:23;512:32;509:52;;;557:1;554;547:12;509:52;596:9;583:23;646:66;639:5;635:78;628:5;625:89;615:117;;728:1;725;718:12;959:184;-1:-1:-1;;;1008:1:229;1001:88;1108:4;1105:1;1098:15;1132:4;1129:1;1122:15;1148:266;1228:1;1221:5;1218:12;1208:200;;-1:-1:-1;;;1261:1:229;1254:88;1365:4;1362:1;1355:15;1393:4;1390:1;1383:15;1208:200;1148:266;:::o;1419:777::-;1642:13;;1624:32;;1712:4;1700:17;;;1694:24;1672:20;;;1665:54;1766:4;1754:17;;1748:24;1611:3;1596:19;;;1781:43;1748:24;1781:43;:::i;:::-;1862:12;1855:4;1844:9;1840:20;1833:42;;1931:4;1923:6;1919:17;1913:24;1906:4;1895:9;1891:20;1884:54;1994:4;1986:6;1982:17;1976:24;1969:4;1958:9;1954:20;1947:54;2057:4;2049:6;2045:17;2039:24;2032:4;2021:9;2017:20;2010:54;2120:4;2112:6;2108:17;2102:24;2095:4;2084:9;2080:20;2073:54;2183:4;2175:6;2171:17;2165:24;2158:4;2147:9;2143:20;2136:54;1419:777;;;;:::o;2201:154::-;-1:-1:-1;;;;;2280:5:229;2276:54;2269:5;2266:65;2256:93;;2345:1;2342;2335:12;2360:184;-1:-1:-1;;;2409:1:229;2402:88;2509:4;2506:1;2499:15;2533:4;2530:1;2523:15;2549:334;2620:2;2614:9;2676:2;2666:13;;-1:-1:-1;;2662:86:229;2650:99;;2779:18;2764:34;;2800:22;;;2761:62;2758:88;;;2826:18;;:::i;:::-;2862:2;2855:22;2549:334;;-1:-1:-1;2549:334:229:o;2888:246::-;2937:4;2970:18;2962:6;2959:30;2956:56;;;2992:18;;:::i;:::-;-1:-1:-1;3049:2:229;3037:15;-1:-1:-1;;3033:88:229;3123:4;3029:99;;2888:246::o;3139:464::-;3182:5;3235:3;3228:4;3220:6;3216:17;3212:27;3202:55;;3253:1;3250;3243:12;3202:55;3289:6;3276:20;3320:49;3336:32;3365:2;3336:32;:::i;:::-;3320:49;:::i;:::-;3394:2;3385:7;3378:19;3440:3;3433:4;3428:2;3420:6;3416:15;3412:26;3409:35;3406:55;;;3457:1;3454;3447:12;3406:55;3522:2;3515:4;3507:6;3503:17;3496:4;3487:7;3483:18;3470:55;3570:1;3545:16;;;3563:4;3541:27;3534:38;;;;3549:7;3139:464;-1:-1:-1;;;3139:464:229:o;3608:525::-;3695:6;3703;3711;3764:2;3752:9;3743:7;3739:23;3735:32;3732:52;;;3780:1;3777;3770:12;3732:52;3819:9;3806:23;3838:31;3863:5;3838:31;:::i;:::-;3888:5;-1:-1:-1;3940:2:229;3925:18;;3912:32;;-1:-1:-1;3995:2:229;3980:18;;3967:32;4022:18;4011:30;;4008:50;;;4054:1;4051;4044:12;4008:50;4077;4119:7;4110:6;4099:9;4095:22;4077:50;:::i;:::-;4067:60;;;3608:525;;;;;:::o;4687:235::-;4833:2;4818:18;;4845:37;4875:6;4845:37;:::i;:::-;4891:25;;;4687:235;:::o;4927:406::-;5018:6;5026;5034;5087:2;5075:9;5066:7;5062:23;5058:32;5055:52;;;5103:1;5100;5093:12;5055:52;5139:9;5126:23;5116:33;;5196:2;5185:9;5181:18;5168:32;5158:42;;5250:2;5239:9;5235:18;5222:32;5283:1;5276:5;5273:12;5263:40;;5299:1;5296;5289:12;5263:40;5322:5;5312:15;;;4927:406;;;;;:::o;5338:315::-;5406:6;5414;5467:2;5455:9;5446:7;5442:23;5438:32;5435:52;;;5483:1;5480;5473:12;5435:52;5519:9;5506:23;5496:33;;5579:2;5568:9;5564:18;5551:32;5592:31;5617:5;5592:31;:::i;:::-;5642:5;5632:15;;;5338:315;;;;;:::o;5658:390::-;5736:6;5744;5797:2;5785:9;5776:7;5772:23;5768:32;5765:52;;;5813:1;5810;5803:12;5765:52;5849:9;5836:23;5826:33;;5910:2;5899:9;5895:18;5882:32;5937:18;5929:6;5926:30;5923:50;;;5969:1;5966;5959:12;5923:50;5992;6034:7;6025:6;6014:9;6010:22;5992:50;:::i;:::-;5982:60;;;5658:390;;;;;:::o;6759:250::-;6844:1;6854:113;6868:6;6865:1;6862:13;6854:113;;;6944:11;;;6938:18;6925:11;;;6918:39;6890:2;6883:10;6854:113;;;-1:-1:-1;;7001:1:229;6983:16;;6976:27;6759:250::o;7014:329::-;7055:3;7093:5;7087:12;7120:6;7115:3;7108:19;7136:76;7205:6;7198:4;7193:3;7189:14;7182:4;7175:5;7171:16;7136:76;:::i;:::-;7257:2;7245:15;-1:-1:-1;;7241:88:229;7232:98;;;;7332:4;7228:109;;7014:329;-1:-1:-1;;7014:329:229:o;7348:320::-;7555:6;7544:9;7537:25;7598:2;7593;7582:9;7578:18;7571:30;7518:4;7618:44;7658:2;7647:9;7643:18;7635:6;7618:44;:::i;7673:442::-;7726:5;7779:3;7772:4;7764:6;7760:17;7756:27;7746:55;;7797:1;7794;7787:12;7746:55;7826:6;7820:13;7857:49;7873:32;7902:2;7873:32;:::i;7857:49::-;7931:2;7922:7;7915:19;7977:3;7970:4;7965:2;7957:6;7953:15;7949:26;7946:35;7943:55;;;7994:1;7991;7984:12;7943:55;8007:77;8081:2;8074:4;8065:7;8061:18;8054:4;8046:6;8042:17;8007:77;:::i;8120:335::-;8199:6;8252:2;8240:9;8231:7;8227:23;8223:32;8220:52;;;8268:1;8265;8258:12;8220:52;8301:9;8295:16;8334:18;8326:6;8323:30;8320:50;;;8366:1;8363;8356:12;8320:50;8389:60;8441:7;8432:6;8421:9;8417:22;8389:60;:::i;8808:184::-;-1:-1:-1;;;8857:1:229;8850:88;8957:4;8954:1;8947:15;8981:4;8978:1;8971:15;8997:125;9062:9;;;9083:10;;;9080:36;;;9096:18;;:::i;9127:195::-;9166:3;-1:-1:-1;;9190:5:229;9187:77;9184:103;;9267:18;;:::i;:::-;-1:-1:-1;9314:1:229;9303:13;;9127:195::o;9327:251::-;9397:6;9450:2;9438:9;9429:7;9425:23;9421:32;9418:52;;;9466:1;9463;9456:12;9418:52;9498:9;9492:16;9517:31;9542:5;9517:31;:::i;10343:424::-;10565:6;10554:9;10547:25;10581:37;10611:6;10581:37;:::i;:::-;10654:6;10649:2;10638:9;10634:18;10627:34;10697:2;10692;10681:9;10677:18;10670:30;10528:4;10717:44;10757:2;10746:9;10742:18;10734:6;10717:44;:::i;12107:184::-;-1:-1:-1;;;12156:1:229;12149:88;12256:4;12253:1;12246:15;12280:4;12277:1;12270:15;13410:407;13493:5;13533;13527:12;13575:4;13568:5;13564:16;13558:23;13600:66;13692:2;13688;13684:11;13675:20;;13718:1;13710:6;13707:13;13704:107;;;13798:2;13792;13782:6;13779:1;13775:14;13772:1;13768:22;13764:31;13760:2;13756:40;13752:49;13743:58;;13704:107;;;;13410:407;;;:::o;14075:439::-;14128:3;14166:5;14160:12;14193:6;14188:3;14181:19;14219:4;14248;14243:3;14239:14;14232:21;;14287:4;14280:5;14276:16;14310:1;14320:169;14334:6;14331:1;14328:13;14320:169;;;14395:13;;14383:26;;14429:12;;;;14464:15;;;;14356:1;14349:9;14320:169;;;-1:-1:-1;14505:3:229;;14075:439;-1:-1:-1;;;;;14075:439:229:o;14519:468::-;14819:6;14808:9;14801:25;14862:2;14857;14846:9;14842:18;14835:30;14782:4;14882:56;14934:2;14923:9;14919:18;14911:6;14882:56;:::i;:::-;14874:64;;14974:6;14969:2;14958:9;14954:18;14947:34;14519:468;;;;;;:::o;14992:655::-;15134:6;15142;15150;15203:2;15191:9;15182:7;15178:23;15174:32;15171:52;;;15219:1;15216;15209:12;15171:52;15252:9;15246:16;15281:18;15322:2;15314:6;15311:14;15308:34;;;15338:1;15335;15328:12;15308:34;15361:60;15413:7;15404:6;15393:9;15389:22;15361:60;:::i;:::-;15351:70;;15461:2;15450:9;15446:18;15440:25;15430:35;;15511:2;15500:9;15496:18;15490:25;15474:41;;15540:2;15530:8;15527:16;15524:36;;;15556:1;15553;15546:12;15524:36;;15579:62;15633:7;15622:8;15611:9;15607:24;15579:62;:::i;15652:709::-;16022:6;16011:9;16004:25;16065:3;16060:2;16049:9;16045:18;16038:31;15985:4;16092:57;16144:3;16133:9;16129:19;16121:6;16092:57;:::i;:::-;16197:4;16189:6;16185:17;16180:2;16169:9;16165:18;16158:45;16251:9;16243:6;16239:22;16234:2;16223:9;16219:18;16212:50;16279:32;16304:6;16296;16279:32;:::i;:::-;16271:40;;;16348:6;16342:3;16331:9;16327:19;16320:35;15652:709;;;;;;;;:::o;16366:548::-;16690:6;16679:9;16672:25;16733:3;16728:2;16717:9;16713:18;16706:31;16653:4;16754:57;16806:3;16795:9;16791:19;16783:6;16754:57;:::i;:::-;16859:4;16847:17;;;;16842:2;16827:18;;16820:45;-1:-1:-1;16896:2:229;16881:18;16874:34;16746:65;16366:548;-1:-1:-1;;16366:548:229:o;16919:184::-;16989:6;17042:2;17030:9;17021:7;17017:23;17013:32;17010:52;;;17058:1;17055;17048:12;17010:52;-1:-1:-1;17081:16:229;;16919:184;-1:-1:-1;16919:184:229:o;17108:707::-;17455:6;17450:3;17443:19;17492:6;17487:2;17482:3;17478:12;17471:28;17508:37;17538:6;17508:37;:::i;:::-;17579:3;17575:16;;;;17570:2;17561:12;;17554:38;17617:2;17608:12;;17601:28;;;;17654:2;17645:12;;17638:28;;;;17691:3;17682:13;;17675:29;17729:3;17720:13;;17713:29;17767:3;17758:13;;17751:29;17805:3;17796:13;;17108:707;-1:-1:-1;;17108:707:229:o;17820:794::-;18215:6;18204:9;18197:25;18258:3;18253:2;18242:9;18238:18;18231:31;18178:4;18285:57;18337:3;18326:9;18322:19;18314:6;18285:57;:::i;:::-;18390:9;18382:6;18378:22;18373:2;18362:9;18358:18;18351:50;18424:32;18449:6;18441;18424:32;:::i;:::-;18410:46;;18492:6;18487:2;18476:9;18472:18;18465:34;18548:9;18540:6;18536:22;18530:3;18519:9;18515:19;18508:51;18576:32;18601:6;18593;18576:32;:::i;:::-;18568:40;17820:794;-1:-1:-1;;;;;;;;17820:794:229:o;18619:175::-;18656:3;18700:4;18693:5;18689:16;18729:4;18720:7;18717:17;18714:43;;18737:18;;:::i;:::-;18786:1;18773:15;;18619:175;-1:-1:-1;;18619:175:229:o;18799:604::-;19108:6;19097:9;19090:25;19151:3;19146:2;19135:9;19131:18;19124:31;19071:4;19178:57;19230:3;19219:9;19215:19;19207:6;19178:57;:::i;:::-;19283:4;19275:6;19271:17;19266:2;19255:9;19251:18;19244:45;19337:9;19329:6;19325:22;19320:2;19309:9;19305:18;19298:50;19365:32;19390:6;19382;19365:32;:::i;:::-;19357:40;18799:604;-1:-1:-1;;;;;;;18799:604:229:o;19735:128::-;19802:9;;;19823:11;;;19820:37;;;19837:18;;:::i;19868:168::-;19941:9;;;19972;;19989:15;;;19983:22;;19969:37;19959:71;;20010:18;;:::i;20041:640::-;20292:6;20287:3;20280:19;20262:3;20318:2;20351;20346:3;20342:12;20383:6;20377:13;20448:2;20440:6;20436:15;20469:1;20479:175;20493:6;20490:1;20487:13;20479:175;;;20556:13;;20542:28;;20592:14;;;;20629:15;;;;20515:1;20508:9;20479:175;;;-1:-1:-1;20670:5:229;;20041:640;-1:-1:-1;;;;;;;20041:640:229:o;20686:184::-;-1:-1:-1;;;20735:1:229;20728:88;20835:4;20832:1;20825:15;20859:4;20856:1;20849:15;20875:511;21126:2;21115:9;21108:21;21089:4;21152:56;21204:2;21193:9;21189:18;21181:6;21152:56;:::i;:::-;21256:14;21248:6;21244:27;21239:2;21228:9;21224:18;21217:55;21320:9;21312:6;21308:22;21303:2;21292:9;21288:18;21281:50;21348:32;21373:6;21365;21348:32;:::i;21391:616::-;21702:6;21691:9;21684:25;21745:3;21740:2;21729:9;21725:18;21718:31;21665:4;21772:57;21824:3;21813:9;21809:19;21801:6;21772:57;:::i;:::-;21877:14;21869:6;21865:27;21860:2;21849:9;21845:18;21838:55;21941:9;21933:6;21929:22;21924:2;21913:9;21909:18;21902:50;21969:32;21994:6;21986;21969:32;:::i;22012:925::-;22461:66;22453:6;22449:79;22444:3;22437:92;22419:3;22548;22580:2;22576:1;22571:3;22567:11;22560:23;22612:6;22606:13;22628:74;22695:6;22691:1;22686:3;22682:11;22675:4;22667:6;22663:17;22628:74;:::i;:::-;22730:6;22725:3;22721:16;22711:26;;22765:2;22761:1;22757:2;22753:10;22746:22;22799:6;22793:13;22777:29;;22815:75;22881:8;22877:1;22873:2;22869:10;22862:4;22854:6;22850:17;22815:75;:::i;:::-;22910:17;22929:1;22906:25;;22012:925;-1:-1:-1;;;;;22012:925:229:o;22942:339::-;23119:2;23108:9;23101:21;23082:4;23139:44;23179:2;23168:9;23164:18;23156:6;23139:44;:::i;:::-;23131:52;;-1:-1:-1;;;;;23223:6:229;23219:55;23214:2;23203:9;23199:18;23192:83;22942:339;;;;;:::o;23286:287::-;23415:3;23453:6;23447:13;23469:66;23528:6;23523:3;23516:4;23508:6;23504:17;23469:66;:::i;:::-;23551:16;;;;;23286:287;-1:-1:-1;;23286:287:229:o;23578:690::-;23913:3;23902:9;23895:22;23876:4;23940:57;23992:3;23981:9;23977:19;23969:6;23940:57;:::i;:::-;24045:9;24037:6;24033:22;24028:2;24017:9;24013:18;24006:50;24079:32;24104:6;24096;24079:32;:::i;:::-;24065:46;;24147:6;24142:2;24131:9;24127:18;24120:34;24202:9;24194:6;24190:22;24185:2;24174:9;24170:18;24163:50;24230:32;24255:6;24247;24230:32;:::i;24273:899::-;24729:6;24718:9;24711:25;24772:3;24767:2;24756:9;24752:18;24745:31;24692:4;24799:57;24851:3;24840:9;24836:19;24828:6;24799:57;:::i;:::-;24904:9;24896:6;24892:22;24887:2;24876:9;24872:18;24865:50;24938:32;24963:6;24955;24938:32;:::i;:::-;24924:46;;25006:6;25001:2;24990:9;24986:18;24979:34;25062:9;25054:6;25050:22;25044:3;25033:9;25029:19;25022:51;25090:32;25115:6;25107;25090:32;:::i;:::-;25082:40;;;25159:6;25153:3;25142:9;25138:19;25131:35;24273:899;;;;;;;;;:::o;25396:464::-;25643:66;25635:6;25631:79;25620:9;25613:98;25747:6;25742:2;25731:9;25727:18;25720:34;25790:2;25785;25774:9;25770:18;25763:30;25594:4;25810:44;25850:2;25839:9;25835:18;25827:6;25810:44;:::i;25865:174::-;25932:12;25964:10;;;25976;;;25960:27;;25999:11;;;25996:37;;;26013:18;;:::i;:::-;25996:37;25865:174;;;;:::o;26691:901::-;27116:6;27105:9;27098:25;27159:3;27154:2;27143:9;27139:18;27132:31;27079:4;27186:57;27238:3;27227:9;27223:19;27215:6;27186:57;:::i;:::-;27291:4;27279:17;;27274:2;27259:18;;27252:45;27316:12;27364:15;;;27359:2;27344:18;;27337:43;27417:15;;27411:3;27396:19;;27389:44;27464:3;27449:19;;27442:35;;;27514:22;;;27508:3;27493:19;;27486:51;27554:32;27518:6;27571;27554:32;:::i;:::-;27546:40;26691:901;-1:-1:-1;;;;;;;;;;26691:901:229:o;27597:788::-;27962:3;27951:9;27944:22;27925:4;27989:57;28041:3;28030:9;28026:19;28018:6;27989:57;:::i;:::-;28094:4;28086:6;28082:17;28077:2;28066:9;28062:18;28055:45;28148:14;28140:6;28136:27;28131:2;28120:9;28116:18;28109:55;28212:12;28204:6;28200:25;28195:2;28184:9;28180:18;28173:53;28263:6;28257:3;28246:9;28242:19;28235:35;28319:9;28311:6;28307:22;28301:3;28290:9;28286:19;28279:51;28347:32;28372:6;28364;28347:32;:::i;:::-;28339:40;27597:788;-1:-1:-1;;;;;;;;;27597:788:229:o;28650:530::-;28835:3;28873:6;28867:13;28889:66;28948:6;28943:3;28936:4;28928:6;28924:17;28889:66;:::i;:::-;29024:2;29020:15;;;;-1:-1:-1;;29016:88:229;28977:16;;;;29002:103;;;29132:2;29121:14;;29114:30;;;;29171:2;29160:14;;28650:530;-1:-1:-1;;28650:530:229:o;29469:359::-;29672:2;29661:9;29654:21;29635:4;29692:44;29732:2;29721:9;29717:18;29709:6;29692:44;:::i;:::-;29767:2;29752:18;;29745:34;;;;-1:-1:-1;29810:2:229;29795:18;29788:34;29684:52;29469:359;-1:-1:-1;29469:359:229:o","linkReferences":{}},"methodIdentifiers":{"_msgSender()":"119df25f","_msgValue()":"45ec9354","_world()":"e1af802c","enterGame(bytes32)":"c74dedc8","getCharacterTokenId(bytes32)":"f8c67561","getClass(bytes32)":"23801570","getCurrentAvailableLevel(uint256)":"1ecb393f","getExperience(bytes32)":"ebee03bb","getName(bytes32)":"54b8d5e3","getOwner(bytes32)":"deb931a2","getOwnerAddress(bytes32)":"00d43ec6","getPlayerEntityId(uint256)":"8338f0e0","getStats(bytes32)":"0bb700dc","isValidCharacterId(bytes32)":"623daa05","isValidOwner(bytes32,address)":"9b63ec05","mintCharacter(address,bytes32,string)":"143f3021","rollStats(bytes32,bytes32,uint8)":"679ee16d","supportsInterface(bytes4)":"01ffc9a7","updateTokenUri(bytes32,string)":"b27cbcbb"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"}],\"name\":\"EncodedLengths_InvalidLength\",\"type\":\"error\"},{\"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\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"accessedIndex\",\"type\":\"uint256\"}],\"name\":\"Store_IndexOutOfBounds\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes2\",\"name\":\"expected\",\"type\":\"bytes2\"},{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"Store_InvalidResourceType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint40\",\"name\":\"startWithinField\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"fieldLength\",\"type\":\"uint40\"}],\"name\":\"Store_InvalidSplice\",\"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\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"indexed\":false,\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"indexed\":false,\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"indexed\":false,\"internalType\":\"EncodedLengths\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Store_SpliceDynamicData\",\"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\":\"_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\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"enterGame\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"getCharacterTokenId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"getClass\",\"outputs\":[{\"internalType\":\"enum Classes\",\"name\":\"_class\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"experience\",\"type\":\"uint256\"}],\"name\":\"getCurrentAvailableLevel\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"currentLevel\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"getExperience\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"getName\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"_name\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"getOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"getOwnerAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"characterTokenId\",\"type\":\"uint256\"}],\"name\":\"getPlayerEntityId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"getStats\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"strength\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"agility\",\"type\":\"uint256\"},{\"internalType\":\"enum Classes\",\"name\":\"class\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"intelligence\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"baseHp\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"currentHp\",\"type\":\"int256\"},{\"internalType\":\"uint256\",\"name\":\"experience\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"level\",\"type\":\"uint256\"}],\"internalType\":\"struct StatsData\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"isValidCharacterId\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"isValidOwner\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"name\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"tokenUri\",\"type\":\"string\"}],\"name\":\"mintCharacter\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"userRandomNumber\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"enum Classes\",\"name\":\"class\",\"type\":\"uint8\"}],\"name\":\"rollStats\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"tokenUri\",\"type\":\"string\"}],\"name\":\"updateTokenUri\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"errors\":{\"EncodedLengths_InvalidLength(uint256)\":[{\"params\":{\"length\":\"The length of the encoded lengths.\"}}],\"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.\"}}],\"Store_IndexOutOfBounds(uint256,uint256)\":[{\"details\":\"Raised if the start index is larger than the previous length of the field.\",\"params\":{\"accessedIndex\":\"FIXME\",\"length\":\"FIXME\"}}],\"Store_InvalidResourceType(bytes2,bytes32,string)\":[{\"params\":{\"expected\":\"The expected resource type.\",\"resourceId\":\"The resource ID.\",\"resourceIdString\":\"The stringified resource ID (for easier debugging).\"}}],\"Store_InvalidSplice(uint40,uint40,uint40)\":[{\"details\":\"Raised if the splice total length of the field is changed but the splice is not at the end of the field.\",\"params\":{\"deleteCount\":\"The number of bytes to delete in the splice operation.\",\"fieldLength\":\"The field length for the splice operation.\",\"startWithinField\":\"The start index within the field for the splice operation.\"}}],\"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_SpliceDynamicData(bytes32,bytes32[],uint8,uint48,uint40,bytes32,bytes)\":{\"params\":{\"data\":\"The data to insert into the dynamic data of the record at the start byte.\",\"deleteCount\":\"The number of bytes to delete in the splice operation.\",\"dynamicFieldIndex\":\"The index of the dynamic field to splice data, relative to the start of the dynamic fields. (Dynamic field index = field index - number of static fields)\",\"encodedLengths\":\"The encoded lengths of the dynamic data of the record.\",\"keyTuple\":\"An array representing the composite 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.\"}},\"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.\"}},\"getOwnerAddress(bytes32)\":{\"details\":\"extracts the character nft owner address from the character Id\"},\"mintCharacter(address,bytes32,string)\":{\"params\":{\"account\":\"the address of the account that will own the character\",\"name\":\"the keccack256 hash of the characters name to check for duplicates\",\"tokenUri\":\"the token uri to be set for the character token\"},\"returns\":{\"characterId\":\"the bytes32 character id combination of the owner address and the tokenId\"}},\"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\":{\"EncodedLengths_InvalidLength(uint256)\":[{\"notice\":\"Error raised when the provided encoded lengths has an invalid length.\"}],\"Slice_OutOfBounds(bytes,uint256,uint256)\":[{\"notice\":\"Error raised when the provided slice is out of bounds.\"}],\"Store_IndexOutOfBounds(uint256,uint256)\":[{\"notice\":\"Error raised if the provided index is out of bounds.\"}],\"Store_InvalidResourceType(bytes2,bytes32,string)\":[{\"notice\":\"Error raised if the provided resource ID cannot be found.\"}],\"Store_InvalidSplice(uint40,uint40,uint40)\":[{\"notice\":\"Error raised if the provided splice is invalid.\"}],\"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_SpliceDynamicData(bytes32,bytes32[],uint8,uint48,uint40,bytes32,bytes)\":{\"notice\":\"Emitted when dynamic data in the store is spliced.\"},\"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/CharacterSystem.sol\":\"CharacterSystem\"},\"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\":\"0xdd3ebcb4c411e951e1d5c68d6287c597f8f6ab874b48ae96600e024326bd7059\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://61cf2ec85c2dcfde0de8d6c12cdb78b59f8b94a8662dd122bc1aca013cc69c7c\",\"dweb:/ipfs/QmdsELzf5enAbpe5ERXRJgyg2PvtiAUiiX7dT85BLtKpCM\"]},\"lib/ERC1155-puppet/IERC1155System.sol\":{\"keccak256\":\"0x324481afcc10bb871430340e0ddea5613a7a7dc7436ad8067b64e787791d9c74\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cbf2f86e7c18feb303c9201417a85af320f148907fa637b25b56e7484325d64c\",\"dweb:/ipfs/QmW35pffC8PK5Y7afxLc6qYYiDjH4NayRggogPazy5JsEi\"]},\"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/interfaces/IERC20System.sol\":{\"keccak256\":\"0xedfc9636840fcf8c665f0535b0e9469ba191a2b028d6913dcd7a134dc9844ec1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d9cc01f46fd862d4cb5a5efd93911c5b98420112ab999d46f0c24fec74a58b4b\",\"dweb:/ipfs/QmXrpDMPj7VS8ywkt4mkhE1FatJcQtR2gCAwr7aEYonmrg\"]},\"node_modules/@latticexyz/world-modules/src/modules/erc721-puppet/IERC721.sol\":{\"keccak256\":\"0x87b18a3fe819a06930749c60912e28d3add40de2881d976d4d7565858468ac8e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://90d6f52696977e65bbc4a3d937ac4be843e2d1006591b861b2b3038c7a7e1d16\",\"dweb:/ipfs/QmS2vsjycwSgGPgWrPEDdFK5WTvE6ixhzYQLL57xHJAXNv\"]},\"node_modules/@latticexyz/world-modules/src/modules/erc721-puppet/IERC721Errors.sol\":{\"keccak256\":\"0xc408b8c878980829678cf94ca6d83c71c0587e802221d226c84b66c60a198903\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9a04ce4eafe37b18476b4dbbd207eff2e33b1ea073a06d5ff8df8e08aa69ac47\",\"dweb:/ipfs/QmTqKcfCXBntqtEcGobHMTJyy37xv93t1342RvqtpgnDQx\"]},\"node_modules/@latticexyz/world-modules/src/modules/erc721-puppet/IERC721Events.sol\":{\"keccak256\":\"0x4ea76f18fbb68319807fe1fa39d3035b8177bd30c3977c40ed41e9810ffebb13\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2f0508d70a34ce0661e52b4201996bea5e61e0108a4a218acc3728be5d51fbc2\",\"dweb:/ipfs/QmQx9bX9cYUENRvXV55NhHL3TFiNXGqvVyy8aYDA1KCagn\"]},\"node_modules/@latticexyz/world-modules/src/modules/erc721-puppet/IERC721Mintable.sol\":{\"keccak256\":\"0xa647391a56ac17e6e73a5fb04d641c8a97abde19a7da80a8fc80902d7cce36aa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://862f638b4e4b300067f6a485580ec904d428281de46e3a186b558ff3e15e4733\",\"dweb:/ipfs/QmUkgdfZJtwyBSrCyckw9GVFrZsD1rUAK2Nd3GBH12duLo\"]},\"node_modules/@latticexyz/world-modules/src/modules/erc721-puppet/constants.sol\":{\"keccak256\":\"0xf8a29616bcb176258295bae6dcb8c9eada8e18812c823c3490ff238370f3a64d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f800f102f773e4c5b2281b44a9f477d7a4d7dca13ddb369fa0d4479cddbfb04c\",\"dweb:/ipfs/QmSiqQuHY8cPTXkpnK3NyZCkeATzjYNpoR8vrijrfLdwqn\"]},\"node_modules/@latticexyz/world-modules/src/modules/erc721-puppet/tables/TokenURI.sol\":{\"keccak256\":\"0x7fe5517ff1843d9fe70dd37beb18a954efe3c62f2d484fbf8e0646f22a1493a7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://abc83f7656b5a33f695d900f9da3fb5896054a41eb0f5c963d2b01794a8461e3\",\"dweb:/ipfs/QmWXV2jZ8Tp3k4zNyqG3GNN9SchsDK1zSQwFXCvEGmnRuy\"]},\"node_modules/@latticexyz/world-modules/src/modules/erc721-puppet/utils.sol\":{\"keccak256\":\"0xd497c2610d37ef3b800e3aef80d36661c60b5e36325565c3bc5c3ce986b641a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7406b572bdef593e1a8d0faaa94e9869108fc2cc7955da3aa3a62a56428c9a0c\",\"dweb:/ipfs/QmPKnuzAkPVyhpJz25fNCfGcvyPPZZWgsm5QbKZva82EWS\"]},\"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/@pythnetwork/entropy-sdk-solidity/EntropyEvents.sol\":{\"keccak256\":\"0xd8a8c77c864481ee7620adf8b92219f3c68c626271887e26330362642053f504\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://f918e6fcdf4cc8c991ff4c7d81860c6b0e3b4b536e543361309cfecd8a8ecf67\",\"dweb:/ipfs/QmdBuzs7dyGGaceP4QDqu3MLnqeBLbsEpCKGWyz3a9kY8v\"]},\"node_modules/@pythnetwork/entropy-sdk-solidity/EntropyStructs.sol\":{\"keccak256\":\"0xace052155e23df810ba04a93da02fc527efd0a6fd9244d95574af5d8891934e7\",\"license\":\"Apache 2\",\"urls\":[\"bzz-raw://31d77a8a3cfb552c684867ec96bb8ea0e59573db7d3108cd561b03e4749fd415\",\"dweb:/ipfs/QmepPDf6digkAGepANKv3yW8d5QqmJQqWjgmWSzNJVkMLq\"]},\"node_modules/@pythnetwork/entropy-sdk-solidity/IEntropy.sol\":{\"keccak256\":\"0x9d4556ea3b36960a43e6f4c2df53f5e4ffa980deaa2c15bfdefc5f66258ca748\",\"license\":\"Apache 2\",\"urls\":[\"bzz-raw://21d4bded2b3b30f3ced6ea24694e3b04bb94cab28796ee2786720a80e0b73bdd\",\"dweb:/ipfs/QmQfBFzSZj9cNxne8izUE1fYvfFoGjAisUa3aeh2YYDuqc\"]},\"node_modules/@pythnetwork/entropy-sdk-solidity/IEntropyConsumer.sol\":{\"keccak256\":\"0xf3d3dee1e9cbdef70b6c1f4d79aa8b438413e4636c00e79e615da9dc4df9c379\",\"license\":\"Apache 2\",\"urls\":[\"bzz-raw://0e473522447c8f92a43f4fa3e54d83a789e12cc44b2a86847bd238a7f8827952\",\"dweb:/ipfs/Qmdihx73a89EZYy2GpitTxK92SWDLyPWeWnJTZ4Acva958\"]},\"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\":\"0x84ff02d4275be694bfbe1e60e24539a891dda5df3bacf04f0eb2a974425603d0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f88775b86cdc8322742e528072b64d01df3d3ef70d4fc5104412522e468ae4e2\",\"dweb:/ipfs/Qme75CeS2sA8pr1Tyx9GN5atmuG4aBGjMPaagaGtYTjc2R\"]},\"src/codegen/tables/Actions.sol\":{\"keccak256\":\"0x63cd48bebaa0414728e9be2c856e4eb01efaead6627a6615da4c77b886805cef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1dfe138555b67362f41c26ce1ab074bfc1fcc4e7c6fd0284b82cc699d80d392\",\"dweb:/ipfs/QmNf8UGE3FZ4U96HkeioE4peWWz1SKPAjhKRrGnpEnCdkQ\"]},\"src/codegen/tables/Admin.sol\":{\"keccak256\":\"0xe3b7e993ca2e420d73b845fb37388d453486e24522b941503a2f81c639769725\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e638c35d3ec5805180122b70849bd3a93aa680f3251ac9e7fe4f0ff24722f614\",\"dweb:/ipfs/QmVL3xJPrsVDgXQTdxBEkq4PRmyNDCFHGHKJxLQzuFy9XJ\"]},\"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/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\":\"0x1f0b21a82c18d474347446546973619289392ee9cc745eccbfb4ba802771b2e2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f0a514e9aa8c0265e8ac7284587cdfec829ad4904e511a284d44a325f9ee511b\",\"dweb:/ipfs/QmYGbphJpnBQMsTEtAM78kqH56FrzrmBFVNthRM4WLdUSQ\"]},\"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\":\"0x3ea10f6af2b29e07f658e961113a68db383bb5df7ec853bd797bd1cc14d19b0d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c834cb0bb80ffe10c6175f8a16b827dde9804d459e6aa33691484e419587d47f\",\"dweb:/ipfs/QmXnLXquHjNXN8CCsEL3NPNrQHW6UWY78oginRPtcHZFcw\"]},\"src/codegen/world/ICharacterSystem.sol\":{\"keccak256\":\"0x54157279932a37b055d247901f034848c1f0bffbf262028cf9c69eeedc9b7235\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ead77ae9ab020f705a998be6229e975b9352486deaa9aa800b6de10338190782\",\"dweb:/ipfs/QmaLrytghaAH6ipaBr4XwsaBcCzeVa5gujHGRNxeztuo4X\"]},\"src/codegen/world/ICombatSystem.sol\":{\"keccak256\":\"0x8b522a844626b33d69ae186dd26f2f7bfd921bf92ed7ed0cee2b8c349d9b64f9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://647f99949a4584cf4b528415ffea01ad243147548455fe5a8373b042b6af3087\",\"dweb:/ipfs/QmYsgXQDTwrqg7YSJkKtiNZzf63f4jdA4xfni5gb9ap5K5\"]},\"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\":\"0xc6caadf1800d688083c234a12cd151746f0271be03a50bb6a654634270ab0864\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://084766afac89e6f74162f69534635f90ec56570019223e22d20342f7853fb4e0\",\"dweb:/ipfs/QmbrQXrTewfgW2NydLgPCdt3Vton5V7nfE7HViXtyrMnoK\"]},\"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\":\"0xfb774a3d4388291fa5bae54bf1c592cc366a0585e6d24388dfeebaf3abd666b4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0986371fcb9f53bac88f2c190faf0f5a77fac686eced664aed5f2f1eb6eaca64\",\"dweb:/ipfs/QmWdgLEV31t27nNQC1KGEfaZHFcuBUayxHm2giZJpAG8hv\"]},\"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/systems/CharacterSystem.sol\":{\"keccak256\":\"0xadd95b852f43ab96988356196cf4609553bf113879da40f67b8271d08de717d0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8b5e13ad3474beed337b3ef3dd8a6886606cc1d7d12593a0a2748aa27e5c961\",\"dweb:/ipfs/QmR2JVHMEPRgQUk5KVih4rAv7JtfBMfHTfpeFZ9PjYxm8U\"]},\"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":"uint256","name":"length","type":"uint256"}],"type":"error","name":"EncodedLengths_InvalidLength"},{"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":"uint256","name":"length","type":"uint256"},{"internalType":"uint256","name":"accessedIndex","type":"uint256"}],"type":"error","name":"Store_IndexOutOfBounds"},{"inputs":[{"internalType":"bytes2","name":"expected","type":"bytes2"},{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"Store_InvalidResourceType"},{"inputs":[{"internalType":"uint40","name":"startWithinField","type":"uint40"},{"internalType":"uint40","name":"deleteCount","type":"uint40"},{"internalType":"uint40","name":"fieldLength","type":"uint40"}],"type":"error","name":"Store_InvalidSplice"},{"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":"uint8","name":"dynamicFieldIndex","type":"uint8","indexed":false},{"internalType":"uint48","name":"start","type":"uint48","indexed":false},{"internalType":"uint40","name":"deleteCount","type":"uint40","indexed":false},{"internalType":"EncodedLengths","name":"encodedLengths","type":"bytes32","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Store_SpliceDynamicData","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":"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":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"enterGame"},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"pure","type":"function","name":"getCharacterTokenId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getClass","outputs":[{"internalType":"enum Classes","name":"_class","type":"uint8"}]},{"inputs":[{"internalType":"uint256","name":"experience","type":"uint256"}],"stateMutability":"view","type":"function","name":"getCurrentAvailableLevel","outputs":[{"internalType":"uint256","name":"currentLevel","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getExperience","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getName","outputs":[{"internalType":"bytes32","name":"_name","type":"bytes32"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"pure","type":"function","name":"getOwnerAddress","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"uint256","name":"characterTokenId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getPlayerEntityId","outputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getStats","outputs":[{"internalType":"struct StatsData","name":"","type":"tuple","components":[{"internalType":"uint256","name":"strength","type":"uint256"},{"internalType":"uint256","name":"agility","type":"uint256"},{"internalType":"enum Classes","name":"class","type":"uint8"},{"internalType":"uint256","name":"intelligence","type":"uint256"},{"internalType":"uint256","name":"baseHp","type":"uint256"},{"internalType":"int256","name":"currentHp","type":"int256"},{"internalType":"uint256","name":"experience","type":"uint256"},{"internalType":"uint256","name":"level","type":"uint256"}]}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"isValidCharacterId","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"view","type":"function","name":"isValidOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bytes32","name":"name","type":"bytes32"},{"internalType":"string","name":"tokenUri","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"mintCharacter","outputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}]},{"inputs":[{"internalType":"bytes32","name":"userRandomNumber","type":"bytes32"},{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"enum Classes","name":"class","type":"uint8"}],"stateMutability":"payable","type":"function","name":"rollStats"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"pure","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"string","name":"tokenUri","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"updateTokenUri"}],"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."}},"getOwnerAddress(bytes32)":{"details":"extracts the character nft owner address from the character Id"},"mintCharacter(address,bytes32,string)":{"params":{"account":"the address of the account that will own the character","name":"the keccack256 hash of the characters name to check for duplicates","tokenUri":"the token uri to be set for the character token"},"returns":{"characterId":"the bytes32 character id combination of the owner address and the tokenId"}},"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/CharacterSystem.sol":"CharacterSystem"},"evmVersion":"paris","libraries":{}},"sources":{"constants.sol":{"keccak256":"0xdd3ebcb4c411e951e1d5c68d6287c597f8f6ab874b48ae96600e024326bd7059","urls":["bzz-raw://61cf2ec85c2dcfde0de8d6c12cdb78b59f8b94a8662dd122bc1aca013cc69c7c","dweb:/ipfs/QmdsELzf5enAbpe5ERXRJgyg2PvtiAUiiX7dT85BLtKpCM"],"license":"MIT"},"lib/ERC1155-puppet/IERC1155System.sol":{"keccak256":"0x324481afcc10bb871430340e0ddea5613a7a7dc7436ad8067b64e787791d9c74","urls":["bzz-raw://cbf2f86e7c18feb303c9201417a85af320f148907fa637b25b56e7484325d64c","dweb:/ipfs/QmW35pffC8PK5Y7afxLc6qYYiDjH4NayRggogPazy5JsEi"],"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/interfaces/IERC20System.sol":{"keccak256":"0xedfc9636840fcf8c665f0535b0e9469ba191a2b028d6913dcd7a134dc9844ec1","urls":["bzz-raw://d9cc01f46fd862d4cb5a5efd93911c5b98420112ab999d46f0c24fec74a58b4b","dweb:/ipfs/QmXrpDMPj7VS8ywkt4mkhE1FatJcQtR2gCAwr7aEYonmrg"],"license":"MIT"},"node_modules/@latticexyz/world-modules/src/modules/erc721-puppet/IERC721.sol":{"keccak256":"0x87b18a3fe819a06930749c60912e28d3add40de2881d976d4d7565858468ac8e","urls":["bzz-raw://90d6f52696977e65bbc4a3d937ac4be843e2d1006591b861b2b3038c7a7e1d16","dweb:/ipfs/QmS2vsjycwSgGPgWrPEDdFK5WTvE6ixhzYQLL57xHJAXNv"],"license":"MIT"},"node_modules/@latticexyz/world-modules/src/modules/erc721-puppet/IERC721Errors.sol":{"keccak256":"0xc408b8c878980829678cf94ca6d83c71c0587e802221d226c84b66c60a198903","urls":["bzz-raw://9a04ce4eafe37b18476b4dbbd207eff2e33b1ea073a06d5ff8df8e08aa69ac47","dweb:/ipfs/QmTqKcfCXBntqtEcGobHMTJyy37xv93t1342RvqtpgnDQx"],"license":"MIT"},"node_modules/@latticexyz/world-modules/src/modules/erc721-puppet/IERC721Events.sol":{"keccak256":"0x4ea76f18fbb68319807fe1fa39d3035b8177bd30c3977c40ed41e9810ffebb13","urls":["bzz-raw://2f0508d70a34ce0661e52b4201996bea5e61e0108a4a218acc3728be5d51fbc2","dweb:/ipfs/QmQx9bX9cYUENRvXV55NhHL3TFiNXGqvVyy8aYDA1KCagn"],"license":"MIT"},"node_modules/@latticexyz/world-modules/src/modules/erc721-puppet/IERC721Mintable.sol":{"keccak256":"0xa647391a56ac17e6e73a5fb04d641c8a97abde19a7da80a8fc80902d7cce36aa","urls":["bzz-raw://862f638b4e4b300067f6a485580ec904d428281de46e3a186b558ff3e15e4733","dweb:/ipfs/QmUkgdfZJtwyBSrCyckw9GVFrZsD1rUAK2Nd3GBH12duLo"],"license":"MIT"},"node_modules/@latticexyz/world-modules/src/modules/erc721-puppet/constants.sol":{"keccak256":"0xf8a29616bcb176258295bae6dcb8c9eada8e18812c823c3490ff238370f3a64d","urls":["bzz-raw://f800f102f773e4c5b2281b44a9f477d7a4d7dca13ddb369fa0d4479cddbfb04c","dweb:/ipfs/QmSiqQuHY8cPTXkpnK3NyZCkeATzjYNpoR8vrijrfLdwqn"],"license":"MIT"},"node_modules/@latticexyz/world-modules/src/modules/erc721-puppet/tables/TokenURI.sol":{"keccak256":"0x7fe5517ff1843d9fe70dd37beb18a954efe3c62f2d484fbf8e0646f22a1493a7","urls":["bzz-raw://abc83f7656b5a33f695d900f9da3fb5896054a41eb0f5c963d2b01794a8461e3","dweb:/ipfs/QmWXV2jZ8Tp3k4zNyqG3GNN9SchsDK1zSQwFXCvEGmnRuy"],"license":"MIT"},"node_modules/@latticexyz/world-modules/src/modules/erc721-puppet/utils.sol":{"keccak256":"0xd497c2610d37ef3b800e3aef80d36661c60b5e36325565c3bc5c3ce986b641a5","urls":["bzz-raw://7406b572bdef593e1a8d0faaa94e9869108fc2cc7955da3aa3a62a56428c9a0c","dweb:/ipfs/QmPKnuzAkPVyhpJz25fNCfGcvyPPZZWgsm5QbKZva82EWS"],"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/@pythnetwork/entropy-sdk-solidity/EntropyEvents.sol":{"keccak256":"0xd8a8c77c864481ee7620adf8b92219f3c68c626271887e26330362642053f504","urls":["bzz-raw://f918e6fcdf4cc8c991ff4c7d81860c6b0e3b4b536e543361309cfecd8a8ecf67","dweb:/ipfs/QmdBuzs7dyGGaceP4QDqu3MLnqeBLbsEpCKGWyz3a9kY8v"],"license":"Apache-2.0"},"node_modules/@pythnetwork/entropy-sdk-solidity/EntropyStructs.sol":{"keccak256":"0xace052155e23df810ba04a93da02fc527efd0a6fd9244d95574af5d8891934e7","urls":["bzz-raw://31d77a8a3cfb552c684867ec96bb8ea0e59573db7d3108cd561b03e4749fd415","dweb:/ipfs/QmepPDf6digkAGepANKv3yW8d5QqmJQqWjgmWSzNJVkMLq"],"license":"Apache 2"},"node_modules/@pythnetwork/entropy-sdk-solidity/IEntropy.sol":{"keccak256":"0x9d4556ea3b36960a43e6f4c2df53f5e4ffa980deaa2c15bfdefc5f66258ca748","urls":["bzz-raw://21d4bded2b3b30f3ced6ea24694e3b04bb94cab28796ee2786720a80e0b73bdd","dweb:/ipfs/QmQfBFzSZj9cNxne8izUE1fYvfFoGjAisUa3aeh2YYDuqc"],"license":"Apache 2"},"node_modules/@pythnetwork/entropy-sdk-solidity/IEntropyConsumer.sol":{"keccak256":"0xf3d3dee1e9cbdef70b6c1f4d79aa8b438413e4636c00e79e615da9dc4df9c379","urls":["bzz-raw://0e473522447c8f92a43f4fa3e54d83a789e12cc44b2a86847bd238a7f8827952","dweb:/ipfs/Qmdihx73a89EZYy2GpitTxK92SWDLyPWeWnJTZ4Acva958"],"license":"Apache 2"},"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":"0x84ff02d4275be694bfbe1e60e24539a891dda5df3bacf04f0eb2a974425603d0","urls":["bzz-raw://f88775b86cdc8322742e528072b64d01df3d3ef70d4fc5104412522e468ae4e2","dweb:/ipfs/Qme75CeS2sA8pr1Tyx9GN5atmuG4aBGjMPaagaGtYTjc2R"],"license":"MIT"},"src/codegen/tables/Actions.sol":{"keccak256":"0x63cd48bebaa0414728e9be2c856e4eb01efaead6627a6615da4c77b886805cef","urls":["bzz-raw://c1dfe138555b67362f41c26ce1ab074bfc1fcc4e7c6fd0284b82cc699d80d392","dweb:/ipfs/QmNf8UGE3FZ4U96HkeioE4peWWz1SKPAjhKRrGnpEnCdkQ"],"license":"MIT"},"src/codegen/tables/Admin.sol":{"keccak256":"0xe3b7e993ca2e420d73b845fb37388d453486e24522b941503a2f81c639769725","urls":["bzz-raw://e638c35d3ec5805180122b70849bd3a93aa680f3251ac9e7fe4f0ff24722f614","dweb:/ipfs/QmVL3xJPrsVDgXQTdxBEkq4PRmyNDCFHGHKJxLQzuFy9XJ"],"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/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":"0x1f0b21a82c18d474347446546973619289392ee9cc745eccbfb4ba802771b2e2","urls":["bzz-raw://f0a514e9aa8c0265e8ac7284587cdfec829ad4904e511a284d44a325f9ee511b","dweb:/ipfs/QmYGbphJpnBQMsTEtAM78kqH56FrzrmBFVNthRM4WLdUSQ"],"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":"0x3ea10f6af2b29e07f658e961113a68db383bb5df7ec853bd797bd1cc14d19b0d","urls":["bzz-raw://c834cb0bb80ffe10c6175f8a16b827dde9804d459e6aa33691484e419587d47f","dweb:/ipfs/QmXnLXquHjNXN8CCsEL3NPNrQHW6UWY78oginRPtcHZFcw"],"license":"MIT"},"src/codegen/world/ICharacterSystem.sol":{"keccak256":"0x54157279932a37b055d247901f034848c1f0bffbf262028cf9c69eeedc9b7235","urls":["bzz-raw://ead77ae9ab020f705a998be6229e975b9352486deaa9aa800b6de10338190782","dweb:/ipfs/QmaLrytghaAH6ipaBr4XwsaBcCzeVa5gujHGRNxeztuo4X"],"license":"MIT"},"src/codegen/world/ICombatSystem.sol":{"keccak256":"0x8b522a844626b33d69ae186dd26f2f7bfd921bf92ed7ed0cee2b8c349d9b64f9","urls":["bzz-raw://647f99949a4584cf4b528415ffea01ad243147548455fe5a8373b042b6af3087","dweb:/ipfs/QmYsgXQDTwrqg7YSJkKtiNZzf63f4jdA4xfni5gb9ap5K5"],"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":"0xc6caadf1800d688083c234a12cd151746f0271be03a50bb6a654634270ab0864","urls":["bzz-raw://084766afac89e6f74162f69534635f90ec56570019223e22d20342f7853fb4e0","dweb:/ipfs/QmbrQXrTewfgW2NydLgPCdt3Vton5V7nfE7HViXtyrMnoK"],"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":"0xfb774a3d4388291fa5bae54bf1c592cc366a0585e6d24388dfeebaf3abd666b4","urls":["bzz-raw://0986371fcb9f53bac88f2c190faf0f5a77fac686eced664aed5f2f1eb6eaca64","dweb:/ipfs/QmWdgLEV31t27nNQC1KGEfaZHFcuBUayxHm2giZJpAG8hv"],"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/systems/CharacterSystem.sol":{"keccak256":"0xadd95b852f43ab96988356196cf4609553bf113879da40f67b8271d08de717d0","urls":["bzz-raw://f8b5e13ad3474beed337b3ef3dd8a6886606cc1d7d12593a0a2748aa27e5c961","dweb:/ipfs/QmR2JVHMEPRgQUk5KVih4rAv7JtfBMfHTfpeFZ9PjYxm8U"],"license":"MIT"},"src/utils.sol":{"keccak256":"0xf50d451bb280fb33e08f521e168952f5145e69eee7df284ffeb1865b8b5187cc","urls":["bzz-raw://a78e6326639bdf19f606921e48c90663f387cbfd7d8160a461838e9ca6a0fc57","dweb:/ipfs/QmPT6PNCCQKWVP9bwYC4JyfuXJSgbupsgq6MT898gYfa1q"],"license":"MIT"}},"version":1},"id":211} \ No newline at end of file diff --git a/packages/contracts/out/CombatSystem.sol/CombatSystem.json b/packages/contracts/out/CombatSystem.sol/CombatSystem.json index ac9f53fe9..8da5f7251 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":"_calculatePhysicalAttack","inputs":[{"name":"attackStats","type":"tuple","internalType":"struct PhysicalAttackStats","components":[{"name":"bonusDamage","type":"int256","internalType":"int256"},{"name":"armorPenetration","type":"int256","internalType":"int256"},{"name":"attackModifierBonus","type":"int256","internalType":"int256"},{"name":"critChanceBonus","type":"int256","internalType":"int256"},{"name":"classRestrictions","type":"uint8[]","internalType":"uint8[]"}]},{"name":"attackerId","type":"bytes32","internalType":"bytes32"},{"name":"defenderId","type":"bytes32","internalType":"bytes32"},{"name":"weaponId","type":"uint256","internalType":"uint256"},{"name":"randomNumber","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"damage","type":"int256","internalType":"int256"},{"name":"hit","type":"bool","internalType":"bool"},{"name":"crit","type":"bool","internalType":"bool"}],"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":"calculateGoldDrop","inputs":[{"name":"mobLevel","type":"uint256","internalType":"uint256"},{"name":"randomNumber","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"dropAmount","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"calculateItemDrop","inputs":[{"name":"randomNumber","type":"uint256","internalType":"uint256"},{"name":"itemId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"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":"0x608060405234801561001057600080fd5b50615461806100206000396000f3fe6080604052600436106100e85760003560e01c806398d239b11161008a578063bfea0b8511610059578063bfea0b8514610297578063c6ca743c146102a3578063e1af802c146102c3578063fc88ff63146102d857600080fd5b806398d239b114610205578063aaa417b71461021a578063b127ae901461023a578063b24678941461027757600080fd5b8063195e75c4116100c6578063195e75c41461016f57806332aeffdf1461019d57806345ec9354146101c05780634dda27e8146101d857600080fd5b806301ffc9a7146100ed578063119df25f14610122578063154510201461014f575b600080fd5b3480156100f957600080fd5b5061010d61010836600461422d565b6102f8565b60405190151581526020015b60405180910390f35b34801561012e57600080fd5b50610137610391565b6040516001600160a01b039091168152602001610119565b34801561015b57600080fd5b5061010d61016a3660046143cb565b6103a0565b34801561017b57600080fd5b5061018f61018a366004614450565b61067a565b604051908152602001610119565b3480156101a957600080fd5b5061010d6101b8366004614450565b600092915050565b3480156101cc57600080fd5b5036601f19013561018f565b3480156101e457600080fd5b506101f86101f3366004614472565b61069e565b60405161011991906144f1565b6102186102133660046145f7565b6106e8565b005b34801561022657600080fd5b5061018f610235366004614647565b6108b2565b34801561024657600080fd5b5061025a6102553660046146c6565b610b8c565b604080519384529115156020840152151590820152606001610119565b34801561028357600080fd5b5061010d6102923660046147f3565b610fc3565b34801561021857600080fd5b3480156102af57600080fd5b5061010d6102be366004614450565b611099565b3480156102cf57600080fd5b50610137611153565b3480156102e457600080fd5b506102186102f33660046145f7565b61115d565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee12700000000000000000000000000000000000000000000000000000000148061038b57507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b600061039b6113d6565b905090565b600160005b8551811015610505576103b6611153565b6001600160a01b031663fa1becc48783815181106103d6576103d6614843565b60200260200101516040518263ffffffff1660e01b81526004016103fc91815260200190565b602060405180830381865afa158015610419573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061043d9190614859565b61044a5760009150610505565b610452611153565b6001600160a01b031663f48a397287838151811061047257610472614843565b602002602001015186866040518463ffffffff1660e01b81526004016104af9392919092835261ffff918216602084015216604082015260600190565b602060405180830381865afa1580156104cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104f09190614859565b6104fd5760009150610505565b6001016103a5565b5080156106725760005b845181101561067057610520611153565b6001600160a01b031663fa1becc486838151811061054057610540614843565b60200260200101516040518263ffffffff1660e01b815260040161056691815260200190565b602060405180830381865afa158015610583573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105a79190614859565b156105b55760009150610670565b6105bd611153565b6001600160a01b031663f48a39728683815181106105dd576105dd614843565b602002602001015186866040518463ffffffff1660e01b815260040161061a9392919092835261ffff918216602084015216604082015260600190565b602060405180830381865afa158015610637573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061065b9190614859565b6106685760009150610670565b60010161050f565b505b949350505050565b600061068d8366038d7ea4c68000614891565b61069790836148be565b9392505050565b6106df6040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b61038b82611408565b60006106f384611408565b9050806020015160001415801561070c57506040810151155b61075d5760405162461bcd60e51b815260206004820181905260248201527f434f4d4241542053595354454d3a20494e56414c494420454e434f554e54455260448201526064015b60405180910390fd5b80608001518160600151106107b45760405162461bcd60e51b815260206004820181905260248201527f434f4d4241542053595354454d3a204558504952454420454e434f554e5445526044820152606401610754565b6107bc610391565b6001600160a01b03166107cd611153565b6001600160a01b0316634f10aabc856040518263ffffffff1660e01b81526004016107fa91815260200190565b602060405180830381865afa158015610817573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061083b91906148d2565b6001600160a01b031614801561085657506108568385611099565b6108a25760405162461bcd60e51b815260206004820152601c60248201527f434f4d4241542053595354454d3a204e4f4e2d434f4d424154414e54000000006044820152606401610754565b6108ac84836114f3565b50505050565b60006108c56108bf610391565b84610fc3565b6109115760405162461bcd60e51b815260206004820152601d60248201527f434f4d4241542053595354454d3a20494e56414c49442053454e4445520000006044820152606401610754565b6000806109378560008151811061092a5761092a614843565b602002602001015161158d565b9150915085600181111561094d5761094d61448b565b600103610a3557610960858584846103a0565b6109ac5760405162461bcd60e51b815260206004820152601a60248201527f434f4d4241542053595354454d3a20494e56414c4944205056450000000000006044820152606401610754565b60405142906109c59088908890889085906020016148ef565b60405160208183030381529060405280519060200120935060006040518060e001604052808960018111156109fc576109fc61448b565b81526020018381526020016000815260200160008152602001600f8152602001878152602001888152509050610a32858261163e565b50505b856001811115610a4757610a4761448b565b5060005b8451811015610af2576000801b610a7a868381518110610a6d57610a6d614843565b60200260200101516116ff565b14610ac75760405162461bcd60e51b815260206004820152601e60248201527f434f4d4241542053595354454d3a20454e54495459204f4343555049454400006044820152606401610754565b610aea858281518110610adc57610adc614843565b602002602001015185611790565b600101610a4b565b5060005b8551811015610b82576000801b610b18878381518110610a6d57610a6d614843565b14610b655760405162461bcd60e51b815260206004820152601e60248201527f434f4d4241542053595354454d3a20454e54495459204f4343555049454400006044820152606401610754565b610b7a868281518110610adc57610adc614843565b600101610af6565b5050509392505050565b600080600080610b9a611153565b6001600160a01b03166354f1f2db896040518263ffffffff1660e01b8152600401610bc791815260200190565b61010060405180830381865afa158015610be5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c099190614933565b90506000610c15611153565b6001600160a01b03166354f1f2db896040518263ffffffff1660e01b8152600401610c4291815260200190565b61010060405180830381865afa158015610c60573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c849190614933565b90506000610c90611153565b6001600160a01b031663810c1dc1896040518263ffffffff1660e01b8152600401610cbd91815260200190565b600060405180830381865afa158015610cda573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610d029190810190614a0a565b905060008260a001511315610fa8576040517f4dddf8370000000000000000000000000000000000000000000000000000000081526004810188905260009073__$227e4555c1f608352b26068e438454dd8b$__90634dddf83790602401600060405180830381865af4158015610d7d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610da59190810190614ac1565b9050610dfc81600081518110610dbd57610dbd614843565b602002602001015167ffffffffffffffff1682600181518110610de257610de2614843565b602002602001015167ffffffffffffffff168e8787611844565b90965094508515610f5f57620186a060008d602001518560600151610e219190614b66565b13610e2d576001610e41565b8c602001518460600151610e419190614b66565b610e4b9190614891565b8451620186a090610e5e90600290614b86565b8460a00151856080015185600281518110610e7b57610e7b614843565b602002602001015167ffffffffffffffff16610e9791906148be565b1115610ed657846080015184600281518110610eb557610eb5614843565b602002602001015167ffffffffffffffff16610ed191906148be565b610edc565b8460a001515b8f51610ee89190614b9a565b610ef29190614b9a565b610efc9190614bba565b610f069190614b66565b96508415610f5a57610f4c6040518060400160405280600581526020017f43524954210000000000000000000000000000000000000000000000000000008152506118d7565b610f57600288614bba565b96505b610fa2565b610f9d6040518060400160405280600581526020017f4d495353210000000000000000000000000000000000000000000000000000008152506118d7565b600096505b50610fb5565b6000955060009450600093505b505050955095509592505050565b6000805b825181101561109257610fd8611153565b6001600160a01b0316634f10aabc848381518110610ff857610ff8614843565b60200260200101516040518263ffffffff1660e01b815260040161101e91815260200190565b602060405180830381865afa15801561103b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061105f91906148d2565b6001600160a01b0316846001600160a01b0316036110805760019150611092565b8061108a81614c06565b915050610fc7565b5092915050565b6000806110a583611408565b905060005b8160c00151518110156110f6578160c0015181815181106110cd576110cd614843565b602002602001015185036110e457600192506110f6565b806110ee81614c06565b9150506110aa565b50816110925760005b8160a001515181101561114b578160a00151818151811061112257611122614843565b60200260200101518503611139576001925061114b565b8061114381614c06565b9150506110ff565b505092915050565b600061039b61194b565b61116e30611169610391565b611955565b600061117983611408565b905060005b82518110156111cc57600083828151811061119b5761119b614843565b602002602001015190506111c38582604001518360000151846020015185606001518b61196b565b5060010161117e565b50606081018051906111dd82614c06565b905250600080805b8360a001515181101561131c57600061121a8560a00151838151811061120d5761120d614843565b6020026020010151611a08565b905060008113611313578361122e81614c06565b945050846000015160018111156112475761124761448b565b60ff1660000361131357611259611153565b6001600160a01b031663fa1becc48660a00151848151811061127d5761127d614843565b60200260200101516040518263ffffffff1660e01b81526004016112a391815260200190565b602060405180830381865afa1580156112c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112e49190614859565b15611313576113138560a00151838151811061130257611302614843565b60200260200101516000801b611790565b506001016111e5565b5060005b8360c00151518110156113815760006113488560c00151838151811061120d5761120d614843565b905060008113611378578261135c81614c06565b9350506113788560c00151838151811061130257611302614843565b50600101611320565b508260c001515181148061139957508260a001515182145b806113ab575082608001518360600151145b156113ce574360408401526113c0858461163e565b6113ca8587611a9a565b5050505b505050505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c806114055750335b90565b6114496040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061147f5761147f614843565b6020908102919091010152600080806114d87f74625544000000000000000000000000436f6d626174456e636f756e74657200857e81050201202020200000000000000000000000000000000000000000000000611ccf565b9250925092506114e9838383611d9f565b9695505050505050565b611588826001848460405160200161150c929190614c20565b60408051601f198184030181529082905261152b939291602401614cf0565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb2aa60a400000000000000000000000000000000000000000000000000000000179052611e4c565b505050565b604080516001808252818301909252600091829182916020808301908036833701905050905083816000815181106115c7576115c7614843565b6020908102919091010152600080806116207f74625544000000000000000000000000506f736974696f6e0000000000000000857e04020002020000000000000000000000000000000000000000000000000000611ccf565b925092509250611631838383611efa565b9550955050505050915091565b600061166182600001518360200151846040015185606001518660800151611f1d565b905060006116778360a001518460c00151611f52565b9050600061168d8460a001518560c00151611f76565b604080516001808252818301909252919250600091906020808301908036833701905050905085816000815181106116c7576116c7614843565b60209081029190910101526113ce7f74625544000000000000000000000000436f6d626174456e636f756e7465720082868686611fb2565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061173857611738614843565b602090810291909101015260006106727f746255440000000000000000000000004d61746368456e74697479000000000083837e40020020200000000000000000000000000000000000000000000000000000612067565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106117c6576117c6614843565b6020026020010181815250506115887f746255440000000000000000000000004d61746368456e74697479000000000060001b8260008560405160200161180f91815260200190565b60408051601f198184030181529190527e40020020200000000000000000000000000000000000000000000000000000612124565b60008080620249f06118586103e88a6148be565b61186a8760200151896040015161219a565b6118749190614d18565b61187e9190614891565b90506000620186a085602001516103e88a61189991906148be565b6118a39190614d18565b6118ad9190614891565b9050808211935083156118cb5760026118c68284614b86565b101592505b50509550959350505050565b611948816040516024016118eb9190614d2b565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f41304fac000000000000000000000000000000000000000000000000000000001790526121c7565b50565b600061039b6121d0565b6119676119618361220f565b826122ac565b5050565b6000611976866122f8565b8051909150600381111561198c5761198c61448b565b60ff166001036119ff57600081602001518060200190518101906119b09190614d3e565b905060008060006119c4848a8a8a8a610b8c565b9194509250905060006119da620186a085614dd3565b6119e38a611a08565b6119ed9190614b66565b90506119f989826123ad565b50505050505b50505050505050565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110611a4157611a41614843565b602090810291909101015260006106727f74625544000000000000000000000000537461747300000000000000000000008360057ee1080020200120202020200000000000000000000000000000000000000000612067565b606080600080611aa986611408565b90506000806000611ab86141d7565b60005b8560c0015151811015611b2557611aee8660c001518281518110611ae157611ae1614843565b6020026020010151612461565b91508160e0015185611b009190614d18565b945060008260a001511315611b1d5783611b1981614c06565b9450505b600101611abb565b5060008060005b8760a0015151811015611bac57611b528860a001518281518110611ae157611ae1614843565b935060008460a0015113611ba45760c0840151611b6f9083614d18565b9150611b7f8460e001518d61067a565b611b899084614d18565b9250611ba48860a00151828151811061130257611302614843565b600101611b2c565b5060005b8760c0015151811015611cc0578760c001518181518110611bd357611bd3614843565b60200260200101519450611be685612461565b9350611bf28683614b86565b8460c001818151611c039190614d18565b905250611c0e611153565b6001600160a01b031663fda0ce5086611c278987614b86565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815260048101929092526024820152604401600060405180830381600087803b158015611c7d57600080fd5b505af1158015611c91573d6000803e3d6000fd5b50505050611c9f8585612509565b611cb88860c00151828151811061130257611302614843565b600101611bb0565b50505050505050509250925092565b6060600060606000611cdf6121d0565b9050306001600160a01b03821603611d0857611cfc8787876125b2565b93509350935050611d96565b6040517f419b58fd0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063419b58fd90611d51908a908a908a90600401614e1d565b600060405180830381865afa158015611d6e573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611cfc9190810190614eaa565b93509350939050565b611de06040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b611de9846126ba565b6080860181905260608601829052604086018390526020860184905285856001811115611e1857611e1861448b565b6001811115611e2957611e2961448b565b8152505050505050611e3b838361270a565b60c083015260a08201529392505050565b6060600080611e62611e5d85614f0d565b612759565b91509150816000801b03611ec8576040517ffdde54e20000000000000000000000000000000000000000000000000000000081527fffffffff00000000000000000000000000000000000000000000000000000000600035166004820152602401610754565b6020840180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1682179052610672828561281c565b60208301516022840151600091829160f091821c911c5b90969095509350505050565b60608585858585604051602001611f38959493929190614f59565b604051602081830303815290604052905095945050505050565b600061069783516020028351602002606081901b603883901b838301171792915050565b6060611f81836128f7565b611f8a836128f7565b604051602001611f9b929190614f94565b604051602081830303815290604052905092915050565b6000611fbc6121d0565b9050306001600160a01b03821603611fe057611fdb8686868686612907565b6113ce565b6040517f298314fb0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063298314fb9061202d9089908990899089908990600401614fc3565b600060405180830381600087803b15801561204757600080fd5b505af115801561205b573d6000803e3d6000fd5b50505050505050505050565b6000806120726121d0565b9050306001600160a01b038216036120985761209086868686612924565b915050610672565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d59906120e3908990899089908990600401615008565b602060405180830381865afa158015612100573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120909190615037565b600061212e6121d0565b9050306001600160a01b0382160361214d57611fdb868686868661295a565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae09061202d9089908990899089908990600401615050565b60008082126121b4576121ad8284614d18565b905061038b565b6121bd82615097565b6121ad90846150cf565b6119488161296f565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b03168061220a573391505090565b919050565b60408051600180825281830190925260009182919060208083019080368337019050509050826001600160a01b031660001b8160008151811061225457612254614843565b602090810291909101015260006106727f7462776f726c6400000000000000000053797374656d5265676973747279000083837e20010020000000000000000000000000000000000000000000000000000000612067565b6122b68282612990565b611967576122c3826129ee565b816040517fd787b7370000000000000000000000000000000000000000000000000000000081526004016107549291906150e2565b60408051808201909152600081526060602082015260408051600180825281830190925260009160208083019080368337019050509050828160008151811061234357612343614843565b60209081029190910101526000808061239c7f74625544000000000000000000000000416374696f6e73000000000000000000857e01010101000000000000000000000000000000000000000000000000000000611ccf565b9250925092506114e9838383612b2b565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106123e3576123e3614843565b6020026020010181815250506115887f746255440000000000000000000000005374617473000000000000000000000060001b8260058560405160200161242c91815260200190565b60408051601f198184030181529190527ee1080020200120202020200000000000000000000000000000000000000000612124565b6124696141d7565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061249f5761249f614843565b6020908102919091010152600080806124f87f7462554400000000000000000000000053746174730000000000000000000000857ee1080020200120202020200000000000000000000000000000000000000000611ccf565b9250925092506114e9838383612b88565b600061253b826000015183602001518460400151856060015186608001518760a001518860c001518960e00151612c00565b60408051600180825281830190925291925060009160609183919060208083019080368337019050509050858160008151811061257a5761257a614843565b60209081029190910101526113ce7f746255440000000000000000000000005374617473000000000000000000000082868686611fb2565b60606000606060006125c385612c3e565b90506125d0878783612c61565b935060006125dd86612c9a565b905080156126af576125ef8888612cd7565b935066ffffffffffffff841667ffffffffffffffff8111156126135761261361426f565b6040519080825280601f01601f19166020018201604052801561263d576020820181803683370190505b5092506020830160005b828160ff1610156126ac57600061265f8b8b84612cea565b9050600061267c888460ff166028026038011c64ffffffffff1690565b905061268b8260008387612d6a565b6126958185614d18565b9350505080806126a49061510d565b915050612647565b50505b505093509350939050565b60008060008060006126d0866000016020015190565b60f81c60018111156126e4576126e461448b565b602187015160418801516061890151608190990151929991989097509550909350915050565b6060806000603885901c64ffffffffff1661272e612729868484612e36565b612ec4565b935090508064ffffffffff606087901c160161274e612729868484612e36565b925050509250929050565b6040805160018082528183019092526000918291829160208083019080368337019050509050837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916816000815181106127b2576127b2614843565b60209081029190910101526000808061280b7f7462776f726c6400000000000000000046756e6374696f6e53656c6563746f72857e24020020040000000000000000000000000000000000000000000000000000611ccf565b925092509250611631838383612ed5565b6060600061282861194b565b90506001600160a01b03811630036128695760006128506128476113d6565b60008787612ee1565b9350905080612862576128628361301c565b505061038b565b6040517f3ae7af080000000000000000000000000000000000000000000000000000000081526001600160a01b03821690633ae7af08906128b0908790879060040161512c565b6000604051808303816000875af11580156128cf573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106729190810190615145565b6060816106978160206000613024565b61291d85858585856129188b613084565b613109565b5050505050565b60006129516129338686613442565b60ff858116601b0360080285901c1661294c8587613498565b6134d1565b95945050505050565b61291d85856129698487613498565b85613522565b80516a636f6e736f6c652e6c6f67602083016000808483855afa5050505050565b60006129de7f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617836137bd565b80610697575061069783836137bd565b606081601081901b6000612a0183613886565b9050827fffffffffffffffffffffffffffff000000000000000000000000000000000000831615612a5c57612a577fffffffffffffffffffffffffffff000000000000000000000000000000000000841661389d565b612a93565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b7fffffffffffffffffffffffffffffffff00000000000000000000000000000000831615612ac957612ac48361389d565b612b00565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b604051602001612b129392919061517a565b6040516020818303038152906040529350505050919050565b604080518082019091526000815260606020820152612b4984613941565b81906003811115612b5c57612b5c61448b565b90816003811115612b6f57612b6f61448b565b905250612b7c838361395d565b60208201529392505050565b612b906141d7565b612b9984613980565b60e0890181905260c0890182905260a089018390526080890184905260608901859052886020810160408201886002811115612bd757612bd761448b565b6002811115612be857612be861448b565b90529790975250505093909252509195945050505050565b60608888888888888888604051602001612c21989796959493929190615208565b604051602081830303815290604052905098975050505050505050565b60006008612c4e600260206150cf565b612c589190614891565b9190911c919050565b606081600003612c805750604080516020810190915260008152610697565b6000612c8c8585613442565b9050612951816000856139ee565b60006008600180612cad600260206150cf565b612cb791906150cf565b612cc191906150cf565b612ccb9190614891565b8260ff911c1692915050565b6000610697612ce68484613a11565b5490565b60008383604051602001612cff92919061524d565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b8215612df15760208310612d9457602083048401935060208381612d9057612d906148a8565b0692505b8215612df1576020839003600081841015612db75750600019600884021c612dc1565b50600019600882021c5b8554600886021b818451168219821617845250818411612de25750506108ac565b50600194909401939182900391015b5b60208210612e135783548152600190930192601f1990910190602001612df2565b81156108ac576000600019600884021c8251865482191691161782525050505050565b600081831180612e465750835182115b15612e83578383836040517f23230fa300000000000000000000000000000000000000000000000000000000815260040161075493929190615289565b60208401612e918482614d18565b90506000612e9f85856150cf565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b606060006106978360206000613a67565b600080611f1185613ad6565b60006060600080612ef186613aeb565b90925090506001600160a01b038216612f425785612f0e876129ee565b6040517ffbf10ce600000000000000000000000000000000000000000000000000000000815260040161075492919061512c565b80612f5157612f518689613b8f565b8615612fbd577dffffffffffffffffffffffffffff0000000000000000000000000000000086167f6e73000000000000000000000000000000000000000000000000000000000000176000612fa582613b99565b9050612fba82612fb58b84614d18565b613c2a565b50505b6000612fc98760101b90565b7fffffffffffffffffffffffffffff000000000000000000000000000000000000161461300157612ffc88888488613cde565b61300d565b61300d88888488613d56565b90999098509650505050505050565b805160208201fd5b825160609060006130358583614891565b9050604051925060208301601f19603f83860101166040528184526000602088015b84821015613078578051871b83529187019160019190910190602001613057565b50505050509392505050565b60007f8b9d8c8b908d9affffffffffffffffffab9e9d939a8d0000000000000000000082016130d357507e60030220202000000000000000000000000000000000000000000000000000919050565b61038b6131007f746273746f72650000000000000000005461626c65730000000000000000000084613db7565b602060006134d1565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff000000000000000000000000000000000000000000000000000000000000160361319557857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a98686868660405161318894939291906152ae565b60405180910390a26113ce565b60006131a087613dd3565b905060005b81518110156132795760008282815181106131c2576131c2614843565b602002602001015190506131ee6001826affffffffffffffffffffff1916613e5c90919063ffffffff16565b15613270576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c9061323d908c908c908c908c908c908c906004016152f8565b600060405180830381600087803b15801561325757600080fd5b505af115801561326b573d6000803e3d6000fd5b505050505b506001016131a5565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9878787876040516132b094939291906152ae565b60405180910390a260006132c48888613442565b905060006020870190506132dc826000895184613e7a565b60006132e785612c9a565b111561336b5760006132f98a8a613a11565b878155905060208601915060008060005b61331388612c9a565b8160ff161015613366576133288d8d83612cea565b92506133438a8260ff166028026038011c64ffffffffff1690565b91506133528360008488613e7a565b61335c8286614d18565b945060010161330a565b505050505b60005b835181101561205b57600084828151811061338b5761338b614843565b602002602001015190506133b76002826affffffffffffffffffffff1916613e5c90919063ffffffff16565b15613439576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90613406908e908e908e908e908e908e906004016152f8565b600060405180830381600087803b15801561342057600080fd5b505af1158015613434573d6000803e3d6000fd5b505050505b5060010161336e565b6000828260405160200161345792919061524d565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff168110156134c9576134bf60ff601b83900360080287901c1683614d18565b915060010161349d565b509392505050565b6000602082106134f7576020820484019350602082816134f3576134f36148a8565b0691505b508254600882021b6020829003808411156134c9576001850154600882021c82179150509392505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff00000000000000000000000000000000000000000000000000000000000016036135ac57837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be84848460405161359f93929190615351565b60405180910390a26108ac565b60006135b88585613442565b905060006135c586613dd3565b905060005b815181101561369a5760008282815181106135e7576135e7614843565b602002602001015190506136136004826affffffffffffffffffffff1916613e5c90919063ffffffff16565b15613691576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d9061365e908b908b908b908b90600401615384565b600060405180830381600087803b15801561367857600080fd5b505af115801561368c573d6000803e3d6000fd5b505050505b506001016135ca565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8686866040516136cf93929190615351565b60405180910390a26136ea828565ffffffffffff1685613f39565b60005b81518110156119ff57600082828151811061370a5761370a614843565b602002602001015190506137366008826affffffffffffffffffffff1916613e5c90919063ffffffff16565b156137b4576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba872190613781908b908b908b908b90600401615384565b600060405180830381600087803b15801561379b57600080fd5b505af11580156137af573d6000803e3d6000fd5b505050505b506001016136ed565b6040805160028082526060820183526000928392919060208301908036833701905050905083816000815181106137f6576137f6614843565b602002602001018181525050826001600160a01b031660001b8160018151811061382257613822614843565b6020908102919091010152600061387a7f7462776f726c640000000000000000005265736f75726365416363657373000083837e01010001000000000000000000000000000000000000000000000000000000612067565b90506129518160f81c90565b600061389460706010614d18565b9190911b919050565b606060005b6010811015613902577fffffffffffffffffffffffffffffffff000000000000000000000000000000008316600882021b7fff000000000000000000000000000000000000000000000000000000000000001615613902576001016138a2565b604080517fffffffffffffffffffffffffffffffff00000000000000000000000000000000851660208201528151603090910190915281815280610672565b602081015160009060f81c600381111561038b5761038b61448b565b60606000603884901c64ffffffffff1661295161397b858484612e36565b613f4f565b60008060008060008060008061399a896000016020015190565b60408a015160608b0151919950975060f81c60028111156139bd576139bd61448b565b60618a015160818b015160a18c015160c18d015160e1909d01519b9d9a9c939b929a91995097509195509350915050565b60405160208101601f19603f84840101166040528282526134c985858584612d6a565b60008282604051602001613a2692919061524d565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b60606000613a758560801c90565b90506fffffffffffffffffffffffffffffffff85166000858281613a9b57613a9b6148a8565b04905060405193506020840160208202810160405281855260005b82811015613078578451871c825293870193602090910190600101613ab6565b602081015160408201516000905b9050915091565b60408051600180825281830190925260009182918291602080830190803683370190505090508381600081518110613b2557613b25614843565b602090810291909101015260008080613b7e7f7462776f726c6400000000000000000053797374656d73000000000000000000857e150200140100000000000000000000000000000000000000000000000000006125b2565b925092509250611631838383613fcf565b6122b68282613fdb565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110613bd257613bd2614843565b602090810291909101015260006106727f7462776f726c6400000000000000000042616c616e636573000000000000000083837e20010020000000000000000000000000000000000000000000000000000000612924565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110613c6057613c60614843565b6020026020010181815250506115887f7462776f726c6400000000000000000042616c616e636573000000000000000060001b82600085604051602001613ca991815260200190565b60408051601f198184030181529190527e2001002000000000000000000000000000000000000000000000000000000061295a565b60006060836001600160a01b03166000613cf9858989614039565b604051613d0691906153bd565b60006040518083038185875af1925050503d8060008114613d43576040519150601f19603f3d011682016040523d82523d6000602084013e613d48565b606091505b509097909650945050505050565b60006060836001600160a01b0316613d6f848888614039565b604051613d7c91906153bd565b600060405180830381855af49150503d8060008114613d43576040519150601f19603f3d011682016040523d82523d6000602084013e613d48565b6040805160208101849052908101829052600090606001613457565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110613e0d57613e0d614843565b60209081029190910101526000613e457f746273746f726500000000000000000053746f7265486f6f6b730000000000008383614068565b9050610672613e578260008451612e36565b6140a2565b60008160ff1682613e6d8560581c90565b1660ff1614905092915050565b8215613ef45760208310613ea457602083048401935060208381613ea057613ea06148a8565b0692505b8215613ef45760208390036000600019600885021c1990506008850281811c91508351811c9050811987541682821617875550818411613ee55750506108ac565b50600194909401939182900391015b5b60208210613f165780518455600190930192601f1990910190602001613ef5565b81156108ac576000600019600884021c8554835182191691161785555050505050565b61158883838351613f4a8560200190565b613e7a565b60606000613f5d8360801c90565b90506fffffffffffffffffffffffffffffffff83168067ffffffffffffffff811115613f8b57613f8b61426f565b6040519080825280601f01601f191660200182016040528015613fb5576020820181803683370190505b50925060208301613fc78382846140b3565b505050919050565b600080611f11856140fe565b60006140297f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff000000000000000000000000000000008516178361411a565b806106975750610697838361411a565b6060838383604051602001614050939291906153d9565b60405160208183030381529060405290509392505050565b6060610672614078858585612cea565b600061409d856140888989612cd7565b9060ff166028026038011c64ffffffffff1690565b6139ee565b606060006106978360156000613a67565b5b602081106140d3578251825260209283019290910190601f19016140b4565b806000036140e057505050565b6000600019600883021c905080835116811985511617835250505050565b6020810151603482015160609190911c9060009060f81c613ae4565b60408051600280825260608201835260009283929190602083019080368337019050509050838160008151811061415357614153614843565b602002602001018181525050826001600160a01b031660001b8160018151811061417f5761417f614843565b6020908102919091010152600061387a7f7462776f726c640000000000000000005265736f75726365416363657373000083837e01010001000000000000000000000000000000000000000000000000000000612924565b6040518061010001604052806000815260200160008152602001600060028111156142045761420461448b565b815260200160008152602001600081526020016000815260200160008152602001600081525090565b60006020828403121561423f57600080fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461069757600080fd5b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff811182821017156142a8576142a861426f565b60405290565b60405160a0810167ffffffffffffffff811182821017156142a8576142a861426f565b604051610100810167ffffffffffffffff811182821017156142a8576142a861426f565b604051601f8201601f1916810167ffffffffffffffff8111828210171561431e5761431e61426f565b604052919050565b600067ffffffffffffffff8211156143405761434061426f565b5060051b60200190565b600082601f83011261435b57600080fd5b8135602061437061436b83614326565b6142f5565b8083825260208201915060208460051b87010193508684111561439257600080fd5b602086015b848110156143ae5780358352918301918301614397565b509695505050505050565b803561ffff8116811461220a57600080fd5b600080600080608085870312156143e157600080fd5b843567ffffffffffffffff808211156143f957600080fd5b6144058883890161434a565b9550602087013591508082111561441b57600080fd5b506144288782880161434a565b935050614437604086016143b9565b9150614445606086016143b9565b905092959194509250565b6000806040838503121561446357600080fd5b50508035926020909101359150565b60006020828403121561448457600080fd5b5035919050565b634e487b7160e01b600052602160045260246000fd5b600281106144b1576144b161448b565b9052565b60008151808452602080850194506020840160005b838110156144e6578151875295820195908201906001016144ca565b509495945050505050565b602081526145036020820183516144a1565b602082015160408201526040820151606082015260608201516080820152608082015160a0820152600060a083015160e060c08401526145476101008401826144b5565b905060c0840151601f198483030160e085015261295182826144b5565b600082601f83011261457557600080fd5b8135602061458561436b83614326565b82815260079290921b840181019181810190868411156145a457600080fd5b8286015b848110156143ae57608081890312156145c15760008081fd5b6145c9614285565b81358152848201358582015260408083013590820152606080830135908201528352918301916080016145a8565b60008060006060848603121561460c57600080fd5b8335925060208401359150604084013567ffffffffffffffff81111561463157600080fd5b61463d86828701614564565b9150509250925092565b60008060006060848603121561465c57600080fd5b83356002811061466b57600080fd5b9250602084013567ffffffffffffffff8082111561468857600080fd5b6146948783880161434a565b935060408601359150808211156146aa57600080fd5b5061463d8682870161434a565b60ff8116811461194857600080fd5b600080600080600060a086880312156146de57600080fd5b853567ffffffffffffffff808211156146f657600080fd5b9087019060a0828a03121561470a57600080fd5b6147126142ae565b8235815260208084013581830152604084013560408301526060840135606083015260808401358381111561474657600080fd5b8085019450508a601f85011261475b57600080fd5b8335925061476b61436b84614326565b83815260059390931b8401810192818101908c85111561478a57600080fd5b948201945b848610156147b15785356147a2816146b7565b8252948201949082019061478f565b608084810191909152929c918b01359b505060408a01359960608101359950909101359650945050505050565b6001600160a01b038116811461194857600080fd5b6000806040838503121561480657600080fd5b8235614811816147de565b9150602083013567ffffffffffffffff81111561482d57600080fd5b6148398582860161434a565b9150509250929050565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561486b57600080fd5b8151801515811461069757600080fd5b634e487b7160e01b600052601160045260246000fd5b808202811582820484141761038b5761038b61487b565b634e487b7160e01b600052601260045260246000fd5b6000826148cd576148cd6148a8565b500690565b6000602082840312156148e457600080fd5b8151610697816147de565b6148f981866144a1565b60806020820152600061490f60808301866144b5565b828103604084015261492181866144b5565b91505082606083015295945050505050565b6000610100828403121561494657600080fd5b61494e6142d1565b825181526020830151602082015260408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e08201528091505092915050565b600082601f8301126149b357600080fd5b815160206149c361436b83614326565b8083825260208201915060208460051b8701019350868411156149e557600080fd5b602086015b848110156143ae5780516149fd816146b7565b83529183019183016149ea565b600060208284031215614a1c57600080fd5b815167ffffffffffffffff80821115614a3457600080fd5b908301906101008286031215614a4957600080fd5b614a516142d1565b82518152602083015182811115614a6757600080fd5b614a73878286016149a2565b60208301525060408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e082015280935050505092915050565b60006020808385031215614ad457600080fd5b825167ffffffffffffffff80821115614aec57600080fd5b818501915085601f830112614b0057600080fd5b8151614b0e61436b82614326565b81815260059190911b83018401908481019088831115614b2d57600080fd5b938501935b82851015614b5a5784518481168114614b4b5760008081fd5b82529385019390850190614b32565b98975050505050505050565b81810360008312801583831316838312821617156110925761109261487b565b600082614b9557614b956148a8565b500490565b808201828112600083128015821682158216171561114b5761114b61487b565b808202600082127f800000000000000000000000000000000000000000000000000000000000000084141615614bf257614bf261487b565b818105831482151761038b5761038b61487b565b60006000198203614c1957614c1961487b565b5060010190565b60006040808301858452602060406020860152818651808452606093506060870191506020880160005b82811015614c8157815180518552858101518686015287810151888601528601518685015260809093019290840190600101614c4a565b50919998505050505050505050565b600381106119485761194861448b565b60005b83811015614cbb578181015183820152602001614ca3565b50506000910152565b60008151808452614cdc816020860160208601614ca0565b601f01601f19169290920160200192915050565b838152614cfc83614c90565b8260208201526060604082015260006129516060830184614cc4565b8082018082111561038b5761038b61487b565b6020815260006106976020830184614cc4565b600060208284031215614d5057600080fd5b815167ffffffffffffffff80821115614d6857600080fd5b9083019060a08286031215614d7c57600080fd5b614d846142ae565b82518152602083015160208201526040830151604082015260608301516060820152608083015182811115614db857600080fd5b614dc4878286016149a2565b60808301525095945050505050565b600082614de257614de26148a8565b60001983147f800000000000000000000000000000000000000000000000000000000000000083141615614e1857614e1861487b565b500590565b838152606060208201526000614e3660608301856144b5565b9050826040830152949350505050565b600082601f830112614e5757600080fd5b815167ffffffffffffffff811115614e7157614e7161426f565b614e846020601f19601f840116016142f5565b818152846020838601011115614e9957600080fd5b610672826020830160208701614ca0565b600080600060608486031215614ebf57600080fd5b835167ffffffffffffffff80821115614ed757600080fd5b614ee387838801614e46565b9450602086015193506040860151915080821115614f0057600080fd5b5061463d86828701614e46565b6000815160208301517fffffffff0000000000000000000000000000000000000000000000000000000080821693506004831015613fc75760049290920360031b82901b161692915050565b600060028710614f6b57614f6b61448b565b5060f89590951b8552600185019390935260218401919091526041830152606182015260810190565b60008351614fa6818460208801614ca0565b835190830190614fba818360208801614ca0565b01949350505050565b85815260a060208201526000614fdc60a08301876144b5565b8281036040840152614fee8187614cc4565b90508460608401528281036080840152614b5a8185614cc4565b84815260806020820152600061502160808301866144b5565b60ff949094166040830152506060015292915050565b60006020828403121561504957600080fd5b5051919050565b85815260a06020820152600061506960a08301876144b5565b60ff8616604084015282810360608401526150848186614cc4565b9150508260808301529695505050505050565b60007f800000000000000000000000000000000000000000000000000000000000000082036150c8576150c861487b565b5060000390565b8181038181111561038b5761038b61487b565b6040815260006150f56040830185614cc4565b90506001600160a01b03831660208301529392505050565b600060ff821660ff81036151235761512361487b565b60010192915050565b8281526040602082015260006106726040830184614cc4565b60006020828403121561515757600080fd5b815167ffffffffffffffff81111561516e57600080fd5b61067284828501614e46565b7fffff0000000000000000000000000000000000000000000000000000000000008416815260007f3a0000000000000000000000000000000000000000000000000000000000000080600284015284516151db816003860160208901614ca0565b8084019050816003820152845191506151fb826004830160208801614ca0565b0160040195945050505050565b88815287602082015261521a87614c90565b60f89690961b604087015260418601949094526061850192909252608184015260a183015260c182015260e10192915050565b8281526000602080830184516020860160005b8281101561527c57815184529284019290840190600101615260565b5091979650505050505050565b60608152600061529c6060830186614cc4565b60208301949094525060400152919050565b6080815260006152c160808301876144b5565b82810360208401526152d38187614cc4565b905084604084015282810360608401526152ed8185614cc4565b979650505050505050565b86815260c06020820152600061531160c08301886144b5565b82810360408401526153238188614cc4565b9050856060840152828103608084015261533d8186614cc4565b9150508260a0830152979650505050505050565b60608152600061536460608301866144b5565b65ffffffffffff8516602084015282810360408401526114e98185614cc4565b84815260806020820152600061539d60808301866144b5565b65ffffffffffff8516604084015282810360608401526152ed8185614cc4565b600082516153cf818460208701614ca0565b9190910192915050565b600084516153eb818460208901614ca0565b60609490941b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000169190930190815260148101919091526034019291505056fea2646970667358221220e0b06e430c1d6652950eb639c715b921ba1255c065dc37c90f90cd46f3c8c4c564736f6c63430008180033","sourceMap":"1142:11988:111:-:0;;;;;;;;;;;;;;;;;;;","linkReferences":{"src/libraries/LibChunks.sol":{"LibChunks":[{"start":3427,"length":20}]}}},"deployedBytecode":{"object":"0x6080604052600436106100e85760003560e01c806398d239b11161008a578063bfea0b8511610059578063bfea0b8514610297578063c6ca743c146102a3578063e1af802c146102c3578063fc88ff63146102d857600080fd5b806398d239b114610205578063aaa417b71461021a578063b127ae901461023a578063b24678941461027757600080fd5b8063195e75c4116100c6578063195e75c41461016f57806332aeffdf1461019d57806345ec9354146101c05780634dda27e8146101d857600080fd5b806301ffc9a7146100ed578063119df25f14610122578063154510201461014f575b600080fd5b3480156100f957600080fd5b5061010d61010836600461422d565b6102f8565b60405190151581526020015b60405180910390f35b34801561012e57600080fd5b50610137610391565b6040516001600160a01b039091168152602001610119565b34801561015b57600080fd5b5061010d61016a3660046143cb565b6103a0565b34801561017b57600080fd5b5061018f61018a366004614450565b61067a565b604051908152602001610119565b3480156101a957600080fd5b5061010d6101b8366004614450565b600092915050565b3480156101cc57600080fd5b5036601f19013561018f565b3480156101e457600080fd5b506101f86101f3366004614472565b61069e565b60405161011991906144f1565b6102186102133660046145f7565b6106e8565b005b34801561022657600080fd5b5061018f610235366004614647565b6108b2565b34801561024657600080fd5b5061025a6102553660046146c6565b610b8c565b604080519384529115156020840152151590820152606001610119565b34801561028357600080fd5b5061010d6102923660046147f3565b610fc3565b34801561021857600080fd5b3480156102af57600080fd5b5061010d6102be366004614450565b611099565b3480156102cf57600080fd5b50610137611153565b3480156102e457600080fd5b506102186102f33660046145f7565b61115d565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee12700000000000000000000000000000000000000000000000000000000148061038b57507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b600061039b6113d6565b905090565b600160005b8551811015610505576103b6611153565b6001600160a01b031663fa1becc48783815181106103d6576103d6614843565b60200260200101516040518263ffffffff1660e01b81526004016103fc91815260200190565b602060405180830381865afa158015610419573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061043d9190614859565b61044a5760009150610505565b610452611153565b6001600160a01b031663f48a397287838151811061047257610472614843565b602002602001015186866040518463ffffffff1660e01b81526004016104af9392919092835261ffff918216602084015216604082015260600190565b602060405180830381865afa1580156104cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104f09190614859565b6104fd5760009150610505565b6001016103a5565b5080156106725760005b845181101561067057610520611153565b6001600160a01b031663fa1becc486838151811061054057610540614843565b60200260200101516040518263ffffffff1660e01b815260040161056691815260200190565b602060405180830381865afa158015610583573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105a79190614859565b156105b55760009150610670565b6105bd611153565b6001600160a01b031663f48a39728683815181106105dd576105dd614843565b602002602001015186866040518463ffffffff1660e01b815260040161061a9392919092835261ffff918216602084015216604082015260600190565b602060405180830381865afa158015610637573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061065b9190614859565b6106685760009150610670565b60010161050f565b505b949350505050565b600061068d8366038d7ea4c68000614891565b61069790836148be565b9392505050565b6106df6040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b61038b82611408565b60006106f384611408565b9050806020015160001415801561070c57506040810151155b61075d5760405162461bcd60e51b815260206004820181905260248201527f434f4d4241542053595354454d3a20494e56414c494420454e434f554e54455260448201526064015b60405180910390fd5b80608001518160600151106107b45760405162461bcd60e51b815260206004820181905260248201527f434f4d4241542053595354454d3a204558504952454420454e434f554e5445526044820152606401610754565b6107bc610391565b6001600160a01b03166107cd611153565b6001600160a01b0316634f10aabc856040518263ffffffff1660e01b81526004016107fa91815260200190565b602060405180830381865afa158015610817573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061083b91906148d2565b6001600160a01b031614801561085657506108568385611099565b6108a25760405162461bcd60e51b815260206004820152601c60248201527f434f4d4241542053595354454d3a204e4f4e2d434f4d424154414e54000000006044820152606401610754565b6108ac84836114f3565b50505050565b60006108c56108bf610391565b84610fc3565b6109115760405162461bcd60e51b815260206004820152601d60248201527f434f4d4241542053595354454d3a20494e56414c49442053454e4445520000006044820152606401610754565b6000806109378560008151811061092a5761092a614843565b602002602001015161158d565b9150915085600181111561094d5761094d61448b565b600103610a3557610960858584846103a0565b6109ac5760405162461bcd60e51b815260206004820152601a60248201527f434f4d4241542053595354454d3a20494e56414c4944205056450000000000006044820152606401610754565b60405142906109c59088908890889085906020016148ef565b60405160208183030381529060405280519060200120935060006040518060e001604052808960018111156109fc576109fc61448b565b81526020018381526020016000815260200160008152602001600f8152602001878152602001888152509050610a32858261163e565b50505b856001811115610a4757610a4761448b565b5060005b8451811015610af2576000801b610a7a868381518110610a6d57610a6d614843565b60200260200101516116ff565b14610ac75760405162461bcd60e51b815260206004820152601e60248201527f434f4d4241542053595354454d3a20454e54495459204f4343555049454400006044820152606401610754565b610aea858281518110610adc57610adc614843565b602002602001015185611790565b600101610a4b565b5060005b8551811015610b82576000801b610b18878381518110610a6d57610a6d614843565b14610b655760405162461bcd60e51b815260206004820152601e60248201527f434f4d4241542053595354454d3a20454e54495459204f4343555049454400006044820152606401610754565b610b7a868281518110610adc57610adc614843565b600101610af6565b5050509392505050565b600080600080610b9a611153565b6001600160a01b03166354f1f2db896040518263ffffffff1660e01b8152600401610bc791815260200190565b61010060405180830381865afa158015610be5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c099190614933565b90506000610c15611153565b6001600160a01b03166354f1f2db896040518263ffffffff1660e01b8152600401610c4291815260200190565b61010060405180830381865afa158015610c60573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c849190614933565b90506000610c90611153565b6001600160a01b031663810c1dc1896040518263ffffffff1660e01b8152600401610cbd91815260200190565b600060405180830381865afa158015610cda573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610d029190810190614a0a565b905060008260a001511315610fa8576040517f4dddf8370000000000000000000000000000000000000000000000000000000081526004810188905260009073__$227e4555c1f608352b26068e438454dd8b$__90634dddf83790602401600060405180830381865af4158015610d7d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610da59190810190614ac1565b9050610dfc81600081518110610dbd57610dbd614843565b602002602001015167ffffffffffffffff1682600181518110610de257610de2614843565b602002602001015167ffffffffffffffff168e8787611844565b90965094508515610f5f57620186a060008d602001518560600151610e219190614b66565b13610e2d576001610e41565b8c602001518460600151610e419190614b66565b610e4b9190614891565b8451620186a090610e5e90600290614b86565b8460a00151856080015185600281518110610e7b57610e7b614843565b602002602001015167ffffffffffffffff16610e9791906148be565b1115610ed657846080015184600281518110610eb557610eb5614843565b602002602001015167ffffffffffffffff16610ed191906148be565b610edc565b8460a001515b8f51610ee89190614b9a565b610ef29190614b9a565b610efc9190614bba565b610f069190614b66565b96508415610f5a57610f4c6040518060400160405280600581526020017f43524954210000000000000000000000000000000000000000000000000000008152506118d7565b610f57600288614bba565b96505b610fa2565b610f9d6040518060400160405280600581526020017f4d495353210000000000000000000000000000000000000000000000000000008152506118d7565b600096505b50610fb5565b6000955060009450600093505b505050955095509592505050565b6000805b825181101561109257610fd8611153565b6001600160a01b0316634f10aabc848381518110610ff857610ff8614843565b60200260200101516040518263ffffffff1660e01b815260040161101e91815260200190565b602060405180830381865afa15801561103b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061105f91906148d2565b6001600160a01b0316846001600160a01b0316036110805760019150611092565b8061108a81614c06565b915050610fc7565b5092915050565b6000806110a583611408565b905060005b8160c00151518110156110f6578160c0015181815181106110cd576110cd614843565b602002602001015185036110e457600192506110f6565b806110ee81614c06565b9150506110aa565b50816110925760005b8160a001515181101561114b578160a00151818151811061112257611122614843565b60200260200101518503611139576001925061114b565b8061114381614c06565b9150506110ff565b505092915050565b600061039b61194b565b61116e30611169610391565b611955565b600061117983611408565b905060005b82518110156111cc57600083828151811061119b5761119b614843565b602002602001015190506111c38582604001518360000151846020015185606001518b61196b565b5060010161117e565b50606081018051906111dd82614c06565b905250600080805b8360a001515181101561131c57600061121a8560a00151838151811061120d5761120d614843565b6020026020010151611a08565b905060008113611313578361122e81614c06565b945050846000015160018111156112475761124761448b565b60ff1660000361131357611259611153565b6001600160a01b031663fa1becc48660a00151848151811061127d5761127d614843565b60200260200101516040518263ffffffff1660e01b81526004016112a391815260200190565b602060405180830381865afa1580156112c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112e49190614859565b15611313576113138560a00151838151811061130257611302614843565b60200260200101516000801b611790565b506001016111e5565b5060005b8360c00151518110156113815760006113488560c00151838151811061120d5761120d614843565b905060008113611378578261135c81614c06565b9350506113788560c00151838151811061130257611302614843565b50600101611320565b508260c001515181148061139957508260a001515182145b806113ab575082608001518360600151145b156113ce574360408401526113c0858461163e565b6113ca8587611a9a565b5050505b505050505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c806114055750335b90565b6114496040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061147f5761147f614843565b6020908102919091010152600080806114d87f74625544000000000000000000000000436f6d626174456e636f756e74657200857e81050201202020200000000000000000000000000000000000000000000000611ccf565b9250925092506114e9838383611d9f565b9695505050505050565b611588826001848460405160200161150c929190614c20565b60408051601f198184030181529082905261152b939291602401614cf0565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb2aa60a400000000000000000000000000000000000000000000000000000000179052611e4c565b505050565b604080516001808252818301909252600091829182916020808301908036833701905050905083816000815181106115c7576115c7614843565b6020908102919091010152600080806116207f74625544000000000000000000000000506f736974696f6e0000000000000000857e04020002020000000000000000000000000000000000000000000000000000611ccf565b925092509250611631838383611efa565b9550955050505050915091565b600061166182600001518360200151846040015185606001518660800151611f1d565b905060006116778360a001518460c00151611f52565b9050600061168d8460a001518560c00151611f76565b604080516001808252818301909252919250600091906020808301908036833701905050905085816000815181106116c7576116c7614843565b60209081029190910101526113ce7f74625544000000000000000000000000436f6d626174456e636f756e7465720082868686611fb2565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061173857611738614843565b602090810291909101015260006106727f746255440000000000000000000000004d61746368456e74697479000000000083837e40020020200000000000000000000000000000000000000000000000000000612067565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106117c6576117c6614843565b6020026020010181815250506115887f746255440000000000000000000000004d61746368456e74697479000000000060001b8260008560405160200161180f91815260200190565b60408051601f198184030181529190527e40020020200000000000000000000000000000000000000000000000000000612124565b60008080620249f06118586103e88a6148be565b61186a8760200151896040015161219a565b6118749190614d18565b61187e9190614891565b90506000620186a085602001516103e88a61189991906148be565b6118a39190614d18565b6118ad9190614891565b9050808211935083156118cb5760026118c68284614b86565b101592505b50509550959350505050565b611948816040516024016118eb9190614d2b565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f41304fac000000000000000000000000000000000000000000000000000000001790526121c7565b50565b600061039b6121d0565b6119676119618361220f565b826122ac565b5050565b6000611976866122f8565b8051909150600381111561198c5761198c61448b565b60ff166001036119ff57600081602001518060200190518101906119b09190614d3e565b905060008060006119c4848a8a8a8a610b8c565b9194509250905060006119da620186a085614dd3565b6119e38a611a08565b6119ed9190614b66565b90506119f989826123ad565b50505050505b50505050505050565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110611a4157611a41614843565b602090810291909101015260006106727f74625544000000000000000000000000537461747300000000000000000000008360057ee1080020200120202020200000000000000000000000000000000000000000612067565b606080600080611aa986611408565b90506000806000611ab86141d7565b60005b8560c0015151811015611b2557611aee8660c001518281518110611ae157611ae1614843565b6020026020010151612461565b91508160e0015185611b009190614d18565b945060008260a001511315611b1d5783611b1981614c06565b9450505b600101611abb565b5060008060005b8760a0015151811015611bac57611b528860a001518281518110611ae157611ae1614843565b935060008460a0015113611ba45760c0840151611b6f9083614d18565b9150611b7f8460e001518d61067a565b611b899084614d18565b9250611ba48860a00151828151811061130257611302614843565b600101611b2c565b5060005b8760c0015151811015611cc0578760c001518181518110611bd357611bd3614843565b60200260200101519450611be685612461565b9350611bf28683614b86565b8460c001818151611c039190614d18565b905250611c0e611153565b6001600160a01b031663fda0ce5086611c278987614b86565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815260048101929092526024820152604401600060405180830381600087803b158015611c7d57600080fd5b505af1158015611c91573d6000803e3d6000fd5b50505050611c9f8585612509565b611cb88860c00151828151811061130257611302614843565b600101611bb0565b50505050505050509250925092565b6060600060606000611cdf6121d0565b9050306001600160a01b03821603611d0857611cfc8787876125b2565b93509350935050611d96565b6040517f419b58fd0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063419b58fd90611d51908a908a908a90600401614e1d565b600060405180830381865afa158015611d6e573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611cfc9190810190614eaa565b93509350939050565b611de06040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b611de9846126ba565b6080860181905260608601829052604086018390526020860184905285856001811115611e1857611e1861448b565b6001811115611e2957611e2961448b565b8152505050505050611e3b838361270a565b60c083015260a08201529392505050565b6060600080611e62611e5d85614f0d565b612759565b91509150816000801b03611ec8576040517ffdde54e20000000000000000000000000000000000000000000000000000000081527fffffffff00000000000000000000000000000000000000000000000000000000600035166004820152602401610754565b6020840180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1682179052610672828561281c565b60208301516022840151600091829160f091821c911c5b90969095509350505050565b60608585858585604051602001611f38959493929190614f59565b604051602081830303815290604052905095945050505050565b600061069783516020028351602002606081901b603883901b838301171792915050565b6060611f81836128f7565b611f8a836128f7565b604051602001611f9b929190614f94565b604051602081830303815290604052905092915050565b6000611fbc6121d0565b9050306001600160a01b03821603611fe057611fdb8686868686612907565b6113ce565b6040517f298314fb0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063298314fb9061202d9089908990899089908990600401614fc3565b600060405180830381600087803b15801561204757600080fd5b505af115801561205b573d6000803e3d6000fd5b50505050505050505050565b6000806120726121d0565b9050306001600160a01b038216036120985761209086868686612924565b915050610672565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d59906120e3908990899089908990600401615008565b602060405180830381865afa158015612100573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120909190615037565b600061212e6121d0565b9050306001600160a01b0382160361214d57611fdb868686868661295a565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae09061202d9089908990899089908990600401615050565b60008082126121b4576121ad8284614d18565b905061038b565b6121bd82615097565b6121ad90846150cf565b6119488161296f565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b03168061220a573391505090565b919050565b60408051600180825281830190925260009182919060208083019080368337019050509050826001600160a01b031660001b8160008151811061225457612254614843565b602090810291909101015260006106727f7462776f726c6400000000000000000053797374656d5265676973747279000083837e20010020000000000000000000000000000000000000000000000000000000612067565b6122b68282612990565b611967576122c3826129ee565b816040517fd787b7370000000000000000000000000000000000000000000000000000000081526004016107549291906150e2565b60408051808201909152600081526060602082015260408051600180825281830190925260009160208083019080368337019050509050828160008151811061234357612343614843565b60209081029190910101526000808061239c7f74625544000000000000000000000000416374696f6e73000000000000000000857e01010101000000000000000000000000000000000000000000000000000000611ccf565b9250925092506114e9838383612b2b565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106123e3576123e3614843565b6020026020010181815250506115887f746255440000000000000000000000005374617473000000000000000000000060001b8260058560405160200161242c91815260200190565b60408051601f198184030181529190527ee1080020200120202020200000000000000000000000000000000000000000612124565b6124696141d7565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061249f5761249f614843565b6020908102919091010152600080806124f87f7462554400000000000000000000000053746174730000000000000000000000857ee1080020200120202020200000000000000000000000000000000000000000611ccf565b9250925092506114e9838383612b88565b600061253b826000015183602001518460400151856060015186608001518760a001518860c001518960e00151612c00565b60408051600180825281830190925291925060009160609183919060208083019080368337019050509050858160008151811061257a5761257a614843565b60209081029190910101526113ce7f746255440000000000000000000000005374617473000000000000000000000082868686611fb2565b60606000606060006125c385612c3e565b90506125d0878783612c61565b935060006125dd86612c9a565b905080156126af576125ef8888612cd7565b935066ffffffffffffff841667ffffffffffffffff8111156126135761261361426f565b6040519080825280601f01601f19166020018201604052801561263d576020820181803683370190505b5092506020830160005b828160ff1610156126ac57600061265f8b8b84612cea565b9050600061267c888460ff166028026038011c64ffffffffff1690565b905061268b8260008387612d6a565b6126958185614d18565b9350505080806126a49061510d565b915050612647565b50505b505093509350939050565b60008060008060006126d0866000016020015190565b60f81c60018111156126e4576126e461448b565b602187015160418801516061890151608190990151929991989097509550909350915050565b6060806000603885901c64ffffffffff1661272e612729868484612e36565b612ec4565b935090508064ffffffffff606087901c160161274e612729868484612e36565b925050509250929050565b6040805160018082528183019092526000918291829160208083019080368337019050509050837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916816000815181106127b2576127b2614843565b60209081029190910101526000808061280b7f7462776f726c6400000000000000000046756e6374696f6e53656c6563746f72857e24020020040000000000000000000000000000000000000000000000000000611ccf565b925092509250611631838383612ed5565b6060600061282861194b565b90506001600160a01b03811630036128695760006128506128476113d6565b60008787612ee1565b9350905080612862576128628361301c565b505061038b565b6040517f3ae7af080000000000000000000000000000000000000000000000000000000081526001600160a01b03821690633ae7af08906128b0908790879060040161512c565b6000604051808303816000875af11580156128cf573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106729190810190615145565b6060816106978160206000613024565b61291d85858585856129188b613084565b613109565b5050505050565b60006129516129338686613442565b60ff858116601b0360080285901c1661294c8587613498565b6134d1565b95945050505050565b61291d85856129698487613498565b85613522565b80516a636f6e736f6c652e6c6f67602083016000808483855afa5050505050565b60006129de7f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617836137bd565b80610697575061069783836137bd565b606081601081901b6000612a0183613886565b9050827fffffffffffffffffffffffffffff000000000000000000000000000000000000831615612a5c57612a577fffffffffffffffffffffffffffff000000000000000000000000000000000000841661389d565b612a93565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b7fffffffffffffffffffffffffffffffff00000000000000000000000000000000831615612ac957612ac48361389d565b612b00565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b604051602001612b129392919061517a565b6040516020818303038152906040529350505050919050565b604080518082019091526000815260606020820152612b4984613941565b81906003811115612b5c57612b5c61448b565b90816003811115612b6f57612b6f61448b565b905250612b7c838361395d565b60208201529392505050565b612b906141d7565b612b9984613980565b60e0890181905260c0890182905260a089018390526080890184905260608901859052886020810160408201886002811115612bd757612bd761448b565b6002811115612be857612be861448b565b90529790975250505093909252509195945050505050565b60608888888888888888604051602001612c21989796959493929190615208565b604051602081830303815290604052905098975050505050505050565b60006008612c4e600260206150cf565b612c589190614891565b9190911c919050565b606081600003612c805750604080516020810190915260008152610697565b6000612c8c8585613442565b9050612951816000856139ee565b60006008600180612cad600260206150cf565b612cb791906150cf565b612cc191906150cf565b612ccb9190614891565b8260ff911c1692915050565b6000610697612ce68484613a11565b5490565b60008383604051602001612cff92919061524d565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b8215612df15760208310612d9457602083048401935060208381612d9057612d906148a8565b0692505b8215612df1576020839003600081841015612db75750600019600884021c612dc1565b50600019600882021c5b8554600886021b818451168219821617845250818411612de25750506108ac565b50600194909401939182900391015b5b60208210612e135783548152600190930192601f1990910190602001612df2565b81156108ac576000600019600884021c8251865482191691161782525050505050565b600081831180612e465750835182115b15612e83578383836040517f23230fa300000000000000000000000000000000000000000000000000000000815260040161075493929190615289565b60208401612e918482614d18565b90506000612e9f85856150cf565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b606060006106978360206000613a67565b600080611f1185613ad6565b60006060600080612ef186613aeb565b90925090506001600160a01b038216612f425785612f0e876129ee565b6040517ffbf10ce600000000000000000000000000000000000000000000000000000000815260040161075492919061512c565b80612f5157612f518689613b8f565b8615612fbd577dffffffffffffffffffffffffffff0000000000000000000000000000000086167f6e73000000000000000000000000000000000000000000000000000000000000176000612fa582613b99565b9050612fba82612fb58b84614d18565b613c2a565b50505b6000612fc98760101b90565b7fffffffffffffffffffffffffffff000000000000000000000000000000000000161461300157612ffc88888488613cde565b61300d565b61300d88888488613d56565b90999098509650505050505050565b805160208201fd5b825160609060006130358583614891565b9050604051925060208301601f19603f83860101166040528184526000602088015b84821015613078578051871b83529187019160019190910190602001613057565b50505050509392505050565b60007f8b9d8c8b908d9affffffffffffffffffab9e9d939a8d0000000000000000000082016130d357507e60030220202000000000000000000000000000000000000000000000000000919050565b61038b6131007f746273746f72650000000000000000005461626c65730000000000000000000084613db7565b602060006134d1565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff000000000000000000000000000000000000000000000000000000000000160361319557857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a98686868660405161318894939291906152ae565b60405180910390a26113ce565b60006131a087613dd3565b905060005b81518110156132795760008282815181106131c2576131c2614843565b602002602001015190506131ee6001826affffffffffffffffffffff1916613e5c90919063ffffffff16565b15613270576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c9061323d908c908c908c908c908c908c906004016152f8565b600060405180830381600087803b15801561325757600080fd5b505af115801561326b573d6000803e3d6000fd5b505050505b506001016131a5565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9878787876040516132b094939291906152ae565b60405180910390a260006132c48888613442565b905060006020870190506132dc826000895184613e7a565b60006132e785612c9a565b111561336b5760006132f98a8a613a11565b878155905060208601915060008060005b61331388612c9a565b8160ff161015613366576133288d8d83612cea565b92506133438a8260ff166028026038011c64ffffffffff1690565b91506133528360008488613e7a565b61335c8286614d18565b945060010161330a565b505050505b60005b835181101561205b57600084828151811061338b5761338b614843565b602002602001015190506133b76002826affffffffffffffffffffff1916613e5c90919063ffffffff16565b15613439576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90613406908e908e908e908e908e908e906004016152f8565b600060405180830381600087803b15801561342057600080fd5b505af1158015613434573d6000803e3d6000fd5b505050505b5060010161336e565b6000828260405160200161345792919061524d565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff168110156134c9576134bf60ff601b83900360080287901c1683614d18565b915060010161349d565b509392505050565b6000602082106134f7576020820484019350602082816134f3576134f36148a8565b0691505b508254600882021b6020829003808411156134c9576001850154600882021c82179150509392505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff00000000000000000000000000000000000000000000000000000000000016036135ac57837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be84848460405161359f93929190615351565b60405180910390a26108ac565b60006135b88585613442565b905060006135c586613dd3565b905060005b815181101561369a5760008282815181106135e7576135e7614843565b602002602001015190506136136004826affffffffffffffffffffff1916613e5c90919063ffffffff16565b15613691576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d9061365e908b908b908b908b90600401615384565b600060405180830381600087803b15801561367857600080fd5b505af115801561368c573d6000803e3d6000fd5b505050505b506001016135ca565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8686866040516136cf93929190615351565b60405180910390a26136ea828565ffffffffffff1685613f39565b60005b81518110156119ff57600082828151811061370a5761370a614843565b602002602001015190506137366008826affffffffffffffffffffff1916613e5c90919063ffffffff16565b156137b4576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba872190613781908b908b908b908b90600401615384565b600060405180830381600087803b15801561379b57600080fd5b505af11580156137af573d6000803e3d6000fd5b505050505b506001016136ed565b6040805160028082526060820183526000928392919060208301908036833701905050905083816000815181106137f6576137f6614843565b602002602001018181525050826001600160a01b031660001b8160018151811061382257613822614843565b6020908102919091010152600061387a7f7462776f726c640000000000000000005265736f75726365416363657373000083837e01010001000000000000000000000000000000000000000000000000000000612067565b90506129518160f81c90565b600061389460706010614d18565b9190911b919050565b606060005b6010811015613902577fffffffffffffffffffffffffffffffff000000000000000000000000000000008316600882021b7fff000000000000000000000000000000000000000000000000000000000000001615613902576001016138a2565b604080517fffffffffffffffffffffffffffffffff00000000000000000000000000000000851660208201528151603090910190915281815280610672565b602081015160009060f81c600381111561038b5761038b61448b565b60606000603884901c64ffffffffff1661295161397b858484612e36565b613f4f565b60008060008060008060008061399a896000016020015190565b60408a015160608b0151919950975060f81c60028111156139bd576139bd61448b565b60618a015160818b015160a18c015160c18d015160e1909d01519b9d9a9c939b929a91995097509195509350915050565b60405160208101601f19603f84840101166040528282526134c985858584612d6a565b60008282604051602001613a2692919061524d565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b60606000613a758560801c90565b90506fffffffffffffffffffffffffffffffff85166000858281613a9b57613a9b6148a8565b04905060405193506020840160208202810160405281855260005b82811015613078578451871c825293870193602090910190600101613ab6565b602081015160408201516000905b9050915091565b60408051600180825281830190925260009182918291602080830190803683370190505090508381600081518110613b2557613b25614843565b602090810291909101015260008080613b7e7f7462776f726c6400000000000000000053797374656d73000000000000000000857e150200140100000000000000000000000000000000000000000000000000006125b2565b925092509250611631838383613fcf565b6122b68282613fdb565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110613bd257613bd2614843565b602090810291909101015260006106727f7462776f726c6400000000000000000042616c616e636573000000000000000083837e20010020000000000000000000000000000000000000000000000000000000612924565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110613c6057613c60614843565b6020026020010181815250506115887f7462776f726c6400000000000000000042616c616e636573000000000000000060001b82600085604051602001613ca991815260200190565b60408051601f198184030181529190527e2001002000000000000000000000000000000000000000000000000000000061295a565b60006060836001600160a01b03166000613cf9858989614039565b604051613d0691906153bd565b60006040518083038185875af1925050503d8060008114613d43576040519150601f19603f3d011682016040523d82523d6000602084013e613d48565b606091505b509097909650945050505050565b60006060836001600160a01b0316613d6f848888614039565b604051613d7c91906153bd565b600060405180830381855af49150503d8060008114613d43576040519150601f19603f3d011682016040523d82523d6000602084013e613d48565b6040805160208101849052908101829052600090606001613457565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110613e0d57613e0d614843565b60209081029190910101526000613e457f746273746f726500000000000000000053746f7265486f6f6b730000000000008383614068565b9050610672613e578260008451612e36565b6140a2565b60008160ff1682613e6d8560581c90565b1660ff1614905092915050565b8215613ef45760208310613ea457602083048401935060208381613ea057613ea06148a8565b0692505b8215613ef45760208390036000600019600885021c1990506008850281811c91508351811c9050811987541682821617875550818411613ee55750506108ac565b50600194909401939182900391015b5b60208210613f165780518455600190930192601f1990910190602001613ef5565b81156108ac576000600019600884021c8554835182191691161785555050505050565b61158883838351613f4a8560200190565b613e7a565b60606000613f5d8360801c90565b90506fffffffffffffffffffffffffffffffff83168067ffffffffffffffff811115613f8b57613f8b61426f565b6040519080825280601f01601f191660200182016040528015613fb5576020820181803683370190505b50925060208301613fc78382846140b3565b505050919050565b600080611f11856140fe565b60006140297f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff000000000000000000000000000000008516178361411a565b806106975750610697838361411a565b6060838383604051602001614050939291906153d9565b60405160208183030381529060405290509392505050565b6060610672614078858585612cea565b600061409d856140888989612cd7565b9060ff166028026038011c64ffffffffff1690565b6139ee565b606060006106978360156000613a67565b5b602081106140d3578251825260209283019290910190601f19016140b4565b806000036140e057505050565b6000600019600883021c905080835116811985511617835250505050565b6020810151603482015160609190911c9060009060f81c613ae4565b60408051600280825260608201835260009283929190602083019080368337019050509050838160008151811061415357614153614843565b602002602001018181525050826001600160a01b031660001b8160018151811061417f5761417f614843565b6020908102919091010152600061387a7f7462776f726c640000000000000000005265736f75726365416363657373000083837e01010001000000000000000000000000000000000000000000000000000000612924565b6040518061010001604052806000815260200160008152602001600060028111156142045761420461448b565b815260200160008152602001600081526020016000815260200160008152602001600081525090565b60006020828403121561423f57600080fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461069757600080fd5b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff811182821017156142a8576142a861426f565b60405290565b60405160a0810167ffffffffffffffff811182821017156142a8576142a861426f565b604051610100810167ffffffffffffffff811182821017156142a8576142a861426f565b604051601f8201601f1916810167ffffffffffffffff8111828210171561431e5761431e61426f565b604052919050565b600067ffffffffffffffff8211156143405761434061426f565b5060051b60200190565b600082601f83011261435b57600080fd5b8135602061437061436b83614326565b6142f5565b8083825260208201915060208460051b87010193508684111561439257600080fd5b602086015b848110156143ae5780358352918301918301614397565b509695505050505050565b803561ffff8116811461220a57600080fd5b600080600080608085870312156143e157600080fd5b843567ffffffffffffffff808211156143f957600080fd5b6144058883890161434a565b9550602087013591508082111561441b57600080fd5b506144288782880161434a565b935050614437604086016143b9565b9150614445606086016143b9565b905092959194509250565b6000806040838503121561446357600080fd5b50508035926020909101359150565b60006020828403121561448457600080fd5b5035919050565b634e487b7160e01b600052602160045260246000fd5b600281106144b1576144b161448b565b9052565b60008151808452602080850194506020840160005b838110156144e6578151875295820195908201906001016144ca565b509495945050505050565b602081526145036020820183516144a1565b602082015160408201526040820151606082015260608201516080820152608082015160a0820152600060a083015160e060c08401526145476101008401826144b5565b905060c0840151601f198483030160e085015261295182826144b5565b600082601f83011261457557600080fd5b8135602061458561436b83614326565b82815260079290921b840181019181810190868411156145a457600080fd5b8286015b848110156143ae57608081890312156145c15760008081fd5b6145c9614285565b81358152848201358582015260408083013590820152606080830135908201528352918301916080016145a8565b60008060006060848603121561460c57600080fd5b8335925060208401359150604084013567ffffffffffffffff81111561463157600080fd5b61463d86828701614564565b9150509250925092565b60008060006060848603121561465c57600080fd5b83356002811061466b57600080fd5b9250602084013567ffffffffffffffff8082111561468857600080fd5b6146948783880161434a565b935060408601359150808211156146aa57600080fd5b5061463d8682870161434a565b60ff8116811461194857600080fd5b600080600080600060a086880312156146de57600080fd5b853567ffffffffffffffff808211156146f657600080fd5b9087019060a0828a03121561470a57600080fd5b6147126142ae565b8235815260208084013581830152604084013560408301526060840135606083015260808401358381111561474657600080fd5b8085019450508a601f85011261475b57600080fd5b8335925061476b61436b84614326565b83815260059390931b8401810192818101908c85111561478a57600080fd5b948201945b848610156147b15785356147a2816146b7565b8252948201949082019061478f565b608084810191909152929c918b01359b505060408a01359960608101359950909101359650945050505050565b6001600160a01b038116811461194857600080fd5b6000806040838503121561480657600080fd5b8235614811816147de565b9150602083013567ffffffffffffffff81111561482d57600080fd5b6148398582860161434a565b9150509250929050565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561486b57600080fd5b8151801515811461069757600080fd5b634e487b7160e01b600052601160045260246000fd5b808202811582820484141761038b5761038b61487b565b634e487b7160e01b600052601260045260246000fd5b6000826148cd576148cd6148a8565b500690565b6000602082840312156148e457600080fd5b8151610697816147de565b6148f981866144a1565b60806020820152600061490f60808301866144b5565b828103604084015261492181866144b5565b91505082606083015295945050505050565b6000610100828403121561494657600080fd5b61494e6142d1565b825181526020830151602082015260408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e08201528091505092915050565b600082601f8301126149b357600080fd5b815160206149c361436b83614326565b8083825260208201915060208460051b8701019350868411156149e557600080fd5b602086015b848110156143ae5780516149fd816146b7565b83529183019183016149ea565b600060208284031215614a1c57600080fd5b815167ffffffffffffffff80821115614a3457600080fd5b908301906101008286031215614a4957600080fd5b614a516142d1565b82518152602083015182811115614a6757600080fd5b614a73878286016149a2565b60208301525060408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e082015280935050505092915050565b60006020808385031215614ad457600080fd5b825167ffffffffffffffff80821115614aec57600080fd5b818501915085601f830112614b0057600080fd5b8151614b0e61436b82614326565b81815260059190911b83018401908481019088831115614b2d57600080fd5b938501935b82851015614b5a5784518481168114614b4b5760008081fd5b82529385019390850190614b32565b98975050505050505050565b81810360008312801583831316838312821617156110925761109261487b565b600082614b9557614b956148a8565b500490565b808201828112600083128015821682158216171561114b5761114b61487b565b808202600082127f800000000000000000000000000000000000000000000000000000000000000084141615614bf257614bf261487b565b818105831482151761038b5761038b61487b565b60006000198203614c1957614c1961487b565b5060010190565b60006040808301858452602060406020860152818651808452606093506060870191506020880160005b82811015614c8157815180518552858101518686015287810151888601528601518685015260809093019290840190600101614c4a565b50919998505050505050505050565b600381106119485761194861448b565b60005b83811015614cbb578181015183820152602001614ca3565b50506000910152565b60008151808452614cdc816020860160208601614ca0565b601f01601f19169290920160200192915050565b838152614cfc83614c90565b8260208201526060604082015260006129516060830184614cc4565b8082018082111561038b5761038b61487b565b6020815260006106976020830184614cc4565b600060208284031215614d5057600080fd5b815167ffffffffffffffff80821115614d6857600080fd5b9083019060a08286031215614d7c57600080fd5b614d846142ae565b82518152602083015160208201526040830151604082015260608301516060820152608083015182811115614db857600080fd5b614dc4878286016149a2565b60808301525095945050505050565b600082614de257614de26148a8565b60001983147f800000000000000000000000000000000000000000000000000000000000000083141615614e1857614e1861487b565b500590565b838152606060208201526000614e3660608301856144b5565b9050826040830152949350505050565b600082601f830112614e5757600080fd5b815167ffffffffffffffff811115614e7157614e7161426f565b614e846020601f19601f840116016142f5565b818152846020838601011115614e9957600080fd5b610672826020830160208701614ca0565b600080600060608486031215614ebf57600080fd5b835167ffffffffffffffff80821115614ed757600080fd5b614ee387838801614e46565b9450602086015193506040860151915080821115614f0057600080fd5b5061463d86828701614e46565b6000815160208301517fffffffff0000000000000000000000000000000000000000000000000000000080821693506004831015613fc75760049290920360031b82901b161692915050565b600060028710614f6b57614f6b61448b565b5060f89590951b8552600185019390935260218401919091526041830152606182015260810190565b60008351614fa6818460208801614ca0565b835190830190614fba818360208801614ca0565b01949350505050565b85815260a060208201526000614fdc60a08301876144b5565b8281036040840152614fee8187614cc4565b90508460608401528281036080840152614b5a8185614cc4565b84815260806020820152600061502160808301866144b5565b60ff949094166040830152506060015292915050565b60006020828403121561504957600080fd5b5051919050565b85815260a06020820152600061506960a08301876144b5565b60ff8616604084015282810360608401526150848186614cc4565b9150508260808301529695505050505050565b60007f800000000000000000000000000000000000000000000000000000000000000082036150c8576150c861487b565b5060000390565b8181038181111561038b5761038b61487b565b6040815260006150f56040830185614cc4565b90506001600160a01b03831660208301529392505050565b600060ff821660ff81036151235761512361487b565b60010192915050565b8281526040602082015260006106726040830184614cc4565b60006020828403121561515757600080fd5b815167ffffffffffffffff81111561516e57600080fd5b61067284828501614e46565b7fffff0000000000000000000000000000000000000000000000000000000000008416815260007f3a0000000000000000000000000000000000000000000000000000000000000080600284015284516151db816003860160208901614ca0565b8084019050816003820152845191506151fb826004830160208801614ca0565b0160040195945050505050565b88815287602082015261521a87614c90565b60f89690961b604087015260418601949094526061850192909252608184015260a183015260c182015260e10192915050565b8281526000602080830184516020860160005b8281101561527c57815184529284019290840190600101615260565b5091979650505050505050565b60608152600061529c6060830186614cc4565b60208301949094525060400152919050565b6080815260006152c160808301876144b5565b82810360208401526152d38187614cc4565b905084604084015282810360608401526152ed8185614cc4565b979650505050505050565b86815260c06020820152600061531160c08301886144b5565b82810360408401526153238188614cc4565b9050856060840152828103608084015261533d8186614cc4565b9150508260a0830152979650505050505050565b60608152600061536460608301866144b5565b65ffffffffffff8516602084015282810360408401526114e98185614cc4565b84815260806020820152600061539d60808301866144b5565b65ffffffffffff8516604084015282810360608401526152ed8185614cc4565b600082516153cf818460208701614ca0565b9190910192915050565b600084516153eb818460208901614ca0565b60609490941b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000169190930190815260148101919091526034019291505056fea2646970667358221220e0b06e430c1d6652950eb639c715b921ba1255c065dc37c90f90cd46f3c8c4c564736f6c63430008180033","sourceMap":"1142:11988:111:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2331:198:52;;;;;;;;;;-1:-1:-1;2331:198:52;;;;;:::i;:::-;;:::i;:::-;;;516:14:113;;509:22;491:41;;479:2;464:18;2331:198:52;;;;;;;;1262:113;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;707:55:113;;;689:74;;677:2;662:18;1262:113:52;543:226:113;2725:846:111;;;;;;;;;;-1:-1:-1;2725:846:111;;;;;:::i;:::-;;:::i;12831:204::-;;;;;;;;;;-1:-1:-1;12831:204:111;;;;;:::i;:::-;;:::i;:::-;;;4243:25:113;;;4231:2;4216:18;12831:204:111;4097:177:113;13039:89:111;;;;;;;;;;-1:-1:-1;13039:89:111;;;;;:::i;:::-;13120:4;13039:89;;;;;1616:110:52;;;;;;;;;;-1:-1:-1;3800:14:52;-1:-1:-1;;3796:25:52;3783:39;1616:110;1262:113;9991:157:111;;;;;;;;;;-1:-1:-1;9991:157:111;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;3735:592::-;;;;;;:::i;:::-;;:::i;:::-;;1340:1381;;;;;;;;;;-1:-1:-1;1340:1381:111;;;;;:::i;:::-;;:::i;8234:1753::-;;;;;;;;;;-1:-1:-1;8234:1753:111;;;;;:::i;:::-;;:::i;:::-;;;;10875:25:113;;;10943:14;;10936:22;10931:2;10916:18;;10909:50;11002:14;10995:22;10975:18;;;10968:50;10863:2;10848:18;8234:1753:111;10687:337:113;4978:334:111;;;;;;;;;;-1:-1:-1;4978:334:111;;;;;:::i;:::-;;:::i;10882:42::-;;;;;;;;;4331:643;;;;;;;;;;-1:-1:-1;4331:643:111;;;;;:::i;:::-;;:::i;1942:98:52:-;;;;;;;;;;;;;:::i;5316:1885:111:-;;;;;;;;;;-1:-1:-1;5316:1885:111;;;;;:::i;:::-;;:::i;2331:198:52:-;2407:4;2426:54;;;2441:39;2426:54;;:98;;-1:-1:-1;2484:40:52;;;2499:25;2484:40;2426:98;2419:105;2331:198;-1:-1:-1;;2331:198:52:o;1262:113::-;1305:14;1334:36;:34;:36::i;:::-;1327:43;;1262:113;:::o;2725:846:111:-;2900:4;2862:16;2910:290;2930:9;:16;2926:1;:20;2910:290;;;2973:8;:6;:8::i;:::-;-1:-1:-1;;;;;2966:39:111;;3006:9;3016:1;3006:12;;;;;;;;:::i;:::-;;;;;;;2966:53;;;;;;;;;;;;;4243:25:113;;4231:2;4216:18;;4097:177;2966:53:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2961:113;;3045:5;3031:19;;3060:5;;2961:113;3093:8;:6;:8::i;:::-;-1:-1:-1;;;;;3086:33:111;;3120:9;3130:1;3120:12;;;;;;;;:::i;:::-;;;;;;;3134:1;3137;3086:53;;;;;;;;;;;;;;;;13118:25:113;;;13162:6;13204:15;;;13199:2;13184:18;;13177:43;13256:15;13251:2;13236:18;;13229:43;13106:2;13091:18;;12920:358;3086:53:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3081:113;;3165:5;3151:19;;3180:5;;3081:113;2948:3;;2910:290;;;;3209:11;3205:338;;;3235:9;3230:307;3250:9;:16;3246:1;:20;3230:307;;;3294:8;:6;:8::i;:::-;-1:-1:-1;;;;;3287:39:111;;3327:9;3337:1;3327:12;;;;;;;;:::i;:::-;;;;;;;3287:53;;;;;;;;;;;;;4243:25:113;;4231:2;4216:18;;4097:177;3287:53:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3283:118;;;3368:5;3354:19;;3385:5;;3283:118;3422:8;:6;:8::i;:::-;-1:-1:-1;;;;;3415:33:111;;3449:9;3459:1;3449:12;;;;;;;;:::i;:::-;;;;;;;3463:1;3466;3415:53;;;;;;;;;;;;;;;;13118:25:113;;;13162:6;13204:15;;;13199:2;13184:18;;13177:43;13256:15;13251:2;13236:18;;13229:43;13106:2;13091:18;;12920:358;3415:53:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3410:119;;3496:5;3482:19;;3513:5;;3410:119;3268:3;;3230:307;;;;3205:338;2725:846;;;;;;:::o;12831:204::-;12914:18;13004:25;13021:8;633:4:0;13004:25:111;:::i;:::-;12988:42;;:12;:42;:::i;:::-;12975:55;12831:204;-1:-1:-1;;;12831:204:111:o;9991:157::-;10055:41;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10055:41:111;10111:32;10131:11;10111:19;:32::i;3735:592::-;3837:40;3880:32;3900:11;3880:19;:32::i;:::-;3837:75;;3926:13;:19;;;3949:1;3926:24;;:50;;;;-1:-1:-1;3954:17:111;;;;:22;3926:50;3918:95;;;;-1:-1:-1;;;3918:95:111;;14153:2:113;3918:95:111;;;14135:21:113;;;14172:18;;;14165:30;14231:34;14211:18;;;14204:62;14283:18;;3918:95:111;;;;;;;;;4055:13;:22;;;4027:13;:25;;;:50;4019:95;;;;-1:-1:-1;;;4019:95:111;;14514:2:113;4019:95:111;;;14496:21:113;;;14533:18;;;14526:30;14592:34;14572:18;;;14565:62;14644:18;;4019:95:111;14312:356:113;4019:95:111;4185:12;:10;:12::i;:::-;-1:-1:-1;;;;;4135:62:111;4142:8;:6;:8::i;:::-;-1:-1:-1;;;;;4135:36:111;;4172:8;4135:46;;;;;;;;;;;;;4243:25:113;;4231:2;4216:18;;4097:177;4135:46:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;4135:62:111;;:102;;;;;4201:36;4215:8;4225:11;4201:13;:36::i;:::-;4120:161;;;;-1:-1:-1;;;4120:161:111;;15131:2:113;4120:161:111;;;15113:21:113;15170:2;15150:18;;;15143:30;15209;15189:18;;;15182:58;15257:18;;4120:161:111;14929:352:113;4120:161:111;4287:35;4301:11;4314:7;4287:13;:35::i;:::-;3831:496;3735:592;;;:::o;1340:1381::-;1478:19;1513:38;1527:12;:10;:12::i;:::-;1541:9;1513:13;:38::i;:::-;1505:80;;;;-1:-1:-1;;;1505:80:111;;15488:2:113;1505:80:111;;;15470:21:113;15527:2;15507:18;;;15500:30;15566:31;15546:18;;;15539:59;15615:18;;1505:80:111;15286:353:113;1505:80:111;1592:8;1602;1614:26;1627:9;1637:1;1627:12;;;;;;;;:::i;:::-;;;;;;;1614;:26::i;:::-;1591:49;;;;1659:13;1651:22;;;;;;;;:::i;:::-;1677:1;1651:27;1647:590;;1696:38;1707:9;1718;1729:1;1732;1696:10;:38::i;:::-;1688:77;;;;-1:-1:-1;;;1688:77:111;;15846:2:113;1688:77:111;;;15828:21:113;15885:2;15865:18;;;15858:30;15924:28;15904:18;;;15897:56;15970:18;;1688:77:111;15644:350:113;1688:77:111;1840:58;;1793:15;;1840:58;;1851:13;;1866:9;;1877;;1793:15;;1840:58;;;:::i;:::-;;;;;;;;;;;;;1830:69;;;;;;1816:83;;1907:37;1947:230;;;;;;;;1992:13;1947:230;;;;;;;;:::i;:::-;;;;;2022:9;1947:230;;;;2046:1;1947:230;;;;2070:1;1947:230;;;;403:2:0;1947:230:111;;;;2129:9;1947:230;;;;2159:9;1947:230;;;1907:270;;2186:44;2206:11;2219:10;2186:19;:44::i;:::-;1680:557;;1647:590;2252:13;2246:20;;;;;;;;:::i;:::-;:25;2285:9;2280:216;2300:9;:16;2296:1;:20;2280:216;;;2391:1;2383:10;;2339:40;2366:9;2376:1;2366:12;;;;;;;;:::i;:::-;;;;;;;2339:26;:40::i;:::-;:54;2331:97;;;;-1:-1:-1;;;2331:97:111;;17362:2:113;2331:97:111;;;17344:21:113;17401:2;17381:18;;;17374:30;17440:32;17420:18;;;17413:60;17490:18;;2331:97:111;17160:354:113;2331:97:111;2436:53;2463:9;2473:1;2463:12;;;;;;;;:::i;:::-;;;;;;;2477:11;2436:26;:53::i;:::-;2318:3;;2280:216;;;;2506:9;2501:216;2521:9;:16;2517:1;:20;2501:216;;;2612:1;2604:10;;2560:40;2587:9;2597:1;2587:12;;;;;;;;:::i;2560:40::-;:54;2552:97;;;;-1:-1:-1;;;2552:97:111;;17362:2:113;2552:97:111;;;17344:21:113;17401:2;17381:18;;;17374:30;17440:32;17420:18;;;17413:60;17490:18;;2552:97:111;17160:354:113;2552:97:111;2657:53;2684:9;2694:1;2684:12;;;;;;;;:::i;2657:53::-;2539:3;;2501:216;;;;1499:1222;;1340:1381;;;;;:::o;8234:1753::-;8428:13;8443:8;8453:9;8490:35;8535:8;:6;:8::i;:::-;-1:-1:-1;;;;;8528:42:111;;8571:10;8528:54;;;;;;;;;;;;;4243:25:113;;4231:2;4216:18;;4097:177;8528:54:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8490:92;;8607:35;8652:8;:6;:8::i;:::-;-1:-1:-1;;;;;8645:42:111;;8688:10;8645:54;;;;;;;;;;;;;4243:25:113;;4231:2;4216:18;;4097:177;8645:54:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8607:92;;8729:25;8764:8;:6;:8::i;:::-;-1:-1:-1;;;;;8757:35:111;;8793:8;8757:45;;;;;;;;;;;;;4243:25:113;;4231:2;4216:18;;4097:177;8757:45:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;8757:45:111;;;;;;;;;;;;:::i;:::-;8729:73;;8834:1;8813:8;:18;;;:22;8809:1174;;;8872:34;;;;;;;;4243:25:113;;;8845:24:111;;8872:9;;:20;;4216:18:113;;8872:34:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;8872:34:111;;;;;;;;;;;;:::i;:::-;8845:61;;8929:157;8979:8;8988:1;8979:11;;;;;;;;:::i;:::-;;;;;;;8971:20;;9009:8;9018:1;9009:11;;;;;;;;:::i;:::-;;;;;;;9001:20;;9031:11;9052:8;9070;8929:32;:157::i;:::-;8915:171;;-1:-1:-1;8915:171:111;-1:-1:-1;9095:812:111;;;;487:7:0;9554:1:111;9523:11;:28;;;9497:8;:22;;;9490:61;;;;:::i;:::-;:65;:183;;9671:1;9490:183;;;9615:11;:28;;;9589:8;:22;;;9582:61;;;;:::i;:::-;9474:232;;;;:::i;:::-;9383:25;;531:7:0;;9383:29:111;;9411:1;;9383:29;:::i;:::-;9238:6;:16;;;9218:6;:16;;;9203:8;9212:1;9203:11;;;;;;;;:::i;:::-;;;;;;;9195:20;;:39;;;;:::i;:::-;:59;;:152;;9331:6;:16;;;9316:8;9325:1;9316:11;;;;;;;;:::i;:::-;;;;;;;9308:20;;:39;;;;:::i;:::-;9195:152;;;9273:6;:16;;;9195:152;9135:23;;:226;;;;:::i;:::-;:278;;;;:::i;:::-;9134:306;;;;:::i;:::-;9133:585;;;;:::i;:::-;9114:604;;9732:4;9728:105;;;9750:21;;;;;;;;;;;;;;;;;;:12;:21::i;:::-;9792:30;573:1:0;9792:6:111;:30;:::i;:::-;9783:39;;9728:105;9095:812;;;9857:21;;;;;;;;;;;;;;;;;;:12;:21::i;:::-;9897:1;9888:10;;9095:812;8837:1076;8809:1174;;;9936:1;9927:10;;9951:5;9945:11;;9971:5;9964:12;;8809:1174;8464:1523;;;8234:1753;;;;;;;;;:::o;4978:334::-;5070:19;5102:9;5097:211;5117:12;:19;5113:1;:23;5097:211;;;5170:8;:6;:8::i;:::-;-1:-1:-1;;;;;5163:36:111;;5200:12;5213:1;5200:15;;;;;;;;:::i;:::-;;;;;;;5163:53;;;;;;;;;;;;;4243:25:113;;4231:2;4216:18;;4097:177;5163:53:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;5152:64:111;:7;-1:-1:-1;;;;;5152:64:111;;5148:125;;5245:4;5228:21;;5259:5;;5148:125;5290:3;;;;:::i;:::-;;;;5097:211;;;;4978:334;;;;:::o;4331:643::-;4414:19;4441:40;4484:32;4504:11;4484:19;:32::i;:::-;4441:75;;4527:9;4522:196;4542:13;:23;;;:30;4538:1;:34;4522:196;;;4600:13;:23;;;4624:1;4600:26;;;;;;;;:::i;:::-;;;;;;;4588:8;:38;4584:99;;4655:4;4638:21;;4669:5;;4584:99;4700:3;;;;:::i;:::-;;;;4522:196;;;;4728:14;4723:247;;4757:9;4752:212;4772:13;:23;;;:30;4768:1;:34;4752:212;;;4832:13;:23;;;4856:1;4832:26;;;;;;;;:::i;:::-;;;;;;;4820:8;:38;4816:105;;4889:4;4872:21;;4905:5;;4816:105;4942:3;;;;:::i;:::-;;;;4752:212;;;;4435:539;4331:643;;;;:::o;1942:98:52:-;1981:7;2003:32;:30;:32::i;5316:1885:111:-;5487:43;5510:4;5517:12;:10;:12::i;:::-;5487:14;:43::i;:::-;5562:40;5605:32;5625:11;5605:19;:32::i;:::-;5562:75;;5649:9;5644:314;5664:7;:14;5660:1;:18;5644:314;;;5693:27;5723:7;5731:1;5723:10;;;;;;;;:::i;:::-;;;;;;;5693:40;;5742:209;5766:11;5787:13;:22;;;5819:13;:30;;;5859:13;:30;;;5899:13;:22;;;5931:12;5742:14;:209::i;:::-;-1:-1:-1;5680:3:111;;5644:314;;;-1:-1:-1;5964:25:111;;;:27;;;;;;:::i;:::-;;;-1:-1:-1;5997:27:111;;;6063:438;6083:13;:23;;;:30;6079:1;:34;6063:438;;;6128:12;6143:46;6162:13;:23;;;6186:1;6162:26;;;;;;;;:::i;:::-;;;;;;;6143:18;:46::i;:::-;6128:61;;6210:1;6201:5;:10;6197:298;;6223:21;;;;:::i;:::-;;;;6264:13;:27;;;6258:34;;;;;;;;:::i;:::-;:39;;6296:1;6258:39;6254:233;;6322:8;:6;:8::i;:::-;-1:-1:-1;;;;;6315:39:111;;6355:13;:23;;;6379:1;6355:26;;;;;;;;:::i;:::-;;;;;;;6315:67;;;;;;;;;;;;;4243:25:113;;4231:2;4216:18;;4097:177;6315:67:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6311:166;;;6398:66;6425:13;:23;;;6449:1;6425:26;;;;;;;;:::i;:::-;;;;;;;6461:1;6453:10;;6398:26;:66::i;:::-;-1:-1:-1;6115:3:111;;6063:438;;;;6511:9;6506:272;6526:13;:23;;;:30;6522:1;:34;6506:272;;;6571:12;6586:46;6605:13;:23;;;6629:1;6605:26;;;;;;;;:::i;6586:46::-;6571:61;;6653:1;6644:5;:10;6640:132;;6666:21;;;;:::i;:::-;;;;6697:66;6724:13;:23;;;6748:1;6724:26;;;;;;;;:::i;6697:66::-;-1:-1:-1;6558:3:111;;6506:272;;;;6817:13;:23;;;:30;6794:19;:53;:116;;;;6880:13;:23;;;:30;6857:19;:53;6794:116;:177;;;;6949:13;:22;;;6920:13;:25;;;:51;6794:177;6783:414;;;7079:12;7059:17;;;:32;7099:47;7119:11;7059:13;7099:19;:47::i;:::-;7154:36;7164:11;7177:12;7154:9;:36::i;:::-;;;;6783:414;5414:1787;;;5316:1885;;;:::o;2992:383:52:-;3278:34;3282:14;3278:34;3265:48;3259:4;3255:59;;3325:45;;-1:-1:-1;3360:10:52;3325:45;2992:383;:::o;19860:418:80:-;19917:33;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19917:33:80;19987:16;;;20001:1;19987:16;;;;;;;;;19958:26;;19987:16;;;;;;;;;;;-1:-1:-1;19987:16:80;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:80:o;7205:225:111:-;7289:136;7349:11;7362:21;7396:11;7409:7;7385:32;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;7385:32:111;;;;;;;;;;7314:105;;;;;;;:::i;:::-;;;;-1:-1:-1;;7314:105:111;;;;;;;;;;;;;;;;;;;;7289:17;:136::i;:::-;;7205:225;;:::o;4891:393:91:-;4998:16;;;5012:1;4998:16;;;;;;;;;4943:8;;;;;;4998:16;;;;;;;;;;;-1:-1:-1;4998:16:91;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:80:-;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:80;;22726:16;;;;;;;;;;;;-1:-1:-1;22726:16:80;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;2732:297:86:-;2858:16;;;2872:1;2858:16;;;;;;;;;2802:19;;;;2858:16;;;;;;;;;;;;-1:-1:-1;2858:16:86;2829:45;;2895:13;2880:9;2890:1;2880:12;;;;;;;;:::i;:::-;;;;;;;;;;:28;2915:13;2931:64;1144:66;2968:9;2915:13;1273:66;2931:26;:64::i;3417:271::-;3529:16;;;3543:1;3529:16;;;;;;;;;3500:26;;3529:16;;;;;;;;;;;-1:-1:-1;3529:16:86;3500:45;;3566:13;3551:9;3561:1;3551:12;;;;;;;;:::i;:::-;;;;;;:28;;;;;3586:97;1144:66;1128:83;;3623:9;3634:1;3655:11;3637:31;;;;;;24559:19:113;;24603:2;24594:12;;24430:182;3637:31:86;;;;-1:-1:-1;;3637:31:86;;;;;;;;;1273:66;3586:26;:97::i;10152:726:111:-;10391:16;;;442:7:0;10520:17:111;10533:4;10520:10;:17;:::i;:::-;10449:67;10458:8;:24;;;10484:11;:31;;;10449:8;:67::i;:::-;:89;;;;:::i;:::-;10448:117;;;;:::i;:::-;10426:139;;10661:20;487:7:0;10708:8:111;:24;;;10700:4;10686:11;:18;;;;:::i;:::-;10685:47;;;;:::i;:::-;10684:68;;;;:::i;:::-;10661:91;;10786:12;10772:11;:26;10758:40;;10808:11;10804:70;;;10866:1;10836:26;10850:12;10836:11;:26;:::i;:::-;:31;;10829:38;;10804:70;10420:458;;10152:726;;;;;;;;:::o;6598:121:73:-;6653:59;6708:2;6669:42;;;;;;;;:::i;:::-;;;;-1:-1:-1;;6669:42:73;;;;;;;;;;;;;;;;;;;;6653:15;:59::i;:::-;6598:121;:::o;4048:97:52:-;4089:7;4111:29;:27;:29::i;2631:154:112:-;2707:75;2738:35;2757:15;2738:18;:35::i;:::-;2775:6;2707:30;:75::i;:::-;2631:154;;:::o;7434:796:111:-;7643:29;7675:21;7687:8;7675:11;:21::i;:::-;7755;;7643:53;;-1:-1:-1;7749:28:111;;;;;;;;:::i;:::-;:33;;7781:1;7749:33;7745:481;;7792:38;7844:10;:22;;;7833:57;;;;;;;;;;;;:::i;:::-;7792:98;;7899:13;7914:8;7924:9;7937:133;7971:11;7992:10;8012;8032:8;8050:12;7937:24;:133::i;:::-;7898:172;;-1:-1:-1;7898:172:111;-1:-1:-1;7898:172:111;-1:-1:-1;8078:16:111;8137:32;531:7:0;7898:172:111;8137:32;:::i;:::-;8097:30;8116:10;8097:18;:30::i;:::-;:73;;;;:::i;:::-;8078:92;;8178:41;8197:10;8209:9;8178:18;:41::i;:::-;7784:442;;;;;7745:481;7614:616;7434:796;;;;;;:::o;9492:299:95:-;9608:16;;;9622:1;9608:16;;;;;;;;;9555;;;;9608;;;;;;;;;;;;-1:-1:-1;9608:16:95;9579:45;;9645:8;9630:9;9640:1;9630:12;;;;;;;;:::i;:::-;;;;;;;;;;:23;9660:13;9676:64;1310:66;9713:9;9724:1;1439:66;9676:26;:64::i;10928:1899:111:-;11020:24;11046;11072:18;11098:40;11141:32;11161:11;11141:19;:32::i;:::-;11098:75;;11222:32;11260:23;11289:20;11315:26;;:::i;:::-;11352:9;11347:244;11367:13;:23;;;:30;11363:1;:34;11347:244;;;11424:37;11434:13;:23;;;11458:1;11434:26;;;;;;;;:::i;:::-;;;;;;;11424:9;:37::i;:::-;11412:49;;11497:9;:15;;;11469:43;;;;;:::i;:::-;;;11546:1;11524:9;:19;;;:23;11520:65;;;11559:17;;;;:::i;:::-;;;;11520:65;11399:3;;11347:244;;;;11778:16;11800:15;11826:9;11821:362;11841:13;:23;;;:30;11837:1;:34;11821:362;;;11898:37;11908:13;:23;;;11932:1;11908:26;;;;;;;;:::i;11898:37::-;11886:49;;11977:1;11947:9;:19;;;:32;11943:234;;12002:20;;;;11991:31;;;;:::i;:::-;;;12044:48;12062:9;:15;;;12079:12;12044:17;:48::i;:::-;12032:60;;;;:::i;:::-;;;12102:66;12129:13;:23;;;12153:1;12129:26;;;;;;;;:::i;12102:66::-;11873:3;;11821:362;;;;12418:9;12413:410;12433:13;:23;;;:30;12429:1;:34;12413:410;;;12493:13;:23;;;12517:1;12493:26;;;;;;;;:::i;:::-;;;;;;;12478:41;;12539:23;12549:12;12539:9;:23::i;:::-;12527:35;-1:-1:-1;12594:25:111;12604:15;12594:7;:25;:::i;:::-;12570:9;:20;;:49;;;;;;;:::i;:::-;;;-1:-1:-1;12634:8:111;:6;:8::i;:::-;-1:-1:-1;;;;;12627:29:111;;12657:12;12672:26;12683:15;12672:8;:26;:::i;:::-;12627:73;;;;;;;;;;;;;26308:25:113;;;;26349:18;;;26342:34;26281:18;;12627:73:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12708:34;12718:12;12732:9;12708;:34::i;:::-;12750:66;12777:13;:23;;;12801:1;12777:26;;;;;;;;:::i;12750:66::-;12465:3;;12413:410;;;;11092:1735;;;;;;;10928:1899;;;;;:::o;15347:431:25:-;15477:12;15491:14;15507:12;15527:21;15551:17;:15;:17::i;:::-;15527:41;-1:-1:-1;15603:4:25;-1:-1:-1;;;;;15578:30:25;;;15574:200;;15625:51;15645:7;15654:8;15664:11;15625:19;:51::i;:::-;15618:58;;;;;;;;;15574:200;15704:63;;;;;-1:-1:-1;;;;;15704:31:25;;;;;:63;;15736:7;;15745:8;;15755:11;;15704:63;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;15704:63:25;;;;;;;;;;;;:::i;15347:431::-;;;;;;;;:::o;25028:389:80:-;25168:33;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25168:33:80;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:80:o;3318:662:40:-;3373:23;3516:19;;3570:39;3592:16;3599:8;3592:16;:::i;:::-;3570:21;:39::i;:::-;3515:94;;;;3690:8;3703:1;3672:32;;;3668:97;;3713:52;;;;;3757:7;;;;3713:52;;;28667:98:113;28640:18;;3713:52:40;28523:248:113;3668:97:40;1759:4:2;1744:28;;1738:35;;1847:9;1836:21;1903:20;;1961:43;;3883:92:40;3900:8;3936;3883:4;:92::i;7036:160:91:-;2756:4:2;2742:27;;2736:34;2742:27;;;2736:34;7131:8:91;;;;6793:33;;;;;6839;7166:25;7157:34;;;;-1:-1:-1;7036:160:91;-1:-1:-1;;;;7036:160:91:o;26096:263:80:-;26261:12;26305:13;26320:5;26327:3;26332:11;26345:8;26288:66;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;26281:73;;26096:263;;;;;;;:::o;26550:354::-;26664:30;26825:68;26848:9;:16;26867:2;26848:21;26871:9;:16;26890:2;26871:21;2776:23:3;2761:39;;;975:16;2694:39;;;2662:5;;;2675:59;2742;2518:351;;;;;27069:216:80;27171:12;27215:31;27235:9;27215:18;:31::i;:::-;27248;27268:9;27248:18;:31::i;:::-;27198:82;;;;;;;;;:::i;:::-;;;;;;;;;;;;;27191:89;;27069:216;;;;:::o;6458:480:25:-;6645:21;6669:17;:15;:17::i;:::-;6645:41;-1:-1:-1;6721:4:25;-1:-1:-1;;;;;6696:30:25;;;6692:242;;6736:79;6756:7;6765:8;6775:10;6787:14;6803:11;6736:19;:79::i;:::-;6692:242;;;6836:91;;;;;-1:-1:-1;;;;;6836:31:25;;;;;:91;;6868:7;;6877:8;;6887:10;;6899:14;;6915:11;;6836:91;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6639:299;6458:480;;;;;:::o;17775:457::-;17932:7;17947:21;17971:17;:15;:17::i;:::-;17947:41;-1:-1:-1;18023:4:25;-1:-1:-1;;;;;17998:30:25;;;17994:234;;18045:68;18070:7;18079:8;18089:10;18101:11;18045:24;:68::i;:::-;18038:75;;;;;17994:234;18141:80;;;;;-1:-1:-1;;;;;18141:36:25;;;;;:80;;18178:7;;18187:8;;18197:10;;18209:11;;18141:80;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;10761:455::-;10933:21;10957:17;:15;:17::i;:::-;10933:41;-1:-1:-1;11009:4:25;-1:-1:-1;;;;;10984:30:25;;;10980:232;;11024:74;11049:7;11058:8;11068:10;11080:4;11086:11;11024:24;:74::i;10980:232::-;11119:86;;;;;-1:-1:-1;;;;;11119:36:25;;;;;:86;;11156:7;;11165:8;;11175:10;;11187:4;;11193:11;;11119:86;;;:::i;1035:205:110:-;1094:12;1128:1;1122:2;:7;1118:116;;1152:16;1165:2;1152;:16;:::i;:::-;1145:23;;;;1118:116;1219:3;1220:2;1219:3;:::i;:::-;1206:17;;:2;:17;:::i;868:133:73:-;939:55;986:7;965:19;939:55::i;1836:227:25:-;1066:42;1925:22;1886:7;;-1:-1:-1;;;;;1925:22:25;;1953:106;;2001:10;1994:17;;;1836:227;:::o;1953:106::-;2039:13;1836:227;-1:-1:-1;1836:227:25:o;3430:314:66:-;3538:16;;;3552:1;3538:16;;;;;;;;;3482:19;;;;3538:16;;;;;;;;;;;;-1:-1:-1;3538:16:66;3509:45;;3599:6;-1:-1:-1;;;;;3583:24:66;3575:33;;3560:9;3570:1;3560:12;;;;;;;;:::i;:::-;;;;;;;;;;:48;3615:13;3631:64;1169:66;3668:9;3615:13;1298:66;3631:26;:64::i;1698:281:39:-;1860:29;1870:10;1882:6;1860:9;:29::i;:::-;1855:120;;1938:21;:10;:19;:21::i;:::-;1961:6;1906:62;;;;;;;;;;;;:::i;9017:404:76:-;-1:-1:-1;;;;;;;;;;;;;;;;;9133:16:76;;;9147:1;9133:16;;;;;;;;;9104:26;;9133:16;;;;;;;;;;;-1:-1:-1;9133:16:76;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;10177:254:95:-;10279:16;;;10293:1;10279:16;;;;;;;;;10250:26;;10279:16;;;;;;;;;;;-1:-1:-1;10279:16:95;10250:45;;10316:8;10301:9;10311:1;10301:12;;;;;;;;:::i;:::-;;;;;;:23;;;;;10331:95;1310:66;1294:83;;10368:9;10379:1;10400:9;10382:29;;;;;;24559:19:113;;24603:2;24594:12;;24430:182;10382:29:95;;;;-1:-1:-1;;10382:29:95;;;;;;;;;1439:66;10331:26;:95::i;13270:402::-;13324:23;;:::i;:::-;13384:16;;;13398:1;13384:16;;;;;;;;;13355:26;;13384:16;;;;;;;;;;;-1:-1:-1;13384:16:95;13355:45;;13421:8;13406:9;13416:1;13406:12;;;;;;;;:::i;:::-;;;;;;;;;;:23;13437:24;;;13524:80;1310:66;13569:9;1439:66;13524:21;:80::i;:::-;13436:168;;;;;;13617:50;13624:11;13637:15;13654:12;13617:6;:50::i;15666:552::-;15737:24;15764:207;15784:6;:15;;;15807:6;:14;;;15829:6;:12;;;15849:6;:19;;;15876:6;:20;;;15904:6;:16;;;15928:6;:17;;;15953:6;:12;;;15764;:207::i;:::-;16075:16;;;16089:1;16075:16;;;;;;;;;15737:234;;-1:-1:-1;15978:30:95;;16014:25;;15978:30;;16075:16;;;;;;;;;;;;-1:-1:-1;16075:16:95;16046:45;;16112:8;16097:9;16107:1;16097:12;;;;;;;;:::i;:::-;;;;;;;;;;:23;16127:86;1310:66;16159:9;16170:11;16183:15;16200:12;16127:21;:86::i;32759:1315:24:-;32889:23;32914:29;32945:24;33011:20;33034:30;:11;:28;:30::i;:::-;33011:53;;33125:65;33158:7;33167:8;33177:12;33125:32;:65::i;:::-;33112:78;;33254:24;33281:30;:11;:28;:30::i;:::-;33254:57;-1:-1:-1;33321:20:24;;33317:753;;33414:66;33462:7;33471:8;33414:47;:66::i;:::-;33397:83;-1:-1:-1;6445:61:3;;;33532:33:24;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;33532:33:24;-1:-1:-1;33518:47:24;-1:-1:-1;894:4:19;884:15;;33573:21:24;33637:427;33655:16;33651:1;:20;;;33637:427;;;33688:27;33718:63;33760:7;33769:8;33779:1;33718:41;:63::i;:::-;33688:93;-1:-1:-1;33791:14:24;33808:25;:14;33831:1;7070:16:3;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;33808:25:24;33791:42;;33843:110;33874:19;33903:1;33914:6;33937:13;33843:12;:110::i;:::-;34032:23;34049:6;34032:23;;:::i;:::-;;;33678:386;;33673:3;;;;;:::i;:::-;;;;33637:427;;;;33343:727;33317:753;32971:1103;;32759:1315;;;;;;;:::o;23661:475:80:-;23746:27;23775:13;23790:11;23803:19;23824:16;23886:25;23902:5;23909:1;2742:27:2;2756:4;2742:27;2736:34;;2612:168;23886:25:80;23880:32;;23866:47;;;;;;;;:::i;:::-;2742:27:2;;;2736:34;2742:27;;;2736:34;2742:27;;;2736:34;2742:27;;;;2736:34;23850:63:80;;2736:34:2;;;;-1:-1:-1;2736:34:2;-1:-1:-1;2736:34:2;;-1:-1:-1;23661:475:80;-1:-1:-1;;23661:475:80:o;24239:522::-;24349:26;;24411:14;975:16:3;7017:70;;;6995:94;;24525:63:80;:41;24546:5;24411:14;6995:94:3;24525:20:80;:41::i;:::-;:61;:63::i;:::-;24512:77;-1:-1:-1;24605:4:80;-1:-1:-1;24605:4:80;6995:94:3;7059:27;7017:70;;;6995:94;24633:34:80;24692:63;:41;24713:5;24720:6;24633:34;24692:20;:41::i;:63::-;24679:77;;24405:356;;24239:522;;;;;:::o;5805:471:62:-;5966:16;;;5980:1;5966:16;;;;;;;;;5879:19;;;;;;5966:16;;;;;;;;;;;-1:-1:-1;5966:16:62;5937:45;;6011:21;6003:30;;;5988:9;5998:1;5988:12;;;;;;;;:::i;:::-;;;;;;;;;;:45;6041:24;;;6128:80;1174:66;6173:9;1303:66;6128:21;:80::i;:::-;6040:168;;;;;;6221:50;6228:11;6241:15;6258:12;6221:6;:50::i;2109:683:40:-;2185:23;2216:20;2239:32;:30;:32::i;:::-;2216:55;-1:-1:-1;;;;;;2350:29:40;;2358:4;2350:29;2346:322;;2389:12;2433:153;2467:36;:34;:36::i;:::-;2520:1;2541:8;2569;2433:15;:153::i;:::-;2409:177;-1:-1:-1;2409:177:40;-1:-1:-1;2409:177:40;2595:41;;2609:27;2625:10;2609:15;:27::i;:::-;2644:17;;;;2346:322;2736:51;;;;;-1:-1:-1;;;;;2736:31:40;;;;;:51;;2768:8;;2778;;2736:51;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;2736:51:40;;;;;;;;;;;;:::i;44950:222:36:-;45014:12;45104:6;45128:39;45104:6;45161:2;45165:1;45128:17;:39::i;12066:286:24:-;12253:94;12263:7;12272:8;12282:10;12294:14;12310:11;12323:23;12338:7;12323:14;:23::i;:::-;12253:9;:94::i;:::-;12066:286;;;;;:::o;36171:541::-;36328:7;36465:242;36509:59;36550:7;36559:8;36509:40;:59::i;:::-;36586:31;;;;4323:19:4;:27;579:1:31;4322:44:4;4288:79;;;4275:93;36635:63:24;36674:11;36687:10;36635:38;:63::i;:::-;36465:17;:242::i;:::-;36452:255;36171:541;-1:-1:-1;;;;;36171:541:24:o;23107:355::-;23279:178;23313:7;23338:8;23368:63;23407:11;23420:10;23368:38;:63::i;:::-;23446:4;23279:16;:178::i;1007:380:73:-;1105:14;;591:42;1278:2;1265:16;;1081:21;;1105:14;1265:16;591:42;1314:5;1303:68;1294:77;;1231:150;;1007:380;:::o;1109:325:39:-;1190:4;1332:55;696:18:72;578:36:53;2955:46;;2954:74;1380:6:39;1332:18;:55::i;:::-;:97;;;;1391:38;1410:10;1422:6;1391:18;:38::i;3486:592:53:-;3550:13;3620:10;451:5:20;2637:44:53;;;3571:19;3718;3620:10;3718:7;:19::i;:::-;3695:42;-1:-1:-1;3800:12:53;3839:35;;;;:102;;3888:53;;;;:34;:53::i;:::-;3839:102;;;;;;;;;;;;;;;;;;;;;3968:25;;;;:87;;4007:48;4042:12;4007:34;:48::i;:::-;3968:87;;;;;;;;;;;;;;;;;;;;;3772:293;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;3743:330;;;;;3486:592;;;:::o;12940:299:76:-;-1:-1:-1;;;;;;;;;;;;;;;;;13135:25:76;13148:11;13135:12;:25::i;:::-;13114:6;;13113:47;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;13190:44:76;13204:15;13221:12;13190:13;:44::i;:::-;13168:18;;;13167:67;13168:6;12940:299;-1:-1:-1;;;12940:299:76:o;17879:370:95:-;17990:23;;:::i;:::-;18219:25;18232:11;18219:12;:25::i;:::-;18198:12;;;18021:223;;;18173:17;;;18021:223;;;18149:16;;;18021:223;;;18121:20;;;18021:223;;;18094:19;;;18021:223;;;18029:6;18052:14;;;18074:12;;;18021:223;;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;18021:223:95;;;;-1:-1:-1;17879:370:95;;;-1:-1:-1;;;;;17879:370:95:o;18916:362::-;19145:12;19189:8;19199:7;19208:5;19215:12;19229:13;19244:9;19255:10;19267:5;19172:101;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;19165:108;;18916:362;;;;;;;;;;:::o;4598:171:4:-;4672:7;579:1:31;1354:13;1366:1;376:2;1354:13;:::i;:::-;1353:30;;;;:::i;:::-;4694:70:4;;;;;4598:171;-1:-1:-1;4598:171:4:o;48823:360:24:-;48949:12;48973:6;48983:1;48973:11;48969:26;;-1:-1:-1;48986:9:24;;;;;;;;;-1:-1:-1;48986:9:24;;;;48969:26;49036:16;49055:41;49078:7;49087:8;49055:22;:41::i;:::-;49036:60;;49109:69;49140:8;49158:1;49169:6;49109:12;:69::i;5377:173:4:-;5451:7;579:1:31;1704;;1684:13;1696:1;376:2;1684:13;:::i;:::-;:17;;;;:::i;:::-;:21;;;;:::i;:::-;1683:38;;;;:::i;:::-;5487:11:4;5466:79;5479:65;;5466:79;;5377:173;-1:-1:-1;;5377:173:4:o;53939:303:24:-;54060:14;54154:82;54185:48;54215:7;54224:8;54185:29;:48::i;:::-;4711:21:23;;4605:137;52742:274:24;52886:7;52991;53000:8;52974:35;;;;;;;;;:::i;:::-;;;;;;;;;;;;;52964:46;;;;;;52943:17;52936:25;;52916:45;;;42433:34;52916:45;:94;52908:103;;52901:110;;52742:274;;;;;:::o;6076:2380:23:-;6193:10;;6189:1542;;6346:2;6336:6;:12;6332:122;;6409:2;6400:6;:11;6382:29;;;;6433:2;6423:12;;;;;;:::i;:::-;;;;6332:122;6544:10;;6540:1185;;6752:2;:11;;;6626:21;6810:22;;;6806:135;;;-1:-1:-1;;;579:1:31;804:25:32;;782:48;6806:135:23;;;-1:-1:-1;;;579:1:31;804:25:32;;782:48;6806:135:23;7135:14;7129:21;7114:12;7106:6;7102:25;7098:53;7375:4;7359:13;7353:20;7349:31;7285:4;7281:9;7269:10;7265:26;7210:184;7183:13;7163:243;;7465:13;7455:6;:23;7451:36;;7480:7;;;;7451:36;-1:-1:-1;7628:1:23;7610:19;;;;;7683:23;;;;;7641:30;6540:1185;7760:253;7777:2;7767:6;:12;7760:253;;7871:21;;7849:44;;7946:1;7928:19;;;;-1:-1:-1;;7986:12:23;;;;7974:2;7957:19;7760:253;;;8081:10;;8077:375;;8101:12;-1:-1:-1;;579:1:31;804:25:32;;782:48;8389:20:23;;8299:21;;8322:9;;8295:37;8385:31;;8244:184;8201:237;;-1:-1:-1;6076:2380:23;;;;:::o;2003:574:22:-;2094:5;2189:3;2181:5;:11;:32;;;;2202:4;:11;2196:3;:17;2181:32;2177:93;;;2253:4;2259:5;2266:3;2222:48;;;;;;;;;;;;;:::i;2177:93::-;2336:4;2326:15;;2383:16;2394:5;2326:15;2383:16;:::i;:::-;;-1:-1:-1;2405:12:22;2420:11;2426:5;2420:3;:11;:::i;:::-;692:17;2555:15;2547:3;2536:14;;;;2535:36;;;;;;-1:-1:-1;;;;;2003:574:22:o;45284:220:35:-;45350:24;45382:30;45415:32;45433:6;45441:2;45445:1;45415:17;:32::i;8363:236:62:-;8474:19;8495:29;8569:25;8582:11;8569:12;:25::i;1761:1386:51:-;1888:12;1902:17;1956:21;1979:17;2000:22;2013:8;2000:12;:22::i;:::-;1955:67;;-1:-1:-1;1955:67:51;-1:-1:-1;;;;;;2067:27:51;;2063:106;;2139:8;2149:19;:8;:17;:19::i;:::-;2103:66;;;;;;;;;;;;:::i;2063:106::-;2275:12;2270:64;;2289:45;2317:8;2327:6;2289:27;:45::i;:::-;2413:9;;2409:197;;578:36:53;2955:46;;696:18:72;2954:74:53;2432:22:51;2515:26;2954:74:53;2515:13:51;:26::i;:::-;2490:51;-1:-1:-1;2549:50:51;2563:11;2576:22;2593:5;2490:51;2576:22;:::i;:::-;2549:13;:50::i;:::-;2424:182;;2409:197;2708:14;2681:23;:8;451:5:20;2637:44:53;;2539:148;2681:23:51;:41;;;:461;;2982:160;3043:6;3069:5;3092:13;3125:8;2982:39;:160::i;:::-;2681:461;;;2805:168;2874:6;2900:5;2923:13;2956:8;2805:47;:168::i;:::-;2663:479;;;;-1:-1:-1;1761:1386:51;-1:-1:-1;;;;;;;1761:1386:51:o;348:217:70:-;551:6;545:13;538:4;530:6;526:17;519:40;830:1343:37;1002:12;;955:17;;980:19;1043:26;1058:11;1002:12;1043:26;:::i;:::-;1020:49;;1441:4;1435:11;;-1:-1:-1;1484:4:37;1474:15;;-1:-1:-1;;1358:16:37;1531:32;;;1358:16;1354:32;1503:4;1496:69;1607:12;1601:4;1594:26;1651:1;1721:4;1714:5;1710:16;1628:535;1741:11;1738:1;1735:18;1628:535;;;2134:19;;2113:41;;2091:64;;2007:31;;;;1828:1;1821:9;;;;;1920:4;1902:23;1628:535;;;1632:102;;;1222:947;;830:1343;;;;;:::o;4015:652:24:-;4082:11;4318:64;;;4314:111;;-1:-1:-1;1342:66:30;;4015:652:24;-1:-1:-1;4015:652:24:o;4314:111::-;4469:185;4515:85;1213:66:30;4591:7:24;4515:40;:85::i;:::-;4620:2;4642:1;4469:17;:185::i;13212:3165::-;13507:23;13486:7;:44;;;13482:211;;13613:7;13584:88;13622:8;13632:10;13644:14;13660:11;13584:88;;;;;;;;;:::i;:::-;;;;;;;;13680:7;;13482:211;13831:22;13856:24;13872:7;13856:15;:24::i;:::-;13831:49;;13891:9;13886:340;13906:5;:12;13902:1;:16;13886:340;;;13933:9;13955:5;13961:1;13955:8;;;;;;;;:::i;:::-;;;;;;;13933:31;;13976:33;409:6:33;13976:4:24;:14;;;;;:33;;;;:::i;:::-;13972:248;;;14021:190;;;;;3536:35:5;;;;;14021:47:24;;:190;;14080:7;;14099:8;;14119:10;;14141:14;;14167:11;;14190;;14021:190;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13972:248;-1:-1:-1;13920:3:24;;13886:340;;;;14303:7;14274:88;14312:8;14322:10;14334:14;14350:11;14274:88;;;;;;;;;:::i;:::-;;;;;;;;14426:26;14455:59;14496:7;14505:8;14455:40;:59::i;:::-;14426:88;-1:-1:-1;14520:21:24;894:4:19;884:15;;14520:54:24;;14580:149;14618:18;14652:1;14669:10;:17;14709:13;14580;:149::i;:::-;14829:1;14796:30;:11;:28;:30::i;:::-;:34;14792:1174;;;14915:33;14951:66;14999:7;15008:8;14951:47;:66::i;:::-;695:28:23;;;14915:102:24;-1:-1:-1;894:4:19;884:15;;15191:47:24;;15347:27;15382:25;15420:7;15415:545;15433:30;:11;:28;:30::i;:::-;15429:1;:34;;;15415:545;;;15499:63;15541:7;15550:8;15560:1;15499:41;:63::i;:::-;15477:85;-1:-1:-1;15592:25:24;:14;15615:1;7070:16:3;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;15592:25:24;15572:45;;15627:170;15669:19;15708:1;15729:17;15773:13;15627;:170::i;:::-;15807:34;15824:17;15807:34;;:::i;:::-;;-1:-1:-1;15938:3:24;;15415:545;;;;14832:1134;;;14792:1174;16040:9;16035:338;16055:5;:12;16051:1;:16;16035:338;;;16082:9;16104:5;16110:1;16104:8;;;;;;;;:::i;:::-;;;;;;;16082:31;;16125:32;503:6:33;16125:4:24;:14;;;;;:32;;;;:::i;:::-;16121:246;;;16169:189;;;;;3536:35:5;;;;;16169:46:24;;:189;;16227:7;;16246:8;;16266:10;;16288:14;;16314:11;;16337;;16169:189;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16121:246;-1:-1:-1;16069:3:24;;16035:338;;50806:191;50908:7;50972;50981:8;50955:35;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;50955:35:24;;;;;;;;;50945:46;;50955:35;50945:46;;;;42361:22;50938:53;;50806:191;-1:-1:-1;;;50806:191:24:o;51823:242::-;51919:7;;;51958:84;51978:10;51974:14;;:1;:14;51958:84;;;52003:32;4275:93:4;4323:19;:27;;;579:1:31;4322:44:4;4288:79;;;4275:93;52003:32:24;;:::i;:::-;;-1:-1:-1;51990:3:24;;51958:84;;;-1:-1:-1;52054:6:24;51823:242;-1:-1:-1;;;51823:242:24:o;8945:812:23:-;9043:14;9079:2;9069:6;:12;9065:112;;9138:2;9129:6;:11;9111:29;;;;9160:2;9150:12;;;;;;:::i;:::-;;;;9065:112;-1:-1:-1;9368:21:23;;9353:12;9341:25;;9337:53;9516:2;:11;;;9598:22;;;9594:159;;;9734:1;9718:14;9714:22;9708:29;9693:12;9678:13;9674:32;9670:68;9662:6;9659:80;9649:90;;9059:698;8945:812;;;;;:::o;17013:1682:24:-;17213:23;17192:7;:44;;;17188:235;;17346:7;17299:103;17365:8;17382:5;17395:4;17299:103;;;;;;;;:::i;:::-;;;;;;;;17410:7;;17188:235;17429:16;17448:59;17489:7;17498:8;17448:40;:59::i;:::-;17429:78;;17653:22;17678:24;17694:7;17678:15;:24::i;:::-;17653:49;;17713:9;17708:328;17728:5;:12;17724:1;:16;17708:328;;;17755:9;17777:5;17783:1;17777:8;;;;;;;;:::i;:::-;;;;;;;17755:31;;17798:41;614:6:33;17798:4:24;:14;;;;;:41;;;;:::i;:::-;17794:236;;;17851:170;;;;;3536:35:5;;;;;17851:54:24;;:170;;17927:7;;17956:8;;17983:5;;18006:4;;17851:170;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17794:236;-1:-1:-1;17742:3:24;;17708:328;;;;18140:7;18093:103;18159:8;18176:5;18189:4;18093:103;;;;;;;;:::i;:::-;;;;;;;;18246:70;18278:8;18296:5;18246:70;;18309:4;18246:13;:70::i;:::-;18370:9;18365:326;18385:5;:12;18381:1;:16;18365:326;;;18412:9;18434:5;18440:1;18434:8;;;;;;;;:::i;:::-;;;;;;;18412:31;;18455:40;723:6:33;18455:4:24;:14;;;;;:40;;;;:::i;:::-;18451:234;;;18507:169;;;;;3536:35:5;;;;;18507:53:24;;:169;;18582:7;;18611:8;;18638:5;;18661:4;;18507:169;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18451:234;-1:-1:-1;18399:3:24;;18365:326;;3586:379:64;3709:16;;;3723:1;3709:16;;;;;;;;3661:11;;;;3709:16;3723:1;3709:16;;;;;;;;;;-1:-1:-1;3709:16:64;3680:45;;3764:10;3731:9;3741:1;3731:12;;;;;;;;:::i;:::-;;;;;;:44;;;;;3820:6;-1:-1:-1;;;;;3804:24:64;3796:33;;3781:9;3791:1;3781:12;;;;;;;;:::i;:::-;;;;;;;;;;:48;3836:13;3852:64;1169:66;3889:9;3836:13;1298:66;3852:26;:64::i;:::-;3836:80;;3930:29;3951:5;3938:20;;1650:10:20;1541:126;3165:160:53;3228:7;3292:26;438:6;451:5:20;3292:26:53;:::i;:::-;3258:61;;;;;3165:160;-1:-1:-1;3165:160:53:o;1862:325::-;1932:13;1953:14;1973:83;1989:2;1980:6;:11;1973:83;;;2007:37;;;3261:1:2;3257:13;;3253:24;2007:42:53;;2003:53;2051:5;2003:53;1993:8;;1973:83;;;2092:30;;;39767:66:113;39755:79;;2092:30:53;;;39743:92:113;2092:30:53;;39851:12:113;;;;2092:30:53;;;875:21:2;;;2092:30:53;2142:39;760:164:2;12092:156:76;2756:4:2;2742:27;;2736:34;12157:21:76;;12210:32;;12199:44;;;;;;;;:::i;12351:322::-;12461:24;12493:14;975:16:3;7017:70;;;6995:94;;12615:51:76;:41;12636:5;12493:14;6995:94:3;12615:20:76;:41::i;:::-;:49;:51::i;16961:760:95:-;17053:16;17077:15;17100:13;17121:20;17149:21;17178:16;17202:18;17228:13;17276:26;17293:5;17300:1;2742:27:2;2756:4;2742:27;2736:34;;2612:168;17276:26:95;2742:27:2;;;2736:34;2742:27;;;2736:34;17268:35:95;;-1:-1:-1;2736:34:2;-1:-1:-1;17382:33:95;;17374:42;;;;;;;;:::i;:::-;2742:27:2;;;2736:34;2742:27;;;2736:34;2742:27;;;2736:34;2742:27;;;2736:34;2742:27;;;;2736:34;16961:760:95;;;;17366:50;;2736:34:2;;;;-1:-1:-1;2736:34:2;-1:-1:-1;2736:34:2;;-1:-1:-1;2736:34:2;-1:-1:-1;16961:760:95;-1:-1:-1;;16961:760:95:o;5042:669:23:-;5458:4;5452:11;5499:4;5487:17;;-1:-1:-1;;1358:16:37;5546:26:23;;;1358:16:37;1354:32;5518:4:23;5511:63;5618:6;5610;5603:22;5636:51;5641:14;5657:6;5665;5673:13;5636:4;:51::i;53371:230:24:-;53492:7;53576;53585:8;53559:35;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;53559:35:24;;;;;;;;;53549:46;;53559:35;53549:46;;;;42524:40;53522:73;;53371:230;-1:-1:-1;;;53371:230:24:o;2681:1129:37:-;2801:22;2831:21;2855;:11;2997:3:22;2975:25;;2901:104;2855:21:37;2831:45;-1:-1:-1;692:17:22;3238:38;;2882:20:37;3044:11;3238:38:22;3044:11:37;3029:26;;;;:::i;:::-;;3015:40;;3164:4;3158:11;3149:20;;3207:4;3200:5;3196:16;3267:4;3254:11;3250:22;3236:12;3232:41;3226:4;3219:55;3317:11;3310:5;3303:26;3360:1;3337:463;3376:11;3373:1;3370:18;3337:463;;;3770:20;;3749:42;;3728:64;;3642:31;;;;3555:4;3537:23;;;;3463:1;3456:9;3337:463;;7963:242:62;2756:4:2;2742:27;;2736:34;2742:27;;;2736:34;8028:19:62;;8173:26;8147:53;;7963:242;;;:::o;5928:433:67:-;6056:16;;;6070:1;6056:16;;;;;;;;;5986:14;;;;;;6056:16;;;;;;;;;;;-1:-1:-1;6056:16:67;6027:45;;6111:8;6078:9;6088:1;6078:12;;;;;;;;:::i;:::-;;;;;;;;;;:42;6128:24;;;6215:78;1155:66;6258:9;1284:66;6215:19;:78::i;:::-;6127:166;;;;;;6306:50;6313:11;6326:15;6343:12;6306:6;:50::i;1546:281:41:-;1708:29;1718:10;1730:6;1708:9;:29::i;3758:308:61:-;3871:16;;;3885:1;3871:16;;;;;;;;;3819:15;;;;3871:16;;;;;;;;;;;;-1:-1:-1;3871:16:61;3842:45;;3926:11;3893:9;3903:1;3893:12;;;;;;;;:::i;:::-;;;;;;;;;;:45;3945:13;3961:62;1157:66;3996:9;3945:13;1286:66;3961:24;:62::i;5057:269::-;5156:16;;;5170:1;5156:16;;;;;;;;;5127:26;;5156:16;;;;;;;;;;;-1:-1:-1;5156:16:61;5127:45;;5211:11;5178:9;5188:1;5178:12;;;;;;;;:::i;:::-;;;;;;:45;;;;;5230:91;1157:66;1141:83;;5265:9;5276:1;5297:7;5279:27;;;;;;24559:19:113;;24603:2;24594:12;;24430:182;5279:27:61;;;;-1:-1:-1;;5279:27:61;;;;;;;;;1286:66;5230:24;:91::i;5594:317:52:-;5733:12;5747:17;5790:6;-1:-1:-1;;;;;5790:11:52;5810:1;5821:79;5847:8;5868:9;5889:8;5821:13;:79::i;:::-;5790:116;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5772:134:52;;;;-1:-1:-1;5594:317:52;-1:-1:-1;;;;;5594:317:52:o;6415:321::-;6562:12;6576:17;6619:6;-1:-1:-1;;;;;6619:19:52;6646:79;6672:8;6693:9;6714:8;6646:13;:79::i;:::-;6619:112;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;51249:282:24;51494:30;;;;;;40541:19:113;;;40576:12;;;40569:28;;;51337:7:24;;40613:12:113;;51494:30:24;40353:278:113;3658:342:29;3774:16;;;3788:1;3774:16;;;;;;;;;3715:22;;3745:26;;3774:16;;;;;;;;;;;;-1:-1:-1;3774:16:29;3745:45;;3829:7;3796:9;3806:1;3796:12;;;;;;;;:::i;:::-;;;;;;;;;;:41;3844:18;3865:49;971:66;3901:9;3844:18;3865:25;:49::i;:::-;3844:70;;3928:66;:44;3949:5;3956:1;3959:5;:12;3928:20;:44::i;:::-;:64;:66::i;3035:136:5:-;3105:4;3157:9;3124:42;;3143:9;3125:15;3135:4;3934:26;;;3804:162;3125:15;:27;3124:42;;;3117:49;;3035:136;;;;:::o;1489:2340:23:-;1602:10;;1598:1504;;1755:2;1745:6;:12;1741:122;;1818:2;1809:6;:11;1791:29;;;;1842:2;1832:12;;;;;;:::i;:::-;;;;1741:122;1953:10;;1949:1147;;2161:2;:11;;;2035:21;-1:-1:-1;;579:1:31;804:25:32;;782:48;2208:18:23;2193:33;;2395:12;2387:6;2383:25;2442:4;2431:9;2427:20;2419:28;;2497:13;2491:20;2480:9;2476:36;2458:54;;2745:4;2741:9;2724:14;2718:21;2714:37;2645:4;2633:10;2629:21;2572:193;2544:14;2524:253;;2836:13;2826:6;:23;2822:36;;2851:7;;;;2822:36;-1:-1:-1;2999:1:23;2981:19;;;;;3054:23;;;;;3012:30;1949:1147;3132:253;3149:2;3139:6;:12;3132:253;;3244:20;;3221:44;;3318:1;3300:19;;;;-1:-1:-1;;3358:12:23;;;;3346:2;3329:19;3132:253;;;3453:10;;3449:376;;3473:12;-1:-1:-1;;579:1:31;804:25:32;;782:48;3761:21:23;;3672:20;;3694:9;;3668:36;3757:32;;3617:184;3573:238;;-1:-1:-1;1489:2340:23;;;;:::o;966:162::-;1055:68;1061:14;1077:6;1085:4;:11;1098:24;1117:4;894::19;884:15;;758:151;1098:24:23;1055:5;:68::i;3545:418:22:-;3597:17;3622:19;3644:13;3652:4;2997:3;2975:25;;2901:104;3644:13;3622:35;-1:-1:-1;692:17:22;3238:38;;;3767:18;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3767:18:22;-1:-1:-1;3760:25:22;-1:-1:-1;3854:4:22;3844:15;;3914:44;3926:11;3844:15;3950:7;3914:11;:44::i;:::-;3616:347;;;3545:418;;;:::o;7829:207:67:-;7940:14;7956:17;8006:25;8019:11;8006:12;:25::i;955:327:41:-;1036:4;1178:56;696:18:72;578:36:53;2955:46;;2954:74;1227:6:41;1178:19;:56::i;:::-;:99;;;;1238:39;1258:10;1270:6;1238:19;:39::i;4897:201:52:-;5019:12;5063:8;5073:9;5084:8;5046:47;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;5039:54;;4897:201;;;;;:::o;37180:522:24:-;37316:12;37440:257;37479:79;37521:7;37530:8;37540:17;37479:41;:79::i;:::-;37576:1;37595:93;37670:17;37595:66;37643:7;37652:8;37595:47;:66::i;:::-;:74;7070:16:3;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;37595:93:24;37440:12;:257::i;40103:220:35:-;40169:24;40201:30;40234:32;40252:6;40260:2;40264:1;40234:17;:32::i;1229:823:19:-;1346:324;1363:2;1353:6;:12;1346:324;;1453:18;;1435:37;;1604:2;1616:17;;;;1591:15;;;;-1:-1:-1;;1643:12:19;1346:324;;;1679:6;1689:1;1679:11;1675:24;;1229:823;;;:::o;1675:24::-;1738:12;-1:-1:-1;;579:1:31;804:25:32;;782:48;1738:32:19;;2019:4;2007:9;2001:16;1997:27;1942:4;1938:9;1924:11;1918:18;1914:34;1867:167;1848:9;1832:210;1824:224;1229:823;;;:::o;7448:223:67:-;2756:4:2;2742:27;;2736:34;2742:27;;;2736:34;7564:35:67;;;;;;7513:14;;7631:33;;7623:42;1541:126:20;4006:378:64;4130:16;;;4144:1;4130:16;;;;;;;;4082:11;;;;4130:16;4144:1;4130:16;;;;;;;;;;-1:-1:-1;4130:16:64;4101:45;;4185:10;4152:9;4162:1;4152:12;;;;;;;;:::i;:::-;;;;;;:44;;;;;4241:6;-1:-1:-1;;;;;4225:24:64;4217:33;;4202:9;4212:1;4202:12;;;;;;;;:::i;:::-;;;;;;;;;;:48;4257:13;4273:62;1169:66;4308:9;4257:13;1298:66;4273:24;:62::i;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:332:113:-;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:113;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:252::-;1293:2;1287:9;1335:3;1323:16;;1369:18;1354:34;;1390:22;;;1351:62;1348:88;;;1416:18;;:::i;1478:252::-;1550:2;1544:9;1592:3;1580:16;;1626:18;1611:34;;1647:22;;;1608:62;1605:88;;;1673:18;;:::i;1735:334::-;1806:2;1800:9;1862:2;1852:13;;-1:-1:-1;;1848:86:113;1836:99;;1965:18;1950:34;;1986:22;;;1947:62;1944:88;;;2012:18;;:::i;:::-;2048:2;2041:22;1735:334;;-1:-1:-1;1735:334:113:o;2074:183::-;2134:4;2167:18;2159:6;2156:30;2153:56;;;2189:18;;:::i;:::-;-1:-1:-1;2234:1:113;2230:14;2246:4;2226:25;;2074:183::o;2262:668::-;2316:5;2369:3;2362:4;2354:6;2350:17;2346:27;2336:55;;2387:1;2384;2377:12;2336:55;2423:6;2410:20;2449:4;2473:60;2489:43;2529:2;2489:43;:::i;:::-;2473:60;:::i;:::-;2555:3;2579:2;2574:3;2567:15;2607:4;2602:3;2598:14;2591:21;;2664:4;2658:2;2655:1;2651:10;2643:6;2639:23;2635:34;2621:48;;2692:3;2684:6;2681:15;2678:35;;;2709:1;2706;2699:12;2678:35;2745:4;2737:6;2733:17;2759:142;2775:6;2770:3;2767:15;2759:142;;;2841:17;;2829:30;;2879:12;;;;2792;;2759:142;;;-1:-1:-1;2919:5:113;2262:668;-1:-1:-1;;;;;;2262:668:113:o;2935:159::-;3002:20;;3062:6;3051:18;;3041:29;;3031:57;;3084:1;3081;3074:12;3099:740;3233:6;3241;3249;3257;3310:3;3298:9;3289:7;3285:23;3281:33;3278:53;;;3327:1;3324;3317:12;3278:53;3367:9;3354:23;3396:18;3437:2;3429:6;3426:14;3423:34;;;3453:1;3450;3443:12;3423:34;3476:61;3529:7;3520:6;3509:9;3505:22;3476:61;:::i;:::-;3466:71;;3590:2;3579:9;3575:18;3562:32;3546:48;;3619:2;3609:8;3606:16;3603:36;;;3635:1;3632;3625:12;3603:36;;3658:63;3713:7;3702:8;3691:9;3687:24;3658:63;:::i;:::-;3648:73;;;3740:37;3773:2;3762:9;3758:18;3740:37;:::i;:::-;3730:47;;3796:37;3829:2;3818:9;3814:18;3796:37;:::i;:::-;3786:47;;3099:740;;;;;;;:::o;3844:248::-;3912:6;3920;3973:2;3961:9;3952:7;3948:23;3944:32;3941:52;;;3989:1;3986;3979:12;3941:52;-1:-1:-1;;4012:23:113;;;4082:2;4067:18;;;4054:32;;-1:-1:-1;3844:248:113:o;4279:180::-;4338:6;4391:2;4379:9;4370:7;4366:23;4362:32;4359:52;;;4407:1;4404;4397:12;4359:52;-1:-1:-1;4430:23:113;;4279:180;-1:-1:-1;4279:180:113:o;4464:184::-;-1:-1:-1;;;4513:1:113;4506:88;4613:4;4610:1;4603:15;4637:4;4634:1;4627:15;4653:144;4738:1;4731:5;4728:12;4718:46;;4744:18;;:::i;:::-;4773;;4653:144::o;4802:439::-;4855:3;4893:5;4887:12;4920:6;4915:3;4908:19;4946:4;4975;4970:3;4966:14;4959:21;;5014:4;5007:5;5003:16;5037:1;5047:169;5061:6;5058:1;5055:13;5047:169;;;5122:13;;5110:26;;5156:12;;;;5191:15;;;;5083:1;5076:9;5047:169;;;-1:-1:-1;5232:3:113;;4802:439;-1:-1:-1;;;;;4802:439:113:o;5246:963::-;5451:2;5440:9;5433:21;5463:64;5523:2;5512:9;5508:18;5499:6;5493:13;5463:64;:::i;:::-;5581:2;5573:6;5569:15;5563:22;5558:2;5547:9;5543:18;5536:50;5640:2;5632:6;5628:15;5622:22;5617:2;5606:9;5602:18;5595:50;5700:2;5692:6;5688:15;5682:22;5676:3;5665:9;5661:19;5654:51;5760:3;5752:6;5748:16;5742:23;5736:3;5725:9;5721:19;5714:52;5414:4;5813:3;5805:6;5801:16;5795:23;5855:4;5849:3;5838:9;5834:19;5827:33;5883:63;5941:3;5930:9;5926:19;5912:12;5883:63;:::i;:::-;5869:77;;5995:3;5987:6;5983:16;5977:23;-1:-1:-1;;6054:9:113;6046:6;6042:22;6038:95;6031:4;6020:9;6016:20;6009:125;6151:52;6196:6;6180:14;6151:52;:::i;6214:1117::-;6274:5;6327:3;6320:4;6312:6;6308:17;6304:27;6294:55;;6345:1;6342;6335:12;6294:55;6381:6;6368:20;6407:4;6431:60;6447:43;6487:2;6447:43;:::i;6431:60::-;6525:15;;;6611:1;6607:10;;;;6595:23;;6591:32;;;6556:12;;;;6635:15;;;6632:35;;;6663:1;6660;6653:12;6632:35;6699:2;6691:6;6687:15;6711:591;6727:6;6722:3;6719:15;6711:591;;;6805:4;6799:3;6794;6790:13;6786:24;6783:114;;;6851:1;6880:2;6876;6869:14;6783:114;6923:22;;:::i;:::-;6972:17;;6958:32;;7039:12;;;7026:26;7010:14;;;7003:50;7076:2;7127:12;;;7114:26;7098:14;;;7091:50;7164:2;7215:12;;;7202:26;7186:14;;;7179:50;7242:18;;7280:12;;;;6753:4;6744:14;6711:591;;7336:515;7463:6;7471;7479;7532:2;7520:9;7511:7;7507:23;7503:32;7500:52;;;7548:1;7545;7538:12;7500:52;7584:9;7571:23;7561:33;;7641:2;7630:9;7626:18;7613:32;7603:42;;7696:2;7685:9;7681:18;7668:32;7723:18;7715:6;7712:30;7709:50;;;7755:1;7752;7745:12;7709:50;7778:67;7837:7;7828:6;7817:9;7813:22;7778:67;:::i;:::-;7768:77;;;7336:515;;;;;:::o;7856:758::-;8002:6;8010;8018;8071:2;8059:9;8050:7;8046:23;8042:32;8039:52;;;8087:1;8084;8077:12;8039:52;8126:9;8113:23;8165:1;8158:5;8155:12;8145:40;;8181:1;8178;8171:12;8145:40;8204:5;-1:-1:-1;8260:2:113;8245:18;;8232:32;8283:18;8313:14;;;8310:34;;;8340:1;8337;8330:12;8310:34;8363:61;8416:7;8407:6;8396:9;8392:22;8363:61;:::i;:::-;8353:71;;8477:2;8466:9;8462:18;8449:32;8433:48;;8506:2;8496:8;8493:16;8490:36;;;8522:1;8519;8512:12;8490:36;;8545:63;8600:7;8589:8;8578:9;8574:24;8545:63;:::i;8801:114::-;8885:4;8878:5;8874:16;8867:5;8864:27;8854:55;;8905:1;8902;8895:12;8920:1762;9053:6;9061;9069;9077;9085;9138:3;9126:9;9117:7;9113:23;9109:33;9106:53;;;9155:1;9152;9145:12;9106:53;9195:9;9182:23;9224:18;9265:2;9257:6;9254:14;9251:34;;;9281:1;9278;9271:12;9251:34;9304:22;;;;9360:3;9342:16;;;9338:26;9335:46;;;9377:1;9374;9367:12;9335:46;9403:22;;:::i;:::-;9461:2;9448:16;9441:5;9434:31;9484:2;9539;9535;9531:11;9518:25;9513:2;9506:5;9502:14;9495:49;9597:2;9593;9589:11;9576:25;9571:2;9564:5;9560:14;9553:49;9655:2;9651;9647:11;9634:25;9629:2;9622:5;9618:14;9611:49;9706:3;9702:2;9698:12;9685:26;9736:2;9726:8;9723:16;9720:36;;;9752:1;9749;9742:12;9720:36;9783:8;9779:2;9775:17;9765:27;;;9830:7;9823:4;9819:2;9815:13;9811:27;9801:55;;9852:1;9849;9842:12;9801:55;9888:2;9875:16;9865:26;;9911:60;9927:43;9967:2;9927:43;:::i;9911:60::-;10005:15;;;10087:1;10083:10;;;;10075:19;;10071:28;;;10036:12;;;;10111:19;;;10108:39;;;10143:1;10140;10133:12;10108:39;10167:11;;;;10187:221;10203:6;10198:3;10195:15;10187:221;;;10285:3;10272:17;10302:31;10325:7;10302:31;:::i;:::-;10346:20;;10220:12;;;;10386;;;;10187:221;;;10435:3;10424:15;;;10417:30;;;;10428:5;;10503:18;;;10490:32;;-1:-1:-1;;10569:2:113;10554:18;;10541:32;;10620:2;10605:18;;10592:32;;-1:-1:-1;10656:19:113;;;10643:33;;-1:-1:-1;8920:1762:113;-1:-1:-1;;;;;8920:1762:113:o;11029:154::-;-1:-1:-1;;;;;11108:5:113;11104:54;11097:5;11094:65;11084:93;;11173:1;11170;11163:12;11188:483;11281:6;11289;11342:2;11330:9;11321:7;11317:23;11313:32;11310:52;;;11358:1;11355;11348:12;11310:52;11397:9;11384:23;11416:31;11441:5;11416:31;:::i;:::-;11466:5;-1:-1:-1;11522:2:113;11507:18;;11494:32;11549:18;11538:30;;11535:50;;;11581:1;11578;11571:12;11535:50;11604:61;11657:7;11648:6;11637:9;11633:22;11604:61;:::i;:::-;11594:71;;;11188:483;;;;;:::o;12449:184::-;-1:-1:-1;;;12498:1:113;12491:88;12598:4;12595:1;12588:15;12622:4;12619:1;12612:15;12638:277;12705:6;12758:2;12746:9;12737:7;12733:23;12729:32;12726:52;;;12774:1;12771;12764:12;12726:52;12806:9;12800:16;12859:5;12852:13;12845:21;12838:5;12835:32;12825:60;;12881:1;12878;12871:12;13283:184;-1:-1:-1;;;13332:1:113;13325:88;13432:4;13429:1;13422:15;13456:4;13453:1;13446:15;13472:168;13545:9;;;13576;;13593:15;;;13587:22;;13573:37;13563:71;;13614:18;;:::i;13645:184::-;-1:-1:-1;;;13694:1:113;13687:88;13794:4;13791:1;13784:15;13818:4;13815:1;13808:15;13834:112;13866:1;13892;13882:35;;13897:18;;:::i;:::-;-1:-1:-1;13931:9:113;;13834:112::o;14673:251::-;14743:6;14796:2;14784:9;14775:7;14771:23;14767:32;14764:52;;;14812:1;14809;14802:12;14764:52;14844:9;14838:16;14863:31;14888:5;14863:31;:::i;16464:691::-;16776:48;16814:9;16806:6;16776:48;:::i;:::-;16860:3;16855:2;16844:9;16840:18;16833:31;16757:4;16887:78;16960:3;16949:9;16945:19;16937:6;16887:78;:::i;:::-;17013:9;17005:6;17001:22;16996:2;16985:9;16981:18;16974:50;17041:65;17099:6;17091;17041:65;:::i;:::-;17033:73;;;17142:6;17137:2;17126:9;17122:18;17115:34;16464:691;;;;;;;:::o;17519:710::-;17627:6;17680:3;17668:9;17659:7;17655:23;17651:33;17648:53;;;17697:1;17694;17687:12;17648:53;17723:22;;:::i;:::-;17774:9;17768:16;17761:5;17754:31;17838:2;17827:9;17823:18;17817:25;17812:2;17805:5;17801:14;17794:49;17896:2;17885:9;17881:18;17875:25;17870:2;17863:5;17859:14;17852:49;17954:2;17943:9;17939:18;17933:25;17928:2;17921:5;17917:14;17910:49;18013:3;18002:9;17998:19;17992:26;17986:3;17979:5;17975:15;17968:51;18073:3;18062:9;18058:19;18052:26;18046:3;18039:5;18035:15;18028:51;18133:3;18122:9;18118:19;18112:26;18106:3;18099:5;18095:15;18088:51;18193:3;18182:9;18178:19;18172:26;18166:3;18159:5;18155:15;18148:51;18218:5;18208:15;;;17519:710;;;;:::o;18234:736::-;18297:5;18350:3;18343:4;18335:6;18331:17;18327:27;18317:55;;18368:1;18365;18358:12;18317:55;18397:6;18391:13;18423:4;18447:60;18463:43;18503:2;18463:43;:::i;18447:60::-;18529:3;18553:2;18548:3;18541:15;18581:4;18576:3;18572:14;18565:21;;18638:4;18632:2;18629:1;18625:10;18617:6;18613:23;18609:34;18595:48;;18666:3;18658:6;18655:15;18652:35;;;18683:1;18680;18673:12;18652:35;18719:4;18711:6;18707:17;18733:208;18749:6;18744:3;18741:15;18733:208;;;18822:3;18816:10;18839:29;18862:5;18839:29;:::i;:::-;18881:18;;18919:12;;;;18766;;18733:208;;18975:998;19075:6;19128:2;19116:9;19107:7;19103:23;19099:32;19096:52;;;19144:1;19141;19134:12;19096:52;19177:9;19171:16;19206:18;19247:2;19239:6;19236:14;19233:34;;;19263:1;19260;19253:12;19233:34;19286:22;;;;19342:6;19324:16;;;19320:29;19317:49;;;19362:1;19359;19352:12;19317:49;19388:22;;:::i;:::-;19439:2;19433:9;19426:5;19419:24;19482:2;19478;19474:11;19468:18;19511:2;19501:8;19498:16;19495:36;;;19527:1;19524;19517:12;19495:36;19563:65;19620:7;19609:8;19605:2;19601:17;19563:65;:::i;:::-;19558:2;19551:5;19547:14;19540:89;;19675:2;19671;19667:11;19661:18;19656:2;19649:5;19645:14;19638:42;19726:2;19722;19718:11;19712:18;19707:2;19700:5;19696:14;19689:42;19778:3;19774:2;19770:12;19764:19;19758:3;19751:5;19747:15;19740:44;19831:3;19827:2;19823:12;19817:19;19811:3;19804:5;19800:15;19793:44;19884:3;19880:2;19876:12;19870:19;19864:3;19857:5;19853:15;19846:44;19937:3;19933:2;19929:12;19923:19;19917:3;19910:5;19906:15;19899:44;19962:5;19952:15;;;;;18975:998;;;;:::o;20168:1068::-;20262:6;20293:2;20336;20324:9;20315:7;20311:23;20307:32;20304:52;;;20352:1;20349;20342:12;20304:52;20385:9;20379:16;20414:18;20455:2;20447:6;20444:14;20441:34;;;20471:1;20468;20461:12;20441:34;20509:6;20498:9;20494:22;20484:32;;20554:7;20547:4;20543:2;20539:13;20535:27;20525:55;;20576:1;20573;20566:12;20525:55;20605:2;20599:9;20628:60;20644:43;20684:2;20644:43;:::i;20628:60::-;20722:15;;;20804:1;20800:10;;;;20792:19;;20788:28;;;20753:12;;;;20828:19;;;20825:39;;;20860:1;20857;20850:12;20825:39;20884:11;;;;20904:302;20920:6;20915:3;20912:15;20904:302;;;20993:3;20987:10;21041:2;21034:5;21030:14;21023:5;21020:25;21010:123;;21087:1;21116:2;21112;21105:14;21010:123;21146:18;;20937:12;;;;21184;;;;20904:302;;;21225:5;20168:1068;-1:-1:-1;;;;;;;;20168:1068:113:o;21241:200::-;21307:9;;;21280:4;21335:9;;21363:10;;21375:12;;;21359:29;21398:12;;;21390:21;;21356:56;21353:82;;;21415:18;;:::i;21446:120::-;21486:1;21512;21502:35;;21517:18;;:::i;:::-;-1:-1:-1;21551:9:113;;21446:120::o;21571:216::-;21635:9;;;21663:11;;;21610:3;21693:9;;21721:10;;21717:19;;21746:10;;21738:19;;21714:44;21711:70;;;21761:18;;:::i;21792:292::-;21864:9;;;21831:7;21889:9;;21906:66;21900:73;;21885:89;21882:115;;;21977:18;;:::i;:::-;22050:1;22041:7;22036:16;22033:1;22030:23;22026:1;22019:9;22016:38;22006:72;;22058:18;;:::i;22089:195::-;22128:3;-1:-1:-1;;22152:5:113;22149:77;22146:103;;22229:18;;:::i;:::-;-1:-1:-1;22276:1:113;22265:13;;22089:195::o;22289:988::-;22509:4;22538:2;22578;22567:9;22563:18;22608:6;22597:9;22590:25;22634:2;22672;22667;22656:9;22652:18;22645:30;22695:6;22730;22724:13;22761:6;22753;22746:22;22787:2;22777:12;;22820:2;22809:9;22805:18;22798:25;;22858:2;22850:6;22846:15;22879:1;22889:362;22903:6;22900:1;22897:13;22889:362;;;22962:13;;23000:9;;22988:22;;23050:11;;;23044:18;23030:12;;;23023:40;23103:11;;;23097:18;23083:12;;;23076:40;23156:11;;23150:18;23136:12;;;23129:40;23198:4;23189:14;;;;23226:15;;;;22925:1;22918:9;22889:362;;;-1:-1:-1;23268:3:113;;22289:988;-1:-1:-1;;;;;;;;;22289:988:113:o;23282:119::-;23369:1;23362:5;23359:12;23349:46;;23375:18;;:::i;23406:250::-;23491:1;23501:113;23515:6;23512:1;23509:13;23501:113;;;23591:11;;;23585:18;23572:11;;;23565:39;23537:2;23530:10;23501:113;;;-1:-1:-1;;23648:1:113;23630:16;;23623:27;23406:250::o;23661:329::-;23702:3;23740:5;23734:12;23767:6;23762:3;23755:19;23783:76;23852:6;23845:4;23840:3;23836:14;23829:4;23822:5;23818:16;23783:76;:::i;:::-;23904:2;23892:15;-1:-1:-1;;23888:88:113;23879:98;;;;23979:4;23875:109;;23661:329;-1:-1:-1;;23661:329:113:o;23995:430::-;24216:6;24205:9;24198:25;24232:44;24269:6;24232:44;:::i;:::-;24312:6;24307:2;24296:9;24292:18;24285:34;24355:2;24350;24339:9;24335:18;24328:30;24179:4;24375:44;24415:2;24404:9;24400:18;24392:6;24375:44;:::i;24617:125::-;24682:9;;;24703:10;;;24700:36;;;24716:18;;:::i;24747:219::-;24896:2;24885:9;24878:21;24859:4;24916:44;24956:2;24945:9;24941:18;24933:6;24916:44;:::i;24971:845::-;25079:6;25132:2;25120:9;25111:7;25107:23;25103:32;25100:52;;;25148:1;25145;25138:12;25100:52;25181:9;25175:16;25210:18;25251:2;25243:6;25240:14;25237:34;;;25267:1;25264;25257:12;25237:34;25290:22;;;;25346:4;25328:16;;;25324:27;25321:47;;;25364:1;25361;25354:12;25321:47;25390:22;;:::i;:::-;25441:2;25435:9;25428:5;25421:24;25491:2;25487;25483:11;25477:18;25472:2;25465:5;25461:14;25454:42;25542:2;25538;25534:11;25528:18;25523:2;25516:5;25512:14;25505:42;25593:2;25589;25585:11;25579:18;25574:2;25567:5;25563:14;25556:42;25637:3;25633:2;25629:12;25623:19;25667:2;25657:8;25654:16;25651:36;;;25683:1;25680;25673:12;25651:36;25720:65;25777:7;25766:8;25762:2;25758:17;25720:65;:::i;:::-;25714:3;25703:15;;25696:90;-1:-1:-1;25707:5:113;24971:845;-1:-1:-1;;;;;24971:845:113:o;25821:308::-;25860:1;25886;25876:35;;25891:18;;:::i;:::-;-1:-1:-1;;26005:1:113;26002:73;25933:66;25930:1;25927:73;25923:153;25920:179;;;26079:18;;:::i;:::-;-1:-1:-1;26113:10:113;;25821:308::o;26387:487::-;26685:6;26674:9;26667:25;26728:2;26723;26712:9;26708:18;26701:30;26648:4;26748:77;26821:2;26810:9;26806:18;26798:6;26748:77;:::i;:::-;26740:85;;26861:6;26856:2;26845:9;26841:18;26834:34;26387:487;;;;;;:::o;26879:568::-;26932:5;26985:3;26978:4;26970:6;26966:17;26962:27;26952:55;;27003:1;27000;26993:12;26952:55;27032:6;27026:13;27058:18;27054:2;27051:26;27048:52;;;27080:18;;:::i;:::-;27124:114;27232:4;-1:-1:-1;;27156:4:113;27152:2;27148:13;27144:86;27140:97;27124:114;:::i;:::-;27263:2;27254:7;27247:19;27309:3;27302:4;27297:2;27289:6;27285:15;27281:26;27278:35;27275:55;;;27326:1;27323;27316:12;27275:55;27339:77;27413:2;27406:4;27397:7;27393:18;27386:4;27378:6;27374:17;27339:77;:::i;27452:654::-;27593:6;27601;27609;27662:2;27650:9;27641:7;27637:23;27633:32;27630:52;;;27678:1;27675;27668:12;27630:52;27711:9;27705:16;27740:18;27781:2;27773:6;27770:14;27767:34;;;27797:1;27794;27787:12;27767:34;27820:60;27872:7;27863:6;27852:9;27848:22;27820:60;:::i;:::-;27810:70;;27920:2;27909:9;27905:18;27899:25;27889:35;;27970:2;27959:9;27955:18;27949:25;27933:41;;27999:2;27989:8;27986:16;27983:36;;;28015:1;28012;28005:12;27983:36;;28038:62;28092:7;28081:8;28070:9;28066:24;28038:62;:::i;28111:407::-;28194:5;28234;28228:12;28276:4;28269:5;28265:16;28259:23;28301:66;28393:2;28389;28385:11;28376:20;;28419:1;28411:6;28408:13;28405:107;;;28480:1;28476:14;;;;28473:1;28469:22;28465:31;;;28457:40;28453:49;;28111:407;-1:-1:-1;;28111:407:113:o;28776:525::-;29016:3;29055:1;29047:6;29044:13;29034:47;;29061:18;;:::i;:::-;-1:-1:-1;29106:3:113;29102:16;;;;29090:29;;29144:1;29135:11;;29128:27;;;;29180:2;29171:12;;29164:28;;;;29217:2;29208:12;;29201:28;29254:2;29245:12;;29238:28;29291:3;29282:13;;28776:525::o;29306:492::-;29481:3;29519:6;29513:13;29535:66;29594:6;29589:3;29582:4;29574:6;29570:17;29535:66;:::i;:::-;29664:13;;29623:16;;;;29686:70;29664:13;29623:16;29733:4;29721:17;;29686:70;:::i;:::-;29772:20;;29306:492;-1:-1:-1;;;;29306:492:113:o;29803:813::-;30196:6;30185:9;30178:25;30239:3;30234:2;30223:9;30219:18;30212:31;30159:4;30266:78;30339:3;30328:9;30324:19;30316:6;30266:78;:::i;:::-;30392:9;30384:6;30380:22;30375:2;30364:9;30360:18;30353:50;30426:32;30451:6;30443;30426:32;:::i;:::-;30412:46;;30494:6;30489:2;30478:9;30474:18;30467:34;30550:9;30542:6;30538:22;30532:3;30521:9;30517:19;30510:51;30578:32;30603:6;30595;30578:32;:::i;30621:567::-;30943:6;30932:9;30925:25;30986:3;30981:2;30970:9;30966:18;30959:31;30906:4;31007:78;31080:3;31069:9;31065:19;31057:6;31007:78;:::i;:::-;31133:4;31121:17;;;;31116:2;31101:18;;31094:45;-1:-1:-1;31170:2:113;31155:18;31148:34;30999:86;30621:567;-1:-1:-1;;30621:567:113:o;31193:184::-;31263:6;31316:2;31304:9;31295:7;31291:23;31287:32;31284:52;;;31332:1;31329;31322:12;31284:52;-1:-1:-1;31355:16:113;;31193:184;-1:-1:-1;31193:184:113:o;31382:728::-;31750:6;31739:9;31732:25;31793:3;31788:2;31777:9;31773:18;31766:31;31713:4;31820:78;31893:3;31882:9;31878:19;31870:6;31820:78;:::i;:::-;31946:4;31938:6;31934:17;31929:2;31918:9;31914:18;31907:45;32000:9;31992:6;31988:22;31983:2;31972:9;31968:18;31961:50;32028:32;32053:6;32045;32028:32;:::i;:::-;32020:40;;;32097:6;32091:3;32080:9;32076:19;32069:35;31382:728;;;;;;;;:::o;32115:191::-;32150:3;32181:66;32174:5;32171:77;32168:103;;32251:18;;:::i;:::-;-1:-1:-1;32291:1:113;32287:13;;32115:191::o;32311:128::-;32378:9;;;32399:11;;;32396:37;;;32413:18;;:::i;32444:339::-;32621:2;32610:9;32603:21;32584:4;32641:44;32681:2;32670:9;32666:18;32658:6;32641:44;:::i;:::-;32633:52;;-1:-1:-1;;;;;32725:6:113;32721:55;32716:2;32705:9;32701:18;32694:83;32444:339;;;;;:::o;32973:175::-;33010:3;33054:4;33047:5;33043:16;33083:4;33074:7;33071:17;33068:43;;33091:18;;:::i;:::-;33140:1;33127:15;;32973:175;-1:-1:-1;;32973:175:113:o;33153:319::-;33359:6;33348:9;33341:25;33402:2;33397;33386:9;33382:18;33375:30;33322:4;33422:44;33462:2;33451:9;33447:18;33439:6;33422:44;:::i;33477:335::-;33556:6;33609:2;33597:9;33588:7;33584:23;33580:32;33577:52;;;33625:1;33622;33615:12;33577:52;33658:9;33652:16;33691:18;33683:6;33680:30;33677:50;;;33723:1;33720;33713:12;33677:50;33746:60;33798:7;33789:6;33778:9;33774:22;33746:60;:::i;33817:925::-;34266:66;34258:6;34254:79;34249:3;34242:92;34224:3;34353;34385:2;34381:1;34376:3;34372:11;34365:23;34417:6;34411:13;34433:74;34500:6;34496:1;34491:3;34487:11;34480:4;34472:6;34468:17;34433:74;:::i;:::-;34535:6;34530:3;34526:16;34516:26;;34570:2;34566:1;34562:2;34558:10;34551:22;34604:6;34598:13;34582:29;;34620:75;34686:8;34682:1;34678:2;34674:10;34667:4;34659:6;34655:17;34620:75;:::i;:::-;34715:17;34734:1;34711:25;;33817:925;-1:-1:-1;;;;;33817:925:113:o;34747:713::-;35093:6;35088:3;35081:19;35130:6;35125:2;35120:3;35116:12;35109:28;35146:44;35183:6;35146:44;:::i;:::-;35224:3;35220:16;;;;35215:2;35206:12;;35199:38;35262:2;35253:12;;35246:28;;;;35299:2;35290:12;;35283:28;;;;35336:3;35327:13;;35320:29;35374:3;35365:13;;35358:29;35412:3;35403:13;;35396:29;35450:3;35441:13;;34747:713;-1:-1:-1;;34747:713:113:o;35465:639::-;35715:6;35710:3;35703:19;35685:3;35741:2;35774;35769:3;35765:12;35806:6;35800:13;35871:2;35863:6;35859:15;35892:1;35902:175;35916:6;35913:1;35910:13;35902:175;;;35979:13;;35965:28;;36015:14;;;;36052:15;;;;35938:1;35931:9;35902:175;;;-1:-1:-1;36093:5:113;;35465:639;-1:-1:-1;;;;;;;35465:639:113:o;36109:359::-;36312:2;36301:9;36294:21;36275:4;36332:44;36372:2;36361:9;36357:18;36349:6;36332:44;:::i;:::-;36407:2;36392:18;;36385:34;;;;-1:-1:-1;36450:2:113;36435:18;36428:34;36324:52;36109:359;-1:-1:-1;36109:359:113:o;36799:710::-;37133:3;37122:9;37115:22;37096:4;37160:78;37233:3;37222:9;37218:19;37210:6;37160:78;:::i;:::-;37286:9;37278:6;37274:22;37269:2;37258:9;37254:18;37247:50;37320:32;37345:6;37337;37320:32;:::i;:::-;37306:46;;37388:6;37383:2;37372:9;37368:18;37361:34;37443:9;37435:6;37431:22;37426:2;37415:9;37411:18;37404:50;37471:32;37496:6;37488;37471:32;:::i;:::-;37463:40;36799:710;-1:-1:-1;;;;;;;36799:710:113:o;37514:917::-;37967:6;37956:9;37949:25;38010:3;38005:2;37994:9;37990:18;37983:31;37930:4;38037:78;38110:3;38099:9;38095:19;38087:6;38037:78;:::i;:::-;38163:9;38155:6;38151:22;38146:2;38135:9;38131:18;38124:50;38197:32;38222:6;38214;38197:32;:::i;:::-;38183:46;;38265:6;38260:2;38249:9;38245:18;38238:34;38321:9;38313:6;38309:22;38303:3;38292:9;38288:19;38281:51;38349:32;38374:6;38366;38349:32;:::i;:::-;38341:40;;;38418:6;38412:3;38401:9;38397:19;38390:35;37514:917;;;;;;;;;:::o;38436:532::-;38687:2;38676:9;38669:21;38650:4;38713:77;38786:2;38775:9;38771:18;38763:6;38713:77;:::i;:::-;38838:14;38830:6;38826:27;38821:2;38810:9;38806:18;38799:55;38902:9;38894:6;38890:22;38885:2;38874:9;38870:18;38863:50;38930:32;38955:6;38947;38930:32;:::i;38973:636::-;39283:6;39272:9;39265:25;39326:3;39321:2;39310:9;39306:18;39299:31;39246:4;39353:78;39426:3;39415:9;39411:19;39403:6;39353:78;:::i;:::-;39479:14;39471:6;39467:27;39462:2;39451:9;39447:18;39440:55;39543:9;39535:6;39531:22;39526:2;39515:9;39511:18;39504:50;39571:32;39596:6;39588;39571:32;:::i;40061:287::-;40190:3;40228:6;40222:13;40244:66;40303:6;40298:3;40291:4;40283:6;40279:17;40244:66;:::i;:::-;40326:16;;;;;40061:287;-1:-1:-1;;40061:287:113:o;40636:530::-;40821:3;40859:6;40853:13;40875:66;40934:6;40929:3;40922:4;40914:6;40910:17;40875:66;:::i;:::-;41010:2;41006:15;;;;41023:66;41002:88;40963:16;;;;40988:103;;;41118:2;41107:14;;41100:30;;;;41157:2;41146:14;;40636:530;-1:-1:-1;;40636:530:113:o","linkReferences":{"src/libraries/LibChunks.sol":{"LibChunks":[{"start":3395,"length":20}]}}},"methodIdentifiers":{"_calculateMagicAttack()":"bfea0b85","_calculatePhysicalAttack((int256,int256,int256,int256,uint8[]),bytes32,bytes32,uint256,uint256)":"b127ae90","_msgSender()":"119df25f","_msgValue()":"45ec9354","_world()":"e1af802c","calculateGoldDrop(uint256,uint256)":"195e75c4","calculateItemDrop(uint256,uint256)":"32aeffdf","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\":[{\"components\":[{\"internalType\":\"int256\",\"name\":\"bonusDamage\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"armorPenetration\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"attackModifierBonus\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"critChanceBonus\",\"type\":\"int256\"},{\"internalType\":\"uint8[]\",\"name\":\"classRestrictions\",\"type\":\"uint8[]\"}],\"internalType\":\"struct PhysicalAttackStats\",\"name\":\"attackStats\",\"type\":\"tuple\"},{\"internalType\":\"bytes32\",\"name\":\"attackerId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"defenderId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"weaponId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"randomNumber\",\"type\":\"uint256\"}],\"name\":\"_calculatePhysicalAttack\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"damage\",\"type\":\"int256\"},{\"internalType\":\"bool\",\"name\":\"hit\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"crit\",\"type\":\"bool\"}],\"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\":\"uint256\",\"name\":\"mobLevel\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"randomNumber\",\"type\":\"uint256\"}],\"name\":\"calculateGoldDrop\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"dropAmount\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"randomNumber\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"}],\"name\":\"calculateItemDrop\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"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\":\"0xdd3ebcb4c411e951e1d5c68d6287c597f8f6ab874b48ae96600e024326bd7059\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://61cf2ec85c2dcfde0de8d6c12cdb78b59f8b94a8662dd122bc1aca013cc69c7c\",\"dweb:/ipfs/QmdsELzf5enAbpe5ERXRJgyg2PvtiAUiiX7dT85BLtKpCM\"]},\"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\":\"0x84ff02d4275be694bfbe1e60e24539a891dda5df3bacf04f0eb2a974425603d0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f88775b86cdc8322742e528072b64d01df3d3ef70d4fc5104412522e468ae4e2\",\"dweb:/ipfs/Qme75CeS2sA8pr1Tyx9GN5atmuG4aBGjMPaagaGtYTjc2R\"]},\"src/codegen/tables/Actions.sol\":{\"keccak256\":\"0x63cd48bebaa0414728e9be2c856e4eb01efaead6627a6615da4c77b886805cef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1dfe138555b67362f41c26ce1ab074bfc1fcc4e7c6fd0284b82cc699d80d392\",\"dweb:/ipfs/QmNf8UGE3FZ4U96HkeioE4peWWz1SKPAjhKRrGnpEnCdkQ\"]},\"src/codegen/tables/Admin.sol\":{\"keccak256\":\"0xe3b7e993ca2e420d73b845fb37388d453486e24522b941503a2f81c639769725\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e638c35d3ec5805180122b70849bd3a93aa680f3251ac9e7fe4f0ff24722f614\",\"dweb:/ipfs/QmVL3xJPrsVDgXQTdxBEkq4PRmyNDCFHGHKJxLQzuFy9XJ\"]},\"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/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\":\"0x1f0b21a82c18d474347446546973619289392ee9cc745eccbfb4ba802771b2e2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f0a514e9aa8c0265e8ac7284587cdfec829ad4904e511a284d44a325f9ee511b\",\"dweb:/ipfs/QmYGbphJpnBQMsTEtAM78kqH56FrzrmBFVNthRM4WLdUSQ\"]},\"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\":\"0xe941a99c5bc6b4f21b69b4ad61870a3c4b35fa3a7d8e162c75ac3e7515717891\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://eaa285996201485c500f114b98515ce121d87ec29780085dc509d32dff96b227\",\"dweb:/ipfs/QmbnDdw5KqwfGspTKgikXCkvn6Gi6mVWca2yXiPoumhEJP\"]},\"src/codegen/tables/UltimateDominionConfig.sol\":{\"keccak256\":\"0x6f439f3fef2c4db3b295718bb3e277f59500a3183f2306fe70890a30c3eeff26\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bde32ff627c137c1b52e6f45ff82df52eee9e6fe8fa668fc791132dba187f256\",\"dweb:/ipfs/Qmcj4S8ysUA1Lv8xbA5i1dzn4wwKPQrCEjpUd1MW6rh21w\"]},\"src/codegen/world/IActionSystem.sol\":{\"keccak256\":\"0x3ea10f6af2b29e07f658e961113a68db383bb5df7ec853bd797bd1cc14d19b0d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c834cb0bb80ffe10c6175f8a16b827dde9804d459e6aa33691484e419587d47f\",\"dweb:/ipfs/QmXnLXquHjNXN8CCsEL3NPNrQHW6UWY78oginRPtcHZFcw\"]},\"src/codegen/world/ICharacterSystem.sol\":{\"keccak256\":\"0x54157279932a37b055d247901f034848c1f0bffbf262028cf9c69eeedc9b7235\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ead77ae9ab020f705a998be6229e975b9352486deaa9aa800b6de10338190782\",\"dweb:/ipfs/QmaLrytghaAH6ipaBr4XwsaBcCzeVa5gujHGRNxeztuo4X\"]},\"src/codegen/world/ICombatSystem.sol\":{\"keccak256\":\"0x8b522a844626b33d69ae186dd26f2f7bfd921bf92ed7ed0cee2b8c349d9b64f9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://647f99949a4584cf4b528415ffea01ad243147548455fe5a8373b042b6af3087\",\"dweb:/ipfs/QmYsgXQDTwrqg7YSJkKtiNZzf63f4jdA4xfni5gb9ap5K5\"]},\"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\":\"0xc6caadf1800d688083c234a12cd151746f0271be03a50bb6a654634270ab0864\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://084766afac89e6f74162f69534635f90ec56570019223e22d20342f7853fb4e0\",\"dweb:/ipfs/QmbrQXrTewfgW2NydLgPCdt3Vton5V7nfE7HViXtyrMnoK\"]},\"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\":\"0xfb774a3d4388291fa5bae54bf1c592cc366a0585e6d24388dfeebaf3abd666b4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0986371fcb9f53bac88f2c190faf0f5a77fac686eced664aed5f2f1eb6eaca64\",\"dweb:/ipfs/QmWdgLEV31t27nNQC1KGEfaZHFcuBUayxHm2giZJpAG8hv\"]},\"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\":\"0x22d65c64ce4ebff13ef3adebf2021db5ea2cfc01001a0a177421320227ab4b56\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4c3eee91d607e056de292ae040f2b969fb14e94c47b086906394519490f19ee1\",\"dweb:/ipfs/QmVe74VEQKZ22uq4dbphmu6qc6PwhkrYD5TffUBCawWbU8\"]},\"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":[{"internalType":"struct PhysicalAttackStats","name":"attackStats","type":"tuple","components":[{"internalType":"int256","name":"bonusDamage","type":"int256"},{"internalType":"int256","name":"armorPenetration","type":"int256"},{"internalType":"int256","name":"attackModifierBonus","type":"int256"},{"internalType":"int256","name":"critChanceBonus","type":"int256"},{"internalType":"uint8[]","name":"classRestrictions","type":"uint8[]"}]},{"internalType":"bytes32","name":"attackerId","type":"bytes32"},{"internalType":"bytes32","name":"defenderId","type":"bytes32"},{"internalType":"uint256","name":"weaponId","type":"uint256"},{"internalType":"uint256","name":"randomNumber","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"_calculatePhysicalAttack","outputs":[{"internalType":"int256","name":"damage","type":"int256"},{"internalType":"bool","name":"hit","type":"bool"},{"internalType":"bool","name":"crit","type":"bool"}]},{"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":"uint256","name":"mobLevel","type":"uint256"},{"internalType":"uint256","name":"randomNumber","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"calculateGoldDrop","outputs":[{"internalType":"uint256","name":"dropAmount","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"randomNumber","type":"uint256"},{"internalType":"uint256","name":"itemId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"calculateItemDrop","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"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":"0xdd3ebcb4c411e951e1d5c68d6287c597f8f6ab874b48ae96600e024326bd7059","urls":["bzz-raw://61cf2ec85c2dcfde0de8d6c12cdb78b59f8b94a8662dd122bc1aca013cc69c7c","dweb:/ipfs/QmdsELzf5enAbpe5ERXRJgyg2PvtiAUiiX7dT85BLtKpCM"],"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":"0x84ff02d4275be694bfbe1e60e24539a891dda5df3bacf04f0eb2a974425603d0","urls":["bzz-raw://f88775b86cdc8322742e528072b64d01df3d3ef70d4fc5104412522e468ae4e2","dweb:/ipfs/Qme75CeS2sA8pr1Tyx9GN5atmuG4aBGjMPaagaGtYTjc2R"],"license":"MIT"},"src/codegen/tables/Actions.sol":{"keccak256":"0x63cd48bebaa0414728e9be2c856e4eb01efaead6627a6615da4c77b886805cef","urls":["bzz-raw://c1dfe138555b67362f41c26ce1ab074bfc1fcc4e7c6fd0284b82cc699d80d392","dweb:/ipfs/QmNf8UGE3FZ4U96HkeioE4peWWz1SKPAjhKRrGnpEnCdkQ"],"license":"MIT"},"src/codegen/tables/Admin.sol":{"keccak256":"0xe3b7e993ca2e420d73b845fb37388d453486e24522b941503a2f81c639769725","urls":["bzz-raw://e638c35d3ec5805180122b70849bd3a93aa680f3251ac9e7fe4f0ff24722f614","dweb:/ipfs/QmVL3xJPrsVDgXQTdxBEkq4PRmyNDCFHGHKJxLQzuFy9XJ"],"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/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":"0x1f0b21a82c18d474347446546973619289392ee9cc745eccbfb4ba802771b2e2","urls":["bzz-raw://f0a514e9aa8c0265e8ac7284587cdfec829ad4904e511a284d44a325f9ee511b","dweb:/ipfs/QmYGbphJpnBQMsTEtAM78kqH56FrzrmBFVNthRM4WLdUSQ"],"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":"0xe941a99c5bc6b4f21b69b4ad61870a3c4b35fa3a7d8e162c75ac3e7515717891","urls":["bzz-raw://eaa285996201485c500f114b98515ce121d87ec29780085dc509d32dff96b227","dweb:/ipfs/QmbnDdw5KqwfGspTKgikXCkvn6Gi6mVWca2yXiPoumhEJP"],"license":"MIT"},"src/codegen/tables/UltimateDominionConfig.sol":{"keccak256":"0x6f439f3fef2c4db3b295718bb3e277f59500a3183f2306fe70890a30c3eeff26","urls":["bzz-raw://bde32ff627c137c1b52e6f45ff82df52eee9e6fe8fa668fc791132dba187f256","dweb:/ipfs/Qmcj4S8ysUA1Lv8xbA5i1dzn4wwKPQrCEjpUd1MW6rh21w"],"license":"MIT"},"src/codegen/world/IActionSystem.sol":{"keccak256":"0x3ea10f6af2b29e07f658e961113a68db383bb5df7ec853bd797bd1cc14d19b0d","urls":["bzz-raw://c834cb0bb80ffe10c6175f8a16b827dde9804d459e6aa33691484e419587d47f","dweb:/ipfs/QmXnLXquHjNXN8CCsEL3NPNrQHW6UWY78oginRPtcHZFcw"],"license":"MIT"},"src/codegen/world/ICharacterSystem.sol":{"keccak256":"0x54157279932a37b055d247901f034848c1f0bffbf262028cf9c69eeedc9b7235","urls":["bzz-raw://ead77ae9ab020f705a998be6229e975b9352486deaa9aa800b6de10338190782","dweb:/ipfs/QmaLrytghaAH6ipaBr4XwsaBcCzeVa5gujHGRNxeztuo4X"],"license":"MIT"},"src/codegen/world/ICombatSystem.sol":{"keccak256":"0x8b522a844626b33d69ae186dd26f2f7bfd921bf92ed7ed0cee2b8c349d9b64f9","urls":["bzz-raw://647f99949a4584cf4b528415ffea01ad243147548455fe5a8373b042b6af3087","dweb:/ipfs/QmYsgXQDTwrqg7YSJkKtiNZzf63f4jdA4xfni5gb9ap5K5"],"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":"0xc6caadf1800d688083c234a12cd151746f0271be03a50bb6a654634270ab0864","urls":["bzz-raw://084766afac89e6f74162f69534635f90ec56570019223e22d20342f7853fb4e0","dweb:/ipfs/QmbrQXrTewfgW2NydLgPCdt3Vton5V7nfE7HViXtyrMnoK"],"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":"0xfb774a3d4388291fa5bae54bf1c592cc366a0585e6d24388dfeebaf3abd666b4","urls":["bzz-raw://0986371fcb9f53bac88f2c190faf0f5a77fac686eced664aed5f2f1eb6eaca64","dweb:/ipfs/QmWdgLEV31t27nNQC1KGEfaZHFcuBUayxHm2giZJpAG8hv"],"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":"0x22d65c64ce4ebff13ef3adebf2021db5ea2cfc01001a0a177421320227ab4b56","urls":["bzz-raw://4c3eee91d607e056de292ae040f2b969fb14e94c47b086906394519490f19ee1","dweb:/ipfs/QmVe74VEQKZ22uq4dbphmu6qc6PwhkrYD5TffUBCawWbU8"],"license":"MIT"},"src/utils.sol":{"keccak256":"0xf50d451bb280fb33e08f521e168952f5145e69eee7df284ffeb1865b8b5187cc","urls":["bzz-raw://a78e6326639bdf19f606921e48c90663f387cbfd7d8160a461838e9ca6a0fc57","dweb:/ipfs/QmPT6PNCCQKWVP9bwYC4JyfuXJSgbupsgq6MT898gYfa1q"],"license":"MIT"}},"version":1},"id":111} \ No newline at end of file +{"abi":[{"type":"function","name":"_calculateMagicAttack","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"_calculatePhysicalAttack","inputs":[{"name":"attackStats","type":"tuple","internalType":"struct PhysicalAttackStats","components":[{"name":"bonusDamage","type":"int256","internalType":"int256"},{"name":"armorPenetration","type":"int256","internalType":"int256"},{"name":"attackModifierBonus","type":"int256","internalType":"int256"},{"name":"critChanceBonus","type":"int256","internalType":"int256"},{"name":"classRestrictions","type":"uint8[]","internalType":"uint8[]"}]},{"name":"attackerId","type":"bytes32","internalType":"bytes32"},{"name":"defenderId","type":"bytes32","internalType":"bytes32"},{"name":"weaponId","type":"uint256","internalType":"uint256"},{"name":"randomNumber","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"damage","type":"int256","internalType":"int256"},{"name":"hit","type":"bool","internalType":"bool"},{"name":"crit","type":"bool","internalType":"bool"}],"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":"calculateGoldDrop","inputs":[{"name":"mobLevel","type":"uint256","internalType":"uint256"},{"name":"randomNumber","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"dropAmount","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"calculateItemDrop","inputs":[{"name":"randomNumber","type":"uint256","internalType":"uint256"},{"name":"itemId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"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":"0x608060405234801561001057600080fd5b506154f7806100206000396000f3fe6080604052600436106100e85760003560e01c806398d239b11161008a578063bfea0b8511610059578063bfea0b8514610297578063c6ca743c146102a3578063e1af802c146102c3578063fc88ff63146102d857600080fd5b806398d239b114610205578063aaa417b71461021a578063b127ae901461023a578063b24678941461027757600080fd5b8063195e75c4116100c6578063195e75c41461016f57806332aeffdf1461019d57806345ec9354146101c05780634dda27e8146101d857600080fd5b806301ffc9a7146100ed578063119df25f14610122578063154510201461014f575b600080fd5b3480156100f957600080fd5b5061010d6101083660046142c3565b6102f8565b60405190151581526020015b60405180910390f35b34801561012e57600080fd5b50610137610391565b6040516001600160a01b039091168152602001610119565b34801561015b57600080fd5b5061010d61016a366004614461565b6103a0565b34801561017b57600080fd5b5061018f61018a3660046144e6565b61067a565b604051908152602001610119565b3480156101a957600080fd5b5061010d6101b83660046144e6565b600092915050565b3480156101cc57600080fd5b5036601f19013561018f565b3480156101e457600080fd5b506101f86101f3366004614508565b61069e565b6040516101199190614587565b61021861021336600461468d565b6106e8565b005b34801561022657600080fd5b5061018f6102353660046146dd565b6108b2565b34801561024657600080fd5b5061025a61025536600461475c565b610b8c565b604080519384529115156020840152151590820152606001610119565b34801561028357600080fd5b5061010d610292366004614889565b610fc3565b34801561021857600080fd5b3480156102af57600080fd5b5061010d6102be3660046144e6565b611099565b3480156102cf57600080fd5b50610137611153565b3480156102e457600080fd5b506102186102f336600461468d565b61115d565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee12700000000000000000000000000000000000000000000000000000000148061038b57507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b600061039b6113d6565b905090565b600160005b8551811015610505576103b6611153565b6001600160a01b031663fa1becc48783815181106103d6576103d66148d9565b60200260200101516040518263ffffffff1660e01b81526004016103fc91815260200190565b602060405180830381865afa158015610419573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061043d91906148ef565b61044a5760009150610505565b610452611153565b6001600160a01b031663f48a3972878381518110610472576104726148d9565b602002602001015186866040518463ffffffff1660e01b81526004016104af9392919092835261ffff918216602084015216604082015260600190565b602060405180830381865afa1580156104cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104f091906148ef565b6104fd5760009150610505565b6001016103a5565b5080156106725760005b845181101561067057610520611153565b6001600160a01b031663fa1becc4868381518110610540576105406148d9565b60200260200101516040518263ffffffff1660e01b815260040161056691815260200190565b602060405180830381865afa158015610583573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105a791906148ef565b156105b55760009150610670565b6105bd611153565b6001600160a01b031663f48a39728683815181106105dd576105dd6148d9565b602002602001015186866040518463ffffffff1660e01b815260040161061a9392919092835261ffff918216602084015216604082015260600190565b602060405180830381865afa158015610637573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061065b91906148ef565b6106685760009150610670565b60010161050f565b505b949350505050565b600061068d8366038d7ea4c68000614927565b6106979083614954565b9392505050565b6106df6040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b61038b82611408565b60006106f384611408565b9050806020015160001415801561070c57506040810151155b61075d5760405162461bcd60e51b815260206004820181905260248201527f434f4d4241542053595354454d3a20494e56414c494420454e434f554e54455260448201526064015b60405180910390fd5b80608001518160600151106107b45760405162461bcd60e51b815260206004820181905260248201527f434f4d4241542053595354454d3a204558504952454420454e434f554e5445526044820152606401610754565b6107bc610391565b6001600160a01b03166107cd611153565b6001600160a01b0316634f10aabc856040518263ffffffff1660e01b81526004016107fa91815260200190565b602060405180830381865afa158015610817573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061083b9190614968565b6001600160a01b031614801561085657506108568385611099565b6108a25760405162461bcd60e51b815260206004820152601c60248201527f434f4d4241542053595354454d3a204e4f4e2d434f4d424154414e54000000006044820152606401610754565b6108ac84836114f3565b50505050565b60006108c56108bf610391565b84610fc3565b6109115760405162461bcd60e51b815260206004820152601d60248201527f434f4d4241542053595354454d3a20494e56414c49442053454e4445520000006044820152606401610754565b6000806109378560008151811061092a5761092a6148d9565b602002602001015161158d565b9150915085600181111561094d5761094d614521565b600103610a3557610960858584846103a0565b6109ac5760405162461bcd60e51b815260206004820152601a60248201527f434f4d4241542053595354454d3a20494e56414c4944205056450000000000006044820152606401610754565b60405142906109c5908890889088908590602001614985565b60405160208183030381529060405280519060200120935060006040518060e001604052808960018111156109fc576109fc614521565b81526020018381526020016000815260200160008152602001600f8152602001878152602001888152509050610a32858261163e565b50505b856001811115610a4757610a47614521565b5060005b8451811015610af2576000801b610a7a868381518110610a6d57610a6d6148d9565b60200260200101516116ff565b14610ac75760405162461bcd60e51b815260206004820152601e60248201527f434f4d4241542053595354454d3a20454e54495459204f4343555049454400006044820152606401610754565b610aea858281518110610adc57610adc6148d9565b602002602001015185611790565b600101610a4b565b5060005b8551811015610b82576000801b610b18878381518110610a6d57610a6d6148d9565b14610b655760405162461bcd60e51b815260206004820152601e60248201527f434f4d4241542053595354454d3a20454e54495459204f4343555049454400006044820152606401610754565b610b7a868281518110610adc57610adc6148d9565b600101610af6565b5050509392505050565b600080600080610b9a611153565b6001600160a01b03166354f1f2db896040518263ffffffff1660e01b8152600401610bc791815260200190565b61010060405180830381865afa158015610be5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c0991906149c9565b90506000610c15611153565b6001600160a01b03166354f1f2db896040518263ffffffff1660e01b8152600401610c4291815260200190565b61010060405180830381865afa158015610c60573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c8491906149c9565b90506000610c90611153565b6001600160a01b031663810c1dc1896040518263ffffffff1660e01b8152600401610cbd91815260200190565b600060405180830381865afa158015610cda573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610d029190810190614aa0565b905060008260a001511315610fa8576040517f4dddf8370000000000000000000000000000000000000000000000000000000081526004810188905260009073__$227e4555c1f608352b26068e438454dd8b$__90634dddf83790602401600060405180830381865af4158015610d7d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610da59190810190614b57565b9050610dfc81600081518110610dbd57610dbd6148d9565b602002602001015167ffffffffffffffff1682600181518110610de257610de26148d9565b602002602001015167ffffffffffffffff168e8787611844565b90965094508515610f5f57620186a060008d602001518560600151610e219190614bfc565b13610e2d576001610e41565b8c602001518460600151610e419190614bfc565b610e4b9190614927565b8451620186a090610e5e90600290614c1c565b8460a00151856080015185600281518110610e7b57610e7b6148d9565b602002602001015167ffffffffffffffff16610e979190614954565b1115610ed657846080015184600281518110610eb557610eb56148d9565b602002602001015167ffffffffffffffff16610ed19190614954565b610edc565b8460a001515b8f51610ee89190614c30565b610ef29190614c30565b610efc9190614c50565b610f069190614bfc565b96508415610f5a57610f4c6040518060400160405280600581526020017f43524954210000000000000000000000000000000000000000000000000000008152506118d7565b610f57600288614c50565b96505b610fa2565b610f9d6040518060400160405280600581526020017f4d495353210000000000000000000000000000000000000000000000000000008152506118d7565b600096505b50610fb5565b6000955060009450600093505b505050955095509592505050565b6000805b825181101561109257610fd8611153565b6001600160a01b0316634f10aabc848381518110610ff857610ff86148d9565b60200260200101516040518263ffffffff1660e01b815260040161101e91815260200190565b602060405180830381865afa15801561103b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061105f9190614968565b6001600160a01b0316846001600160a01b0316036110805760019150611092565b8061108a81614c9c565b915050610fc7565b5092915050565b6000806110a583611408565b905060005b8160c00151518110156110f6578160c0015181815181106110cd576110cd6148d9565b602002602001015185036110e457600192506110f6565b806110ee81614c9c565b9150506110aa565b50816110925760005b8160a001515181101561114b578160a001518181518110611122576111226148d9565b60200260200101518503611139576001925061114b565b8061114381614c9c565b9150506110ff565b505092915050565b600061039b61194b565b61116e30611169610391565b611955565b600061117983611408565b905060005b82518110156111cc57600083828151811061119b5761119b6148d9565b602002602001015190506111c38582604001518360000151846020015185606001518b61196b565b5060010161117e565b50606081018051906111dd82614c9c565b905250600080805b8360a001515181101561131c57600061121a8560a00151838151811061120d5761120d6148d9565b6020026020010151611a08565b905060008113611313578361122e81614c9c565b9450508460000151600181111561124757611247614521565b60ff1660000361131357611259611153565b6001600160a01b031663fa1becc48660a00151848151811061127d5761127d6148d9565b60200260200101516040518263ffffffff1660e01b81526004016112a391815260200190565b602060405180830381865afa1580156112c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112e491906148ef565b15611313576113138560a001518381518110611302576113026148d9565b60200260200101516000801b611790565b506001016111e5565b5060005b8360c00151518110156113815760006113488560c00151838151811061120d5761120d6148d9565b905060008113611378578261135c81614c9c565b9350506113788560c001518381518110611302576113026148d9565b50600101611320565b508260c001515181148061139957508260a001515182145b806113ab575082608001518360600151145b156113ce574360408401526113c0858461163e565b6113ca8587611a9a565b5050505b505050505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c806114055750335b90565b6114496040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061147f5761147f6148d9565b6020908102919091010152600080806114d87f74625544000000000000000000000000436f6d626174456e636f756e74657200857e81050201202020200000000000000000000000000000000000000000000000611d65565b9250925092506114e9838383611e35565b9695505050505050565b611588826001848460405160200161150c929190614cb6565b60408051601f198184030181529082905261152b939291602401614d86565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb2aa60a400000000000000000000000000000000000000000000000000000000179052611ee2565b505050565b604080516001808252818301909252600091829182916020808301908036833701905050905083816000815181106115c7576115c76148d9565b6020908102919091010152600080806116207f74625544000000000000000000000000506f736974696f6e0000000000000000857e04020002020000000000000000000000000000000000000000000000000000611d65565b925092509250611631838383611f90565b9550955050505050915091565b600061166182600001518360200151846040015185606001518660800151611fb3565b905060006116778360a001518460c00151611fe8565b9050600061168d8460a001518560c0015161200c565b604080516001808252818301909252919250600091906020808301908036833701905050905085816000815181106116c7576116c76148d9565b60209081029190910101526113ce7f74625544000000000000000000000000436f6d626174456e636f756e7465720082868686612048565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110611738576117386148d9565b602090810291909101015260006106727f746255440000000000000000000000004d61746368456e74697479000000000083837e400200202000000000000000000000000000000000000000000000000000006120fd565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106117c6576117c66148d9565b6020026020010181815250506115887f746255440000000000000000000000004d61746368456e74697479000000000060001b8260008560405160200161180f91815260200190565b60408051601f198184030181529190527e400200202000000000000000000000000000000000000000000000000000006121ba565b60008080620249f06118586103e88a614954565b61186a87602001518960400151612230565b6118749190614dae565b61187e9190614927565b90506000620186a085602001516103e88a6118999190614954565b6118a39190614dae565b6118ad9190614927565b9050808211935083156118cb5760026118c68284614c1c565b101592505b50509550959350505050565b611948816040516024016118eb9190614dc1565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f41304fac0000000000000000000000000000000000000000000000000000000017905261225d565b50565b600061039b612266565b611967611961836122a5565b82612342565b5050565b60006119768661238e565b8051909150600381111561198c5761198c614521565b60ff166001036119ff57600081602001518060200190518101906119b09190614dd4565b905060008060006119c4848a8a8a8a610b8c565b9194509250905060006119da620186a085614e69565b6119e38a611a08565b6119ed9190614bfc565b90506119f98982612443565b50505050505b50505050505050565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110611a4157611a416148d9565b602090810291909101015260006106727f74625544000000000000000000000000537461747300000000000000000000008360057ee10800202001202020202000000000000000000000000000000000000000006120fd565b606080600080611aa986611408565b9050600080611ab661426d565b60005b8460c0015151811015611b2357611aec8560c001518281518110611adf57611adf6148d9565b60200260200101516124f7565b91508160e0015184611afe9190614dae565b935060008260a001511315611b1b5782611b1781614c9c565b9350505b600101611ab9565b5060008060005b8660a0015151811015611baa57611b508760a001518281518110611adf57611adf6148d9565b935060008460a0015113611ba25760c0840151611b6d9083614dae565b9150611b7d8460e001518c61067a565b611b879084614dae565b9250611ba28760a001518281518110611302576113026148d9565b600101611b2a565b506000805b8760c0015151811015611d56578760c001518181518110611bd257611bd26148d9565b60200260200101519150611be4611153565b6001600160a01b031663fa1becc4836040518263ffffffff1660e01b8152600401611c1191815260200190565b602060405180830381865afa158015611c2e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c5291906148ef565b15611d4357611c60826124f7565b945060008560a001511315611d39578315611d0557611c7d611153565b6001600160a01b031663fda0ce5083611c968988614c1c565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815260048101929092526024820152604401600060405180830381600087803b158015611cec57600080fd5b505af1158015611d00573d6000803e3d6000fd5b505050505b600083118015611d155750600086115b15611d3957611d248684614c1c565b8560c001818151611d359190614dae565b9052505b611d43828661259f565b611d4e826000611790565b600101611baf565b50505050505050509250925092565b6060600060606000611d75612266565b9050306001600160a01b03821603611d9e57611d92878787612648565b93509350935050611e2c565b6040517f419b58fd0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063419b58fd90611de7908a908a908a90600401614eb3565b600060405180830381865afa158015611e04573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611d929190810190614f40565b93509350939050565b611e766040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b611e7f84612750565b6080860181905260608601829052604086018390526020860184905285856001811115611eae57611eae614521565b6001811115611ebf57611ebf614521565b8152505050505050611ed183836127a0565b60c083015260a08201529392505050565b6060600080611ef8611ef385614fa3565b6127ef565b91509150816000801b03611f5e576040517ffdde54e20000000000000000000000000000000000000000000000000000000081527fffffffff00000000000000000000000000000000000000000000000000000000600035166004820152602401610754565b6020840180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff168217905261067282856128b2565b60208301516022840151600091829160f091821c911c5b90969095509350505050565b60608585858585604051602001611fce959493929190614fef565b604051602081830303815290604052905095945050505050565b600061069783516020028351602002606081901b603883901b838301171792915050565b60606120178361298d565b6120208361298d565b60405160200161203192919061502a565b604051602081830303815290604052905092915050565b6000612052612266565b9050306001600160a01b0382160361207657612071868686868661299d565b6113ce565b6040517f298314fb0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063298314fb906120c39089908990899089908990600401615059565b600060405180830381600087803b1580156120dd57600080fd5b505af11580156120f1573d6000803e3d6000fd5b50505050505050505050565b600080612108612266565b9050306001600160a01b0382160361212e57612126868686866129ba565b915050610672565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d599061217990899089908990899060040161509e565b602060405180830381865afa158015612196573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061212691906150cd565b60006121c4612266565b9050306001600160a01b038216036121e35761207186868686866129f0565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae0906120c390899089908990899089906004016150e6565b600080821261224a576122438284614dae565b905061038b565b6122538261512d565b6122439084615165565b61194881612a05565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b0316806122a0573391505090565b919050565b60408051600180825281830190925260009182919060208083019080368337019050509050826001600160a01b031660001b816000815181106122ea576122ea6148d9565b602090810291909101015260006106727f7462776f726c6400000000000000000053797374656d5265676973747279000083837e200100200000000000000000000000000000000000000000000000000000006120fd565b61234c8282612a26565b6119675761235982612a84565b816040517fd787b737000000000000000000000000000000000000000000000000000000008152600401610754929190615178565b6040805180820190915260008152606060208201526040805160018082528183019092526000916020808301908036833701905050905082816000815181106123d9576123d96148d9565b6020908102919091010152600080806124327f74625544000000000000000000000000416374696f6e73000000000000000000857e01010101000000000000000000000000000000000000000000000000000000611d65565b9250925092506114e9838383612bc1565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110612479576124796148d9565b6020026020010181815250506115887f746255440000000000000000000000005374617473000000000000000000000060001b826005856040516020016124c291815260200190565b60408051601f198184030181529190527ee10800202001202020202000000000000000000000000000000000000000006121ba565b6124ff61426d565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110612535576125356148d9565b60209081029190910101526000808061258e7f7462554400000000000000000000000053746174730000000000000000000000857ee1080020200120202020200000000000000000000000000000000000000000611d65565b9250925092506114e9838383612c1e565b60006125d1826000015183602001518460400151856060015186608001518760a001518860c001518960e00151612c96565b604080516001808252818301909252919250600091606091839190602080830190803683370190505090508581600081518110612610576126106148d9565b60209081029190910101526113ce7f746255440000000000000000000000005374617473000000000000000000000082868686612048565b606060006060600061265985612cd4565b9050612666878783612cf7565b9350600061267386612d30565b90508015612745576126858888612d6d565b935066ffffffffffffff841667ffffffffffffffff8111156126a9576126a9614305565b6040519080825280601f01601f1916602001820160405280156126d3576020820181803683370190505b5092506020830160005b828160ff1610156127425760006126f58b8b84612d80565b90506000612712888460ff166028026038011c64ffffffffff1690565b90506127218260008387612e00565b61272b8185614dae565b93505050808061273a906151a3565b9150506126dd565b50505b505093509350939050565b6000806000806000612766866000016020015190565b60f81c600181111561277a5761277a614521565b602187015160418801516061890151608190990151929991989097509550909350915050565b6060806000603885901c64ffffffffff166127c46127bf868484612ecc565b612f5a565b935090508064ffffffffff606087901c16016127e46127bf868484612ecc565b925050509250929050565b6040805160018082528183019092526000918291829160208083019080368337019050509050837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681600081518110612848576128486148d9565b6020908102919091010152600080806128a17f7462776f726c6400000000000000000046756e6374696f6e53656c6563746f72857e24020020040000000000000000000000000000000000000000000000000000611d65565b925092509250611631838383612f6b565b606060006128be61194b565b90506001600160a01b03811630036128ff5760006128e66128dd6113d6565b60008787612f77565b93509050806128f8576128f8836130b2565b505061038b565b6040517f3ae7af080000000000000000000000000000000000000000000000000000000081526001600160a01b03821690633ae7af089061294690879087906004016151c2565b6000604051808303816000875af1158015612965573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261067291908101906151db565b60608161069781602060006130ba565b6129b385858585856129ae8b61311a565b61319f565b5050505050565b60006129e76129c986866134d8565b60ff858116601b0360080285901c166129e2858761352e565b613567565b95945050505050565b6129b385856129ff848761352e565b856135b8565b80516a636f6e736f6c652e6c6f67602083016000808483855afa5050505050565b6000612a747f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff0000000000000000000000000000000085161783613853565b8061069757506106978383613853565b606081601081901b6000612a978361391c565b9050827fffffffffffffffffffffffffffff000000000000000000000000000000000000831615612af257612aed7fffffffffffffffffffffffffffff0000000000000000000000000000000000008416613933565b612b29565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b7fffffffffffffffffffffffffffffffff00000000000000000000000000000000831615612b5f57612b5a83613933565b612b96565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b604051602001612ba893929190615210565b6040516020818303038152906040529350505050919050565b604080518082019091526000815260606020820152612bdf846139d7565b81906003811115612bf257612bf2614521565b90816003811115612c0557612c05614521565b905250612c1283836139f3565b60208201529392505050565b612c2661426d565b612c2f84613a16565b60e0890181905260c0890182905260a089018390526080890184905260608901859052886020810160408201886002811115612c6d57612c6d614521565b6002811115612c7e57612c7e614521565b90529790975250505093909252509195945050505050565b60608888888888888888604051602001612cb798979695949392919061529e565b604051602081830303815290604052905098975050505050505050565b60006008612ce460026020615165565b612cee9190614927565b9190911c919050565b606081600003612d165750604080516020810190915260008152610697565b6000612d2285856134d8565b90506129e781600085613a84565b60006008600180612d4360026020615165565b612d4d9190615165565b612d579190615165565b612d619190614927565b8260ff911c1692915050565b6000610697612d7c8484613aa7565b5490565b60008383604051602001612d959291906152e3565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b8215612e875760208310612e2a57602083048401935060208381612e2657612e2661493e565b0692505b8215612e87576020839003600081841015612e4d5750600019600884021c612e57565b50600019600882021c5b8554600886021b818451168219821617845250818411612e785750506108ac565b50600194909401939182900391015b5b60208210612ea95783548152600190930192601f1990910190602001612e88565b81156108ac576000600019600884021c8251865482191691161782525050505050565b600081831180612edc5750835182115b15612f19578383836040517f23230fa30000000000000000000000000000000000000000000000000000000081526004016107549392919061531f565b60208401612f278482614dae565b90506000612f358585615165565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b606060006106978360206000613afd565b600080611fa785613b6c565b60006060600080612f8786613b81565b90925090506001600160a01b038216612fd85785612fa487612a84565b6040517ffbf10ce60000000000000000000000000000000000000000000000000000000081526004016107549291906151c2565b80612fe757612fe78689613c25565b8615613053577dffffffffffffffffffffffffffff0000000000000000000000000000000086167f6e7300000000000000000000000000000000000000000000000000000000000017600061303b82613c2f565b90506130508261304b8b84614dae565b613cc0565b50505b600061305f8760101b90565b7fffffffffffffffffffffffffffff00000000000000000000000000000000000016146130975761309288888488613d74565b6130a3565b6130a388888488613dec565b90999098509650505050505050565b805160208201fd5b825160609060006130cb8583614927565b9050604051925060208301601f19603f83860101166040528184526000602088015b8482101561310e578051871b835291870191600191909101906020016130ed565b50505050509392505050565b60007f8b9d8c8b908d9affffffffffffffffffab9e9d939a8d00000000000000000000820161316957507e60030220202000000000000000000000000000000000000000000000000000919050565b61038b6131967f746273746f72650000000000000000005461626c65730000000000000000000084613e4d565b60206000613567565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff000000000000000000000000000000000000000000000000000000000000160361322b57857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a98686868660405161321e9493929190615344565b60405180910390a26113ce565b600061323687613e69565b905060005b815181101561330f576000828281518110613258576132586148d9565b602002602001015190506132846001826affffffffffffffffffffff1916613ef290919063ffffffff16565b15613306576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c906132d3908c908c908c908c908c908c9060040161538e565b600060405180830381600087803b1580156132ed57600080fd5b505af1158015613301573d6000803e3d6000fd5b505050505b5060010161323b565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9878787876040516133469493929190615344565b60405180910390a2600061335a88886134d8565b90506000602087019050613372826000895184613f10565b600061337d85612d30565b111561340157600061338f8a8a613aa7565b878155905060208601915060008060005b6133a988612d30565b8160ff1610156133fc576133be8d8d83612d80565b92506133d98a8260ff166028026038011c64ffffffffff1690565b91506133e88360008488613f10565b6133f28286614dae565b94506001016133a0565b505050505b60005b83518110156120f1576000848281518110613421576134216148d9565b6020026020010151905061344d6002826affffffffffffffffffffff1916613ef290919063ffffffff16565b156134cf576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf9061349c908e908e908e908e908e908e9060040161538e565b600060405180830381600087803b1580156134b657600080fd5b505af11580156134ca573d6000803e3d6000fd5b505050505b50600101613404565b600082826040516020016134ed9291906152e3565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff1681101561355f5761355560ff601b83900360080287901c1683614dae565b9150600101613533565b509392505050565b60006020821061358d576020820484019350602082816135895761358961493e565b0691505b508254600882021b60208290038084111561355f576001850154600882021c82179150509392505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff000000000000000000000000000000000000000000000000000000000000160361364257837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be848484604051613635939291906153e7565b60405180910390a26108ac565b600061364e85856134d8565b9050600061365b86613e69565b905060005b815181101561373057600082828151811061367d5761367d6148d9565b602002602001015190506136a96004826affffffffffffffffffffff1916613ef290919063ffffffff16565b15613727576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d906136f4908b908b908b908b9060040161541a565b600060405180830381600087803b15801561370e57600080fd5b505af1158015613722573d6000803e3d6000fd5b505050505b50600101613660565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be868686604051613765939291906153e7565b60405180910390a2613780828565ffffffffffff1685613fcf565b60005b81518110156119ff5760008282815181106137a0576137a06148d9565b602002602001015190506137cc6008826affffffffffffffffffffff1916613ef290919063ffffffff16565b1561384a576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba872190613817908b908b908b908b9060040161541a565b600060405180830381600087803b15801561383157600080fd5b505af1158015613845573d6000803e3d6000fd5b505050505b50600101613783565b60408051600280825260608201835260009283929190602083019080368337019050509050838160008151811061388c5761388c6148d9565b602002602001018181525050826001600160a01b031660001b816001815181106138b8576138b86148d9565b602090810291909101015260006139107f7462776f726c640000000000000000005265736f75726365416363657373000083837e010100010000000000000000000000000000000000000000000000000000006120fd565b90506129e78160f81c90565b600061392a60706010614dae565b9190911b919050565b606060005b6010811015613998577fffffffffffffffffffffffffffffffff000000000000000000000000000000008316600882021b7fff00000000000000000000000000000000000000000000000000000000000000161561399857600101613938565b604080517fffffffffffffffffffffffffffffffff00000000000000000000000000000000851660208201528151603090910190915281815280610672565b602081015160009060f81c600381111561038b5761038b614521565b60606000603884901c64ffffffffff166129e7613a11858484612ecc565b613fe5565b600080600080600080600080613a30896000016020015190565b60408a015160608b0151919950975060f81c6002811115613a5357613a53614521565b60618a015160818b015160a18c015160c18d015160e1909d01519b9d9a9c939b929a91995097509195509350915050565b60405160208101601f19603f848401011660405282825261355f85858584612e00565b60008282604051602001613abc9291906152e3565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b60606000613b0b8560801c90565b90506fffffffffffffffffffffffffffffffff85166000858281613b3157613b3161493e565b04905060405193506020840160208202810160405281855260005b8281101561310e578451871c825293870193602090910190600101613b4c565b602081015160408201516000905b9050915091565b60408051600180825281830190925260009182918291602080830190803683370190505090508381600081518110613bbb57613bbb6148d9565b602090810291909101015260008080613c147f7462776f726c6400000000000000000053797374656d73000000000000000000857e15020014010000000000000000000000000000000000000000000000000000612648565b925092509250611631838383614065565b61234c8282614071565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110613c6857613c686148d9565b602090810291909101015260006106727f7462776f726c6400000000000000000042616c616e636573000000000000000083837e200100200000000000000000000000000000000000000000000000000000006129ba565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110613cf657613cf66148d9565b6020026020010181815250506115887f7462776f726c6400000000000000000042616c616e636573000000000000000060001b82600085604051602001613d3f91815260200190565b60408051601f198184030181529190527e200100200000000000000000000000000000000000000000000000000000006129f0565b60006060836001600160a01b03166000613d8f8589896140cf565b604051613d9c9190615453565b60006040518083038185875af1925050503d8060008114613dd9576040519150601f19603f3d011682016040523d82523d6000602084013e613dde565b606091505b509097909650945050505050565b60006060836001600160a01b0316613e058488886140cf565b604051613e129190615453565b600060405180830381855af49150503d8060008114613dd9576040519150601f19603f3d011682016040523d82523d6000602084013e613dde565b60408051602081018490529081018290526000906060016134ed565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110613ea357613ea36148d9565b60209081029190910101526000613edb7f746273746f726500000000000000000053746f7265486f6f6b7300000000000083836140fe565b9050610672613eed8260008451612ecc565b614138565b60008160ff1682613f038560581c90565b1660ff1614905092915050565b8215613f8a5760208310613f3a57602083048401935060208381613f3657613f3661493e565b0692505b8215613f8a5760208390036000600019600885021c1990506008850281811c91508351811c9050811987541682821617875550818411613f7b5750506108ac565b50600194909401939182900391015b5b60208210613fac5780518455600190930192601f1990910190602001613f8b565b81156108ac576000600019600884021c8554835182191691161785555050505050565b61158883838351613fe08560200190565b613f10565b60606000613ff38360801c90565b90506fffffffffffffffffffffffffffffffff83168067ffffffffffffffff81111561402157614021614305565b6040519080825280601f01601f19166020018201604052801561404b576020820181803683370190505b5092506020830161405d838284614149565b505050919050565b600080611fa785614194565b60006140bf7f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617836141b0565b80610697575061069783836141b0565b60608383836040516020016140e69392919061546f565b60405160208183030381529060405290509392505050565b606061067261410e858585612d80565b60006141338561411e8989612d6d565b9060ff166028026038011c64ffffffffff1690565b613a84565b606060006106978360156000613afd565b5b60208110614169578251825260209283019290910190601f190161414a565b8060000361417657505050565b6000600019600883021c905080835116811985511617835250505050565b6020810151603482015160609190911c9060009060f81c613b7a565b6040805160028082526060820183526000928392919060208301908036833701905050905083816000815181106141e9576141e96148d9565b602002602001018181525050826001600160a01b031660001b81600181518110614215576142156148d9565b602090810291909101015260006139107f7462776f726c640000000000000000005265736f75726365416363657373000083837e010100010000000000000000000000000000000000000000000000000000006129ba565b60405180610100016040528060008152602001600081526020016000600281111561429a5761429a614521565b815260200160008152602001600081526020016000815260200160008152602001600081525090565b6000602082840312156142d557600080fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461069757600080fd5b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff8111828210171561433e5761433e614305565b60405290565b60405160a0810167ffffffffffffffff8111828210171561433e5761433e614305565b604051610100810167ffffffffffffffff8111828210171561433e5761433e614305565b604051601f8201601f1916810167ffffffffffffffff811182821017156143b4576143b4614305565b604052919050565b600067ffffffffffffffff8211156143d6576143d6614305565b5060051b60200190565b600082601f8301126143f157600080fd5b81356020614406614401836143bc565b61438b565b8083825260208201915060208460051b87010193508684111561442857600080fd5b602086015b84811015614444578035835291830191830161442d565b509695505050505050565b803561ffff811681146122a057600080fd5b6000806000806080858703121561447757600080fd5b843567ffffffffffffffff8082111561448f57600080fd5b61449b888389016143e0565b955060208701359150808211156144b157600080fd5b506144be878288016143e0565b9350506144cd6040860161444f565b91506144db6060860161444f565b905092959194509250565b600080604083850312156144f957600080fd5b50508035926020909101359150565b60006020828403121561451a57600080fd5b5035919050565b634e487b7160e01b600052602160045260246000fd5b6002811061454757614547614521565b9052565b60008151808452602080850194506020840160005b8381101561457c57815187529582019590820190600101614560565b509495945050505050565b60208152614599602082018351614537565b602082015160408201526040820151606082015260608201516080820152608082015160a0820152600060a083015160e060c08401526145dd61010084018261454b565b905060c0840151601f198483030160e08501526129e7828261454b565b600082601f83011261460b57600080fd5b8135602061461b614401836143bc565b82815260079290921b8401810191818101908684111561463a57600080fd5b8286015b8481101561444457608081890312156146575760008081fd5b61465f61431b565b813581528482013585820152604080830135908201526060808301359082015283529183019160800161463e565b6000806000606084860312156146a257600080fd5b8335925060208401359150604084013567ffffffffffffffff8111156146c757600080fd5b6146d3868287016145fa565b9150509250925092565b6000806000606084860312156146f257600080fd5b83356002811061470157600080fd5b9250602084013567ffffffffffffffff8082111561471e57600080fd5b61472a878388016143e0565b9350604086013591508082111561474057600080fd5b506146d3868287016143e0565b60ff8116811461194857600080fd5b600080600080600060a0868803121561477457600080fd5b853567ffffffffffffffff8082111561478c57600080fd5b9087019060a0828a0312156147a057600080fd5b6147a8614344565b823581526020808401358183015260408401356040830152606084013560608301526080840135838111156147dc57600080fd5b8085019450508a601f8501126147f157600080fd5b83359250614801614401846143bc565b83815260059390931b8401810192818101908c85111561482057600080fd5b948201945b848610156148475785356148388161474d565b82529482019490820190614825565b608084810191909152929c918b01359b505060408a01359960608101359950909101359650945050505050565b6001600160a01b038116811461194857600080fd5b6000806040838503121561489c57600080fd5b82356148a781614874565b9150602083013567ffffffffffffffff8111156148c357600080fd5b6148cf858286016143e0565b9150509250929050565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561490157600080fd5b8151801515811461069757600080fd5b634e487b7160e01b600052601160045260246000fd5b808202811582820484141761038b5761038b614911565b634e487b7160e01b600052601260045260246000fd5b6000826149635761496361493e565b500690565b60006020828403121561497a57600080fd5b815161069781614874565b61498f8186614537565b6080602082015260006149a5608083018661454b565b82810360408401526149b7818661454b565b91505082606083015295945050505050565b600061010082840312156149dc57600080fd5b6149e4614367565b825181526020830151602082015260408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e08201528091505092915050565b600082601f830112614a4957600080fd5b81516020614a59614401836143bc565b8083825260208201915060208460051b870101935086841115614a7b57600080fd5b602086015b84811015614444578051614a938161474d565b8352918301918301614a80565b600060208284031215614ab257600080fd5b815167ffffffffffffffff80821115614aca57600080fd5b908301906101008286031215614adf57600080fd5b614ae7614367565b82518152602083015182811115614afd57600080fd5b614b0987828601614a38565b60208301525060408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e082015280935050505092915050565b60006020808385031215614b6a57600080fd5b825167ffffffffffffffff80821115614b8257600080fd5b818501915085601f830112614b9657600080fd5b8151614ba4614401826143bc565b81815260059190911b83018401908481019088831115614bc357600080fd5b938501935b82851015614bf05784518481168114614be15760008081fd5b82529385019390850190614bc8565b98975050505050505050565b818103600083128015838313168383128216171561109257611092614911565b600082614c2b57614c2b61493e565b500490565b808201828112600083128015821682158216171561114b5761114b614911565b808202600082127f800000000000000000000000000000000000000000000000000000000000000084141615614c8857614c88614911565b818105831482151761038b5761038b614911565b60006000198203614caf57614caf614911565b5060010190565b60006040808301858452602060406020860152818651808452606093506060870191506020880160005b82811015614d1757815180518552858101518686015287810151888601528601518685015260809093019290840190600101614ce0565b50919998505050505050505050565b6003811061194857611948614521565b60005b83811015614d51578181015183820152602001614d39565b50506000910152565b60008151808452614d72816020860160208601614d36565b601f01601f19169290920160200192915050565b838152614d9283614d26565b8260208201526060604082015260006129e76060830184614d5a565b8082018082111561038b5761038b614911565b6020815260006106976020830184614d5a565b600060208284031215614de657600080fd5b815167ffffffffffffffff80821115614dfe57600080fd5b9083019060a08286031215614e1257600080fd5b614e1a614344565b82518152602083015160208201526040830151604082015260608301516060820152608083015182811115614e4e57600080fd5b614e5a87828601614a38565b60808301525095945050505050565b600082614e7857614e7861493e565b60001983147f800000000000000000000000000000000000000000000000000000000000000083141615614eae57614eae614911565b500590565b838152606060208201526000614ecc606083018561454b565b9050826040830152949350505050565b600082601f830112614eed57600080fd5b815167ffffffffffffffff811115614f0757614f07614305565b614f1a6020601f19601f8401160161438b565b818152846020838601011115614f2f57600080fd5b610672826020830160208701614d36565b600080600060608486031215614f5557600080fd5b835167ffffffffffffffff80821115614f6d57600080fd5b614f7987838801614edc565b9450602086015193506040860151915080821115614f9657600080fd5b506146d386828701614edc565b6000815160208301517fffffffff000000000000000000000000000000000000000000000000000000008082169350600483101561405d5760049290920360031b82901b161692915050565b60006002871061500157615001614521565b5060f89590951b8552600185019390935260218401919091526041830152606182015260810190565b6000835161503c818460208801614d36565b835190830190615050818360208801614d36565b01949350505050565b85815260a06020820152600061507260a083018761454b565b82810360408401526150848187614d5a565b90508460608401528281036080840152614bf08185614d5a565b8481526080602082015260006150b7608083018661454b565b60ff949094166040830152506060015292915050565b6000602082840312156150df57600080fd5b5051919050565b85815260a0602082015260006150ff60a083018761454b565b60ff86166040840152828103606084015261511a8186614d5a565b9150508260808301529695505050505050565b60007f8000000000000000000000000000000000000000000000000000000000000000820361515e5761515e614911565b5060000390565b8181038181111561038b5761038b614911565b60408152600061518b6040830185614d5a565b90506001600160a01b03831660208301529392505050565b600060ff821660ff81036151b9576151b9614911565b60010192915050565b8281526040602082015260006106726040830184614d5a565b6000602082840312156151ed57600080fd5b815167ffffffffffffffff81111561520457600080fd5b61067284828501614edc565b7fffff0000000000000000000000000000000000000000000000000000000000008416815260007f3a000000000000000000000000000000000000000000000000000000000000008060028401528451615271816003860160208901614d36565b808401905081600382015284519150615291826004830160208801614d36565b0160040195945050505050565b8881528760208201526152b087614d26565b60f89690961b604087015260418601949094526061850192909252608184015260a183015260c182015260e10192915050565b8281526000602080830184516020860160005b82811015615312578151845292840192908401906001016152f6565b5091979650505050505050565b6060815260006153326060830186614d5a565b60208301949094525060400152919050565b608081526000615357608083018761454b565b82810360208401526153698187614d5a565b905084604084015282810360608401526153838185614d5a565b979650505050505050565b86815260c0602082015260006153a760c083018861454b565b82810360408401526153b98188614d5a565b905085606084015282810360808401526153d38186614d5a565b9150508260a0830152979650505050505050565b6060815260006153fa606083018661454b565b65ffffffffffff8516602084015282810360408401526114e98185614d5a565b848152608060208201526000615433608083018661454b565b65ffffffffffff8516604084015282810360608401526153838185614d5a565b60008251615465818460208701614d36565b9190910192915050565b60008451615481818460208901614d36565b60609490941b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000169190930190815260148101919091526034019291505056fea2646970667358221220ff778f66bade81d5692f1a1523643d0baa6c61b3feb3e1678d6dc51940edd0f064736f6c63430008180033","sourceMap":"1228:13971:212:-:0;;;;;;;;;;;;;;;;;;;","linkReferences":{"src/libraries/LibChunks.sol":{"LibChunks":[{"start":3427,"length":20}]}}},"deployedBytecode":{"object":"0x6080604052600436106100e85760003560e01c806398d239b11161008a578063bfea0b8511610059578063bfea0b8514610297578063c6ca743c146102a3578063e1af802c146102c3578063fc88ff63146102d857600080fd5b806398d239b114610205578063aaa417b71461021a578063b127ae901461023a578063b24678941461027757600080fd5b8063195e75c4116100c6578063195e75c41461016f57806332aeffdf1461019d57806345ec9354146101c05780634dda27e8146101d857600080fd5b806301ffc9a7146100ed578063119df25f14610122578063154510201461014f575b600080fd5b3480156100f957600080fd5b5061010d6101083660046142c3565b6102f8565b60405190151581526020015b60405180910390f35b34801561012e57600080fd5b50610137610391565b6040516001600160a01b039091168152602001610119565b34801561015b57600080fd5b5061010d61016a366004614461565b6103a0565b34801561017b57600080fd5b5061018f61018a3660046144e6565b61067a565b604051908152602001610119565b3480156101a957600080fd5b5061010d6101b83660046144e6565b600092915050565b3480156101cc57600080fd5b5036601f19013561018f565b3480156101e457600080fd5b506101f86101f3366004614508565b61069e565b6040516101199190614587565b61021861021336600461468d565b6106e8565b005b34801561022657600080fd5b5061018f6102353660046146dd565b6108b2565b34801561024657600080fd5b5061025a61025536600461475c565b610b8c565b604080519384529115156020840152151590820152606001610119565b34801561028357600080fd5b5061010d610292366004614889565b610fc3565b34801561021857600080fd5b3480156102af57600080fd5b5061010d6102be3660046144e6565b611099565b3480156102cf57600080fd5b50610137611153565b3480156102e457600080fd5b506102186102f336600461468d565b61115d565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee12700000000000000000000000000000000000000000000000000000000148061038b57507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b600061039b6113d6565b905090565b600160005b8551811015610505576103b6611153565b6001600160a01b031663fa1becc48783815181106103d6576103d66148d9565b60200260200101516040518263ffffffff1660e01b81526004016103fc91815260200190565b602060405180830381865afa158015610419573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061043d91906148ef565b61044a5760009150610505565b610452611153565b6001600160a01b031663f48a3972878381518110610472576104726148d9565b602002602001015186866040518463ffffffff1660e01b81526004016104af9392919092835261ffff918216602084015216604082015260600190565b602060405180830381865afa1580156104cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104f091906148ef565b6104fd5760009150610505565b6001016103a5565b5080156106725760005b845181101561067057610520611153565b6001600160a01b031663fa1becc4868381518110610540576105406148d9565b60200260200101516040518263ffffffff1660e01b815260040161056691815260200190565b602060405180830381865afa158015610583573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105a791906148ef565b156105b55760009150610670565b6105bd611153565b6001600160a01b031663f48a39728683815181106105dd576105dd6148d9565b602002602001015186866040518463ffffffff1660e01b815260040161061a9392919092835261ffff918216602084015216604082015260600190565b602060405180830381865afa158015610637573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061065b91906148ef565b6106685760009150610670565b60010161050f565b505b949350505050565b600061068d8366038d7ea4c68000614927565b6106979083614954565b9392505050565b6106df6040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b61038b82611408565b60006106f384611408565b9050806020015160001415801561070c57506040810151155b61075d5760405162461bcd60e51b815260206004820181905260248201527f434f4d4241542053595354454d3a20494e56414c494420454e434f554e54455260448201526064015b60405180910390fd5b80608001518160600151106107b45760405162461bcd60e51b815260206004820181905260248201527f434f4d4241542053595354454d3a204558504952454420454e434f554e5445526044820152606401610754565b6107bc610391565b6001600160a01b03166107cd611153565b6001600160a01b0316634f10aabc856040518263ffffffff1660e01b81526004016107fa91815260200190565b602060405180830381865afa158015610817573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061083b9190614968565b6001600160a01b031614801561085657506108568385611099565b6108a25760405162461bcd60e51b815260206004820152601c60248201527f434f4d4241542053595354454d3a204e4f4e2d434f4d424154414e54000000006044820152606401610754565b6108ac84836114f3565b50505050565b60006108c56108bf610391565b84610fc3565b6109115760405162461bcd60e51b815260206004820152601d60248201527f434f4d4241542053595354454d3a20494e56414c49442053454e4445520000006044820152606401610754565b6000806109378560008151811061092a5761092a6148d9565b602002602001015161158d565b9150915085600181111561094d5761094d614521565b600103610a3557610960858584846103a0565b6109ac5760405162461bcd60e51b815260206004820152601a60248201527f434f4d4241542053595354454d3a20494e56414c4944205056450000000000006044820152606401610754565b60405142906109c5908890889088908590602001614985565b60405160208183030381529060405280519060200120935060006040518060e001604052808960018111156109fc576109fc614521565b81526020018381526020016000815260200160008152602001600f8152602001878152602001888152509050610a32858261163e565b50505b856001811115610a4757610a47614521565b5060005b8451811015610af2576000801b610a7a868381518110610a6d57610a6d6148d9565b60200260200101516116ff565b14610ac75760405162461bcd60e51b815260206004820152601e60248201527f434f4d4241542053595354454d3a20454e54495459204f4343555049454400006044820152606401610754565b610aea858281518110610adc57610adc6148d9565b602002602001015185611790565b600101610a4b565b5060005b8551811015610b82576000801b610b18878381518110610a6d57610a6d6148d9565b14610b655760405162461bcd60e51b815260206004820152601e60248201527f434f4d4241542053595354454d3a20454e54495459204f4343555049454400006044820152606401610754565b610b7a868281518110610adc57610adc6148d9565b600101610af6565b5050509392505050565b600080600080610b9a611153565b6001600160a01b03166354f1f2db896040518263ffffffff1660e01b8152600401610bc791815260200190565b61010060405180830381865afa158015610be5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c0991906149c9565b90506000610c15611153565b6001600160a01b03166354f1f2db896040518263ffffffff1660e01b8152600401610c4291815260200190565b61010060405180830381865afa158015610c60573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c8491906149c9565b90506000610c90611153565b6001600160a01b031663810c1dc1896040518263ffffffff1660e01b8152600401610cbd91815260200190565b600060405180830381865afa158015610cda573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610d029190810190614aa0565b905060008260a001511315610fa8576040517f4dddf8370000000000000000000000000000000000000000000000000000000081526004810188905260009073__$227e4555c1f608352b26068e438454dd8b$__90634dddf83790602401600060405180830381865af4158015610d7d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610da59190810190614b57565b9050610dfc81600081518110610dbd57610dbd6148d9565b602002602001015167ffffffffffffffff1682600181518110610de257610de26148d9565b602002602001015167ffffffffffffffff168e8787611844565b90965094508515610f5f57620186a060008d602001518560600151610e219190614bfc565b13610e2d576001610e41565b8c602001518460600151610e419190614bfc565b610e4b9190614927565b8451620186a090610e5e90600290614c1c565b8460a00151856080015185600281518110610e7b57610e7b6148d9565b602002602001015167ffffffffffffffff16610e979190614954565b1115610ed657846080015184600281518110610eb557610eb56148d9565b602002602001015167ffffffffffffffff16610ed19190614954565b610edc565b8460a001515b8f51610ee89190614c30565b610ef29190614c30565b610efc9190614c50565b610f069190614bfc565b96508415610f5a57610f4c6040518060400160405280600581526020017f43524954210000000000000000000000000000000000000000000000000000008152506118d7565b610f57600288614c50565b96505b610fa2565b610f9d6040518060400160405280600581526020017f4d495353210000000000000000000000000000000000000000000000000000008152506118d7565b600096505b50610fb5565b6000955060009450600093505b505050955095509592505050565b6000805b825181101561109257610fd8611153565b6001600160a01b0316634f10aabc848381518110610ff857610ff86148d9565b60200260200101516040518263ffffffff1660e01b815260040161101e91815260200190565b602060405180830381865afa15801561103b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061105f9190614968565b6001600160a01b0316846001600160a01b0316036110805760019150611092565b8061108a81614c9c565b915050610fc7565b5092915050565b6000806110a583611408565b905060005b8160c00151518110156110f6578160c0015181815181106110cd576110cd6148d9565b602002602001015185036110e457600192506110f6565b806110ee81614c9c565b9150506110aa565b50816110925760005b8160a001515181101561114b578160a001518181518110611122576111226148d9565b60200260200101518503611139576001925061114b565b8061114381614c9c565b9150506110ff565b505092915050565b600061039b61194b565b61116e30611169610391565b611955565b600061117983611408565b905060005b82518110156111cc57600083828151811061119b5761119b6148d9565b602002602001015190506111c38582604001518360000151846020015185606001518b61196b565b5060010161117e565b50606081018051906111dd82614c9c565b905250600080805b8360a001515181101561131c57600061121a8560a00151838151811061120d5761120d6148d9565b6020026020010151611a08565b905060008113611313578361122e81614c9c565b9450508460000151600181111561124757611247614521565b60ff1660000361131357611259611153565b6001600160a01b031663fa1becc48660a00151848151811061127d5761127d6148d9565b60200260200101516040518263ffffffff1660e01b81526004016112a391815260200190565b602060405180830381865afa1580156112c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112e491906148ef565b15611313576113138560a001518381518110611302576113026148d9565b60200260200101516000801b611790565b506001016111e5565b5060005b8360c00151518110156113815760006113488560c00151838151811061120d5761120d6148d9565b905060008113611378578261135c81614c9c565b9350506113788560c001518381518110611302576113026148d9565b50600101611320565b508260c001515181148061139957508260a001515182145b806113ab575082608001518360600151145b156113ce574360408401526113c0858461163e565b6113ca8587611a9a565b5050505b505050505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c806114055750335b90565b6114496040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061147f5761147f6148d9565b6020908102919091010152600080806114d87f74625544000000000000000000000000436f6d626174456e636f756e74657200857e81050201202020200000000000000000000000000000000000000000000000611d65565b9250925092506114e9838383611e35565b9695505050505050565b611588826001848460405160200161150c929190614cb6565b60408051601f198184030181529082905261152b939291602401614d86565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb2aa60a400000000000000000000000000000000000000000000000000000000179052611ee2565b505050565b604080516001808252818301909252600091829182916020808301908036833701905050905083816000815181106115c7576115c76148d9565b6020908102919091010152600080806116207f74625544000000000000000000000000506f736974696f6e0000000000000000857e04020002020000000000000000000000000000000000000000000000000000611d65565b925092509250611631838383611f90565b9550955050505050915091565b600061166182600001518360200151846040015185606001518660800151611fb3565b905060006116778360a001518460c00151611fe8565b9050600061168d8460a001518560c0015161200c565b604080516001808252818301909252919250600091906020808301908036833701905050905085816000815181106116c7576116c76148d9565b60209081029190910101526113ce7f74625544000000000000000000000000436f6d626174456e636f756e7465720082868686612048565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110611738576117386148d9565b602090810291909101015260006106727f746255440000000000000000000000004d61746368456e74697479000000000083837e400200202000000000000000000000000000000000000000000000000000006120fd565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106117c6576117c66148d9565b6020026020010181815250506115887f746255440000000000000000000000004d61746368456e74697479000000000060001b8260008560405160200161180f91815260200190565b60408051601f198184030181529190527e400200202000000000000000000000000000000000000000000000000000006121ba565b60008080620249f06118586103e88a614954565b61186a87602001518960400151612230565b6118749190614dae565b61187e9190614927565b90506000620186a085602001516103e88a6118999190614954565b6118a39190614dae565b6118ad9190614927565b9050808211935083156118cb5760026118c68284614c1c565b101592505b50509550959350505050565b611948816040516024016118eb9190614dc1565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f41304fac0000000000000000000000000000000000000000000000000000000017905261225d565b50565b600061039b612266565b611967611961836122a5565b82612342565b5050565b60006119768661238e565b8051909150600381111561198c5761198c614521565b60ff166001036119ff57600081602001518060200190518101906119b09190614dd4565b905060008060006119c4848a8a8a8a610b8c565b9194509250905060006119da620186a085614e69565b6119e38a611a08565b6119ed9190614bfc565b90506119f98982612443565b50505050505b50505050505050565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110611a4157611a416148d9565b602090810291909101015260006106727f74625544000000000000000000000000537461747300000000000000000000008360057ee10800202001202020202000000000000000000000000000000000000000006120fd565b606080600080611aa986611408565b9050600080611ab661426d565b60005b8460c0015151811015611b2357611aec8560c001518281518110611adf57611adf6148d9565b60200260200101516124f7565b91508160e0015184611afe9190614dae565b935060008260a001511315611b1b5782611b1781614c9c565b9350505b600101611ab9565b5060008060005b8660a0015151811015611baa57611b508760a001518281518110611adf57611adf6148d9565b935060008460a0015113611ba25760c0840151611b6d9083614dae565b9150611b7d8460e001518c61067a565b611b879084614dae565b9250611ba28760a001518281518110611302576113026148d9565b600101611b2a565b506000805b8760c0015151811015611d56578760c001518181518110611bd257611bd26148d9565b60200260200101519150611be4611153565b6001600160a01b031663fa1becc4836040518263ffffffff1660e01b8152600401611c1191815260200190565b602060405180830381865afa158015611c2e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c5291906148ef565b15611d4357611c60826124f7565b945060008560a001511315611d39578315611d0557611c7d611153565b6001600160a01b031663fda0ce5083611c968988614c1c565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815260048101929092526024820152604401600060405180830381600087803b158015611cec57600080fd5b505af1158015611d00573d6000803e3d6000fd5b505050505b600083118015611d155750600086115b15611d3957611d248684614c1c565b8560c001818151611d359190614dae565b9052505b611d43828661259f565b611d4e826000611790565b600101611baf565b50505050505050509250925092565b6060600060606000611d75612266565b9050306001600160a01b03821603611d9e57611d92878787612648565b93509350935050611e2c565b6040517f419b58fd0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063419b58fd90611de7908a908a908a90600401614eb3565b600060405180830381865afa158015611e04573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611d929190810190614f40565b93509350939050565b611e766040805160e0810190915280600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b611e7f84612750565b6080860181905260608601829052604086018390526020860184905285856001811115611eae57611eae614521565b6001811115611ebf57611ebf614521565b8152505050505050611ed183836127a0565b60c083015260a08201529392505050565b6060600080611ef8611ef385614fa3565b6127ef565b91509150816000801b03611f5e576040517ffdde54e20000000000000000000000000000000000000000000000000000000081527fffffffff00000000000000000000000000000000000000000000000000000000600035166004820152602401610754565b6020840180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff168217905261067282856128b2565b60208301516022840151600091829160f091821c911c5b90969095509350505050565b60608585858585604051602001611fce959493929190614fef565b604051602081830303815290604052905095945050505050565b600061069783516020028351602002606081901b603883901b838301171792915050565b60606120178361298d565b6120208361298d565b60405160200161203192919061502a565b604051602081830303815290604052905092915050565b6000612052612266565b9050306001600160a01b0382160361207657612071868686868661299d565b6113ce565b6040517f298314fb0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063298314fb906120c39089908990899089908990600401615059565b600060405180830381600087803b1580156120dd57600080fd5b505af11580156120f1573d6000803e3d6000fd5b50505050505050505050565b600080612108612266565b9050306001600160a01b0382160361212e57612126868686866129ba565b915050610672565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d599061217990899089908990899060040161509e565b602060405180830381865afa158015612196573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061212691906150cd565b60006121c4612266565b9050306001600160a01b038216036121e35761207186868686866129f0565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae0906120c390899089908990899089906004016150e6565b600080821261224a576122438284614dae565b905061038b565b6122538261512d565b6122439084615165565b61194881612a05565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b0316806122a0573391505090565b919050565b60408051600180825281830190925260009182919060208083019080368337019050509050826001600160a01b031660001b816000815181106122ea576122ea6148d9565b602090810291909101015260006106727f7462776f726c6400000000000000000053797374656d5265676973747279000083837e200100200000000000000000000000000000000000000000000000000000006120fd565b61234c8282612a26565b6119675761235982612a84565b816040517fd787b737000000000000000000000000000000000000000000000000000000008152600401610754929190615178565b6040805180820190915260008152606060208201526040805160018082528183019092526000916020808301908036833701905050905082816000815181106123d9576123d96148d9565b6020908102919091010152600080806124327f74625544000000000000000000000000416374696f6e73000000000000000000857e01010101000000000000000000000000000000000000000000000000000000611d65565b9250925092506114e9838383612bc1565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110612479576124796148d9565b6020026020010181815250506115887f746255440000000000000000000000005374617473000000000000000000000060001b826005856040516020016124c291815260200190565b60408051601f198184030181529190527ee10800202001202020202000000000000000000000000000000000000000006121ba565b6124ff61426d565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110612535576125356148d9565b60209081029190910101526000808061258e7f7462554400000000000000000000000053746174730000000000000000000000857ee1080020200120202020200000000000000000000000000000000000000000611d65565b9250925092506114e9838383612c1e565b60006125d1826000015183602001518460400151856060015186608001518760a001518860c001518960e00151612c96565b604080516001808252818301909252919250600091606091839190602080830190803683370190505090508581600081518110612610576126106148d9565b60209081029190910101526113ce7f746255440000000000000000000000005374617473000000000000000000000082868686612048565b606060006060600061265985612cd4565b9050612666878783612cf7565b9350600061267386612d30565b90508015612745576126858888612d6d565b935066ffffffffffffff841667ffffffffffffffff8111156126a9576126a9614305565b6040519080825280601f01601f1916602001820160405280156126d3576020820181803683370190505b5092506020830160005b828160ff1610156127425760006126f58b8b84612d80565b90506000612712888460ff166028026038011c64ffffffffff1690565b90506127218260008387612e00565b61272b8185614dae565b93505050808061273a906151a3565b9150506126dd565b50505b505093509350939050565b6000806000806000612766866000016020015190565b60f81c600181111561277a5761277a614521565b602187015160418801516061890151608190990151929991989097509550909350915050565b6060806000603885901c64ffffffffff166127c46127bf868484612ecc565b612f5a565b935090508064ffffffffff606087901c16016127e46127bf868484612ecc565b925050509250929050565b6040805160018082528183019092526000918291829160208083019080368337019050509050837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681600081518110612848576128486148d9565b6020908102919091010152600080806128a17f7462776f726c6400000000000000000046756e6374696f6e53656c6563746f72857e24020020040000000000000000000000000000000000000000000000000000611d65565b925092509250611631838383612f6b565b606060006128be61194b565b90506001600160a01b03811630036128ff5760006128e66128dd6113d6565b60008787612f77565b93509050806128f8576128f8836130b2565b505061038b565b6040517f3ae7af080000000000000000000000000000000000000000000000000000000081526001600160a01b03821690633ae7af089061294690879087906004016151c2565b6000604051808303816000875af1158015612965573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261067291908101906151db565b60608161069781602060006130ba565b6129b385858585856129ae8b61311a565b61319f565b5050505050565b60006129e76129c986866134d8565b60ff858116601b0360080285901c166129e2858761352e565b613567565b95945050505050565b6129b385856129ff848761352e565b856135b8565b80516a636f6e736f6c652e6c6f67602083016000808483855afa5050505050565b6000612a747f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff0000000000000000000000000000000085161783613853565b8061069757506106978383613853565b606081601081901b6000612a978361391c565b9050827fffffffffffffffffffffffffffff000000000000000000000000000000000000831615612af257612aed7fffffffffffffffffffffffffffff0000000000000000000000000000000000008416613933565b612b29565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b7fffffffffffffffffffffffffffffffff00000000000000000000000000000000831615612b5f57612b5a83613933565b612b96565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b604051602001612ba893929190615210565b6040516020818303038152906040529350505050919050565b604080518082019091526000815260606020820152612bdf846139d7565b81906003811115612bf257612bf2614521565b90816003811115612c0557612c05614521565b905250612c1283836139f3565b60208201529392505050565b612c2661426d565b612c2f84613a16565b60e0890181905260c0890182905260a089018390526080890184905260608901859052886020810160408201886002811115612c6d57612c6d614521565b6002811115612c7e57612c7e614521565b90529790975250505093909252509195945050505050565b60608888888888888888604051602001612cb798979695949392919061529e565b604051602081830303815290604052905098975050505050505050565b60006008612ce460026020615165565b612cee9190614927565b9190911c919050565b606081600003612d165750604080516020810190915260008152610697565b6000612d2285856134d8565b90506129e781600085613a84565b60006008600180612d4360026020615165565b612d4d9190615165565b612d579190615165565b612d619190614927565b8260ff911c1692915050565b6000610697612d7c8484613aa7565b5490565b60008383604051602001612d959291906152e3565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b8215612e875760208310612e2a57602083048401935060208381612e2657612e2661493e565b0692505b8215612e87576020839003600081841015612e4d5750600019600884021c612e57565b50600019600882021c5b8554600886021b818451168219821617845250818411612e785750506108ac565b50600194909401939182900391015b5b60208210612ea95783548152600190930192601f1990910190602001612e88565b81156108ac576000600019600884021c8251865482191691161782525050505050565b600081831180612edc5750835182115b15612f19578383836040517f23230fa30000000000000000000000000000000000000000000000000000000081526004016107549392919061531f565b60208401612f278482614dae565b90506000612f358585615165565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b606060006106978360206000613afd565b600080611fa785613b6c565b60006060600080612f8786613b81565b90925090506001600160a01b038216612fd85785612fa487612a84565b6040517ffbf10ce60000000000000000000000000000000000000000000000000000000081526004016107549291906151c2565b80612fe757612fe78689613c25565b8615613053577dffffffffffffffffffffffffffff0000000000000000000000000000000086167f6e7300000000000000000000000000000000000000000000000000000000000017600061303b82613c2f565b90506130508261304b8b84614dae565b613cc0565b50505b600061305f8760101b90565b7fffffffffffffffffffffffffffff00000000000000000000000000000000000016146130975761309288888488613d74565b6130a3565b6130a388888488613dec565b90999098509650505050505050565b805160208201fd5b825160609060006130cb8583614927565b9050604051925060208301601f19603f83860101166040528184526000602088015b8482101561310e578051871b835291870191600191909101906020016130ed565b50505050509392505050565b60007f8b9d8c8b908d9affffffffffffffffffab9e9d939a8d00000000000000000000820161316957507e60030220202000000000000000000000000000000000000000000000000000919050565b61038b6131967f746273746f72650000000000000000005461626c65730000000000000000000084613e4d565b60206000613567565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff000000000000000000000000000000000000000000000000000000000000160361322b57857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a98686868660405161321e9493929190615344565b60405180910390a26113ce565b600061323687613e69565b905060005b815181101561330f576000828281518110613258576132586148d9565b602002602001015190506132846001826affffffffffffffffffffff1916613ef290919063ffffffff16565b15613306576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c906132d3908c908c908c908c908c908c9060040161538e565b600060405180830381600087803b1580156132ed57600080fd5b505af1158015613301573d6000803e3d6000fd5b505050505b5060010161323b565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9878787876040516133469493929190615344565b60405180910390a2600061335a88886134d8565b90506000602087019050613372826000895184613f10565b600061337d85612d30565b111561340157600061338f8a8a613aa7565b878155905060208601915060008060005b6133a988612d30565b8160ff1610156133fc576133be8d8d83612d80565b92506133d98a8260ff166028026038011c64ffffffffff1690565b91506133e88360008488613f10565b6133f28286614dae565b94506001016133a0565b505050505b60005b83518110156120f1576000848281518110613421576134216148d9565b6020026020010151905061344d6002826affffffffffffffffffffff1916613ef290919063ffffffff16565b156134cf576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf9061349c908e908e908e908e908e908e9060040161538e565b600060405180830381600087803b1580156134b657600080fd5b505af11580156134ca573d6000803e3d6000fd5b505050505b50600101613404565b600082826040516020016134ed9291906152e3565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff1681101561355f5761355560ff601b83900360080287901c1683614dae565b9150600101613533565b509392505050565b60006020821061358d576020820484019350602082816135895761358961493e565b0691505b508254600882021b60208290038084111561355f576001850154600882021c82179150509392505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff000000000000000000000000000000000000000000000000000000000000160361364257837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be848484604051613635939291906153e7565b60405180910390a26108ac565b600061364e85856134d8565b9050600061365b86613e69565b905060005b815181101561373057600082828151811061367d5761367d6148d9565b602002602001015190506136a96004826affffffffffffffffffffff1916613ef290919063ffffffff16565b15613727576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d906136f4908b908b908b908b9060040161541a565b600060405180830381600087803b15801561370e57600080fd5b505af1158015613722573d6000803e3d6000fd5b505050505b50600101613660565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be868686604051613765939291906153e7565b60405180910390a2613780828565ffffffffffff1685613fcf565b60005b81518110156119ff5760008282815181106137a0576137a06148d9565b602002602001015190506137cc6008826affffffffffffffffffffff1916613ef290919063ffffffff16565b1561384a576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba872190613817908b908b908b908b9060040161541a565b600060405180830381600087803b15801561383157600080fd5b505af1158015613845573d6000803e3d6000fd5b505050505b50600101613783565b60408051600280825260608201835260009283929190602083019080368337019050509050838160008151811061388c5761388c6148d9565b602002602001018181525050826001600160a01b031660001b816001815181106138b8576138b86148d9565b602090810291909101015260006139107f7462776f726c640000000000000000005265736f75726365416363657373000083837e010100010000000000000000000000000000000000000000000000000000006120fd565b90506129e78160f81c90565b600061392a60706010614dae565b9190911b919050565b606060005b6010811015613998577fffffffffffffffffffffffffffffffff000000000000000000000000000000008316600882021b7fff00000000000000000000000000000000000000000000000000000000000000161561399857600101613938565b604080517fffffffffffffffffffffffffffffffff00000000000000000000000000000000851660208201528151603090910190915281815280610672565b602081015160009060f81c600381111561038b5761038b614521565b60606000603884901c64ffffffffff166129e7613a11858484612ecc565b613fe5565b600080600080600080600080613a30896000016020015190565b60408a015160608b0151919950975060f81c6002811115613a5357613a53614521565b60618a015160818b015160a18c015160c18d015160e1909d01519b9d9a9c939b929a91995097509195509350915050565b60405160208101601f19603f848401011660405282825261355f85858584612e00565b60008282604051602001613abc9291906152e3565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b60606000613b0b8560801c90565b90506fffffffffffffffffffffffffffffffff85166000858281613b3157613b3161493e565b04905060405193506020840160208202810160405281855260005b8281101561310e578451871c825293870193602090910190600101613b4c565b602081015160408201516000905b9050915091565b60408051600180825281830190925260009182918291602080830190803683370190505090508381600081518110613bbb57613bbb6148d9565b602090810291909101015260008080613c147f7462776f726c6400000000000000000053797374656d73000000000000000000857e15020014010000000000000000000000000000000000000000000000000000612648565b925092509250611631838383614065565b61234c8282614071565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110613c6857613c686148d9565b602090810291909101015260006106727f7462776f726c6400000000000000000042616c616e636573000000000000000083837e200100200000000000000000000000000000000000000000000000000000006129ba565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110613cf657613cf66148d9565b6020026020010181815250506115887f7462776f726c6400000000000000000042616c616e636573000000000000000060001b82600085604051602001613d3f91815260200190565b60408051601f198184030181529190527e200100200000000000000000000000000000000000000000000000000000006129f0565b60006060836001600160a01b03166000613d8f8589896140cf565b604051613d9c9190615453565b60006040518083038185875af1925050503d8060008114613dd9576040519150601f19603f3d011682016040523d82523d6000602084013e613dde565b606091505b509097909650945050505050565b60006060836001600160a01b0316613e058488886140cf565b604051613e129190615453565b600060405180830381855af49150503d8060008114613dd9576040519150601f19603f3d011682016040523d82523d6000602084013e613dde565b60408051602081018490529081018290526000906060016134ed565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110613ea357613ea36148d9565b60209081029190910101526000613edb7f746273746f726500000000000000000053746f7265486f6f6b7300000000000083836140fe565b9050610672613eed8260008451612ecc565b614138565b60008160ff1682613f038560581c90565b1660ff1614905092915050565b8215613f8a5760208310613f3a57602083048401935060208381613f3657613f3661493e565b0692505b8215613f8a5760208390036000600019600885021c1990506008850281811c91508351811c9050811987541682821617875550818411613f7b5750506108ac565b50600194909401939182900391015b5b60208210613fac5780518455600190930192601f1990910190602001613f8b565b81156108ac576000600019600884021c8554835182191691161785555050505050565b61158883838351613fe08560200190565b613f10565b60606000613ff38360801c90565b90506fffffffffffffffffffffffffffffffff83168067ffffffffffffffff81111561402157614021614305565b6040519080825280601f01601f19166020018201604052801561404b576020820181803683370190505b5092506020830161405d838284614149565b505050919050565b600080611fa785614194565b60006140bf7f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617836141b0565b80610697575061069783836141b0565b60608383836040516020016140e69392919061546f565b60405160208183030381529060405290509392505050565b606061067261410e858585612d80565b60006141338561411e8989612d6d565b9060ff166028026038011c64ffffffffff1690565b613a84565b606060006106978360156000613afd565b5b60208110614169578251825260209283019290910190601f190161414a565b8060000361417657505050565b6000600019600883021c905080835116811985511617835250505050565b6020810151603482015160609190911c9060009060f81c613b7a565b6040805160028082526060820183526000928392919060208301908036833701905050905083816000815181106141e9576141e96148d9565b602002602001018181525050826001600160a01b031660001b81600181518110614215576142156148d9565b602090810291909101015260006139107f7462776f726c640000000000000000005265736f75726365416363657373000083837e010100010000000000000000000000000000000000000000000000000000006129ba565b60405180610100016040528060008152602001600081526020016000600281111561429a5761429a614521565b815260200160008152602001600081526020016000815260200160008152602001600081525090565b6000602082840312156142d557600080fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461069757600080fd5b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff8111828210171561433e5761433e614305565b60405290565b60405160a0810167ffffffffffffffff8111828210171561433e5761433e614305565b604051610100810167ffffffffffffffff8111828210171561433e5761433e614305565b604051601f8201601f1916810167ffffffffffffffff811182821017156143b4576143b4614305565b604052919050565b600067ffffffffffffffff8211156143d6576143d6614305565b5060051b60200190565b600082601f8301126143f157600080fd5b81356020614406614401836143bc565b61438b565b8083825260208201915060208460051b87010193508684111561442857600080fd5b602086015b84811015614444578035835291830191830161442d565b509695505050505050565b803561ffff811681146122a057600080fd5b6000806000806080858703121561447757600080fd5b843567ffffffffffffffff8082111561448f57600080fd5b61449b888389016143e0565b955060208701359150808211156144b157600080fd5b506144be878288016143e0565b9350506144cd6040860161444f565b91506144db6060860161444f565b905092959194509250565b600080604083850312156144f957600080fd5b50508035926020909101359150565b60006020828403121561451a57600080fd5b5035919050565b634e487b7160e01b600052602160045260246000fd5b6002811061454757614547614521565b9052565b60008151808452602080850194506020840160005b8381101561457c57815187529582019590820190600101614560565b509495945050505050565b60208152614599602082018351614537565b602082015160408201526040820151606082015260608201516080820152608082015160a0820152600060a083015160e060c08401526145dd61010084018261454b565b905060c0840151601f198483030160e08501526129e7828261454b565b600082601f83011261460b57600080fd5b8135602061461b614401836143bc565b82815260079290921b8401810191818101908684111561463a57600080fd5b8286015b8481101561444457608081890312156146575760008081fd5b61465f61431b565b813581528482013585820152604080830135908201526060808301359082015283529183019160800161463e565b6000806000606084860312156146a257600080fd5b8335925060208401359150604084013567ffffffffffffffff8111156146c757600080fd5b6146d3868287016145fa565b9150509250925092565b6000806000606084860312156146f257600080fd5b83356002811061470157600080fd5b9250602084013567ffffffffffffffff8082111561471e57600080fd5b61472a878388016143e0565b9350604086013591508082111561474057600080fd5b506146d3868287016143e0565b60ff8116811461194857600080fd5b600080600080600060a0868803121561477457600080fd5b853567ffffffffffffffff8082111561478c57600080fd5b9087019060a0828a0312156147a057600080fd5b6147a8614344565b823581526020808401358183015260408401356040830152606084013560608301526080840135838111156147dc57600080fd5b8085019450508a601f8501126147f157600080fd5b83359250614801614401846143bc565b83815260059390931b8401810192818101908c85111561482057600080fd5b948201945b848610156148475785356148388161474d565b82529482019490820190614825565b608084810191909152929c918b01359b505060408a01359960608101359950909101359650945050505050565b6001600160a01b038116811461194857600080fd5b6000806040838503121561489c57600080fd5b82356148a781614874565b9150602083013567ffffffffffffffff8111156148c357600080fd5b6148cf858286016143e0565b9150509250929050565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561490157600080fd5b8151801515811461069757600080fd5b634e487b7160e01b600052601160045260246000fd5b808202811582820484141761038b5761038b614911565b634e487b7160e01b600052601260045260246000fd5b6000826149635761496361493e565b500690565b60006020828403121561497a57600080fd5b815161069781614874565b61498f8186614537565b6080602082015260006149a5608083018661454b565b82810360408401526149b7818661454b565b91505082606083015295945050505050565b600061010082840312156149dc57600080fd5b6149e4614367565b825181526020830151602082015260408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e08201528091505092915050565b600082601f830112614a4957600080fd5b81516020614a59614401836143bc565b8083825260208201915060208460051b870101935086841115614a7b57600080fd5b602086015b84811015614444578051614a938161474d565b8352918301918301614a80565b600060208284031215614ab257600080fd5b815167ffffffffffffffff80821115614aca57600080fd5b908301906101008286031215614adf57600080fd5b614ae7614367565b82518152602083015182811115614afd57600080fd5b614b0987828601614a38565b60208301525060408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e082015280935050505092915050565b60006020808385031215614b6a57600080fd5b825167ffffffffffffffff80821115614b8257600080fd5b818501915085601f830112614b9657600080fd5b8151614ba4614401826143bc565b81815260059190911b83018401908481019088831115614bc357600080fd5b938501935b82851015614bf05784518481168114614be15760008081fd5b82529385019390850190614bc8565b98975050505050505050565b818103600083128015838313168383128216171561109257611092614911565b600082614c2b57614c2b61493e565b500490565b808201828112600083128015821682158216171561114b5761114b614911565b808202600082127f800000000000000000000000000000000000000000000000000000000000000084141615614c8857614c88614911565b818105831482151761038b5761038b614911565b60006000198203614caf57614caf614911565b5060010190565b60006040808301858452602060406020860152818651808452606093506060870191506020880160005b82811015614d1757815180518552858101518686015287810151888601528601518685015260809093019290840190600101614ce0565b50919998505050505050505050565b6003811061194857611948614521565b60005b83811015614d51578181015183820152602001614d39565b50506000910152565b60008151808452614d72816020860160208601614d36565b601f01601f19169290920160200192915050565b838152614d9283614d26565b8260208201526060604082015260006129e76060830184614d5a565b8082018082111561038b5761038b614911565b6020815260006106976020830184614d5a565b600060208284031215614de657600080fd5b815167ffffffffffffffff80821115614dfe57600080fd5b9083019060a08286031215614e1257600080fd5b614e1a614344565b82518152602083015160208201526040830151604082015260608301516060820152608083015182811115614e4e57600080fd5b614e5a87828601614a38565b60808301525095945050505050565b600082614e7857614e7861493e565b60001983147f800000000000000000000000000000000000000000000000000000000000000083141615614eae57614eae614911565b500590565b838152606060208201526000614ecc606083018561454b565b9050826040830152949350505050565b600082601f830112614eed57600080fd5b815167ffffffffffffffff811115614f0757614f07614305565b614f1a6020601f19601f8401160161438b565b818152846020838601011115614f2f57600080fd5b610672826020830160208701614d36565b600080600060608486031215614f5557600080fd5b835167ffffffffffffffff80821115614f6d57600080fd5b614f7987838801614edc565b9450602086015193506040860151915080821115614f9657600080fd5b506146d386828701614edc565b6000815160208301517fffffffff000000000000000000000000000000000000000000000000000000008082169350600483101561405d5760049290920360031b82901b161692915050565b60006002871061500157615001614521565b5060f89590951b8552600185019390935260218401919091526041830152606182015260810190565b6000835161503c818460208801614d36565b835190830190615050818360208801614d36565b01949350505050565b85815260a06020820152600061507260a083018761454b565b82810360408401526150848187614d5a565b90508460608401528281036080840152614bf08185614d5a565b8481526080602082015260006150b7608083018661454b565b60ff949094166040830152506060015292915050565b6000602082840312156150df57600080fd5b5051919050565b85815260a0602082015260006150ff60a083018761454b565b60ff86166040840152828103606084015261511a8186614d5a565b9150508260808301529695505050505050565b60007f8000000000000000000000000000000000000000000000000000000000000000820361515e5761515e614911565b5060000390565b8181038181111561038b5761038b614911565b60408152600061518b6040830185614d5a565b90506001600160a01b03831660208301529392505050565b600060ff821660ff81036151b9576151b9614911565b60010192915050565b8281526040602082015260006106726040830184614d5a565b6000602082840312156151ed57600080fd5b815167ffffffffffffffff81111561520457600080fd5b61067284828501614edc565b7fffff0000000000000000000000000000000000000000000000000000000000008416815260007f3a000000000000000000000000000000000000000000000000000000000000008060028401528451615271816003860160208901614d36565b808401905081600382015284519150615291826004830160208801614d36565b0160040195945050505050565b8881528760208201526152b087614d26565b60f89690961b604087015260418601949094526061850192909252608184015260a183015260c182015260e10192915050565b8281526000602080830184516020860160005b82811015615312578151845292840192908401906001016152f6565b5091979650505050505050565b6060815260006153326060830186614d5a565b60208301949094525060400152919050565b608081526000615357608083018761454b565b82810360208401526153698187614d5a565b905084604084015282810360608401526153838185614d5a565b979650505050505050565b86815260c0602082015260006153a760c083018861454b565b82810360408401526153b98188614d5a565b905085606084015282810360808401526153d38186614d5a565b9150508260a0830152979650505050505050565b6060815260006153fa606083018661454b565b65ffffffffffff8516602084015282810360408401526114e98185614d5a565b848152608060208201526000615433608083018661454b565b65ffffffffffff8516604084015282810360608401526153838185614d5a565b60008251615465818460208701614d36565b9190910192915050565b60008451615481818460208901614d36565b60609490941b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000169190930190815260148101919091526034019291505056fea2646970667358221220ff778f66bade81d5692f1a1523643d0baa6c61b3feb3e1678d6dc51940edd0f064736f6c63430008180033","sourceMap":"1228:13971:212:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2331:198:123;;;;;;;;;;-1:-1:-1;2331:198:123;;;;;:::i;:::-;;:::i;:::-;;;516:14:229;;509:22;491:41;;479:2;464:18;2331:198:123;;;;;;;;1262:113;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;707:55:229;;;689:74;;677:2;662:18;1262:113:123;543:226:229;2979:1020:212;;;;;;;;;;-1:-1:-1;2979:1020:212;;;;;:::i;:::-;;:::i;14888:214::-;;;;;;;;;;-1:-1:-1;14888:214:212;;;;;:::i;:::-;;:::i;:::-;;;4243:25:229;;;4231:2;4216:18;14888:214:212;4097:177:229;15108:89:212;;;;;;;;;;-1:-1:-1;15108:89:212;;;;;:::i;:::-;15189:4;15108:89;;;;;1616:110:123;;;;;;;;;;-1:-1:-1;3800:14:123;-1:-1:-1;;3796:25:123;3783:39;1616:110;1262:113;11418:163:212;;;;;;;;;;-1:-1:-1;11418:163:212;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;4173:630::-;;;;;;:::i;:::-;;:::i;:::-;;1434:1539;;;;;;;;;;-1:-1:-1;1434:1539:212;;;;;:::i;:::-;;:::i;9267:2145::-;;;;;;;;;;-1:-1:-1;9267:2145:212;;;;;:::i;:::-;;:::i;:::-;;;;10880:25:229;;;10948:14;;10941:22;10936:2;10921:18;;10914:50;11007:14;11000:22;10980:18;;;10973:50;10868:2;10853:18;9267:2145:212;10692:337:229;5600:391:212;;;;;;;;;;-1:-1:-1;5600:391:212;;;;;:::i;:::-;;:::i;12389:42::-;;;;;;;;;4809:785;;;;;;;;;;-1:-1:-1;4809:785:212;;;;;:::i;:::-;;:::i;1942:98:123:-;;;;;;;;;;;;;:::i;5997:2175:212:-;;;;;;;;;;-1:-1:-1;5997:2175:212;;;;;:::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;2979:1020:212:-;3166:4;3120:16;3180:350;3200:9;:16;3196:1;:20;3180:350;;;3249:8;:6;:8::i;:::-;-1:-1:-1;;;;;3242:39:212;;3282:9;3292:1;3282:12;;;;;;;;:::i;:::-;;;;;;;3242:53;;;;;;;;;;;;;4243:25:229;;4231:2;4216:18;;4097:177;3242:53:212;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3237:135;;3329:5;3315:19;;3352:5;;3237:135;3397:8;:6;:8::i;:::-;-1:-1:-1;;;;;3390:33:212;;3424:9;3434:1;3424:12;;;;;;;;:::i;:::-;;;;;;;3438:1;3441;3390:53;;;;;;;;;;;;;;;;13124:25:229;;;13168:6;13210:15;;;13205:2;13190:18;;13183:43;13262:15;13257:2;13242:18;;13235:43;13112:2;13097:18;;12926:358;3390:53:212;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3385:135;;3477:5;3463:19;;3500:5;;3385:135;3218:3;;3180:350;;;;3543:11;3539:426;;;3575:9;3570:385;3590:9;:16;3586:1;:20;3570:385;;;3642:8;:6;:8::i;:::-;-1:-1:-1;;;;;3635:39:212;;3675:9;3685:1;3675:12;;;;;;;;:::i;:::-;;;;;;;3635:53;;;;;;;;;;;;;4243:25:229;;4231:2;4216:18;;4097:177;3635:53:212;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3631:146;;;3726:5;3712:19;;3753:5;;3631:146;3806:8;:6;:8::i;:::-;-1:-1:-1;;;;;3799:33:212;;3833:9;3843:1;3833:12;;;;;;;;:::i;:::-;;;;;;;3847:1;3850;3799:53;;;;;;;;;;;;;;;;13124:25:229;;;13168:6;13210:15;;;13205:2;13190:18;;13183:43;13262:15;13257:2;13242:18;;13235:43;13112:2;13097:18;;12926:358;3799:53:212;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3794:147;;3890:5;3876:19;;3917:5;;3794:147;3608:3;;3570:385;;;;3539:426;2979:1020;;;;;;:::o;14888:214::-;14971:18;15069:25;15086:8;633:4:0;15069:25:212;:::i;:::-;15053:42;;:12;:42;:::i;:::-;15040:55;14888:214;-1:-1:-1;;;14888:214:212:o;11418:163::-;11482:41;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11482:41:212;11542:32;11562:11;11542:19;:32::i;4173:630::-;4279:40;4322:32;4342:11;4322:19;:32::i;:::-;4279:75;;4372:13;:19;;;4395:1;4372:24;;:50;;;;-1:-1:-1;4400:17:212;;;;:22;4372:50;4364:95;;;;-1:-1:-1;;;4364:95:212;;14159:2:229;4364:95:212;;;14141:21:229;;;14178:18;;;14171:30;14237:34;14217:18;;;14210:62;14289:18;;4364:95:212;;;;;;;;;4505:13;:22;;;4477:13;:25;;;:50;4469:95;;;;-1:-1:-1;;;4469:95:212;;14520:2:229;4469:95:212;;;14502:21:229;;;14539:18;;;14532:30;14598:34;14578:18;;;14571:62;14650:18;;4469:95:212;14318:356:229;4469:95:212;4645:12;:10;:12::i;:::-;-1:-1:-1;;;;;4595:62:212;4602:8;:6;:8::i;:::-;-1:-1:-1;;;;;4595:36:212;;4632:8;4595:46;;;;;;;;;;;;;4243:25:229;;4231:2;4216:18;;4097:177;4595:46:212;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;4595:62:212;;:102;;;;;4661:36;4675:8;4685:11;4661:13;:36::i;:::-;4574:177;;;;-1:-1:-1;;;4574:177:212;;15137:2:229;4574:177:212;;;15119:21:229;15176:2;15156:18;;;15149:30;15215;15195:18;;;15188:58;15263:18;;4574:177:212;14935:352:229;4574:177:212;4761:35;4775:11;4788:7;4761:13;:35::i;:::-;4269:534;4173:630;;;:::o;1434:1539::-;1572:19;1615:38;1629:12;:10;:12::i;:::-;1643:9;1615:13;:38::i;:::-;1607:80;;;;-1:-1:-1;;;1607:80:212;;15494:2:229;1607:80:212;;;15476:21:229;15533:2;15513:18;;;15506:30;15572:31;15552:18;;;15545:59;15621:18;;1607:80:212;15292:353:229;1607:80:212;1698:8;1708;1720:26;1733:9;1743:1;1733:12;;;;;;;;:::i;:::-;;;;;;;1720;:26::i;:::-;1697:49;;;;1769:13;1761:22;;;;;;;;:::i;:::-;1787:1;1761:27;1757:686;;1812:38;1823:9;1834;1845:1;1848;1812:10;:38::i;:::-;1804:77;;;;-1:-1:-1;;;1804:77:212;;15852:2:229;1804:77:212;;;15834:21:229;15891:2;15871:18;;;15864:30;15930:28;15910:18;;;15903:56;15976:18;;1804:77:212;15650:350:229;1804:77:212;1968:58;;1915:15;;1968:58;;1979:13;;1994:9;;2005;;1915:15;;1968:58;;;:::i;:::-;;;;;;;;;;;;;1958:69;;;;;;1944:83;;2041:37;2081:292;;;;;;;;2134:13;2081:292;;;;;;;;:::i;:::-;;;;;2172:9;2081:292;;;;2204:1;2081:292;;;;2236:1;2081:292;;;;403:2:0;2081:292:212;;;;2311:9;2081:292;;;;2349:9;2081:292;;;2041:332;;2388:44;2408:11;2421:10;2388:19;:44::i;:::-;1790:653;;1757:686;2462:13;2456:20;;;;;;;;:::i;:::-;:25;2499:9;2494:232;2514:9;:16;2510:1;:20;2494:232;;;2611:1;2603:10;;2559:40;2586:9;2596:1;2586:12;;;;;;;;:::i;:::-;;;;;;;2559:26;:40::i;:::-;:54;2551:97;;;;-1:-1:-1;;;2551:97:212;;17369:2:229;2551:97:212;;;17351:21:229;17408:2;17388:18;;;17381:30;17447:32;17427:18;;;17420:60;17497:18;;2551:97:212;17167:354:229;2551:97:212;2662:53;2689:9;2699:1;2689:12;;;;;;;;:::i;:::-;;;;;;;2703:11;2662:26;:53::i;:::-;2532:3;;2494:232;;;;2740:9;2735:232;2755:9;:16;2751:1;:20;2735:232;;;2852:1;2844:10;;2800:40;2827:9;2837:1;2827:12;;;;;;;;:::i;2800:40::-;:54;2792:97;;;;-1:-1:-1;;;2792:97:212;;17369:2:229;2792:97:212;;;17351:21:229;17408:2;17388:18;;;17381:30;17447:32;17427:18;;;17420:60;17497:18;;2792:97:212;17167:354:229;2792:97:212;2903:53;2930:9;2940:1;2930:12;;;;;;;;:::i;2903:53::-;2773:3;;2735:232;;;;1597:1376;;1434:1539;;;;;:::o;9267:2145::-;9483:13;9498:8;9508:9;9553:35;9598:8;:6;:8::i;:::-;-1:-1:-1;;;;;9591:42:212;;9634:10;9591:54;;;;;;;;;;;;;4243:25:229;;4231:2;4216:18;;4097:177;9591:54:212;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9553:92;;9678:35;9723:8;:6;:8::i;:::-;-1:-1:-1;;;;;9716:42:212;;9759:10;9716:54;;;;;;;;;;;;;4243:25:229;;4231:2;4216:18;;4097:177;9716:54:212;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9678:92;;9808:25;9843:8;:6;:8::i;:::-;-1:-1:-1;;;;;9836:35:212;;9872:8;9836:45;;;;;;;;;;;;;4243:25:229;;4231:2;4216:18;;4097:177;9836:45:212;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;9836:45:212;;;;;;;;;;;;:::i;:::-;9808:73;;9917:1;9896:8;:18;;;:22;9892:1514;;;9961:34;;;;;;;;4243:25:229;;;9934:24:212;;9961:9;;:20;;4216:18:229;;9961:34:212;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;9961:34:212;;;;;;;;;;;;:::i;:::-;9934:61;;10024:139;10082:8;10091:1;10082:11;;;;;;;;:::i;:::-;;;;;;;10074:20;;10104:8;10113:1;10104:11;;;;;;;;:::i;:::-;;;;;;;10096:20;;10118:11;10131:8;10141;10024:32;:139::i;:::-;10010:153;;-1:-1:-1;10010:153:212;-1:-1:-1;10178:1126:212;;;;487:7:0;10833:1:212;10802:11;:28;;;10776:8;:22;;;10769:61;;;;:::i;:::-;:65;:215;;10982:1;10769:215;;;10910:11;:28;;;10884:8;:22;;;10877:61;;;;:::i;:::-;10739:290;;;;:::i;:::-;10588:25;;531:7:0;;10588:29:212;;10616:1;;10588:29;:::i;:::-;10399:6;:16;;;10379:6;:16;;;10364:8;10373:1;10364:11;;;;;;;;:::i;:::-;;;;;;;10356:20;;:39;;;;:::i;:::-;:59;;:192;;10532:6;:16;;;10517:8;10526:1;10517:11;;;;;;;;:::i;:::-;;;;;;;10509:20;;:39;;;;:::i;:::-;10356:192;;;10454:6;:16;;;10356:192;10262:23;;:316;;;;:::i;:::-;:356;;;;:::i;:::-;10236:430;;;;:::i;:::-;10214:837;;;;:::i;:::-;10205:846;;11073:4;11069:133;;;11101:21;;;;;;;;;;;;;;;;;;:12;:21::i;:::-;11153:30;573:1:0;11153:6:212;:30;:::i;:::-;11144:39;;11069:133;10178:1126;;;11240:21;;;;;;;;;;;;;;;;;;:12;:21::i;:::-;11288:1;11279:10;;10178:1126;9920:1394;9892:1514;;;11343:1;11334:10;;11364:5;11358:11;;11390:5;11383:12;;9892:1514;9519:1893;;;9267:2145;;;;;;;;;:::o;5600:391::-;5692:19;5728:9;5723:262;5743:12;:19;5739:1;:23;5723:262;;;5801:8;:6;:8::i;:::-;-1:-1:-1;;;;;5794:36:212;;5831:12;5844:1;5831:15;;;;;;;;:::i;:::-;;;;;;;5794:53;;;;;;;;;;;;;4243:25:229;;4231:2;4216:18;;4097:177;5794:53:212;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;5783:64:212;:7;-1:-1:-1;;;;;5783:64:212;;5779:147;;5884:4;5867:21;;5906:5;;5779:147;5957:3;;;;:::i;:::-;;;;5723:262;;;;5600:391;;;;:::o;4809:785::-;4892:19;4923:40;4966:32;4986:11;4966:19;:32::i;:::-;4923:75;;5013:9;5008:247;5028:13;:23;;;:30;5024:1;:34;5008:247;;;5091:13;:23;;;5115:1;5091:26;;;;;;;;:::i;:::-;;;;;;;5079:8;:38;5075:121;;5154:4;5137:21;;5176:5;;5075:121;5227:3;;;;:::i;:::-;;;;5008:247;;;;5269:14;5264:324;;5304:9;5299:279;5319:13;:23;;;:30;5315:1;:34;5299:279;;;5386:13;:23;;;5410:1;5386:26;;;;;;;;:::i;:::-;;;;;;;5374:8;:38;5370:133;;5453:4;5436:21;;5479:5;;5370:133;5542:3;;;;:::i;:::-;;;;5299:279;;;;4913:681;4809:785;;;;:::o;1942:98:123:-;1981:7;2003:32;:30;:32::i;5997:2175:212:-;6176:43;6199:4;6206:12;:10;:12::i;:::-;6176:14;:43::i;:::-;6259:40;6302:32;6322:11;6302:19;:32::i;:::-;6259:75;;6350:9;6345:384;6365:7;:14;6361:1;:18;6345:384;;;6400:27;6430:7;6438:1;6430:10;;;;;;;;:::i;:::-;;;;;;;6400:40;;6455:263;6487:11;6516:13;:22;;;6556:13;:30;;;6604:13;:30;;;6652:13;:22;;;6692:12;6455:14;:263::i;:::-;-1:-1:-1;6381:3:212;;6345:384;;;-1:-1:-1;6739:25:212;;;:27;;;;;;:::i;:::-;;;-1:-1:-1;6776:27:212;;;6850:516;6870:13;:23;;;:30;6866:1;:34;6850:516;;;6921:12;6936:46;6955:13;:23;;;6979:1;6955:26;;;;;;;;:::i;:::-;;;;;;;6936:18;:46::i;:::-;6921:61;;7009:1;7000:5;:10;6996:360;;7030:21;;;;:::i;:::-;;;;7079:13;:27;;;7073:34;;;;;;;;:::i;:::-;:39;;7111:1;7073:39;7069:273;;7147:8;:6;:8::i;:::-;-1:-1:-1;;;;;7140:39:212;;7180:13;:23;;;7204:1;7180:26;;;;;;;;:::i;:::-;;;;;;;7140:67;;;;;;;;;;;;;4243:25:229;;4231:2;4216:18;;4097:177;7140:67:212;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7136:188;;;7235:66;7262:13;:23;;;7286:1;7262:26;;;;;;;;:::i;:::-;;;;;;;7298:1;7290:10;;7235:26;:66::i;:::-;-1:-1:-1;6902:3:212;;6850:516;;;;7380:9;7375:310;7395:13;:23;;;:30;7391:1;:34;7375:310;;;7446:12;7461:46;7480:13;:23;;;7504:1;7480:26;;;;;;;;:::i;7461:46::-;7446:61;;7534:1;7525:5;:10;7521:154;;7555:21;;;;:::i;:::-;;;;7594:66;7621:13;:23;;;7645:1;7621:26;;;;;;;;:::i;7594:66::-;-1:-1:-1;7427:3:212;;7375:310;;;;7734:13;:23;;;:30;7711:19;:53;:126;;;;7807:13;:23;;;:30;7784:19;:53;7711:126;:197;;;;7886:13;:22;;;7857:13;:25;;;:51;7711:197;7694:472;;;8032:12;8012:17;;;:32;8058:47;8078:11;8012:13;8058:19;:47::i;:::-;8119:36;8129:11;8142:12;8119:9;:36::i;:::-;;;;7694:472;6095:2077;;;5997:2175;;;:::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:179:-;19917:33;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19917:33:179;19987:16;;;20001:1;19987:16;;;;;;;;;19958:26;;19987:16;;;;;;;;;;;-1:-1:-1;19987:16:179;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:179:o;8178:241:212:-;8266:146;8332:11;8345:21;8379:11;8392:7;8368:32;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;8368:32:212;;;;;;;;;;8297:105;;;;;;;:::i;:::-;;;;-1:-1:-1;;8297:105:212;;;;;;;;;;;;;;;;;;;;8266:17;:146::i;:::-;;8178:241;;:::o;4891:393:190:-;4998:16;;;5012:1;4998:16;;;;;;;;;4943:8;;;;;;4998:16;;;;;;;;;;;-1:-1:-1;4998:16:190;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:179:-;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:179;;22726:16;;;;;;;;;;;;-1:-1:-1;22726:16:179;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;2732:297:185:-;2858:16;;;2872:1;2858:16;;;;;;;;;2802:19;;;;2858:16;;;;;;;;;;;;-1:-1:-1;2858:16:185;2829:45;;2895:13;2880:9;2890:1;2880:12;;;;;;;;:::i;:::-;;;;;;;;;;:28;2915:13;2931:64;1144:66;2968:9;2915:13;1273:66;2931:26;:64::i;3417:271::-;3529:16;;;3543:1;3529:16;;;;;;;;;3500:26;;3529:16;;;;;;;;;;;-1:-1:-1;3529:16:185;3500:45;;3566:13;3551:9;3561:1;3551:12;;;;;;;;:::i;:::-;;;;;;:28;;;;;3586:97;1144:66;1128:83;;3623:9;3634:1;3655:11;3637:31;;;;;;24571:19:229;;24615:2;24606:12;;24442:182;3637:31:185;;;;-1:-1:-1;;3637:31:185;;;;;;;;;1273:66;3586:26;:97::i;11587:796:212:-;11848:16;;;442:7:0;11994:17:212;12007:4;11994:10;:17;:::i;:::-;11923:67;11932:8;:24;;;11958:11;:31;;;11923:8;:67::i;:::-;:89;;;;:::i;:::-;11909:133;;;;:::i;:::-;11887:155;;12146:20;487:7:0;12193:8:212;:24;;;12185:4;12171:11;:18;;;;:::i;:::-;12170:47;;;;:::i;:::-;12169:68;;;;:::i;:::-;12146:91;;12275:12;12261:11;:26;12247:40;;12301:11;12297:80;;;12365:1;12335:26;12349:12;12335:11;:26;:::i;:::-;:31;;12328:38;;12297:80;11877:506;;11587:796;;;;;;;;:::o;6598:121:166:-;6653:59;6708:2;6669:42;;;;;;;;:::i;:::-;;;;-1:-1:-1;;6669:42:166;;;;;;;;;;;;;;;;;;;;6653:15;:59::i;:::-;6598:121;:::o;4048:97:123:-;4089:7;4111:29;:27;:29::i;2631:154:220:-;2707:75;2738:35;2757:15;2738:18;:35::i;:::-;2775:6;2707:30;:75::i;:::-;2631:154;;:::o;8425:836:212:-;8668:29;8700:21;8712:8;8700:11;:21::i;:::-;8788;;8668:53;;-1:-1:-1;8782:28:212;;;;;;;;:::i;:::-;:33;;8814:1;8782:33;8778:477;;8831:38;8883:10;:22;;;8872:57;;;;;;;;;;;;:::i;:::-;8831:98;;8944:13;8959:8;8969:9;8998:85;9023:11;9036:10;9048;9060:8;9070:12;8998:24;:85::i;:::-;8943:140;;-1:-1:-1;8943:140:212;-1:-1:-1;8943:140:212;-1:-1:-1;9097:16:212;9156:32;531:7:0;8943:140:212;9156:32;:::i;:::-;9116:30;9135:10;9116:18;:30::i;:::-;:73;;;;:::i;:::-;9097:92;;9203:41;9222:10;9234:9;9203:18;:41::i;:::-;8817:438;;;;;8778:477;8631:630;8425:836;;;;;;:::o;9380:299:194:-;9496:16;;;9510:1;9496:16;;;;;;;;;9443;;;;9496;;;;;;;;;;;;-1:-1:-1;9496:16:194;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;12437:2445:212:-;12533:24;12559;12585:18;12619:40;12662:32;12682:11;12662:19;:32::i;:::-;12619:75;;12751:32;12793:23;12826:26;;:::i;:::-;12867:9;12862:280;12882:13;:23;;;:30;12878:1;:34;12862:280;;;12945:37;12955:13;:23;;;12979:1;12955:26;;;;;;;;:::i;:::-;;;;;;;12945:9;:37::i;:::-;12933:49;;13024:9;:15;;;12996:43;;;;;:::i;:::-;;;13079:1;13057:9;:19;;;:23;13053:79;;;13100:17;;;;:::i;:::-;;;;13053:79;12914:3;;12862:280;;;;13341:16;13367:15;13397:9;13392:408;13412:13;:23;;;:30;13408:1;:34;13392:408;;;13475:37;13485:13;:23;;;13509:1;13485:26;;;;;;;;:::i;13475:37::-;13463:49;;13560:1;13530:9;:19;;;:32;13526:264;;13593:20;;;;13582:31;;;;:::i;:::-;;;13643:48;13661:9;:15;;;13678:12;13643:17;:48::i;:::-;13631:60;;;;:::i;:::-;;;13709:66;13736:13;:23;;;13760:1;13736:26;;;;;;;;:::i;13709:66::-;13444:3;;13392:408;;;;14045:20;14080:9;14075:801;14095:13;:23;;;:30;14091:1;:34;14075:801;;;14161:13;:23;;;14185:1;14161:26;;;;;;;;:::i;:::-;;;;;;;14146:41;;14212:8;:6;:8::i;:::-;-1:-1:-1;;;;;14205:39:212;;14245:12;14205:53;;;;;;;;;;;;;4243:25:229;;4231:2;4216:18;;4097:177;14205:53:212;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14201:599;;;14290:23;14300:12;14290:9;:23::i;:::-;14278:35;;14364:1;14335:9;:19;;;:31;14331:403;;;14394:21;;14390:149;;14450:8;:6;:8::i;:::-;-1:-1:-1;;;;;14443:29:212;;14473:12;14488:26;14499:15;14488:8;:26;:::i;:::-;14443:73;;;;;;;;;;;;;26321:25:229;;;;26362:18;;;26355:34;26294:18;;14443:73:212;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14390:149;14582:1;14564:7;:20;:52;;;;;14614:1;14588:15;:28;14564:52;14560:156;;;14668:25;14678:15;14668:7;:25;:::i;:::-;14644:9;:20;;:49;;;;;;;:::i;:::-;;;-1:-1:-1;14560:156:212;14751:34;14761:12;14775:9;14751;:34::i;:::-;14813:52;14840:12;14862:1;14813:26;:52::i;:::-;14127:3;;14075:801;;;;12609:2273;;;;;;;12437:2445;;;;;:::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:179:-;25168:33;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25168:33:179;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:179: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;;;28683:98:229;28656:18;;3713:52:107;28539:248:229;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:190:-;2756:4:23;2742:27;;2736:34;2742:27;;;2736:34;7131:8:190;;;;6793:33;;;;;6839;7166:25;7157:34;;;;-1:-1:-1;7036:160:190;-1:-1:-1;;;;7036:160:190:o;26096:263:179:-;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;;;;;27069:216:179;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;1035:205:209:-;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;1836:227:46:-;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:175:-;-1:-1:-1;;;;;;;;;;;;;;;;;9133:16:175;;;9147:1;9133:16;;;;;;;;;9104:26;;9133:16;;;;;;;;;;;-1:-1:-1;9133:16:175;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;10065:254:194:-;10167:16;;;10181:1;10167:16;;;;;;;;;10138:26;;10167:16;;;;;;;;;;;-1:-1:-1;10167:16:194;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;;;;;;24571:19:229;;24615:2;24606:12;;24442:182;10270:29:194;;;;-1:-1:-1;;10270:29:194;;;;;;;;;1432:66;10219:26;:95::i;13158:402::-;13212:23;;:::i;:::-;13272:16;;;13286:1;13272:16;;;;;;;;;13243:26;;13272:16;;;;;;;;;;;-1:-1:-1;13272:16:194;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;15526:545::-;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:194;;15867:25;;15831:30;;15928:16;;;;;;;;;;;;-1:-1:-1;15928:16:194;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:179:-;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:179;23880:32;;23866:47;;;;;;;;:::i;:::-;2742:27:23;;;2736:34;2742:27;;;2736:34;2742:27;;;2736:34;2742:27;;;;2736:34;23850:63:179;;2736:34:23;;;;-1:-1:-1;2736:34:23;-1:-1:-1;2736:34:23;;-1:-1:-1;23661:475:179;-1:-1:-1;;23661:475:179:o;24239:522::-;24349:26;;24411:14;975:16:24;7017:70;;;6995:94;;24525:63:179;:41;24546:5;24411:14;6995:94:24;24525:20:179;:41::i;:::-;:61;:63::i;:::-;24512:77;-1:-1:-1;24605:4:179;-1:-1:-1;24605:4:179;6995:94:24;7059:27;7017:70;;;6995:94;24633:34:179;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;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;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:175:-;-1:-1:-1;;;;;;;;;;;;;;;;;13135:25:175;13148:11;13135:12;:25::i;:::-;13114:6;;13113:47;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;13190:44:175;13204:15;13221:12;13190:13;:44::i;:::-;13168:18;;;13167:67;13168:6;12940:299;-1:-1:-1;;;12940:299:175:o;17711:363:194:-;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:194;;;;-1:-1:-1;17711:363:194;;;-1:-1:-1;;;;;17711:363:194:o;18741:348::-;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;;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;;1650:10:41;1541:126;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;;;39799:66:229;39787:79;;2092:30:124;;;39775:92:229;2092:30:124;;39883:12:229;;;;2092:30:124;;;875:21:23;;;2092:30:124;2142:39;760:164:23;12092:156:175;2756:4:23;2742:27;;2736:34;12157:21:175;;12210:32;;12199:44;;;;;;;;:::i;12351:322::-;12461:24;12493:14;975:16:24;7017:70;;;6995:94;;12615:51:175;:41;12636:5;12493:14;6995:94:24;12615:20:175;:41::i;:::-;:49;:51::i;16807:746:194:-;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:194;2742:27:23;;;2736:34;2742:27;;;2736:34;17107:35:194;;-1:-1:-1;2736:34:23;-1:-1:-1;17221:33:194;;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:194;;;;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:194;-1:-1:-1;;16807:746:194:o;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;;;;;;24571:19:229;;24615:2;24606:12;;24442: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;;;;;;40574:19:229;;;40609:12;;;40602:28;;;51337:7:45;;40646:12:229;;51494:30:45;40385:279:229;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;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;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;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;1541:126:41;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:229:-;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:229;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:252::-;1293:2;1287:9;1335:3;1323:16;;1369:18;1354:34;;1390:22;;;1351:62;1348:88;;;1416:18;;:::i;1478:252::-;1550:2;1544:9;1592:3;1580:16;;1626:18;1611:34;;1647:22;;;1608:62;1605:88;;;1673:18;;:::i;1735:334::-;1806:2;1800:9;1862:2;1852:13;;-1:-1:-1;;1848:86:229;1836:99;;1965:18;1950:34;;1986:22;;;1947:62;1944:88;;;2012:18;;:::i;:::-;2048:2;2041:22;1735:334;;-1:-1:-1;1735:334:229:o;2074:183::-;2134:4;2167:18;2159:6;2156:30;2153:56;;;2189:18;;:::i;:::-;-1:-1:-1;2234:1:229;2230:14;2246:4;2226:25;;2074:183::o;2262:668::-;2316:5;2369:3;2362:4;2354:6;2350:17;2346:27;2336:55;;2387:1;2384;2377:12;2336:55;2423:6;2410:20;2449:4;2473:60;2489:43;2529:2;2489:43;:::i;:::-;2473:60;:::i;:::-;2555:3;2579:2;2574:3;2567:15;2607:4;2602:3;2598:14;2591:21;;2664:4;2658:2;2655:1;2651:10;2643:6;2639:23;2635:34;2621:48;;2692:3;2684:6;2681:15;2678:35;;;2709:1;2706;2699:12;2678:35;2745:4;2737:6;2733:17;2759:142;2775:6;2770:3;2767:15;2759:142;;;2841:17;;2829:30;;2879:12;;;;2792;;2759:142;;;-1:-1:-1;2919:5:229;2262:668;-1:-1:-1;;;;;;2262:668:229:o;2935:159::-;3002:20;;3062:6;3051:18;;3041:29;;3031:57;;3084:1;3081;3074:12;3099:740;3233:6;3241;3249;3257;3310:3;3298:9;3289:7;3285:23;3281:33;3278:53;;;3327:1;3324;3317:12;3278:53;3367:9;3354:23;3396:18;3437:2;3429:6;3426:14;3423:34;;;3453:1;3450;3443:12;3423:34;3476:61;3529:7;3520:6;3509:9;3505:22;3476:61;:::i;:::-;3466:71;;3590:2;3579:9;3575:18;3562:32;3546:48;;3619:2;3609:8;3606:16;3603:36;;;3635:1;3632;3625:12;3603:36;;3658:63;3713:7;3702:8;3691:9;3687:24;3658:63;:::i;:::-;3648:73;;;3740:37;3773:2;3762:9;3758:18;3740:37;:::i;:::-;3730:47;;3796:37;3829:2;3818:9;3814:18;3796:37;:::i;:::-;3786:47;;3099:740;;;;;;;:::o;3844:248::-;3912:6;3920;3973:2;3961:9;3952:7;3948:23;3944:32;3941:52;;;3989:1;3986;3979:12;3941:52;-1:-1:-1;;4012:23:229;;;4082:2;4067:18;;;4054:32;;-1:-1:-1;3844:248:229:o;4279:180::-;4338:6;4391:2;4379:9;4370:7;4366:23;4362:32;4359:52;;;4407:1;4404;4397:12;4359:52;-1:-1:-1;4430:23:229;;4279:180;-1:-1:-1;4279:180:229:o;4464:184::-;-1:-1:-1;;;4513:1:229;4506:88;4613:4;4610:1;4603:15;4637:4;4634:1;4627:15;4653:144;4738:1;4731:5;4728:12;4718:46;;4744:18;;:::i;:::-;4773;;4653:144::o;4802:439::-;4855:3;4893:5;4887:12;4920:6;4915:3;4908:19;4946:4;4975;4970:3;4966:14;4959:21;;5014:4;5007:5;5003:16;5037:1;5047:169;5061:6;5058:1;5055:13;5047:169;;;5122:13;;5110:26;;5156:12;;;;5191:15;;;;5083:1;5076:9;5047:169;;;-1:-1:-1;5232:3:229;;4802:439;-1:-1:-1;;;;;4802:439:229:o;5246:965::-;5453:2;5442:9;5435:21;5465:64;5525:2;5514:9;5510:18;5501:6;5495:13;5465:64;:::i;:::-;5583:2;5575:6;5571:15;5565:22;5560:2;5549:9;5545:18;5538:50;5642:2;5634:6;5630:15;5624:22;5619:2;5608:9;5604:18;5597:50;5702:2;5694:6;5690:15;5684:22;5678:3;5667:9;5663:19;5656:51;5762:3;5754:6;5750:16;5744:23;5738:3;5727:9;5723:19;5716:52;5416:4;5815:3;5807:6;5803:16;5797:23;5857:4;5851:3;5840:9;5836:19;5829:33;5885:63;5943:3;5932:9;5928:19;5914:12;5885:63;:::i;:::-;5871:77;;5997:3;5989:6;5985:16;5979:23;-1:-1:-1;;6056:9:229;6048:6;6044:22;6040:95;6033:4;6022:9;6018:20;6011:125;6153:52;6198:6;6182:14;6153:52;:::i;6216:1117::-;6276:5;6329:3;6322:4;6314:6;6310:17;6306:27;6296:55;;6347:1;6344;6337:12;6296:55;6383:6;6370:20;6409:4;6433:60;6449:43;6489:2;6449:43;:::i;6433:60::-;6527:15;;;6613:1;6609:10;;;;6597:23;;6593:32;;;6558:12;;;;6637:15;;;6634:35;;;6665:1;6662;6655:12;6634:35;6701:2;6693:6;6689:15;6713:591;6729:6;6724:3;6721:15;6713:591;;;6807:4;6801:3;6796;6792:13;6788:24;6785:114;;;6853:1;6882:2;6878;6871:14;6785:114;6925:22;;:::i;:::-;6974:17;;6960:32;;7041:12;;;7028:26;7012:14;;;7005:50;7078:2;7129:12;;;7116:26;7100:14;;;7093:50;7166:2;7217:12;;;7204:26;7188:14;;;7181:50;7244:18;;7282:12;;;;6755:4;6746:14;6713:591;;7338:516;7466:6;7474;7482;7535:2;7523:9;7514:7;7510:23;7506:32;7503:52;;;7551:1;7548;7541:12;7503:52;7587:9;7574:23;7564:33;;7644:2;7633:9;7629:18;7616:32;7606:42;;7699:2;7688:9;7684:18;7671:32;7726:18;7718:6;7715:30;7712:50;;;7758:1;7755;7748:12;7712:50;7781:67;7840:7;7831:6;7820:9;7816:22;7781:67;:::i;:::-;7771:77;;;7338:516;;;;;:::o;7859:759::-;8006:6;8014;8022;8075:2;8063:9;8054:7;8050:23;8046:32;8043:52;;;8091:1;8088;8081:12;8043:52;8130:9;8117:23;8169:1;8162:5;8159:12;8149:40;;8185:1;8182;8175:12;8149:40;8208:5;-1:-1:-1;8264:2:229;8249:18;;8236:32;8287:18;8317:14;;;8314:34;;;8344:1;8341;8334:12;8314:34;8367:61;8420:7;8411:6;8400:9;8396:22;8367:61;:::i;:::-;8357:71;;8481:2;8470:9;8466:18;8453:32;8437:48;;8510:2;8500:8;8497:16;8494:36;;;8526:1;8523;8516:12;8494:36;;8549:63;8604:7;8593:8;8582:9;8578:24;8549:63;:::i;8805:114::-;8889:4;8882:5;8878:16;8871:5;8868:27;8858:55;;8909:1;8906;8899:12;8924:1763;9058:6;9066;9074;9082;9090;9143:3;9131:9;9122:7;9118:23;9114:33;9111:53;;;9160:1;9157;9150:12;9111:53;9200:9;9187:23;9229:18;9270:2;9262:6;9259:14;9256:34;;;9286:1;9283;9276:12;9256:34;9309:22;;;;9365:3;9347:16;;;9343:26;9340:46;;;9382:1;9379;9372:12;9340:46;9408:22;;:::i;:::-;9466:2;9453:16;9446:5;9439:31;9489:2;9544;9540;9536:11;9523:25;9518:2;9511:5;9507:14;9500:49;9602:2;9598;9594:11;9581:25;9576:2;9569:5;9565:14;9558:49;9660:2;9656;9652:11;9639:25;9634:2;9627:5;9623:14;9616:49;9711:3;9707:2;9703:12;9690:26;9741:2;9731:8;9728:16;9725:36;;;9757:1;9754;9747:12;9725:36;9788:8;9784:2;9780:17;9770:27;;;9835:7;9828:4;9824:2;9820:13;9816:27;9806:55;;9857:1;9854;9847:12;9806:55;9893:2;9880:16;9870:26;;9916:60;9932:43;9972:2;9932:43;:::i;9916:60::-;10010:15;;;10092:1;10088:10;;;;10080:19;;10076:28;;;10041:12;;;;10116:19;;;10113:39;;;10148:1;10145;10138:12;10113:39;10172:11;;;;10192:221;10208:6;10203:3;10200:15;10192:221;;;10290:3;10277:17;10307:31;10330:7;10307:31;:::i;:::-;10351:20;;10225:12;;;;10391;;;;10192:221;;;10440:3;10429:15;;;10422:30;;;;10433:5;;10508:18;;;10495:32;;-1:-1:-1;;10574:2:229;10559:18;;10546:32;;10625:2;10610:18;;10597:32;;-1:-1:-1;10661:19:229;;;10648:33;;-1:-1:-1;8924:1763:229;-1:-1:-1;;;;;8924:1763:229:o;11034:154::-;-1:-1:-1;;;;;11113:5:229;11109:54;11102:5;11099:65;11089:93;;11178:1;11175;11168:12;11193:483;11286:6;11294;11347:2;11335:9;11326:7;11322:23;11318:32;11315:52;;;11363:1;11360;11353:12;11315:52;11402:9;11389:23;11421:31;11446:5;11421:31;:::i;:::-;11471:5;-1:-1:-1;11527:2:229;11512:18;;11499:32;11554:18;11543:30;;11540:50;;;11586:1;11583;11576:12;11540:50;11609:61;11662:7;11653:6;11642:9;11638:22;11609:61;:::i;:::-;11599:71;;;11193:483;;;;;:::o;12455:184::-;-1:-1:-1;;;12504:1:229;12497:88;12604:4;12601:1;12594:15;12628:4;12625:1;12618:15;12644:277;12711:6;12764:2;12752:9;12743:7;12739:23;12735:32;12732:52;;;12780:1;12777;12770:12;12732:52;12812:9;12806:16;12865:5;12858:13;12851:21;12844:5;12841:32;12831:60;;12887:1;12884;12877:12;13289:184;-1:-1:-1;;;13338:1:229;13331:88;13438:4;13435:1;13428:15;13462:4;13459:1;13452:15;13478:168;13551:9;;;13582;;13599:15;;;13593:22;;13579:37;13569:71;;13620:18;;:::i;13651:184::-;-1:-1:-1;;;13700:1:229;13693:88;13800:4;13797:1;13790:15;13824:4;13821:1;13814:15;13840:112;13872:1;13898;13888:35;;13903:18;;:::i;:::-;-1:-1:-1;13937:9:229;;13840:112::o;14679:251::-;14749:6;14802:2;14790:9;14781:7;14777:23;14773:32;14770:52;;;14818:1;14815;14808:12;14770:52;14850:9;14844:16;14869:31;14894:5;14869:31;:::i;16470:692::-;16783:48;16821:9;16813:6;16783:48;:::i;:::-;16867:3;16862:2;16851:9;16847:18;16840:31;16764:4;16894:78;16967:3;16956:9;16952:19;16944:6;16894:78;:::i;:::-;17020:9;17012:6;17008:22;17003:2;16992:9;16988:18;16981:50;17048:65;17106:6;17098;17048:65;:::i;:::-;17040:73;;;17149:6;17144:2;17133:9;17129:18;17122:34;16470:692;;;;;;;:::o;17526:711::-;17635:6;17688:3;17676:9;17667:7;17663:23;17659:33;17656:53;;;17705:1;17702;17695:12;17656:53;17731:22;;:::i;:::-;17782:9;17776:16;17769:5;17762:31;17846:2;17835:9;17831:18;17825:25;17820:2;17813:5;17809:14;17802:49;17904:2;17893:9;17889:18;17883:25;17878:2;17871:5;17867:14;17860:49;17962:2;17951:9;17947:18;17941:25;17936:2;17929:5;17925:14;17918:49;18021:3;18010:9;18006:19;18000:26;17994:3;17987:5;17983:15;17976:51;18081:3;18070:9;18066:19;18060:26;18054:3;18047:5;18043:15;18036:51;18141:3;18130:9;18126:19;18120:26;18114:3;18107:5;18103:15;18096:51;18201:3;18190:9;18186:19;18180:26;18174:3;18167:5;18163:15;18156:51;18226:5;18216:15;;;17526:711;;;;:::o;18242:736::-;18305:5;18358:3;18351:4;18343:6;18339:17;18335:27;18325:55;;18376:1;18373;18366:12;18325:55;18405:6;18399:13;18431:4;18455:60;18471:43;18511:2;18471:43;:::i;18455:60::-;18537:3;18561:2;18556:3;18549:15;18589:4;18584:3;18580:14;18573:21;;18646:4;18640:2;18637:1;18633:10;18625:6;18621:23;18617:34;18603:48;;18674:3;18666:6;18663:15;18660:35;;;18691:1;18688;18681:12;18660:35;18727:4;18719:6;18715:17;18741:208;18757:6;18752:3;18749:15;18741:208;;;18830:3;18824:10;18847:29;18870:5;18847:29;:::i;:::-;18889:18;;18927:12;;;;18774;;18741:208;;18983:999;19084:6;19137:2;19125:9;19116:7;19112:23;19108:32;19105:52;;;19153:1;19150;19143:12;19105:52;19186:9;19180:16;19215:18;19256:2;19248:6;19245:14;19242:34;;;19272:1;19269;19262:12;19242:34;19295:22;;;;19351:6;19333:16;;;19329:29;19326:49;;;19371:1;19368;19361:12;19326:49;19397:22;;:::i;:::-;19448:2;19442:9;19435:5;19428:24;19491:2;19487;19483:11;19477:18;19520:2;19510:8;19507:16;19504:36;;;19536:1;19533;19526:12;19504:36;19572:65;19629:7;19618:8;19614:2;19610:17;19572:65;:::i;:::-;19567:2;19560:5;19556:14;19549:89;;19684:2;19680;19676:11;19670:18;19665:2;19658:5;19654:14;19647:42;19735:2;19731;19727:11;19721:18;19716:2;19709:5;19705:14;19698:42;19787:3;19783:2;19779:12;19773:19;19767:3;19760:5;19756:15;19749:44;19840:3;19836:2;19832:12;19826:19;19820:3;19813:5;19809:15;19802:44;19893:3;19889:2;19885:12;19879:19;19873:3;19866:5;19862:15;19855:44;19946:3;19942:2;19938:12;19932:19;19926:3;19919:5;19915:15;19908:44;19971:5;19961:15;;;;;18983:999;;;;:::o;20177:1068::-;20271:6;20302:2;20345;20333:9;20324:7;20320:23;20316:32;20313:52;;;20361:1;20358;20351:12;20313:52;20394:9;20388:16;20423:18;20464:2;20456:6;20453:14;20450:34;;;20480:1;20477;20470:12;20450:34;20518:6;20507:9;20503:22;20493:32;;20563:7;20556:4;20552:2;20548:13;20544:27;20534:55;;20585:1;20582;20575:12;20534:55;20614:2;20608:9;20637:60;20653:43;20693:2;20653:43;:::i;20637:60::-;20731:15;;;20813:1;20809:10;;;;20801:19;;20797:28;;;20762:12;;;;20837:19;;;20834:39;;;20869:1;20866;20859:12;20834:39;20893:11;;;;20913:302;20929:6;20924:3;20921:15;20913:302;;;21002:3;20996:10;21050:2;21043:5;21039:14;21032:5;21029:25;21019:123;;21096:1;21125:2;21121;21114:14;21019:123;21155:18;;20946:12;;;;21193;;;;20913:302;;;21234:5;20177:1068;-1:-1:-1;;;;;;;;20177:1068:229:o;21250:200::-;21316:9;;;21289:4;21344:9;;21372:10;;21384:12;;;21368:29;21407:12;;;21399:21;;21365:56;21362:82;;;21424:18;;:::i;21455:120::-;21495:1;21521;21511:35;;21526:18;;:::i;:::-;-1:-1:-1;21560:9:229;;21455:120::o;21580:216::-;21644:9;;;21672:11;;;21619:3;21702:9;;21730:10;;21726:19;;21755:10;;21747:19;;21723:44;21720:70;;;21770:18;;:::i;21801:292::-;21873:9;;;21840:7;21898:9;;21915:66;21909:73;;21894:89;21891:115;;;21986:18;;:::i;:::-;22059:1;22050:7;22045:16;22042:1;22039:23;22035:1;22028:9;22025:38;22015:72;;22067:18;;:::i;22098:195::-;22137:3;-1:-1:-1;;22161:5:229;22158:77;22155:103;;22238:18;;:::i;:::-;-1:-1:-1;22285:1:229;22274:13;;22098:195::o;22298:990::-;22520:4;22549:2;22589;22578:9;22574:18;22619:6;22608:9;22601:25;22645:2;22683;22678;22667:9;22663:18;22656:30;22706:6;22741;22735:13;22772:6;22764;22757:22;22798:2;22788:12;;22831:2;22820:9;22816:18;22809:25;;22869:2;22861:6;22857:15;22890:1;22900:362;22914:6;22911:1;22908:13;22900:362;;;22973:13;;23011:9;;22999:22;;23061:11;;;23055:18;23041:12;;;23034:40;23114:11;;;23108:18;23094:12;;;23087:40;23167:11;;23161:18;23147:12;;;23140:40;23209:4;23200:14;;;;23237:15;;;;22936:1;22929:9;22900:362;;;-1:-1:-1;23279:3:229;;22298:990;-1:-1:-1;;;;;;;;;22298:990:229:o;23293:119::-;23380:1;23373:5;23370:12;23360:46;;23386:18;;:::i;23417:250::-;23502:1;23512:113;23526:6;23523:1;23520:13;23512:113;;;23602:11;;;23596:18;23583:11;;;23576:39;23548:2;23541:10;23512:113;;;-1:-1:-1;;23659:1:229;23641:16;;23634:27;23417:250::o;23672:329::-;23713:3;23751:5;23745:12;23778:6;23773:3;23766:19;23794:76;23863:6;23856:4;23851:3;23847:14;23840:4;23833:5;23829:16;23794:76;:::i;:::-;23915:2;23903:15;-1:-1:-1;;23899:88:229;23890:98;;;;23990:4;23886:109;;23672:329;-1:-1:-1;;23672:329:229:o;24006:431::-;24228:6;24217:9;24210:25;24244:44;24281:6;24244:44;:::i;:::-;24324:6;24319:2;24308:9;24304:18;24297:34;24367:2;24362;24351:9;24347:18;24340:30;24191:4;24387:44;24427:2;24416:9;24412:18;24404:6;24387:44;:::i;24629:125::-;24694:9;;;24715:10;;;24712:36;;;24728:18;;:::i;24759:219::-;24908:2;24897:9;24890:21;24871:4;24928:44;24968:2;24957:9;24953:18;24945:6;24928:44;:::i;24983:846::-;25092:6;25145:2;25133:9;25124:7;25120:23;25116:32;25113:52;;;25161:1;25158;25151:12;25113:52;25194:9;25188:16;25223:18;25264:2;25256:6;25253:14;25250:34;;;25280:1;25277;25270:12;25250:34;25303:22;;;;25359:4;25341:16;;;25337:27;25334:47;;;25377:1;25374;25367:12;25334:47;25403:22;;:::i;:::-;25454:2;25448:9;25441:5;25434:24;25504:2;25500;25496:11;25490:18;25485:2;25478:5;25474:14;25467:42;25555:2;25551;25547:11;25541:18;25536:2;25529:5;25525:14;25518:42;25606:2;25602;25598:11;25592:18;25587:2;25580:5;25576:14;25569:42;25650:3;25646:2;25642:12;25636:19;25680:2;25670:8;25667:16;25664:36;;;25696:1;25693;25686:12;25664:36;25733:65;25790:7;25779:8;25775:2;25771:17;25733:65;:::i;:::-;25727:3;25716:15;;25709:90;-1:-1:-1;25720:5:229;24983:846;-1:-1:-1;;;;;24983:846:229:o;25834:308::-;25873:1;25899;25889:35;;25904:18;;:::i;:::-;-1:-1:-1;;26018:1:229;26015:73;25946:66;25943:1;25940:73;25936:153;25933:179;;;26092:18;;:::i;:::-;-1:-1:-1;26126:10:229;;25834:308::o;26400:489::-;26700:6;26689:9;26682:25;26743:2;26738;26727:9;26723:18;26716:30;26663:4;26763:77;26836:2;26825:9;26821:18;26813:6;26763:77;:::i;:::-;26755:85;;26876:6;26871:2;26860:9;26856:18;26849:34;26400:489;;;;;;:::o;26894:568::-;26947:5;27000:3;26993:4;26985:6;26981:17;26977:27;26967:55;;27018:1;27015;27008:12;26967:55;27047:6;27041:13;27073:18;27069:2;27066:26;27063:52;;;27095:18;;:::i;:::-;27139:114;27247:4;-1:-1:-1;;27171:4:229;27167:2;27163:13;27159:86;27155:97;27139:114;:::i;:::-;27278:2;27269:7;27262:19;27324:3;27317:4;27312:2;27304:6;27300:15;27296:26;27293:35;27290:55;;;27341:1;27338;27331:12;27290:55;27354:77;27428:2;27421:4;27412:7;27408:18;27401:4;27393:6;27389:17;27354:77;:::i;27467:655::-;27609:6;27617;27625;27678:2;27666:9;27657:7;27653:23;27649:32;27646:52;;;27694:1;27691;27684:12;27646:52;27727:9;27721:16;27756:18;27797:2;27789:6;27786:14;27783:34;;;27813:1;27810;27803:12;27783:34;27836:60;27888:7;27879:6;27868:9;27864:22;27836:60;:::i;:::-;27826:70;;27936:2;27925:9;27921:18;27915:25;27905:35;;27986:2;27975:9;27971:18;27965:25;27949:41;;28015:2;28005:8;28002:16;27999:36;;;28031:1;28028;28021:12;27999:36;;28054:62;28108:7;28097:8;28086:9;28082:24;28054:62;:::i;28127:407::-;28210:5;28250;28244:12;28292:4;28285:5;28281:16;28275:23;28317:66;28409:2;28405;28401:11;28392:20;;28435:1;28427:6;28424:13;28421:107;;;28496:1;28492:14;;;;28489:1;28485:22;28481:31;;;28473:40;28469:49;;28127:407;-1:-1:-1;;28127:407:229:o;28792:526::-;29033:3;29072:1;29064:6;29061:13;29051:47;;29078:18;;:::i;:::-;-1:-1:-1;29123:3:229;29119:16;;;;29107:29;;29161:1;29152:11;;29145:27;;;;29197:2;29188:12;;29181:28;;;;29234:2;29225:12;;29218:28;29271:2;29262:12;;29255:28;29308:3;29299:13;;28792:526::o;29323:492::-;29498:3;29536:6;29530:13;29552:66;29611:6;29606:3;29599:4;29591:6;29587:17;29552:66;:::i;:::-;29681:13;;29640:16;;;;29703:70;29681:13;29640:16;29750:4;29738:17;;29703:70;:::i;:::-;29789:20;;29323:492;-1:-1:-1;;;;29323:492:229:o;29820:815::-;30215:6;30204:9;30197:25;30258:3;30253:2;30242:9;30238:18;30231:31;30178:4;30285:78;30358:3;30347:9;30343:19;30335:6;30285:78;:::i;:::-;30411:9;30403:6;30399:22;30394:2;30383:9;30379:18;30372:50;30445:32;30470:6;30462;30445:32;:::i;:::-;30431:46;;30513:6;30508:2;30497:9;30493:18;30486:34;30569:9;30561:6;30557:22;30551:3;30540:9;30536:19;30529:51;30597:32;30622:6;30614;30597:32;:::i;30640:569::-;30964:6;30953:9;30946:25;31007:3;31002:2;30991:9;30987:18;30980:31;30927:4;31028:78;31101:3;31090:9;31086:19;31078:6;31028:78;:::i;:::-;31154:4;31142:17;;;;31137:2;31122:18;;31115:45;-1:-1:-1;31191:2:229;31176:18;31169:34;31020:86;30640:569;-1:-1:-1;;30640:569:229:o;31214:184::-;31284:6;31337:2;31325:9;31316:7;31312:23;31308:32;31305:52;;;31353:1;31350;31343:12;31305:52;-1:-1:-1;31376:16:229;;31214:184;-1:-1:-1;31214:184:229:o;31403:730::-;31773:6;31762:9;31755:25;31816:3;31811:2;31800:9;31796:18;31789:31;31736:4;31843:78;31916:3;31905:9;31901:19;31893:6;31843:78;:::i;:::-;31969:4;31961:6;31957:17;31952:2;31941:9;31937:18;31930:45;32023:9;32015:6;32011:22;32006:2;31995:9;31991:18;31984:50;32051:32;32076:6;32068;32051:32;:::i;:::-;32043:40;;;32120:6;32114:3;32103:9;32099:19;32092:35;31403:730;;;;;;;;:::o;32138:191::-;32173:3;32204:66;32197:5;32194:77;32191:103;;32274:18;;:::i;:::-;-1:-1:-1;32314:1:229;32310:13;;32138:191::o;32334:128::-;32401:9;;;32422:11;;;32419:37;;;32436:18;;:::i;32467:339::-;32644:2;32633:9;32626:21;32607:4;32664:44;32704:2;32693:9;32689:18;32681:6;32664:44;:::i;:::-;32656:52;;-1:-1:-1;;;;;32748:6:229;32744:55;32739:2;32728:9;32724:18;32717:83;32467:339;;;;;:::o;32996:175::-;33033:3;33077:4;33070:5;33066:16;33106:4;33097:7;33094:17;33091:43;;33114:18;;:::i;:::-;33163:1;33150:15;;32996:175;-1:-1:-1;;32996:175:229:o;33176:320::-;33383:6;33372:9;33365:25;33426:2;33421;33410:9;33406:18;33399:30;33346:4;33446:44;33486:2;33475:9;33471:18;33463:6;33446:44;:::i;33501:335::-;33580:6;33633:2;33621:9;33612:7;33608:23;33604:32;33601:52;;;33649:1;33646;33639:12;33601:52;33682:9;33676:16;33715:18;33707:6;33704:30;33701:50;;;33747:1;33744;33737:12;33701:50;33770:60;33822:7;33813:6;33802:9;33798:22;33770:60;:::i;33841:925::-;34290:66;34282:6;34278:79;34273:3;34266:92;34248:3;34377;34409:2;34405:1;34400:3;34396:11;34389:23;34441:6;34435:13;34457:74;34524:6;34520:1;34515:3;34511:11;34504:4;34496:6;34492:17;34457:74;:::i;:::-;34559:6;34554:3;34550:16;34540:26;;34594:2;34590:1;34586:2;34582:10;34575:22;34628:6;34622:13;34606:29;;34644:75;34710:8;34706:1;34702:2;34698:10;34691:4;34683:6;34679:17;34644:75;:::i;:::-;34739:17;34758:1;34735:25;;33841:925;-1:-1:-1;;;;;33841:925:229:o;34771:714::-;35118:6;35113:3;35106:19;35155:6;35150:2;35145:3;35141:12;35134:28;35171:44;35208:6;35171:44;:::i;:::-;35249:3;35245:16;;;;35240:2;35231:12;;35224:38;35287:2;35278:12;;35271:28;;;;35324:2;35315:12;;35308:28;;;;35361:3;35352:13;;35345:29;35399:3;35390:13;;35383:29;35437:3;35428:13;;35421:29;35475:3;35466:13;;34771:714;-1:-1:-1;;34771:714:229:o;35490:640::-;35741:6;35736:3;35729:19;35711:3;35767:2;35800;35795:3;35791:12;35832:6;35826:13;35897:2;35889:6;35885:15;35918:1;35928:175;35942:6;35939:1;35936:13;35928:175;;;36005:13;;35991:28;;36041:14;;;;36078:15;;;;35964:1;35957:9;35928:175;;;-1:-1:-1;36119:5:229;;35490:640;-1:-1:-1;;;;;;;35490:640:229:o;36135:359::-;36338:2;36327:9;36320:21;36301:4;36358:44;36398:2;36387:9;36383:18;36375:6;36358:44;:::i;:::-;36433:2;36418:18;;36411:34;;;;-1:-1:-1;36476:2:229;36461:18;36454:34;36350:52;36135:359;-1:-1:-1;36135:359:229:o;36826:711::-;37161:3;37150:9;37143:22;37124:4;37188:78;37261:3;37250:9;37246:19;37238:6;37188:78;:::i;:::-;37314:9;37306:6;37302:22;37297:2;37286:9;37282:18;37275:50;37348:32;37373:6;37365;37348:32;:::i;:::-;37334:46;;37416:6;37411:2;37400:9;37396:18;37389:34;37471:9;37463:6;37459:22;37454:2;37443:9;37439:18;37432:50;37499:32;37524:6;37516;37499:32;:::i;:::-;37491:40;36826:711;-1:-1:-1;;;;;;;36826:711:229:o;37542:920::-;37998:6;37987:9;37980:25;38041:3;38036:2;38025:9;38021:18;38014:31;37961:4;38068:78;38141:3;38130:9;38126:19;38118:6;38068:78;:::i;:::-;38194:9;38186:6;38182:22;38177:2;38166:9;38162:18;38155:50;38228:32;38253:6;38245;38228:32;:::i;:::-;38214:46;;38296:6;38291:2;38280:9;38276:18;38269:34;38352:9;38344:6;38340:22;38334:3;38323:9;38319:19;38312:51;38380:32;38405:6;38397;38380:32;:::i;:::-;38372:40;;;38449:6;38443:3;38432:9;38428:19;38421:35;37542:920;;;;;;;;;:::o;38467:532::-;38718:2;38707:9;38700:21;38681:4;38744:77;38817:2;38806:9;38802:18;38794:6;38744:77;:::i;:::-;38869:14;38861:6;38857:27;38852:2;38841:9;38837:18;38830:55;38933:9;38925:6;38921:22;38916:2;38905:9;38901:18;38894:50;38961:32;38986:6;38978;38961:32;:::i;39004:637::-;39315:6;39304:9;39297:25;39358:3;39353:2;39342:9;39338:18;39331:31;39278:4;39385:78;39458:3;39447:9;39443:19;39435:6;39385:78;:::i;:::-;39511:14;39503:6;39499:27;39494:2;39483:9;39479:18;39472:55;39575:9;39567:6;39563:22;39558:2;39547:9;39543:18;39536:50;39603:32;39628:6;39620;39603:32;:::i;40093:287::-;40222:3;40260:6;40254:13;40276:66;40335:6;40330:3;40323:4;40315:6;40311:17;40276:66;:::i;:::-;40358:16;;;;;40093:287;-1:-1:-1;;40093:287:229:o;40669:530::-;40854:3;40892:6;40886:13;40908:66;40967:6;40962:3;40955:4;40947:6;40943:17;40908:66;:::i;:::-;41043:2;41039:15;;;;41056:66;41035:88;40996:16;;;;41021:103;;;41151:2;41140:14;;41133:30;;;;41190:2;41179:14;;40669:530;-1:-1:-1;;40669:530:229:o","linkReferences":{"src/libraries/LibChunks.sol":{"LibChunks":[{"start":3395,"length":20}]}}},"methodIdentifiers":{"_calculateMagicAttack()":"bfea0b85","_calculatePhysicalAttack((int256,int256,int256,int256,uint8[]),bytes32,bytes32,uint256,uint256)":"b127ae90","_msgSender()":"119df25f","_msgValue()":"45ec9354","_world()":"e1af802c","calculateGoldDrop(uint256,uint256)":"195e75c4","calculateItemDrop(uint256,uint256)":"32aeffdf","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\":[{\"components\":[{\"internalType\":\"int256\",\"name\":\"bonusDamage\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"armorPenetration\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"attackModifierBonus\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"critChanceBonus\",\"type\":\"int256\"},{\"internalType\":\"uint8[]\",\"name\":\"classRestrictions\",\"type\":\"uint8[]\"}],\"internalType\":\"struct PhysicalAttackStats\",\"name\":\"attackStats\",\"type\":\"tuple\"},{\"internalType\":\"bytes32\",\"name\":\"attackerId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"defenderId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"weaponId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"randomNumber\",\"type\":\"uint256\"}],\"name\":\"_calculatePhysicalAttack\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"damage\",\"type\":\"int256\"},{\"internalType\":\"bool\",\"name\":\"hit\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"crit\",\"type\":\"bool\"}],\"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\":\"uint256\",\"name\":\"mobLevel\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"randomNumber\",\"type\":\"uint256\"}],\"name\":\"calculateGoldDrop\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"dropAmount\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"randomNumber\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"}],\"name\":\"calculateItemDrop\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"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\":\"0xdd3ebcb4c411e951e1d5c68d6287c597f8f6ab874b48ae96600e024326bd7059\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://61cf2ec85c2dcfde0de8d6c12cdb78b59f8b94a8662dd122bc1aca013cc69c7c\",\"dweb:/ipfs/QmdsELzf5enAbpe5ERXRJgyg2PvtiAUiiX7dT85BLtKpCM\"]},\"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\":\"0x84ff02d4275be694bfbe1e60e24539a891dda5df3bacf04f0eb2a974425603d0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f88775b86cdc8322742e528072b64d01df3d3ef70d4fc5104412522e468ae4e2\",\"dweb:/ipfs/Qme75CeS2sA8pr1Tyx9GN5atmuG4aBGjMPaagaGtYTjc2R\"]},\"src/codegen/tables/Actions.sol\":{\"keccak256\":\"0x63cd48bebaa0414728e9be2c856e4eb01efaead6627a6615da4c77b886805cef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1dfe138555b67362f41c26ce1ab074bfc1fcc4e7c6fd0284b82cc699d80d392\",\"dweb:/ipfs/QmNf8UGE3FZ4U96HkeioE4peWWz1SKPAjhKRrGnpEnCdkQ\"]},\"src/codegen/tables/Admin.sol\":{\"keccak256\":\"0xe3b7e993ca2e420d73b845fb37388d453486e24522b941503a2f81c639769725\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e638c35d3ec5805180122b70849bd3a93aa680f3251ac9e7fe4f0ff24722f614\",\"dweb:/ipfs/QmVL3xJPrsVDgXQTdxBEkq4PRmyNDCFHGHKJxLQzuFy9XJ\"]},\"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/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\":\"0x1f0b21a82c18d474347446546973619289392ee9cc745eccbfb4ba802771b2e2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f0a514e9aa8c0265e8ac7284587cdfec829ad4904e511a284d44a325f9ee511b\",\"dweb:/ipfs/QmYGbphJpnBQMsTEtAM78kqH56FrzrmBFVNthRM4WLdUSQ\"]},\"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\":\"0x3ea10f6af2b29e07f658e961113a68db383bb5df7ec853bd797bd1cc14d19b0d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c834cb0bb80ffe10c6175f8a16b827dde9804d459e6aa33691484e419587d47f\",\"dweb:/ipfs/QmXnLXquHjNXN8CCsEL3NPNrQHW6UWY78oginRPtcHZFcw\"]},\"src/codegen/world/ICharacterSystem.sol\":{\"keccak256\":\"0x54157279932a37b055d247901f034848c1f0bffbf262028cf9c69eeedc9b7235\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ead77ae9ab020f705a998be6229e975b9352486deaa9aa800b6de10338190782\",\"dweb:/ipfs/QmaLrytghaAH6ipaBr4XwsaBcCzeVa5gujHGRNxeztuo4X\"]},\"src/codegen/world/ICombatSystem.sol\":{\"keccak256\":\"0x8b522a844626b33d69ae186dd26f2f7bfd921bf92ed7ed0cee2b8c349d9b64f9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://647f99949a4584cf4b528415ffea01ad243147548455fe5a8373b042b6af3087\",\"dweb:/ipfs/QmYsgXQDTwrqg7YSJkKtiNZzf63f4jdA4xfni5gb9ap5K5\"]},\"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\":\"0xc6caadf1800d688083c234a12cd151746f0271be03a50bb6a654634270ab0864\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://084766afac89e6f74162f69534635f90ec56570019223e22d20342f7853fb4e0\",\"dweb:/ipfs/QmbrQXrTewfgW2NydLgPCdt3Vton5V7nfE7HViXtyrMnoK\"]},\"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\":\"0xfb774a3d4388291fa5bae54bf1c592cc366a0585e6d24388dfeebaf3abd666b4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0986371fcb9f53bac88f2c190faf0f5a77fac686eced664aed5f2f1eb6eaca64\",\"dweb:/ipfs/QmWdgLEV31t27nNQC1KGEfaZHFcuBUayxHm2giZJpAG8hv\"]},\"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\":\"0x4f60df4991febf2ae091194d89b23a3c80c139411e25893839688a71d44b2845\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b883c5e4e4ed19980bb9b86ed74c495cbdb09308b3cabec547c15c39593e9db2\",\"dweb:/ipfs/QmTytgGUamjEEQhJSCbTJewVBZLYonFRkvNEmzUJxqhGKc\"]},\"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":[{"internalType":"struct PhysicalAttackStats","name":"attackStats","type":"tuple","components":[{"internalType":"int256","name":"bonusDamage","type":"int256"},{"internalType":"int256","name":"armorPenetration","type":"int256"},{"internalType":"int256","name":"attackModifierBonus","type":"int256"},{"internalType":"int256","name":"critChanceBonus","type":"int256"},{"internalType":"uint8[]","name":"classRestrictions","type":"uint8[]"}]},{"internalType":"bytes32","name":"attackerId","type":"bytes32"},{"internalType":"bytes32","name":"defenderId","type":"bytes32"},{"internalType":"uint256","name":"weaponId","type":"uint256"},{"internalType":"uint256","name":"randomNumber","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"_calculatePhysicalAttack","outputs":[{"internalType":"int256","name":"damage","type":"int256"},{"internalType":"bool","name":"hit","type":"bool"},{"internalType":"bool","name":"crit","type":"bool"}]},{"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":"uint256","name":"mobLevel","type":"uint256"},{"internalType":"uint256","name":"randomNumber","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"calculateGoldDrop","outputs":[{"internalType":"uint256","name":"dropAmount","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"randomNumber","type":"uint256"},{"internalType":"uint256","name":"itemId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"calculateItemDrop","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"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":"0xdd3ebcb4c411e951e1d5c68d6287c597f8f6ab874b48ae96600e024326bd7059","urls":["bzz-raw://61cf2ec85c2dcfde0de8d6c12cdb78b59f8b94a8662dd122bc1aca013cc69c7c","dweb:/ipfs/QmdsELzf5enAbpe5ERXRJgyg2PvtiAUiiX7dT85BLtKpCM"],"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":"0x84ff02d4275be694bfbe1e60e24539a891dda5df3bacf04f0eb2a974425603d0","urls":["bzz-raw://f88775b86cdc8322742e528072b64d01df3d3ef70d4fc5104412522e468ae4e2","dweb:/ipfs/Qme75CeS2sA8pr1Tyx9GN5atmuG4aBGjMPaagaGtYTjc2R"],"license":"MIT"},"src/codegen/tables/Actions.sol":{"keccak256":"0x63cd48bebaa0414728e9be2c856e4eb01efaead6627a6615da4c77b886805cef","urls":["bzz-raw://c1dfe138555b67362f41c26ce1ab074bfc1fcc4e7c6fd0284b82cc699d80d392","dweb:/ipfs/QmNf8UGE3FZ4U96HkeioE4peWWz1SKPAjhKRrGnpEnCdkQ"],"license":"MIT"},"src/codegen/tables/Admin.sol":{"keccak256":"0xe3b7e993ca2e420d73b845fb37388d453486e24522b941503a2f81c639769725","urls":["bzz-raw://e638c35d3ec5805180122b70849bd3a93aa680f3251ac9e7fe4f0ff24722f614","dweb:/ipfs/QmVL3xJPrsVDgXQTdxBEkq4PRmyNDCFHGHKJxLQzuFy9XJ"],"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/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":"0x1f0b21a82c18d474347446546973619289392ee9cc745eccbfb4ba802771b2e2","urls":["bzz-raw://f0a514e9aa8c0265e8ac7284587cdfec829ad4904e511a284d44a325f9ee511b","dweb:/ipfs/QmYGbphJpnBQMsTEtAM78kqH56FrzrmBFVNthRM4WLdUSQ"],"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":"0x3ea10f6af2b29e07f658e961113a68db383bb5df7ec853bd797bd1cc14d19b0d","urls":["bzz-raw://c834cb0bb80ffe10c6175f8a16b827dde9804d459e6aa33691484e419587d47f","dweb:/ipfs/QmXnLXquHjNXN8CCsEL3NPNrQHW6UWY78oginRPtcHZFcw"],"license":"MIT"},"src/codegen/world/ICharacterSystem.sol":{"keccak256":"0x54157279932a37b055d247901f034848c1f0bffbf262028cf9c69eeedc9b7235","urls":["bzz-raw://ead77ae9ab020f705a998be6229e975b9352486deaa9aa800b6de10338190782","dweb:/ipfs/QmaLrytghaAH6ipaBr4XwsaBcCzeVa5gujHGRNxeztuo4X"],"license":"MIT"},"src/codegen/world/ICombatSystem.sol":{"keccak256":"0x8b522a844626b33d69ae186dd26f2f7bfd921bf92ed7ed0cee2b8c349d9b64f9","urls":["bzz-raw://647f99949a4584cf4b528415ffea01ad243147548455fe5a8373b042b6af3087","dweb:/ipfs/QmYsgXQDTwrqg7YSJkKtiNZzf63f4jdA4xfni5gb9ap5K5"],"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":"0xc6caadf1800d688083c234a12cd151746f0271be03a50bb6a654634270ab0864","urls":["bzz-raw://084766afac89e6f74162f69534635f90ec56570019223e22d20342f7853fb4e0","dweb:/ipfs/QmbrQXrTewfgW2NydLgPCdt3Vton5V7nfE7HViXtyrMnoK"],"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":"0xfb774a3d4388291fa5bae54bf1c592cc366a0585e6d24388dfeebaf3abd666b4","urls":["bzz-raw://0986371fcb9f53bac88f2c190faf0f5a77fac686eced664aed5f2f1eb6eaca64","dweb:/ipfs/QmWdgLEV31t27nNQC1KGEfaZHFcuBUayxHm2giZJpAG8hv"],"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":"0x4f60df4991febf2ae091194d89b23a3c80c139411e25893839688a71d44b2845","urls":["bzz-raw://b883c5e4e4ed19980bb9b86ed74c495cbdb09308b3cabec547c15c39593e9db2","dweb:/ipfs/QmTytgGUamjEEQhJSCbTJewVBZLYonFRkvNEmzUJxqhGKc"],"license":"MIT"},"src/utils.sol":{"keccak256":"0xf50d451bb280fb33e08f521e168952f5145e69eee7df284ffeb1865b8b5187cc","urls":["bzz-raw://a78e6326639bdf19f606921e48c90663f387cbfd7d8160a461838e9ca6a0fc57","dweb:/ipfs/QmPT6PNCCQKWVP9bwYC4JyfuXJSgbupsgq6MT898gYfa1q"],"license":"MIT"}},"version":1},"id":212} \ No newline at end of file diff --git a/packages/contracts/out/EquipmentSystem.sol/EquipmentSystem.json b/packages/contracts/out/EquipmentSystem.sol/EquipmentSystem.json index 5e76453e6..d1705340c 100644 --- a/packages/contracts/out/EquipmentSystem.sol/EquipmentSystem.json +++ b/packages/contracts/out/EquipmentSystem.sol/EquipmentSystem.json @@ -1 +1 @@ -{"abi":[{"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":"applyEquipmentBonuses","inputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"modifiedStats","type":"tuple","internalType":"struct AdjustedCombatStats","components":[{"name":"adjustedStrength","type":"uint256","internalType":"uint256"},{"name":"adjustedAgility","type":"uint256","internalType":"uint256"},{"name":"adjustedIntelligence","type":"uint256","internalType":"uint256"},{"name":"adjustedArmor","type":"uint256","internalType":"uint256"},{"name":"adjustedMaxHp","type":"uint256","internalType":"uint256"},{"name":"currentHp","type":"int256","internalType":"int256"},{"name":"level","type":"uint256","internalType":"uint256"},{"name":"class","type":"uint256","internalType":"uint256"}]}],"stateMutability":"view"},{"type":"function","name":"checkRequirements","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"itemId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"canUse","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"equipItems","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"itemIds","type":"uint256[]","internalType":"uint256[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"getArmorStats","inputs":[{"name":"itemId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"_ArmorStats","type":"tuple","internalType":"struct ArmorStats","components":[{"name":"agiModifier","type":"int256","internalType":"int256"},{"name":"armorModifier","type":"uint256","internalType":"uint256"},{"name":"classRestrictions","type":"uint8[]","internalType":"uint8[]"},{"name":"hitPointModifier","type":"int256","internalType":"int256"},{"name":"intModifier","type":"int256","internalType":"int256"},{"name":"minLevel","type":"uint256","internalType":"uint256"},{"name":"strModifier","type":"int256","internalType":"int256"}]}],"stateMutability":"view"},{"type":"function","name":"getWeaponStats","inputs":[{"name":"itemId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"_weaponStats","type":"tuple","internalType":"struct WeaponStats","components":[{"name":"agiModifier","type":"int256","internalType":"int256"},{"name":"classRestrictions","type":"uint8[]","internalType":"uint8[]"},{"name":"hitPointModifier","type":"int256","internalType":"int256"},{"name":"intModifier","type":"int256","internalType":"int256"},{"name":"maxDamage","type":"uint256","internalType":"uint256"},{"name":"minDamage","type":"uint256","internalType":"uint256"},{"name":"minLevel","type":"uint256","internalType":"uint256"},{"name":"strModifier","type":"int256","internalType":"int256"}]}],"stateMutability":"view"},{"type":"function","name":"isEquipped","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"itemId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"_isEquipped","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":"function","name":"unequipItem","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"itemId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"success","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"event","name":"Store_SpliceDynamicData","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","indexed":false,"internalType":"uint8"},{"name":"start","type":"uint48","indexed":false,"internalType":"uint48"},{"name":"deleteCount","type":"uint40","indexed":false,"internalType":"uint40"},{"name":"encodedLengths","type":"bytes32","indexed":false,"internalType":"EncodedLengths"},{"name":"data","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":"EncodedLengths_InvalidLength","inputs":[{"name":"length","type":"uint256","internalType":"uint256"}]},{"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":"Store_IndexOutOfBounds","inputs":[{"name":"length","type":"uint256","internalType":"uint256"},{"name":"accessedIndex","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidResourceType","inputs":[{"name":"expected","type":"bytes2","internalType":"bytes2"},{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"Store_InvalidSplice","inputs":[{"name":"startWithinField","type":"uint40","internalType":"uint40"},{"name":"deleteCount","type":"uint40","internalType":"uint40"},{"name":"fieldLength","type":"uint40","internalType":"uint40"}]}],"bytecode":{"object":"0x608060405234801561001057600080fd5b50614373806100206000396000f3fe608060405234801561001057600080fd5b50600436106100c95760003560e01c80639056fa2811610081578063cc77a2de1161005b578063cc77a2de14610203578063e1af802c14610218578063edcfef821461022057600080fd5b80639056fa28146101695780639a8bb9a2146101dd578063b2aca84b146101f057600080fd5b806340a5ed2a116100b257806340a5ed2a1461011657806345ec93541461013657806363ff22871461014957600080fd5b806301ffc9a7146100ce578063119df25f146100f6575b600080fd5b6100e16100dc36600461388a565b610233565b60405190151581526020015b60405180910390f35b6100fe6102cc565b6040516001600160a01b0390911681526020016100ed565b6101296101243660046138cc565b6102db565b6040516100ed9190613924565b604051601f1936013581526020016100ed565b61015c6101573660046138cc565b6103ae565b6040516100ed9190613989565b61017c6101773660046138cc565b61047d565b6040516100ed9190600061010082019050825182526020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015260c083015160c083015260e083015160e083015292915050565b6100e16101eb3660046139fa565b61061e565b6100e16101fe3660046139fa565b61080a565b610216610211366004613ad4565b610b4a565b005b6100fe610e9a565b6100e161022e3660046139fa565b610ea4565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee1270000000000000000000000000000000000000000000000000000000014806102c657507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b60006102d661102f565b905090565b61031b6040518060e00160405280600081526020016000815260200160608152602001600081526020016000815260200160008152602001600081525090565b600061032683611061565b905060018151600581111561033d5761033d613b76565b1461038f5760405162461bcd60e51b815260206004820152601360248201527f4954454d533a204e6f742061202041726d6f720000000000000000000000000060448201526064015b60405180910390fd5b80604001518060200190518101906103a79190613c06565b9392505050565b6103f660405180610100016040528060008152602001606081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b600061040183611061565b905060008151600581111561041857610418613b76565b146104655760405162461bcd60e51b815260206004820152601460248201527f4954454d533a204e6f7420612020776561706f6e0000000000000000000000006044820152606401610386565b80604001518060200190518101906103a79190613cb2565b6104c560405180610100016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b60006104d08361112a565b905061051a60405180610100016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b6000610525856111d2565b805184519192506000916105399190613d7f565b1215610546576000610554565b805183516105549190613d7f565b82526020808201519084015160009161056c91613d7f565b121561057957600061058d565b8060200151836020015161058d9190613d7f565b6020830152604081015160608401516000916105a891613d7f565b12156105b55760006105c9565b806040015183606001516105c99190613d7f565b6040830152606081015160808401516000916105e491613d7f565b12156105f1576001610605565b806060015183608001516106059190613d7f565b60808301525060a0918201519181019190915292915050565b60008061062a83611061565b905060006106378561112a565b825160019450909150600581111561065157610651613b76565b60ff1660000361072057600082604001518060200190518101906106759190613cb2565b60c081015160e0840151602083015151929350101590600090156107035760005b8360200151518110156106fd57836020015181815181106106b9576106b9613d9f565b602002602001015160ff16856040015160028111156106da576106da613b76565b60ff16036106eb57600191506106fd565b806106f581613db5565b915050610696565b50610707565b5060015b811580610712575080155b1561071c57600095505b5050505b8151600581111561073357610733613b76565b60ff1660010361080257600082604001518060200190518101906107579190613c06565b60a081015160e0840151604083015151929350101590600090156107e55760005b8360400151518110156107df578360400151818151811061079b5761079b613d9f565b602002602001015160ff16856040015160028111156107bc576107bc613b76565b60ff16036107cd57600191506107df565b806107d781613db5565b915050610778565b506107e9565b5060015b8115806107f4575080155b156107fe57600095505b5050505b505092915050565b6000826000610818826112ba565b9050806060015161086b5760405162461bcd60e51b815260206004820152601960248201527f436861726163746572206e6f7420696e207468652047616d65000000000000006044820152606401610386565b6000610875610e9a565b6001600160a01b031663777c2caf876040518263ffffffff1660e01b81526004016108a291815260200190565b602060405180830381865afa1580156108bf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108e39190613dcf565b90506108ed6102cc565b6001600160a01b0316816001600160a01b03161461094d5760405162461bcd60e51b815260206004820152601a60248201527f4954454d533a204e6f7420436861726163746572204f776e65720000000000006044820152606401610386565b6000610957610e9a565b6001600160a01b031663cdaccbae876040518263ffffffff1660e01b815260040161098491815260200190565b602060405180830381865afa1580156109a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109c59190613df8565b60058111156109d6576109d6613b76565b905060ff8116610a415760006109f4876109ef8a61137f565b611411565b9050868160018351610a069190613e19565b81518110610a1657610a16613d9f565b602002602001015103610a3b57610a2d88826114e6565b610a3688611561565b600195505b50610b37565b60001960ff821601610a9e576000610a5c876109ef8a6115d8565b9050868160018351610a6e9190613e19565b81518110610a7e57610a7e613d9f565b602002602001015103610a3b57610a95888261164a565b610a36886116bb565b7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe60ff82160115610b375760405162461bcd60e51b815260206004820152602160248201527f45515549504d454e543a20554e5245434f474e495a4544204954454d2054595060448201527f45000000000000000000000000000000000000000000000000000000000000006064820152608401610386565b610b408761172e565b5050505092915050565b816000610b56826112ba565b90508060600151610ba95760405162461bcd60e51b815260206004820152601960248201527f436861726163746572206e6f7420696e207468652047616d65000000000000006044820152606401610386565b6000610bb3610e9a565b6001600160a01b031663777c2caf866040518263ffffffff1660e01b8152600401610be091815260200190565b602060405180830381865afa158015610bfd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c219190613dcf565b9050610c2b6102cc565b6001600160a01b0316816001600160a01b031614610c8b5760405162461bcd60e51b815260206004820152601a60248201527f4954454d533a204e6f7420436861726163746572204f776e65720000000000006044820152606401610386565b6000805b8551811015610e8857858181518110610caa57610caa613d9f565b60200260200101519150610cbc610e9a565b6001600160a01b031663b363411883610cd36102cc565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815260048101929092526001600160a01b03166024820152604401602060405180830381865afa158015610d35573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d599190613e2c565b610da55760405162461bcd60e51b815260206004820152601560248201527f4954454d533a204e6f74204974656d204f776e657200000000000000000000006044820152606401610386565b6000610db083611061565b9050600381600001516005811115610dca57610dca613b76565b60ff1610610e1a5760405162461bcd60e51b815260206004820152601d60248201527f4954454d533a204e6f7420616e2065717569707061626c65204974656d0000006044820152606401610386565b610e24888461061e565b610e705760405162461bcd60e51b815260206004820152601b60248201527f4954454d533a20526571756972656d656e7473206e6f74206d657400000000006044820152606401610386565b610e7f88848360000151611934565b50600101610c8f565b50610e928661172e565b505050505050565b60006102d6611a9f565b600080610eb083611061565b80519091506005811115610ec657610ec6613b76565b60ff16600003610f2b576000610edb8561137f565b905060005b8151811015610f245784828281518110610efc57610efc613d9f565b602002602001015103610f125760019350610f24565b80610f1c81613db5565b915050610ee0565b5050611028565b80516005811115610f3e57610f3e613b76565b60ff16600103610f9c576000610f53856115d8565b905060005b8151811015610f245784828281518110610f7457610f74613d9f565b602002602001015103610f8a5760019350610f24565b80610f9481613db5565b915050610f58565b80516005811115610faf57610faf613b76565b60ff16600203156110285760405162461bcd60e51b815260206004820152602160248201527f45515549504d454e543a20554e5245434f474e495a4544204954454d2054595060448201527f45000000000000000000000000000000000000000000000000000000000000006064820152608401610386565b5092915050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c8061105e5750335b90565b60408051606080820183526000808352602083015291810191909152604080516001808252818301909252600091602080830190803683370190505090508260001b816000815181106110b6576110b6613d9f565b60209081029190910101526000808061110f7f746255440000000000000000000000004974656d730000000000000000000000857e21020101200000000000000000000000000000000000000000000000000000611aa9565b925092509250611120838383611b79565b9695505050505050565b611132613834565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061116857611168613d9f565b6020908102919091010152600080806111c17f7462554400000000000000000000000053746174730000000000000000000000857ee1080020200120202020200000000000000000000000000000000000000000611aa9565b925092509250611120838383611be4565b61121a60405180610100016040528060008152602001600081526020016000815260200160008152602001600081526020016060815260200160608152602001606081525090565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061125057611250613d9f565b6020908102919091010152600080806112a97f7462554400000000000000000000000043686172616374657245717569706d65857ea0050320202020200000000000000000000000000000000000000000000000611aa9565b925092509250611120838383611c5c565b6040805160808101825260008082526020820181905281830181905260608201819052825160018082528185019094529192909190816020016020820280368337019050509050828160008151811061131557611315613d9f565b60209081029190910101526000808061136e7f7462554400000000000000000000000043686172616374657273000000000000857e55040020142001000000000000000000000000000000000000000000000000611aa9565b925092509250611120838383611ce3565b604080516001808252818301909252606091600091906020808301908036833701905050905082816000815181106113b9576113b9613d9f565b602090810291909101015260006113f27f7462554400000000000000000000000043686172616374657245717569706d65836001611d33565b90506114096114048260008451611dfa565b611e88565b949350505050565b60606001825111156114e05760005b82518110156114da578383828151811061143c5761143c613d9f565b6020026020010151036114c8576000836001855161145a9190613e19565b8151811061146a5761146a613d9f565b602002602001015190508084838151811061148757611487613d9f565b6020026020010181815250508484600186516114a39190613e19565b815181106114b3576114b3613d9f565b602002602001018181525050839250506114da565b806114d281613db5565b915050611420565b506102c6565b50919050565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061151c5761151c613d9f565b602090810291909101015261155c7f7462554400000000000000000000000043686172616374657245717569706d6582600161155786611e99565b611ea9565b505050565b60408051600180825281830190925260009160208083019080368337019050509050818160008151811061159757611597613d9f565b6020026020010181815250506115d47f7462554400000000000000000000000043686172616374657245717569706d6560001b8260016020611f5b565b5050565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061161257611612613d9f565b602090810291909101015260006113f27f7462554400000000000000000000000043686172616374657245717569706d658383611d33565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061168057611680613d9f565b602090810291909101015261155c7f7462554400000000000000000000000043686172616374657245717569706d6582600061155786611e99565b6040805160018082528183019092526000916020808301908036833701905050905081816000815181106116f1576116f1613d9f565b6020026020010181815250506115d47f7462554400000000000000000000000043686172616374657245717569706d6560001b8260006020611f5b565b6000611739826115d8565b905060006117468361137f565b905060008060008060006117906040518060e00160405280600081526020016000815260200160608152602001600081526020016000815260200160008152602001600081525090565b6117d860405180610100016040528060008152602001606081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b8851156118705760005b895181101561186e5761180d8a828151811061180057611800613d9f565b60200260200101516102db565b925082602001518861181f9190613e4e565b97508260c00151876118319190613d7f565b83519097506118409087613d7f565b95508260800151856118529190613d7f565b94508260600151846118649190613d7f565b93506001016117e2565b505b8751156118f65760005b88518110156118f4576118a589828151811061189857611898613d9f565b60200260200101516103ae565b91508160e00151876118b79190613d7f565b82519097506118c69087613d7f565b95508160600151856118d89190613d7f565b94508160400151846118ea9190613d7f565b935060010161187a565b505b6119008a87611fce565b61190a8a86612082565b6119148a85612101565b61191e8a84612180565b6119288a886121ff565b50505050505050505050565b61193e8383610ea4565b1561198b5760405162461bcd60e51b815260206004820152601b60248201527f45515549504d454e543a20414c524541445920455155495050454400000000006044820152606401610386565b80600581111561199d5761199d613b76565b60ff16600003611a095760036119b28461227e565b106119ff5760405162461bcd60e51b815260206004820181905260248201527f4954454d533a20546f6f206d616e7920776561706f6e732065717569707065646044820152606401610386565b611a0983836122fc565b806005811115611a1b57611a1b613b76565b60ff16600103611a87576003611a308461238f565b10611a7d5760405162461bcd60e51b815260206004820181905260248201527f4954454d533a20546f6f206d616e7920776561706f6e732065717569707065646044820152606401610386565b611a878383612400565b806005811115611a9957611a99613b76565b50505050565b60006102d661247f565b6060600060606000611ab961247f565b9050306001600160a01b03821603611ae257611ad68787876124be565b93509350935050611b70565b6040517f419b58fd0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063419b58fd90611b2b908a908a908a90600401613e92565b600060405180830381865afa158015611b48573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611ad69190810190613f43565b93509350939050565b60408051606080820183526000808352602083015291810191909152611b9e846125c6565b6020830181905282826005811115611bb857611bb8613b76565b6005811115611bc957611bc9613b76565b8152505050611bd883836125f2565b60408201529392505050565b611bec613834565b611bf58461261e565b60e0890181905260c0890182905260a089018390526080890184905260608901859052886020810160408201886002811115611c3357611c33613b76565b6002811115611c4457611c44613b76565b90529790975250505093909252509195945050505050565b611ca460405180610100016040528060008152602001600081526020016000815260200160008152602001600081526020016060815260200160608152602001606081525090565b611cad8461268c565b60808601526060850152604084015260208301528152611ccd83836126c8565b60e084015260c083015260a08201529392505050565b604080516080810182526000808252602082018190529181018290526060810191909152611d1084612733565b1515606085015260408401526001600160a01b0316602083015281529392505050565b60606000611d3f61247f565b9050306001600160a01b03821603611d6457611d5c85858561276d565b9150506103a7565b6040517f1e7889770000000000000000000000000000000000000000000000000000000081526001600160a01b03821690631e78897790611dad90889088908890600401613fb0565b600060405180830381865afa158015611dca573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611d5c9190810190613fdc565b509392505050565b600081831180611e0a5750835182115b15611e47578383836040517f23230fa30000000000000000000000000000000000000000000000000000000081526004016103869392919061403d565b60208401611e558482613e4e565b90506000611e638585613e19565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b606060006103a783602060006127a7565b6060816103a78160206000612822565b6000611eb361247f565b9050306001600160a01b03821603611ed657611ed185858585612876565b611f54565b6040517fef6ea8620000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063ef6ea86290611f21908890889088908890600401614062565b600060405180830381600087803b158015611f3b57600080fd5b505af1158015611f4f573d6000803e3d6000fd5b505050505b5050505050565b6000611f6561247f565b9050306001600160a01b03821603611f8357611ed1858585856128b1565b6040517fd9c03a040000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063d9c03a0490611f219088908890889088906004016140a1565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061200457612004613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260008560405160200161204d91815260200190565b60408051601f198184030181529190527ea005032020202020000000000000000000000000000000000000000000000061290a565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106120b8576120b8613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260018560405160200161204d91815260200190565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061213757612137613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260028560405160200161204d91815260200190565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106121b6576121b6613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260038560405160200161204d91815260200190565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061223557612235613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260048560405160200161204d91815260200190565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106122b7576122b7613d9f565b602090810291909101015260006122f07f7462554400000000000000000000000043686172616374657245717569706d658360016129b3565b60209004949350505050565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061233257612332613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260018560405160200161237b91815260200190565b604051602081830303815290604052612a65565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106123c8576123c8613d9f565b602090810291909101015260006122f07f7462554400000000000000000000000043686172616374657245717569706d6583836129b3565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061243657612436613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260008560405160200161237b91815260200190565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b0316806124b9573391505090565b919050565b60606000606060006124cf85612ad8565b90506124dc878783612afb565b935060006124e986612b34565b905080156125bb576124fb8888612b71565b935066ffffffffffffff841667ffffffffffffffff81111561251f5761251f613a1c565b6040519080825280601f01601f191660200182016040528015612549576020820181803683370190505b5092506020830160005b828160ff1610156125b857600061256b8b8b84612b84565b90506000612588888460ff166028026038011c64ffffffffff1690565b90506125978260008387612c04565b6125a18185613e4e565b9350505080806125b0906140e6565b915050612553565b50505b505093509350939050565b6020810151600090819060f81c60058111156125e4576125e4613b76565b602193909301519293915050565b60606000603884901c64ffffffffff16612615612610858484611dfa565b612cd0565b95945050505050565b600080600080600080600080612638896000016020015190565b60408a015160608b0151919950975060f81c600281111561265b5761265b613b76565b60618a015160818b015160a18c015160c18d015160e1909d01519b9d9a9c939b929a91995097509195509350915050565b60008060008060006126a2866000016020015190565b60408701516060880151608089015160a090990151929991989097509550909350915050565b606080806000603886901c64ffffffffff166126e8611404878484611dfa565b945090508064ffffffffff606088901c1601612708611404878484611dfa565b935090508064ffffffffff608888901c1601612728611404878484611dfa565b925050509250925092565b600080600080612747856000016020015190565b6040860151605487015191955060601c9350607486015190925060f81c90509193509193565b606061140961277d858585612b84565b60006127a28561278d8989612b71565b9060ff166028026038011c64ffffffffff1690565b612d50565b606060006127b58560801c90565b90506fffffffffffffffffffffffffffffffff851660008582816127db576127db6140d0565b04905060405193506020840160208202810160405281855260005b82811015612816578451871c8252938701936020909101906001016127f6565b50505050509392505050565b825160609060006128338583614105565b9050604051925060208301601f19603f83860101166040528184526000602088015b84821015612816578051871b83529187019160019190910190602001612855565b60006128828585612b71565b9050600061289f828560ff166028026038011c64ffffffffff1690565b9050610e928686866000858888612d73565b60006128bd8585612b71565b905060006128da828560ff166028026038011c64ffffffffff1690565b9050610e928686866128f38764ffffffffff8716613e19565b604080516000815260208101909152889088612d73565b600061291461247f565b9050306001600160a01b038216036129385761293386868686866131ad565b610e92565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae090612985908990899089908990899060040161411c565b600060405180830381600087803b15801561299f57600080fd5b505af1158015611928573d6000803e3d6000fd5b6000806129be61247f565b9050306001600160a01b038216036129db57611d5c8585856131c2565b6040517fdbbf0e210000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063dbbf0e2190612a2490889088908890600401613fb0565b602060405180830381865afa158015612a41573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d5c9190614163565b6000612a6f61247f565b9050306001600160a01b03821603612a8d57611ed1858585856131d2565b6040517f150f32620000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063150f326290611f21908890889088908890600401614062565b60006008612ae860026020613e19565b612af29190614105565b9190911c919050565b606081600003612b1a57506040805160208101909152600081526103a7565b6000612b26858561320d565b905061261581600085612d50565b60006008600180612b4760026020613e19565b612b519190613e19565b612b5b9190613e19565b612b659190614105565b8260ff911c1692915050565b60006103a7612b808484613263565b5490565b60008383604051602001612b9992919061417c565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b8215612c8b5760208310612c2e57602083048401935060208381612c2a57612c2a6140d0565b0692505b8215612c8b576020839003600081841015612c515750600019600884021c612c5b565b50600019600882021c5b8554600886021b818451168219821617845250818411612c7c575050611a99565b50600194909401939182900391015b5b60208210612cad5783548152600190930192601f1990910190602001612c8c565b8115611a99576000600019600884021c8251865482191691161782525050505050565b60606000612cde8360801c90565b90506fffffffffffffffffffffffffffffffff83168067ffffffffffffffff811115612d0c57612d0c613a1c565b6040519080825280601f01601f191660200182016040528015612d36576020820181803683370190505b50925060208301612d488382846132b9565b505050919050565b60405160208101601f19603f8484010116604052828252611df285858584612c04565b7f7462000000000000000000000000000000000000000000000000000000000000877fffff0000000000000000000000000000000000000000000000000000000000001614612e33577f74620000000000000000000000000000000000000000000000000000000000008788604051602001612df191815260200190565b60408051601f19818403018152908290527f31b466830000000000000000000000000000000000000000000000000000000082526103869392916004016141b8565b6000612e4e828760ff166028026038011c64ffffffffff1690565b9050600083518564ffffffffff1683612e679190613e19565b612e719190613e4e565b9050808214158015612e93575081612e8986886141f9565b64ffffffffff1614155b15612ee3576040517fa65010b400000000000000000000000000000000000000000000000000000000815264ffffffffff8088166004830152808716602483015283166044820152606401610386565b818664ffffffffff161115612f34576040517f7e8578d30000000000000000000000000000000000000000000000000000000081526004810183905264ffffffffff87166024820152604401610386565b6000612f41848984613304565b90506000612f4e8b6133d2565b905060005b8151811015613019576000828281518110612f7057612f70613d9f565b60200260200101519050612f9c6010826affffffffffffffffffffff191661345b90919063ffffffff16565b1561301057606081901c6001600160a01b03166355eb5a288e8e8e8e8e8d8f6040518863ffffffff1660e01b8152600401612fdd9796959493929190614217565b600060405180830381600087803b158015612ff757600080fd5b505af115801561300b573d6000803e3d6000fd5b505050505b50600101612f53565b5064ffffffffff881660005b8a60ff168160ff1610156130585761304c878260ff166028026038011c64ffffffffff1690565b90910190600101613025565b508b7ffe158a7adba34e256807c8a149028d3162918713c3838afc643ce9f96716ebfd8c8c848c888d60405161309396959493929190614275565b60405180910390a2508284146130b45760006130af8c8c613263565b839055505b60006130c18c8c8c612b84565b90506130d5818a64ffffffffff1689613479565b5060005b815181101561319f5760008282815181106130f6576130f6613d9f565b602002602001015190506131226020826affffffffffffffffffffff191661345b90919063ffffffff16565b1561319657606081901c6001600160a01b031663635845338e8e8e8e8e8a8f6040518863ffffffff1660e01b81526004016131639796959493929190614217565b600060405180830381600087803b15801561317d57600080fd5b505af1158015613191573d6000803e3d6000fd5b505050505b506001016130d9565b505050505050505050505050565b611f5485856131bc848761348f565b856134c0565b60006114098261278d8686612b71565b60006131de8585612b71565b905060006131fb828560ff166028026038011c64ffffffffff1690565b9050610e928686868460008888612d73565b6000828260405160200161322292919061417c565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b6000828260405160200161327892919061417c565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b5b602081106132d9578251825260209283019290910190601f19016132ba565b806000036132e657505050565b6000600019600883021c905080835116811985511617835250505050565b600064ffffffffff821115613348576040517f7149a3c100000000000000000000000000000000000000000000000000000000815260048101839052602401610386565b8366ffffffffffffff811660ff851660280260380182901c64ffffffffff1680851061337a5780850382019150613382565b848103820391505b5064ffffffffff6038602860ff8816020181811b197fffffffffffffffffffffffffffffffffffffffffffffffffff000000000000009490941690921792909216918416901b1790509392505050565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061340c5761340c613d9f565b602090810291909101015260006134447f746273746f726500000000000000000053746f7265486f6f6b73000000000000838361276d565b90506114096134568260008451611dfa565b613764565b60008160ff168261346c8560581c90565b1660ff1614905092915050565b61155c8383835161348a8560200190565b613775565b600080805b8360ff16811015611df2576134b660ff601b83900360080287901c1683613e4e565b9150600101613494565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff000000000000000000000000000000000000000000000000000000000000160361354a57837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be84848460405161353d939291906142d1565b60405180910390a2611a99565b6000613556858561320d565b90506000613563866133d2565b905060005b815181101561363857600082828151811061358557613585613d9f565b602002602001015190506135b16004826affffffffffffffffffffff191661345b90919063ffffffff16565b1561362f576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d906135fc908b908b908b908b90600401614304565b600060405180830381600087803b15801561361657600080fd5b505af115801561362a573d6000803e3d6000fd5b505050505b50600101613568565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be86868660405161366d939291906142d1565b60405180910390a2613688828565ffffffffffff1685613479565b60005b815181101561375b5760008282815181106136a8576136a8613d9f565b602002602001015190506136d46008826affffffffffffffffffffff191661345b90919063ffffffff16565b15613752576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba87219061371f908b908b908b908b90600401614304565b600060405180830381600087803b15801561373957600080fd5b505af115801561374d573d6000803e3d6000fd5b505050505b5060010161368b565b50505050505050565b606060006103a783601560006127a7565b82156137ef576020831061379f5760208304840193506020838161379b5761379b6140d0565b0692505b82156137ef5760208390036000600019600885021c1990506008850281811c91508351811c90508119875416828216178755508184116137e0575050611a99565b50600194909401939182900391015b5b602082106138115780518455600190930192601f19909101906020016137f0565b8115611a99576000600019600884021c8554835182191691161785555050505050565b60405180610100016040528060008152602001600081526020016000600281111561386157613861613b76565b815260200160008152602001600081526020016000815260200160008152602001600081525090565b60006020828403121561389c57600080fd5b81357fffffffff00000000000000000000000000000000000000000000000000000000811681146103a757600080fd5b6000602082840312156138de57600080fd5b5035919050565b60008151808452602080850194506020840160005b8381101561391957815160ff16875295820195908201906001016138fa565b509495945050505050565b6020815281516020820152602082015160408201526000604083015160e060608401526139556101008401826138e5565b905060608401516080840152608084015160a084015260a084015160c084015260c084015160e08401528091505092915050565b6020815281516020820152600060208301516101008060408501526139b26101208501836138e5565b91506040850151606085015260608501516080850152608085015160a085015260a085015160c085015260c085015160e085015260e085015181850152508091505092915050565b60008060408385031215613a0d57600080fd5b50508035926020909101359150565b634e487b7160e01b600052604160045260246000fd5b60405160e0810167ffffffffffffffff81118282101715613a5557613a55613a1c565b60405290565b604051610100810167ffffffffffffffff81118282101715613a5557613a55613a1c565b604051601f8201601f1916810167ffffffffffffffff81118282101715613aa857613aa8613a1c565b604052919050565b600067ffffffffffffffff821115613aca57613aca613a1c565b5060051b60200190565b60008060408385031215613ae757600080fd5b8235915060208084013567ffffffffffffffff811115613b0657600080fd5b8401601f81018613613b1757600080fd5b8035613b2a613b2582613ab0565b613a7f565b81815260059190911b82018301908381019088831115613b4957600080fd5b928401925b82841015613b6757833582529284019290840190613b4e565b80955050505050509250929050565b634e487b7160e01b600052602160045260246000fd5b600082601f830112613b9d57600080fd5b81516020613bad613b2583613ab0565b8083825260208201915060208460051b870101935086841115613bcf57600080fd5b602086015b84811015613bfb57805160ff81168114613bee5760008081fd5b8352918301918301613bd4565b509695505050505050565b600060208284031215613c1857600080fd5b815167ffffffffffffffff80821115613c3057600080fd5b9083019060e08286031215613c4457600080fd5b613c4c613a32565b8251815260208301516020820152604083015182811115613c6c57600080fd5b613c7887828601613b8c565b604083015250606083015160608201526080830151608082015260a083015160a082015260c083015160c082015280935050505092915050565b600060208284031215613cc457600080fd5b815167ffffffffffffffff80821115613cdc57600080fd5b908301906101008286031215613cf157600080fd5b613cf9613a5b565b82518152602083015182811115613d0f57600080fd5b613d1b87828601613b8c565b60208301525060408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e082015280935050505092915050565b634e487b7160e01b600052601160045260246000fd5b808201828112600083128015821682158216171561080257610802613d69565b634e487b7160e01b600052603260045260246000fd5b60006000198203613dc857613dc8613d69565b5060010190565b600060208284031215613de157600080fd5b81516001600160a01b03811681146103a757600080fd5b600060208284031215613e0a57600080fd5b8151600681106103a757600080fd5b818103818111156102c6576102c6613d69565b600060208284031215613e3e57600080fd5b815180151581146103a757600080fd5b808201808211156102c6576102c6613d69565b60008151808452602080850194506020840160005b8381101561391957815187529582019590820190600101613e76565b838152606060208201526000613eab6060830185613e61565b9050826040830152949350505050565b60005b83811015613ed6578181015183820152602001613ebe565b50506000910152565b600082601f830112613ef057600080fd5b815167ffffffffffffffff811115613f0a57613f0a613a1c565b613f1d6020601f19601f84011601613a7f565b818152846020838601011115613f3257600080fd5b611409826020830160208701613ebb565b600080600060608486031215613f5857600080fd5b835167ffffffffffffffff80821115613f7057600080fd5b613f7c87838801613edf565b9450602086015193506040860151915080821115613f9957600080fd5b50613fa686828701613edf565b9150509250925092565b838152606060208201526000613fc96060830185613e61565b905060ff83166040830152949350505050565b600060208284031215613fee57600080fd5b815167ffffffffffffffff81111561400557600080fd5b61140984828501613edf565b60008151808452614029816020860160208601613ebb565b601f01601f19169290920160200192915050565b6060815260006140506060830186614011565b60208301949094525060400152919050565b84815260806020820152600061407b6080830186613e61565b60ff8516604084015282810360608401526140968185614011565b979650505050505050565b8481526080602082015260006140ba6080830186613e61565b60ff949094166040830152506060015292915050565b634e487b7160e01b600052601260045260246000fd5b600060ff821660ff81036140fc576140fc613d69565b60010192915050565b80820281158282048414176102c6576102c6613d69565b85815260a06020820152600061413560a0830187613e61565b60ff8616604084015282810360608401526141508186614011565b9150508260808301529695505050505050565b60006020828403121561417557600080fd5b5051919050565b8281526000602080830184516020860160005b828110156141ab5781518452928401929084019060010161418f565b5091979650505050505050565b7fffff000000000000000000000000000000000000000000000000000000000000841681528260208201526060604082015260006126156060830184614011565b64ffffffffff81811683821601908082111561102857611028613d69565b87815260e06020820152600061423060e0830189613e61565b60ff8816604084015264ffffffffff87811660608501528616608084015260a0830185905282810360c08401526142678185614011565b9a9950505050505050505050565b60c08152600061428860c0830189613e61565b60ff8816602084015265ffffffffffff8716604084015264ffffffffff8616606084015284608084015282810360a08401526142c48185614011565b9998505050505050505050565b6060815260006142e46060830186613e61565b65ffffffffffff8516602084015282810360408401526111208185614011565b84815260806020820152600061431d6080830186613e61565b65ffffffffffff851660408401528281036060840152614096818561401156fea26469706673582212200d6f278b73fdd62546f66df21c40f6a4cc8b18e36ddf4b3c7697e432dbdc942364736f6c63430008180033","sourceMap":"1643:11866:213:-:0;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561001057600080fd5b50600436106100c95760003560e01c80639056fa2811610081578063cc77a2de1161005b578063cc77a2de14610203578063e1af802c14610218578063edcfef821461022057600080fd5b80639056fa28146101695780639a8bb9a2146101dd578063b2aca84b146101f057600080fd5b806340a5ed2a116100b257806340a5ed2a1461011657806345ec93541461013657806363ff22871461014957600080fd5b806301ffc9a7146100ce578063119df25f146100f6575b600080fd5b6100e16100dc36600461388a565b610233565b60405190151581526020015b60405180910390f35b6100fe6102cc565b6040516001600160a01b0390911681526020016100ed565b6101296101243660046138cc565b6102db565b6040516100ed9190613924565b604051601f1936013581526020016100ed565b61015c6101573660046138cc565b6103ae565b6040516100ed9190613989565b61017c6101773660046138cc565b61047d565b6040516100ed9190600061010082019050825182526020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015260c083015160c083015260e083015160e083015292915050565b6100e16101eb3660046139fa565b61061e565b6100e16101fe3660046139fa565b61080a565b610216610211366004613ad4565b610b4a565b005b6100fe610e9a565b6100e161022e3660046139fa565b610ea4565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee1270000000000000000000000000000000000000000000000000000000014806102c657507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b60006102d661102f565b905090565b61031b6040518060e00160405280600081526020016000815260200160608152602001600081526020016000815260200160008152602001600081525090565b600061032683611061565b905060018151600581111561033d5761033d613b76565b1461038f5760405162461bcd60e51b815260206004820152601360248201527f4954454d533a204e6f742061202041726d6f720000000000000000000000000060448201526064015b60405180910390fd5b80604001518060200190518101906103a79190613c06565b9392505050565b6103f660405180610100016040528060008152602001606081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b600061040183611061565b905060008151600581111561041857610418613b76565b146104655760405162461bcd60e51b815260206004820152601460248201527f4954454d533a204e6f7420612020776561706f6e0000000000000000000000006044820152606401610386565b80604001518060200190518101906103a79190613cb2565b6104c560405180610100016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b60006104d08361112a565b905061051a60405180610100016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b6000610525856111d2565b805184519192506000916105399190613d7f565b1215610546576000610554565b805183516105549190613d7f565b82526020808201519084015160009161056c91613d7f565b121561057957600061058d565b8060200151836020015161058d9190613d7f565b6020830152604081015160608401516000916105a891613d7f565b12156105b55760006105c9565b806040015183606001516105c99190613d7f565b6040830152606081015160808401516000916105e491613d7f565b12156105f1576001610605565b806060015183608001516106059190613d7f565b60808301525060a0918201519181019190915292915050565b60008061062a83611061565b905060006106378561112a565b825160019450909150600581111561065157610651613b76565b60ff1660000361072057600082604001518060200190518101906106759190613cb2565b60c081015160e0840151602083015151929350101590600090156107035760005b8360200151518110156106fd57836020015181815181106106b9576106b9613d9f565b602002602001015160ff16856040015160028111156106da576106da613b76565b60ff16036106eb57600191506106fd565b806106f581613db5565b915050610696565b50610707565b5060015b811580610712575080155b1561071c57600095505b5050505b8151600581111561073357610733613b76565b60ff1660010361080257600082604001518060200190518101906107579190613c06565b60a081015160e0840151604083015151929350101590600090156107e55760005b8360400151518110156107df578360400151818151811061079b5761079b613d9f565b602002602001015160ff16856040015160028111156107bc576107bc613b76565b60ff16036107cd57600191506107df565b806107d781613db5565b915050610778565b506107e9565b5060015b8115806107f4575080155b156107fe57600095505b5050505b505092915050565b6000826000610818826112ba565b9050806060015161086b5760405162461bcd60e51b815260206004820152601960248201527f436861726163746572206e6f7420696e207468652047616d65000000000000006044820152606401610386565b6000610875610e9a565b6001600160a01b031663777c2caf876040518263ffffffff1660e01b81526004016108a291815260200190565b602060405180830381865afa1580156108bf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108e39190613dcf565b90506108ed6102cc565b6001600160a01b0316816001600160a01b03161461094d5760405162461bcd60e51b815260206004820152601a60248201527f4954454d533a204e6f7420436861726163746572204f776e65720000000000006044820152606401610386565b6000610957610e9a565b6001600160a01b031663cdaccbae876040518263ffffffff1660e01b815260040161098491815260200190565b602060405180830381865afa1580156109a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109c59190613df8565b60058111156109d6576109d6613b76565b905060ff8116610a415760006109f4876109ef8a61137f565b611411565b9050868160018351610a069190613e19565b81518110610a1657610a16613d9f565b602002602001015103610a3b57610a2d88826114e6565b610a3688611561565b600195505b50610b37565b60001960ff821601610a9e576000610a5c876109ef8a6115d8565b9050868160018351610a6e9190613e19565b81518110610a7e57610a7e613d9f565b602002602001015103610a3b57610a95888261164a565b610a36886116bb565b7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe60ff82160115610b375760405162461bcd60e51b815260206004820152602160248201527f45515549504d454e543a20554e5245434f474e495a4544204954454d2054595060448201527f45000000000000000000000000000000000000000000000000000000000000006064820152608401610386565b610b408761172e565b5050505092915050565b816000610b56826112ba565b90508060600151610ba95760405162461bcd60e51b815260206004820152601960248201527f436861726163746572206e6f7420696e207468652047616d65000000000000006044820152606401610386565b6000610bb3610e9a565b6001600160a01b031663777c2caf866040518263ffffffff1660e01b8152600401610be091815260200190565b602060405180830381865afa158015610bfd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c219190613dcf565b9050610c2b6102cc565b6001600160a01b0316816001600160a01b031614610c8b5760405162461bcd60e51b815260206004820152601a60248201527f4954454d533a204e6f7420436861726163746572204f776e65720000000000006044820152606401610386565b6000805b8551811015610e8857858181518110610caa57610caa613d9f565b60200260200101519150610cbc610e9a565b6001600160a01b031663b363411883610cd36102cc565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815260048101929092526001600160a01b03166024820152604401602060405180830381865afa158015610d35573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d599190613e2c565b610da55760405162461bcd60e51b815260206004820152601560248201527f4954454d533a204e6f74204974656d204f776e657200000000000000000000006044820152606401610386565b6000610db083611061565b9050600381600001516005811115610dca57610dca613b76565b60ff1610610e1a5760405162461bcd60e51b815260206004820152601d60248201527f4954454d533a204e6f7420616e2065717569707061626c65204974656d0000006044820152606401610386565b610e24888461061e565b610e705760405162461bcd60e51b815260206004820152601b60248201527f4954454d533a20526571756972656d656e7473206e6f74206d657400000000006044820152606401610386565b610e7f88848360000151611934565b50600101610c8f565b50610e928661172e565b505050505050565b60006102d6611a9f565b600080610eb083611061565b80519091506005811115610ec657610ec6613b76565b60ff16600003610f2b576000610edb8561137f565b905060005b8151811015610f245784828281518110610efc57610efc613d9f565b602002602001015103610f125760019350610f24565b80610f1c81613db5565b915050610ee0565b5050611028565b80516005811115610f3e57610f3e613b76565b60ff16600103610f9c576000610f53856115d8565b905060005b8151811015610f245784828281518110610f7457610f74613d9f565b602002602001015103610f8a5760019350610f24565b80610f9481613db5565b915050610f58565b80516005811115610faf57610faf613b76565b60ff16600203156110285760405162461bcd60e51b815260206004820152602160248201527f45515549504d454e543a20554e5245434f474e495a4544204954454d2054595060448201527f45000000000000000000000000000000000000000000000000000000000000006064820152608401610386565b5092915050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c8061105e5750335b90565b60408051606080820183526000808352602083015291810191909152604080516001808252818301909252600091602080830190803683370190505090508260001b816000815181106110b6576110b6613d9f565b60209081029190910101526000808061110f7f746255440000000000000000000000004974656d730000000000000000000000857e21020101200000000000000000000000000000000000000000000000000000611aa9565b925092509250611120838383611b79565b9695505050505050565b611132613834565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061116857611168613d9f565b6020908102919091010152600080806111c17f7462554400000000000000000000000053746174730000000000000000000000857ee1080020200120202020200000000000000000000000000000000000000000611aa9565b925092509250611120838383611be4565b61121a60405180610100016040528060008152602001600081526020016000815260200160008152602001600081526020016060815260200160608152602001606081525090565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061125057611250613d9f565b6020908102919091010152600080806112a97f7462554400000000000000000000000043686172616374657245717569706d65857ea0050320202020200000000000000000000000000000000000000000000000611aa9565b925092509250611120838383611c5c565b6040805160808101825260008082526020820181905281830181905260608201819052825160018082528185019094529192909190816020016020820280368337019050509050828160008151811061131557611315613d9f565b60209081029190910101526000808061136e7f7462554400000000000000000000000043686172616374657273000000000000857e55040020142001000000000000000000000000000000000000000000000000611aa9565b925092509250611120838383611ce3565b604080516001808252818301909252606091600091906020808301908036833701905050905082816000815181106113b9576113b9613d9f565b602090810291909101015260006113f27f7462554400000000000000000000000043686172616374657245717569706d65836001611d33565b90506114096114048260008451611dfa565b611e88565b949350505050565b60606001825111156114e05760005b82518110156114da578383828151811061143c5761143c613d9f565b6020026020010151036114c8576000836001855161145a9190613e19565b8151811061146a5761146a613d9f565b602002602001015190508084838151811061148757611487613d9f565b6020026020010181815250508484600186516114a39190613e19565b815181106114b3576114b3613d9f565b602002602001018181525050839250506114da565b806114d281613db5565b915050611420565b506102c6565b50919050565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061151c5761151c613d9f565b602090810291909101015261155c7f7462554400000000000000000000000043686172616374657245717569706d6582600161155786611e99565b611ea9565b505050565b60408051600180825281830190925260009160208083019080368337019050509050818160008151811061159757611597613d9f565b6020026020010181815250506115d47f7462554400000000000000000000000043686172616374657245717569706d6560001b8260016020611f5b565b5050565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061161257611612613d9f565b602090810291909101015260006113f27f7462554400000000000000000000000043686172616374657245717569706d658383611d33565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061168057611680613d9f565b602090810291909101015261155c7f7462554400000000000000000000000043686172616374657245717569706d6582600061155786611e99565b6040805160018082528183019092526000916020808301908036833701905050905081816000815181106116f1576116f1613d9f565b6020026020010181815250506115d47f7462554400000000000000000000000043686172616374657245717569706d6560001b8260006020611f5b565b6000611739826115d8565b905060006117468361137f565b905060008060008060006117906040518060e00160405280600081526020016000815260200160608152602001600081526020016000815260200160008152602001600081525090565b6117d860405180610100016040528060008152602001606081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b8851156118705760005b895181101561186e5761180d8a828151811061180057611800613d9f565b60200260200101516102db565b925082602001518861181f9190613e4e565b97508260c00151876118319190613d7f565b83519097506118409087613d7f565b95508260800151856118529190613d7f565b94508260600151846118649190613d7f565b93506001016117e2565b505b8751156118f65760005b88518110156118f4576118a589828151811061189857611898613d9f565b60200260200101516103ae565b91508160e00151876118b79190613d7f565b82519097506118c69087613d7f565b95508160600151856118d89190613d7f565b94508160400151846118ea9190613d7f565b935060010161187a565b505b6119008a87611fce565b61190a8a86612082565b6119148a85612101565b61191e8a84612180565b6119288a886121ff565b50505050505050505050565b61193e8383610ea4565b1561198b5760405162461bcd60e51b815260206004820152601b60248201527f45515549504d454e543a20414c524541445920455155495050454400000000006044820152606401610386565b80600581111561199d5761199d613b76565b60ff16600003611a095760036119b28461227e565b106119ff5760405162461bcd60e51b815260206004820181905260248201527f4954454d533a20546f6f206d616e7920776561706f6e732065717569707065646044820152606401610386565b611a0983836122fc565b806005811115611a1b57611a1b613b76565b60ff16600103611a87576003611a308461238f565b10611a7d5760405162461bcd60e51b815260206004820181905260248201527f4954454d533a20546f6f206d616e7920776561706f6e732065717569707065646044820152606401610386565b611a878383612400565b806005811115611a9957611a99613b76565b50505050565b60006102d661247f565b6060600060606000611ab961247f565b9050306001600160a01b03821603611ae257611ad68787876124be565b93509350935050611b70565b6040517f419b58fd0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063419b58fd90611b2b908a908a908a90600401613e92565b600060405180830381865afa158015611b48573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611ad69190810190613f43565b93509350939050565b60408051606080820183526000808352602083015291810191909152611b9e846125c6565b6020830181905282826005811115611bb857611bb8613b76565b6005811115611bc957611bc9613b76565b8152505050611bd883836125f2565b60408201529392505050565b611bec613834565b611bf58461261e565b60e0890181905260c0890182905260a089018390526080890184905260608901859052886020810160408201886002811115611c3357611c33613b76565b6002811115611c4457611c44613b76565b90529790975250505093909252509195945050505050565b611ca460405180610100016040528060008152602001600081526020016000815260200160008152602001600081526020016060815260200160608152602001606081525090565b611cad8461268c565b60808601526060850152604084015260208301528152611ccd83836126c8565b60e084015260c083015260a08201529392505050565b604080516080810182526000808252602082018190529181018290526060810191909152611d1084612733565b1515606085015260408401526001600160a01b0316602083015281529392505050565b60606000611d3f61247f565b9050306001600160a01b03821603611d6457611d5c85858561276d565b9150506103a7565b6040517f1e7889770000000000000000000000000000000000000000000000000000000081526001600160a01b03821690631e78897790611dad90889088908890600401613fb0565b600060405180830381865afa158015611dca573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611d5c9190810190613fdc565b509392505050565b600081831180611e0a5750835182115b15611e47578383836040517f23230fa30000000000000000000000000000000000000000000000000000000081526004016103869392919061403d565b60208401611e558482613e4e565b90506000611e638585613e19565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b606060006103a783602060006127a7565b6060816103a78160206000612822565b6000611eb361247f565b9050306001600160a01b03821603611ed657611ed185858585612876565b611f54565b6040517fef6ea8620000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063ef6ea86290611f21908890889088908890600401614062565b600060405180830381600087803b158015611f3b57600080fd5b505af1158015611f4f573d6000803e3d6000fd5b505050505b5050505050565b6000611f6561247f565b9050306001600160a01b03821603611f8357611ed1858585856128b1565b6040517fd9c03a040000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063d9c03a0490611f219088908890889088906004016140a1565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061200457612004613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260008560405160200161204d91815260200190565b60408051601f198184030181529190527ea005032020202020000000000000000000000000000000000000000000000061290a565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106120b8576120b8613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260018560405160200161204d91815260200190565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061213757612137613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260028560405160200161204d91815260200190565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106121b6576121b6613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260038560405160200161204d91815260200190565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061223557612235613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260048560405160200161204d91815260200190565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106122b7576122b7613d9f565b602090810291909101015260006122f07f7462554400000000000000000000000043686172616374657245717569706d658360016129b3565b60209004949350505050565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061233257612332613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260018560405160200161237b91815260200190565b604051602081830303815290604052612a65565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106123c8576123c8613d9f565b602090810291909101015260006122f07f7462554400000000000000000000000043686172616374657245717569706d6583836129b3565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061243657612436613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260008560405160200161237b91815260200190565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b0316806124b9573391505090565b919050565b60606000606060006124cf85612ad8565b90506124dc878783612afb565b935060006124e986612b34565b905080156125bb576124fb8888612b71565b935066ffffffffffffff841667ffffffffffffffff81111561251f5761251f613a1c565b6040519080825280601f01601f191660200182016040528015612549576020820181803683370190505b5092506020830160005b828160ff1610156125b857600061256b8b8b84612b84565b90506000612588888460ff166028026038011c64ffffffffff1690565b90506125978260008387612c04565b6125a18185613e4e565b9350505080806125b0906140e6565b915050612553565b50505b505093509350939050565b6020810151600090819060f81c60058111156125e4576125e4613b76565b602193909301519293915050565b60606000603884901c64ffffffffff16612615612610858484611dfa565b612cd0565b95945050505050565b600080600080600080600080612638896000016020015190565b60408a015160608b0151919950975060f81c600281111561265b5761265b613b76565b60618a015160818b015160a18c015160c18d015160e1909d01519b9d9a9c939b929a91995097509195509350915050565b60008060008060006126a2866000016020015190565b60408701516060880151608089015160a090990151929991989097509550909350915050565b606080806000603886901c64ffffffffff166126e8611404878484611dfa565b945090508064ffffffffff606088901c1601612708611404878484611dfa565b935090508064ffffffffff608888901c1601612728611404878484611dfa565b925050509250925092565b600080600080612747856000016020015190565b6040860151605487015191955060601c9350607486015190925060f81c90509193509193565b606061140961277d858585612b84565b60006127a28561278d8989612b71565b9060ff166028026038011c64ffffffffff1690565b612d50565b606060006127b58560801c90565b90506fffffffffffffffffffffffffffffffff851660008582816127db576127db6140d0565b04905060405193506020840160208202810160405281855260005b82811015612816578451871c8252938701936020909101906001016127f6565b50505050509392505050565b825160609060006128338583614105565b9050604051925060208301601f19603f83860101166040528184526000602088015b84821015612816578051871b83529187019160019190910190602001612855565b60006128828585612b71565b9050600061289f828560ff166028026038011c64ffffffffff1690565b9050610e928686866000858888612d73565b60006128bd8585612b71565b905060006128da828560ff166028026038011c64ffffffffff1690565b9050610e928686866128f38764ffffffffff8716613e19565b604080516000815260208101909152889088612d73565b600061291461247f565b9050306001600160a01b038216036129385761293386868686866131ad565b610e92565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae090612985908990899089908990899060040161411c565b600060405180830381600087803b15801561299f57600080fd5b505af1158015611928573d6000803e3d6000fd5b6000806129be61247f565b9050306001600160a01b038216036129db57611d5c8585856131c2565b6040517fdbbf0e210000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063dbbf0e2190612a2490889088908890600401613fb0565b602060405180830381865afa158015612a41573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d5c9190614163565b6000612a6f61247f565b9050306001600160a01b03821603612a8d57611ed1858585856131d2565b6040517f150f32620000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063150f326290611f21908890889088908890600401614062565b60006008612ae860026020613e19565b612af29190614105565b9190911c919050565b606081600003612b1a57506040805160208101909152600081526103a7565b6000612b26858561320d565b905061261581600085612d50565b60006008600180612b4760026020613e19565b612b519190613e19565b612b5b9190613e19565b612b659190614105565b8260ff911c1692915050565b60006103a7612b808484613263565b5490565b60008383604051602001612b9992919061417c565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b8215612c8b5760208310612c2e57602083048401935060208381612c2a57612c2a6140d0565b0692505b8215612c8b576020839003600081841015612c515750600019600884021c612c5b565b50600019600882021c5b8554600886021b818451168219821617845250818411612c7c575050611a99565b50600194909401939182900391015b5b60208210612cad5783548152600190930192601f1990910190602001612c8c565b8115611a99576000600019600884021c8251865482191691161782525050505050565b60606000612cde8360801c90565b90506fffffffffffffffffffffffffffffffff83168067ffffffffffffffff811115612d0c57612d0c613a1c565b6040519080825280601f01601f191660200182016040528015612d36576020820181803683370190505b50925060208301612d488382846132b9565b505050919050565b60405160208101601f19603f8484010116604052828252611df285858584612c04565b7f7462000000000000000000000000000000000000000000000000000000000000877fffff0000000000000000000000000000000000000000000000000000000000001614612e33577f74620000000000000000000000000000000000000000000000000000000000008788604051602001612df191815260200190565b60408051601f19818403018152908290527f31b466830000000000000000000000000000000000000000000000000000000082526103869392916004016141b8565b6000612e4e828760ff166028026038011c64ffffffffff1690565b9050600083518564ffffffffff1683612e679190613e19565b612e719190613e4e565b9050808214158015612e93575081612e8986886141f9565b64ffffffffff1614155b15612ee3576040517fa65010b400000000000000000000000000000000000000000000000000000000815264ffffffffff8088166004830152808716602483015283166044820152606401610386565b818664ffffffffff161115612f34576040517f7e8578d30000000000000000000000000000000000000000000000000000000081526004810183905264ffffffffff87166024820152604401610386565b6000612f41848984613304565b90506000612f4e8b6133d2565b905060005b8151811015613019576000828281518110612f7057612f70613d9f565b60200260200101519050612f9c6010826affffffffffffffffffffff191661345b90919063ffffffff16565b1561301057606081901c6001600160a01b03166355eb5a288e8e8e8e8e8d8f6040518863ffffffff1660e01b8152600401612fdd9796959493929190614217565b600060405180830381600087803b158015612ff757600080fd5b505af115801561300b573d6000803e3d6000fd5b505050505b50600101612f53565b5064ffffffffff881660005b8a60ff168160ff1610156130585761304c878260ff166028026038011c64ffffffffff1690565b90910190600101613025565b508b7ffe158a7adba34e256807c8a149028d3162918713c3838afc643ce9f96716ebfd8c8c848c888d60405161309396959493929190614275565b60405180910390a2508284146130b45760006130af8c8c613263565b839055505b60006130c18c8c8c612b84565b90506130d5818a64ffffffffff1689613479565b5060005b815181101561319f5760008282815181106130f6576130f6613d9f565b602002602001015190506131226020826affffffffffffffffffffff191661345b90919063ffffffff16565b1561319657606081901c6001600160a01b031663635845338e8e8e8e8e8a8f6040518863ffffffff1660e01b81526004016131639796959493929190614217565b600060405180830381600087803b15801561317d57600080fd5b505af1158015613191573d6000803e3d6000fd5b505050505b506001016130d9565b505050505050505050505050565b611f5485856131bc848761348f565b856134c0565b60006114098261278d8686612b71565b60006131de8585612b71565b905060006131fb828560ff166028026038011c64ffffffffff1690565b9050610e928686868460008888612d73565b6000828260405160200161322292919061417c565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b6000828260405160200161327892919061417c565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b5b602081106132d9578251825260209283019290910190601f19016132ba565b806000036132e657505050565b6000600019600883021c905080835116811985511617835250505050565b600064ffffffffff821115613348576040517f7149a3c100000000000000000000000000000000000000000000000000000000815260048101839052602401610386565b8366ffffffffffffff811660ff851660280260380182901c64ffffffffff1680851061337a5780850382019150613382565b848103820391505b5064ffffffffff6038602860ff8816020181811b197fffffffffffffffffffffffffffffffffffffffffffffffffff000000000000009490941690921792909216918416901b1790509392505050565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061340c5761340c613d9f565b602090810291909101015260006134447f746273746f726500000000000000000053746f7265486f6f6b73000000000000838361276d565b90506114096134568260008451611dfa565b613764565b60008160ff168261346c8560581c90565b1660ff1614905092915050565b61155c8383835161348a8560200190565b613775565b600080805b8360ff16811015611df2576134b660ff601b83900360080287901c1683613e4e565b9150600101613494565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff000000000000000000000000000000000000000000000000000000000000160361354a57837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be84848460405161353d939291906142d1565b60405180910390a2611a99565b6000613556858561320d565b90506000613563866133d2565b905060005b815181101561363857600082828151811061358557613585613d9f565b602002602001015190506135b16004826affffffffffffffffffffff191661345b90919063ffffffff16565b1561362f576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d906135fc908b908b908b908b90600401614304565b600060405180830381600087803b15801561361657600080fd5b505af115801561362a573d6000803e3d6000fd5b505050505b50600101613568565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be86868660405161366d939291906142d1565b60405180910390a2613688828565ffffffffffff1685613479565b60005b815181101561375b5760008282815181106136a8576136a8613d9f565b602002602001015190506136d46008826affffffffffffffffffffff191661345b90919063ffffffff16565b15613752576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba87219061371f908b908b908b908b90600401614304565b600060405180830381600087803b15801561373957600080fd5b505af115801561374d573d6000803e3d6000fd5b505050505b5060010161368b565b50505050505050565b606060006103a783601560006127a7565b82156137ef576020831061379f5760208304840193506020838161379b5761379b6140d0565b0692505b82156137ef5760208390036000600019600885021c1990506008850281811c91508351811c90508119875416828216178755508184116137e0575050611a99565b50600194909401939182900391015b5b602082106138115780518455600190930192601f19909101906020016137f0565b8115611a99576000600019600884021c8554835182191691161785555050505050565b60405180610100016040528060008152602001600081526020016000600281111561386157613861613b76565b815260200160008152602001600081526020016000815260200160008152602001600081525090565b60006020828403121561389c57600080fd5b81357fffffffff00000000000000000000000000000000000000000000000000000000811681146103a757600080fd5b6000602082840312156138de57600080fd5b5035919050565b60008151808452602080850194506020840160005b8381101561391957815160ff16875295820195908201906001016138fa565b509495945050505050565b6020815281516020820152602082015160408201526000604083015160e060608401526139556101008401826138e5565b905060608401516080840152608084015160a084015260a084015160c084015260c084015160e08401528091505092915050565b6020815281516020820152600060208301516101008060408501526139b26101208501836138e5565b91506040850151606085015260608501516080850152608085015160a085015260a085015160c085015260c085015160e085015260e085015181850152508091505092915050565b60008060408385031215613a0d57600080fd5b50508035926020909101359150565b634e487b7160e01b600052604160045260246000fd5b60405160e0810167ffffffffffffffff81118282101715613a5557613a55613a1c565b60405290565b604051610100810167ffffffffffffffff81118282101715613a5557613a55613a1c565b604051601f8201601f1916810167ffffffffffffffff81118282101715613aa857613aa8613a1c565b604052919050565b600067ffffffffffffffff821115613aca57613aca613a1c565b5060051b60200190565b60008060408385031215613ae757600080fd5b8235915060208084013567ffffffffffffffff811115613b0657600080fd5b8401601f81018613613b1757600080fd5b8035613b2a613b2582613ab0565b613a7f565b81815260059190911b82018301908381019088831115613b4957600080fd5b928401925b82841015613b6757833582529284019290840190613b4e565b80955050505050509250929050565b634e487b7160e01b600052602160045260246000fd5b600082601f830112613b9d57600080fd5b81516020613bad613b2583613ab0565b8083825260208201915060208460051b870101935086841115613bcf57600080fd5b602086015b84811015613bfb57805160ff81168114613bee5760008081fd5b8352918301918301613bd4565b509695505050505050565b600060208284031215613c1857600080fd5b815167ffffffffffffffff80821115613c3057600080fd5b9083019060e08286031215613c4457600080fd5b613c4c613a32565b8251815260208301516020820152604083015182811115613c6c57600080fd5b613c7887828601613b8c565b604083015250606083015160608201526080830151608082015260a083015160a082015260c083015160c082015280935050505092915050565b600060208284031215613cc457600080fd5b815167ffffffffffffffff80821115613cdc57600080fd5b908301906101008286031215613cf157600080fd5b613cf9613a5b565b82518152602083015182811115613d0f57600080fd5b613d1b87828601613b8c565b60208301525060408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e082015280935050505092915050565b634e487b7160e01b600052601160045260246000fd5b808201828112600083128015821682158216171561080257610802613d69565b634e487b7160e01b600052603260045260246000fd5b60006000198203613dc857613dc8613d69565b5060010190565b600060208284031215613de157600080fd5b81516001600160a01b03811681146103a757600080fd5b600060208284031215613e0a57600080fd5b8151600681106103a757600080fd5b818103818111156102c6576102c6613d69565b600060208284031215613e3e57600080fd5b815180151581146103a757600080fd5b808201808211156102c6576102c6613d69565b60008151808452602080850194506020840160005b8381101561391957815187529582019590820190600101613e76565b838152606060208201526000613eab6060830185613e61565b9050826040830152949350505050565b60005b83811015613ed6578181015183820152602001613ebe565b50506000910152565b600082601f830112613ef057600080fd5b815167ffffffffffffffff811115613f0a57613f0a613a1c565b613f1d6020601f19601f84011601613a7f565b818152846020838601011115613f3257600080fd5b611409826020830160208701613ebb565b600080600060608486031215613f5857600080fd5b835167ffffffffffffffff80821115613f7057600080fd5b613f7c87838801613edf565b9450602086015193506040860151915080821115613f9957600080fd5b50613fa686828701613edf565b9150509250925092565b838152606060208201526000613fc96060830185613e61565b905060ff83166040830152949350505050565b600060208284031215613fee57600080fd5b815167ffffffffffffffff81111561400557600080fd5b61140984828501613edf565b60008151808452614029816020860160208601613ebb565b601f01601f19169290920160200192915050565b6060815260006140506060830186614011565b60208301949094525060400152919050565b84815260806020820152600061407b6080830186613e61565b60ff8516604084015282810360608401526140968185614011565b979650505050505050565b8481526080602082015260006140ba6080830186613e61565b60ff949094166040830152506060015292915050565b634e487b7160e01b600052601260045260246000fd5b600060ff821660ff81036140fc576140fc613d69565b60010192915050565b80820281158282048414176102c6576102c6613d69565b85815260a06020820152600061413560a0830187613e61565b60ff8616604084015282810360608401526141508186614011565b9150508260808301529695505050505050565b60006020828403121561417557600080fd5b5051919050565b8281526000602080830184516020860160005b828110156141ab5781518452928401929084019060010161418f565b5091979650505050505050565b7fffff000000000000000000000000000000000000000000000000000000000000841681528260208201526060604082015260006126156060830184614011565b64ffffffffff81811683821601908082111561102857611028613d69565b87815260e06020820152600061423060e0830189613e61565b60ff8816604084015264ffffffffff87811660608501528616608084015260a0830185905282810360c08401526142678185614011565b9a9950505050505050505050565b60c08152600061428860c0830189613e61565b60ff8816602084015265ffffffffffff8716604084015264ffffffffff8616606084015284608084015282810360a08401526142c48185614011565b9998505050505050505050565b6060815260006142e46060830186613e61565b65ffffffffffff8516602084015282810360408401526111208185614011565b84815260806020820152600061431d6080830186613e61565b65ffffffffffff851660408401528281036060840152614096818561401156fea26469706673582212200d6f278b73fdd62546f66df21c40f6a4cc8b18e36ddf4b3c7697e432dbdc942364736f6c63430008180033","sourceMap":"1643:11866:213:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2331:198:123;;;;;;:::i;:::-;;:::i;:::-;;;516:14:229;;509:22;491:41;;479:2;464:18;2331:198:123;;;;;;;;1262:113;;;:::i;:::-;;;-1:-1:-1;;;;;707:55:229;;;689:74;;677:2;662:18;1262:113:123;543:226:229;13222:285:213;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;1616:110:123:-;;;-1:-1:-1;;3800:14:123;3796:25;3783:39;2313:25:229;;2301:2;2286:18;1616:110:123;2167:177:229;12924:292:213;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;10106:1386::-;;;;;;:::i;:::-;;:::i;:::-;;;;;;3543:4:229;3585:3;3574:9;3570:19;3562:27;;3622:6;3616:13;3605:9;3598:32;3686:4;3678:6;3674:17;3668:24;3661:4;3650:9;3646:20;3639:54;3749:4;3741:6;3737:17;3731:24;3724:4;3713:9;3709:20;3702:54;3812:4;3804:6;3800:17;3794:24;3787:4;3776:9;3772:20;3765:54;3875:4;3867:6;3863:17;3857:24;3850:4;3839:9;3835:20;3828:54;3938:4;3930:6;3926:17;3920:24;3913:4;3902:9;3898:20;3891:54;4001:4;3993:6;3989:17;3983:24;3976:4;3965:9;3961:20;3954:54;4064:4;4056:6;4052:17;4046:24;4039:4;4028:9;4024:20;4017:54;3373:704;;;;;3845:1806:213;;;;;;:::i;:::-;;:::i;8329:1771::-;;;;;;:::i;:::-;;:::i;1878:819::-;;;;;;:::i;:::-;;:::i;:::-;;1942:98:123;;;:::i;2703:1136:213:-;;;;;;:::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;13222:285:213:-;13282:29;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13282:29:213;13323:22;13348:17;13358:6;13348:9;:17::i;:::-;13323:42;-1:-1:-1;13401:14:213;13383;;:32;;;;;;;;:::i;:::-;;13375:64;;;;-1:-1:-1;;;13375:64:213;;6924:2:229;13375:64:213;;;6906:21:229;6963:2;6943:18;;;6936:30;7002:21;6982:18;;;6975:49;7041:18;;13375:64:213;;;;;;;;;13474:5;:11;;;13463:37;;;;;;;;;;;;:::i;:::-;13449:51;13222:285;-1:-1:-1;;;13222:285:213:o;12924:292::-;12985:31;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12985:31:213;13028:22;13053:17;13063:6;13053:9;:17::i;:::-;13028:42;-1:-1:-1;13106:15:213;13088:14;;:33;;;;;;;;:::i;:::-;;13080:66;;;;-1:-1:-1;;;13080:66:213;;9057:2:229;13080:66:213;;;9039:21:229;9096:2;9076:18;;;9069:30;9135:22;9115:18;;;9108:50;9175:18;;13080:66:213;8855:344:229;13080:66:213;13182:5;:11;;;13171:38;;;;;;;;;;;;:::i;10106:1386::-;10176:40;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10176:40:213;10228:28;10259:19;10269:8;10259:9;:19::i;:::-;10228:50;;10288:38;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10288:38:213;10337:44;10384:32;10407:8;10384:22;:32::i;:::-;10553:23;;10529:20;;10337:79;;-1:-1:-1;10580:1:213;;10522:54;;10553:23;10522:54;:::i;:::-;:59;;:160;;10680:1;10522:160;;;10631:23;;10607:20;;10600:54;;10631:23;10600:54;:::i;:::-;10470:222;;10783:23;;;;;10760:19;;;;10470:28;;10753:53;;;:::i;:::-;:58;;:158;;10909:1;10753:158;;;10860:14;:23;;;10837:11;:19;;;10830:53;;;;:::i;:::-;10702:27;;;:219;11022:23;;;;10994:24;;;;11049:1;;10987:58;;;:::i;:::-;:63;;:168;;11153:1;10987:168;;;11104:14;:23;;;11076:11;:24;;;11069:58;;;;:::i;:::-;10931:32;;;:234;11260:22;;;;11231:25;;;;11286:1;;11224:58;;;:::i;:::-;:63;;:168;;11390:1;11224:168;;;11342:14;:22;;;11313:11;:25;;;11306:58;;;;:::i;:::-;11175:25;;;:227;-1:-1:-1;11436:21:213;;;;;11412;;;:45;;;;11175:11;10106:1386;-1:-1:-1;;10106:1386:213:o;3845:1806::-;3930:11;3953:25;3981:17;3991:6;3981:9;:17::i;:::-;3953:45;;4008:26;4037:22;4047:11;4037:9;:22::i;:::-;4104:17;;4079:4;;-1:-1:-1;4008:51:213;;-1:-1:-1;4098:24:213;;;;;;;;:::i;:::-;:29;;4126:1;4098:29;4094:763;;4143:30;4187:8;:14;;;4176:41;;;;;;;;;;;;:::i;:::-;4265:20;;;;4246:15;;;;4329:29;;;;:36;4143:74;;-1:-1:-1;4246:39:213;;;4231:12;;4329:40;4325:468;;4394:9;4389:337;4409:11;:29;;;:36;4405:1;:40;4389:337;;;4506:11;:29;;;4536:1;4506:32;;;;;;;;:::i;:::-;;;;;;;4474:65;;4480:9;:15;;;4474:22;;;;;;;;:::i;:::-;:65;;;4470:165;;4577:4;4567:14;;4607:5;;4470:165;4682:3;;;;:::i;:::-;;;;4389:337;;;;4325:468;;;-1:-1:-1;4774:4:213;4325:468;4811:7;4810:8;:20;;;;4823:7;4822:8;4810:20;4806:40;;;4841:5;4832:14;;4806:40;4129:728;;;4094:763;4876:17;;4870:24;;;;;;;;:::i;:::-;:29;;4898:1;4870:29;4866:756;;4915:28;4957:8;:14;;;4946:40;;;;;;;;;;;;:::i;:::-;5034:19;;;;5015:15;;;;5097:28;;;;:35;4915:71;;-1:-1:-1;5015:38:213;;;5000:12;;5097:39;5093:465;;5161:9;5156:335;5176:10;:28;;;:35;5172:1;:39;5156:335;;;5272:10;:28;;;5301:1;5272:31;;;;;;;;:::i;:::-;;;;;;;5240:64;;5246:9;:15;;;5240:22;;;;;;;;:::i;:::-;:64;;;5236:164;;5342:4;5332:14;;5372:5;;5236:164;5447:3;;;;:::i;:::-;;;;5156:335;;;;5093:465;;;-1:-1:-1;5539:4:213;5093:465;5576:7;5575:8;:20;;;;5588:7;5587:8;5575:20;5571:40;;;5606:5;5597:14;;5571:40;4901:721;;;4866:756;5631:13;;3845:1806;;;;:::o;8329:1771::-;8423:12;8401:11;1731:30;1764:27;1779:11;1764:14;:27::i;:::-;1731:60;;1809:8;:15;;;1801:53;;;;-1:-1:-1;;;1801:53:213;;11209:2:229;1801:53:213;;;11191:21:229;11248:2;11228:18;;;11221:30;11287:27;11267:18;;;11260:55;11332:18;;1801:53:213;11007:349:229;1801:53:213;8447:22:::1;8479:8;:6;:8::i;:::-;-1:-1:-1::0;;;;;8472:29:213::1;;8502:11;8472:42;;;;;;;;;;;;;2313:25:229::0;;2301:2;2286:18;;2167:177;8472:42:213::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8447:67;;8550:12;:10;:12::i;:::-;-1:-1:-1::0;;;;;8532:30:213::1;:14;-1:-1:-1::0;;;;;8532:30:213::1;;8524:69;;;::::0;-1:-1:-1;;;8524:69:213;;12063:2:229;8524:69:213::1;::::0;::::1;12045:21:229::0;12102:2;12082:18;;;12075:30;12141:28;12121:18;;;12114:56;12187:18;;8524:69:213::1;11861:350:229::0;8524:69:213::1;8603:14;8633:8;:6;:8::i;:::-;-1:-1:-1::0;;;;;8626:32:213::1;;8659:6;8626:40;;;;;;;;;;;;;2313:25:229::0;;2301:2;2286:18;;2167:177;8626:40:213::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8620:47;;;;;;;;:::i;:::-;8603:64:::0;-1:-1:-1;8681:20:213::1;::::0;::::1;8677:1374;;8717:28;8748:77;8766:6;8774:50;8812:11;8774:37;:50::i;:::-;8748:17;:77::i;:::-;8717:108;;8882:6;8843:11;8876:1;8855:11;:18;:22;;;;:::i;:::-;8843:35;;;;;;;;:::i;:::-;;;;;;;:45:::0;8839:248:::1;;8908:63;8946:11;8959;8908:37;:63::i;:::-;8989:50;9027:11;8989:37;:50::i;:::-;9068:4;9058:14;;8839:248;8703:394;8677:1374;;;-1:-1:-1::0;;9107:20:213::1;::::0;::::1;::::0;9103:948:::1;;9143:28;9174:75;9192:6;9200:48;9236:11;9200:35;:48::i;9174:75::-;9143:106;;9306:6;9267:11;9300:1;9279:11;:18;:22;;;;:::i;:::-;9267:35;;;;;;;;:::i;:::-;;;;;;;:45:::0;9263:243:::1;;9332:61;9368:11;9381;9332:35;:61::i;:::-;9411:48;9447:11;9411:35;:48::i;9103:948::-;9526:20:::0;::::1;::::0;::::1;::::0;9522:529;::::1;;9997:43;::::0;-1:-1:-1;;;9997:43:213;;12831:2:229;9997:43:213::1;::::0;::::1;12813:21:229::0;12870:2;12850:18;;;12843:30;12909:34;12889:18;;;12882:62;12980:3;12960:18;;;12953:31;13001:19;;9997:43:213::1;12629:397:229::0;9522:529:213::1;10060:33;10081:11;10060:20;:33::i;:::-;8437:1663;;1721:151:::0;8329:1771;;;;;:::o;1878:819::-;1959:11;1731:30;1764:27;1779:11;1764:14;:27::i;:::-;1731:60;;1809:8;:15;;;1801:53;;;;-1:-1:-1;;;1801:53:213;;11209:2:229;1801:53:213;;;11191:21:229;11248:2;11228:18;;;11221:30;11287:27;11267:18;;;11260:55;11332:18;;1801:53:213;11007:349:229;1801:53:213;1982:22:::1;2014:8;:6;:8::i;:::-;-1:-1:-1::0;;;;;2007:29:213::1;;2037:11;2007:42;;;;;;;;;;;;;2313:25:229::0;;2301:2;2286:18;;2167:177;2007:42:213::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1982:67;;2085:12;:10;:12::i;:::-;-1:-1:-1::0;;;;;2067:30:213::1;:14;-1:-1:-1::0;;;;;2067:30:213::1;;2059:69;;;::::0;-1:-1:-1;;;2059:69:213;;12063:2:229;2059:69:213::1;::::0;::::1;12045:21:229::0;12102:2;12082:18;;;12075:30;12141:28;12121:18;;;12114:56;12187:18;;2059:69:213::1;11861:350:229::0;2059:69:213::1;2138:14;2167:9:::0;2162:486:::1;2182:7;:14;2178:1;:18;2162:486;;;2226:7;2234:1;2226:10;;;;;;;;:::i;:::-;;;;;;;2217:19;;2265:8;:6;:8::i;:::-;-1:-1:-1::0;;;;;2258:32:213::1;;2291:6;2299:12;:10;:12::i;:::-;2258:54;::::0;;::::1;::::0;;;;;;::::1;::::0;::::1;13205:25:229::0;;;;-1:-1:-1;;;;;13266:55:229;13246:18;;;13239:83;13178:18;;2258:54:213::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2250:88;;;::::0;-1:-1:-1;;;2250:88:213;;13817:2:229;2250:88:213::1;::::0;::::1;13799:21:229::0;13856:2;13836:18;;;13829:30;13895:23;13875:18;;;13868:51;13936:18;;2250:88:213::1;13615:345:229::0;2250:88:213::1;2352:25;2380:17;2390:6;2380:9;:17::i;:::-;2352:45;;2446:1;2425:8;:17;;;2419:24;;;;;;;;:::i;:::-;:28;;;2411:70;;;::::0;-1:-1:-1;;;2411:70:213;;14167:2:229;2411:70:213::1;::::0;::::1;14149:21:229::0;14206:2;14186:18;;;14179:30;14245:31;14225:18;;;14218:59;14294:18;;2411:70:213::1;13965:353:229::0;2411:70:213::1;2503:38;2521:11;2534:6;2503:17;:38::i;:::-;2495:78;;;::::0;-1:-1:-1;;;2495:78:213;;14525:2:229;2495:78:213::1;::::0;::::1;14507:21:229::0;14564:2;14544:18;;;14537:30;14603:29;14583:18;;;14576:57;14650:18;;2495:78:213::1;14323:351:229::0;2495:78:213::1;2587:50;2598:11;2611:6;2619:8;:17;;;2587:10;:50::i;:::-;-1:-1:-1::0;2198:3:213::1;;2162:486;;;;2657:33;2678:11;2657:20;:33::i;:::-;1972:725;;1721:151:::0;1878:819;;;:::o;1942:98:123:-;1981:7;2003:32;:30;:32::i;2703:1136:213:-;2781:16;2809:25;2837:17;2847:6;2837:9;:17::i;:::-;2874;;2809:45;;-1:-1:-1;2868:24:213;;;;;;;;:::i;:::-;:29;;2896:1;2868:29;2864:969;;2913:29;2945:50;2983:11;2945:37;:50::i;:::-;2913:82;;3014:9;3009:252;3029:12;:19;3025:1;:23;3009:252;;;3092:6;3073:12;3086:1;3073:15;;;;;;;;:::i;:::-;;;;;;;:25;3069:117;;3136:4;3122:18;;3162:5;;3069:117;3225:3;;;;:::i;:::-;;;;3009:252;;;;2899:372;2864:969;;;3287:17;;3281:24;;;;;;;;:::i;:::-;:29;;3309:1;3281:29;3277:556;;3326:30;3359:48;3395:11;3359:35;:48::i;:::-;3326:81;;3426:9;3421:254;3441:13;:20;3437:1;:24;3421:254;;;3506:6;3486:13;3500:1;3486:16;;;;;;;;:::i;:::-;;;;;;;:26;3482:118;;3550:4;3536:18;;3576:5;;3482:118;3639:3;;;;:::i;:::-;;;;3421:254;;3277:556;3701:17;;3695:24;;;;;;;;:::i;:::-;:29;;3723:1;3695:29;3691:142;;;3779:43;;-1:-1:-1;;;3779:43:213;;12831:2:229;3779:43:213;;;12813:21:229;12870:2;12850:18;;;12843:30;12909:34;12889:18;;;12882:62;12980:3;12960:18;;;12953:31;13001:19;;3779:43:213;12629:397:229;3691:142:213;2799:1040;2703:1136;;;;:::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;10400:416:182:-;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;10512:16:182;;;10526:1;10512:16;;;;;;;;;10483:26;;10512:16;;;;;;;;;;;-1:-1:-1;10512:16:182;10483:45;;10565:6;10549:24;;10534:9;10544:1;10534:12;;;;;;;;:::i;:::-;;;;;;;;;;:39;10581:24;;;10668:80;1205:66;10713:9;1334:66;10668:21;:80::i;:::-;10580:168;;;;;;10761:50;10768:11;10781:15;10798:12;10761:6;:50::i;:::-;10754:57;10400:416;-1:-1:-1;;;;;;10400:416:182:o;13270:402:194:-;13324:23;;:::i;:::-;13384:16;;;13398:1;13384:16;;;;;;;;;13355:26;;13384:16;;;;;;;;;;;-1:-1:-1;13384:16:194;13355:45;;13421:8;13406:9;13416:1;13406:12;;;;;;;;:::i;:::-;;;;;;;;;;:23;13437:24;;;13524:80;1310:66;13569:9;1439:66;13524:21;:80::i;:::-;13436:168;;;;;;13617:50;13624:11;13637:15;13654:12;13617:6;:50::i;25502:421:177:-;25559:36;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25559:36:177;25632:16;;;25646:1;25632:16;;;;;;;;;25603:26;;25632:16;;;;;;;;;;;-1:-1:-1;25632:16:177;25603:45;;25669:11;25654:9;25664:1;25654:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;25688:24;;;25775:80;1294:66;25820:9;1423:66;25775:21;:80::i;:::-;25687:168;;;;;;25868:50;25875:11;25888:15;25905:12;25868:6;:50::i;7769:413:178:-;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7891:16:178;;7905:1;7891:16;;;;;;;;;-1:-1:-1;;;;7891:16:178;;;;;;;;;;;;;-1:-1:-1;7891:16:178;7862:45;;7928:11;7913:9;7923:1;7913:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;7947:24;;;8034:80;1163:66;8079:9;1292:66;8034:21;:80::i;:::-;7946:168;;;;;;8127:50;8134:11;8147:15;8164:12;8127:6;:50::i;14822:354:177:-;14963:16;;;14977:1;14963:16;;;;;;;;;14894:32;;14934:26;;14963:16;;;;;;;;;;;;-1:-1:-1;14963:16:177;14934:45;;15000:11;14985:9;14995:1;14985:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;15018:18;15039:51;1294:66;15077:9;15088:1;15039:27;:51::i;:::-;15018:72;;15104:66;:44;15125:5;15132:1;15135:5;:12;15104:20;:44::i;:::-;:64;:66::i;:::-;15096:75;14822:354;-1:-1:-1;;;;14822:354:177:o;12265:653:213:-;12379:29;12443:1;12428:5;:12;:16;12424:488;;;12465:9;12460:391;12480:5;:12;12476:1;:16;12460:391;;;12529:6;12517:5;12523:1;12517:8;;;;;;;;:::i;:::-;;;;;;;:18;12513:263;;12559:12;12574:5;12595:1;12580:5;:12;:16;;;;:::i;:::-;12574:23;;;;;;;;:::i;:::-;;;;;;;12559:38;;12630:4;12619:5;12625:1;12619:8;;;;;;;;:::i;:::-;;;;;;:15;;;;;12682:6;12656:5;12677:1;12662:5;:12;:16;;;;:::i;:::-;12656:23;;;;;;;;:::i;:::-;;;;;;:32;;;;;12725:5;12710:20;;12752:5;;;12513:263;12815:3;;;;:::i;:::-;;;;12460:391;;;;12424:488;;;-1:-1:-1;12896:5:213;12265:653;-1:-1:-1;12265:653:213:o;15629:277:177:-;15756:16;;;15770:1;15756:16;;;;;;;;;15727:26;;15756:16;;;;;;;;;;;-1:-1:-1;15756:16:177;15727:45;;15793:11;15778:9;15788:1;15778:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;15811:90;1294:66;15849:9;15860:1;15863:37;15883:15;15863:18;:37::i;:::-;15811:27;:90::i;:::-;15721:185;15629:277;;:::o;18727:212::-;18820:16;;;18834:1;18820:16;;;;;;;;;18791:26;;18820:16;;;;;;;;;;;-1:-1:-1;18820:16:177;18791:45;;18857:11;18842:9;18852:1;18842:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;18875:59;1294:66;1278:83;;18917:9;18928:1;18931:2;18875:31;:59::i;:::-;18785:154;18727:212;:::o;9521:350::-;9658:16;;;9672:1;9658:16;;;;;;;;;9591:30;;9629:26;;9658:16;;;;;;;;;;;;-1:-1:-1;9658:16:177;9629:45;;9695:11;9680:9;9690:1;9680:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;9713:18;9734:51;1294:66;9772:9;9713:18;9734:27;:51::i;10316:271::-;10439:16;;;10453:1;10439:16;;;;;;;;;10410:26;;10439:16;;;;;;;;;;;-1:-1:-1;10439:16:177;10410:45;;10476:11;10461:9;10471:1;10461:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;10494:88;1294:66;10532:9;1278:83;10546:35;10566:13;10546:18;:35::i;13374:210::-;13465:16;;;13479:1;13465:16;;;;;;;;;13436:26;;13465:16;;;;;;;;;;;-1:-1:-1;13465:16:177;13436:45;;13502:11;13487:9;13497:1;13487:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;13520:59;1294:66;1278:83;;13562:9;13573:1;13576:2;13520:31;:59::i;6543:1780:213:-;6613:30;6646:48;6682:11;6646:35;:48::i;:::-;6613:81;;6704:32;6739:50;6777:11;6739:37;:50::i;:::-;6704:85;;6799:18;6827:24;6861;6895;6929:23;6962:28;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6962:28:213;7000:30;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7000:30:213;7044:20;;:24;7040:482;;7089:9;7084:428;7104:13;:20;7100:1;:24;7084:428;;;7162:31;7176:13;7190:1;7176:16;;;;;;;;:::i;:::-;;;;;;;7162:13;:31::i;:::-;7149:44;;7225:10;:24;;;7211:38;;;;;:::i;:::-;;;7288:10;:22;;;7267:43;;;;;:::i;:::-;7349:22;;7267:43;;-1:-1:-1;7328:43:213;;;;:::i;:::-;;;7410:10;:22;;;7389:43;;;;;:::i;:::-;;;7470:10;:27;;;7450:47;;;;;:::i;:::-;;-1:-1:-1;7126:3:213;;7084:428;;;;7040:482;7535:22;;:26;7531:438;;7582:9;7577:382;7597:15;:22;7593:1;:26;7577:382;;;7658:34;7673:15;7689:1;7673:18;;;;;;;;:::i;:::-;;;;;;;7658:14;:34::i;:::-;7644:48;;7731:11;:23;;;7710:44;;;;;:::i;:::-;7793:23;;7710:44;;-1:-1:-1;7772:44:213;;;;:::i;:::-;;;7855:11;:23;;;7834:44;;;;;:::i;:::-;;;7916:11;:28;;;7896:48;;;;;:::i;:::-;;-1:-1:-1;7621:3:213;;7577:382;;;;7531:438;7978:62;8009:11;8022:17;7978:30;:62::i;:::-;8050;8081:11;8094:17;8050:30;:62::i;:::-;8122;8153:11;8166:17;8122:30;:62::i;:::-;8194:60;8224:11;8237:16;8194:29;:60::i;:::-;8264:52;8292:11;8305:10;8264:27;:52::i;:::-;6603:1720;;;;;;;;;6543:1780;:::o;5657:880::-;5761:31;5772:11;5785:6;5761:10;:31::i;:::-;5760:32;5752:72;;;;-1:-1:-1;;;5752:72:213;;15011:2:229;5752:72:213;;;14993:21:229;15050:2;15030:18;;;15023:30;15089:29;15069:18;;;15062:57;15136:18;;5752:72:213;14809:351:229;5752:72:213;5844:8;5838:15;;;;;;;;:::i;:::-;:20;;5857:1;5838:20;5834:226;;5938:1;5882:53;5923:11;5882:40;:53::i;:::-;:57;5874:102;;;;-1:-1:-1;;;5874:102:213;;15367:2:229;5874:102:213;;;15349:21:229;;;15386:18;;;15379:30;15445:34;15425:18;;;15418:62;15497:18;;5874:102:213;15165:356:229;5874:102:213;5990:59;6029:11;6042:6;5990:38;:59::i;:::-;6079:8;6073:15;;;;;;;;:::i;:::-;:20;;6092:1;6073:20;6069:222;;6171:1;6117:51;6156:11;6117:38;:51::i;:::-;:55;6109:100;;;;-1:-1:-1;;;6109:100:213;;15367:2:229;6109:100:213;;;15349:21:229;;;15386:18;;;15379:30;15445:34;15425:18;;;15418:62;15497:18;;6109:100:213;15165:356:229;6109:100:213;6223:57;6260:11;6273:6;6223:36;:57::i;:::-;6311:8;6305:15;;;;;;;;:::i;:::-;:20;5657:880;;;:::o;4048:97:123:-;4089:7;4111:29;:27;:29::i;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;14482:308:182:-;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;14692:25:182;14705:11;14692:12;:25::i;:::-;14671:17;;;14653:64;;;14654:6;14653:64;;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;14741:44;14755:15;14772:12;14741:13;:44::i;:::-;14725:12;;;14724:61;14725:6;14482:308;-1:-1:-1;;;14482:308:182:o;17879:370:194:-;17990:23;;:::i;:::-;18219:25;18232:11;18219:12;:25::i;:::-;18198:12;;;18021:223;;;18173:17;;;18021:223;;;18149:16;;;18021:223;;;18121:20;;;18021:223;;;18094:19;;;18021:223;;;18029:6;18052:14;;;18074:12;;;18021:223;;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;18021:223:194;;;;-1:-1:-1;17879:370:194;;;-1:-1:-1;;;;;17879:370:194:o;31199:439:177:-;31339:36;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;31339:36:177;31467:25;31480:11;31467:12;:25::i;:::-;31451:12;;;31383:109;31435:14;;;31383:109;31418:15;;;31383:109;31401:15;;;31383:109;;;31571:62;31592:15;31615:12;31571:13;:62::i;:::-;31546:21;;;31499:134;31522:22;;;31499:134;31500:20;;;31499:134;31500:6;31199:439;-1:-1:-1;;;31199:439:177:o;11270:238:178:-;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11478:25:178;11491:11;11478:12;:25::i;:::-;11417:86;;11461:13;;;11417:86;11448:11;;;11417:86;-1:-1:-1;;;;;11417:86:178;11434:12;;;11417:86;;;11418:6;11270:238;-1:-1:-1;;;11270:238:178: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;18801:224::-;18748:281;18598:431;;;;;:::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;15325:220:56:-;15391:24;15423:30;15456:32;15474:6;15482:2;15486:1;15456:17;:32::i;15129:222:57:-;15193:12;15283:6;15307:39;15283:6;15340:2;15344:1;15307:17;:39::i;11569:424:46:-;11720:21;11744:17;:15;:17::i;:::-;11720:41;-1:-1:-1;11796:4:46;-1:-1:-1;;;;;11771:30:46;;;11767:222;;11811:69;11837:7;11846:8;11856:17;11875:4;11811:25;:69::i;:::-;11767:222;;;11901:81;;;;;-1:-1:-1;;;;;11901:37:46;;;;;:81;;11939:7;;11948:8;;11958:17;;11977:4;;11901:81;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11767:222;11714:279;11569:424;;;;:::o;13190:464::-;13351:21;13375:17;:15;:17::i;:::-;13351:41;-1:-1:-1;13427:4:46;-1:-1:-1;;;;;13402:30:46;;;13398:252;;13442:84;13472:7;13481:8;13491:17;13510:15;13442:29;:84::i;13398:252::-;13547:96;;;;;-1:-1:-1;;;;;13547:41:46;;;;;:96;;13589:7;;13598:8;;13608:17;;13627:15;;13547:96;;;:::i;3825:257:177:-;3928:16;;;3942:1;3928:16;;;;;;;;;3899:26;;3928:16;;;;;;;;;;;-1:-1:-1;3928:16:177;3899:45;;3965:11;3950:9;3960:1;3950:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;3983:94;1294:66;1278:83;;4020:9;4031:1;4052:8;4034:28;;;;;;20672:19:229;;20716:2;20707:12;;20545:180;4034:28:177;;;;-1:-1:-1;;4034:28:177;;;;;;;;;1423:66;3983:26;:94::i;5115:257::-;5218:16;;;5232:1;5218:16;;;;;;;;;5189:26;;5218:16;;;;;;;;;;;-1:-1:-1;5218:16:177;5189:45;;5255:11;5240:9;5250:1;5240:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;5273:94;1294:66;1278:83;;5310:9;5321:1;5342:8;5324:28;;;;;;20672:19:229;;20716:2;20707:12;;20545:180;6405:257:177;6508:16;;;6522:1;6508:16;;;;;;;;;6479:26;;6508:16;;;;;;;;;;;-1:-1:-1;6508:16:177;6479:45;;6545:11;6530:9;6540:1;6530:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;6563:94;1294:66;1278:83;;6600:9;6611:1;6632:8;6614:28;;;;;;20672:19:229;;20716:2;20707:12;;20545:180;7688:254:177;7789:16;;;7803:1;7789:16;;;;;;;;;7760:26;;7789:16;;;;;;;;;;;-1:-1:-1;7789:16:177;7760:45;;7826:11;7811:9;7821:1;7811:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;7844:93;1294:66;1278:83;;7881:9;7892:1;7913:7;7895:27;;;;;;20672:19:229;;20716:2;20707:12;;20545:180;8936:249:177;9034:16;;;9048:1;9034:16;;;;;;;;;9005:26;;9034:16;;;;;;;;;;;-1:-1:-1;9034:16:177;9005:45;;9071:11;9056:9;9066:1;9056:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;9089:91;1294:66;1278:83;;9126:9;9137:1;9158:5;9140:25;;;;;;20672:19:229;;20716:2;20707:12;;20545:180;16296:311:177;16415:16;;;16429:1;16415:16;;;;;;;;;16371:7;;;;16415:16;;;;;;;;;;;;-1:-1:-1;16415:16:177;16386:45;;16452:11;16437:9;16447:1;16437:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;16470:19;16492:57;1294:66;16536:9;16547:1;16492:33;:57::i;:::-;16594:2;16580:16;;;;-1:-1:-1;;;;16296:311:177:o;18085:256::-;18197:16;;;18211:1;18197:16;;;;;;;;;18168:26;;18197:16;;;;;;;;;;;-1:-1:-1;18197:16:177;18168:45;;18234:11;18219:9;18229:1;18219:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;18252:84;1294:66;1278:83;;18293:9;18304:1;18325:8;18307:28;;;;;;20672:19:229;;20716:2;20707:12;;20545:180;18307:28:177;;;;;;;;;;;;;18252:30;:84::i;10967:309::-;11084:16;;;11098:1;11084:16;;;;;;;;;11040:7;;;;11084:16;;;;;;;;;;;;-1:-1:-1;11084:16:177;11055:45;;11121:11;11106:9;11116:1;11106:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;11139:19;11161:57;1294:66;11205:9;11139:19;11161:33;:57::i;12740:254::-;12850:16;;;12864:1;12850:16;;;;;;;;;12821:26;;12850:16;;;;;;;;;;;-1:-1:-1;12850:16:177;12821:45;;12887:11;12872:9;12882:1;12872:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;12905:84;1294:66;1278:83;;12946:9;12957:1;12978:8;12960:28;;;;;;20672:19:229;;20716:2;20707:12;;20545:180;1836:227:46;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;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;13577:225:182:-;2756:4:23;2742:27;;2736:34;13642:17:182;;;;13707:32;;13698:42;;;;;;;;:::i;:::-;2742:27:23;;;;;2736:34;13687:53:182;;13577:225;-1:-1:-1;;13577:225:182:o;13905:310::-;14015:18;14041:14;975:16:24;7017:70;;;6995:94;;14157:51:182;:41;14178:5;14041:14;6995:94:24;14157:20:182;:41::i;:::-;:49;:51::i;:::-;14142:68;13905:310;-1:-1:-1;;;;;13905:310:182:o;16961:760:194:-;17053:16;17077:15;17100:13;17121:20;17149:21;17178:16;17202:18;17228:13;17276:26;17293:5;17300:1;2742:27:23;2756:4;2742:27;2736:34;;2612:168;17276:26:194;2742:27:23;;;2736:34;2742:27;;;2736:34;17268:35:194;;-1:-1:-1;2736:34:23;-1:-1:-1;17382:33:194;;17374:42;;;;;;;;:::i;:::-;2742:27:23;;;2736:34;2742:27;;;2736:34;2742:27;;;2736:34;2742:27;;;2736:34;2742:27;;;;2736:34;16961:760:194;;;;17366: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;16961:760:194;-1:-1:-1;;16961:760:194:o;29601:467:177:-;29674:15;29691;29708;29725:14;29741:13;29789:26;29806:5;29813:1;2742:27:23;2756:4;2742:27;2736:34;;2612:168;29789:26:177;2742:27:23;;;2736:34;2742:27;;;2736:34;2742:27;;;2736:34;2742:27;;;;2736:34;29781:35:177;;2736:34:23;;;;-1:-1:-1;2736:34:23;-1:-1:-1;2736:34:23;;-1:-1:-1;29601:467:177;-1:-1:-1;;29601:467:177:o;30171:761::-;30293:30;;;30400:14;975:16:24;7017:70;;;6995:94;;30518:63:177;:41;30539:5;30400:14;6995:94:24;30518:20:177;:41::i;:63::-;30501:81;-1:-1:-1;30598:4:177;-1:-1:-1;30598:4:177;6995:94:24;7059:27;7017:70;;;6995:94;30626:34:177;30691:63;:41;30712:5;30719:6;30626:34;30691:20;:41::i;:63::-;30672:83;-1:-1:-1;30771:4:177;-1:-1:-1;30771:4:177;6995:94:24;7059:27;7017:70;;;6995:94;30799:34:177;30863:63;:41;30884:5;30891:6;30799:34;30863:20;:41::i;:63::-;30845:82;;30394:538;;30171:761;;;;;:::o;10766:346:178:-;10839:15;10856:13;10871:12;10885:11;10923:26;10940:5;10947:1;2742:27:23;2756:4;2742:27;2736:34;;2612:168;10923:26:178;2742:27:23;;;2736:34;2742:27;;;2736:34;10915:35:178;;-1:-1:-1;10967:36:178;;;-1:-1:-1;2742:27:23;;;2736:34;11011:36:178;;-1:-1:-1;11072:33:178;;11054:53;;10766:346;;;;;:::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;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;;;3341:28;;3116:690;;;2681:1129;;;;;:::o;830:1343::-;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;;24152:738:45;24403:37;24443:66;24491:7;24500:8;24443:47;:66::i;:::-;24403:106;-1:-1:-1;24515:26:45;24551:49;24403:106;24582:17;7070:16:24;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;24551:49:45;24515:86;;24608:277;24662:7;24687:8;24722:17;24765:1;24787:19;24820:4;24856:22;24608:36;:277::i;30235:834::-;30495:37;30535:66;30583:7;30592:8;30535:47;:66::i;:::-;30495:106;-1:-1:-1;30607:26:45;30643:49;30495:106;30674:17;7070:16:24;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;30643:49:45;30607:86;-1:-1:-1;30731:333:45;30785:7;30810:8;30845:17;30895:37;30917:15;30895:37;;;;:::i;:::-;30991:12;;;31001:1;30991:12;;;;;;;;30961:15;;31035:22;30731:36;:333::i;10761:455:46:-;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;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21091:444;21233:7;21248:21;21272:17;:15;:17::i;:::-;21248:41;-1:-1:-1;21324:4:46;-1:-1:-1;;;;;21299:30:46;;;21295:236;;21346:69;21378:7;21387:8;21397:17;21346:31;:69::i;21295:236::-;21443:81;;;;;-1:-1:-1;;;;;21443:43:46;;;;;:81;;21487:7;;21496:8;;21506:17;;21443:81;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;12345:451::-;12505:21;12529:17;:15;:17::i;:::-;12505:41;-1:-1:-1;12581:4:46;-1:-1:-1;;;;;12556:30:46;;;12552:240;;12596:78;12625:7;12634:8;12644:17;12663:10;12596:28;:78::i;12552:240::-;12695:90;;;;;-1:-1:-1;;;;;12695:40:46;;;;;:90;;12736:7;;12745:8;;12755:17;;12774:10;;12695:90;;;:::i;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;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;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;44254:4001:45:-;44673:14;44652:7;:35;;;44648:161;;44743:14;44759:7;44792;44775:25;;;;;;20672:19:229;;20716:2;20707:12;;20545:180;44775:25:45;;;;-1:-1:-1;;44775:25:45;;;;;;;;;;44704:98;;;;;;;;;;:::i;44648:161::-;44815:27;44845:49;:22;44876:17;7070:16:24;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;44845:49:45;44815:79;;44900:26;44965:4;:11;44951;44929:33;;:19;:33;;;;:::i;:::-;:47;;;;:::i;:::-;44900:76;;45248:18;45225:19;:41;;:98;;;;-1:-1:-1;45304:19:45;45270:30;45289:11;45270:16;:30;:::i;:::-;:53;;;;45225:98;45221:218;;;45340:92;;;;;24080:12:229;24119:15;;;45340:92:45;;;24101:34:229;24171:15;;;24151:18;;;24144:43;24223:15;;24203:18;;;24196:43;24043:18;;45340:92:45;23874:371:229;45221:218:45;45545:19;45526:16;:38;;;45522:140;;;45581:74;;;;;;;;24423:25:229;;;24496:12;24484:25;;24464:18;;;24457:53;24396:18;;45581:74:45;24250:266:229;45522:140:45;45701:36;45740:72;:22;45774:17;45793:18;45740:33;:72::i;:::-;45701:111;;45959:22;45984:24;46000:7;45984:15;:24::i;:::-;45959:49;;46019:9;46014:486;46034:5;:12;46030:1;:16;46014:486;;;46061:9;46083:5;46089:1;46083:8;;;;;;;;:::i;:::-;;;;;;;46061:31;;46104:42;836:6:54;46104:4:45;:14;;;;;:42;;;;:::i;:::-;46100:394;;;3536:35:26;;;;-1:-1:-1;;;;;46158:55:45;;46235:7;46264:8;46303:17;46350:16;46391:11;46430:22;46470:4;46158:327;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;46100:394;-1:-1:-1;46048:3:45;;46014:486;;;-1:-1:-1;46558:32:45;;;:13;46698:107;46716:17;46712:21;;:1;:21;;;46698:107;;;46761:33;:22;46792:1;7070:16:24;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;46761:33:45;46752:42;;;;46735:3;;46698:107;;;;46930:7;46874:277;46957:8;46994:17;47035:5;47064:11;47101:21;47138:4;46874:277;;;;;;;;;;;:::i;:::-;;;;;;;;46506:652;47243:18;47220:19;:41;47216:248;;47271:31;47305:48;47335:7;47344:8;47305:29;:48::i;:::-;695:28:44;;;-1:-1:-1;47216:248:45;47521:27;47551:61;47575:7;47584:8;47594:17;47551:23;:61::i;:::-;47521:91;;47620:92;47652:19;47681:16;47620:92;;47705:4;47620:13;:92::i;:::-;47513:206;47773:9;47768:483;47788:5;:12;47784:1;:16;47768:483;;;47815:9;47837:5;47843:1;47837:8;;;;;;;;:::i;:::-;;;;;;;47815:31;;47858:41;947:6:54;47858:4:45;:14;;;;;:41;;;;:::i;:::-;47854:391;;;3536:35:26;;;;-1:-1:-1;;;;;47911:54:45;;47987:7;48016:8;48055:17;48102:16;48143:11;48182:21;48221:4;47911:325;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;47854:391;-1:-1:-1;47802:3:45;;47768:483;;;;44498:3757;;;;44254:4001;;;;;;;:::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;39909:262::-;40051:7;40073:93;40148:17;40073:66;40121:7;40130:8;40073:47;:66::i;28764:791::-;29023:37;29063:66;29111:7;29120:8;29063:47;:66::i;:::-;29023:106;-1:-1:-1;29135:26:45;29171:49;29023:106;29202:17;7070:16:24;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;29171:49:45;29135:86;;29259:291;29313:7;29338:8;29373:17;29423:19;29464:1;29479:10;29521:22;29259:36;:291::i;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;53371:230::-;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;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;7468:1525:24:-;7596:14;1145:16;7622:25;;7618:120;;;7664:67;;;;;;;;2313:25:229;;;2286:18;;7664:67:24;2167:177:229;7618:120:24;7802:14;6445:61;;;7070:16;;;1063;7070;975;7059:27;7017:70;;;6995:94;;8068:38;;;8064:192;;8151:19;8133:15;:37;8118:52;;;;8064:192;;;8232:15;8210:19;:37;8195:52;;;;8064:192;-1:-1:-1;8572:16:24;975;1063;8439;;;;8428:27;8564:35;;;8882:5;8719:26;8699:46;;;;8698:62;;;8862:25;;;;8892:34;;;;;8861:66;;-1:-1:-1;7468:1525:24;;;;;:::o;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;966:162:44:-;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;51823:242:45:-;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;;17013:1682;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;40103:220:56:-;40169:24;40201:30;40234:32;40252:6;40260:2;40264:1;40234:17;:32::i;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;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:332:229:-;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:180;833:6;886:2;874:9;865:7;861:23;857:32;854:52;;;902:1;899;892:12;854:52;-1:-1:-1;925:23:229;;774:180;-1:-1:-1;774:180:229:o;959:448::-;1010:3;1048:5;1042:12;1075:6;1070:3;1063:19;1101:4;1130;1125:3;1121:14;1114:21;;1169:4;1162:5;1158:16;1192:1;1202:180;1216:6;1213:1;1210:13;1202:180;;;1281:13;;1296:4;1277:24;1265:37;;1322:12;;;;1357:15;;;;1238:1;1231:9;1202:180;;;-1:-1:-1;1398:3:229;;959:448;-1:-1:-1;;;;;959:448:229:o;1412:750::-;1601:2;1590:9;1583:21;1646:6;1640:13;1635:2;1624:9;1620:18;1613:41;1708:2;1700:6;1696:15;1690:22;1685:2;1674:9;1670:18;1663:50;1564:4;1760:2;1752:6;1748:15;1742:22;1800:4;1795:2;1784:9;1780:18;1773:32;1828:61;1884:3;1873:9;1869:19;1855:12;1828:61;:::i;:::-;1814:75;;1944:2;1936:6;1932:15;1926:22;1920:3;1909:9;1905:19;1898:51;2004:3;1996:6;1992:16;1986:23;1980:3;1969:9;1965:19;1958:52;2065:3;2057:6;2053:16;2047:23;2041:3;2030:9;2026:19;2019:52;2127:3;2119:6;2115:16;2109:23;2102:4;2091:9;2087:20;2080:53;2150:6;2142:14;;;1412:750;;;;:::o;2349:834::-;2540:2;2529:9;2522:21;2585:6;2579:13;2574:2;2563:9;2559:18;2552:41;2503:4;2640:2;2632:6;2628:15;2622:22;2663:6;2705:2;2700;2689:9;2685:18;2678:30;2731:61;2787:3;2776:9;2772:19;2758:12;2731:61;:::i;:::-;2717:75;;2846:2;2838:6;2834:15;2828:22;2823:2;2812:9;2808:18;2801:50;2906:2;2898:6;2894:15;2888:22;2882:3;2871:9;2867:19;2860:51;2966:3;2958:6;2954:16;2948:23;2942:3;2931:9;2927:19;2920:52;3027:3;3019:6;3015:16;3009:23;3003:3;2992:9;2988:19;2981:52;3088:3;3080:6;3076:16;3070:23;3064:3;3053:9;3049:19;3042:52;3148:3;3140:6;3136:16;3130:23;3125:2;3114:9;3110:18;3103:51;;3171:6;3163:14;;;2349:834;;;;:::o;4082:248::-;4150:6;4158;4211:2;4199:9;4190:7;4186:23;4182:32;4179:52;;;4227:1;4224;4217:12;4179:52;-1:-1:-1;;4250:23:229;;;4320:2;4305:18;;;4292:32;;-1:-1:-1;4082:248:229:o;4335:184::-;-1:-1:-1;;;4384:1:229;4377:88;4484:4;4481:1;4474:15;4508:4;4505:1;4498:15;4524:253;4596:2;4590:9;4638:4;4626:17;;4673:18;4658:34;;4694:22;;;4655:62;4652:88;;;4720:18;;:::i;:::-;4756:2;4749:22;4524:253;:::o;4782:255::-;4854:2;4848:9;4896:6;4884:19;;4933:18;4918:34;;4954:22;;;4915:62;4912:88;;;4980:18;;:::i;5042:334::-;5113:2;5107:9;5169:2;5159:13;;-1:-1:-1;;5155:86:229;5143:99;;5272:18;5257:34;;5293:22;;;5254:62;5251:88;;;5319:18;;:::i;:::-;5355:2;5348:22;5042:334;;-1:-1:-1;5042:334:229:o;5381:183::-;5441:4;5474:18;5466:6;5463:30;5460:56;;;5496:18;;:::i;:::-;-1:-1:-1;5541:1:229;5537:14;5553:4;5533:25;;5381:183::o;5569:959::-;5662:6;5670;5723:2;5711:9;5702:7;5698:23;5694:32;5691:52;;;5739:1;5736;5729:12;5691:52;5775:9;5762:23;5752:33;;5804:2;5857;5846:9;5842:18;5829:32;5884:18;5876:6;5873:30;5870:50;;;5916:1;5913;5906:12;5870:50;5939:22;;5992:4;5984:13;;5980:27;-1:-1:-1;5970:55:229;;6021:1;6018;6011:12;5970:55;6057:2;6044:16;6080:60;6096:43;6136:2;6096:43;:::i;:::-;6080:60;:::i;:::-;6174:15;;;6256:1;6252:10;;;;6244:19;;6240:28;;;6205:12;;;;6280:19;;;6277:39;;;6312:1;6309;6302:12;6277:39;6336:11;;;;6356:142;6372:6;6367:3;6364:15;6356:142;;;6438:17;;6426:30;;6389:12;;;;6476;;;;6356:142;;;6517:5;6507:15;;;;;;;5569:959;;;;;:::o;6533:184::-;-1:-1:-1;;;6582:1:229;6575:88;6682:4;6679:1;6672:15;6706:4;6703:1;6696:15;7070:832;7133:5;7186:3;7179:4;7171:6;7167:17;7163:27;7153:55;;7204:1;7201;7194:12;7153:55;7233:6;7227:13;7259:4;7283:60;7299:43;7339:2;7299:43;:::i;7283:60::-;7365:3;7389:2;7384:3;7377:15;7417:4;7412:3;7408:14;7401:21;;7474:4;7468:2;7465:1;7461:10;7453:6;7449:23;7445:34;7431:48;;7502:3;7494:6;7491:15;7488:35;;;7519:1;7516;7509:12;7488:35;7555:4;7547:6;7543:17;7569:304;7585:6;7580:3;7577:15;7569:304;;;7658:3;7652:10;7706:4;7699:5;7695:16;7688:5;7685:27;7675:125;;7754:1;7783:2;7779;7772:14;7675:125;7813:18;;7851:12;;;;7602;;7569:304;;;-1:-1:-1;7891:5:229;7070:832;-1:-1:-1;;;;;;7070:832:229:o;7907:943::-;8007:6;8060:2;8048:9;8039:7;8035:23;8031:32;8028:52;;;8076:1;8073;8066:12;8028:52;8109:9;8103:16;8138:18;8179:2;8171:6;8168:14;8165:34;;;8195:1;8192;8185:12;8165:34;8218:22;;;;8274:4;8256:16;;;8252:27;8249:47;;;8292:1;8289;8282:12;8249:47;8318:22;;:::i;:::-;8369:2;8363:9;8356:5;8349:24;8419:2;8415;8411:11;8405:18;8400:2;8393:5;8389:14;8382:42;8463:2;8459;8455:11;8449:18;8492:2;8482:8;8479:16;8476:36;;;8508:1;8505;8498:12;8476:36;8544:65;8601:7;8590:8;8586:2;8582:17;8544:65;:::i;:::-;8539:2;8532:5;8528:14;8521:89;;8656:2;8652;8648:11;8642:18;8637:2;8630:5;8626:14;8619:42;8708:3;8704:2;8700:12;8694:19;8688:3;8681:5;8677:15;8670:44;8761:3;8757:2;8753:12;8747:19;8741:3;8734:5;8730:15;8723:44;8814:3;8810:2;8806:12;8800:19;8794:3;8787:5;8783:15;8776:44;8839:5;8829:15;;;;;7907:943;;;;:::o;9204:999::-;9305:6;9358:2;9346:9;9337:7;9333:23;9329:32;9326:52;;;9374:1;9371;9364:12;9326:52;9407:9;9401:16;9436:18;9477:2;9469:6;9466:14;9463:34;;;9493:1;9490;9483:12;9463:34;9516:22;;;;9572:6;9554:16;;;9550:29;9547:49;;;9592:1;9589;9582:12;9547:49;9618:22;;:::i;:::-;9669:2;9663:9;9656:5;9649:24;9712:2;9708;9704:11;9698:18;9741:2;9731:8;9728:16;9725:36;;;9757:1;9754;9747:12;9725:36;9793:65;9850:7;9839:8;9835:2;9831:17;9793:65;:::i;:::-;9788:2;9781:5;9777:14;9770:89;;9905:2;9901;9897:11;9891:18;9886:2;9879:5;9875:14;9868:42;9956:2;9952;9948:11;9942:18;9937:2;9930:5;9926:14;9919:42;10008:3;10004:2;10000:12;9994:19;9988:3;9981:5;9977:15;9970:44;10061:3;10057:2;10053:12;10047:19;10041:3;10034:5;10030:15;10023:44;10114:3;10110:2;10106:12;10100:19;10094:3;10087:5;10083:15;10076:44;10167:3;10163:2;10159:12;10153:19;10147:3;10140:5;10136:15;10129:44;10192:5;10182:15;;;;;9204:999;;;;:::o;10208:184::-;-1:-1:-1;;;10257:1:229;10250:88;10357:4;10354:1;10347:15;10381:4;10378:1;10371:15;10397:216;10461:9;;;10489:11;;;10436:3;10519:9;;10547:10;;10543:19;;10572:10;;10564:19;;10540:44;10537:70;;;10587:18;;:::i;10618:184::-;-1:-1:-1;;;10667:1:229;10660:88;10767:4;10764:1;10757:15;10791:4;10788:1;10781:15;10807:195;10846:3;-1:-1:-1;;10870:5:229;10867:77;10864:103;;10947:18;;:::i;:::-;-1:-1:-1;10994:1:229;10983:13;;10807:195::o;11543:313::-;11613:6;11666:2;11654:9;11645:7;11641:23;11637:32;11634:52;;;11682:1;11679;11672:12;11634:52;11714:9;11708:16;-1:-1:-1;;;;;11757:5:229;11753:54;11746:5;11743:65;11733:93;;11822:1;11819;11812:12;12216:275;12301:6;12354:2;12342:9;12333:7;12329:23;12325:32;12322:52;;;12370:1;12367;12360:12;12322:52;12402:9;12396:16;12441:1;12434:5;12431:12;12421:40;;12457:1;12454;12447:12;12496:128;12563:9;;;12584:11;;;12581:37;;;12598:18;;:::i;13333:277::-;13400:6;13453:2;13441:9;13432:7;13428:23;13424:32;13421:52;;;13469:1;13466;13459:12;13421:52;13501:9;13495:16;13554:5;13547:13;13540:21;13533:5;13530:32;13520:60;;13576:1;13573;13566:12;14679:125;14744:9;;;14765:10;;;14762:36;;;14778:18;;:::i;15526:439::-;15579:3;15617:5;15611:12;15644:6;15639:3;15632:19;15670:4;15699;15694:3;15690:14;15683:21;;15738:4;15731:5;15727:16;15761:1;15771:169;15785:6;15782:1;15779:13;15771:169;;;15846:13;;15834:26;;15880:12;;;;15915:15;;;;15807:1;15800:9;15771:169;;15970:468;16270:6;16259:9;16252:25;16313:2;16308;16297:9;16293:18;16286:30;16233:4;16333:56;16385:2;16374:9;16370:18;16362:6;16333:56;:::i;:::-;16325:64;;16425:6;16420:2;16409:9;16405:18;16398:34;15970:468;;;;;;:::o;16443:250::-;16528:1;16538:113;16552:6;16549:1;16546:13;16538:113;;;16628:11;;;16622:18;16609:11;;;16602:39;16574:2;16567:10;16538:113;;;-1:-1:-1;;16685:1:229;16667:16;;16660:27;16443:250::o;16698:568::-;16751:5;16804:3;16797:4;16789:6;16785:17;16781:27;16771:55;;16822:1;16819;16812:12;16771:55;16851:6;16845:13;16877:18;16873:2;16870:26;16867:52;;;16899:18;;:::i;:::-;16943:114;17051:4;-1:-1:-1;;16975:4:229;16971:2;16967:13;16963:86;16959:97;16943:114;:::i;:::-;17082:2;17073:7;17066:19;17128:3;17121:4;17116:2;17108:6;17104:15;17100:26;17097:35;17094:55;;;17145:1;17142;17135:12;17094:55;17158:77;17232:2;17225:4;17216:7;17212:18;17205:4;17197:6;17193:17;17158:77;:::i;17271:655::-;17413:6;17421;17429;17482:2;17470:9;17461:7;17457:23;17453:32;17450:52;;;17498:1;17495;17488:12;17450:52;17531:9;17525:16;17560:18;17601:2;17593:6;17590:14;17587:34;;;17617:1;17614;17607:12;17587:34;17640:60;17692:7;17683:6;17672:9;17668:22;17640:60;:::i;:::-;17630:70;;17740:2;17729:9;17725:18;17719:25;17709:35;;17790:2;17779:9;17775:18;17769:25;17753:41;;17819:2;17809:8;17806:16;17803:36;;;17835:1;17832;17825:12;17803:36;;17858:62;17912:7;17901:8;17890:9;17886:24;17858:62;:::i;:::-;17848:72;;;17271:655;;;;;:::o;17931:442::-;18194:6;18183:9;18176:25;18237:2;18232;18221:9;18217:18;18210:30;18157:4;18257:56;18309:2;18298:9;18294:18;18286:6;18257:56;:::i;:::-;18249:64;;18361:4;18353:6;18349:17;18344:2;18333:9;18329:18;18322:45;17931:442;;;;;;:::o;18378:335::-;18457:6;18510:2;18498:9;18489:7;18485:23;18481:32;18478:52;;;18526:1;18523;18516:12;18478:52;18559:9;18553:16;18592:18;18584:6;18581:30;18578:50;;;18624:1;18621;18614:12;18578:50;18647:60;18699:7;18690:6;18679:9;18675:22;18647:60;:::i;18718:329::-;18759:3;18797:5;18791:12;18824:6;18819:3;18812:19;18840:76;18909:6;18902:4;18897:3;18893:14;18886:4;18879:5;18875:16;18840:76;:::i;:::-;18961:2;18949:15;-1:-1:-1;;18945:88:229;18936:98;;;;19036:4;18932:109;;18718:329;-1:-1:-1;;18718:329:229:o;19052:359::-;19255:2;19244:9;19237:21;19218:4;19275:44;19315:2;19304:9;19300:18;19292:6;19275:44;:::i;:::-;19350:2;19335:18;;19328:34;;;;-1:-1:-1;19393:2:229;19378:18;19371:34;19267:52;19052:359;-1:-1:-1;19052:359:229:o;19416:604::-;19725:6;19714:9;19707:25;19768:3;19763:2;19752:9;19748:18;19741:31;19688:4;19795:57;19847:3;19836:9;19832:19;19824:6;19795:57;:::i;:::-;19900:4;19892:6;19888:17;19883:2;19872:9;19868:18;19861:45;19954:9;19946:6;19942:22;19937:2;19926:9;19922:18;19915:50;19982:32;20007:6;19999;19982:32;:::i;:::-;19974:40;19416:604;-1:-1:-1;;;;;;;19416:604:229:o;20025:515::-;20316:6;20305:9;20298:25;20359:3;20354:2;20343:9;20339:18;20332:31;20279:4;20380:57;20432:3;20421:9;20417:19;20409:6;20380:57;:::i;:::-;20485:4;20473:17;;;;20468:2;20453:18;;20446:45;-1:-1:-1;20522:2:229;20507:18;20500:34;20372:65;20025:515;-1:-1:-1;;20025:515:229:o;20917:184::-;-1:-1:-1;;;20966:1:229;20959:88;21066:4;21063:1;21056:15;21090:4;21087:1;21080:15;21106:175;21143:3;21187:4;21180:5;21176:16;21216:4;21207:7;21204:17;21201:43;;21224:18;;:::i;:::-;21273:1;21260:15;;21106:175;-1:-1:-1;;21106:175:229:o;21286:168::-;21359:9;;;21390;;21407:15;;;21401:22;;21387:37;21377:71;;21428:18;;:::i;21459:709::-;21829:6;21818:9;21811:25;21872:3;21867:2;21856:9;21852:18;21845:31;21792:4;21899:57;21951:3;21940:9;21936:19;21928:6;21899:57;:::i;:::-;22004:4;21996:6;21992:17;21987:2;21976:9;21972:18;21965:45;22058:9;22050:6;22046:22;22041:2;22030:9;22026:18;22019:50;22086:32;22111:6;22103;22086:32;:::i;:::-;22078:40;;;22155:6;22149:3;22138:9;22134:19;22127:35;21459:709;;;;;;;;:::o;22173:184::-;22243:6;22296:2;22284:9;22275:7;22271:23;22267:32;22264:52;;;22312:1;22309;22302:12;22264:52;-1:-1:-1;22335:16:229;;22173:184;-1:-1:-1;22173:184:229:o;22362:640::-;22613:6;22608:3;22601:19;22583:3;22639:2;22672;22667:3;22663:12;22704:6;22698:13;22769:2;22761:6;22757:15;22790:1;22800:175;22814:6;22811:1;22808:13;22800:175;;;22877:13;;22863:28;;22913:14;;;;22950:15;;;;22836:1;22829:9;22800:175;;;-1:-1:-1;22991:5:229;;22362:640;-1:-1:-1;;;;;;;22362:640:229:o;23226:464::-;23473:66;23465:6;23461:79;23450:9;23443:98;23577:6;23572:2;23561:9;23557:18;23550:34;23620:2;23615;23604:9;23600:18;23593:30;23424:4;23640:44;23680:2;23669:9;23665:18;23657:6;23640:44;:::i;23695:174::-;23762:12;23794:10;;;23806;;;23790:27;;23829:11;;;23826:37;;;23843:18;;:::i;24521:901::-;24946:6;24935:9;24928:25;24989:3;24984:2;24973:9;24969:18;24962:31;24909:4;25016:57;25068:3;25057:9;25053:19;25045:6;25016:57;:::i;:::-;25121:4;25109:17;;25104:2;25089:18;;25082:45;25146:12;25194:15;;;25189:2;25174:18;;25167:43;25247:15;;25241:3;25226:19;;25219:44;25294:3;25279:19;;25272:35;;;25344:22;;;25338:3;25323:19;;25316:51;25384:32;25348:6;25401;25384:32;:::i;:::-;25376:40;24521:901;-1:-1:-1;;;;;;;;;;24521:901:229:o;25427:788::-;25792:3;25781:9;25774:22;25755:4;25819:57;25871:3;25860:9;25856:19;25848:6;25819:57;:::i;:::-;25924:4;25916:6;25912:17;25907:2;25896:9;25892:18;25885:45;25978:14;25970:6;25966:27;25961:2;25950:9;25946:18;25939:55;26042:12;26034:6;26030:25;26025:2;26014:9;26010:18;26003:53;26093:6;26087:3;26076:9;26072:19;26065:35;26149:9;26141:6;26137:22;26131:3;26120:9;26116:19;26109:51;26177:32;26202:6;26194;26177:32;:::i;:::-;26169:40;25427:788;-1:-1:-1;;;;;;;;;25427:788:229:o;26220:511::-;26471:2;26460:9;26453:21;26434:4;26497:56;26549:2;26538:9;26534:18;26526:6;26497:56;:::i;:::-;26601:14;26593:6;26589:27;26584:2;26573:9;26569:18;26562:55;26665:9;26657:6;26653:22;26648:2;26637:9;26633:18;26626:50;26693:32;26718:6;26710;26693:32;:::i;26736:616::-;27047:6;27036:9;27029:25;27090:3;27085:2;27074:9;27070:18;27063:31;27010:4;27117:57;27169:3;27158:9;27154:19;27146:6;27117:57;:::i;:::-;27222:14;27214:6;27210:27;27205:2;27194:9;27190:18;27183:55;27286:9;27278:6;27274:22;27269:2;27258:9;27254:18;27247:50;27314:32;27339:6;27331;27314:32;:::i","linkReferences":{}},"methodIdentifiers":{"_msgSender()":"119df25f","_msgValue()":"45ec9354","_world()":"e1af802c","applyEquipmentBonuses(bytes32)":"9056fa28","checkRequirements(bytes32,uint256)":"9a8bb9a2","equipItems(bytes32,uint256[])":"cc77a2de","getArmorStats(uint256)":"40a5ed2a","getWeaponStats(uint256)":"63ff2287","isEquipped(bytes32,uint256)":"edcfef82","supportsInterface(bytes4)":"01ffc9a7","unequipItem(bytes32,uint256)":"b2aca84b"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"}],\"name\":\"EncodedLengths_InvalidLength\",\"type\":\"error\"},{\"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\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"accessedIndex\",\"type\":\"uint256\"}],\"name\":\"Store_IndexOutOfBounds\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes2\",\"name\":\"expected\",\"type\":\"bytes2\"},{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"Store_InvalidResourceType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint40\",\"name\":\"startWithinField\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"fieldLength\",\"type\":\"uint40\"}],\"name\":\"Store_InvalidSplice\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"indexed\":false,\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"indexed\":false,\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"indexed\":false,\"internalType\":\"EncodedLengths\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Store_SpliceDynamicData\",\"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\":\"_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\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"}],\"name\":\"applyEquipmentBonuses\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"adjustedStrength\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"adjustedAgility\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"adjustedIntelligence\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"adjustedArmor\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"adjustedMaxHp\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"currentHp\",\"type\":\"int256\"},{\"internalType\":\"uint256\",\"name\":\"level\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"class\",\"type\":\"uint256\"}],\"internalType\":\"struct AdjustedCombatStats\",\"name\":\"modifiedStats\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"}],\"name\":\"checkRequirements\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"canUse\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256[]\",\"name\":\"itemIds\",\"type\":\"uint256[]\"}],\"name\":\"equipItems\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"}],\"name\":\"getArmorStats\",\"outputs\":[{\"components\":[{\"internalType\":\"int256\",\"name\":\"agiModifier\",\"type\":\"int256\"},{\"internalType\":\"uint256\",\"name\":\"armorModifier\",\"type\":\"uint256\"},{\"internalType\":\"uint8[]\",\"name\":\"classRestrictions\",\"type\":\"uint8[]\"},{\"internalType\":\"int256\",\"name\":\"hitPointModifier\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"intModifier\",\"type\":\"int256\"},{\"internalType\":\"uint256\",\"name\":\"minLevel\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"strModifier\",\"type\":\"int256\"}],\"internalType\":\"struct ArmorStats\",\"name\":\"_ArmorStats\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"}],\"name\":\"getWeaponStats\",\"outputs\":[{\"components\":[{\"internalType\":\"int256\",\"name\":\"agiModifier\",\"type\":\"int256\"},{\"internalType\":\"uint8[]\",\"name\":\"classRestrictions\",\"type\":\"uint8[]\"},{\"internalType\":\"int256\",\"name\":\"hitPointModifier\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"intModifier\",\"type\":\"int256\"},{\"internalType\":\"uint256\",\"name\":\"maxDamage\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minDamage\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minLevel\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"strModifier\",\"type\":\"int256\"}],\"internalType\":\"struct WeaponStats\",\"name\":\"_weaponStats\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"}],\"name\":\"isEquipped\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_isEquipped\",\"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\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"}],\"name\":\"unequipItem\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"errors\":{\"EncodedLengths_InvalidLength(uint256)\":[{\"params\":{\"length\":\"The length of the encoded lengths.\"}}],\"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.\"}}],\"Store_IndexOutOfBounds(uint256,uint256)\":[{\"details\":\"Raised if the start index is larger than the previous length of the field.\",\"params\":{\"accessedIndex\":\"FIXME\",\"length\":\"FIXME\"}}],\"Store_InvalidResourceType(bytes2,bytes32,string)\":[{\"params\":{\"expected\":\"The expected resource type.\",\"resourceId\":\"The resource ID.\",\"resourceIdString\":\"The stringified resource ID (for easier debugging).\"}}],\"Store_InvalidSplice(uint40,uint40,uint40)\":[{\"details\":\"Raised if the splice total length of the field is changed but the splice is not at the end of the field.\",\"params\":{\"deleteCount\":\"The number of bytes to delete in the splice operation.\",\"fieldLength\":\"The field length for the splice operation.\",\"startWithinField\":\"The start index within the field for the splice operation.\"}}]},\"events\":{\"Store_SpliceDynamicData(bytes32,bytes32[],uint8,uint48,uint40,bytes32,bytes)\":{\"params\":{\"data\":\"The data to insert into the dynamic data of the record at the start byte.\",\"deleteCount\":\"The number of bytes to delete in the splice operation.\",\"dynamicFieldIndex\":\"The index of the dynamic field to splice data, relative to the start of the dynamic fields. (Dynamic field index = field index - number of static fields)\",\"encodedLengths\":\"The encoded lengths of the dynamic data of the record.\",\"keyTuple\":\"An array representing the composite 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.\"}},\"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.\"}},\"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\":{\"EncodedLengths_InvalidLength(uint256)\":[{\"notice\":\"Error raised when the provided encoded lengths has an invalid length.\"}],\"Slice_OutOfBounds(bytes,uint256,uint256)\":[{\"notice\":\"Error raised when the provided slice is out of bounds.\"}],\"Store_IndexOutOfBounds(uint256,uint256)\":[{\"notice\":\"Error raised if the provided index is out of bounds.\"}],\"Store_InvalidResourceType(bytes2,bytes32,string)\":[{\"notice\":\"Error raised if the provided resource ID cannot be found.\"}],\"Store_InvalidSplice(uint40,uint40,uint40)\":[{\"notice\":\"Error raised if the provided splice is invalid.\"}]},\"events\":{\"Store_SpliceDynamicData(bytes32,bytes32[],uint8,uint48,uint40,bytes32,bytes)\":{\"notice\":\"Emitted when dynamic data in the store is spliced.\"},\"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/EquipmentSystem.sol\":\"EquipmentSystem\"},\"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\":\"0xdd3ebcb4c411e951e1d5c68d6287c597f8f6ab874b48ae96600e024326bd7059\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://61cf2ec85c2dcfde0de8d6c12cdb78b59f8b94a8662dd122bc1aca013cc69c7c\",\"dweb:/ipfs/QmdsELzf5enAbpe5ERXRJgyg2PvtiAUiiX7dT85BLtKpCM\"]},\"lib/ERC1155-puppet/ERC1155System.sol\":{\"keccak256\":\"0x37bfddf9abf8e10002749d0f3e5c2d765da2359b4aa0c10549d61728da1ddae3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://77cef81d1373f77daac326d90895bbe692166b82895ae4b5f11ed92d4c5ad21c\",\"dweb:/ipfs/Qmcjk2FUweGK5McuAQh8jXjMa6t3wW4YoWtwitEKD3jqhG\"]},\"lib/ERC1155-puppet/IERC1155.sol\":{\"keccak256\":\"0xba76a0cbf29f93fdcf613ee19a3e8a36d8579628c3e657f68edd29f682cfe05d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c40994dd35444a97b97eacd9c5af7f27373c357642000bbcbcafe7169bd2179e\",\"dweb:/ipfs/QmSVGhh4AT7gkSmVtnitew14xtQFepACdhbGbWXJh39mk1\"]},\"lib/ERC1155-puppet/IERC1155Errors.sol\":{\"keccak256\":\"0x507875c8e9e6f2e706e95c565d51f20030165eb2dc241f49a42cedb96caaead2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b96ff50d61db0f5773b5322c8d3dc8b062a92f9da21bf9a821ac7bae58bcdecb\",\"dweb:/ipfs/QmcXnAhbPWL4ekfgLVPXuBRPuUUMM7zfU5xwP8pPoihnTu\"]},\"lib/ERC1155-puppet/IERC1155Events.sol\":{\"keccak256\":\"0x43dcbad156d27946650411971fabb2dcac1f234f78a5e7a776e18560c9ef64d5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://299a141df22563efaa23eb10ab2a311d3b4cc252a3f63a4c73902b198f731859\",\"dweb:/ipfs/QmbaTrv7SwCrYcQ4qyyPf4YxUFQLrcuYMy1aF5sp3VwswN\"]},\"lib/ERC1155-puppet/IERC1155MetadataURI.sol\":{\"keccak256\":\"0x73546c8cf58dc8ce002f50f172ebb8207e65856d12402f8d86fca8ba9288c4d8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c81bc7f8b4f61810c1562c0197499be6ce636313c2beb9d095455ea8ccd21ae0\",\"dweb:/ipfs/QmR67xU45dQWo51gHyaZB6wy8CbnRLg6nFvD4KeTX6mfZz\"]},\"lib/ERC1155-puppet/IERC1155Receiver.sol\":{\"keccak256\":\"0x9a6fd2d799610585460b2eeba3a38fe7706b8e7291f05411622a979fb462383f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d3c78236d3e2b76209e1e2bb175820449bb1527c0ca99e526b19a73f207d38b3\",\"dweb:/ipfs/Qma552XoWh5sYX4SSiUgwsSpTxe4qR47ozuac4nDsRetxF\"]},\"lib/ERC1155-puppet/IERC1155System.sol\":{\"keccak256\":\"0x324481afcc10bb871430340e0ddea5613a7a7dc7436ad8067b64e787791d9c74\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cbf2f86e7c18feb303c9201417a85af320f148907fa637b25b56e7484325d64c\",\"dweb:/ipfs/QmW35pffC8PK5Y7afxLc6qYYiDjH4NayRggogPazy5JsEi\"]},\"lib/ERC1155-puppet/constants.sol\":{\"keccak256\":\"0xe41618b4227fc0aaa1c22fc3972420734e23e0441a2315269de368af69d67c70\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9e67f2b3f6597a30810afaccd9cd90146b7164fc6c8e91a16261f2424b6b62ee\",\"dweb:/ipfs/QmeJoceERJVcjfH4g1YQTpZGQdUnTFSgZz2eWTRtuwKXje\"]},\"lib/ERC1155-puppet/libraries/LibString.sol\":{\"keccak256\":\"0xb53857d461ac8c546fcd96b94a9f4e34001ac555bbc7b3fc3471c52b16afe2fb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://24cae538067519ffa04a943330b10cba87d26e2c03227edd8a0ebe671186fb73\",\"dweb:/ipfs/QmcZuKmY8GyCWDSSSYAV5ZLuGyhkYhiJXb5AMvViUYgAuz\"]},\"lib/ERC1155-puppet/libraries/utils/ERC1155Utils.sol\":{\"keccak256\":\"0x981a5c3d788baf2b20b043c1a1f005fa9aa224f660233ecc63c6aa2e719b0f21\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5270b523c823caf879a3d338914d1c44070aace2825fb4fbd83d744267a26f5f\",\"dweb:/ipfs/QmVfXQPAPsr24W5rz5qDiiVp2n6owM417skseKnEHxqXmq\"]},\"lib/ERC1155-puppet/libraries/utils/draft-IERC6093.sol\":{\"keccak256\":\"0xb016571337f659bda4d98117bfd0ea8e26d5e7b696eff5cc308275b420b9120e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://72ad563fb7c394adfce5a899bc94afb6e463c2773d9de1b98cae3747f85cd779\",\"dweb:/ipfs/QmZwZGrZreuHMW7EHmzpXpN6JVtmcmQY4othHaTqR2ucV6\"]},\"lib/ERC1155-puppet/tables/ERC1155MetadataURI.sol\":{\"keccak256\":\"0x5e7be6ad3cd2280a13cbc155496131b2453d411da565d17e68df8a2b479ae3ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a6ccc261562a5c76ac720adc8634d931cae7a7ecc40c96e5db7837a262c38fe\",\"dweb:/ipfs/QmY3G99LXRifTJpJA4FqPRDUBboe8GD2PcEagu9MiwuUqL\"]},\"lib/ERC1155-puppet/tables/ERC1155URIStorage.sol\":{\"keccak256\":\"0x41b5c9f2a05119ab0cdc2ed8ebafca81338e71637dc79b218c3c35a4d901d40e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://526fc37c04ba0e53d742e26cf7e6b899f520482fd02fe484e17100eb3b1a256d\",\"dweb:/ipfs/Qmex48c3aPQYRHkduC9fxxzvAYYvnqesyP1AKZNnrXC2cQ\"]},\"lib/ERC1155-puppet/tables/OperatorApproval.sol\":{\"keccak256\":\"0xbbed481b7ccef9525cd566c8e36f42512c8de94c7431510356b35c853c2764d5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://984af22419c3ba9e19775b47cdd981872bb1aff430ebab83752a0ea3f6b6fb79\",\"dweb:/ipfs/Qmdr1FByP2aWAuursvKr126EZhNzT29H4bGs3qx9yacVfg\"]},\"lib/ERC1155-puppet/tables/Owners.sol\":{\"keccak256\":\"0x1dce77dc5f33c570e2163f8cbb9e5b3a628ae8f6abbf097dfc24422ff7d50636\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c604d7d03c963f322ed07c2978e1276e89d4a61ad2f2d6790eba98d7f663c7a3\",\"dweb:/ipfs/QmakymS49hdSh7i5igXbTX9f44A4h3yh4cFAxTaMfNvXTp\"]},\"lib/ERC1155-puppet/tables/TotalSupply.sol\":{\"keccak256\":\"0x892ee6cca8571fc5e43563a5834d5a44330a27206a838bb755f7711bbd357c4a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f3120b4a608f998c88b42a50ec33b6ffa709e7079d37f0ec88998f6fb441919b\",\"dweb:/ipfs/QmP4RFLPi75jTn19cUYXshfZgSAJoDzHAio6xGnYSK9NLE\"]},\"lib/ERC1155-puppet/utils.sol\":{\"keccak256\":\"0x4c264da22c936a784106d81aa3cdb94f54d90d46e15ad1b66b53bf28bbcbdf49\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b47674f3483134a57c6a3ac0193e6cdd3643774d12ad433de0541b8358ea9dd0\",\"dweb:/ipfs/QmSqmfS5s7aqrsLgi67b91s3f51AaDJs5F5xzioZcussXH\"]},\"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/modules/puppet/Puppet.sol\":{\"keccak256\":\"0x0793dc274d0e27b9a00369935693952f2b15e85b243ebed5994cc0c5fd806bc9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d94877420ab98c06013f327ce43e18a7dd3f9a42a33f76a5291ae8424b2699a6\",\"dweb:/ipfs/QmcpKAzLV2eKSU7Pfbb7wgkidNeWSUyUD5J2Scgio16RS8\"]},\"node_modules/@latticexyz/world-modules/src/modules/puppet/PuppetMaster.sol\":{\"keccak256\":\"0xc83209af82eba3b3452a5c62531d52edb13d69db67c768ec12989cfaf9191c72\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f1d83a60ed2e3a15cde57d6fc859ee7c76e6d089010f41189151e799eb90525c\",\"dweb:/ipfs/QmfZLVNQ9G3kkMBxu3koZbMVPqhtxGTw2iziZQbob4AFhm\"]},\"node_modules/@latticexyz/world-modules/src/modules/puppet/constants.sol\":{\"keccak256\":\"0x55dc370e83d22bd3ddb79172658731deb725c7609c1966d58cfdc5276bc20a7e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6bc27074a755a64d238f32cfd07b4226cfd47fd157f4f0829c13d8d5406d5f9d\",\"dweb:/ipfs/QmZesmQK815TdF6AuZpKZ249NXP2Qqnzmy9k3WpNRc5Cyq\"]},\"node_modules/@latticexyz/world-modules/src/modules/puppet/tables/PuppetRegistry.sol\":{\"keccak256\":\"0x37273e42577e71b80621bcaa9132b8f9d28ded452242fb478fd7e52f382b83a6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://26403866f063923a910cc1e6f4ff7b0e74e4f343b1222675658d1b9a1ecdbe14\",\"dweb:/ipfs/QmSTqLMbg9PvyFkVexVbLPUPLr1aBuBtcfnBZGbqEaje7Q\"]},\"node_modules/@latticexyz/world-modules/src/modules/puppet/utils.sol\":{\"keccak256\":\"0x0c07e1daf167a9ebcf81d1b176e4aef23d12b0bc01333c572c0482b699fd199d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7f2ec0928e530ae3b75aadfe224a5c1654d0c26b8f10e06e490274fff3871489\",\"dweb:/ipfs/QmPLfak2kwefQ5tcNFxuE9TXsQ4PVkvTraHWZU8PK9GkR4\"]},\"node_modules/@latticexyz/world-modules/src/utils/AccessControlLib.sol\":{\"keccak256\":\"0x9fb1520ec94ce3396760a235db900192b4990c78fd459c449896a74c32b83542\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4025b37988ece6915b2c867702a4a381829755dd9e5b0b0b32ade85649b00b2a\",\"dweb:/ipfs/QmUsLyetPdhtSdN3MicE1uphXWscKBPSBif8Sd83RC1E6Z\"]},\"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/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/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/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/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\":\"0x84ff02d4275be694bfbe1e60e24539a891dda5df3bacf04f0eb2a974425603d0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f88775b86cdc8322742e528072b64d01df3d3ef70d4fc5104412522e468ae4e2\",\"dweb:/ipfs/Qme75CeS2sA8pr1Tyx9GN5atmuG4aBGjMPaagaGtYTjc2R\"]},\"src/codegen/tables/Actions.sol\":{\"keccak256\":\"0x63cd48bebaa0414728e9be2c856e4eb01efaead6627a6615da4c77b886805cef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1dfe138555b67362f41c26ce1ab074bfc1fcc4e7c6fd0284b82cc699d80d392\",\"dweb:/ipfs/QmNf8UGE3FZ4U96HkeioE4peWWz1SKPAjhKRrGnpEnCdkQ\"]},\"src/codegen/tables/Admin.sol\":{\"keccak256\":\"0xe3b7e993ca2e420d73b845fb37388d453486e24522b941503a2f81c639769725\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e638c35d3ec5805180122b70849bd3a93aa680f3251ac9e7fe4f0ff24722f614\",\"dweb:/ipfs/QmVL3xJPrsVDgXQTdxBEkq4PRmyNDCFHGHKJxLQzuFy9XJ\"]},\"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/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\":\"0x1f0b21a82c18d474347446546973619289392ee9cc745eccbfb4ba802771b2e2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f0a514e9aa8c0265e8ac7284587cdfec829ad4904e511a284d44a325f9ee511b\",\"dweb:/ipfs/QmYGbphJpnBQMsTEtAM78kqH56FrzrmBFVNthRM4WLdUSQ\"]},\"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\":\"0xe941a99c5bc6b4f21b69b4ad61870a3c4b35fa3a7d8e162c75ac3e7515717891\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://eaa285996201485c500f114b98515ce121d87ec29780085dc509d32dff96b227\",\"dweb:/ipfs/QmbnDdw5KqwfGspTKgikXCkvn6Gi6mVWca2yXiPoumhEJP\"]},\"src/codegen/tables/UltimateDominionConfig.sol\":{\"keccak256\":\"0x6f439f3fef2c4db3b295718bb3e277f59500a3183f2306fe70890a30c3eeff26\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bde32ff627c137c1b52e6f45ff82df52eee9e6fe8fa668fc791132dba187f256\",\"dweb:/ipfs/Qmcj4S8ysUA1Lv8xbA5i1dzn4wwKPQrCEjpUd1MW6rh21w\"]},\"src/codegen/world/IActionSystem.sol\":{\"keccak256\":\"0x3ea10f6af2b29e07f658e961113a68db383bb5df7ec853bd797bd1cc14d19b0d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c834cb0bb80ffe10c6175f8a16b827dde9804d459e6aa33691484e419587d47f\",\"dweb:/ipfs/QmXnLXquHjNXN8CCsEL3NPNrQHW6UWY78oginRPtcHZFcw\"]},\"src/codegen/world/ICharacterSystem.sol\":{\"keccak256\":\"0x54157279932a37b055d247901f034848c1f0bffbf262028cf9c69eeedc9b7235\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ead77ae9ab020f705a998be6229e975b9352486deaa9aa800b6de10338190782\",\"dweb:/ipfs/QmaLrytghaAH6ipaBr4XwsaBcCzeVa5gujHGRNxeztuo4X\"]},\"src/codegen/world/ICombatSystem.sol\":{\"keccak256\":\"0x8b522a844626b33d69ae186dd26f2f7bfd921bf92ed7ed0cee2b8c349d9b64f9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://647f99949a4584cf4b528415ffea01ad243147548455fe5a8373b042b6af3087\",\"dweb:/ipfs/QmYsgXQDTwrqg7YSJkKtiNZzf63f4jdA4xfni5gb9ap5K5\"]},\"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\":\"0xc6caadf1800d688083c234a12cd151746f0271be03a50bb6a654634270ab0864\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://084766afac89e6f74162f69534635f90ec56570019223e22d20342f7853fb4e0\",\"dweb:/ipfs/QmbrQXrTewfgW2NydLgPCdt3Vton5V7nfE7HViXtyrMnoK\"]},\"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\":\"0xfb774a3d4388291fa5bae54bf1c592cc366a0585e6d24388dfeebaf3abd666b4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0986371fcb9f53bac88f2c190faf0f5a77fac686eced664aed5f2f1eb6eaca64\",\"dweb:/ipfs/QmWdgLEV31t27nNQC1KGEfaZHFcuBUayxHm2giZJpAG8hv\"]},\"src/interfaces/Structs.sol\":{\"keccak256\":\"0x6259111a19c9e329bd16a154bca9afa89339ce179d278647e34bcdff1868d0de\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c67088e2ecdb887174b16cdaf87299ad3b3871d7ce1f8c4c51e8def5e6cc8fb5\",\"dweb:/ipfs/QmR2SXkYEkSqaacU6rWGsLdZiefy5kcsVqhvzg4Kob2fk1\"]},\"src/systems/EquipmentSystem.sol\":{\"keccak256\":\"0x1e2d2ce9e21b7b142de98109eacd7abea8291356520974aa1d24b9bfb3d3aadc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be102dcd2585521e76e5301bcc4b8d48c61c15f9d9305c81638e6c585aa9135e\",\"dweb:/ipfs/QmPX7SuadW3SrXfqYgqCeaLceonsSAtBWKGFqVwYBNRWWD\"]},\"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":"uint256","name":"length","type":"uint256"}],"type":"error","name":"EncodedLengths_InvalidLength"},{"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":"uint256","name":"length","type":"uint256"},{"internalType":"uint256","name":"accessedIndex","type":"uint256"}],"type":"error","name":"Store_IndexOutOfBounds"},{"inputs":[{"internalType":"bytes2","name":"expected","type":"bytes2"},{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"Store_InvalidResourceType"},{"inputs":[{"internalType":"uint40","name":"startWithinField","type":"uint40"},{"internalType":"uint40","name":"deleteCount","type":"uint40"},{"internalType":"uint40","name":"fieldLength","type":"uint40"}],"type":"error","name":"Store_InvalidSplice"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]","indexed":false},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8","indexed":false},{"internalType":"uint48","name":"start","type":"uint48","indexed":false},{"internalType":"uint40","name":"deleteCount","type":"uint40","indexed":false},{"internalType":"EncodedLengths","name":"encodedLengths","type":"bytes32","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Store_SpliceDynamicData","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":"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":"bytes32","name":"entityId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"applyEquipmentBonuses","outputs":[{"internalType":"struct AdjustedCombatStats","name":"modifiedStats","type":"tuple","components":[{"internalType":"uint256","name":"adjustedStrength","type":"uint256"},{"internalType":"uint256","name":"adjustedAgility","type":"uint256"},{"internalType":"uint256","name":"adjustedIntelligence","type":"uint256"},{"internalType":"uint256","name":"adjustedArmor","type":"uint256"},{"internalType":"uint256","name":"adjustedMaxHp","type":"uint256"},{"internalType":"int256","name":"currentHp","type":"int256"},{"internalType":"uint256","name":"level","type":"uint256"},{"internalType":"uint256","name":"class","type":"uint256"}]}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"uint256","name":"itemId","type":"uint256"}],"stateMutability":"view","type":"function","name":"checkRequirements","outputs":[{"internalType":"bool","name":"canUse","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"uint256[]","name":"itemIds","type":"uint256[]"}],"stateMutability":"nonpayable","type":"function","name":"equipItems"},{"inputs":[{"internalType":"uint256","name":"itemId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getArmorStats","outputs":[{"internalType":"struct ArmorStats","name":"_ArmorStats","type":"tuple","components":[{"internalType":"int256","name":"agiModifier","type":"int256"},{"internalType":"uint256","name":"armorModifier","type":"uint256"},{"internalType":"uint8[]","name":"classRestrictions","type":"uint8[]"},{"internalType":"int256","name":"hitPointModifier","type":"int256"},{"internalType":"int256","name":"intModifier","type":"int256"},{"internalType":"uint256","name":"minLevel","type":"uint256"},{"internalType":"int256","name":"strModifier","type":"int256"}]}]},{"inputs":[{"internalType":"uint256","name":"itemId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getWeaponStats","outputs":[{"internalType":"struct WeaponStats","name":"_weaponStats","type":"tuple","components":[{"internalType":"int256","name":"agiModifier","type":"int256"},{"internalType":"uint8[]","name":"classRestrictions","type":"uint8[]"},{"internalType":"int256","name":"hitPointModifier","type":"int256"},{"internalType":"int256","name":"intModifier","type":"int256"},{"internalType":"uint256","name":"maxDamage","type":"uint256"},{"internalType":"uint256","name":"minDamage","type":"uint256"},{"internalType":"uint256","name":"minLevel","type":"uint256"},{"internalType":"int256","name":"strModifier","type":"int256"}]}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"uint256","name":"itemId","type":"uint256"}],"stateMutability":"view","type":"function","name":"isEquipped","outputs":[{"internalType":"bool","name":"_isEquipped","type":"bool"}]},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"pure","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"uint256","name":"itemId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"unequipItem","outputs":[{"internalType":"bool","name":"success","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."}},"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/EquipmentSystem.sol":"EquipmentSystem"},"evmVersion":"paris","libraries":{}},"sources":{"constants.sol":{"keccak256":"0xdd3ebcb4c411e951e1d5c68d6287c597f8f6ab874b48ae96600e024326bd7059","urls":["bzz-raw://61cf2ec85c2dcfde0de8d6c12cdb78b59f8b94a8662dd122bc1aca013cc69c7c","dweb:/ipfs/QmdsELzf5enAbpe5ERXRJgyg2PvtiAUiiX7dT85BLtKpCM"],"license":"MIT"},"lib/ERC1155-puppet/ERC1155System.sol":{"keccak256":"0x37bfddf9abf8e10002749d0f3e5c2d765da2359b4aa0c10549d61728da1ddae3","urls":["bzz-raw://77cef81d1373f77daac326d90895bbe692166b82895ae4b5f11ed92d4c5ad21c","dweb:/ipfs/Qmcjk2FUweGK5McuAQh8jXjMa6t3wW4YoWtwitEKD3jqhG"],"license":"MIT"},"lib/ERC1155-puppet/IERC1155.sol":{"keccak256":"0xba76a0cbf29f93fdcf613ee19a3e8a36d8579628c3e657f68edd29f682cfe05d","urls":["bzz-raw://c40994dd35444a97b97eacd9c5af7f27373c357642000bbcbcafe7169bd2179e","dweb:/ipfs/QmSVGhh4AT7gkSmVtnitew14xtQFepACdhbGbWXJh39mk1"],"license":"MIT"},"lib/ERC1155-puppet/IERC1155Errors.sol":{"keccak256":"0x507875c8e9e6f2e706e95c565d51f20030165eb2dc241f49a42cedb96caaead2","urls":["bzz-raw://b96ff50d61db0f5773b5322c8d3dc8b062a92f9da21bf9a821ac7bae58bcdecb","dweb:/ipfs/QmcXnAhbPWL4ekfgLVPXuBRPuUUMM7zfU5xwP8pPoihnTu"],"license":"MIT"},"lib/ERC1155-puppet/IERC1155Events.sol":{"keccak256":"0x43dcbad156d27946650411971fabb2dcac1f234f78a5e7a776e18560c9ef64d5","urls":["bzz-raw://299a141df22563efaa23eb10ab2a311d3b4cc252a3f63a4c73902b198f731859","dweb:/ipfs/QmbaTrv7SwCrYcQ4qyyPf4YxUFQLrcuYMy1aF5sp3VwswN"],"license":"MIT"},"lib/ERC1155-puppet/IERC1155MetadataURI.sol":{"keccak256":"0x73546c8cf58dc8ce002f50f172ebb8207e65856d12402f8d86fca8ba9288c4d8","urls":["bzz-raw://c81bc7f8b4f61810c1562c0197499be6ce636313c2beb9d095455ea8ccd21ae0","dweb:/ipfs/QmR67xU45dQWo51gHyaZB6wy8CbnRLg6nFvD4KeTX6mfZz"],"license":"MIT"},"lib/ERC1155-puppet/IERC1155Receiver.sol":{"keccak256":"0x9a6fd2d799610585460b2eeba3a38fe7706b8e7291f05411622a979fb462383f","urls":["bzz-raw://d3c78236d3e2b76209e1e2bb175820449bb1527c0ca99e526b19a73f207d38b3","dweb:/ipfs/Qma552XoWh5sYX4SSiUgwsSpTxe4qR47ozuac4nDsRetxF"],"license":"MIT"},"lib/ERC1155-puppet/IERC1155System.sol":{"keccak256":"0x324481afcc10bb871430340e0ddea5613a7a7dc7436ad8067b64e787791d9c74","urls":["bzz-raw://cbf2f86e7c18feb303c9201417a85af320f148907fa637b25b56e7484325d64c","dweb:/ipfs/QmW35pffC8PK5Y7afxLc6qYYiDjH4NayRggogPazy5JsEi"],"license":"MIT"},"lib/ERC1155-puppet/constants.sol":{"keccak256":"0xe41618b4227fc0aaa1c22fc3972420734e23e0441a2315269de368af69d67c70","urls":["bzz-raw://9e67f2b3f6597a30810afaccd9cd90146b7164fc6c8e91a16261f2424b6b62ee","dweb:/ipfs/QmeJoceERJVcjfH4g1YQTpZGQdUnTFSgZz2eWTRtuwKXje"],"license":"MIT"},"lib/ERC1155-puppet/libraries/LibString.sol":{"keccak256":"0xb53857d461ac8c546fcd96b94a9f4e34001ac555bbc7b3fc3471c52b16afe2fb","urls":["bzz-raw://24cae538067519ffa04a943330b10cba87d26e2c03227edd8a0ebe671186fb73","dweb:/ipfs/QmcZuKmY8GyCWDSSSYAV5ZLuGyhkYhiJXb5AMvViUYgAuz"],"license":"MIT"},"lib/ERC1155-puppet/libraries/utils/ERC1155Utils.sol":{"keccak256":"0x981a5c3d788baf2b20b043c1a1f005fa9aa224f660233ecc63c6aa2e719b0f21","urls":["bzz-raw://5270b523c823caf879a3d338914d1c44070aace2825fb4fbd83d744267a26f5f","dweb:/ipfs/QmVfXQPAPsr24W5rz5qDiiVp2n6owM417skseKnEHxqXmq"],"license":"MIT"},"lib/ERC1155-puppet/libraries/utils/draft-IERC6093.sol":{"keccak256":"0xb016571337f659bda4d98117bfd0ea8e26d5e7b696eff5cc308275b420b9120e","urls":["bzz-raw://72ad563fb7c394adfce5a899bc94afb6e463c2773d9de1b98cae3747f85cd779","dweb:/ipfs/QmZwZGrZreuHMW7EHmzpXpN6JVtmcmQY4othHaTqR2ucV6"],"license":"MIT"},"lib/ERC1155-puppet/tables/ERC1155MetadataURI.sol":{"keccak256":"0x5e7be6ad3cd2280a13cbc155496131b2453d411da565d17e68df8a2b479ae3ea","urls":["bzz-raw://1a6ccc261562a5c76ac720adc8634d931cae7a7ecc40c96e5db7837a262c38fe","dweb:/ipfs/QmY3G99LXRifTJpJA4FqPRDUBboe8GD2PcEagu9MiwuUqL"],"license":"MIT"},"lib/ERC1155-puppet/tables/ERC1155URIStorage.sol":{"keccak256":"0x41b5c9f2a05119ab0cdc2ed8ebafca81338e71637dc79b218c3c35a4d901d40e","urls":["bzz-raw://526fc37c04ba0e53d742e26cf7e6b899f520482fd02fe484e17100eb3b1a256d","dweb:/ipfs/Qmex48c3aPQYRHkduC9fxxzvAYYvnqesyP1AKZNnrXC2cQ"],"license":"MIT"},"lib/ERC1155-puppet/tables/OperatorApproval.sol":{"keccak256":"0xbbed481b7ccef9525cd566c8e36f42512c8de94c7431510356b35c853c2764d5","urls":["bzz-raw://984af22419c3ba9e19775b47cdd981872bb1aff430ebab83752a0ea3f6b6fb79","dweb:/ipfs/Qmdr1FByP2aWAuursvKr126EZhNzT29H4bGs3qx9yacVfg"],"license":"MIT"},"lib/ERC1155-puppet/tables/Owners.sol":{"keccak256":"0x1dce77dc5f33c570e2163f8cbb9e5b3a628ae8f6abbf097dfc24422ff7d50636","urls":["bzz-raw://c604d7d03c963f322ed07c2978e1276e89d4a61ad2f2d6790eba98d7f663c7a3","dweb:/ipfs/QmakymS49hdSh7i5igXbTX9f44A4h3yh4cFAxTaMfNvXTp"],"license":"MIT"},"lib/ERC1155-puppet/tables/TotalSupply.sol":{"keccak256":"0x892ee6cca8571fc5e43563a5834d5a44330a27206a838bb755f7711bbd357c4a","urls":["bzz-raw://f3120b4a608f998c88b42a50ec33b6ffa709e7079d37f0ec88998f6fb441919b","dweb:/ipfs/QmP4RFLPi75jTn19cUYXshfZgSAJoDzHAio6xGnYSK9NLE"],"license":"MIT"},"lib/ERC1155-puppet/utils.sol":{"keccak256":"0x4c264da22c936a784106d81aa3cdb94f54d90d46e15ad1b66b53bf28bbcbdf49","urls":["bzz-raw://b47674f3483134a57c6a3ac0193e6cdd3643774d12ad433de0541b8358ea9dd0","dweb:/ipfs/QmSqmfS5s7aqrsLgi67b91s3f51AaDJs5F5xzioZcussXH"],"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/modules/puppet/Puppet.sol":{"keccak256":"0x0793dc274d0e27b9a00369935693952f2b15e85b243ebed5994cc0c5fd806bc9","urls":["bzz-raw://d94877420ab98c06013f327ce43e18a7dd3f9a42a33f76a5291ae8424b2699a6","dweb:/ipfs/QmcpKAzLV2eKSU7Pfbb7wgkidNeWSUyUD5J2Scgio16RS8"],"license":"MIT"},"node_modules/@latticexyz/world-modules/src/modules/puppet/PuppetMaster.sol":{"keccak256":"0xc83209af82eba3b3452a5c62531d52edb13d69db67c768ec12989cfaf9191c72","urls":["bzz-raw://f1d83a60ed2e3a15cde57d6fc859ee7c76e6d089010f41189151e799eb90525c","dweb:/ipfs/QmfZLVNQ9G3kkMBxu3koZbMVPqhtxGTw2iziZQbob4AFhm"],"license":"MIT"},"node_modules/@latticexyz/world-modules/src/modules/puppet/constants.sol":{"keccak256":"0x55dc370e83d22bd3ddb79172658731deb725c7609c1966d58cfdc5276bc20a7e","urls":["bzz-raw://6bc27074a755a64d238f32cfd07b4226cfd47fd157f4f0829c13d8d5406d5f9d","dweb:/ipfs/QmZesmQK815TdF6AuZpKZ249NXP2Qqnzmy9k3WpNRc5Cyq"],"license":"MIT"},"node_modules/@latticexyz/world-modules/src/modules/puppet/tables/PuppetRegistry.sol":{"keccak256":"0x37273e42577e71b80621bcaa9132b8f9d28ded452242fb478fd7e52f382b83a6","urls":["bzz-raw://26403866f063923a910cc1e6f4ff7b0e74e4f343b1222675658d1b9a1ecdbe14","dweb:/ipfs/QmSTqLMbg9PvyFkVexVbLPUPLr1aBuBtcfnBZGbqEaje7Q"],"license":"MIT"},"node_modules/@latticexyz/world-modules/src/modules/puppet/utils.sol":{"keccak256":"0x0c07e1daf167a9ebcf81d1b176e4aef23d12b0bc01333c572c0482b699fd199d","urls":["bzz-raw://7f2ec0928e530ae3b75aadfe224a5c1654d0c26b8f10e06e490274fff3871489","dweb:/ipfs/QmPLfak2kwefQ5tcNFxuE9TXsQ4PVkvTraHWZU8PK9GkR4"],"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/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/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/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/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/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":"0x84ff02d4275be694bfbe1e60e24539a891dda5df3bacf04f0eb2a974425603d0","urls":["bzz-raw://f88775b86cdc8322742e528072b64d01df3d3ef70d4fc5104412522e468ae4e2","dweb:/ipfs/Qme75CeS2sA8pr1Tyx9GN5atmuG4aBGjMPaagaGtYTjc2R"],"license":"MIT"},"src/codegen/tables/Actions.sol":{"keccak256":"0x63cd48bebaa0414728e9be2c856e4eb01efaead6627a6615da4c77b886805cef","urls":["bzz-raw://c1dfe138555b67362f41c26ce1ab074bfc1fcc4e7c6fd0284b82cc699d80d392","dweb:/ipfs/QmNf8UGE3FZ4U96HkeioE4peWWz1SKPAjhKRrGnpEnCdkQ"],"license":"MIT"},"src/codegen/tables/Admin.sol":{"keccak256":"0xe3b7e993ca2e420d73b845fb37388d453486e24522b941503a2f81c639769725","urls":["bzz-raw://e638c35d3ec5805180122b70849bd3a93aa680f3251ac9e7fe4f0ff24722f614","dweb:/ipfs/QmVL3xJPrsVDgXQTdxBEkq4PRmyNDCFHGHKJxLQzuFy9XJ"],"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/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":"0x1f0b21a82c18d474347446546973619289392ee9cc745eccbfb4ba802771b2e2","urls":["bzz-raw://f0a514e9aa8c0265e8ac7284587cdfec829ad4904e511a284d44a325f9ee511b","dweb:/ipfs/QmYGbphJpnBQMsTEtAM78kqH56FrzrmBFVNthRM4WLdUSQ"],"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":"0xe941a99c5bc6b4f21b69b4ad61870a3c4b35fa3a7d8e162c75ac3e7515717891","urls":["bzz-raw://eaa285996201485c500f114b98515ce121d87ec29780085dc509d32dff96b227","dweb:/ipfs/QmbnDdw5KqwfGspTKgikXCkvn6Gi6mVWca2yXiPoumhEJP"],"license":"MIT"},"src/codegen/tables/UltimateDominionConfig.sol":{"keccak256":"0x6f439f3fef2c4db3b295718bb3e277f59500a3183f2306fe70890a30c3eeff26","urls":["bzz-raw://bde32ff627c137c1b52e6f45ff82df52eee9e6fe8fa668fc791132dba187f256","dweb:/ipfs/Qmcj4S8ysUA1Lv8xbA5i1dzn4wwKPQrCEjpUd1MW6rh21w"],"license":"MIT"},"src/codegen/world/IActionSystem.sol":{"keccak256":"0x3ea10f6af2b29e07f658e961113a68db383bb5df7ec853bd797bd1cc14d19b0d","urls":["bzz-raw://c834cb0bb80ffe10c6175f8a16b827dde9804d459e6aa33691484e419587d47f","dweb:/ipfs/QmXnLXquHjNXN8CCsEL3NPNrQHW6UWY78oginRPtcHZFcw"],"license":"MIT"},"src/codegen/world/ICharacterSystem.sol":{"keccak256":"0x54157279932a37b055d247901f034848c1f0bffbf262028cf9c69eeedc9b7235","urls":["bzz-raw://ead77ae9ab020f705a998be6229e975b9352486deaa9aa800b6de10338190782","dweb:/ipfs/QmaLrytghaAH6ipaBr4XwsaBcCzeVa5gujHGRNxeztuo4X"],"license":"MIT"},"src/codegen/world/ICombatSystem.sol":{"keccak256":"0x8b522a844626b33d69ae186dd26f2f7bfd921bf92ed7ed0cee2b8c349d9b64f9","urls":["bzz-raw://647f99949a4584cf4b528415ffea01ad243147548455fe5a8373b042b6af3087","dweb:/ipfs/QmYsgXQDTwrqg7YSJkKtiNZzf63f4jdA4xfni5gb9ap5K5"],"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":"0xc6caadf1800d688083c234a12cd151746f0271be03a50bb6a654634270ab0864","urls":["bzz-raw://084766afac89e6f74162f69534635f90ec56570019223e22d20342f7853fb4e0","dweb:/ipfs/QmbrQXrTewfgW2NydLgPCdt3Vton5V7nfE7HViXtyrMnoK"],"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":"0xfb774a3d4388291fa5bae54bf1c592cc366a0585e6d24388dfeebaf3abd666b4","urls":["bzz-raw://0986371fcb9f53bac88f2c190faf0f5a77fac686eced664aed5f2f1eb6eaca64","dweb:/ipfs/QmWdgLEV31t27nNQC1KGEfaZHFcuBUayxHm2giZJpAG8hv"],"license":"MIT"},"src/interfaces/Structs.sol":{"keccak256":"0x6259111a19c9e329bd16a154bca9afa89339ce179d278647e34bcdff1868d0de","urls":["bzz-raw://c67088e2ecdb887174b16cdaf87299ad3b3871d7ce1f8c4c51e8def5e6cc8fb5","dweb:/ipfs/QmR2SXkYEkSqaacU6rWGsLdZiefy5kcsVqhvzg4Kob2fk1"],"license":"MIT"},"src/systems/EquipmentSystem.sol":{"keccak256":"0x1e2d2ce9e21b7b142de98109eacd7abea8291356520974aa1d24b9bfb3d3aadc","urls":["bzz-raw://be102dcd2585521e76e5301bcc4b8d48c61c15f9d9305c81638e6c585aa9135e","dweb:/ipfs/QmPX7SuadW3SrXfqYgqCeaLceonsSAtBWKGFqVwYBNRWWD"],"license":"MIT"},"src/utils.sol":{"keccak256":"0xf50d451bb280fb33e08f521e168952f5145e69eee7df284ffeb1865b8b5187cc","urls":["bzz-raw://a78e6326639bdf19f606921e48c90663f387cbfd7d8160a461838e9ca6a0fc57","dweb:/ipfs/QmPT6PNCCQKWVP9bwYC4JyfuXJSgbupsgq6MT898gYfa1q"],"license":"MIT"}},"version":1},"id":213} \ No newline at end of file +{"abi":[{"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":"applyEquipmentBonuses","inputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"modifiedStats","type":"tuple","internalType":"struct AdjustedCombatStats","components":[{"name":"adjustedStrength","type":"uint256","internalType":"uint256"},{"name":"adjustedAgility","type":"uint256","internalType":"uint256"},{"name":"adjustedIntelligence","type":"uint256","internalType":"uint256"},{"name":"adjustedArmor","type":"uint256","internalType":"uint256"},{"name":"adjustedMaxHp","type":"uint256","internalType":"uint256"},{"name":"currentHp","type":"int256","internalType":"int256"},{"name":"level","type":"uint256","internalType":"uint256"},{"name":"class","type":"uint256","internalType":"uint256"}]}],"stateMutability":"view"},{"type":"function","name":"checkRequirements","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"itemId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"canUse","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"equipItems","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"itemIds","type":"uint256[]","internalType":"uint256[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"getArmorStats","inputs":[{"name":"itemId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"_ArmorStats","type":"tuple","internalType":"struct ArmorStats","components":[{"name":"agiModifier","type":"int256","internalType":"int256"},{"name":"armorModifier","type":"uint256","internalType":"uint256"},{"name":"classRestrictions","type":"uint8[]","internalType":"uint8[]"},{"name":"hitPointModifier","type":"int256","internalType":"int256"},{"name":"intModifier","type":"int256","internalType":"int256"},{"name":"minLevel","type":"uint256","internalType":"uint256"},{"name":"strModifier","type":"int256","internalType":"int256"}]}],"stateMutability":"view"},{"type":"function","name":"getWeaponStats","inputs":[{"name":"itemId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"_weaponStats","type":"tuple","internalType":"struct WeaponStats","components":[{"name":"agiModifier","type":"int256","internalType":"int256"},{"name":"classRestrictions","type":"uint8[]","internalType":"uint8[]"},{"name":"hitPointModifier","type":"int256","internalType":"int256"},{"name":"intModifier","type":"int256","internalType":"int256"},{"name":"maxDamage","type":"uint256","internalType":"uint256"},{"name":"minDamage","type":"uint256","internalType":"uint256"},{"name":"minLevel","type":"uint256","internalType":"uint256"},{"name":"strModifier","type":"int256","internalType":"int256"}]}],"stateMutability":"view"},{"type":"function","name":"isEquipped","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"itemId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"_isEquipped","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":"function","name":"unequipItem","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"itemId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"success","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"event","name":"Store_SpliceDynamicData","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","indexed":false,"internalType":"uint8"},{"name":"start","type":"uint48","indexed":false,"internalType":"uint48"},{"name":"deleteCount","type":"uint40","indexed":false,"internalType":"uint40"},{"name":"encodedLengths","type":"bytes32","indexed":false,"internalType":"EncodedLengths"},{"name":"data","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":"EncodedLengths_InvalidLength","inputs":[{"name":"length","type":"uint256","internalType":"uint256"}]},{"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":"Store_IndexOutOfBounds","inputs":[{"name":"length","type":"uint256","internalType":"uint256"},{"name":"accessedIndex","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidResourceType","inputs":[{"name":"expected","type":"bytes2","internalType":"bytes2"},{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"Store_InvalidSplice","inputs":[{"name":"startWithinField","type":"uint40","internalType":"uint40"},{"name":"deleteCount","type":"uint40","internalType":"uint40"},{"name":"fieldLength","type":"uint40","internalType":"uint40"}]}],"bytecode":{"object":"0x608060405234801561001057600080fd5b50614373806100206000396000f3fe608060405234801561001057600080fd5b50600436106100c95760003560e01c80639056fa2811610081578063cc77a2de1161005b578063cc77a2de14610203578063e1af802c14610218578063edcfef821461022057600080fd5b80639056fa28146101695780639a8bb9a2146101dd578063b2aca84b146101f057600080fd5b806340a5ed2a116100b257806340a5ed2a1461011657806345ec93541461013657806363ff22871461014957600080fd5b806301ffc9a7146100ce578063119df25f146100f6575b600080fd5b6100e16100dc36600461388a565b610233565b60405190151581526020015b60405180910390f35b6100fe6102cc565b6040516001600160a01b0390911681526020016100ed565b6101296101243660046138cc565b6102db565b6040516100ed9190613924565b604051601f1936013581526020016100ed565b61015c6101573660046138cc565b6103ae565b6040516100ed9190613989565b61017c6101773660046138cc565b61047d565b6040516100ed9190600061010082019050825182526020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015260c083015160c083015260e083015160e083015292915050565b6100e16101eb3660046139fa565b61061e565b6100e16101fe3660046139fa565b61080a565b610216610211366004613ad4565b610b4a565b005b6100fe610e9a565b6100e161022e3660046139fa565b610ea4565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee1270000000000000000000000000000000000000000000000000000000014806102c657507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b60006102d661102f565b905090565b61031b6040518060e00160405280600081526020016000815260200160608152602001600081526020016000815260200160008152602001600081525090565b600061032683611061565b905060018151600581111561033d5761033d613b76565b1461038f5760405162461bcd60e51b815260206004820152601360248201527f4954454d533a204e6f742061202041726d6f720000000000000000000000000060448201526064015b60405180910390fd5b80604001518060200190518101906103a79190613c06565b9392505050565b6103f660405180610100016040528060008152602001606081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b600061040183611061565b905060008151600581111561041857610418613b76565b146104655760405162461bcd60e51b815260206004820152601460248201527f4954454d533a204e6f7420612020776561706f6e0000000000000000000000006044820152606401610386565b80604001518060200190518101906103a79190613cb2565b6104c560405180610100016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b60006104d08361112a565b905061051a60405180610100016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b6000610525856111d2565b805184519192506000916105399190613d7f565b1215610546576000610554565b805183516105549190613d7f565b82526020808201519084015160009161056c91613d7f565b121561057957600061058d565b8060200151836020015161058d9190613d7f565b6020830152604081015160608401516000916105a891613d7f565b12156105b55760006105c9565b806040015183606001516105c99190613d7f565b6040830152606081015160808401516000916105e491613d7f565b12156105f1576001610605565b806060015183608001516106059190613d7f565b60808301525060a0918201519181019190915292915050565b60008061062a83611061565b905060006106378561112a565b825160019450909150600581111561065157610651613b76565b60ff1660000361072057600082604001518060200190518101906106759190613cb2565b60c081015160e0840151602083015151929350101590600090156107035760005b8360200151518110156106fd57836020015181815181106106b9576106b9613d9f565b602002602001015160ff16856040015160028111156106da576106da613b76565b60ff16036106eb57600191506106fd565b806106f581613db5565b915050610696565b50610707565b5060015b811580610712575080155b1561071c57600095505b5050505b8151600581111561073357610733613b76565b60ff1660010361080257600082604001518060200190518101906107579190613c06565b60a081015160e0840151604083015151929350101590600090156107e55760005b8360400151518110156107df578360400151818151811061079b5761079b613d9f565b602002602001015160ff16856040015160028111156107bc576107bc613b76565b60ff16036107cd57600191506107df565b806107d781613db5565b915050610778565b506107e9565b5060015b8115806107f4575080155b156107fe57600095505b5050505b505092915050565b6000826000610818826112ba565b9050806060015161086b5760405162461bcd60e51b815260206004820152601960248201527f436861726163746572206e6f7420696e207468652047616d65000000000000006044820152606401610386565b6000610875610e9a565b6001600160a01b031663777c2caf876040518263ffffffff1660e01b81526004016108a291815260200190565b602060405180830381865afa1580156108bf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108e39190613dcf565b90506108ed6102cc565b6001600160a01b0316816001600160a01b03161461094d5760405162461bcd60e51b815260206004820152601a60248201527f4954454d533a204e6f7420436861726163746572204f776e65720000000000006044820152606401610386565b6000610957610e9a565b6001600160a01b031663cdaccbae876040518263ffffffff1660e01b815260040161098491815260200190565b602060405180830381865afa1580156109a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109c59190613df8565b60058111156109d6576109d6613b76565b905060ff8116610a415760006109f4876109ef8a61137f565b611411565b9050868160018351610a069190613e19565b81518110610a1657610a16613d9f565b602002602001015103610a3b57610a2d88826114e6565b610a3688611561565b600195505b50610b37565b60001960ff821601610a9e576000610a5c876109ef8a6115d8565b9050868160018351610a6e9190613e19565b81518110610a7e57610a7e613d9f565b602002602001015103610a3b57610a95888261164a565b610a36886116bb565b7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe60ff82160115610b375760405162461bcd60e51b815260206004820152602160248201527f45515549504d454e543a20554e5245434f474e495a4544204954454d2054595060448201527f45000000000000000000000000000000000000000000000000000000000000006064820152608401610386565b610b408761172e565b5050505092915050565b816000610b56826112ba565b90508060600151610ba95760405162461bcd60e51b815260206004820152601960248201527f436861726163746572206e6f7420696e207468652047616d65000000000000006044820152606401610386565b6000610bb3610e9a565b6001600160a01b031663777c2caf866040518263ffffffff1660e01b8152600401610be091815260200190565b602060405180830381865afa158015610bfd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c219190613dcf565b9050610c2b6102cc565b6001600160a01b0316816001600160a01b031614610c8b5760405162461bcd60e51b815260206004820152601a60248201527f4954454d533a204e6f7420436861726163746572204f776e65720000000000006044820152606401610386565b6000805b8551811015610e8857858181518110610caa57610caa613d9f565b60200260200101519150610cbc610e9a565b6001600160a01b031663b363411883610cd36102cc565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815260048101929092526001600160a01b03166024820152604401602060405180830381865afa158015610d35573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d599190613e2c565b610da55760405162461bcd60e51b815260206004820152601560248201527f4954454d533a204e6f74204974656d204f776e657200000000000000000000006044820152606401610386565b6000610db083611061565b9050600381600001516005811115610dca57610dca613b76565b60ff1610610e1a5760405162461bcd60e51b815260206004820152601d60248201527f4954454d533a204e6f7420616e2065717569707061626c65204974656d0000006044820152606401610386565b610e24888461061e565b610e705760405162461bcd60e51b815260206004820152601b60248201527f4954454d533a20526571756972656d656e7473206e6f74206d657400000000006044820152606401610386565b610e7f88848360000151611934565b50600101610c8f565b50610e928661172e565b505050505050565b60006102d6611a9f565b600080610eb083611061565b80519091506005811115610ec657610ec6613b76565b60ff16600003610f2b576000610edb8561137f565b905060005b8151811015610f245784828281518110610efc57610efc613d9f565b602002602001015103610f125760019350610f24565b80610f1c81613db5565b915050610ee0565b5050611028565b80516005811115610f3e57610f3e613b76565b60ff16600103610f9c576000610f53856115d8565b905060005b8151811015610f245784828281518110610f7457610f74613d9f565b602002602001015103610f8a5760019350610f24565b80610f9481613db5565b915050610f58565b80516005811115610faf57610faf613b76565b60ff16600203156110285760405162461bcd60e51b815260206004820152602160248201527f45515549504d454e543a20554e5245434f474e495a4544204954454d2054595060448201527f45000000000000000000000000000000000000000000000000000000000000006064820152608401610386565b5092915050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c8061105e5750335b90565b60408051606080820183526000808352602083015291810191909152604080516001808252818301909252600091602080830190803683370190505090508260001b816000815181106110b6576110b6613d9f565b60209081029190910101526000808061110f7f746255440000000000000000000000004974656d730000000000000000000000857e21020101200000000000000000000000000000000000000000000000000000611aa9565b925092509250611120838383611b79565b9695505050505050565b611132613834565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061116857611168613d9f565b6020908102919091010152600080806111c17f7462554400000000000000000000000053746174730000000000000000000000857ee1080020200120202020200000000000000000000000000000000000000000611aa9565b925092509250611120838383611be4565b61121a60405180610100016040528060008152602001600081526020016000815260200160008152602001600081526020016060815260200160608152602001606081525090565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061125057611250613d9f565b6020908102919091010152600080806112a97f7462554400000000000000000000000043686172616374657245717569706d65857ea0050320202020200000000000000000000000000000000000000000000000611aa9565b925092509250611120838383611c5c565b6040805160808101825260008082526020820181905281830181905260608201819052825160018082528185019094529192909190816020016020820280368337019050509050828160008151811061131557611315613d9f565b60209081029190910101526000808061136e7f7462554400000000000000000000000043686172616374657273000000000000857e55040020142001000000000000000000000000000000000000000000000000611aa9565b925092509250611120838383611ce3565b604080516001808252818301909252606091600091906020808301908036833701905050905082816000815181106113b9576113b9613d9f565b602090810291909101015260006113f27f7462554400000000000000000000000043686172616374657245717569706d65836001611d33565b90506114096114048260008451611dfa565b611e88565b949350505050565b60606001825111156114e05760005b82518110156114da578383828151811061143c5761143c613d9f565b6020026020010151036114c8576000836001855161145a9190613e19565b8151811061146a5761146a613d9f565b602002602001015190508084838151811061148757611487613d9f565b6020026020010181815250508484600186516114a39190613e19565b815181106114b3576114b3613d9f565b602002602001018181525050839250506114da565b806114d281613db5565b915050611420565b506102c6565b50919050565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061151c5761151c613d9f565b602090810291909101015261155c7f7462554400000000000000000000000043686172616374657245717569706d6582600161155786611e99565b611ea9565b505050565b60408051600180825281830190925260009160208083019080368337019050509050818160008151811061159757611597613d9f565b6020026020010181815250506115d47f7462554400000000000000000000000043686172616374657245717569706d6560001b8260016020611f5b565b5050565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061161257611612613d9f565b602090810291909101015260006113f27f7462554400000000000000000000000043686172616374657245717569706d658383611d33565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061168057611680613d9f565b602090810291909101015261155c7f7462554400000000000000000000000043686172616374657245717569706d6582600061155786611e99565b6040805160018082528183019092526000916020808301908036833701905050905081816000815181106116f1576116f1613d9f565b6020026020010181815250506115d47f7462554400000000000000000000000043686172616374657245717569706d6560001b8260006020611f5b565b6000611739826115d8565b905060006117468361137f565b905060008060008060006117906040518060e00160405280600081526020016000815260200160608152602001600081526020016000815260200160008152602001600081525090565b6117d860405180610100016040528060008152602001606081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b8851156118705760005b895181101561186e5761180d8a828151811061180057611800613d9f565b60200260200101516102db565b925082602001518861181f9190613e4e565b97508260c00151876118319190613d7f565b83519097506118409087613d7f565b95508260800151856118529190613d7f565b94508260600151846118649190613d7f565b93506001016117e2565b505b8751156118f65760005b88518110156118f4576118a589828151811061189857611898613d9f565b60200260200101516103ae565b91508160e00151876118b79190613d7f565b82519097506118c69087613d7f565b95508160600151856118d89190613d7f565b94508160400151846118ea9190613d7f565b935060010161187a565b505b6119008a87611fce565b61190a8a86612082565b6119148a85612101565b61191e8a84612180565b6119288a886121ff565b50505050505050505050565b61193e8383610ea4565b1561198b5760405162461bcd60e51b815260206004820152601b60248201527f45515549504d454e543a20414c524541445920455155495050454400000000006044820152606401610386565b80600581111561199d5761199d613b76565b60ff16600003611a095760036119b28461227e565b106119ff5760405162461bcd60e51b815260206004820181905260248201527f4954454d533a20546f6f206d616e7920776561706f6e732065717569707065646044820152606401610386565b611a0983836122fc565b806005811115611a1b57611a1b613b76565b60ff16600103611a87576003611a308461238f565b10611a7d5760405162461bcd60e51b815260206004820181905260248201527f4954454d533a20546f6f206d616e7920776561706f6e732065717569707065646044820152606401610386565b611a878383612400565b806005811115611a9957611a99613b76565b50505050565b60006102d661247f565b6060600060606000611ab961247f565b9050306001600160a01b03821603611ae257611ad68787876124be565b93509350935050611b70565b6040517f419b58fd0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063419b58fd90611b2b908a908a908a90600401613e92565b600060405180830381865afa158015611b48573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611ad69190810190613f43565b93509350939050565b60408051606080820183526000808352602083015291810191909152611b9e846125c6565b6020830181905282826005811115611bb857611bb8613b76565b6005811115611bc957611bc9613b76565b8152505050611bd883836125f2565b60408201529392505050565b611bec613834565b611bf58461261e565b60e0890181905260c0890182905260a089018390526080890184905260608901859052886020810160408201886002811115611c3357611c33613b76565b6002811115611c4457611c44613b76565b90529790975250505093909252509195945050505050565b611ca460405180610100016040528060008152602001600081526020016000815260200160008152602001600081526020016060815260200160608152602001606081525090565b611cad8461268c565b60808601526060850152604084015260208301528152611ccd83836126c8565b60e084015260c083015260a08201529392505050565b604080516080810182526000808252602082018190529181018290526060810191909152611d1084612733565b1515606085015260408401526001600160a01b0316602083015281529392505050565b60606000611d3f61247f565b9050306001600160a01b03821603611d6457611d5c85858561276d565b9150506103a7565b6040517f1e7889770000000000000000000000000000000000000000000000000000000081526001600160a01b03821690631e78897790611dad90889088908890600401613fb0565b600060405180830381865afa158015611dca573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611d5c9190810190613fdc565b509392505050565b600081831180611e0a5750835182115b15611e47578383836040517f23230fa30000000000000000000000000000000000000000000000000000000081526004016103869392919061403d565b60208401611e558482613e4e565b90506000611e638585613e19565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b606060006103a783602060006127a7565b6060816103a78160206000612822565b6000611eb361247f565b9050306001600160a01b03821603611ed657611ed185858585612876565b611f54565b6040517fef6ea8620000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063ef6ea86290611f21908890889088908890600401614062565b600060405180830381600087803b158015611f3b57600080fd5b505af1158015611f4f573d6000803e3d6000fd5b505050505b5050505050565b6000611f6561247f565b9050306001600160a01b03821603611f8357611ed1858585856128b1565b6040517fd9c03a040000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063d9c03a0490611f219088908890889088906004016140a1565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061200457612004613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260008560405160200161204d91815260200190565b60408051601f198184030181529190527ea005032020202020000000000000000000000000000000000000000000000061290a565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106120b8576120b8613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260018560405160200161204d91815260200190565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061213757612137613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260028560405160200161204d91815260200190565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106121b6576121b6613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260038560405160200161204d91815260200190565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061223557612235613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260048560405160200161204d91815260200190565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106122b7576122b7613d9f565b602090810291909101015260006122f07f7462554400000000000000000000000043686172616374657245717569706d658360016129b3565b60209004949350505050565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061233257612332613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260018560405160200161237b91815260200190565b604051602081830303815290604052612a65565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106123c8576123c8613d9f565b602090810291909101015260006122f07f7462554400000000000000000000000043686172616374657245717569706d6583836129b3565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061243657612436613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260008560405160200161237b91815260200190565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b0316806124b9573391505090565b919050565b60606000606060006124cf85612ad8565b90506124dc878783612afb565b935060006124e986612b34565b905080156125bb576124fb8888612b71565b935066ffffffffffffff841667ffffffffffffffff81111561251f5761251f613a1c565b6040519080825280601f01601f191660200182016040528015612549576020820181803683370190505b5092506020830160005b828160ff1610156125b857600061256b8b8b84612b84565b90506000612588888460ff166028026038011c64ffffffffff1690565b90506125978260008387612c04565b6125a18185613e4e565b9350505080806125b0906140e6565b915050612553565b50505b505093509350939050565b6020810151600090819060f81c60058111156125e4576125e4613b76565b602193909301519293915050565b60606000603884901c64ffffffffff16612615612610858484611dfa565b612cd0565b95945050505050565b600080600080600080600080612638896000016020015190565b60408a015160608b0151919950975060f81c600281111561265b5761265b613b76565b60618a015160818b015160a18c015160c18d015160e1909d01519b9d9a9c939b929a91995097509195509350915050565b60008060008060006126a2866000016020015190565b60408701516060880151608089015160a090990151929991989097509550909350915050565b606080806000603886901c64ffffffffff166126e8611404878484611dfa565b945090508064ffffffffff606088901c1601612708611404878484611dfa565b935090508064ffffffffff608888901c1601612728611404878484611dfa565b925050509250925092565b600080600080612747856000016020015190565b6040860151605487015191955060601c9350607486015190925060f81c90509193509193565b606061140961277d858585612b84565b60006127a28561278d8989612b71565b9060ff166028026038011c64ffffffffff1690565b612d50565b606060006127b58560801c90565b90506fffffffffffffffffffffffffffffffff851660008582816127db576127db6140d0565b04905060405193506020840160208202810160405281855260005b82811015612816578451871c8252938701936020909101906001016127f6565b50505050509392505050565b825160609060006128338583614105565b9050604051925060208301601f19603f83860101166040528184526000602088015b84821015612816578051871b83529187019160019190910190602001612855565b60006128828585612b71565b9050600061289f828560ff166028026038011c64ffffffffff1690565b9050610e928686866000858888612d73565b60006128bd8585612b71565b905060006128da828560ff166028026038011c64ffffffffff1690565b9050610e928686866128f38764ffffffffff8716613e19565b604080516000815260208101909152889088612d73565b600061291461247f565b9050306001600160a01b038216036129385761293386868686866131ad565b610e92565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae090612985908990899089908990899060040161411c565b600060405180830381600087803b15801561299f57600080fd5b505af1158015611928573d6000803e3d6000fd5b6000806129be61247f565b9050306001600160a01b038216036129db57611d5c8585856131c2565b6040517fdbbf0e210000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063dbbf0e2190612a2490889088908890600401613fb0565b602060405180830381865afa158015612a41573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d5c9190614163565b6000612a6f61247f565b9050306001600160a01b03821603612a8d57611ed1858585856131d2565b6040517f150f32620000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063150f326290611f21908890889088908890600401614062565b60006008612ae860026020613e19565b612af29190614105565b9190911c919050565b606081600003612b1a57506040805160208101909152600081526103a7565b6000612b26858561320d565b905061261581600085612d50565b60006008600180612b4760026020613e19565b612b519190613e19565b612b5b9190613e19565b612b659190614105565b8260ff911c1692915050565b60006103a7612b808484613263565b5490565b60008383604051602001612b9992919061417c565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b8215612c8b5760208310612c2e57602083048401935060208381612c2a57612c2a6140d0565b0692505b8215612c8b576020839003600081841015612c515750600019600884021c612c5b565b50600019600882021c5b8554600886021b818451168219821617845250818411612c7c575050611a99565b50600194909401939182900391015b5b60208210612cad5783548152600190930192601f1990910190602001612c8c565b8115611a99576000600019600884021c8251865482191691161782525050505050565b60606000612cde8360801c90565b90506fffffffffffffffffffffffffffffffff83168067ffffffffffffffff811115612d0c57612d0c613a1c565b6040519080825280601f01601f191660200182016040528015612d36576020820181803683370190505b50925060208301612d488382846132b9565b505050919050565b60405160208101601f19603f8484010116604052828252611df285858584612c04565b7f7462000000000000000000000000000000000000000000000000000000000000877fffff0000000000000000000000000000000000000000000000000000000000001614612e33577f74620000000000000000000000000000000000000000000000000000000000008788604051602001612df191815260200190565b60408051601f19818403018152908290527f31b466830000000000000000000000000000000000000000000000000000000082526103869392916004016141b8565b6000612e4e828760ff166028026038011c64ffffffffff1690565b9050600083518564ffffffffff1683612e679190613e19565b612e719190613e4e565b9050808214158015612e93575081612e8986886141f9565b64ffffffffff1614155b15612ee3576040517fa65010b400000000000000000000000000000000000000000000000000000000815264ffffffffff8088166004830152808716602483015283166044820152606401610386565b818664ffffffffff161115612f34576040517f7e8578d30000000000000000000000000000000000000000000000000000000081526004810183905264ffffffffff87166024820152604401610386565b6000612f41848984613304565b90506000612f4e8b6133d2565b905060005b8151811015613019576000828281518110612f7057612f70613d9f565b60200260200101519050612f9c6010826affffffffffffffffffffff191661345b90919063ffffffff16565b1561301057606081901c6001600160a01b03166355eb5a288e8e8e8e8e8d8f6040518863ffffffff1660e01b8152600401612fdd9796959493929190614217565b600060405180830381600087803b158015612ff757600080fd5b505af115801561300b573d6000803e3d6000fd5b505050505b50600101612f53565b5064ffffffffff881660005b8a60ff168160ff1610156130585761304c878260ff166028026038011c64ffffffffff1690565b90910190600101613025565b508b7ffe158a7adba34e256807c8a149028d3162918713c3838afc643ce9f96716ebfd8c8c848c888d60405161309396959493929190614275565b60405180910390a2508284146130b45760006130af8c8c613263565b839055505b60006130c18c8c8c612b84565b90506130d5818a64ffffffffff1689613479565b5060005b815181101561319f5760008282815181106130f6576130f6613d9f565b602002602001015190506131226020826affffffffffffffffffffff191661345b90919063ffffffff16565b1561319657606081901c6001600160a01b031663635845338e8e8e8e8e8a8f6040518863ffffffff1660e01b81526004016131639796959493929190614217565b600060405180830381600087803b15801561317d57600080fd5b505af1158015613191573d6000803e3d6000fd5b505050505b506001016130d9565b505050505050505050505050565b611f5485856131bc848761348f565b856134c0565b60006114098261278d8686612b71565b60006131de8585612b71565b905060006131fb828560ff166028026038011c64ffffffffff1690565b9050610e928686868460008888612d73565b6000828260405160200161322292919061417c565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b6000828260405160200161327892919061417c565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b5b602081106132d9578251825260209283019290910190601f19016132ba565b806000036132e657505050565b6000600019600883021c905080835116811985511617835250505050565b600064ffffffffff821115613348576040517f7149a3c100000000000000000000000000000000000000000000000000000000815260048101839052602401610386565b8366ffffffffffffff811660ff851660280260380182901c64ffffffffff1680851061337a5780850382019150613382565b848103820391505b5064ffffffffff6038602860ff8816020181811b197fffffffffffffffffffffffffffffffffffffffffffffffffff000000000000009490941690921792909216918416901b1790509392505050565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061340c5761340c613d9f565b602090810291909101015260006134447f746273746f726500000000000000000053746f7265486f6f6b73000000000000838361276d565b90506114096134568260008451611dfa565b613764565b60008160ff168261346c8560581c90565b1660ff1614905092915050565b61155c8383835161348a8560200190565b613775565b600080805b8360ff16811015611df2576134b660ff601b83900360080287901c1683613e4e565b9150600101613494565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff000000000000000000000000000000000000000000000000000000000000160361354a57837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be84848460405161353d939291906142d1565b60405180910390a2611a99565b6000613556858561320d565b90506000613563866133d2565b905060005b815181101561363857600082828151811061358557613585613d9f565b602002602001015190506135b16004826affffffffffffffffffffff191661345b90919063ffffffff16565b1561362f576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d906135fc908b908b908b908b90600401614304565b600060405180830381600087803b15801561361657600080fd5b505af115801561362a573d6000803e3d6000fd5b505050505b50600101613568565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be86868660405161366d939291906142d1565b60405180910390a2613688828565ffffffffffff1685613479565b60005b815181101561375b5760008282815181106136a8576136a8613d9f565b602002602001015190506136d46008826affffffffffffffffffffff191661345b90919063ffffffff16565b15613752576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba87219061371f908b908b908b908b90600401614304565b600060405180830381600087803b15801561373957600080fd5b505af115801561374d573d6000803e3d6000fd5b505050505b5060010161368b565b50505050505050565b606060006103a783601560006127a7565b82156137ef576020831061379f5760208304840193506020838161379b5761379b6140d0565b0692505b82156137ef5760208390036000600019600885021c1990506008850281811c91508351811c90508119875416828216178755508184116137e0575050611a99565b50600194909401939182900391015b5b602082106138115780518455600190930192601f19909101906020016137f0565b8115611a99576000600019600884021c8554835182191691161785555050505050565b60405180610100016040528060008152602001600081526020016000600281111561386157613861613b76565b815260200160008152602001600081526020016000815260200160008152602001600081525090565b60006020828403121561389c57600080fd5b81357fffffffff00000000000000000000000000000000000000000000000000000000811681146103a757600080fd5b6000602082840312156138de57600080fd5b5035919050565b60008151808452602080850194506020840160005b8381101561391957815160ff16875295820195908201906001016138fa565b509495945050505050565b6020815281516020820152602082015160408201526000604083015160e060608401526139556101008401826138e5565b905060608401516080840152608084015160a084015260a084015160c084015260c084015160e08401528091505092915050565b6020815281516020820152600060208301516101008060408501526139b26101208501836138e5565b91506040850151606085015260608501516080850152608085015160a085015260a085015160c085015260c085015160e085015260e085015181850152508091505092915050565b60008060408385031215613a0d57600080fd5b50508035926020909101359150565b634e487b7160e01b600052604160045260246000fd5b60405160e0810167ffffffffffffffff81118282101715613a5557613a55613a1c565b60405290565b604051610100810167ffffffffffffffff81118282101715613a5557613a55613a1c565b604051601f8201601f1916810167ffffffffffffffff81118282101715613aa857613aa8613a1c565b604052919050565b600067ffffffffffffffff821115613aca57613aca613a1c565b5060051b60200190565b60008060408385031215613ae757600080fd5b8235915060208084013567ffffffffffffffff811115613b0657600080fd5b8401601f81018613613b1757600080fd5b8035613b2a613b2582613ab0565b613a7f565b81815260059190911b82018301908381019088831115613b4957600080fd5b928401925b82841015613b6757833582529284019290840190613b4e565b80955050505050509250929050565b634e487b7160e01b600052602160045260246000fd5b600082601f830112613b9d57600080fd5b81516020613bad613b2583613ab0565b8083825260208201915060208460051b870101935086841115613bcf57600080fd5b602086015b84811015613bfb57805160ff81168114613bee5760008081fd5b8352918301918301613bd4565b509695505050505050565b600060208284031215613c1857600080fd5b815167ffffffffffffffff80821115613c3057600080fd5b9083019060e08286031215613c4457600080fd5b613c4c613a32565b8251815260208301516020820152604083015182811115613c6c57600080fd5b613c7887828601613b8c565b604083015250606083015160608201526080830151608082015260a083015160a082015260c083015160c082015280935050505092915050565b600060208284031215613cc457600080fd5b815167ffffffffffffffff80821115613cdc57600080fd5b908301906101008286031215613cf157600080fd5b613cf9613a5b565b82518152602083015182811115613d0f57600080fd5b613d1b87828601613b8c565b60208301525060408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e082015280935050505092915050565b634e487b7160e01b600052601160045260246000fd5b808201828112600083128015821682158216171561080257610802613d69565b634e487b7160e01b600052603260045260246000fd5b60006000198203613dc857613dc8613d69565b5060010190565b600060208284031215613de157600080fd5b81516001600160a01b03811681146103a757600080fd5b600060208284031215613e0a57600080fd5b8151600681106103a757600080fd5b818103818111156102c6576102c6613d69565b600060208284031215613e3e57600080fd5b815180151581146103a757600080fd5b808201808211156102c6576102c6613d69565b60008151808452602080850194506020840160005b8381101561391957815187529582019590820190600101613e76565b838152606060208201526000613eab6060830185613e61565b9050826040830152949350505050565b60005b83811015613ed6578181015183820152602001613ebe565b50506000910152565b600082601f830112613ef057600080fd5b815167ffffffffffffffff811115613f0a57613f0a613a1c565b613f1d6020601f19601f84011601613a7f565b818152846020838601011115613f3257600080fd5b611409826020830160208701613ebb565b600080600060608486031215613f5857600080fd5b835167ffffffffffffffff80821115613f7057600080fd5b613f7c87838801613edf565b9450602086015193506040860151915080821115613f9957600080fd5b50613fa686828701613edf565b9150509250925092565b838152606060208201526000613fc96060830185613e61565b905060ff83166040830152949350505050565b600060208284031215613fee57600080fd5b815167ffffffffffffffff81111561400557600080fd5b61140984828501613edf565b60008151808452614029816020860160208601613ebb565b601f01601f19169290920160200192915050565b6060815260006140506060830186614011565b60208301949094525060400152919050565b84815260806020820152600061407b6080830186613e61565b60ff8516604084015282810360608401526140968185614011565b979650505050505050565b8481526080602082015260006140ba6080830186613e61565b60ff949094166040830152506060015292915050565b634e487b7160e01b600052601260045260246000fd5b600060ff821660ff81036140fc576140fc613d69565b60010192915050565b80820281158282048414176102c6576102c6613d69565b85815260a06020820152600061413560a0830187613e61565b60ff8616604084015282810360608401526141508186614011565b9150508260808301529695505050505050565b60006020828403121561417557600080fd5b5051919050565b8281526000602080830184516020860160005b828110156141ab5781518452928401929084019060010161418f565b5091979650505050505050565b7fffff000000000000000000000000000000000000000000000000000000000000841681528260208201526060604082015260006126156060830184614011565b64ffffffffff81811683821601908082111561102857611028613d69565b87815260e06020820152600061423060e0830189613e61565b60ff8816604084015264ffffffffff87811660608501528616608084015260a0830185905282810360c08401526142678185614011565b9a9950505050505050505050565b60c08152600061428860c0830189613e61565b60ff8816602084015265ffffffffffff8716604084015264ffffffffff8616606084015284608084015282810360a08401526142c48185614011565b9998505050505050505050565b6060815260006142e46060830186613e61565b65ffffffffffff8516602084015282810360408401526111208185614011565b84815260806020820152600061431d6080830186613e61565b65ffffffffffff851660408401528281036060840152614096818561401156fea264697066735822122067dcd49d38f85859dd9cdb0af5065e37fbf4e30980784a418a5e5ec03c55fafa64736f6c63430008180033","sourceMap":"1643:11852:213:-:0;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561001057600080fd5b50600436106100c95760003560e01c80639056fa2811610081578063cc77a2de1161005b578063cc77a2de14610203578063e1af802c14610218578063edcfef821461022057600080fd5b80639056fa28146101695780639a8bb9a2146101dd578063b2aca84b146101f057600080fd5b806340a5ed2a116100b257806340a5ed2a1461011657806345ec93541461013657806363ff22871461014957600080fd5b806301ffc9a7146100ce578063119df25f146100f6575b600080fd5b6100e16100dc36600461388a565b610233565b60405190151581526020015b60405180910390f35b6100fe6102cc565b6040516001600160a01b0390911681526020016100ed565b6101296101243660046138cc565b6102db565b6040516100ed9190613924565b604051601f1936013581526020016100ed565b61015c6101573660046138cc565b6103ae565b6040516100ed9190613989565b61017c6101773660046138cc565b61047d565b6040516100ed9190600061010082019050825182526020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015260c083015160c083015260e083015160e083015292915050565b6100e16101eb3660046139fa565b61061e565b6100e16101fe3660046139fa565b61080a565b610216610211366004613ad4565b610b4a565b005b6100fe610e9a565b6100e161022e3660046139fa565b610ea4565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee1270000000000000000000000000000000000000000000000000000000014806102c657507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b60006102d661102f565b905090565b61031b6040518060e00160405280600081526020016000815260200160608152602001600081526020016000815260200160008152602001600081525090565b600061032683611061565b905060018151600581111561033d5761033d613b76565b1461038f5760405162461bcd60e51b815260206004820152601360248201527f4954454d533a204e6f742061202041726d6f720000000000000000000000000060448201526064015b60405180910390fd5b80604001518060200190518101906103a79190613c06565b9392505050565b6103f660405180610100016040528060008152602001606081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b600061040183611061565b905060008151600581111561041857610418613b76565b146104655760405162461bcd60e51b815260206004820152601460248201527f4954454d533a204e6f7420612020776561706f6e0000000000000000000000006044820152606401610386565b80604001518060200190518101906103a79190613cb2565b6104c560405180610100016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b60006104d08361112a565b905061051a60405180610100016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b6000610525856111d2565b805184519192506000916105399190613d7f565b1215610546576000610554565b805183516105549190613d7f565b82526020808201519084015160009161056c91613d7f565b121561057957600061058d565b8060200151836020015161058d9190613d7f565b6020830152604081015160608401516000916105a891613d7f565b12156105b55760006105c9565b806040015183606001516105c99190613d7f565b6040830152606081015160808401516000916105e491613d7f565b12156105f1576001610605565b806060015183608001516106059190613d7f565b60808301525060a0918201519181019190915292915050565b60008061062a83611061565b905060006106378561112a565b825160019450909150600581111561065157610651613b76565b60ff1660000361072057600082604001518060200190518101906106759190613cb2565b60c081015160e0840151602083015151929350101590600090156107035760005b8360200151518110156106fd57836020015181815181106106b9576106b9613d9f565b602002602001015160ff16856040015160028111156106da576106da613b76565b60ff16036106eb57600191506106fd565b806106f581613db5565b915050610696565b50610707565b5060015b811580610712575080155b1561071c57600095505b5050505b8151600581111561073357610733613b76565b60ff1660010361080257600082604001518060200190518101906107579190613c06565b60a081015160e0840151604083015151929350101590600090156107e55760005b8360400151518110156107df578360400151818151811061079b5761079b613d9f565b602002602001015160ff16856040015160028111156107bc576107bc613b76565b60ff16036107cd57600191506107df565b806107d781613db5565b915050610778565b506107e9565b5060015b8115806107f4575080155b156107fe57600095505b5050505b505092915050565b6000826000610818826112ba565b9050806060015161086b5760405162461bcd60e51b815260206004820152601960248201527f436861726163746572206e6f7420696e207468652047616d65000000000000006044820152606401610386565b6000610875610e9a565b6001600160a01b031663777c2caf876040518263ffffffff1660e01b81526004016108a291815260200190565b602060405180830381865afa1580156108bf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108e39190613dcf565b90506108ed6102cc565b6001600160a01b0316816001600160a01b03161461094d5760405162461bcd60e51b815260206004820152601a60248201527f4954454d533a204e6f7420436861726163746572204f776e65720000000000006044820152606401610386565b6000610957610e9a565b6001600160a01b031663cdaccbae876040518263ffffffff1660e01b815260040161098491815260200190565b602060405180830381865afa1580156109a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109c59190613df8565b60058111156109d6576109d6613b76565b905060ff8116610a415760006109f4876109ef8a61137f565b611411565b9050868160018351610a069190613e19565b81518110610a1657610a16613d9f565b602002602001015103610a3b57610a2d88826114e6565b610a3688611561565b600195505b50610b37565b60001960ff821601610a9e576000610a5c876109ef8a6115d8565b9050868160018351610a6e9190613e19565b81518110610a7e57610a7e613d9f565b602002602001015103610a3b57610a95888261164a565b610a36886116bb565b7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe60ff82160115610b375760405162461bcd60e51b815260206004820152602160248201527f45515549504d454e543a20554e5245434f474e495a4544204954454d2054595060448201527f45000000000000000000000000000000000000000000000000000000000000006064820152608401610386565b610b408761172e565b5050505092915050565b816000610b56826112ba565b90508060600151610ba95760405162461bcd60e51b815260206004820152601960248201527f436861726163746572206e6f7420696e207468652047616d65000000000000006044820152606401610386565b6000610bb3610e9a565b6001600160a01b031663777c2caf866040518263ffffffff1660e01b8152600401610be091815260200190565b602060405180830381865afa158015610bfd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c219190613dcf565b9050610c2b6102cc565b6001600160a01b0316816001600160a01b031614610c8b5760405162461bcd60e51b815260206004820152601a60248201527f4954454d533a204e6f7420436861726163746572204f776e65720000000000006044820152606401610386565b6000805b8551811015610e8857858181518110610caa57610caa613d9f565b60200260200101519150610cbc610e9a565b6001600160a01b031663b363411883610cd36102cc565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815260048101929092526001600160a01b03166024820152604401602060405180830381865afa158015610d35573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d599190613e2c565b610da55760405162461bcd60e51b815260206004820152601560248201527f4954454d533a204e6f74204974656d204f776e657200000000000000000000006044820152606401610386565b6000610db083611061565b9050600381600001516005811115610dca57610dca613b76565b60ff1610610e1a5760405162461bcd60e51b815260206004820152601d60248201527f4954454d533a204e6f7420616e2065717569707061626c65204974656d0000006044820152606401610386565b610e24888461061e565b610e705760405162461bcd60e51b815260206004820152601b60248201527f4954454d533a20526571756972656d656e7473206e6f74206d657400000000006044820152606401610386565b610e7f88848360000151611934565b50600101610c8f565b50610e928661172e565b505050505050565b60006102d6611a9f565b600080610eb083611061565b80519091506005811115610ec657610ec6613b76565b60ff16600003610f2b576000610edb8561137f565b905060005b8151811015610f245784828281518110610efc57610efc613d9f565b602002602001015103610f125760019350610f24565b80610f1c81613db5565b915050610ee0565b5050611028565b80516005811115610f3e57610f3e613b76565b60ff16600103610f9c576000610f53856115d8565b905060005b8151811015610f245784828281518110610f7457610f74613d9f565b602002602001015103610f8a5760019350610f24565b80610f9481613db5565b915050610f58565b80516005811115610faf57610faf613b76565b60ff16600203156110285760405162461bcd60e51b815260206004820152602160248201527f45515549504d454e543a20554e5245434f474e495a4544204954454d2054595060448201527f45000000000000000000000000000000000000000000000000000000000000006064820152608401610386565b5092915050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c8061105e5750335b90565b60408051606080820183526000808352602083015291810191909152604080516001808252818301909252600091602080830190803683370190505090508260001b816000815181106110b6576110b6613d9f565b60209081029190910101526000808061110f7f746255440000000000000000000000004974656d730000000000000000000000857e21020101200000000000000000000000000000000000000000000000000000611aa9565b925092509250611120838383611b79565b9695505050505050565b611132613834565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061116857611168613d9f565b6020908102919091010152600080806111c17f7462554400000000000000000000000053746174730000000000000000000000857ee1080020200120202020200000000000000000000000000000000000000000611aa9565b925092509250611120838383611be4565b61121a60405180610100016040528060008152602001600081526020016000815260200160008152602001600081526020016060815260200160608152602001606081525090565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061125057611250613d9f565b6020908102919091010152600080806112a97f7462554400000000000000000000000043686172616374657245717569706d65857ea0050320202020200000000000000000000000000000000000000000000000611aa9565b925092509250611120838383611c5c565b6040805160808101825260008082526020820181905281830181905260608201819052825160018082528185019094529192909190816020016020820280368337019050509050828160008151811061131557611315613d9f565b60209081029190910101526000808061136e7f7462554400000000000000000000000043686172616374657273000000000000857e55040020142001000000000000000000000000000000000000000000000000611aa9565b925092509250611120838383611ce3565b604080516001808252818301909252606091600091906020808301908036833701905050905082816000815181106113b9576113b9613d9f565b602090810291909101015260006113f27f7462554400000000000000000000000043686172616374657245717569706d65836001611d33565b90506114096114048260008451611dfa565b611e88565b949350505050565b60606001825111156114e05760005b82518110156114da578383828151811061143c5761143c613d9f565b6020026020010151036114c8576000836001855161145a9190613e19565b8151811061146a5761146a613d9f565b602002602001015190508084838151811061148757611487613d9f565b6020026020010181815250508484600186516114a39190613e19565b815181106114b3576114b3613d9f565b602002602001018181525050839250506114da565b806114d281613db5565b915050611420565b506102c6565b50919050565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061151c5761151c613d9f565b602090810291909101015261155c7f7462554400000000000000000000000043686172616374657245717569706d6582600161155786611e99565b611ea9565b505050565b60408051600180825281830190925260009160208083019080368337019050509050818160008151811061159757611597613d9f565b6020026020010181815250506115d47f7462554400000000000000000000000043686172616374657245717569706d6560001b8260016020611f5b565b5050565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061161257611612613d9f565b602090810291909101015260006113f27f7462554400000000000000000000000043686172616374657245717569706d658383611d33565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061168057611680613d9f565b602090810291909101015261155c7f7462554400000000000000000000000043686172616374657245717569706d6582600061155786611e99565b6040805160018082528183019092526000916020808301908036833701905050905081816000815181106116f1576116f1613d9f565b6020026020010181815250506115d47f7462554400000000000000000000000043686172616374657245717569706d6560001b8260006020611f5b565b6000611739826115d8565b905060006117468361137f565b905060008060008060006117906040518060e00160405280600081526020016000815260200160608152602001600081526020016000815260200160008152602001600081525090565b6117d860405180610100016040528060008152602001606081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b8851156118705760005b895181101561186e5761180d8a828151811061180057611800613d9f565b60200260200101516102db565b925082602001518861181f9190613e4e565b97508260c00151876118319190613d7f565b83519097506118409087613d7f565b95508260800151856118529190613d7f565b94508260600151846118649190613d7f565b93506001016117e2565b505b8751156118f65760005b88518110156118f4576118a589828151811061189857611898613d9f565b60200260200101516103ae565b91508160e00151876118b79190613d7f565b82519097506118c69087613d7f565b95508160600151856118d89190613d7f565b94508160400151846118ea9190613d7f565b935060010161187a565b505b6119008a87611fce565b61190a8a86612082565b6119148a85612101565b61191e8a84612180565b6119288a886121ff565b50505050505050505050565b61193e8383610ea4565b1561198b5760405162461bcd60e51b815260206004820152601b60248201527f45515549504d454e543a20414c524541445920455155495050454400000000006044820152606401610386565b80600581111561199d5761199d613b76565b60ff16600003611a095760036119b28461227e565b106119ff5760405162461bcd60e51b815260206004820181905260248201527f4954454d533a20546f6f206d616e7920776561706f6e732065717569707065646044820152606401610386565b611a0983836122fc565b806005811115611a1b57611a1b613b76565b60ff16600103611a87576003611a308461238f565b10611a7d5760405162461bcd60e51b815260206004820181905260248201527f4954454d533a20546f6f206d616e7920776561706f6e732065717569707065646044820152606401610386565b611a878383612400565b806005811115611a9957611a99613b76565b50505050565b60006102d661247f565b6060600060606000611ab961247f565b9050306001600160a01b03821603611ae257611ad68787876124be565b93509350935050611b70565b6040517f419b58fd0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063419b58fd90611b2b908a908a908a90600401613e92565b600060405180830381865afa158015611b48573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611ad69190810190613f43565b93509350939050565b60408051606080820183526000808352602083015291810191909152611b9e846125c6565b6020830181905282826005811115611bb857611bb8613b76565b6005811115611bc957611bc9613b76565b8152505050611bd883836125f2565b60408201529392505050565b611bec613834565b611bf58461261e565b60e0890181905260c0890182905260a089018390526080890184905260608901859052886020810160408201886002811115611c3357611c33613b76565b6002811115611c4457611c44613b76565b90529790975250505093909252509195945050505050565b611ca460405180610100016040528060008152602001600081526020016000815260200160008152602001600081526020016060815260200160608152602001606081525090565b611cad8461268c565b60808601526060850152604084015260208301528152611ccd83836126c8565b60e084015260c083015260a08201529392505050565b604080516080810182526000808252602082018190529181018290526060810191909152611d1084612733565b1515606085015260408401526001600160a01b0316602083015281529392505050565b60606000611d3f61247f565b9050306001600160a01b03821603611d6457611d5c85858561276d565b9150506103a7565b6040517f1e7889770000000000000000000000000000000000000000000000000000000081526001600160a01b03821690631e78897790611dad90889088908890600401613fb0565b600060405180830381865afa158015611dca573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611d5c9190810190613fdc565b509392505050565b600081831180611e0a5750835182115b15611e47578383836040517f23230fa30000000000000000000000000000000000000000000000000000000081526004016103869392919061403d565b60208401611e558482613e4e565b90506000611e638585613e19565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b606060006103a783602060006127a7565b6060816103a78160206000612822565b6000611eb361247f565b9050306001600160a01b03821603611ed657611ed185858585612876565b611f54565b6040517fef6ea8620000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063ef6ea86290611f21908890889088908890600401614062565b600060405180830381600087803b158015611f3b57600080fd5b505af1158015611f4f573d6000803e3d6000fd5b505050505b5050505050565b6000611f6561247f565b9050306001600160a01b03821603611f8357611ed1858585856128b1565b6040517fd9c03a040000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063d9c03a0490611f219088908890889088906004016140a1565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061200457612004613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260008560405160200161204d91815260200190565b60408051601f198184030181529190527ea005032020202020000000000000000000000000000000000000000000000061290a565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106120b8576120b8613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260018560405160200161204d91815260200190565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061213757612137613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260028560405160200161204d91815260200190565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106121b6576121b6613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260038560405160200161204d91815260200190565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061223557612235613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260048560405160200161204d91815260200190565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106122b7576122b7613d9f565b602090810291909101015260006122f07f7462554400000000000000000000000043686172616374657245717569706d658360016129b3565b60209004949350505050565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061233257612332613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260018560405160200161237b91815260200190565b604051602081830303815290604052612a65565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106123c8576123c8613d9f565b602090810291909101015260006122f07f7462554400000000000000000000000043686172616374657245717569706d6583836129b3565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061243657612436613d9f565b60200260200101818152505061155c7f7462554400000000000000000000000043686172616374657245717569706d6560001b8260008560405160200161237b91815260200190565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b0316806124b9573391505090565b919050565b60606000606060006124cf85612ad8565b90506124dc878783612afb565b935060006124e986612b34565b905080156125bb576124fb8888612b71565b935066ffffffffffffff841667ffffffffffffffff81111561251f5761251f613a1c565b6040519080825280601f01601f191660200182016040528015612549576020820181803683370190505b5092506020830160005b828160ff1610156125b857600061256b8b8b84612b84565b90506000612588888460ff166028026038011c64ffffffffff1690565b90506125978260008387612c04565b6125a18185613e4e565b9350505080806125b0906140e6565b915050612553565b50505b505093509350939050565b6020810151600090819060f81c60058111156125e4576125e4613b76565b602193909301519293915050565b60606000603884901c64ffffffffff16612615612610858484611dfa565b612cd0565b95945050505050565b600080600080600080600080612638896000016020015190565b60408a015160608b0151919950975060f81c600281111561265b5761265b613b76565b60618a015160818b015160a18c015160c18d015160e1909d01519b9d9a9c939b929a91995097509195509350915050565b60008060008060006126a2866000016020015190565b60408701516060880151608089015160a090990151929991989097509550909350915050565b606080806000603886901c64ffffffffff166126e8611404878484611dfa565b945090508064ffffffffff606088901c1601612708611404878484611dfa565b935090508064ffffffffff608888901c1601612728611404878484611dfa565b925050509250925092565b600080600080612747856000016020015190565b6040860151605487015191955060601c9350607486015190925060f81c90509193509193565b606061140961277d858585612b84565b60006127a28561278d8989612b71565b9060ff166028026038011c64ffffffffff1690565b612d50565b606060006127b58560801c90565b90506fffffffffffffffffffffffffffffffff851660008582816127db576127db6140d0565b04905060405193506020840160208202810160405281855260005b82811015612816578451871c8252938701936020909101906001016127f6565b50505050509392505050565b825160609060006128338583614105565b9050604051925060208301601f19603f83860101166040528184526000602088015b84821015612816578051871b83529187019160019190910190602001612855565b60006128828585612b71565b9050600061289f828560ff166028026038011c64ffffffffff1690565b9050610e928686866000858888612d73565b60006128bd8585612b71565b905060006128da828560ff166028026038011c64ffffffffff1690565b9050610e928686866128f38764ffffffffff8716613e19565b604080516000815260208101909152889088612d73565b600061291461247f565b9050306001600160a01b038216036129385761293386868686866131ad565b610e92565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae090612985908990899089908990899060040161411c565b600060405180830381600087803b15801561299f57600080fd5b505af1158015611928573d6000803e3d6000fd5b6000806129be61247f565b9050306001600160a01b038216036129db57611d5c8585856131c2565b6040517fdbbf0e210000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063dbbf0e2190612a2490889088908890600401613fb0565b602060405180830381865afa158015612a41573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d5c9190614163565b6000612a6f61247f565b9050306001600160a01b03821603612a8d57611ed1858585856131d2565b6040517f150f32620000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063150f326290611f21908890889088908890600401614062565b60006008612ae860026020613e19565b612af29190614105565b9190911c919050565b606081600003612b1a57506040805160208101909152600081526103a7565b6000612b26858561320d565b905061261581600085612d50565b60006008600180612b4760026020613e19565b612b519190613e19565b612b5b9190613e19565b612b659190614105565b8260ff911c1692915050565b60006103a7612b808484613263565b5490565b60008383604051602001612b9992919061417c565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b8215612c8b5760208310612c2e57602083048401935060208381612c2a57612c2a6140d0565b0692505b8215612c8b576020839003600081841015612c515750600019600884021c612c5b565b50600019600882021c5b8554600886021b818451168219821617845250818411612c7c575050611a99565b50600194909401939182900391015b5b60208210612cad5783548152600190930192601f1990910190602001612c8c565b8115611a99576000600019600884021c8251865482191691161782525050505050565b60606000612cde8360801c90565b90506fffffffffffffffffffffffffffffffff83168067ffffffffffffffff811115612d0c57612d0c613a1c565b6040519080825280601f01601f191660200182016040528015612d36576020820181803683370190505b50925060208301612d488382846132b9565b505050919050565b60405160208101601f19603f8484010116604052828252611df285858584612c04565b7f7462000000000000000000000000000000000000000000000000000000000000877fffff0000000000000000000000000000000000000000000000000000000000001614612e33577f74620000000000000000000000000000000000000000000000000000000000008788604051602001612df191815260200190565b60408051601f19818403018152908290527f31b466830000000000000000000000000000000000000000000000000000000082526103869392916004016141b8565b6000612e4e828760ff166028026038011c64ffffffffff1690565b9050600083518564ffffffffff1683612e679190613e19565b612e719190613e4e565b9050808214158015612e93575081612e8986886141f9565b64ffffffffff1614155b15612ee3576040517fa65010b400000000000000000000000000000000000000000000000000000000815264ffffffffff8088166004830152808716602483015283166044820152606401610386565b818664ffffffffff161115612f34576040517f7e8578d30000000000000000000000000000000000000000000000000000000081526004810183905264ffffffffff87166024820152604401610386565b6000612f41848984613304565b90506000612f4e8b6133d2565b905060005b8151811015613019576000828281518110612f7057612f70613d9f565b60200260200101519050612f9c6010826affffffffffffffffffffff191661345b90919063ffffffff16565b1561301057606081901c6001600160a01b03166355eb5a288e8e8e8e8e8d8f6040518863ffffffff1660e01b8152600401612fdd9796959493929190614217565b600060405180830381600087803b158015612ff757600080fd5b505af115801561300b573d6000803e3d6000fd5b505050505b50600101612f53565b5064ffffffffff881660005b8a60ff168160ff1610156130585761304c878260ff166028026038011c64ffffffffff1690565b90910190600101613025565b508b7ffe158a7adba34e256807c8a149028d3162918713c3838afc643ce9f96716ebfd8c8c848c888d60405161309396959493929190614275565b60405180910390a2508284146130b45760006130af8c8c613263565b839055505b60006130c18c8c8c612b84565b90506130d5818a64ffffffffff1689613479565b5060005b815181101561319f5760008282815181106130f6576130f6613d9f565b602002602001015190506131226020826affffffffffffffffffffff191661345b90919063ffffffff16565b1561319657606081901c6001600160a01b031663635845338e8e8e8e8e8a8f6040518863ffffffff1660e01b81526004016131639796959493929190614217565b600060405180830381600087803b15801561317d57600080fd5b505af1158015613191573d6000803e3d6000fd5b505050505b506001016130d9565b505050505050505050505050565b611f5485856131bc848761348f565b856134c0565b60006114098261278d8686612b71565b60006131de8585612b71565b905060006131fb828560ff166028026038011c64ffffffffff1690565b9050610e928686868460008888612d73565b6000828260405160200161322292919061417c565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b6000828260405160200161327892919061417c565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b5b602081106132d9578251825260209283019290910190601f19016132ba565b806000036132e657505050565b6000600019600883021c905080835116811985511617835250505050565b600064ffffffffff821115613348576040517f7149a3c100000000000000000000000000000000000000000000000000000000815260048101839052602401610386565b8366ffffffffffffff811660ff851660280260380182901c64ffffffffff1680851061337a5780850382019150613382565b848103820391505b5064ffffffffff6038602860ff8816020181811b197fffffffffffffffffffffffffffffffffffffffffffffffffff000000000000009490941690921792909216918416901b1790509392505050565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061340c5761340c613d9f565b602090810291909101015260006134447f746273746f726500000000000000000053746f7265486f6f6b73000000000000838361276d565b90506114096134568260008451611dfa565b613764565b60008160ff168261346c8560581c90565b1660ff1614905092915050565b61155c8383835161348a8560200190565b613775565b600080805b8360ff16811015611df2576134b660ff601b83900360080287901c1683613e4e565b9150600101613494565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff000000000000000000000000000000000000000000000000000000000000160361354a57837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be84848460405161353d939291906142d1565b60405180910390a2611a99565b6000613556858561320d565b90506000613563866133d2565b905060005b815181101561363857600082828151811061358557613585613d9f565b602002602001015190506135b16004826affffffffffffffffffffff191661345b90919063ffffffff16565b1561362f576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d906135fc908b908b908b908b90600401614304565b600060405180830381600087803b15801561361657600080fd5b505af115801561362a573d6000803e3d6000fd5b505050505b50600101613568565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be86868660405161366d939291906142d1565b60405180910390a2613688828565ffffffffffff1685613479565b60005b815181101561375b5760008282815181106136a8576136a8613d9f565b602002602001015190506136d46008826affffffffffffffffffffff191661345b90919063ffffffff16565b15613752576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba87219061371f908b908b908b908b90600401614304565b600060405180830381600087803b15801561373957600080fd5b505af115801561374d573d6000803e3d6000fd5b505050505b5060010161368b565b50505050505050565b606060006103a783601560006127a7565b82156137ef576020831061379f5760208304840193506020838161379b5761379b6140d0565b0692505b82156137ef5760208390036000600019600885021c1990506008850281811c91508351811c90508119875416828216178755508184116137e0575050611a99565b50600194909401939182900391015b5b602082106138115780518455600190930192601f19909101906020016137f0565b8115611a99576000600019600884021c8554835182191691161785555050505050565b60405180610100016040528060008152602001600081526020016000600281111561386157613861613b76565b815260200160008152602001600081526020016000815260200160008152602001600081525090565b60006020828403121561389c57600080fd5b81357fffffffff00000000000000000000000000000000000000000000000000000000811681146103a757600080fd5b6000602082840312156138de57600080fd5b5035919050565b60008151808452602080850194506020840160005b8381101561391957815160ff16875295820195908201906001016138fa565b509495945050505050565b6020815281516020820152602082015160408201526000604083015160e060608401526139556101008401826138e5565b905060608401516080840152608084015160a084015260a084015160c084015260c084015160e08401528091505092915050565b6020815281516020820152600060208301516101008060408501526139b26101208501836138e5565b91506040850151606085015260608501516080850152608085015160a085015260a085015160c085015260c085015160e085015260e085015181850152508091505092915050565b60008060408385031215613a0d57600080fd5b50508035926020909101359150565b634e487b7160e01b600052604160045260246000fd5b60405160e0810167ffffffffffffffff81118282101715613a5557613a55613a1c565b60405290565b604051610100810167ffffffffffffffff81118282101715613a5557613a55613a1c565b604051601f8201601f1916810167ffffffffffffffff81118282101715613aa857613aa8613a1c565b604052919050565b600067ffffffffffffffff821115613aca57613aca613a1c565b5060051b60200190565b60008060408385031215613ae757600080fd5b8235915060208084013567ffffffffffffffff811115613b0657600080fd5b8401601f81018613613b1757600080fd5b8035613b2a613b2582613ab0565b613a7f565b81815260059190911b82018301908381019088831115613b4957600080fd5b928401925b82841015613b6757833582529284019290840190613b4e565b80955050505050509250929050565b634e487b7160e01b600052602160045260246000fd5b600082601f830112613b9d57600080fd5b81516020613bad613b2583613ab0565b8083825260208201915060208460051b870101935086841115613bcf57600080fd5b602086015b84811015613bfb57805160ff81168114613bee5760008081fd5b8352918301918301613bd4565b509695505050505050565b600060208284031215613c1857600080fd5b815167ffffffffffffffff80821115613c3057600080fd5b9083019060e08286031215613c4457600080fd5b613c4c613a32565b8251815260208301516020820152604083015182811115613c6c57600080fd5b613c7887828601613b8c565b604083015250606083015160608201526080830151608082015260a083015160a082015260c083015160c082015280935050505092915050565b600060208284031215613cc457600080fd5b815167ffffffffffffffff80821115613cdc57600080fd5b908301906101008286031215613cf157600080fd5b613cf9613a5b565b82518152602083015182811115613d0f57600080fd5b613d1b87828601613b8c565b60208301525060408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e082015280935050505092915050565b634e487b7160e01b600052601160045260246000fd5b808201828112600083128015821682158216171561080257610802613d69565b634e487b7160e01b600052603260045260246000fd5b60006000198203613dc857613dc8613d69565b5060010190565b600060208284031215613de157600080fd5b81516001600160a01b03811681146103a757600080fd5b600060208284031215613e0a57600080fd5b8151600681106103a757600080fd5b818103818111156102c6576102c6613d69565b600060208284031215613e3e57600080fd5b815180151581146103a757600080fd5b808201808211156102c6576102c6613d69565b60008151808452602080850194506020840160005b8381101561391957815187529582019590820190600101613e76565b838152606060208201526000613eab6060830185613e61565b9050826040830152949350505050565b60005b83811015613ed6578181015183820152602001613ebe565b50506000910152565b600082601f830112613ef057600080fd5b815167ffffffffffffffff811115613f0a57613f0a613a1c565b613f1d6020601f19601f84011601613a7f565b818152846020838601011115613f3257600080fd5b611409826020830160208701613ebb565b600080600060608486031215613f5857600080fd5b835167ffffffffffffffff80821115613f7057600080fd5b613f7c87838801613edf565b9450602086015193506040860151915080821115613f9957600080fd5b50613fa686828701613edf565b9150509250925092565b838152606060208201526000613fc96060830185613e61565b905060ff83166040830152949350505050565b600060208284031215613fee57600080fd5b815167ffffffffffffffff81111561400557600080fd5b61140984828501613edf565b60008151808452614029816020860160208601613ebb565b601f01601f19169290920160200192915050565b6060815260006140506060830186614011565b60208301949094525060400152919050565b84815260806020820152600061407b6080830186613e61565b60ff8516604084015282810360608401526140968185614011565b979650505050505050565b8481526080602082015260006140ba6080830186613e61565b60ff949094166040830152506060015292915050565b634e487b7160e01b600052601260045260246000fd5b600060ff821660ff81036140fc576140fc613d69565b60010192915050565b80820281158282048414176102c6576102c6613d69565b85815260a06020820152600061413560a0830187613e61565b60ff8616604084015282810360608401526141508186614011565b9150508260808301529695505050505050565b60006020828403121561417557600080fd5b5051919050565b8281526000602080830184516020860160005b828110156141ab5781518452928401929084019060010161418f565b5091979650505050505050565b7fffff000000000000000000000000000000000000000000000000000000000000841681528260208201526060604082015260006126156060830184614011565b64ffffffffff81811683821601908082111561102857611028613d69565b87815260e06020820152600061423060e0830189613e61565b60ff8816604084015264ffffffffff87811660608501528616608084015260a0830185905282810360c08401526142678185614011565b9a9950505050505050505050565b60c08152600061428860c0830189613e61565b60ff8816602084015265ffffffffffff8716604084015264ffffffffff8616606084015284608084015282810360a08401526142c48185614011565b9998505050505050505050565b6060815260006142e46060830186613e61565b65ffffffffffff8516602084015282810360408401526111208185614011565b84815260806020820152600061431d6080830186613e61565b65ffffffffffff851660408401528281036060840152614096818561401156fea264697066735822122067dcd49d38f85859dd9cdb0af5065e37fbf4e30980784a418a5e5ec03c55fafa64736f6c63430008180033","sourceMap":"1643:11852:213:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2331:198:123;;;;;;:::i;:::-;;:::i;:::-;;;516:14:229;;509:22;491:41;;479:2;464:18;2331:198:123;;;;;;;;1262:113;;;:::i;:::-;;;-1:-1:-1;;;;;707:55:229;;;689:74;;677:2;662:18;1262:113:123;543:226:229;13208:285:213;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;1616:110:123:-;;;-1:-1:-1;;3800:14:123;3796:25;3783:39;2313:25:229;;2301:2;2286:18;1616:110:123;2167:177:229;12910:292:213;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;10106:1372::-;;;;;;:::i;:::-;;:::i;:::-;;;;;;3543:4:229;3585:3;3574:9;3570:19;3562:27;;3622:6;3616:13;3605:9;3598:32;3686:4;3678:6;3674:17;3668:24;3661:4;3650:9;3646:20;3639:54;3749:4;3741:6;3737:17;3731:24;3724:4;3713:9;3709:20;3702:54;3812:4;3804:6;3800:17;3794:24;3787:4;3776:9;3772:20;3765:54;3875:4;3867:6;3863:17;3857:24;3850:4;3839:9;3835:20;3828:54;3938:4;3930:6;3926:17;3920:24;3913:4;3902:9;3898:20;3891:54;4001:4;3993:6;3989:17;3983:24;3976:4;3965:9;3961:20;3954:54;4064:4;4056:6;4052:17;4046:24;4039:4;4028:9;4024:20;4017:54;3373:704;;;;;3845:1806:213;;;;;;:::i;:::-;;:::i;8329:1771::-;;;;;;:::i;:::-;;:::i;1878:819::-;;;;;;:::i;:::-;;:::i;:::-;;1942:98:123;;;:::i;2703:1136:213:-;;;;;;:::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;13208:285:213:-;13268:29;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13268:29:213;13309:22;13334:17;13344:6;13334:9;:17::i;:::-;13309:42;-1:-1:-1;13387:14:213;13369;;:32;;;;;;;;:::i;:::-;;13361:64;;;;-1:-1:-1;;;13361:64:213;;6924:2:229;13361:64:213;;;6906:21:229;6963:2;6943:18;;;6936:30;7002:21;6982:18;;;6975:49;7041:18;;13361:64:213;;;;;;;;;13460:5;:11;;;13449:37;;;;;;;;;;;;:::i;:::-;13435:51;13208:285;-1:-1:-1;;;13208:285:213:o;12910:292::-;12971:31;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12971:31:213;13014:22;13039:17;13049:6;13039:9;:17::i;:::-;13014:42;-1:-1:-1;13092:15:213;13074:14;;:33;;;;;;;;:::i;:::-;;13066:66;;;;-1:-1:-1;;;13066:66:213;;9057:2:229;13066:66:213;;;9039:21:229;9096:2;9076:18;;;9069:30;9135:22;9115:18;;;9108:50;9175:18;;13066:66:213;8855:344:229;13066:66:213;13168:5;:11;;;13157:38;;;;;;;;;;;;:::i;10106:1372::-;10176:40;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10176:40:213;10228:28;10259:19;10269:8;10259:9;:19::i;:::-;10228:50;;10288:38;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10288:38:213;10337:44;10384:32;10407:8;10384:22;:32::i;:::-;10553:23;;10529:20;;10337:79;;-1:-1:-1;10580:1:213;;10522:54;;10553:23;10522:54;:::i;:::-;:59;;:160;;10680:1;10522:160;;;10631:23;;10607:20;;10600:54;;10631:23;10600:54;:::i;:::-;10470:222;;10783:23;;;;;10760:19;;;;10470:28;;10753:53;;;:::i;:::-;:58;;:158;;10909:1;10753:158;;;10860:14;:23;;;10837:11;:19;;;10830:53;;;;:::i;:::-;10702:27;;;:219;11022:23;;;;10994:24;;;;11049:1;;10987:58;;;:::i;:::-;:63;;:168;;11153:1;10987:168;;;11104:14;:23;;;11076:11;:24;;;11069:58;;;;:::i;:::-;10931:32;;;:234;11253:22;;;;11231:18;;;;11279:1;;11224:51;;;:::i;:::-;:56;;:154;;11376:1;11224:154;;;11328:14;:22;;;11306:11;:18;;;11299:51;;;;:::i;:::-;11175:25;;;:213;-1:-1:-1;11422:21:213;;;;;11398;;;:45;;;;11175:11;10106:1372;-1:-1:-1;;10106:1372:213:o;3845:1806::-;3930:11;3953:25;3981:17;3991:6;3981:9;:17::i;:::-;3953:45;;4008:26;4037:22;4047:11;4037:9;:22::i;:::-;4104:17;;4079:4;;-1:-1:-1;4008:51:213;;-1:-1:-1;4098:24:213;;;;;;;;:::i;:::-;:29;;4126:1;4098:29;4094:763;;4143:30;4187:8;:14;;;4176:41;;;;;;;;;;;;:::i;:::-;4265:20;;;;4246:15;;;;4329:29;;;;:36;4143:74;;-1:-1:-1;4246:39:213;;;4231:12;;4329:40;4325:468;;4394:9;4389:337;4409:11;:29;;;:36;4405:1;:40;4389:337;;;4506:11;:29;;;4536:1;4506:32;;;;;;;;:::i;:::-;;;;;;;4474:65;;4480:9;:15;;;4474:22;;;;;;;;:::i;:::-;:65;;;4470:165;;4577:4;4567:14;;4607:5;;4470:165;4682:3;;;;:::i;:::-;;;;4389:337;;;;4325:468;;;-1:-1:-1;4774:4:213;4325:468;4811:7;4810:8;:20;;;;4823:7;4822:8;4810:20;4806:40;;;4841:5;4832:14;;4806:40;4129:728;;;4094:763;4876:17;;4870:24;;;;;;;;:::i;:::-;:29;;4898:1;4870:29;4866:756;;4915:28;4957:8;:14;;;4946:40;;;;;;;;;;;;:::i;:::-;5034:19;;;;5015:15;;;;5097:28;;;;:35;4915:71;;-1:-1:-1;5015:38:213;;;5000:12;;5097:39;5093:465;;5161:9;5156:335;5176:10;:28;;;:35;5172:1;:39;5156:335;;;5272:10;:28;;;5301:1;5272:31;;;;;;;;:::i;:::-;;;;;;;5240:64;;5246:9;:15;;;5240:22;;;;;;;;:::i;:::-;:64;;;5236:164;;5342:4;5332:14;;5372:5;;5236:164;5447:3;;;;:::i;:::-;;;;5156:335;;;;5093:465;;;-1:-1:-1;5539:4:213;5093:465;5576:7;5575:8;:20;;;;5588:7;5587:8;5575:20;5571:40;;;5606:5;5597:14;;5571:40;4901:721;;;4866:756;5631:13;;3845:1806;;;;:::o;8329:1771::-;8423:12;8401:11;1731:30;1764:27;1779:11;1764:14;:27::i;:::-;1731:60;;1809:8;:15;;;1801:53;;;;-1:-1:-1;;;1801:53:213;;11209:2:229;1801:53:213;;;11191:21:229;11248:2;11228:18;;;11221:30;11287:27;11267:18;;;11260:55;11332:18;;1801:53:213;11007:349:229;1801:53:213;8447:22:::1;8479:8;:6;:8::i;:::-;-1:-1:-1::0;;;;;8472:29:213::1;;8502:11;8472:42;;;;;;;;;;;;;2313:25:229::0;;2301:2;2286:18;;2167:177;8472:42:213::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8447:67;;8550:12;:10;:12::i;:::-;-1:-1:-1::0;;;;;8532:30:213::1;:14;-1:-1:-1::0;;;;;8532:30:213::1;;8524:69;;;::::0;-1:-1:-1;;;8524:69:213;;12063:2:229;8524:69:213::1;::::0;::::1;12045:21:229::0;12102:2;12082:18;;;12075:30;12141:28;12121:18;;;12114:56;12187:18;;8524:69:213::1;11861:350:229::0;8524:69:213::1;8603:14;8633:8;:6;:8::i;:::-;-1:-1:-1::0;;;;;8626:32:213::1;;8659:6;8626:40;;;;;;;;;;;;;2313:25:229::0;;2301:2;2286:18;;2167:177;8626:40:213::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8620:47;;;;;;;;:::i;:::-;8603:64:::0;-1:-1:-1;8681:20:213::1;::::0;::::1;8677:1374;;8717:28;8748:77;8766:6;8774:50;8812:11;8774:37;:50::i;:::-;8748:17;:77::i;:::-;8717:108;;8882:6;8843:11;8876:1;8855:11;:18;:22;;;;:::i;:::-;8843:35;;;;;;;;:::i;:::-;;;;;;;:45:::0;8839:248:::1;;8908:63;8946:11;8959;8908:37;:63::i;:::-;8989:50;9027:11;8989:37;:50::i;:::-;9068:4;9058:14;;8839:248;8703:394;8677:1374;;;-1:-1:-1::0;;9107:20:213::1;::::0;::::1;::::0;9103:948:::1;;9143:28;9174:75;9192:6;9200:48;9236:11;9200:35;:48::i;9174:75::-;9143:106;;9306:6;9267:11;9300:1;9279:11;:18;:22;;;;:::i;:::-;9267:35;;;;;;;;:::i;:::-;;;;;;;:45:::0;9263:243:::1;;9332:61;9368:11;9381;9332:35;:61::i;:::-;9411:48;9447:11;9411:35;:48::i;9103:948::-;9526:20:::0;::::1;::::0;::::1;::::0;9522:529;::::1;;9997:43;::::0;-1:-1:-1;;;9997:43:213;;12831:2:229;9997:43:213::1;::::0;::::1;12813:21:229::0;12870:2;12850:18;;;12843:30;12909:34;12889:18;;;12882:62;12980:3;12960:18;;;12953:31;13001:19;;9997:43:213::1;12629:397:229::0;9522:529:213::1;10060:33;10081:11;10060:20;:33::i;:::-;8437:1663;;1721:151:::0;8329:1771;;;;;:::o;1878:819::-;1959:11;1731:30;1764:27;1779:11;1764:14;:27::i;:::-;1731:60;;1809:8;:15;;;1801:53;;;;-1:-1:-1;;;1801:53:213;;11209:2:229;1801:53:213;;;11191:21:229;11248:2;11228:18;;;11221:30;11287:27;11267:18;;;11260:55;11332:18;;1801:53:213;11007:349:229;1801:53:213;1982:22:::1;2014:8;:6;:8::i;:::-;-1:-1:-1::0;;;;;2007:29:213::1;;2037:11;2007:42;;;;;;;;;;;;;2313:25:229::0;;2301:2;2286:18;;2167:177;2007:42:213::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1982:67;;2085:12;:10;:12::i;:::-;-1:-1:-1::0;;;;;2067:30:213::1;:14;-1:-1:-1::0;;;;;2067:30:213::1;;2059:69;;;::::0;-1:-1:-1;;;2059:69:213;;12063:2:229;2059:69:213::1;::::0;::::1;12045:21:229::0;12102:2;12082:18;;;12075:30;12141:28;12121:18;;;12114:56;12187:18;;2059:69:213::1;11861:350:229::0;2059:69:213::1;2138:14;2167:9:::0;2162:486:::1;2182:7;:14;2178:1;:18;2162:486;;;2226:7;2234:1;2226:10;;;;;;;;:::i;:::-;;;;;;;2217:19;;2265:8;:6;:8::i;:::-;-1:-1:-1::0;;;;;2258:32:213::1;;2291:6;2299:12;:10;:12::i;:::-;2258:54;::::0;;::::1;::::0;;;;;;::::1;::::0;::::1;13205:25:229::0;;;;-1:-1:-1;;;;;13266:55:229;13246:18;;;13239:83;13178:18;;2258:54:213::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2250:88;;;::::0;-1:-1:-1;;;2250:88:213;;13817:2:229;2250:88:213::1;::::0;::::1;13799:21:229::0;13856:2;13836:18;;;13829:30;13895:23;13875:18;;;13868:51;13936:18;;2250:88:213::1;13615:345:229::0;2250:88:213::1;2352:25;2380:17;2390:6;2380:9;:17::i;:::-;2352:45;;2446:1;2425:8;:17;;;2419:24;;;;;;;;:::i;:::-;:28;;;2411:70;;;::::0;-1:-1:-1;;;2411:70:213;;14167:2:229;2411:70:213::1;::::0;::::1;14149:21:229::0;14206:2;14186:18;;;14179:30;14245:31;14225:18;;;14218:59;14294:18;;2411:70:213::1;13965:353:229::0;2411:70:213::1;2503:38;2521:11;2534:6;2503:17;:38::i;:::-;2495:78;;;::::0;-1:-1:-1;;;2495:78:213;;14525:2:229;2495:78:213::1;::::0;::::1;14507:21:229::0;14564:2;14544:18;;;14537:30;14603:29;14583:18;;;14576:57;14650:18;;2495:78:213::1;14323:351:229::0;2495:78:213::1;2587:50;2598:11;2611:6;2619:8;:17;;;2587:10;:50::i;:::-;-1:-1:-1::0;2198:3:213::1;;2162:486;;;;2657:33;2678:11;2657:20;:33::i;:::-;1972:725;;1721:151:::0;1878:819;;;:::o;1942:98:123:-;1981:7;2003:32;:30;:32::i;2703:1136:213:-;2781:16;2809:25;2837:17;2847:6;2837:9;:17::i;:::-;2874;;2809:45;;-1:-1:-1;2868:24:213;;;;;;;;:::i;:::-;:29;;2896:1;2868:29;2864:969;;2913:29;2945:50;2983:11;2945:37;:50::i;:::-;2913:82;;3014:9;3009:252;3029:12;:19;3025:1;:23;3009:252;;;3092:6;3073:12;3086:1;3073:15;;;;;;;;:::i;:::-;;;;;;;:25;3069:117;;3136:4;3122:18;;3162:5;;3069:117;3225:3;;;;:::i;:::-;;;;3009:252;;;;2899:372;2864:969;;;3287:17;;3281:24;;;;;;;;:::i;:::-;:29;;3309:1;3281:29;3277:556;;3326:30;3359:48;3395:11;3359:35;:48::i;:::-;3326:81;;3426:9;3421:254;3441:13;:20;3437:1;:24;3421:254;;;3506:6;3486:13;3500:1;3486:16;;;;;;;;:::i;:::-;;;;;;;:26;3482:118;;3550:4;3536:18;;3576:5;;3482:118;3639:3;;;;:::i;:::-;;;;3421:254;;3277:556;3701:17;;3695:24;;;;;;;;:::i;:::-;:29;;3723:1;3695:29;3691:142;;;3779:43;;-1:-1:-1;;;3779:43:213;;12831:2:229;3779:43:213;;;12813:21:229;12870:2;12850:18;;;12843:30;12909:34;12889:18;;;12882:62;12980:3;12960:18;;;12953:31;13001:19;;3779:43:213;12629:397:229;3691:142:213;2799:1040;2703:1136;;;;:::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;10400:416:182:-;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;10512:16:182;;;10526:1;10512:16;;;;;;;;;10483:26;;10512:16;;;;;;;;;;;-1:-1:-1;10512:16:182;10483:45;;10565:6;10549:24;;10534:9;10544:1;10534:12;;;;;;;;:::i;:::-;;;;;;;;;;:39;10581:24;;;10668:80;1205:66;10713:9;1334:66;10668:21;:80::i;:::-;10580:168;;;;;;10761:50;10768:11;10781:15;10798:12;10761:6;:50::i;:::-;10754:57;10400:416;-1:-1:-1;;;;;;10400:416:182:o;13158:402:194:-;13212:23;;:::i;:::-;13272:16;;;13286:1;13272:16;;;;;;;;;13243:26;;13272:16;;;;;;;;;;;-1:-1:-1;13272:16:194;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;25502:421:177:-;25559:36;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25559:36:177;25632:16;;;25646:1;25632:16;;;;;;;;;25603:26;;25632:16;;;;;;;;;;;-1:-1:-1;25632:16:177;25603:45;;25669:11;25654:9;25664:1;25654:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;25688:24;;;25775:80;1294:66;25820:9;1423:66;25775:21;:80::i;:::-;25687:168;;;;;;25868:50;25875:11;25888:15;25905:12;25868:6;:50::i;7769:413:178:-;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7891:16:178;;7905:1;7891:16;;;;;;;;;-1:-1:-1;;;;7891:16:178;;;;;;;;;;;;;-1:-1:-1;7891:16:178;7862:45;;7928:11;7913:9;7923:1;7913:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;7947:24;;;8034:80;1163:66;8079:9;1292:66;8034:21;:80::i;:::-;7946:168;;;;;;8127:50;8134:11;8147:15;8164:12;8127:6;:50::i;14822:354:177:-;14963:16;;;14977:1;14963:16;;;;;;;;;14894:32;;14934:26;;14963:16;;;;;;;;;;;;-1:-1:-1;14963:16:177;14934:45;;15000:11;14985:9;14995:1;14985:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;15018:18;15039:51;1294:66;15077:9;15088:1;15039:27;:51::i;:::-;15018:72;;15104:66;:44;15125:5;15132:1;15135:5;:12;15104:20;:44::i;:::-;:64;:66::i;:::-;15096:75;14822:354;-1:-1:-1;;;;14822:354:177:o;12251:653:213:-;12365:29;12429:1;12414:5;:12;:16;12410:488;;;12451:9;12446:391;12466:5;:12;12462:1;:16;12446:391;;;12515:6;12503:5;12509:1;12503:8;;;;;;;;:::i;:::-;;;;;;;:18;12499:263;;12545:12;12560:5;12581:1;12566:5;:12;:16;;;;:::i;:::-;12560:23;;;;;;;;:::i;:::-;;;;;;;12545:38;;12616:4;12605:5;12611:1;12605:8;;;;;;;;:::i;:::-;;;;;;:15;;;;;12668:6;12642:5;12663:1;12648:5;:12;:16;;;;:::i;:::-;12642:23;;;;;;;;:::i;:::-;;;;;;:32;;;;;12711:5;12696:20;;12738:5;;;12499:263;12801:3;;;;:::i;:::-;;;;12446:391;;;;12410:488;;;-1:-1:-1;12882:5:213;12251:653;-1:-1:-1;12251:653:213:o;15629:277:177:-;15756:16;;;15770:1;15756:16;;;;;;;;;15727:26;;15756:16;;;;;;;;;;;-1:-1:-1;15756:16:177;15727:45;;15793:11;15778:9;15788:1;15778:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;15811:90;1294:66;15849:9;15860:1;15863:37;15883:15;15863:18;:37::i;:::-;15811:27;:90::i;:::-;15721:185;15629:277;;:::o;18727:212::-;18820:16;;;18834:1;18820:16;;;;;;;;;18791:26;;18820:16;;;;;;;;;;;-1:-1:-1;18820:16:177;18791:45;;18857:11;18842:9;18852:1;18842:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;18875:59;1294:66;1278:83;;18917:9;18928:1;18931:2;18875:31;:59::i;:::-;18785:154;18727:212;:::o;9521:350::-;9658:16;;;9672:1;9658:16;;;;;;;;;9591:30;;9629:26;;9658:16;;;;;;;;;;;;-1:-1:-1;9658:16:177;9629:45;;9695:11;9680:9;9690:1;9680:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;9713:18;9734:51;1294:66;9772:9;9713:18;9734:27;:51::i;10316:271::-;10439:16;;;10453:1;10439:16;;;;;;;;;10410:26;;10439:16;;;;;;;;;;;-1:-1:-1;10439:16:177;10410:45;;10476:11;10461:9;10471:1;10461:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;10494:88;1294:66;10532:9;1278:83;10546:35;10566:13;10546:18;:35::i;13374:210::-;13465:16;;;13479:1;13465:16;;;;;;;;;13436:26;;13465:16;;;;;;;;;;;-1:-1:-1;13465:16:177;13436:45;;13502:11;13487:9;13497:1;13487:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;13520:59;1294:66;1278:83;;13562:9;13573:1;13576:2;13520:31;:59::i;6543:1780:213:-;6613:30;6646:48;6682:11;6646:35;:48::i;:::-;6613:81;;6704:32;6739:50;6777:11;6739:37;:50::i;:::-;6704:85;;6799:18;6827:24;6861;6895;6929:23;6962:28;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6962:28:213;7000:30;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7000:30:213;7044:20;;:24;7040:482;;7089:9;7084:428;7104:13;:20;7100:1;:24;7084:428;;;7162:31;7176:13;7190:1;7176:16;;;;;;;;:::i;:::-;;;;;;;7162:13;:31::i;:::-;7149:44;;7225:10;:24;;;7211:38;;;;;:::i;:::-;;;7288:10;:22;;;7267:43;;;;;:::i;:::-;7349:22;;7267:43;;-1:-1:-1;7328:43:213;;;;:::i;:::-;;;7410:10;:22;;;7389:43;;;;;:::i;:::-;;;7470:10;:27;;;7450:47;;;;;:::i;:::-;;-1:-1:-1;7126:3:213;;7084:428;;;;7040:482;7535:22;;:26;7531:438;;7582:9;7577:382;7597:15;:22;7593:1;:26;7577:382;;;7658:34;7673:15;7689:1;7673:18;;;;;;;;:::i;:::-;;;;;;;7658:14;:34::i;:::-;7644:48;;7731:11;:23;;;7710:44;;;;;:::i;:::-;7793:23;;7710:44;;-1:-1:-1;7772:44:213;;;;:::i;:::-;;;7855:11;:23;;;7834:44;;;;;:::i;:::-;;;7916:11;:28;;;7896:48;;;;;:::i;:::-;;-1:-1:-1;7621:3:213;;7577:382;;;;7531:438;7978:62;8009:11;8022:17;7978:30;:62::i;:::-;8050;8081:11;8094:17;8050:30;:62::i;:::-;8122;8153:11;8166:17;8122:30;:62::i;:::-;8194:60;8224:11;8237:16;8194:29;:60::i;:::-;8264:52;8292:11;8305:10;8264:27;:52::i;:::-;6603:1720;;;;;;;;;6543:1780;:::o;5657:880::-;5761:31;5772:11;5785:6;5761:10;:31::i;:::-;5760:32;5752:72;;;;-1:-1:-1;;;5752:72:213;;15011:2:229;5752:72:213;;;14993:21:229;15050:2;15030:18;;;15023:30;15089:29;15069:18;;;15062:57;15136:18;;5752:72:213;14809:351:229;5752:72:213;5844:8;5838:15;;;;;;;;:::i;:::-;:20;;5857:1;5838:20;5834:226;;5938:1;5882:53;5923:11;5882:40;:53::i;:::-;:57;5874:102;;;;-1:-1:-1;;;5874:102:213;;15367:2:229;5874:102:213;;;15349:21:229;;;15386:18;;;15379:30;15445:34;15425:18;;;15418:62;15497:18;;5874:102:213;15165:356:229;5874:102:213;5990:59;6029:11;6042:6;5990:38;:59::i;:::-;6079:8;6073:15;;;;;;;;:::i;:::-;:20;;6092:1;6073:20;6069:222;;6171:1;6117:51;6156:11;6117:38;:51::i;:::-;:55;6109:100;;;;-1:-1:-1;;;6109:100:213;;15367:2:229;6109:100:213;;;15349:21:229;;;15386:18;;;15379:30;15445:34;15425:18;;;15418:62;15497:18;;6109:100:213;15165:356:229;6109:100:213;6223:57;6260:11;6273:6;6223:36;:57::i;:::-;6311:8;6305:15;;;;;;;;:::i;:::-;:20;5657:880;;;:::o;4048:97:123:-;4089:7;4111:29;:27;:29::i;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;14482:308:182:-;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;14692:25:182;14705:11;14692:12;:25::i;:::-;14671:17;;;14653:64;;;14654:6;14653:64;;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;14741:44;14755:15;14772:12;14741:13;:44::i;:::-;14725:12;;;14724:61;14725:6;14482:308;-1:-1:-1;;;14482:308:182:o;17711:363:194:-;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:194;;;;-1:-1:-1;17711:363:194;;;-1:-1:-1;;;;;17711:363:194:o;31199:439:177:-;31339:36;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;31339:36:177;31467:25;31480:11;31467:12;:25::i;:::-;31451:12;;;31383:109;31435:14;;;31383:109;31418:15;;;31383:109;31401:15;;;31383:109;;;31571:62;31592:15;31615:12;31571:13;:62::i;:::-;31546:21;;;31499:134;31522:22;;;31499:134;31500:20;;;31499:134;31500:6;31199:439;-1:-1:-1;;;31199:439:177:o;11270:238:178:-;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11478:25:178;11491:11;11478:12;:25::i;:::-;11417:86;;11461:13;;;11417:86;11448:11;;;11417:86;-1:-1:-1;;;;;11417:86:178;11434:12;;;11417:86;;;11418:6;11270:238;-1:-1:-1;;;11270:238:178: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;18801:224::-;18748:281;18598:431;;;;;:::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;15325:220:56:-;15391:24;15423:30;15456:32;15474:6;15482:2;15486:1;15456:17;:32::i;15129:222:57:-;15193:12;15283:6;15307:39;15283:6;15340:2;15344:1;15307:17;:39::i;11569:424:46:-;11720:21;11744:17;:15;:17::i;:::-;11720:41;-1:-1:-1;11796:4:46;-1:-1:-1;;;;;11771:30:46;;;11767:222;;11811:69;11837:7;11846:8;11856:17;11875:4;11811:25;:69::i;:::-;11767:222;;;11901:81;;;;;-1:-1:-1;;;;;11901:37:46;;;;;:81;;11939:7;;11948:8;;11958:17;;11977:4;;11901:81;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11767:222;11714:279;11569:424;;;;:::o;13190:464::-;13351:21;13375:17;:15;:17::i;:::-;13351:41;-1:-1:-1;13427:4:46;-1:-1:-1;;;;;13402:30:46;;;13398:252;;13442:84;13472:7;13481:8;13491:17;13510:15;13442:29;:84::i;13398:252::-;13547:96;;;;;-1:-1:-1;;;;;13547:41:46;;;;;:96;;13589:7;;13598:8;;13608:17;;13627:15;;13547:96;;;:::i;3825:257:177:-;3928:16;;;3942:1;3928:16;;;;;;;;;3899:26;;3928:16;;;;;;;;;;;-1:-1:-1;3928:16:177;3899:45;;3965:11;3950:9;3960:1;3950:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;3983:94;1294:66;1278:83;;4020:9;4031:1;4052:8;4034:28;;;;;;20672:19:229;;20716:2;20707:12;;20545:180;4034:28:177;;;;-1:-1:-1;;4034:28:177;;;;;;;;;1423:66;3983:26;:94::i;5115:257::-;5218:16;;;5232:1;5218:16;;;;;;;;;5189:26;;5218:16;;;;;;;;;;;-1:-1:-1;5218:16:177;5189:45;;5255:11;5240:9;5250:1;5240:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;5273:94;1294:66;1278:83;;5310:9;5321:1;5342:8;5324:28;;;;;;20672:19:229;;20716:2;20707:12;;20545:180;6405:257:177;6508:16;;;6522:1;6508:16;;;;;;;;;6479:26;;6508:16;;;;;;;;;;;-1:-1:-1;6508:16:177;6479:45;;6545:11;6530:9;6540:1;6530:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;6563:94;1294:66;1278:83;;6600:9;6611:1;6632:8;6614:28;;;;;;20672:19:229;;20716:2;20707:12;;20545:180;7688:254:177;7789:16;;;7803:1;7789:16;;;;;;;;;7760:26;;7789:16;;;;;;;;;;;-1:-1:-1;7789:16:177;7760:45;;7826:11;7811:9;7821:1;7811:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;7844:93;1294:66;1278:83;;7881:9;7892:1;7913:7;7895:27;;;;;;20672:19:229;;20716:2;20707:12;;20545:180;8936:249:177;9034:16;;;9048:1;9034:16;;;;;;;;;9005:26;;9034:16;;;;;;;;;;;-1:-1:-1;9034:16:177;9005:45;;9071:11;9056:9;9066:1;9056:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;9089:91;1294:66;1278:83;;9126:9;9137:1;9158:5;9140:25;;;;;;20672:19:229;;20716:2;20707:12;;20545:180;16296:311:177;16415:16;;;16429:1;16415:16;;;;;;;;;16371:7;;;;16415:16;;;;;;;;;;;;-1:-1:-1;16415:16:177;16386:45;;16452:11;16437:9;16447:1;16437:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;16470:19;16492:57;1294:66;16536:9;16547:1;16492:33;:57::i;:::-;16594:2;16580:16;;;;-1:-1:-1;;;;16296:311:177:o;18085:256::-;18197:16;;;18211:1;18197:16;;;;;;;;;18168:26;;18197:16;;;;;;;;;;;-1:-1:-1;18197:16:177;18168:45;;18234:11;18219:9;18229:1;18219:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;18252:84;1294:66;1278:83;;18293:9;18304:1;18325:8;18307:28;;;;;;20672:19:229;;20716:2;20707:12;;20545:180;18307:28:177;;;;;;;;;;;;;18252:30;:84::i;10967:309::-;11084:16;;;11098:1;11084:16;;;;;;;;;11040:7;;;;11084:16;;;;;;;;;;;;-1:-1:-1;11084:16:177;11055:45;;11121:11;11106:9;11116:1;11106:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;11139:19;11161:57;1294:66;11205:9;11139:19;11161:33;:57::i;12740:254::-;12850:16;;;12864:1;12850:16;;;;;;;;;12821:26;;12850:16;;;;;;;;;;;-1:-1:-1;12850:16:177;12821:45;;12887:11;12872:9;12882:1;12872:12;;;;;;;;:::i;:::-;;;;;;:26;;;;;12905:84;1294:66;1278:83;;12946:9;12957:1;12978:8;12960:28;;;;;;20672:19:229;;20716:2;20707:12;;20545:180;1836:227:46;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;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;13577:225:182:-;2756:4:23;2742:27;;2736:34;13642:17:182;;;;13707:32;;13698:42;;;;;;;;:::i;:::-;2742:27:23;;;;;2736:34;13687:53:182;;13577:225;-1:-1:-1;;13577:225:182:o;13905:310::-;14015:18;14041:14;975:16:24;7017:70;;;6995:94;;14157:51:182;:41;14178:5;14041:14;6995:94:24;14157:20:182;:41::i;:::-;:49;:51::i;:::-;14142:68;13905:310;-1:-1:-1;;;;;13905:310:182:o;16807:746:194:-;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:194;2742:27:23;;;2736:34;2742:27;;;2736:34;17107:35:194;;-1:-1:-1;2736:34:23;-1:-1:-1;17221:33:194;;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:194;;;;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:194;-1:-1:-1;;16807:746:194:o;29601:467:177:-;29674:15;29691;29708;29725:14;29741:13;29789:26;29806:5;29813:1;2742:27:23;2756:4;2742:27;2736:34;;2612:168;29789:26:177;2742:27:23;;;2736:34;2742:27;;;2736:34;2742:27;;;2736:34;2742:27;;;;2736:34;29781:35:177;;2736:34:23;;;;-1:-1:-1;2736:34:23;-1:-1:-1;2736:34:23;;-1:-1:-1;29601:467:177;-1:-1:-1;;29601:467:177:o;30171:761::-;30293:30;;;30400:14;975:16:24;7017:70;;;6995:94;;30518:63:177;:41;30539:5;30400:14;6995:94:24;30518:20:177;:41::i;:63::-;30501:81;-1:-1:-1;30598:4:177;-1:-1:-1;30598:4:177;6995:94:24;7059:27;7017:70;;;6995:94;30626:34:177;30691:63;:41;30712:5;30719:6;30626:34;30691:20;:41::i;:63::-;30672:83;-1:-1:-1;30771:4:177;-1:-1:-1;30771:4:177;6995:94:24;7059:27;7017:70;;;6995:94;30799:34:177;30863:63;:41;30884:5;30891:6;30799:34;30863:20;:41::i;:63::-;30845:82;;30394:538;;30171:761;;;;;:::o;10766:346:178:-;10839:15;10856:13;10871:12;10885:11;10923:26;10940:5;10947:1;2742:27:23;2756:4;2742:27;2736:34;;2612:168;10923:26:178;2742:27:23;;;2736:34;2742:27;;;2736:34;10915:35:178;;-1:-1:-1;10967:36:178;;;-1:-1:-1;2742:27:23;;;2736:34;11011:36:178;;-1:-1:-1;11072:33:178;;11054:53;;10766:346;;;;;:::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;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;;;3341:28;;3116:690;;;2681:1129;;;;;:::o;830:1343::-;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;;24152:738:45;24403:37;24443:66;24491:7;24500:8;24443:47;:66::i;:::-;24403:106;-1:-1:-1;24515:26:45;24551:49;24403:106;24582:17;7070:16:24;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;24551:49:45;24515:86;;24608:277;24662:7;24687:8;24722:17;24765:1;24787:19;24820:4;24856:22;24608:36;:277::i;30235:834::-;30495:37;30535:66;30583:7;30592:8;30535:47;:66::i;:::-;30495:106;-1:-1:-1;30607:26:45;30643:49;30495:106;30674:17;7070:16:24;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;30643:49:45;30607:86;-1:-1:-1;30731:333:45;30785:7;30810:8;30845:17;30895:37;30917:15;30895:37;;;;:::i;:::-;30991:12;;;31001:1;30991:12;;;;;;;;30961:15;;31035:22;30731:36;:333::i;10761:455:46:-;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;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21091:444;21233:7;21248:21;21272:17;:15;:17::i;:::-;21248:41;-1:-1:-1;21324:4:46;-1:-1:-1;;;;;21299:30:46;;;21295:236;;21346:69;21378:7;21387:8;21397:17;21346:31;:69::i;21295:236::-;21443:81;;;;;-1:-1:-1;;;;;21443:43:46;;;;;:81;;21487:7;;21496:8;;21506:17;;21443:81;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;12345:451::-;12505:21;12529:17;:15;:17::i;:::-;12505:41;-1:-1:-1;12581:4:46;-1:-1:-1;;;;;12556:30:46;;;12552:240;;12596:78;12625:7;12634:8;12644:17;12663:10;12596:28;:78::i;12552:240::-;12695:90;;;;;-1:-1:-1;;;;;12695:40:46;;;;;:90;;12736:7;;12745:8;;12755:17;;12774:10;;12695:90;;;:::i;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;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;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;44254:4001:45:-;44673:14;44652:7;:35;;;44648:161;;44743:14;44759:7;44792;44775:25;;;;;;20672:19:229;;20716:2;20707:12;;20545:180;44775:25:45;;;;-1:-1:-1;;44775:25:45;;;;;;;;;;44704:98;;;;;;;;;;:::i;44648:161::-;44815:27;44845:49;:22;44876:17;7070:16:24;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;44845:49:45;44815:79;;44900:26;44965:4;:11;44951;44929:33;;:19;:33;;;;:::i;:::-;:47;;;;:::i;:::-;44900:76;;45248:18;45225:19;:41;;:98;;;;-1:-1:-1;45304:19:45;45270:30;45289:11;45270:16;:30;:::i;:::-;:53;;;;45225:98;45221:218;;;45340:92;;;;;24080:12:229;24119:15;;;45340:92:45;;;24101:34:229;24171:15;;;24151:18;;;24144:43;24223:15;;24203:18;;;24196:43;24043:18;;45340:92:45;23874:371:229;45221:218:45;45545:19;45526:16;:38;;;45522:140;;;45581:74;;;;;;;;24423:25:229;;;24496:12;24484:25;;24464:18;;;24457:53;24396:18;;45581:74:45;24250:266:229;45522:140:45;45701:36;45740:72;:22;45774:17;45793:18;45740:33;:72::i;:::-;45701:111;;45959:22;45984:24;46000:7;45984:15;:24::i;:::-;45959:49;;46019:9;46014:486;46034:5;:12;46030:1;:16;46014:486;;;46061:9;46083:5;46089:1;46083:8;;;;;;;;:::i;:::-;;;;;;;46061:31;;46104:42;836:6:54;46104:4:45;:14;;;;;:42;;;;:::i;:::-;46100:394;;;3536:35:26;;;;-1:-1:-1;;;;;46158:55:45;;46235:7;46264:8;46303:17;46350:16;46391:11;46430:22;46470:4;46158:327;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;46100:394;-1:-1:-1;46048:3:45;;46014:486;;;-1:-1:-1;46558:32:45;;;:13;46698:107;46716:17;46712:21;;:1;:21;;;46698:107;;;46761:33;:22;46792:1;7070:16:24;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;46761:33:45;46752:42;;;;46735:3;;46698:107;;;;46930:7;46874:277;46957:8;46994:17;47035:5;47064:11;47101:21;47138:4;46874:277;;;;;;;;;;;:::i;:::-;;;;;;;;46506:652;47243:18;47220:19;:41;47216:248;;47271:31;47305:48;47335:7;47344:8;47305:29;:48::i;:::-;695:28:44;;;-1:-1:-1;47216:248:45;47521:27;47551:61;47575:7;47584:8;47594:17;47551:23;:61::i;:::-;47521:91;;47620:92;47652:19;47681:16;47620:92;;47705:4;47620:13;:92::i;:::-;47513:206;47773:9;47768:483;47788:5;:12;47784:1;:16;47768:483;;;47815:9;47837:5;47843:1;47837:8;;;;;;;;:::i;:::-;;;;;;;47815:31;;47858:41;947:6:54;47858:4:45;:14;;;;;:41;;;;:::i;:::-;47854:391;;;3536:35:26;;;;-1:-1:-1;;;;;47911:54:45;;47987:7;48016:8;48055:17;48102:16;48143:11;48182:21;48221:4;47911:325;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;47854:391;-1:-1:-1;47802:3:45;;47768:483;;;;44498:3757;;;;44254:4001;;;;;;;:::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;39909:262::-;40051:7;40073:93;40148:17;40073:66;40121:7;40130:8;40073:47;:66::i;28764:791::-;29023:37;29063:66;29111:7;29120:8;29063:47;:66::i;:::-;29023:106;-1:-1:-1;29135:26:45;29171:49;29023:106;29202:17;7070:16:24;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;29171:49:45;29135:86;;29259:291;29313:7;29338:8;29373:17;29423:19;29464:1;29479:10;29521:22;29259:36;:291::i;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;53371:230::-;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;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;7468:1525:24:-;7596:14;1145:16;7622:25;;7618:120;;;7664:67;;;;;;;;2313:25:229;;;2286:18;;7664:67:24;2167:177:229;7618:120:24;7802:14;6445:61;;;7070:16;;;1063;7070;975;7059:27;7017:70;;;6995:94;;8068:38;;;8064:192;;8151:19;8133:15;:37;8118:52;;;;8064:192;;;8232:15;8210:19;:37;8195:52;;;;8064:192;-1:-1:-1;8572:16:24;975;1063;8439;;;;8428:27;8564:35;;;8882:5;8719:26;8699:46;;;;8698:62;;;8862:25;;;;8892:34;;;;;8861:66;;-1:-1:-1;7468:1525:24;;;;;:::o;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;966:162:44:-;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;51823:242:45:-;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;;17013:1682;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;40103:220:56:-;40169:24;40201:30;40234:32;40252:6;40260:2;40264:1;40234:17;:32::i;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;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:332:229:-;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:180;833:6;886:2;874:9;865:7;861:23;857:32;854:52;;;902:1;899;892:12;854:52;-1:-1:-1;925:23:229;;774:180;-1:-1:-1;774:180:229:o;959:448::-;1010:3;1048:5;1042:12;1075:6;1070:3;1063:19;1101:4;1130;1125:3;1121:14;1114:21;;1169:4;1162:5;1158:16;1192:1;1202:180;1216:6;1213:1;1210:13;1202:180;;;1281:13;;1296:4;1277:24;1265:37;;1322:12;;;;1357:15;;;;1238:1;1231:9;1202:180;;;-1:-1:-1;1398:3:229;;959:448;-1:-1:-1;;;;;959:448:229:o;1412:750::-;1601:2;1590:9;1583:21;1646:6;1640:13;1635:2;1624:9;1620:18;1613:41;1708:2;1700:6;1696:15;1690:22;1685:2;1674:9;1670:18;1663:50;1564:4;1760:2;1752:6;1748:15;1742:22;1800:4;1795:2;1784:9;1780:18;1773:32;1828:61;1884:3;1873:9;1869:19;1855:12;1828:61;:::i;:::-;1814:75;;1944:2;1936:6;1932:15;1926:22;1920:3;1909:9;1905:19;1898:51;2004:3;1996:6;1992:16;1986:23;1980:3;1969:9;1965:19;1958:52;2065:3;2057:6;2053:16;2047:23;2041:3;2030:9;2026:19;2019:52;2127:3;2119:6;2115:16;2109:23;2102:4;2091:9;2087:20;2080:53;2150:6;2142:14;;;1412:750;;;;:::o;2349:834::-;2540:2;2529:9;2522:21;2585:6;2579:13;2574:2;2563:9;2559:18;2552:41;2503:4;2640:2;2632:6;2628:15;2622:22;2663:6;2705:2;2700;2689:9;2685:18;2678:30;2731:61;2787:3;2776:9;2772:19;2758:12;2731:61;:::i;:::-;2717:75;;2846:2;2838:6;2834:15;2828:22;2823:2;2812:9;2808:18;2801:50;2906:2;2898:6;2894:15;2888:22;2882:3;2871:9;2867:19;2860:51;2966:3;2958:6;2954:16;2948:23;2942:3;2931:9;2927:19;2920:52;3027:3;3019:6;3015:16;3009:23;3003:3;2992:9;2988:19;2981:52;3088:3;3080:6;3076:16;3070:23;3064:3;3053:9;3049:19;3042:52;3148:3;3140:6;3136:16;3130:23;3125:2;3114:9;3110:18;3103:51;;3171:6;3163:14;;;2349:834;;;;:::o;4082:248::-;4150:6;4158;4211:2;4199:9;4190:7;4186:23;4182:32;4179:52;;;4227:1;4224;4217:12;4179:52;-1:-1:-1;;4250:23:229;;;4320:2;4305:18;;;4292:32;;-1:-1:-1;4082:248:229:o;4335:184::-;-1:-1:-1;;;4384:1:229;4377:88;4484:4;4481:1;4474:15;4508:4;4505:1;4498:15;4524:253;4596:2;4590:9;4638:4;4626:17;;4673:18;4658:34;;4694:22;;;4655:62;4652:88;;;4720:18;;:::i;:::-;4756:2;4749:22;4524:253;:::o;4782:255::-;4854:2;4848:9;4896:6;4884:19;;4933:18;4918:34;;4954:22;;;4915:62;4912:88;;;4980:18;;:::i;5042:334::-;5113:2;5107:9;5169:2;5159:13;;-1:-1:-1;;5155:86:229;5143:99;;5272:18;5257:34;;5293:22;;;5254:62;5251:88;;;5319:18;;:::i;:::-;5355:2;5348:22;5042:334;;-1:-1:-1;5042:334:229:o;5381:183::-;5441:4;5474:18;5466:6;5463:30;5460:56;;;5496:18;;:::i;:::-;-1:-1:-1;5541:1:229;5537:14;5553:4;5533:25;;5381:183::o;5569:959::-;5662:6;5670;5723:2;5711:9;5702:7;5698:23;5694:32;5691:52;;;5739:1;5736;5729:12;5691:52;5775:9;5762:23;5752:33;;5804:2;5857;5846:9;5842:18;5829:32;5884:18;5876:6;5873:30;5870:50;;;5916:1;5913;5906:12;5870:50;5939:22;;5992:4;5984:13;;5980:27;-1:-1:-1;5970:55:229;;6021:1;6018;6011:12;5970:55;6057:2;6044:16;6080:60;6096:43;6136:2;6096:43;:::i;:::-;6080:60;:::i;:::-;6174:15;;;6256:1;6252:10;;;;6244:19;;6240:28;;;6205:12;;;;6280:19;;;6277:39;;;6312:1;6309;6302:12;6277:39;6336:11;;;;6356:142;6372:6;6367:3;6364:15;6356:142;;;6438:17;;6426:30;;6389:12;;;;6476;;;;6356:142;;;6517:5;6507:15;;;;;;;5569:959;;;;;:::o;6533:184::-;-1:-1:-1;;;6582:1:229;6575:88;6682:4;6679:1;6672:15;6706:4;6703:1;6696:15;7070:832;7133:5;7186:3;7179:4;7171:6;7167:17;7163:27;7153:55;;7204:1;7201;7194:12;7153:55;7233:6;7227:13;7259:4;7283:60;7299:43;7339:2;7299:43;:::i;7283:60::-;7365:3;7389:2;7384:3;7377:15;7417:4;7412:3;7408:14;7401:21;;7474:4;7468:2;7465:1;7461:10;7453:6;7449:23;7445:34;7431:48;;7502:3;7494:6;7491:15;7488:35;;;7519:1;7516;7509:12;7488:35;7555:4;7547:6;7543:17;7569:304;7585:6;7580:3;7577:15;7569:304;;;7658:3;7652:10;7706:4;7699:5;7695:16;7688:5;7685:27;7675:125;;7754:1;7783:2;7779;7772:14;7675:125;7813:18;;7851:12;;;;7602;;7569:304;;;-1:-1:-1;7891:5:229;7070:832;-1:-1:-1;;;;;;7070:832:229:o;7907:943::-;8007:6;8060:2;8048:9;8039:7;8035:23;8031:32;8028:52;;;8076:1;8073;8066:12;8028:52;8109:9;8103:16;8138:18;8179:2;8171:6;8168:14;8165:34;;;8195:1;8192;8185:12;8165:34;8218:22;;;;8274:4;8256:16;;;8252:27;8249:47;;;8292:1;8289;8282:12;8249:47;8318:22;;:::i;:::-;8369:2;8363:9;8356:5;8349:24;8419:2;8415;8411:11;8405:18;8400:2;8393:5;8389:14;8382:42;8463:2;8459;8455:11;8449:18;8492:2;8482:8;8479:16;8476:36;;;8508:1;8505;8498:12;8476:36;8544:65;8601:7;8590:8;8586:2;8582:17;8544:65;:::i;:::-;8539:2;8532:5;8528:14;8521:89;;8656:2;8652;8648:11;8642:18;8637:2;8630:5;8626:14;8619:42;8708:3;8704:2;8700:12;8694:19;8688:3;8681:5;8677:15;8670:44;8761:3;8757:2;8753:12;8747:19;8741:3;8734:5;8730:15;8723:44;8814:3;8810:2;8806:12;8800:19;8794:3;8787:5;8783:15;8776:44;8839:5;8829:15;;;;;7907:943;;;;:::o;9204:999::-;9305:6;9358:2;9346:9;9337:7;9333:23;9329:32;9326:52;;;9374:1;9371;9364:12;9326:52;9407:9;9401:16;9436:18;9477:2;9469:6;9466:14;9463:34;;;9493:1;9490;9483:12;9463:34;9516:22;;;;9572:6;9554:16;;;9550:29;9547:49;;;9592:1;9589;9582:12;9547:49;9618:22;;:::i;:::-;9669:2;9663:9;9656:5;9649:24;9712:2;9708;9704:11;9698:18;9741:2;9731:8;9728:16;9725:36;;;9757:1;9754;9747:12;9725:36;9793:65;9850:7;9839:8;9835:2;9831:17;9793:65;:::i;:::-;9788:2;9781:5;9777:14;9770:89;;9905:2;9901;9897:11;9891:18;9886:2;9879:5;9875:14;9868:42;9956:2;9952;9948:11;9942:18;9937:2;9930:5;9926:14;9919:42;10008:3;10004:2;10000:12;9994:19;9988:3;9981:5;9977:15;9970:44;10061:3;10057:2;10053:12;10047:19;10041:3;10034:5;10030:15;10023:44;10114:3;10110:2;10106:12;10100:19;10094:3;10087:5;10083:15;10076:44;10167:3;10163:2;10159:12;10153:19;10147:3;10140:5;10136:15;10129:44;10192:5;10182:15;;;;;9204:999;;;;:::o;10208:184::-;-1:-1:-1;;;10257:1:229;10250:88;10357:4;10354:1;10347:15;10381:4;10378:1;10371:15;10397:216;10461:9;;;10489:11;;;10436:3;10519:9;;10547:10;;10543:19;;10572:10;;10564:19;;10540:44;10537:70;;;10587:18;;:::i;10618:184::-;-1:-1:-1;;;10667:1:229;10660:88;10767:4;10764:1;10757:15;10791:4;10788:1;10781:15;10807:195;10846:3;-1:-1:-1;;10870:5:229;10867:77;10864:103;;10947:18;;:::i;:::-;-1:-1:-1;10994:1:229;10983:13;;10807:195::o;11543:313::-;11613:6;11666:2;11654:9;11645:7;11641:23;11637:32;11634:52;;;11682:1;11679;11672:12;11634:52;11714:9;11708:16;-1:-1:-1;;;;;11757:5:229;11753:54;11746:5;11743:65;11733:93;;11822:1;11819;11812:12;12216:275;12301:6;12354:2;12342:9;12333:7;12329:23;12325:32;12322:52;;;12370:1;12367;12360:12;12322:52;12402:9;12396:16;12441:1;12434:5;12431:12;12421:40;;12457:1;12454;12447:12;12496:128;12563:9;;;12584:11;;;12581:37;;;12598:18;;:::i;13333:277::-;13400:6;13453:2;13441:9;13432:7;13428:23;13424:32;13421:52;;;13469:1;13466;13459:12;13421:52;13501:9;13495:16;13554:5;13547:13;13540:21;13533:5;13530:32;13520:60;;13576:1;13573;13566:12;14679:125;14744:9;;;14765:10;;;14762:36;;;14778:18;;:::i;15526:439::-;15579:3;15617:5;15611:12;15644:6;15639:3;15632:19;15670:4;15699;15694:3;15690:14;15683:21;;15738:4;15731:5;15727:16;15761:1;15771:169;15785:6;15782:1;15779:13;15771:169;;;15846:13;;15834:26;;15880:12;;;;15915:15;;;;15807:1;15800:9;15771:169;;15970:468;16270:6;16259:9;16252:25;16313:2;16308;16297:9;16293:18;16286:30;16233:4;16333:56;16385:2;16374:9;16370:18;16362:6;16333:56;:::i;:::-;16325:64;;16425:6;16420:2;16409:9;16405:18;16398:34;15970:468;;;;;;:::o;16443:250::-;16528:1;16538:113;16552:6;16549:1;16546:13;16538:113;;;16628:11;;;16622:18;16609:11;;;16602:39;16574:2;16567:10;16538:113;;;-1:-1:-1;;16685:1:229;16667:16;;16660:27;16443:250::o;16698:568::-;16751:5;16804:3;16797:4;16789:6;16785:17;16781:27;16771:55;;16822:1;16819;16812:12;16771:55;16851:6;16845:13;16877:18;16873:2;16870:26;16867:52;;;16899:18;;:::i;:::-;16943:114;17051:4;-1:-1:-1;;16975:4:229;16971:2;16967:13;16963:86;16959:97;16943:114;:::i;:::-;17082:2;17073:7;17066:19;17128:3;17121:4;17116:2;17108:6;17104:15;17100:26;17097:35;17094:55;;;17145:1;17142;17135:12;17094:55;17158:77;17232:2;17225:4;17216:7;17212:18;17205:4;17197:6;17193:17;17158:77;:::i;17271:655::-;17413:6;17421;17429;17482:2;17470:9;17461:7;17457:23;17453:32;17450:52;;;17498:1;17495;17488:12;17450:52;17531:9;17525:16;17560:18;17601:2;17593:6;17590:14;17587:34;;;17617:1;17614;17607:12;17587:34;17640:60;17692:7;17683:6;17672:9;17668:22;17640:60;:::i;:::-;17630:70;;17740:2;17729:9;17725:18;17719:25;17709:35;;17790:2;17779:9;17775:18;17769:25;17753:41;;17819:2;17809:8;17806:16;17803:36;;;17835:1;17832;17825:12;17803:36;;17858:62;17912:7;17901:8;17890:9;17886:24;17858:62;:::i;:::-;17848:72;;;17271:655;;;;;:::o;17931:442::-;18194:6;18183:9;18176:25;18237:2;18232;18221:9;18217:18;18210:30;18157:4;18257:56;18309:2;18298:9;18294:18;18286:6;18257:56;:::i;:::-;18249:64;;18361:4;18353:6;18349:17;18344:2;18333:9;18329:18;18322:45;17931:442;;;;;;:::o;18378:335::-;18457:6;18510:2;18498:9;18489:7;18485:23;18481:32;18478:52;;;18526:1;18523;18516:12;18478:52;18559:9;18553:16;18592:18;18584:6;18581:30;18578:50;;;18624:1;18621;18614:12;18578:50;18647:60;18699:7;18690:6;18679:9;18675:22;18647:60;:::i;18718:329::-;18759:3;18797:5;18791:12;18824:6;18819:3;18812:19;18840:76;18909:6;18902:4;18897:3;18893:14;18886:4;18879:5;18875:16;18840:76;:::i;:::-;18961:2;18949:15;-1:-1:-1;;18945:88:229;18936:98;;;;19036:4;18932:109;;18718:329;-1:-1:-1;;18718:329:229:o;19052:359::-;19255:2;19244:9;19237:21;19218:4;19275:44;19315:2;19304:9;19300:18;19292:6;19275:44;:::i;:::-;19350:2;19335:18;;19328:34;;;;-1:-1:-1;19393:2:229;19378:18;19371:34;19267:52;19052:359;-1:-1:-1;19052:359:229:o;19416:604::-;19725:6;19714:9;19707:25;19768:3;19763:2;19752:9;19748:18;19741:31;19688:4;19795:57;19847:3;19836:9;19832:19;19824:6;19795:57;:::i;:::-;19900:4;19892:6;19888:17;19883:2;19872:9;19868:18;19861:45;19954:9;19946:6;19942:22;19937:2;19926:9;19922:18;19915:50;19982:32;20007:6;19999;19982:32;:::i;:::-;19974:40;19416:604;-1:-1:-1;;;;;;;19416:604:229:o;20025:515::-;20316:6;20305:9;20298:25;20359:3;20354:2;20343:9;20339:18;20332:31;20279:4;20380:57;20432:3;20421:9;20417:19;20409:6;20380:57;:::i;:::-;20485:4;20473:17;;;;20468:2;20453:18;;20446:45;-1:-1:-1;20522:2:229;20507:18;20500:34;20372:65;20025:515;-1:-1:-1;;20025:515:229:o;20917:184::-;-1:-1:-1;;;20966:1:229;20959:88;21066:4;21063:1;21056:15;21090:4;21087:1;21080:15;21106:175;21143:3;21187:4;21180:5;21176:16;21216:4;21207:7;21204:17;21201:43;;21224:18;;:::i;:::-;21273:1;21260:15;;21106:175;-1:-1:-1;;21106:175:229:o;21286:168::-;21359:9;;;21390;;21407:15;;;21401:22;;21387:37;21377:71;;21428:18;;:::i;21459:709::-;21829:6;21818:9;21811:25;21872:3;21867:2;21856:9;21852:18;21845:31;21792:4;21899:57;21951:3;21940:9;21936:19;21928:6;21899:57;:::i;:::-;22004:4;21996:6;21992:17;21987:2;21976:9;21972:18;21965:45;22058:9;22050:6;22046:22;22041:2;22030:9;22026:18;22019:50;22086:32;22111:6;22103;22086:32;:::i;:::-;22078:40;;;22155:6;22149:3;22138:9;22134:19;22127:35;21459:709;;;;;;;;:::o;22173:184::-;22243:6;22296:2;22284:9;22275:7;22271:23;22267:32;22264:52;;;22312:1;22309;22302:12;22264:52;-1:-1:-1;22335:16:229;;22173:184;-1:-1:-1;22173:184:229:o;22362:640::-;22613:6;22608:3;22601:19;22583:3;22639:2;22672;22667:3;22663:12;22704:6;22698:13;22769:2;22761:6;22757:15;22790:1;22800:175;22814:6;22811:1;22808:13;22800:175;;;22877:13;;22863:28;;22913:14;;;;22950:15;;;;22836:1;22829:9;22800:175;;;-1:-1:-1;22991:5:229;;22362:640;-1:-1:-1;;;;;;;22362:640:229:o;23226:464::-;23473:66;23465:6;23461:79;23450:9;23443:98;23577:6;23572:2;23561:9;23557:18;23550:34;23620:2;23615;23604:9;23600:18;23593:30;23424:4;23640:44;23680:2;23669:9;23665:18;23657:6;23640:44;:::i;23695:174::-;23762:12;23794:10;;;23806;;;23790:27;;23829:11;;;23826:37;;;23843:18;;:::i;24521:901::-;24946:6;24935:9;24928:25;24989:3;24984:2;24973:9;24969:18;24962:31;24909:4;25016:57;25068:3;25057:9;25053:19;25045:6;25016:57;:::i;:::-;25121:4;25109:17;;25104:2;25089:18;;25082:45;25146:12;25194:15;;;25189:2;25174:18;;25167:43;25247:15;;25241:3;25226:19;;25219:44;25294:3;25279:19;;25272:35;;;25344:22;;;25338:3;25323:19;;25316:51;25384:32;25348:6;25401;25384:32;:::i;:::-;25376:40;24521:901;-1:-1:-1;;;;;;;;;;24521:901:229:o;25427:788::-;25792:3;25781:9;25774:22;25755:4;25819:57;25871:3;25860:9;25856:19;25848:6;25819:57;:::i;:::-;25924:4;25916:6;25912:17;25907:2;25896:9;25892:18;25885:45;25978:14;25970:6;25966:27;25961:2;25950:9;25946:18;25939:55;26042:12;26034:6;26030:25;26025:2;26014:9;26010:18;26003:53;26093:6;26087:3;26076:9;26072:19;26065:35;26149:9;26141:6;26137:22;26131:3;26120:9;26116:19;26109:51;26177:32;26202:6;26194;26177:32;:::i;:::-;26169:40;25427:788;-1:-1:-1;;;;;;;;;25427:788:229:o;26220:511::-;26471:2;26460:9;26453:21;26434:4;26497:56;26549:2;26538:9;26534:18;26526:6;26497:56;:::i;:::-;26601:14;26593:6;26589:27;26584:2;26573:9;26569:18;26562:55;26665:9;26657:6;26653:22;26648:2;26637:9;26633:18;26626:50;26693:32;26718:6;26710;26693:32;:::i;26736:616::-;27047:6;27036:9;27029:25;27090:3;27085:2;27074:9;27070:18;27063:31;27010:4;27117:57;27169:3;27158:9;27154:19;27146:6;27117:57;:::i;:::-;27222:14;27214:6;27210:27;27205:2;27194:9;27190:18;27183:55;27286:9;27278:6;27274:22;27269:2;27258:9;27254:18;27247:50;27314:32;27339:6;27331;27314:32;:::i","linkReferences":{}},"methodIdentifiers":{"_msgSender()":"119df25f","_msgValue()":"45ec9354","_world()":"e1af802c","applyEquipmentBonuses(bytes32)":"9056fa28","checkRequirements(bytes32,uint256)":"9a8bb9a2","equipItems(bytes32,uint256[])":"cc77a2de","getArmorStats(uint256)":"40a5ed2a","getWeaponStats(uint256)":"63ff2287","isEquipped(bytes32,uint256)":"edcfef82","supportsInterface(bytes4)":"01ffc9a7","unequipItem(bytes32,uint256)":"b2aca84b"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"}],\"name\":\"EncodedLengths_InvalidLength\",\"type\":\"error\"},{\"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\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"accessedIndex\",\"type\":\"uint256\"}],\"name\":\"Store_IndexOutOfBounds\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes2\",\"name\":\"expected\",\"type\":\"bytes2\"},{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"Store_InvalidResourceType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint40\",\"name\":\"startWithinField\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"fieldLength\",\"type\":\"uint40\"}],\"name\":\"Store_InvalidSplice\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"indexed\":false,\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"indexed\":false,\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"indexed\":false,\"internalType\":\"EncodedLengths\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Store_SpliceDynamicData\",\"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\":\"_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\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"}],\"name\":\"applyEquipmentBonuses\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"adjustedStrength\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"adjustedAgility\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"adjustedIntelligence\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"adjustedArmor\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"adjustedMaxHp\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"currentHp\",\"type\":\"int256\"},{\"internalType\":\"uint256\",\"name\":\"level\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"class\",\"type\":\"uint256\"}],\"internalType\":\"struct AdjustedCombatStats\",\"name\":\"modifiedStats\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"}],\"name\":\"checkRequirements\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"canUse\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256[]\",\"name\":\"itemIds\",\"type\":\"uint256[]\"}],\"name\":\"equipItems\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"}],\"name\":\"getArmorStats\",\"outputs\":[{\"components\":[{\"internalType\":\"int256\",\"name\":\"agiModifier\",\"type\":\"int256\"},{\"internalType\":\"uint256\",\"name\":\"armorModifier\",\"type\":\"uint256\"},{\"internalType\":\"uint8[]\",\"name\":\"classRestrictions\",\"type\":\"uint8[]\"},{\"internalType\":\"int256\",\"name\":\"hitPointModifier\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"intModifier\",\"type\":\"int256\"},{\"internalType\":\"uint256\",\"name\":\"minLevel\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"strModifier\",\"type\":\"int256\"}],\"internalType\":\"struct ArmorStats\",\"name\":\"_ArmorStats\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"}],\"name\":\"getWeaponStats\",\"outputs\":[{\"components\":[{\"internalType\":\"int256\",\"name\":\"agiModifier\",\"type\":\"int256\"},{\"internalType\":\"uint8[]\",\"name\":\"classRestrictions\",\"type\":\"uint8[]\"},{\"internalType\":\"int256\",\"name\":\"hitPointModifier\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"intModifier\",\"type\":\"int256\"},{\"internalType\":\"uint256\",\"name\":\"maxDamage\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minDamage\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minLevel\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"strModifier\",\"type\":\"int256\"}],\"internalType\":\"struct WeaponStats\",\"name\":\"_weaponStats\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"}],\"name\":\"isEquipped\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_isEquipped\",\"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\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"}],\"name\":\"unequipItem\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"errors\":{\"EncodedLengths_InvalidLength(uint256)\":[{\"params\":{\"length\":\"The length of the encoded lengths.\"}}],\"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.\"}}],\"Store_IndexOutOfBounds(uint256,uint256)\":[{\"details\":\"Raised if the start index is larger than the previous length of the field.\",\"params\":{\"accessedIndex\":\"FIXME\",\"length\":\"FIXME\"}}],\"Store_InvalidResourceType(bytes2,bytes32,string)\":[{\"params\":{\"expected\":\"The expected resource type.\",\"resourceId\":\"The resource ID.\",\"resourceIdString\":\"The stringified resource ID (for easier debugging).\"}}],\"Store_InvalidSplice(uint40,uint40,uint40)\":[{\"details\":\"Raised if the splice total length of the field is changed but the splice is not at the end of the field.\",\"params\":{\"deleteCount\":\"The number of bytes to delete in the splice operation.\",\"fieldLength\":\"The field length for the splice operation.\",\"startWithinField\":\"The start index within the field for the splice operation.\"}}]},\"events\":{\"Store_SpliceDynamicData(bytes32,bytes32[],uint8,uint48,uint40,bytes32,bytes)\":{\"params\":{\"data\":\"The data to insert into the dynamic data of the record at the start byte.\",\"deleteCount\":\"The number of bytes to delete in the splice operation.\",\"dynamicFieldIndex\":\"The index of the dynamic field to splice data, relative to the start of the dynamic fields. (Dynamic field index = field index - number of static fields)\",\"encodedLengths\":\"The encoded lengths of the dynamic data of the record.\",\"keyTuple\":\"An array representing the composite 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.\"}},\"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.\"}},\"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\":{\"EncodedLengths_InvalidLength(uint256)\":[{\"notice\":\"Error raised when the provided encoded lengths has an invalid length.\"}],\"Slice_OutOfBounds(bytes,uint256,uint256)\":[{\"notice\":\"Error raised when the provided slice is out of bounds.\"}],\"Store_IndexOutOfBounds(uint256,uint256)\":[{\"notice\":\"Error raised if the provided index is out of bounds.\"}],\"Store_InvalidResourceType(bytes2,bytes32,string)\":[{\"notice\":\"Error raised if the provided resource ID cannot be found.\"}],\"Store_InvalidSplice(uint40,uint40,uint40)\":[{\"notice\":\"Error raised if the provided splice is invalid.\"}]},\"events\":{\"Store_SpliceDynamicData(bytes32,bytes32[],uint8,uint48,uint40,bytes32,bytes)\":{\"notice\":\"Emitted when dynamic data in the store is spliced.\"},\"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/EquipmentSystem.sol\":\"EquipmentSystem\"},\"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\":\"0xdd3ebcb4c411e951e1d5c68d6287c597f8f6ab874b48ae96600e024326bd7059\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://61cf2ec85c2dcfde0de8d6c12cdb78b59f8b94a8662dd122bc1aca013cc69c7c\",\"dweb:/ipfs/QmdsELzf5enAbpe5ERXRJgyg2PvtiAUiiX7dT85BLtKpCM\"]},\"lib/ERC1155-puppet/ERC1155System.sol\":{\"keccak256\":\"0x37bfddf9abf8e10002749d0f3e5c2d765da2359b4aa0c10549d61728da1ddae3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://77cef81d1373f77daac326d90895bbe692166b82895ae4b5f11ed92d4c5ad21c\",\"dweb:/ipfs/Qmcjk2FUweGK5McuAQh8jXjMa6t3wW4YoWtwitEKD3jqhG\"]},\"lib/ERC1155-puppet/IERC1155.sol\":{\"keccak256\":\"0xba76a0cbf29f93fdcf613ee19a3e8a36d8579628c3e657f68edd29f682cfe05d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c40994dd35444a97b97eacd9c5af7f27373c357642000bbcbcafe7169bd2179e\",\"dweb:/ipfs/QmSVGhh4AT7gkSmVtnitew14xtQFepACdhbGbWXJh39mk1\"]},\"lib/ERC1155-puppet/IERC1155Errors.sol\":{\"keccak256\":\"0x507875c8e9e6f2e706e95c565d51f20030165eb2dc241f49a42cedb96caaead2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b96ff50d61db0f5773b5322c8d3dc8b062a92f9da21bf9a821ac7bae58bcdecb\",\"dweb:/ipfs/QmcXnAhbPWL4ekfgLVPXuBRPuUUMM7zfU5xwP8pPoihnTu\"]},\"lib/ERC1155-puppet/IERC1155Events.sol\":{\"keccak256\":\"0x43dcbad156d27946650411971fabb2dcac1f234f78a5e7a776e18560c9ef64d5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://299a141df22563efaa23eb10ab2a311d3b4cc252a3f63a4c73902b198f731859\",\"dweb:/ipfs/QmbaTrv7SwCrYcQ4qyyPf4YxUFQLrcuYMy1aF5sp3VwswN\"]},\"lib/ERC1155-puppet/IERC1155MetadataURI.sol\":{\"keccak256\":\"0x73546c8cf58dc8ce002f50f172ebb8207e65856d12402f8d86fca8ba9288c4d8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c81bc7f8b4f61810c1562c0197499be6ce636313c2beb9d095455ea8ccd21ae0\",\"dweb:/ipfs/QmR67xU45dQWo51gHyaZB6wy8CbnRLg6nFvD4KeTX6mfZz\"]},\"lib/ERC1155-puppet/IERC1155Receiver.sol\":{\"keccak256\":\"0x9a6fd2d799610585460b2eeba3a38fe7706b8e7291f05411622a979fb462383f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d3c78236d3e2b76209e1e2bb175820449bb1527c0ca99e526b19a73f207d38b3\",\"dweb:/ipfs/Qma552XoWh5sYX4SSiUgwsSpTxe4qR47ozuac4nDsRetxF\"]},\"lib/ERC1155-puppet/IERC1155System.sol\":{\"keccak256\":\"0x324481afcc10bb871430340e0ddea5613a7a7dc7436ad8067b64e787791d9c74\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cbf2f86e7c18feb303c9201417a85af320f148907fa637b25b56e7484325d64c\",\"dweb:/ipfs/QmW35pffC8PK5Y7afxLc6qYYiDjH4NayRggogPazy5JsEi\"]},\"lib/ERC1155-puppet/constants.sol\":{\"keccak256\":\"0xe41618b4227fc0aaa1c22fc3972420734e23e0441a2315269de368af69d67c70\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9e67f2b3f6597a30810afaccd9cd90146b7164fc6c8e91a16261f2424b6b62ee\",\"dweb:/ipfs/QmeJoceERJVcjfH4g1YQTpZGQdUnTFSgZz2eWTRtuwKXje\"]},\"lib/ERC1155-puppet/libraries/LibString.sol\":{\"keccak256\":\"0xb53857d461ac8c546fcd96b94a9f4e34001ac555bbc7b3fc3471c52b16afe2fb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://24cae538067519ffa04a943330b10cba87d26e2c03227edd8a0ebe671186fb73\",\"dweb:/ipfs/QmcZuKmY8GyCWDSSSYAV5ZLuGyhkYhiJXb5AMvViUYgAuz\"]},\"lib/ERC1155-puppet/libraries/utils/ERC1155Utils.sol\":{\"keccak256\":\"0x981a5c3d788baf2b20b043c1a1f005fa9aa224f660233ecc63c6aa2e719b0f21\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5270b523c823caf879a3d338914d1c44070aace2825fb4fbd83d744267a26f5f\",\"dweb:/ipfs/QmVfXQPAPsr24W5rz5qDiiVp2n6owM417skseKnEHxqXmq\"]},\"lib/ERC1155-puppet/libraries/utils/draft-IERC6093.sol\":{\"keccak256\":\"0xb016571337f659bda4d98117bfd0ea8e26d5e7b696eff5cc308275b420b9120e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://72ad563fb7c394adfce5a899bc94afb6e463c2773d9de1b98cae3747f85cd779\",\"dweb:/ipfs/QmZwZGrZreuHMW7EHmzpXpN6JVtmcmQY4othHaTqR2ucV6\"]},\"lib/ERC1155-puppet/tables/ERC1155MetadataURI.sol\":{\"keccak256\":\"0x5e7be6ad3cd2280a13cbc155496131b2453d411da565d17e68df8a2b479ae3ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a6ccc261562a5c76ac720adc8634d931cae7a7ecc40c96e5db7837a262c38fe\",\"dweb:/ipfs/QmY3G99LXRifTJpJA4FqPRDUBboe8GD2PcEagu9MiwuUqL\"]},\"lib/ERC1155-puppet/tables/ERC1155URIStorage.sol\":{\"keccak256\":\"0x41b5c9f2a05119ab0cdc2ed8ebafca81338e71637dc79b218c3c35a4d901d40e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://526fc37c04ba0e53d742e26cf7e6b899f520482fd02fe484e17100eb3b1a256d\",\"dweb:/ipfs/Qmex48c3aPQYRHkduC9fxxzvAYYvnqesyP1AKZNnrXC2cQ\"]},\"lib/ERC1155-puppet/tables/OperatorApproval.sol\":{\"keccak256\":\"0xbbed481b7ccef9525cd566c8e36f42512c8de94c7431510356b35c853c2764d5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://984af22419c3ba9e19775b47cdd981872bb1aff430ebab83752a0ea3f6b6fb79\",\"dweb:/ipfs/Qmdr1FByP2aWAuursvKr126EZhNzT29H4bGs3qx9yacVfg\"]},\"lib/ERC1155-puppet/tables/Owners.sol\":{\"keccak256\":\"0x1dce77dc5f33c570e2163f8cbb9e5b3a628ae8f6abbf097dfc24422ff7d50636\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c604d7d03c963f322ed07c2978e1276e89d4a61ad2f2d6790eba98d7f663c7a3\",\"dweb:/ipfs/QmakymS49hdSh7i5igXbTX9f44A4h3yh4cFAxTaMfNvXTp\"]},\"lib/ERC1155-puppet/tables/TotalSupply.sol\":{\"keccak256\":\"0x892ee6cca8571fc5e43563a5834d5a44330a27206a838bb755f7711bbd357c4a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f3120b4a608f998c88b42a50ec33b6ffa709e7079d37f0ec88998f6fb441919b\",\"dweb:/ipfs/QmP4RFLPi75jTn19cUYXshfZgSAJoDzHAio6xGnYSK9NLE\"]},\"lib/ERC1155-puppet/utils.sol\":{\"keccak256\":\"0x4c264da22c936a784106d81aa3cdb94f54d90d46e15ad1b66b53bf28bbcbdf49\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b47674f3483134a57c6a3ac0193e6cdd3643774d12ad433de0541b8358ea9dd0\",\"dweb:/ipfs/QmSqmfS5s7aqrsLgi67b91s3f51AaDJs5F5xzioZcussXH\"]},\"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/modules/puppet/Puppet.sol\":{\"keccak256\":\"0x0793dc274d0e27b9a00369935693952f2b15e85b243ebed5994cc0c5fd806bc9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d94877420ab98c06013f327ce43e18a7dd3f9a42a33f76a5291ae8424b2699a6\",\"dweb:/ipfs/QmcpKAzLV2eKSU7Pfbb7wgkidNeWSUyUD5J2Scgio16RS8\"]},\"node_modules/@latticexyz/world-modules/src/modules/puppet/PuppetMaster.sol\":{\"keccak256\":\"0xc83209af82eba3b3452a5c62531d52edb13d69db67c768ec12989cfaf9191c72\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f1d83a60ed2e3a15cde57d6fc859ee7c76e6d089010f41189151e799eb90525c\",\"dweb:/ipfs/QmfZLVNQ9G3kkMBxu3koZbMVPqhtxGTw2iziZQbob4AFhm\"]},\"node_modules/@latticexyz/world-modules/src/modules/puppet/constants.sol\":{\"keccak256\":\"0x55dc370e83d22bd3ddb79172658731deb725c7609c1966d58cfdc5276bc20a7e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6bc27074a755a64d238f32cfd07b4226cfd47fd157f4f0829c13d8d5406d5f9d\",\"dweb:/ipfs/QmZesmQK815TdF6AuZpKZ249NXP2Qqnzmy9k3WpNRc5Cyq\"]},\"node_modules/@latticexyz/world-modules/src/modules/puppet/tables/PuppetRegistry.sol\":{\"keccak256\":\"0x37273e42577e71b80621bcaa9132b8f9d28ded452242fb478fd7e52f382b83a6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://26403866f063923a910cc1e6f4ff7b0e74e4f343b1222675658d1b9a1ecdbe14\",\"dweb:/ipfs/QmSTqLMbg9PvyFkVexVbLPUPLr1aBuBtcfnBZGbqEaje7Q\"]},\"node_modules/@latticexyz/world-modules/src/modules/puppet/utils.sol\":{\"keccak256\":\"0x0c07e1daf167a9ebcf81d1b176e4aef23d12b0bc01333c572c0482b699fd199d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7f2ec0928e530ae3b75aadfe224a5c1654d0c26b8f10e06e490274fff3871489\",\"dweb:/ipfs/QmPLfak2kwefQ5tcNFxuE9TXsQ4PVkvTraHWZU8PK9GkR4\"]},\"node_modules/@latticexyz/world-modules/src/utils/AccessControlLib.sol\":{\"keccak256\":\"0x9fb1520ec94ce3396760a235db900192b4990c78fd459c449896a74c32b83542\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4025b37988ece6915b2c867702a4a381829755dd9e5b0b0b32ade85649b00b2a\",\"dweb:/ipfs/QmUsLyetPdhtSdN3MicE1uphXWscKBPSBif8Sd83RC1E6Z\"]},\"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/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/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/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/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\":\"0x84ff02d4275be694bfbe1e60e24539a891dda5df3bacf04f0eb2a974425603d0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f88775b86cdc8322742e528072b64d01df3d3ef70d4fc5104412522e468ae4e2\",\"dweb:/ipfs/Qme75CeS2sA8pr1Tyx9GN5atmuG4aBGjMPaagaGtYTjc2R\"]},\"src/codegen/tables/Actions.sol\":{\"keccak256\":\"0x63cd48bebaa0414728e9be2c856e4eb01efaead6627a6615da4c77b886805cef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1dfe138555b67362f41c26ce1ab074bfc1fcc4e7c6fd0284b82cc699d80d392\",\"dweb:/ipfs/QmNf8UGE3FZ4U96HkeioE4peWWz1SKPAjhKRrGnpEnCdkQ\"]},\"src/codegen/tables/Admin.sol\":{\"keccak256\":\"0xe3b7e993ca2e420d73b845fb37388d453486e24522b941503a2f81c639769725\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e638c35d3ec5805180122b70849bd3a93aa680f3251ac9e7fe4f0ff24722f614\",\"dweb:/ipfs/QmVL3xJPrsVDgXQTdxBEkq4PRmyNDCFHGHKJxLQzuFy9XJ\"]},\"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/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\":\"0x1f0b21a82c18d474347446546973619289392ee9cc745eccbfb4ba802771b2e2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f0a514e9aa8c0265e8ac7284587cdfec829ad4904e511a284d44a325f9ee511b\",\"dweb:/ipfs/QmYGbphJpnBQMsTEtAM78kqH56FrzrmBFVNthRM4WLdUSQ\"]},\"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\":\"0x3ea10f6af2b29e07f658e961113a68db383bb5df7ec853bd797bd1cc14d19b0d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c834cb0bb80ffe10c6175f8a16b827dde9804d459e6aa33691484e419587d47f\",\"dweb:/ipfs/QmXnLXquHjNXN8CCsEL3NPNrQHW6UWY78oginRPtcHZFcw\"]},\"src/codegen/world/ICharacterSystem.sol\":{\"keccak256\":\"0x54157279932a37b055d247901f034848c1f0bffbf262028cf9c69eeedc9b7235\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ead77ae9ab020f705a998be6229e975b9352486deaa9aa800b6de10338190782\",\"dweb:/ipfs/QmaLrytghaAH6ipaBr4XwsaBcCzeVa5gujHGRNxeztuo4X\"]},\"src/codegen/world/ICombatSystem.sol\":{\"keccak256\":\"0x8b522a844626b33d69ae186dd26f2f7bfd921bf92ed7ed0cee2b8c349d9b64f9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://647f99949a4584cf4b528415ffea01ad243147548455fe5a8373b042b6af3087\",\"dweb:/ipfs/QmYsgXQDTwrqg7YSJkKtiNZzf63f4jdA4xfni5gb9ap5K5\"]},\"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\":\"0xc6caadf1800d688083c234a12cd151746f0271be03a50bb6a654634270ab0864\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://084766afac89e6f74162f69534635f90ec56570019223e22d20342f7853fb4e0\",\"dweb:/ipfs/QmbrQXrTewfgW2NydLgPCdt3Vton5V7nfE7HViXtyrMnoK\"]},\"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\":\"0xfb774a3d4388291fa5bae54bf1c592cc366a0585e6d24388dfeebaf3abd666b4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0986371fcb9f53bac88f2c190faf0f5a77fac686eced664aed5f2f1eb6eaca64\",\"dweb:/ipfs/QmWdgLEV31t27nNQC1KGEfaZHFcuBUayxHm2giZJpAG8hv\"]},\"src/interfaces/Structs.sol\":{\"keccak256\":\"0x6259111a19c9e329bd16a154bca9afa89339ce179d278647e34bcdff1868d0de\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c67088e2ecdb887174b16cdaf87299ad3b3871d7ce1f8c4c51e8def5e6cc8fb5\",\"dweb:/ipfs/QmR2SXkYEkSqaacU6rWGsLdZiefy5kcsVqhvzg4Kob2fk1\"]},\"src/systems/EquipmentSystem.sol\":{\"keccak256\":\"0x7e53f688f6d9748cdd7faab5d89553e2a94a6b7d361d1919a5bbf1e7730e7cf4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://22204a37cc1c70309ab4f5185d28157a6176862e857cf3361ba51c058bf50a1a\",\"dweb:/ipfs/QmTdeU74goNb1ueCfLcpE84oQyWtRFwnjmCGFerKVGE4RB\"]},\"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":"uint256","name":"length","type":"uint256"}],"type":"error","name":"EncodedLengths_InvalidLength"},{"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":"uint256","name":"length","type":"uint256"},{"internalType":"uint256","name":"accessedIndex","type":"uint256"}],"type":"error","name":"Store_IndexOutOfBounds"},{"inputs":[{"internalType":"bytes2","name":"expected","type":"bytes2"},{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"Store_InvalidResourceType"},{"inputs":[{"internalType":"uint40","name":"startWithinField","type":"uint40"},{"internalType":"uint40","name":"deleteCount","type":"uint40"},{"internalType":"uint40","name":"fieldLength","type":"uint40"}],"type":"error","name":"Store_InvalidSplice"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]","indexed":false},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8","indexed":false},{"internalType":"uint48","name":"start","type":"uint48","indexed":false},{"internalType":"uint40","name":"deleteCount","type":"uint40","indexed":false},{"internalType":"EncodedLengths","name":"encodedLengths","type":"bytes32","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Store_SpliceDynamicData","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":"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":"bytes32","name":"entityId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"applyEquipmentBonuses","outputs":[{"internalType":"struct AdjustedCombatStats","name":"modifiedStats","type":"tuple","components":[{"internalType":"uint256","name":"adjustedStrength","type":"uint256"},{"internalType":"uint256","name":"adjustedAgility","type":"uint256"},{"internalType":"uint256","name":"adjustedIntelligence","type":"uint256"},{"internalType":"uint256","name":"adjustedArmor","type":"uint256"},{"internalType":"uint256","name":"adjustedMaxHp","type":"uint256"},{"internalType":"int256","name":"currentHp","type":"int256"},{"internalType":"uint256","name":"level","type":"uint256"},{"internalType":"uint256","name":"class","type":"uint256"}]}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"uint256","name":"itemId","type":"uint256"}],"stateMutability":"view","type":"function","name":"checkRequirements","outputs":[{"internalType":"bool","name":"canUse","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"uint256[]","name":"itemIds","type":"uint256[]"}],"stateMutability":"nonpayable","type":"function","name":"equipItems"},{"inputs":[{"internalType":"uint256","name":"itemId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getArmorStats","outputs":[{"internalType":"struct ArmorStats","name":"_ArmorStats","type":"tuple","components":[{"internalType":"int256","name":"agiModifier","type":"int256"},{"internalType":"uint256","name":"armorModifier","type":"uint256"},{"internalType":"uint8[]","name":"classRestrictions","type":"uint8[]"},{"internalType":"int256","name":"hitPointModifier","type":"int256"},{"internalType":"int256","name":"intModifier","type":"int256"},{"internalType":"uint256","name":"minLevel","type":"uint256"},{"internalType":"int256","name":"strModifier","type":"int256"}]}]},{"inputs":[{"internalType":"uint256","name":"itemId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getWeaponStats","outputs":[{"internalType":"struct WeaponStats","name":"_weaponStats","type":"tuple","components":[{"internalType":"int256","name":"agiModifier","type":"int256"},{"internalType":"uint8[]","name":"classRestrictions","type":"uint8[]"},{"internalType":"int256","name":"hitPointModifier","type":"int256"},{"internalType":"int256","name":"intModifier","type":"int256"},{"internalType":"uint256","name":"maxDamage","type":"uint256"},{"internalType":"uint256","name":"minDamage","type":"uint256"},{"internalType":"uint256","name":"minLevel","type":"uint256"},{"internalType":"int256","name":"strModifier","type":"int256"}]}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"uint256","name":"itemId","type":"uint256"}],"stateMutability":"view","type":"function","name":"isEquipped","outputs":[{"internalType":"bool","name":"_isEquipped","type":"bool"}]},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"pure","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"uint256","name":"itemId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"unequipItem","outputs":[{"internalType":"bool","name":"success","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."}},"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/EquipmentSystem.sol":"EquipmentSystem"},"evmVersion":"paris","libraries":{}},"sources":{"constants.sol":{"keccak256":"0xdd3ebcb4c411e951e1d5c68d6287c597f8f6ab874b48ae96600e024326bd7059","urls":["bzz-raw://61cf2ec85c2dcfde0de8d6c12cdb78b59f8b94a8662dd122bc1aca013cc69c7c","dweb:/ipfs/QmdsELzf5enAbpe5ERXRJgyg2PvtiAUiiX7dT85BLtKpCM"],"license":"MIT"},"lib/ERC1155-puppet/ERC1155System.sol":{"keccak256":"0x37bfddf9abf8e10002749d0f3e5c2d765da2359b4aa0c10549d61728da1ddae3","urls":["bzz-raw://77cef81d1373f77daac326d90895bbe692166b82895ae4b5f11ed92d4c5ad21c","dweb:/ipfs/Qmcjk2FUweGK5McuAQh8jXjMa6t3wW4YoWtwitEKD3jqhG"],"license":"MIT"},"lib/ERC1155-puppet/IERC1155.sol":{"keccak256":"0xba76a0cbf29f93fdcf613ee19a3e8a36d8579628c3e657f68edd29f682cfe05d","urls":["bzz-raw://c40994dd35444a97b97eacd9c5af7f27373c357642000bbcbcafe7169bd2179e","dweb:/ipfs/QmSVGhh4AT7gkSmVtnitew14xtQFepACdhbGbWXJh39mk1"],"license":"MIT"},"lib/ERC1155-puppet/IERC1155Errors.sol":{"keccak256":"0x507875c8e9e6f2e706e95c565d51f20030165eb2dc241f49a42cedb96caaead2","urls":["bzz-raw://b96ff50d61db0f5773b5322c8d3dc8b062a92f9da21bf9a821ac7bae58bcdecb","dweb:/ipfs/QmcXnAhbPWL4ekfgLVPXuBRPuUUMM7zfU5xwP8pPoihnTu"],"license":"MIT"},"lib/ERC1155-puppet/IERC1155Events.sol":{"keccak256":"0x43dcbad156d27946650411971fabb2dcac1f234f78a5e7a776e18560c9ef64d5","urls":["bzz-raw://299a141df22563efaa23eb10ab2a311d3b4cc252a3f63a4c73902b198f731859","dweb:/ipfs/QmbaTrv7SwCrYcQ4qyyPf4YxUFQLrcuYMy1aF5sp3VwswN"],"license":"MIT"},"lib/ERC1155-puppet/IERC1155MetadataURI.sol":{"keccak256":"0x73546c8cf58dc8ce002f50f172ebb8207e65856d12402f8d86fca8ba9288c4d8","urls":["bzz-raw://c81bc7f8b4f61810c1562c0197499be6ce636313c2beb9d095455ea8ccd21ae0","dweb:/ipfs/QmR67xU45dQWo51gHyaZB6wy8CbnRLg6nFvD4KeTX6mfZz"],"license":"MIT"},"lib/ERC1155-puppet/IERC1155Receiver.sol":{"keccak256":"0x9a6fd2d799610585460b2eeba3a38fe7706b8e7291f05411622a979fb462383f","urls":["bzz-raw://d3c78236d3e2b76209e1e2bb175820449bb1527c0ca99e526b19a73f207d38b3","dweb:/ipfs/Qma552XoWh5sYX4SSiUgwsSpTxe4qR47ozuac4nDsRetxF"],"license":"MIT"},"lib/ERC1155-puppet/IERC1155System.sol":{"keccak256":"0x324481afcc10bb871430340e0ddea5613a7a7dc7436ad8067b64e787791d9c74","urls":["bzz-raw://cbf2f86e7c18feb303c9201417a85af320f148907fa637b25b56e7484325d64c","dweb:/ipfs/QmW35pffC8PK5Y7afxLc6qYYiDjH4NayRggogPazy5JsEi"],"license":"MIT"},"lib/ERC1155-puppet/constants.sol":{"keccak256":"0xe41618b4227fc0aaa1c22fc3972420734e23e0441a2315269de368af69d67c70","urls":["bzz-raw://9e67f2b3f6597a30810afaccd9cd90146b7164fc6c8e91a16261f2424b6b62ee","dweb:/ipfs/QmeJoceERJVcjfH4g1YQTpZGQdUnTFSgZz2eWTRtuwKXje"],"license":"MIT"},"lib/ERC1155-puppet/libraries/LibString.sol":{"keccak256":"0xb53857d461ac8c546fcd96b94a9f4e34001ac555bbc7b3fc3471c52b16afe2fb","urls":["bzz-raw://24cae538067519ffa04a943330b10cba87d26e2c03227edd8a0ebe671186fb73","dweb:/ipfs/QmcZuKmY8GyCWDSSSYAV5ZLuGyhkYhiJXb5AMvViUYgAuz"],"license":"MIT"},"lib/ERC1155-puppet/libraries/utils/ERC1155Utils.sol":{"keccak256":"0x981a5c3d788baf2b20b043c1a1f005fa9aa224f660233ecc63c6aa2e719b0f21","urls":["bzz-raw://5270b523c823caf879a3d338914d1c44070aace2825fb4fbd83d744267a26f5f","dweb:/ipfs/QmVfXQPAPsr24W5rz5qDiiVp2n6owM417skseKnEHxqXmq"],"license":"MIT"},"lib/ERC1155-puppet/libraries/utils/draft-IERC6093.sol":{"keccak256":"0xb016571337f659bda4d98117bfd0ea8e26d5e7b696eff5cc308275b420b9120e","urls":["bzz-raw://72ad563fb7c394adfce5a899bc94afb6e463c2773d9de1b98cae3747f85cd779","dweb:/ipfs/QmZwZGrZreuHMW7EHmzpXpN6JVtmcmQY4othHaTqR2ucV6"],"license":"MIT"},"lib/ERC1155-puppet/tables/ERC1155MetadataURI.sol":{"keccak256":"0x5e7be6ad3cd2280a13cbc155496131b2453d411da565d17e68df8a2b479ae3ea","urls":["bzz-raw://1a6ccc261562a5c76ac720adc8634d931cae7a7ecc40c96e5db7837a262c38fe","dweb:/ipfs/QmY3G99LXRifTJpJA4FqPRDUBboe8GD2PcEagu9MiwuUqL"],"license":"MIT"},"lib/ERC1155-puppet/tables/ERC1155URIStorage.sol":{"keccak256":"0x41b5c9f2a05119ab0cdc2ed8ebafca81338e71637dc79b218c3c35a4d901d40e","urls":["bzz-raw://526fc37c04ba0e53d742e26cf7e6b899f520482fd02fe484e17100eb3b1a256d","dweb:/ipfs/Qmex48c3aPQYRHkduC9fxxzvAYYvnqesyP1AKZNnrXC2cQ"],"license":"MIT"},"lib/ERC1155-puppet/tables/OperatorApproval.sol":{"keccak256":"0xbbed481b7ccef9525cd566c8e36f42512c8de94c7431510356b35c853c2764d5","urls":["bzz-raw://984af22419c3ba9e19775b47cdd981872bb1aff430ebab83752a0ea3f6b6fb79","dweb:/ipfs/Qmdr1FByP2aWAuursvKr126EZhNzT29H4bGs3qx9yacVfg"],"license":"MIT"},"lib/ERC1155-puppet/tables/Owners.sol":{"keccak256":"0x1dce77dc5f33c570e2163f8cbb9e5b3a628ae8f6abbf097dfc24422ff7d50636","urls":["bzz-raw://c604d7d03c963f322ed07c2978e1276e89d4a61ad2f2d6790eba98d7f663c7a3","dweb:/ipfs/QmakymS49hdSh7i5igXbTX9f44A4h3yh4cFAxTaMfNvXTp"],"license":"MIT"},"lib/ERC1155-puppet/tables/TotalSupply.sol":{"keccak256":"0x892ee6cca8571fc5e43563a5834d5a44330a27206a838bb755f7711bbd357c4a","urls":["bzz-raw://f3120b4a608f998c88b42a50ec33b6ffa709e7079d37f0ec88998f6fb441919b","dweb:/ipfs/QmP4RFLPi75jTn19cUYXshfZgSAJoDzHAio6xGnYSK9NLE"],"license":"MIT"},"lib/ERC1155-puppet/utils.sol":{"keccak256":"0x4c264da22c936a784106d81aa3cdb94f54d90d46e15ad1b66b53bf28bbcbdf49","urls":["bzz-raw://b47674f3483134a57c6a3ac0193e6cdd3643774d12ad433de0541b8358ea9dd0","dweb:/ipfs/QmSqmfS5s7aqrsLgi67b91s3f51AaDJs5F5xzioZcussXH"],"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/modules/puppet/Puppet.sol":{"keccak256":"0x0793dc274d0e27b9a00369935693952f2b15e85b243ebed5994cc0c5fd806bc9","urls":["bzz-raw://d94877420ab98c06013f327ce43e18a7dd3f9a42a33f76a5291ae8424b2699a6","dweb:/ipfs/QmcpKAzLV2eKSU7Pfbb7wgkidNeWSUyUD5J2Scgio16RS8"],"license":"MIT"},"node_modules/@latticexyz/world-modules/src/modules/puppet/PuppetMaster.sol":{"keccak256":"0xc83209af82eba3b3452a5c62531d52edb13d69db67c768ec12989cfaf9191c72","urls":["bzz-raw://f1d83a60ed2e3a15cde57d6fc859ee7c76e6d089010f41189151e799eb90525c","dweb:/ipfs/QmfZLVNQ9G3kkMBxu3koZbMVPqhtxGTw2iziZQbob4AFhm"],"license":"MIT"},"node_modules/@latticexyz/world-modules/src/modules/puppet/constants.sol":{"keccak256":"0x55dc370e83d22bd3ddb79172658731deb725c7609c1966d58cfdc5276bc20a7e","urls":["bzz-raw://6bc27074a755a64d238f32cfd07b4226cfd47fd157f4f0829c13d8d5406d5f9d","dweb:/ipfs/QmZesmQK815TdF6AuZpKZ249NXP2Qqnzmy9k3WpNRc5Cyq"],"license":"MIT"},"node_modules/@latticexyz/world-modules/src/modules/puppet/tables/PuppetRegistry.sol":{"keccak256":"0x37273e42577e71b80621bcaa9132b8f9d28ded452242fb478fd7e52f382b83a6","urls":["bzz-raw://26403866f063923a910cc1e6f4ff7b0e74e4f343b1222675658d1b9a1ecdbe14","dweb:/ipfs/QmSTqLMbg9PvyFkVexVbLPUPLr1aBuBtcfnBZGbqEaje7Q"],"license":"MIT"},"node_modules/@latticexyz/world-modules/src/modules/puppet/utils.sol":{"keccak256":"0x0c07e1daf167a9ebcf81d1b176e4aef23d12b0bc01333c572c0482b699fd199d","urls":["bzz-raw://7f2ec0928e530ae3b75aadfe224a5c1654d0c26b8f10e06e490274fff3871489","dweb:/ipfs/QmPLfak2kwefQ5tcNFxuE9TXsQ4PVkvTraHWZU8PK9GkR4"],"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/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/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/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/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/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":"0x84ff02d4275be694bfbe1e60e24539a891dda5df3bacf04f0eb2a974425603d0","urls":["bzz-raw://f88775b86cdc8322742e528072b64d01df3d3ef70d4fc5104412522e468ae4e2","dweb:/ipfs/Qme75CeS2sA8pr1Tyx9GN5atmuG4aBGjMPaagaGtYTjc2R"],"license":"MIT"},"src/codegen/tables/Actions.sol":{"keccak256":"0x63cd48bebaa0414728e9be2c856e4eb01efaead6627a6615da4c77b886805cef","urls":["bzz-raw://c1dfe138555b67362f41c26ce1ab074bfc1fcc4e7c6fd0284b82cc699d80d392","dweb:/ipfs/QmNf8UGE3FZ4U96HkeioE4peWWz1SKPAjhKRrGnpEnCdkQ"],"license":"MIT"},"src/codegen/tables/Admin.sol":{"keccak256":"0xe3b7e993ca2e420d73b845fb37388d453486e24522b941503a2f81c639769725","urls":["bzz-raw://e638c35d3ec5805180122b70849bd3a93aa680f3251ac9e7fe4f0ff24722f614","dweb:/ipfs/QmVL3xJPrsVDgXQTdxBEkq4PRmyNDCFHGHKJxLQzuFy9XJ"],"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/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":"0x1f0b21a82c18d474347446546973619289392ee9cc745eccbfb4ba802771b2e2","urls":["bzz-raw://f0a514e9aa8c0265e8ac7284587cdfec829ad4904e511a284d44a325f9ee511b","dweb:/ipfs/QmYGbphJpnBQMsTEtAM78kqH56FrzrmBFVNthRM4WLdUSQ"],"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":"0x3ea10f6af2b29e07f658e961113a68db383bb5df7ec853bd797bd1cc14d19b0d","urls":["bzz-raw://c834cb0bb80ffe10c6175f8a16b827dde9804d459e6aa33691484e419587d47f","dweb:/ipfs/QmXnLXquHjNXN8CCsEL3NPNrQHW6UWY78oginRPtcHZFcw"],"license":"MIT"},"src/codegen/world/ICharacterSystem.sol":{"keccak256":"0x54157279932a37b055d247901f034848c1f0bffbf262028cf9c69eeedc9b7235","urls":["bzz-raw://ead77ae9ab020f705a998be6229e975b9352486deaa9aa800b6de10338190782","dweb:/ipfs/QmaLrytghaAH6ipaBr4XwsaBcCzeVa5gujHGRNxeztuo4X"],"license":"MIT"},"src/codegen/world/ICombatSystem.sol":{"keccak256":"0x8b522a844626b33d69ae186dd26f2f7bfd921bf92ed7ed0cee2b8c349d9b64f9","urls":["bzz-raw://647f99949a4584cf4b528415ffea01ad243147548455fe5a8373b042b6af3087","dweb:/ipfs/QmYsgXQDTwrqg7YSJkKtiNZzf63f4jdA4xfni5gb9ap5K5"],"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":"0xc6caadf1800d688083c234a12cd151746f0271be03a50bb6a654634270ab0864","urls":["bzz-raw://084766afac89e6f74162f69534635f90ec56570019223e22d20342f7853fb4e0","dweb:/ipfs/QmbrQXrTewfgW2NydLgPCdt3Vton5V7nfE7HViXtyrMnoK"],"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":"0xfb774a3d4388291fa5bae54bf1c592cc366a0585e6d24388dfeebaf3abd666b4","urls":["bzz-raw://0986371fcb9f53bac88f2c190faf0f5a77fac686eced664aed5f2f1eb6eaca64","dweb:/ipfs/QmWdgLEV31t27nNQC1KGEfaZHFcuBUayxHm2giZJpAG8hv"],"license":"MIT"},"src/interfaces/Structs.sol":{"keccak256":"0x6259111a19c9e329bd16a154bca9afa89339ce179d278647e34bcdff1868d0de","urls":["bzz-raw://c67088e2ecdb887174b16cdaf87299ad3b3871d7ce1f8c4c51e8def5e6cc8fb5","dweb:/ipfs/QmR2SXkYEkSqaacU6rWGsLdZiefy5kcsVqhvzg4Kob2fk1"],"license":"MIT"},"src/systems/EquipmentSystem.sol":{"keccak256":"0x7e53f688f6d9748cdd7faab5d89553e2a94a6b7d361d1919a5bbf1e7730e7cf4","urls":["bzz-raw://22204a37cc1c70309ab4f5185d28157a6176862e857cf3361ba51c058bf50a1a","dweb:/ipfs/QmTdeU74goNb1ueCfLcpE84oQyWtRFwnjmCGFerKVGE4RB"],"license":"MIT"},"src/utils.sol":{"keccak256":"0xf50d451bb280fb33e08f521e168952f5145e69eee7df284ffeb1865b8b5187cc","urls":["bzz-raw://a78e6326639bdf19f606921e48c90663f387cbfd7d8160a461838e9ca6a0fc57","dweb:/ipfs/QmPT6PNCCQKWVP9bwYC4JyfuXJSgbupsgq6MT898gYfa1q"],"license":"MIT"}},"version":1},"id":213} \ No newline at end of file diff --git a/packages/contracts/out/IWorld.sol/IWorld.abi.json b/packages/contracts/out/IWorld.sol/IWorld.abi.json index d1b793391..71f66f497 100644 --- a/packages/contracts/out/IWorld.sol/IWorld.abi.json +++ b/packages/contracts/out/IWorld.sol/IWorld.abi.json @@ -1417,7 +1417,7 @@ "internalType": "uint256" }, { - "name": "baseHitPoints", + "name": "baseHp", "type": "uint256", "internalType": "uint256" }, diff --git a/packages/contracts/out/IWorld.sol/IWorld.abi.json.d.ts b/packages/contracts/out/IWorld.sol/IWorld.abi.json.d.ts index af9daa156..74c813451 100644 --- a/packages/contracts/out/IWorld.sol/IWorld.abi.json.d.ts +++ b/packages/contracts/out/IWorld.sol/IWorld.abi.json.d.ts @@ -1417,7 +1417,7 @@ declare const abi: [ "internalType": "uint256" }, { - "name": "baseHitPoints", + "name": "baseHp", "type": "uint256", "internalType": "uint256" }, diff --git a/packages/contracts/out/IWorld.sol/IWorld.json b/packages/contracts/out/IWorld.sol/IWorld.json index 6b00f9c42..3fbc9bbe7 100644 --- a/packages/contracts/out/IWorld.sol/IWorld.json +++ b/packages/contracts/out/IWorld.sol/IWorld.json @@ -1 +1 @@ -{"abi":[{"type":"function","name":"UD___calculateMagicAttack","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"UD___calculatePhysicalAttack","inputs":[{"name":"attackStats","type":"tuple","internalType":"struct PhysicalAttackStats","components":[{"name":"bonusDamage","type":"int256","internalType":"int256"},{"name":"armorPenetration","type":"int256","internalType":"int256"},{"name":"attackModifierBonus","type":"int256","internalType":"int256"},{"name":"critChanceBonus","type":"int256","internalType":"int256"},{"name":"classRestrictions","type":"uint8[]","internalType":"uint8[]"}]},{"name":"attackerId","type":"bytes32","internalType":"bytes32"},{"name":"defenderId","type":"bytes32","internalType":"bytes32"},{"name":"weaponId","type":"uint256","internalType":"uint256"},{"name":"randomNumber","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"damage","type":"int256","internalType":"int256"},{"name":"hit","type":"bool","internalType":"bool"},{"name":"crit","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"UD__applyEquipmentBonuses","inputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"modifiedStats","type":"tuple","internalType":"struct AdjustedCombatStats","components":[{"name":"adjustedStrength","type":"uint256","internalType":"uint256"},{"name":"adjustedAgility","type":"uint256","internalType":"uint256"},{"name":"adjustedIntelligence","type":"uint256","internalType":"uint256"},{"name":"adjustedArmor","type":"uint256","internalType":"uint256"},{"name":"adjustedMaxHp","type":"uint256","internalType":"uint256"},{"name":"currentHp","type":"int256","internalType":"int256"},{"name":"level","type":"uint256","internalType":"uint256"},{"name":"class","type":"uint256","internalType":"uint256"}]}],"stateMutability":"view"},{"type":"function","name":"UD__assignActionToCharacter","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"actionId","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"UD__calculateGoldDrop","inputs":[{"name":"mobLevel","type":"uint256","internalType":"uint256"},{"name":"randomNumber","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"dropAmount","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"UD__calculateItemDrop","inputs":[{"name":"randomNumber","type":"uint256","internalType":"uint256"},{"name":"itemId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"UD__checkRequirements","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"itemId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"canUse","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"UD__createAction","inputs":[{"name":"actionType","type":"uint8","internalType":"enum ActionType"},{"name":"actionStats","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"actionId","type":"bytes32","internalType":"bytes32"}],"stateMutability":"nonpayable"},{"type":"function","name":"UD__createItem","inputs":[{"name":"itemType","type":"uint8","internalType":"enum ItemType"},{"name":"supply","type":"uint256","internalType":"uint256"},{"name":"dropChance","type":"uint256","internalType":"uint256"},{"name":"stats","type":"bytes","internalType":"bytes"},{"name":"itemMetadataURI","type":"string","internalType":"string"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"UD__createItems","inputs":[{"name":"itemTypes","type":"uint8[]","internalType":"enum ItemType[]"},{"name":"supply","type":"uint256[]","internalType":"uint256[]"},{"name":"dropChances","type":"uint256[]","internalType":"uint256[]"},{"name":"stats","type":"bytes[]","internalType":"bytes[]"},{"name":"itemMetadataURIs","type":"string[]","internalType":"string[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"UD__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":"UD__createMob","inputs":[{"name":"mobType","type":"uint8","internalType":"enum MobType"},{"name":"stats","type":"bytes","internalType":"bytes"},{"name":"mobMetadataUri","type":"string","internalType":"string"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"UD__createMobs","inputs":[{"name":"mobTypes","type":"uint8[]","internalType":"enum MobType[]"},{"name":"stats","type":"bytes[]","internalType":"bytes[]"},{"name":"mobMetadataURIs","type":"string[]","internalType":"string[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"UD__dropGold","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"UD__dropItem","inputs":[{"name":"itemId","type":"uint256","internalType":"uint256"},{"name":"amount","type":"uint256","internalType":"uint256"},{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"UD__dropItems","inputs":[{"name":"itemIds","type":"uint256[]","internalType":"uint256[]"},{"name":"amounts","type":"uint256[]","internalType":"uint256[]"},{"name":"characterIds","type":"bytes32[]","internalType":"bytes32[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"UD__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":"UD__enterGame","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"UD__equipAction","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"actionId","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"UD__equipItems","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"itemIds","type":"uint256[]","internalType":"uint256[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"UD__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":"UD__getArmorStats","inputs":[{"name":"itemId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"_ArmorStats","type":"tuple","internalType":"struct ArmorStats","components":[{"name":"agiModifier","type":"int256","internalType":"int256"},{"name":"armorModifier","type":"uint256","internalType":"uint256"},{"name":"classRestrictions","type":"uint8[]","internalType":"uint8[]"},{"name":"hitPointModifier","type":"int256","internalType":"int256"},{"name":"intModifier","type":"int256","internalType":"int256"},{"name":"minLevel","type":"uint256","internalType":"uint256"},{"name":"strModifier","type":"int256","internalType":"int256"}]}],"stateMutability":"view"},{"type":"function","name":"UD__getCharacterToken","inputs":[],"outputs":[{"name":"_characterToken","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"UD__getCharacterTokenId","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"pure"},{"type":"function","name":"UD__getClass","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"_class","type":"uint8","internalType":"enum Classes"}],"stateMutability":"view"},{"type":"function","name":"UD__getCurrentAvailableLevel","inputs":[{"name":"experience","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"currentLevel","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"UD__getCurrentItemsCounter","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"UD__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":"UD__getEntitiesAtPosition","inputs":[{"name":"x","type":"uint16","internalType":"uint16"},{"name":"y","type":"uint16","internalType":"uint16"}],"outputs":[{"name":"entitiesAtPosition","type":"bytes32[]","internalType":"bytes32[]"}],"stateMutability":"view"},{"type":"function","name":"UD__getEntropy","inputs":[],"outputs":[{"name":"_entropy","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"UD__getExperience","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"UD__getGoldToken","inputs":[],"outputs":[{"name":"_goldToken","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"UD__getItemType","inputs":[{"name":"itemId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint8","internalType":"enum ItemType"}],"stateMutability":"view"},{"type":"function","name":"UD__getItemsContract","inputs":[],"outputs":[{"name":"_erc1155","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"UD__getLootManagerSystem","inputs":[],"outputs":[{"name":"_lootManager","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"UD__getMob","inputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"tuple","internalType":"struct MobsData","components":[{"name":"mobType","type":"uint8","internalType":"enum MobType"},{"name":"mobStats","type":"bytes","internalType":"bytes"},{"name":"mobMetadata","type":"string","internalType":"string"}]}],"stateMutability":"view"},{"type":"function","name":"UD__getMob","inputs":[{"name":"mobId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"tuple","internalType":"struct MobsData","components":[{"name":"mobType","type":"uint8","internalType":"enum MobType"},{"name":"mobStats","type":"bytes","internalType":"bytes"},{"name":"mobMetadata","type":"string","internalType":"string"}]}],"stateMutability":"view"},{"type":"function","name":"UD__getMobId","inputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"pure"},{"type":"function","name":"UD__getMobPosition","inputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"x","type":"uint16","internalType":"uint16"},{"name":"y","type":"uint16","internalType":"uint16"}],"stateMutability":"pure"},{"type":"function","name":"UD__getMonsterStats","inputs":[{"name":"mobId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"tuple","internalType":"struct MonsterStats","components":[{"name":"agility","type":"uint256","internalType":"uint256"},{"name":"armor","type":"uint256","internalType":"uint256"},{"name":"class","type":"uint8","internalType":"enum Classes"},{"name":"experience","type":"uint256","internalType":"uint256"},{"name":"hitPoints","type":"uint256","internalType":"uint256"},{"name":"intelligence","type":"uint256","internalType":"uint256"},{"name":"inventory","type":"uint256[]","internalType":"uint256[]"},{"name":"level","type":"uint256","internalType":"uint256"},{"name":"strength","type":"uint256","internalType":"uint256"}]}],"stateMutability":"view"},{"type":"function","name":"UD__getMonsterStats","inputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"tuple","internalType":"struct MonsterStats","components":[{"name":"agility","type":"uint256","internalType":"uint256"},{"name":"armor","type":"uint256","internalType":"uint256"},{"name":"class","type":"uint8","internalType":"enum Classes"},{"name":"experience","type":"uint256","internalType":"uint256"},{"name":"hitPoints","type":"uint256","internalType":"uint256"},{"name":"intelligence","type":"uint256","internalType":"uint256"},{"name":"inventory","type":"uint256[]","internalType":"uint256[]"},{"name":"level","type":"uint256","internalType":"uint256"},{"name":"strength","type":"uint256","internalType":"uint256"}]}],"stateMutability":"view"},{"type":"function","name":"UD__getName","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"_name","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"UD__getNpcStats","inputs":[{"name":"mobId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"tuple","internalType":"struct NPCStats","components":[{"name":"name","type":"string","internalType":"string"},{"name":"storyPathIds","type":"bytes32[]","internalType":"bytes32[]"},{"name":"alignment","type":"uint8","internalType":"enum Alignment"}]}],"stateMutability":"view"},{"type":"function","name":"UD__getNpcStats","inputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"tuple","internalType":"struct NPCStats","components":[{"name":"name","type":"string","internalType":"string"},{"name":"storyPathIds","type":"bytes32[]","internalType":"bytes32[]"},{"name":"alignment","type":"uint8","internalType":"enum Alignment"}]}],"stateMutability":"view"},{"type":"function","name":"UD__getOwner","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"UD__getOwnerAddress","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"UD__getPlayerEntityId","inputs":[{"name":"characterTokenId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"UD__getPythProvider","inputs":[],"outputs":[{"name":"_provider","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"UD__getSpawnCounter","inputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"pure"},{"type":"function","name":"UD__getStarterItems","inputs":[{"name":"class","type":"uint8","internalType":"enum Classes"}],"outputs":[{"name":"data","type":"tuple","internalType":"struct StarterItemsData","components":[{"name":"itemIds","type":"uint256[]","internalType":"uint256[]"},{"name":"amounts","type":"uint256[]","internalType":"uint256[]"}]}],"stateMutability":"view"},{"type":"function","name":"UD__getStats","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"tuple","internalType":"struct StatsData","components":[{"name":"strength","type":"uint256","internalType":"uint256"},{"name":"agility","type":"uint256","internalType":"uint256"},{"name":"class","type":"uint8","internalType":"enum Classes"},{"name":"intelligence","type":"uint256","internalType":"uint256"},{"name":"baseHitPoints","type":"uint256","internalType":"uint256"},{"name":"currentHp","type":"int256","internalType":"int256"},{"name":"experience","type":"uint256","internalType":"uint256"},{"name":"level","type":"uint256","internalType":"uint256"}]}],"stateMutability":"view"},{"type":"function","name":"UD__getTotalSupply","inputs":[{"name":"tokenId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"_supply","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"UD__getWeaponStats","inputs":[{"name":"itemId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"_weaponStats","type":"tuple","internalType":"struct WeaponStats","components":[{"name":"agiModifier","type":"int256","internalType":"int256"},{"name":"classRestrictions","type":"uint8[]","internalType":"uint8[]"},{"name":"hitPointModifier","type":"int256","internalType":"int256"},{"name":"intModifier","type":"int256","internalType":"int256"},{"name":"maxDamage","type":"uint256","internalType":"uint256"},{"name":"minDamage","type":"uint256","internalType":"uint256"},{"name":"minLevel","type":"uint256","internalType":"uint256"},{"name":"strModifier","type":"int256","internalType":"int256"}]}],"stateMutability":"view"},{"type":"function","name":"UD__isAtPosition","inputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"},{"name":"x","type":"uint16","internalType":"uint16"},{"name":"y","type":"uint16","internalType":"uint16"}],"outputs":[{"name":"_isAtPosition","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"UD__isEquipped","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"itemId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"_isEquipped","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"UD__isItemOwner","inputs":[{"name":"itemId","type":"uint256","internalType":"uint256"},{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"UD__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":"UD__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":"UD__isValidCharacterId","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"UD__isValidMob","inputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"UD__isValidOwner","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"owner","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"UD__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":"UD__issueStarterItems","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"UD__mintCharacter","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"name","type":"bytes32","internalType":"bytes32"},{"name":"tokenUri","type":"string","internalType":"string"}],"outputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"stateMutability":"nonpayable"},{"type":"function","name":"UD__move","inputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"},{"name":"x","type":"uint16","internalType":"uint16"},{"name":"y","type":"uint16","internalType":"uint16"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"UD__rollStats","inputs":[{"name":"userRandomNumber","type":"bytes32","internalType":"bytes32"},{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"class","type":"uint8","internalType":"enum Classes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"UD__setStarterItems","inputs":[{"name":"class","type":"uint8","internalType":"enum Classes"},{"name":"itemIds","type":"uint256[]","internalType":"uint256[]"},{"name":"amounts","type":"uint256[]","internalType":"uint256[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"UD__setTokenUri","inputs":[{"name":"tokenId","type":"uint256","internalType":"uint256"},{"name":"tokenUri","type":"string","internalType":"string"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"UD__spawn","inputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"UD__spawnMob","inputs":[{"name":"mobId","type":"uint256","internalType":"uint256"},{"name":"x","type":"uint16","internalType":"uint16"},{"name":"y","type":"uint16","internalType":"uint16"}],"outputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"}],"stateMutability":"nonpayable"},{"type":"function","name":"UD__unequipItem","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"itemId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"success","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"UD__updateTokenUri","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"tokenUri","type":"string","internalType":"string"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"batchCall","inputs":[{"name":"systemCalls","type":"tuple[]","internalType":"struct SystemCallData[]","components":[{"name":"systemId","type":"bytes32","internalType":"ResourceId"},{"name":"callData","type":"bytes","internalType":"bytes"}]}],"outputs":[{"name":"returnDatas","type":"bytes[]","internalType":"bytes[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"batchCallFrom","inputs":[{"name":"systemCalls","type":"tuple[]","internalType":"struct SystemCallFromData[]","components":[{"name":"from","type":"address","internalType":"address"},{"name":"systemId","type":"bytes32","internalType":"ResourceId"},{"name":"callData","type":"bytes","internalType":"bytes"}]}],"outputs":[{"name":"returnDatas","type":"bytes[]","internalType":"bytes[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"call","inputs":[{"name":"systemId","type":"bytes32","internalType":"ResourceId"},{"name":"callData","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"","type":"bytes","internalType":"bytes"}],"stateMutability":"payable"},{"type":"function","name":"callFrom","inputs":[{"name":"delegator","type":"address","internalType":"address"},{"name":"systemId","type":"bytes32","internalType":"ResourceId"},{"name":"callData","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"","type":"bytes","internalType":"bytes"}],"stateMutability":"payable"},{"type":"function","name":"creator","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"deleteRecord","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"getDynamicField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"}],"outputs":[{"name":"","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"getDynamicFieldLength","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getDynamicFieldSlice","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"},{"name":"start","type":"uint256","internalType":"uint256"},{"name":"end","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"data","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"getField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"outputs":[{"name":"data","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"getField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"}],"outputs":[{"name":"data","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"getFieldLayout","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"}],"outputs":[{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"stateMutability":"view"},{"type":"function","name":"getFieldLength","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getFieldLength","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getKeySchema","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"}],"outputs":[{"name":"keySchema","type":"bytes32","internalType":"Schema"}],"stateMutability":"view"},{"type":"function","name":"getRecord","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"outputs":[{"name":"staticData","type":"bytes","internalType":"bytes"},{"name":"encodedLengths","type":"bytes32","internalType":"EncodedLengths"},{"name":"dynamicData","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"getRecord","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"}],"outputs":[{"name":"staticData","type":"bytes","internalType":"bytes"},{"name":"encodedLengths","type":"bytes32","internalType":"EncodedLengths"},{"name":"dynamicData","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"getStaticField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getValueSchema","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"}],"outputs":[{"name":"valueSchema","type":"bytes32","internalType":"Schema"}],"stateMutability":"view"},{"type":"function","name":"grantAccess","inputs":[{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"grantee","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initModule","type":"address","internalType":"contract IModule"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"installModule","inputs":[{"name":"module","type":"address","internalType":"contract IModule"},{"name":"encodedArgs","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"installRootModule","inputs":[{"name":"module","type":"address","internalType":"contract IModule"},{"name":"encodedArgs","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"popFromDynamicField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"},{"name":"byteLengthToPop","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"pushToDynamicField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"},{"name":"dataToPush","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"registerDelegation","inputs":[{"name":"delegatee","type":"address","internalType":"address"},{"name":"delegationControlId","type":"bytes32","internalType":"ResourceId"},{"name":"initCallData","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"registerFunctionSelector","inputs":[{"name":"systemId","type":"bytes32","internalType":"ResourceId"},{"name":"systemFunctionSignature","type":"string","internalType":"string"}],"outputs":[{"name":"worldFunctionSelector","type":"bytes4","internalType":"bytes4"}],"stateMutability":"nonpayable"},{"type":"function","name":"registerNamespace","inputs":[{"name":"namespaceId","type":"bytes32","internalType":"ResourceId"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"registerNamespaceDelegation","inputs":[{"name":"namespaceId","type":"bytes32","internalType":"ResourceId"},{"name":"delegationControlId","type":"bytes32","internalType":"ResourceId"},{"name":"initCallData","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"registerRootFunctionSelector","inputs":[{"name":"systemId","type":"bytes32","internalType":"ResourceId"},{"name":"worldFunctionSignature","type":"string","internalType":"string"},{"name":"systemFunctionSignature","type":"string","internalType":"string"}],"outputs":[{"name":"worldFunctionSelector","type":"bytes4","internalType":"bytes4"}],"stateMutability":"nonpayable"},{"type":"function","name":"registerStoreHook","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"hookAddress","type":"address","internalType":"contract IStoreHook"},{"name":"enabledHooksBitmap","type":"uint8","internalType":"uint8"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"registerSystem","inputs":[{"name":"systemId","type":"bytes32","internalType":"ResourceId"},{"name":"system","type":"address","internalType":"contract System"},{"name":"publicAccess","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"registerSystemHook","inputs":[{"name":"systemId","type":"bytes32","internalType":"ResourceId"},{"name":"hookAddress","type":"address","internalType":"contract ISystemHook"},{"name":"enabledHooksBitmap","type":"uint8","internalType":"uint8"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"registerTable","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"},{"name":"keySchema","type":"bytes32","internalType":"Schema"},{"name":"valueSchema","type":"bytes32","internalType":"Schema"},{"name":"keyNames","type":"string[]","internalType":"string[]"},{"name":"fieldNames","type":"string[]","internalType":"string[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceOwnership","inputs":[{"name":"namespaceId","type":"bytes32","internalType":"ResourceId"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"revokeAccess","inputs":[{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"grantee","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setDynamicField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"},{"name":"data","type":"bytes","internalType":"bytes"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setRecord","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"staticData","type":"bytes","internalType":"bytes"},{"name":"encodedLengths","type":"bytes32","internalType":"EncodedLengths"},{"name":"dynamicData","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setStaticField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"},{"name":"data","type":"bytes","internalType":"bytes"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"spliceDynamicData","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"},{"name":"startWithinField","type":"uint40","internalType":"uint40"},{"name":"deleteCount","type":"uint40","internalType":"uint40"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"spliceStaticData","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"start","type":"uint48","internalType":"uint48"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"storeVersion","inputs":[],"outputs":[{"name":"version","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"transferBalanceToAddress","inputs":[{"name":"fromNamespaceId","type":"bytes32","internalType":"ResourceId"},{"name":"toAddress","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"transferBalanceToNamespace","inputs":[{"name":"fromNamespaceId","type":"bytes32","internalType":"ResourceId"},{"name":"toNamespaceId","type":"bytes32","internalType":"ResourceId"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"transferOwnership","inputs":[{"name":"namespaceId","type":"bytes32","internalType":"ResourceId"},{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"unregisterDelegation","inputs":[{"name":"delegatee","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"unregisterNamespaceDelegation","inputs":[{"name":"namespaceId","type":"bytes32","internalType":"ResourceId"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"unregisterStoreHook","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"hookAddress","type":"address","internalType":"contract IStoreHook"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"unregisterSystemHook","inputs":[{"name":"systemId","type":"bytes32","internalType":"ResourceId"},{"name":"hookAddress","type":"address","internalType":"contract ISystemHook"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"worldVersion","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"event","name":"HelloStore","inputs":[{"name":"storeVersion","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"HelloWorld","inputs":[{"name":"worldVersion","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"Store_DeleteRecord","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"}],"anonymous":false},{"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_SpliceDynamicData","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","indexed":false,"internalType":"uint8"},{"name":"start","type":"uint48","indexed":false,"internalType":"uint48"},{"name":"deleteCount","type":"uint40","indexed":false,"internalType":"uint40"},{"name":"encodedLengths","type":"bytes32","indexed":false,"internalType":"EncodedLengths"},{"name":"data","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":"EncodedLengths_InvalidLength","inputs":[{"name":"length","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayout_Empty","inputs":[]},{"type":"error","name":"FieldLayout_InvalidStaticDataLength","inputs":[{"name":"staticDataLength","type":"uint256","internalType":"uint256"},{"name":"computedStaticDataLength","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayout_StaticLengthDoesNotFitInAWord","inputs":[{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayout_StaticLengthIsNotZero","inputs":[{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayout_StaticLengthIsZero","inputs":[{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayout_TooManyDynamicFields","inputs":[{"name":"numFields","type":"uint256","internalType":"uint256"},{"name":"maxFields","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayout_TooManyFields","inputs":[{"name":"numFields","type":"uint256","internalType":"uint256"},{"name":"maxFields","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Module_AlreadyInstalled","inputs":[]},{"type":"error","name":"Module_MissingDependency","inputs":[{"name":"dependency","type":"address","internalType":"address"}]},{"type":"error","name":"Module_NonRootInstallNotSupported","inputs":[]},{"type":"error","name":"Module_RootInstallNotSupported","inputs":[]},{"type":"error","name":"Schema_InvalidLength","inputs":[{"name":"length","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Schema_StaticTypeAfterDynamicType","inputs":[]},{"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":"Store_IndexOutOfBounds","inputs":[{"name":"length","type":"uint256","internalType":"uint256"},{"name":"accessedIndex","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidBounds","inputs":[{"name":"start","type":"uint256","internalType":"uint256"},{"name":"end","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidFieldNamesLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidKeyNamesLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidResourceType","inputs":[{"name":"expected","type":"bytes2","internalType":"bytes2"},{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"Store_InvalidSplice","inputs":[{"name":"startWithinField","type":"uint40","internalType":"uint40"},{"name":"deleteCount","type":"uint40","internalType":"uint40"},{"name":"fieldLength","type":"uint40","internalType":"uint40"}]},{"type":"error","name":"Store_InvalidStaticDataLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidValueSchemaDynamicLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidValueSchemaLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidValueSchemaStaticLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_TableAlreadyExists","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"tableIdString","type":"string","internalType":"string"}]},{"type":"error","name":"Store_TableNotFound","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"tableIdString","type":"string","internalType":"string"}]},{"type":"error","name":"World_AccessDenied","inputs":[{"name":"resource","type":"string","internalType":"string"},{"name":"caller","type":"address","internalType":"address"}]},{"type":"error","name":"World_AlreadyInitialized","inputs":[]},{"type":"error","name":"World_CallbackNotAllowed","inputs":[{"name":"functionSelector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"World_DelegationNotFound","inputs":[{"name":"delegator","type":"address","internalType":"address"},{"name":"delegatee","type":"address","internalType":"address"}]},{"type":"error","name":"World_FunctionSelectorAlreadyExists","inputs":[{"name":"functionSelector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"World_FunctionSelectorNotFound","inputs":[{"name":"functionSelector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"World_InsufficientBalance","inputs":[{"name":"balance","type":"uint256","internalType":"uint256"},{"name":"amount","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"World_InterfaceNotSupported","inputs":[{"name":"contractAddress","type":"address","internalType":"address"},{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"World_InvalidNamespace","inputs":[{"name":"namespace","type":"bytes14","internalType":"bytes14"}]},{"type":"error","name":"World_InvalidResourceId","inputs":[{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"World_InvalidResourceType","inputs":[{"name":"expected","type":"bytes2","internalType":"bytes2"},{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"World_ResourceAlreadyExists","inputs":[{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"World_ResourceNotFound","inputs":[{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"World_SystemAlreadyExists","inputs":[{"name":"system","type":"address","internalType":"address"}]},{"type":"error","name":"World_UnlimitedDelegationNotAllowed","inputs":[]}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"UD___calculateMagicAttack()":"e0cac377","UD___calculatePhysicalAttack((int256,int256,int256,int256,uint8[]),bytes32,bytes32,uint256,uint256)":"bf81ff5d","UD__applyEquipmentBonuses(bytes32)":"54f1f2db","UD__assignActionToCharacter(bytes32,bytes32)":"854cd561","UD__calculateGoldDrop(uint256,uint256)":"c3505171","UD__calculateItemDrop(uint256,uint256)":"2ef4cfcb","UD__checkRequirements(bytes32,uint256)":"bf4dbebc","UD__createAction(uint8,bytes)":"c3344bd2","UD__createItem(uint8,uint256,uint256,bytes,string)":"c2647a81","UD__createItems(uint8[],uint256[],uint256[],bytes[],string[])":"8a2d4e05","UD__createMatch(uint8,bytes32[],bytes32[])":"3e602b01","UD__createMob(uint8,bytes,string)":"8cc68cc7","UD__createMobs(uint8[],bytes[],string[])":"3f93a314","UD__dropGold(bytes32,uint256)":"fda0ce50","UD__dropItem(uint256,uint256,bytes32)":"88c571e1","UD__dropItems(uint256[],uint256[],bytes32[])":"e45cde14","UD__endTurn(bytes32,bytes32,(bytes32,bytes32,bytes32,uint256)[])":"1f357129","UD__enterGame(bytes32)":"b968fa3a","UD__equipAction(bytes32,bytes32)":"3d37a73e","UD__equipItems(bytes32,uint256[])":"2d9ac2be","UD__executeCombat(uint256,bytes32,(bytes32,bytes32,bytes32,uint256)[])":"a0ba1f1e","UD__getArmorStats(uint256)":"e75aa93b","UD__getCharacterToken()":"49d8cf02","UD__getCharacterTokenId(bytes32)":"d97302d0","UD__getClass(bytes32)":"0ae6f9ab","UD__getCurrentAvailableLevel(uint256)":"d453e623","UD__getCurrentItemsCounter()":"4652f280","UD__getEncounter(bytes32)":"55faf03a","UD__getEntitiesAtPosition(uint16,uint16)":"d0f8a4f5","UD__getEntropy()":"b5c691c7","UD__getExperience(bytes32)":"a8b79e60","UD__getGoldToken()":"8b994e32","UD__getItemType(uint256)":"cdaccbae","UD__getItemsContract()":"997f897a","UD__getLootManagerSystem()":"f2cb96f2","UD__getMob(bytes32)":"5ac36570","UD__getMob(uint256)":"622834d0","UD__getMobId(bytes32)":"53d64640","UD__getMobPosition(bytes32)":"8b3f8277","UD__getMonsterStats(bytes32)":"e6c22e06","UD__getMonsterStats(uint256)":"91b22373","UD__getName(bytes32)":"e902af7a","UD__getNpcStats(bytes32)":"a17a6b7f","UD__getNpcStats(uint256)":"35c65325","UD__getOwner(bytes32)":"777c2caf","UD__getOwnerAddress(bytes32)":"4f10aabc","UD__getPlayerEntityId(uint256)":"02ee03fa","UD__getPythProvider()":"e24cefd9","UD__getSpawnCounter(bytes32)":"f4e1633b","UD__getStarterItems(uint8)":"b8bfeca1","UD__getStats(bytes32)":"14b13b0e","UD__getTotalSupply(uint256)":"37007d40","UD__getWeaponStats(uint256)":"810c1dc1","UD__isAtPosition(bytes32,uint16,uint16)":"f48a3972","UD__isEquipped(bytes32,uint256)":"7273e39a","UD__isItemOwner(uint256,address)":"b3634118","UD__isParticipant(address,bytes32[])":"18853912","UD__isParticipant(bytes32,bytes32)":"e9958ea4","UD__isValidCharacterId(bytes32)":"fa1becc4","UD__isValidMob(bytes32)":"bace814a","UD__isValidOwner(bytes32,address)":"43def638","UD__isValidPvE(bytes32[],bytes32[],uint16,uint16)":"c6d5525b","UD__issueStarterItems(bytes32)":"f9d175ed","UD__mintCharacter(address,bytes32,string)":"d408a43b","UD__move(bytes32,uint16,uint16)":"d1138fa1","UD__rollStats(bytes32,bytes32,uint8)":"18f14781","UD__setStarterItems(uint8,uint256[],uint256[])":"2f97d48f","UD__setTokenUri(uint256,string)":"d6556009","UD__spawn(bytes32)":"7e29a6f6","UD__spawnMob(uint256,uint16,uint16)":"15bc4248","UD__unequipItem(bytes32,uint256)":"7a190324","UD__updateTokenUri(bytes32,string)":"ecd73f84","batchCall((bytes32,bytes)[])":"ce5e8dd9","batchCallFrom((address,bytes32,bytes)[])":"8fc8cf7e","call(bytes32,bytes)":"3ae7af08","callFrom(address,bytes32,bytes)":"894ecc58","creator()":"02d05d3f","deleteRecord(bytes32,bytes32[])":"505a181d","getDynamicField(bytes32,bytes32[],uint8)":"1e788977","getDynamicFieldLength(bytes32,bytes32[],uint8)":"dbbf0e21","getDynamicFieldSlice(bytes32,bytes32[],uint8,uint256,uint256)":"4dc77d97","getField(bytes32,bytes32[],uint8)":"d03edb8c","getField(bytes32,bytes32[],uint8,bytes32)":"05242d2f","getFieldLayout(bytes32)":"3a77c2c2","getFieldLength(bytes32,bytes32[],uint8)":"a53417ed","getFieldLength(bytes32,bytes32[],uint8,bytes32)":"9f1fcf0a","getKeySchema(bytes32)":"d4285dc2","getRecord(bytes32,bytes32[])":"cc49db7e","getRecord(bytes32,bytes32[],bytes32)":"419b58fd","getStaticField(bytes32,bytes32[],uint8,bytes32)":"8c364d59","getValueSchema(bytes32)":"e228a4a3","grantAccess(bytes32,address)":"40554c3a","initialize(address)":"c4d66de8","installModule(address,bytes)":"8da798da","installRootModule(address,bytes)":"af068c9e","popFromDynamicField(bytes32,bytes32[],uint8,uint256)":"d9c03a04","pushToDynamicField(bytes32,bytes32[],uint8,bytes)":"150f3262","registerDelegation(address,bytes32,bytes)":"1d2257ba","registerFunctionSelector(bytes32,string)":"26d98102","registerNamespace(bytes32)":"b29e4089","registerNamespaceDelegation(bytes32,bytes32,bytes)":"bfdfaff7","registerRootFunctionSelector(bytes32,string,string)":"6548a90a","registerStoreHook(bytes32,address,uint8)":"530f4b60","registerSystem(bytes32,address,bool)":"3350b6a9","registerSystemHook(bytes32,address,uint8)":"d5f8337f","registerTable(bytes32,bytes32,bytes32,bytes32,string[],string[])":"0ba51f49","renounceOwnership(bytes32)":"219adc2e","revokeAccess(bytes32,address)":"8d53b208","setDynamicField(bytes32,bytes32[],uint8,bytes)":"ef6ea862","setField(bytes32,bytes32[],uint8,bytes)":"114a7266","setField(bytes32,bytes32[],uint8,bytes,bytes32)":"3708196e","setRecord(bytes32,bytes32[],bytes,bytes32,bytes)":"298314fb","setStaticField(bytes32,bytes32[],uint8,bytes,bytes32)":"390baae0","spliceDynamicData(bytes32,bytes32[],uint8,uint40,uint40,bytes)":"c0a2895a","spliceStaticData(bytes32,bytes32[],uint48,bytes)":"b047c1eb","storeVersion()":"c1122229","transferBalanceToAddress(bytes32,address,uint256)":"45afd199","transferBalanceToNamespace(bytes32,bytes32,uint256)":"c9c85a60","transferOwnership(bytes32,address)":"ef5d6bbb","unregisterDelegation(address)":"cdc938c5","unregisterNamespaceDelegation(bytes32)":"aa66e9c8","unregisterStoreHook(bytes32,address)":"05609129","unregisterSystemHook(bytes32,address)":"a92813ad","worldVersion()":"6951955d"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"}],\"name\":\"EncodedLengths_InvalidLength\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"FieldLayout_Empty\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"staticDataLength\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"computedStaticDataLength\",\"type\":\"uint256\"}],\"name\":\"FieldLayout_InvalidStaticDataLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"FieldLayout_StaticLengthDoesNotFitInAWord\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"FieldLayout_StaticLengthIsNotZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"FieldLayout_StaticLengthIsZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"numFields\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxFields\",\"type\":\"uint256\"}],\"name\":\"FieldLayout_TooManyDynamicFields\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"numFields\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxFields\",\"type\":\"uint256\"}],\"name\":\"FieldLayout_TooManyFields\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Module_AlreadyInstalled\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"dependency\",\"type\":\"address\"}],\"name\":\"Module_MissingDependency\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Module_NonRootInstallNotSupported\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Module_RootInstallNotSupported\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"}],\"name\":\"Schema_InvalidLength\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Schema_StaticTypeAfterDynamicType\",\"type\":\"error\"},{\"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\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"accessedIndex\",\"type\":\"uint256\"}],\"name\":\"Store_IndexOutOfBounds\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"start\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"end\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidBounds\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidFieldNamesLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidKeyNamesLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes2\",\"name\":\"expected\",\"type\":\"bytes2\"},{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"Store_InvalidResourceType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint40\",\"name\":\"startWithinField\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"fieldLength\",\"type\":\"uint40\"}],\"name\":\"Store_InvalidSplice\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidStaticDataLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidValueSchemaDynamicLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidValueSchemaLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidValueSchemaStaticLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"tableIdString\",\"type\":\"string\"}],\"name\":\"Store_TableAlreadyExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"tableIdString\",\"type\":\"string\"}],\"name\":\"Store_TableNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"resource\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"caller\",\"type\":\"address\"}],\"name\":\"World_AccessDenied\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"World_AlreadyInitialized\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"functionSelector\",\"type\":\"bytes4\"}],\"name\":\"World_CallbackNotAllowed\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"}],\"name\":\"World_DelegationNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"functionSelector\",\"type\":\"bytes4\"}],\"name\":\"World_FunctionSelectorAlreadyExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"functionSelector\",\"type\":\"bytes4\"}],\"name\":\"World_FunctionSelectorNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"balance\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"World_InsufficientBalance\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"World_InterfaceNotSupported\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes14\",\"name\":\"namespace\",\"type\":\"bytes14\"}],\"name\":\"World_InvalidNamespace\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_InvalidResourceId\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes2\",\"name\":\"expected\",\"type\":\"bytes2\"},{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_InvalidResourceType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_ResourceAlreadyExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_ResourceNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"system\",\"type\":\"address\"}],\"name\":\"World_SystemAlreadyExists\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"World_UnlimitedDelegationNotAllowed\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"storeVersion\",\"type\":\"bytes32\"}],\"name\":\"HelloStore\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"worldVersion\",\"type\":\"bytes32\"}],\"name\":\"HelloWorld\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"}],\"name\":\"Store_DeleteRecord\",\"type\":\"event\"},{\"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\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"indexed\":false,\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"indexed\":false,\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"indexed\":false,\"internalType\":\"EncodedLengths\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Store_SpliceDynamicData\",\"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\":\"UD___calculateMagicAttack\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"int256\",\"name\":\"bonusDamage\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"armorPenetration\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"attackModifierBonus\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"critChanceBonus\",\"type\":\"int256\"},{\"internalType\":\"uint8[]\",\"name\":\"classRestrictions\",\"type\":\"uint8[]\"}],\"internalType\":\"struct PhysicalAttackStats\",\"name\":\"attackStats\",\"type\":\"tuple\"},{\"internalType\":\"bytes32\",\"name\":\"attackerId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"defenderId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"weaponId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"randomNumber\",\"type\":\"uint256\"}],\"name\":\"UD___calculatePhysicalAttack\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"damage\",\"type\":\"int256\"},{\"internalType\":\"bool\",\"name\":\"hit\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"crit\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"}],\"name\":\"UD__applyEquipmentBonuses\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"adjustedStrength\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"adjustedAgility\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"adjustedIntelligence\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"adjustedArmor\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"adjustedMaxHp\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"currentHp\",\"type\":\"int256\"},{\"internalType\":\"uint256\",\"name\":\"level\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"class\",\"type\":\"uint256\"}],\"internalType\":\"struct AdjustedCombatStats\",\"name\":\"modifiedStats\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"actionId\",\"type\":\"bytes32\"}],\"name\":\"UD__assignActionToCharacter\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"mobLevel\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"randomNumber\",\"type\":\"uint256\"}],\"name\":\"UD__calculateGoldDrop\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"dropAmount\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"randomNumber\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"}],\"name\":\"UD__calculateItemDrop\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"}],\"name\":\"UD__checkRequirements\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"canUse\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"enum ActionType\",\"name\":\"actionType\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"actionStats\",\"type\":\"bytes\"}],\"name\":\"UD__createAction\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"actionId\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"enum ItemType\",\"name\":\"itemType\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"supply\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"dropChance\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"stats\",\"type\":\"bytes\"},{\"internalType\":\"string\",\"name\":\"itemMetadataURI\",\"type\":\"string\"}],\"name\":\"UD__createItem\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"enum ItemType[]\",\"name\":\"itemTypes\",\"type\":\"uint8[]\"},{\"internalType\":\"uint256[]\",\"name\":\"supply\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"dropChances\",\"type\":\"uint256[]\"},{\"internalType\":\"bytes[]\",\"name\":\"stats\",\"type\":\"bytes[]\"},{\"internalType\":\"string[]\",\"name\":\"itemMetadataURIs\",\"type\":\"string[]\"}],\"name\":\"UD__createItems\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"enum EncounterType\",\"name\":\"encounterType\",\"type\":\"uint8\"},{\"internalType\":\"bytes32[]\",\"name\":\"attackers\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes32[]\",\"name\":\"defenders\",\"type\":\"bytes32[]\"}],\"name\":\"UD__createMatch\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"encounterId\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"enum MobType\",\"name\":\"mobType\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"stats\",\"type\":\"bytes\"},{\"internalType\":\"string\",\"name\":\"mobMetadataUri\",\"type\":\"string\"}],\"name\":\"UD__createMob\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"enum MobType[]\",\"name\":\"mobTypes\",\"type\":\"uint8[]\"},{\"internalType\":\"bytes[]\",\"name\":\"stats\",\"type\":\"bytes[]\"},{\"internalType\":\"string[]\",\"name\":\"mobMetadataURIs\",\"type\":\"string[]\"}],\"name\":\"UD__createMobs\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"UD__dropGold\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"UD__dropItem\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256[]\",\"name\":\"itemIds\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"},{\"internalType\":\"bytes32[]\",\"name\":\"characterIds\",\"type\":\"bytes32[]\"}],\"name\":\"UD__dropItems\",\"outputs\":[],\"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\":\"UD__endTurn\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"UD__enterGame\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"actionId\",\"type\":\"bytes32\"}],\"name\":\"UD__equipAction\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256[]\",\"name\":\"itemIds\",\"type\":\"uint256[]\"}],\"name\":\"UD__equipItems\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"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\":\"UD__executeCombat\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"}],\"name\":\"UD__getArmorStats\",\"outputs\":[{\"components\":[{\"internalType\":\"int256\",\"name\":\"agiModifier\",\"type\":\"int256\"},{\"internalType\":\"uint256\",\"name\":\"armorModifier\",\"type\":\"uint256\"},{\"internalType\":\"uint8[]\",\"name\":\"classRestrictions\",\"type\":\"uint8[]\"},{\"internalType\":\"int256\",\"name\":\"hitPointModifier\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"intModifier\",\"type\":\"int256\"},{\"internalType\":\"uint256\",\"name\":\"minLevel\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"strModifier\",\"type\":\"int256\"}],\"internalType\":\"struct ArmorStats\",\"name\":\"_ArmorStats\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"UD__getCharacterToken\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"_characterToken\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"UD__getCharacterTokenId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"UD__getClass\",\"outputs\":[{\"internalType\":\"enum Classes\",\"name\":\"_class\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"experience\",\"type\":\"uint256\"}],\"name\":\"UD__getCurrentAvailableLevel\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"currentLevel\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"UD__getCurrentItemsCounter\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"encounterId\",\"type\":\"bytes32\"}],\"name\":\"UD__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\":\"uint16\",\"name\":\"x\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"y\",\"type\":\"uint16\"}],\"name\":\"UD__getEntitiesAtPosition\",\"outputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"entitiesAtPosition\",\"type\":\"bytes32[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"UD__getEntropy\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"_entropy\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"UD__getExperience\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"UD__getGoldToken\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"_goldToken\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"}],\"name\":\"UD__getItemType\",\"outputs\":[{\"internalType\":\"enum ItemType\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"UD__getItemsContract\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"_erc1155\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"UD__getLootManagerSystem\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"_lootManager\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"}],\"name\":\"UD__getMob\",\"outputs\":[{\"components\":[{\"internalType\":\"enum MobType\",\"name\":\"mobType\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"mobStats\",\"type\":\"bytes\"},{\"internalType\":\"string\",\"name\":\"mobMetadata\",\"type\":\"string\"}],\"internalType\":\"struct MobsData\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"mobId\",\"type\":\"uint256\"}],\"name\":\"UD__getMob\",\"outputs\":[{\"components\":[{\"internalType\":\"enum MobType\",\"name\":\"mobType\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"mobStats\",\"type\":\"bytes\"},{\"internalType\":\"string\",\"name\":\"mobMetadata\",\"type\":\"string\"}],\"internalType\":\"struct MobsData\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"}],\"name\":\"UD__getMobId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"}],\"name\":\"UD__getMobPosition\",\"outputs\":[{\"internalType\":\"uint16\",\"name\":\"x\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"y\",\"type\":\"uint16\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"mobId\",\"type\":\"uint256\"}],\"name\":\"UD__getMonsterStats\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"agility\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"armor\",\"type\":\"uint256\"},{\"internalType\":\"enum Classes\",\"name\":\"class\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"experience\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"hitPoints\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"intelligence\",\"type\":\"uint256\"},{\"internalType\":\"uint256[]\",\"name\":\"inventory\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256\",\"name\":\"level\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"strength\",\"type\":\"uint256\"}],\"internalType\":\"struct MonsterStats\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"}],\"name\":\"UD__getMonsterStats\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"agility\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"armor\",\"type\":\"uint256\"},{\"internalType\":\"enum Classes\",\"name\":\"class\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"experience\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"hitPoints\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"intelligence\",\"type\":\"uint256\"},{\"internalType\":\"uint256[]\",\"name\":\"inventory\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256\",\"name\":\"level\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"strength\",\"type\":\"uint256\"}],\"internalType\":\"struct MonsterStats\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"UD__getName\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"_name\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"mobId\",\"type\":\"uint256\"}],\"name\":\"UD__getNpcStats\",\"outputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"bytes32[]\",\"name\":\"storyPathIds\",\"type\":\"bytes32[]\"},{\"internalType\":\"enum Alignment\",\"name\":\"alignment\",\"type\":\"uint8\"}],\"internalType\":\"struct NPCStats\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"}],\"name\":\"UD__getNpcStats\",\"outputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"bytes32[]\",\"name\":\"storyPathIds\",\"type\":\"bytes32[]\"},{\"internalType\":\"enum Alignment\",\"name\":\"alignment\",\"type\":\"uint8\"}],\"internalType\":\"struct NPCStats\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"UD__getOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"UD__getOwnerAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"characterTokenId\",\"type\":\"uint256\"}],\"name\":\"UD__getPlayerEntityId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"UD__getPythProvider\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"_provider\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"}],\"name\":\"UD__getSpawnCounter\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"enum Classes\",\"name\":\"class\",\"type\":\"uint8\"}],\"name\":\"UD__getStarterItems\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256[]\",\"name\":\"itemIds\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"}],\"internalType\":\"struct StarterItemsData\",\"name\":\"data\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"UD__getStats\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"strength\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"agility\",\"type\":\"uint256\"},{\"internalType\":\"enum Classes\",\"name\":\"class\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"intelligence\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"baseHitPoints\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"currentHp\",\"type\":\"int256\"},{\"internalType\":\"uint256\",\"name\":\"experience\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"level\",\"type\":\"uint256\"}],\"internalType\":\"struct StatsData\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"UD__getTotalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"_supply\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"}],\"name\":\"UD__getWeaponStats\",\"outputs\":[{\"components\":[{\"internalType\":\"int256\",\"name\":\"agiModifier\",\"type\":\"int256\"},{\"internalType\":\"uint8[]\",\"name\":\"classRestrictions\",\"type\":\"uint8[]\"},{\"internalType\":\"int256\",\"name\":\"hitPointModifier\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"intModifier\",\"type\":\"int256\"},{\"internalType\":\"uint256\",\"name\":\"maxDamage\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minDamage\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minLevel\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"strModifier\",\"type\":\"int256\"}],\"internalType\":\"struct WeaponStats\",\"name\":\"_weaponStats\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"},{\"internalType\":\"uint16\",\"name\":\"x\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"y\",\"type\":\"uint16\"}],\"name\":\"UD__isAtPosition\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_isAtPosition\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"}],\"name\":\"UD__isEquipped\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_isEquipped\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"UD__isItemOwner\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"bytes32[]\",\"name\":\"participants\",\"type\":\"bytes32[]\"}],\"name\":\"UD__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\":\"UD__isParticipant\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_isParticipant\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"UD__isValidCharacterId\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"}],\"name\":\"UD__isValidMob\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"UD__isValidOwner\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"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\":\"UD__isValidPvE\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_isValidPvE\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"UD__issueStarterItems\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"name\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"tokenUri\",\"type\":\"string\"}],\"name\":\"UD__mintCharacter\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"},{\"internalType\":\"uint16\",\"name\":\"x\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"y\",\"type\":\"uint16\"}],\"name\":\"UD__move\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"userRandomNumber\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"enum Classes\",\"name\":\"class\",\"type\":\"uint8\"}],\"name\":\"UD__rollStats\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"enum Classes\",\"name\":\"class\",\"type\":\"uint8\"},{\"internalType\":\"uint256[]\",\"name\":\"itemIds\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"}],\"name\":\"UD__setStarterItems\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"tokenUri\",\"type\":\"string\"}],\"name\":\"UD__setTokenUri\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"}],\"name\":\"UD__spawn\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"mobId\",\"type\":\"uint256\"},{\"internalType\":\"uint16\",\"name\":\"x\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"y\",\"type\":\"uint16\"}],\"name\":\"UD__spawnMob\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"}],\"name\":\"UD__unequipItem\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"tokenUri\",\"type\":\"string\"}],\"name\":\"UD__updateTokenUri\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"internalType\":\"struct SystemCallData[]\",\"name\":\"systemCalls\",\"type\":\"tuple[]\"}],\"name\":\"batchCall\",\"outputs\":[{\"internalType\":\"bytes[]\",\"name\":\"returnDatas\",\"type\":\"bytes[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"internalType\":\"struct SystemCallFromData[]\",\"name\":\"systemCalls\",\"type\":\"tuple[]\"}],\"name\":\"batchCallFrom\",\"outputs\":[{\"internalType\":\"bytes[]\",\"name\":\"returnDatas\",\"type\":\"bytes[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"name\":\"call\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"name\":\"callFrom\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"creator\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"}],\"name\":\"deleteRecord\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"}],\"name\":\"getDynamicField\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"}],\"name\":\"getDynamicFieldLength\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"start\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"end\",\"type\":\"uint256\"}],\"name\":\"getDynamicFieldSlice\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"getField\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"}],\"name\":\"getField\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"}],\"name\":\"getFieldLayout\",\"outputs\":[{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"getFieldLength\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"}],\"name\":\"getFieldLength\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"}],\"name\":\"getKeySchema\",\"outputs\":[{\"internalType\":\"Schema\",\"name\":\"keySchema\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"getRecord\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"staticData\",\"type\":\"bytes\"},{\"internalType\":\"EncodedLengths\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"dynamicData\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"}],\"name\":\"getRecord\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"staticData\",\"type\":\"bytes\"},{\"internalType\":\"EncodedLengths\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"dynamicData\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"getStaticField\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"}],\"name\":\"getValueSchema\",\"outputs\":[{\"internalType\":\"Schema\",\"name\":\"valueSchema\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"grantee\",\"type\":\"address\"}],\"name\":\"grantAccess\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IModule\",\"name\":\"initModule\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IModule\",\"name\":\"module\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"encodedArgs\",\"type\":\"bytes\"}],\"name\":\"installModule\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IModule\",\"name\":\"module\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"encodedArgs\",\"type\":\"bytes\"}],\"name\":\"installRootModule\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"byteLengthToPop\",\"type\":\"uint256\"}],\"name\":\"popFromDynamicField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"dataToPush\",\"type\":\"bytes\"}],\"name\":\"pushToDynamicField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"},{\"internalType\":\"ResourceId\",\"name\":\"delegationControlId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"initCallData\",\"type\":\"bytes\"}],\"name\":\"registerDelegation\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"systemFunctionSignature\",\"type\":\"string\"}],\"name\":\"registerFunctionSelector\",\"outputs\":[{\"internalType\":\"bytes4\",\"name\":\"worldFunctionSelector\",\"type\":\"bytes4\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"namespaceId\",\"type\":\"bytes32\"}],\"name\":\"registerNamespace\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"namespaceId\",\"type\":\"bytes32\"},{\"internalType\":\"ResourceId\",\"name\":\"delegationControlId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"initCallData\",\"type\":\"bytes\"}],\"name\":\"registerNamespaceDelegation\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"worldFunctionSignature\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"systemFunctionSignature\",\"type\":\"string\"}],\"name\":\"registerRootFunctionSelector\",\"outputs\":[{\"internalType\":\"bytes4\",\"name\":\"worldFunctionSelector\",\"type\":\"bytes4\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"contract IStoreHook\",\"name\":\"hookAddress\",\"type\":\"address\"},{\"internalType\":\"uint8\",\"name\":\"enabledHooksBitmap\",\"type\":\"uint8\"}],\"name\":\"registerStoreHook\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"contract System\",\"name\":\"system\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"publicAccess\",\"type\":\"bool\"}],\"name\":\"registerSystem\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"contract ISystemHook\",\"name\":\"hookAddress\",\"type\":\"address\"},{\"internalType\":\"uint8\",\"name\":\"enabledHooksBitmap\",\"type\":\"uint8\"}],\"name\":\"registerSystemHook\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"},{\"internalType\":\"Schema\",\"name\":\"keySchema\",\"type\":\"bytes32\"},{\"internalType\":\"Schema\",\"name\":\"valueSchema\",\"type\":\"bytes32\"},{\"internalType\":\"string[]\",\"name\":\"keyNames\",\"type\":\"string[]\"},{\"internalType\":\"string[]\",\"name\":\"fieldNames\",\"type\":\"string[]\"}],\"name\":\"registerTable\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"namespaceId\",\"type\":\"bytes32\"}],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"grantee\",\"type\":\"address\"}],\"name\":\"revokeAccess\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"setDynamicField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"setField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"setField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes\",\"name\":\"staticData\",\"type\":\"bytes\"},{\"internalType\":\"EncodedLengths\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"dynamicData\",\"type\":\"bytes\"}],\"name\":\"setRecord\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"setStaticField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"uint40\",\"name\":\"startWithinField\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"spliceDynamicData\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"spliceStaticData\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"storeVersion\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"version\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"fromNamespaceId\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"toAddress\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferBalanceToAddress\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"fromNamespaceId\",\"type\":\"bytes32\"},{\"internalType\":\"ResourceId\",\"name\":\"toNamespaceId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferBalanceToNamespace\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"namespaceId\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"}],\"name\":\"unregisterDelegation\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"namespaceId\",\"type\":\"bytes32\"}],\"name\":\"unregisterNamespaceDelegation\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"contract IStoreHook\",\"name\":\"hookAddress\",\"type\":\"address\"}],\"name\":\"unregisterStoreHook\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"contract ISystemHook\",\"name\":\"hookAddress\",\"type\":\"address\"}],\"name\":\"unregisterSystemHook\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"worldVersion\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"MUD (https://mud.dev) by Lattice (https://lattice.xyz)\",\"details\":\"This is an autogenerated file; do not edit manually.\",\"errors\":{\"EncodedLengths_InvalidLength(uint256)\":[{\"params\":{\"length\":\"The length of the encoded lengths.\"}}],\"FieldLayout_InvalidStaticDataLength(uint256,uint256)\":[{\"params\":{\"computedStaticDataLength\":\"The computed static data length.\",\"staticDataLength\":\"The static data length of the field layout.\"}}],\"FieldLayout_StaticLengthDoesNotFitInAWord(uint256)\":[{\"params\":{\"index\":\"The index of the field.\"}}],\"FieldLayout_StaticLengthIsNotZero(uint256)\":[{\"params\":{\"index\":\"The index of the field.\"}}],\"FieldLayout_StaticLengthIsZero(uint256)\":[{\"params\":{\"index\":\"The index of the field.\"}}],\"FieldLayout_TooManyDynamicFields(uint256,uint256)\":[{\"params\":{\"maxFields\":\"The maximum number of fields a Schema can handle.\",\"numFields\":\"The total number of fields in the field layout.\"}}],\"FieldLayout_TooManyFields(uint256,uint256)\":[{\"params\":{\"maxFields\":\"The maximum number of fields a Schema can handle.\",\"numFields\":\"The total number of fields in the field layout.\"}}],\"Module_MissingDependency(address)\":[{\"params\":{\"dependency\":\"The address of the dependency.\"}}],\"Schema_InvalidLength(uint256)\":[{\"params\":{\"length\":\"The length of the schema.\"}}],\"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.\"}}],\"Store_IndexOutOfBounds(uint256,uint256)\":[{\"details\":\"Raised if the start index is larger than the previous length of the field.\",\"params\":{\"accessedIndex\":\"FIXME\",\"length\":\"FIXME\"}}],\"Store_InvalidBounds(uint256,uint256)\":[{\"params\":{\"end\":\"The end index within the dynamic field for the slice operation (exclusive).\",\"start\":\"The start index within the dynamic field for the slice operation (inclusive).\"}}],\"Store_InvalidFieldNamesLength(uint256,uint256)\":[{\"params\":{\"expected\":\"The expected length.\",\"received\":\"The provided length.\"}}],\"Store_InvalidKeyNamesLength(uint256,uint256)\":[{\"params\":{\"expected\":\"The expected length.\",\"received\":\"The provided length.\"}}],\"Store_InvalidResourceType(bytes2,bytes32,string)\":[{\"params\":{\"expected\":\"The expected resource type.\",\"resourceId\":\"The resource ID.\",\"resourceIdString\":\"The stringified resource ID (for easier debugging).\"}}],\"Store_InvalidSplice(uint40,uint40,uint40)\":[{\"details\":\"Raised if the splice total length of the field is changed but the splice is not at the end of the field.\",\"params\":{\"deleteCount\":\"The number of bytes to delete in the splice operation.\",\"fieldLength\":\"The field length for the splice operation.\",\"startWithinField\":\"The start index within the field for the splice operation.\"}}],\"Store_InvalidStaticDataLength(uint256,uint256)\":[{\"params\":{\"expected\":\"The expected length.\",\"received\":\"The provided length.\"}}],\"Store_InvalidValueSchemaDynamicLength(uint256,uint256)\":[{\"params\":{\"expected\":\"The expected length.\",\"received\":\"The provided length.\"}}],\"Store_InvalidValueSchemaLength(uint256,uint256)\":[{\"params\":{\"expected\":\"The expected length.\",\"received\":\"The provided length.\"}}],\"Store_InvalidValueSchemaStaticLength(uint256,uint256)\":[{\"params\":{\"expected\":\"The expected length.\",\"received\":\"The provided length.\"}}],\"Store_TableAlreadyExists(bytes32,string)\":[{\"params\":{\"tableId\":\"The ID of the table.\",\"tableIdString\":\"The stringified ID of the table (for easier debugging if cleartext tableIds are used).\"}}],\"Store_TableNotFound(bytes32,string)\":[{\"params\":{\"tableId\":\"The ID of the table.\",\"tableIdString\":\"The stringified ID of the table (for easier debugging if cleartext tableIds are used).\"}}],\"World_AccessDenied(string,address)\":[{\"params\":{\"caller\":\"The address of the user trying to access the resource.\",\"resource\":\"The resource's identifier.\"}}],\"World_CallbackNotAllowed(bytes4)\":[{\"params\":{\"functionSelector\":\"The function selector of the disallowed callback.\"}}],\"World_DelegationNotFound(address,address)\":[{\"params\":{\"delegatee\":\"The address of the delegatee.\",\"delegator\":\"The address of the delegator.\"}}],\"World_FunctionSelectorAlreadyExists(bytes4)\":[{\"params\":{\"functionSelector\":\"The function selector in question.\"}}],\"World_FunctionSelectorNotFound(bytes4)\":[{\"params\":{\"functionSelector\":\"The function selector in question.\"}}],\"World_InsufficientBalance(uint256,uint256)\":[{\"params\":{\"amount\":\"The amount needed.\",\"balance\":\"The current balance.\"}}],\"World_InterfaceNotSupported(address,bytes4)\":[{\"params\":{\"contractAddress\":\"The address of the contract in question.\",\"interfaceId\":\"The ID of the interface.\"}}],\"World_InvalidNamespace(bytes14)\":[{\"params\":{\"namespace\":\"The invalid namespace.\"}}],\"World_InvalidResourceId(bytes32,string)\":[{\"params\":{\"resourceId\":\"The ID of the resource.\",\"resourceIdString\":\"The string representation of the resource ID.\"}}],\"World_InvalidResourceType(bytes2,bytes32,string)\":[{\"params\":{\"expected\":\"The expected resource type.\",\"resourceId\":\"The ID of the resource.\",\"resourceIdString\":\"The string representation of the resource ID.\"}}],\"World_ResourceAlreadyExists(bytes32,string)\":[{\"params\":{\"resourceId\":\"The ID of the resource.\",\"resourceIdString\":\"The string representation of the resource ID.\"}}],\"World_ResourceNotFound(bytes32,string)\":[{\"params\":{\"resourceId\":\"The ID of the resource.\",\"resourceIdString\":\"The string representation of the resource ID.\"}}],\"World_SystemAlreadyExists(address)\":[{\"params\":{\"system\":\"The address of the system.\"}}]},\"events\":{\"HelloStore(bytes32)\":{\"params\":{\"storeVersion\":\"The protocol version of the Store.\"}},\"HelloWorld(bytes32)\":{\"params\":{\"worldVersion\":\"The protocol version of the World.\"}},\"Store_DeleteRecord(bytes32,bytes32[])\":{\"params\":{\"keyTuple\":\"An array representing the composite key for the record.\",\"tableId\":\"The ID of the table where the record is deleted.\"}},\"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_SpliceDynamicData(bytes32,bytes32[],uint8,uint48,uint40,bytes32,bytes)\":{\"params\":{\"data\":\"The data to insert into the dynamic data of the record at the start byte.\",\"deleteCount\":\"The number of bytes to delete in the splice operation.\",\"dynamicFieldIndex\":\"The index of the dynamic field to splice data, relative to the start of the dynamic fields. (Dynamic field index = field index - number of static fields)\",\"encodedLengths\":\"The encoded lengths of the dynamic data of the record.\",\"keyTuple\":\"An array representing the composite 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.\"}},\"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\":{\"call(bytes32,bytes)\":{\"details\":\"If the system is not public, the caller must have access to the namespace or name (encoded in the system ID).\",\"params\":{\"callData\":\"The data to pass with the call, function selector (4 bytes) followed by the ABI encoded parameters.\",\"systemId\":\"The ID of the system to be called.\"},\"returns\":{\"_0\":\"The abi encoded return data from the called system.\"}},\"callFrom(address,bytes32,bytes)\":{\"details\":\"If the system is not public, the delegator must have access to the namespace or name (encoded in the system ID).\",\"params\":{\"callData\":\"The data to pass with the call, function selector (4 bytes) followed by the ABI encoded parameters.\",\"delegator\":\"The address on whose behalf the call is made.\",\"systemId\":\"The ID of the system to be called.\"},\"returns\":{\"_0\":\"The abi encoded return data from the called system.\"}},\"creator()\":{\"returns\":{\"_0\":\"The address of the World's creator.\"}},\"initialize(address)\":{\"details\":\"Can only be called once by the creator.\",\"params\":{\"initModule\":\"The InitModule to be installed during initialization.\"}},\"installRootModule(address,bytes)\":{\"details\":\"Requires the caller to own the root namespace. The module is delegatecalled and installed in the root namespace.\",\"params\":{\"encodedArgs\":\"The ABI encoded arguments for the module installation.\",\"module\":\"The module to be installed.\"}},\"storeVersion()\":{\"returns\":{\"version\":\"The protocol version of the Store contract.\"}},\"worldVersion()\":{\"returns\":{\"_0\":\"The protocol version of the World.\"}}},\"title\":\"IWorld\",\"version\":1},\"userdoc\":{\"errors\":{\"EncodedLengths_InvalidLength(uint256)\":[{\"notice\":\"Error raised when the provided encoded lengths has an invalid length.\"}],\"FieldLayout_Empty()\":[{\"notice\":\"Error raised when the provided field layout is empty.\"}],\"FieldLayout_InvalidStaticDataLength(uint256,uint256)\":[{\"notice\":\"Error raised when the provided field layout has an invalid static data length.\"}],\"FieldLayout_StaticLengthDoesNotFitInAWord(uint256)\":[{\"notice\":\"Error raised when the provided field layout has a static data length that does not fit in a word (32 bytes).\"}],\"FieldLayout_StaticLengthIsNotZero(uint256)\":[{\"notice\":\"Error raised when the provided field layout has a nonzero static data length.\"}],\"FieldLayout_StaticLengthIsZero(uint256)\":[{\"notice\":\"Error raised when the provided field layout has a static data length of zero.\"}],\"FieldLayout_TooManyDynamicFields(uint256,uint256)\":[{\"notice\":\"Error raised when the provided field layout has too many dynamic fields.\"}],\"FieldLayout_TooManyFields(uint256,uint256)\":[{\"notice\":\"Error raised when the provided field layout has too many fields.\"}],\"Module_AlreadyInstalled()\":[{\"notice\":\"Error raised if the provided module is already installed.\"}],\"Module_MissingDependency(address)\":[{\"notice\":\"Error raised if the provided module is missing a dependency.\"}],\"Module_NonRootInstallNotSupported()\":[{\"notice\":\"Error raised if installing in non-root is not supported.\"}],\"Module_RootInstallNotSupported()\":[{\"notice\":\"Error raised if installing in root is not supported.\"}],\"Schema_InvalidLength(uint256)\":[{\"notice\":\"Error raised when the provided schema has an invalid length.\"}],\"Schema_StaticTypeAfterDynamicType()\":[{\"notice\":\"Error raised when a static type is placed after a dynamic type in a schema.\"}],\"Slice_OutOfBounds(bytes,uint256,uint256)\":[{\"notice\":\"Error raised when the provided slice is out of bounds.\"}],\"Store_IndexOutOfBounds(uint256,uint256)\":[{\"notice\":\"Error raised if the provided index is out of bounds.\"}],\"Store_InvalidBounds(uint256,uint256)\":[{\"notice\":\"Error raised if the provided slice bounds are invalid.\"}],\"Store_InvalidFieldNamesLength(uint256,uint256)\":[{\"notice\":\"Error raised if the provided field names length is invalid.\"}],\"Store_InvalidKeyNamesLength(uint256,uint256)\":[{\"notice\":\"Error raised if the provided key names length is invalid.\"}],\"Store_InvalidResourceType(bytes2,bytes32,string)\":[{\"notice\":\"Error raised if the provided resource ID cannot be found.\"}],\"Store_InvalidSplice(uint40,uint40,uint40)\":[{\"notice\":\"Error raised if the provided splice is invalid.\"}],\"Store_InvalidStaticDataLength(uint256,uint256)\":[{\"notice\":\"Error raised if the provided static data length is invalid.\"}],\"Store_InvalidValueSchemaDynamicLength(uint256,uint256)\":[{\"notice\":\"Error raised if the provided schema dynamic length is invalid.\"}],\"Store_InvalidValueSchemaLength(uint256,uint256)\":[{\"notice\":\"Error raised if the provided value schema length is invalid.\"}],\"Store_InvalidValueSchemaStaticLength(uint256,uint256)\":[{\"notice\":\"Error raised if the provided schema static length is invalid.\"}],\"Store_TableAlreadyExists(bytes32,string)\":[{\"notice\":\"Error raised if the provided table already exists.\"}],\"Store_TableNotFound(bytes32,string)\":[{\"notice\":\"Error raised if the provided table cannot be found.\"}],\"World_AccessDenied(string,address)\":[{\"notice\":\"Raised when a user tries to access a resource they don't have permission for.\"}],\"World_AlreadyInitialized()\":[{\"notice\":\"Raised when trying to initialize an already initialized World.\"}],\"World_CallbackNotAllowed(bytes4)\":[{\"notice\":\"Raised when the World is calling itself via an external call.\"}],\"World_DelegationNotFound(address,address)\":[{\"notice\":\"Raised when the specified delegation is not found.\"}],\"World_FunctionSelectorAlreadyExists(bytes4)\":[{\"notice\":\"Raised when trying to register a function selector that already exists.\"}],\"World_FunctionSelectorNotFound(bytes4)\":[{\"notice\":\"Raised when the specified function selector is not found.\"}],\"World_InsufficientBalance(uint256,uint256)\":[{\"notice\":\"Raised when there's an insufficient balance for a particular operation.\"}],\"World_InterfaceNotSupported(address,bytes4)\":[{\"notice\":\"Raised when the specified interface is not supported by the contract.\"}],\"World_InvalidNamespace(bytes14)\":[{\"notice\":\"Raised when an namespace contains an invalid sequence of characters (\\\"__\\\").\"}],\"World_InvalidResourceId(bytes32,string)\":[{\"notice\":\"Raised when an invalid resource ID is provided.\"}],\"World_InvalidResourceType(bytes2,bytes32,string)\":[{\"notice\":\"Raised when an invalid resource type is provided.\"}],\"World_ResourceAlreadyExists(bytes32,string)\":[{\"notice\":\"Raised when trying to register a resource that already exists.\"}],\"World_ResourceNotFound(bytes32,string)\":[{\"notice\":\"Raised when the specified resource is not found.\"}],\"World_SystemAlreadyExists(address)\":[{\"notice\":\"Raised when trying to register a system that already exists.\"}],\"World_UnlimitedDelegationNotAllowed()\":[{\"notice\":\"Raised when trying to create an unlimited delegation in a context where it is not allowed, e.g. when registering a namespace fallback delegation.\"}]},\"events\":{\"HelloStore(bytes32)\":{\"notice\":\"Emitted when the Store is created.\"},\"HelloWorld(bytes32)\":{\"notice\":\"Emitted when the World is created.\"},\"Store_DeleteRecord(bytes32,bytes32[])\":{\"notice\":\"Emitted when a record is deleted from the store.\"},\"Store_SetRecord(bytes32,bytes32[],bytes,bytes32,bytes)\":{\"notice\":\"Emitted when a new record is set in the store.\"},\"Store_SpliceDynamicData(bytes32,bytes32[],uint8,uint48,uint40,bytes32,bytes)\":{\"notice\":\"Emitted when dynamic data in the store is spliced.\"},\"Store_SpliceStaticData(bytes32,bytes32[],uint48,bytes)\":{\"notice\":\"Emitted when static data in the store is spliced.\"}},\"kind\":\"user\",\"methods\":{\"call(bytes32,bytes)\":{\"notice\":\"Call the system at the given system ID.\"},\"callFrom(address,bytes32,bytes)\":{\"notice\":\"Call the system at the given system ID on behalf of the given delegator.\"},\"creator()\":{\"notice\":\"Retrieve the immutable original deployer of the World.\"},\"getDynamicField(bytes32,bytes32[],uint8)\":{\"notice\":\"Get a single dynamic field from the given tableId and key tuple at the given dynamic field index. (Dynamic field index = field index - number of static fields)\"},\"getDynamicFieldLength(bytes32,bytes32[],uint8)\":{\"notice\":\"Get the byte length of a single dynamic field from the given tableId and key tuple\"},\"getDynamicFieldSlice(bytes32,bytes32[],uint8,uint256,uint256)\":{\"notice\":\"Get a byte slice (including start, excluding end) of a single dynamic field from the given tableId and key tuple, with the given value field layout. The slice is unchecked and will return invalid data if `start`:`end` overflow.\"},\"getField(bytes32,bytes32[],uint8)\":{\"notice\":\"Get a single field from the given tableId and key tuple, loading the field layout from storage\"},\"getField(bytes32,bytes32[],uint8,bytes32)\":{\"notice\":\"Get a single field from the given tableId and key tuple, with the given field layout\"},\"getFieldLength(bytes32,bytes32[],uint8)\":{\"notice\":\"Get the byte length of a single field from the given tableId and key tuple, loading the field layout from storage\"},\"getFieldLength(bytes32,bytes32[],uint8,bytes32)\":{\"notice\":\"Get the byte length of a single field from the given tableId and key tuple, with the given value field layout\"},\"getRecord(bytes32,bytes32[])\":{\"notice\":\"Get full record (all fields, static and dynamic data) for the given tableId and key tuple, loading the field layout from storage\"},\"getRecord(bytes32,bytes32[],bytes32)\":{\"notice\":\"Get full record (all fields, static and dynamic data) for the given tableId and key tuple, with the given field layout\"},\"getStaticField(bytes32,bytes32[],uint8,bytes32)\":{\"notice\":\"Get a single static field from the given tableId and key tuple, with the given value field layout. Note: the field value is left-aligned in the returned bytes32, the rest of the word is not zeroed out. Consumers are expected to truncate the returned value as needed.\"},\"initialize(address)\":{\"notice\":\"Initializes the World.\"},\"installRootModule(address,bytes)\":{\"notice\":\"Install the given root module in the World.\"},\"storeVersion()\":{\"notice\":\"Returns the protocol version of the Store contract.\"},\"worldVersion()\":{\"notice\":\"Retrieve the protocol version of the World.\"}},\"notice\":\"This interface integrates all systems and associated function selectors that are dynamically registered in the World during deployment.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/codegen/world/IWorld.sol\":\"IWorld\"},\"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\":{\"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/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/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/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/worldResourceTypes.sol\":{\"keccak256\":\"0xeb042e7d3638430f6fd394107f3237cf14e4325154f0098624e8a7826584d465\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://39e0b8eb87616b661f5a4f2fd7e1a727bd19b7fd8d40ad3d93fda26822f433ea\",\"dweb:/ipfs/QmacYMatKV9pwEwirVRY9a6r89RoNs5yk99ic37ieWA8Dk\"]},\"src/codegen/common.sol\":{\"keccak256\":\"0x2d0a0176c583fcd95e430978a48ca29a38536c01b57b6effd08697d2d2bf5f42\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d1ea5054e1e53b703345992c9ef61e372f6da66247fcb4e89c279055f9085\",\"dweb:/ipfs/QmXCygeJuEesDRSAamMfJZU9Qz5UCz3dmkBj7SGfEvEEY7\"]},\"src/codegen/index.sol\":{\"keccak256\":\"0x84ff02d4275be694bfbe1e60e24539a891dda5df3bacf04f0eb2a974425603d0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f88775b86cdc8322742e528072b64d01df3d3ef70d4fc5104412522e468ae4e2\",\"dweb:/ipfs/Qme75CeS2sA8pr1Tyx9GN5atmuG4aBGjMPaagaGtYTjc2R\"]},\"src/codegen/tables/Actions.sol\":{\"keccak256\":\"0x63cd48bebaa0414728e9be2c856e4eb01efaead6627a6615da4c77b886805cef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1dfe138555b67362f41c26ce1ab074bfc1fcc4e7c6fd0284b82cc699d80d392\",\"dweb:/ipfs/QmNf8UGE3FZ4U96HkeioE4peWWz1SKPAjhKRrGnpEnCdkQ\"]},\"src/codegen/tables/Admin.sol\":{\"keccak256\":\"0xe3b7e993ca2e420d73b845fb37388d453486e24522b941503a2f81c639769725\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e638c35d3ec5805180122b70849bd3a93aa680f3251ac9e7fe4f0ff24722f614\",\"dweb:/ipfs/QmVL3xJPrsVDgXQTdxBEkq4PRmyNDCFHGHKJxLQzuFy9XJ\"]},\"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/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\":\"0x1f0b21a82c18d474347446546973619289392ee9cc745eccbfb4ba802771b2e2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f0a514e9aa8c0265e8ac7284587cdfec829ad4904e511a284d44a325f9ee511b\",\"dweb:/ipfs/QmYGbphJpnBQMsTEtAM78kqH56FrzrmBFVNthRM4WLdUSQ\"]},\"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\":\"0xe941a99c5bc6b4f21b69b4ad61870a3c4b35fa3a7d8e162c75ac3e7515717891\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://eaa285996201485c500f114b98515ce121d87ec29780085dc509d32dff96b227\",\"dweb:/ipfs/QmbnDdw5KqwfGspTKgikXCkvn6Gi6mVWca2yXiPoumhEJP\"]},\"src/codegen/tables/UltimateDominionConfig.sol\":{\"keccak256\":\"0x6f439f3fef2c4db3b295718bb3e277f59500a3183f2306fe70890a30c3eeff26\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bde32ff627c137c1b52e6f45ff82df52eee9e6fe8fa668fc791132dba187f256\",\"dweb:/ipfs/Qmcj4S8ysUA1Lv8xbA5i1dzn4wwKPQrCEjpUd1MW6rh21w\"]},\"src/codegen/world/IActionSystem.sol\":{\"keccak256\":\"0x3ea10f6af2b29e07f658e961113a68db383bb5df7ec853bd797bd1cc14d19b0d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c834cb0bb80ffe10c6175f8a16b827dde9804d459e6aa33691484e419587d47f\",\"dweb:/ipfs/QmXnLXquHjNXN8CCsEL3NPNrQHW6UWY78oginRPtcHZFcw\"]},\"src/codegen/world/ICharacterSystem.sol\":{\"keccak256\":\"0x54157279932a37b055d247901f034848c1f0bffbf262028cf9c69eeedc9b7235\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ead77ae9ab020f705a998be6229e975b9352486deaa9aa800b6de10338190782\",\"dweb:/ipfs/QmaLrytghaAH6ipaBr4XwsaBcCzeVa5gujHGRNxeztuo4X\"]},\"src/codegen/world/ICombatSystem.sol\":{\"keccak256\":\"0x8b522a844626b33d69ae186dd26f2f7bfd921bf92ed7ed0cee2b8c349d9b64f9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://647f99949a4584cf4b528415ffea01ad243147548455fe5a8373b042b6af3087\",\"dweb:/ipfs/QmYsgXQDTwrqg7YSJkKtiNZzf63f4jdA4xfni5gb9ap5K5\"]},\"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\":\"0xc6caadf1800d688083c234a12cd151746f0271be03a50bb6a654634270ab0864\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://084766afac89e6f74162f69534635f90ec56570019223e22d20342f7853fb4e0\",\"dweb:/ipfs/QmbrQXrTewfgW2NydLgPCdt3Vton5V7nfE7HViXtyrMnoK\"]},\"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\":\"0xfb774a3d4388291fa5bae54bf1c592cc366a0585e6d24388dfeebaf3abd666b4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0986371fcb9f53bac88f2c190faf0f5a77fac686eced664aed5f2f1eb6eaca64\",\"dweb:/ipfs/QmWdgLEV31t27nNQC1KGEfaZHFcuBUayxHm2giZJpAG8hv\"]},\"src/interfaces/Structs.sol\":{\"keccak256\":\"0x6259111a19c9e329bd16a154bca9afa89339ce179d278647e34bcdff1868d0de\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c67088e2ecdb887174b16cdaf87299ad3b3871d7ce1f8c4c51e8def5e6cc8fb5\",\"dweb:/ipfs/QmR2SXkYEkSqaacU6rWGsLdZiefy5kcsVqhvzg4Kob2fk1\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.24+commit.e11b9ed9"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"uint256","name":"length","type":"uint256"}],"type":"error","name":"EncodedLengths_InvalidLength"},{"inputs":[],"type":"error","name":"FieldLayout_Empty"},{"inputs":[{"internalType":"uint256","name":"staticDataLength","type":"uint256"},{"internalType":"uint256","name":"computedStaticDataLength","type":"uint256"}],"type":"error","name":"FieldLayout_InvalidStaticDataLength"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"FieldLayout_StaticLengthDoesNotFitInAWord"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"FieldLayout_StaticLengthIsNotZero"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"FieldLayout_StaticLengthIsZero"},{"inputs":[{"internalType":"uint256","name":"numFields","type":"uint256"},{"internalType":"uint256","name":"maxFields","type":"uint256"}],"type":"error","name":"FieldLayout_TooManyDynamicFields"},{"inputs":[{"internalType":"uint256","name":"numFields","type":"uint256"},{"internalType":"uint256","name":"maxFields","type":"uint256"}],"type":"error","name":"FieldLayout_TooManyFields"},{"inputs":[],"type":"error","name":"Module_AlreadyInstalled"},{"inputs":[{"internalType":"address","name":"dependency","type":"address"}],"type":"error","name":"Module_MissingDependency"},{"inputs":[],"type":"error","name":"Module_NonRootInstallNotSupported"},{"inputs":[],"type":"error","name":"Module_RootInstallNotSupported"},{"inputs":[{"internalType":"uint256","name":"length","type":"uint256"}],"type":"error","name":"Schema_InvalidLength"},{"inputs":[],"type":"error","name":"Schema_StaticTypeAfterDynamicType"},{"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":"uint256","name":"length","type":"uint256"},{"internalType":"uint256","name":"accessedIndex","type":"uint256"}],"type":"error","name":"Store_IndexOutOfBounds"},{"inputs":[{"internalType":"uint256","name":"start","type":"uint256"},{"internalType":"uint256","name":"end","type":"uint256"}],"type":"error","name":"Store_InvalidBounds"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidFieldNamesLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidKeyNamesLength"},{"inputs":[{"internalType":"bytes2","name":"expected","type":"bytes2"},{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"Store_InvalidResourceType"},{"inputs":[{"internalType":"uint40","name":"startWithinField","type":"uint40"},{"internalType":"uint40","name":"deleteCount","type":"uint40"},{"internalType":"uint40","name":"fieldLength","type":"uint40"}],"type":"error","name":"Store_InvalidSplice"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidStaticDataLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidValueSchemaDynamicLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidValueSchemaLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidValueSchemaStaticLength"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"string","name":"tableIdString","type":"string"}],"type":"error","name":"Store_TableAlreadyExists"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"string","name":"tableIdString","type":"string"}],"type":"error","name":"Store_TableNotFound"},{"inputs":[{"internalType":"string","name":"resource","type":"string"},{"internalType":"address","name":"caller","type":"address"}],"type":"error","name":"World_AccessDenied"},{"inputs":[],"type":"error","name":"World_AlreadyInitialized"},{"inputs":[{"internalType":"bytes4","name":"functionSelector","type":"bytes4"}],"type":"error","name":"World_CallbackNotAllowed"},{"inputs":[{"internalType":"address","name":"delegator","type":"address"},{"internalType":"address","name":"delegatee","type":"address"}],"type":"error","name":"World_DelegationNotFound"},{"inputs":[{"internalType":"bytes4","name":"functionSelector","type":"bytes4"}],"type":"error","name":"World_FunctionSelectorAlreadyExists"},{"inputs":[{"internalType":"bytes4","name":"functionSelector","type":"bytes4"}],"type":"error","name":"World_FunctionSelectorNotFound"},{"inputs":[{"internalType":"uint256","name":"balance","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"type":"error","name":"World_InsufficientBalance"},{"inputs":[{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"type":"error","name":"World_InterfaceNotSupported"},{"inputs":[{"internalType":"bytes14","name":"namespace","type":"bytes14"}],"type":"error","name":"World_InvalidNamespace"},{"inputs":[{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"World_InvalidResourceId"},{"inputs":[{"internalType":"bytes2","name":"expected","type":"bytes2"},{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"World_InvalidResourceType"},{"inputs":[{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"World_ResourceAlreadyExists"},{"inputs":[{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"World_ResourceNotFound"},{"inputs":[{"internalType":"address","name":"system","type":"address"}],"type":"error","name":"World_SystemAlreadyExists"},{"inputs":[],"type":"error","name":"World_UnlimitedDelegationNotAllowed"},{"inputs":[{"internalType":"bytes32","name":"storeVersion","type":"bytes32","indexed":true}],"type":"event","name":"HelloStore","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"worldVersion","type":"bytes32","indexed":true}],"type":"event","name":"HelloWorld","anonymous":false},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]","indexed":false}],"type":"event","name":"Store_DeleteRecord","anonymous":false},{"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":"uint8","name":"dynamicFieldIndex","type":"uint8","indexed":false},{"internalType":"uint48","name":"start","type":"uint48","indexed":false},{"internalType":"uint40","name":"deleteCount","type":"uint40","indexed":false},{"internalType":"EncodedLengths","name":"encodedLengths","type":"bytes32","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Store_SpliceDynamicData","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":"UD___calculateMagicAttack"},{"inputs":[{"internalType":"struct PhysicalAttackStats","name":"attackStats","type":"tuple","components":[{"internalType":"int256","name":"bonusDamage","type":"int256"},{"internalType":"int256","name":"armorPenetration","type":"int256"},{"internalType":"int256","name":"attackModifierBonus","type":"int256"},{"internalType":"int256","name":"critChanceBonus","type":"int256"},{"internalType":"uint8[]","name":"classRestrictions","type":"uint8[]"}]},{"internalType":"bytes32","name":"attackerId","type":"bytes32"},{"internalType":"bytes32","name":"defenderId","type":"bytes32"},{"internalType":"uint256","name":"weaponId","type":"uint256"},{"internalType":"uint256","name":"randomNumber","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"UD___calculatePhysicalAttack","outputs":[{"internalType":"int256","name":"damage","type":"int256"},{"internalType":"bool","name":"hit","type":"bool"},{"internalType":"bool","name":"crit","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"entityId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"UD__applyEquipmentBonuses","outputs":[{"internalType":"struct AdjustedCombatStats","name":"modifiedStats","type":"tuple","components":[{"internalType":"uint256","name":"adjustedStrength","type":"uint256"},{"internalType":"uint256","name":"adjustedAgility","type":"uint256"},{"internalType":"uint256","name":"adjustedIntelligence","type":"uint256"},{"internalType":"uint256","name":"adjustedArmor","type":"uint256"},{"internalType":"uint256","name":"adjustedMaxHp","type":"uint256"},{"internalType":"int256","name":"currentHp","type":"int256"},{"internalType":"uint256","name":"level","type":"uint256"},{"internalType":"uint256","name":"class","type":"uint256"}]}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"bytes32","name":"actionId","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"UD__assignActionToCharacter"},{"inputs":[{"internalType":"uint256","name":"mobLevel","type":"uint256"},{"internalType":"uint256","name":"randomNumber","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"UD__calculateGoldDrop","outputs":[{"internalType":"uint256","name":"dropAmount","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"randomNumber","type":"uint256"},{"internalType":"uint256","name":"itemId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"UD__calculateItemDrop","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"uint256","name":"itemId","type":"uint256"}],"stateMutability":"view","type":"function","name":"UD__checkRequirements","outputs":[{"internalType":"bool","name":"canUse","type":"bool"}]},{"inputs":[{"internalType":"enum ActionType","name":"actionType","type":"uint8"},{"internalType":"bytes","name":"actionStats","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"UD__createAction","outputs":[{"internalType":"bytes32","name":"actionId","type":"bytes32"}]},{"inputs":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"uint256","name":"supply","type":"uint256"},{"internalType":"uint256","name":"dropChance","type":"uint256"},{"internalType":"bytes","name":"stats","type":"bytes"},{"internalType":"string","name":"itemMetadataURI","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"UD__createItem","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"enum ItemType[]","name":"itemTypes","type":"uint8[]"},{"internalType":"uint256[]","name":"supply","type":"uint256[]"},{"internalType":"uint256[]","name":"dropChances","type":"uint256[]"},{"internalType":"bytes[]","name":"stats","type":"bytes[]"},{"internalType":"string[]","name":"itemMetadataURIs","type":"string[]"}],"stateMutability":"nonpayable","type":"function","name":"UD__createItems"},{"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":"UD__createMatch","outputs":[{"internalType":"bytes32","name":"encounterId","type":"bytes32"}]},{"inputs":[{"internalType":"enum MobType","name":"mobType","type":"uint8"},{"internalType":"bytes","name":"stats","type":"bytes"},{"internalType":"string","name":"mobMetadataUri","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"UD__createMob","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"enum MobType[]","name":"mobTypes","type":"uint8[]"},{"internalType":"bytes[]","name":"stats","type":"bytes[]"},{"internalType":"string[]","name":"mobMetadataURIs","type":"string[]"}],"stateMutability":"nonpayable","type":"function","name":"UD__createMobs"},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"UD__dropGold"},{"inputs":[{"internalType":"uint256","name":"itemId","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"UD__dropItem"},{"inputs":[{"internalType":"uint256[]","name":"itemIds","type":"uint256[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"},{"internalType":"bytes32[]","name":"characterIds","type":"bytes32[]"}],"stateMutability":"nonpayable","type":"function","name":"UD__dropItems"},{"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":"UD__endTurn"},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"UD__enterGame"},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"bytes32","name":"actionId","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"UD__equipAction"},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"uint256[]","name":"itemIds","type":"uint256[]"}],"stateMutability":"nonpayable","type":"function","name":"UD__equipItems"},{"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":"UD__executeCombat"},{"inputs":[{"internalType":"uint256","name":"itemId","type":"uint256"}],"stateMutability":"view","type":"function","name":"UD__getArmorStats","outputs":[{"internalType":"struct ArmorStats","name":"_ArmorStats","type":"tuple","components":[{"internalType":"int256","name":"agiModifier","type":"int256"},{"internalType":"uint256","name":"armorModifier","type":"uint256"},{"internalType":"uint8[]","name":"classRestrictions","type":"uint8[]"},{"internalType":"int256","name":"hitPointModifier","type":"int256"},{"internalType":"int256","name":"intModifier","type":"int256"},{"internalType":"uint256","name":"minLevel","type":"uint256"},{"internalType":"int256","name":"strModifier","type":"int256"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"UD__getCharacterToken","outputs":[{"internalType":"address","name":"_characterToken","type":"address"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"pure","type":"function","name":"UD__getCharacterTokenId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"UD__getClass","outputs":[{"internalType":"enum Classes","name":"_class","type":"uint8"}]},{"inputs":[{"internalType":"uint256","name":"experience","type":"uint256"}],"stateMutability":"view","type":"function","name":"UD__getCurrentAvailableLevel","outputs":[{"internalType":"uint256","name":"currentLevel","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"UD__getCurrentItemsCounter","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"encounterId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"UD__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":"uint16","name":"x","type":"uint16"},{"internalType":"uint16","name":"y","type":"uint16"}],"stateMutability":"view","type":"function","name":"UD__getEntitiesAtPosition","outputs":[{"internalType":"bytes32[]","name":"entitiesAtPosition","type":"bytes32[]"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"UD__getEntropy","outputs":[{"internalType":"address","name":"_entropy","type":"address"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"UD__getExperience","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"UD__getGoldToken","outputs":[{"internalType":"address","name":"_goldToken","type":"address"}]},{"inputs":[{"internalType":"uint256","name":"itemId","type":"uint256"}],"stateMutability":"view","type":"function","name":"UD__getItemType","outputs":[{"internalType":"enum ItemType","name":"","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"UD__getItemsContract","outputs":[{"internalType":"address","name":"_erc1155","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"UD__getLootManagerSystem","outputs":[{"internalType":"address","name":"_lootManager","type":"address"}]},{"inputs":[{"internalType":"bytes32","name":"entityId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"UD__getMob","outputs":[{"internalType":"struct MobsData","name":"","type":"tuple","components":[{"internalType":"enum MobType","name":"mobType","type":"uint8"},{"internalType":"bytes","name":"mobStats","type":"bytes"},{"internalType":"string","name":"mobMetadata","type":"string"}]}]},{"inputs":[{"internalType":"uint256","name":"mobId","type":"uint256"}],"stateMutability":"view","type":"function","name":"UD__getMob","outputs":[{"internalType":"struct MobsData","name":"","type":"tuple","components":[{"internalType":"enum MobType","name":"mobType","type":"uint8"},{"internalType":"bytes","name":"mobStats","type":"bytes"},{"internalType":"string","name":"mobMetadata","type":"string"}]}]},{"inputs":[{"internalType":"bytes32","name":"entityId","type":"bytes32"}],"stateMutability":"pure","type":"function","name":"UD__getMobId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"entityId","type":"bytes32"}],"stateMutability":"pure","type":"function","name":"UD__getMobPosition","outputs":[{"internalType":"uint16","name":"x","type":"uint16"},{"internalType":"uint16","name":"y","type":"uint16"}]},{"inputs":[{"internalType":"uint256","name":"mobId","type":"uint256"}],"stateMutability":"view","type":"function","name":"UD__getMonsterStats","outputs":[{"internalType":"struct MonsterStats","name":"","type":"tuple","components":[{"internalType":"uint256","name":"agility","type":"uint256"},{"internalType":"uint256","name":"armor","type":"uint256"},{"internalType":"enum Classes","name":"class","type":"uint8"},{"internalType":"uint256","name":"experience","type":"uint256"},{"internalType":"uint256","name":"hitPoints","type":"uint256"},{"internalType":"uint256","name":"intelligence","type":"uint256"},{"internalType":"uint256[]","name":"inventory","type":"uint256[]"},{"internalType":"uint256","name":"level","type":"uint256"},{"internalType":"uint256","name":"strength","type":"uint256"}]}]},{"inputs":[{"internalType":"bytes32","name":"entityId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"UD__getMonsterStats","outputs":[{"internalType":"struct MonsterStats","name":"","type":"tuple","components":[{"internalType":"uint256","name":"agility","type":"uint256"},{"internalType":"uint256","name":"armor","type":"uint256"},{"internalType":"enum Classes","name":"class","type":"uint8"},{"internalType":"uint256","name":"experience","type":"uint256"},{"internalType":"uint256","name":"hitPoints","type":"uint256"},{"internalType":"uint256","name":"intelligence","type":"uint256"},{"internalType":"uint256[]","name":"inventory","type":"uint256[]"},{"internalType":"uint256","name":"level","type":"uint256"},{"internalType":"uint256","name":"strength","type":"uint256"}]}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"UD__getName","outputs":[{"internalType":"bytes32","name":"_name","type":"bytes32"}]},{"inputs":[{"internalType":"uint256","name":"mobId","type":"uint256"}],"stateMutability":"view","type":"function","name":"UD__getNpcStats","outputs":[{"internalType":"struct NPCStats","name":"","type":"tuple","components":[{"internalType":"string","name":"name","type":"string"},{"internalType":"bytes32[]","name":"storyPathIds","type":"bytes32[]"},{"internalType":"enum Alignment","name":"alignment","type":"uint8"}]}]},{"inputs":[{"internalType":"bytes32","name":"entityId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"UD__getNpcStats","outputs":[{"internalType":"struct NPCStats","name":"","type":"tuple","components":[{"internalType":"string","name":"name","type":"string"},{"internalType":"bytes32[]","name":"storyPathIds","type":"bytes32[]"},{"internalType":"enum Alignment","name":"alignment","type":"uint8"}]}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"UD__getOwner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"pure","type":"function","name":"UD__getOwnerAddress","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"uint256","name":"characterTokenId","type":"uint256"}],"stateMutability":"view","type":"function","name":"UD__getPlayerEntityId","outputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"UD__getPythProvider","outputs":[{"internalType":"address","name":"_provider","type":"address"}]},{"inputs":[{"internalType":"bytes32","name":"entityId","type":"bytes32"}],"stateMutability":"pure","type":"function","name":"UD__getSpawnCounter","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"enum Classes","name":"class","type":"uint8"}],"stateMutability":"view","type":"function","name":"UD__getStarterItems","outputs":[{"internalType":"struct StarterItemsData","name":"data","type":"tuple","components":[{"internalType":"uint256[]","name":"itemIds","type":"uint256[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}]}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"UD__getStats","outputs":[{"internalType":"struct StatsData","name":"","type":"tuple","components":[{"internalType":"uint256","name":"strength","type":"uint256"},{"internalType":"uint256","name":"agility","type":"uint256"},{"internalType":"enum Classes","name":"class","type":"uint8"},{"internalType":"uint256","name":"intelligence","type":"uint256"},{"internalType":"uint256","name":"baseHitPoints","type":"uint256"},{"internalType":"int256","name":"currentHp","type":"int256"},{"internalType":"uint256","name":"experience","type":"uint256"},{"internalType":"uint256","name":"level","type":"uint256"}]}]},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"stateMutability":"view","type":"function","name":"UD__getTotalSupply","outputs":[{"internalType":"uint256","name":"_supply","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"itemId","type":"uint256"}],"stateMutability":"view","type":"function","name":"UD__getWeaponStats","outputs":[{"internalType":"struct WeaponStats","name":"_weaponStats","type":"tuple","components":[{"internalType":"int256","name":"agiModifier","type":"int256"},{"internalType":"uint8[]","name":"classRestrictions","type":"uint8[]"},{"internalType":"int256","name":"hitPointModifier","type":"int256"},{"internalType":"int256","name":"intModifier","type":"int256"},{"internalType":"uint256","name":"maxDamage","type":"uint256"},{"internalType":"uint256","name":"minDamage","type":"uint256"},{"internalType":"uint256","name":"minLevel","type":"uint256"},{"internalType":"int256","name":"strModifier","type":"int256"}]}]},{"inputs":[{"internalType":"bytes32","name":"entityId","type":"bytes32"},{"internalType":"uint16","name":"x","type":"uint16"},{"internalType":"uint16","name":"y","type":"uint16"}],"stateMutability":"view","type":"function","name":"UD__isAtPosition","outputs":[{"internalType":"bool","name":"_isAtPosition","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"uint256","name":"itemId","type":"uint256"}],"stateMutability":"view","type":"function","name":"UD__isEquipped","outputs":[{"internalType":"bool","name":"_isEquipped","type":"bool"}]},{"inputs":[{"internalType":"uint256","name":"itemId","type":"uint256"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"view","type":"function","name":"UD__isItemOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bytes32[]","name":"participants","type":"bytes32[]"}],"stateMutability":"view","type":"function","name":"UD__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":"UD__isParticipant","outputs":[{"internalType":"bool","name":"_isParticipant","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"UD__isValidCharacterId","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"entityId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"UD__isValidMob","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"view","type":"function","name":"UD__isValidOwner","outputs":[{"internalType":"bool","name":"","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":"UD__isValidPvE","outputs":[{"internalType":"bool","name":"_isValidPvE","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"UD__issueStarterItems"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bytes32","name":"name","type":"bytes32"},{"internalType":"string","name":"tokenUri","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"UD__mintCharacter","outputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}]},{"inputs":[{"internalType":"bytes32","name":"entityId","type":"bytes32"},{"internalType":"uint16","name":"x","type":"uint16"},{"internalType":"uint16","name":"y","type":"uint16"}],"stateMutability":"nonpayable","type":"function","name":"UD__move"},{"inputs":[{"internalType":"bytes32","name":"userRandomNumber","type":"bytes32"},{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"enum Classes","name":"class","type":"uint8"}],"stateMutability":"payable","type":"function","name":"UD__rollStats"},{"inputs":[{"internalType":"enum Classes","name":"class","type":"uint8"},{"internalType":"uint256[]","name":"itemIds","type":"uint256[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}],"stateMutability":"nonpayable","type":"function","name":"UD__setStarterItems"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"string","name":"tokenUri","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"UD__setTokenUri"},{"inputs":[{"internalType":"bytes32","name":"entityId","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"UD__spawn"},{"inputs":[{"internalType":"uint256","name":"mobId","type":"uint256"},{"internalType":"uint16","name":"x","type":"uint16"},{"internalType":"uint16","name":"y","type":"uint16"}],"stateMutability":"nonpayable","type":"function","name":"UD__spawnMob","outputs":[{"internalType":"bytes32","name":"entityId","type":"bytes32"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"uint256","name":"itemId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"UD__unequipItem","outputs":[{"internalType":"bool","name":"success","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"string","name":"tokenUri","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"UD__updateTokenUri"},{"inputs":[{"internalType":"struct SystemCallData[]","name":"systemCalls","type":"tuple[]","components":[{"internalType":"ResourceId","name":"systemId","type":"bytes32"},{"internalType":"bytes","name":"callData","type":"bytes"}]}],"stateMutability":"nonpayable","type":"function","name":"batchCall","outputs":[{"internalType":"bytes[]","name":"returnDatas","type":"bytes[]"}]},{"inputs":[{"internalType":"struct SystemCallFromData[]","name":"systemCalls","type":"tuple[]","components":[{"internalType":"address","name":"from","type":"address"},{"internalType":"ResourceId","name":"systemId","type":"bytes32"},{"internalType":"bytes","name":"callData","type":"bytes"}]}],"stateMutability":"nonpayable","type":"function","name":"batchCallFrom","outputs":[{"internalType":"bytes[]","name":"returnDatas","type":"bytes[]"}]},{"inputs":[{"internalType":"ResourceId","name":"systemId","type":"bytes32"},{"internalType":"bytes","name":"callData","type":"bytes"}],"stateMutability":"payable","type":"function","name":"call","outputs":[{"internalType":"bytes","name":"","type":"bytes"}]},{"inputs":[{"internalType":"address","name":"delegator","type":"address"},{"internalType":"ResourceId","name":"systemId","type":"bytes32"},{"internalType":"bytes","name":"callData","type":"bytes"}],"stateMutability":"payable","type":"function","name":"callFrom","outputs":[{"internalType":"bytes","name":"","type":"bytes"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"creator","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"}],"stateMutability":"nonpayable","type":"function","name":"deleteRecord"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"}],"stateMutability":"view","type":"function","name":"getDynamicField","outputs":[{"internalType":"bytes","name":"","type":"bytes"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"}],"stateMutability":"view","type":"function","name":"getDynamicFieldLength","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"},{"internalType":"uint256","name":"start","type":"uint256"},{"internalType":"uint256","name":"end","type":"uint256"}],"stateMutability":"view","type":"function","name":"getDynamicFieldSlice","outputs":[{"internalType":"bytes","name":"data","type":"bytes"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getField","outputs":[{"internalType":"bytes","name":"data","type":"bytes"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"}],"stateMutability":"view","type":"function","name":"getField","outputs":[{"internalType":"bytes","name":"data","type":"bytes"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getFieldLayout","outputs":[{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getFieldLength","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"}],"stateMutability":"view","type":"function","name":"getFieldLength","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getKeySchema","outputs":[{"internalType":"Schema","name":"keySchema","type":"bytes32"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getRecord","outputs":[{"internalType":"bytes","name":"staticData","type":"bytes"},{"internalType":"EncodedLengths","name":"encodedLengths","type":"bytes32"},{"internalType":"bytes","name":"dynamicData","type":"bytes"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"}],"stateMutability":"view","type":"function","name":"getRecord","outputs":[{"internalType":"bytes","name":"staticData","type":"bytes"},{"internalType":"EncodedLengths","name":"encodedLengths","type":"bytes32"},{"internalType":"bytes","name":"dynamicData","type":"bytes"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getStaticField","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getValueSchema","outputs":[{"internalType":"Schema","name":"valueSchema","type":"bytes32"}]},{"inputs":[{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"address","name":"grantee","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"grantAccess"},{"inputs":[{"internalType":"contract IModule","name":"initModule","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"contract IModule","name":"module","type":"address"},{"internalType":"bytes","name":"encodedArgs","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"installModule"},{"inputs":[{"internalType":"contract IModule","name":"module","type":"address"},{"internalType":"bytes","name":"encodedArgs","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"installRootModule"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"},{"internalType":"uint256","name":"byteLengthToPop","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"popFromDynamicField"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"},{"internalType":"bytes","name":"dataToPush","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"pushToDynamicField"},{"inputs":[{"internalType":"address","name":"delegatee","type":"address"},{"internalType":"ResourceId","name":"delegationControlId","type":"bytes32"},{"internalType":"bytes","name":"initCallData","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"registerDelegation"},{"inputs":[{"internalType":"ResourceId","name":"systemId","type":"bytes32"},{"internalType":"string","name":"systemFunctionSignature","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"registerFunctionSelector","outputs":[{"internalType":"bytes4","name":"worldFunctionSelector","type":"bytes4"}]},{"inputs":[{"internalType":"ResourceId","name":"namespaceId","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"registerNamespace"},{"inputs":[{"internalType":"ResourceId","name":"namespaceId","type":"bytes32"},{"internalType":"ResourceId","name":"delegationControlId","type":"bytes32"},{"internalType":"bytes","name":"initCallData","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"registerNamespaceDelegation"},{"inputs":[{"internalType":"ResourceId","name":"systemId","type":"bytes32"},{"internalType":"string","name":"worldFunctionSignature","type":"string"},{"internalType":"string","name":"systemFunctionSignature","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"registerRootFunctionSelector","outputs":[{"internalType":"bytes4","name":"worldFunctionSelector","type":"bytes4"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"contract IStoreHook","name":"hookAddress","type":"address"},{"internalType":"uint8","name":"enabledHooksBitmap","type":"uint8"}],"stateMutability":"nonpayable","type":"function","name":"registerStoreHook"},{"inputs":[{"internalType":"ResourceId","name":"systemId","type":"bytes32"},{"internalType":"contract System","name":"system","type":"address"},{"internalType":"bool","name":"publicAccess","type":"bool"}],"stateMutability":"nonpayable","type":"function","name":"registerSystem"},{"inputs":[{"internalType":"ResourceId","name":"systemId","type":"bytes32"},{"internalType":"contract ISystemHook","name":"hookAddress","type":"address"},{"internalType":"uint8","name":"enabledHooksBitmap","type":"uint8"}],"stateMutability":"nonpayable","type":"function","name":"registerSystemHook"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"},{"internalType":"Schema","name":"keySchema","type":"bytes32"},{"internalType":"Schema","name":"valueSchema","type":"bytes32"},{"internalType":"string[]","name":"keyNames","type":"string[]"},{"internalType":"string[]","name":"fieldNames","type":"string[]"}],"stateMutability":"nonpayable","type":"function","name":"registerTable"},{"inputs":[{"internalType":"ResourceId","name":"namespaceId","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"address","name":"grantee","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"revokeAccess"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"setDynamicField"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"setField"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"},{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"setField"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"bytes","name":"staticData","type":"bytes"},{"internalType":"EncodedLengths","name":"encodedLengths","type":"bytes32"},{"internalType":"bytes","name":"dynamicData","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"setRecord"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"},{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"setStaticField"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"},{"internalType":"uint40","name":"startWithinField","type":"uint40"},{"internalType":"uint40","name":"deleteCount","type":"uint40"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"spliceDynamicData"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint48","name":"start","type":"uint48"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"spliceStaticData"},{"inputs":[],"stateMutability":"view","type":"function","name":"storeVersion","outputs":[{"internalType":"bytes32","name":"version","type":"bytes32"}]},{"inputs":[{"internalType":"ResourceId","name":"fromNamespaceId","type":"bytes32"},{"internalType":"address","name":"toAddress","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"transferBalanceToAddress"},{"inputs":[{"internalType":"ResourceId","name":"fromNamespaceId","type":"bytes32"},{"internalType":"ResourceId","name":"toNamespaceId","type":"bytes32"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"transferBalanceToNamespace"},{"inputs":[{"internalType":"ResourceId","name":"namespaceId","type":"bytes32"},{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[{"internalType":"address","name":"delegatee","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"unregisterDelegation"},{"inputs":[{"internalType":"ResourceId","name":"namespaceId","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"unregisterNamespaceDelegation"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"contract IStoreHook","name":"hookAddress","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"unregisterStoreHook"},{"inputs":[{"internalType":"ResourceId","name":"systemId","type":"bytes32"},{"internalType":"contract ISystemHook","name":"hookAddress","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"unregisterSystemHook"},{"inputs":[],"stateMutability":"view","type":"function","name":"worldVersion","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]}],"devdoc":{"kind":"dev","methods":{"call(bytes32,bytes)":{"details":"If the system is not public, the caller must have access to the namespace or name (encoded in the system ID).","params":{"callData":"The data to pass with the call, function selector (4 bytes) followed by the ABI encoded parameters.","systemId":"The ID of the system to be called."},"returns":{"_0":"The abi encoded return data from the called system."}},"callFrom(address,bytes32,bytes)":{"details":"If the system is not public, the delegator must have access to the namespace or name (encoded in the system ID).","params":{"callData":"The data to pass with the call, function selector (4 bytes) followed by the ABI encoded parameters.","delegator":"The address on whose behalf the call is made.","systemId":"The ID of the system to be called."},"returns":{"_0":"The abi encoded return data from the called system."}},"creator()":{"returns":{"_0":"The address of the World's creator."}},"initialize(address)":{"details":"Can only be called once by the creator.","params":{"initModule":"The InitModule to be installed during initialization."}},"installRootModule(address,bytes)":{"details":"Requires the caller to own the root namespace. The module is delegatecalled and installed in the root namespace.","params":{"encodedArgs":"The ABI encoded arguments for the module installation.","module":"The module to be installed."}},"storeVersion()":{"returns":{"version":"The protocol version of the Store contract."}},"worldVersion()":{"returns":{"_0":"The protocol version of the World."}}},"version":1},"userdoc":{"kind":"user","methods":{"call(bytes32,bytes)":{"notice":"Call the system at the given system ID."},"callFrom(address,bytes32,bytes)":{"notice":"Call the system at the given system ID on behalf of the given delegator."},"creator()":{"notice":"Retrieve the immutable original deployer of the World."},"getDynamicField(bytes32,bytes32[],uint8)":{"notice":"Get a single dynamic field from the given tableId and key tuple at the given dynamic field index. (Dynamic field index = field index - number of static fields)"},"getDynamicFieldLength(bytes32,bytes32[],uint8)":{"notice":"Get the byte length of a single dynamic field from the given tableId and key tuple"},"getDynamicFieldSlice(bytes32,bytes32[],uint8,uint256,uint256)":{"notice":"Get a byte slice (including start, excluding end) of a single dynamic field from the given tableId and key tuple, with the given value field layout. The slice is unchecked and will return invalid data if `start`:`end` overflow."},"getField(bytes32,bytes32[],uint8)":{"notice":"Get a single field from the given tableId and key tuple, loading the field layout from storage"},"getField(bytes32,bytes32[],uint8,bytes32)":{"notice":"Get a single field from the given tableId and key tuple, with the given field layout"},"getFieldLength(bytes32,bytes32[],uint8)":{"notice":"Get the byte length of a single field from the given tableId and key tuple, loading the field layout from storage"},"getFieldLength(bytes32,bytes32[],uint8,bytes32)":{"notice":"Get the byte length of a single field from the given tableId and key tuple, with the given value field layout"},"getRecord(bytes32,bytes32[])":{"notice":"Get full record (all fields, static and dynamic data) for the given tableId and key tuple, loading the field layout from storage"},"getRecord(bytes32,bytes32[],bytes32)":{"notice":"Get full record (all fields, static and dynamic data) for the given tableId and key tuple, with the given field layout"},"getStaticField(bytes32,bytes32[],uint8,bytes32)":{"notice":"Get a single static field from the given tableId and key tuple, with the given value field layout. Note: the field value is left-aligned in the returned bytes32, the rest of the word is not zeroed out. Consumers are expected to truncate the returned value as needed."},"initialize(address)":{"notice":"Initializes the World."},"installRootModule(address,bytes)":{"notice":"Install the given root module in the World."},"storeVersion()":{"notice":"Returns the protocol version of the Store contract."},"worldVersion()":{"notice":"Retrieve the protocol version of the World."}},"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/codegen/world/IWorld.sol":"IWorld"},"evmVersion":"paris","libraries":{}},"sources":{"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/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/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/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/worldResourceTypes.sol":{"keccak256":"0xeb042e7d3638430f6fd394107f3237cf14e4325154f0098624e8a7826584d465","urls":["bzz-raw://39e0b8eb87616b661f5a4f2fd7e1a727bd19b7fd8d40ad3d93fda26822f433ea","dweb:/ipfs/QmacYMatKV9pwEwirVRY9a6r89RoNs5yk99ic37ieWA8Dk"],"license":"MIT"},"src/codegen/common.sol":{"keccak256":"0x2d0a0176c583fcd95e430978a48ca29a38536c01b57b6effd08697d2d2bf5f42","urls":["bzz-raw://720d1ea5054e1e53b703345992c9ef61e372f6da66247fcb4e89c279055f9085","dweb:/ipfs/QmXCygeJuEesDRSAamMfJZU9Qz5UCz3dmkBj7SGfEvEEY7"],"license":"MIT"},"src/codegen/index.sol":{"keccak256":"0x84ff02d4275be694bfbe1e60e24539a891dda5df3bacf04f0eb2a974425603d0","urls":["bzz-raw://f88775b86cdc8322742e528072b64d01df3d3ef70d4fc5104412522e468ae4e2","dweb:/ipfs/Qme75CeS2sA8pr1Tyx9GN5atmuG4aBGjMPaagaGtYTjc2R"],"license":"MIT"},"src/codegen/tables/Actions.sol":{"keccak256":"0x63cd48bebaa0414728e9be2c856e4eb01efaead6627a6615da4c77b886805cef","urls":["bzz-raw://c1dfe138555b67362f41c26ce1ab074bfc1fcc4e7c6fd0284b82cc699d80d392","dweb:/ipfs/QmNf8UGE3FZ4U96HkeioE4peWWz1SKPAjhKRrGnpEnCdkQ"],"license":"MIT"},"src/codegen/tables/Admin.sol":{"keccak256":"0xe3b7e993ca2e420d73b845fb37388d453486e24522b941503a2f81c639769725","urls":["bzz-raw://e638c35d3ec5805180122b70849bd3a93aa680f3251ac9e7fe4f0ff24722f614","dweb:/ipfs/QmVL3xJPrsVDgXQTdxBEkq4PRmyNDCFHGHKJxLQzuFy9XJ"],"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/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":"0x1f0b21a82c18d474347446546973619289392ee9cc745eccbfb4ba802771b2e2","urls":["bzz-raw://f0a514e9aa8c0265e8ac7284587cdfec829ad4904e511a284d44a325f9ee511b","dweb:/ipfs/QmYGbphJpnBQMsTEtAM78kqH56FrzrmBFVNthRM4WLdUSQ"],"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":"0xe941a99c5bc6b4f21b69b4ad61870a3c4b35fa3a7d8e162c75ac3e7515717891","urls":["bzz-raw://eaa285996201485c500f114b98515ce121d87ec29780085dc509d32dff96b227","dweb:/ipfs/QmbnDdw5KqwfGspTKgikXCkvn6Gi6mVWca2yXiPoumhEJP"],"license":"MIT"},"src/codegen/tables/UltimateDominionConfig.sol":{"keccak256":"0x6f439f3fef2c4db3b295718bb3e277f59500a3183f2306fe70890a30c3eeff26","urls":["bzz-raw://bde32ff627c137c1b52e6f45ff82df52eee9e6fe8fa668fc791132dba187f256","dweb:/ipfs/Qmcj4S8ysUA1Lv8xbA5i1dzn4wwKPQrCEjpUd1MW6rh21w"],"license":"MIT"},"src/codegen/world/IActionSystem.sol":{"keccak256":"0x3ea10f6af2b29e07f658e961113a68db383bb5df7ec853bd797bd1cc14d19b0d","urls":["bzz-raw://c834cb0bb80ffe10c6175f8a16b827dde9804d459e6aa33691484e419587d47f","dweb:/ipfs/QmXnLXquHjNXN8CCsEL3NPNrQHW6UWY78oginRPtcHZFcw"],"license":"MIT"},"src/codegen/world/ICharacterSystem.sol":{"keccak256":"0x54157279932a37b055d247901f034848c1f0bffbf262028cf9c69eeedc9b7235","urls":["bzz-raw://ead77ae9ab020f705a998be6229e975b9352486deaa9aa800b6de10338190782","dweb:/ipfs/QmaLrytghaAH6ipaBr4XwsaBcCzeVa5gujHGRNxeztuo4X"],"license":"MIT"},"src/codegen/world/ICombatSystem.sol":{"keccak256":"0x8b522a844626b33d69ae186dd26f2f7bfd921bf92ed7ed0cee2b8c349d9b64f9","urls":["bzz-raw://647f99949a4584cf4b528415ffea01ad243147548455fe5a8373b042b6af3087","dweb:/ipfs/QmYsgXQDTwrqg7YSJkKtiNZzf63f4jdA4xfni5gb9ap5K5"],"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":"0xc6caadf1800d688083c234a12cd151746f0271be03a50bb6a654634270ab0864","urls":["bzz-raw://084766afac89e6f74162f69534635f90ec56570019223e22d20342f7853fb4e0","dweb:/ipfs/QmbrQXrTewfgW2NydLgPCdt3Vton5V7nfE7HViXtyrMnoK"],"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":"0xfb774a3d4388291fa5bae54bf1c592cc366a0585e6d24388dfeebaf3abd666b4","urls":["bzz-raw://0986371fcb9f53bac88f2c190faf0f5a77fac686eced664aed5f2f1eb6eaca64","dweb:/ipfs/QmWdgLEV31t27nNQC1KGEfaZHFcuBUayxHm2giZJpAG8hv"],"license":"MIT"},"src/interfaces/Structs.sol":{"keccak256":"0x6259111a19c9e329bd16a154bca9afa89339ce179d278647e34bcdff1868d0de","urls":["bzz-raw://c67088e2ecdb887174b16cdaf87299ad3b3871d7ce1f8c4c51e8def5e6cc8fb5","dweb:/ipfs/QmR2SXkYEkSqaacU6rWGsLdZiefy5kcsVqhvzg4Kob2fk1"],"license":"MIT"}},"version":1},"id":205} \ No newline at end of file +{"abi":[{"type":"function","name":"UD___calculateMagicAttack","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"UD___calculatePhysicalAttack","inputs":[{"name":"attackStats","type":"tuple","internalType":"struct PhysicalAttackStats","components":[{"name":"bonusDamage","type":"int256","internalType":"int256"},{"name":"armorPenetration","type":"int256","internalType":"int256"},{"name":"attackModifierBonus","type":"int256","internalType":"int256"},{"name":"critChanceBonus","type":"int256","internalType":"int256"},{"name":"classRestrictions","type":"uint8[]","internalType":"uint8[]"}]},{"name":"attackerId","type":"bytes32","internalType":"bytes32"},{"name":"defenderId","type":"bytes32","internalType":"bytes32"},{"name":"weaponId","type":"uint256","internalType":"uint256"},{"name":"randomNumber","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"damage","type":"int256","internalType":"int256"},{"name":"hit","type":"bool","internalType":"bool"},{"name":"crit","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"UD__applyEquipmentBonuses","inputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"modifiedStats","type":"tuple","internalType":"struct AdjustedCombatStats","components":[{"name":"adjustedStrength","type":"uint256","internalType":"uint256"},{"name":"adjustedAgility","type":"uint256","internalType":"uint256"},{"name":"adjustedIntelligence","type":"uint256","internalType":"uint256"},{"name":"adjustedArmor","type":"uint256","internalType":"uint256"},{"name":"adjustedMaxHp","type":"uint256","internalType":"uint256"},{"name":"currentHp","type":"int256","internalType":"int256"},{"name":"level","type":"uint256","internalType":"uint256"},{"name":"class","type":"uint256","internalType":"uint256"}]}],"stateMutability":"view"},{"type":"function","name":"UD__assignActionToCharacter","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"actionId","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"UD__calculateGoldDrop","inputs":[{"name":"mobLevel","type":"uint256","internalType":"uint256"},{"name":"randomNumber","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"dropAmount","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"UD__calculateItemDrop","inputs":[{"name":"randomNumber","type":"uint256","internalType":"uint256"},{"name":"itemId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"UD__checkRequirements","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"itemId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"canUse","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"UD__createAction","inputs":[{"name":"actionType","type":"uint8","internalType":"enum ActionType"},{"name":"actionStats","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"actionId","type":"bytes32","internalType":"bytes32"}],"stateMutability":"nonpayable"},{"type":"function","name":"UD__createItem","inputs":[{"name":"itemType","type":"uint8","internalType":"enum ItemType"},{"name":"supply","type":"uint256","internalType":"uint256"},{"name":"dropChance","type":"uint256","internalType":"uint256"},{"name":"stats","type":"bytes","internalType":"bytes"},{"name":"itemMetadataURI","type":"string","internalType":"string"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"UD__createItems","inputs":[{"name":"itemTypes","type":"uint8[]","internalType":"enum ItemType[]"},{"name":"supply","type":"uint256[]","internalType":"uint256[]"},{"name":"dropChances","type":"uint256[]","internalType":"uint256[]"},{"name":"stats","type":"bytes[]","internalType":"bytes[]"},{"name":"itemMetadataURIs","type":"string[]","internalType":"string[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"UD__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":"UD__createMob","inputs":[{"name":"mobType","type":"uint8","internalType":"enum MobType"},{"name":"stats","type":"bytes","internalType":"bytes"},{"name":"mobMetadataUri","type":"string","internalType":"string"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"UD__createMobs","inputs":[{"name":"mobTypes","type":"uint8[]","internalType":"enum MobType[]"},{"name":"stats","type":"bytes[]","internalType":"bytes[]"},{"name":"mobMetadataURIs","type":"string[]","internalType":"string[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"UD__dropGold","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"UD__dropItem","inputs":[{"name":"itemId","type":"uint256","internalType":"uint256"},{"name":"amount","type":"uint256","internalType":"uint256"},{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"UD__dropItems","inputs":[{"name":"itemIds","type":"uint256[]","internalType":"uint256[]"},{"name":"amounts","type":"uint256[]","internalType":"uint256[]"},{"name":"characterIds","type":"bytes32[]","internalType":"bytes32[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"UD__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":"UD__enterGame","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"UD__equipAction","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"actionId","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"UD__equipItems","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"itemIds","type":"uint256[]","internalType":"uint256[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"UD__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":"UD__getArmorStats","inputs":[{"name":"itemId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"_ArmorStats","type":"tuple","internalType":"struct ArmorStats","components":[{"name":"agiModifier","type":"int256","internalType":"int256"},{"name":"armorModifier","type":"uint256","internalType":"uint256"},{"name":"classRestrictions","type":"uint8[]","internalType":"uint8[]"},{"name":"hitPointModifier","type":"int256","internalType":"int256"},{"name":"intModifier","type":"int256","internalType":"int256"},{"name":"minLevel","type":"uint256","internalType":"uint256"},{"name":"strModifier","type":"int256","internalType":"int256"}]}],"stateMutability":"view"},{"type":"function","name":"UD__getCharacterToken","inputs":[],"outputs":[{"name":"_characterToken","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"UD__getCharacterTokenId","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"pure"},{"type":"function","name":"UD__getClass","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"_class","type":"uint8","internalType":"enum Classes"}],"stateMutability":"view"},{"type":"function","name":"UD__getCurrentAvailableLevel","inputs":[{"name":"experience","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"currentLevel","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"UD__getCurrentItemsCounter","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"UD__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":"UD__getEntitiesAtPosition","inputs":[{"name":"x","type":"uint16","internalType":"uint16"},{"name":"y","type":"uint16","internalType":"uint16"}],"outputs":[{"name":"entitiesAtPosition","type":"bytes32[]","internalType":"bytes32[]"}],"stateMutability":"view"},{"type":"function","name":"UD__getEntropy","inputs":[],"outputs":[{"name":"_entropy","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"UD__getExperience","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"UD__getGoldToken","inputs":[],"outputs":[{"name":"_goldToken","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"UD__getItemType","inputs":[{"name":"itemId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint8","internalType":"enum ItemType"}],"stateMutability":"view"},{"type":"function","name":"UD__getItemsContract","inputs":[],"outputs":[{"name":"_erc1155","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"UD__getLootManagerSystem","inputs":[],"outputs":[{"name":"_lootManager","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"UD__getMob","inputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"tuple","internalType":"struct MobsData","components":[{"name":"mobType","type":"uint8","internalType":"enum MobType"},{"name":"mobStats","type":"bytes","internalType":"bytes"},{"name":"mobMetadata","type":"string","internalType":"string"}]}],"stateMutability":"view"},{"type":"function","name":"UD__getMob","inputs":[{"name":"mobId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"tuple","internalType":"struct MobsData","components":[{"name":"mobType","type":"uint8","internalType":"enum MobType"},{"name":"mobStats","type":"bytes","internalType":"bytes"},{"name":"mobMetadata","type":"string","internalType":"string"}]}],"stateMutability":"view"},{"type":"function","name":"UD__getMobId","inputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"pure"},{"type":"function","name":"UD__getMobPosition","inputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"x","type":"uint16","internalType":"uint16"},{"name":"y","type":"uint16","internalType":"uint16"}],"stateMutability":"pure"},{"type":"function","name":"UD__getMonsterStats","inputs":[{"name":"mobId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"tuple","internalType":"struct MonsterStats","components":[{"name":"agility","type":"uint256","internalType":"uint256"},{"name":"armor","type":"uint256","internalType":"uint256"},{"name":"class","type":"uint8","internalType":"enum Classes"},{"name":"experience","type":"uint256","internalType":"uint256"},{"name":"hitPoints","type":"uint256","internalType":"uint256"},{"name":"intelligence","type":"uint256","internalType":"uint256"},{"name":"inventory","type":"uint256[]","internalType":"uint256[]"},{"name":"level","type":"uint256","internalType":"uint256"},{"name":"strength","type":"uint256","internalType":"uint256"}]}],"stateMutability":"view"},{"type":"function","name":"UD__getMonsterStats","inputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"tuple","internalType":"struct MonsterStats","components":[{"name":"agility","type":"uint256","internalType":"uint256"},{"name":"armor","type":"uint256","internalType":"uint256"},{"name":"class","type":"uint8","internalType":"enum Classes"},{"name":"experience","type":"uint256","internalType":"uint256"},{"name":"hitPoints","type":"uint256","internalType":"uint256"},{"name":"intelligence","type":"uint256","internalType":"uint256"},{"name":"inventory","type":"uint256[]","internalType":"uint256[]"},{"name":"level","type":"uint256","internalType":"uint256"},{"name":"strength","type":"uint256","internalType":"uint256"}]}],"stateMutability":"view"},{"type":"function","name":"UD__getName","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"_name","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"UD__getNpcStats","inputs":[{"name":"mobId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"tuple","internalType":"struct NPCStats","components":[{"name":"name","type":"string","internalType":"string"},{"name":"storyPathIds","type":"bytes32[]","internalType":"bytes32[]"},{"name":"alignment","type":"uint8","internalType":"enum Alignment"}]}],"stateMutability":"view"},{"type":"function","name":"UD__getNpcStats","inputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"tuple","internalType":"struct NPCStats","components":[{"name":"name","type":"string","internalType":"string"},{"name":"storyPathIds","type":"bytes32[]","internalType":"bytes32[]"},{"name":"alignment","type":"uint8","internalType":"enum Alignment"}]}],"stateMutability":"view"},{"type":"function","name":"UD__getOwner","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"UD__getOwnerAddress","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"UD__getPlayerEntityId","inputs":[{"name":"characterTokenId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"UD__getPythProvider","inputs":[],"outputs":[{"name":"_provider","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"UD__getSpawnCounter","inputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"pure"},{"type":"function","name":"UD__getStarterItems","inputs":[{"name":"class","type":"uint8","internalType":"enum Classes"}],"outputs":[{"name":"data","type":"tuple","internalType":"struct StarterItemsData","components":[{"name":"itemIds","type":"uint256[]","internalType":"uint256[]"},{"name":"amounts","type":"uint256[]","internalType":"uint256[]"}]}],"stateMutability":"view"},{"type":"function","name":"UD__getStats","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"tuple","internalType":"struct StatsData","components":[{"name":"strength","type":"uint256","internalType":"uint256"},{"name":"agility","type":"uint256","internalType":"uint256"},{"name":"class","type":"uint8","internalType":"enum Classes"},{"name":"intelligence","type":"uint256","internalType":"uint256"},{"name":"baseHp","type":"uint256","internalType":"uint256"},{"name":"currentHp","type":"int256","internalType":"int256"},{"name":"experience","type":"uint256","internalType":"uint256"},{"name":"level","type":"uint256","internalType":"uint256"}]}],"stateMutability":"view"},{"type":"function","name":"UD__getTotalSupply","inputs":[{"name":"tokenId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"_supply","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"UD__getWeaponStats","inputs":[{"name":"itemId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"_weaponStats","type":"tuple","internalType":"struct WeaponStats","components":[{"name":"agiModifier","type":"int256","internalType":"int256"},{"name":"classRestrictions","type":"uint8[]","internalType":"uint8[]"},{"name":"hitPointModifier","type":"int256","internalType":"int256"},{"name":"intModifier","type":"int256","internalType":"int256"},{"name":"maxDamage","type":"uint256","internalType":"uint256"},{"name":"minDamage","type":"uint256","internalType":"uint256"},{"name":"minLevel","type":"uint256","internalType":"uint256"},{"name":"strModifier","type":"int256","internalType":"int256"}]}],"stateMutability":"view"},{"type":"function","name":"UD__isAtPosition","inputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"},{"name":"x","type":"uint16","internalType":"uint16"},{"name":"y","type":"uint16","internalType":"uint16"}],"outputs":[{"name":"_isAtPosition","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"UD__isEquipped","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"itemId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"_isEquipped","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"UD__isItemOwner","inputs":[{"name":"itemId","type":"uint256","internalType":"uint256"},{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"UD__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":"UD__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":"UD__isValidCharacterId","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"UD__isValidMob","inputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"UD__isValidOwner","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"owner","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"UD__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":"UD__issueStarterItems","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"UD__mintCharacter","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"name","type":"bytes32","internalType":"bytes32"},{"name":"tokenUri","type":"string","internalType":"string"}],"outputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"}],"stateMutability":"nonpayable"},{"type":"function","name":"UD__move","inputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"},{"name":"x","type":"uint16","internalType":"uint16"},{"name":"y","type":"uint16","internalType":"uint16"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"UD__rollStats","inputs":[{"name":"userRandomNumber","type":"bytes32","internalType":"bytes32"},{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"class","type":"uint8","internalType":"enum Classes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"UD__setStarterItems","inputs":[{"name":"class","type":"uint8","internalType":"enum Classes"},{"name":"itemIds","type":"uint256[]","internalType":"uint256[]"},{"name":"amounts","type":"uint256[]","internalType":"uint256[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"UD__setTokenUri","inputs":[{"name":"tokenId","type":"uint256","internalType":"uint256"},{"name":"tokenUri","type":"string","internalType":"string"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"UD__spawn","inputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"UD__spawnMob","inputs":[{"name":"mobId","type":"uint256","internalType":"uint256"},{"name":"x","type":"uint16","internalType":"uint16"},{"name":"y","type":"uint16","internalType":"uint16"}],"outputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"}],"stateMutability":"nonpayable"},{"type":"function","name":"UD__unequipItem","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"itemId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"success","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"UD__updateTokenUri","inputs":[{"name":"characterId","type":"bytes32","internalType":"bytes32"},{"name":"tokenUri","type":"string","internalType":"string"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"batchCall","inputs":[{"name":"systemCalls","type":"tuple[]","internalType":"struct SystemCallData[]","components":[{"name":"systemId","type":"bytes32","internalType":"ResourceId"},{"name":"callData","type":"bytes","internalType":"bytes"}]}],"outputs":[{"name":"returnDatas","type":"bytes[]","internalType":"bytes[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"batchCallFrom","inputs":[{"name":"systemCalls","type":"tuple[]","internalType":"struct SystemCallFromData[]","components":[{"name":"from","type":"address","internalType":"address"},{"name":"systemId","type":"bytes32","internalType":"ResourceId"},{"name":"callData","type":"bytes","internalType":"bytes"}]}],"outputs":[{"name":"returnDatas","type":"bytes[]","internalType":"bytes[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"call","inputs":[{"name":"systemId","type":"bytes32","internalType":"ResourceId"},{"name":"callData","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"","type":"bytes","internalType":"bytes"}],"stateMutability":"payable"},{"type":"function","name":"callFrom","inputs":[{"name":"delegator","type":"address","internalType":"address"},{"name":"systemId","type":"bytes32","internalType":"ResourceId"},{"name":"callData","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"","type":"bytes","internalType":"bytes"}],"stateMutability":"payable"},{"type":"function","name":"creator","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"deleteRecord","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"getDynamicField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"}],"outputs":[{"name":"","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"getDynamicFieldLength","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getDynamicFieldSlice","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"},{"name":"start","type":"uint256","internalType":"uint256"},{"name":"end","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"data","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"getField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"outputs":[{"name":"data","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"getField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"}],"outputs":[{"name":"data","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"getFieldLayout","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"}],"outputs":[{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"stateMutability":"view"},{"type":"function","name":"getFieldLength","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getFieldLength","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getKeySchema","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"}],"outputs":[{"name":"keySchema","type":"bytes32","internalType":"Schema"}],"stateMutability":"view"},{"type":"function","name":"getRecord","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"outputs":[{"name":"staticData","type":"bytes","internalType":"bytes"},{"name":"encodedLengths","type":"bytes32","internalType":"EncodedLengths"},{"name":"dynamicData","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"getRecord","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"}],"outputs":[{"name":"staticData","type":"bytes","internalType":"bytes"},{"name":"encodedLengths","type":"bytes32","internalType":"EncodedLengths"},{"name":"dynamicData","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"getStaticField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getValueSchema","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"}],"outputs":[{"name":"valueSchema","type":"bytes32","internalType":"Schema"}],"stateMutability":"view"},{"type":"function","name":"grantAccess","inputs":[{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"grantee","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initModule","type":"address","internalType":"contract IModule"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"installModule","inputs":[{"name":"module","type":"address","internalType":"contract IModule"},{"name":"encodedArgs","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"installRootModule","inputs":[{"name":"module","type":"address","internalType":"contract IModule"},{"name":"encodedArgs","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"popFromDynamicField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"},{"name":"byteLengthToPop","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"pushToDynamicField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"},{"name":"dataToPush","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"registerDelegation","inputs":[{"name":"delegatee","type":"address","internalType":"address"},{"name":"delegationControlId","type":"bytes32","internalType":"ResourceId"},{"name":"initCallData","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"registerFunctionSelector","inputs":[{"name":"systemId","type":"bytes32","internalType":"ResourceId"},{"name":"systemFunctionSignature","type":"string","internalType":"string"}],"outputs":[{"name":"worldFunctionSelector","type":"bytes4","internalType":"bytes4"}],"stateMutability":"nonpayable"},{"type":"function","name":"registerNamespace","inputs":[{"name":"namespaceId","type":"bytes32","internalType":"ResourceId"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"registerNamespaceDelegation","inputs":[{"name":"namespaceId","type":"bytes32","internalType":"ResourceId"},{"name":"delegationControlId","type":"bytes32","internalType":"ResourceId"},{"name":"initCallData","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"registerRootFunctionSelector","inputs":[{"name":"systemId","type":"bytes32","internalType":"ResourceId"},{"name":"worldFunctionSignature","type":"string","internalType":"string"},{"name":"systemFunctionSignature","type":"string","internalType":"string"}],"outputs":[{"name":"worldFunctionSelector","type":"bytes4","internalType":"bytes4"}],"stateMutability":"nonpayable"},{"type":"function","name":"registerStoreHook","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"hookAddress","type":"address","internalType":"contract IStoreHook"},{"name":"enabledHooksBitmap","type":"uint8","internalType":"uint8"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"registerSystem","inputs":[{"name":"systemId","type":"bytes32","internalType":"ResourceId"},{"name":"system","type":"address","internalType":"contract System"},{"name":"publicAccess","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"registerSystemHook","inputs":[{"name":"systemId","type":"bytes32","internalType":"ResourceId"},{"name":"hookAddress","type":"address","internalType":"contract ISystemHook"},{"name":"enabledHooksBitmap","type":"uint8","internalType":"uint8"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"registerTable","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"},{"name":"keySchema","type":"bytes32","internalType":"Schema"},{"name":"valueSchema","type":"bytes32","internalType":"Schema"},{"name":"keyNames","type":"string[]","internalType":"string[]"},{"name":"fieldNames","type":"string[]","internalType":"string[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceOwnership","inputs":[{"name":"namespaceId","type":"bytes32","internalType":"ResourceId"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"revokeAccess","inputs":[{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"grantee","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setDynamicField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"},{"name":"data","type":"bytes","internalType":"bytes"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setRecord","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"staticData","type":"bytes","internalType":"bytes"},{"name":"encodedLengths","type":"bytes32","internalType":"EncodedLengths"},{"name":"dynamicData","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setStaticField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"},{"name":"data","type":"bytes","internalType":"bytes"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"spliceDynamicData","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"},{"name":"startWithinField","type":"uint40","internalType":"uint40"},{"name":"deleteCount","type":"uint40","internalType":"uint40"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"spliceStaticData","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"start","type":"uint48","internalType":"uint48"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"storeVersion","inputs":[],"outputs":[{"name":"version","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"transferBalanceToAddress","inputs":[{"name":"fromNamespaceId","type":"bytes32","internalType":"ResourceId"},{"name":"toAddress","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"transferBalanceToNamespace","inputs":[{"name":"fromNamespaceId","type":"bytes32","internalType":"ResourceId"},{"name":"toNamespaceId","type":"bytes32","internalType":"ResourceId"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"transferOwnership","inputs":[{"name":"namespaceId","type":"bytes32","internalType":"ResourceId"},{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"unregisterDelegation","inputs":[{"name":"delegatee","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"unregisterNamespaceDelegation","inputs":[{"name":"namespaceId","type":"bytes32","internalType":"ResourceId"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"unregisterStoreHook","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"hookAddress","type":"address","internalType":"contract IStoreHook"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"unregisterSystemHook","inputs":[{"name":"systemId","type":"bytes32","internalType":"ResourceId"},{"name":"hookAddress","type":"address","internalType":"contract ISystemHook"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"worldVersion","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"event","name":"HelloStore","inputs":[{"name":"storeVersion","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"HelloWorld","inputs":[{"name":"worldVersion","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"Store_DeleteRecord","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"}],"anonymous":false},{"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_SpliceDynamicData","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","indexed":false,"internalType":"uint8"},{"name":"start","type":"uint48","indexed":false,"internalType":"uint48"},{"name":"deleteCount","type":"uint40","indexed":false,"internalType":"uint40"},{"name":"encodedLengths","type":"bytes32","indexed":false,"internalType":"EncodedLengths"},{"name":"data","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":"EncodedLengths_InvalidLength","inputs":[{"name":"length","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayout_Empty","inputs":[]},{"type":"error","name":"FieldLayout_InvalidStaticDataLength","inputs":[{"name":"staticDataLength","type":"uint256","internalType":"uint256"},{"name":"computedStaticDataLength","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayout_StaticLengthDoesNotFitInAWord","inputs":[{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayout_StaticLengthIsNotZero","inputs":[{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayout_StaticLengthIsZero","inputs":[{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayout_TooManyDynamicFields","inputs":[{"name":"numFields","type":"uint256","internalType":"uint256"},{"name":"maxFields","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayout_TooManyFields","inputs":[{"name":"numFields","type":"uint256","internalType":"uint256"},{"name":"maxFields","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Module_AlreadyInstalled","inputs":[]},{"type":"error","name":"Module_MissingDependency","inputs":[{"name":"dependency","type":"address","internalType":"address"}]},{"type":"error","name":"Module_NonRootInstallNotSupported","inputs":[]},{"type":"error","name":"Module_RootInstallNotSupported","inputs":[]},{"type":"error","name":"Schema_InvalidLength","inputs":[{"name":"length","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Schema_StaticTypeAfterDynamicType","inputs":[]},{"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":"Store_IndexOutOfBounds","inputs":[{"name":"length","type":"uint256","internalType":"uint256"},{"name":"accessedIndex","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidBounds","inputs":[{"name":"start","type":"uint256","internalType":"uint256"},{"name":"end","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidFieldNamesLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidKeyNamesLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidResourceType","inputs":[{"name":"expected","type":"bytes2","internalType":"bytes2"},{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"Store_InvalidSplice","inputs":[{"name":"startWithinField","type":"uint40","internalType":"uint40"},{"name":"deleteCount","type":"uint40","internalType":"uint40"},{"name":"fieldLength","type":"uint40","internalType":"uint40"}]},{"type":"error","name":"Store_InvalidStaticDataLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidValueSchemaDynamicLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidValueSchemaLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidValueSchemaStaticLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_TableAlreadyExists","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"tableIdString","type":"string","internalType":"string"}]},{"type":"error","name":"Store_TableNotFound","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"tableIdString","type":"string","internalType":"string"}]},{"type":"error","name":"World_AccessDenied","inputs":[{"name":"resource","type":"string","internalType":"string"},{"name":"caller","type":"address","internalType":"address"}]},{"type":"error","name":"World_AlreadyInitialized","inputs":[]},{"type":"error","name":"World_CallbackNotAllowed","inputs":[{"name":"functionSelector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"World_DelegationNotFound","inputs":[{"name":"delegator","type":"address","internalType":"address"},{"name":"delegatee","type":"address","internalType":"address"}]},{"type":"error","name":"World_FunctionSelectorAlreadyExists","inputs":[{"name":"functionSelector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"World_FunctionSelectorNotFound","inputs":[{"name":"functionSelector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"World_InsufficientBalance","inputs":[{"name":"balance","type":"uint256","internalType":"uint256"},{"name":"amount","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"World_InterfaceNotSupported","inputs":[{"name":"contractAddress","type":"address","internalType":"address"},{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"World_InvalidNamespace","inputs":[{"name":"namespace","type":"bytes14","internalType":"bytes14"}]},{"type":"error","name":"World_InvalidResourceId","inputs":[{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"World_InvalidResourceType","inputs":[{"name":"expected","type":"bytes2","internalType":"bytes2"},{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"World_ResourceAlreadyExists","inputs":[{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"World_ResourceNotFound","inputs":[{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"World_SystemAlreadyExists","inputs":[{"name":"system","type":"address","internalType":"address"}]},{"type":"error","name":"World_UnlimitedDelegationNotAllowed","inputs":[]}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"UD___calculateMagicAttack()":"e0cac377","UD___calculatePhysicalAttack((int256,int256,int256,int256,uint8[]),bytes32,bytes32,uint256,uint256)":"bf81ff5d","UD__applyEquipmentBonuses(bytes32)":"54f1f2db","UD__assignActionToCharacter(bytes32,bytes32)":"854cd561","UD__calculateGoldDrop(uint256,uint256)":"c3505171","UD__calculateItemDrop(uint256,uint256)":"2ef4cfcb","UD__checkRequirements(bytes32,uint256)":"bf4dbebc","UD__createAction(uint8,bytes)":"c3344bd2","UD__createItem(uint8,uint256,uint256,bytes,string)":"c2647a81","UD__createItems(uint8[],uint256[],uint256[],bytes[],string[])":"8a2d4e05","UD__createMatch(uint8,bytes32[],bytes32[])":"3e602b01","UD__createMob(uint8,bytes,string)":"8cc68cc7","UD__createMobs(uint8[],bytes[],string[])":"3f93a314","UD__dropGold(bytes32,uint256)":"fda0ce50","UD__dropItem(uint256,uint256,bytes32)":"88c571e1","UD__dropItems(uint256[],uint256[],bytes32[])":"e45cde14","UD__endTurn(bytes32,bytes32,(bytes32,bytes32,bytes32,uint256)[])":"1f357129","UD__enterGame(bytes32)":"b968fa3a","UD__equipAction(bytes32,bytes32)":"3d37a73e","UD__equipItems(bytes32,uint256[])":"2d9ac2be","UD__executeCombat(uint256,bytes32,(bytes32,bytes32,bytes32,uint256)[])":"a0ba1f1e","UD__getArmorStats(uint256)":"e75aa93b","UD__getCharacterToken()":"49d8cf02","UD__getCharacterTokenId(bytes32)":"d97302d0","UD__getClass(bytes32)":"0ae6f9ab","UD__getCurrentAvailableLevel(uint256)":"d453e623","UD__getCurrentItemsCounter()":"4652f280","UD__getEncounter(bytes32)":"55faf03a","UD__getEntitiesAtPosition(uint16,uint16)":"d0f8a4f5","UD__getEntropy()":"b5c691c7","UD__getExperience(bytes32)":"a8b79e60","UD__getGoldToken()":"8b994e32","UD__getItemType(uint256)":"cdaccbae","UD__getItemsContract()":"997f897a","UD__getLootManagerSystem()":"f2cb96f2","UD__getMob(bytes32)":"5ac36570","UD__getMob(uint256)":"622834d0","UD__getMobId(bytes32)":"53d64640","UD__getMobPosition(bytes32)":"8b3f8277","UD__getMonsterStats(bytes32)":"e6c22e06","UD__getMonsterStats(uint256)":"91b22373","UD__getName(bytes32)":"e902af7a","UD__getNpcStats(bytes32)":"a17a6b7f","UD__getNpcStats(uint256)":"35c65325","UD__getOwner(bytes32)":"777c2caf","UD__getOwnerAddress(bytes32)":"4f10aabc","UD__getPlayerEntityId(uint256)":"02ee03fa","UD__getPythProvider()":"e24cefd9","UD__getSpawnCounter(bytes32)":"f4e1633b","UD__getStarterItems(uint8)":"b8bfeca1","UD__getStats(bytes32)":"14b13b0e","UD__getTotalSupply(uint256)":"37007d40","UD__getWeaponStats(uint256)":"810c1dc1","UD__isAtPosition(bytes32,uint16,uint16)":"f48a3972","UD__isEquipped(bytes32,uint256)":"7273e39a","UD__isItemOwner(uint256,address)":"b3634118","UD__isParticipant(address,bytes32[])":"18853912","UD__isParticipant(bytes32,bytes32)":"e9958ea4","UD__isValidCharacterId(bytes32)":"fa1becc4","UD__isValidMob(bytes32)":"bace814a","UD__isValidOwner(bytes32,address)":"43def638","UD__isValidPvE(bytes32[],bytes32[],uint16,uint16)":"c6d5525b","UD__issueStarterItems(bytes32)":"f9d175ed","UD__mintCharacter(address,bytes32,string)":"d408a43b","UD__move(bytes32,uint16,uint16)":"d1138fa1","UD__rollStats(bytes32,bytes32,uint8)":"18f14781","UD__setStarterItems(uint8,uint256[],uint256[])":"2f97d48f","UD__setTokenUri(uint256,string)":"d6556009","UD__spawn(bytes32)":"7e29a6f6","UD__spawnMob(uint256,uint16,uint16)":"15bc4248","UD__unequipItem(bytes32,uint256)":"7a190324","UD__updateTokenUri(bytes32,string)":"ecd73f84","batchCall((bytes32,bytes)[])":"ce5e8dd9","batchCallFrom((address,bytes32,bytes)[])":"8fc8cf7e","call(bytes32,bytes)":"3ae7af08","callFrom(address,bytes32,bytes)":"894ecc58","creator()":"02d05d3f","deleteRecord(bytes32,bytes32[])":"505a181d","getDynamicField(bytes32,bytes32[],uint8)":"1e788977","getDynamicFieldLength(bytes32,bytes32[],uint8)":"dbbf0e21","getDynamicFieldSlice(bytes32,bytes32[],uint8,uint256,uint256)":"4dc77d97","getField(bytes32,bytes32[],uint8)":"d03edb8c","getField(bytes32,bytes32[],uint8,bytes32)":"05242d2f","getFieldLayout(bytes32)":"3a77c2c2","getFieldLength(bytes32,bytes32[],uint8)":"a53417ed","getFieldLength(bytes32,bytes32[],uint8,bytes32)":"9f1fcf0a","getKeySchema(bytes32)":"d4285dc2","getRecord(bytes32,bytes32[])":"cc49db7e","getRecord(bytes32,bytes32[],bytes32)":"419b58fd","getStaticField(bytes32,bytes32[],uint8,bytes32)":"8c364d59","getValueSchema(bytes32)":"e228a4a3","grantAccess(bytes32,address)":"40554c3a","initialize(address)":"c4d66de8","installModule(address,bytes)":"8da798da","installRootModule(address,bytes)":"af068c9e","popFromDynamicField(bytes32,bytes32[],uint8,uint256)":"d9c03a04","pushToDynamicField(bytes32,bytes32[],uint8,bytes)":"150f3262","registerDelegation(address,bytes32,bytes)":"1d2257ba","registerFunctionSelector(bytes32,string)":"26d98102","registerNamespace(bytes32)":"b29e4089","registerNamespaceDelegation(bytes32,bytes32,bytes)":"bfdfaff7","registerRootFunctionSelector(bytes32,string,string)":"6548a90a","registerStoreHook(bytes32,address,uint8)":"530f4b60","registerSystem(bytes32,address,bool)":"3350b6a9","registerSystemHook(bytes32,address,uint8)":"d5f8337f","registerTable(bytes32,bytes32,bytes32,bytes32,string[],string[])":"0ba51f49","renounceOwnership(bytes32)":"219adc2e","revokeAccess(bytes32,address)":"8d53b208","setDynamicField(bytes32,bytes32[],uint8,bytes)":"ef6ea862","setField(bytes32,bytes32[],uint8,bytes)":"114a7266","setField(bytes32,bytes32[],uint8,bytes,bytes32)":"3708196e","setRecord(bytes32,bytes32[],bytes,bytes32,bytes)":"298314fb","setStaticField(bytes32,bytes32[],uint8,bytes,bytes32)":"390baae0","spliceDynamicData(bytes32,bytes32[],uint8,uint40,uint40,bytes)":"c0a2895a","spliceStaticData(bytes32,bytes32[],uint48,bytes)":"b047c1eb","storeVersion()":"c1122229","transferBalanceToAddress(bytes32,address,uint256)":"45afd199","transferBalanceToNamespace(bytes32,bytes32,uint256)":"c9c85a60","transferOwnership(bytes32,address)":"ef5d6bbb","unregisterDelegation(address)":"cdc938c5","unregisterNamespaceDelegation(bytes32)":"aa66e9c8","unregisterStoreHook(bytes32,address)":"05609129","unregisterSystemHook(bytes32,address)":"a92813ad","worldVersion()":"6951955d"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"}],\"name\":\"EncodedLengths_InvalidLength\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"FieldLayout_Empty\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"staticDataLength\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"computedStaticDataLength\",\"type\":\"uint256\"}],\"name\":\"FieldLayout_InvalidStaticDataLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"FieldLayout_StaticLengthDoesNotFitInAWord\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"FieldLayout_StaticLengthIsNotZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"FieldLayout_StaticLengthIsZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"numFields\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxFields\",\"type\":\"uint256\"}],\"name\":\"FieldLayout_TooManyDynamicFields\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"numFields\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxFields\",\"type\":\"uint256\"}],\"name\":\"FieldLayout_TooManyFields\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Module_AlreadyInstalled\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"dependency\",\"type\":\"address\"}],\"name\":\"Module_MissingDependency\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Module_NonRootInstallNotSupported\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Module_RootInstallNotSupported\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"}],\"name\":\"Schema_InvalidLength\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Schema_StaticTypeAfterDynamicType\",\"type\":\"error\"},{\"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\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"accessedIndex\",\"type\":\"uint256\"}],\"name\":\"Store_IndexOutOfBounds\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"start\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"end\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidBounds\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidFieldNamesLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidKeyNamesLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes2\",\"name\":\"expected\",\"type\":\"bytes2\"},{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"Store_InvalidResourceType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint40\",\"name\":\"startWithinField\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"fieldLength\",\"type\":\"uint40\"}],\"name\":\"Store_InvalidSplice\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidStaticDataLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidValueSchemaDynamicLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidValueSchemaLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidValueSchemaStaticLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"tableIdString\",\"type\":\"string\"}],\"name\":\"Store_TableAlreadyExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"tableIdString\",\"type\":\"string\"}],\"name\":\"Store_TableNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"resource\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"caller\",\"type\":\"address\"}],\"name\":\"World_AccessDenied\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"World_AlreadyInitialized\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"functionSelector\",\"type\":\"bytes4\"}],\"name\":\"World_CallbackNotAllowed\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"}],\"name\":\"World_DelegationNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"functionSelector\",\"type\":\"bytes4\"}],\"name\":\"World_FunctionSelectorAlreadyExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"functionSelector\",\"type\":\"bytes4\"}],\"name\":\"World_FunctionSelectorNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"balance\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"World_InsufficientBalance\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"World_InterfaceNotSupported\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes14\",\"name\":\"namespace\",\"type\":\"bytes14\"}],\"name\":\"World_InvalidNamespace\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_InvalidResourceId\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes2\",\"name\":\"expected\",\"type\":\"bytes2\"},{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_InvalidResourceType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_ResourceAlreadyExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_ResourceNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"system\",\"type\":\"address\"}],\"name\":\"World_SystemAlreadyExists\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"World_UnlimitedDelegationNotAllowed\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"storeVersion\",\"type\":\"bytes32\"}],\"name\":\"HelloStore\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"worldVersion\",\"type\":\"bytes32\"}],\"name\":\"HelloWorld\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"}],\"name\":\"Store_DeleteRecord\",\"type\":\"event\"},{\"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\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"indexed\":false,\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"indexed\":false,\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"indexed\":false,\"internalType\":\"EncodedLengths\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Store_SpliceDynamicData\",\"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\":\"UD___calculateMagicAttack\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"int256\",\"name\":\"bonusDamage\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"armorPenetration\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"attackModifierBonus\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"critChanceBonus\",\"type\":\"int256\"},{\"internalType\":\"uint8[]\",\"name\":\"classRestrictions\",\"type\":\"uint8[]\"}],\"internalType\":\"struct PhysicalAttackStats\",\"name\":\"attackStats\",\"type\":\"tuple\"},{\"internalType\":\"bytes32\",\"name\":\"attackerId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"defenderId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"weaponId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"randomNumber\",\"type\":\"uint256\"}],\"name\":\"UD___calculatePhysicalAttack\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"damage\",\"type\":\"int256\"},{\"internalType\":\"bool\",\"name\":\"hit\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"crit\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"}],\"name\":\"UD__applyEquipmentBonuses\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"adjustedStrength\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"adjustedAgility\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"adjustedIntelligence\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"adjustedArmor\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"adjustedMaxHp\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"currentHp\",\"type\":\"int256\"},{\"internalType\":\"uint256\",\"name\":\"level\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"class\",\"type\":\"uint256\"}],\"internalType\":\"struct AdjustedCombatStats\",\"name\":\"modifiedStats\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"actionId\",\"type\":\"bytes32\"}],\"name\":\"UD__assignActionToCharacter\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"mobLevel\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"randomNumber\",\"type\":\"uint256\"}],\"name\":\"UD__calculateGoldDrop\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"dropAmount\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"randomNumber\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"}],\"name\":\"UD__calculateItemDrop\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"}],\"name\":\"UD__checkRequirements\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"canUse\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"enum ActionType\",\"name\":\"actionType\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"actionStats\",\"type\":\"bytes\"}],\"name\":\"UD__createAction\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"actionId\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"enum ItemType\",\"name\":\"itemType\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"supply\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"dropChance\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"stats\",\"type\":\"bytes\"},{\"internalType\":\"string\",\"name\":\"itemMetadataURI\",\"type\":\"string\"}],\"name\":\"UD__createItem\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"enum ItemType[]\",\"name\":\"itemTypes\",\"type\":\"uint8[]\"},{\"internalType\":\"uint256[]\",\"name\":\"supply\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"dropChances\",\"type\":\"uint256[]\"},{\"internalType\":\"bytes[]\",\"name\":\"stats\",\"type\":\"bytes[]\"},{\"internalType\":\"string[]\",\"name\":\"itemMetadataURIs\",\"type\":\"string[]\"}],\"name\":\"UD__createItems\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"enum EncounterType\",\"name\":\"encounterType\",\"type\":\"uint8\"},{\"internalType\":\"bytes32[]\",\"name\":\"attackers\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes32[]\",\"name\":\"defenders\",\"type\":\"bytes32[]\"}],\"name\":\"UD__createMatch\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"encounterId\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"enum MobType\",\"name\":\"mobType\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"stats\",\"type\":\"bytes\"},{\"internalType\":\"string\",\"name\":\"mobMetadataUri\",\"type\":\"string\"}],\"name\":\"UD__createMob\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"enum MobType[]\",\"name\":\"mobTypes\",\"type\":\"uint8[]\"},{\"internalType\":\"bytes[]\",\"name\":\"stats\",\"type\":\"bytes[]\"},{\"internalType\":\"string[]\",\"name\":\"mobMetadataURIs\",\"type\":\"string[]\"}],\"name\":\"UD__createMobs\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"UD__dropGold\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"UD__dropItem\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256[]\",\"name\":\"itemIds\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"},{\"internalType\":\"bytes32[]\",\"name\":\"characterIds\",\"type\":\"bytes32[]\"}],\"name\":\"UD__dropItems\",\"outputs\":[],\"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\":\"UD__endTurn\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"UD__enterGame\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"actionId\",\"type\":\"bytes32\"}],\"name\":\"UD__equipAction\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256[]\",\"name\":\"itemIds\",\"type\":\"uint256[]\"}],\"name\":\"UD__equipItems\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"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\":\"UD__executeCombat\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"}],\"name\":\"UD__getArmorStats\",\"outputs\":[{\"components\":[{\"internalType\":\"int256\",\"name\":\"agiModifier\",\"type\":\"int256\"},{\"internalType\":\"uint256\",\"name\":\"armorModifier\",\"type\":\"uint256\"},{\"internalType\":\"uint8[]\",\"name\":\"classRestrictions\",\"type\":\"uint8[]\"},{\"internalType\":\"int256\",\"name\":\"hitPointModifier\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"intModifier\",\"type\":\"int256\"},{\"internalType\":\"uint256\",\"name\":\"minLevel\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"strModifier\",\"type\":\"int256\"}],\"internalType\":\"struct ArmorStats\",\"name\":\"_ArmorStats\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"UD__getCharacterToken\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"_characterToken\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"UD__getCharacterTokenId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"UD__getClass\",\"outputs\":[{\"internalType\":\"enum Classes\",\"name\":\"_class\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"experience\",\"type\":\"uint256\"}],\"name\":\"UD__getCurrentAvailableLevel\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"currentLevel\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"UD__getCurrentItemsCounter\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"encounterId\",\"type\":\"bytes32\"}],\"name\":\"UD__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\":\"uint16\",\"name\":\"x\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"y\",\"type\":\"uint16\"}],\"name\":\"UD__getEntitiesAtPosition\",\"outputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"entitiesAtPosition\",\"type\":\"bytes32[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"UD__getEntropy\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"_entropy\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"UD__getExperience\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"UD__getGoldToken\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"_goldToken\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"}],\"name\":\"UD__getItemType\",\"outputs\":[{\"internalType\":\"enum ItemType\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"UD__getItemsContract\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"_erc1155\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"UD__getLootManagerSystem\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"_lootManager\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"}],\"name\":\"UD__getMob\",\"outputs\":[{\"components\":[{\"internalType\":\"enum MobType\",\"name\":\"mobType\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"mobStats\",\"type\":\"bytes\"},{\"internalType\":\"string\",\"name\":\"mobMetadata\",\"type\":\"string\"}],\"internalType\":\"struct MobsData\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"mobId\",\"type\":\"uint256\"}],\"name\":\"UD__getMob\",\"outputs\":[{\"components\":[{\"internalType\":\"enum MobType\",\"name\":\"mobType\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"mobStats\",\"type\":\"bytes\"},{\"internalType\":\"string\",\"name\":\"mobMetadata\",\"type\":\"string\"}],\"internalType\":\"struct MobsData\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"}],\"name\":\"UD__getMobId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"}],\"name\":\"UD__getMobPosition\",\"outputs\":[{\"internalType\":\"uint16\",\"name\":\"x\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"y\",\"type\":\"uint16\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"mobId\",\"type\":\"uint256\"}],\"name\":\"UD__getMonsterStats\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"agility\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"armor\",\"type\":\"uint256\"},{\"internalType\":\"enum Classes\",\"name\":\"class\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"experience\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"hitPoints\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"intelligence\",\"type\":\"uint256\"},{\"internalType\":\"uint256[]\",\"name\":\"inventory\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256\",\"name\":\"level\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"strength\",\"type\":\"uint256\"}],\"internalType\":\"struct MonsterStats\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"}],\"name\":\"UD__getMonsterStats\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"agility\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"armor\",\"type\":\"uint256\"},{\"internalType\":\"enum Classes\",\"name\":\"class\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"experience\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"hitPoints\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"intelligence\",\"type\":\"uint256\"},{\"internalType\":\"uint256[]\",\"name\":\"inventory\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256\",\"name\":\"level\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"strength\",\"type\":\"uint256\"}],\"internalType\":\"struct MonsterStats\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"UD__getName\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"_name\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"mobId\",\"type\":\"uint256\"}],\"name\":\"UD__getNpcStats\",\"outputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"bytes32[]\",\"name\":\"storyPathIds\",\"type\":\"bytes32[]\"},{\"internalType\":\"enum Alignment\",\"name\":\"alignment\",\"type\":\"uint8\"}],\"internalType\":\"struct NPCStats\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"}],\"name\":\"UD__getNpcStats\",\"outputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"bytes32[]\",\"name\":\"storyPathIds\",\"type\":\"bytes32[]\"},{\"internalType\":\"enum Alignment\",\"name\":\"alignment\",\"type\":\"uint8\"}],\"internalType\":\"struct NPCStats\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"UD__getOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"UD__getOwnerAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"characterTokenId\",\"type\":\"uint256\"}],\"name\":\"UD__getPlayerEntityId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"UD__getPythProvider\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"_provider\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"}],\"name\":\"UD__getSpawnCounter\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"enum Classes\",\"name\":\"class\",\"type\":\"uint8\"}],\"name\":\"UD__getStarterItems\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256[]\",\"name\":\"itemIds\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"}],\"internalType\":\"struct StarterItemsData\",\"name\":\"data\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"UD__getStats\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"strength\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"agility\",\"type\":\"uint256\"},{\"internalType\":\"enum Classes\",\"name\":\"class\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"intelligence\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"baseHp\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"currentHp\",\"type\":\"int256\"},{\"internalType\":\"uint256\",\"name\":\"experience\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"level\",\"type\":\"uint256\"}],\"internalType\":\"struct StatsData\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"UD__getTotalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"_supply\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"}],\"name\":\"UD__getWeaponStats\",\"outputs\":[{\"components\":[{\"internalType\":\"int256\",\"name\":\"agiModifier\",\"type\":\"int256\"},{\"internalType\":\"uint8[]\",\"name\":\"classRestrictions\",\"type\":\"uint8[]\"},{\"internalType\":\"int256\",\"name\":\"hitPointModifier\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"intModifier\",\"type\":\"int256\"},{\"internalType\":\"uint256\",\"name\":\"maxDamage\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minDamage\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minLevel\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"strModifier\",\"type\":\"int256\"}],\"internalType\":\"struct WeaponStats\",\"name\":\"_weaponStats\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"},{\"internalType\":\"uint16\",\"name\":\"x\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"y\",\"type\":\"uint16\"}],\"name\":\"UD__isAtPosition\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_isAtPosition\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"}],\"name\":\"UD__isEquipped\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_isEquipped\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"UD__isItemOwner\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"bytes32[]\",\"name\":\"participants\",\"type\":\"bytes32[]\"}],\"name\":\"UD__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\":\"UD__isParticipant\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_isParticipant\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"UD__isValidCharacterId\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"}],\"name\":\"UD__isValidMob\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"UD__isValidOwner\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"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\":\"UD__isValidPvE\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_isValidPvE\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"name\":\"UD__issueStarterItems\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"name\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"tokenUri\",\"type\":\"string\"}],\"name\":\"UD__mintCharacter\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"},{\"internalType\":\"uint16\",\"name\":\"x\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"y\",\"type\":\"uint16\"}],\"name\":\"UD__move\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"userRandomNumber\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"enum Classes\",\"name\":\"class\",\"type\":\"uint8\"}],\"name\":\"UD__rollStats\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"enum Classes\",\"name\":\"class\",\"type\":\"uint8\"},{\"internalType\":\"uint256[]\",\"name\":\"itemIds\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"}],\"name\":\"UD__setStarterItems\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"tokenUri\",\"type\":\"string\"}],\"name\":\"UD__setTokenUri\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"}],\"name\":\"UD__spawn\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"mobId\",\"type\":\"uint256\"},{\"internalType\":\"uint16\",\"name\":\"x\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"y\",\"type\":\"uint16\"}],\"name\":\"UD__spawnMob\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"itemId\",\"type\":\"uint256\"}],\"name\":\"UD__unequipItem\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"characterId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"tokenUri\",\"type\":\"string\"}],\"name\":\"UD__updateTokenUri\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"internalType\":\"struct SystemCallData[]\",\"name\":\"systemCalls\",\"type\":\"tuple[]\"}],\"name\":\"batchCall\",\"outputs\":[{\"internalType\":\"bytes[]\",\"name\":\"returnDatas\",\"type\":\"bytes[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"internalType\":\"struct SystemCallFromData[]\",\"name\":\"systemCalls\",\"type\":\"tuple[]\"}],\"name\":\"batchCallFrom\",\"outputs\":[{\"internalType\":\"bytes[]\",\"name\":\"returnDatas\",\"type\":\"bytes[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"name\":\"call\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"name\":\"callFrom\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"creator\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"}],\"name\":\"deleteRecord\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"}],\"name\":\"getDynamicField\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"}],\"name\":\"getDynamicFieldLength\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"start\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"end\",\"type\":\"uint256\"}],\"name\":\"getDynamicFieldSlice\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"getField\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"}],\"name\":\"getField\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"}],\"name\":\"getFieldLayout\",\"outputs\":[{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"getFieldLength\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"}],\"name\":\"getFieldLength\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"}],\"name\":\"getKeySchema\",\"outputs\":[{\"internalType\":\"Schema\",\"name\":\"keySchema\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"getRecord\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"staticData\",\"type\":\"bytes\"},{\"internalType\":\"EncodedLengths\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"dynamicData\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"}],\"name\":\"getRecord\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"staticData\",\"type\":\"bytes\"},{\"internalType\":\"EncodedLengths\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"dynamicData\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"getStaticField\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"}],\"name\":\"getValueSchema\",\"outputs\":[{\"internalType\":\"Schema\",\"name\":\"valueSchema\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"grantee\",\"type\":\"address\"}],\"name\":\"grantAccess\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IModule\",\"name\":\"initModule\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IModule\",\"name\":\"module\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"encodedArgs\",\"type\":\"bytes\"}],\"name\":\"installModule\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IModule\",\"name\":\"module\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"encodedArgs\",\"type\":\"bytes\"}],\"name\":\"installRootModule\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"byteLengthToPop\",\"type\":\"uint256\"}],\"name\":\"popFromDynamicField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"dataToPush\",\"type\":\"bytes\"}],\"name\":\"pushToDynamicField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"},{\"internalType\":\"ResourceId\",\"name\":\"delegationControlId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"initCallData\",\"type\":\"bytes\"}],\"name\":\"registerDelegation\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"systemFunctionSignature\",\"type\":\"string\"}],\"name\":\"registerFunctionSelector\",\"outputs\":[{\"internalType\":\"bytes4\",\"name\":\"worldFunctionSelector\",\"type\":\"bytes4\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"namespaceId\",\"type\":\"bytes32\"}],\"name\":\"registerNamespace\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"namespaceId\",\"type\":\"bytes32\"},{\"internalType\":\"ResourceId\",\"name\":\"delegationControlId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"initCallData\",\"type\":\"bytes\"}],\"name\":\"registerNamespaceDelegation\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"worldFunctionSignature\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"systemFunctionSignature\",\"type\":\"string\"}],\"name\":\"registerRootFunctionSelector\",\"outputs\":[{\"internalType\":\"bytes4\",\"name\":\"worldFunctionSelector\",\"type\":\"bytes4\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"contract IStoreHook\",\"name\":\"hookAddress\",\"type\":\"address\"},{\"internalType\":\"uint8\",\"name\":\"enabledHooksBitmap\",\"type\":\"uint8\"}],\"name\":\"registerStoreHook\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"contract System\",\"name\":\"system\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"publicAccess\",\"type\":\"bool\"}],\"name\":\"registerSystem\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"contract ISystemHook\",\"name\":\"hookAddress\",\"type\":\"address\"},{\"internalType\":\"uint8\",\"name\":\"enabledHooksBitmap\",\"type\":\"uint8\"}],\"name\":\"registerSystemHook\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"},{\"internalType\":\"Schema\",\"name\":\"keySchema\",\"type\":\"bytes32\"},{\"internalType\":\"Schema\",\"name\":\"valueSchema\",\"type\":\"bytes32\"},{\"internalType\":\"string[]\",\"name\":\"keyNames\",\"type\":\"string[]\"},{\"internalType\":\"string[]\",\"name\":\"fieldNames\",\"type\":\"string[]\"}],\"name\":\"registerTable\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"namespaceId\",\"type\":\"bytes32\"}],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"grantee\",\"type\":\"address\"}],\"name\":\"revokeAccess\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"setDynamicField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"setField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"setField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes\",\"name\":\"staticData\",\"type\":\"bytes\"},{\"internalType\":\"EncodedLengths\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"dynamicData\",\"type\":\"bytes\"}],\"name\":\"setRecord\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"setStaticField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"uint40\",\"name\":\"startWithinField\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"spliceDynamicData\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"spliceStaticData\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"storeVersion\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"version\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"fromNamespaceId\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"toAddress\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferBalanceToAddress\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"fromNamespaceId\",\"type\":\"bytes32\"},{\"internalType\":\"ResourceId\",\"name\":\"toNamespaceId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferBalanceToNamespace\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"namespaceId\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"}],\"name\":\"unregisterDelegation\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"namespaceId\",\"type\":\"bytes32\"}],\"name\":\"unregisterNamespaceDelegation\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"contract IStoreHook\",\"name\":\"hookAddress\",\"type\":\"address\"}],\"name\":\"unregisterStoreHook\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"contract ISystemHook\",\"name\":\"hookAddress\",\"type\":\"address\"}],\"name\":\"unregisterSystemHook\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"worldVersion\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"MUD (https://mud.dev) by Lattice (https://lattice.xyz)\",\"details\":\"This is an autogenerated file; do not edit manually.\",\"errors\":{\"EncodedLengths_InvalidLength(uint256)\":[{\"params\":{\"length\":\"The length of the encoded lengths.\"}}],\"FieldLayout_InvalidStaticDataLength(uint256,uint256)\":[{\"params\":{\"computedStaticDataLength\":\"The computed static data length.\",\"staticDataLength\":\"The static data length of the field layout.\"}}],\"FieldLayout_StaticLengthDoesNotFitInAWord(uint256)\":[{\"params\":{\"index\":\"The index of the field.\"}}],\"FieldLayout_StaticLengthIsNotZero(uint256)\":[{\"params\":{\"index\":\"The index of the field.\"}}],\"FieldLayout_StaticLengthIsZero(uint256)\":[{\"params\":{\"index\":\"The index of the field.\"}}],\"FieldLayout_TooManyDynamicFields(uint256,uint256)\":[{\"params\":{\"maxFields\":\"The maximum number of fields a Schema can handle.\",\"numFields\":\"The total number of fields in the field layout.\"}}],\"FieldLayout_TooManyFields(uint256,uint256)\":[{\"params\":{\"maxFields\":\"The maximum number of fields a Schema can handle.\",\"numFields\":\"The total number of fields in the field layout.\"}}],\"Module_MissingDependency(address)\":[{\"params\":{\"dependency\":\"The address of the dependency.\"}}],\"Schema_InvalidLength(uint256)\":[{\"params\":{\"length\":\"The length of the schema.\"}}],\"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.\"}}],\"Store_IndexOutOfBounds(uint256,uint256)\":[{\"details\":\"Raised if the start index is larger than the previous length of the field.\",\"params\":{\"accessedIndex\":\"FIXME\",\"length\":\"FIXME\"}}],\"Store_InvalidBounds(uint256,uint256)\":[{\"params\":{\"end\":\"The end index within the dynamic field for the slice operation (exclusive).\",\"start\":\"The start index within the dynamic field for the slice operation (inclusive).\"}}],\"Store_InvalidFieldNamesLength(uint256,uint256)\":[{\"params\":{\"expected\":\"The expected length.\",\"received\":\"The provided length.\"}}],\"Store_InvalidKeyNamesLength(uint256,uint256)\":[{\"params\":{\"expected\":\"The expected length.\",\"received\":\"The provided length.\"}}],\"Store_InvalidResourceType(bytes2,bytes32,string)\":[{\"params\":{\"expected\":\"The expected resource type.\",\"resourceId\":\"The resource ID.\",\"resourceIdString\":\"The stringified resource ID (for easier debugging).\"}}],\"Store_InvalidSplice(uint40,uint40,uint40)\":[{\"details\":\"Raised if the splice total length of the field is changed but the splice is not at the end of the field.\",\"params\":{\"deleteCount\":\"The number of bytes to delete in the splice operation.\",\"fieldLength\":\"The field length for the splice operation.\",\"startWithinField\":\"The start index within the field for the splice operation.\"}}],\"Store_InvalidStaticDataLength(uint256,uint256)\":[{\"params\":{\"expected\":\"The expected length.\",\"received\":\"The provided length.\"}}],\"Store_InvalidValueSchemaDynamicLength(uint256,uint256)\":[{\"params\":{\"expected\":\"The expected length.\",\"received\":\"The provided length.\"}}],\"Store_InvalidValueSchemaLength(uint256,uint256)\":[{\"params\":{\"expected\":\"The expected length.\",\"received\":\"The provided length.\"}}],\"Store_InvalidValueSchemaStaticLength(uint256,uint256)\":[{\"params\":{\"expected\":\"The expected length.\",\"received\":\"The provided length.\"}}],\"Store_TableAlreadyExists(bytes32,string)\":[{\"params\":{\"tableId\":\"The ID of the table.\",\"tableIdString\":\"The stringified ID of the table (for easier debugging if cleartext tableIds are used).\"}}],\"Store_TableNotFound(bytes32,string)\":[{\"params\":{\"tableId\":\"The ID of the table.\",\"tableIdString\":\"The stringified ID of the table (for easier debugging if cleartext tableIds are used).\"}}],\"World_AccessDenied(string,address)\":[{\"params\":{\"caller\":\"The address of the user trying to access the resource.\",\"resource\":\"The resource's identifier.\"}}],\"World_CallbackNotAllowed(bytes4)\":[{\"params\":{\"functionSelector\":\"The function selector of the disallowed callback.\"}}],\"World_DelegationNotFound(address,address)\":[{\"params\":{\"delegatee\":\"The address of the delegatee.\",\"delegator\":\"The address of the delegator.\"}}],\"World_FunctionSelectorAlreadyExists(bytes4)\":[{\"params\":{\"functionSelector\":\"The function selector in question.\"}}],\"World_FunctionSelectorNotFound(bytes4)\":[{\"params\":{\"functionSelector\":\"The function selector in question.\"}}],\"World_InsufficientBalance(uint256,uint256)\":[{\"params\":{\"amount\":\"The amount needed.\",\"balance\":\"The current balance.\"}}],\"World_InterfaceNotSupported(address,bytes4)\":[{\"params\":{\"contractAddress\":\"The address of the contract in question.\",\"interfaceId\":\"The ID of the interface.\"}}],\"World_InvalidNamespace(bytes14)\":[{\"params\":{\"namespace\":\"The invalid namespace.\"}}],\"World_InvalidResourceId(bytes32,string)\":[{\"params\":{\"resourceId\":\"The ID of the resource.\",\"resourceIdString\":\"The string representation of the resource ID.\"}}],\"World_InvalidResourceType(bytes2,bytes32,string)\":[{\"params\":{\"expected\":\"The expected resource type.\",\"resourceId\":\"The ID of the resource.\",\"resourceIdString\":\"The string representation of the resource ID.\"}}],\"World_ResourceAlreadyExists(bytes32,string)\":[{\"params\":{\"resourceId\":\"The ID of the resource.\",\"resourceIdString\":\"The string representation of the resource ID.\"}}],\"World_ResourceNotFound(bytes32,string)\":[{\"params\":{\"resourceId\":\"The ID of the resource.\",\"resourceIdString\":\"The string representation of the resource ID.\"}}],\"World_SystemAlreadyExists(address)\":[{\"params\":{\"system\":\"The address of the system.\"}}]},\"events\":{\"HelloStore(bytes32)\":{\"params\":{\"storeVersion\":\"The protocol version of the Store.\"}},\"HelloWorld(bytes32)\":{\"params\":{\"worldVersion\":\"The protocol version of the World.\"}},\"Store_DeleteRecord(bytes32,bytes32[])\":{\"params\":{\"keyTuple\":\"An array representing the composite key for the record.\",\"tableId\":\"The ID of the table where the record is deleted.\"}},\"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_SpliceDynamicData(bytes32,bytes32[],uint8,uint48,uint40,bytes32,bytes)\":{\"params\":{\"data\":\"The data to insert into the dynamic data of the record at the start byte.\",\"deleteCount\":\"The number of bytes to delete in the splice operation.\",\"dynamicFieldIndex\":\"The index of the dynamic field to splice data, relative to the start of the dynamic fields. (Dynamic field index = field index - number of static fields)\",\"encodedLengths\":\"The encoded lengths of the dynamic data of the record.\",\"keyTuple\":\"An array representing the composite 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.\"}},\"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\":{\"call(bytes32,bytes)\":{\"details\":\"If the system is not public, the caller must have access to the namespace or name (encoded in the system ID).\",\"params\":{\"callData\":\"The data to pass with the call, function selector (4 bytes) followed by the ABI encoded parameters.\",\"systemId\":\"The ID of the system to be called.\"},\"returns\":{\"_0\":\"The abi encoded return data from the called system.\"}},\"callFrom(address,bytes32,bytes)\":{\"details\":\"If the system is not public, the delegator must have access to the namespace or name (encoded in the system ID).\",\"params\":{\"callData\":\"The data to pass with the call, function selector (4 bytes) followed by the ABI encoded parameters.\",\"delegator\":\"The address on whose behalf the call is made.\",\"systemId\":\"The ID of the system to be called.\"},\"returns\":{\"_0\":\"The abi encoded return data from the called system.\"}},\"creator()\":{\"returns\":{\"_0\":\"The address of the World's creator.\"}},\"initialize(address)\":{\"details\":\"Can only be called once by the creator.\",\"params\":{\"initModule\":\"The InitModule to be installed during initialization.\"}},\"installRootModule(address,bytes)\":{\"details\":\"Requires the caller to own the root namespace. The module is delegatecalled and installed in the root namespace.\",\"params\":{\"encodedArgs\":\"The ABI encoded arguments for the module installation.\",\"module\":\"The module to be installed.\"}},\"storeVersion()\":{\"returns\":{\"version\":\"The protocol version of the Store contract.\"}},\"worldVersion()\":{\"returns\":{\"_0\":\"The protocol version of the World.\"}}},\"title\":\"IWorld\",\"version\":1},\"userdoc\":{\"errors\":{\"EncodedLengths_InvalidLength(uint256)\":[{\"notice\":\"Error raised when the provided encoded lengths has an invalid length.\"}],\"FieldLayout_Empty()\":[{\"notice\":\"Error raised when the provided field layout is empty.\"}],\"FieldLayout_InvalidStaticDataLength(uint256,uint256)\":[{\"notice\":\"Error raised when the provided field layout has an invalid static data length.\"}],\"FieldLayout_StaticLengthDoesNotFitInAWord(uint256)\":[{\"notice\":\"Error raised when the provided field layout has a static data length that does not fit in a word (32 bytes).\"}],\"FieldLayout_StaticLengthIsNotZero(uint256)\":[{\"notice\":\"Error raised when the provided field layout has a nonzero static data length.\"}],\"FieldLayout_StaticLengthIsZero(uint256)\":[{\"notice\":\"Error raised when the provided field layout has a static data length of zero.\"}],\"FieldLayout_TooManyDynamicFields(uint256,uint256)\":[{\"notice\":\"Error raised when the provided field layout has too many dynamic fields.\"}],\"FieldLayout_TooManyFields(uint256,uint256)\":[{\"notice\":\"Error raised when the provided field layout has too many fields.\"}],\"Module_AlreadyInstalled()\":[{\"notice\":\"Error raised if the provided module is already installed.\"}],\"Module_MissingDependency(address)\":[{\"notice\":\"Error raised if the provided module is missing a dependency.\"}],\"Module_NonRootInstallNotSupported()\":[{\"notice\":\"Error raised if installing in non-root is not supported.\"}],\"Module_RootInstallNotSupported()\":[{\"notice\":\"Error raised if installing in root is not supported.\"}],\"Schema_InvalidLength(uint256)\":[{\"notice\":\"Error raised when the provided schema has an invalid length.\"}],\"Schema_StaticTypeAfterDynamicType()\":[{\"notice\":\"Error raised when a static type is placed after a dynamic type in a schema.\"}],\"Slice_OutOfBounds(bytes,uint256,uint256)\":[{\"notice\":\"Error raised when the provided slice is out of bounds.\"}],\"Store_IndexOutOfBounds(uint256,uint256)\":[{\"notice\":\"Error raised if the provided index is out of bounds.\"}],\"Store_InvalidBounds(uint256,uint256)\":[{\"notice\":\"Error raised if the provided slice bounds are invalid.\"}],\"Store_InvalidFieldNamesLength(uint256,uint256)\":[{\"notice\":\"Error raised if the provided field names length is invalid.\"}],\"Store_InvalidKeyNamesLength(uint256,uint256)\":[{\"notice\":\"Error raised if the provided key names length is invalid.\"}],\"Store_InvalidResourceType(bytes2,bytes32,string)\":[{\"notice\":\"Error raised if the provided resource ID cannot be found.\"}],\"Store_InvalidSplice(uint40,uint40,uint40)\":[{\"notice\":\"Error raised if the provided splice is invalid.\"}],\"Store_InvalidStaticDataLength(uint256,uint256)\":[{\"notice\":\"Error raised if the provided static data length is invalid.\"}],\"Store_InvalidValueSchemaDynamicLength(uint256,uint256)\":[{\"notice\":\"Error raised if the provided schema dynamic length is invalid.\"}],\"Store_InvalidValueSchemaLength(uint256,uint256)\":[{\"notice\":\"Error raised if the provided value schema length is invalid.\"}],\"Store_InvalidValueSchemaStaticLength(uint256,uint256)\":[{\"notice\":\"Error raised if the provided schema static length is invalid.\"}],\"Store_TableAlreadyExists(bytes32,string)\":[{\"notice\":\"Error raised if the provided table already exists.\"}],\"Store_TableNotFound(bytes32,string)\":[{\"notice\":\"Error raised if the provided table cannot be found.\"}],\"World_AccessDenied(string,address)\":[{\"notice\":\"Raised when a user tries to access a resource they don't have permission for.\"}],\"World_AlreadyInitialized()\":[{\"notice\":\"Raised when trying to initialize an already initialized World.\"}],\"World_CallbackNotAllowed(bytes4)\":[{\"notice\":\"Raised when the World is calling itself via an external call.\"}],\"World_DelegationNotFound(address,address)\":[{\"notice\":\"Raised when the specified delegation is not found.\"}],\"World_FunctionSelectorAlreadyExists(bytes4)\":[{\"notice\":\"Raised when trying to register a function selector that already exists.\"}],\"World_FunctionSelectorNotFound(bytes4)\":[{\"notice\":\"Raised when the specified function selector is not found.\"}],\"World_InsufficientBalance(uint256,uint256)\":[{\"notice\":\"Raised when there's an insufficient balance for a particular operation.\"}],\"World_InterfaceNotSupported(address,bytes4)\":[{\"notice\":\"Raised when the specified interface is not supported by the contract.\"}],\"World_InvalidNamespace(bytes14)\":[{\"notice\":\"Raised when an namespace contains an invalid sequence of characters (\\\"__\\\").\"}],\"World_InvalidResourceId(bytes32,string)\":[{\"notice\":\"Raised when an invalid resource ID is provided.\"}],\"World_InvalidResourceType(bytes2,bytes32,string)\":[{\"notice\":\"Raised when an invalid resource type is provided.\"}],\"World_ResourceAlreadyExists(bytes32,string)\":[{\"notice\":\"Raised when trying to register a resource that already exists.\"}],\"World_ResourceNotFound(bytes32,string)\":[{\"notice\":\"Raised when the specified resource is not found.\"}],\"World_SystemAlreadyExists(address)\":[{\"notice\":\"Raised when trying to register a system that already exists.\"}],\"World_UnlimitedDelegationNotAllowed()\":[{\"notice\":\"Raised when trying to create an unlimited delegation in a context where it is not allowed, e.g. when registering a namespace fallback delegation.\"}]},\"events\":{\"HelloStore(bytes32)\":{\"notice\":\"Emitted when the Store is created.\"},\"HelloWorld(bytes32)\":{\"notice\":\"Emitted when the World is created.\"},\"Store_DeleteRecord(bytes32,bytes32[])\":{\"notice\":\"Emitted when a record is deleted from the store.\"},\"Store_SetRecord(bytes32,bytes32[],bytes,bytes32,bytes)\":{\"notice\":\"Emitted when a new record is set in the store.\"},\"Store_SpliceDynamicData(bytes32,bytes32[],uint8,uint48,uint40,bytes32,bytes)\":{\"notice\":\"Emitted when dynamic data in the store is spliced.\"},\"Store_SpliceStaticData(bytes32,bytes32[],uint48,bytes)\":{\"notice\":\"Emitted when static data in the store is spliced.\"}},\"kind\":\"user\",\"methods\":{\"call(bytes32,bytes)\":{\"notice\":\"Call the system at the given system ID.\"},\"callFrom(address,bytes32,bytes)\":{\"notice\":\"Call the system at the given system ID on behalf of the given delegator.\"},\"creator()\":{\"notice\":\"Retrieve the immutable original deployer of the World.\"},\"getDynamicField(bytes32,bytes32[],uint8)\":{\"notice\":\"Get a single dynamic field from the given tableId and key tuple at the given dynamic field index. (Dynamic field index = field index - number of static fields)\"},\"getDynamicFieldLength(bytes32,bytes32[],uint8)\":{\"notice\":\"Get the byte length of a single dynamic field from the given tableId and key tuple\"},\"getDynamicFieldSlice(bytes32,bytes32[],uint8,uint256,uint256)\":{\"notice\":\"Get a byte slice (including start, excluding end) of a single dynamic field from the given tableId and key tuple, with the given value field layout. The slice is unchecked and will return invalid data if `start`:`end` overflow.\"},\"getField(bytes32,bytes32[],uint8)\":{\"notice\":\"Get a single field from the given tableId and key tuple, loading the field layout from storage\"},\"getField(bytes32,bytes32[],uint8,bytes32)\":{\"notice\":\"Get a single field from the given tableId and key tuple, with the given field layout\"},\"getFieldLength(bytes32,bytes32[],uint8)\":{\"notice\":\"Get the byte length of a single field from the given tableId and key tuple, loading the field layout from storage\"},\"getFieldLength(bytes32,bytes32[],uint8,bytes32)\":{\"notice\":\"Get the byte length of a single field from the given tableId and key tuple, with the given value field layout\"},\"getRecord(bytes32,bytes32[])\":{\"notice\":\"Get full record (all fields, static and dynamic data) for the given tableId and key tuple, loading the field layout from storage\"},\"getRecord(bytes32,bytes32[],bytes32)\":{\"notice\":\"Get full record (all fields, static and dynamic data) for the given tableId and key tuple, with the given field layout\"},\"getStaticField(bytes32,bytes32[],uint8,bytes32)\":{\"notice\":\"Get a single static field from the given tableId and key tuple, with the given value field layout. Note: the field value is left-aligned in the returned bytes32, the rest of the word is not zeroed out. Consumers are expected to truncate the returned value as needed.\"},\"initialize(address)\":{\"notice\":\"Initializes the World.\"},\"installRootModule(address,bytes)\":{\"notice\":\"Install the given root module in the World.\"},\"storeVersion()\":{\"notice\":\"Returns the protocol version of the Store contract.\"},\"worldVersion()\":{\"notice\":\"Retrieve the protocol version of the World.\"}},\"notice\":\"This interface integrates all systems and associated function selectors that are dynamically registered in the World during deployment.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/codegen/world/IWorld.sol\":\"IWorld\"},\"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\":{\"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/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/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/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/worldResourceTypes.sol\":{\"keccak256\":\"0xeb042e7d3638430f6fd394107f3237cf14e4325154f0098624e8a7826584d465\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://39e0b8eb87616b661f5a4f2fd7e1a727bd19b7fd8d40ad3d93fda26822f433ea\",\"dweb:/ipfs/QmacYMatKV9pwEwirVRY9a6r89RoNs5yk99ic37ieWA8Dk\"]},\"src/codegen/common.sol\":{\"keccak256\":\"0x2d0a0176c583fcd95e430978a48ca29a38536c01b57b6effd08697d2d2bf5f42\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d1ea5054e1e53b703345992c9ef61e372f6da66247fcb4e89c279055f9085\",\"dweb:/ipfs/QmXCygeJuEesDRSAamMfJZU9Qz5UCz3dmkBj7SGfEvEEY7\"]},\"src/codegen/index.sol\":{\"keccak256\":\"0x84ff02d4275be694bfbe1e60e24539a891dda5df3bacf04f0eb2a974425603d0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f88775b86cdc8322742e528072b64d01df3d3ef70d4fc5104412522e468ae4e2\",\"dweb:/ipfs/Qme75CeS2sA8pr1Tyx9GN5atmuG4aBGjMPaagaGtYTjc2R\"]},\"src/codegen/tables/Actions.sol\":{\"keccak256\":\"0x63cd48bebaa0414728e9be2c856e4eb01efaead6627a6615da4c77b886805cef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1dfe138555b67362f41c26ce1ab074bfc1fcc4e7c6fd0284b82cc699d80d392\",\"dweb:/ipfs/QmNf8UGE3FZ4U96HkeioE4peWWz1SKPAjhKRrGnpEnCdkQ\"]},\"src/codegen/tables/Admin.sol\":{\"keccak256\":\"0xe3b7e993ca2e420d73b845fb37388d453486e24522b941503a2f81c639769725\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e638c35d3ec5805180122b70849bd3a93aa680f3251ac9e7fe4f0ff24722f614\",\"dweb:/ipfs/QmVL3xJPrsVDgXQTdxBEkq4PRmyNDCFHGHKJxLQzuFy9XJ\"]},\"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/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\":\"0x1f0b21a82c18d474347446546973619289392ee9cc745eccbfb4ba802771b2e2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f0a514e9aa8c0265e8ac7284587cdfec829ad4904e511a284d44a325f9ee511b\",\"dweb:/ipfs/QmYGbphJpnBQMsTEtAM78kqH56FrzrmBFVNthRM4WLdUSQ\"]},\"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\":\"0x3ea10f6af2b29e07f658e961113a68db383bb5df7ec853bd797bd1cc14d19b0d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c834cb0bb80ffe10c6175f8a16b827dde9804d459e6aa33691484e419587d47f\",\"dweb:/ipfs/QmXnLXquHjNXN8CCsEL3NPNrQHW6UWY78oginRPtcHZFcw\"]},\"src/codegen/world/ICharacterSystem.sol\":{\"keccak256\":\"0x54157279932a37b055d247901f034848c1f0bffbf262028cf9c69eeedc9b7235\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ead77ae9ab020f705a998be6229e975b9352486deaa9aa800b6de10338190782\",\"dweb:/ipfs/QmaLrytghaAH6ipaBr4XwsaBcCzeVa5gujHGRNxeztuo4X\"]},\"src/codegen/world/ICombatSystem.sol\":{\"keccak256\":\"0x8b522a844626b33d69ae186dd26f2f7bfd921bf92ed7ed0cee2b8c349d9b64f9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://647f99949a4584cf4b528415ffea01ad243147548455fe5a8373b042b6af3087\",\"dweb:/ipfs/QmYsgXQDTwrqg7YSJkKtiNZzf63f4jdA4xfni5gb9ap5K5\"]},\"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\":\"0xc6caadf1800d688083c234a12cd151746f0271be03a50bb6a654634270ab0864\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://084766afac89e6f74162f69534635f90ec56570019223e22d20342f7853fb4e0\",\"dweb:/ipfs/QmbrQXrTewfgW2NydLgPCdt3Vton5V7nfE7HViXtyrMnoK\"]},\"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\":\"0xfb774a3d4388291fa5bae54bf1c592cc366a0585e6d24388dfeebaf3abd666b4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0986371fcb9f53bac88f2c190faf0f5a77fac686eced664aed5f2f1eb6eaca64\",\"dweb:/ipfs/QmWdgLEV31t27nNQC1KGEfaZHFcuBUayxHm2giZJpAG8hv\"]},\"src/interfaces/Structs.sol\":{\"keccak256\":\"0x6259111a19c9e329bd16a154bca9afa89339ce179d278647e34bcdff1868d0de\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c67088e2ecdb887174b16cdaf87299ad3b3871d7ce1f8c4c51e8def5e6cc8fb5\",\"dweb:/ipfs/QmR2SXkYEkSqaacU6rWGsLdZiefy5kcsVqhvzg4Kob2fk1\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.24+commit.e11b9ed9"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"uint256","name":"length","type":"uint256"}],"type":"error","name":"EncodedLengths_InvalidLength"},{"inputs":[],"type":"error","name":"FieldLayout_Empty"},{"inputs":[{"internalType":"uint256","name":"staticDataLength","type":"uint256"},{"internalType":"uint256","name":"computedStaticDataLength","type":"uint256"}],"type":"error","name":"FieldLayout_InvalidStaticDataLength"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"FieldLayout_StaticLengthDoesNotFitInAWord"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"FieldLayout_StaticLengthIsNotZero"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"FieldLayout_StaticLengthIsZero"},{"inputs":[{"internalType":"uint256","name":"numFields","type":"uint256"},{"internalType":"uint256","name":"maxFields","type":"uint256"}],"type":"error","name":"FieldLayout_TooManyDynamicFields"},{"inputs":[{"internalType":"uint256","name":"numFields","type":"uint256"},{"internalType":"uint256","name":"maxFields","type":"uint256"}],"type":"error","name":"FieldLayout_TooManyFields"},{"inputs":[],"type":"error","name":"Module_AlreadyInstalled"},{"inputs":[{"internalType":"address","name":"dependency","type":"address"}],"type":"error","name":"Module_MissingDependency"},{"inputs":[],"type":"error","name":"Module_NonRootInstallNotSupported"},{"inputs":[],"type":"error","name":"Module_RootInstallNotSupported"},{"inputs":[{"internalType":"uint256","name":"length","type":"uint256"}],"type":"error","name":"Schema_InvalidLength"},{"inputs":[],"type":"error","name":"Schema_StaticTypeAfterDynamicType"},{"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":"uint256","name":"length","type":"uint256"},{"internalType":"uint256","name":"accessedIndex","type":"uint256"}],"type":"error","name":"Store_IndexOutOfBounds"},{"inputs":[{"internalType":"uint256","name":"start","type":"uint256"},{"internalType":"uint256","name":"end","type":"uint256"}],"type":"error","name":"Store_InvalidBounds"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidFieldNamesLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidKeyNamesLength"},{"inputs":[{"internalType":"bytes2","name":"expected","type":"bytes2"},{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"Store_InvalidResourceType"},{"inputs":[{"internalType":"uint40","name":"startWithinField","type":"uint40"},{"internalType":"uint40","name":"deleteCount","type":"uint40"},{"internalType":"uint40","name":"fieldLength","type":"uint40"}],"type":"error","name":"Store_InvalidSplice"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidStaticDataLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidValueSchemaDynamicLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidValueSchemaLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidValueSchemaStaticLength"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"string","name":"tableIdString","type":"string"}],"type":"error","name":"Store_TableAlreadyExists"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"string","name":"tableIdString","type":"string"}],"type":"error","name":"Store_TableNotFound"},{"inputs":[{"internalType":"string","name":"resource","type":"string"},{"internalType":"address","name":"caller","type":"address"}],"type":"error","name":"World_AccessDenied"},{"inputs":[],"type":"error","name":"World_AlreadyInitialized"},{"inputs":[{"internalType":"bytes4","name":"functionSelector","type":"bytes4"}],"type":"error","name":"World_CallbackNotAllowed"},{"inputs":[{"internalType":"address","name":"delegator","type":"address"},{"internalType":"address","name":"delegatee","type":"address"}],"type":"error","name":"World_DelegationNotFound"},{"inputs":[{"internalType":"bytes4","name":"functionSelector","type":"bytes4"}],"type":"error","name":"World_FunctionSelectorAlreadyExists"},{"inputs":[{"internalType":"bytes4","name":"functionSelector","type":"bytes4"}],"type":"error","name":"World_FunctionSelectorNotFound"},{"inputs":[{"internalType":"uint256","name":"balance","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"type":"error","name":"World_InsufficientBalance"},{"inputs":[{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"type":"error","name":"World_InterfaceNotSupported"},{"inputs":[{"internalType":"bytes14","name":"namespace","type":"bytes14"}],"type":"error","name":"World_InvalidNamespace"},{"inputs":[{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"World_InvalidResourceId"},{"inputs":[{"internalType":"bytes2","name":"expected","type":"bytes2"},{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"World_InvalidResourceType"},{"inputs":[{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"World_ResourceAlreadyExists"},{"inputs":[{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"World_ResourceNotFound"},{"inputs":[{"internalType":"address","name":"system","type":"address"}],"type":"error","name":"World_SystemAlreadyExists"},{"inputs":[],"type":"error","name":"World_UnlimitedDelegationNotAllowed"},{"inputs":[{"internalType":"bytes32","name":"storeVersion","type":"bytes32","indexed":true}],"type":"event","name":"HelloStore","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"worldVersion","type":"bytes32","indexed":true}],"type":"event","name":"HelloWorld","anonymous":false},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]","indexed":false}],"type":"event","name":"Store_DeleteRecord","anonymous":false},{"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":"uint8","name":"dynamicFieldIndex","type":"uint8","indexed":false},{"internalType":"uint48","name":"start","type":"uint48","indexed":false},{"internalType":"uint40","name":"deleteCount","type":"uint40","indexed":false},{"internalType":"EncodedLengths","name":"encodedLengths","type":"bytes32","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Store_SpliceDynamicData","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":"UD___calculateMagicAttack"},{"inputs":[{"internalType":"struct PhysicalAttackStats","name":"attackStats","type":"tuple","components":[{"internalType":"int256","name":"bonusDamage","type":"int256"},{"internalType":"int256","name":"armorPenetration","type":"int256"},{"internalType":"int256","name":"attackModifierBonus","type":"int256"},{"internalType":"int256","name":"critChanceBonus","type":"int256"},{"internalType":"uint8[]","name":"classRestrictions","type":"uint8[]"}]},{"internalType":"bytes32","name":"attackerId","type":"bytes32"},{"internalType":"bytes32","name":"defenderId","type":"bytes32"},{"internalType":"uint256","name":"weaponId","type":"uint256"},{"internalType":"uint256","name":"randomNumber","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"UD___calculatePhysicalAttack","outputs":[{"internalType":"int256","name":"damage","type":"int256"},{"internalType":"bool","name":"hit","type":"bool"},{"internalType":"bool","name":"crit","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"entityId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"UD__applyEquipmentBonuses","outputs":[{"internalType":"struct AdjustedCombatStats","name":"modifiedStats","type":"tuple","components":[{"internalType":"uint256","name":"adjustedStrength","type":"uint256"},{"internalType":"uint256","name":"adjustedAgility","type":"uint256"},{"internalType":"uint256","name":"adjustedIntelligence","type":"uint256"},{"internalType":"uint256","name":"adjustedArmor","type":"uint256"},{"internalType":"uint256","name":"adjustedMaxHp","type":"uint256"},{"internalType":"int256","name":"currentHp","type":"int256"},{"internalType":"uint256","name":"level","type":"uint256"},{"internalType":"uint256","name":"class","type":"uint256"}]}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"bytes32","name":"actionId","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"UD__assignActionToCharacter"},{"inputs":[{"internalType":"uint256","name":"mobLevel","type":"uint256"},{"internalType":"uint256","name":"randomNumber","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"UD__calculateGoldDrop","outputs":[{"internalType":"uint256","name":"dropAmount","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"randomNumber","type":"uint256"},{"internalType":"uint256","name":"itemId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"UD__calculateItemDrop","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"uint256","name":"itemId","type":"uint256"}],"stateMutability":"view","type":"function","name":"UD__checkRequirements","outputs":[{"internalType":"bool","name":"canUse","type":"bool"}]},{"inputs":[{"internalType":"enum ActionType","name":"actionType","type":"uint8"},{"internalType":"bytes","name":"actionStats","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"UD__createAction","outputs":[{"internalType":"bytes32","name":"actionId","type":"bytes32"}]},{"inputs":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"uint256","name":"supply","type":"uint256"},{"internalType":"uint256","name":"dropChance","type":"uint256"},{"internalType":"bytes","name":"stats","type":"bytes"},{"internalType":"string","name":"itemMetadataURI","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"UD__createItem","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"enum ItemType[]","name":"itemTypes","type":"uint8[]"},{"internalType":"uint256[]","name":"supply","type":"uint256[]"},{"internalType":"uint256[]","name":"dropChances","type":"uint256[]"},{"internalType":"bytes[]","name":"stats","type":"bytes[]"},{"internalType":"string[]","name":"itemMetadataURIs","type":"string[]"}],"stateMutability":"nonpayable","type":"function","name":"UD__createItems"},{"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":"UD__createMatch","outputs":[{"internalType":"bytes32","name":"encounterId","type":"bytes32"}]},{"inputs":[{"internalType":"enum MobType","name":"mobType","type":"uint8"},{"internalType":"bytes","name":"stats","type":"bytes"},{"internalType":"string","name":"mobMetadataUri","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"UD__createMob","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"enum MobType[]","name":"mobTypes","type":"uint8[]"},{"internalType":"bytes[]","name":"stats","type":"bytes[]"},{"internalType":"string[]","name":"mobMetadataURIs","type":"string[]"}],"stateMutability":"nonpayable","type":"function","name":"UD__createMobs"},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"UD__dropGold"},{"inputs":[{"internalType":"uint256","name":"itemId","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"UD__dropItem"},{"inputs":[{"internalType":"uint256[]","name":"itemIds","type":"uint256[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"},{"internalType":"bytes32[]","name":"characterIds","type":"bytes32[]"}],"stateMutability":"nonpayable","type":"function","name":"UD__dropItems"},{"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":"UD__endTurn"},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"UD__enterGame"},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"bytes32","name":"actionId","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"UD__equipAction"},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"uint256[]","name":"itemIds","type":"uint256[]"}],"stateMutability":"nonpayable","type":"function","name":"UD__equipItems"},{"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":"UD__executeCombat"},{"inputs":[{"internalType":"uint256","name":"itemId","type":"uint256"}],"stateMutability":"view","type":"function","name":"UD__getArmorStats","outputs":[{"internalType":"struct ArmorStats","name":"_ArmorStats","type":"tuple","components":[{"internalType":"int256","name":"agiModifier","type":"int256"},{"internalType":"uint256","name":"armorModifier","type":"uint256"},{"internalType":"uint8[]","name":"classRestrictions","type":"uint8[]"},{"internalType":"int256","name":"hitPointModifier","type":"int256"},{"internalType":"int256","name":"intModifier","type":"int256"},{"internalType":"uint256","name":"minLevel","type":"uint256"},{"internalType":"int256","name":"strModifier","type":"int256"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"UD__getCharacterToken","outputs":[{"internalType":"address","name":"_characterToken","type":"address"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"pure","type":"function","name":"UD__getCharacterTokenId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"UD__getClass","outputs":[{"internalType":"enum Classes","name":"_class","type":"uint8"}]},{"inputs":[{"internalType":"uint256","name":"experience","type":"uint256"}],"stateMutability":"view","type":"function","name":"UD__getCurrentAvailableLevel","outputs":[{"internalType":"uint256","name":"currentLevel","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"UD__getCurrentItemsCounter","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"encounterId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"UD__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":"uint16","name":"x","type":"uint16"},{"internalType":"uint16","name":"y","type":"uint16"}],"stateMutability":"view","type":"function","name":"UD__getEntitiesAtPosition","outputs":[{"internalType":"bytes32[]","name":"entitiesAtPosition","type":"bytes32[]"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"UD__getEntropy","outputs":[{"internalType":"address","name":"_entropy","type":"address"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"UD__getExperience","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"UD__getGoldToken","outputs":[{"internalType":"address","name":"_goldToken","type":"address"}]},{"inputs":[{"internalType":"uint256","name":"itemId","type":"uint256"}],"stateMutability":"view","type":"function","name":"UD__getItemType","outputs":[{"internalType":"enum ItemType","name":"","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"UD__getItemsContract","outputs":[{"internalType":"address","name":"_erc1155","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"UD__getLootManagerSystem","outputs":[{"internalType":"address","name":"_lootManager","type":"address"}]},{"inputs":[{"internalType":"bytes32","name":"entityId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"UD__getMob","outputs":[{"internalType":"struct MobsData","name":"","type":"tuple","components":[{"internalType":"enum MobType","name":"mobType","type":"uint8"},{"internalType":"bytes","name":"mobStats","type":"bytes"},{"internalType":"string","name":"mobMetadata","type":"string"}]}]},{"inputs":[{"internalType":"uint256","name":"mobId","type":"uint256"}],"stateMutability":"view","type":"function","name":"UD__getMob","outputs":[{"internalType":"struct MobsData","name":"","type":"tuple","components":[{"internalType":"enum MobType","name":"mobType","type":"uint8"},{"internalType":"bytes","name":"mobStats","type":"bytes"},{"internalType":"string","name":"mobMetadata","type":"string"}]}]},{"inputs":[{"internalType":"bytes32","name":"entityId","type":"bytes32"}],"stateMutability":"pure","type":"function","name":"UD__getMobId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"entityId","type":"bytes32"}],"stateMutability":"pure","type":"function","name":"UD__getMobPosition","outputs":[{"internalType":"uint16","name":"x","type":"uint16"},{"internalType":"uint16","name":"y","type":"uint16"}]},{"inputs":[{"internalType":"uint256","name":"mobId","type":"uint256"}],"stateMutability":"view","type":"function","name":"UD__getMonsterStats","outputs":[{"internalType":"struct MonsterStats","name":"","type":"tuple","components":[{"internalType":"uint256","name":"agility","type":"uint256"},{"internalType":"uint256","name":"armor","type":"uint256"},{"internalType":"enum Classes","name":"class","type":"uint8"},{"internalType":"uint256","name":"experience","type":"uint256"},{"internalType":"uint256","name":"hitPoints","type":"uint256"},{"internalType":"uint256","name":"intelligence","type":"uint256"},{"internalType":"uint256[]","name":"inventory","type":"uint256[]"},{"internalType":"uint256","name":"level","type":"uint256"},{"internalType":"uint256","name":"strength","type":"uint256"}]}]},{"inputs":[{"internalType":"bytes32","name":"entityId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"UD__getMonsterStats","outputs":[{"internalType":"struct MonsterStats","name":"","type":"tuple","components":[{"internalType":"uint256","name":"agility","type":"uint256"},{"internalType":"uint256","name":"armor","type":"uint256"},{"internalType":"enum Classes","name":"class","type":"uint8"},{"internalType":"uint256","name":"experience","type":"uint256"},{"internalType":"uint256","name":"hitPoints","type":"uint256"},{"internalType":"uint256","name":"intelligence","type":"uint256"},{"internalType":"uint256[]","name":"inventory","type":"uint256[]"},{"internalType":"uint256","name":"level","type":"uint256"},{"internalType":"uint256","name":"strength","type":"uint256"}]}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"UD__getName","outputs":[{"internalType":"bytes32","name":"_name","type":"bytes32"}]},{"inputs":[{"internalType":"uint256","name":"mobId","type":"uint256"}],"stateMutability":"view","type":"function","name":"UD__getNpcStats","outputs":[{"internalType":"struct NPCStats","name":"","type":"tuple","components":[{"internalType":"string","name":"name","type":"string"},{"internalType":"bytes32[]","name":"storyPathIds","type":"bytes32[]"},{"internalType":"enum Alignment","name":"alignment","type":"uint8"}]}]},{"inputs":[{"internalType":"bytes32","name":"entityId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"UD__getNpcStats","outputs":[{"internalType":"struct NPCStats","name":"","type":"tuple","components":[{"internalType":"string","name":"name","type":"string"},{"internalType":"bytes32[]","name":"storyPathIds","type":"bytes32[]"},{"internalType":"enum Alignment","name":"alignment","type":"uint8"}]}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"UD__getOwner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"pure","type":"function","name":"UD__getOwnerAddress","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"uint256","name":"characterTokenId","type":"uint256"}],"stateMutability":"view","type":"function","name":"UD__getPlayerEntityId","outputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"UD__getPythProvider","outputs":[{"internalType":"address","name":"_provider","type":"address"}]},{"inputs":[{"internalType":"bytes32","name":"entityId","type":"bytes32"}],"stateMutability":"pure","type":"function","name":"UD__getSpawnCounter","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"enum Classes","name":"class","type":"uint8"}],"stateMutability":"view","type":"function","name":"UD__getStarterItems","outputs":[{"internalType":"struct StarterItemsData","name":"data","type":"tuple","components":[{"internalType":"uint256[]","name":"itemIds","type":"uint256[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}]}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"UD__getStats","outputs":[{"internalType":"struct StatsData","name":"","type":"tuple","components":[{"internalType":"uint256","name":"strength","type":"uint256"},{"internalType":"uint256","name":"agility","type":"uint256"},{"internalType":"enum Classes","name":"class","type":"uint8"},{"internalType":"uint256","name":"intelligence","type":"uint256"},{"internalType":"uint256","name":"baseHp","type":"uint256"},{"internalType":"int256","name":"currentHp","type":"int256"},{"internalType":"uint256","name":"experience","type":"uint256"},{"internalType":"uint256","name":"level","type":"uint256"}]}]},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"stateMutability":"view","type":"function","name":"UD__getTotalSupply","outputs":[{"internalType":"uint256","name":"_supply","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"itemId","type":"uint256"}],"stateMutability":"view","type":"function","name":"UD__getWeaponStats","outputs":[{"internalType":"struct WeaponStats","name":"_weaponStats","type":"tuple","components":[{"internalType":"int256","name":"agiModifier","type":"int256"},{"internalType":"uint8[]","name":"classRestrictions","type":"uint8[]"},{"internalType":"int256","name":"hitPointModifier","type":"int256"},{"internalType":"int256","name":"intModifier","type":"int256"},{"internalType":"uint256","name":"maxDamage","type":"uint256"},{"internalType":"uint256","name":"minDamage","type":"uint256"},{"internalType":"uint256","name":"minLevel","type":"uint256"},{"internalType":"int256","name":"strModifier","type":"int256"}]}]},{"inputs":[{"internalType":"bytes32","name":"entityId","type":"bytes32"},{"internalType":"uint16","name":"x","type":"uint16"},{"internalType":"uint16","name":"y","type":"uint16"}],"stateMutability":"view","type":"function","name":"UD__isAtPosition","outputs":[{"internalType":"bool","name":"_isAtPosition","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"uint256","name":"itemId","type":"uint256"}],"stateMutability":"view","type":"function","name":"UD__isEquipped","outputs":[{"internalType":"bool","name":"_isEquipped","type":"bool"}]},{"inputs":[{"internalType":"uint256","name":"itemId","type":"uint256"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"view","type":"function","name":"UD__isItemOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bytes32[]","name":"participants","type":"bytes32[]"}],"stateMutability":"view","type":"function","name":"UD__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":"UD__isParticipant","outputs":[{"internalType":"bool","name":"_isParticipant","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"UD__isValidCharacterId","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"entityId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"UD__isValidMob","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"view","type":"function","name":"UD__isValidOwner","outputs":[{"internalType":"bool","name":"","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":"UD__isValidPvE","outputs":[{"internalType":"bool","name":"_isValidPvE","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"UD__issueStarterItems"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bytes32","name":"name","type":"bytes32"},{"internalType":"string","name":"tokenUri","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"UD__mintCharacter","outputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"}]},{"inputs":[{"internalType":"bytes32","name":"entityId","type":"bytes32"},{"internalType":"uint16","name":"x","type":"uint16"},{"internalType":"uint16","name":"y","type":"uint16"}],"stateMutability":"nonpayable","type":"function","name":"UD__move"},{"inputs":[{"internalType":"bytes32","name":"userRandomNumber","type":"bytes32"},{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"enum Classes","name":"class","type":"uint8"}],"stateMutability":"payable","type":"function","name":"UD__rollStats"},{"inputs":[{"internalType":"enum Classes","name":"class","type":"uint8"},{"internalType":"uint256[]","name":"itemIds","type":"uint256[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}],"stateMutability":"nonpayable","type":"function","name":"UD__setStarterItems"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"string","name":"tokenUri","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"UD__setTokenUri"},{"inputs":[{"internalType":"bytes32","name":"entityId","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"UD__spawn"},{"inputs":[{"internalType":"uint256","name":"mobId","type":"uint256"},{"internalType":"uint16","name":"x","type":"uint16"},{"internalType":"uint16","name":"y","type":"uint16"}],"stateMutability":"nonpayable","type":"function","name":"UD__spawnMob","outputs":[{"internalType":"bytes32","name":"entityId","type":"bytes32"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"uint256","name":"itemId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"UD__unequipItem","outputs":[{"internalType":"bool","name":"success","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"characterId","type":"bytes32"},{"internalType":"string","name":"tokenUri","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"UD__updateTokenUri"},{"inputs":[{"internalType":"struct SystemCallData[]","name":"systemCalls","type":"tuple[]","components":[{"internalType":"ResourceId","name":"systemId","type":"bytes32"},{"internalType":"bytes","name":"callData","type":"bytes"}]}],"stateMutability":"nonpayable","type":"function","name":"batchCall","outputs":[{"internalType":"bytes[]","name":"returnDatas","type":"bytes[]"}]},{"inputs":[{"internalType":"struct SystemCallFromData[]","name":"systemCalls","type":"tuple[]","components":[{"internalType":"address","name":"from","type":"address"},{"internalType":"ResourceId","name":"systemId","type":"bytes32"},{"internalType":"bytes","name":"callData","type":"bytes"}]}],"stateMutability":"nonpayable","type":"function","name":"batchCallFrom","outputs":[{"internalType":"bytes[]","name":"returnDatas","type":"bytes[]"}]},{"inputs":[{"internalType":"ResourceId","name":"systemId","type":"bytes32"},{"internalType":"bytes","name":"callData","type":"bytes"}],"stateMutability":"payable","type":"function","name":"call","outputs":[{"internalType":"bytes","name":"","type":"bytes"}]},{"inputs":[{"internalType":"address","name":"delegator","type":"address"},{"internalType":"ResourceId","name":"systemId","type":"bytes32"},{"internalType":"bytes","name":"callData","type":"bytes"}],"stateMutability":"payable","type":"function","name":"callFrom","outputs":[{"internalType":"bytes","name":"","type":"bytes"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"creator","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"}],"stateMutability":"nonpayable","type":"function","name":"deleteRecord"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"}],"stateMutability":"view","type":"function","name":"getDynamicField","outputs":[{"internalType":"bytes","name":"","type":"bytes"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"}],"stateMutability":"view","type":"function","name":"getDynamicFieldLength","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"},{"internalType":"uint256","name":"start","type":"uint256"},{"internalType":"uint256","name":"end","type":"uint256"}],"stateMutability":"view","type":"function","name":"getDynamicFieldSlice","outputs":[{"internalType":"bytes","name":"data","type":"bytes"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getField","outputs":[{"internalType":"bytes","name":"data","type":"bytes"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"}],"stateMutability":"view","type":"function","name":"getField","outputs":[{"internalType":"bytes","name":"data","type":"bytes"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getFieldLayout","outputs":[{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getFieldLength","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"}],"stateMutability":"view","type":"function","name":"getFieldLength","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getKeySchema","outputs":[{"internalType":"Schema","name":"keySchema","type":"bytes32"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getRecord","outputs":[{"internalType":"bytes","name":"staticData","type":"bytes"},{"internalType":"EncodedLengths","name":"encodedLengths","type":"bytes32"},{"internalType":"bytes","name":"dynamicData","type":"bytes"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"}],"stateMutability":"view","type":"function","name":"getRecord","outputs":[{"internalType":"bytes","name":"staticData","type":"bytes"},{"internalType":"EncodedLengths","name":"encodedLengths","type":"bytes32"},{"internalType":"bytes","name":"dynamicData","type":"bytes"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getStaticField","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getValueSchema","outputs":[{"internalType":"Schema","name":"valueSchema","type":"bytes32"}]},{"inputs":[{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"address","name":"grantee","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"grantAccess"},{"inputs":[{"internalType":"contract IModule","name":"initModule","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"contract IModule","name":"module","type":"address"},{"internalType":"bytes","name":"encodedArgs","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"installModule"},{"inputs":[{"internalType":"contract IModule","name":"module","type":"address"},{"internalType":"bytes","name":"encodedArgs","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"installRootModule"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"},{"internalType":"uint256","name":"byteLengthToPop","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"popFromDynamicField"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"},{"internalType":"bytes","name":"dataToPush","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"pushToDynamicField"},{"inputs":[{"internalType":"address","name":"delegatee","type":"address"},{"internalType":"ResourceId","name":"delegationControlId","type":"bytes32"},{"internalType":"bytes","name":"initCallData","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"registerDelegation"},{"inputs":[{"internalType":"ResourceId","name":"systemId","type":"bytes32"},{"internalType":"string","name":"systemFunctionSignature","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"registerFunctionSelector","outputs":[{"internalType":"bytes4","name":"worldFunctionSelector","type":"bytes4"}]},{"inputs":[{"internalType":"ResourceId","name":"namespaceId","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"registerNamespace"},{"inputs":[{"internalType":"ResourceId","name":"namespaceId","type":"bytes32"},{"internalType":"ResourceId","name":"delegationControlId","type":"bytes32"},{"internalType":"bytes","name":"initCallData","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"registerNamespaceDelegation"},{"inputs":[{"internalType":"ResourceId","name":"systemId","type":"bytes32"},{"internalType":"string","name":"worldFunctionSignature","type":"string"},{"internalType":"string","name":"systemFunctionSignature","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"registerRootFunctionSelector","outputs":[{"internalType":"bytes4","name":"worldFunctionSelector","type":"bytes4"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"contract IStoreHook","name":"hookAddress","type":"address"},{"internalType":"uint8","name":"enabledHooksBitmap","type":"uint8"}],"stateMutability":"nonpayable","type":"function","name":"registerStoreHook"},{"inputs":[{"internalType":"ResourceId","name":"systemId","type":"bytes32"},{"internalType":"contract System","name":"system","type":"address"},{"internalType":"bool","name":"publicAccess","type":"bool"}],"stateMutability":"nonpayable","type":"function","name":"registerSystem"},{"inputs":[{"internalType":"ResourceId","name":"systemId","type":"bytes32"},{"internalType":"contract ISystemHook","name":"hookAddress","type":"address"},{"internalType":"uint8","name":"enabledHooksBitmap","type":"uint8"}],"stateMutability":"nonpayable","type":"function","name":"registerSystemHook"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"},{"internalType":"Schema","name":"keySchema","type":"bytes32"},{"internalType":"Schema","name":"valueSchema","type":"bytes32"},{"internalType":"string[]","name":"keyNames","type":"string[]"},{"internalType":"string[]","name":"fieldNames","type":"string[]"}],"stateMutability":"nonpayable","type":"function","name":"registerTable"},{"inputs":[{"internalType":"ResourceId","name":"namespaceId","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"address","name":"grantee","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"revokeAccess"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"setDynamicField"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"setField"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"},{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"setField"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"bytes","name":"staticData","type":"bytes"},{"internalType":"EncodedLengths","name":"encodedLengths","type":"bytes32"},{"internalType":"bytes","name":"dynamicData","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"setRecord"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"},{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"setStaticField"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"},{"internalType":"uint40","name":"startWithinField","type":"uint40"},{"internalType":"uint40","name":"deleteCount","type":"uint40"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"spliceDynamicData"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint48","name":"start","type":"uint48"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"spliceStaticData"},{"inputs":[],"stateMutability":"view","type":"function","name":"storeVersion","outputs":[{"internalType":"bytes32","name":"version","type":"bytes32"}]},{"inputs":[{"internalType":"ResourceId","name":"fromNamespaceId","type":"bytes32"},{"internalType":"address","name":"toAddress","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"transferBalanceToAddress"},{"inputs":[{"internalType":"ResourceId","name":"fromNamespaceId","type":"bytes32"},{"internalType":"ResourceId","name":"toNamespaceId","type":"bytes32"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"transferBalanceToNamespace"},{"inputs":[{"internalType":"ResourceId","name":"namespaceId","type":"bytes32"},{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[{"internalType":"address","name":"delegatee","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"unregisterDelegation"},{"inputs":[{"internalType":"ResourceId","name":"namespaceId","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"unregisterNamespaceDelegation"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"contract IStoreHook","name":"hookAddress","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"unregisterStoreHook"},{"inputs":[{"internalType":"ResourceId","name":"systemId","type":"bytes32"},{"internalType":"contract ISystemHook","name":"hookAddress","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"unregisterSystemHook"},{"inputs":[],"stateMutability":"view","type":"function","name":"worldVersion","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]}],"devdoc":{"kind":"dev","methods":{"call(bytes32,bytes)":{"details":"If the system is not public, the caller must have access to the namespace or name (encoded in the system ID).","params":{"callData":"The data to pass with the call, function selector (4 bytes) followed by the ABI encoded parameters.","systemId":"The ID of the system to be called."},"returns":{"_0":"The abi encoded return data from the called system."}},"callFrom(address,bytes32,bytes)":{"details":"If the system is not public, the delegator must have access to the namespace or name (encoded in the system ID).","params":{"callData":"The data to pass with the call, function selector (4 bytes) followed by the ABI encoded parameters.","delegator":"The address on whose behalf the call is made.","systemId":"The ID of the system to be called."},"returns":{"_0":"The abi encoded return data from the called system."}},"creator()":{"returns":{"_0":"The address of the World's creator."}},"initialize(address)":{"details":"Can only be called once by the creator.","params":{"initModule":"The InitModule to be installed during initialization."}},"installRootModule(address,bytes)":{"details":"Requires the caller to own the root namespace. The module is delegatecalled and installed in the root namespace.","params":{"encodedArgs":"The ABI encoded arguments for the module installation.","module":"The module to be installed."}},"storeVersion()":{"returns":{"version":"The protocol version of the Store contract."}},"worldVersion()":{"returns":{"_0":"The protocol version of the World."}}},"version":1},"userdoc":{"kind":"user","methods":{"call(bytes32,bytes)":{"notice":"Call the system at the given system ID."},"callFrom(address,bytes32,bytes)":{"notice":"Call the system at the given system ID on behalf of the given delegator."},"creator()":{"notice":"Retrieve the immutable original deployer of the World."},"getDynamicField(bytes32,bytes32[],uint8)":{"notice":"Get a single dynamic field from the given tableId and key tuple at the given dynamic field index. (Dynamic field index = field index - number of static fields)"},"getDynamicFieldLength(bytes32,bytes32[],uint8)":{"notice":"Get the byte length of a single dynamic field from the given tableId and key tuple"},"getDynamicFieldSlice(bytes32,bytes32[],uint8,uint256,uint256)":{"notice":"Get a byte slice (including start, excluding end) of a single dynamic field from the given tableId and key tuple, with the given value field layout. The slice is unchecked and will return invalid data if `start`:`end` overflow."},"getField(bytes32,bytes32[],uint8)":{"notice":"Get a single field from the given tableId and key tuple, loading the field layout from storage"},"getField(bytes32,bytes32[],uint8,bytes32)":{"notice":"Get a single field from the given tableId and key tuple, with the given field layout"},"getFieldLength(bytes32,bytes32[],uint8)":{"notice":"Get the byte length of a single field from the given tableId and key tuple, loading the field layout from storage"},"getFieldLength(bytes32,bytes32[],uint8,bytes32)":{"notice":"Get the byte length of a single field from the given tableId and key tuple, with the given value field layout"},"getRecord(bytes32,bytes32[])":{"notice":"Get full record (all fields, static and dynamic data) for the given tableId and key tuple, loading the field layout from storage"},"getRecord(bytes32,bytes32[],bytes32)":{"notice":"Get full record (all fields, static and dynamic data) for the given tableId and key tuple, with the given field layout"},"getStaticField(bytes32,bytes32[],uint8,bytes32)":{"notice":"Get a single static field from the given tableId and key tuple, with the given value field layout. Note: the field value is left-aligned in the returned bytes32, the rest of the word is not zeroed out. Consumers are expected to truncate the returned value as needed."},"initialize(address)":{"notice":"Initializes the World."},"installRootModule(address,bytes)":{"notice":"Install the given root module in the World."},"storeVersion()":{"notice":"Returns the protocol version of the Store contract."},"worldVersion()":{"notice":"Retrieve the protocol version of the World."}},"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/codegen/world/IWorld.sol":"IWorld"},"evmVersion":"paris","libraries":{}},"sources":{"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/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/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/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/worldResourceTypes.sol":{"keccak256":"0xeb042e7d3638430f6fd394107f3237cf14e4325154f0098624e8a7826584d465","urls":["bzz-raw://39e0b8eb87616b661f5a4f2fd7e1a727bd19b7fd8d40ad3d93fda26822f433ea","dweb:/ipfs/QmacYMatKV9pwEwirVRY9a6r89RoNs5yk99ic37ieWA8Dk"],"license":"MIT"},"src/codegen/common.sol":{"keccak256":"0x2d0a0176c583fcd95e430978a48ca29a38536c01b57b6effd08697d2d2bf5f42","urls":["bzz-raw://720d1ea5054e1e53b703345992c9ef61e372f6da66247fcb4e89c279055f9085","dweb:/ipfs/QmXCygeJuEesDRSAamMfJZU9Qz5UCz3dmkBj7SGfEvEEY7"],"license":"MIT"},"src/codegen/index.sol":{"keccak256":"0x84ff02d4275be694bfbe1e60e24539a891dda5df3bacf04f0eb2a974425603d0","urls":["bzz-raw://f88775b86cdc8322742e528072b64d01df3d3ef70d4fc5104412522e468ae4e2","dweb:/ipfs/Qme75CeS2sA8pr1Tyx9GN5atmuG4aBGjMPaagaGtYTjc2R"],"license":"MIT"},"src/codegen/tables/Actions.sol":{"keccak256":"0x63cd48bebaa0414728e9be2c856e4eb01efaead6627a6615da4c77b886805cef","urls":["bzz-raw://c1dfe138555b67362f41c26ce1ab074bfc1fcc4e7c6fd0284b82cc699d80d392","dweb:/ipfs/QmNf8UGE3FZ4U96HkeioE4peWWz1SKPAjhKRrGnpEnCdkQ"],"license":"MIT"},"src/codegen/tables/Admin.sol":{"keccak256":"0xe3b7e993ca2e420d73b845fb37388d453486e24522b941503a2f81c639769725","urls":["bzz-raw://e638c35d3ec5805180122b70849bd3a93aa680f3251ac9e7fe4f0ff24722f614","dweb:/ipfs/QmVL3xJPrsVDgXQTdxBEkq4PRmyNDCFHGHKJxLQzuFy9XJ"],"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/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":"0x1f0b21a82c18d474347446546973619289392ee9cc745eccbfb4ba802771b2e2","urls":["bzz-raw://f0a514e9aa8c0265e8ac7284587cdfec829ad4904e511a284d44a325f9ee511b","dweb:/ipfs/QmYGbphJpnBQMsTEtAM78kqH56FrzrmBFVNthRM4WLdUSQ"],"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":"0x3ea10f6af2b29e07f658e961113a68db383bb5df7ec853bd797bd1cc14d19b0d","urls":["bzz-raw://c834cb0bb80ffe10c6175f8a16b827dde9804d459e6aa33691484e419587d47f","dweb:/ipfs/QmXnLXquHjNXN8CCsEL3NPNrQHW6UWY78oginRPtcHZFcw"],"license":"MIT"},"src/codegen/world/ICharacterSystem.sol":{"keccak256":"0x54157279932a37b055d247901f034848c1f0bffbf262028cf9c69eeedc9b7235","urls":["bzz-raw://ead77ae9ab020f705a998be6229e975b9352486deaa9aa800b6de10338190782","dweb:/ipfs/QmaLrytghaAH6ipaBr4XwsaBcCzeVa5gujHGRNxeztuo4X"],"license":"MIT"},"src/codegen/world/ICombatSystem.sol":{"keccak256":"0x8b522a844626b33d69ae186dd26f2f7bfd921bf92ed7ed0cee2b8c349d9b64f9","urls":["bzz-raw://647f99949a4584cf4b528415ffea01ad243147548455fe5a8373b042b6af3087","dweb:/ipfs/QmYsgXQDTwrqg7YSJkKtiNZzf63f4jdA4xfni5gb9ap5K5"],"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":"0xc6caadf1800d688083c234a12cd151746f0271be03a50bb6a654634270ab0864","urls":["bzz-raw://084766afac89e6f74162f69534635f90ec56570019223e22d20342f7853fb4e0","dweb:/ipfs/QmbrQXrTewfgW2NydLgPCdt3Vton5V7nfE7HViXtyrMnoK"],"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":"0xfb774a3d4388291fa5bae54bf1c592cc366a0585e6d24388dfeebaf3abd666b4","urls":["bzz-raw://0986371fcb9f53bac88f2c190faf0f5a77fac686eced664aed5f2f1eb6eaca64","dweb:/ipfs/QmWdgLEV31t27nNQC1KGEfaZHFcuBUayxHm2giZJpAG8hv"],"license":"MIT"},"src/interfaces/Structs.sol":{"keccak256":"0x6259111a19c9e329bd16a154bca9afa89339ce179d278647e34bcdff1868d0de","urls":["bzz-raw://c67088e2ecdb887174b16cdaf87299ad3b3871d7ce1f8c4c51e8def5e6cc8fb5","dweb:/ipfs/QmR2SXkYEkSqaacU6rWGsLdZiefy5kcsVqhvzg4Kob2fk1"],"license":"MIT"}},"version":1},"id":205} \ No newline at end of file diff --git a/packages/contracts/out/MapSystem.sol/MapSystem.json b/packages/contracts/out/MapSystem.sol/MapSystem.json index 3a7858dd3..e9b877f51 100644 --- a/packages/contracts/out/MapSystem.sol/MapSystem.json +++ b/packages/contracts/out/MapSystem.sol/MapSystem.json @@ -1 +1 @@ -{"abi":[{"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":"getEntitiesAtPosition","inputs":[{"name":"x","type":"uint16","internalType":"uint16"},{"name":"y","type":"uint16","internalType":"uint16"}],"outputs":[{"name":"entitiesAtPosition","type":"bytes32[]","internalType":"bytes32[]"}],"stateMutability":"view"},{"type":"function","name":"isAtPosition","inputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"},{"name":"x","type":"uint16","internalType":"uint16"},{"name":"y","type":"uint16","internalType":"uint16"}],"outputs":[{"name":"_isAtPosition","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"move","inputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"},{"name":"x","type":"uint16","internalType":"uint16"},{"name":"y","type":"uint16","internalType":"uint16"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"spawn","inputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"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_SpliceDynamicData","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","indexed":false,"internalType":"uint8"},{"name":"start","type":"uint48","indexed":false,"internalType":"uint48"},{"name":"deleteCount","type":"uint40","indexed":false,"internalType":"uint40"},{"name":"encodedLengths","type":"bytes32","indexed":false,"internalType":"EncodedLengths"},{"name":"data","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":"EncodedLengths_InvalidLength","inputs":[{"name":"length","type":"uint256","internalType":"uint256"}]},{"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":"Store_IndexOutOfBounds","inputs":[{"name":"length","type":"uint256","internalType":"uint256"},{"name":"accessedIndex","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidResourceType","inputs":[{"name":"expected","type":"bytes2","internalType":"bytes2"},{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"Store_InvalidSplice","inputs":[{"name":"startWithinField","type":"uint40","internalType":"uint40"},{"name":"deleteCount","type":"uint40","internalType":"uint40"},{"name":"fieldLength","type":"uint40","internalType":"uint40"}]},{"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":"0x608060405234801561001057600080fd5b50614150806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c806369e10c7b1161005b57806369e10c7b146100fb578063911c37ae1461011b578063953717d114610130578063e1af802c1461014357600080fd5b806301ffc9a71461008d578063119df25f146100b55780633fbf0c5a146100d557806345ec9354146100e8575b600080fd5b6100a061009b3660046135b9565b61014b565b60405190151581526020015b60405180910390f35b6100bd6101e4565b6040516001600160a01b0390911681526020016100ac565b6100a06100e336600461360d565b6101f3565b604051601f1936013581526020016100ac565b61010e610109366004613649565b610236565b6040516100ac91906136b8565b61012e6101293660046136cb565b610249565b005b61012e61013e36600461360d565b610365565b6100bd6105a2565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee1270000000000000000000000000000000000000000000000000000000014806101de57507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b60006101ee6105ac565b905090565b6000806000610201866105de565b915091508461ffff168261ffff1614801561022357508361ffff168161ffff16145b1561022d57600192505b50509392505050565b6060610242838361068f565b9392505050565b60006102548261074e565b9050806001600160a01b03166102686101e4565b6001600160a01b0316146102e85760405162461bcd60e51b8152602060048201526024808201527f4f6e6c7920746865206f776e65722063616e20737061776e206120636861726160448201527f637465720000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6102f1826107eb565b1561033e5760405162461bcd60e51b815260206004820152601960248201527f43686172616374657220616c726561647920737061776e65640000000000000060448201526064016102df565b61034a82600080610890565b610355826001610958565b61036160008084610a16565b5050565b60006103708461074e565b9050806001600160a01b03166103846101e4565b6001600160a01b0316146104005760405162461bcd60e51b815260206004820152602360248201527f4f6e6c7920746865206f776e65722063616e206d6f766520612063686172616360448201527f746572000000000000000000000000000000000000000000000000000000000060648201526084016102df565b610409846107eb565b6104555760405162461bcd60e51b815260206004820152601560248201527f436861726163746572206e6f7420737061776e6564000000000000000000000060448201526064016102df565b600080610461866105de565b91509150600080610470610adc565b915091508061ffff168761ffff16106104cb5760405162461bcd60e51b815260206004820152600f60248201527f58206f7574206f6620626f756e6473000000000000000000000000000000000060448201526064016102df565b8161ffff168661ffff16106105225760405162461bcd60e51b815260206004820152600f60248201527f59206f7574206f6620626f756e6473000000000000000000000000000000000060448201526064016102df565b61052e84848989610b59565b61ffff166001146105815760405162461bcd60e51b815260206004820152601e60248201527f43616e206f6e6c79206d6f766520312074696c6520617420612074696d65000060448201526064016102df565b61058e8885858a8a610bc7565b6105988787610cc3565b5050505050505050565b60006101ee610fc0565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c806105db5750335b90565b60408051600180825281830190925260009182918291602080830190803683370190505090508381600081518110610618576106186136fa565b6020908102919091010152600080806106717f74625544000000000000000000000000506f736974696f6e0000000000000000857e04020002020000000000000000000000000000000000000000000000000000610fca565b92509250925061068283838361109a565b9550955050505050915091565b604080516002808252606080830184529260009291906020830190803683370190505090508361ffff1660001b816000815181106106cf576106cf6136fa565b6020026020010181815250508261ffff1660001b816001815181106106f6576106f66136fa565b6020908102919091010152600061072e7f74625544000000000000000000000000456e7469746965734174506f7369746983836110bd565b90506107456107408260008451611184565b611212565b95945050505050565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110610787576107876136fa565b602090810291909101015260006107e07f74625544000000000000000000000000436861726163746572730000000000008360017e55040020142001000000000000000000000000000000000000000000000000611223565b60601c949350505050565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110610824576108246136fa565b6020908102919091010152600061087c7f74625544000000000000000000000000537061776e656400000000000000000083837e01010001000000000000000000000000000000000000000000000000000000611223565b90506108888160f81c90565b949350505050565b6040805160f084811b7fffff0000000000000000000000000000000000000000000000000000000000009081166020808501919091529185901b1660228301528251600481840301815260016024840181815260648501909552909360009360609385939160440190803683370190505090508681600081518110610917576109176136fa565b602090810291909101015261094f7f74625544000000000000000000000000506f736974696f6e0000000000000000828686866112e0565b50505050505050565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061098e5761098e6136fa565b602002602001018181525050610a117f74625544000000000000000000000000537061776e656400000000000000000060001b826000856040516020016109dc91151560f81b815260010190565b60408051601f198184030181529190527e01010001000000000000000000000000000000000000000000000000000000611395565b505050565b6040805160028082526060820183526000926020830190803683370190505090508361ffff1660001b81600081518110610a5257610a526136fa565b6020026020010181815250508261ffff1660001b81600181518110610a7957610a796136fa565b602002602001018181525050610ad67f74625544000000000000000000000000456e7469746965734174506f7369746960001b82600085604051602001610ac291815260200190565b60405160208183030381529060405261140b565b50505050565b60408051600080825260208201909252819060008080610b3c7f746255440000000000000000000000004d6170436f6e66696700000000000000857e04020002020000000000000000000000000000000000000000000000000000610fca565b925092509250610b4d83838361109a565b95509550505050509091565b6000808361ffff168661ffff1611610b7a57610b758685613726565b610b84565b610b848487613726565b905060008361ffff168661ffff1611610ba657610ba18685613726565b610bb0565b610bb08487613726565b9050610bbc8183613748565b979650505050505050565b6000610bd38585610236565b90506000805b8251811015610c5f5787838281518110610bf557610bf56136fa565b602002602001015103610c4d576001915060008360018551610c179190613763565b81518110610c2757610c276136fa565b60200260200101519050610c3d888884846114bd565b610c478888611588565b50610c5f565b80610c5781613776565b915050610bd9565b5080610cad5760405162461bcd60e51b815260206004820152601f60248201527f456e7469747920776173206e6f74206174207468617420706f736974696f6e0060448201526064016102df565b610cb8878585610890565b61094f848489610a16565b6000610cda6000808561ffff168561ffff16611628565b61ffff16905080600003610ced57505050565b6000610cf882611646565b90506000815111610d715760405162461bcd60e51b815260206004820152602760248201527f4e6f206d6f6e737465727320617661696c61626c6520666f722074686973206460448201527f697374616e63650000000000000000000000000000000000000000000000000060648201526084016102df565b606046617a6903610e0b5773__$227e4555c1f608352b26068e438454dd8b$__63bc3a86cf610da1600842613874565b6040518263ffffffff1660e01b8152600401610dbf91815260200190565b600060405180830381865af4158015610ddc573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610e0491908101906138b4565b9050610e9e565b6040517fbc3a86cf00000000000000000000000000000000000000000000000000000000815244600482015273__$227e4555c1f608352b26068e438454dd8b$__9063bc3a86cf90602401600060405180830381865af4158015610e73573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610e9b91908101906138b4565b90505b60005b60068260018451610eb29190613763565b81518110610ec257610ec26136fa565b6020026020010151610ed49190613986565b63ffffffff16811015610fb857610faf838451848481518110610ef957610ef96136fa565b602002602001015163ffffffff16610f1191906139a9565b81518110610f2157610f216136fa565b60200260200101518787604051602401610f529392919092835261ffff918216602084015216604082015260600190565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f15bc4248000000000000000000000000000000000000000000000000000000001790526116cd565b50600101610ea1565b505050505050565b60006101ee61177b565b6060600060606000610fda61177b565b9050306001600160a01b0382160361100357610ff78787876117ba565b93509350935050611091565b6040517f419b58fd0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063419b58fd9061104c908a908a908a906004016139bd565b600060405180830381865afa158015611069573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ff79190810190613a6e565b93509350939050565b60208301516022840151600091829160f091821c911c5b90969095509350505050565b606060006110c961177b565b9050306001600160a01b038216036110ee576110e68585856118c2565b915050610242565b6040517f1e7889770000000000000000000000000000000000000000000000000000000081526001600160a01b03821690631e7889779061113790889088908890600401613adb565b600060405180830381865afa158015611154573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526110e69190810190613b07565b509392505050565b6000818311806111945750835182115b156111d1578383836040517f23230fa30000000000000000000000000000000000000000000000000000000081526004016102df93929190613b68565b602084016111df8482613b8d565b905060006111ed8585613763565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b6060600061024283602060006118fc565b60008061122e61177b565b9050306001600160a01b038216036112545761124c86868686611977565b915050610888565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d599061129f908990899089908990600401613ba0565b602060405180830381865afa1580156112bc573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061124c9190613bcf565b60006112ea61177b565b9050306001600160a01b0382160361130e5761130986868686866119a4565b610fb8565b6040517f298314fb0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063298314fb9061135b9089908990899089908990600401613be8565b600060405180830381600087803b15801561137557600080fd5b505af1158015611389573d6000803e3d6000fd5b50505050505050505050565b600061139f61177b565b9050306001600160a01b038216036113be5761130986868686866119ba565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae09061135b9089908990899089908990600401613c2d565b600061141561177b565b9050306001600160a01b0382160361143857611433858585856119cf565b6114b6565b6040517f150f32620000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063150f326290611483908890889088908890600401613c74565b600060405180830381600087803b15801561149d57600080fd5b505af11580156114b1573d6000803e3d6000fd5b505050505b5050505050565b6040805160028082526060820183526000926020830190803683370190505090508461ffff1660001b816000815181106114f9576114f96136fa565b6020026020010181815250508361ffff1660001b81600181518110611520576115206136fa565b60200260200101818152505060008260405160200161154191815260200190565b6040516020818303038152906040529050610fb87f74625544000000000000000000000000456e7469746965734174506f7369746960001b83600087602002855186611a0a565b6040805160028082526060820183526000926020830190803683370190505090508261ffff1660001b816000815181106115c4576115c46136fa565b6020026020010181815250508161ffff1660001b816001815181106115eb576115eb6136fa565b602002602001018181525050610a117f74625544000000000000000000000000456e7469746965734174506f7369746960001b8260006020611ac3565b60006107456116378685611b36565b6116418685611b36565b611b58565b60408051600180825281830190925260609160009190602080830190803683370190505090508260001b81600081518110611683576116836136fa565b602090810291909101015260006116bb7f746255440000000000000000000000004d6f627342794c6576656c000000000083836110bd565b90506108886107408260008451611184565b60606000806116e36116de85613ca8565b611b6f565b91509150816000801b03611749576040517ffdde54e20000000000000000000000000000000000000000000000000000000081527fffffffff000000000000000000000000000000000000000000000000000000006000351660048201526024016102df565b6020840180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16821790526108888285611c32565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b0316806117b5573391505090565b919050565b60606000606060006117cb85611d0d565b90506117d8878783611d30565b935060006117e586611d69565b905080156118b7576117f78888611da6565b935066ffffffffffffff841667ffffffffffffffff81111561181b5761181b6136e4565b6040519080825280601f01601f191660200182016040528015611845576020820181803683370190505b5092506020830160005b828160ff1610156118b45760006118678b8b84611db9565b90506000611884888460ff166028026038011c64ffffffffff1690565b90506118938260008387611e39565b61189d8185613b8d565b9350505080806118ac90613cf8565b91505061184f565b50505b505093509350939050565b60606108886118d2858585611db9565b60006118f7856118e28989611da6565b9060ff166028026038011c64ffffffffff1690565b611f05565b6060600061190a8560801c90565b90506fffffffffffffffffffffffffffffffff8516600085828161193057611930613970565b04905060405193506020840160208202810160405281855260005b8281101561196b578451871c82529387019360209091019060010161194b565b50505050509392505050565b60006107456119868686611f28565b60ff858116601b0360080285901c1661199f8587611f7e565b611faf565b6114b685858585856119b58b612000565b612085565b6114b685856119c98487611f7e565b856123be565b60006119db8585611da6565b905060006119f8828560ff166028026038011c64ffffffffff1690565b9050610fb88686868460008888612659565b6000611a1461177b565b9050306001600160a01b03821603611a3957611a34878787878787612a93565b61094f565b6040517fc0a2895a0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063c0a2895a90611a88908a908a908a908a908a908a90600401613d17565b600060405180830381600087803b158015611aa257600080fd5b505af1158015611ab6573d6000803e3d6000fd5b5050505050505050505050565b6000611acd61177b565b9050306001600160a01b03821603611aeb5761143385858585612aab565b6040517fd9c03a040000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063d9c03a0490611483908890889088908890600401613ba0565b6000818311611b4e57611b498383613763565b610242565b6102428284613763565b600081831015611b685781610242565b5090919050565b6040805160018082528183019092526000918291829160208083019080368337019050509050837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681600081518110611bc857611bc86136fa565b602090810291909101015260008080611c217f7462776f726c6400000000000000000046756e6374696f6e53656c6563746f72857e24020020040000000000000000000000000000000000000000000000000000610fca565b925092509250610682838383612b04565b60606000611c3e610fc0565b90506001600160a01b0381163003611c7f576000611c66611c5d6105ac565b60008787612b10565b9350905080611c7857611c7883612c4b565b50506101de565b6040517f3ae7af080000000000000000000000000000000000000000000000000000000081526001600160a01b03821690633ae7af0890611cc69087908790600401613d6d565b6000604051808303816000875af1158015611ce5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526108889190810190613b07565b60006008611d1d60026020613763565b611d279190613d86565b9190911c919050565b606081600003611d4f5750604080516020810190915260008152610242565b6000611d5b8585611f28565b905061074581600085611f05565b60006008600180611d7c60026020613763565b611d869190613763565b611d909190613763565b611d9a9190613d86565b8260ff911c1692915050565b6000610242611db58484612c53565b5490565b60008383604051602001611dce929190613d9d565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b8215611ec05760208310611e6357602083048401935060208381611e5f57611e5f613970565b0692505b8215611ec0576020839003600081841015611e865750600019600884021c611e90565b50600019600882021c5b8554600886021b818451168219821617845250818411611eb1575050610ad6565b50600194909401939182900391015b5b60208210611ee25783548152600190930192601f1990910190602001611ec1565b8115610ad6576000600019600884021c8251865482191691161782525050505050565b60405160208101601f19603f848401011660405282825261117c85858584611e39565b60008282604051602001611f3d929190613d9d565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff1681101561117c57611fa560ff601b83900360080287901c1683613b8d565b9150600101611f83565b600060208210611fd557602082048401935060208281611fd157611fd1613970565b0691505b508254600882021b60208290038084111561117c576001850154600882021c82179150509392505050565b60007f8b9d8c8b908d9affffffffffffffffffab9e9d939a8d00000000000000000000820161204f57507e60030220202000000000000000000000000000000000000000000000000000919050565b6101de61207c7f746273746f72650000000000000000005461626c65730000000000000000000084612ca9565b60206000611faf565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff000000000000000000000000000000000000000000000000000000000000160361211157857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9868686866040516121049493929190613dd9565b60405180910390a2610fb8565b600061211c87612cc5565b905060005b81518110156121f557600082828151811061213e5761213e6136fa565b6020026020010151905061216a6001826affffffffffffffffffffff1916612d4e90919063ffffffff16565b156121ec576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c906121b9908c908c908c908c908c908c90600401613e18565b600060405180830381600087803b1580156121d357600080fd5b505af11580156121e7573d6000803e3d6000fd5b505050505b50600101612121565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a98787878760405161222c9493929190613dd9565b60405180910390a260006122408888611f28565b90506000602087019050612258826000895184612d6c565b600061226385611d69565b11156122e75760006122758a8a612c53565b878155905060208601915060008060005b61228f88611d69565b8160ff1610156122e2576122a48d8d83611db9565b92506122bf8a8260ff166028026038011c64ffffffffff1690565b91506122ce8360008488612d6c565b6122d88286613b8d565b9450600101612286565b505050505b60005b8351811015611389576000848281518110612307576123076136fa565b602002602001015190506123336002826affffffffffffffffffffff1916612d4e90919063ffffffff16565b156123b5576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90612382908e908e908e908e908e908e90600401613e18565b600060405180830381600087803b15801561239c57600080fd5b505af11580156123b0573d6000803e3d6000fd5b505050505b506001016122ea565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff000000000000000000000000000000000000000000000000000000000000160361244857837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be84848460405161243b93929190613e71565b60405180910390a2610ad6565b60006124548585611f28565b9050600061246186612cc5565b905060005b8151811015612536576000828281518110612483576124836136fa565b602002602001015190506124af6004826affffffffffffffffffffff1916612d4e90919063ffffffff16565b1561252d576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d906124fa908b908b908b908b90600401613eae565b600060405180830381600087803b15801561251457600080fd5b505af1158015612528573d6000803e3d6000fd5b505050505b50600101612466565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be86868660405161256b93929190613e71565b60405180910390a2612586828565ffffffffffff1685612e2b565b60005b815181101561094f5760008282815181106125a6576125a66136fa565b602002602001015190506125d26008826affffffffffffffffffffff1916612d4e90919063ffffffff16565b15612650576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba87219061261d908b908b908b908b90600401613eae565b600060405180830381600087803b15801561263757600080fd5b505af115801561264b573d6000803e3d6000fd5b505050505b50600101612589565b7f7462000000000000000000000000000000000000000000000000000000000000877fffff0000000000000000000000000000000000000000000000000000000000001614612719577f746200000000000000000000000000000000000000000000000000000000000087886040516020016126d791815260200190565b60408051601f19818403018152908290527f31b466830000000000000000000000000000000000000000000000000000000082526102df939291600401613ee7565b6000612734828760ff166028026038011c64ffffffffff1690565b9050600083518564ffffffffff168361274d9190613763565b6127579190613b8d565b905080821415801561277957508161276f8688613f28565b64ffffffffff1614155b156127c9576040517fa65010b400000000000000000000000000000000000000000000000000000000815264ffffffffff80881660048301528087166024830152831660448201526064016102df565b818664ffffffffff16111561281a576040517f7e8578d30000000000000000000000000000000000000000000000000000000081526004810183905264ffffffffff871660248201526044016102df565b6000612827848984612e41565b905060006128348b612cc5565b905060005b81518110156128ff576000828281518110612856576128566136fa565b602002602001015190506128826010826affffffffffffffffffffff1916612d4e90919063ffffffff16565b156128f657606081901c6001600160a01b03166355eb5a288e8e8e8e8e8d8f6040518863ffffffff1660e01b81526004016128c39796959493929190613f46565b600060405180830381600087803b1580156128dd57600080fd5b505af11580156128f1573d6000803e3d6000fd5b505050505b50600101612839565b5064ffffffffff881660005b8a60ff168160ff16101561293e57612932878260ff166028026038011c64ffffffffff1690565b9091019060010161290b565b508b7ffe158a7adba34e256807c8a149028d3162918713c3838afc643ce9f96716ebfd8c8c848c888d60405161297996959493929190613fa4565b60405180910390a25082841461299a5760006129958c8c612c53565b839055505b60006129a78c8c8c611db9565b90506129bb818a64ffffffffff1689612e2b565b5060005b8151811015612a855760008282815181106129dc576129dc6136fa565b60200260200101519050612a086020826affffffffffffffffffffff1916612d4e90919063ffffffff16565b15612a7c57606081901c6001600160a01b031663635845338e8e8e8e8e8a8f6040518863ffffffff1660e01b8152600401612a499796959493929190613f46565b600060405180830381600087803b158015612a6357600080fd5b505af1158015612a77573d6000803e3d6000fd5b505050505b506001016129bf565b505050505050505050505050565b610fb8868686868686612aa68d8d611da6565b612659565b6000612ab78585611da6565b90506000612ad4828560ff166028026038011c64ffffffffff1690565b9050610fb8868686612aed8764ffffffffff8716613763565b604080516000815260208101909152889088612659565b6000806110b185612f0f565b60006060600080612b2086612f24565b90925090506001600160a01b038216612b715785612b3d87612fc8565b6040517ffbf10ce60000000000000000000000000000000000000000000000000000000081526004016102df929190613d6d565b80612b8057612b808689613105565b8615612bec577dffffffffffffffffffffffffffff0000000000000000000000000000000086167f6e73000000000000000000000000000000000000000000000000000000000000176000612bd482613151565b9050612be982612be48b84613b8d565b6131e2565b50505b6000612bf88760101b90565b7fffffffffffffffffffffffffffff0000000000000000000000000000000000001614612c3057612c2b88888488613296565b612c3c565b612c3c8888848861330e565b90999098509650505050505050565b805160208201fd5b60008282604051602001612c68929190613d9d565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b6040805160208101849052908101829052600090606001611f3d565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110612cff57612cff6136fa565b60209081029190910101526000612d377f746273746f726500000000000000000053746f7265486f6f6b7300000000000083836118c2565b9050610888612d498260008451611184565b61336f565b60008160ff1682612d5f8560581c90565b1660ff1614905092915050565b8215612de65760208310612d9657602083048401935060208381612d9257612d92613970565b0692505b8215612de65760208390036000600019600885021c1990506008850281811c91508351811c9050811987541682821617875550818411612dd7575050610ad6565b50600194909401939182900391015b5b60208210612e085780518455600190930192601f1990910190602001612de7565b8115610ad6576000600019600884021c8554835182191691161785555050505050565b610a1183838351612e3c8560200190565b612d6c565b600064ffffffffff821115612e85576040517f7149a3c1000000000000000000000000000000000000000000000000000000008152600481018390526024016102df565b8366ffffffffffffff811660ff851660280260380182901c64ffffffffff16808510612eb75780850382019150612ebf565b848103820391505b5064ffffffffff6038602860ff8816020181811b197fffffffffffffffffffffffffffffffffffffffffffffffffff000000000000009490941690921792909216918416901b1790509392505050565b602081015160408201516000905b9050915091565b60408051600180825281830190925260009182918291602080830190803683370190505090508381600081518110612f5e57612f5e6136fa565b602090810291909101015260008080612fb77f7462776f726c6400000000000000000053797374656d73000000000000000000857e150200140100000000000000000000000000000000000000000000000000006117ba565b925092509250610682838383613380565b606081601081901b6000612fdb8361338c565b9050827fffffffffffffffffffffffffffff000000000000000000000000000000000000831615613036576130317fffffffffffffffffffffffffffff00000000000000000000000000000000000084166133a3565b61306d565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b7fffffffffffffffffffffffffffffffff000000000000000000000000000000008316156130a35761309e836133a3565b6130da565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b6040516020016130ec93929190613ff3565b6040516020818303038152906040529350505050919050565b61310f8282613447565b6103615761311c82612fc8565b816040517fd787b7370000000000000000000000000000000000000000000000000000000081526004016102df929190614081565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061318a5761318a6136fa565b602090810291909101015260006108887f7462776f726c6400000000000000000042616c616e636573000000000000000083837e20010020000000000000000000000000000000000000000000000000000000611977565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110613218576132186136fa565b602002602001018181525050610a117f7462776f726c6400000000000000000042616c616e636573000000000000000060001b8260008560405160200161326191815260200190565b60408051601f198184030181529190527e200100200000000000000000000000000000000000000000000000000000006119ba565b60006060836001600160a01b031660006132b18589896134a5565b6040516132be91906140ac565b60006040518083038185875af1925050503d80600081146132fb576040519150601f19603f3d011682016040523d82523d6000602084013e613300565b606091505b509097909650945050505050565b60006060836001600160a01b03166133278488886134a5565b60405161333491906140ac565b600060405180830381855af49150503d80600081146132fb576040519150601f19603f3d011682016040523d82523d6000602084013e613300565b6060600061024283601560006118fc565b6000806110b1856134d4565b600061339a60706010613b8d565b9190911b919050565b606060005b6010811015613408577fffffffffffffffffffffffffffffffff000000000000000000000000000000008316600882021b7fff000000000000000000000000000000000000000000000000000000000000001615613408576001016133a8565b604080517fffffffffffffffffffffffffffffffff00000000000000000000000000000000851660208201528151603090910190915281815280610888565b60006134957f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617836134f0565b80610242575061024283836134f0565b60608383836040516020016134bc939291906140c8565b60405160208183030381529060405290509392505050565b6020810151603482015160609190911c9060009060f81c612f1d565b604080516002808252606082018352600092839291906020830190803683370190505090508381600081518110613529576135296136fa565b602002602001018181525050826001600160a01b031660001b81600181518110613555576135556136fa565b602090810291909101015260006135ad7f7462776f726c640000000000000000005265736f75726365416363657373000083837e01010001000000000000000000000000000000000000000000000000000000611977565b90506107458160f81c90565b6000602082840312156135cb57600080fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461024257600080fd5b803561ffff811681146117b557600080fd5b60008060006060848603121561362257600080fd5b83359250613632602085016135fb565b9150613640604085016135fb565b90509250925092565b6000806040838503121561365c57600080fd5b613665836135fb565b9150613673602084016135fb565b90509250929050565b60008151808452602080850194506020840160005b838110156136ad57815187529582019590820190600101613691565b509495945050505050565b602081526000610242602083018461367c565b6000602082840312156136dd57600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b61ffff82811682821603908082111561374157613741613710565b5092915050565b61ffff81811683821601908082111561374157613741613710565b818103818111156101de576101de613710565b6000600019820361378957613789613710565b5060010190565b600181815b808511156137cb5781600019048211156137b1576137b1613710565b808516156137be57918102915b93841c9390800290613795565b509250929050565b6000826137e2575060016101de565b816137ef575060006101de565b8160018114613805576002811461380f5761382b565b60019150506101de565b60ff84111561382057613820613710565b50506001821b6101de565b5060208310610133831016604e8410600b841016171561384e575081810a6101de565b6138588383613790565b806000190482111561386c5761386c613710565b029392505050565b600061024260ff8416836137d3565b604051601f8201601f1916810167ffffffffffffffff811182821017156138ac576138ac6136e4565b604052919050565b600060208083850312156138c757600080fd5b825167ffffffffffffffff808211156138df57600080fd5b818501915085601f8301126138f357600080fd5b815181811115613905576139056136e4565b8060051b9150613916848301613883565b818152918301840191848101908884111561393057600080fd5b938501935b83851015613964578451925063ffffffff831683146139545760008081fd5b8282529385019390850190613935565b98975050505050505050565b634e487b7160e01b600052601260045260246000fd5b600063ffffffff8084168061399d5761399d613970565b92169190910692915050565b6000826139b8576139b8613970565b500690565b8381526060602082015260006139d6606083018561367c565b9050826040830152949350505050565b60005b83811015613a015781810151838201526020016139e9565b50506000910152565b600082601f830112613a1b57600080fd5b815167ffffffffffffffff811115613a3557613a356136e4565b613a486020601f19601f84011601613883565b818152846020838601011115613a5d57600080fd5b6108888260208301602087016139e6565b600080600060608486031215613a8357600080fd5b835167ffffffffffffffff80821115613a9b57600080fd5b613aa787838801613a0a565b9450602086015193506040860151915080821115613ac457600080fd5b50613ad186828701613a0a565b9150509250925092565b838152606060208201526000613af4606083018561367c565b905060ff83166040830152949350505050565b600060208284031215613b1957600080fd5b815167ffffffffffffffff811115613b3057600080fd5b61088884828501613a0a565b60008151808452613b548160208601602086016139e6565b601f01601f19169290920160200192915050565b606081526000613b7b6060830186613b3c565b60208301949094525060400152919050565b808201808211156101de576101de613710565b848152608060208201526000613bb9608083018661367c565b60ff949094166040830152506060015292915050565b600060208284031215613be157600080fd5b5051919050565b85815260a060208201526000613c0160a083018761367c565b8281036040840152613c138187613b3c565b905084606084015282810360808401526139648185613b3c565b85815260a060208201526000613c4660a083018761367c565b60ff861660408401528281036060840152613c618186613b3c565b9150508260808301529695505050505050565b848152608060208201526000613c8d608083018661367c565b60ff851660408401528281036060840152610bbc8185613b3c565b6000815160208301517fffffffff0000000000000000000000000000000000000000000000000000000080821693506004831015613cf05780818460040360031b1b83161693505b505050919050565b600060ff821660ff8103613d0e57613d0e613710565b60010192915050565b86815260c060208201526000613d3060c083018861367c565b60ff8716604084015264ffffffffff86811660608501528516608084015282810360a0840152613d608185613b3c565b9998505050505050505050565b8281526040602082015260006108886040830184613b3c565b80820281158282048414176101de576101de613710565b8281526000602080830184516020860160005b82811015613dcc57815184529284019290840190600101613db0565b5091979650505050505050565b608081526000613dec608083018761367c565b8281036020840152613dfe8187613b3c565b90508460408401528281036060840152610bbc8185613b3c565b86815260c060208201526000613e3160c083018861367c565b8281036040840152613e438188613b3c565b90508560608401528281036080840152613e5d8186613b3c565b9150508260a0830152979650505050505050565b606081526000613e84606083018661367c565b65ffffffffffff851660208401528281036040840152613ea48185613b3c565b9695505050505050565b848152608060208201526000613ec7608083018661367c565b65ffffffffffff851660408401528281036060840152610bbc8185613b3c565b7fffff000000000000000000000000000000000000000000000000000000000000841681528260208201526060604082015260006107456060830184613b3c565b64ffffffffff81811683821601908082111561374157613741613710565b87815260e060208201526000613f5f60e083018961367c565b60ff8816604084015264ffffffffff87811660608501528616608084015260a0830185905282810360c0840152613f968185613b3c565b9a9950505050505050505050565b60c081526000613fb760c083018961367c565b60ff8816602084015265ffffffffffff8716604084015264ffffffffff8616606084015284608084015282810360a0840152613d608185613b3c565b7fffff0000000000000000000000000000000000000000000000000000000000008416815260007f3a0000000000000000000000000000000000000000000000000000000000000080600284015284516140548160038601602089016139e6565b8084019050816003820152845191506140748260048301602088016139e6565b0160040195945050505050565b6040815260006140946040830185613b3c565b90506001600160a01b03831660208301529392505050565b600082516140be8184602087016139e6565b9190910192915050565b600084516140da8184602089016139e6565b60609490941b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000169190930190815260148101919091526034019291505056fea2646970667358221220c47d61b49bc23938b62fc8aa7c841674bfa06b7af56051568dd65a107a781da864736f6c63430008180033","sourceMap":"412:4148:216:-:0;;;;;;;;;;;;;;;;;;;","linkReferences":{"src/libraries/LibChunks.sol":{"LibChunks":[{"start":3486,"length":20},{"start":3673,"length":20}]}}},"deployedBytecode":{"object":"0x608060405234801561001057600080fd5b50600436106100885760003560e01c806369e10c7b1161005b57806369e10c7b146100fb578063911c37ae1461011b578063953717d114610130578063e1af802c1461014357600080fd5b806301ffc9a71461008d578063119df25f146100b55780633fbf0c5a146100d557806345ec9354146100e8575b600080fd5b6100a061009b3660046135b9565b61014b565b60405190151581526020015b60405180910390f35b6100bd6101e4565b6040516001600160a01b0390911681526020016100ac565b6100a06100e336600461360d565b6101f3565b604051601f1936013581526020016100ac565b61010e610109366004613649565b610236565b6040516100ac91906136b8565b61012e6101293660046136cb565b610249565b005b61012e61013e36600461360d565b610365565b6100bd6105a2565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee1270000000000000000000000000000000000000000000000000000000014806101de57507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b60006101ee6105ac565b905090565b6000806000610201866105de565b915091508461ffff168261ffff1614801561022357508361ffff168161ffff16145b1561022d57600192505b50509392505050565b6060610242838361068f565b9392505050565b60006102548261074e565b9050806001600160a01b03166102686101e4565b6001600160a01b0316146102e85760405162461bcd60e51b8152602060048201526024808201527f4f6e6c7920746865206f776e65722063616e20737061776e206120636861726160448201527f637465720000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6102f1826107eb565b1561033e5760405162461bcd60e51b815260206004820152601960248201527f43686172616374657220616c726561647920737061776e65640000000000000060448201526064016102df565b61034a82600080610890565b610355826001610958565b61036160008084610a16565b5050565b60006103708461074e565b9050806001600160a01b03166103846101e4565b6001600160a01b0316146104005760405162461bcd60e51b815260206004820152602360248201527f4f6e6c7920746865206f776e65722063616e206d6f766520612063686172616360448201527f746572000000000000000000000000000000000000000000000000000000000060648201526084016102df565b610409846107eb565b6104555760405162461bcd60e51b815260206004820152601560248201527f436861726163746572206e6f7420737061776e6564000000000000000000000060448201526064016102df565b600080610461866105de565b91509150600080610470610adc565b915091508061ffff168761ffff16106104cb5760405162461bcd60e51b815260206004820152600f60248201527f58206f7574206f6620626f756e6473000000000000000000000000000000000060448201526064016102df565b8161ffff168661ffff16106105225760405162461bcd60e51b815260206004820152600f60248201527f59206f7574206f6620626f756e6473000000000000000000000000000000000060448201526064016102df565b61052e84848989610b59565b61ffff166001146105815760405162461bcd60e51b815260206004820152601e60248201527f43616e206f6e6c79206d6f766520312074696c6520617420612074696d65000060448201526064016102df565b61058e8885858a8a610bc7565b6105988787610cc3565b5050505050505050565b60006101ee610fc0565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c806105db5750335b90565b60408051600180825281830190925260009182918291602080830190803683370190505090508381600081518110610618576106186136fa565b6020908102919091010152600080806106717f74625544000000000000000000000000506f736974696f6e0000000000000000857e04020002020000000000000000000000000000000000000000000000000000610fca565b92509250925061068283838361109a565b9550955050505050915091565b604080516002808252606080830184529260009291906020830190803683370190505090508361ffff1660001b816000815181106106cf576106cf6136fa565b6020026020010181815250508261ffff1660001b816001815181106106f6576106f66136fa565b6020908102919091010152600061072e7f74625544000000000000000000000000456e7469746965734174506f7369746983836110bd565b90506107456107408260008451611184565b611212565b95945050505050565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110610787576107876136fa565b602090810291909101015260006107e07f74625544000000000000000000000000436861726163746572730000000000008360017e55040020142001000000000000000000000000000000000000000000000000611223565b60601c949350505050565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110610824576108246136fa565b6020908102919091010152600061087c7f74625544000000000000000000000000537061776e656400000000000000000083837e01010001000000000000000000000000000000000000000000000000000000611223565b90506108888160f81c90565b949350505050565b6040805160f084811b7fffff0000000000000000000000000000000000000000000000000000000000009081166020808501919091529185901b1660228301528251600481840301815260016024840181815260648501909552909360009360609385939160440190803683370190505090508681600081518110610917576109176136fa565b602090810291909101015261094f7f74625544000000000000000000000000506f736974696f6e0000000000000000828686866112e0565b50505050505050565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061098e5761098e6136fa565b602002602001018181525050610a117f74625544000000000000000000000000537061776e656400000000000000000060001b826000856040516020016109dc91151560f81b815260010190565b60408051601f198184030181529190527e01010001000000000000000000000000000000000000000000000000000000611395565b505050565b6040805160028082526060820183526000926020830190803683370190505090508361ffff1660001b81600081518110610a5257610a526136fa565b6020026020010181815250508261ffff1660001b81600181518110610a7957610a796136fa565b602002602001018181525050610ad67f74625544000000000000000000000000456e7469746965734174506f7369746960001b82600085604051602001610ac291815260200190565b60405160208183030381529060405261140b565b50505050565b60408051600080825260208201909252819060008080610b3c7f746255440000000000000000000000004d6170436f6e66696700000000000000857e04020002020000000000000000000000000000000000000000000000000000610fca565b925092509250610b4d83838361109a565b95509550505050509091565b6000808361ffff168661ffff1611610b7a57610b758685613726565b610b84565b610b848487613726565b905060008361ffff168661ffff1611610ba657610ba18685613726565b610bb0565b610bb08487613726565b9050610bbc8183613748565b979650505050505050565b6000610bd38585610236565b90506000805b8251811015610c5f5787838281518110610bf557610bf56136fa565b602002602001015103610c4d576001915060008360018551610c179190613763565b81518110610c2757610c276136fa565b60200260200101519050610c3d888884846114bd565b610c478888611588565b50610c5f565b80610c5781613776565b915050610bd9565b5080610cad5760405162461bcd60e51b815260206004820152601f60248201527f456e7469747920776173206e6f74206174207468617420706f736974696f6e0060448201526064016102df565b610cb8878585610890565b61094f848489610a16565b6000610cda6000808561ffff168561ffff16611628565b61ffff16905080600003610ced57505050565b6000610cf882611646565b90506000815111610d715760405162461bcd60e51b815260206004820152602760248201527f4e6f206d6f6e737465727320617661696c61626c6520666f722074686973206460448201527f697374616e63650000000000000000000000000000000000000000000000000060648201526084016102df565b606046617a6903610e0b5773__$227e4555c1f608352b26068e438454dd8b$__63bc3a86cf610da1600842613874565b6040518263ffffffff1660e01b8152600401610dbf91815260200190565b600060405180830381865af4158015610ddc573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610e0491908101906138b4565b9050610e9e565b6040517fbc3a86cf00000000000000000000000000000000000000000000000000000000815244600482015273__$227e4555c1f608352b26068e438454dd8b$__9063bc3a86cf90602401600060405180830381865af4158015610e73573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610e9b91908101906138b4565b90505b60005b60068260018451610eb29190613763565b81518110610ec257610ec26136fa565b6020026020010151610ed49190613986565b63ffffffff16811015610fb857610faf838451848481518110610ef957610ef96136fa565b602002602001015163ffffffff16610f1191906139a9565b81518110610f2157610f216136fa565b60200260200101518787604051602401610f529392919092835261ffff918216602084015216604082015260600190565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f15bc4248000000000000000000000000000000000000000000000000000000001790526116cd565b50600101610ea1565b505050505050565b60006101ee61177b565b6060600060606000610fda61177b565b9050306001600160a01b0382160361100357610ff78787876117ba565b93509350935050611091565b6040517f419b58fd0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063419b58fd9061104c908a908a908a906004016139bd565b600060405180830381865afa158015611069573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ff79190810190613a6e565b93509350939050565b60208301516022840151600091829160f091821c911c5b90969095509350505050565b606060006110c961177b565b9050306001600160a01b038216036110ee576110e68585856118c2565b915050610242565b6040517f1e7889770000000000000000000000000000000000000000000000000000000081526001600160a01b03821690631e7889779061113790889088908890600401613adb565b600060405180830381865afa158015611154573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526110e69190810190613b07565b509392505050565b6000818311806111945750835182115b156111d1578383836040517f23230fa30000000000000000000000000000000000000000000000000000000081526004016102df93929190613b68565b602084016111df8482613b8d565b905060006111ed8585613763565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b6060600061024283602060006118fc565b60008061122e61177b565b9050306001600160a01b038216036112545761124c86868686611977565b915050610888565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d599061129f908990899089908990600401613ba0565b602060405180830381865afa1580156112bc573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061124c9190613bcf565b60006112ea61177b565b9050306001600160a01b0382160361130e5761130986868686866119a4565b610fb8565b6040517f298314fb0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063298314fb9061135b9089908990899089908990600401613be8565b600060405180830381600087803b15801561137557600080fd5b505af1158015611389573d6000803e3d6000fd5b50505050505050505050565b600061139f61177b565b9050306001600160a01b038216036113be5761130986868686866119ba565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae09061135b9089908990899089908990600401613c2d565b600061141561177b565b9050306001600160a01b0382160361143857611433858585856119cf565b6114b6565b6040517f150f32620000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063150f326290611483908890889088908890600401613c74565b600060405180830381600087803b15801561149d57600080fd5b505af11580156114b1573d6000803e3d6000fd5b505050505b5050505050565b6040805160028082526060820183526000926020830190803683370190505090508461ffff1660001b816000815181106114f9576114f96136fa565b6020026020010181815250508361ffff1660001b81600181518110611520576115206136fa565b60200260200101818152505060008260405160200161154191815260200190565b6040516020818303038152906040529050610fb87f74625544000000000000000000000000456e7469746965734174506f7369746960001b83600087602002855186611a0a565b6040805160028082526060820183526000926020830190803683370190505090508261ffff1660001b816000815181106115c4576115c46136fa565b6020026020010181815250508161ffff1660001b816001815181106115eb576115eb6136fa565b602002602001018181525050610a117f74625544000000000000000000000000456e7469746965734174506f7369746960001b8260006020611ac3565b60006107456116378685611b36565b6116418685611b36565b611b58565b60408051600180825281830190925260609160009190602080830190803683370190505090508260001b81600081518110611683576116836136fa565b602090810291909101015260006116bb7f746255440000000000000000000000004d6f627342794c6576656c000000000083836110bd565b90506108886107408260008451611184565b60606000806116e36116de85613ca8565b611b6f565b91509150816000801b03611749576040517ffdde54e20000000000000000000000000000000000000000000000000000000081527fffffffff000000000000000000000000000000000000000000000000000000006000351660048201526024016102df565b6020840180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16821790526108888285611c32565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b0316806117b5573391505090565b919050565b60606000606060006117cb85611d0d565b90506117d8878783611d30565b935060006117e586611d69565b905080156118b7576117f78888611da6565b935066ffffffffffffff841667ffffffffffffffff81111561181b5761181b6136e4565b6040519080825280601f01601f191660200182016040528015611845576020820181803683370190505b5092506020830160005b828160ff1610156118b45760006118678b8b84611db9565b90506000611884888460ff166028026038011c64ffffffffff1690565b90506118938260008387611e39565b61189d8185613b8d565b9350505080806118ac90613cf8565b91505061184f565b50505b505093509350939050565b60606108886118d2858585611db9565b60006118f7856118e28989611da6565b9060ff166028026038011c64ffffffffff1690565b611f05565b6060600061190a8560801c90565b90506fffffffffffffffffffffffffffffffff8516600085828161193057611930613970565b04905060405193506020840160208202810160405281855260005b8281101561196b578451871c82529387019360209091019060010161194b565b50505050509392505050565b60006107456119868686611f28565b60ff858116601b0360080285901c1661199f8587611f7e565b611faf565b6114b685858585856119b58b612000565b612085565b6114b685856119c98487611f7e565b856123be565b60006119db8585611da6565b905060006119f8828560ff166028026038011c64ffffffffff1690565b9050610fb88686868460008888612659565b6000611a1461177b565b9050306001600160a01b03821603611a3957611a34878787878787612a93565b61094f565b6040517fc0a2895a0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063c0a2895a90611a88908a908a908a908a908a908a90600401613d17565b600060405180830381600087803b158015611aa257600080fd5b505af1158015611ab6573d6000803e3d6000fd5b5050505050505050505050565b6000611acd61177b565b9050306001600160a01b03821603611aeb5761143385858585612aab565b6040517fd9c03a040000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063d9c03a0490611483908890889088908890600401613ba0565b6000818311611b4e57611b498383613763565b610242565b6102428284613763565b600081831015611b685781610242565b5090919050565b6040805160018082528183019092526000918291829160208083019080368337019050509050837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681600081518110611bc857611bc86136fa565b602090810291909101015260008080611c217f7462776f726c6400000000000000000046756e6374696f6e53656c6563746f72857e24020020040000000000000000000000000000000000000000000000000000610fca565b925092509250610682838383612b04565b60606000611c3e610fc0565b90506001600160a01b0381163003611c7f576000611c66611c5d6105ac565b60008787612b10565b9350905080611c7857611c7883612c4b565b50506101de565b6040517f3ae7af080000000000000000000000000000000000000000000000000000000081526001600160a01b03821690633ae7af0890611cc69087908790600401613d6d565b6000604051808303816000875af1158015611ce5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526108889190810190613b07565b60006008611d1d60026020613763565b611d279190613d86565b9190911c919050565b606081600003611d4f5750604080516020810190915260008152610242565b6000611d5b8585611f28565b905061074581600085611f05565b60006008600180611d7c60026020613763565b611d869190613763565b611d909190613763565b611d9a9190613d86565b8260ff911c1692915050565b6000610242611db58484612c53565b5490565b60008383604051602001611dce929190613d9d565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b8215611ec05760208310611e6357602083048401935060208381611e5f57611e5f613970565b0692505b8215611ec0576020839003600081841015611e865750600019600884021c611e90565b50600019600882021c5b8554600886021b818451168219821617845250818411611eb1575050610ad6565b50600194909401939182900391015b5b60208210611ee25783548152600190930192601f1990910190602001611ec1565b8115610ad6576000600019600884021c8251865482191691161782525050505050565b60405160208101601f19603f848401011660405282825261117c85858584611e39565b60008282604051602001611f3d929190613d9d565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff1681101561117c57611fa560ff601b83900360080287901c1683613b8d565b9150600101611f83565b600060208210611fd557602082048401935060208281611fd157611fd1613970565b0691505b508254600882021b60208290038084111561117c576001850154600882021c82179150509392505050565b60007f8b9d8c8b908d9affffffffffffffffffab9e9d939a8d00000000000000000000820161204f57507e60030220202000000000000000000000000000000000000000000000000000919050565b6101de61207c7f746273746f72650000000000000000005461626c65730000000000000000000084612ca9565b60206000611faf565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff000000000000000000000000000000000000000000000000000000000000160361211157857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9868686866040516121049493929190613dd9565b60405180910390a2610fb8565b600061211c87612cc5565b905060005b81518110156121f557600082828151811061213e5761213e6136fa565b6020026020010151905061216a6001826affffffffffffffffffffff1916612d4e90919063ffffffff16565b156121ec576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c906121b9908c908c908c908c908c908c90600401613e18565b600060405180830381600087803b1580156121d357600080fd5b505af11580156121e7573d6000803e3d6000fd5b505050505b50600101612121565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a98787878760405161222c9493929190613dd9565b60405180910390a260006122408888611f28565b90506000602087019050612258826000895184612d6c565b600061226385611d69565b11156122e75760006122758a8a612c53565b878155905060208601915060008060005b61228f88611d69565b8160ff1610156122e2576122a48d8d83611db9565b92506122bf8a8260ff166028026038011c64ffffffffff1690565b91506122ce8360008488612d6c565b6122d88286613b8d565b9450600101612286565b505050505b60005b8351811015611389576000848281518110612307576123076136fa565b602002602001015190506123336002826affffffffffffffffffffff1916612d4e90919063ffffffff16565b156123b5576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90612382908e908e908e908e908e908e90600401613e18565b600060405180830381600087803b15801561239c57600080fd5b505af11580156123b0573d6000803e3d6000fd5b505050505b506001016122ea565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff000000000000000000000000000000000000000000000000000000000000160361244857837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be84848460405161243b93929190613e71565b60405180910390a2610ad6565b60006124548585611f28565b9050600061246186612cc5565b905060005b8151811015612536576000828281518110612483576124836136fa565b602002602001015190506124af6004826affffffffffffffffffffff1916612d4e90919063ffffffff16565b1561252d576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d906124fa908b908b908b908b90600401613eae565b600060405180830381600087803b15801561251457600080fd5b505af1158015612528573d6000803e3d6000fd5b505050505b50600101612466565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be86868660405161256b93929190613e71565b60405180910390a2612586828565ffffffffffff1685612e2b565b60005b815181101561094f5760008282815181106125a6576125a66136fa565b602002602001015190506125d26008826affffffffffffffffffffff1916612d4e90919063ffffffff16565b15612650576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba87219061261d908b908b908b908b90600401613eae565b600060405180830381600087803b15801561263757600080fd5b505af115801561264b573d6000803e3d6000fd5b505050505b50600101612589565b7f7462000000000000000000000000000000000000000000000000000000000000877fffff0000000000000000000000000000000000000000000000000000000000001614612719577f746200000000000000000000000000000000000000000000000000000000000087886040516020016126d791815260200190565b60408051601f19818403018152908290527f31b466830000000000000000000000000000000000000000000000000000000082526102df939291600401613ee7565b6000612734828760ff166028026038011c64ffffffffff1690565b9050600083518564ffffffffff168361274d9190613763565b6127579190613b8d565b905080821415801561277957508161276f8688613f28565b64ffffffffff1614155b156127c9576040517fa65010b400000000000000000000000000000000000000000000000000000000815264ffffffffff80881660048301528087166024830152831660448201526064016102df565b818664ffffffffff16111561281a576040517f7e8578d30000000000000000000000000000000000000000000000000000000081526004810183905264ffffffffff871660248201526044016102df565b6000612827848984612e41565b905060006128348b612cc5565b905060005b81518110156128ff576000828281518110612856576128566136fa565b602002602001015190506128826010826affffffffffffffffffffff1916612d4e90919063ffffffff16565b156128f657606081901c6001600160a01b03166355eb5a288e8e8e8e8e8d8f6040518863ffffffff1660e01b81526004016128c39796959493929190613f46565b600060405180830381600087803b1580156128dd57600080fd5b505af11580156128f1573d6000803e3d6000fd5b505050505b50600101612839565b5064ffffffffff881660005b8a60ff168160ff16101561293e57612932878260ff166028026038011c64ffffffffff1690565b9091019060010161290b565b508b7ffe158a7adba34e256807c8a149028d3162918713c3838afc643ce9f96716ebfd8c8c848c888d60405161297996959493929190613fa4565b60405180910390a25082841461299a5760006129958c8c612c53565b839055505b60006129a78c8c8c611db9565b90506129bb818a64ffffffffff1689612e2b565b5060005b8151811015612a855760008282815181106129dc576129dc6136fa565b60200260200101519050612a086020826affffffffffffffffffffff1916612d4e90919063ffffffff16565b15612a7c57606081901c6001600160a01b031663635845338e8e8e8e8e8a8f6040518863ffffffff1660e01b8152600401612a499796959493929190613f46565b600060405180830381600087803b158015612a6357600080fd5b505af1158015612a77573d6000803e3d6000fd5b505050505b506001016129bf565b505050505050505050505050565b610fb8868686868686612aa68d8d611da6565b612659565b6000612ab78585611da6565b90506000612ad4828560ff166028026038011c64ffffffffff1690565b9050610fb8868686612aed8764ffffffffff8716613763565b604080516000815260208101909152889088612659565b6000806110b185612f0f565b60006060600080612b2086612f24565b90925090506001600160a01b038216612b715785612b3d87612fc8565b6040517ffbf10ce60000000000000000000000000000000000000000000000000000000081526004016102df929190613d6d565b80612b8057612b808689613105565b8615612bec577dffffffffffffffffffffffffffff0000000000000000000000000000000086167f6e73000000000000000000000000000000000000000000000000000000000000176000612bd482613151565b9050612be982612be48b84613b8d565b6131e2565b50505b6000612bf88760101b90565b7fffffffffffffffffffffffffffff0000000000000000000000000000000000001614612c3057612c2b88888488613296565b612c3c565b612c3c8888848861330e565b90999098509650505050505050565b805160208201fd5b60008282604051602001612c68929190613d9d565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b6040805160208101849052908101829052600090606001611f3d565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110612cff57612cff6136fa565b60209081029190910101526000612d377f746273746f726500000000000000000053746f7265486f6f6b7300000000000083836118c2565b9050610888612d498260008451611184565b61336f565b60008160ff1682612d5f8560581c90565b1660ff1614905092915050565b8215612de65760208310612d9657602083048401935060208381612d9257612d92613970565b0692505b8215612de65760208390036000600019600885021c1990506008850281811c91508351811c9050811987541682821617875550818411612dd7575050610ad6565b50600194909401939182900391015b5b60208210612e085780518455600190930192601f1990910190602001612de7565b8115610ad6576000600019600884021c8554835182191691161785555050505050565b610a1183838351612e3c8560200190565b612d6c565b600064ffffffffff821115612e85576040517f7149a3c1000000000000000000000000000000000000000000000000000000008152600481018390526024016102df565b8366ffffffffffffff811660ff851660280260380182901c64ffffffffff16808510612eb75780850382019150612ebf565b848103820391505b5064ffffffffff6038602860ff8816020181811b197fffffffffffffffffffffffffffffffffffffffffffffffffff000000000000009490941690921792909216918416901b1790509392505050565b602081015160408201516000905b9050915091565b60408051600180825281830190925260009182918291602080830190803683370190505090508381600081518110612f5e57612f5e6136fa565b602090810291909101015260008080612fb77f7462776f726c6400000000000000000053797374656d73000000000000000000857e150200140100000000000000000000000000000000000000000000000000006117ba565b925092509250610682838383613380565b606081601081901b6000612fdb8361338c565b9050827fffffffffffffffffffffffffffff000000000000000000000000000000000000831615613036576130317fffffffffffffffffffffffffffff00000000000000000000000000000000000084166133a3565b61306d565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b7fffffffffffffffffffffffffffffffff000000000000000000000000000000008316156130a35761309e836133a3565b6130da565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b6040516020016130ec93929190613ff3565b6040516020818303038152906040529350505050919050565b61310f8282613447565b6103615761311c82612fc8565b816040517fd787b7370000000000000000000000000000000000000000000000000000000081526004016102df929190614081565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061318a5761318a6136fa565b602090810291909101015260006108887f7462776f726c6400000000000000000042616c616e636573000000000000000083837e20010020000000000000000000000000000000000000000000000000000000611977565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110613218576132186136fa565b602002602001018181525050610a117f7462776f726c6400000000000000000042616c616e636573000000000000000060001b8260008560405160200161326191815260200190565b60408051601f198184030181529190527e200100200000000000000000000000000000000000000000000000000000006119ba565b60006060836001600160a01b031660006132b18589896134a5565b6040516132be91906140ac565b60006040518083038185875af1925050503d80600081146132fb576040519150601f19603f3d011682016040523d82523d6000602084013e613300565b606091505b509097909650945050505050565b60006060836001600160a01b03166133278488886134a5565b60405161333491906140ac565b600060405180830381855af49150503d80600081146132fb576040519150601f19603f3d011682016040523d82523d6000602084013e613300565b6060600061024283601560006118fc565b6000806110b1856134d4565b600061339a60706010613b8d565b9190911b919050565b606060005b6010811015613408577fffffffffffffffffffffffffffffffff000000000000000000000000000000008316600882021b7fff000000000000000000000000000000000000000000000000000000000000001615613408576001016133a8565b604080517fffffffffffffffffffffffffffffffff00000000000000000000000000000000851660208201528151603090910190915281815280610888565b60006134957f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617836134f0565b80610242575061024283836134f0565b60608383836040516020016134bc939291906140c8565b60405160208183030381529060405290509392505050565b6020810151603482015160609190911c9060009060f81c612f1d565b604080516002808252606082018352600092839291906020830190803683370190505090508381600081518110613529576135296136fa565b602002602001018181525050826001600160a01b031660001b81600181518110613555576135556136fa565b602090810291909101015260006135ad7f7462776f726c640000000000000000005265736f75726365416363657373000083837e01010001000000000000000000000000000000000000000000000000000000611977565b90506107458160f81c90565b6000602082840312156135cb57600080fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461024257600080fd5b803561ffff811681146117b557600080fd5b60008060006060848603121561362257600080fd5b83359250613632602085016135fb565b9150613640604085016135fb565b90509250925092565b6000806040838503121561365c57600080fd5b613665836135fb565b9150613673602084016135fb565b90509250929050565b60008151808452602080850194506020840160005b838110156136ad57815187529582019590820190600101613691565b509495945050505050565b602081526000610242602083018461367c565b6000602082840312156136dd57600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b61ffff82811682821603908082111561374157613741613710565b5092915050565b61ffff81811683821601908082111561374157613741613710565b818103818111156101de576101de613710565b6000600019820361378957613789613710565b5060010190565b600181815b808511156137cb5781600019048211156137b1576137b1613710565b808516156137be57918102915b93841c9390800290613795565b509250929050565b6000826137e2575060016101de565b816137ef575060006101de565b8160018114613805576002811461380f5761382b565b60019150506101de565b60ff84111561382057613820613710565b50506001821b6101de565b5060208310610133831016604e8410600b841016171561384e575081810a6101de565b6138588383613790565b806000190482111561386c5761386c613710565b029392505050565b600061024260ff8416836137d3565b604051601f8201601f1916810167ffffffffffffffff811182821017156138ac576138ac6136e4565b604052919050565b600060208083850312156138c757600080fd5b825167ffffffffffffffff808211156138df57600080fd5b818501915085601f8301126138f357600080fd5b815181811115613905576139056136e4565b8060051b9150613916848301613883565b818152918301840191848101908884111561393057600080fd5b938501935b83851015613964578451925063ffffffff831683146139545760008081fd5b8282529385019390850190613935565b98975050505050505050565b634e487b7160e01b600052601260045260246000fd5b600063ffffffff8084168061399d5761399d613970565b92169190910692915050565b6000826139b8576139b8613970565b500690565b8381526060602082015260006139d6606083018561367c565b9050826040830152949350505050565b60005b83811015613a015781810151838201526020016139e9565b50506000910152565b600082601f830112613a1b57600080fd5b815167ffffffffffffffff811115613a3557613a356136e4565b613a486020601f19601f84011601613883565b818152846020838601011115613a5d57600080fd5b6108888260208301602087016139e6565b600080600060608486031215613a8357600080fd5b835167ffffffffffffffff80821115613a9b57600080fd5b613aa787838801613a0a565b9450602086015193506040860151915080821115613ac457600080fd5b50613ad186828701613a0a565b9150509250925092565b838152606060208201526000613af4606083018561367c565b905060ff83166040830152949350505050565b600060208284031215613b1957600080fd5b815167ffffffffffffffff811115613b3057600080fd5b61088884828501613a0a565b60008151808452613b548160208601602086016139e6565b601f01601f19169290920160200192915050565b606081526000613b7b6060830186613b3c565b60208301949094525060400152919050565b808201808211156101de576101de613710565b848152608060208201526000613bb9608083018661367c565b60ff949094166040830152506060015292915050565b600060208284031215613be157600080fd5b5051919050565b85815260a060208201526000613c0160a083018761367c565b8281036040840152613c138187613b3c565b905084606084015282810360808401526139648185613b3c565b85815260a060208201526000613c4660a083018761367c565b60ff861660408401528281036060840152613c618186613b3c565b9150508260808301529695505050505050565b848152608060208201526000613c8d608083018661367c565b60ff851660408401528281036060840152610bbc8185613b3c565b6000815160208301517fffffffff0000000000000000000000000000000000000000000000000000000080821693506004831015613cf05780818460040360031b1b83161693505b505050919050565b600060ff821660ff8103613d0e57613d0e613710565b60010192915050565b86815260c060208201526000613d3060c083018861367c565b60ff8716604084015264ffffffffff86811660608501528516608084015282810360a0840152613d608185613b3c565b9998505050505050505050565b8281526040602082015260006108886040830184613b3c565b80820281158282048414176101de576101de613710565b8281526000602080830184516020860160005b82811015613dcc57815184529284019290840190600101613db0565b5091979650505050505050565b608081526000613dec608083018761367c565b8281036020840152613dfe8187613b3c565b90508460408401528281036060840152610bbc8185613b3c565b86815260c060208201526000613e3160c083018861367c565b8281036040840152613e438188613b3c565b90508560608401528281036080840152613e5d8186613b3c565b9150508260a0830152979650505050505050565b606081526000613e84606083018661367c565b65ffffffffffff851660208401528281036040840152613ea48185613b3c565b9695505050505050565b848152608060208201526000613ec7608083018661367c565b65ffffffffffff851660408401528281036060840152610bbc8185613b3c565b7fffff000000000000000000000000000000000000000000000000000000000000841681528260208201526060604082015260006107456060830184613b3c565b64ffffffffff81811683821601908082111561374157613741613710565b87815260e060208201526000613f5f60e083018961367c565b60ff8816604084015264ffffffffff87811660608501528616608084015260a0830185905282810360c0840152613f968185613b3c565b9a9950505050505050505050565b60c081526000613fb760c083018961367c565b60ff8816602084015265ffffffffffff8716604084015264ffffffffff8616606084015284608084015282810360a0840152613d608185613b3c565b7fffff0000000000000000000000000000000000000000000000000000000000008416815260007f3a0000000000000000000000000000000000000000000000000000000000000080600284015284516140548160038601602089016139e6565b8084019050816003820152845191506140748260048301602088016139e6565b0160040195945050505050565b6040815260006140946040830185613b3c565b90506001600160a01b03831660208301529392505050565b600082516140be8184602087016139e6565b9190910192915050565b600084516140da8184602089016139e6565b60609490941b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000169190930190815260148101919091526034019291505056fea2646970667358221220c47d61b49bc23938b62fc8aa7c841674bfa06b7af56051568dd65a107a781da864736f6c63430008180033","sourceMap":"412:4148:216:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2331:198:123;;;;;;:::i;:::-;;:::i;:::-;;;516:14:229;;509:22;491:41;;479:2;464:18;2331:198:123;;;;;;;;1262:113;;;:::i;:::-;;;-1:-1:-1;;;;;707:55:229;;;689:74;;677:2;662:18;1262:113:123;543:226:229;1755:239:216;;;;;;:::i;:::-;;:::i;1616:110:123:-;;;-1:-1:-1;;3800:14:123;3796:25;3783:39;1413:25:229;;1401:2;1386:18;1616:110:123;1267:177:229;1580:169:216;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;1174:400::-;;;;;;:::i;:::-;;:::i;:::-;;481:687;;;;;;:::i;:::-;;:::i;1942:98:123:-;;;:::i;2331:198::-;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;1755:239:216:-;1836:18;1867:8;1877;1889:22;1902:8;1889:12;:22::i;:::-;1866:45;;;;1930:1;1925:6;;:1;:6;;;:16;;;;;1940:1;1935:6;;:1;:6;;;1925:16;1921:67;;;1973:4;1957:20;;1921:67;1856:138;;1755:239;;;;;:::o;1580:169::-;1652:35;1706:36;1737:1;1740;1706:30;:36::i;:::-;1699:43;1580:169;-1:-1:-1;;;1580:169:216:o;1174:400::-;1224:13;1240:29;1260:8;1240:19;:29::i;:::-;1224:45;;1303:5;-1:-1:-1;;;;;1287:21:216;:12;:10;:12::i;:::-;-1:-1:-1;;;;;1287:21:216;;1279:70;;;;-1:-1:-1;;;1279:70:216;;2807:2:229;1279:70:216;;;2789:21:229;2846:2;2826:18;;;2819:30;2885:34;2865:18;;;2858:62;2956:6;2936:18;;;2929:34;2980:19;;1279:70:216;;;;;;;;;1369:28;1388:8;1369:18;:28::i;:::-;1368:29;1360:67;;;;-1:-1:-1;;;1360:67:216;;3212:2:229;1360:67:216;;;3194:21:229;3251:2;3231:18;;;3224:30;3290:27;3270:18;;;3263:55;3335:18;;1360:67:216;3010:349:229;1360:67:216;1438:28;1451:8;1461:1;1464;1438:12;:28::i;:::-;1476:34;1495:8;1505:4;1476:18;:34::i;:::-;1520:47;1552:1;1555;1558:8;1520:31;:47::i;:::-;1214:360;1174:400;:::o;481:687::-;550:13;566:29;586:8;566:19;:29::i;:::-;550:45;;629:5;-1:-1:-1;;;;;613:21:216;:12;:10;:12::i;:::-;-1:-1:-1;;;;;613:21:216;;605:69;;;;-1:-1:-1;;;605:69:216;;3566:2:229;605:69:216;;;3548:21:229;3605:2;3585:18;;;3578:30;3644:34;3624:18;;;3617:62;3715:5;3695:18;;;3688:33;3738:19;;605:69:216;3364:399:229;605:69:216;693:28;712:8;693:18;:28::i;:::-;685:62;;;;-1:-1:-1;;;685:62:216;;3970:2:229;685:62:216;;;3952:21:229;4009:2;3989:18;;;3982:30;4048:23;4028:18;;;4021:51;4089:18;;685:62:216;3768:345:229;685:62:216;759:15;776;795:22;808:8;795:12;:22::i;:::-;758:59;;;;828:13;843:12;859:15;:13;:15::i;:::-;827:47;;;;897:5;893:9;;:1;:9;;;885:37;;;;-1:-1:-1;;;885:37:216;;4320:2:229;885:37:216;;;4302:21:229;4359:2;4339:18;;;4332:30;4398:17;4378:18;;;4371:45;4433:18;;885:37:216;4118:339:229;885:37:216;944:6;940:10;;:1;:10;;;932:38;;;;-1:-1:-1;;;932:38:216;;4664:2:229;932:38:216;;;4646:21:229;4703:2;4683:18;;;4676:30;4742:17;4722:18;;;4715:45;4777:18;;932:38:216;4462:339:229;932:38:216;988:43;1006:8;1016;1026:1;1029;988:17;:43::i;:::-;:48;;1035:1;988:48;980:91;;;;-1:-1:-1;;;980:91:216;;5008:2:229;980:91:216;;;4990:21:229;5047:2;5027:18;;;5020:30;5086:32;5066:18;;;5059:60;5136:18;;980:91:216;4806:354:229;980:91:216;1081:47;1093:8;1103;1113;1123:1;1126;1081:11;:47::i;:::-;1138:23;1156:1;1159;1138:17;:23::i;:::-;540:628;;;;;481:687;;;:::o;1942:98:123:-;1981:7;2003:32;:30;:32::i;2992:383::-;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;4891:393:190:-;4998:16;;;5012:1;4998:16;;;;;;;;;4943:8;;;;;;4998:16;;;;;;;;;;;-1:-1:-1;4998:16:190;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;2642:387:181:-;2768:16;;;2782:1;2768:16;;;2706:25;2768:16;;;;;2706:25;2739:26;;2768:16;2782:1;2768:16;;;;;;;;;;-1:-1:-1;2768:16:181;2739:45;;2821:1;2813:10;;2805:19;;2790:9;2800:1;2790:12;;;;;;;;:::i;:::-;;;;;;:34;;;;;2861:1;2853:10;;2845:19;;2830:9;2840:1;2830:12;;;;;;;;:::i;:::-;;;;;;;;;;:34;2871:18;2892:51;1083:66;2930:9;2871:18;2892:27;:51::i;:::-;2871:72;;2957:66;:44;2978:5;2985:1;2988:5;:12;2957:20;:44::i;:::-;:64;:66::i;:::-;2949:75;2642:387;-1:-1:-1;;;;;2642:387:181:o;4071:290:178:-;4183:16;;;4197:1;4183:16;;;;;;;;;4133:13;;;;4183:16;;;;;;;;;;;;-1:-1:-1;4183:16:178;4154:45;;4220:11;4205:9;4215:1;4205:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;4238:13;4254:64;1163:66;4291:9;4302:1;1292:66;4254:26;:64::i;:::-;4332:23;;;4071:290;-1:-1:-1;;;;4071:290:178:o;2592:291:192:-;2702:16;;;2716:1;2702:16;;;;;;;;;2653:12;;;;2702:16;;;;;;;;;;;;-1:-1:-1;2702:16:192;2673:45;;2739:8;2724:9;2734:1;2724:12;;;;;;;;:::i;:::-;;;;;;;;;;:23;2754:13;2770:64;1063:66;2807:9;2754:13;1192:66;2770:26;:64::i;:::-;2754:80;;2848:29;2869:5;2856:20;;7000:5;6914:97;2848:29;2840:38;2592:291;-1:-1:-1;;;;2592:291:192:o;5796:354:190:-;7947:22;;;16149:3:229;16145:16;;;16054:66;16141:25;;;7947:22:190;;;;16129:38:229;;;;16200:16;;;;16196:25;16183:11;;;16176:46;7947:22:190;;;;;;;;;6023:1;16238:11:229;;;6009:16:190;;;;;;;;;7947:22;;-1:-1:-1;;5948:25:190;;-1:-1:-1;;6023:1:190;6009:16;;;7947:22;6009:16;;;;;-1:-1:-1;6009:16:190;5980:45;;6046:6;6031:9;6041:1;6031:12;;;;;;;;:::i;:::-;;;;;;;;;;:21;6059:86;1065:66;6091:9;6102:11;6115:15;6132:12;6059:21;:86::i;:::-;5854:296;;;;5796:354;;;:::o;3908:246:192:-;4004:16;;;4018:1;4004:16;;;;;;;;;3975:26;;4004:16;;;;;;;;;;;-1:-1:-1;4004:16:192;3975:45;;4041:8;4026:9;4036:1;4026:12;;;;;;;;:::i;:::-;;;;;;:23;;;;;4056:93;1063:66;1047:83;;4093:9;4104:1;4125:7;4107:27;;;;;;5694:14:229;5687:22;5682:3;5678:32;5666:45;;5736:1;5727:11;;5543:201;4107:27:192;;;;-1:-1:-1;;4107:27:192;;;;;;;;;1192:66;4056:26;:93::i;:::-;3969:185;3908:246;;:::o;9497:296:181:-;9601:16;;;9615:1;9601:16;;;;;;;;9572:26;;9601:16;;;;;;;;;;-1:-1:-1;9601:16:181;9572:45;;9654:1;9646:10;;9638:19;;9623:9;9633:1;9623:12;;;;;;;;:::i;:::-;;;;;;:34;;;;;9694:1;9686:10;;9678:19;;9663:9;9673:1;9663:12;;;;;;;;:::i;:::-;;;;;;:34;;;;;9704:84;1083:66;1067:83;;9745:9;9756:1;9777:8;9759:28;;;;;;5878:19:229;;5922:2;5913:12;;5749:182;9759:28:181;;;;;;;;;;;;;9704:30;:84::i;:::-;9566:227;9497:296;;;:::o;4657:361:184:-;4759:16;;;4695:13;4759:16;;;;;;;;;4695:13;;4783:24;;;4870:80;1067:66;4730:45;1196:66;4870:21;:80::i;:::-;4782:168;;;;;;4963:50;4970:11;4983:15;5000:12;4963:6;:50::i;:::-;4956:57;;;;;;;;4657:361;;:::o;2939:279:216:-;3041:6;3059:13;3083:3;3075:11;;:5;:11;;;:39;;3103:11;3109:5;3103:3;:11;:::i;:::-;3075:39;;;3089:11;3097:3;3089:5;:11;:::i;:::-;3059:55;;3124:13;3148:3;3140:11;;:5;:11;;;:39;;3168:11;3174:5;3168:3;:11;:::i;:::-;3140:39;;;3154:11;3162:3;3154:5;:11;:::i;:::-;3124:55;-1:-1:-1;3196:15:216;3124:55;3196:6;:15;:::i;:::-;3189:22;2939:279;-1:-1:-1;;;;;;;2939:279:216:o;3721:837::-;3833:25;3861:41;3883:8;3893;3861:21;:41::i;:::-;3833:69;;3912:24;3951:9;3946:438;3966:8;:15;3962:1;:19;3946:438;;;4017:8;4002;4011:1;4002:11;;;;;;;;:::i;:::-;;;;;;;:23;3998:327;;4067:4;4045:26;;4089:15;4107:8;4134:1;4116:8;:15;:19;;;;:::i;:::-;4107:29;;;;;;;;:::i;:::-;;;;;;;4089:47;;4154:65;4188:8;4198;4208:1;4211:7;4154:33;:65::i;:::-;4237:50;4268:8;4278;4237:30;:50::i;:::-;4305:5;;;3998:327;4356:3;;;;:::i;:::-;;;;3946:438;;;;4401:19;4393:63;;;;-1:-1:-1;;;4393:63:216;;7009:2:229;4393:63:216;;;6991:21:229;7048:2;7028:18;;;7021:30;7087:33;7067:18;;;7060:61;7138:18;;4393:63:216;6807:355:229;4393:63:216;4466:28;4479:8;4489:1;4492;4466:12;:28::i;:::-;4504:47;4536:1;4539;4542:8;4504:31;:47::i;2000:933::-;2066:24;2101:30;2120:1;2123;2126;2101:30;;2129:1;2101:30;;:18;:30::i;:::-;2093:39;;2066:66;;2146:16;2166:1;2146:21;2142:58;;2183:7;2000:933;;:::o;2142:58::-;2210:34;2247:39;2269:16;2247:21;:39::i;:::-;2210:76;;2331:1;2304:17;:24;:28;2296:80;;;;-1:-1:-1;;;2296:80:216;;7369:2:229;2296:80:216;;;7351:21:229;7408:2;7388:18;;;7381:30;7447:34;7427:18;;;7420:62;7518:9;7498:18;;;7491:37;7545:19;;2296:80:216;7167:403:229;2296:80:216;2387:19;2471:13;2488:5;2471:22;2467:176;;2515:9;:20;2536;2555:1;2536:15;:20;:::i;:::-;2515:42;;;;;;;;;;;;;1413:25:229;;1401:2;1386:18;;1267:177;2515:42:216;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;2515:42:216;;;;;;;;;;;;:::i;:::-;2509:48;;2467:176;;;2594:38;;;;;2615:16;2594:38;;;1413:25:229;2594:9:216;;:20;;1386:18:229;;2594:38:216;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;2594:38:216;;;;;;;;;;;;:::i;:::-;2588:44;;2467:176;2658:9;2653:274;2696:1;2674:3;2691:1;2678:3;:10;:14;;;;:::i;:::-;2674:19;;;;;;;;:::i;:::-;;;;;;;:23;;;;:::i;:::-;2669:29;;:1;:29;2653:274;;;2719:197;2816:17;2851;:24;2842:3;2846:1;2842:6;;;;;;;;:::i;:::-;;;;;;;:33;;;;;;:::i;:::-;2816:61;;;;;;;;:::i;:::-;;;;;;;2879:1;2882;2754:148;;;;;;;;;11408:25:229;;;11452:6;11494:15;;;11489:2;11474:18;;11467:43;11546:15;11541:2;11526:18;;11519:43;11396:2;11381:18;;11210:358;2754:148:216;;;;-1:-1:-1;;2754:148:216;;;;;;;;;;;;;;;;;;;;2719:17;:197::i;:::-;-1:-1:-1;2700:3:216;;2653:274;;;;2056:877;;;2000:933;;:::o;4048:97:123:-;4089:7;4111:29;:27;:29::i;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;7036:160:190:-;3788:4:23;3774:27;;3768:34;3774:27;;;3768:34;7131:8:190;;;;6793:33;;;;;6839;7166:25;7157:34;;;;-1:-1:-1;7036:160:190;-1:-1:-1;;;;7036:160:190: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;18801:224::-;18748:281;18598:431;;;;;:::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;17775:457:46:-;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;6458:480::-;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;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;12345:451::-;12505:21;12529:17;:15;:17::i;:::-;12505:41;-1:-1:-1;12581:4:46;-1:-1:-1;;;;;12556:30:46;;;12552:240;;12596:78;12625:7;12634:8;12644:17;12663:10;12596:28;:78::i;:::-;12552:240;;;12695:90;;;;;-1:-1:-1;;;;;12695:40:46;;;;;:90;;12736:7;;12745:8;;12755:17;;12774:10;;12695:90;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12552:240;12499:297;12345:451;;;;:::o;12135:423:181:-;12257:16;;;12271:1;12257:16;;;;;;;;12228:26;;12257:16;;;;;;;;;;-1:-1:-1;12257:16:181;12228:45;;12310:1;12302:10;;12294:19;;12279:9;12289:1;12279:12;;;;;;;;:::i;:::-;;;;;;:34;;;;;12350:1;12342:10;;12334:19;;12319:9;12329:1;12319:12;;;;;;;;:::i;:::-;;;;;;:34;;;;;12378:21;12420:8;12402:28;;;;;;5878:19:229;;5922:2;5913:12;;5749:182;12402:28:181;;;;;;;;;;;;;12378:52;;12438:109;1083:66;1067:83;;12478:9;12489:1;12499:6;12508:2;12499:11;12520:8;:15;12538:8;12438:29;:109::i;10896:252::-;10981:16;;;10995:1;10981:16;;;;;;;;10952:26;;10981:16;;;;;;;;;;-1:-1:-1;10981:16:181;10952:45;;11034:1;11026:10;;11018:19;;11003:9;11013:1;11003:12;;;;;;;;:::i;:::-;;;;;;:34;;;;;11074:1;11066:10;;11058:19;;11043:9;11053:1;11043:12;;;;;;;;:::i;:::-;;;;;;:34;;;;;11084:59;1083:66;1067:83;;11126:9;11137:1;11140:2;11084:31;:59::i;3301:179:216:-;3400:6;3432:40;3437:16;3446:2;3450;3437:8;:16::i;:::-;3455;3464:2;3468;3455:8;:16::i;:::-;3432:4;:40::i;2600:342:187:-;2717:16;;;2731:1;2717:16;;;;;;;;;2657:23;;2688:26;;2717:16;;;;;;;;;;;;-1:-1:-1;2717:16:187;2688:45;;2770:5;2754:23;;2739:9;2749:1;2739:12;;;;;;;;:::i;:::-;;;;;;;;;;:38;2784:18;2805:51;1071:66;2843:9;2784:18;2805:27;:51::i;:::-;2784:72;;2870:66;:44;2891:5;2898:1;2901:5;:12;2870:20;:44::i;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;;;18938:98:229;18911:18;;3713:52:107;18794:248:229;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;1836:227:46:-;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;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;37180:522::-;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;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;;;3341:28;;3116:690;;;2681:1129;;;;;:::o;36171:541:45:-;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;12066:286::-;12253:94;12263:7;12272:8;12282:10;12294:14;12310:11;12323:23;12338:7;12323:14;:23::i;:::-;12253:9;:94::i;23107:355::-;23279:178;23313:7;23338:8;23368:63;23407:11;23420:10;23368:38;:63::i;:::-;23446:4;23279:16;:178::i;28764:791::-;29023:37;29063:66;29111:7;29120:8;29063:47;:66::i;:::-;29023:106;-1:-1:-1;29135:26:45;29171:49;29023:106;29202:17;7070:16:24;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;29171:49:45;29135:86;;29259:291;29313:7;29338:8;29373:17;29423:19;29464:1;29479:10;29521:22;29259:36;:291::i;8207:601:46:-;8413:21;8437:17;:15;:17::i;:::-;8413:41;-1:-1:-1;8489:4:46;-1:-1:-1;;;;;8464:30:46;;;8460:344;;8504:102;8532:7;8541:8;8551:17;8570:16;8588:11;8601:4;8504:27;:102::i;:::-;8460:344;;;8627:170;;;;;-1:-1:-1;;;;;8627:39:46;;;;;:170;;8676:7;;8693:8;;8711:17;;8738:16;;8764:11;;8785:4;;8627:170;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8407:401;8207:601;;;;;;:::o;13190:464::-;13351:21;13375:17;:15;:17::i;:::-;13351:41;-1:-1:-1;13427:4:46;-1:-1:-1;;;;;13402:30:46;;;13398:252;;13442:84;13472:7;13481:8;13491:17;13510:15;13442:29;:84::i;13398:252::-;13547:96;;;;;-1:-1:-1;;;;;13547:41:46;;;;;:96;;13589:7;;13598:8;;13608:17;;13627:15;;13547:96;;;:::i;3486:117:216:-;3549:7;3579:1;3575;:5;:21;;3591:5;3595:1;3591;:5;:::i;:::-;3575:21;;;3583:5;3587:1;3583;:5;:::i;3609:106::-;3668:7;3699:1;3694;:6;;:14;;3707:1;3694:14;;;-1:-1:-1;3703:1:216;;3609:106;-1:-1:-1;3609:106:216: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;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;5042:669::-;5458:4;5452:11;5499:4;5487:17;;-1:-1:-1;;5373:16:44;5546:26;;;5373:16;5369:32;5518:4;5511:63;5618:6;5610;5603:22;5636:51;5641:14;5657:6;5665;5673:13;5636:4;:51::i;50806:191:45:-;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;;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;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;;17013:1682;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;;44254:4001;44673:14;44652:7;:35;;;44648:161;;44743:14;44759:7;44792;44775:25;;;;;;5878:19:229;;5922:2;5913:12;;5749:182;44775:25:45;;;;-1:-1:-1;;44775:25:45;;;;;;;;;;44704:98;;;;;;;;;;:::i;44648:161::-;44815:27;44845:49;:22;44876:17;7070:16:24;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;44845:49:45;44815:79;;44900:26;44965:4;:11;44951;44929:33;;:19;:33;;;;:::i;:::-;:47;;;;:::i;:::-;44900:76;;45248:18;45225:19;:41;;:98;;;;-1:-1:-1;45304:19:45;45270:30;45289:11;45270:16;:30;:::i;:::-;:53;;;;45225:98;45221:218;;;45340:92;;;;;25497:12:229;25536:15;;;45340:92:45;;;25518:34:229;25588:15;;;25568:18;;;25561:43;25640:15;;25620:18;;;25613:43;25460:18;;45340:92:45;25291:371:229;45221:218:45;45545:19;45526:16;:38;;;45522:140;;;45581:74;;;;;;;;25840:25:229;;;25913:12;25901:25;;25881:18;;;25874:53;25813:18;;45581:74:45;25667:266:229;45522:140:45;45701:36;45740:72;:22;45774:17;45793:18;45740:33;:72::i;:::-;45701:111;;45959:22;45984:24;46000:7;45984:15;:24::i;:::-;45959:49;;46019:9;46014:486;46034:5;:12;46030:1;:16;46014:486;;;46061:9;46083:5;46089:1;46083:8;;;;;;;;:::i;:::-;;;;;;;46061:31;;46104:42;836:6:54;46104:4:45;:14;;;;;:42;;;;:::i;:::-;46100:394;;;3536:35:26;;;;-1:-1:-1;;;;;46158:55:45;;46235:7;46264:8;46303:17;46350:16;46391:11;46430:22;46470:4;46158:327;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;46100:394;-1:-1:-1;46048:3:45;;46014:486;;;-1:-1:-1;46558:32:45;;;:13;46698:107;46716:17;46712:21;;:1;:21;;;46698:107;;;46761:33;:22;46792:1;7070:16:24;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;46761:33:45;46752:42;;;;46735:3;;46698:107;;;;46930:7;46874:277;46957:8;46994:17;47035:5;47064:11;47101:21;47138:4;46874:277;;;;;;;;;;;:::i;:::-;;;;;;;;46506:652;47243:18;47220:19;:41;47216:248;;47271:31;47305:48;47335:7;47344:8;47305:29;:48::i;:::-;695:28:44;;;-1:-1:-1;47216:248:45;47521:27;47551:61;47575:7;47584:8;47594:17;47551:23;:61::i;:::-;47521:91;;47620:92;47652:19;47681:16;47620:92;;47705:4;47620:13;:92::i;:::-;47513:206;47773:9;47768:483;47788:5;:12;47784:1;:16;47768:483;;;47815:9;47837:5;47843:1;47837:8;;;;;;;;:::i;:::-;;;;;;;47815:31;;47858:41;947:6:54;47858:4:45;:14;;;;;:41;;;;:::i;:::-;47854:391;;;3536:35:26;;;;-1:-1:-1;;;;;47911:54:45;;47987:7;48016:8;48055:17;48102:16;48143:11;48182:21;48221:4;47911:325;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;47854:391;-1:-1:-1;47802:3:45;;47768:483;;;;44498:3757;;;;44254:4001;;;;;;;:::o;19594:539::-;19800:328;19854:7;19879:8;19914:17;19957:16;19994:11;20019:4;20055:66;20103:7;20112:8;20055:47;:66::i;:::-;19800:36;:328::i;30235:834::-;30495:37;30535:66;30583:7;30592:8;30535:47;:66::i;:::-;30495:106;-1:-1:-1;30607:26:45;30643:49;30495:106;30674:17;7070:16:24;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;30643:49:45;30607:86;-1:-1:-1;30731:333:45;30785:7;30810:8;30845:17;30895:37;30917:15;30895:37;;;;:::i;:::-;30991:12;;;31001:1;30991:12;;;;;;;;30961:15;;31035:22;30731:36;:333::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;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;51249:282::-;51494:30;;;;;;28153:19:229;;;28188:12;;;28181:28;;;51337:7:45;;28225:12:229;;51494:30:45;27964:279:229;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;7468:1525:24:-;7596:14;1145:16;7622:25;;7618:120;;;7664:67;;;;;;;;1413:25:229;;;1386:18;;7664:67:24;1267:177:229;7618:120:24;7802:14;6445:61;;;7070:16;;;1063;7070;975;7059:27;7017:70;;;6995:94;;8068:38;;;8064:192;;8151:19;8133:15;:37;8118:52;;;;8064:192;;;8232:15;8210:19;:37;8195:52;;;;8064:192;-1:-1:-1;8572:16:24;975;1063;8439;;;;8428:27;8564:35;;;8882:5;8719:26;8699:46;;;;8698:62;;;8862:25;;;;8892:34;;;;;8861:66;;-1:-1:-1;7468:1525:24;;;;;:::o;7963:242:133:-;3788:4:23;3774:27;;3768:34;3774:27;;;3768: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;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;1546:281:108:-;1708:29;1718:10;1730:6;1708:9;:29::i;:::-;1703:120;;1786:21;:10;:19;:21::i;:::-;1809:6;1754:62;;;;;;;;;;;;:::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;;;;;;5878:19:229;;5922:2;5913:12;;5749: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;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;40103:220:56;40169:24;40201:30;40234:32;40252:6;40260:2;40264:1;40234:17;:32::i;7829:207:139:-;7940:14;7956:17;8006:25;8019:11;8006:12;:25::i;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;;;30154:66:229;30142:79;;2092:30:124;;;30130:92:229;2092:30:124;;30238:12:229;;;;2092:30:124;;;875:21:23;;;2092:30:124;2142:39;760:164:23;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;7448:223:139:-;3788:4:23;3774:27;;3768:34;3774:27;;;3768:34;7564:35:139;;;;;;7513:14;;7631:33;;7623:42;6914:97:192;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;:::-;4257:78;;4349:29;4370:5;4357:20;;7000:5:192;6914:97;14:332:229;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:159;841:20;;901:6;890:18;;880:29;;870:57;;923:1;920;913:12;938:324;1013:6;1021;1029;1082:2;1070:9;1061:7;1057:23;1053:32;1050:52;;;1098:1;1095;1088:12;1050:52;1134:9;1121:23;1111:33;;1163:37;1196:2;1185:9;1181:18;1163:37;:::i;:::-;1153:47;;1219:37;1252:2;1241:9;1237:18;1219:37;:::i;:::-;1209:47;;938:324;;;;;:::o;1449:256::-;1515:6;1523;1576:2;1564:9;1555:7;1551:23;1547:32;1544:52;;;1592:1;1589;1582:12;1544:52;1615:28;1633:9;1615:28;:::i;:::-;1605:38;;1662:37;1695:2;1684:9;1680:18;1662:37;:::i;:::-;1652:47;;1449:256;;;;;:::o;1710:439::-;1763:3;1801:5;1795:12;1828:6;1823:3;1816:19;1854:4;1883;1878:3;1874:14;1867:21;;1922:4;1915:5;1911:16;1945:1;1955:169;1969:6;1966:1;1963:13;1955:169;;;2030:13;;2018:26;;2064:12;;;;2099:15;;;;1991:1;1984:9;1955:169;;;-1:-1:-1;2140:3:229;;1710:439;-1:-1:-1;;;;;1710:439:229:o;2154:261::-;2333:2;2322:9;2315:21;2296:4;2353:56;2405:2;2394:9;2390:18;2382:6;2353:56;:::i;2420:180::-;2479:6;2532:2;2520:9;2511:7;2507:23;2503:32;2500:52;;;2548:1;2545;2538:12;2500:52;-1:-1:-1;2571:23:229;;2420:180;-1:-1:-1;2420:180:229:o;5165:184::-;-1:-1:-1;;;5214:1:229;5207:88;5314:4;5311:1;5304:15;5338:4;5335:1;5328:15;5354:184;-1:-1:-1;;;5403:1:229;5396:88;5503:4;5500:1;5493:15;5527:4;5524:1;5517:15;5936:184;-1:-1:-1;;;5985:1:229;5978:88;6085:4;6082:1;6075:15;6109:4;6106:1;6099:15;6125:171;6193:6;6232:10;;;6220;;;6216:27;;6255:12;;;6252:38;;;6270:18;;:::i;:::-;6252:38;6125:171;;;;:::o;6301:168::-;6368:6;6394:10;;;6406;;;6390:27;;6429:11;;;6426:37;;;6443:18;;:::i;6474:128::-;6541:9;;;6562:11;;;6559:37;;;6576:18;;:::i;6607:195::-;6646:3;-1:-1:-1;;6670:5:229;6667:77;6664:103;;6747:18;;:::i;:::-;-1:-1:-1;6794:1:229;6783:13;;6607:195::o;7575:476::-;7664:1;7701:5;7664:1;7715:330;7736:7;7726:8;7723:21;7715:330;;;7855:4;-1:-1:-1;;7783:77:229;7777:4;7774:87;7771:113;;;7864:18;;:::i;:::-;7914:7;7904:8;7900:22;7897:55;;;7934:16;;;;7897:55;8013:22;;;;7973:15;;;;7715:330;;;7719:3;7575:476;;;;;:::o;8056:866::-;8105:5;8135:8;8125:80;;-1:-1:-1;8176:1:229;8190:5;;8125:80;8224:4;8214:76;;-1:-1:-1;8261:1:229;8275:5;;8214:76;8306:4;8324:1;8319:59;;;;8392:1;8387:130;;;;8299:218;;8319:59;8349:1;8340:10;;8363:5;;;8387:130;8424:3;8414:8;8411:17;8408:43;;;8431:18;;:::i;:::-;-1:-1:-1;;8487:1:229;8473:16;;8502:5;;8299:218;;8601:2;8591:8;8588:16;8582:3;8576:4;8573:13;8569:36;8563:2;8553:8;8550:16;8545:2;8539:4;8536:12;8532:35;8529:77;8526:159;;;-1:-1:-1;8638:19:229;;;8670:5;;8526:159;8717:34;8742:8;8736:4;8717:34;:::i;:::-;8847:6;-1:-1:-1;;8775:79:229;8766:7;8763:92;8760:118;;;8858:18;;:::i;:::-;8896:20;;8056:866;-1:-1:-1;;;8056:866:229:o;8927:140::-;8985:5;9014:47;9055:4;9045:8;9041:19;9035:4;9014:47;:::i;9262:334::-;9333:2;9327:9;9389:2;9379:13;;-1:-1:-1;;9375:86:229;9363:99;;9492:18;9477:34;;9513:22;;;9474:62;9471:88;;;9539:18;;:::i;:::-;9575:2;9568:22;9262:334;;-1:-1:-1;9262:334:229:o;9601:1110::-;9695:6;9726:2;9769;9757:9;9748:7;9744:23;9740:32;9737:52;;;9785:1;9782;9775:12;9737:52;9818:9;9812:16;9847:18;9888:2;9880:6;9877:14;9874:34;;;9904:1;9901;9894:12;9874:34;9942:6;9931:9;9927:22;9917:32;;9987:7;9980:4;9976:2;9972:13;9968:27;9958:55;;10009:1;10006;9999:12;9958:55;10038:2;10032:9;10060:2;10056;10053:10;10050:36;;;10066:18;;:::i;:::-;10112:2;10109:1;10105:10;10095:20;;10135:28;10159:2;10155;10151:11;10135:28;:::i;:::-;10197:15;;;10267:11;;;10263:20;;;10228:12;;;;10295:19;;;10292:39;;;10327:1;10324;10317:12;10292:39;10351:11;;;;10371:310;10387:6;10382:3;10379:15;10371:310;;;10460:3;10454:10;10441:23;;10508:10;10501:5;10497:22;10490:5;10487:33;10477:131;;10562:1;10591:2;10587;10580:14;10477:131;10621:18;;;10404:12;;;;10659;;;;10371:310;;;10700:5;9601:1110;-1:-1:-1;;;;;;;;9601:1110:229:o;10716:184::-;-1:-1:-1;;;10765:1:229;10758:88;10865:4;10862:1;10855:15;10889:4;10886:1;10879:15;10905:183;10936:1;10962:10;10999:2;10996:1;10992:10;11021:3;11011:37;;11028:18;;:::i;:::-;11066:10;;11062:20;;;;;10905:183;-1:-1:-1;;10905:183:229:o;11093:112::-;11125:1;11151;11141:35;;11156:18;;:::i;:::-;-1:-1:-1;11190:9:229;;11093:112::o;11573:468::-;11873:6;11862:9;11855:25;11916:2;11911;11900:9;11896:18;11889:30;11836:4;11936:56;11988:2;11977:9;11973:18;11965:6;11936:56;:::i;:::-;11928:64;;12028:6;12023:2;12012:9;12008:18;12001:34;11573:468;;;;;;:::o;12046:250::-;12131:1;12141:113;12155:6;12152:1;12149:13;12141:113;;;12231:11;;;12225:18;12212:11;;;12205:39;12177:2;12170:10;12141:113;;;-1:-1:-1;;12288:1:229;12270:16;;12263:27;12046:250::o;12301:568::-;12354:5;12407:3;12400:4;12392:6;12388:17;12384:27;12374:55;;12425:1;12422;12415:12;12374:55;12454:6;12448:13;12480:18;12476:2;12473:26;12470:52;;;12502:18;;:::i;:::-;12546:114;12654:4;-1:-1:-1;;12578:4:229;12574:2;12570:13;12566:86;12562:97;12546:114;:::i;:::-;12685:2;12676:7;12669:19;12731:3;12724:4;12719:2;12711:6;12707:15;12703:26;12700:35;12697:55;;;12748:1;12745;12738:12;12697:55;12761:77;12835:2;12828:4;12819:7;12815:18;12808:4;12800:6;12796:17;12761:77;:::i;12874:655::-;13016:6;13024;13032;13085:2;13073:9;13064:7;13060:23;13056:32;13053:52;;;13101:1;13098;13091:12;13053:52;13134:9;13128:16;13163:18;13204:2;13196:6;13193:14;13190:34;;;13220:1;13217;13210:12;13190:34;13243:60;13295:7;13286:6;13275:9;13271:22;13243:60;:::i;:::-;13233:70;;13343:2;13332:9;13328:18;13322:25;13312:35;;13393:2;13382:9;13378:18;13372:25;13356:41;;13422:2;13412:8;13409:16;13406:36;;;13438:1;13435;13428:12;13406:36;;13461:62;13515:7;13504:8;13493:9;13489:24;13461:62;:::i;:::-;13451:72;;;12874:655;;;;;:::o;13534:442::-;13797:6;13786:9;13779:25;13840:2;13835;13824:9;13820:18;13813:30;13760:4;13860:56;13912:2;13901:9;13897:18;13889:6;13860:56;:::i;:::-;13852:64;;13964:4;13956:6;13952:17;13947:2;13936:9;13932:18;13925:45;13534:442;;;;;;:::o;13981:335::-;14060:6;14113:2;14101:9;14092:7;14088:23;14084:32;14081:52;;;14129:1;14126;14119:12;14081:52;14162:9;14156:16;14195:18;14187:6;14184:30;14181:50;;;14227:1;14224;14217:12;14181:50;14250:60;14302:7;14293:6;14282:9;14278:22;14250:60;:::i;14321:329::-;14362:3;14400:5;14394:12;14427:6;14422:3;14415:19;14443:76;14512:6;14505:4;14500:3;14496:14;14489:4;14482:5;14478:16;14443:76;:::i;:::-;14564:2;14552:15;-1:-1:-1;;14548:88:229;14539:98;;;;14639:4;14535:109;;14321:329;-1:-1:-1;;14321:329:229:o;14655:359::-;14858:2;14847:9;14840:21;14821:4;14878:44;14918:2;14907:9;14903:18;14895:6;14878:44;:::i;:::-;14953:2;14938:18;;14931:34;;;;-1:-1:-1;14996:2:229;14981:18;14974:34;14870:52;14655:359;-1:-1:-1;14655:359:229:o;15019:125::-;15084:9;;;15105:10;;;15102:36;;;15118:18;;:::i;15149:548::-;15473:6;15462:9;15455:25;15516:3;15511:2;15500:9;15496:18;15489:31;15436:4;15537:57;15589:3;15578:9;15574:19;15566:6;15537:57;:::i;:::-;15642:4;15630:17;;;;15625:2;15610:18;;15603:45;-1:-1:-1;15679:2:229;15664:18;15657:34;15529:65;15149:548;-1:-1:-1;;15149:548:229:o;15702:184::-;15772:6;15825:2;15813:9;15804:7;15800:23;15796:32;15793:52;;;15841:1;15838;15831:12;15793:52;-1:-1:-1;15864:16:229;;15702:184;-1:-1:-1;15702:184:229:o;16260:794::-;16655:6;16644:9;16637:25;16698:3;16693:2;16682:9;16678:18;16671:31;16618:4;16725:57;16777:3;16766:9;16762:19;16754:6;16725:57;:::i;:::-;16830:9;16822:6;16818:22;16813:2;16802:9;16798:18;16791:50;16864:32;16889:6;16881;16864:32;:::i;:::-;16850:46;;16932:6;16927:2;16916:9;16912:18;16905:34;16988:9;16980:6;16976:22;16970:3;16959:9;16955:19;16948:51;17016:32;17041:6;17033;17016:32;:::i;17059:709::-;17429:6;17418:9;17411:25;17472:3;17467:2;17456:9;17452:18;17445:31;17392:4;17499:57;17551:3;17540:9;17536:19;17528:6;17499:57;:::i;:::-;17604:4;17596:6;17592:17;17587:2;17576:9;17572:18;17565:45;17658:9;17650:6;17646:22;17641:2;17630:9;17626:18;17619:50;17686:32;17711:6;17703;17686:32;:::i;:::-;17678:40;;;17755:6;17749:3;17738:9;17734:19;17727:35;17059:709;;;;;;;;:::o;17773:604::-;18082:6;18071:9;18064:25;18125:3;18120:2;18109:9;18105:18;18098:31;18045:4;18152:57;18204:3;18193:9;18189:19;18181:6;18152:57;:::i;:::-;18257:4;18249:6;18245:17;18240:2;18229:9;18225:18;18218:45;18311:9;18303:6;18299:22;18294:2;18283:9;18279:18;18272:50;18339:32;18364:6;18356;18339:32;:::i;18382:407::-;18465:5;18505;18499:12;18547:4;18540:5;18536:16;18530:23;18572:66;18664:2;18660;18656:11;18647:20;;18690:1;18682:6;18679:13;18676:107;;;18770:2;18764;18754:6;18751:1;18747:14;18744:1;18740:22;18736:31;18732:2;18728:40;18724:49;18715:58;;18676:107;;;;18382:407;;;:::o;19047:175::-;19084:3;19128:4;19121:5;19117:16;19157:4;19148:7;19145:17;19142:43;;19165:18;;:::i;:::-;19214:1;19201:15;;19047:175;-1:-1:-1;;19047:175:229:o;19227:793::-;19588:6;19577:9;19570:25;19631:3;19626:2;19615:9;19611:18;19604:31;19551:4;19658:57;19710:3;19699:9;19695:19;19687:6;19658:57;:::i;:::-;19763:4;19751:17;;19746:2;19731:18;;19724:45;19788:12;19836:15;;;19831:2;19816:18;;19809:43;19889:15;;19883:3;19868:19;;19861:44;19942:22;;;19936:3;19921:19;;19914:51;19982:32;19946:6;19999;19982:32;:::i;:::-;19974:40;19227:793;-1:-1:-1;;;;;;;;;19227:793:229:o;20545:320::-;20752:6;20741:9;20734:25;20795:2;20790;20779:9;20775:18;20768:30;20715:4;20815:44;20855:2;20844:9;20840:18;20832:6;20815:44;:::i;20870:168::-;20943:9;;;20974;;20991:15;;;20985:22;;20971:37;20961:71;;21012:18;;:::i;21043:640::-;21294:6;21289:3;21282:19;21264:3;21320:2;21353;21348:3;21344:12;21385:6;21379:13;21450:2;21442:6;21438:15;21471:1;21481:175;21495:6;21492:1;21489:13;21481:175;;;21558:13;;21544:28;;21594:14;;;;21631:15;;;;21517:1;21510:9;21481:175;;;-1:-1:-1;21672:5:229;;21043:640;-1:-1:-1;;;;;;;21043:640:229:o;21688:690::-;22023:3;22012:9;22005:22;21986:4;22050:57;22102:3;22091:9;22087:19;22079:6;22050:57;:::i;:::-;22155:9;22147:6;22143:22;22138:2;22127:9;22123:18;22116:50;22189:32;22214:6;22206;22189:32;:::i;:::-;22175:46;;22257:6;22252:2;22241:9;22237:18;22230:34;22312:9;22304:6;22300:22;22295:2;22284:9;22280:18;22273:50;22340:32;22365:6;22357;22340:32;:::i;22383:899::-;22839:6;22828:9;22821:25;22882:3;22877:2;22866:9;22862:18;22855:31;22802:4;22909:57;22961:3;22950:9;22946:19;22938:6;22909:57;:::i;:::-;23014:9;23006:6;23002:22;22997:2;22986:9;22982:18;22975:50;23048:32;23073:6;23065;23048:32;:::i;:::-;23034:46;;23116:6;23111:2;23100:9;23096:18;23089:34;23172:9;23164:6;23160:22;23154:3;23143:9;23139:19;23132:51;23200:32;23225:6;23217;23200:32;:::i;:::-;23192:40;;;23269:6;23263:3;23252:9;23248:19;23241:35;22383:899;;;;;;;;;:::o;23287:511::-;23538:2;23527:9;23520:21;23501:4;23564:56;23616:2;23605:9;23601:18;23593:6;23564:56;:::i;:::-;23668:14;23660:6;23656:27;23651:2;23640:9;23636:18;23629:55;23732:9;23724:6;23720:22;23715:2;23704:9;23700:18;23693:50;23760:32;23785:6;23777;23760:32;:::i;:::-;23752:40;23287:511;-1:-1:-1;;;;;;23287:511:229:o;23803:616::-;24114:6;24103:9;24096:25;24157:3;24152:2;24141:9;24137:18;24130:31;24077:4;24184:57;24236:3;24225:9;24221:19;24213:6;24184:57;:::i;:::-;24289:14;24281:6;24277:27;24272:2;24261:9;24257:18;24250:55;24353:9;24345:6;24341:22;24336:2;24325:9;24321:18;24314:50;24381:32;24406:6;24398;24381:32;:::i;24643:464::-;24890:66;24882:6;24878:79;24867:9;24860:98;24994:6;24989:2;24978:9;24974:18;24967:34;25037:2;25032;25021:9;25017:18;25010:30;24841:4;25057:44;25097:2;25086:9;25082:18;25074:6;25057:44;:::i;25112:174::-;25179:12;25211:10;;;25223;;;25207:27;;25246:11;;;25243:37;;;25260:18;;:::i;25938:901::-;26363:6;26352:9;26345:25;26406:3;26401:2;26390:9;26386:18;26379:31;26326:4;26433:57;26485:3;26474:9;26470:19;26462:6;26433:57;:::i;:::-;26538:4;26526:17;;26521:2;26506:18;;26499:45;26563:12;26611:15;;;26606:2;26591:18;;26584:43;26664:15;;26658:3;26643:19;;26636:44;26711:3;26696:19;;26689:35;;;26761:22;;;26755:3;26740:19;;26733:51;26801:32;26765:6;26818;26801:32;:::i;:::-;26793:40;25938:901;-1:-1:-1;;;;;;;;;;25938:901:229:o;26844:788::-;27209:3;27198:9;27191:22;27172:4;27236:57;27288:3;27277:9;27273:19;27265:6;27236:57;:::i;:::-;27341:4;27333:6;27329:17;27324:2;27313:9;27309:18;27302:45;27395:14;27387:6;27383:27;27378:2;27367:9;27363:18;27356:55;27459:12;27451:6;27447:25;27442:2;27431:9;27427:18;27420:53;27510:6;27504:3;27493:9;27489:19;27482:35;27566:9;27558:6;27554:22;27548:3;27537:9;27533:19;27526:51;27594:32;27619:6;27611;27594:32;:::i;28248:925::-;28697:66;28689:6;28685:79;28680:3;28673:92;28655:3;28784;28816:2;28812:1;28807:3;28803:11;28796:23;28848:6;28842:13;28864:74;28931:6;28927:1;28922:3;28918:11;28911:4;28903:6;28899:17;28864:74;:::i;:::-;28966:6;28961:3;28957:16;28947:26;;29001:2;28997:1;28993:2;28989:10;28982:22;29035:6;29029:13;29013:29;;29051:75;29117:8;29113:1;29109:2;29105:10;29098:4;29090:6;29086:17;29051:75;:::i;:::-;29146:17;29165:1;29142:25;;28248:925;-1:-1:-1;;;;;28248:925:229:o;29178:339::-;29355:2;29344:9;29337:21;29318:4;29375:44;29415:2;29404:9;29400:18;29392:6;29375:44;:::i;:::-;29367:52;;-1:-1:-1;;;;;29459:6:229;29455:55;29450:2;29439:9;29435:18;29428:83;29178:339;;;;;:::o;29709:287::-;29838:3;29876:6;29870:13;29892:66;29951:6;29946:3;29939:4;29931:6;29927:17;29892:66;:::i;:::-;29974:16;;;;;29709:287;-1:-1:-1;;29709:287:229:o;30261:530::-;30446:3;30484:6;30478:13;30500:66;30559:6;30554:3;30547:4;30539:6;30535:17;30500:66;:::i;:::-;30635:2;30631:15;;;;30648:66;30627:88;30588:16;;;;30613:103;;;30743:2;30732:14;;30725:30;;;;30782:2;30771:14;;30261:530;-1:-1:-1;;30261:530:229:o","linkReferences":{"src/libraries/LibChunks.sol":{"LibChunks":[{"start":3454,"length":20},{"start":3641,"length":20}]}}},"methodIdentifiers":{"_msgSender()":"119df25f","_msgValue()":"45ec9354","_world()":"e1af802c","getEntitiesAtPosition(uint16,uint16)":"69e10c7b","isAtPosition(bytes32,uint16,uint16)":"3fbf0c5a","move(bytes32,uint16,uint16)":"953717d1","spawn(bytes32)":"911c37ae","supportsInterface(bytes4)":"01ffc9a7"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"}],\"name\":\"EncodedLengths_InvalidLength\",\"type\":\"error\"},{\"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\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"accessedIndex\",\"type\":\"uint256\"}],\"name\":\"Store_IndexOutOfBounds\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes2\",\"name\":\"expected\",\"type\":\"bytes2\"},{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"Store_InvalidResourceType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint40\",\"name\":\"startWithinField\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"fieldLength\",\"type\":\"uint40\"}],\"name\":\"Store_InvalidSplice\",\"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\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"indexed\":false,\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"indexed\":false,\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"indexed\":false,\"internalType\":\"EncodedLengths\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Store_SpliceDynamicData\",\"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\":\"_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\":\"uint16\",\"name\":\"x\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"y\",\"type\":\"uint16\"}],\"name\":\"getEntitiesAtPosition\",\"outputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"entitiesAtPosition\",\"type\":\"bytes32[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"},{\"internalType\":\"uint16\",\"name\":\"x\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"y\",\"type\":\"uint16\"}],\"name\":\"isAtPosition\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_isAtPosition\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"},{\"internalType\":\"uint16\",\"name\":\"x\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"y\",\"type\":\"uint16\"}],\"name\":\"move\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"}],\"name\":\"spawn\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"}],\"devdoc\":{\"errors\":{\"EncodedLengths_InvalidLength(uint256)\":[{\"params\":{\"length\":\"The length of the encoded lengths.\"}}],\"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.\"}}],\"Store_IndexOutOfBounds(uint256,uint256)\":[{\"details\":\"Raised if the start index is larger than the previous length of the field.\",\"params\":{\"accessedIndex\":\"FIXME\",\"length\":\"FIXME\"}}],\"Store_InvalidResourceType(bytes2,bytes32,string)\":[{\"params\":{\"expected\":\"The expected resource type.\",\"resourceId\":\"The resource ID.\",\"resourceIdString\":\"The stringified resource ID (for easier debugging).\"}}],\"Store_InvalidSplice(uint40,uint40,uint40)\":[{\"details\":\"Raised if the splice total length of the field is changed but the splice is not at the end of the field.\",\"params\":{\"deleteCount\":\"The number of bytes to delete in the splice operation.\",\"fieldLength\":\"The field length for the splice operation.\",\"startWithinField\":\"The start index within the field for the splice operation.\"}}],\"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_SpliceDynamicData(bytes32,bytes32[],uint8,uint48,uint40,bytes32,bytes)\":{\"params\":{\"data\":\"The data to insert into the dynamic data of the record at the start byte.\",\"deleteCount\":\"The number of bytes to delete in the splice operation.\",\"dynamicFieldIndex\":\"The index of the dynamic field to splice data, relative to the start of the dynamic fields. (Dynamic field index = field index - number of static fields)\",\"encodedLengths\":\"The encoded lengths of the dynamic data of the record.\",\"keyTuple\":\"An array representing the composite 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.\"}},\"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.\"}},\"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\":{\"EncodedLengths_InvalidLength(uint256)\":[{\"notice\":\"Error raised when the provided encoded lengths has an invalid length.\"}],\"Slice_OutOfBounds(bytes,uint256,uint256)\":[{\"notice\":\"Error raised when the provided slice is out of bounds.\"}],\"Store_IndexOutOfBounds(uint256,uint256)\":[{\"notice\":\"Error raised if the provided index is out of bounds.\"}],\"Store_InvalidResourceType(bytes2,bytes32,string)\":[{\"notice\":\"Error raised if the provided resource ID cannot be found.\"}],\"Store_InvalidSplice(uint40,uint40,uint40)\":[{\"notice\":\"Error raised if the provided splice is invalid.\"}],\"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_SpliceDynamicData(bytes32,bytes32[],uint8,uint48,uint40,bytes32,bytes)\":{\"notice\":\"Emitted when dynamic data in the store is spliced.\"},\"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/MapSystem.sol\":\"MapSystem\"},\"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\":{\"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/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/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\"]},\"src/codegen/common.sol\":{\"keccak256\":\"0x2d0a0176c583fcd95e430978a48ca29a38536c01b57b6effd08697d2d2bf5f42\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d1ea5054e1e53b703345992c9ef61e372f6da66247fcb4e89c279055f9085\",\"dweb:/ipfs/QmXCygeJuEesDRSAamMfJZU9Qz5UCz3dmkBj7SGfEvEEY7\"]},\"src/codegen/index.sol\":{\"keccak256\":\"0x84ff02d4275be694bfbe1e60e24539a891dda5df3bacf04f0eb2a974425603d0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f88775b86cdc8322742e528072b64d01df3d3ef70d4fc5104412522e468ae4e2\",\"dweb:/ipfs/Qme75CeS2sA8pr1Tyx9GN5atmuG4aBGjMPaagaGtYTjc2R\"]},\"src/codegen/tables/Actions.sol\":{\"keccak256\":\"0x63cd48bebaa0414728e9be2c856e4eb01efaead6627a6615da4c77b886805cef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1dfe138555b67362f41c26ce1ab074bfc1fcc4e7c6fd0284b82cc699d80d392\",\"dweb:/ipfs/QmNf8UGE3FZ4U96HkeioE4peWWz1SKPAjhKRrGnpEnCdkQ\"]},\"src/codegen/tables/Admin.sol\":{\"keccak256\":\"0xe3b7e993ca2e420d73b845fb37388d453486e24522b941503a2f81c639769725\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e638c35d3ec5805180122b70849bd3a93aa680f3251ac9e7fe4f0ff24722f614\",\"dweb:/ipfs/QmVL3xJPrsVDgXQTdxBEkq4PRmyNDCFHGHKJxLQzuFy9XJ\"]},\"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/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\":\"0x1f0b21a82c18d474347446546973619289392ee9cc745eccbfb4ba802771b2e2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f0a514e9aa8c0265e8ac7284587cdfec829ad4904e511a284d44a325f9ee511b\",\"dweb:/ipfs/QmYGbphJpnBQMsTEtAM78kqH56FrzrmBFVNthRM4WLdUSQ\"]},\"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\":\"0xe941a99c5bc6b4f21b69b4ad61870a3c4b35fa3a7d8e162c75ac3e7515717891\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://eaa285996201485c500f114b98515ce121d87ec29780085dc509d32dff96b227\",\"dweb:/ipfs/QmbnDdw5KqwfGspTKgikXCkvn6Gi6mVWca2yXiPoumhEJP\"]},\"src/codegen/tables/UltimateDominionConfig.sol\":{\"keccak256\":\"0x6f439f3fef2c4db3b295718bb3e277f59500a3183f2306fe70890a30c3eeff26\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bde32ff627c137c1b52e6f45ff82df52eee9e6fe8fa668fc791132dba187f256\",\"dweb:/ipfs/Qmcj4S8ysUA1Lv8xbA5i1dzn4wwKPQrCEjpUd1MW6rh21w\"]},\"src/codegen/world/IActionSystem.sol\":{\"keccak256\":\"0x3ea10f6af2b29e07f658e961113a68db383bb5df7ec853bd797bd1cc14d19b0d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c834cb0bb80ffe10c6175f8a16b827dde9804d459e6aa33691484e419587d47f\",\"dweb:/ipfs/QmXnLXquHjNXN8CCsEL3NPNrQHW6UWY78oginRPtcHZFcw\"]},\"src/codegen/world/ICharacterSystem.sol\":{\"keccak256\":\"0x54157279932a37b055d247901f034848c1f0bffbf262028cf9c69eeedc9b7235\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ead77ae9ab020f705a998be6229e975b9352486deaa9aa800b6de10338190782\",\"dweb:/ipfs/QmaLrytghaAH6ipaBr4XwsaBcCzeVa5gujHGRNxeztuo4X\"]},\"src/codegen/world/ICombatSystem.sol\":{\"keccak256\":\"0x8b522a844626b33d69ae186dd26f2f7bfd921bf92ed7ed0cee2b8c349d9b64f9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://647f99949a4584cf4b528415ffea01ad243147548455fe5a8373b042b6af3087\",\"dweb:/ipfs/QmYsgXQDTwrqg7YSJkKtiNZzf63f4jdA4xfni5gb9ap5K5\"]},\"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\":\"0xc6caadf1800d688083c234a12cd151746f0271be03a50bb6a654634270ab0864\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://084766afac89e6f74162f69534635f90ec56570019223e22d20342f7853fb4e0\",\"dweb:/ipfs/QmbrQXrTewfgW2NydLgPCdt3Vton5V7nfE7HViXtyrMnoK\"]},\"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\":\"0xfb774a3d4388291fa5bae54bf1c592cc366a0585e6d24388dfeebaf3abd666b4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0986371fcb9f53bac88f2c190faf0f5a77fac686eced664aed5f2f1eb6eaca64\",\"dweb:/ipfs/QmWdgLEV31t27nNQC1KGEfaZHFcuBUayxHm2giZJpAG8hv\"]},\"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/systems/MapSystem.sol\":{\"keccak256\":\"0x47c9a77c76fdc128d6ddae173d41eda8af2f954fa9f8b24fef14003dab6028a8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8fb79ad2ddf872fab84a6ee1a16f38dccd0b6ef9f29d867f84ea6fb604e9a732\",\"dweb:/ipfs/QmYzJwFgQtYkbbarVZLUsBAi6anfc421Jp5CoFUS79WSvz\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.24+commit.e11b9ed9"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"uint256","name":"length","type":"uint256"}],"type":"error","name":"EncodedLengths_InvalidLength"},{"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":"uint256","name":"length","type":"uint256"},{"internalType":"uint256","name":"accessedIndex","type":"uint256"}],"type":"error","name":"Store_IndexOutOfBounds"},{"inputs":[{"internalType":"bytes2","name":"expected","type":"bytes2"},{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"Store_InvalidResourceType"},{"inputs":[{"internalType":"uint40","name":"startWithinField","type":"uint40"},{"internalType":"uint40","name":"deleteCount","type":"uint40"},{"internalType":"uint40","name":"fieldLength","type":"uint40"}],"type":"error","name":"Store_InvalidSplice"},{"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":"uint8","name":"dynamicFieldIndex","type":"uint8","indexed":false},{"internalType":"uint48","name":"start","type":"uint48","indexed":false},{"internalType":"uint40","name":"deleteCount","type":"uint40","indexed":false},{"internalType":"EncodedLengths","name":"encodedLengths","type":"bytes32","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Store_SpliceDynamicData","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":"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":"uint16","name":"x","type":"uint16"},{"internalType":"uint16","name":"y","type":"uint16"}],"stateMutability":"view","type":"function","name":"getEntitiesAtPosition","outputs":[{"internalType":"bytes32[]","name":"entitiesAtPosition","type":"bytes32[]"}]},{"inputs":[{"internalType":"bytes32","name":"entityId","type":"bytes32"},{"internalType":"uint16","name":"x","type":"uint16"},{"internalType":"uint16","name":"y","type":"uint16"}],"stateMutability":"view","type":"function","name":"isAtPosition","outputs":[{"internalType":"bool","name":"_isAtPosition","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"entityId","type":"bytes32"},{"internalType":"uint16","name":"x","type":"uint16"},{"internalType":"uint16","name":"y","type":"uint16"}],"stateMutability":"nonpayable","type":"function","name":"move"},{"inputs":[{"internalType":"bytes32","name":"entityId","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"spawn"},{"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."}},"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/MapSystem.sol":"MapSystem"},"evmVersion":"paris","libraries":{}},"sources":{"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/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/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"},"src/codegen/common.sol":{"keccak256":"0x2d0a0176c583fcd95e430978a48ca29a38536c01b57b6effd08697d2d2bf5f42","urls":["bzz-raw://720d1ea5054e1e53b703345992c9ef61e372f6da66247fcb4e89c279055f9085","dweb:/ipfs/QmXCygeJuEesDRSAamMfJZU9Qz5UCz3dmkBj7SGfEvEEY7"],"license":"MIT"},"src/codegen/index.sol":{"keccak256":"0x84ff02d4275be694bfbe1e60e24539a891dda5df3bacf04f0eb2a974425603d0","urls":["bzz-raw://f88775b86cdc8322742e528072b64d01df3d3ef70d4fc5104412522e468ae4e2","dweb:/ipfs/Qme75CeS2sA8pr1Tyx9GN5atmuG4aBGjMPaagaGtYTjc2R"],"license":"MIT"},"src/codegen/tables/Actions.sol":{"keccak256":"0x63cd48bebaa0414728e9be2c856e4eb01efaead6627a6615da4c77b886805cef","urls":["bzz-raw://c1dfe138555b67362f41c26ce1ab074bfc1fcc4e7c6fd0284b82cc699d80d392","dweb:/ipfs/QmNf8UGE3FZ4U96HkeioE4peWWz1SKPAjhKRrGnpEnCdkQ"],"license":"MIT"},"src/codegen/tables/Admin.sol":{"keccak256":"0xe3b7e993ca2e420d73b845fb37388d453486e24522b941503a2f81c639769725","urls":["bzz-raw://e638c35d3ec5805180122b70849bd3a93aa680f3251ac9e7fe4f0ff24722f614","dweb:/ipfs/QmVL3xJPrsVDgXQTdxBEkq4PRmyNDCFHGHKJxLQzuFy9XJ"],"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/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":"0x1f0b21a82c18d474347446546973619289392ee9cc745eccbfb4ba802771b2e2","urls":["bzz-raw://f0a514e9aa8c0265e8ac7284587cdfec829ad4904e511a284d44a325f9ee511b","dweb:/ipfs/QmYGbphJpnBQMsTEtAM78kqH56FrzrmBFVNthRM4WLdUSQ"],"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":"0xe941a99c5bc6b4f21b69b4ad61870a3c4b35fa3a7d8e162c75ac3e7515717891","urls":["bzz-raw://eaa285996201485c500f114b98515ce121d87ec29780085dc509d32dff96b227","dweb:/ipfs/QmbnDdw5KqwfGspTKgikXCkvn6Gi6mVWca2yXiPoumhEJP"],"license":"MIT"},"src/codegen/tables/UltimateDominionConfig.sol":{"keccak256":"0x6f439f3fef2c4db3b295718bb3e277f59500a3183f2306fe70890a30c3eeff26","urls":["bzz-raw://bde32ff627c137c1b52e6f45ff82df52eee9e6fe8fa668fc791132dba187f256","dweb:/ipfs/Qmcj4S8ysUA1Lv8xbA5i1dzn4wwKPQrCEjpUd1MW6rh21w"],"license":"MIT"},"src/codegen/world/IActionSystem.sol":{"keccak256":"0x3ea10f6af2b29e07f658e961113a68db383bb5df7ec853bd797bd1cc14d19b0d","urls":["bzz-raw://c834cb0bb80ffe10c6175f8a16b827dde9804d459e6aa33691484e419587d47f","dweb:/ipfs/QmXnLXquHjNXN8CCsEL3NPNrQHW6UWY78oginRPtcHZFcw"],"license":"MIT"},"src/codegen/world/ICharacterSystem.sol":{"keccak256":"0x54157279932a37b055d247901f034848c1f0bffbf262028cf9c69eeedc9b7235","urls":["bzz-raw://ead77ae9ab020f705a998be6229e975b9352486deaa9aa800b6de10338190782","dweb:/ipfs/QmaLrytghaAH6ipaBr4XwsaBcCzeVa5gujHGRNxeztuo4X"],"license":"MIT"},"src/codegen/world/ICombatSystem.sol":{"keccak256":"0x8b522a844626b33d69ae186dd26f2f7bfd921bf92ed7ed0cee2b8c349d9b64f9","urls":["bzz-raw://647f99949a4584cf4b528415ffea01ad243147548455fe5a8373b042b6af3087","dweb:/ipfs/QmYsgXQDTwrqg7YSJkKtiNZzf63f4jdA4xfni5gb9ap5K5"],"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":"0xc6caadf1800d688083c234a12cd151746f0271be03a50bb6a654634270ab0864","urls":["bzz-raw://084766afac89e6f74162f69534635f90ec56570019223e22d20342f7853fb4e0","dweb:/ipfs/QmbrQXrTewfgW2NydLgPCdt3Vton5V7nfE7HViXtyrMnoK"],"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":"0xfb774a3d4388291fa5bae54bf1c592cc366a0585e6d24388dfeebaf3abd666b4","urls":["bzz-raw://0986371fcb9f53bac88f2c190faf0f5a77fac686eced664aed5f2f1eb6eaca64","dweb:/ipfs/QmWdgLEV31t27nNQC1KGEfaZHFcuBUayxHm2giZJpAG8hv"],"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/systems/MapSystem.sol":{"keccak256":"0x47c9a77c76fdc128d6ddae173d41eda8af2f954fa9f8b24fef14003dab6028a8","urls":["bzz-raw://8fb79ad2ddf872fab84a6ee1a16f38dccd0b6ef9f29d867f84ea6fb604e9a732","dweb:/ipfs/QmYzJwFgQtYkbbarVZLUsBAi6anfc421Jp5CoFUS79WSvz"],"license":"MIT"}},"version":1},"id":216} \ No newline at end of file +{"abi":[{"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":"getEntitiesAtPosition","inputs":[{"name":"x","type":"uint16","internalType":"uint16"},{"name":"y","type":"uint16","internalType":"uint16"}],"outputs":[{"name":"entitiesAtPosition","type":"bytes32[]","internalType":"bytes32[]"}],"stateMutability":"view"},{"type":"function","name":"isAtPosition","inputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"},{"name":"x","type":"uint16","internalType":"uint16"},{"name":"y","type":"uint16","internalType":"uint16"}],"outputs":[{"name":"_isAtPosition","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"move","inputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"},{"name":"x","type":"uint16","internalType":"uint16"},{"name":"y","type":"uint16","internalType":"uint16"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"spawn","inputs":[{"name":"entityId","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"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_SpliceDynamicData","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","indexed":false,"internalType":"uint8"},{"name":"start","type":"uint48","indexed":false,"internalType":"uint48"},{"name":"deleteCount","type":"uint40","indexed":false,"internalType":"uint40"},{"name":"encodedLengths","type":"bytes32","indexed":false,"internalType":"EncodedLengths"},{"name":"data","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":"EncodedLengths_InvalidLength","inputs":[{"name":"length","type":"uint256","internalType":"uint256"}]},{"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":"Store_IndexOutOfBounds","inputs":[{"name":"length","type":"uint256","internalType":"uint256"},{"name":"accessedIndex","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidResourceType","inputs":[{"name":"expected","type":"bytes2","internalType":"bytes2"},{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"Store_InvalidSplice","inputs":[{"name":"startWithinField","type":"uint40","internalType":"uint40"},{"name":"deleteCount","type":"uint40","internalType":"uint40"},{"name":"fieldLength","type":"uint40","internalType":"uint40"}]},{"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":"0x608060405234801561001057600080fd5b50614150806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c806369e10c7b1161005b57806369e10c7b146100fb578063911c37ae1461011b578063953717d114610130578063e1af802c1461014357600080fd5b806301ffc9a71461008d578063119df25f146100b55780633fbf0c5a146100d557806345ec9354146100e8575b600080fd5b6100a061009b3660046135b9565b61014b565b60405190151581526020015b60405180910390f35b6100bd6101e4565b6040516001600160a01b0390911681526020016100ac565b6100a06100e336600461360d565b6101f3565b604051601f1936013581526020016100ac565b61010e610109366004613649565b610236565b6040516100ac91906136b8565b61012e6101293660046136cb565b610249565b005b61012e61013e36600461360d565b610365565b6100bd6105a2565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee1270000000000000000000000000000000000000000000000000000000014806101de57507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b60006101ee6105ac565b905090565b6000806000610201866105de565b915091508461ffff168261ffff1614801561022357508361ffff168161ffff16145b1561022d57600192505b50509392505050565b6060610242838361068f565b9392505050565b60006102548261074e565b9050806001600160a01b03166102686101e4565b6001600160a01b0316146102e85760405162461bcd60e51b8152602060048201526024808201527f4f6e6c7920746865206f776e65722063616e20737061776e206120636861726160448201527f637465720000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6102f1826107eb565b1561033e5760405162461bcd60e51b815260206004820152601960248201527f43686172616374657220616c726561647920737061776e65640000000000000060448201526064016102df565b61034a82600080610890565b610355826001610958565b61036160008084610a16565b5050565b60006103708461074e565b9050806001600160a01b03166103846101e4565b6001600160a01b0316146104005760405162461bcd60e51b815260206004820152602360248201527f4f6e6c7920746865206f776e65722063616e206d6f766520612063686172616360448201527f746572000000000000000000000000000000000000000000000000000000000060648201526084016102df565b610409846107eb565b6104555760405162461bcd60e51b815260206004820152601560248201527f436861726163746572206e6f7420737061776e6564000000000000000000000060448201526064016102df565b600080610461866105de565b91509150600080610470610adc565b915091508061ffff168761ffff16106104cb5760405162461bcd60e51b815260206004820152600f60248201527f58206f7574206f6620626f756e6473000000000000000000000000000000000060448201526064016102df565b8161ffff168661ffff16106105225760405162461bcd60e51b815260206004820152600f60248201527f59206f7574206f6620626f756e6473000000000000000000000000000000000060448201526064016102df565b61052e84848989610b59565b61ffff166001146105815760405162461bcd60e51b815260206004820152601e60248201527f43616e206f6e6c79206d6f766520312074696c6520617420612074696d65000060448201526064016102df565b61058e8885858a8a610bc7565b6105988787610cc3565b5050505050505050565b60006101ee610fc0565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c806105db5750335b90565b60408051600180825281830190925260009182918291602080830190803683370190505090508381600081518110610618576106186136fa565b6020908102919091010152600080806106717f74625544000000000000000000000000506f736974696f6e0000000000000000857e04020002020000000000000000000000000000000000000000000000000000610fca565b92509250925061068283838361109a565b9550955050505050915091565b604080516002808252606080830184529260009291906020830190803683370190505090508361ffff1660001b816000815181106106cf576106cf6136fa565b6020026020010181815250508261ffff1660001b816001815181106106f6576106f66136fa565b6020908102919091010152600061072e7f74625544000000000000000000000000456e7469746965734174506f7369746983836110bd565b90506107456107408260008451611184565b611212565b95945050505050565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110610787576107876136fa565b602090810291909101015260006107e07f74625544000000000000000000000000436861726163746572730000000000008360017e55040020142001000000000000000000000000000000000000000000000000611223565b60601c949350505050565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110610824576108246136fa565b6020908102919091010152600061087c7f74625544000000000000000000000000537061776e656400000000000000000083837e01010001000000000000000000000000000000000000000000000000000000611223565b90506108888160f81c90565b949350505050565b6040805160f084811b7fffff0000000000000000000000000000000000000000000000000000000000009081166020808501919091529185901b1660228301528251600481840301815260016024840181815260648501909552909360009360609385939160440190803683370190505090508681600081518110610917576109176136fa565b602090810291909101015261094f7f74625544000000000000000000000000506f736974696f6e0000000000000000828686866112e0565b50505050505050565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061098e5761098e6136fa565b602002602001018181525050610a117f74625544000000000000000000000000537061776e656400000000000000000060001b826000856040516020016109dc91151560f81b815260010190565b60408051601f198184030181529190527e01010001000000000000000000000000000000000000000000000000000000611395565b505050565b6040805160028082526060820183526000926020830190803683370190505090508361ffff1660001b81600081518110610a5257610a526136fa565b6020026020010181815250508261ffff1660001b81600181518110610a7957610a796136fa565b602002602001018181525050610ad67f74625544000000000000000000000000456e7469746965734174506f7369746960001b82600085604051602001610ac291815260200190565b60405160208183030381529060405261140b565b50505050565b60408051600080825260208201909252819060008080610b3c7f746255440000000000000000000000004d6170436f6e66696700000000000000857e04020002020000000000000000000000000000000000000000000000000000610fca565b925092509250610b4d83838361109a565b95509550505050509091565b6000808361ffff168661ffff1611610b7a57610b758685613726565b610b84565b610b848487613726565b905060008361ffff168661ffff1611610ba657610ba18685613726565b610bb0565b610bb08487613726565b9050610bbc8183613748565b979650505050505050565b6000610bd38585610236565b90506000805b8251811015610c5f5787838281518110610bf557610bf56136fa565b602002602001015103610c4d576001915060008360018551610c179190613763565b81518110610c2757610c276136fa565b60200260200101519050610c3d888884846114bd565b610c478888611588565b50610c5f565b80610c5781613776565b915050610bd9565b5080610cad5760405162461bcd60e51b815260206004820152601f60248201527f456e7469747920776173206e6f74206174207468617420706f736974696f6e0060448201526064016102df565b610cb8878585610890565b61094f848489610a16565b6000610cda6000808561ffff168561ffff16611628565b61ffff16905080600003610ced57505050565b6000610cf882611646565b90506000815111610d715760405162461bcd60e51b815260206004820152602760248201527f4e6f206d6f6e737465727320617661696c61626c6520666f722074686973206460448201527f697374616e63650000000000000000000000000000000000000000000000000060648201526084016102df565b606046617a6903610e0b5773__$227e4555c1f608352b26068e438454dd8b$__63bc3a86cf610da1600842613874565b6040518263ffffffff1660e01b8152600401610dbf91815260200190565b600060405180830381865af4158015610ddc573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610e0491908101906138b4565b9050610e9e565b6040517fbc3a86cf00000000000000000000000000000000000000000000000000000000815244600482015273__$227e4555c1f608352b26068e438454dd8b$__9063bc3a86cf90602401600060405180830381865af4158015610e73573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610e9b91908101906138b4565b90505b60005b60068260018451610eb29190613763565b81518110610ec257610ec26136fa565b6020026020010151610ed49190613986565b63ffffffff16811015610fb857610faf838451848481518110610ef957610ef96136fa565b602002602001015163ffffffff16610f1191906139a9565b81518110610f2157610f216136fa565b60200260200101518787604051602401610f529392919092835261ffff918216602084015216604082015260600190565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f15bc4248000000000000000000000000000000000000000000000000000000001790526116cd565b50600101610ea1565b505050505050565b60006101ee61177b565b6060600060606000610fda61177b565b9050306001600160a01b0382160361100357610ff78787876117ba565b93509350935050611091565b6040517f419b58fd0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063419b58fd9061104c908a908a908a906004016139bd565b600060405180830381865afa158015611069573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ff79190810190613a6e565b93509350939050565b60208301516022840151600091829160f091821c911c5b90969095509350505050565b606060006110c961177b565b9050306001600160a01b038216036110ee576110e68585856118c2565b915050610242565b6040517f1e7889770000000000000000000000000000000000000000000000000000000081526001600160a01b03821690631e7889779061113790889088908890600401613adb565b600060405180830381865afa158015611154573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526110e69190810190613b07565b509392505050565b6000818311806111945750835182115b156111d1578383836040517f23230fa30000000000000000000000000000000000000000000000000000000081526004016102df93929190613b68565b602084016111df8482613b8d565b905060006111ed8585613763565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b6060600061024283602060006118fc565b60008061122e61177b565b9050306001600160a01b038216036112545761124c86868686611977565b915050610888565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d599061129f908990899089908990600401613ba0565b602060405180830381865afa1580156112bc573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061124c9190613bcf565b60006112ea61177b565b9050306001600160a01b0382160361130e5761130986868686866119a4565b610fb8565b6040517f298314fb0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063298314fb9061135b9089908990899089908990600401613be8565b600060405180830381600087803b15801561137557600080fd5b505af1158015611389573d6000803e3d6000fd5b50505050505050505050565b600061139f61177b565b9050306001600160a01b038216036113be5761130986868686866119ba565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae09061135b9089908990899089908990600401613c2d565b600061141561177b565b9050306001600160a01b0382160361143857611433858585856119cf565b6114b6565b6040517f150f32620000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063150f326290611483908890889088908890600401613c74565b600060405180830381600087803b15801561149d57600080fd5b505af11580156114b1573d6000803e3d6000fd5b505050505b5050505050565b6040805160028082526060820183526000926020830190803683370190505090508461ffff1660001b816000815181106114f9576114f96136fa565b6020026020010181815250508361ffff1660001b81600181518110611520576115206136fa565b60200260200101818152505060008260405160200161154191815260200190565b6040516020818303038152906040529050610fb87f74625544000000000000000000000000456e7469746965734174506f7369746960001b83600087602002855186611a0a565b6040805160028082526060820183526000926020830190803683370190505090508261ffff1660001b816000815181106115c4576115c46136fa565b6020026020010181815250508161ffff1660001b816001815181106115eb576115eb6136fa565b602002602001018181525050610a117f74625544000000000000000000000000456e7469746965734174506f7369746960001b8260006020611ac3565b60006107456116378685611b36565b6116418685611b36565b611b58565b60408051600180825281830190925260609160009190602080830190803683370190505090508260001b81600081518110611683576116836136fa565b602090810291909101015260006116bb7f746255440000000000000000000000004d6f627342794c6576656c000000000083836110bd565b90506108886107408260008451611184565b60606000806116e36116de85613ca8565b611b6f565b91509150816000801b03611749576040517ffdde54e20000000000000000000000000000000000000000000000000000000081527fffffffff000000000000000000000000000000000000000000000000000000006000351660048201526024016102df565b6020840180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16821790526108888285611c32565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b0316806117b5573391505090565b919050565b60606000606060006117cb85611d0d565b90506117d8878783611d30565b935060006117e586611d69565b905080156118b7576117f78888611da6565b935066ffffffffffffff841667ffffffffffffffff81111561181b5761181b6136e4565b6040519080825280601f01601f191660200182016040528015611845576020820181803683370190505b5092506020830160005b828160ff1610156118b45760006118678b8b84611db9565b90506000611884888460ff166028026038011c64ffffffffff1690565b90506118938260008387611e39565b61189d8185613b8d565b9350505080806118ac90613cf8565b91505061184f565b50505b505093509350939050565b60606108886118d2858585611db9565b60006118f7856118e28989611da6565b9060ff166028026038011c64ffffffffff1690565b611f05565b6060600061190a8560801c90565b90506fffffffffffffffffffffffffffffffff8516600085828161193057611930613970565b04905060405193506020840160208202810160405281855260005b8281101561196b578451871c82529387019360209091019060010161194b565b50505050509392505050565b60006107456119868686611f28565b60ff858116601b0360080285901c1661199f8587611f7e565b611faf565b6114b685858585856119b58b612000565b612085565b6114b685856119c98487611f7e565b856123be565b60006119db8585611da6565b905060006119f8828560ff166028026038011c64ffffffffff1690565b9050610fb88686868460008888612659565b6000611a1461177b565b9050306001600160a01b03821603611a3957611a34878787878787612a93565b61094f565b6040517fc0a2895a0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063c0a2895a90611a88908a908a908a908a908a908a90600401613d17565b600060405180830381600087803b158015611aa257600080fd5b505af1158015611ab6573d6000803e3d6000fd5b5050505050505050505050565b6000611acd61177b565b9050306001600160a01b03821603611aeb5761143385858585612aab565b6040517fd9c03a040000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063d9c03a0490611483908890889088908890600401613ba0565b6000818311611b4e57611b498383613763565b610242565b6102428284613763565b600081831015611b685781610242565b5090919050565b6040805160018082528183019092526000918291829160208083019080368337019050509050837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681600081518110611bc857611bc86136fa565b602090810291909101015260008080611c217f7462776f726c6400000000000000000046756e6374696f6e53656c6563746f72857e24020020040000000000000000000000000000000000000000000000000000610fca565b925092509250610682838383612b04565b60606000611c3e610fc0565b90506001600160a01b0381163003611c7f576000611c66611c5d6105ac565b60008787612b10565b9350905080611c7857611c7883612c4b565b50506101de565b6040517f3ae7af080000000000000000000000000000000000000000000000000000000081526001600160a01b03821690633ae7af0890611cc69087908790600401613d6d565b6000604051808303816000875af1158015611ce5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526108889190810190613b07565b60006008611d1d60026020613763565b611d279190613d86565b9190911c919050565b606081600003611d4f5750604080516020810190915260008152610242565b6000611d5b8585611f28565b905061074581600085611f05565b60006008600180611d7c60026020613763565b611d869190613763565b611d909190613763565b611d9a9190613d86565b8260ff911c1692915050565b6000610242611db58484612c53565b5490565b60008383604051602001611dce929190613d9d565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b8215611ec05760208310611e6357602083048401935060208381611e5f57611e5f613970565b0692505b8215611ec0576020839003600081841015611e865750600019600884021c611e90565b50600019600882021c5b8554600886021b818451168219821617845250818411611eb1575050610ad6565b50600194909401939182900391015b5b60208210611ee25783548152600190930192601f1990910190602001611ec1565b8115610ad6576000600019600884021c8251865482191691161782525050505050565b60405160208101601f19603f848401011660405282825261117c85858584611e39565b60008282604051602001611f3d929190613d9d565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff1681101561117c57611fa560ff601b83900360080287901c1683613b8d565b9150600101611f83565b600060208210611fd557602082048401935060208281611fd157611fd1613970565b0691505b508254600882021b60208290038084111561117c576001850154600882021c82179150509392505050565b60007f8b9d8c8b908d9affffffffffffffffffab9e9d939a8d00000000000000000000820161204f57507e60030220202000000000000000000000000000000000000000000000000000919050565b6101de61207c7f746273746f72650000000000000000005461626c65730000000000000000000084612ca9565b60206000611faf565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff000000000000000000000000000000000000000000000000000000000000160361211157857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9868686866040516121049493929190613dd9565b60405180910390a2610fb8565b600061211c87612cc5565b905060005b81518110156121f557600082828151811061213e5761213e6136fa565b6020026020010151905061216a6001826affffffffffffffffffffff1916612d4e90919063ffffffff16565b156121ec576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c906121b9908c908c908c908c908c908c90600401613e18565b600060405180830381600087803b1580156121d357600080fd5b505af11580156121e7573d6000803e3d6000fd5b505050505b50600101612121565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a98787878760405161222c9493929190613dd9565b60405180910390a260006122408888611f28565b90506000602087019050612258826000895184612d6c565b600061226385611d69565b11156122e75760006122758a8a612c53565b878155905060208601915060008060005b61228f88611d69565b8160ff1610156122e2576122a48d8d83611db9565b92506122bf8a8260ff166028026038011c64ffffffffff1690565b91506122ce8360008488612d6c565b6122d88286613b8d565b9450600101612286565b505050505b60005b8351811015611389576000848281518110612307576123076136fa565b602002602001015190506123336002826affffffffffffffffffffff1916612d4e90919063ffffffff16565b156123b5576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90612382908e908e908e908e908e908e90600401613e18565b600060405180830381600087803b15801561239c57600080fd5b505af11580156123b0573d6000803e3d6000fd5b505050505b506001016122ea565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff000000000000000000000000000000000000000000000000000000000000160361244857837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be84848460405161243b93929190613e71565b60405180910390a2610ad6565b60006124548585611f28565b9050600061246186612cc5565b905060005b8151811015612536576000828281518110612483576124836136fa565b602002602001015190506124af6004826affffffffffffffffffffff1916612d4e90919063ffffffff16565b1561252d576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d906124fa908b908b908b908b90600401613eae565b600060405180830381600087803b15801561251457600080fd5b505af1158015612528573d6000803e3d6000fd5b505050505b50600101612466565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be86868660405161256b93929190613e71565b60405180910390a2612586828565ffffffffffff1685612e2b565b60005b815181101561094f5760008282815181106125a6576125a66136fa565b602002602001015190506125d26008826affffffffffffffffffffff1916612d4e90919063ffffffff16565b15612650576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba87219061261d908b908b908b908b90600401613eae565b600060405180830381600087803b15801561263757600080fd5b505af115801561264b573d6000803e3d6000fd5b505050505b50600101612589565b7f7462000000000000000000000000000000000000000000000000000000000000877fffff0000000000000000000000000000000000000000000000000000000000001614612719577f746200000000000000000000000000000000000000000000000000000000000087886040516020016126d791815260200190565b60408051601f19818403018152908290527f31b466830000000000000000000000000000000000000000000000000000000082526102df939291600401613ee7565b6000612734828760ff166028026038011c64ffffffffff1690565b9050600083518564ffffffffff168361274d9190613763565b6127579190613b8d565b905080821415801561277957508161276f8688613f28565b64ffffffffff1614155b156127c9576040517fa65010b400000000000000000000000000000000000000000000000000000000815264ffffffffff80881660048301528087166024830152831660448201526064016102df565b818664ffffffffff16111561281a576040517f7e8578d30000000000000000000000000000000000000000000000000000000081526004810183905264ffffffffff871660248201526044016102df565b6000612827848984612e41565b905060006128348b612cc5565b905060005b81518110156128ff576000828281518110612856576128566136fa565b602002602001015190506128826010826affffffffffffffffffffff1916612d4e90919063ffffffff16565b156128f657606081901c6001600160a01b03166355eb5a288e8e8e8e8e8d8f6040518863ffffffff1660e01b81526004016128c39796959493929190613f46565b600060405180830381600087803b1580156128dd57600080fd5b505af11580156128f1573d6000803e3d6000fd5b505050505b50600101612839565b5064ffffffffff881660005b8a60ff168160ff16101561293e57612932878260ff166028026038011c64ffffffffff1690565b9091019060010161290b565b508b7ffe158a7adba34e256807c8a149028d3162918713c3838afc643ce9f96716ebfd8c8c848c888d60405161297996959493929190613fa4565b60405180910390a25082841461299a5760006129958c8c612c53565b839055505b60006129a78c8c8c611db9565b90506129bb818a64ffffffffff1689612e2b565b5060005b8151811015612a855760008282815181106129dc576129dc6136fa565b60200260200101519050612a086020826affffffffffffffffffffff1916612d4e90919063ffffffff16565b15612a7c57606081901c6001600160a01b031663635845338e8e8e8e8e8a8f6040518863ffffffff1660e01b8152600401612a499796959493929190613f46565b600060405180830381600087803b158015612a6357600080fd5b505af1158015612a77573d6000803e3d6000fd5b505050505b506001016129bf565b505050505050505050505050565b610fb8868686868686612aa68d8d611da6565b612659565b6000612ab78585611da6565b90506000612ad4828560ff166028026038011c64ffffffffff1690565b9050610fb8868686612aed8764ffffffffff8716613763565b604080516000815260208101909152889088612659565b6000806110b185612f0f565b60006060600080612b2086612f24565b90925090506001600160a01b038216612b715785612b3d87612fc8565b6040517ffbf10ce60000000000000000000000000000000000000000000000000000000081526004016102df929190613d6d565b80612b8057612b808689613105565b8615612bec577dffffffffffffffffffffffffffff0000000000000000000000000000000086167f6e73000000000000000000000000000000000000000000000000000000000000176000612bd482613151565b9050612be982612be48b84613b8d565b6131e2565b50505b6000612bf88760101b90565b7fffffffffffffffffffffffffffff0000000000000000000000000000000000001614612c3057612c2b88888488613296565b612c3c565b612c3c8888848861330e565b90999098509650505050505050565b805160208201fd5b60008282604051602001612c68929190613d9d565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b6040805160208101849052908101829052600090606001611f3d565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110612cff57612cff6136fa565b60209081029190910101526000612d377f746273746f726500000000000000000053746f7265486f6f6b7300000000000083836118c2565b9050610888612d498260008451611184565b61336f565b60008160ff1682612d5f8560581c90565b1660ff1614905092915050565b8215612de65760208310612d9657602083048401935060208381612d9257612d92613970565b0692505b8215612de65760208390036000600019600885021c1990506008850281811c91508351811c9050811987541682821617875550818411612dd7575050610ad6565b50600194909401939182900391015b5b60208210612e085780518455600190930192601f1990910190602001612de7565b8115610ad6576000600019600884021c8554835182191691161785555050505050565b610a1183838351612e3c8560200190565b612d6c565b600064ffffffffff821115612e85576040517f7149a3c1000000000000000000000000000000000000000000000000000000008152600481018390526024016102df565b8366ffffffffffffff811660ff851660280260380182901c64ffffffffff16808510612eb75780850382019150612ebf565b848103820391505b5064ffffffffff6038602860ff8816020181811b197fffffffffffffffffffffffffffffffffffffffffffffffffff000000000000009490941690921792909216918416901b1790509392505050565b602081015160408201516000905b9050915091565b60408051600180825281830190925260009182918291602080830190803683370190505090508381600081518110612f5e57612f5e6136fa565b602090810291909101015260008080612fb77f7462776f726c6400000000000000000053797374656d73000000000000000000857e150200140100000000000000000000000000000000000000000000000000006117ba565b925092509250610682838383613380565b606081601081901b6000612fdb8361338c565b9050827fffffffffffffffffffffffffffff000000000000000000000000000000000000831615613036576130317fffffffffffffffffffffffffffff00000000000000000000000000000000000084166133a3565b61306d565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b7fffffffffffffffffffffffffffffffff000000000000000000000000000000008316156130a35761309e836133a3565b6130da565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b6040516020016130ec93929190613ff3565b6040516020818303038152906040529350505050919050565b61310f8282613447565b6103615761311c82612fc8565b816040517fd787b7370000000000000000000000000000000000000000000000000000000081526004016102df929190614081565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061318a5761318a6136fa565b602090810291909101015260006108887f7462776f726c6400000000000000000042616c616e636573000000000000000083837e20010020000000000000000000000000000000000000000000000000000000611977565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110613218576132186136fa565b602002602001018181525050610a117f7462776f726c6400000000000000000042616c616e636573000000000000000060001b8260008560405160200161326191815260200190565b60408051601f198184030181529190527e200100200000000000000000000000000000000000000000000000000000006119ba565b60006060836001600160a01b031660006132b18589896134a5565b6040516132be91906140ac565b60006040518083038185875af1925050503d80600081146132fb576040519150601f19603f3d011682016040523d82523d6000602084013e613300565b606091505b509097909650945050505050565b60006060836001600160a01b03166133278488886134a5565b60405161333491906140ac565b600060405180830381855af49150503d80600081146132fb576040519150601f19603f3d011682016040523d82523d6000602084013e613300565b6060600061024283601560006118fc565b6000806110b1856134d4565b600061339a60706010613b8d565b9190911b919050565b606060005b6010811015613408577fffffffffffffffffffffffffffffffff000000000000000000000000000000008316600882021b7fff000000000000000000000000000000000000000000000000000000000000001615613408576001016133a8565b604080517fffffffffffffffffffffffffffffffff00000000000000000000000000000000851660208201528151603090910190915281815280610888565b60006134957f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617836134f0565b80610242575061024283836134f0565b60608383836040516020016134bc939291906140c8565b60405160208183030381529060405290509392505050565b6020810151603482015160609190911c9060009060f81c612f1d565b604080516002808252606082018352600092839291906020830190803683370190505090508381600081518110613529576135296136fa565b602002602001018181525050826001600160a01b031660001b81600181518110613555576135556136fa565b602090810291909101015260006135ad7f7462776f726c640000000000000000005265736f75726365416363657373000083837e01010001000000000000000000000000000000000000000000000000000000611977565b90506107458160f81c90565b6000602082840312156135cb57600080fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461024257600080fd5b803561ffff811681146117b557600080fd5b60008060006060848603121561362257600080fd5b83359250613632602085016135fb565b9150613640604085016135fb565b90509250925092565b6000806040838503121561365c57600080fd5b613665836135fb565b9150613673602084016135fb565b90509250929050565b60008151808452602080850194506020840160005b838110156136ad57815187529582019590820190600101613691565b509495945050505050565b602081526000610242602083018461367c565b6000602082840312156136dd57600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b61ffff82811682821603908082111561374157613741613710565b5092915050565b61ffff81811683821601908082111561374157613741613710565b818103818111156101de576101de613710565b6000600019820361378957613789613710565b5060010190565b600181815b808511156137cb5781600019048211156137b1576137b1613710565b808516156137be57918102915b93841c9390800290613795565b509250929050565b6000826137e2575060016101de565b816137ef575060006101de565b8160018114613805576002811461380f5761382b565b60019150506101de565b60ff84111561382057613820613710565b50506001821b6101de565b5060208310610133831016604e8410600b841016171561384e575081810a6101de565b6138588383613790565b806000190482111561386c5761386c613710565b029392505050565b600061024260ff8416836137d3565b604051601f8201601f1916810167ffffffffffffffff811182821017156138ac576138ac6136e4565b604052919050565b600060208083850312156138c757600080fd5b825167ffffffffffffffff808211156138df57600080fd5b818501915085601f8301126138f357600080fd5b815181811115613905576139056136e4565b8060051b9150613916848301613883565b818152918301840191848101908884111561393057600080fd5b938501935b83851015613964578451925063ffffffff831683146139545760008081fd5b8282529385019390850190613935565b98975050505050505050565b634e487b7160e01b600052601260045260246000fd5b600063ffffffff8084168061399d5761399d613970565b92169190910692915050565b6000826139b8576139b8613970565b500690565b8381526060602082015260006139d6606083018561367c565b9050826040830152949350505050565b60005b83811015613a015781810151838201526020016139e9565b50506000910152565b600082601f830112613a1b57600080fd5b815167ffffffffffffffff811115613a3557613a356136e4565b613a486020601f19601f84011601613883565b818152846020838601011115613a5d57600080fd5b6108888260208301602087016139e6565b600080600060608486031215613a8357600080fd5b835167ffffffffffffffff80821115613a9b57600080fd5b613aa787838801613a0a565b9450602086015193506040860151915080821115613ac457600080fd5b50613ad186828701613a0a565b9150509250925092565b838152606060208201526000613af4606083018561367c565b905060ff83166040830152949350505050565b600060208284031215613b1957600080fd5b815167ffffffffffffffff811115613b3057600080fd5b61088884828501613a0a565b60008151808452613b548160208601602086016139e6565b601f01601f19169290920160200192915050565b606081526000613b7b6060830186613b3c565b60208301949094525060400152919050565b808201808211156101de576101de613710565b848152608060208201526000613bb9608083018661367c565b60ff949094166040830152506060015292915050565b600060208284031215613be157600080fd5b5051919050565b85815260a060208201526000613c0160a083018761367c565b8281036040840152613c138187613b3c565b905084606084015282810360808401526139648185613b3c565b85815260a060208201526000613c4660a083018761367c565b60ff861660408401528281036060840152613c618186613b3c565b9150508260808301529695505050505050565b848152608060208201526000613c8d608083018661367c565b60ff851660408401528281036060840152610bbc8185613b3c565b6000815160208301517fffffffff0000000000000000000000000000000000000000000000000000000080821693506004831015613cf05780818460040360031b1b83161693505b505050919050565b600060ff821660ff8103613d0e57613d0e613710565b60010192915050565b86815260c060208201526000613d3060c083018861367c565b60ff8716604084015264ffffffffff86811660608501528516608084015282810360a0840152613d608185613b3c565b9998505050505050505050565b8281526040602082015260006108886040830184613b3c565b80820281158282048414176101de576101de613710565b8281526000602080830184516020860160005b82811015613dcc57815184529284019290840190600101613db0565b5091979650505050505050565b608081526000613dec608083018761367c565b8281036020840152613dfe8187613b3c565b90508460408401528281036060840152610bbc8185613b3c565b86815260c060208201526000613e3160c083018861367c565b8281036040840152613e438188613b3c565b90508560608401528281036080840152613e5d8186613b3c565b9150508260a0830152979650505050505050565b606081526000613e84606083018661367c565b65ffffffffffff851660208401528281036040840152613ea48185613b3c565b9695505050505050565b848152608060208201526000613ec7608083018661367c565b65ffffffffffff851660408401528281036060840152610bbc8185613b3c565b7fffff000000000000000000000000000000000000000000000000000000000000841681528260208201526060604082015260006107456060830184613b3c565b64ffffffffff81811683821601908082111561374157613741613710565b87815260e060208201526000613f5f60e083018961367c565b60ff8816604084015264ffffffffff87811660608501528616608084015260a0830185905282810360c0840152613f968185613b3c565b9a9950505050505050505050565b60c081526000613fb760c083018961367c565b60ff8816602084015265ffffffffffff8716604084015264ffffffffff8616606084015284608084015282810360a0840152613d608185613b3c565b7fffff0000000000000000000000000000000000000000000000000000000000008416815260007f3a0000000000000000000000000000000000000000000000000000000000000080600284015284516140548160038601602089016139e6565b8084019050816003820152845191506140748260048301602088016139e6565b0160040195945050505050565b6040815260006140946040830185613b3c565b90506001600160a01b03831660208301529392505050565b600082516140be8184602087016139e6565b9190910192915050565b600084516140da8184602089016139e6565b60609490941b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000169190930190815260148101919091526034019291505056fea26469706673582212200cb76c178be32ea6d894242431dd54468ffa01cd6d42b48f2cbc4171b37eb77464736f6c63430008180033","sourceMap":"412:4148:216:-:0;;;;;;;;;;;;;;;;;;;","linkReferences":{"src/libraries/LibChunks.sol":{"LibChunks":[{"start":3486,"length":20},{"start":3673,"length":20}]}}},"deployedBytecode":{"object":"0x608060405234801561001057600080fd5b50600436106100885760003560e01c806369e10c7b1161005b57806369e10c7b146100fb578063911c37ae1461011b578063953717d114610130578063e1af802c1461014357600080fd5b806301ffc9a71461008d578063119df25f146100b55780633fbf0c5a146100d557806345ec9354146100e8575b600080fd5b6100a061009b3660046135b9565b61014b565b60405190151581526020015b60405180910390f35b6100bd6101e4565b6040516001600160a01b0390911681526020016100ac565b6100a06100e336600461360d565b6101f3565b604051601f1936013581526020016100ac565b61010e610109366004613649565b610236565b6040516100ac91906136b8565b61012e6101293660046136cb565b610249565b005b61012e61013e36600461360d565b610365565b6100bd6105a2565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee1270000000000000000000000000000000000000000000000000000000014806101de57507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b60006101ee6105ac565b905090565b6000806000610201866105de565b915091508461ffff168261ffff1614801561022357508361ffff168161ffff16145b1561022d57600192505b50509392505050565b6060610242838361068f565b9392505050565b60006102548261074e565b9050806001600160a01b03166102686101e4565b6001600160a01b0316146102e85760405162461bcd60e51b8152602060048201526024808201527f4f6e6c7920746865206f776e65722063616e20737061776e206120636861726160448201527f637465720000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6102f1826107eb565b1561033e5760405162461bcd60e51b815260206004820152601960248201527f43686172616374657220616c726561647920737061776e65640000000000000060448201526064016102df565b61034a82600080610890565b610355826001610958565b61036160008084610a16565b5050565b60006103708461074e565b9050806001600160a01b03166103846101e4565b6001600160a01b0316146104005760405162461bcd60e51b815260206004820152602360248201527f4f6e6c7920746865206f776e65722063616e206d6f766520612063686172616360448201527f746572000000000000000000000000000000000000000000000000000000000060648201526084016102df565b610409846107eb565b6104555760405162461bcd60e51b815260206004820152601560248201527f436861726163746572206e6f7420737061776e6564000000000000000000000060448201526064016102df565b600080610461866105de565b91509150600080610470610adc565b915091508061ffff168761ffff16106104cb5760405162461bcd60e51b815260206004820152600f60248201527f58206f7574206f6620626f756e6473000000000000000000000000000000000060448201526064016102df565b8161ffff168661ffff16106105225760405162461bcd60e51b815260206004820152600f60248201527f59206f7574206f6620626f756e6473000000000000000000000000000000000060448201526064016102df565b61052e84848989610b59565b61ffff166001146105815760405162461bcd60e51b815260206004820152601e60248201527f43616e206f6e6c79206d6f766520312074696c6520617420612074696d65000060448201526064016102df565b61058e8885858a8a610bc7565b6105988787610cc3565b5050505050505050565b60006101ee610fc0565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c806105db5750335b90565b60408051600180825281830190925260009182918291602080830190803683370190505090508381600081518110610618576106186136fa565b6020908102919091010152600080806106717f74625544000000000000000000000000506f736974696f6e0000000000000000857e04020002020000000000000000000000000000000000000000000000000000610fca565b92509250925061068283838361109a565b9550955050505050915091565b604080516002808252606080830184529260009291906020830190803683370190505090508361ffff1660001b816000815181106106cf576106cf6136fa565b6020026020010181815250508261ffff1660001b816001815181106106f6576106f66136fa565b6020908102919091010152600061072e7f74625544000000000000000000000000456e7469746965734174506f7369746983836110bd565b90506107456107408260008451611184565b611212565b95945050505050565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110610787576107876136fa565b602090810291909101015260006107e07f74625544000000000000000000000000436861726163746572730000000000008360017e55040020142001000000000000000000000000000000000000000000000000611223565b60601c949350505050565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110610824576108246136fa565b6020908102919091010152600061087c7f74625544000000000000000000000000537061776e656400000000000000000083837e01010001000000000000000000000000000000000000000000000000000000611223565b90506108888160f81c90565b949350505050565b6040805160f084811b7fffff0000000000000000000000000000000000000000000000000000000000009081166020808501919091529185901b1660228301528251600481840301815260016024840181815260648501909552909360009360609385939160440190803683370190505090508681600081518110610917576109176136fa565b602090810291909101015261094f7f74625544000000000000000000000000506f736974696f6e0000000000000000828686866112e0565b50505050505050565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061098e5761098e6136fa565b602002602001018181525050610a117f74625544000000000000000000000000537061776e656400000000000000000060001b826000856040516020016109dc91151560f81b815260010190565b60408051601f198184030181529190527e01010001000000000000000000000000000000000000000000000000000000611395565b505050565b6040805160028082526060820183526000926020830190803683370190505090508361ffff1660001b81600081518110610a5257610a526136fa565b6020026020010181815250508261ffff1660001b81600181518110610a7957610a796136fa565b602002602001018181525050610ad67f74625544000000000000000000000000456e7469746965734174506f7369746960001b82600085604051602001610ac291815260200190565b60405160208183030381529060405261140b565b50505050565b60408051600080825260208201909252819060008080610b3c7f746255440000000000000000000000004d6170436f6e66696700000000000000857e04020002020000000000000000000000000000000000000000000000000000610fca565b925092509250610b4d83838361109a565b95509550505050509091565b6000808361ffff168661ffff1611610b7a57610b758685613726565b610b84565b610b848487613726565b905060008361ffff168661ffff1611610ba657610ba18685613726565b610bb0565b610bb08487613726565b9050610bbc8183613748565b979650505050505050565b6000610bd38585610236565b90506000805b8251811015610c5f5787838281518110610bf557610bf56136fa565b602002602001015103610c4d576001915060008360018551610c179190613763565b81518110610c2757610c276136fa565b60200260200101519050610c3d888884846114bd565b610c478888611588565b50610c5f565b80610c5781613776565b915050610bd9565b5080610cad5760405162461bcd60e51b815260206004820152601f60248201527f456e7469747920776173206e6f74206174207468617420706f736974696f6e0060448201526064016102df565b610cb8878585610890565b61094f848489610a16565b6000610cda6000808561ffff168561ffff16611628565b61ffff16905080600003610ced57505050565b6000610cf882611646565b90506000815111610d715760405162461bcd60e51b815260206004820152602760248201527f4e6f206d6f6e737465727320617661696c61626c6520666f722074686973206460448201527f697374616e63650000000000000000000000000000000000000000000000000060648201526084016102df565b606046617a6903610e0b5773__$227e4555c1f608352b26068e438454dd8b$__63bc3a86cf610da1600842613874565b6040518263ffffffff1660e01b8152600401610dbf91815260200190565b600060405180830381865af4158015610ddc573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610e0491908101906138b4565b9050610e9e565b6040517fbc3a86cf00000000000000000000000000000000000000000000000000000000815244600482015273__$227e4555c1f608352b26068e438454dd8b$__9063bc3a86cf90602401600060405180830381865af4158015610e73573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610e9b91908101906138b4565b90505b60005b60068260018451610eb29190613763565b81518110610ec257610ec26136fa565b6020026020010151610ed49190613986565b63ffffffff16811015610fb857610faf838451848481518110610ef957610ef96136fa565b602002602001015163ffffffff16610f1191906139a9565b81518110610f2157610f216136fa565b60200260200101518787604051602401610f529392919092835261ffff918216602084015216604082015260600190565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f15bc4248000000000000000000000000000000000000000000000000000000001790526116cd565b50600101610ea1565b505050505050565b60006101ee61177b565b6060600060606000610fda61177b565b9050306001600160a01b0382160361100357610ff78787876117ba565b93509350935050611091565b6040517f419b58fd0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063419b58fd9061104c908a908a908a906004016139bd565b600060405180830381865afa158015611069573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ff79190810190613a6e565b93509350939050565b60208301516022840151600091829160f091821c911c5b90969095509350505050565b606060006110c961177b565b9050306001600160a01b038216036110ee576110e68585856118c2565b915050610242565b6040517f1e7889770000000000000000000000000000000000000000000000000000000081526001600160a01b03821690631e7889779061113790889088908890600401613adb565b600060405180830381865afa158015611154573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526110e69190810190613b07565b509392505050565b6000818311806111945750835182115b156111d1578383836040517f23230fa30000000000000000000000000000000000000000000000000000000081526004016102df93929190613b68565b602084016111df8482613b8d565b905060006111ed8585613763565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b6060600061024283602060006118fc565b60008061122e61177b565b9050306001600160a01b038216036112545761124c86868686611977565b915050610888565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d599061129f908990899089908990600401613ba0565b602060405180830381865afa1580156112bc573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061124c9190613bcf565b60006112ea61177b565b9050306001600160a01b0382160361130e5761130986868686866119a4565b610fb8565b6040517f298314fb0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063298314fb9061135b9089908990899089908990600401613be8565b600060405180830381600087803b15801561137557600080fd5b505af1158015611389573d6000803e3d6000fd5b50505050505050505050565b600061139f61177b565b9050306001600160a01b038216036113be5761130986868686866119ba565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae09061135b9089908990899089908990600401613c2d565b600061141561177b565b9050306001600160a01b0382160361143857611433858585856119cf565b6114b6565b6040517f150f32620000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063150f326290611483908890889088908890600401613c74565b600060405180830381600087803b15801561149d57600080fd5b505af11580156114b1573d6000803e3d6000fd5b505050505b5050505050565b6040805160028082526060820183526000926020830190803683370190505090508461ffff1660001b816000815181106114f9576114f96136fa565b6020026020010181815250508361ffff1660001b81600181518110611520576115206136fa565b60200260200101818152505060008260405160200161154191815260200190565b6040516020818303038152906040529050610fb87f74625544000000000000000000000000456e7469746965734174506f7369746960001b83600087602002855186611a0a565b6040805160028082526060820183526000926020830190803683370190505090508261ffff1660001b816000815181106115c4576115c46136fa565b6020026020010181815250508161ffff1660001b816001815181106115eb576115eb6136fa565b602002602001018181525050610a117f74625544000000000000000000000000456e7469746965734174506f7369746960001b8260006020611ac3565b60006107456116378685611b36565b6116418685611b36565b611b58565b60408051600180825281830190925260609160009190602080830190803683370190505090508260001b81600081518110611683576116836136fa565b602090810291909101015260006116bb7f746255440000000000000000000000004d6f627342794c6576656c000000000083836110bd565b90506108886107408260008451611184565b60606000806116e36116de85613ca8565b611b6f565b91509150816000801b03611749576040517ffdde54e20000000000000000000000000000000000000000000000000000000081527fffffffff000000000000000000000000000000000000000000000000000000006000351660048201526024016102df565b6020840180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16821790526108888285611c32565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b0316806117b5573391505090565b919050565b60606000606060006117cb85611d0d565b90506117d8878783611d30565b935060006117e586611d69565b905080156118b7576117f78888611da6565b935066ffffffffffffff841667ffffffffffffffff81111561181b5761181b6136e4565b6040519080825280601f01601f191660200182016040528015611845576020820181803683370190505b5092506020830160005b828160ff1610156118b45760006118678b8b84611db9565b90506000611884888460ff166028026038011c64ffffffffff1690565b90506118938260008387611e39565b61189d8185613b8d565b9350505080806118ac90613cf8565b91505061184f565b50505b505093509350939050565b60606108886118d2858585611db9565b60006118f7856118e28989611da6565b9060ff166028026038011c64ffffffffff1690565b611f05565b6060600061190a8560801c90565b90506fffffffffffffffffffffffffffffffff8516600085828161193057611930613970565b04905060405193506020840160208202810160405281855260005b8281101561196b578451871c82529387019360209091019060010161194b565b50505050509392505050565b60006107456119868686611f28565b60ff858116601b0360080285901c1661199f8587611f7e565b611faf565b6114b685858585856119b58b612000565b612085565b6114b685856119c98487611f7e565b856123be565b60006119db8585611da6565b905060006119f8828560ff166028026038011c64ffffffffff1690565b9050610fb88686868460008888612659565b6000611a1461177b565b9050306001600160a01b03821603611a3957611a34878787878787612a93565b61094f565b6040517fc0a2895a0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063c0a2895a90611a88908a908a908a908a908a908a90600401613d17565b600060405180830381600087803b158015611aa257600080fd5b505af1158015611ab6573d6000803e3d6000fd5b5050505050505050505050565b6000611acd61177b565b9050306001600160a01b03821603611aeb5761143385858585612aab565b6040517fd9c03a040000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063d9c03a0490611483908890889088908890600401613ba0565b6000818311611b4e57611b498383613763565b610242565b6102428284613763565b600081831015611b685781610242565b5090919050565b6040805160018082528183019092526000918291829160208083019080368337019050509050837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681600081518110611bc857611bc86136fa565b602090810291909101015260008080611c217f7462776f726c6400000000000000000046756e6374696f6e53656c6563746f72857e24020020040000000000000000000000000000000000000000000000000000610fca565b925092509250610682838383612b04565b60606000611c3e610fc0565b90506001600160a01b0381163003611c7f576000611c66611c5d6105ac565b60008787612b10565b9350905080611c7857611c7883612c4b565b50506101de565b6040517f3ae7af080000000000000000000000000000000000000000000000000000000081526001600160a01b03821690633ae7af0890611cc69087908790600401613d6d565b6000604051808303816000875af1158015611ce5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526108889190810190613b07565b60006008611d1d60026020613763565b611d279190613d86565b9190911c919050565b606081600003611d4f5750604080516020810190915260008152610242565b6000611d5b8585611f28565b905061074581600085611f05565b60006008600180611d7c60026020613763565b611d869190613763565b611d909190613763565b611d9a9190613d86565b8260ff911c1692915050565b6000610242611db58484612c53565b5490565b60008383604051602001611dce929190613d9d565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b8215611ec05760208310611e6357602083048401935060208381611e5f57611e5f613970565b0692505b8215611ec0576020839003600081841015611e865750600019600884021c611e90565b50600019600882021c5b8554600886021b818451168219821617845250818411611eb1575050610ad6565b50600194909401939182900391015b5b60208210611ee25783548152600190930192601f1990910190602001611ec1565b8115610ad6576000600019600884021c8251865482191691161782525050505050565b60405160208101601f19603f848401011660405282825261117c85858584611e39565b60008282604051602001611f3d929190613d9d565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff1681101561117c57611fa560ff601b83900360080287901c1683613b8d565b9150600101611f83565b600060208210611fd557602082048401935060208281611fd157611fd1613970565b0691505b508254600882021b60208290038084111561117c576001850154600882021c82179150509392505050565b60007f8b9d8c8b908d9affffffffffffffffffab9e9d939a8d00000000000000000000820161204f57507e60030220202000000000000000000000000000000000000000000000000000919050565b6101de61207c7f746273746f72650000000000000000005461626c65730000000000000000000084612ca9565b60206000611faf565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff000000000000000000000000000000000000000000000000000000000000160361211157857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9868686866040516121049493929190613dd9565b60405180910390a2610fb8565b600061211c87612cc5565b905060005b81518110156121f557600082828151811061213e5761213e6136fa565b6020026020010151905061216a6001826affffffffffffffffffffff1916612d4e90919063ffffffff16565b156121ec576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c906121b9908c908c908c908c908c908c90600401613e18565b600060405180830381600087803b1580156121d357600080fd5b505af11580156121e7573d6000803e3d6000fd5b505050505b50600101612121565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a98787878760405161222c9493929190613dd9565b60405180910390a260006122408888611f28565b90506000602087019050612258826000895184612d6c565b600061226385611d69565b11156122e75760006122758a8a612c53565b878155905060208601915060008060005b61228f88611d69565b8160ff1610156122e2576122a48d8d83611db9565b92506122bf8a8260ff166028026038011c64ffffffffff1690565b91506122ce8360008488612d6c565b6122d88286613b8d565b9450600101612286565b505050505b60005b8351811015611389576000848281518110612307576123076136fa565b602002602001015190506123336002826affffffffffffffffffffff1916612d4e90919063ffffffff16565b156123b5576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90612382908e908e908e908e908e908e90600401613e18565b600060405180830381600087803b15801561239c57600080fd5b505af11580156123b0573d6000803e3d6000fd5b505050505b506001016122ea565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff000000000000000000000000000000000000000000000000000000000000160361244857837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be84848460405161243b93929190613e71565b60405180910390a2610ad6565b60006124548585611f28565b9050600061246186612cc5565b905060005b8151811015612536576000828281518110612483576124836136fa565b602002602001015190506124af6004826affffffffffffffffffffff1916612d4e90919063ffffffff16565b1561252d576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d906124fa908b908b908b908b90600401613eae565b600060405180830381600087803b15801561251457600080fd5b505af1158015612528573d6000803e3d6000fd5b505050505b50600101612466565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be86868660405161256b93929190613e71565b60405180910390a2612586828565ffffffffffff1685612e2b565b60005b815181101561094f5760008282815181106125a6576125a66136fa565b602002602001015190506125d26008826affffffffffffffffffffff1916612d4e90919063ffffffff16565b15612650576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba87219061261d908b908b908b908b90600401613eae565b600060405180830381600087803b15801561263757600080fd5b505af115801561264b573d6000803e3d6000fd5b505050505b50600101612589565b7f7462000000000000000000000000000000000000000000000000000000000000877fffff0000000000000000000000000000000000000000000000000000000000001614612719577f746200000000000000000000000000000000000000000000000000000000000087886040516020016126d791815260200190565b60408051601f19818403018152908290527f31b466830000000000000000000000000000000000000000000000000000000082526102df939291600401613ee7565b6000612734828760ff166028026038011c64ffffffffff1690565b9050600083518564ffffffffff168361274d9190613763565b6127579190613b8d565b905080821415801561277957508161276f8688613f28565b64ffffffffff1614155b156127c9576040517fa65010b400000000000000000000000000000000000000000000000000000000815264ffffffffff80881660048301528087166024830152831660448201526064016102df565b818664ffffffffff16111561281a576040517f7e8578d30000000000000000000000000000000000000000000000000000000081526004810183905264ffffffffff871660248201526044016102df565b6000612827848984612e41565b905060006128348b612cc5565b905060005b81518110156128ff576000828281518110612856576128566136fa565b602002602001015190506128826010826affffffffffffffffffffff1916612d4e90919063ffffffff16565b156128f657606081901c6001600160a01b03166355eb5a288e8e8e8e8e8d8f6040518863ffffffff1660e01b81526004016128c39796959493929190613f46565b600060405180830381600087803b1580156128dd57600080fd5b505af11580156128f1573d6000803e3d6000fd5b505050505b50600101612839565b5064ffffffffff881660005b8a60ff168160ff16101561293e57612932878260ff166028026038011c64ffffffffff1690565b9091019060010161290b565b508b7ffe158a7adba34e256807c8a149028d3162918713c3838afc643ce9f96716ebfd8c8c848c888d60405161297996959493929190613fa4565b60405180910390a25082841461299a5760006129958c8c612c53565b839055505b60006129a78c8c8c611db9565b90506129bb818a64ffffffffff1689612e2b565b5060005b8151811015612a855760008282815181106129dc576129dc6136fa565b60200260200101519050612a086020826affffffffffffffffffffff1916612d4e90919063ffffffff16565b15612a7c57606081901c6001600160a01b031663635845338e8e8e8e8e8a8f6040518863ffffffff1660e01b8152600401612a499796959493929190613f46565b600060405180830381600087803b158015612a6357600080fd5b505af1158015612a77573d6000803e3d6000fd5b505050505b506001016129bf565b505050505050505050505050565b610fb8868686868686612aa68d8d611da6565b612659565b6000612ab78585611da6565b90506000612ad4828560ff166028026038011c64ffffffffff1690565b9050610fb8868686612aed8764ffffffffff8716613763565b604080516000815260208101909152889088612659565b6000806110b185612f0f565b60006060600080612b2086612f24565b90925090506001600160a01b038216612b715785612b3d87612fc8565b6040517ffbf10ce60000000000000000000000000000000000000000000000000000000081526004016102df929190613d6d565b80612b8057612b808689613105565b8615612bec577dffffffffffffffffffffffffffff0000000000000000000000000000000086167f6e73000000000000000000000000000000000000000000000000000000000000176000612bd482613151565b9050612be982612be48b84613b8d565b6131e2565b50505b6000612bf88760101b90565b7fffffffffffffffffffffffffffff0000000000000000000000000000000000001614612c3057612c2b88888488613296565b612c3c565b612c3c8888848861330e565b90999098509650505050505050565b805160208201fd5b60008282604051602001612c68929190613d9d565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b6040805160208101849052908101829052600090606001611f3d565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110612cff57612cff6136fa565b60209081029190910101526000612d377f746273746f726500000000000000000053746f7265486f6f6b7300000000000083836118c2565b9050610888612d498260008451611184565b61336f565b60008160ff1682612d5f8560581c90565b1660ff1614905092915050565b8215612de65760208310612d9657602083048401935060208381612d9257612d92613970565b0692505b8215612de65760208390036000600019600885021c1990506008850281811c91508351811c9050811987541682821617875550818411612dd7575050610ad6565b50600194909401939182900391015b5b60208210612e085780518455600190930192601f1990910190602001612de7565b8115610ad6576000600019600884021c8554835182191691161785555050505050565b610a1183838351612e3c8560200190565b612d6c565b600064ffffffffff821115612e85576040517f7149a3c1000000000000000000000000000000000000000000000000000000008152600481018390526024016102df565b8366ffffffffffffff811660ff851660280260380182901c64ffffffffff16808510612eb75780850382019150612ebf565b848103820391505b5064ffffffffff6038602860ff8816020181811b197fffffffffffffffffffffffffffffffffffffffffffffffffff000000000000009490941690921792909216918416901b1790509392505050565b602081015160408201516000905b9050915091565b60408051600180825281830190925260009182918291602080830190803683370190505090508381600081518110612f5e57612f5e6136fa565b602090810291909101015260008080612fb77f7462776f726c6400000000000000000053797374656d73000000000000000000857e150200140100000000000000000000000000000000000000000000000000006117ba565b925092509250610682838383613380565b606081601081901b6000612fdb8361338c565b9050827fffffffffffffffffffffffffffff000000000000000000000000000000000000831615613036576130317fffffffffffffffffffffffffffff00000000000000000000000000000000000084166133a3565b61306d565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b7fffffffffffffffffffffffffffffffff000000000000000000000000000000008316156130a35761309e836133a3565b6130da565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b6040516020016130ec93929190613ff3565b6040516020818303038152906040529350505050919050565b61310f8282613447565b6103615761311c82612fc8565b816040517fd787b7370000000000000000000000000000000000000000000000000000000081526004016102df929190614081565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061318a5761318a6136fa565b602090810291909101015260006108887f7462776f726c6400000000000000000042616c616e636573000000000000000083837e20010020000000000000000000000000000000000000000000000000000000611977565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110613218576132186136fa565b602002602001018181525050610a117f7462776f726c6400000000000000000042616c616e636573000000000000000060001b8260008560405160200161326191815260200190565b60408051601f198184030181529190527e200100200000000000000000000000000000000000000000000000000000006119ba565b60006060836001600160a01b031660006132b18589896134a5565b6040516132be91906140ac565b60006040518083038185875af1925050503d80600081146132fb576040519150601f19603f3d011682016040523d82523d6000602084013e613300565b606091505b509097909650945050505050565b60006060836001600160a01b03166133278488886134a5565b60405161333491906140ac565b600060405180830381855af49150503d80600081146132fb576040519150601f19603f3d011682016040523d82523d6000602084013e613300565b6060600061024283601560006118fc565b6000806110b1856134d4565b600061339a60706010613b8d565b9190911b919050565b606060005b6010811015613408577fffffffffffffffffffffffffffffffff000000000000000000000000000000008316600882021b7fff000000000000000000000000000000000000000000000000000000000000001615613408576001016133a8565b604080517fffffffffffffffffffffffffffffffff00000000000000000000000000000000851660208201528151603090910190915281815280610888565b60006134957f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617836134f0565b80610242575061024283836134f0565b60608383836040516020016134bc939291906140c8565b60405160208183030381529060405290509392505050565b6020810151603482015160609190911c9060009060f81c612f1d565b604080516002808252606082018352600092839291906020830190803683370190505090508381600081518110613529576135296136fa565b602002602001018181525050826001600160a01b031660001b81600181518110613555576135556136fa565b602090810291909101015260006135ad7f7462776f726c640000000000000000005265736f75726365416363657373000083837e01010001000000000000000000000000000000000000000000000000000000611977565b90506107458160f81c90565b6000602082840312156135cb57600080fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461024257600080fd5b803561ffff811681146117b557600080fd5b60008060006060848603121561362257600080fd5b83359250613632602085016135fb565b9150613640604085016135fb565b90509250925092565b6000806040838503121561365c57600080fd5b613665836135fb565b9150613673602084016135fb565b90509250929050565b60008151808452602080850194506020840160005b838110156136ad57815187529582019590820190600101613691565b509495945050505050565b602081526000610242602083018461367c565b6000602082840312156136dd57600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b61ffff82811682821603908082111561374157613741613710565b5092915050565b61ffff81811683821601908082111561374157613741613710565b818103818111156101de576101de613710565b6000600019820361378957613789613710565b5060010190565b600181815b808511156137cb5781600019048211156137b1576137b1613710565b808516156137be57918102915b93841c9390800290613795565b509250929050565b6000826137e2575060016101de565b816137ef575060006101de565b8160018114613805576002811461380f5761382b565b60019150506101de565b60ff84111561382057613820613710565b50506001821b6101de565b5060208310610133831016604e8410600b841016171561384e575081810a6101de565b6138588383613790565b806000190482111561386c5761386c613710565b029392505050565b600061024260ff8416836137d3565b604051601f8201601f1916810167ffffffffffffffff811182821017156138ac576138ac6136e4565b604052919050565b600060208083850312156138c757600080fd5b825167ffffffffffffffff808211156138df57600080fd5b818501915085601f8301126138f357600080fd5b815181811115613905576139056136e4565b8060051b9150613916848301613883565b818152918301840191848101908884111561393057600080fd5b938501935b83851015613964578451925063ffffffff831683146139545760008081fd5b8282529385019390850190613935565b98975050505050505050565b634e487b7160e01b600052601260045260246000fd5b600063ffffffff8084168061399d5761399d613970565b92169190910692915050565b6000826139b8576139b8613970565b500690565b8381526060602082015260006139d6606083018561367c565b9050826040830152949350505050565b60005b83811015613a015781810151838201526020016139e9565b50506000910152565b600082601f830112613a1b57600080fd5b815167ffffffffffffffff811115613a3557613a356136e4565b613a486020601f19601f84011601613883565b818152846020838601011115613a5d57600080fd5b6108888260208301602087016139e6565b600080600060608486031215613a8357600080fd5b835167ffffffffffffffff80821115613a9b57600080fd5b613aa787838801613a0a565b9450602086015193506040860151915080821115613ac457600080fd5b50613ad186828701613a0a565b9150509250925092565b838152606060208201526000613af4606083018561367c565b905060ff83166040830152949350505050565b600060208284031215613b1957600080fd5b815167ffffffffffffffff811115613b3057600080fd5b61088884828501613a0a565b60008151808452613b548160208601602086016139e6565b601f01601f19169290920160200192915050565b606081526000613b7b6060830186613b3c565b60208301949094525060400152919050565b808201808211156101de576101de613710565b848152608060208201526000613bb9608083018661367c565b60ff949094166040830152506060015292915050565b600060208284031215613be157600080fd5b5051919050565b85815260a060208201526000613c0160a083018761367c565b8281036040840152613c138187613b3c565b905084606084015282810360808401526139648185613b3c565b85815260a060208201526000613c4660a083018761367c565b60ff861660408401528281036060840152613c618186613b3c565b9150508260808301529695505050505050565b848152608060208201526000613c8d608083018661367c565b60ff851660408401528281036060840152610bbc8185613b3c565b6000815160208301517fffffffff0000000000000000000000000000000000000000000000000000000080821693506004831015613cf05780818460040360031b1b83161693505b505050919050565b600060ff821660ff8103613d0e57613d0e613710565b60010192915050565b86815260c060208201526000613d3060c083018861367c565b60ff8716604084015264ffffffffff86811660608501528516608084015282810360a0840152613d608185613b3c565b9998505050505050505050565b8281526040602082015260006108886040830184613b3c565b80820281158282048414176101de576101de613710565b8281526000602080830184516020860160005b82811015613dcc57815184529284019290840190600101613db0565b5091979650505050505050565b608081526000613dec608083018761367c565b8281036020840152613dfe8187613b3c565b90508460408401528281036060840152610bbc8185613b3c565b86815260c060208201526000613e3160c083018861367c565b8281036040840152613e438188613b3c565b90508560608401528281036080840152613e5d8186613b3c565b9150508260a0830152979650505050505050565b606081526000613e84606083018661367c565b65ffffffffffff851660208401528281036040840152613ea48185613b3c565b9695505050505050565b848152608060208201526000613ec7608083018661367c565b65ffffffffffff851660408401528281036060840152610bbc8185613b3c565b7fffff000000000000000000000000000000000000000000000000000000000000841681528260208201526060604082015260006107456060830184613b3c565b64ffffffffff81811683821601908082111561374157613741613710565b87815260e060208201526000613f5f60e083018961367c565b60ff8816604084015264ffffffffff87811660608501528616608084015260a0830185905282810360c0840152613f968185613b3c565b9a9950505050505050505050565b60c081526000613fb760c083018961367c565b60ff8816602084015265ffffffffffff8716604084015264ffffffffff8616606084015284608084015282810360a0840152613d608185613b3c565b7fffff0000000000000000000000000000000000000000000000000000000000008416815260007f3a0000000000000000000000000000000000000000000000000000000000000080600284015284516140548160038601602089016139e6565b8084019050816003820152845191506140748260048301602088016139e6565b0160040195945050505050565b6040815260006140946040830185613b3c565b90506001600160a01b03831660208301529392505050565b600082516140be8184602087016139e6565b9190910192915050565b600084516140da8184602089016139e6565b60609490941b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000169190930190815260148101919091526034019291505056fea26469706673582212200cb76c178be32ea6d894242431dd54468ffa01cd6d42b48f2cbc4171b37eb77464736f6c63430008180033","sourceMap":"412:4148:216:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2331:198:123;;;;;;:::i;:::-;;:::i;:::-;;;516:14:229;;509:22;491:41;;479:2;464:18;2331:198:123;;;;;;;;1262:113;;;:::i;:::-;;;-1:-1:-1;;;;;707:55:229;;;689:74;;677:2;662:18;1262:113:123;543:226:229;1755:239:216;;;;;;:::i;:::-;;:::i;1616:110:123:-;;;-1:-1:-1;;3800:14:123;3796:25;3783:39;1413:25:229;;1401:2;1386:18;1616:110:123;1267:177:229;1580:169:216;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;1174:400::-;;;;;;:::i;:::-;;:::i;:::-;;481:687;;;;;;:::i;:::-;;:::i;1942:98:123:-;;;:::i;2331:198::-;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;1755:239:216:-;1836:18;1867:8;1877;1889:22;1902:8;1889:12;:22::i;:::-;1866:45;;;;1930:1;1925:6;;:1;:6;;;:16;;;;;1940:1;1935:6;;:1;:6;;;1925:16;1921:67;;;1973:4;1957:20;;1921:67;1856:138;;1755:239;;;;;:::o;1580:169::-;1652:35;1706:36;1737:1;1740;1706:30;:36::i;:::-;1699:43;1580:169;-1:-1:-1;;;1580:169:216:o;1174:400::-;1224:13;1240:29;1260:8;1240:19;:29::i;:::-;1224:45;;1303:5;-1:-1:-1;;;;;1287:21:216;:12;:10;:12::i;:::-;-1:-1:-1;;;;;1287:21:216;;1279:70;;;;-1:-1:-1;;;1279:70:216;;2807:2:229;1279:70:216;;;2789:21:229;2846:2;2826:18;;;2819:30;2885:34;2865:18;;;2858:62;2956:6;2936:18;;;2929:34;2980:19;;1279:70:216;;;;;;;;;1369:28;1388:8;1369:18;:28::i;:::-;1368:29;1360:67;;;;-1:-1:-1;;;1360:67:216;;3212:2:229;1360:67:216;;;3194:21:229;3251:2;3231:18;;;3224:30;3290:27;3270:18;;;3263:55;3335:18;;1360:67:216;3010:349:229;1360:67:216;1438:28;1451:8;1461:1;1464;1438:12;:28::i;:::-;1476:34;1495:8;1505:4;1476:18;:34::i;:::-;1520:47;1552:1;1555;1558:8;1520:31;:47::i;:::-;1214:360;1174:400;:::o;481:687::-;550:13;566:29;586:8;566:19;:29::i;:::-;550:45;;629:5;-1:-1:-1;;;;;613:21:216;:12;:10;:12::i;:::-;-1:-1:-1;;;;;613:21:216;;605:69;;;;-1:-1:-1;;;605:69:216;;3566:2:229;605:69:216;;;3548:21:229;3605:2;3585:18;;;3578:30;3644:34;3624:18;;;3617:62;3715:5;3695:18;;;3688:33;3738:19;;605:69:216;3364:399:229;605:69:216;693:28;712:8;693:18;:28::i;:::-;685:62;;;;-1:-1:-1;;;685:62:216;;3970:2:229;685:62:216;;;3952:21:229;4009:2;3989:18;;;3982:30;4048:23;4028:18;;;4021:51;4089:18;;685:62:216;3768:345:229;685:62:216;759:15;776;795:22;808:8;795:12;:22::i;:::-;758:59;;;;828:13;843:12;859:15;:13;:15::i;:::-;827:47;;;;897:5;893:9;;:1;:9;;;885:37;;;;-1:-1:-1;;;885:37:216;;4320:2:229;885:37:216;;;4302:21:229;4359:2;4339:18;;;4332:30;4398:17;4378:18;;;4371:45;4433:18;;885:37:216;4118:339:229;885:37:216;944:6;940:10;;:1;:10;;;932:38;;;;-1:-1:-1;;;932:38:216;;4664:2:229;932:38:216;;;4646:21:229;4703:2;4683:18;;;4676:30;4742:17;4722:18;;;4715:45;4777:18;;932:38:216;4462:339:229;932:38:216;988:43;1006:8;1016;1026:1;1029;988:17;:43::i;:::-;:48;;1035:1;988:48;980:91;;;;-1:-1:-1;;;980:91:216;;5008:2:229;980:91:216;;;4990:21:229;5047:2;5027:18;;;5020:30;5086:32;5066:18;;;5059:60;5136:18;;980:91:216;4806:354:229;980:91:216;1081:47;1093:8;1103;1113;1123:1;1126;1081:11;:47::i;:::-;1138:23;1156:1;1159;1138:17;:23::i;:::-;540:628;;;;;481:687;;;:::o;1942:98:123:-;1981:7;2003:32;:30;:32::i;2992:383::-;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;4891:393:190:-;4998:16;;;5012:1;4998:16;;;;;;;;;4943:8;;;;;;4998:16;;;;;;;;;;;-1:-1:-1;4998:16:190;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;2642:387:181:-;2768:16;;;2782:1;2768:16;;;2706:25;2768:16;;;;;2706:25;2739:26;;2768:16;2782:1;2768:16;;;;;;;;;;-1:-1:-1;2768:16:181;2739:45;;2821:1;2813:10;;2805:19;;2790:9;2800:1;2790:12;;;;;;;;:::i;:::-;;;;;;:34;;;;;2861:1;2853:10;;2845:19;;2830:9;2840:1;2830:12;;;;;;;;:::i;:::-;;;;;;;;;;:34;2871:18;2892:51;1083:66;2930:9;2871:18;2892:27;:51::i;:::-;2871:72;;2957:66;:44;2978:5;2985:1;2988:5;:12;2957:20;:44::i;:::-;:64;:66::i;:::-;2949:75;2642:387;-1:-1:-1;;;;;2642:387:181:o;4071:290:178:-;4183:16;;;4197:1;4183:16;;;;;;;;;4133:13;;;;4183:16;;;;;;;;;;;;-1:-1:-1;4183:16:178;4154:45;;4220:11;4205:9;4215:1;4205:12;;;;;;;;:::i;:::-;;;;;;;;;;:26;4238:13;4254:64;1163:66;4291:9;4302:1;1292:66;4254:26;:64::i;:::-;4332:23;;;4071:290;-1:-1:-1;;;;4071:290:178:o;2592:291:192:-;2702:16;;;2716:1;2702:16;;;;;;;;;2653:12;;;;2702:16;;;;;;;;;;;;-1:-1:-1;2702:16:192;2673:45;;2739:8;2724:9;2734:1;2724:12;;;;;;;;:::i;:::-;;;;;;;;;;:23;2754:13;2770:64;1063:66;2807:9;2754:13;1192:66;2770:26;:64::i;:::-;2754:80;;2848:29;2869:5;2856:20;;7000:5;6914:97;2848:29;2840:38;2592:291;-1:-1:-1;;;;2592:291:192:o;5796:354:190:-;7947:22;;;16149:3:229;16145:16;;;16054:66;16141:25;;;7947:22:190;;;;16129:38:229;;;;16200:16;;;;16196:25;16183:11;;;16176:46;7947:22:190;;;;;;;;;6023:1;16238:11:229;;;6009:16:190;;;;;;;;;7947:22;;-1:-1:-1;;5948:25:190;;-1:-1:-1;;6023:1:190;6009:16;;;7947:22;6009:16;;;;;-1:-1:-1;6009:16:190;5980:45;;6046:6;6031:9;6041:1;6031:12;;;;;;;;:::i;:::-;;;;;;;;;;:21;6059:86;1065:66;6091:9;6102:11;6115:15;6132:12;6059:21;:86::i;:::-;5854:296;;;;5796:354;;;:::o;3908:246:192:-;4004:16;;;4018:1;4004:16;;;;;;;;;3975:26;;4004:16;;;;;;;;;;;-1:-1:-1;4004:16:192;3975:45;;4041:8;4026:9;4036:1;4026:12;;;;;;;;:::i;:::-;;;;;;:23;;;;;4056:93;1063:66;1047:83;;4093:9;4104:1;4125:7;4107:27;;;;;;5694:14:229;5687:22;5682:3;5678:32;5666:45;;5736:1;5727:11;;5543:201;4107:27:192;;;;-1:-1:-1;;4107:27:192;;;;;;;;;1192:66;4056:26;:93::i;:::-;3969:185;3908:246;;:::o;9497:296:181:-;9601:16;;;9615:1;9601:16;;;;;;;;9572:26;;9601:16;;;;;;;;;;-1:-1:-1;9601:16:181;9572:45;;9654:1;9646:10;;9638:19;;9623:9;9633:1;9623:12;;;;;;;;:::i;:::-;;;;;;:34;;;;;9694:1;9686:10;;9678:19;;9663:9;9673:1;9663:12;;;;;;;;:::i;:::-;;;;;;:34;;;;;9704:84;1083:66;1067:83;;9745:9;9756:1;9777:8;9759:28;;;;;;5878:19:229;;5922:2;5913:12;;5749:182;9759:28:181;;;;;;;;;;;;;9704:30;:84::i;:::-;9566:227;9497:296;;;:::o;4657:361:184:-;4759:16;;;4695:13;4759:16;;;;;;;;;4695:13;;4783:24;;;4870:80;1067:66;4730:45;1196:66;4870:21;:80::i;:::-;4782:168;;;;;;4963:50;4970:11;4983:15;5000:12;4963:6;:50::i;:::-;4956:57;;;;;;;;4657:361;;:::o;2939:279:216:-;3041:6;3059:13;3083:3;3075:11;;:5;:11;;;:39;;3103:11;3109:5;3103:3;:11;:::i;:::-;3075:39;;;3089:11;3097:3;3089:5;:11;:::i;:::-;3059:55;;3124:13;3148:3;3140:11;;:5;:11;;;:39;;3168:11;3174:5;3168:3;:11;:::i;:::-;3140:39;;;3154:11;3162:3;3154:5;:11;:::i;:::-;3124:55;-1:-1:-1;3196:15:216;3124:55;3196:6;:15;:::i;:::-;3189:22;2939:279;-1:-1:-1;;;;;;;2939:279:216:o;3721:837::-;3833:25;3861:41;3883:8;3893;3861:21;:41::i;:::-;3833:69;;3912:24;3951:9;3946:438;3966:8;:15;3962:1;:19;3946:438;;;4017:8;4002;4011:1;4002:11;;;;;;;;:::i;:::-;;;;;;;:23;3998:327;;4067:4;4045:26;;4089:15;4107:8;4134:1;4116:8;:15;:19;;;;:::i;:::-;4107:29;;;;;;;;:::i;:::-;;;;;;;4089:47;;4154:65;4188:8;4198;4208:1;4211:7;4154:33;:65::i;:::-;4237:50;4268:8;4278;4237:30;:50::i;:::-;4305:5;;;3998:327;4356:3;;;;:::i;:::-;;;;3946:438;;;;4401:19;4393:63;;;;-1:-1:-1;;;4393:63:216;;7009:2:229;4393:63:216;;;6991:21:229;7048:2;7028:18;;;7021:30;7087:33;7067:18;;;7060:61;7138:18;;4393:63:216;6807:355:229;4393:63:216;4466:28;4479:8;4489:1;4492;4466:12;:28::i;:::-;4504:47;4536:1;4539;4542:8;4504:31;:47::i;2000:933::-;2066:24;2101:30;2120:1;2123;2126;2101:30;;2129:1;2101:30;;:18;:30::i;:::-;2093:39;;2066:66;;2146:16;2166:1;2146:21;2142:58;;2183:7;2000:933;;:::o;2142:58::-;2210:34;2247:39;2269:16;2247:21;:39::i;:::-;2210:76;;2331:1;2304:17;:24;:28;2296:80;;;;-1:-1:-1;;;2296:80:216;;7369:2:229;2296:80:216;;;7351:21:229;7408:2;7388:18;;;7381:30;7447:34;7427:18;;;7420:62;7518:9;7498:18;;;7491:37;7545:19;;2296:80:216;7167:403:229;2296:80:216;2387:19;2471:13;2488:5;2471:22;2467:176;;2515:9;:20;2536;2555:1;2536:15;:20;:::i;:::-;2515:42;;;;;;;;;;;;;1413:25:229;;1401:2;1386:18;;1267:177;2515:42:216;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;2515:42:216;;;;;;;;;;;;:::i;:::-;2509:48;;2467:176;;;2594:38;;;;;2615:16;2594:38;;;1413:25:229;2594:9:216;;:20;;1386:18:229;;2594:38:216;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;2594:38:216;;;;;;;;;;;;:::i;:::-;2588:44;;2467:176;2658:9;2653:274;2696:1;2674:3;2691:1;2678:3;:10;:14;;;;:::i;:::-;2674:19;;;;;;;;:::i;:::-;;;;;;;:23;;;;:::i;:::-;2669:29;;:1;:29;2653:274;;;2719:197;2816:17;2851;:24;2842:3;2846:1;2842:6;;;;;;;;:::i;:::-;;;;;;;:33;;;;;;:::i;:::-;2816:61;;;;;;;;:::i;:::-;;;;;;;2879:1;2882;2754:148;;;;;;;;;11408:25:229;;;11452:6;11494:15;;;11489:2;11474:18;;11467:43;11546:15;11541:2;11526:18;;11519:43;11396:2;11381:18;;11210:358;2754:148:216;;;;-1:-1:-1;;2754:148:216;;;;;;;;;;;;;;;;;;;;2719:17;:197::i;:::-;-1:-1:-1;2700:3:216;;2653:274;;;;2056:877;;;2000:933;;:::o;4048:97:123:-;4089:7;4111:29;:27;:29::i;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;7036:160:190:-;3788:4:23;3774:27;;3768:34;3774:27;;;3768:34;7131:8:190;;;;6793:33;;;;;6839;7166:25;7157:34;;;;-1:-1:-1;7036:160:190;-1:-1:-1;;;;7036:160:190: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;18801:224::-;18748:281;18598:431;;;;;:::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;17775:457:46:-;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;6458:480::-;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;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;12345:451::-;12505:21;12529:17;:15;:17::i;:::-;12505:41;-1:-1:-1;12581:4:46;-1:-1:-1;;;;;12556:30:46;;;12552:240;;12596:78;12625:7;12634:8;12644:17;12663:10;12596:28;:78::i;:::-;12552:240;;;12695:90;;;;;-1:-1:-1;;;;;12695:40:46;;;;;:90;;12736:7;;12745:8;;12755:17;;12774:10;;12695:90;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12552:240;12499:297;12345:451;;;;:::o;12135:423:181:-;12257:16;;;12271:1;12257:16;;;;;;;;12228:26;;12257:16;;;;;;;;;;-1:-1:-1;12257:16:181;12228:45;;12310:1;12302:10;;12294:19;;12279:9;12289:1;12279:12;;;;;;;;:::i;:::-;;;;;;:34;;;;;12350:1;12342:10;;12334:19;;12319:9;12329:1;12319:12;;;;;;;;:::i;:::-;;;;;;:34;;;;;12378:21;12420:8;12402:28;;;;;;5878:19:229;;5922:2;5913:12;;5749:182;12402:28:181;;;;;;;;;;;;;12378:52;;12438:109;1083:66;1067:83;;12478:9;12489:1;12499:6;12508:2;12499:11;12520:8;:15;12538:8;12438:29;:109::i;10896:252::-;10981:16;;;10995:1;10981:16;;;;;;;;10952:26;;10981:16;;;;;;;;;;-1:-1:-1;10981:16:181;10952:45;;11034:1;11026:10;;11018:19;;11003:9;11013:1;11003:12;;;;;;;;:::i;:::-;;;;;;:34;;;;;11074:1;11066:10;;11058:19;;11043:9;11053:1;11043:12;;;;;;;;:::i;:::-;;;;;;:34;;;;;11084:59;1083:66;1067:83;;11126:9;11137:1;11140:2;11084:31;:59::i;3301:179:216:-;3400:6;3432:40;3437:16;3446:2;3450;3437:8;:16::i;:::-;3455;3464:2;3468;3455:8;:16::i;:::-;3432:4;:40::i;2600:342:187:-;2717:16;;;2731:1;2717:16;;;;;;;;;2657:23;;2688:26;;2717:16;;;;;;;;;;;;-1:-1:-1;2717:16:187;2688:45;;2770:5;2754:23;;2739:9;2749:1;2739:12;;;;;;;;:::i;:::-;;;;;;;;;;:38;2784:18;2805:51;1071:66;2843:9;2784:18;2805:27;:51::i;:::-;2784:72;;2870:66;:44;2891:5;2898:1;2901:5;:12;2870:20;:44::i;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;;;18938:98:229;18911:18;;3713:52:107;18794:248:229;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;1836:227:46:-;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;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;37180:522::-;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;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;;;3341:28;;3116:690;;;2681:1129;;;;;:::o;36171:541:45:-;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;12066:286::-;12253:94;12263:7;12272:8;12282:10;12294:14;12310:11;12323:23;12338:7;12323:14;:23::i;:::-;12253:9;:94::i;23107:355::-;23279:178;23313:7;23338:8;23368:63;23407:11;23420:10;23368:38;:63::i;:::-;23446:4;23279:16;:178::i;28764:791::-;29023:37;29063:66;29111:7;29120:8;29063:47;:66::i;:::-;29023:106;-1:-1:-1;29135:26:45;29171:49;29023:106;29202:17;7070:16:24;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;29171:49:45;29135:86;;29259:291;29313:7;29338:8;29373:17;29423:19;29464:1;29479:10;29521:22;29259:36;:291::i;8207:601:46:-;8413:21;8437:17;:15;:17::i;:::-;8413:41;-1:-1:-1;8489:4:46;-1:-1:-1;;;;;8464:30:46;;;8460:344;;8504:102;8532:7;8541:8;8551:17;8570:16;8588:11;8601:4;8504:27;:102::i;:::-;8460:344;;;8627:170;;;;;-1:-1:-1;;;;;8627:39:46;;;;;:170;;8676:7;;8693:8;;8711:17;;8738:16;;8764:11;;8785:4;;8627:170;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8407:401;8207:601;;;;;;:::o;13190:464::-;13351:21;13375:17;:15;:17::i;:::-;13351:41;-1:-1:-1;13427:4:46;-1:-1:-1;;;;;13402:30:46;;;13398:252;;13442:84;13472:7;13481:8;13491:17;13510:15;13442:29;:84::i;13398:252::-;13547:96;;;;;-1:-1:-1;;;;;13547:41:46;;;;;:96;;13589:7;;13598:8;;13608:17;;13627:15;;13547:96;;;:::i;3486:117:216:-;3549:7;3579:1;3575;:5;:21;;3591:5;3595:1;3591;:5;:::i;:::-;3575:21;;;3583:5;3587:1;3583;:5;:::i;3609:106::-;3668:7;3699:1;3694;:6;;:14;;3707:1;3694:14;;;-1:-1:-1;3703:1:216;;3609:106;-1:-1:-1;3609:106:216: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;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;5042:669::-;5458:4;5452:11;5499:4;5487:17;;-1:-1:-1;;5373:16:44;5546:26;;;5373:16;5369:32;5518:4;5511:63;5618:6;5610;5603:22;5636:51;5641:14;5657:6;5665;5673:13;5636:4;:51::i;50806:191:45:-;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;;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;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;;17013:1682;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;;44254:4001;44673:14;44652:7;:35;;;44648:161;;44743:14;44759:7;44792;44775:25;;;;;;5878:19:229;;5922:2;5913:12;;5749:182;44775:25:45;;;;-1:-1:-1;;44775:25:45;;;;;;;;;;44704:98;;;;;;;;;;:::i;44648:161::-;44815:27;44845:49;:22;44876:17;7070:16:24;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;44845:49:45;44815:79;;44900:26;44965:4;:11;44951;44929:33;;:19;:33;;;;:::i;:::-;:47;;;;:::i;:::-;44900:76;;45248:18;45225:19;:41;;:98;;;;-1:-1:-1;45304:19:45;45270:30;45289:11;45270:16;:30;:::i;:::-;:53;;;;45225:98;45221:218;;;45340:92;;;;;25497:12:229;25536:15;;;45340:92:45;;;25518:34:229;25588:15;;;25568:18;;;25561:43;25640:15;;25620:18;;;25613:43;25460:18;;45340:92:45;25291:371:229;45221:218:45;45545:19;45526:16;:38;;;45522:140;;;45581:74;;;;;;;;25840:25:229;;;25913:12;25901:25;;25881:18;;;25874:53;25813:18;;45581:74:45;25667:266:229;45522:140:45;45701:36;45740:72;:22;45774:17;45793:18;45740:33;:72::i;:::-;45701:111;;45959:22;45984:24;46000:7;45984:15;:24::i;:::-;45959:49;;46019:9;46014:486;46034:5;:12;46030:1;:16;46014:486;;;46061:9;46083:5;46089:1;46083:8;;;;;;;;:::i;:::-;;;;;;;46061:31;;46104:42;836:6:54;46104:4:45;:14;;;;;:42;;;;:::i;:::-;46100:394;;;3536:35:26;;;;-1:-1:-1;;;;;46158:55:45;;46235:7;46264:8;46303:17;46350:16;46391:11;46430:22;46470:4;46158:327;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;46100:394;-1:-1:-1;46048:3:45;;46014:486;;;-1:-1:-1;46558:32:45;;;:13;46698:107;46716:17;46712:21;;:1;:21;;;46698:107;;;46761:33;:22;46792:1;7070:16:24;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;46761:33:45;46752:42;;;;46735:3;;46698:107;;;;46930:7;46874:277;46957:8;46994:17;47035:5;47064:11;47101:21;47138:4;46874:277;;;;;;;;;;;:::i;:::-;;;;;;;;46506:652;47243:18;47220:19;:41;47216:248;;47271:31;47305:48;47335:7;47344:8;47305:29;:48::i;:::-;695:28:44;;;-1:-1:-1;47216:248:45;47521:27;47551:61;47575:7;47584:8;47594:17;47551:23;:61::i;:::-;47521:91;;47620:92;47652:19;47681:16;47620:92;;47705:4;47620:13;:92::i;:::-;47513:206;47773:9;47768:483;47788:5;:12;47784:1;:16;47768:483;;;47815:9;47837:5;47843:1;47837:8;;;;;;;;:::i;:::-;;;;;;;47815:31;;47858:41;947:6:54;47858:4:45;:14;;;;;:41;;;;:::i;:::-;47854:391;;;3536:35:26;;;;-1:-1:-1;;;;;47911:54:45;;47987:7;48016:8;48055:17;48102:16;48143:11;48182:21;48221:4;47911:325;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;47854:391;-1:-1:-1;47802:3:45;;47768:483;;;;44498:3757;;;;44254:4001;;;;;;;:::o;19594:539::-;19800:328;19854:7;19879:8;19914:17;19957:16;19994:11;20019:4;20055:66;20103:7;20112:8;20055:47;:66::i;:::-;19800:36;:328::i;30235:834::-;30495:37;30535:66;30583:7;30592:8;30535:47;:66::i;:::-;30495:106;-1:-1:-1;30607:26:45;30643:49;30495:106;30674:17;7070:16:24;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;30643:49:45;30607:86;-1:-1:-1;30731:333:45;30785:7;30810:8;30845:17;30895:37;30917:15;30895:37;;;;:::i;:::-;30991:12;;;31001:1;30991:12;;;;;;;;30961:15;;31035:22;30731:36;:333::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;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;51249:282::-;51494:30;;;;;;28153:19:229;;;28188:12;;;28181:28;;;51337:7:45;;28225:12:229;;51494:30:45;27964:279:229;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;7468:1525:24:-;7596:14;1145:16;7622:25;;7618:120;;;7664:67;;;;;;;;1413:25:229;;;1386:18;;7664:67:24;1267:177:229;7618:120:24;7802:14;6445:61;;;7070:16;;;1063;7070;975;7059:27;7017:70;;;6995:94;;8068:38;;;8064:192;;8151:19;8133:15;:37;8118:52;;;;8064:192;;;8232:15;8210:19;:37;8195:52;;;;8064:192;-1:-1:-1;8572:16:24;975;1063;8439;;;;8428:27;8564:35;;;8882:5;8719:26;8699:46;;;;8698:62;;;8862:25;;;;8892:34;;;;;8861:66;;-1:-1:-1;7468:1525:24;;;;;:::o;7963:242:133:-;3788:4:23;3774:27;;3768:34;3774:27;;;3768: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;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;1546:281:108:-;1708:29;1718:10;1730:6;1708:9;:29::i;:::-;1703:120;;1786:21;:10;:19;:21::i;:::-;1809:6;1754:62;;;;;;;;;;;;:::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;;;;;;5878:19:229;;5922:2;5913:12;;5749: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;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;40103:220:56;40169:24;40201:30;40234:32;40252:6;40260:2;40264:1;40234:17;:32::i;7829:207:139:-;7940:14;7956:17;8006:25;8019:11;8006:12;:25::i;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;;;30154:66:229;30142:79;;2092:30:124;;;30130:92:229;2092:30:124;;30238:12:229;;;;2092:30:124;;;875:21:23;;;2092:30:124;2142:39;760:164:23;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;7448:223:139:-;3788:4:23;3774:27;;3768:34;3774:27;;;3768:34;7564:35:139;;;;;;7513:14;;7631:33;;7623:42;6914:97:192;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;:::-;4257:78;;4349:29;4370:5;4357:20;;7000:5:192;6914:97;14:332:229;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:159;841:20;;901:6;890:18;;880:29;;870:57;;923:1;920;913:12;938:324;1013:6;1021;1029;1082:2;1070:9;1061:7;1057:23;1053:32;1050:52;;;1098:1;1095;1088:12;1050:52;1134:9;1121:23;1111:33;;1163:37;1196:2;1185:9;1181:18;1163:37;:::i;:::-;1153:47;;1219:37;1252:2;1241:9;1237:18;1219:37;:::i;:::-;1209:47;;938:324;;;;;:::o;1449:256::-;1515:6;1523;1576:2;1564:9;1555:7;1551:23;1547:32;1544:52;;;1592:1;1589;1582:12;1544:52;1615:28;1633:9;1615:28;:::i;:::-;1605:38;;1662:37;1695:2;1684:9;1680:18;1662:37;:::i;:::-;1652:47;;1449:256;;;;;:::o;1710:439::-;1763:3;1801:5;1795:12;1828:6;1823:3;1816:19;1854:4;1883;1878:3;1874:14;1867:21;;1922:4;1915:5;1911:16;1945:1;1955:169;1969:6;1966:1;1963:13;1955:169;;;2030:13;;2018:26;;2064:12;;;;2099:15;;;;1991:1;1984:9;1955:169;;;-1:-1:-1;2140:3:229;;1710:439;-1:-1:-1;;;;;1710:439:229:o;2154:261::-;2333:2;2322:9;2315:21;2296:4;2353:56;2405:2;2394:9;2390:18;2382:6;2353:56;:::i;2420:180::-;2479:6;2532:2;2520:9;2511:7;2507:23;2503:32;2500:52;;;2548:1;2545;2538:12;2500:52;-1:-1:-1;2571:23:229;;2420:180;-1:-1:-1;2420:180:229:o;5165:184::-;-1:-1:-1;;;5214:1:229;5207:88;5314:4;5311:1;5304:15;5338:4;5335:1;5328:15;5354:184;-1:-1:-1;;;5403:1:229;5396:88;5503:4;5500:1;5493:15;5527:4;5524:1;5517:15;5936:184;-1:-1:-1;;;5985:1:229;5978:88;6085:4;6082:1;6075:15;6109:4;6106:1;6099:15;6125:171;6193:6;6232:10;;;6220;;;6216:27;;6255:12;;;6252:38;;;6270:18;;:::i;:::-;6252:38;6125:171;;;;:::o;6301:168::-;6368:6;6394:10;;;6406;;;6390:27;;6429:11;;;6426:37;;;6443:18;;:::i;6474:128::-;6541:9;;;6562:11;;;6559:37;;;6576:18;;:::i;6607:195::-;6646:3;-1:-1:-1;;6670:5:229;6667:77;6664:103;;6747:18;;:::i;:::-;-1:-1:-1;6794:1:229;6783:13;;6607:195::o;7575:476::-;7664:1;7701:5;7664:1;7715:330;7736:7;7726:8;7723:21;7715:330;;;7855:4;-1:-1:-1;;7783:77:229;7777:4;7774:87;7771:113;;;7864:18;;:::i;:::-;7914:7;7904:8;7900:22;7897:55;;;7934:16;;;;7897:55;8013:22;;;;7973:15;;;;7715:330;;;7719:3;7575:476;;;;;:::o;8056:866::-;8105:5;8135:8;8125:80;;-1:-1:-1;8176:1:229;8190:5;;8125:80;8224:4;8214:76;;-1:-1:-1;8261:1:229;8275:5;;8214:76;8306:4;8324:1;8319:59;;;;8392:1;8387:130;;;;8299:218;;8319:59;8349:1;8340:10;;8363:5;;;8387:130;8424:3;8414:8;8411:17;8408:43;;;8431:18;;:::i;:::-;-1:-1:-1;;8487:1:229;8473:16;;8502:5;;8299:218;;8601:2;8591:8;8588:16;8582:3;8576:4;8573:13;8569:36;8563:2;8553:8;8550:16;8545:2;8539:4;8536:12;8532:35;8529:77;8526:159;;;-1:-1:-1;8638:19:229;;;8670:5;;8526:159;8717:34;8742:8;8736:4;8717:34;:::i;:::-;8847:6;-1:-1:-1;;8775:79:229;8766:7;8763:92;8760:118;;;8858:18;;:::i;:::-;8896:20;;8056:866;-1:-1:-1;;;8056:866:229:o;8927:140::-;8985:5;9014:47;9055:4;9045:8;9041:19;9035:4;9014:47;:::i;9262:334::-;9333:2;9327:9;9389:2;9379:13;;-1:-1:-1;;9375:86:229;9363:99;;9492:18;9477:34;;9513:22;;;9474:62;9471:88;;;9539:18;;:::i;:::-;9575:2;9568:22;9262:334;;-1:-1:-1;9262:334:229:o;9601:1110::-;9695:6;9726:2;9769;9757:9;9748:7;9744:23;9740:32;9737:52;;;9785:1;9782;9775:12;9737:52;9818:9;9812:16;9847:18;9888:2;9880:6;9877:14;9874:34;;;9904:1;9901;9894:12;9874:34;9942:6;9931:9;9927:22;9917:32;;9987:7;9980:4;9976:2;9972:13;9968:27;9958:55;;10009:1;10006;9999:12;9958:55;10038:2;10032:9;10060:2;10056;10053:10;10050:36;;;10066:18;;:::i;:::-;10112:2;10109:1;10105:10;10095:20;;10135:28;10159:2;10155;10151:11;10135:28;:::i;:::-;10197:15;;;10267:11;;;10263:20;;;10228:12;;;;10295:19;;;10292:39;;;10327:1;10324;10317:12;10292:39;10351:11;;;;10371:310;10387:6;10382:3;10379:15;10371:310;;;10460:3;10454:10;10441:23;;10508:10;10501:5;10497:22;10490:5;10487:33;10477:131;;10562:1;10591:2;10587;10580:14;10477:131;10621:18;;;10404:12;;;;10659;;;;10371:310;;;10700:5;9601:1110;-1:-1:-1;;;;;;;;9601:1110:229:o;10716:184::-;-1:-1:-1;;;10765:1:229;10758:88;10865:4;10862:1;10855:15;10889:4;10886:1;10879:15;10905:183;10936:1;10962:10;10999:2;10996:1;10992:10;11021:3;11011:37;;11028:18;;:::i;:::-;11066:10;;11062:20;;;;;10905:183;-1:-1:-1;;10905:183:229:o;11093:112::-;11125:1;11151;11141:35;;11156:18;;:::i;:::-;-1:-1:-1;11190:9:229;;11093:112::o;11573:468::-;11873:6;11862:9;11855:25;11916:2;11911;11900:9;11896:18;11889:30;11836:4;11936:56;11988:2;11977:9;11973:18;11965:6;11936:56;:::i;:::-;11928:64;;12028:6;12023:2;12012:9;12008:18;12001:34;11573:468;;;;;;:::o;12046:250::-;12131:1;12141:113;12155:6;12152:1;12149:13;12141:113;;;12231:11;;;12225:18;12212:11;;;12205:39;12177:2;12170:10;12141:113;;;-1:-1:-1;;12288:1:229;12270:16;;12263:27;12046:250::o;12301:568::-;12354:5;12407:3;12400:4;12392:6;12388:17;12384:27;12374:55;;12425:1;12422;12415:12;12374:55;12454:6;12448:13;12480:18;12476:2;12473:26;12470:52;;;12502:18;;:::i;:::-;12546:114;12654:4;-1:-1:-1;;12578:4:229;12574:2;12570:13;12566:86;12562:97;12546:114;:::i;:::-;12685:2;12676:7;12669:19;12731:3;12724:4;12719:2;12711:6;12707:15;12703:26;12700:35;12697:55;;;12748:1;12745;12738:12;12697:55;12761:77;12835:2;12828:4;12819:7;12815:18;12808:4;12800:6;12796:17;12761:77;:::i;12874:655::-;13016:6;13024;13032;13085:2;13073:9;13064:7;13060:23;13056:32;13053:52;;;13101:1;13098;13091:12;13053:52;13134:9;13128:16;13163:18;13204:2;13196:6;13193:14;13190:34;;;13220:1;13217;13210:12;13190:34;13243:60;13295:7;13286:6;13275:9;13271:22;13243:60;:::i;:::-;13233:70;;13343:2;13332:9;13328:18;13322:25;13312:35;;13393:2;13382:9;13378:18;13372:25;13356:41;;13422:2;13412:8;13409:16;13406:36;;;13438:1;13435;13428:12;13406:36;;13461:62;13515:7;13504:8;13493:9;13489:24;13461:62;:::i;:::-;13451:72;;;12874:655;;;;;:::o;13534:442::-;13797:6;13786:9;13779:25;13840:2;13835;13824:9;13820:18;13813:30;13760:4;13860:56;13912:2;13901:9;13897:18;13889:6;13860:56;:::i;:::-;13852:64;;13964:4;13956:6;13952:17;13947:2;13936:9;13932:18;13925:45;13534:442;;;;;;:::o;13981:335::-;14060:6;14113:2;14101:9;14092:7;14088:23;14084:32;14081:52;;;14129:1;14126;14119:12;14081:52;14162:9;14156:16;14195:18;14187:6;14184:30;14181:50;;;14227:1;14224;14217:12;14181:50;14250:60;14302:7;14293:6;14282:9;14278:22;14250:60;:::i;14321:329::-;14362:3;14400:5;14394:12;14427:6;14422:3;14415:19;14443:76;14512:6;14505:4;14500:3;14496:14;14489:4;14482:5;14478:16;14443:76;:::i;:::-;14564:2;14552:15;-1:-1:-1;;14548:88:229;14539:98;;;;14639:4;14535:109;;14321:329;-1:-1:-1;;14321:329:229:o;14655:359::-;14858:2;14847:9;14840:21;14821:4;14878:44;14918:2;14907:9;14903:18;14895:6;14878:44;:::i;:::-;14953:2;14938:18;;14931:34;;;;-1:-1:-1;14996:2:229;14981:18;14974:34;14870:52;14655:359;-1:-1:-1;14655:359:229:o;15019:125::-;15084:9;;;15105:10;;;15102:36;;;15118:18;;:::i;15149:548::-;15473:6;15462:9;15455:25;15516:3;15511:2;15500:9;15496:18;15489:31;15436:4;15537:57;15589:3;15578:9;15574:19;15566:6;15537:57;:::i;:::-;15642:4;15630:17;;;;15625:2;15610:18;;15603:45;-1:-1:-1;15679:2:229;15664:18;15657:34;15529:65;15149:548;-1:-1:-1;;15149:548:229:o;15702:184::-;15772:6;15825:2;15813:9;15804:7;15800:23;15796:32;15793:52;;;15841:1;15838;15831:12;15793:52;-1:-1:-1;15864:16:229;;15702:184;-1:-1:-1;15702:184:229:o;16260:794::-;16655:6;16644:9;16637:25;16698:3;16693:2;16682:9;16678:18;16671:31;16618:4;16725:57;16777:3;16766:9;16762:19;16754:6;16725:57;:::i;:::-;16830:9;16822:6;16818:22;16813:2;16802:9;16798:18;16791:50;16864:32;16889:6;16881;16864:32;:::i;:::-;16850:46;;16932:6;16927:2;16916:9;16912:18;16905:34;16988:9;16980:6;16976:22;16970:3;16959:9;16955:19;16948:51;17016:32;17041:6;17033;17016:32;:::i;17059:709::-;17429:6;17418:9;17411:25;17472:3;17467:2;17456:9;17452:18;17445:31;17392:4;17499:57;17551:3;17540:9;17536:19;17528:6;17499:57;:::i;:::-;17604:4;17596:6;17592:17;17587:2;17576:9;17572:18;17565:45;17658:9;17650:6;17646:22;17641:2;17630:9;17626:18;17619:50;17686:32;17711:6;17703;17686:32;:::i;:::-;17678:40;;;17755:6;17749:3;17738:9;17734:19;17727:35;17059:709;;;;;;;;:::o;17773:604::-;18082:6;18071:9;18064:25;18125:3;18120:2;18109:9;18105:18;18098:31;18045:4;18152:57;18204:3;18193:9;18189:19;18181:6;18152:57;:::i;:::-;18257:4;18249:6;18245:17;18240:2;18229:9;18225:18;18218:45;18311:9;18303:6;18299:22;18294:2;18283:9;18279:18;18272:50;18339:32;18364:6;18356;18339:32;:::i;18382:407::-;18465:5;18505;18499:12;18547:4;18540:5;18536:16;18530:23;18572:66;18664:2;18660;18656:11;18647:20;;18690:1;18682:6;18679:13;18676:107;;;18770:2;18764;18754:6;18751:1;18747:14;18744:1;18740:22;18736:31;18732:2;18728:40;18724:49;18715:58;;18676:107;;;;18382:407;;;:::o;19047:175::-;19084:3;19128:4;19121:5;19117:16;19157:4;19148:7;19145:17;19142:43;;19165:18;;:::i;:::-;19214:1;19201:15;;19047:175;-1:-1:-1;;19047:175:229:o;19227:793::-;19588:6;19577:9;19570:25;19631:3;19626:2;19615:9;19611:18;19604:31;19551:4;19658:57;19710:3;19699:9;19695:19;19687:6;19658:57;:::i;:::-;19763:4;19751:17;;19746:2;19731:18;;19724:45;19788:12;19836:15;;;19831:2;19816:18;;19809:43;19889:15;;19883:3;19868:19;;19861:44;19942:22;;;19936:3;19921:19;;19914:51;19982:32;19946:6;19999;19982:32;:::i;:::-;19974:40;19227:793;-1:-1:-1;;;;;;;;;19227:793:229:o;20545:320::-;20752:6;20741:9;20734:25;20795:2;20790;20779:9;20775:18;20768:30;20715:4;20815:44;20855:2;20844:9;20840:18;20832:6;20815:44;:::i;20870:168::-;20943:9;;;20974;;20991:15;;;20985:22;;20971:37;20961:71;;21012:18;;:::i;21043:640::-;21294:6;21289:3;21282:19;21264:3;21320:2;21353;21348:3;21344:12;21385:6;21379:13;21450:2;21442:6;21438:15;21471:1;21481:175;21495:6;21492:1;21489:13;21481:175;;;21558:13;;21544:28;;21594:14;;;;21631:15;;;;21517:1;21510:9;21481:175;;;-1:-1:-1;21672:5:229;;21043:640;-1:-1:-1;;;;;;;21043:640:229:o;21688:690::-;22023:3;22012:9;22005:22;21986:4;22050:57;22102:3;22091:9;22087:19;22079:6;22050:57;:::i;:::-;22155:9;22147:6;22143:22;22138:2;22127:9;22123:18;22116:50;22189:32;22214:6;22206;22189:32;:::i;:::-;22175:46;;22257:6;22252:2;22241:9;22237:18;22230:34;22312:9;22304:6;22300:22;22295:2;22284:9;22280:18;22273:50;22340:32;22365:6;22357;22340:32;:::i;22383:899::-;22839:6;22828:9;22821:25;22882:3;22877:2;22866:9;22862:18;22855:31;22802:4;22909:57;22961:3;22950:9;22946:19;22938:6;22909:57;:::i;:::-;23014:9;23006:6;23002:22;22997:2;22986:9;22982:18;22975:50;23048:32;23073:6;23065;23048:32;:::i;:::-;23034:46;;23116:6;23111:2;23100:9;23096:18;23089:34;23172:9;23164:6;23160:22;23154:3;23143:9;23139:19;23132:51;23200:32;23225:6;23217;23200:32;:::i;:::-;23192:40;;;23269:6;23263:3;23252:9;23248:19;23241:35;22383:899;;;;;;;;;:::o;23287:511::-;23538:2;23527:9;23520:21;23501:4;23564:56;23616:2;23605:9;23601:18;23593:6;23564:56;:::i;:::-;23668:14;23660:6;23656:27;23651:2;23640:9;23636:18;23629:55;23732:9;23724:6;23720:22;23715:2;23704:9;23700:18;23693:50;23760:32;23785:6;23777;23760:32;:::i;:::-;23752:40;23287:511;-1:-1:-1;;;;;;23287:511:229:o;23803:616::-;24114:6;24103:9;24096:25;24157:3;24152:2;24141:9;24137:18;24130:31;24077:4;24184:57;24236:3;24225:9;24221:19;24213:6;24184:57;:::i;:::-;24289:14;24281:6;24277:27;24272:2;24261:9;24257:18;24250:55;24353:9;24345:6;24341:22;24336:2;24325:9;24321:18;24314:50;24381:32;24406:6;24398;24381:32;:::i;24643:464::-;24890:66;24882:6;24878:79;24867:9;24860:98;24994:6;24989:2;24978:9;24974:18;24967:34;25037:2;25032;25021:9;25017:18;25010:30;24841:4;25057:44;25097:2;25086:9;25082:18;25074:6;25057:44;:::i;25112:174::-;25179:12;25211:10;;;25223;;;25207:27;;25246:11;;;25243:37;;;25260:18;;:::i;25938:901::-;26363:6;26352:9;26345:25;26406:3;26401:2;26390:9;26386:18;26379:31;26326:4;26433:57;26485:3;26474:9;26470:19;26462:6;26433:57;:::i;:::-;26538:4;26526:17;;26521:2;26506:18;;26499:45;26563:12;26611:15;;;26606:2;26591:18;;26584:43;26664:15;;26658:3;26643:19;;26636:44;26711:3;26696:19;;26689:35;;;26761:22;;;26755:3;26740:19;;26733:51;26801:32;26765:6;26818;26801:32;:::i;:::-;26793:40;25938:901;-1:-1:-1;;;;;;;;;;25938:901:229:o;26844:788::-;27209:3;27198:9;27191:22;27172:4;27236:57;27288:3;27277:9;27273:19;27265:6;27236:57;:::i;:::-;27341:4;27333:6;27329:17;27324:2;27313:9;27309:18;27302:45;27395:14;27387:6;27383:27;27378:2;27367:9;27363:18;27356:55;27459:12;27451:6;27447:25;27442:2;27431:9;27427:18;27420:53;27510:6;27504:3;27493:9;27489:19;27482:35;27566:9;27558:6;27554:22;27548:3;27537:9;27533:19;27526:51;27594:32;27619:6;27611;27594:32;:::i;28248:925::-;28697:66;28689:6;28685:79;28680:3;28673:92;28655:3;28784;28816:2;28812:1;28807:3;28803:11;28796:23;28848:6;28842:13;28864:74;28931:6;28927:1;28922:3;28918:11;28911:4;28903:6;28899:17;28864:74;:::i;:::-;28966:6;28961:3;28957:16;28947:26;;29001:2;28997:1;28993:2;28989:10;28982:22;29035:6;29029:13;29013:29;;29051:75;29117:8;29113:1;29109:2;29105:10;29098:4;29090:6;29086:17;29051:75;:::i;:::-;29146:17;29165:1;29142:25;;28248:925;-1:-1:-1;;;;;28248:925:229:o;29178:339::-;29355:2;29344:9;29337:21;29318:4;29375:44;29415:2;29404:9;29400:18;29392:6;29375:44;:::i;:::-;29367:52;;-1:-1:-1;;;;;29459:6:229;29455:55;29450:2;29439:9;29435:18;29428:83;29178:339;;;;;:::o;29709:287::-;29838:3;29876:6;29870:13;29892:66;29951:6;29946:3;29939:4;29931:6;29927:17;29892:66;:::i;:::-;29974:16;;;;;29709:287;-1:-1:-1;;29709:287:229:o;30261:530::-;30446:3;30484:6;30478:13;30500:66;30559:6;30554:3;30547:4;30539:6;30535:17;30500:66;:::i;:::-;30635:2;30631:15;;;;30648:66;30627:88;30588:16;;;;30613:103;;;30743:2;30732:14;;30725:30;;;;30782:2;30771:14;;30261:530;-1:-1:-1;;30261:530:229:o","linkReferences":{"src/libraries/LibChunks.sol":{"LibChunks":[{"start":3454,"length":20},{"start":3641,"length":20}]}}},"methodIdentifiers":{"_msgSender()":"119df25f","_msgValue()":"45ec9354","_world()":"e1af802c","getEntitiesAtPosition(uint16,uint16)":"69e10c7b","isAtPosition(bytes32,uint16,uint16)":"3fbf0c5a","move(bytes32,uint16,uint16)":"953717d1","spawn(bytes32)":"911c37ae","supportsInterface(bytes4)":"01ffc9a7"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"}],\"name\":\"EncodedLengths_InvalidLength\",\"type\":\"error\"},{\"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\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"accessedIndex\",\"type\":\"uint256\"}],\"name\":\"Store_IndexOutOfBounds\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes2\",\"name\":\"expected\",\"type\":\"bytes2\"},{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"Store_InvalidResourceType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint40\",\"name\":\"startWithinField\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"fieldLength\",\"type\":\"uint40\"}],\"name\":\"Store_InvalidSplice\",\"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\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"indexed\":false,\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"indexed\":false,\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"indexed\":false,\"internalType\":\"EncodedLengths\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Store_SpliceDynamicData\",\"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\":\"_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\":\"uint16\",\"name\":\"x\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"y\",\"type\":\"uint16\"}],\"name\":\"getEntitiesAtPosition\",\"outputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"entitiesAtPosition\",\"type\":\"bytes32[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"},{\"internalType\":\"uint16\",\"name\":\"x\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"y\",\"type\":\"uint16\"}],\"name\":\"isAtPosition\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_isAtPosition\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"},{\"internalType\":\"uint16\",\"name\":\"x\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"y\",\"type\":\"uint16\"}],\"name\":\"move\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"entityId\",\"type\":\"bytes32\"}],\"name\":\"spawn\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"}],\"devdoc\":{\"errors\":{\"EncodedLengths_InvalidLength(uint256)\":[{\"params\":{\"length\":\"The length of the encoded lengths.\"}}],\"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.\"}}],\"Store_IndexOutOfBounds(uint256,uint256)\":[{\"details\":\"Raised if the start index is larger than the previous length of the field.\",\"params\":{\"accessedIndex\":\"FIXME\",\"length\":\"FIXME\"}}],\"Store_InvalidResourceType(bytes2,bytes32,string)\":[{\"params\":{\"expected\":\"The expected resource type.\",\"resourceId\":\"The resource ID.\",\"resourceIdString\":\"The stringified resource ID (for easier debugging).\"}}],\"Store_InvalidSplice(uint40,uint40,uint40)\":[{\"details\":\"Raised if the splice total length of the field is changed but the splice is not at the end of the field.\",\"params\":{\"deleteCount\":\"The number of bytes to delete in the splice operation.\",\"fieldLength\":\"The field length for the splice operation.\",\"startWithinField\":\"The start index within the field for the splice operation.\"}}],\"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_SpliceDynamicData(bytes32,bytes32[],uint8,uint48,uint40,bytes32,bytes)\":{\"params\":{\"data\":\"The data to insert into the dynamic data of the record at the start byte.\",\"deleteCount\":\"The number of bytes to delete in the splice operation.\",\"dynamicFieldIndex\":\"The index of the dynamic field to splice data, relative to the start of the dynamic fields. (Dynamic field index = field index - number of static fields)\",\"encodedLengths\":\"The encoded lengths of the dynamic data of the record.\",\"keyTuple\":\"An array representing the composite 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.\"}},\"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.\"}},\"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\":{\"EncodedLengths_InvalidLength(uint256)\":[{\"notice\":\"Error raised when the provided encoded lengths has an invalid length.\"}],\"Slice_OutOfBounds(bytes,uint256,uint256)\":[{\"notice\":\"Error raised when the provided slice is out of bounds.\"}],\"Store_IndexOutOfBounds(uint256,uint256)\":[{\"notice\":\"Error raised if the provided index is out of bounds.\"}],\"Store_InvalidResourceType(bytes2,bytes32,string)\":[{\"notice\":\"Error raised if the provided resource ID cannot be found.\"}],\"Store_InvalidSplice(uint40,uint40,uint40)\":[{\"notice\":\"Error raised if the provided splice is invalid.\"}],\"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_SpliceDynamicData(bytes32,bytes32[],uint8,uint48,uint40,bytes32,bytes)\":{\"notice\":\"Emitted when dynamic data in the store is spliced.\"},\"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/MapSystem.sol\":\"MapSystem\"},\"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\":{\"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/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/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\"]},\"src/codegen/common.sol\":{\"keccak256\":\"0x2d0a0176c583fcd95e430978a48ca29a38536c01b57b6effd08697d2d2bf5f42\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d1ea5054e1e53b703345992c9ef61e372f6da66247fcb4e89c279055f9085\",\"dweb:/ipfs/QmXCygeJuEesDRSAamMfJZU9Qz5UCz3dmkBj7SGfEvEEY7\"]},\"src/codegen/index.sol\":{\"keccak256\":\"0x84ff02d4275be694bfbe1e60e24539a891dda5df3bacf04f0eb2a974425603d0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f88775b86cdc8322742e528072b64d01df3d3ef70d4fc5104412522e468ae4e2\",\"dweb:/ipfs/Qme75CeS2sA8pr1Tyx9GN5atmuG4aBGjMPaagaGtYTjc2R\"]},\"src/codegen/tables/Actions.sol\":{\"keccak256\":\"0x63cd48bebaa0414728e9be2c856e4eb01efaead6627a6615da4c77b886805cef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1dfe138555b67362f41c26ce1ab074bfc1fcc4e7c6fd0284b82cc699d80d392\",\"dweb:/ipfs/QmNf8UGE3FZ4U96HkeioE4peWWz1SKPAjhKRrGnpEnCdkQ\"]},\"src/codegen/tables/Admin.sol\":{\"keccak256\":\"0xe3b7e993ca2e420d73b845fb37388d453486e24522b941503a2f81c639769725\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e638c35d3ec5805180122b70849bd3a93aa680f3251ac9e7fe4f0ff24722f614\",\"dweb:/ipfs/QmVL3xJPrsVDgXQTdxBEkq4PRmyNDCFHGHKJxLQzuFy9XJ\"]},\"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/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\":\"0x1f0b21a82c18d474347446546973619289392ee9cc745eccbfb4ba802771b2e2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f0a514e9aa8c0265e8ac7284587cdfec829ad4904e511a284d44a325f9ee511b\",\"dweb:/ipfs/QmYGbphJpnBQMsTEtAM78kqH56FrzrmBFVNthRM4WLdUSQ\"]},\"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\":\"0x3ea10f6af2b29e07f658e961113a68db383bb5df7ec853bd797bd1cc14d19b0d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c834cb0bb80ffe10c6175f8a16b827dde9804d459e6aa33691484e419587d47f\",\"dweb:/ipfs/QmXnLXquHjNXN8CCsEL3NPNrQHW6UWY78oginRPtcHZFcw\"]},\"src/codegen/world/ICharacterSystem.sol\":{\"keccak256\":\"0x54157279932a37b055d247901f034848c1f0bffbf262028cf9c69eeedc9b7235\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ead77ae9ab020f705a998be6229e975b9352486deaa9aa800b6de10338190782\",\"dweb:/ipfs/QmaLrytghaAH6ipaBr4XwsaBcCzeVa5gujHGRNxeztuo4X\"]},\"src/codegen/world/ICombatSystem.sol\":{\"keccak256\":\"0x8b522a844626b33d69ae186dd26f2f7bfd921bf92ed7ed0cee2b8c349d9b64f9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://647f99949a4584cf4b528415ffea01ad243147548455fe5a8373b042b6af3087\",\"dweb:/ipfs/QmYsgXQDTwrqg7YSJkKtiNZzf63f4jdA4xfni5gb9ap5K5\"]},\"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\":\"0xc6caadf1800d688083c234a12cd151746f0271be03a50bb6a654634270ab0864\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://084766afac89e6f74162f69534635f90ec56570019223e22d20342f7853fb4e0\",\"dweb:/ipfs/QmbrQXrTewfgW2NydLgPCdt3Vton5V7nfE7HViXtyrMnoK\"]},\"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\":\"0xfb774a3d4388291fa5bae54bf1c592cc366a0585e6d24388dfeebaf3abd666b4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0986371fcb9f53bac88f2c190faf0f5a77fac686eced664aed5f2f1eb6eaca64\",\"dweb:/ipfs/QmWdgLEV31t27nNQC1KGEfaZHFcuBUayxHm2giZJpAG8hv\"]},\"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/systems/MapSystem.sol\":{\"keccak256\":\"0x47c9a77c76fdc128d6ddae173d41eda8af2f954fa9f8b24fef14003dab6028a8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8fb79ad2ddf872fab84a6ee1a16f38dccd0b6ef9f29d867f84ea6fb604e9a732\",\"dweb:/ipfs/QmYzJwFgQtYkbbarVZLUsBAi6anfc421Jp5CoFUS79WSvz\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.24+commit.e11b9ed9"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"uint256","name":"length","type":"uint256"}],"type":"error","name":"EncodedLengths_InvalidLength"},{"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":"uint256","name":"length","type":"uint256"},{"internalType":"uint256","name":"accessedIndex","type":"uint256"}],"type":"error","name":"Store_IndexOutOfBounds"},{"inputs":[{"internalType":"bytes2","name":"expected","type":"bytes2"},{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"Store_InvalidResourceType"},{"inputs":[{"internalType":"uint40","name":"startWithinField","type":"uint40"},{"internalType":"uint40","name":"deleteCount","type":"uint40"},{"internalType":"uint40","name":"fieldLength","type":"uint40"}],"type":"error","name":"Store_InvalidSplice"},{"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":"uint8","name":"dynamicFieldIndex","type":"uint8","indexed":false},{"internalType":"uint48","name":"start","type":"uint48","indexed":false},{"internalType":"uint40","name":"deleteCount","type":"uint40","indexed":false},{"internalType":"EncodedLengths","name":"encodedLengths","type":"bytes32","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Store_SpliceDynamicData","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":"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":"uint16","name":"x","type":"uint16"},{"internalType":"uint16","name":"y","type":"uint16"}],"stateMutability":"view","type":"function","name":"getEntitiesAtPosition","outputs":[{"internalType":"bytes32[]","name":"entitiesAtPosition","type":"bytes32[]"}]},{"inputs":[{"internalType":"bytes32","name":"entityId","type":"bytes32"},{"internalType":"uint16","name":"x","type":"uint16"},{"internalType":"uint16","name":"y","type":"uint16"}],"stateMutability":"view","type":"function","name":"isAtPosition","outputs":[{"internalType":"bool","name":"_isAtPosition","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"entityId","type":"bytes32"},{"internalType":"uint16","name":"x","type":"uint16"},{"internalType":"uint16","name":"y","type":"uint16"}],"stateMutability":"nonpayable","type":"function","name":"move"},{"inputs":[{"internalType":"bytes32","name":"entityId","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"spawn"},{"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."}},"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/MapSystem.sol":"MapSystem"},"evmVersion":"paris","libraries":{}},"sources":{"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/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/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"},"src/codegen/common.sol":{"keccak256":"0x2d0a0176c583fcd95e430978a48ca29a38536c01b57b6effd08697d2d2bf5f42","urls":["bzz-raw://720d1ea5054e1e53b703345992c9ef61e372f6da66247fcb4e89c279055f9085","dweb:/ipfs/QmXCygeJuEesDRSAamMfJZU9Qz5UCz3dmkBj7SGfEvEEY7"],"license":"MIT"},"src/codegen/index.sol":{"keccak256":"0x84ff02d4275be694bfbe1e60e24539a891dda5df3bacf04f0eb2a974425603d0","urls":["bzz-raw://f88775b86cdc8322742e528072b64d01df3d3ef70d4fc5104412522e468ae4e2","dweb:/ipfs/Qme75CeS2sA8pr1Tyx9GN5atmuG4aBGjMPaagaGtYTjc2R"],"license":"MIT"},"src/codegen/tables/Actions.sol":{"keccak256":"0x63cd48bebaa0414728e9be2c856e4eb01efaead6627a6615da4c77b886805cef","urls":["bzz-raw://c1dfe138555b67362f41c26ce1ab074bfc1fcc4e7c6fd0284b82cc699d80d392","dweb:/ipfs/QmNf8UGE3FZ4U96HkeioE4peWWz1SKPAjhKRrGnpEnCdkQ"],"license":"MIT"},"src/codegen/tables/Admin.sol":{"keccak256":"0xe3b7e993ca2e420d73b845fb37388d453486e24522b941503a2f81c639769725","urls":["bzz-raw://e638c35d3ec5805180122b70849bd3a93aa680f3251ac9e7fe4f0ff24722f614","dweb:/ipfs/QmVL3xJPrsVDgXQTdxBEkq4PRmyNDCFHGHKJxLQzuFy9XJ"],"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/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":"0x1f0b21a82c18d474347446546973619289392ee9cc745eccbfb4ba802771b2e2","urls":["bzz-raw://f0a514e9aa8c0265e8ac7284587cdfec829ad4904e511a284d44a325f9ee511b","dweb:/ipfs/QmYGbphJpnBQMsTEtAM78kqH56FrzrmBFVNthRM4WLdUSQ"],"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":"0x3ea10f6af2b29e07f658e961113a68db383bb5df7ec853bd797bd1cc14d19b0d","urls":["bzz-raw://c834cb0bb80ffe10c6175f8a16b827dde9804d459e6aa33691484e419587d47f","dweb:/ipfs/QmXnLXquHjNXN8CCsEL3NPNrQHW6UWY78oginRPtcHZFcw"],"license":"MIT"},"src/codegen/world/ICharacterSystem.sol":{"keccak256":"0x54157279932a37b055d247901f034848c1f0bffbf262028cf9c69eeedc9b7235","urls":["bzz-raw://ead77ae9ab020f705a998be6229e975b9352486deaa9aa800b6de10338190782","dweb:/ipfs/QmaLrytghaAH6ipaBr4XwsaBcCzeVa5gujHGRNxeztuo4X"],"license":"MIT"},"src/codegen/world/ICombatSystem.sol":{"keccak256":"0x8b522a844626b33d69ae186dd26f2f7bfd921bf92ed7ed0cee2b8c349d9b64f9","urls":["bzz-raw://647f99949a4584cf4b528415ffea01ad243147548455fe5a8373b042b6af3087","dweb:/ipfs/QmYsgXQDTwrqg7YSJkKtiNZzf63f4jdA4xfni5gb9ap5K5"],"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":"0xc6caadf1800d688083c234a12cd151746f0271be03a50bb6a654634270ab0864","urls":["bzz-raw://084766afac89e6f74162f69534635f90ec56570019223e22d20342f7853fb4e0","dweb:/ipfs/QmbrQXrTewfgW2NydLgPCdt3Vton5V7nfE7HViXtyrMnoK"],"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":"0xfb774a3d4388291fa5bae54bf1c592cc366a0585e6d24388dfeebaf3abd666b4","urls":["bzz-raw://0986371fcb9f53bac88f2c190faf0f5a77fac686eced664aed5f2f1eb6eaca64","dweb:/ipfs/QmWdgLEV31t27nNQC1KGEfaZHFcuBUayxHm2giZJpAG8hv"],"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/systems/MapSystem.sol":{"keccak256":"0x47c9a77c76fdc128d6ddae173d41eda8af2f954fa9f8b24fef14003dab6028a8","urls":["bzz-raw://8fb79ad2ddf872fab84a6ee1a16f38dccd0b6ef9f29d867f84ea6fb604e9a732","dweb:/ipfs/QmYzJwFgQtYkbbarVZLUsBAi6anfc421Jp5CoFUS79WSvz"],"license":"MIT"}},"version":1},"id":216} \ No newline at end of file From 4fa78902d3cb5cd9730f8d5253c160d4ef540259 Mon Sep 17 00:00:00 2001 From: ECWireless Date: Thu, 18 Jul 2024 08:44:42 -0600 Subject: [PATCH 09/14] Add basic HealthBar component --- .../client/src/components/ActionsPanel.tsx | 13 ++++--- packages/client/src/components/HealthBar.tsx | 36 +++++++++++++++++++ 2 files changed, 45 insertions(+), 4 deletions(-) create mode 100644 packages/client/src/components/HealthBar.tsx diff --git a/packages/client/src/components/ActionsPanel.tsx b/packages/client/src/components/ActionsPanel.tsx index 6bb975339..52b60a4d1 100644 --- a/packages/client/src/components/ActionsPanel.tsx +++ b/packages/client/src/components/ActionsPanel.tsx @@ -8,6 +8,7 @@ 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', @@ -148,6 +149,14 @@ export const ActionsPanel = (): JSX.Element => { {actionText} + {currentBattle && equippedItems && monster && ( + + )} {currentBattle && equippedItems && monster && ( {equippedItems.map((item, index) => ( @@ -166,10 +175,6 @@ export const ActionsPanel = (): JSX.Element => { {currentBattle && equippedItems && monster && ( MONSTER STATS: - - Max Health: {monster.baseHitPoints} - Current Health: {monster.currentHp} - Attack: {monster.agility} Defense: {monster.intelligence} diff --git a/packages/client/src/components/HealthBar.tsx b/packages/client/src/components/HealthBar.tsx new file mode 100644 index 000000000..2ea18c7a5 --- /dev/null +++ b/packages/client/src/components/HealthBar.tsx @@ -0,0 +1,36 @@ +import { Box, Flex, StackProps, Text, VStack } from '@chakra-ui/react'; + +export const HealthBar = ({ + currentHp, + baseHp, + ...stackProps +}: { + currentHp: string; + baseHp: string; +} & StackProps): JSX.Element => { + const health = (parseInt(currentHp) / parseInt(baseHp)) * 100; + + const barColor = health > 50 ? 'green' : health > 15 ? 'yellow' : 'red'; + + return ( + + + + HP + + + + + + + {currentHp} / {baseHp} + + + ); +}; From b158c947a0e10dd1549fe1a47a88b1f3a708ba7c Mon Sep 17 00:00:00 2001 From: ECWireless Date: Thu, 18 Jul 2024 12:28:37 -0600 Subject: [PATCH 10/14] Make sure level percent and gold render correctly --- .../client/src/components/ActionsPanel.tsx | 5 +++- .../client/src/components/ItemEquipModal.tsx | 6 ++++- packages/client/src/components/Level.tsx | 10 +++---- packages/client/src/components/StatsPanel.tsx | 13 ++++++---- packages/client/src/pages/Character.tsx | 26 +++++++++++++------ 5 files changed, 40 insertions(+), 20 deletions(-) diff --git a/packages/client/src/components/ActionsPanel.tsx b/packages/client/src/components/ActionsPanel.tsx index 52b60a4d1..53bd412ac 100644 --- a/packages/client/src/components/ActionsPanel.tsx +++ b/packages/client/src/components/ActionsPanel.tsx @@ -60,7 +60,7 @@ export const ActionsPanel = (): JSX.Element => { delegatorAddress, systemCalls: { endTurn }, } = useMUD(); - const { character, equippedItems } = useCharacter(); + const { character, equippedItems, refreshCharacter } = useCharacter(); const { currentBattle, monster } = useCombat(); const { isSpawned } = useMapNavigation(); @@ -127,6 +127,8 @@ export const ActionsPanel = (): JSX.Element => { if (!success) { throw new Error('Contract call failed'); } + + await refreshCharacter(); } catch (e) { renderError(e, 'Failed to roll stats.'); } finally { @@ -141,6 +143,7 @@ export const ActionsPanel = (): JSX.Element => { delegatorAddress, endTurn, monster, + refreshCharacter, renderError, ], ); diff --git a/packages/client/src/components/ItemEquipModal.tsx b/packages/client/src/components/ItemEquipModal.tsx index 25ad09473..f27f7b538 100644 --- a/packages/client/src/components/ItemEquipModal.tsx +++ b/packages/client/src/components/ItemEquipModal.tsx @@ -35,7 +35,7 @@ export const ItemEquipModal: React.FC = ({ delegatorAddress, systemCalls: { equipItems, unequipItem }, } = useMUD(); - const { character } = useCharacter(); + const { character, refreshCharacter } = useCharacter(); const [isEquipping, setIsEquipping] = useState(false); @@ -68,6 +68,7 @@ export const ItemEquipModal: React.FC = ({ throw new Error('Contract call failed'); } + await refreshCharacter(); renderSuccess(`${weapon.name} equipped successfully!`); onClose(); } catch (e) { @@ -81,6 +82,7 @@ export const ItemEquipModal: React.FC = ({ delegatorAddress, equipItems, onClose, + refreshCharacter, renderError, renderSuccess, weapon, @@ -110,6 +112,7 @@ export const ItemEquipModal: React.FC = ({ throw new Error('Contract call failed'); } + await refreshCharacter(); renderSuccess(`${weapon.name} unequipped successfully!`); onClose(); } catch (e) { @@ -122,6 +125,7 @@ export const ItemEquipModal: React.FC = ({ character, delegatorAddress, onClose, + refreshCharacter, renderError, renderSuccess, unequipItem, diff --git a/packages/client/src/components/Level.tsx b/packages/client/src/components/Level.tsx index b1e7ae12f..bc5c8cbe6 100644 --- a/packages/client/src/components/Level.tsx +++ b/packages/client/src/components/Level.tsx @@ -1,10 +1,10 @@ import { Box, HStack, Progress, Spacer, Text } from '@chakra-ui/react'; -const CURRENT_LEVEL = 1; - export const Level = ({ + currentLevel, levelPercent, }: { + currentLevel: string; levelPercent: number; }): JSX.Element => { return ( @@ -14,7 +14,7 @@ export const Level = ({ right={100 - levelPercent - 2 + '%'} top="-15px" > - {levelPercent}% + {levelPercent.toFixed(2)}% 90 ? 'none' : 'block'} @@ -26,9 +26,9 @@ export const Level = ({ - Level {CURRENT_LEVEL} + Level {currentLevel} - Level {CURRENT_LEVEL + 1} + Level {Number(currentLevel) + 1} ); diff --git a/packages/client/src/components/StatsPanel.tsx b/packages/client/src/components/StatsPanel.tsx index 8570ff6ee..a2ac5d031 100644 --- a/packages/client/src/components/StatsPanel.tsx +++ b/packages/client/src/components/StatsPanel.tsx @@ -23,8 +23,6 @@ import { useMUD } from '../contexts/MUDContext'; import { MAX_EQUIPPED_WEAPONS } from '../utils/constants'; import { Level } from './Level'; -const CURRENT_LEVEL = 1; - export const StatsPanel = (): JSX.Element => { const navigate = useNavigate(); const isDesktop = useBreakpointValue({ base: false, lg: true }); @@ -35,7 +33,10 @@ export const StatsPanel = (): JSX.Element => { const nextLevelXpRequirement = useComponentValue( Levels, - encodeEntity({ level: 'uint256' }, { level: BigInt(CURRENT_LEVEL + 1) }), + encodeEntity( + { level: 'uint256' }, + { level: BigInt(Number(character?.level ?? 0) + 1) }, + ), )?.experience; const levelPercent = useMemo(() => { @@ -120,10 +121,12 @@ export const StatsPanel = (): JSX.Element => { - + - {goldBalance} $GOLD + + {Number(goldBalance).toLocaleString()} $GOLD + {experience}/{nextLevelXpRequirement?.toString() ?? '0'} diff --git a/packages/client/src/pages/Character.tsx b/packages/client/src/pages/Character.tsx index f3181cf10..e40a1b063 100644 --- a/packages/client/src/pages/Character.tsx +++ b/packages/client/src/pages/Character.tsx @@ -35,7 +35,11 @@ import { useCharacter } from '../contexts/CharacterContext'; import { useMUD } from '../contexts/MUDContext'; import { useToast } from '../hooks/useToast'; import { MAX_EQUIPPED_WEAPONS } from '../utils/constants'; -import { fetchMetadataFromUri, uriToHttp } from '../utils/helpers'; +import { + decodeCharacterId, + fetchMetadataFromUri, + uriToHttp, +} from '../utils/helpers'; import { type Character, ItemType, @@ -141,9 +145,9 @@ export const CharacterPage = (): JSX.Element => { Characters, CharactersTokenURI, GoldBalances, + renderError, Stats, publicClient, - renderError, worldContract, ]); @@ -245,20 +249,26 @@ export const CharacterPage = (): JSX.Element => { ], ); + const isOwner = useMemo(() => { + if (!(userCharacter && characterId)) return false; + const { ownerAddress } = decodeCharacterId(characterId as `0x${string}`); + return userCharacter.owner.toLowerCase() === ownerAddress; + }, [userCharacter, characterId]); + useEffect(() => { if (!isSynced) return; (async (): Promise => { + if (isOwner && userCharacter) { + setCharacter(userCharacter); + await fetchCharacterItems(userCharacter); + return; + } const _character = await fetchCharacter(); if (!_character) return; await fetchCharacterItems(_character); })(); - }, [fetchCharacter, fetchCharacterItems, isSynced]); - - const isOwner = useMemo( - () => character?.owner === userCharacter?.owner, - [character, userCharacter], - ); + }, [fetchCharacter, fetchCharacterItems, isOwner, isSynced, userCharacter]); const maxItemsEquipped = equippedWeapons.length === MAX_EQUIPPED_WEAPONS; From 597591dd70b24c7f48982025fe741c37f2306d70 Mon Sep 17 00:00:00 2001 From: ECWireless Date: Thu, 18 Jul 2024 15:27:36 -0600 Subject: [PATCH 11/14] Make sure error rendering is consistent everywhere --- .../client/src/components/ActionsPanel.tsx | 4 ++-- .../src/components/DelegationButton.tsx | 10 ++++----- .../src/components/InitiateCombatModal.tsx | 4 ++-- .../client/src/components/ItemEquipModal.tsx | 8 +++---- .../src/components/WalletDetailsModal.tsx | 18 +++++++-------- .../client/src/contexts/CharacterContext.tsx | 8 +++---- .../src/contexts/MapNavigationContext.tsx | 22 +++++++++---------- packages/client/src/hooks/useToast.ts | 17 +++++++------- packages/client/src/pages/Character.tsx | 8 +++---- .../client/src/pages/CharacterCreation.tsx | 22 +++++++++---------- packages/client/src/utils/errors.ts | 2 +- 11 files changed, 62 insertions(+), 61 deletions(-) diff --git a/packages/client/src/components/ActionsPanel.tsx b/packages/client/src/components/ActionsPanel.tsx index 53bd412ac..c675b0487 100644 --- a/packages/client/src/components/ActionsPanel.tsx +++ b/packages/client/src/components/ActionsPanel.tsx @@ -125,12 +125,12 @@ export const ActionsPanel = (): JSX.Element => { ); if (!success) { - throw new Error('Contract call failed'); + throw new Error('Contract call failed.'); } await refreshCharacter(); } catch (e) { - renderError(e, 'Failed to roll stats.'); + renderError('Failed to roll stats.', e); } finally { setIsAttacking(false); } diff --git a/packages/client/src/components/DelegationButton.tsx b/packages/client/src/components/DelegationButton.tsx index 74dd1cf43..c26b45fe7 100644 --- a/packages/client/src/components/DelegationButton.tsx +++ b/packages/client/src/components/DelegationButton.tsx @@ -28,17 +28,17 @@ export const DelegationButton = ({ const onSetupDelegation = useCallback(async () => { try { if (!setupDelegation) { - throw new Error('Delegation setup function not available'); + throw new Error('Delegation setup function not available.'); } if (!network) { - throw new Error('Network not available'); + throw new Error('Network not available.'); } setIsDelegating(true); await setupDelegation(network, externalWalletClient, burnerAddress); - renderSuccess('Delegation successful'); + renderSuccess('Delegation successful.'); if (onClose) { onClose(); @@ -46,8 +46,8 @@ export const DelegationButton = ({ getBurner(); navigate(CHARACTER_CREATION_PATH); - } catch (error) { - renderError(error, 'Failed to delegate'); + } catch (e) { + renderError('Failed to delegate.', e); } finally { setIsDelegating(false); } diff --git a/packages/client/src/components/InitiateCombatModal.tsx b/packages/client/src/components/InitiateCombatModal.tsx index 18d01c576..af99a0ea7 100644 --- a/packages/client/src/components/InitiateCombatModal.tsx +++ b/packages/client/src/components/InitiateCombatModal.tsx @@ -60,13 +60,13 @@ export const InitiateCombatModal: React.FC = ({ ); if (!success) { - throw new Error('Contract call failed'); + throw new Error('Contract call failed.'); } renderSuccess(`Battle has begun!`); onClose(); } catch (e) { - renderError(e, 'Failed to initiate battle'); + renderError('Failed to initiate battle.', e); } finally { setIsInitiating(false); } diff --git a/packages/client/src/components/ItemEquipModal.tsx b/packages/client/src/components/ItemEquipModal.tsx index f27f7b538..d841da18c 100644 --- a/packages/client/src/components/ItemEquipModal.tsx +++ b/packages/client/src/components/ItemEquipModal.tsx @@ -65,14 +65,14 @@ export const ItemEquipModal: React.FC = ({ const success = await equipItems(character.characterId, [weapon.tokenId]); if (!success) { - throw new Error('Contract call failed'); + throw new Error('Contract call failed.'); } await refreshCharacter(); renderSuccess(`${weapon.name} equipped successfully!`); onClose(); } catch (e) { - renderError(e, 'Failed to equip item.'); + renderError('Failed to equip item.', e); } finally { setIsEquipping(false); } @@ -109,14 +109,14 @@ export const ItemEquipModal: React.FC = ({ const success = await unequipItem(character.characterId, weapon.tokenId); if (!success) { - throw new Error('Contract call failed'); + throw new Error('Contract call failed.'); } await refreshCharacter(); renderSuccess(`${weapon.name} unequipped successfully!`); onClose(); } catch (e) { - renderError(e, 'Failed to unequip item.'); + renderError('Failed to unequip item.', e); } finally { setIsEquipping(false); } diff --git a/packages/client/src/components/WalletDetailsModal.tsx b/packages/client/src/components/WalletDetailsModal.tsx index c9635cea3..e79c446ea 100644 --- a/packages/client/src/components/WalletDetailsModal.tsx +++ b/packages/client/src/components/WalletDetailsModal.tsx @@ -68,16 +68,16 @@ export const WalletDetailsModal = ({ setIsDepositing(true); if (!(externalWalletBalance && externalWalletClient)) { - throw new Error('No external wallet client found'); + throw new Error('No external wallet client found.'); } if (!depositAmount || parseEther(depositAmount) <= 0) { - setDepositErrorMessage('Amount must be greater than 0'); + setDepositErrorMessage('Amount must be greater than 0.'); return; } if (parseEther(depositAmount) > externalWalletBalance.value) { - setDepositErrorMessage('Insufficient funds in external wallet'); + setDepositErrorMessage('Insufficient funds in external wallet.'); return; } @@ -88,8 +88,8 @@ export const WalletDetailsModal = ({ setDepositAmount('0'); renderSuccess('Funds deposited successfully!'); - } catch (error) { - renderError(error, 'Error depositing funds'); + } catch (e) { + renderError('Error depositing funds.', e); } finally { setIsDepositing(false); } @@ -107,12 +107,12 @@ export const WalletDetailsModal = ({ setIsWithdrawing(true); if (!withdrawAmount || parseEther(withdrawAmount) <= 0) { - setWithdrawErrorMessage('Amount must be greater than 0'); + setWithdrawErrorMessage('Amount must be greater than 0.'); return; } if (parseEther(withdrawAmount) > parseEther(burnerBalance)) { - setWithdrawErrorMessage('Insufficient funds in session wallet'); + setWithdrawErrorMessage('Insufficient funds in session wallet.'); return; } @@ -123,8 +123,8 @@ export const WalletDetailsModal = ({ setWithdrawAmount('0'); renderSuccess('Funds withdrawn successfully!'); - } catch (error) { - renderError(error, 'Error withdrawing funds'); + } catch (e) { + renderError('Error withdrawing funds.', e); } finally { setIsWithdrawing(false); } diff --git a/packages/client/src/contexts/CharacterContext.tsx b/packages/client/src/contexts/CharacterContext.tsx index a0e11040f..2d2f5d02a 100644 --- a/packages/client/src/contexts/CharacterContext.tsx +++ b/packages/client/src/contexts/CharacterContext.tsx @@ -141,8 +141,8 @@ export const CharacterProvider = ({ setIsRefreshing(true); try { await fetchCharacterData(); - } catch (error) { - renderError('Error refreshing character'); + } catch (e) { + renderError('Error refreshing character.', e); } finally { setIsRefreshing(false); } @@ -241,8 +241,8 @@ export const CharacterProvider = ({ ); setEquippedItems(fullItems); - } catch (error) { - renderError(error, 'Failed to fetch character data'); + } catch (e) { + renderError('Failed to fetch character data.', e); } }, [ItemsBaseURI, ItemsOwners, ItemsTokenURI, renderError, worldContract], diff --git a/packages/client/src/contexts/MapNavigationContext.tsx b/packages/client/src/contexts/MapNavigationContext.tsx index 0cc019f14..88e36b604 100644 --- a/packages/client/src/contexts/MapNavigationContext.tsx +++ b/packages/client/src/contexts/MapNavigationContext.tsx @@ -170,8 +170,8 @@ export const MapNavigationProvider = ({ ); setOtherPlayers(characters.filter(c => c.owner !== delegatorAddress)); - } catch (error) { - renderError(error, 'Failed to fetch other players'); + } catch (e) { + renderError('Failed to fetch other players.', e); } }, [ @@ -230,8 +230,8 @@ export const MapNavigationProvider = ({ ); setMonsters(_monsters.filter(m => Number(m.currentHp) > 0)); - } catch (error) { - renderError(error, 'Failed to fetch monsters'); + } catch (e) { + renderError('Failed to fetch monsters.', e); } }, [Mobs, renderError, Stats], @@ -275,12 +275,12 @@ export const MapNavigationProvider = ({ const success = await spawn(character.characterId); if (!success) { - throw new Error('Contract call failed'); + throw new Error('Contract call failed.'); } renderSuccess('Spawned!'); } catch (e) { - renderError(e, 'Failed to roll stats.'); + renderError('Failed to roll stats.', e); } finally { setIsSpawning(false); } @@ -299,15 +299,15 @@ export const MapNavigationProvider = ({ setIsMoving(true); if (!delegatorAddress) { - throw new Error('Burner not found'); + throw new Error('Burner not found.'); } if (!position) { - throw new Error('Position not found'); + throw new Error('Position not found.'); } if (!character) { - throw new Error('Character not found'); + throw new Error('Character not found.'); } const { x, y } = position; @@ -344,10 +344,10 @@ export const MapNavigationProvider = ({ const success = await move(character.characterId, newX, newY); if (!success) { - throw new Error('Contract call failed'); + throw new Error('Contract call failed.'); } } catch (e) { - renderError(e, 'Failed to move.'); + renderError('Failed to move.', e); } finally { setIsMoving(false); } diff --git a/packages/client/src/hooks/useToast.ts b/packages/client/src/hooks/useToast.ts index 139ca66be..170733d3b 100644 --- a/packages/client/src/hooks/useToast.ts +++ b/packages/client/src/hooks/useToast.ts @@ -1,27 +1,28 @@ import { useToast as useChakraToast } from '@chakra-ui/react'; import { useCallback } from 'react'; -import { getErrorMessage, USER_ERRORS } from '../utils/errors'; +import { getError, USER_ERRORS } from '../utils/errors'; export const useToast = (): { - renderError: (error: unknown, defaultError?: string) => void; + renderError: (errorMsg: string, errorLog?: unknown) => void; renderWarning: (msg: string) => void; renderSuccess: (msg: string) => void; } => { const toast = useChakraToast(); const renderError = useCallback( - (error: unknown, defaultError?: string) => { - const errorMsg = getErrorMessage(error); - // eslint-disable-next-line no-console - console.error(error); + (errorMsg: string, errorLog?: unknown) => { + const formattedErrorLog = getError(errorLog); - if (USER_ERRORS.includes(errorMsg)) { + if (USER_ERRORS.includes(formattedErrorLog)) { return; } + // eslint-disable-next-line no-console + console.error(errorLog); + toast({ - description: getErrorMessage(error, defaultError), + description: errorMsg, position: 'top', status: 'error', containerStyle: { diff --git a/packages/client/src/pages/Character.tsx b/packages/client/src/pages/Character.tsx index e40a1b063..d586456fc 100644 --- a/packages/client/src/pages/Character.tsx +++ b/packages/client/src/pages/Character.tsx @@ -134,8 +134,8 @@ export const CharacterPage = (): JSX.Element => { setCharacter(_character); return _character; - } catch (error) { - renderError(error, 'Failed to fetch character data'); + } catch (e) { + renderError('Failed to fetch character data.', e); return null; } finally { setIsLoadingCharacter(false); @@ -233,8 +233,8 @@ export const CharacterPage = (): JSX.Element => { ); setItems(fullItems); - } catch (error) { - renderError(error, 'Failed to fetch character data'); + } catch (e) { + renderError('Failed to fetch character data.', e); } finally { setIsLoadingItems(false); } diff --git a/packages/client/src/pages/CharacterCreation.tsx b/packages/client/src/pages/CharacterCreation.tsx index fc260fdbf..2f545f626 100644 --- a/packages/client/src/pages/CharacterCreation.tsx +++ b/packages/client/src/pages/CharacterCreation.tsx @@ -126,8 +126,8 @@ export const CharacterCreation = (): JSX.Element => { ); setStarterWeapons(_items); - } catch (error) { - renderError(error, 'Error fetching starter item.'); + } catch (e) { + renderError('Error fetching starter item.', e); } }, [ItemsBaseURI, ItemsTokenURI, renderError, worldContract]); @@ -168,7 +168,7 @@ export const CharacterCreation = (): JSX.Element => { const avatarCid = await onUpload(); if (!avatarCid) throw new Error( - 'Something went wrong uploading your character avatar', + 'Something went wrong uploading your character avatar.', ); const image = `ipfs://${avatarCid}`; @@ -191,13 +191,13 @@ export const CharacterCreation = (): JSX.Element => { ); if (!res.ok) throw new Error( - 'Something went wrong uploading your character metadata', + 'Something went wrong uploading your character metadata.', ); const { cid: characterMetadataCid } = await res.json(); if (!characterMetadataCid) throw new Error( - 'Something went wrong uploading your character metadata', + 'Something went wrong uploading your character metadata.', ); const success = await mintCharacter( @@ -207,13 +207,13 @@ export const CharacterCreation = (): JSX.Element => { ); if (!success) { - throw new Error('Contract call failed'); + throw new Error('Contract call failed.'); } await refreshCharacter(); renderSuccess('Character created!'); } catch (e) { - renderError(e, 'Failed to create character.'); + renderError('Failed to create character.', e); } finally { setIsCreating(false); } @@ -253,13 +253,13 @@ export const CharacterCreation = (): JSX.Element => { const success = await rollStats(character.characterId, characterClass); if (!success) { - throw new Error('Contract call failed'); + throw new Error('Contract call failed.'); } refreshCharacter(); renderSuccess('Stats rolled!'); } catch (e) { - renderError(e, 'Failed to roll stats.'); + renderError('Failed to roll stats.', e); } finally { setIsRollingStats(false); } @@ -295,7 +295,7 @@ export const CharacterCreation = (): JSX.Element => { const success = await enterGame(character.characterId); if (!success) { - throw new Error('Contract call failed'); + throw new Error('Contract call failed.'); } await refreshCharacter(); @@ -303,7 +303,7 @@ export const CharacterCreation = (): JSX.Element => { renderSuccess('Your character has awakend!'); navigate(GAME_BOARD_PATH); } catch (e) { - renderError(e, 'Failed to enter game.'); + renderError('Failed to enter game.', e); } finally { setIsEnteringGame(false); } diff --git a/packages/client/src/utils/errors.ts b/packages/client/src/utils/errors.ts index ec46f4bb9..f1ba2eb40 100644 --- a/packages/client/src/utils/errors.ts +++ b/packages/client/src/utils/errors.ts @@ -1,6 +1,6 @@ export const USER_ERRORS = ['User denied signature']; -export const getErrorMessage = ( +export const getError = ( error: unknown, defaultError: string = 'Unknown error', ): string => { From db76b46d9209edbcbc0752f34d4e5f83e84835a6 Mon Sep 17 00:00:00 2001 From: ECWireless Date: Thu, 18 Jul 2024 16:03:02 -0600 Subject: [PATCH 12/14] Make sure contract errors get correctly logged --- .../client/src/components/ActionsPanel.tsx | 9 +- .../src/components/InitiateCombatModal.tsx | 6 +- .../client/src/components/ItemEquipModal.tsx | 17 +- .../src/contexts/MapNavigationContext.tsx | 18 +- .../client/src/lib/mud/createSystemCalls.ts | 255 ++++++++++++++---- packages/client/src/pages/Character.tsx | 1 + .../client/src/pages/CharacterCreation.tsx | 21 +- 7 files changed, 247 insertions(+), 80 deletions(-) diff --git a/packages/client/src/components/ActionsPanel.tsx b/packages/client/src/components/ActionsPanel.tsx index c675b0487..f80bb7902 100644 --- a/packages/client/src/components/ActionsPanel.tsx +++ b/packages/client/src/components/ActionsPanel.tsx @@ -116,21 +116,22 @@ export const ActionsPanel = (): JSX.Element => { throw new Error('Basic attack not found.'); } - const success = await endTurn( + const { error, success } = await endTurn( currentBattle.encounterId, character.characterId, monster.monsterId, basicAttackId, itemId, + currentBattle.currentTurn, ); - if (!success) { - throw new Error('Contract call failed.'); + if (error && !success) { + throw new Error(error); } await refreshCharacter(); } catch (e) { - renderError('Failed to roll stats.', e); + renderError('Failed to attack.', e); } finally { setIsAttacking(false); } diff --git a/packages/client/src/components/InitiateCombatModal.tsx b/packages/client/src/components/InitiateCombatModal.tsx index af99a0ea7..43cc3c8be 100644 --- a/packages/client/src/components/InitiateCombatModal.tsx +++ b/packages/client/src/components/InitiateCombatModal.tsx @@ -53,14 +53,14 @@ export const InitiateCombatModal: React.FC = ({ throw new Error('Missing delegation.'); } - const success = await createMatch( + const { error, success } = await createMatch( EncounterType.PvE, [character.characterId], [monster.monsterId], ); - if (!success) { - throw new Error('Contract call failed.'); + if (error && !success) { + throw new Error(error); } renderSuccess(`Battle has begun!`); diff --git a/packages/client/src/components/ItemEquipModal.tsx b/packages/client/src/components/ItemEquipModal.tsx index d841da18c..e6d7b6ed7 100644 --- a/packages/client/src/components/ItemEquipModal.tsx +++ b/packages/client/src/components/ItemEquipModal.tsx @@ -62,10 +62,12 @@ export const ItemEquipModal: React.FC = ({ throw new Error('Missing delegation.'); } - const success = await equipItems(character.characterId, [weapon.tokenId]); + const { error, success } = await equipItems(character.characterId, [ + weapon.tokenId, + ]); - if (!success) { - throw new Error('Contract call failed.'); + if (error && !success) { + throw new Error(error); } await refreshCharacter(); @@ -106,10 +108,13 @@ export const ItemEquipModal: React.FC = ({ throw new Error('Missing delegation.'); } - const success = await unequipItem(character.characterId, weapon.tokenId); + const { error, success } = await unequipItem( + character.characterId, + weapon.tokenId, + ); - if (!success) { - throw new Error('Contract call failed.'); + if (error && !success) { + throw new Error(error); } await refreshCharacter(); diff --git a/packages/client/src/contexts/MapNavigationContext.tsx b/packages/client/src/contexts/MapNavigationContext.tsx index 88e36b604..a5adb43d1 100644 --- a/packages/client/src/contexts/MapNavigationContext.tsx +++ b/packages/client/src/contexts/MapNavigationContext.tsx @@ -272,15 +272,15 @@ export const MapNavigationProvider = ({ throw new Error('Character not found.'); } - const success = await spawn(character.characterId); + const { error, success } = await spawn(character.characterId); - if (!success) { - throw new Error('Contract call failed.'); + if (error && !success) { + throw new Error(error); } renderSuccess('Spawned!'); } catch (e) { - renderError('Failed to roll stats.', e); + renderError('Failed to spawn.', e); } finally { setIsSpawning(false); } @@ -341,10 +341,14 @@ export const MapNavigationProvider = ({ break; } - const success = await move(character.characterId, newX, newY); + const { error, success } = await move( + character.characterId, + newX, + newY, + ); - if (!success) { - throw new Error('Contract call failed.'); + if (error && !success) { + throw new Error(error); } } catch (e) { renderError('Failed to move.', e); diff --git a/packages/client/src/lib/mud/createSystemCalls.ts b/packages/client/src/lib/mud/createSystemCalls.ts index c81cadf75..6559a493f 100644 --- a/packages/client/src/lib/mud/createSystemCalls.ts +++ b/packages/client/src/lib/mud/createSystemCalls.ts @@ -9,6 +9,7 @@ import { Entity, getComponentValue, + getComponentValueStrict, Has, HasValue, runQuery, @@ -32,6 +33,24 @@ import { SetupNetworkResult } from './setupNetwork'; export type SystemCalls = ReturnType; +type SystemCallReturn = Promise<{ + success: boolean; + error?: string; +}>; + +const getContractError = (error: unknown): string => { + if (error instanceof BaseError) { + const revertError = error.walk( + e => e instanceof ContractFunctionRevertedError, + ); + if (revertError instanceof ContractFunctionRevertedError) { + const args = revertError.data?.args ?? []; + return args[0] as string; + } + } + return 'An error occurred calling the contract.'; +}; + // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types export function createSystemCalls( /* @@ -71,22 +90,18 @@ export function createSystemCalls( encounterType: EncounterType, attackers: string[], defenders: string[], - ) => { + ): SystemCallReturn => { try { - if (!delegatorAddress) { - throw new Error('Delegator address not found'); - } - await publicClient.simulateContract({ - address: worldContract.address, abi: worldContract.abi, - functionName: 'UD__createMatch', + account: delegatorAddress, + address: worldContract.address, args: [ encounterType, attackers as `0x${string}`[], defenders as `0x${string}`[], ], - account: delegatorAddress, + functionName: 'UD__createMatch', }); const tx = await worldContract.write.UD__createMatch([ @@ -111,19 +126,14 @@ export function createSystemCalls( ); })[0]; - return success; - } catch (err) { - if (err instanceof BaseError) { - const revertError = err.walk( - err => err instanceof ContractFunctionRevertedError, - ); - if (revertError instanceof ContractFunctionRevertedError) { - const args = revertError.data?.args ?? []; - // eslint-disable-next-line no-console - console.error(args); - } - } - return false; + return { + success, + }; + } catch (e) { + return { + error: getContractError(e), + success: false, + }; } }; @@ -133,7 +143,8 @@ export function createSystemCalls( defenderId: Entity, actionId: Entity, weaponId: string, - ) => { + previousTurn: string, + ): SystemCallReturn => { try { const actions = [ { @@ -146,6 +157,19 @@ export function createSystemCalls( const fee = await getFee(); + await publicClient.simulateContract({ + abi: worldContract.abi, + account: delegatorAddress, + address: worldContract.address, + args: [ + encounterId.toString() as `0x${string}`, + playerId.toString() as `0x${string}`, + actions, + ], + functionName: 'UD__endTurn', + value: fee, + }); + const tx = await worldContract.write.UD__endTurn( [ encounterId.toString() as `0x${string}`, @@ -159,14 +183,34 @@ export function createSystemCalls( await waitForTransaction(tx); - return true; + const currentTurn = getComponentValueStrict( + CombatEncounter, + encounterId, + ).currentTurn; + + const success = currentTurn === BigInt(previousTurn) + BigInt(1); + + return { + success, + }; } catch (e) { - return false; + return { + error: getContractError(e), + success: false, + }; } }; - const enterGame = async (characterEntity: Entity) => { + const enterGame = async (characterEntity: Entity): SystemCallReturn => { try { + await publicClient.simulateContract({ + abi: worldContract.abi, + account: delegatorAddress, + address: worldContract.address, + args: [characterEntity.toString() as `0x${string}`], + functionName: 'UD__enterGame', + }); + const tx = await worldContract.write.UD__enterGame([ characterEntity.toString() as `0x${string}`, ]); @@ -174,14 +218,33 @@ export function createSystemCalls( await waitForTransaction(tx); const success = !!getComponentValue(Characters, characterEntity)?.locked; - return success; + return { + success, + }; } catch (e) { - return false; + return { + error: getContractError(e), + success: false, + }; } }; - const equipItems = async (characterEntity: Entity, itemIds: string[]) => { + const equipItems = async ( + characterEntity: Entity, + itemIds: string[], + ): SystemCallReturn => { try { + await publicClient.simulateContract({ + abi: worldContract.abi, + account: delegatorAddress, + address: worldContract.address, + args: [ + characterEntity.toString() as `0x${string}`, + itemIds.map(itemId => BigInt(itemId)), + ], + functionName: 'UD__equipItems', + }); + const tx = await worldContract.write.UD__equipItems([ characterEntity.toString() as `0x${string}`, itemIds.map(itemId => BigInt(itemId)), @@ -189,26 +252,42 @@ export function createSystemCalls( await waitForTransaction(tx); - const characterEquipment = getComponentValue( + const characterEquipment = getComponentValueStrict( CharacterEquipment, characterEntity, ); - if (!characterEquipment) return false; const { equippedArmor, equippedWeapons } = characterEquipment; const success = equippedArmor.some(id => itemIds.includes(id.toString())) || equippedWeapons.some(id => itemIds.includes(id.toString())); - return success; + return { + success, + }; } catch (e) { - return false; + return { + error: getContractError(e), + success: false, + }; } }; - const mintCharacter = async (account: Address, name: string, uri: string) => { + const mintCharacter = async ( + account: Address, + name: string, + uri: string, + ): SystemCallReturn => { try { + await publicClient.simulateContract({ + abi: worldContract.abi, + account: delegatorAddress, + address: worldContract.address, + args: [account, stringToHex(name, { size: 32 }), uri], + functionName: 'UD__mintCharacter', + }); + const nameHex = stringToHex(name, { size: 32 }); const simulatedTx = await worldContract.simulate.UD__mintCharacter([ account, @@ -226,7 +305,7 @@ export function createSystemCalls( await waitForTransaction(tx); - const sucess = !!getComponentValue( + const success = !!getComponentValue( Characters, encodeEntity( { characterId: 'uint256' }, @@ -234,13 +313,30 @@ export function createSystemCalls( ), ); - return sucess; + return { + success, + }; } catch (e) { - return false; + return { + error: getContractError(e), + success: false, + }; } }; - const move = async (characterEntity: Entity, x: number, y: number) => { + const move = async ( + characterEntity: Entity, + x: number, + y: number, + ): SystemCallReturn => { + await publicClient.simulateContract({ + abi: worldContract.abi, + account: delegatorAddress, + address: worldContract.address, + args: [characterEntity.toString() as `0x${string}`, x, y], + functionName: 'UD__move', + }); + const positionId = uuid(); Position.addOverride(positionId, { entity: characterEntity, @@ -255,9 +351,21 @@ export function createSystemCalls( ]); await waitForTransaction(tx); - return getComponentValue(Position, characterEntity); + const { x: newX, y: newY } = getComponentValueStrict( + Position, + characterEntity, + ); + + const success = x === newX && y === newY; + + return { + success, + }; } catch (e) { - return null; + return { + error: getContractError(e), + success: false, + }; } finally { Position.removeOverride(positionId); } @@ -266,13 +374,26 @@ export function createSystemCalls( const rollStats = async ( characterEntity: Entity, characterClass: StatsClasses, - ) => { + ): SystemCallReturn => { try { const fee = await getFee(); const randomString = 'UltimateDominion'; const userRandomNumber = keccak256(toBytes(randomString)); + await publicClient.simulateContract({ + abi: worldContract.abi, + account: delegatorAddress, + address: worldContract.address, + args: [ + userRandomNumber, + characterEntity.toString() as `0x${string}`, + characterClass, + ], + functionName: 'UD__rollStats', + value: fee, + }); + const tx = await worldContract.write.UD__rollStats( [ userRandomNumber, @@ -287,14 +408,27 @@ export function createSystemCalls( await waitForTransaction(tx); const success = !!getComponentValue(Characters, characterEntity); - return success; + return { + success, + }; } catch (e) { - return false; + return { + error: getContractError(e), + success: false, + }; } }; - const spawn = async (characterEntity: Entity) => { + const spawn = async (characterEntity: Entity): SystemCallReturn => { try { + await publicClient.simulateContract({ + abi: worldContract.abi, + account: delegatorAddress, + address: worldContract.address, + args: [characterEntity.toString() as `0x${string}`], + functionName: 'UD__spawn', + }); + const tx = await worldContract.write.UD__spawn([ characterEntity.toString() as `0x${string}`, ]); @@ -303,14 +437,30 @@ export function createSystemCalls( const success = !!getComponentValue(Spawned, characterEntity)?.spawned; - return success; + return { + success, + }; } catch (e) { - return false; + return { + error: getContractError(e), + success: false, + }; } }; - const unequipItem = async (characterEntity: Entity, itemId: string) => { + const unequipItem = async ( + characterEntity: Entity, + itemId: string, + ): SystemCallReturn => { try { + await publicClient.simulateContract({ + abi: worldContract.abi, + account: delegatorAddress, + address: worldContract.address, + args: [characterEntity.toString() as `0x${string}`, BigInt(itemId)], + functionName: 'UD__unequipItem', + }); + const tx = await worldContract.write.UD__unequipItem([ characterEntity.toString() as `0x${string}`, BigInt(itemId), @@ -318,13 +468,11 @@ export function createSystemCalls( await waitForTransaction(tx); - const characterEquipment = getComponentValue( + const characterEquipment = getComponentValueStrict( CharacterEquipment, characterEntity, ); - if (!characterEquipment) return false; - const { equippedArmor, equippedWeapons } = characterEquipment; const success = !( @@ -332,9 +480,14 @@ export function createSystemCalls( equippedWeapons.includes(BigInt(itemId)) ); - return success; + return { + success, + }; } catch (e) { - return false; + return { + error: getContractError(e), + success: false, + }; } }; diff --git a/packages/client/src/pages/Character.tsx b/packages/client/src/pages/Character.tsx index d586456fc..ee2ce4354 100644 --- a/packages/client/src/pages/Character.tsx +++ b/packages/client/src/pages/Character.tsx @@ -261,6 +261,7 @@ export const CharacterPage = (): JSX.Element => { if (isOwner && userCharacter) { setCharacter(userCharacter); await fetchCharacterItems(userCharacter); + setIsLoadingCharacter(false); return; } const _character = await fetchCharacter(); diff --git a/packages/client/src/pages/CharacterCreation.tsx b/packages/client/src/pages/CharacterCreation.tsx index 2f545f626..116f2cad2 100644 --- a/packages/client/src/pages/CharacterCreation.tsx +++ b/packages/client/src/pages/CharacterCreation.tsx @@ -200,14 +200,14 @@ export const CharacterCreation = (): JSX.Element => { 'Something went wrong uploading your character metadata.', ); - const success = await mintCharacter( + const { error, success } = await mintCharacter( delegatorAddress, name, characterMetadataCid, ); - if (!success) { - throw new Error('Contract call failed.'); + if (error && !success) { + throw new Error(error); } await refreshCharacter(); @@ -250,10 +250,13 @@ export const CharacterCreation = (): JSX.Element => { throw new Error('Character not found.'); } - const success = await rollStats(character.characterId, characterClass); + const { error, success } = await rollStats( + character.characterId, + characterClass, + ); - if (!success) { - throw new Error('Contract call failed.'); + if (error && !success) { + throw new Error(error); } refreshCharacter(); @@ -292,10 +295,10 @@ export const CharacterCreation = (): JSX.Element => { throw new Error('Character not found.'); } - const success = await enterGame(character.characterId); + const { error, success } = await enterGame(character.characterId); - if (!success) { - throw new Error('Contract call failed.'); + if (error && !success) { + throw new Error(error); } await refreshCharacter(); From b07f9963c4671989c53427d4aef8321fe1eaba2f Mon Sep 17 00:00:00 2001 From: ECWireless Date: Thu, 18 Jul 2024 16:15:24 -0600 Subject: [PATCH 13/14] Make sure player knows to equip at least 1 weapon --- packages/client/src/components/ActionsPanel.tsx | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/packages/client/src/components/ActionsPanel.tsx b/packages/client/src/components/ActionsPanel.tsx index f80bb7902..9de776e45 100644 --- a/packages/client/src/components/ActionsPanel.tsx +++ b/packages/client/src/components/ActionsPanel.tsx @@ -1,6 +1,7 @@ import { Button, HStack, Stack, Text, VStack } from '@chakra-ui/react'; import { Has, HasValue, runQuery } from '@latticexyz/recs'; import { useCallback, useMemo, useState } from 'react'; +import { Link } from 'react-router-dom'; import { useCharacter } from '../contexts/CharacterContext'; import { useCombat } from '../contexts/CombatContext'; @@ -163,6 +164,21 @@ export const ActionsPanel = (): JSX.Element => { )} {currentBattle && equippedItems && monster && ( + {equippedItems.length === 0 && ( + + You have no equipped items. In order to attack, you must go to + your{' '} + + character page + {' '} + and equip at least 1 item. + + )} {equippedItems.map((item, index) => (