
    UHj5V                    X   d Z ddlmZ ddlZddlZddlZddlZddlZddlm	Z	 ddl
mZ ej                  j                  d e e	e      j!                         j"                               ddlmZmZ  e	e      j!                         j*                  d   Zedz  Zd	Zd
ZdZdZdZdZdZdZdZ dZ!dg dddddgddg ddgZ"ddddZ#d/dZ$d0d Z%d1d!Z&d2d"Z'd3d#Z(d3d$Z)d4d%Z*d5d&Z+d6d'Z,	 	 	 	 	 	 	 	 	 	 	 	 	 	 d7d(Z-	 d8	 	 	 	 	 	 	 	 	 d9d)Z.d:d*Z/d:d+Z0efd;d,Z1d<d-Z2e3d.k(  r e2        yy)=zMSummarize root-relative leaf-table indices for the current selector frontier.    )annotationsN)Path)Any)read_sectionsva_to_offset   outmap1_01amap2_02dz2:0iT i)T i)T i*T i*T i+T ?   z#out/save_selector_leaf_streams.json)leafPointerHexfieldRecordsnestedFieldRecords)pathfieldsz$out/save_selector_stream_traces.jsonstreamVaHextracez2out/save_selector_opcode2c_route_pair_context.json)rowsdescriptorHexcorrectedTracereachesFrontierReaderzSnormal runtime selector/root execution reaches the corrected route-pair descriptorszL0x00542b0c reader branch outcome and map target linkage on a real route pathz,strict map1_01a source coordinate or hotspot)&normal-runtime-selector-root-executionreader-branch-target-linkagestrict-hotspotc                p    | j                         s|S t        j                  | j                  d            S )Nutf-8encoding)existsjsonloads	read_text)r   fallbacks     E/home/exedev/hwanse/tools/summarize_save_selector_leaf_index_space.py	load_jsonr%   F   s*    ;;=::dnngn677    c                2    t        | t              rd| dS d S )N0x08x)
isinstanceintvalues    r$   hex32r.   L   s    )%5Rc{?4?r&   c                "    | rt        | d      S d S )N   )r+   r,   s    r$   	parse_hexr1   P   s    "3ub>,,r&   c                v    t        ||      }||dz   t        |       kD  ry t        j                  d| |      d   S )N   z<Ir   )r   lenstructunpack_from)exesectionsvaoffsets       r$   dword_atr;   T   s?    (B'F~!c#h.dC033r&   c                    sg S t        fd| D        d       }|sg S |j                  d      xs g D cg c]%  }|j                  d      s|j                  d      ' c}S c c}w )Nc              3  L   K   | ]  }|j                  d       k(  s|  ywr   Nget.0itemleaf_hexs     r$   	<genexpr>z&field_maps_for_leaf.<locals>.<genexpr>^   "     X:J1Kx1WX   $$r   mapnextr@   leaf_streamsrD   rowrecords    `  r$   field_maps_for_leafrO   [   s]    	
XXZ^
_C	,/GGN,C,Ir_&VZZX]M^FJJu___   A#A#c                    sg S t        fd| D        d       }|sg S |j                  d      xs g D cg c]%  }|j                  d      s|j                  d      ' c}S c c}w )Nc              3  L   K   | ]  }|j                  d       k(  s|  ywr>   r?   rA   s     r$   rE   z'nested_maps_for_leaf.<locals>.<genexpr>g   rF   rG   r   rH   rI   rK   s    `  r$   nested_maps_for_leafrS   d   sa    	
XXZ^
_C	,/GG4H,I,ORe&SYS]S]^cSdFJJueeerP   c                    syt        fd| D        d       }|syt        fd|j                  d      xs g D              S )NFc              3  L   K   | ]  }|j                  d       k(  s|  yw)r   Nr?   )rB   rC   
stream_hexs     r$   rE   z!trace_contains.<locals>.<genexpr>p   s!     X$((=2IZ2WXrG   c              3  F   K   | ]  }|j                  d       k(    yw)vaHexNr?   )rB   rC   va_hexs     r$   rE   z!trace_contains.<locals>.<genexpr>s   s     Nttxx F*Ns   !r   )rJ   anyr@   )stream_tracesrV   rY   rM   s    `` r$   trace_containsr\   m   sA    
XXZ^
_CNswww7G7M2NNNr&   c                &    t         | v xr t        | v S N)SOURCETARGET)mapss    r$   
route_pairrb   v   s    T>,fn,r&   c                    | si S | j                  d      xs g D ci c]8  }|j                  d      r%|j                  d      |j                  d      xs i : c}S c c}w )Nr   r   r   r?   )opcode2c_route_pair_contextrM   s     r$   corrected_traces_by_descriptorre   z   se    &	 /226:@b77?# 	 #''*:";"ArA  s   =Ac                b   t        | ||      }t        |      }t        |t              rt        | ||      nd }|t        k(  r t        |t              rt        | ||dz         nd }	t        |	      }
t        ||      }t        ||      }t        ||
      }t        ||t        t              xs d      }t        ||
