
    UHjc                    v   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	 ej                  j                  d e e	e      j                         j                               ddlmZ ddl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)dZd*dZd+dZ d,dZ!d-dZ"d.dZ#d/dZ$d0dZ%d-dZ&d1dZ'	 	 	 	 	 	 	 	 	 	 	 	 d2dZ(d3dZ)d4dZ*d5dZ+d6dZ,d7dZ-	 	 	 	 	 	 	 	 d8dZ.d9d Z/d:d!Z0	 	 	 	 d;	 	 	 	 	 	 	 	 	 	 	 d<d"Zd=d#Z1d=d$Z2efd>d%Z3d?d&Z4d@d'Z5e6d(k(  r e5        yy)AzQTriage medium event/object branch-state candidates against current route indexes.    )annotationsN)Path)read_sections)build_summary   outi         map1_01amap2_02dz2:0c                    d| dS )N0x08x values    P/home/exedev/hwanse/tools/summarize_event_object_branch_state_candidate_links.pyhex32r      s    c{    c                >    t        | t              rt        | d      S d S )Nr
   )
isinstancestrintr   s    r   	parse_hexr       s    's33ub>==r   c                >    | |y t        |        dt        |       S )Nz..)r   )startends     r   	hex_ranger   $   s'    }El^2eCj\**r   c                ^    | j                  d      }| j                  d      }||y | d| S )Ngroupslot:get)rowr    r!   s      r   selector_labelr&   *   s:    GGGE776?D}WAdVr   c                    | xs g D ]E  }|j                  d      }|j                  d      }|j                  d      }|s9|s<|s?|||dc S  t        t        t        dS )Nsourcetargetselector)r(   r)   r*   )r$   DEFAULT_ROUTE_SOURCEDEFAULT_ROUTE_TARGETDEFAULT_CURRENT_SELECTOR)leaf_streamsr%   r(   r)   r*   s        r   infer_router/   2   sk    !r N""77:&f$HMMN '&, r   c                6    ||| vr| j                  |       y y y )N)append)itemsr   s     r   
add_uniquer3   @   s#    U%/U 0r   c                ,   i }| xs g D ]v  }t        |j                  d            }| |j                  ||g g d      }t        |d   t	        |             |j                  d      xs g D ]  }t        |d   |        x t        |      D cg c]  }||   	 }}t        |      D ]d  \  }}|dz   t        |      k  r||dz      d   nd |d<   t        |d         |d<   |d   t        |d         nd |d	<   t        |d   |d         |d
<   f |S c c}w )NselectedPointerHex)rootlabels	fieldMapsr7   r8   r   r6   r   rootHexendHexrangeHex)
r   r$   
setdefaultr3   r&   sorted	enumeratelenr   r   )save_scene_selectorsrootsr%   r6   entry	field_maporderedindexs           r   selector_intervalsrF   E   sE   E#)r 6!567<  QS'TU5?N3$78-3 	6Iu[)95	66 (.e}5tuT{5G5!'* Cu5:QYW5Mwuqy)&1SWe v/i16u1I%e-th%eFmU5\Bj	C
 N 6s   Dc                \    | D ]'  }|j                  d      }|d   |k  s|||k  s%|c S  y )Nr   r6   r#   )	intervalsvarB   r   s       r   containing_selector_intervalrJ   X   s?     ii=BCK28L r   c                D   g }g }| xs g D ]  }dD ]J  }|j                  |      xs g D ]0  }t        |j                  d            }| |j                  |       2 L dD ][  }|j                  |      xs g D ]A  }t        |j                  d            }| |j                  |       |j                  |       C ]  |rt        |      nd }|rt	        |      dz   nd }	|rt        |      nd }
