
    W!j|                    B   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Zd dl	m
Z
  e
e      j                         j                  Zej                  d   Z e
d      ZddZddZedk(  r e e             y# e$ r"Z ed	eej2                  
        ed      dZ[ww xY w)    )annotationsN)Path   z)/home/cube/.hermes/profiles/dualcoachtestc                d    t        j                  | j                               j                         S )N)hashlibsha256
read_bytes	hexdigest)ps    verify_successor_v3.pyshar      s    GNN1<<>:DDFF    c                    t        j                  t        dz  j                               } t        j                  t        dz  j                               }t        j                  t        dz  j                               }ddNfd} || d   dk(  d        || d   |d   k(  d	        |t	        t        dz        | d
   k(  d       |D ch c]  }|d   	 }}h d}t        j                  d      D ch c]T  }|j                         sd|j                  vs#d|j                  vs2|j                  t              j                         V }} ||||z  k(  d       |D ]]  }	t        |	d   z  } ||j                         xr3 |j                         j                  |	d   k(  xr t	        |      |	d   k(  |	d          _  |t	        t        dz        | d   k(  d        |t	        t        dz        | d   k(  d        |t	        t        dz        | d   k(  d        |t	        t        dz        | d   k(  d       t        j                  t        dz  j                               }
 ||
