h*@94_      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ 0.5.0.0  Safe-Inferred4 KNMLKNML Safe-Inferred4 RR Safe-Inferred ()*4 Sghc-debug-commonA bitmap that records whether each field of a stack frame is a pointer.tghc-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 debuggeeghc-debug-common 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 CDEFGHIJ   !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJ   !"#$%&'()*+,-./0123456789:;<=>?@AB Safe-Inferred %&'(49:;&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'4'ghc-debug-common(Convert a GenClosure from ghc-heap to a .5N.B. This only handles cases not already handled by .. Eventually this codepath should be retired.None %&4) ghc-debug-commonAllow access directly to the chunk of memory used by a bytestringghc-debug-commonAllocate a bytestring directly into memory and return a pointer to the allocated bufferghc-debug-commonCompute  ceiling (a/b). Safe-Inferred")*46<0ghc-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-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   !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJcd]^aeb[\WXUV_`YZSTijkoxwlty~vmpnur}|z{hgsfqKLMN   !"#$%&'()*+,-./0123456789:;<=>?@ABKLMN  Safe-Inferred44Wghc-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 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUTUTVTWTXTYTZT[\\]^_`abccddeeffgghhiijklljmnopqrstuvwxyz{|}~  ghc-debug-common-0.5.0.0-inplaceGHC.Debug.Types.ClosuresGHC.Debug.Types.VersionGHC.Debug.UtilsGHC.Debug.Types.PtrGHC.Debug.Types.GraphGHC.Debug.Decode.ConvertGHC.Debug.DecodeGHC.Debug.TypesGHC.Debug.Decode.Stackghc-debug-common Data.FoldablemapmapM decodeClosureghc-heap-9.6.1GHC.Exts.Heap.ClosureTypes 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_TYPESGHC.Exts.Heap.InfoTable.Types StgInfoTableentryptrsnptrstipesrtlencodeVersionv_majorv_patch $fShowVersion $fOrdVersion $fEqVersionrunGet_ PtrBitmapRawBlockBlockPtrRawStack RawClosure RawInfoTableStackPtr ClosurePtrUntaggedClosurePtr InfoTablePtr prettyPrinttablesNextToCode profilingreadInfoTablePtr 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$fEqClosurePtr$fHashableClosurePtr FieldValueSPtrSNonPtrQuintraversable quintraverse ConstrDescpkgmodlnameDebugStackFrame frame_info frame_srtvaluesGenStackFrames getFrames StackFrames StackContSrtCont 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 OtherClosureUnsupportedClosureinfoptrArgsdataArgs 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_idxentrieshvaluesrawWordsStgInfoTableWithPtrtableId decodedTable RetainerSizegetRetainerSize InclusiveSizegetInclusiveSizeSizegetSizeDebugClosureWithExtraDCSextraDCSunDCSDebugClosureWithSize PayloadContConstrDescCont SizedClosureP SizedClosureC SizedClosureClosurenoSizedcSizeparseConstrDescquinmap allClosures$fEqStgInfoTableWithPtr$fOrdStgInfoTableWithPtr$fQuintraversableDebugClosure&$fQuintraversableDebugClosureWithExtra$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$fFunctorGenSrtPayload$fFoldableGenSrtPayload$fTraversableGenSrtPayload$fShowGenSrtPayload$fOrdGenSrtPayload$fEqGenSrtPayload$fShowDebugClosureWithExtra$fOrdDebugClosureWithExtra$fEqDebugClosureWithExtra$fShowDebugClosure$fGenericDebugClosure$fFunctorDebugClosure$fFoldableDebugClosure$fTraversableDebugClosure$fOrdDebugClosure$fEqDebugClosure$fShowTRecEntry$fGenericTRecEntry$fFunctorTRecEntry$fFoldableTRecEntry$fTraversableTRecEntry$fOrdTRecEntry $fEqTRecEntry$fShowStgInfoTableWithPtr$fShowRetainerSize$fGenericRetainerSize$fOrdRetainerSize$fEqRetainerSize$fSemigroupRetainerSize$fMonoidRetainerSize$fShowInclusiveSize$fGenericInclusiveSize$fSemigroupInclusiveSize$fMonoidInclusiveSize $fShowSize $fGenericSize$fSemigroupSize $fMonoidSize $fNumSize $fOrdSize$fEqSize$fShowPayloadCont$fEqPayloadCont ReverseGraph DerefFunction HeapGraphrootsgraphSrtHIPapHIStackHIHeapGraphIndexHeapGraphEntry hgeClosurePtr hgeClosurehgeDatatraverseHeapGraphlookupHeapGraphupdateHeapGraph heapGraphSizebuildHeapGraphmultiBuildHeapGraphannotateHeapGraphgeneralBuildHeapGraph ppHeapGraph ppClosure reverseEdgesmkReverseGraph$fShowHeapGraph$fFoldableHeapGraph$fTraversableHeapGraph$fFunctorHeapGraph$fShowHeapGraphEntry$fFunctorHeapGraphEntry$fFoldableHeapGraphEntry$fTraversableHeapGraphEntryconvertClosuredecodeInfoTableAnyRespAnyReq CommandIdSourceInformationinfoNameinfoClosureTypeinfoType infoLabel infoModule infoPositionRequestRequestVersion RequestPause RequestResume RequestRootsRequestClosureRequestInfoTable RequestSRT RequestPollRequestSavedObjectsRequestStackBitmapRequestFunBitmapRequestConstrDescRequestSourceInfoRequestAllBlocks RequestBlock ForkOrPausePauseForkisWriteRequestwithWriteRequestisImmutableRequestrequestCommandId putRequest getRequestgetIPEputIPE 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 decodeStackbaseGHC.BasemappendMonoidboundMultipleTimesallocateallocateByCopy ceilIntDiv