t        t              xs d      }|j                  |      xs i }|j                  d      du }i d|dt        |      d|t        z
  dz  d|t        k\  d	|d
t        |      d|t        k(  d|
d|d|d|dt        |      dt        |      d|d|d|d|j                  d      |xs ||	t        k(  |t        k(  t        |      xs t        |      xs
 |xs |xs |dS )Nr3    r   TentryVa
entryVaHexrootRelativeIndexinsideCurrentRootEntryRunr   descriptorMarkerHexdescriptorIsMarkerShapechildPointerHexdescriptorFieldMapsdescriptorNestedFieldMapschildFieldMapsdescriptorHasRoutePairchildHasRoutePair%descriptorTraceContainsFrontierReader childTraceContainsFrontierReader.correctedDescriptorTraceContainsFrontierReader%correctedDescriptorFrontierReaderStepfrontierReaderStep).effectiveDescriptorTraceContainsFrontierReaderisFrontierLeafChildisFrontierLeafDescriptorrouteRelevant)r;   r.   r*   r+   DESCRIPTOR_MARKERrO   rS   r\   FRONTIER_READERr@   ROOT_TABLE_POINTERrb   FRONTIER_LEAF)r7   r8   rL   r[   corrected_by_descriptorentry_var-   	value_hexmarkerchild	child_hexdescriptor_mapsnested_maps
child_mapsdescriptor_readerchild_readercorrected_descriptor_tracecorrected_descriptor_readers                     r$   	entry_rowr      sG    S(H-EeI/9%/EXc8U+4F28<M2MR\]bdgRhHS(EAI.nrEeI),	BO&|Y?K$\9=J&}iAWA][]^!-E/<R<XVXYL!8!<!<Y!G!M2"<"@"@AX"Y]a"a8eHo 	h);;A 	$X1C%C	
 	 	uV} 	"6->#> 	9 	 	$[ 	* 	!*_"= 	Z