d   d k(  xr |
d!   d"u d#       t        d$z  } |t	        |      d%k(  xrn t        j                  |j                         j                        d&k(  xr< |j                         j                  d'k(  xr |j                         j                   d'k(  d(       t        j                  t        d)z  j                               } ||d   d*k(  xr |d+   dk(  xr |d,   d-u xr |d.   d"u d/       t"        j$                  j'                  d0t        d1z        }|r|j(                  sJ t"        j$                  j+                  |      }|j(                  j-                  |       |j/                  |j0                  d2      |j/                  |j                  d3      z   } ||t        j                  t        d4z  j                               k(  d5       t        dz  j                         } |d6|v xr d7|vd8       d9D ]=  } |t        j                  t        d:| d;z  j                               d   dk(  |       ? t3        j4                  g d<d"d"d"=      j6                  }t9        d> |j;                         D              } ||d?d@dAdBk(  dC        |t        dDz  j=                          xr t        dEz  j=                          dF       t?        t        j@                  d| d   | dG   | dH   | d
   t	        t        dz        dIdJdKdL
d"M             yc c}w c c}w )ONREADINESS-SEAL-v3.jsonzcandidate-manifest.jsonPACKAGE-INVENTORY-v3.jsonr   c                *    | st        |      dz  y )N   )RuntimeError)okmsgcheckss     r   needzmain.<locals>.need   s    	,s##!)&r   statusREADY_STRICT_REHEARSALfull_candidate_digest	candidatepackage_inventory_sha256zpackage rootpath>   verify_successor_v3.pyPERMISSION-v7.jsonr   launch_controller_v7.pyr   *__pycache__z.pytest_cachezunindexed package bytessizer   r!   launch_controller_v7_sha256
controllerr    launch_permission_v7_sha256
permissionzCONFIG-AUTHORITY-SEAL-v3.jsonconfig_authority_seal_sha256zconfig sealz v6-pre-mutation-clean-block.jsonv6_incident_binding_sha256incidentAUTHORIZED_ONE_USE_V7v6_permission_reuse_forbiddenTzfresh permissionzconfig.yaml@f93106b16643227e2ef9dec67a5bbd497e1d353e779da62287898a087071af87i  i  zconfig authorityz8receipts/actual-profile-preflight-before-permission.jsonPASS_READ_ONLYauthority_tree_mutationscredential_outputFcredential_resolvedzactual preflight	assemblerzassemble_successor.pyhermesprofilezproduct-inventory.jsonzproduct inventoryload_gateway_preflight_inputsload_gateway_configzread-only api)	objectivesecurityztrainer-freequalityqa
provenancezreview-z.json)
z/usr/bin/systemctlz--usershowz$hermes-gateway-dualcoachtest.service-pActiveStater>   SubStater>   MainPID)textcapture_outputcheckc              3  @   K   | ]  }|j                  d d        yw)=r   N)split).0xs     r   	<genexpr>zmain.<locals>.<genexpr>   sL       Q|  j{  ef  RS  RY  RY  Z]  ^_  R`  j{s   0inactivedead)rA   r?   r@   zservice cleanzcustomers/registry.jsonsessionszauthority cleanpreserved_product_candidatecore_candidate_digest	PASS_0600PASS_READ_ONLY_ZERO_MUTATIONSPASS)
r   r   rO   corepackage_inventoryreadiness_seal_sha256config_authorityactual_profile_preflightr   clean_state)	sort_keys)r   boolr   strreturnNone)!jsonloadsROOT	read_textr   rglobis_filepartsrelative_toas_posixstatst_sizePROFILES_IMODEst_modest_uidst_gid	importlibutilspec_from_file_locationloadermodule_from_specexec_module	inventoryHERMES
subprocessrunstdoutdict
splitlinesexistsprintdumps)sealmanifestrowsr   rI   expectedallowedr   actualrowr(   configproofspecmodcurrentrB   laner=   stater   s                       @r   mainr   	   s
   
jj$//::<=tzzSWXqSqR|R|R~Gh  FJ  FP  FP  RV  Wr  Rr  Q}  Q}  Q  F@  AE  HI  AG d8n..x8dCZ>[]ef}]~>~  @K  :L  MQ  RU  VZ  [v  Vv  Rw  y}  ~X  yY  RY  Zh  Mi"
#d1V9d
#  -kG  \`  \f  \f  gj  \k  s  \k  WX  op  ox  ox  oz  L  TU  T[  T[  [  `o  wx  w~  w~  `~  tu  tA  tA  BF  tG  tP  tP  tR  \k  lr  s  @D  EK  MU  V]  M]  E]  ^w  @xSV!T!))+a!&&(*:*:CK*GaCPQFTWX`TaLabeflbmn c$(
()40M+NN|\]abefjkf  cA  CG  He  Cf  cf  gs  ^t  uy  z}  ~B  Cb  ~b  zc  ei  jH  eI  zI  JW  uX  Y]  ^a  bf  gI  bI  ^J  LP  Qm  Ln  ^n  oy  YzJJ11<<>?ZPXEY[rEr  Fk  xB  Cb  xc  gk  xk  l~  Ad3v;0r#r  $`w{  xD  xD  EK  EP  EP  ER  EZ  EZ  x[  ]b  xb  $`  gm  gr  gr  gt  g{  g{  }A  gA  $`  FL  FQ  FQ  FS  FZ  FZ  \`  F`  as  tzz4RR]]_`aefkltfu  xH  gH  gB  MR  Sm  Mn  pq  Mq  gB  v{  |O  vP  TY  vY  gB  ^c  dy  ^z  ~B  ^B  CU  bVnn,,[>U9UV^bgkgrgrWr^r  xA  xF  xF  xW  xW  X\  x]sv  ^b  ^i  ^i  ^u  ^u  vy  ^z  CF  CP  CP  QT  Q[  Q[  \d  Ce  fi  fs  fs  tw  t  t  @I  fJ  CJ  {B  KO  PW  Y]  Yc  Yc  ei  jB  eB  dM  dM  dO  YP  PP  Qd  Ke%%00248W[_8_  9Id|  EI  eI  JY  4ZPTQUVZV`V`bfipqupvv{g|b|  bH  bH  bJ  WK  LT  WU  Wo  Wo  pt  RuPnn  U  [_  os  z~    F  F  MQ  Q|  jn  jy  jy  j{  Q|  M|  GL  }A  BG  TW  fp  |B  IC  BC  DS  }T  UY  _f  g@  _@  ^H  ^H  ^J  ZJ  Zp  T[  \f  Tf  Sn  Sn  Sp  Op  qB  UCtzz4F]A^  ~B  C`  ~a  im  nE  iF  [_  `z  [{  TW  X\  ]u  Xu  Tv  JU  qP  Z`  ou  v  AE  F  G  OP $  ss   V 5VVV)%V__main__zBLOCKED:)file   )r   r   r]   r\   )r]   int)
__future__r   r   importlib.utilro   r_   rh   rw   syspathlibr   __file__resolveparentra   parentsPROJECTrj   r   r   __name__
SystemExit	Exceptionexcr}   stderr r   r   <module>r      s    " 6 6 6 	(^$$Q89 FP& Zdf Rz#3::>ZPQ]?RRs   )A7 7B<BB