|rt	        |      dz   nd }||	t        ||	      d|
|t        |
|      ddS )N)wordsnestedWordsvaHex)fieldRecordsnestedFieldRecordsrecordVaHex   r   r   r;   )leafStreamRangesceneRecordRange)r$   r   r1   minmaxr   )r.   leaf_addressesscene_record_addressesstreamkeywordrI   record
leaf_startleaf_endscene_start	scene_ends               r   route_leaf_rangesrb   `   sJ    "N(*$" 6+ 	.C

3-2 .txx01>"))"-.	.
 : 	6C **S//R 6vzz-89>"))"-*11"5	6	66 )7^$DJ*8s>"Q&dH1G#,-TK3I*+a/tI%/iXbdlNmn&1)QZ[fhqQrs r   c                    || sy| j                  d      }| j                  d      }|d uxr |d uxr ||cxk  xr |k  S c S )NFr   r   r#   )
range_inforI   r   r   s       r   range_containsre   y   sQ    	zNN7#E
..
CFDFUb5F35FF5FFr   c           
     (   d   d   gd   t        fd|D        d       }t        ||       }|t        ||      nd }dfd} ||      }	 ||      }
d }|'|d   |j                  d      |j                  d      d	}|d
   }|d   }t        ||       }t        ||      }t        ||       }t        ||      }t        ||       }t        ||      }t	        |	xs i j                  d            }t	        |
xs i j                  d            }t        ||||||||g      }i ddd   dd   d|r|j                  d      nd d|j                  d      d|j                  d      d|	d|
d|d|d|d|d|d|d|d|d|S )Nr(   r)   r*   c              3  R   K   | ]  }|j                  d       xs g v s|   yw)r7   Nr#   ).0rB   current_selectors     r   	<genexpr>z&route_range_context.<locals>.<genexpr>   s(     Y5)9eii>Q>WUW)XYs   ''c                ~   | y | j                  d      xs g D cg c]	  }|v s| }}| j                  d      xs g }| j                  d      xs g }|v rd}nd   |v r
d   |v rd}n|rd}n|sd}nd	}| j                  d
      | j                  d      | j                  d      |t        |      ||dS c c}w )Nr8   r7   zcurrent selector root intervalr(   r)   z4selector container with source and target field mapsz0selector container with route-related field mapsz1selector/data container without linked field mapsznon-route selector containerr9   r:   r;   )r9   r:   r;   selectorLabelsfieldMapCountrouteMapOverlapclassification)r$   r?   )	rB   rC   route_overlapr7   
field_mapsro   ri   route
route_mapss	         r   interval_summaryz-route_range_context.<locals>.interval_summary   s    =49IIk4J4PblyT]akTkll8$*YY{+1r
v%=N8_
*uX*/LSNONPN;Nyy+ii)		*-$ _,,
 	
 ms
   	B:B:r6   r   r;   rS   rT   rU   rn   currentSelectorcurrentSelectorRootRangeHexcurrentRouteLeafStreamRangeHexcurrentRouteSceneRecordRangeHexcandidateSelectorContainerparentSelectorContainer$candidateCurrentSelectorRootRangeHit!parentCurrentSelectorRootRangeHitcandidateRouteLeafRangeHitparentRouteLeafRangeHit!candidateRouteSceneRecordRangeHitparentRouteSceneRecordRangeHitcandidateRouteMapContainerHitparentRouteMapContainerHitanyCurrentRouteRangeHit)rB   dict | Nonereturnr   )nextrJ   r$   re   boolany)candidate_va	parent_varr   rH   rangescurrent_intervalcandidate_intervalparent_intervalrt   candidate_summaryparent_summarycurrent_range
leaf_rangescene_rangecandidate_current_selector_hitparent_current_selector_hitcandidate_leaf_hitparent_leaf_hitcandidate_scene_hitparent_scene_hit!candidate_route_map_container_hitparent_route_map_container_hitany_range_hitri   rs   s     `                    @@r   route_range_contextr      sy    /5?3JZ(YIY 6iNLULa29iHgkO
4 ));<%o6NM#%f-#''.(,,Z8

 )*J+,K%3M<%P""0	"J'
LA$Z;O(lC%k9=(,.?.E2-J-JK\-](^%%)>+?R*D*DEV*W%X"&#)&	 	M+%/ 	%/ 	&}'8'8'D[_	
 	)*..*D 	*;??:+F 	%&7 	"> 	/0N 	,-H 	%&8 	"? 	,-@ 	)*: 	()J  	%&D!" 	"=# r   c                    | d   ry|d   s|d   ry|d   s|d   ry|d	   s|d
   ry|d   s|d   ry|j                  d      xs i }|j                  d      dk(  ryy)NanyCurrentRouteIndexHitz+linked by current selector/manifest indexesr}   r~   z&inside current route leaf-stream ranger   r   z'inside current route scene-record ranger{   r|   z2inside current selector root range but not indexedr   r   z7inside selector container with route-related field mapsry   rm   r   zGoutside current route ranges; selector container has no field-map linkszoutside current route rangesr#   )