3 	01B 	+L  	9:U!" 	01K1O1OPd1e#$ ;L:jOj$5$)]$:' +*%+ + + +5 r&   c                *   t        |       }t        |      }t        t        t        d      D cg c]  }t        | |||||       }}|D cg c]
  }|d   s	| }	}|D cg c]
  }|d   r	| }
}|	D cg c]  }|j                  d      s| }}|D cg c]'  }|j                  d      s|j                  d      s&|) }}|	D cg c]	  }||v s| }}|
D cg c]	  }||v s| }}|	D cg c]  }|j                  d      r| }}|D cg c]  }|j                  d      r| }}|D cg c]'  }|j                  d      s|j                  d      s&|) }}d	}d	}g }|s|j                  d
       |s|j                  d       |s|j                  d       |D cg c]  }t        j                  ||       }}dt         dt        t               d}i dt        dt        dt        dt        t              dt        t              dt        t               dt        t        dz
         dt        t              dt        t               dt"        dt%        t"              dt%        |      dt%        |
      dt%        |	      dt%        |      dt%        |      d t%        |      d!t'        |      i d"t%        |      d#t%        |      d$t'        |      xr t%        |      t%        |      k(  d%|D cg c]  }|d&   	 c}d't'        |      xr t)        d( |D              d)t'        |      d*t'        |      d+|D cg c]  }|d&   	 c}d,|D cg c]  }|d&   	 c}d-|D cg c]  }|d&   	 c}d.|d/|D cg c]  }|j                  d0      s| c}d1|d2|d3|d4|d5|d6g d7|d8S c c}w c c}w c c}w c c}w c c}w c c}w c c}w c c}w c c}w c c}w c c}w c c}w c c}w c c}w c c}w c c}w )9Nr3   rk   rr   ru   rt   rv   rz   r{   Fr   r   r   zThe current selector z table pointer is a   . The raw generic stream trace still finds the direct frontier leaf reference only as the descriptor child at root-relative index -12, before that table pointer. However, the opcode 0x2c correction shows the non-negative current-root route-pair descriptors at indices 6 and 8 can also reach the frontier reader 0x00542b0c. That resolves the stale no-fixed-advance trace contradiction, but it is still descriptor/control-flow evidence only; normal runtime selector execution, reader branch outcome, and a strict map1_01a hotspot remain unproven.sourcetargetselectorrootHexrootTablePointerHextableWindowHexz..frontierLeafHexfrontierReaderHexevidenceRefsevidenceRefCount
entryCountnegativeIndexCountcurrentRootEntryCount$routePairDescriptorCurrentEntryCountreaderBearingCurrentEntryCountreaderBearingNegativeEntryCountopcode2cCorrectionApplied'correctedReaderBearingCurrentEntryCount)correctedRoutePairTraceReachesReaderCount0correctedTraceAllRoutePairDescriptorsReachReaderfrontierLeafChildEntryIndicesrj   "frontierLeafChildOnlyNegativeIndexc              3  ,   K   | ]  }|d    dk    yw)rj   r   N rB   rM   s     r$   rE   z build_summary.<locals>.<genexpr>  s     L'(1,Ls   *frontierReaderSelectableByNonNegativeIndex2frontierReaderReachableByCorrectedNonNegativeIndex!routePairCurrentDescriptorIndices(routePairCorrectedTraceDescriptorIndicesreaderBearingNegativeIndicesr   routeRelevantRowsr|   runtimeSelectionProven
proofFoundfailedLeafIndexGateIdsmissingEvidencestrictHotspotFoundblocked)zYprove normal runtime selector/root execution reaches the corrected route-pair descriptorszXresolve the 0x00542b0c reader branch outcome and map target linkage on a real route pathz3or find a strict map1_01a source coordinate/hotspot)promotionStatusremainingProofs
conclusion)r   re   rangeTABLE_WINDOW_STARTTABLE_WINDOW_END_EXCLUSIVEr   r@   append#LEAF_INDEX_MISSING_EVIDENCE_BY_GATECURRENT_SELECTORr.   r   r_   r`   CURRENT_ROOTr   r~   EVIDENCE_REFSr4   boolall)r7   rL   r[   rd   r8   r   r9   r   rM   current_rowsnegative_rowsroute_descriptor_rowsreader_child_rowscurrent_reader_rowsnegative_reader_rowscorrected_current_reader_rows corrected_route_pair_reader_rowsfrontier_child_rowsruntime_selection_provenstrict_hotspot_foundfailed_leaf_index_gate_idsgate_idmissing_evidencer   s                           r$   build_summaryr      s{    S!H<=XY *,FJ 	#x}>UWYZD  $(LC3/J+KCLLL$(QS4O0PSQMQ,8^SCGGD\<]S^^(,  Q8Z0[_b_f_f  hO  `P  Q  Q*6S3#AR:R3SS+8UCCCT<TCUU  %77CD 	%! % )(77CD 	($ (
 +/x3#'':O2PTWT[T[\vTw3xx$ !##"))*RS"))*HI"))*:; 2 	,//A 
   011CEJ\D]C^ _B 	B .&.&. 	$. 	5&	.
 	u%78. 	U#567r%@Z]^@^:_9`a. 	5/. 	U?3. 	. 	C.. 	c$i. 	c-0. 	 \!2. 	/4I0J. 	)#.A*B.  	*3/C+D!." 	$T*A%B#.$ 	237T3U%.& 	4S9Y5Z'.( 	;DAV<W =P01S9N5OO+., 	(Na)bs#.A*B)b-.. 	-d3F.G /ML8KLL1.2 	5d;N6O3.4 	=dC`>a5.6 	,Rg-h3c2E.F-h7.8 	30P5
),C#$5
9.> 	'Ma(bc-@)A(b?.@ 	A.B 	TNcSWW_5McNC.D 	!":E.F 	.G.H 	!"<I.J 	+K.L 	2M.N %

 ![. .W MQ^ QSU%
(
 yF *c
 .i5
 )cNs   O
O
O
 
O+O5OO'O>O	OO	O#&O#0O(O-0'O2O2!O7O<
P
#P
7P
P
%P
c                Z   ddd| d    d| d    dd| d	    d
| d    dd| d    dd| d    dd| d    dd| d    dd| d    d| d    d| d    d| d    d| d    d| d    d | d!    d"| d#    d$| d%    d&| d'    d(| d)    d*| d+    d,| d-    d.d/j                  | j                  d0      xs g       xs d1 dd2t        | j                  d3      xs g        d4| d5    dd6| d7    dd| d8   dg}|j                  d9dg       |j                  d: | j                  d3      xs g D               |j                  g d;       | j                  d<      xs g D ]J  }|j	                  d=|j                  d>       d?d/j                  |j                  d@      xs g               L |j                  g dA       | dB   D ]   }|j	                  dC|dD    dE|dF    dG|j                  dH       dG|j                  dI      xs d1 dJ|dK    dLd/j                  |j                  dM      xs g       xs d1 dLd/j                  |j                  dN      xs g       xs d1 dLd/j                  |j                  dO      xs g       xs d1 dL|j                  dP       dL|j                  dQ       dL|j                  dR       dS        |j                  g dT       | dU   D ]v  }|j	                  dC|dD    dE|dF    dG|j                  dH       dG|j                  dI      xs d1 dJ|dK    dE|j                  dV      xs d1 dJ|j                  dW       dS       x |j                  g dX       |j                  dY | dZ   D               |j	                  d       d[j                  |      S )\Nz # Save Selector Leaf Index Spacerg   z
- route: `r   z -> r   `z- selector: `r   z` root `r   z- root table pointer: `r   z- table window: `r   z- frontier leaf: `r   z- frontier reader: `r   z- entries: r   z- negative-index entries: r   z- current-root entries: r   z)- current route-pair descriptor entries: r   z"- current reader-bearing entries: r   z#- negative reader-bearing entries: r   z"- opcode 0x2c correction applied: r   z,- corrected current reader-bearing entries: r   z/- corrected route-pair traces reaching reader: r   z%- frontier leaf child entry indices: r   z4- frontier reader selectable by non-negative index: r   z=- frontier reader reachable by corrected non-negative index: r   z- proof found: r   z- failed leaf-index gates: `, r   -z- missing evidence count: r   z- promotion status: `r   z- evidence refs: `r   r   z## Missing Evidencec              3  &   K   | ]	  }d |   ywz- Nr   rB   rC   s     r$   rE   zmarkdown.<locals>.<genexpr>;  s     N2dVN   )rg   z## Evidence Refsrg   r   z- `r   z`: r   )rg   z## Route-Relevant Entriesrg   z| index | entry | descriptor | child | current entry | desc maps | nested maps | child maps | raw desc reader | corrected desc reader | child reader |zD| ---: | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |r   z| rj   z | `ri   z` | `r   rn   z` | rk   z | ro   rp   rq   rt   rv   ru   z |)rg   z## All Entriesrg   zP| index | entry | descriptor | child | current entry | marker | route relevant |z,| ---: | --- | --- | --- | --- | --- | --- |r   rl   r|   )rg   z## Remaining Proofsrg   c              3  &   K   | ]	  }d |   ywr   r   r   s     r$   rE   zmarkdown.<locals>.<genexpr>a  s     D2dVDr   r   
)joinr@   r4   extendr   )summarylinesrefrM   s       r$   markdownr     s   *

