
    C[Rj                     @   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d      Z ed      Zg dZ	d Z
d Zd Z e j                  d	
      Zej                  d       ej                  ded       ej                  dd       ej#                         Z ej&                         Zej*                   eej*                  ej,                        dZej0                  s
 e       ed<    e ej&                         ez
  dz  d      ed<    e ej6                  ed             y)    N)Pathz1C:/MCSJAgent/foster-workflow-catalog/catalog.jsonz@C:/MCSJAgent/foster-workflow-catalog/priority-task-registry.json)pythonzC:/MCSJAgent/mcsj-fast-fx.pystatec                    t               }t        j                  d| j                               D ]  }t	        |      dk  s|dv r|j                  |       |}dD ]?  }|j                  |      st	        |      t	        |      z
  dk\  s0|d t	        |        } n |j                  d      r|j                  d      r|d d d	z   }|j                  |        |S )
Nz	[a-z0-9]+   >	   andforthefromintomcsjwithsetupmaintenance)ingedess   iiesy)setrefindalllowerlenaddendswith)r   outxr   suffixs         C:/MCSJAgent/mcsj-speed-prime.pytoksr%      s    CZZQWWY/q619bbdl

+Fzz&!c!fS[&8!&;Mc&k\"E , ::c?qzz%0AcrF3J!
 0 J    c            	         t        j                         } t        j                  t        ddd      }t        t        j                         | z
  dz  d      }t        j                  |j                        }g }|j                  d	g       D ]  }|j                  d
g       D cg c]l  }|j                  dd      j                         s$d|j                  dd      v sd|j                  dd      v sM|j                  dd      j                         n }}|j                  |j                  d      xs |j                  d      |d d d        |j                  dk(  ||j                  d      xs |j                  d      |dS # t        $ r2 d||j                  j                         xs |j                  d d dcY S w xY wc c}w )NT   )capture_outputtexttimeout     F   )okmserrorpanelscontrolsr*    	TextFieldclassComboBox
panelClass   )r6   valuesr   databaseTitletitle)r/   r0   databaser2   )timeperf_counter
subprocessrunFXroundjsonloadsstdout	Exceptionstderrstripgetappend
returncode)tpr0   dr2   r"   cfieldss           r$   compact_staterR      s   
AnnRta@Ad!!#T)!,B::ahhFUU8B23%%
22F  n2FQ!%%PVWYJZJ`J`Jbhswxw|w|  ~E  FH  xI  iI  MW  [\  [`  [`  ah  ik  [l  MlfR &&(2F  nquu\2DaeeGnfUXVXkZ[   qbAEE/4J4\aeeT[nflmm \5b9I9[QXXVZWZ^\\\ ns$   F  %G(G/"G8F?>F?c                    t        j                  t        j                  d            }t	        |       }g }t
        j                         rBt        j                  t
        j                  d            }|j                  dg       D ]  }d}|j                  dg       D ]  }t	        |      }	t        ||	z        }
|
t        dt        |	            z  }|
t        dt        |            z  }| j                         j                         |j                         j                         k(  rdnd}d|z  dt        ||      z  z   d	|
z  z   }t        ||      } |d
k\  s|j                  t        |d      |d   |d   |d   dd|d   dd        |d   D ]e  }|j                  d      sdj                  |j                  dd      |j                  dd      |j                  dd      dj                  |j                  dg             dj                  |j                  dg             g      }t	        |      }t        ||z        }
| j                         |j                         v rdnd}|
dz  |z   |j                  dd      z   }||j                  dd      k  r|rt!        d |d   D        |d   d         }|j                  ||d   |d   ||j                  dd      |j                  dd      dd       h t#        |d        d | S )!Nzutf-8)encodingtasksr   aliasesr-   r,   i  
      moduletasksourcer4      idT)scorerY   rZ   r[   
navigationrecipe_readinessregistry_idcurateditemsoperational r<   r_   sectionssources   recipe_scorec              3   `   K   | ]&  }|j                         j                  d       s#| ( yw))z.jsonz.mdN)r   r    ).0r   s     r$   	<genexpr>zsearch.<locals>.<genexpr>9   s$     Q\QWWY-?-?-P!\s   $..F)r^   rY   rZ   r[   r_   r`   rb   c                 F    | j                  dd       | d    | d    | d   fS )Nrb   Fr^   r`   rZ   )rJ   )r"   s    r$   <lambda>zsearch.<locals>.<lambda>;   s1    i(>$>'
{AN`LaKabcdjbk#lr&   )key)rD   rE   CAT	read_textr%   REGexistsrJ   r   maxrI   r   minrK   rC   joinnextsorted)qlimitdataqtr!   registryr"   bestaliasatoverlapcoveragequerycovexactr^   r*   ttphrasesrcs                      r$   searchr   "   s#   	CMM7M3	4Dabb# zz|CMM7M;<gb)ADy,;BG Qs2w/'#aB.:P779??,ekkm.A.A.CCa5jS(%;!;;BwJFe_ - Sy

E$qM1X;aPViabckalz|  QR  ab  cg  ah  sw  x  y * ']uu]#XXXquuWR(x);AEE,r<RSVS[S[\]\a\ablmo\pSqrurzrz{|  |A  |A  BK  LN  |O  sP  Q  R:s27|wGGI-q1aiquu^A66!%%q))b(QQy\QRST]R^_`Rab

E1X;ajRUcdchchiuvxcy  NO  NS  NS  Tb  cd  Ne  pu  v  	w  #lmntotuur&   z8Prime live MCSJ and retrieve best Foster workflows fast.)descriptionqueryz--limitr\   )typedefaultz
--no-state
store_true)action)r   matchesliver,   r-   total_msr   )indent)argparserD   r   r@   r>   pathlibr   rp   rr   rB   r%   rR   r   ArgumentParserapadd_argumentint
parse_argsar?   startedr   rz   resultno_staterC   printdumps r&   r$   <module>r      s   + + + 	<=	KL4
nv6 8'ab  "//)Q/GYemyIz--/,4,,.7&"9:zz-/6&>+$++-g5t;A>z  jdjjq! "r&   