index_hits
range_hitscandidate_containers      r   route_relevance_textr      s    +,<./:>W3X756*Ee:f889ZHk=lC12jA]6^H$..)EFL"/14X)r   c                L    | D ]  }|d   |cxk  r|d   |d   z   k  s|c S  ! y )Nrawraw_sizer   sectionsoffsetsections      r   section_for_offsetr      s@     5>VJgenwz7J&JJN K r   c                L    | D ]  }|d   |cxk  r|d   |d   z   k  s|c S  ! y )NrI   r   r   )r   rI   r   s      r   section_for_var      s@     4=BD1D!DDN E r   c                <    t        | |      }|y |d   |z   |d   z
  S )NrI   r   )r   r   s      r   va_for_offsetr      s.     62G4=6!GEN22r   c                    t        j                  d|      }g }d}	 | j                  ||      }|dk  r	 |S |dz   }t        ||      }|/|j	                  t        t        ||      xs d      |d   d       ])Nz<Ir   r   name)refVaHex
refSection)structpackfindr   r1   r   r   )exer   r)   needlerowssearchhitr   s           r   pointer_refsr     s    [[v&FDF
hhvv&7 K q$Xs3?mHc:?a@!&/
 	 r   c                    t        j                  | xs g d      j                         t        j                  |xs g d      j                         t        j                  |xs g d      j                         dS )NF)ensure_ascii)saveSelectorLeafStreamssaveSceneSelectorssceneManifest)jsondumpslower)r.   r@   scene_manifests      r   route_text_indexesr     sd     $(::l.@bu#U#[#[#]"jj)=)CRWX^^`N$8buMSSU r   c                    | j                         }|j                         D ci c]
  \  }}|||v  }}}i |dt        |j                               iS c c}}w )Nr   )r   r2   r   values)candidate_va_hexindexesr   r   texthitss         r   
route_hitsr   "  sc    ##%F3:==?CZT4D&D. CDC
!3t{{}#5  Ds   Ac                   t        ||      }|d g dddS t        |d   |t        z
        }t        |d   |d   z   dz
  |t        z         }d }t        ||dz  z
  |dz   d      D ]K  }t        | ||      }|st        ||z
        }	||k  rdnd}
|
|	z   t        |       |f}|	||d   k  sG|||f}M |d g dddS |\  }}}g }g }|D ]X  }t        |j                  d            xs d}t        ||z
        t        k  r|j                  |       H|j                  |       Z t        |      |t        |      t        |      dS )	Nr   )parentBlockStartHexparentPointerRefslocalPointerRefCountexternalPointerRefCountrI   r   rR   r   i   r   )r   rW   PARENT_SCAN_BACKrV   PARENT_SCAN_FORWARDranger   absr?   r   r$   LINK_RADIUSr1   r   )r   r   r   r   r   r   bestr)   refsdistancebefore_bonusscore_r   
local_refsexternal_refsrefref_vas                     r   candidate_parentr   +  s   X|4G#'!#$%'(	
 	
 |.>>?E
gdmgj11A5|FY7Y
ZCD+S1Wa8 )C62|f,-"l2q(3t9*f=<547?64(D) |#'!#$%'(	
 	
 Ay$JM &377:./41v$%4c"  %&  %Y/! #J#&}#5	 r   c                L   t        |       }|xs t        |       }t        |||      }t        |      t	        |      }t        |      }g }	|j                  d      xs g D ]  }
|
j                  d      dk7  rt        |
j                  d            }|5t        |
d   |      }t        | ||      }t        |d         }t        ||||      }t        ||      }|	j                  |
d   |
d   |
d   |
d   |
d   |d   |d	   |d
   |d   ||||d   s|d   rdndd        |	j                  d        t        d |	D              }t        d |	D              }t        d |	D              }t        d |	D              }t        d |	D              }t        d |	D              }t        d |	D              }i ddddddt        fd |D        d       d!|d"   j                  d#      d$|d%   j                  d#      d&t!        |	      d'|d(|d)|d*|d+|d,|d-|d.d/d|	S )0N