WX&'tGH,=+>a@

+,HWY5G4HJ
!'*?"@!AC
G$456a8
W%678:
w':;<A>
gl+,-
$W-A%B$CD
"7+B#C"DE
3G<b4c3de
,W5U-V,WX
-g6W.X-YZ
,W5P-Q,RS
6w?h7i6jk
9'Bm:n9op
/8W0X/YZ
>wGs?t>uv
G  QE  IF  HG  	H
',/01
&tyy=U1V1\Z\']'dad&eefg
$S5F)G)M2%N$OP
(9 :;1=
W%789;

9E< 
LL',-	LLN5F)G)M2NN	LL-.{{>*0b 
#''&/"#dii0A0GR&H%IJ	

 
LL   *+ 

()*$s</@.AswwG_F` a)*1c2$s;V7W6XX[yy!67=2>E#Fcyy!<=CDKLCyy!128b9@SAww>?@wwGHIww9:;2?		


 
LL   v 
()*$s</@.AswwG_F` a)*1c2$s;V7W6X Y-.5#6d377?;S:TTVX	

 
LL01	LLD1B)CDD	LL99Ur&   c                v    dj                  d  j                  d      xs g D              }dG fd}dG fd}dj                  d  d   D              }dj                  d  j                  d	      xs g D              }d
j                  dddddddddddj                  g d d    d d    d d    d d    d d    d d     d! d"    d# d$    d% d&    d' d(    d) d*    d+ d,    d-t        j                  d.j                   j                  d/      xs g       xs d0       d1t	         j                  d	      xs g        d2 d3    d4      d5t        j                   d6          d7d8 d9    d:d;| d<d=| d<d>d? |       d@dAdB |       d@dCdD| d<dEdFdg      S )HNrg   c              3     K   | ]m  }d t        j                  t        |j                  d                   dt        j                  dj	                  |j                  d      xs g              d o yw)z
<li><code>r   z	</code>: r   r   </li>Nhtmlescapestrr@   r   )rB   r   s     r$   rE   zhtml_page.<locals>.<genexpr>g  sf      
 		S1239;;tyy!2!8b9:
