Y.C      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                                                                                                                            !"#$%&'()*+,-./0123456789:;<=>?@AB Safe-Inferred Alias for C Antisplice new errorsAntisplice errorsTo embed ReErrors!"Wrong method for creating that." "I won't hit that." "I can't take that." "I can't walk there." E"Sorry, I can't cast that now. Check you health, mana and cooldowns." "Where?"B"I can't wear that there. You might want to try some other place?""I can't equip that.""Which one do you mean?""You don't carry one.""I can't see one here.""Please start with a verb.""I don't understand that."Escape the waiter loopTriggers program termination     Safe-Inferred6*Tyepclass for all vocab-memorizing monads.#Lookup a word and return its token.Learn a new word.!Check if a word is already known.?The vocab monad. Carries the currently noun vocab as its state.0Algebraic type for primitive and complex tokens. 6Complex noun, with attributes and maybe ordinal index. !"#$%&'()*+,-./ !"#$%&'(('&%$#"! /.-,+*)  ('&%$#"! )*+,-./None &+2346=HKME0!Typeclass for all dungeon monads.1Get the dungeon state.2Put the dungeon state.3Lower a given DungeonT function4/The dungeon monad. Everything runs inside this.7State type for DungeonT=10 directions to goH.State type for a path from one room to anotherM Typeclass for all player monads.NGet the player state.OPut the player state.PModify the player state.Q3The player monad. Used to create or modify players.TState type for PlayerTD The player's relation to a questE A quest typedResponse of an object getterhMethod of using recipesj3Currency descriptor (description and expander name)oPhantom ID type for currenciesrPhantom ID type for cooldownsuPhantom ID type for playerswA player stereotype|1Some prerequisite that may be invoked by the user},Some handler that may be invoked by the user~Typeclass for all object monadsGet the object statePut the object state3The object monad. Used to create or modify objects.State type for ObjectT1Target for attacks. May be a player or an object.!Phantom ID type for object kinds.Phantom ID type for objects.Object features.7Implies an additional particle for the room description-Implies an additional stereotype for the nearcarryingwearing playerMay move around.Is connected to a real player.Has a known weight.*Redeem automatically for a given currency.'May be redeemed for the given currency."May be equipped at the given slot.May be eaten.  May be drunk. May be used.May be acquired.May take damage.+Relation between the player and the object. A faction8Typeclass for all types that are convertible to or from FTypeclass for all room monads.Get the room statePut the room state3The room monad. Used to create or modify room data.State type for RoomTKey for equipment slot!Key for item or player statisticsA boxed  to avoid ImpredicativeTypes#The common type for all predicates.A boxed  to avoid ImpredicativeTypes%The common type of all prerequisites.A boxed  to avoid ImpredicativeTypes&The common type of all event handlers.GWrap up HF, most Chatty classes and some utility classes to a single sonstraint. Matches any G contextHWrap up 0, I  and  to a single constraint. Matches any H contextEFor compatibility. Earlier versions of DungeonT had a field for that. EFor compatibility. Earlier versions of DungeonT had a field for that.0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcDJKLEMNOPQRdefghijklmnopqrstuvwxyz{|}~GH STUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ =GFEDCBA@?>HIJKL~jklmnoqpuvTUVWXYZ[\]^_`abcQRSMNOPwxyz{rtsdgfe}|hi789:;< 4560123]0123456789:;<= GFEDCBA@?>HIJKLMNOPQRSTUVWXYZ[\]^_`abcDLKJEMNOPQRdgfehijklmnoqprtsuvwxyz{|}~&  GH STUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~None2346 %Automatically derive an instance for  3Automatically derive an instance for 'MonadError e' %Automatically derive an instance for 0%Automatically derive an instance for ~%Automatically derive an instance for M%Automatically derive an instance for %Automatically derive an instance for                 None &23468HMT+Typeclass for evaluation result combi masks5Typeclass for evaluation result post-processing masks/Typeclass for evaluation result predicate masksPass-through a resultIgnore a token or resultProvide an optional mask partTProvide multiple alternatives and catch the first matching one as well as its result!,Catches an available, carried or seen object%&Catches the remaining part of the line'#Catches the number of an Ordn token)Catches an entire token,;Catches the string of a token matching the given token type6,Ensures that the end of the input is reached8ETypeclass for input masks (either single modules or lists of modules)Use a mask on a list of tokens;_Use a mask on a list of tokens and tuplify the result. Dispatch errors to the underlying monad.<'Try to use a mask on a list of tokens. Token is adjective?Token is noun?,Merge nouns and adjectives to a complex nounW !"#$%&'()*+,-./0123456789:;<+ !"#$%&'()*+,-./0123456789:;<+;<89:67,543210/.-)+*'(%&!$#" < !$#"%&'()+*, 543210/.-6789:;<None&3:HM=FA special condition that relies on an evaluation result predicate mask?JA special handler that relies on an evaluation result post-processing maskAOA special consumer whose conditions and actions rely on evaluation result masksCqComposes a masked consumer from an evaluation result post-processing mask and a handler that relies on its resultDComposes a masked consumer from an evaluation result combi mask and a handler that relies on its possible result. Takes a third parameter for the correct type. In most cases you'll want E instead.EqComposes a masked consumer from an evaluation result combi mask and a handler that relies on its possible result.F>Adds an evaluation result predicate mask to a masked consumer.G"Concatenates two masked consumers. =>?@ABCDEFGHI =>?@ABCDEFG AB?@=>IHCDEFG =>?@ABCDEFGHICDEFGNone2346 JKLMNOPQRSTJJJJJJJJJJJJJJJJJJJJJJJJJJJJKKKKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPPPPPPPPPPPPPPPPPPPQQQQQQQRRRRRRRRRRRRRRRTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTS JKLMNOPQRSTNone&3HMAUModify the room state.V"Get the current room's descriptionWGet the current room's titleXSet the current room's description setRoomDesc :: (MonadRoom m,IsText t) => t -> m () setRoomDesc t = modifyRoomState $ s -> s{roomDescOf=toText t}Set the current room's titleY Mark the current room as visitedZ~Enter the given room and trigger most events, but don't announce it. Result tells whether this room is visited the first time.[HReenter the current room and trigger all events (but don't announce it).\ZEnter the given room, trigger all events and announce it. On the first visit, look around.]*Construct a new room using the room monad.^0Run a function in the context of the given room._=Establish a path from one room to another one (one-way only).`+Enter a neighbouring room by its direction.aNAdd a new object to the current room. It is contructed using the object monad.b*Construct a room object (but don't add it)c<Remove an object from the current room and return its state.d9Insert an already constructed object to the current room.eModify the object statefGet the object's titlegSet the object's titlehGet the object's descriptioniSet the object's descriptionjGet the object's namesk!Add a name for the current objectl2Check if the given name matches our current objectm'Add an attribute for the current objectn*Create a new player using the player monadoFMove the current player to the given room, but don't trigger anything.p%Check if the current object is a mob.q(Set whether the current object is a mob.rSet object kind.sRegister an object kind.t*Check if the current object is acquirable.u-Set whether the current object is acquirable.v<Schedule an event for a given time offset (in milliseconds).wSet the current mob's routex'The given object may continue its routeyHOnly run the given function if the player is inside the also given room.z6Only run the given function if the given object exists{IOnly run the given function if the given object is in the also given room|MOnly run the given function if the given object is not in the also given room}TOnly run the given function if an object of the given kind is in the also given room~TOnly run the given function if no object of the given kind is in the also given roomZDetermine which rooms contain the given object (won't be more than one, but we're careful)=Acquire the given object and put it in the player's inventory?Drop the given object and remove it from the player's inventory+Add an object feature to the current object4Add a room description segment to the current object+Register an object form and return its atomInstanciate a registered form%Equip the given object at a given key Equip the given object somewhereGet equipped objectAdd equippable slotSet/unset cooldownGet cooldown stateGet currency stateModify currency stateRegister a currency/Run a function in the context of a given player/Run a function in the context of a given objectGDamage a target (no matter whether player or mob) without setting focusFocus an opponent@Deal damage to an opponent. Real damage is influenced by random.OConsider the player's alcohol rate and mask the string with random underscores.Consume alcohol.CUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~AUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~AUVWXYZ[\`]_acdbeigkmqusrfhjlptwxvno^yz{|}~CUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ None68*Typeclass for every monad that saves stats$Set the given key to the given valueLookup the given key.Typeclass for every pure data that saves stats$Set the given key to the given valueLookup the given key6Calculates the stats of the objects the player carries2Calculates the total stereotype the player carries   None&234HMT An action that is run before a specific event.An action that is run after a specific event.9A general action, which may be used for skills and gates.AA typeclass for all action types carrying an execution condition.$Conjunction _with_ short evaluation.$Disjunction _with_ short evaulation.'Conjunction _without_ short evaluation.'Disjunction _without_ short evaluation..Use for actions that consume a given currency.9Use for actions that consume an object of the given kind.Deal damage to opponent-Use for actions that require a cooldown time.1Use for actions that suffer from global cooldown.&& None &234HMTCTypeclass for everything that may be extended by consumers using !+Add a consumer to the skill.4Typeclass for everything that may act as a consumer."A single consumer. Build it using  bareAction,  bareCondition and monoid concatenation.A recipe. Build it using the  compositor and the  function.A skill. Build it using the  compositor and the  function.1A wrapper type for skill execution preconditions.Focus direct objectAOptionally ocus direct object (obligatory if none is focused yet)(Add a consumer to the monadic extensible(Add a monadic consumer to the extensible0Add a monadic consumer to the monadic extensible1Build a consumer using new-style input validation$Map a masked consumer to a call maskInfix version of validConsumerFInfix version of validConsumer, swallowing the empty handler parameter2Build a condition using new-style input validation8Dispatch the remaining part of the line as a recipe callDBuild a bogus skill that does nothing but has a name. Use this with  to build powerful skills.TBuild a bogus recipe that does nothing has a name and a usage method. Use this with  to build powerful recipes.<Wrap the skills into a form that is accepted by stereotypes.=Wrap the recipes into a form that is accepted by stereotypes.Run the given consumer5$$' None2346#For monadic stereotype construction2Register the given stereotype and return its atom./Add the given stereotype to the current player.%Remove one stereotype and add another1Create a stereotype that carries a stats modifier'Create a stereotype that carries skills(Create a stereotype that carries recipesCCreate a stereotype that carries a skill from a monadic compositionCCreate a stereotype that carries a skill from a monadic composition2Merge the given pure stereotype into the built one5Merge the given monadic stereotype into the built one4Merge the given pure skill into the built stereotype7Merge the given monadic skill into the built stereotype5Merge the given pure recipe into the built stereotype8Merge the given monadic recipe into the built stereotype?Process the builder chain and register the resulting stereotypeDefault stereotype. None&3HM9Typeclass for everything that may be converted to a gate.%A composable wrapper for a path stateA one-way path from f to t.<A mutual path. The specified direction is for the path from f to t!, the opposite one is chosen for t to f.,A unipath that is guarded by a prerequisite.                None&3HM!Triggered when the object is used"Triggered when the object is eaten#Triggered when the object is drunk.Triggered when the object dies.'Triggered when the object takes damage.PTriggered when the object (e.g. a mob with a route) leaves the room of the user.PTriggered when the object (e.g. a mob with a route) enters the room of the user.)Triggered when the user reads the object.!;Triggered when the user inspects the object the first time.#RTriggered when the user inspects the object (looks at/into it, listens to it, ...)%;Triggered when the user acquires the object the first time.',Triggered when the user acquires the object.)7Triggered when the user sees the object the first time.+BTriggered when the user sees the object (e.g. he enters its room).-zTriggered when (a) the room is announced (e.g. when entered), (b) the user looks around in the room containing the object./5Triggered when the user looks into a specific object.1CTriggered when the user looks around or looks at a specific object.35Triggered when the user enters a room the first time.50Triggered when the user enters a room or object.R !"#$%&'()*+,-./0123456& !"#$%&'()*+,-./0123456&563412-.+,)*'(%&#$!"/0 ? !"#$%&'()*+,-./0123456None&3HMT8Run a given input line.78788778None39$Read Eval Print Loop for Antisplice.9999None::::None&3E;7Construct a simple room from a title and a description.<1Construct a sign from a text and some attributes.=LConstruct a mob from a title, some names, a description and some attributes.>JConstruct a mob route from some room IDs and a time delay in milliseconds.?pConstruct a room nesting object from a title, a description, some names, some attributes and the target room ID.@[Construct an acquirable object from a title, a description, some names and some attributes.A0Add a room descriptor object to the current room;<=>?@A;<=>?@A;<=>?@A;<=>?@ANone3HMBA dungeon constructor functionBK      !"#$%&'()*+,-./0C123456789:;<=>  !"#$%&'(0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~  !"#$%&'()*+,-./0123456789:;<UVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ !"#$%&'()*+,-./0123456789;<=>?@ABBB? !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJJKLMNOPQRSTUVWXYZZ[\]^_`abcdeefghijklmnopqrstuvwxxyyz{|}}~      !"##$$%&%'()*+,-./01123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                                                                                                                                 !"#$%&'()*+,-./0123456789:;<=>?@ABCD9EFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                       5555555555555555555555555555  5  5  5  5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5!5"5#5$5%5&5'56(56)56)5*+5*,5*-5*-5*.5*/5*05*15*25*35*45*55*56antisplice-0.17.0.3Game.Antisplice.ErrorsGame.Antisplice.Monad.VocabGame.Antisplice.Monad.DungeonGame.Antisplice.TemplatesGame.Antisplice.CallGame.Antisplice.MaskedSkillsGame.Antisplice.MonadGame.Antisplice.RoomsGame.Antisplice.StatsGame.Antisplice.ActionGame.Antisplice.SkillsGame.Antisplice.StereosGame.Antisplice.PathsGame.Antisplice.EventsGame.Antisplice.LangGame.Antisplice.Terminal.ReplGame.Antisplice.SingleUserGame.Antisplice.PrototypesGame.AntispliceSplErrTReErrorByeForwardUnconUnintSplErrWrongMethodErrorWontHitThatErrorCantAcquireThatErrorCantWalkThereErrorCantCastThatNowErrorWhereToEquipErrorCantEquipThatThereErrorCantEquipThatError WhichOneErrorDontCarryOneErrorCantSeeOneErrorVerbMustFirstErrorUnintellegibleError DoneError QuitError UnknownError MonadVocab lookupVocab insertVocab vocabKnownVocabTVocab runVocabTTokenNouncSkillnFixeOrdnAdjNounPrepVerbUnintellegible$fMonadVocabVocabT$fMonadIOVocabT$fMonadTransVocabT $fMonadVocabT$fFunctorVocabT$fTuplifyTokenToken $fShowToken MonadDungeongetDungeonStateputDungeonState lowerDungeonDungeonTDungeon runDungeonT DungeonStateroomsOf playersOftimeTriggersOf currenciesOf DirectionDownUp NorthWestWest SouthWestSouth SouthEastEast NorthEastNorth PathStatepathPrerequisiteOfpathTriggerBeforeWalkOfpathTriggerAfterWalkOf MonadPlayergetPlayerStateputPlayerStatemodifyPlayerStatePlayerTPlayer runPlayerT PlayerState playerIdOf playerRoomOfplayerMaxHealthOfplayerInventoryOf playerEquipOfplayerBaseStatsOfplayerStereosOfplayerReputationOfplayerCurrenciesOfplayerCooldownsOfplayerOpponentOfplayerActiveQuestsOfplayerAlcoholOfplayerSoberingActiveOfGetterResponse NoneFoundTooManyFound RecipeMethodCurrency currencyIdOfcurrencyDescOfcurrencyNameOf CurrencyIdHealth CooldownIdGlobalCooldownPlayerId PlayerStereostereoCalcStatBonusstereoSkillBonusstereoRecipeBonus InvokableP Invokable MonadObjectgetObjectStateputObjectStateObjectTObject runObjectT ObjectState objectIdOf objectKindOf objectTitleOf objectDescOf objectNamesOfobjectAttributesOfobjectOnceSeenOfobjectOnceAcquiredOfobjectOnceInspectedOfobjectOnceEquippedOfobjectMaxHealthOfobjectCurHealthOf objectRouteOfobjectFeaturesOfobjectFactionOfobjectTriggerOnFirstSightOfobjectTriggerOnEachSightOfobjectTriggerOnFirstAcquireOfobjectTriggerOnEachAcquireOf objectTriggerOnFirstInspectionOfobjectTriggerOnEachInspectionOfobjectTriggerOnLookAtOfobjectTriggerOnLookIntoOfobjectTriggerOnReadOfobjectTriggerOnEnterOfobjectTriggerOnRoomEnterOfobjectTriggerOnRoomLeaveOfobjectTriggerOnAnnounceOfobjectTriggerOnDropOfobjectTriggerOnFirstEquipOfobjectTriggerOnEachEquipOfobjectTriggerOnUnequipOfobjectTriggerOnDieOfobjectTriggerOnTakeDamageOfobjectTriggerOnUseOfobjectTriggerOnEatOfobjectTriggerOnDrinkOf DamageTarget TargetObject TargetPlayerKindId FalseKindObjectId FalseObjectFeature DescribedStereoMobilePlayedWeighty AutoRedeem Redeemable EquipableEatable DrinkableUsable Acquirable DamagableRelationWornCarriedNearAttitudeExaltedFriendlyHostileFaction factionNamefactionTriggerOnHostileOffactionTriggerOnFriendlyOffactionTriggerOnExaltedOfIsTexttoTextfromText MonadRoom getRoomState putRoomStateRoomTRoomrunRoomT RoomState roomTitleOf roomObjectsOfroomTriggerOnFirstEnterOfroomTriggerOnEachEnterOfroomTriggerOnLeaveOfroomTriggerOnLookOfroomTriggerOnAnnounceOfEquipKeyFinger2Finger1NeckHandsBackLegsHeadWaistWristsFeetChestOffHandMainHandStatKey AttackPowerCooldownDurationHasteArmorSpirit IntelligenceStaminaAgilityStrength PredicateBox Predicate runPredicatePrerequisiteBox PrerequisiterunPrerequisite HandlerBoxHandler runHandlerChattyDungeonMDungeonM currentRoomOfplayerOf PlayerFilterTmkRoommkFail mkDungeonmkObjectmkPlayermkIOmkVocab CombiMaskctopredctopostPostMaskusepostPredMaskusepmaskPassIgnoreOptionalWhichCatchObj CarriedObject SeenObjectAvailableObject RemainingCatchOrd CatchToken CatchNounc CatchByTypeCatchAny CatchUnint CatchSkilln CatchFixe CatchOrdnCatchAdj CatchNoun CatchPrep CatchVerb EnsureLineEndCallMaskusemask verbosemask processMasktryMask PredMaskCondPMCondPostMaskHandler PMHandlerMaskedConsumerMasCon&->-&?->&?->+?+&$fNoneMaskedConsumer$fMonoidMaskedConsumer$fChPrinterFailT$fChPrinterDungeonT$fChPrinterRoomT$fChPrinterObjectT$fMonadErrorSplErrCounterT$fChPrinterPlayerT$fChPrinterVocabT$fMonadErrorSplErrAtomStoreT$fChScannerFilterT$fChBroadcasterPlayerIdDungeonT&$fChChannelPrinterPlayerIdAnsiPrinterTmodifyRoomState getRoomDesc getRoomTitle setRoomTitlemarkRoom enterRoomreenterCurrentRoomenterAndAnnounce constructRoomwithRoom establishWay changeRoom addRoomObjectconstructObjectremoveRoomObjectinsertRoomObjectmodifyObjectStategetObjectTitlesetObjectTitle getObjectDesc setObjectDescgetObjectNames addObjectNamematchObjectName addObjectAttrsubscribePlayer setPlayerRoomgetObjectIsMobsetObjectIsMob setObjectKind registerKindgetObjectIsAcquirablesetObjectIsAcquirableschedule setMobRoutecontinueMobRoute guardRoom guardObjectguardObjectInRoomguardObjectNotInRoomguardKindInRoomguardKindNotInRoom roomOfObject acquireObject dropObject addFeature addDescSeg registerForminstanciateForm equipObjectAt equipObject getEquipment addEquipSlot setCooldown getCooldown getCurrencymodifyCurrencyregisterCurrency withPlayer withObjectdamage focusOpponent dealDamagedrunkenconsumeAlcohol HasStatsMsetStatMgetStatMHasStatssetStatgetStatcalcStat totalStereo$fNonePlayerStereo$fMonoidPlayerStereo$fHasStatsMPlayerT$fHasStatsPlayerState ActionBeforerunActionBefore ActionAfterrunActionAfterAction askAction runActionIsAction#&&#||!&&!||andsandlorsorlconsumeCurrencyA consumeKindA dealDamageAimplyCooldownAimplyGlobalCooldownA$fIsActionMaybe$fIsActionActionBefore$fIsActionActionAfter$fMonoidActionBefore$fMonoidActionAfter$fNoneActionBefore$fNoneActionAfter$fIsActionAction$fMonoidAction $fNoneAction$fIsActionPredicateBox$fMonoidPredicateBox$fIsActionPrerequisiteBox$fMonoidPrerequisiteBox Extensible!+ ToConsumer toConsumerConsumerReciperecipeConditionOfrecipeActionOfrecipeMethodOf recipeNameOfSkillskillConditionOf skillActionOf skillNameOf Condition runCondition' focusDirectCoptionallyFocusDirectC>!+!+>>!+> validConsumer#-#->#->>validCondition callRecipeskillrecipe wrapSkills wrapRecipes runConsumerStereoBuilderT StereoBuilderrunStereoBuilderTregisterStereo addStereo replaceStereo statsStereo skillsStereo skillStereoM mergeStereo mergeStereoM mergeSkill mergeSkillM mergeRecipe mergeRecipeMregisterStereoM defaultStereo visualStereo manualStereo consumeStereo GatifiabletoGateGaterunGateunipathbipath guardedPath gatedPath$fGatifiableActionAfter$fGatifiableActionBefore$fGatifiablePathState$fGatifiablePrerequisiteBox$fGatifiableGate$fIsActionGate $fMonoidGate $fNoneGateOnUseonUseOnEatonEatOnDrinkonDrinkOnDieonDie OnTakeDamage onTakeDamage OnRoomLeave onRoomLeave OnRoomEnter onRoomEnterOnReadonReadOnFirstInspectiononFirstInspection OnInspection onInspectionOnFirstAcquireonFirstAcquire OnAcquire onAcquire OnFirstSight onFirstSightOnSightonSight OnAnnounce onAnnounce OnLookInto onLookIntoOnLookonLook OnFirstEnter onFirstEnterOnEnteronEnterdefVocabactrepl singleUserctorRoomctorSignctorMob ctorRoutectorRoomNestingctorAcq addRoomDesc Constructorchatty-utils-0.7.1.2Data.Chatty.FailFailTQuestRelQuest text-1.1.1.3Data.Text.InternalTextSomeChattyDungeon SomeDungeon mtl-2.1.3.1Control.Monad.Error.Class MonadErrorLocked InProgress Completed questTitleOf questDescOfquestPreconditionOfquestFinishConditionOfquestTriggerOnFinishOf$fMonadDungeonDungeonT$fMonadPlayerDungeonT$fMonadRoomDungeonT$fMonadTransDungeonT$fMonadDungeonT$fFunctorDungeonT$fNoneDungeonState$fTuplifyDirectionDirection$fNonePathState$fMonadPlayerPlayerT$fMonadTransPlayerT$fMonadPlayerT$fFunctorPlayerT%$fIndexableCurrencyCurrencyIdCurrency)$fIndexableCooldownIdCooldownIdCooldownId)$fIndexablePlayerStatePlayerIdPlayerState$fNoneGetterResponse$fTuplifyPlayerIdPlayerId$fMonadObjectObjectT$fMonadTransObjectT$fMonadObjectT$fFunctorObjectT)$fIndexableObjectStateObjectIdObjectState$fTuplifyObjectStateObjectState $fNoneKindId$fNoneObjectId$fTuplifyKindIdKindId$fTuplifyObjectIdObjectId $fIndexableFeatureFeatureFeature$fTuplifyFeatureFeature$fTuplifyRelationRelation$fTuplifyAttitudeAttitude$fTuplifyFactionFaction $fIsText[] $fIsTextText$fMonadRoomRoomT$fMonadTransRoomT $fMonadRoomT$fFunctorRoomT$fTuplifyRoomStateRoomState#$fIndexableEquipKeyEquipKeyEquipKey$fTuplifyEquipKeyEquipKey$fTuplifyStatKeyStatKey$fNonePredicateBox$fNonePrerequisiteBox$fNoneHandlerBoxtransformers-0.3.0.0Control.Monad.IO.ClassMonadIO processMask'isAdjisNoun mergeNoununintunintpfirstSeq getObject'availableObjectscarriedObjects seenObjects$fCombiMaskPassaIgnorePass$fCombiMask(->)a(->)(->)$fCombiMask(,)a(,)(->)$fCombiMaskIgnoreaIgnoreIgnore$fCombiMaskConsConsConsCons$fCombiMaskNilNilNilNil$fPostMaskPassaCons$fPostMask(->)TitledCons$fPostMask(->)aCons$fPostMaskIgnoreaNil$fPostMaskConsConsrx$fPostMaskNilNilNil$fPredMaskFeatureTitled$fPredMaskIgnorea$fPredMask[][]$fPredMask(,)x$fPredMask(->)x$fPredMask(,)x0$fPredMaskConsCons$fPredMaskNilNil$fCallMaskConsrx$fCallMaskNilNil$fCallMaskRemainingCons$fCallMaskCatchObjCons$fCallMaskCatchTokenCons$fCallMaskCatchOrdCons$fCallMaskCatchByTypeCons$fCallMaskEnsureLineEndNil$fCallMask[]Nil$fCallMaskIgnoreNil$fCallMaskTokenNil$fCallMaskWhichar$fCallMaskOptionalam expandDun$fChExpandDungeonT runCondition$fExtensibleConsumer$fExtensibleRecipe$fExtensibleSkill$fToConsumerAction$fToConsumerPredicateBox$fToConsumerCondition$fToConsumerHandlerBox$fToConsumerRecipe$fToConsumerSkill$fToConsumerConsumer$fNoneConsumer$fIsActionConsumer$fMonoidConsumer$fNoneCondition$fIsActionCondition$fMonoidCondition recipesStereo recipeStereoM$fMonadTransStereoBuilderT$fMonadStereoBuilderT$fFunctorStereoBuilderT$fChPrinterStereoBuilderTroomOnFirstEnterroomOnEachEnter roomOnLookroomOnAnnounceobjectOnFirstSightobjectOnEachSightobjectOnFirstAcquireobjectOnEachAcquireobjectOnFirstInspectionobjectOnEachInspectionobjectOnLookAtobjectOnLookInto objectOnRead objectOnEnterobjectOnRoomEnterobjectOnRoomLeaveobjectOnAnnounce objectOnDieobjectOnTakeDamage objectOnDrink objectOnEat objectOnUse$fOnUseObjectT$fOnEatObjectT$fOnDrinkObjectT$fOnDieObjectT$fOnTakeDamageObjectT$fOnRoomLeaveObjectT$fOnRoomEnterObjectT$fOnReadObjectT$fOnFirstInspectionObjectT$fOnInspectionObjectT$fOnFirstAcquireObjectT$fOnAcquireObjectT$fOnFirstSightObjectT$fOnSightObjectT$fOnAnnounceObjectT$fOnAnnounceRoomT$fOnLookIntoObjectT$fOnLookObjectT $fOnLookRoomT$fOnFirstEnterRoomT$fOnEnterObjectT$fOnEnterRoomTaliasesreplaceAliasesreactData.Chatty.AtomsmapAtomAtomFunAtomFunAtom2 Container runAtomStoreT AtomStore AtomStoreT cloneAtomdispAtomgetAtomputAtomfunAtom2funAtomnewAtomChAtoms runRedundant RedundantData.Chatty.Counter withCounter runCounterTCounterCounterTcountOn ChCounterData.Chatty.BST bstInorderbstHead bstLookupbstMinbstMax bstRemove bstInsertvalueOfindexOf Indexable anyBstInorder anyBstHead anyBstEmpty anyBstLookup anyBstMin anyBstMax anyBstRemove anyBstInsertAnyBSTEmptyBSTBSTData.Chatty.None reduceMaybereduce cleanMaybe expandMaybe joinMaybenoneMnoneNonerunFailTFailData.Chatty.Hetero:-:ConsNiltappendAppendtnothingtjust IntoMaybetuplifyTuplifyTitled