candidates
confidencemediumrN   r   indexHexhandlerLabelro   r   r   r   r   r   z1trace this linked block through the current routezLexclude as current-route proof unless a runtime trace reaches this container)candidateVaHexr   r   r   ro   r   r   r   r   routeIndexHitsrouteRangeHitsrouteRelevancenextStepc                    | d   S )Nr   r   )items    r   <lambda>zbuild_summary.<locals>.<lambda>  s    &6!7 r   )r[   c              3  2   K   | ]  }|d    d   sd  yw)r   r   r   Nr   rh   r   s     r   rj   z build_summary.<locals>.<genexpr>  s     aTt4D/EF_/`qa   c              3  2   K   | ]  }|d    d   sd  yw)r   r   r   Nr   r   s     r   rj   z build_summary.<locals>.<genexpr>  s     d$7G2HIb2c!dr   c              3  @   K   | ]  }|d    d   s|d    d   rd  yw)r   r{   r|   r   Nr   r   s     r   rj   z build_summary.<locals>.<genexpr>  s6      ! !"HI !"EF 	
!   c              3  @   K   | ]  }|d    d   s|d    d   rd  yw)r   r}   r~   r   Nr   r   s     r   rj   z build_summary.<locals>.<genexpr>  s6       !">? !";< 	
r   c              3  @   K   | ]  }|d    d   s|d    d   rd  yw)r   r   r   r   Nr   r   s     r   rj   z build_summary.<locals>.<genexpr>  s6        !"EF !"BC 	
 r   c              3  @   K   | ]  }|d    d   s|d    d   rd  yw)r   r   r   r   Nr   r   s     r   rj   z build_summary.<locals>.<genexpr>  s6      $ !"AB !">? 	
$r   c              3  t   K   | ]0  }|d    j                  d      xs i j                  d      dk(  rd 2 yw)r   ry   rm   r   r   Nr#   r   s     r   rj   z build_summary.<locals>.<genexpr>  sD       "#''(DEKPPQ`aeff 	
 s   68scopezfmedium-confidence branch-state event/object candidates linked against current route indexes and rangescandidateSource+event_object_branch_state_stream_candidatesrr   rv   c              3  t   K   | ]/  }d    |j                  d      xs g v r|j                  d       1 yw)r*   r7   r;   Nr#   )rh   rB   rr   s     r   rj   z build_summary.<locals>.<genexpr>  s=      Z(UYYx-@-FBG IIj)s   58rw   rT   r;   rx   rU   mediumCandidateCountcurrentRouteLinkedCountcurrentRouteRangeHitCount&currentSelectorRootRangeCandidateCount#currentRouteLeafRangeCandidateCount*currentRouteSceneRecordRangeCandidateCountrouteMapContainerCandidateCount$emptySelectorContainerCandidateCount
conclusionay  Medium-confidence raw event/object branch-state candidates are present, but neither the current selector/manifest indexes nor the current selector root, leaf-stream, scene-record, or route-map container ranges link them to the active save-selector route. Treat them as candidate event/object blocks, not as proof that the current web progression executes a branch-state writer.)r   build_candidate_summaryr   r/   rF   rb   r$   r   r   r   r   r   r1   sortsumr   r?   )r   r   r.   r@   r   r   r   rH   r   linkedr%   r   r   parentr   r   route_relevancelinked_countrange_hit_countcurrent_root_hit_countleaf_range_hit_countscene_range_hit_countroute_map_container_countempty_container_countrr   s                           @r   r   r   X  s0    S!H)I-DS-I /C^TG%E"#78I|,FF $$\28b 77< H, !12#g,0!#x>f%:;<	(y%TZ[
.tZ@!'lJ/l+!"23#)*?#@$*+A$B'-.G'H!'(;!<"(- 12jAZ6[ Dc!
 	< KK7K8aVaaLdddO  !!           !$ $$ !      
yH 	 	&!*
  	)&1B*C*G*G