;	s   A3A5r   c                 :    dj                  d  d   D              S )Nr   c              3    K   | ]  }d |d    dt        j                  t        |d                dt        j                  t        |j                  d                   dt        j                  t        |j                  d      xs d             d|d	    d
t        j                  dj	                  |j                  d      xs g       xs d       d
t        j                  dj	                  |j                  d      xs g       xs d       d
t        j                  dj	                  |j                  d      xs g       xs d       d
|j                  d       d
|j                  d       d
|j                  d       d  yw)<tr><td>rj   </td><td><code>ri   </code></td><td><code>r   rn   r   </code></td><td>rk   z	</td><td>r   ro   rp   rq   rt   rv   ru   
</td></tr>Nr   r   s     r$   rE   z3html_page.<locals>.relevant_rows.<locals>.<genexpr>p  s     
 *+, -S\):%;<= >S)A%BCD ES1B)C)Js%KLM N234 5;;tyy1F)G)M2NURUVW X;;tyy1L)M)SQST[X[\] ^;;tyy1A)B)HbIPSQR S77BCD E77KLM N77=>? @
s   FF	r   r   r   s   r$   relevant_rowsz html_page.<locals>.relevant_rowso  s)    yy 
 23
 
 	
r&   c                 :    dj                  d  d   D              S )Nr   c              3    K   | ]  }d |d    dt        j                  t        |d                dt        j                  t        |j                  d                   dt        j                  t        |j                  d      xs d             d|d	    dt        j                  t        |j                  d
      xs d             d|j                  d       d  yw)r   rj   r   ri   r   r   rn   r   r   rk   rl   r|   r   N)r   r   r   r@   r   s     r$   rE   z.html_page.<locals>.all_rows.<locals>.<genexpr>  s      
 *+, -S\):%;<= >S)A%BCD ES1B)C)Js%KLM N234 5S1F)G)N3%OPQ R77?+, -
s   CC!r   r   r   s   r$   all_rowszhtml_page.<locals>.all_rows  s'    yy 
 v
 
 	
r&   c              3  N   K   | ]  }d t        j                  |       d  ywz<li>r   Nr   r   r   s     r$   rE   zhtml_page.<locals>.<genexpr>  s#     \tDKK-.e4\   #%r   c              3  N   K   | ]  }d t        j                  |       d  ywr   r   r   s     r$   rE   zhtml_page.<locals>.<genexpr>  s(      ,0$t{{4 !'r   r   r   z<!doctype html>z<html lang="en">z<head>z  <meta charset="utf-8">zF  <meta name="viewport" content="width=device-width, initial-scale=1">z/  <title>Save Selector Leaf Index Space</title>a    <style>body{font-family:system-ui,sans-serif;background:#111;color:#eee;margin:24px}table{border-collapse:collapse;width:100%;max-width:1280px}td,th{border:1px solid #333;padding:6px 8px;text-align:left;vertical-align:top}th{background:#1f1f1f}code{color:#9bd4ff}</style>z</head>z<body>z)  <h1>Save Selector Leaf Index Space</h1>z  <p>route <code>r   z -&gt; r   z</code>; selector <code>r   z"</code>; root table pointer <code>r   z/</code>; current route-pair descriptor entries r   z!; current reader-bearing entries r   z"; negative reader-bearing entries r   z!; opcode 0x2c correction applied r   z.; corrected route-pair traces reaching reader r   z3; frontier reader selectable by non-negative index r   z<; frontier reader reachable by corrected non-negative index r   z; proofFound=r   z; failedLeafIndexGates=<code>,r   r   z</code>; missingEvidenceCount=z; promotion <code>r   z</code>.</p>z  <p>r   z</p>z  <p><b>Evidence refs:</b> r   z.</p>z  <h2>Missing Evidence</h2><ul>z</ul>z  <h2>Evidence Refs</h2><ul>z!  <h2>Route-Relevant Entries</h2>z  <table><thead><tr><th>index</th><th>entry</th><th>descriptor</th><th>child</th><th>current entry</th><th>desc maps</th><th>nested maps</th><th>child maps</th><th>raw desc reader</th><th>corrected desc reader</th><th>child reader</th></tr></thead><tbody>z  </tbody></table>z  <h2>All Entries</h2>z  <table><thead><tr><th>index</th><th>entry</th><th>descriptor</th><th>child</th><th>current entry</th><th>marker</th><th>route relevant</th></tr></thead><tbody>z  <h2>Remaining Proofs</h2>z  <ul>z</body>z</html>)returnr   )r   r@   r   r   r4   )r   evidence_refsr   r   proofsmissing_itemss   `     r$   	html_pager   f  s]   GG 
 ;;~.4" M
