h)KT;O      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ 0.6.0.0 Safe-Inferred3 ghc-debug-commonWe are running profiled code but not doing any profiling right now      Safe-Inferred3 Safe-Inferred ()*3?ghc-debug-commonA bitmap that records whether each field of a stack frame is a pointer.?ghc-debug-commonCheck if the ClosurePtr is block allocated or not TODO: MP: These numbers are hard-coded from what mblock_address_space.begin and mblock_address_space.end were when I inspected them in gdb. I don't know if they are always the same of should be queried from the debuggeeMghc-debug-common0<<-.1 #/$/56:NCB7?DJILMAK!"8;9@=OHGEF)*'(23%&4+,>0< Safe-Inferred %&'3589:;? <ghc-debug-common Package nameghc-debug-common Module nameghc-debug-commonConstructor nameghc-debug-common2Information needed to decode a set of stack framesghc-debug-commonThis is the representation of a Haskell value on the heap. It reflects https://gitlab.haskell.org/ghc/ghc/blob/master/includes/rts/storage/Closures.hThe data type is parametrized by 4 type parameters which correspond to different pointer types.All Heap objects have the same basic layout. A header containing a pointer to the info table and a payload with various fields. The info field below always refers to the info table pointed to by the header. The remaining fields are the payload.See  https://gitlab.haskell.org/ghc/ghc/wikis/commentary/rts/storage/heap-objects for more information.ghc-debug-commonA data constructorghc-debug-common A functionghc-debug-common8A thunk, an expression not obviously in head normal formghc-debug-common3A thunk which performs a simple selection operationghc-debug-common#An unsaturated function applicationghc-debug-commonA function applicationghc-debug-commonA suspended thunk evaluationghc-debug-commonA pointer to another closure, introduced when a thunk is updated to point at its valueghc-debug-commonA byte-code object (BCO) which can be interpreted by GHC's byte-code interpreter (e.g. as used by GHCi)ghc-debug-common*A thunk under evaluation by another threadghc-debug-commonA  ByteArray#ghc-debug-commonA MutableByteArray# ghc-debug-commonA SmallMutableArray#ghc-debug-commonAn MVar#7, with a queue of thread state objects blocking on themghc-debug-commonA MutVar#ghc-debug-commonAn STM blocking queue.ghc-debug-commonAnother kind of closureghc-debug-commonPointer argumentsghc-debug-commonNon-pointer argumentsghc-debug-common,Pointer to the object being selected fromghc-debug-common Arity of the partial applicationghc-debug-commonSize of the payload in wordsghc-debug-common Pointer to a ghc-debug-common(Sequence of already applied argumentsghc-debug-common(Sequence of already applied argumentsghc-debug-commonStack right before suspensionghc-debug-commonTarget closureghc-debug-common+A pointer to an ArrWords of instructionsghc-debug-common'A pointer to an ArrWords of literalsghc-debug-common0A pointer to an ArrWords of byte code objectsghc-debug-commonThe size of this BCO in wordsghc-debug-commonAn StgLargeBitmap describing the pointerhood of its args/free varsghc-debug-commonSize of array in bytesghc-debug-common Array payloadghc-debug-commonNumber of pointersghc-debug-common ?? Closures.h vs ClosureMacros.hghc-debug-common!Array payload Card table ignoredghc-debug-commonPointer to head of queueghc-debug-commonPointer to tail of queueghc-debug-commonPointer to closureghc-debug-commonPointer to contentsghc-debug-common?? Here so it looks like an INDghc-debug-commonThe blackhole closureghc-debug-commonThe owning thread state objectghc-debug-common??ghc-debug-commonstackobj from StgTSOghc-debug-commonstack size in *words*ghc-debug-commonnon-zero => dirtyghc-debug-common2next weak pointer for the capability, can be NULL.ghc-debug-commonExclusive sizeghc-debug-common*Information needed to decode a PAP payloadghc-debug-commonInformation needed to decode a ghc-debug-commonPlease report this as a bugghc-debug-commonPlease report this as a bugghc-debug-commonPlease report this as a bug Safe-Inferred %&'(389:,ghc-debug-common8The whole graph. The suggested interface is to only use , as the internal representation may change. Nevertheless, we export it here: Sometimes the user knows better what he needs than we do.ghc-debug-commonFor heap graphs, i.e. data structures that also represent sharing and cyclic structures, these are the entries. If the referenced value is Nothing, then we do not have that value in the map, most likely due to exceeding the recursion bound passed to .Besides a pointer to the stored value and the closure representation we have a slot for arbitrary data, for the user's convenience.ghc-debug-common Creates a  for the value in the box, but not recursing further than the given limit.ghc-debug-common Creates a  for the values in multiple boxes, but not recursing further than the given limit.ghc-debug-commonAdds the given annotation to the entry at the given index, using the  operation of its  instance.ghc-debug-commonPretty-prints a HeapGraph. The resulting string contains newlines. Example for "let s = "Ki" in (s, s, cycle "Ho"): 9let x1 = "Ki" x6 = C# 'H' : C# 'o' : x6 in (x1,x1,x6)ghc-debug-commonIn the given HeapMap, list all indices that are used more than once. The second parameter adds external references, commonly [heapGraphRoot].ghc-debug-commonA pretty-printer that tries to generate valid Haskell for evalutated data. It assumes that for the included boxes, you already replaced them by Strings using   or, if you need to do IO,  .The parameter gives the precedendence, to avoid avoidable parenthesises.ghc-debug-commonThe value to start withghc-debug-common*Starting values with associated data entry Safe-Inferred"%&)*35;?5ghc-debug-commonA request sent from the debugger to the debuggee parametrized on the result type.ghc-debug-commonRequest protocol versionghc-debug-commonPause the debuggee.ghc-debug-commonResume the debuggee.ghc-debug-common%Request the debuggee's root pointers.ghc-debug-commonRequest a closureghc-debug-commonRequest an info tableghc-debug-commonRequest the SRT of an info table. Some closures, like constructors, can never have SRTs. Thunks, functions and stack frames may have SRTs. Returns Nothing when the closure does not have an SRT.ghc-debug-commonWait for the debuggee to pause itself and then execute an action. It currently impossible to resume after a pause caused by a poll.ghc-debug-commonA client can save objects by calling a special RTS method This function returns the closures it saved.ghc-debug-commonRequest the pointer bitmap for a stack frame at a given offset from a StackPtr.ghc-debug-commonDecode the bitmap contained in a StgFunInfoTable Used by PAP and AP closure types.ghc-debug-commonRequest the constructor description for an info table. The info table must be from a ghc-debug-common*Lookup source information of an info tableghc-debug-common(Copy all blocks from the process at onceghc-debug-common3Request the block which contains a specific pointerghc-debug-commonRequest the cost center stackghc-debug-commonRequest the cost center entryghc-debug-commonRequest the index table.ghc-debug-commonRequest the CCS_MAIN pointerghc-debug-commonThe decision about whether to fork the running process or pause it running whilst we are debugging it.ghc-debug-commonWhether a request mutates the debuggee state, don't cache these onesghc-debug-commonRequests which will always answer the same. For example, info tables are immutable and so requesting an info table will always result in the same value and is safe to cache across pause lines.ghc-debug-commonPerform a request-. #/$!")*'(%&+,156:NCB7?DJILMAK8;9@=OHGEF234>0< Safe-Inferred3:ghc-debug-common0How to decode the info table for the stack frameghc-debug-common>How to decode the bitmap for the stack frame at a given offset Safe-Inferred %&3;;ghc-debug-commonCompute  ceiling (a/b).   !!""##$$%%&&''()**++,,--..(/0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ ghc-debug-common-0.6.0.0-inplaceGHC.Debug.Types.VersionGHC.Debug.UtilsGHC.Debug.Types.PtrGHC.Debug.Types.ClosuresGHC.Debug.Types.GraphGHC.Debug.TypesGHC.Debug.Decode.StackGHC.Debug.Decodeghc-debug-common Data.FoldablemapmapMVersionv_majorv_patch v_profilingv_tntc ProfilingMode NoProfilingRetainerProfiling LDVProfiling EraProfilingOtherProfiling isProfiledRTS $fShowVersion $fOrdVersion $fEqVersion$fEqProfilingMode$fOrdProfilingMode$fShowProfilingMode$fEnumProfilingModerunGet_ PtrBitmapRawBlockBlockPtrRawStack RawClosure RawInfoTableStackPtr ClosurePtrUntaggedClosurePtr IndexTablePtrCCPtrCCSPtrRetainerSetPtr InfoTablePtr prettyPrintreadInfoTablePtr readCCPtrmkCCPtrmkIndexTablePtr mkClosurePtrreadClosurePtrsubtractBlockPtrsubtractStackPtr addStackPtrrawClosureSizecalculateStackLenprintBS printStack arrWordsBS heapAlloced rawStackSize blockMBlockapplyMBlockMaskapplyBlockMaskgetBlockOffset mblockMaxSize blockMaxSize mblockMask blockMask isPinnedBlock isLargeBlock rawBlockSize rawBlockAddrextractFromBlock getInfoTblPtrtraversePtrBitmap$fShowClosurePtr$fOrdClosurePtr$fBinaryClosurePtr$fBinaryRawClosure$fBinaryRawBlock$fBinaryPtrBitmap$fShowPtrBitmap$fShowRawBlock $fEqBlockPtr $fOrdBlockPtr$fHashableBlockPtr$fBinaryBlockPtr$fShowBlockPtr$fEqRawPayload$fOrdRawPayload$fShowRawPayload $fEqRawStack $fOrdRawStack$fShowRawStack$fEqRawClosure$fOrdRawClosure$fShowRawClosure$fEqRawInfoTable$fOrdRawInfoTable$fShowRawInfoTable$fBinaryRawInfoTable$fShowStringPtr $fEqStackPtr $fOrdStackPtr$fHashableStackPtr$fShowStackPtr$fBinaryStackPtr$fEqInfoTablePtr$fOrdInfoTablePtr$fHashableInfoTablePtr$fShowInfoTablePtr$fBinaryInfoTablePtr$fEqRetainerSetPtr$fOrdRetainerSetPtr$fHashableRetainerSetPtr$fShowRetainerSetPtr$fBinaryRetainerSetPtr $fEqCCSPtr $fOrdCCSPtr$fHashableCCSPtr $fShowCCSPtr$fBinaryCCSPtr $fEqCCPtr $fOrdCCPtr$fHashableCCPtr $fShowCCPtr $fBinaryCCPtr$fEqIndexTablePtr$fOrdIndexTablePtr$fHashableIndexTablePtr$fShowIndexTablePtr$fBinaryIndexTablePtr$fEqClosurePtr$fHashableClosurePtr FieldValueSPtrSNonPtrHextraversable hextraverse ConstrDescpkgmodlnameDebugStackFrame frame_info frame_srtvaluesGenStackFrames getFrames StackFrames StackCont IndexTable itCostCentreitCostCentreStackitNext itBackEdge CCPayloadccIDccLabelccModccLoc ccMemAlloc ccTimeTicksccIsCafccLink CCSPayload GenCCSPayloadccsIDccsCc ccsPrevStack ccsIndexTableccsRootccsDepth ccsSccCount ccsSelected ccsTimeTicks ccsMemAllocccsInheritedAllocccsInheritedTicksSrtCont SrtPayload GenSrtPayloadgetSrt PapPayload GenPapPayload getValues TRecEntrytvarexpected_value new_valuetrec_num_updates DebugClosure ConstrClosure FunClosure ThunkClosureSelectorClosure PAPClosure APClosureAPStackClosure IndClosure BCOClosureBlackholeClosureArrWordsClosure MutArrClosureSmallMutArrClosure MVarClosure MutVarClosureBlockingQueueClosure TSOClosure StackClosure WeakClosure TVarClosureTRecChunkClosureMutPrimClosure PrimClosure OtherClosureUnsupportedClosureinfo profHeaderptrArgsdataArgs constrDescsrtselecteearityn_argsfun pap_payload ap_payload ap_st_sizepayload indirecteeinstrsliteralsbcoptrssizebitmapbytesarrWordsmccPtrsmccSize mccPayload queueHead queueTailvaluevarlink blackHoleownerqueue_link global_linktsoStacktrecblocked_exceptionsbq threadLabel what_next why_blockedflagsthreadId saved_errnodirty alloc_limittot_stack_sizeprof stack_size stack_dirty stack_markingframes cfinalizerskey finalizermlink current_valuetvar_watch_queue num_updates prev_chunknext_idxentrieshvaluesrawWordsProfHeaderWithPtrProfHeaderWordRetainerHeaderLDVWordEraWord OtherHeadertrav retainerSetstate creationTime lastUseTime ProfHeaderccshpStgInfoTableWithPtrtableId decodedTable RetainerSizegetRetainerSize InclusiveSizegetInclusiveSizeSizegetSizeDebugClosureWithExtraDCSextraDCSunDCSDebugClosureWithSize PayloadContConstrDescCont SizedClosureP SizedClosureC SizedClosureClosureTsoFlags TsoLocked TsoBlockxTsoInterruptibleTsoStoppedOnBreakpoint TsoMarked TsoSqueezed TsoAllocLimitTsoFlagsUnknownValue WhyBlocked NotBlocked BlockedOnMVarBlockedOnMVarReadBlockedOnBlackHole BlockedOnReadBlockedOnWriteBlockedOnDelay BlockedOnSTMBlockedOnDoProcBlockedOnCCallBlockedOnCCall_InterruptibleBlockedOnMsgThrowToThreadMigratingWhyBlockedUnknownValueWhatNext ThreadRunGHCThreadInterpret ThreadKilledThreadCompleteWhatNextUnknownValue StgInfoTableptrsnptrstipesrtlen ClosureTypeINVALID_OBJECTCONSTR CONSTR_1_0 CONSTR_0_1 CONSTR_2_0 CONSTR_1_1 CONSTR_0_2 CONSTR_NOCAFFUNFUN_1_0FUN_0_1FUN_2_0FUN_1_1FUN_0_2 FUN_STATICTHUNK THUNK_1_0 THUNK_0_1 THUNK_2_0 THUNK_1_1 THUNK_0_2 THUNK_STATICTHUNK_SELECTORBCOAPPAPAP_STACKIND IND_STATICRET_BCO RET_SMALLRET_BIGRET_FUN UPDATE_FRAME CATCH_FRAMEUNDERFLOW_FRAME STOP_FRAMEBLOCKING_QUEUE BLACKHOLE MVAR_CLEAN MVAR_DIRTYTVAR ARR_WORDSMUT_ARR_PTRS_CLEANMUT_ARR_PTRS_DIRTYMUT_ARR_PTRS_FROZEN_DIRTYMUT_ARR_PTRS_FROZEN_CLEAN MUT_VAR_CLEAN MUT_VAR_DIRTYWEAKPRIMMUT_PRIMTSOSTACK TREC_CHUNKATOMICALLY_FRAMECATCH_RETRY_FRAMECATCH_STM_FRAME WHITEHOLESMALL_MUT_ARR_PTRS_CLEANSMALL_MUT_ARR_PTRS_DIRTYSMALL_MUT_ARR_PTRS_FROZEN_DIRTYSMALL_MUT_ARR_PTRS_FROZEN_CLEANCOMPACT_NFDATA CONTINUATIONN_CLOSURE_TYPESnoSizedcSizeparseConstrDeschexmap allClosures$fEqStgInfoTableWithPtr$fOrdStgInfoTableWithPtr$fBitraversableGenCCSPayload$fBifoldableGenCCSPayload$fBifunctorGenCCSPayload$fHextraversableDebugClosure%$fHextraversableDebugClosureWithExtra$fBitraversableDebugStackFrame$fBifoldableDebugStackFrame$fBifunctorDebugStackFrame$fBifunctorGenStackFrames$fBitraversableGenStackFrames$fBifoldableGenStackFrames$fFunctorGenPapPayload$fFoldableGenPapPayload$fTraversableGenPapPayload$fShowGenPapPayload$fOrdGenPapPayload$fEqGenPapPayload$fFunctorGenStackFrames$fFoldableGenStackFrames$fTraversableGenStackFrames$fShowGenStackFrames$fOrdGenStackFrames$fEqGenStackFrames$fTraversableDebugStackFrame$fFunctorDebugStackFrame$fFoldableDebugStackFrame$fShowDebugStackFrame$fOrdDebugStackFrame$fEqDebugStackFrame$fShowFieldValue$fTraversableFieldValue$fFunctorFieldValue$fFoldableFieldValue$fOrdFieldValue$fEqFieldValue$fShowConstrDesc$fEqConstrDesc$fOrdConstrDesc$fShowStackCont $fEqStackCont$fOrdStackCont$fShowIndexTable$fOrdIndexTable$fEqIndexTable$fShowCCPayload$fOrdCCPayload $fEqCCPayload$fShowGenCCSPayload$fOrdGenCCSPayload$fEqGenCCSPayload$fFunctorGenCCSPayload$fFunctorGenSrtPayload$fFoldableGenSrtPayload$fTraversableGenSrtPayload$fShowGenSrtPayload$fOrdGenSrtPayload$fEqGenSrtPayload$fShowDebugClosureWithExtra$fOrdDebugClosureWithExtra$fEqDebugClosureWithExtra$fShowDebugClosure$fGenericDebugClosure$fFunctorDebugClosure$fFoldableDebugClosure$fTraversableDebugClosure$fOrdDebugClosure$fEqDebugClosure$fShowTRecEntry$fGenericTRecEntry$fFunctorTRecEntry$fFoldableTRecEntry$fTraversableTRecEntry$fOrdTRecEntry $fEqTRecEntry$fEqProfHeader$fOrdProfHeader$fShowProfHeader$fFunctorProfHeader$fFoldableProfHeader$fTraversableProfHeader$fEqProfHeaderWord$fOrdProfHeaderWord$fShowProfHeaderWord$fShowStgInfoTableWithPtr$fShowRetainerSize$fGenericRetainerSize$fOrdRetainerSize$fEqRetainerSize$fSemigroupRetainerSize$fMonoidRetainerSize$fShowInclusiveSize$fGenericInclusiveSize$fSemigroupInclusiveSize$fMonoidInclusiveSize $fShowSize $fGenericSize$fSemigroupSize $fMonoidSize $fNumSize $fOrdSize$fEqSize $fReadSize$fShowPayloadCont$fEqPayloadCont$fShowStgTSOProfInfo$fGenericStgTSOProfInfo$fEqStgTSOProfInfo$fOrdStgTSOProfInfo $fEqTsoFlags$fShowTsoFlags$fGenericTsoFlags $fOrdTsoFlags$fEqWhyBlocked$fShowWhyBlocked$fGenericWhyBlocked$fOrdWhyBlocked $fEqWhatNext$fShowWhatNext$fGenericWhatNext $fOrdWhatNext$fEqStgInfoTable$fShowStgInfoTable$fGenericStgInfoTable$fEnumClosureType$fEqClosureType$fOrdClosureType$fShowClosureType$fGenericClosureType$fReadClosureType ReverseGraph DerefFunction HeapGraphrootsgraphSrtHIPapHIStackHIHeapGraphIndexHeapGraphEntry hgeClosurePtr hgeClosurehgeDatatraverseHeapGraphlookupHeapGraphupdateHeapGraph heapGraphSizebuildHeapGraphmultiBuildHeapGraphannotateHeapGraphgeneralBuildHeapGraph ppHeapGraph ppClosure reverseEdgesmkReverseGraph$fShowHeapGraph$fFoldableHeapGraph$fTraversableHeapGraph$fFunctorHeapGraph$fShowHeapGraphEntry$fFunctorHeapGraphEntry$fFoldableHeapGraphEntry$fTraversableHeapGraphEntryAnyRespAnyReq CommandIdSourceInformationinfoNameinfoClosureTypeinfoType infoLabel infoModule infoPositionRequestRequestVersion RequestPause RequestResume RequestRootsRequestClosureRequestInfoTable RequestSRT RequestPollRequestSavedObjectsRequestStackBitmapRequestFunBitmapRequestConstrDescRequestSourceInfoRequestAllBlocks RequestBlock RequestCCS RequestCCRequestIndexTableRequestCCSMainPtr ForkOrPausePauseForkisWriteRequestwithWriteRequestisImmutableRequestrequestCommandId putRequest getRequestgetProfilingModeputProfilingModegetCCSputCCSgetCCputCC getIndexTable putIndexTable getCCSMainPtr putCCSMainPtrgetIPEputIPE getInfoTable putInfoTable doRequest$fBinaryForkOrPause$fHashableForkOrPause$fHashableRequest $fEqAnyReq$fHashableAnyReq$fExceptionError$fEqResponseCode$fOrdResponseCode$fShowResponseCode $fEqError $fOrdError $fShowError $fEqCommandId$fOrdCommandId$fShowCommandId$fBinaryCommandId$fHashableCommandId$fShowSourceInformation$fEqSourceInformation$fOrdSourceInformation$fEqForkOrPause$fOrdForkOrPause$fShowForkOrPause$fEnumForkOrPause $fEqRequest $fShowRequest decodeStack decodeClosure decodeCCSdecodeIndexTabledecodeInfoTablebaseGHC.BasemappendMonoidboundMultipleTimes ceilIntDiv