*S 	*62D+E+I+I*+U  	F!" 	"<#$ 	$_%& 	12H'( 	./C)* 	56K+, 	*+D-. 	/0E/0 	d3< 	f= r   c                z   ddddd| d    d| d    d| d	    d
| j                  d      xs d dd| j                  d      xs d dd| j                  d      xs d dd| d    d| d    d| d   dddg}| d   D ]  }|j                  d      xs i j                  d      xs i }dj                  |j                  d      xs g       xs d}| d|j                  d      xs d d}|j                  d       d!k(  r|d"z  }n;|j                  d#      r*|d$dj                  |j                  d#      xs g        z  }|j                  d%|d&    d'|d(    d)|d*    d+|j                  d,      xs d d-| d.|d/    d.|d0    d.|d1    d.|d2    d3        |j                  d       d4j                  |      S )5Nz+# Event/Object Branch State Candidate Links zsMedium-confidence event/object branch-state byte-pair candidates, checked against current route indexes and ranges.z- medium candidates: r   z#- linked by current route indexes: r   z- current route range hits: r  z - current selector root range: `rv   -`z$- current route leaf stream range: `rw   z%- current route scene record range: `rx   z!- route-map selector containers: r  z- empty selector containers: r  r  zt| candidate | index | parent block | selector container | local refs | external refs | route relevance | next step |z3| --- | --- | --- | --- | ---: | ---: | --- | --- |r   r   ry   ,rl   z `r;   rm   r   z no mapsrn   z route maps z| `r   z` | `r   z` r   z | `r   z` | z | r   r   r   r   z |
)r$   joinr1   )summarylinesr%   	containercontainer_labelcontainer_bitss         r   markdownr!    sZ   5
}

(> ?@A
-g6O.P-QR
&w/J'K&LM
*7;;7T+U+\Y\*]]^_
.w{{;[/\/c`c.ddef
/<]0^0ebe/ffgh
+G4U,V+WX
'0V(W'XY

~=#E& |$ 
WW-.4"99:VW][]	((9==1A#B#HbIPS+,By}}Z/H/OC.PPQR==)Q.j(N]],-SXXimmDU6V6\Z\-],^__N#&'(c*o->b^AT@U V-.5#6d>:J#cRhNiMjjm,-.c#6F2G1HCPZOK\\^`	

 
LL99Ur   c                j   g }| d   D ]8  }dj                  d |d   d d D              xs d}t        |d         dkD  r|dt        |d         dz
   dz  }|j                  d	      xs i j                  d
      xs i }dj                  |j                  d      xs g       xs d}t        j                  |       dt        j                  |j                  d      xs d       dt        j                  |j                  d      xs d       }|j                  d      r=|dt        j                  dj                  |j                  d      xs g              z  }|j                  dt        j                  |d          dt        j                  |d          dt        j                  |d          dt        j                  |d          dt        j                  |j                  d      xs d       d| d|d    d|d    d| dt        j                  |d          dt        j                  |d          d        ; d!j                  d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2| d3    d4| d5    d6| d7    d8d9t        j                  | j                  d:      xs d       d;t        j                  | j                  d<      xs d       d=t        j                  | j                  d>      xs d       d?| d@    dA| dB    d8dCt        j                  | dD          dEdFdGdHj                  |       dIdJdKdHg      S )LNr   z<br>c              3  L   K   | ]  }t        j                  |d            yw)r   N)htmlescape)rh   r   s     r   rj   zhtml_page.<locals>.<genexpr>  s     `C4;;s:7`s   "$r      r  z<br>+z morer   ry   z, rl   z