$
 WW\IZA[\\FGG 4;KK@Q4R4XVX M 99"P9 	\3 	R  	R
  	RGH-.  	Rg  	Rgh6G5H  	RH`  	Rahisat`u  	R  vX  	R  Y`  av  Yw  Xx  	R  xg  	R  ho  pV  hW  gX  	R  Xy  	R  zA  Bb  zc  yd  	R  dF  	R  GN  Op  Gq  Fr  	R  rS  	R  T[  \w  Tx  Sy  	R  yg  	R  ho  p[	  h\	  g]	  	R  ]	P
  	R  Q
X
  Y
E  Q
F  P
G  	R  GC  	R  DK  L@  DA  CB  	R  BO  	R  PW  Xd  Pe  Of  	R  fC  	R  DH  DO  DO  PS  PX  PX  Y`  Yd  Yd  e}  Y~  YD  BD  PE  PL  IL  DM  CN  	R  Nl  	R  mp  qx  q|  q|  }N  qO  qU  SU  mV  lW  	R  Wi  	R  jq  rC  jD  iE  	R  EQ  	R
GL12348
%g.@&A%B%H
)->
&}oU;+ 	J  	l
%

9  r&   c                    |j                  dd       |dz  j                  t        j                  | dd      dz   d	       |d
z  j                  t	        |       d	       y )NT)parentsexist_okz#save_selector_leaf_index_space.jsonF   )ensure_asciiindentr   r   r   #save_selector_leaf_index_space.html)mkdir
write_textr    dumpsr   )r   out_dirs     r$   write_outputsr    se    MM$M.44@@

7q9D@ A  44@@7AS^e@fr&   c            	        t        j                  t              } | j                  dt        t
        dz         | j                  dt        t               | j                         }t        |j                  j                         t        |j                  dz  g       t        |j                  dz  g       t        |j                  dz  i             }t        ||j                         t        d	|j                  d
z          y )N)descriptionz--exezHwanse2.exe)typedefaultz	--out-dirzsave_selector_leaf_streams.jsonz save_selector_stream_traces.jsonz.save_selector_opcode2c_route_pair_context.jsonz(wrote save selector leaf index space -> r  )argparseArgumentParser__doc__add_argumentr   ROOTOUT
parse_argsr   r7   
read_bytesr%   r
  r  print)parserargsr   s      r$   mainr    s    $$9F
dD=4HI
$<D$,,!BBBG$,,!CCRH$,,!QQSUV	G '4<<(	4T\\Di5i4j
klr&   __main__)r   r   r#   r   r   r   )r-   
int | Noner   
str | None)r-   r  r   r  )r7   bytesr8   
list[dict]r9   r+   r   r  )rL   r   rD   r  r   	list[str])r[   r   rV   r  rY   r   r   r   )ra   r!  r   r   )rd   dict | Noner   dict[str, dict])r7   r  r8   r   rL   r   r[   r   r   r#  r   r+   r   dictr^   )
r7   r  rL   r   r[   r   rd   r"  r   r$  )r   r$  r   r   )r   r$  r
  r   r   None)r   r%  )4r  
__future__r   r  r   r    r5   syspathlibr   typingr   r   insertr   __file__resolveparentprobe_exe_scene_tablesr   r   r  r  r  r_   r`   r   r   r   r   r   r   r~   r}   r   r   r%   r.   r1   r;   rO   rS   r\   rb   re   r   r   r   r   r  r  __name__r   r&   r$   <module>r0     s   S "     
   3tH~--/667 8 > H~''*
Ul		   '   6
 7
 E
!: 	^ 	WD' #8@-4`fO-0	00 0 	0
 -0 0 
0n 04	a	aa a "-	a
 
aHHVJZ 25 gm zF r&   