<br><code>r;   z</code><br>ro   rn   z<br>route maps: z<tr><td><code>r   z</code></td><td><code>r   r   z	</td><td>z</td><td><code>r   z</code></td><td>r   r   r   r   z
</td></tr>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>Event/Object Branch State Candidate Links</title>z	  <style>z^    body { margin: 24px; background: #101010; color: #eee; font: 14px system-ui, sans-serif; }zJ    table { border-collapse: collapse; width: 100%; margin-bottom: 24px; }zM    th, td { border: 1px solid #333; padding: 6px 8px; vertical-align: top; }z    th { background: #1d1d1d; }z    code { color: #f5d76e; }z
  </style>z</head>z<body>z4  <h1>Event/Object Branch State Candidate Links</h1>z  <p>Medium candidates: r   z#; linked by current route indexes: r   z; current route range hits: r  z.</p>z(  <p>current selector root range: <code>rv   z"</code>; leaf stream range: <code>rw   z#</code>; scene record range: <code>rx   z(</code>; route-map selector containers: r  z; empty selector containers: r  z  <p>r  z</p>z  <table><thead><tr><th>candidate</th><th>index</th><th>classification</th><th>parent block</th><th>selector container</th><th>local refs</th><th>external refs</th><th>parent refs</th><th>route relevance</th><th>next step</th></tr></thead>z	  <tbody>r  z</tbody></table>z</body>z</html>)r  r?   r$   r$  r%  r1   )r  r   r%   r   r  r  container_details          r   	html_pager(    s   D|$ 
{{`3GZC[\^]^C_``gdgs&'(1,eC$7 89A=>eDDDWW-.4"99:VW][]	))IMM2B$C$IrJQc{{?+, -[[z!:!AcBC;{{9==)9:AcBCE 	
 ==*+"24;;tyyWhIiIomo?p3q2r ssS)9%:;< =S_56k$++cR`NaBbAc d;;s#3456 7SWW-B%C%JsKL M#$ %-./ 0012 3& ;;s#3456 7;;s:/0 1	

6 99"PDhTW)&>
"7+A#B"C D,,34M,N+O P%%,-H%I$J%	Q 34;;w{{Kh?i?pmp3q2r s$$(KK<\0]0dad$e#f g%%)[[=^1_1fcf%g$h i**12S*T)U V&&-.T&U%VV[		]
 GL12348 	z
BGGDM?"23
=  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.event_object_branch_state_candidate_links.jsonF   )r   indentr  utf-8encoding.event_object_branch_state_candidate_links.html)mkdir
write_textr   r   r(  )r  out_dirs     r   write_outputsr5  *  sf    MM$M.??KK

7q9D@ L  ??KKIV]L^ipKqr   c                p    | j                         s|S t        j                  | j                  d            S )Nr.  r/  )existsr   loads	read_text)pathdefaults     r   	load_jsonr<  3  s*    ;;=::dnngn677r   c            
     >   t        j                  t              } | j                  dt        t
        dz         | j                  dt        t               | j                         }|j                  j                         }t        |j                  dz  d       }t        ||t        |j                  dz  g       t        |j                  dz  g       t        |j                  d	z  g             }t        ||j                         t        d
|j                  dz          y )N)descriptionz--exezHwanse2.exe)typer;  z	--out-dirz0event_object_branch_state_stream_candidates.jsonzsave_selector_leaf_streams.jsonzsave_scene_selectors.jsonzscene_manifest.jsonz3wrote event/object branch-state candidate links -> r1  )argparseArgumentParser__doc__add_argumentr   ROOTOUT
parse_argsr   
read_bytesr<  r4  r   r5  print)parserargsr   r   r  s        r   mainrK  9  s    $$9F
dD=4HI
$<D
((


C!$,,1c"ceij$,,!BBBG$,,!<<bA$,,!66;G '4<<(	?O@  @A  B  Cr   __main__)r   r   r   r   )r   
str | Noner   
int | None)r   rN  r   rN  r   rM  )r%   dictr   rM  )r.   list[dict] | Noner   rO  )r2   listr   None)r@   rP  r   
list[dict])rH   rS  rI   r   r   r   )rd   r   rI   rN  r   r   )r   r   r   rN  rr   rO  rH   rS  r   rO  r   rO  )r   rO  r   rO  r   r   )r   rS  r   r   r   r   )r   rS  rI   r   r   r   )r   rS  r   r   r   rN  )r   bytesr   rS  r)   r   r   rS  )r.   rP  r@   rP  r   rP  r   dict[str, str])r   r   r   rU  r   rO  )r   rT  r   rS  r   r   r   rO  )NNNN)r   rT  r   r   r.   rP  r@   rP  r   rP  r   rO  )r  rO  r   r   )r  rO  r4  r   r   rR  )r:  r   )r   rR  )7rB  
__future__r   r@  r$  r   r   syspathlibr   r:  insertr   __file__resolver  probe_exe_scene_tablesr   5summarize_event_object_branch_state_stream_candidatesr   r  r*  rD  rE  r   r   r   r+   r,   r-   r   r   r   r&   r/   r3   rF   rJ   rb   re   r   r   r   r   r   r   r   r   r   r!  r(  r5  r<  rK  __name__r   r   r   <module>r_     s   W "     
  3tH~--/667 8 0 j H~''*
Ul  ! !   >+
&2GYYY Y 	Y
 Y 
Yx*"3&	#	+	 &	 		*^ &*&*.2(,k	k"k $k ,	k
 &k 
k\"J<~ 25 r8C$ zF r   