§
   ˜kôj½3Åsã                   ó¤  — d Z ddlZddlZddlmZmZmZmZmZ ddl	Z	ddl
Z
ddlZddlmZ dZdai 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(“i d)d*“d+d,“d-d.“d/d0“d1d2“d3d4“d5d6“d7d8“d9d:“d;d<“d=d>“d?d@“dAdB“dCdD“dEdF“dGdH“dIdJ“¥i dKdL“dMdN“dOdP“dQdR“dSdT“dUdV“dWdX“dYdZ“d[d\“d]d^“d_d`“dadb“dcdd“dedf“dgdh“didj“dkdl“¥dmdndodpdqdrdsdtdudvœ	¥ZdwZdxZdyZdzZd{Zd|Zd}„ Zd~„ Zd„ Zd d€„Zd�„ Zd‚„ Zdƒ„ Zd„„ Zd…„ Zd†„ Z d¡dˆ„Z!d‰„ Z"dŠ„ Z#d‹„ Z$d¢dŒ„Z%d�„ Z&d£dŽ„Z'd�„ Z(d�„ Z)d‘„ Z*d’„ Z+d“„ Z,d”„ Z-d•„ Z.d¤d—„Z/d˜„ Z0d d™„Z1dš„ Z2d›„ Z3dœ„ Z4d�„ Z5dž„ Z6d£dŸ„Z7dS )¥zPOne item menu and editor across listings, dialogs and inherited widget contexts.é    N)Ú	parse_qslÚquoteÚunquoteÚ	urlencodeÚurlsplit)Úfamilyzplugin://plugin.video.milionar/)Ú r	   Úplayéy~  Úrestartiz~  Úsourcei{~  Údetailé|~  Úfolderé}~  Úseasoné~~  Únexté~  Únext_sourceé€~  Úsimilari�~  Úgameé‚~  Úlistiƒ~  Úchanneli„~  Úwatchedi…~  Úchannel_opené†~  Úlivei‡~  Úlive_shuffleiˆ~  Úfirsti‰~  ÚrandomiŠ~  ÚopenéŒ~  Ú
collectioni ~  Úhide_continuei—~  Úplay_alli
  Úshufflei  Ú	play_fromi  Úqueuei  Úfavoriteéd  Úadd_playlistif  Úcreate_playlistig  Úrename_playlistih  Údelete_playlistii  Úremove_songij  Úalbumik  Úartistil  Úrename_channelim  Údelete_channelin  Úedit_channelio  Úmove_channelip  Úsong_upiq  Ú	song_downir  ÚbestiÔ  Ú	file_infoiv  Údownloadiv  Údownload_pickiÕ  ÚautoplayiÖ  Úremove_favoriteé×  ÚhistoryiØ  ÚwebiÙ  Úedit_progresséÚ  Úremove_programéÛ  Úmove_programéÜ  Úploti§  iã  iâ  i¨  ië  iì  ií  i €  iŠ  iŠ  )	ÚtrailerÚdirectorÚcreatorsÚ
tab_moviesÚ
tab_seriesÚrandom_gameÚai_costsÚrateÚfy_mode)Úwidget_game_topicsÚwidget_demo_moviesÚwidget_demo_series)rN   rO   rP   rQ   )r
   r   r   r   r   r   r   r   r   r   r'   r   r   r&   r   rJ   rK   rL   rM   rR   )r$   r
   r(   r)   r+   r*   r,   r.   r/   r0   r1   r2   r3   r4   r9   r:   )	r    r$   r!   r"   r#   r7   r5   r8   r6   )rD   rF   rH   rJ   rK   rL   rM   c                 óP   — t          j        d¦  «                             | ¦  «        S )Núplugin.video.milionar)Ú	xbmcaddonÚAddonÚgetLocalizedString)Únumbers    ú^/Users/chudy/Library/Application Support/Kodi/addons/plugin.video.milionar/wcs/skin/context.pyÚtextr^   -   s!   € ÝŒ?Ð2Ñ3Ô3×FÒFÀvÑNÔNÐNó    c                 ó\  ‡ — ‰                       d¦  «        rddlm} |                     ‰ ¦  «        S ‰                       d¦  «        rddlm} |                     ‰ ¦  «        S ‰                       d¦  «        rt
          S ‰ dv r+t          ˆ fd„t          D ¦   «         ¦  «        t          z   d	z   S ‰ d
k    rdS ‰ dk    r
dt          z   S ‰ t          v rt          ‰ dk    rt          ndz   S ‰                       d¦  «        r
t          dz   S ‰                      d¦  «        s‰ dv r
dt          z   nt          S )zHInclude descendants: a genre/series/playlist opens other kinds of items.Úhome_r   ©Ú
navigationúshared:©Úcontext_profilesÚvinyl_©Úwidget_mytv_channelsÚwidget_mycinema_channelsc              3   ó0   •K  — | ]}‰d k    s|dv¯|V — ŒdS )rj   ©r!   r"   N© ©Ú.0ÚaÚrows     €r]   ú	<genexpr>zcatalog.<locals>.<genexpr><   s:   øè è € ÐsÐs˜1¨3Ð2LÒ+LÐ+LÐPQÐYrÐPrÐPr�QÐPrÐPrÐPrÐPrÐsÐsr_   )r   rD   rF   rH   Úwidget_mytv_next)
r
   r   r   r   r   r   r   rD   rF   rH   Úwidget_ai_recent)r$   rT   rm   Úfy_)rS   Ú_genres©Úwidget_kraska_rootÚwidget_csfd_charts)Ú
startswithÚwcs.skinrc   Úcatalogrf   ÚMUSICÚtupleÚCHANNELÚVIDEOÚ	GAME_ROWSÚ	GAME_HEROÚendswith)rq   rc   rf   s   `  r]   r|   r|   1   su  ø€ à
‡~‚~�gÑÔð 'Ø'Ð'Ð'Ð'Ð'Ð'Ø×!Ò! #Ñ&Ô&Ð&Ø
‡~‚~�iÑ Ô ð -Ø-Ð-Ð-Ð-Ð-Ð-Ø×'Ò'¨Ñ,Ô,Ð,Ø
‡~‚~�hÑÔð ÝˆØ
ÐBÐBÐBÝÐsÐsÐsÐs¥ÐsÑsÔsÑsÔsÕv{Ñ{ð  Bñ  Bð  	BØ
Ð Ò Ð ð Lð  LØ
Ð Ò Ð Ø�5Ñ Ð Ø
�iÐÐÝ SÐ,@Ò%@Ð%@�E˜EÀbÑIÐIØ
‡~‚~�eÑÔð $Ý�|Ñ#Ð#Ø"%§,¢,¨yÑ"9Ô"9Ð{¸SÐDpÐ=pÐ=pˆI�ÑÐÕv{Ð{r_   c                 ó\  ‡‡— |                       d¦  «        r t          t          | ¦  «        ¦  «        g g dœS |                       d¦  «        rddlm} |                     | ¦  «        S |                       d¦  «        r |                      d¦  «        rdnd	Š| d
v rd	Šnd| dv rdŠn]| t          v rdŠnQ| dv rdŠnJ| dv rdŠnC| dv rdŠn<|                      d¦  «        s| dv rdŠn |                       d¦  «        r	| dk    rdŠndŠt          | ¦  «        Šˆfd„‰D ¦   «         ˆfd„‰D ¦   «         g dœS )Nra   ©ÚmainÚmoreÚhiddenrd   r   re   rg   Ú_songs)r
   r+   r,   )r$   r(   r
   r+   r,   )Úvinyl_genresÚvinyl_radiosrh   )r    r$   r
   r   r   r   )r   r   )Úcont_moviesÚmy_movies_progress)r
   r   r'   )Úcont_seriesÚmy_series_nextÚmy_series_newÚmy_series_upcomingrs   )r
   r   r   )Úmy_series_addedÚmy_series_unwatchedÚmy_series_allÚwidget_tmdb_popular_series)r   r   r   r
   r   r   rv   rw   )r$   r
   r   ru   Úfy_continue)r
   r   rR   r   )r
   r   r   c                 ó   •— g | ]}|‰v ¯|‘Œ	S rm   rm   )ro   rp   Úalloweds     €r]   ú
<listcomp>zdefaults.<locals>.<listcomp>c   s   ø€ Ð8Ð8Ð8˜1¨1°¨<¨<�Q¨<¨<¨<r_   c                 ó   •— g | ]}|‰v¯|‘Œ	S rm   rm   )ro   rp   Úprimarys     €r]   r™   zdefaults.<locals>.<listcomp>d   s#   ø€ Ð<Ð<Ð<˜1¨1°GÐ+;Ð+;�QÐ+;Ð+;Ð+;r_   )rz   r   r|   r{   rf   Údefaultsrƒ   r�   )rq   rf   r˜   r›   s     @@r]   rœ   rœ   H   s¶  øø€ Ø
‡~‚~�gÑÔð FÝ�W S™\œ\Ñ*Ô*°BÀ"ÐEÐEÐEØ
‡~‚~�iÑ Ô ð .Ø-Ð-Ð-Ð-Ð-Ð-Ø×(Ò(¨Ñ-Ô-Ð-Ø
‡~‚~�hÑÔð -Ø36·<²<ÀÑ3IÔ3Ið  AÐ/Ð/ð  PAˆØÐ2Ð2Ð2ØGˆGøØ	ÐDÐ	DÐ	DØFˆˆØ	•	Ð	Ð	Ø$ˆˆØ	Ð5Ð	5Ð	5Ø6ˆˆØ	ÐlÐ	lÐ	lØ/ˆˆØ	ÐiÐ	iÐ	iØKˆˆØ	�Š�iÑ	 Ô	 ð - CÐ+WÐ$WÐ$WØ,ˆˆØ	�Š˜Ñ	Ô	ð - 3¨-Ò#7Ð#7Ø4ˆˆà,ˆÝ�c‰lŒl€GØ8Ð8Ð8Ð8 Ð8Ñ8Ô8Ø<Ð<Ð<Ð< Ð<Ñ<Ô<ÈðLð Lð Lr_   c                 ó  ‡‡— t          ‰t          ¦  «        st          | ¦  «        S |                      d¦  «        r�t	          ˆfd„dD ¦   «         ¦  «        rfˆfd„dD ¦   «         Šdt          | ¦  «        v rGt	          d„ ‰                     ¦   «         D ¦   «         ¦  «        s‰d                              dd¦  «         t          | ¦  «        t          ¦   «         i c}Š}dD ]†}‰ 	                    |g ¦  «        }g ||<   t          |t          ¦  «        r|ng D ]O}t          |t          ¦  «        r8||v r4|‰vr0||                              |¦  «         ‰                     |¦  «         ŒPŒ‡|d	                              ˆfd
„|D ¦   «         ¦  «         |S )zGPreserve custom order/hidden actions; new supported actions go to More.ra   c              3   óH   •K  — | ]}d ‰                      |g ¦  «        v V — ŒdS )r$   N©Úget©ro   ÚgroupÚconfigs     €r]   rr   znormalize.<locals>.<genexpr>k   s6   øè è € Ð&oÐ&oÈ5 v°·²¸EÀ2Ñ1FÔ1FÐ'FÐ&oÐ&oÐ&oÐ&oÐ&oÐ&or_   r…   c                 óR   •— i | ]#}|d „ ‰                      |g ¦  «        D ¦   «         “Œ$S )c                 ó"   — g | ]}|d k    rdn|‘ŒS )r$   Úbrowserm   )ro   Úactions     r]   r™   z(normalize.<locals>.<dictcomp>.<listcomp>m   s&   € ÐgÐgÐgÀv f°Ò&6Ð&6˜(˜(¸FÐgÐgÐgr_   rŸ   r¡   s     €r]   ú
<dictcomp>znormalize.<locals>.<dictcomp>m   sM   ø€ ð ;ð ;ð ;Øð ÐgÐgÐQW×Q[ÒQ[Ð\aÐceÑQfÔQfÐgÑgÔgð ;ð ;ð ;r_   Úaddc              3   ó   K  — | ]}d |v V — Œ	dS )r©   Nrm   )ro   Úvaluess     r]   rr   znormalize.<locals>.<genexpr>o   s&   è è € Ð,[Ð,[À¨U°f¨_Ð,[Ð,[Ð,[Ð,[Ð,[Ð,[r_   r†   r   r‡   c              3   ó$   •K  — | ]
}|‰v¯|V — Œd S ©Nrm   )ro   rp   Úseens     €r]   rr   znormalize.<locals>.<genexpr>y   s'   øè è € Ð>Ð> °¸°°˜!°°°°Ð>Ð>r_   )Ú
isinstanceÚdictrœ   rz   Úanyr|   r«   ÚinsertÚsetr    r   ÚstrÚappendr©   Úextend)rq   r£   r˜   Úresultr¢   r«   r§   r®   s    `     @r]   Ú	normalizer¸   g   sÃ  øø€ å�f�dÑ#Ô#ð Ý˜‰}Œ}ÐØ
‡~‚~�gÑÔð ,¥3Ð&oÐ&oÐ&oÐ&oÐTnÐ&oÑ&oÔ&oÑ#oÔ#oð ,ð;ð ;ð ;ð ;Ø9ð;ñ ;ô ;ˆà•G˜C‘L”LÐ Ð ­Ð,[Ð,[È6Ï=Ê=É?Ì?Ð,[Ñ,[Ô,[Ñ)[Ô)[Ð Ø�6ŒN×!Ò! ! UÑ+Ô+Ð+Ý# C™LœL­#©%¬%°Ð€GˆT�6Ø+ð !ð !ˆØ—’˜E 2Ñ&Ô&ˆØˆˆu‰Ý *¨6µ4Ñ 8Ô 8Ð@�f�f¸bð 	!ð 	!ˆFÝ˜&¥#Ñ&Ô&ð !¨6°WÐ+<Ð+<ÀÈtÐASÐASØ�u”×$Ò$ VÑ,Ô,Ð,Ø—’˜Ñ Ô Ð øð	!ð ˆ6„N×ÒÐ>Ð>Ð>Ð> WÐ>Ñ>Ô>Ñ>Ô>Ð>Ø€Mr_   c                 ó  — |                       d¦  «        rddlm} |                     | |¦  «        S |dk    r2t	          |                       d¦  «        rdn| dv rdn| d	v rd
nd¦  «        S t	          t
          |         ¦  «        S )Nra   r   rb   r$   )rg   zshared:vinyl_i	  )rj   zshared:channel_cinemai�~  )ri   zshared:channel_tvr%   éz  )rz   r{   rc   Úlabelr^   ÚLABELS)rq   r§   rc   s      r]   r»   r»   }   s¸   € Ø
‡~‚~�gÑÔð -Ø'Ð'Ð'Ð'Ð'Ð'Ø×Ò  VÑ,Ô,Ð,Ø�ÒÐÝ˜SŸ^š^Ð,GÑHÔHð ]�E�EÐWZð  _Tð  XTð  XTÈeÈeØ Ð$QÐQÐQ�E�EÐW\ñ^ô ^ð 	^å•�v”ÑÔÐr_   c                 óT   — | r%t          t          j        | d¬¦  «        d¬¦  «        ndS )N)ú,ú:)Ú
separatorsr	   ©Úsafe)r   ÚjsonÚdumps)r£   s    r]   ÚencoderÅ   ‡   s/   € àHNÐV�5•”˜F¨zÐ:Ñ:Ô:ÀÐDÑDÔDÐDÐTVÐVr_   c                 ó‚   — ddl m} 	 | rt          j         || ¦  «        ¦  «        nd S # t          t
          f$ r Y d S w xY w)Nr   )r   )Úurllib.parser   rÃ   ÚloadsÚ
ValueErrorÚ	TypeError)Úrawr   s     r]   ÚdecoderÌ   Œ   sb   € Ø$Ð$Ð$Ð$Ð$Ð$ðØ+.Ð8�tŒz˜'˜' #™,œ,Ñ'Ô'Ð'°DÐ8øÝ�	Ð"ð ð ð Øˆtˆtðøøøs   ˆ ) ©>½>c                 ó  — |                       d¦  «        r| d         S |                       d¦  «        |                       d¦  «        }}|r@|r>t          j        d                     ||¦  «        ¦  «        pd                     ||¦  «        S dS )NÚctxÚsecÚslotzSkin.String(mil.{}.{}.uid)ú{}:{}r	   )r    ÚxbmcÚgetInfoLabelÚformat)ÚparamsrÏ   rÐ   s      r]   ÚoriginrÖ   ”   s‘   € Ø‡z‚z�%ÑÔð Ø�eŒ}ÐØ—
’
˜5Ñ!Ô! 6§:¢:¨fÑ#5Ô#5ˆ€CØ
ð nˆtð nÝÔ Ð!=×!DÒ!DÀSÈ$Ñ!OÔ!OÑPÔPÐmÐT[×TbÒTbÐcfÐhlÑTmÔTmÐmØˆ2r_   c                 ó  — ddl m} |j        D ]z}t          d|j        dz   ¦  «        D ]_}|                     ||¦  «        }|                     d¦  «        pd                     ||¦  «        | k    r|d         |j        v r	|||fc c S Œ`Œ{dS )Nr   ©Úslotsé   ÚuidrÑ   Útype©r	   r   N)	r{   rÙ   ÚSECTIONSÚrangeÚSLOTSÚcurrentr    rÔ   ÚTITLES)ÚidentityrÙ   rÏ   ÚnÚws        r]   Úfind_widgetræ   �   s¶   € ØÐÐÐÐÐØŒ~ð !ð !ˆÝ�q˜%œ+¨™/Ñ*Ô*ð 	!ð 	!ˆAØ—’˜c 1Ñ%Ô%ˆAØ—’�e‘”Ð6 §¢¨s°AÑ 6Ô 6¸8ÒCÐCÈÈ&Ì	ÐUZÔUaÐHaÐHaØ˜A˜q�yÐ Ð Ð Ð Ð øð	!ð ˆ;r_   c                 ó  — |r-|                       t                               d¦  «        ¦  «        s| S |                      d¦  «        \  }}}t	          t          |¦  «        ¦  «        }|                     ||¬¦  «         |                     d¦  «        dk    r`|                     d¦  «        rKt	          t          |d         ¦  «        ¦  «        }|                     ||¬¦  «         t          |¦  «        |d<   |dz   t          |¦  «        z   S )Nú/ú?)rÎ   Úctxrowr§   Úskin_runÚrun)	rz   ÚBASEÚrstripÚ	partitionr°   r   Úupdater    r   )Úpathrã   rq   ÚrootÚ_Úqueryr«   rì   s           r]   Úwith_originrõ   §   sí   € Øð ˜4Ÿ?š?­4¯;ª;°sÑ+;Ô+;Ñ<Ô<ð ØˆØ—^’^ CÑ(Ô(�N€Dˆ!ˆUÝ•)˜EÑ"Ô"Ñ#Ô#€FØ
‡M‚M�h s€MÑ+Ô+Ð+Ø‡z‚z�(ÑÔ˜zÒ)Ð)¨f¯jªj¸Ñ.?Ô.?Ð)Ý•9˜V Eœ]Ñ+Ô+Ñ,Ô,ˆØ�
Š
�x¨ˆ
Ñ,Ô,Ð,Ý! #™œˆˆu‰Ø�#‰:�	 &Ñ)Ô)Ñ)Ð)r_   Fc                 ó¾  ‡— t          t          t          | ¦  «        j        ¦  «        ¦  «        Š‰                     d¦  «        dk    rC‰                     t          t          ‰                     dd¦  «        ¦  «        ¦  «        ¦  «         t          |                     d¦  «        ¦  «        }|                     |||                     d¦  «        p|                     ¦   «         ¬¦  «         dD ]!}|                     d	|z   ¦  «        }	|	r|	||<   Œ"‰                     dd¦  «        }
t          ˆfd
„dD ¦   «         d¦  «        }|rD|                     d¦  «        dk    s|r|
dk    r#|                     d‰|dz            |¬¦  «         �n‡|
 
                    d¦  «        rb‰                     d¦  «        s|                     d¦  «        r8|                     d„ ‰                     ¦   «         D ¦   «         ¦  «         d|d<   �n‰                     d¦  «        r^‰                     d¦  «        dv rG|                     d‰d         ‰                     d¦  «        dk    s‰d         dk    rdnd¬¦  «         �n�|                     d¦  «        �s‡‰                     d¦  «        p>‰                     d¦  «        p)‰                     d¦  «        p‰                     d ¦  «        }|�r0t          |¦  «                             ¦   «         �r|r|
d!v �rd"d#lm} |                     |¦  «        }|                     |‰                     d$¦  «        pX‰                     d¦  «        pC‰                     d%¦  «        rd&n,‰                     d¦  «        d'k    s|
d(k    s
d)|
v s|d)k    rdnd*¬+¦  «         |                     ‰                     d,¦  «        p‰                     d-d¦  «        ‰                     d.¦  «        p‰                     d%d¦  «        ¬/¦  «         ‰                     d0¦  «        r‰d0         |d<   ‰                     d1¦  «        r|                     ‰d1         d¬2¦  «         |
d3k    r[d"d4lm} |                     ¦   «         }|r?|                     d5t          |d6         ¦  «        ‰                     d,d¦  «        ¬7¦  «         |                     d¦  «        s9|rd8n1|                     d9¦  «        d:k    r|  
                    d;¦  «        sd<nd|d<   |
 
                    d¦  «        r|d         dk    rd=|d><   |                     d¦  «        d?v rd|d<   |                     d,¦  «        d@k    s‰                     d,¦  «        d@k    rd8|d<   |                     d¦  «        dk    rft          |                     d,d¦  «        ¦  «                             dA¦  «                             ¦   «         r|                     d.¦  «        dBvrd&nd5|d<   t+          | ||¦  «        } |                     | ¦  «         |d         dk    r&t+          |                     dC¦  «        p| ||¦  «        n| }||rd=ndc|dC<   |d8<   |                     dD¦  «        rSd"d#lm} |                     dD|r!|d         dk    rdE                     |¦  «        n|                     ||¦  «        ¦  «         |d         dk    r£dF„ |                     dG¦  «                             dH¦  «        D ¦   «         }dIdJgdK„ |D ¦   «         z   D ]_}|                     |¦  «        }| 
                    dL¦  «        r3|                     |dLt+          |dMdN…         ||¦  «        z   dOz   ¦  «         Œ`t7          |¦  «        }|                     d|¦  «         |                     dP|¦  «         |                     t;          |dQ¬R¦  «        dQ¦  «         |dSurmd"dTlm} |                     |||||¦  «         |pi                      ¦   «         D ]7\  }\  }}}|                     |||||dU                     |¦  «        |¦  «         Œ8| ||fS )Va9  Tag every item at the output boundary, including legacy providers and descendant folders.

    `hero`: the widget's hero button configuration (None: its defaults); False for a listing that has no hero.
    `lent`: the layouts of the section's rows that borrow this row's titles for their hero (hero_buttons.lent).r§   rë   rì   r	   úmilionar.ctxdatazmilionar.ctx_title©rÎ   rq   Útitle©rÜ   ÚtmdbÚsÚeÚ
channel_idÚchannel_kindú	milionar.c              3   óL   •K  — | ]}‰                      |d z   ¦  «        ¯|V — ŒdS )Ú_idNrŸ   )ro   ÚroleÚqs     €r]   rr   zattach.<locals>.<genexpr>Ã   s9   øè è € Ð[Ð[˜DÀqÇuÂuÈTÐTYÉ\ÑGZÔGZÐ[�4Ð[Ð[Ð[Ð[Ð[Ð[r_   ©ÚactorrL   ÚwriterNrÜ   ÚpersonÚskin_detail_actorr  )rÜ   Úidr  rg   Úkindc                 ó"   — i | ]\  }}|d v ¯	||“ŒS ))
r  r
  Únamer4   rq   ÚidsÚparent_playlistÚownerr3   Úalbum_idrm   ©ro   ÚkÚvs      r]   r¨   zattach.<locals>.<dictcomp>Ç   sD   € ð  Yð  Yð  Y™d˜a °1ð  9Xð  4Xð  4X�Q˜ð  4Xð  4Xð  4Xr_   Úvinylrþ   )Úchannel_playÚmy_tv_dialogÚmy_cinema_dialogr   Úcinemar  Útv©rÜ   r
  r  rû   Útmdb_idÚmovie_idÚ	series_id)ÚmlistÚshow_wcs_detailsÚctx_nextr   ©ÚclicksÚ
media_typeÚepisode_numberÚepisodeÚseasonsr!  ÚseriesÚmovie)rû   rÜ   rü   Úseason_numberrý   ©rü   rý   Úmytv_channel_idÚmycinema_channel_id)rþ   rÿ   Úskin_detail_season©r   r   r
  )rÜ   rû   rü   r   Ú
IsPlayableÚtrueú	plugin://ÚfileÚ1Úmusic©r(  ÚtvshowÚallú-©Nr	   rñ   zmilionar.execúActivateWindow(Music,{},return)c                 ó   — g | ]}|¯|‘ŒS rm   rm   ©ro   rp   s     r]   r™   zattach.<locals>.<listcomp>ñ   s   € ÐVÐVÐV�qÐTUÐV�ÐVÐVÐVr_   zmilionar.hero.directsr¾   zmilionar.hero.playzmilionar.hero.detailc                 ó   — g | ]}d |z   ‘ŒS )zmilionar.hero.do.rm   r=  s     r]   r™   zattach.<locals>.<listcomp>ò   s    € ÐEmÐEmÐEmÐbcÐFYÐ\]ÑF]ÐEmÐEmÐEmr_   ú
RunPlugin(é
   éÿÿÿÿú)zmilionar.ctxT©ÚvisibleF©Úhero_buttonszs{}.) r°   r   r   rô   r    rð   ÚunpackÚgetPropertyÚgetLabelr   rz   Úitemsr´   ÚisdigitÚwcs.library2r#  Úkind_ofr{   r   Ú_stateÚlstriprõ   ÚsetPathÚsetPropertyrÔ   Úexec_forÚsplitÚpackÚaddContextMenuItemsÚentryrF  Úcompose)rñ   Úitemr   rã   rq   ÚheroÚlentÚdataÚkeyÚvaluer§   r  rû   r#  Úrow_kindr   ÚstateÚcommand_pathÚreadyr  ÚcommandÚencodedrF  rÐ   Úotherr£   r  r  s                              @r]   Úattachre  ´   s$	  ø€ õ
 	�Y•x ‘~”~Ô+Ñ,Ô,Ñ-Ô-€AØ‡u‚uˆX�„˜*Ò$Ð$Ø	�Š••i §¢ e¨RÑ 0Ô 0Ñ1Ô1Ñ2Ô2Ñ3Ô3Ð3Ý�$×"Ò"Ð#5Ñ6Ô6Ñ7Ô7€DØ‡K‚K�H #¨T×-=Ò-=Ð>RÑ-SÔ-SÐ-fÐW[×WdÒWdÑWfÔWf€KÑgÔgÐgØGð ð ˆØ× Ò  ¨sÑ!2Ñ3Ô3ˆØð 	ØˆD�‰IøØ�UŠU�8˜RÑ Ô €FÝÐ[Ð[Ð[Ð[Ð$CÐ[Ñ[Ô[Ð]aÑbÔb€FØð q�4—8’8˜FÑ#Ô# xÒ/Ð/°vÐ/ÀÐK^ÒA^ÐA^Ø�Š˜ a¨°©Ô&7¸fˆÑEÔEÐEÑEØ	×	Ò	˜8Ñ	$Ô	$ð q¨!¯%ª%°©-¬-ð q¸4¿8º8ÀFÑ;KÔ;Kð qØ�Šð  Yð  Y a§g¢g¡i¤ið  Yñ  Yô  Yñ  	Zô  	Zð  	ZØˆˆV‰‰Ø	
�Šˆ|Ñ	Ô	ð 
q §¢ x¡¤Ð4hÐ!hÐ!hØ�Š˜ q¨¤ÈÏÊÈvÉÌÐZbÒIbÐIbÐfgÐhpÔfqð  vHò  gHð  gH¸X¸Xð  NRˆñ  	Sô  	Sð  	Sñ  	SØ�XŠX�fÑÔñ qØ�uŠu�V‰}Œ}Ð[ §¢ iÑ 0Ô 0Ð[°A·E²E¸*Ñ4EÔ4EÐ[ÈÏÊÈ{ÑI[ÔI[ˆØñ 	q•C˜‘I”I×%Ò%Ñ'Ô'ñ 	q°ð 	q¸6ÐEnÐ;nÑ;nØ+Ð+Ð+Ð+Ð+Ð+Ø—~’~ cÑ*Ô*ˆHØ�KŠK˜T¨¯ª¨lÑ(;Ô(;ð )j¸q¿uºuÀV¹}¼}ð )jØ&'§e¢eÐ,<Ñ&=Ô&=ð i˜˜È1Ï5Ê5ÐQWÉ=Ì=Ð\eÒKeÐKeØ :Ò-Ð-°¸VÐ1CÐ1CÀxÐS[ÒG[ÐG[ð DHÀ4Øahð ñ kô kð kð �KŠK˜!Ÿ%š% ™*œ*ÐB¨¯ª¨o¸rÑ(BÔ(BÀaÇeÂeÈCÁjÄjÐFoÐTU×TYÒTYÐZjÐlnÑToÔToˆKÑpÔpÐpØ‡u‚uÐÑÔð 2ØÐ0Ô1ˆˆ\ÑØ‡u‚uÐ"Ñ#Ô#ð PØ�Š˜qÐ!6Ô7ÀhˆÑOÔOÐOØÐ%Ò%Ð%Ø#Ð#Ð#Ð#Ð#Ð#Ø—’‘”ˆØð 	PØ�KŠK˜X­C°°d´Ñ,<Ô,<ÀÇÂÀcÈ2ÁÄˆKÑOÔOÐOØ�8Š8�FÑÔð HØ$*ð G˜˜¸$×:JÒ:JÈ<Ñ:XÔ:XÐ\bÒ:bÐ:bØ ŸOšO¨KÑ8Ô8ð ;c°°Ø>Fð 	ˆV‰à×Ò˜Ñ"Ô"ð  t¨F¤|°wÒ'>Ð'>ØˆˆW‰Ø‡x‚x�ÑÔÐ/Ð/Ð/ØˆˆV‰Ø‡x‚x��}„}˜ÒÐ §¢ s¡¤¨uÒ!4Ð!4ØˆˆV‰Ø‡x‚x�ÑÔ˜4ÒÐ¥C¨¯ª°°bÑ(9Ô(9Ñ$:Ô$:×$AÒ$AÀ#Ñ$FÔ$F×$NÒ$NÑ$PÔ$PÐØ$(§H¢H¨S¡M¤M¸Ð$CÐ$C�y�yÈˆˆV‰Ý�t˜X sÑ+Ô+€DØ‡L‚L�ÑÔÐØKOÐPVÌ<Ð[bÒKbÐKb•;˜tŸxšx¨Ñ/Ô/Ð7°4¸À3ÑGÔGÐGÐhl€LØ#/¸Ð1F°°ÀBÐ €Dˆ�L�$�x‘.Ø×Ò˜Ñ(Ô(ð VØ'Ð'Ð'Ð'Ð'Ð'Ø×Ò˜Ðekð ,TÐptÐu{Ôp|ð  AHò  qHð  qHÐ+L×+SÒ+SÐT`Ñ+aÔ+aÐ+aØ.4¯oªo¸lÈFÑ.SÔ.Sñ	Vô 	Vð 	VàˆF„|�wÒÐØVÐV˜D×,Ò,Ð-DÑEÔE×KÒKÈCÑPÔPÐVÑVÔVˆØ)Ð+AÐBÐEmÐEmÐglÐEmÑEmÔEmÑmð 	hð 	hˆDØ×&Ò& tÑ,Ô,ˆGØ×!Ò! ,Ñ/Ô/ð hØ× Ò   |µkÀ'È"ÈRÈ%Ä.ÐRZÐ\_Ñ6`Ô6`Ñ'`ÐcfÑ'fÑgÔgÐgøÝ�4‰jŒj€GØ×ÒÐ'¨Ñ1Ô1Ð1Ø×Ò�^ XÑ.Ô.Ð.Ø×Ò�U 4°Ð6Ñ6Ô6¸Ñ=Ô=Ð=Ø�5ÐÐØ)Ð)Ð)Ð)Ð)Ð)Ø×Ò˜T 4¨¨d°GÑ<Ô<Ð<Ø-1¨Z°R×,>Ò,>Ñ,@Ô,@ð 	að 	aÑ(ˆDÑ(�5˜& %Ø× Ò   t¨U°F¸GÀVÇ]Â]ÐSWÑEXÔEXÐZ_Ñ`Ô`Ð`Ð`Ø��vÐÐr_   c                 ó   — ddl m} |                      d¦  «        |                      d¦  «        }}||vs|r|                      d¦  «        rdS ddlm} |                     ||¦  «        |                     ||¦  «        fS )zm(hero buttons of the Home slot a listing fills, layouts lent to it); (False, None): no row of a hero section.r   ©rÞ   rÏ   rÐ   rÎ   ©FNrE  )Úwcs.skin.hero_contractrÞ   r    r{   rF  ÚstoredrZ  )rÕ   rÞ   rÏ   rÐ   rF  s        r]   Úhero_configrk    s˜   € à/Ð/Ð/Ð/Ð/Ð/Ø—
’
˜5Ñ!Ô! 6§:¢:¨fÑ#5Ô#5ˆ€CØ
�(ÐÐ $Ð¨&¯*ª*°UÑ*;Ô*;ÐØˆ{Ø%Ð%Ð%Ð%Ð%Ð%Ø×Ò˜s DÑ)Ô)¨<×+<Ò+<¸SÀ$Ñ+GÔ+GÐGÐGr_   c                 óh   — | r/t          t          d| v r| nt          | ¦  «        ¦  «        ¦  «        ni S )Nú=)r°   r   r   )rË   s    r]   rG  rG    s4   € àCFÐN�4•	 ¨  ˜#˜#µ¸±´Ñ>Ô>Ñ?Ô?Ð?ÈBÐNr_   c                 óÂ  ‡
‡‡‡‡‡— t          | ¦  «        Šddl}|                      d¦  «        p|                      dd¦  «        Š|                      d¦  «        dk    rIddlm} |                     ¦   «         pi }|                     d	d¦  «        |                     dd¦  «        cŠŠ‰‰fat          | ¦  «        \  Š
Št          t          |d
|j
        |j        f¦  «        ¦  «        }t          d¦  «        D ]¬\  }}t          ||         dd¦  «        t          k    r‡||         j        rzt          t!          ||         j        j        ||         j        ¦  «        ¦  «        }||vrn=||         j        ||<   t          ||         dd¦  «        t          k    r||         j        °zŒ­t)          |¦  «        |_        |\  ŠŠdˆ
ˆˆˆˆfd„	}dˆ
ˆˆˆˆfd„	}	||	c|_
        |_        dS )zVOnly this plugin invocation is decorated; unrelated Kodi/addon listings are untouched.r   Nrê   rq   r	   r§   Úskin_detail_rowr/  rÎ   Ú_milionar_directory_originals)ÚsingleÚmultipleÚ
__module__Fc           	      óT   •— t          |||‰	‰‰‰
¦  «        \  }}} ‰| ||||¦  «        S r­   ©re  )ÚhandleÚurlÚlistitemÚisFolderÚ
totalItemsrñ   rX  r   rY  rã   rZ  rq   rq  s           €€€€€r]   Úadd_onez(install_listing_context.<locals>.add_one*  s<   ø€ Ý# C¨°8¸XÀsÈDÐRVÑWÔWÑˆˆd�FØˆv�f˜d D¨&°*Ñ=Ô=Ð=r_   c                 ó<   •—  ‰| ˆˆˆˆfd„|D ¦   «         |¦  «        S )Nc                 óB   •— g | ]\  }}}t          |||‰‰‰‰¦  «        ‘ŒS rm   ru  )ro   ÚpÚiÚfrY  rã   rZ  rq   s       €€€€r]   r™   z=install_listing_context.<locals>.add_many.<locals>.<listcomp>/  s7   ø€ Ð aÐ aÐ aÑPWÐPQÐSTÐVW¥¨¨1¨a°¸3ÀÀdÑ!KÔ!KÐ aÐ aÐ ar_   rm   )rv  rJ  rz  rY  rã   rZ  rr  rq   s      €€€€€r]   Úadd_manyz)install_listing_context.<locals>.add_many.  s7   ø€ Øˆx˜Ð aÐ aÐ aÐ aÐ aÐ aÐ aÐ[`Ð aÑ aÔ aÐcmÑnÔnÐnr_   )Fr   )r   )rÖ   Ú
xbmcpluginr    r{   r   rN  Ú_listing_contextrk  r   ÚgetattrÚaddDirectoryItemÚaddDirectoryItemsÚ	enumerateÚ__name__Ú__closure__r°   ÚzipÚ__code__Úco_freevarsÚcell_contentsr~   rp  )rÕ   r‚  r   r_  Ú	originalsr  r  Úcellsr{  r�  rY  rã   rZ  rr  rq   rq  s             @@@@@@r]   Úinstall_listing_contextr�    sP  øøøøøø€ õ �f‰~Œ~€HØÐÐÐØ
�*Š*�XÑ
Ô
Ð
7 &§*¢*¨U°BÑ"7Ô"7€CØ‡z‚z�(ÑÔÐ0Ò0Ð0Ø#Ð#Ð#Ð#Ð#Ð#Ø—’‘”Ð% 2ˆØŸ	š	 %¨Ñ,Ô,¨e¯iªi¸À"Ñ.EÔ.Eˆˆ�#Ø �}ÐÝ˜VÑ$Ô$�J€Dˆ$å•W˜ZÐ)HØ'Ô8¸*Ô:VÐWñYô Yñ Zô Z€IåÐ3Ñ4Ô4ð 5ð 5‰ˆˆ4å�i ”l L°"Ñ5Ô5½ÒAÐAÀiÐPQÄlÔF^ÐAÝ�˜Y qœ\Ô2Ô>À	È!ÄÔ@XÑYÔYÑZÔZˆEØ˜5Ð Ð ØØ  œ;Ô4ˆI�a‰Lõ	 �i ”l L°"Ñ5Ô5½ÒAÐAÀiÐPQÄlÔF^ÐAøõ
 05°YÑ/?Ô/?€JÔ,Ø Ñ€FˆHð>ð >ð >ð >ð >ð >ð >ð >ð >ð >ðoð oð oð oð oð oð oð oð oð oð AHÈÐ=€JÔ Ô!=Ð!=Ð!=r_   c                 ó˜   — t           dz   t          | ¦  «        z   }|rd                     |rdnd|¦  «        nd                     |¦  «        S )Nré   zActivateWindow({},{},return)ÚMusicÚVideoszRunPlugin({}))rí   r   rÔ   )rÕ   r   r5  rñ   s       r]   Úbuiltinr”  4  se   € Ý�#‰:�	 &Ñ)Ô)Ñ)€DØZ`ð  CÐ)×0Ò0¸EÐ1O°°ÀxÐQUÑVÔVÐVÐfu×f|Òf|ð  ~Bñ  gCô  gCð  Cr_   c                 óv   — t          t          d„ |                      ¦   «         D ¦   «         ¦  «        d¬¦  «        S )Nc                 ó   — i | ]
\  }}|®||“ŒS r­   rm   r  s      r]   r¨   zpack.<locals>.<dictcomp>:  s   € ÐKÐKÐK¡T Q¨¸Q¸]˜A˜q¸]¸]¸]r_   r	   rÁ   )r   r   rJ  )r[  s    r]   rT  rT  9  s5   € Ý•ÐKÐK¨T¯ZªZ©\¬\ÐKÑKÔKÑLÔLÐSUÐVÑVÔVÐVr_   c                 óŽ   — |rt          j        ¦   «         rg S t          d¦  «        t          dt	          | ¦  «        dœ¦  «        fgS )zLLegacy descriptor transport; display its fallback entry only in other skins.iß  Úctx_open)r§   r[  )r   Úactiver^   r”  rT  )r[  rD  s     r]   rV  rV  =  sF   € àð •6”=‘?”?ð Øˆ	Ý�%‰[Œ[�'¨ZÅÀdÁÄÐ"LÐ"LÑMÔMÐNÐOÐOr_   c           	      ó&  — t          |                      d¦  «        ¦  «        }t          |                     dd¦  «        ¦  «        pi }ddddddd	œ}|D �]`\  }}t	          j        d
d|¦  «        }||                     d¦  «        dz   |                     d¦  «        …                              d¦  «        d         }t          t          t          |¦  «        j        ¦  «        ¦  «        }|                     d¦  «        dk    rw|                     d¦  «        rbt          |d         ¦  «        }	|                     t          |	                     dd¦  «        ¦  «        pi ¦  «         |                     |	¦  «         |                     |                     d¦  «        ¦  «        }
|
r||g||
<   |
dv rd|d<   �Œb|rt          |¦  «        |d<   |                      dt#          |¦  «        ¦  «         |                      t'          |d¬¦  «        d¦  «         dS )zRKeep provider-specific actions by stable id; titles use the shared action builder.r÷   Úextrasr	   r<   r=   rC   rB   r   )Úinfor<   Údownload_fileÚopen_csfd_urlÚremove_recently_played_itemÚplay_next_episode_with_metadataz\[/?(?:COLOR(?: [^\]]+)?|B|I)\]ú(rÚ   rB  z,returnr   r§   r˜  r[  )r<   r=   r3  rÜ   TrC  N)rG  rH  rÌ   r    ÚreÚsubÚfindÚrfindrS  r°   r   r   rô   rð   ÚpoprÅ   rQ  rT  rU  rV  )rX  Úentriesr[  r›  r  rù   rb  rw  ÚargsÚincomingr\  s              r]   Ú
add_legacyrª  D  sÿ  € å�$×"Ò"Ð#5Ñ6Ô6Ñ7Ô7€DÝ�D—H’H˜X rÑ*Ô*Ñ+Ô+Ð1¨r€FØ¨[È:ÐhmØ*3ÐX^ð`ð `€Cà!ð &ñ &‰ˆˆwÝ”Ð9¸2¸uÑEÔEˆØ�g—l’l 3Ñ'Ô'¨!Ñ+¨G¯MªM¸#Ñ,>Ô,>Ð>Ô?×EÒEÀiÑPÔPÐQRÔSˆÝ•I�h s™mœmÔ1Ñ2Ô2Ñ3Ô3ˆØ�8Š8�HÑÔ Ò+Ð+°·²¸Ñ0@Ô0@Ð+Ý˜d 6œlÑ+Ô+ˆHØ�MŠM�& §¢¨h¸Ñ!;Ô!;Ñ<Ô<ÐBÀÑCÔCÐCØ�KŠK˜Ñ!Ô!Ð!Ø�gŠg�d—h’h˜xÑ(Ô(Ñ)Ô)ˆØð 	&Ø  'Ð*ˆF�3‰KØÐ/Ð/Ð/Ø%��V‘ùØð (Ý ™œˆˆX‰Ø×ÒÐ'­¨d©¬Ñ4Ô4Ð4Ø×Ò�U 4°Ð6Ñ6Ô6¸Ñ=Ô=Ð=Ð=Ð=r_   c           
      ó¸  ‡ — ddl m}m} ‰ d         t          ‰ d         ¦  «        }}ˆ fd„dD ¦   «         \  }}i }|                     ¦   «         }|                     ||||¦  «        }	|dv rU|	rS|	d         |	d         c|d	<   |d
<   t          |	¦  «        dk    r|	d         nt          d¦  «        |	d         d         f|d<   n|	r|	d         |d<   |                     ||||¦  «        }
|
d         |d<   t          |
¦  «        dk    r|
d         |d<   | 	                    ||¦  «        }|\  |d<   |d<   | 
                    ||||‰                      dd¦  «        ¦  «        }|d         |d         |d         c|d<   |d<   |d<   t          |¦  «        dk    r|d         |d<   t          t          d         ¦  «        t          d|dk    rdnd|‰                      dd¦  «        d œ¦  «        f|d<   |d!v r:t          d"¦  «        d#                     |                     |¦  «        ¦  «        f|d$<   |d%k    r=|�;t          d&¦  «        d#                     |                     ||¦  «        ¦  «        f|d'<   |d(v r)d|v r%t          d)¦  «        t          d*|d+d,œ¦  «        f|d-<   d.‰                      d/d¦  «        v s‰                      d0¦  «        d1k    rd2„ |                     ¦   «         D ¦   «         }‰                      d3¦  «        rà‰                      d4¦  «        r't          |dv rd5nd6¦  «        ‰ d4         f||dv rd	nd<   nDd7|||‰                      dd¦  «        ‰ d3         d8œ}t          d5¦  «        t          |¦  «        f|d	<   t          d9¦  «        t          ‰                      d:¦  «        d;k    rd<nd=‰ d3         d>œ¦  «        f|d?<   d@D ]}|                     |d ¦  «         Œ|S )ANr   )r#  ÚmenurÜ   rû   c              3   ót   •K  — | ]2}‰                      |¦  «        d vrt          ‰|         ¦  «        ndV — Œ3dS )r:  N)r    Úint)ro   r  r[  s     €r]   rr   z video_actions.<locals>.<genexpr>`  sE   øè è € ÐXÐXÈ˜DŸHšH Q™KœK¨zÐ9Ð9�C��Q”‰LŒLˆL¸tÐXÐXÐXÐXÐXÐXr_   r+  )r)  r&  rA  r
   r   é   rÚ   i‘~  r   r   r   r'   r   r   rù   r	   r   r   r   é   é   r&   rR   Úforyou_rater)  r  )r§   rÜ   rû   rù   )r  r   r&  r   z ActivateWindow(Videos,{},return)r   r&  r   r   )r  r   r   r!  Údialog)r§   rû   Úsrcr   Ú	mupcomingrñ   rü   z-1c                 ó"   — i | ]\  }}|d v¯	||“ŒS ))r
   r   r   r   r   r   rm   r  s      r]   r¨   z!video_actions.<locals>.<dictcomp>}  s)   € Ð~Ð~Ð~™4˜1˜a°QÐ>}Ð5}Ð5}�!�QÐ5}Ð5}Ð5}r_   rþ   r  r   r   Úplay_episode_from_addon)r§   r  r*  r%  Úseries_namer,  r   rÿ   r  r  r  ©r§   rþ   r   )r   r'   r   r   r   )rL  r#  r¬  r®  ÚMenuÚ_play_itemsÚlenr^   Ú_state_itemsÚ_list_itemsÚ_discovery_itemsr    r¼   r”  rÔ   Úseasons_pathÚseason_pathrJ  r¦  )r[  r#  r¬  r  rû   rü   rý   r·   ÚmodelÚplayingÚstatesÚlistedÚ	discoveryr  r§   s   `              r]   Úvideo_actionsrÇ  ]  s¢  ø€ Ø)Ð)Ð)Ð)Ð)Ð)Ð)Ð)Ø�f”�s 4¨¤<Ñ0Ô0ˆ$€DØXÐXÐXÐXÈZÐXÑXÔX�D€A€qØ€Fà�IŠI‰KŒK€EØ×Ò  d¨A¨qÑ1Ô1€GØÐ#Ð#Ð#¨Ð#Ø+2°1¬:°w¸r´{Ð(ˆˆv‰˜˜xÑ(Ý*-¨g©,¬,¸!Ò*;Ð*;˜G AœJ˜JÅ$ÀuÁ+Ä+ÈwÐWXÌzÐZ[Ì}ÐA]ˆˆyÑÐØ	ð $Ø  œˆˆv‰Ø×Ò  d¨A¨qÑ1Ô1€FØ˜qœ	€Fˆ9ÑÝ
ˆ6�{„{�Q‚€Ø"(¨¤)ˆˆÑØ×Ò˜t TÑ*Ô*€FØ(.Ñ%€Fˆ6�N�F˜9Ñ%Ø×&Ò& t¨T°1°a¸¿ºÀ'È2Ñ9NÔ9NÑOÔO€IØ:CÀA¼,È	ÐRSÌÐV_Ð`bÔVcÐ7€Fˆ8Ñ�f˜YÑ'¨°©Ý
ˆ9�~„~˜ÒÐØ(¨œ|ˆˆ|ÑÝ�6 &œ>Ñ*Ô*­G¸}ÐaeÐipÒapÐapÐV]ÐV]ÐvzØ?CÈdÏhÊhÐW^Ð`bÑNcÔNcð5eð 5eñ -fô -fð g€Fˆ6�NàÐ*Ð*Ð*Ý  ™KœKÐ)K×)RÒ)RÐSY×SfÒSfÐgkÑSlÔSlÑ)mÔ)mÐnˆˆxÑØˆyÒÐ˜Q˜]Ý  ™KœKÐ)K×)RÒ)RÐSY×SeÒSeÐfjÐlmÑSnÔSnÑ)oÔ)oÐpˆˆxÑØÐÐÐ F¨fÐ$4Ð$4Ý!% e¡¤­gÀÐUYÐbjÐ6kÐ6kÑ.lÔ.lÐ mˆˆ}ÑØ�d—h’h˜v rÑ*Ô*Ð*Ð*¨d¯hªh°s©m¬m¸tÒ.CÐ.CØ~Ð~ 6§<¢<¡>¤>Ð~Ñ~Ô~ˆØ‡x‚x�ÑÔð %à�8Š8�NÑ#Ô#ð 	7ÝJNÐX\Ð`tÐXtÐXtÈuÈuÐzñ  KAô  KAð  CGð  HVô  CWð  JXˆF˜TÐ%9Ð9Ð9�6�6¸vÑFÐFð 5ÀÐXYÐmnØ $§¢¨°"Ñ 5Ô 5È$È|ÔJ\ð^ð ^ˆAå" 5™kœk­7°1©:¬:Ð6ˆF�6‰NÝ"& u¡+¤+­wÐX\×X`ÒX`ÐaoÑXpÔXpÐt|ÒX|ÐX|ÐBTÐBTð  CQØCGÈÔCUð8Wð 8Wñ 0Xô 0Xð "Yˆˆ~ÑàVð 	%ð 	%ˆFØ�JŠJ�v˜tÑ$Ô$Ð$Ð$Ø€Mr_   c                 ót  ‡— ddl m} |                      dd¦  «        |                      d¦  «        c}Š|dvs‰si S |                      dd¦  «        }t          d	¦  «        t	          d
d|z   dz   |dz   ‰|dz   |i¦  «        ft          d¦  «        t	          d
d|z   dz   |dz   ‰|dz   |id¬¦  «        ft          d¦  «        t	          d|‰||                      dd¦  «        |                      dd¦  «        dœ¦  «        fdœ} t          |d|z   dz   ¦  «        t          j        d¦  «        ¦  «        }t          ˆfd„t          |¦  «        D ¦   «         d ¦  «        }|€4t          d¦  «        t	          d
d|z   d z   |dz   ‰|dz   |i¦  «        f|d!<   n't          d"¦  «        t	          d#|z   |d$œ¦  «        f|d%<   |S )&Nr   )Ú	user_datar  r  r
  r  rù   r	   r   r§   Údisplay_Ú_dialogr  Ú_namerº   Útmdb_search_Ú_moviesT©r   r   Úmilionar_gamerJ   Úposter)r§   r$  r  rù   rJ   rÑ  )r   r$   r   Úload_favorite_rü   rX   c              3   óˆ   •K  — | ]<\  }}t          |                     d ¦  «        ¦  «        t          ‰¦  «        k    ¯8|V — Œ=dS ©r
  N)r´   r    )ro   r  r  rã   s      €r]   rr   z!person_actions.<locals>.<genexpr>�  sO   øè è € ÐdÐd™	˜˜6½SÀÇÂÈDÑAQÔAQÑ=RÔ=RÕVYÐZbÑVcÔVcÒ=cÐ=c�!Ð=cÐ=cÐ=cÐ=cÐdÐdr_   r-   Ú	tmdb_add_Ú_to_favoritesr,   rA   Útmdb_remove_favorite_)r§   Úidxr@   )
ÚwcsrÉ  r    r^   r”  r„  rY   rZ   r   r‡  )r[  rÉ  r  r  r·   Ú	favoritesÚindexrã   s          @r]   Úperson_actionsrÜ  Ž  s?  ø€ ØÐÐÐÐÐØ—X’X˜f gÑ.Ô.°·²¸±´€N€Dˆ(ØÐ2Ð2Ð2¸(Ð2Øˆ	Ø�8Š8�G˜RÑ Ô €Då˜‘;”;¥¨°:ÀÑ3DÀyÑ3PÐRVÐY^ÑR^Ð`hØ(,¨w©¸ð)>ñ !?ô !?ð @å�e‘”�g x°À$Ñ1FÈÑ1RÐTXÐ[`ÑT`ÐbjØ&*¨W¡n°dð'<ØDHðJñ Jô Jð Kå�e‘”�g°ÐPTÐaiØ/3¸T¿XºXÀfÈbÑ=QÔ=QÐ]a×]eÒ]eÐfnÐprÑ]sÔ]sð'uð 'uñ vô vð wðð €Fð B•˜	Ð#3°dÑ#:¸SÑ#@ÑAÔAÅ)Ä/ÐRiÑBjÔBjÑkÔk€IÝÐdÐdÐdÐd¥Y¨yÑ%9Ô%9ÐdÑdÔdÐfjÑkÔk€EØ€}Ý" 5™kœk­7°H¸kÈDÑ>PÐSbÑ>bØ37¸%±<ÀÈ4ÐRYÉ>Ð[_ð4añ ,bô ,bð cˆˆzÑÐõ &*¨%¡[¤[µ'ÐE\Ð_cÑEcÐlqÐ:rÐ:rÑ2sÔ2sÐ$tˆÐ Ñ!Ø€Mr_   c                 ó¾  — ddl m} | d         }i }d|dk    rdndz   D ]X}d|| d	         |d
œ}|dk    r|dk    rdnd| d	         dœ}|                     |dk    rdnd|¦  «        t          |¦  «        f||<   ŒYdD ]c}t	          t
          |         ¦  «        t          d|| d	         ||                      dd¦  «        |                      dd¦  «        dœ¦  «        f||<   Œd|S )Nr   r"  r  )r    r$   r#   r  rl   rm   r  r
  )r§   r  rþ   Úmoder$   r  r  r  r¹  rj   ri   )r7   r5   r8   r6   Úskin_channel_editrÎ   r	   rq   )r§   r  r
  ÚoprÎ   rê   )rL  r#  r»   r”  r^   r¼   r    )r[  r#  r  r·   r§   rÕ   s         r]   Úchannel_actionsrá  ¦  sc  € Ø#Ð#Ð#Ð#Ð#Ð#Ø�Œ<€DØ€FØ,ÈTÐUYÊ\È\Ð0IÐ0IÐ_aÑbð Mð MˆØ*°DÈÈTÌ
Ð\bÐcÐcˆØ�VÒÐØ6:¸hÒ6FÐ6FÐ 2Ð 2ÈNÐjnÐosÔjtÐuÐuˆFØ Ÿ,š,ÀTÈXÒEUÐEUÐ'AÐ'AÐ[qÐsyÑzÔzõ  }Dð  EKñ  }Lô  }Lð  Mˆˆv‰ˆØVð tð tˆÝ�v fœ~Ñ.Ô.µÐCVÐ`dÐlpÐquÔlvð  EØ>B¿hºhÀuÈbÑ>QÔ>QÐ]a×]eÒ]eÐfkÐmoÑ]pÔ]pð9rð 9rñ 1sô 1sð tˆˆv‰ˆà€Mr_   c           	      ó  ‡— |                       d¦  «        r"t          |                       d¦  «        ¦  «        nd\  }}}|r|d         n|                       dd¦  «        }|                       d¦  «        }|                     d¦  «        rddlm} |                     |¦  «        }�nØ|d	k    rdd
lm}  || ¦  «        }�n¿|dk    rt          | ¦  «        }�n¨|                       d¦  «        rd|dv r`t          | ¦  «        }|dk    rI|                       d¦  «        r4t          d¦  «        t          dd| d         | d         dœd¬¦  «        f|d<   �n/|dk    rt          | ¦  «        }�nddlm}	 |t          v rdn	|dk    rdnd}
|                       d¦  «        r¼|dk    r6| d                              d¦  «        sd                     | d         ¦  «        n�|                       d¦  «        d k    r4|                       d!¦  «        d k    rd"                     | d         ¦  «        n4|	                     | d         |                       d!¦  «        d k    ¦  «        ndŠ‰r&|
t          |
dk    rdnt"          |
         ¦  «        ‰fini }|                     d#¦  «        r6dd$lm} |                     ¦   «         | 
                    ¦   «         f||j        <   |                     t/          |                       d%d¦  «        ¦  «        pi ¦  «         t1          |                     ¦   «         ¦  «        D ]å\  }\  }Š‰                     d&¦  «        rTd'‰v rP‰                     d(d)¦  «        \  }}}||d(z   t7          ||                       d¦  «        |¦  «        z   d(z   |z   f||<   Œq‰                     d*¦  «        r_t9          ˆfd+„d,D ¦   «         ¦  «        rD|d*t7          ‰t;          d*¦  «        d-…         |                       d¦  «        |¦  «        z   d.z   f||<   Œæ|||||fS )/z^(section, slot, widget, row, {action: (label, builtin)}) of an item: what it can do right now.rÎ   rÝ   rÜ   rq   r	   ra   r   rb   r  )Úactionsr   rû   ©r)  r  r   r&  r   rñ   rº   r  Úepisodesrü   )r§   r  rû   rü   TrÏ  r$   r  r"  r   r3  r
   r2  zPlayMedia({})r5  r4  r   r;  ru   )rÞ  r›  zActivateWindow(z
,plugin://r¾   r±  r?  c              3   ó&   •K  — | ]}d |z   ‰v V — ŒdS )zaction=Nrm   )ro   rp   rb  s     €r]   rr   zresolve.<locals>.<genexpr>Ø  sE   øè è € ð 6jð 6jÐST°iÀ!±mÀwÐ6Nð 6jð 6jð 6jð 6jð 6jð 6jr_   )r  r  r   Údisplay_similar_Údisplay_actor_dialogÚdisplay_director_dialogÚdisplay_writer_dialogrA  rB  )r    ræ   rz   r{   rc   rã  Úwcs.vinyl.contextrá  rÇ  r^   r”  rÜ  rL  r#  r�   rÔ   rR  r¼   Ú
wcs.foryourÞ  r»   ÚACTIONrð   rÌ   r   rJ  rS  rõ   r±   r¼  )r[  rÏ   rÐ   Úwidgetrq   r  rc   Ú	availablerã  r#  r§   rÞ  r\  r»   Úprefixrñ   Úsuffixrb  s                    @r]   Úresolverò  µ  sÀ  ø€ à8<¿ºÀ¹¼ÐZ� D§H¢H¨U¡O¤OÑ4Ô4Ð4È]Ñ€CˆˆvØ"Ð
;ˆ&�Œ.ˆ.¨¯ª°¸Ñ(;Ô(;€CØ�8Š8�FÑÔ€DØ
‡~‚~�gÑÔð pØ'Ð'Ð'Ð'Ð'Ð'Ø×&Ò& sÑ+Ô+ˆ	‰	Ø	�ŠˆØ-Ð-Ð-Ð-Ð-Ð-Ø�G˜D‘M”Mˆ	‰	Ø	�Ò	Ð	Ý# DÑ)Ô)ˆ	‰	Ø	�Š�&Ñ	Ô	ð p˜dÐ&JÐJÐJÝ! $Ñ'Ô'ˆ	Ø�8ÒÐ §¢¨Ñ 0Ô 0ÐÝ!% e¡¤­gÀÐR\ÐfjÐkqÔfrÐy}ð  Bô  zCð  7Dð  7Dð  MQð  /Rñ  /Rô  /Rð  !SˆI�fÑùØ	�Ò	Ð	Ý" 4Ñ(Ô(ˆ	‰	à'Ð'Ð'Ð'Ð'Ð'Ø¥)Ð+Ð+��¸4À6º>¸>°°Èvˆð VZ×U]ÒU]Ð^dÑUeÔUeðn¸4À6º>¸>ÐRVÐW]ÔR^×RiÒRiÐjuÑRvÔRv¸>�?×)Ò)¨$¨v¬,Ñ7Ô7Ð7ØMQÏXÊXÐV]ÑM^ÔM^ÐbeÒMeÐMeÐjn×jrÒjrÐs{Ñj|Ôj|ð  ADò  kDð  kDÐ4×;Ò;¸DÀ¼LÑIÔIÐIØŸš¨¨V¬°d·h²h¸xÑ6HÔ6HÈCÒ6OÑPÔPÐPÐkmð 	ð ahÐo�V�d¨F°fÒ,<Ð,< 5 5Å&ÈÄ.ÑQÔQÐSZÐ[Ð\Ð\Ðmoˆ	Ø
‡~‚~�eÑÔð @Ø#Ð#Ð#Ð#Ð#Ð#Ø"&§*¢*¡,¤,°·²±´Ð!?ˆ	�$”+ÑØ×Ò•V˜DŸHšH X¨rÑ2Ô2Ñ3Ô3Ð9°rÑ:Ô:Ð:å!% i§o¢oÑ&7Ô&7Ñ!8Ô!8ð |ð |ÑˆÑˆe�WØ×ÒÐ/Ñ0Ô0ð 	|°\ÀWÐ5LÐ5LØ#*§=¢=°°aÑ#8Ô#8Ñ ˆF�D˜&Ø# V¨c¡\µKÀÀdÇhÂhÈuÁoÄoÐWZÑ4[Ô4[Ñ%[Ð^aÑ%aÐdjÑ%jÐkˆI�c‰NˆNØ×Ò Ñ-Ô-ð 	|µ#ð 6jð 6jð 6jð 6jð ið6jñ 6jô 6jñ 3jô 3jð 	|à# \µKÀÍÈLÑHYÔHYÐZ\ÐH\Ô@]Ð_c×_gÒ_gÐhmÑ_nÔ_nÐpsÑ4tÔ4tÑ%tÐwzÑ%zÐ{ˆI�c‰NøØ��f˜c 9Ð,Ð,r_   c           	      óf  ‡‡‡— t          | ¦  «        \  }}}ŠŠddlm} |                     | ¦  «        }|                      d¦  «        }|o]|dv r‰                     d¦  «         pC|dv ot          ˆfd„‰D ¦   «         ¦  «        p$|dk    o‰d	v p|d
k    o‰                     d¦  «        }|r°t          ‰|                     d¦  «        ¦  «        }t          |                      dd¦  «        ¦  «        pi Št          ˆfd„‰D ¦   «         ¦  «        r| 	                    |¦  «        nd }	|	r3dD ]0}
||
          
                    ˆˆfd„|	|
         D ¦   «         ¦  «         Œ1n| 	                    |¦  «        }ˆfd„|d         D ¦   «         }ˆfd„|d         D ¦   «         }|rÍddlm} | 
                    t          d¦  «        t          d|dœ¦  «        ft          d¦  «                             t          |‰         ¦  «        ¦  «        t          d| d         dœ¦  «        fg¦  «         ddlm} ||v r;|                     t          d¦  «        t          dd | d         d!œ¦  «        f¦  «         n_|                      d"¦  «        rJddlm} | d"         |v r:|                     t          d¦  «        t          d| d"         dœ¦  «        f¦  «         |r|	re|                     t          d#¦  «                             t          |j        |         d         ¦  «        ¦  «        t          d|d$œ¦  «        f¦  «         ||fS )%Nr   re   rÜ   rä  rg   )r   r§   c              3   ó:   •K  — | ]}|t          ‰¦  «        v V — Œd S r­   ©r|   rn   s     €r]   rr   zparts.<locals>.<genexpr>å  s/   øè è € ÐAgÐAgÐXYÀ!ÅwÈsÁ|Ä|ÐBSÐAgÐAgÐAgÐAgÐAgÐAgr_   r   rh   r  r¬  r›  r	   c              3   ó:   •K  — | ]}|t          ‰¦  «        vV — Œd S r­   rõ  rn   s     €r]   rr   zparts.<locals>.<genexpr>ì  s0   øè è € Ð>hÐ>hÐYZ¸qÍÐPSÉÌÐ?TÐ>hÐ>hÐ>hÐ>hÐ>hÐ>hr_   r…   c              3   óF   •K  — | ]}|‰v ¯|t          ‰¦  «        v¯|V — Œd S r­   rõ  )ro   rp   Ú	extra_idsrq   s     €€r]   rr   zparts.<locals>.<genexpr>ï  s@   øè è € Ð$pÐ$p¨1ÀqÈIÀ~À~ÐZ[ÕcjÐknÑcoÔcoÐZoÐZo QÐZoÐZoÐZoÐZoÐ$pÐ$pr_   c                 ó(   •— g | ]}|‰v ¯‰|         ‘ŒS rm   rm   ©ro   rp   rï  s     €r]   r™   zparts.<locals>.<listcomp>ò  s"   ø€ Ð
BÐ
BÐ
B˜A°1¸	°>°>ˆ9�QŒ<°>°>°>r_   r†   c                 ó(   •— g | ]}|‰v ¯‰|         ‘ŒS rm   rm   rú  s     €r]   r™   zparts.<locals>.<listcomp>ó  s"   ø€ ÐCÐCÐC˜Q°A¸°N°NˆI�aŒL°N°N°Nr_   r‡   )râ   iu~  Ú
skin_slots)r§   rÏ   iÀ  Úskin_context_editrÎ   )r§   rÎ   rg  i´  Ú	skin_heroÚedit)r§   ÚdorÎ   rÏ   i¿  )r§   Úprofile)rò  r{   rf   r\  r    rz   r±   r¸   rÌ   r£   r¶   Úwcs.skin.slotsrâ   r^   r”  rÔ   ri  rÞ   rµ   ÚPROFILES)r[  rÏ   Ú_slotrî  rf   r  r  Ú	inheritedr£   Úsupplementalr¢   Útopr‡   râ   ÚHERO_SECTIONSrÞ   rï  rø  rq   s                   @@@r]   Úpartsr	  Þ  sÜ  øøø€ Ý)0°©¬Ñ&€Cˆ�˜˜YØ)Ð)Ð)Ð)Ð)Ð)Ø×"Ò" 4Ñ(Ô(€Gà�8Š8�FÑÔ€DØð L˜TÐ%IÐIÐjÐRU×R`ÒR`ÐaiÑRjÔRjÐNjð KØ!Ð%9Ð9Ðg½cÐAgÐAgÐAgÐAgÐ]fÐAgÑAgÔAgÑ>gÔ>gðKà! YÒ.Ðn°3Ð:nÐ3nðKð " Wš_ÐI°·²ÀÑ1IÔ1Ið ð ð 	2Ý˜3 §
¢
¨6Ñ 2Ô 2Ñ3Ô3ˆå˜4Ÿ8š8 H¨bÑ1Ô1Ñ2Ô2Ð8°bˆ	Ý;>Ð>hÐ>hÐ>hÐ>hÐ^gÐ>hÑ>hÔ>hÑ;hÔ;hÐrÐ'×.Ò.¨wÑ7Ô7Ð7ÐnrˆØð 	qØ3ð qð q�Ø�u”×$Ò$Ð$pÐ$pÐ$pÐ$pÐ$p°¸UÔ0CÐ$pÑ$pÔ$pÑpÔpÐpÐpøà!×(Ò(¨Ñ1Ô1ˆØ
BÐ
BÐ
BÐ
B ¨¤Ð
BÑ
BÔ
B€CØCÐCÐCÐC &¨¤.ÐCÑCÔC€DØð ^Ø)Ð)Ð)Ð)Ð)Ð)Ø�Š•d˜5‘k”k¥7°lÈ3Ð+OÐ+OÑ#PÔ#PÐQÝ˜5‘k”k×(Ò(­¨f°S¬kÑ):Ô):Ñ;Ô;ÝÐ)<ÀTÈ%Ä[ÐQÐQÑRÔRðTðUñ 	Vô 	Vð 	Vð 	EÐDÐDÐDÐDÐDØ�-ÐÐØ�KŠK�˜e™œ¥g¸ÈFÐ[_Ð`eÔ[fÐ.gÐ.gÑ&hÔ&hÐiÑjÔjÐjøØ	�Š�%‰Œð ^Ø+Ð+Ð+Ð+Ð+Ð+Ø�Œ;˜(Ð"Ð"Ø�KŠK�˜e™œ¥g¸ÈdÐSXÌkÐ.ZÐ.ZÑ&[Ô&[Ð\Ñ]Ô]Ð]Øð T˜ð TØ�Š•T˜%‘[”[×'Ò'­Ð-=Ô-FÀwÔ-OÐPQÔ-RÑ(SÔ(SÑTÔTÝÐ(;ÈÐPÐPÑQÔQðSñ 	Tô 	Tð 	Tà�ˆ9Ðr_   c                 óÔ   — |                       d¦  «        r#ddlm} |                     | d         ¦  «         d S ddlm} |                     |                       dd¦  «        ¦  «         d S )Nr  r   re   rØ   rÎ   r	   )r    r{   rf   rÿ  rÙ   Úedit_saved_context)rÕ   rf   rÙ   s      r]   Ú	edit_menur    s�   € Ø‡z‚z�)ÑÔð 8Ø-Ð-Ð-Ð-Ð-Ð-Ø×Ò˜f YÔ/Ñ0Ô0Ð0Ð0Ð0à"Ð"Ð"Ð"Ð"Ð"Ø× Ò  §¢¨E°2Ñ!6Ô!6Ñ7Ô7Ð7Ð7Ð7r_   Tc           
      ó†  ‡— |                       d¦  «        rt          | d         ¦  «        } i }|�`i }|                     ¦   «         D ]+\  }\  }}t          |¦  «        r||d|z   <   d|z   }||f||<   Œ,t	          | t          |¦  «        ¬¦  «        } t          | ¦  «        \  }	}
|	s|
sd S t          j        ¦   «         }d„ |	D ¦   «         |
rt          d¦  «        gng z   }d }t          j
        d¦  «        }|                     dd¦  «         d	d
lm} |                     d¦  «         d	dlm} 	  |¦   «         5  	 |                     |¦  «        }|d	k     rnW|t%          |	¦  «        k     r|	|         d         }n5|                     d„ |
D ¦   «         ¦  «        }|d	k    r|
|         d         }nŒsd d d ¦  «         n# 1 swxY w Y   |                     d¦  «         n# |                     d¦  «         w xY w|�rÎ||v r ||         ¦   «          d S |                     d¦  «        rmt	          t+          t-          |t%          d¦  «        d…         ¦  «        j        ¦  «        ¦  «        Š‰                      d¦  «        dk    rt1          ‰¦  «         d S |s|S |�rd|v �rd	dlm} t	          t+          t-          |t%          d¦  «        d…         ¦  «        j        ¦  «        ¦  «        Š‰                      d¦  «        dk    r}|j                             ¦   «         }|                     d¦  «                             t?          ˆfd„tA          |¦  «        D ¦   «         ¦  «        ¦  «         | !                    ¦   «          d S  |‰¦  «         |j         "                    ¦   «          | #                    ¦   «          d S tI          |¦  «         d S d S )Nr[  zlocal:)r›  c                 ó   — g | ]\  }}|‘ŒS rm   rm   ©ro   r»   Ú_commands      r]   r™   zopen_menu.<locals>.<listcomp>  s   € Ð/Ð/Ð/™˜˜xˆeÐ/Ð/Ð/r_   i¤~  é'  úmilionar.ctx.activer4  r   )Úperflogzcontext menu open)ÚanchoredTrÚ   c                 ó   — g | ]\  }}|‘ŒS rm   rm   r  s      r]   r™   zopen_menu.<locals>.<listcomp>/  s   € Ð+NÐ+NÐ+N±o°e¸X¨EÐ+NÐ+NÐ+Nr_   r?  rA  r§   rý  zaction=skin_channel_edit)rì   rà  r7   iÐ  c              3   óD   •K  — | ]\  }}|j         ‰d          k    ¯|V — ŒdS rÔ  )r
  )ro   r  Úchr¨  s      €r]   rr   zopen_menu.<locals>.<genexpr>E  s<   øè è € Ð?zÐ?zÁeÀaÈÐfhÔfkÐosÐtxÔoyÒfyÐfyÀÐfyÐfyÐfyÐfyÐ?zÐ?zr_   )%r    rG  rJ  Úcallabler°   rÅ   r	  ÚxbmcguiÚDialogr^   ÚWindowrQ  r{   r  ÚlogÚwcs.skin.menu_anchorr  Úcontextmenur¼  ÚclearPropertyrz   r   r   rô   r  Úwcs.skin.channel_actionsrì   Úchannel_managerÚget_all_channelsÚ
getControlÚ
selectItemr   r‡  Ú_show_series_grid_dialogÚ_load_channelsÚrefresh_channels_viewÚ
run_chosen)rÕ   Úchannel_dialogÚexecuterã  Ú	callbacksr§  r\  rù   rb  r  r‡   r³  ÚlabelsÚchosenÚhomer  r  rÛ  rì   Úchannelsr¨  s                       @r]   Ú	open_menur0    sb  ø€ Ø‡z‚z�&ÑÔð (Ý˜˜vœÑ'Ô'ˆØ€IØÐØˆØ%,§]¢]¡_¤_ð 	,ð 	,Ñ!ˆCÑ!�%˜Ý˜Ñ Ô ð )Ø,3�	˜( S™.Ñ)Ø" S™.�Ø! 7Ð+ˆG�C‰LˆLÝ�f¥V¨G¡_¤_Ð5Ñ5Ô5ˆÝ�f‘”�I€CˆØð �tð ØˆÝŒ^ÑÔ€FØ/Ð/¨3Ð/Ñ/Ô/ÀDÐ3PµD¸±K´K°=°=ÈbÑQ€FØ€FÝŒ>˜%Ñ Ô €DØ×ÒÐ*¨CÑ0Ô0Ð0Ø Ð Ð Ð Ð Ð Ø‡K‚KÐ#Ñ$Ô$Ð$Ø-Ð-Ð-Ð-Ð-Ð-ð2ØˆX‰ZŒZð 	ð 	ð
Ø×*Ò*¨6Ñ2Ô2�Ø˜1’9�9ØØ�3˜s™8œ8Ò#Ð#Ø  œZ¨œ]�FØØ×*Ò*Ð+NÐ+NÈÐ+NÑ+NÔ+NÑOÔO�Ø˜A’:�:Ø! %œ[¨œ^�FØð
ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	×ÒÐ0Ñ1Ô1Ð1Ð1øˆ×ÒÐ0Ñ1Ô1Ð1Ð1øøøØñ Ø�YÐÐØˆI�fÔÑÔÐØˆFØ×Ò˜\Ñ*Ô*ð 	Ý�	¥(¨6µ#°lÑ2CÔ2CÀBÐ2FÔ+GÑ"HÔ"HÔ"NÑOÔOÑPÔPˆDØ�xŠx˜Ñ!Ô!Ð%8Ò8Ð8Ý˜$‘”�Ø�Øð 	ØˆMØñ 	Ð8¸FÐBÑBØ4Ð4Ð4Ð4Ð4Ð4Ý�	¥(¨6µ#°lÑ2CÔ2CÀBÐ2FÔ+GÑ"HÔ"HÔ"NÑOÔOÑPÔPˆDØ�xŠx˜‰~Œ~ Ò/Ð/Ø)Ô9×JÒJÑLÔL�Ø×)Ò)¨$Ñ/Ô/×:Ò:½4Ð?zÐ?zÐ?zÐ?zÍyÐYaÑObÔObÐ?zÑ?zÔ?zÑ;zÔ;zÑ{Ô{Ð{Ø×7Ò7Ñ9Ô9Ð9Ø�ØˆC�‰IŒIˆIØÔ*×9Ò9Ñ;Ô;Ð;Ø×0Ò0Ñ2Ô2Ð2Ð2Ð2å�vÑÔÐÐÐð/ð s1   Ä*
G Ä4A5F5Æ)G Æ5F9Æ9G Æ<F9Æ=G ÇG-c                 ó  — |                       dt                               d¦  «        z   ¦  «        r¼	 ddlm} |                     t          t          t          | t          d¦  «        d…         ¦  «        j
        ¦  «        ¦  «        ¦  «        rdS n\# t          $ rO}t          j        d                     t          |¦  «        j        |¦  «        t          j        ¦  «         Y d}~nd}~ww xY wt          j        | ¦  «         dS )z•Run a builtin: a quick action of ours (wcs/skin/local.py) here and now, without starting the plugin for it;
    everything else as the builtin it is.r?  rè   r   )ÚlocalrA  Nu1   [MilionÃ¡Å™ Skin] menu action failed here: {}: {})rz   rí   rî   r{   r2  rì   r°   r   r   r¼  rô   Ú	ExceptionrÒ   r  rÔ   rÜ   rˆ  Ú
LOGWARNINGÚexecutebuiltin)rb  r2  Úexcs      r]   r(  r(  O  s  € ð ×Ò˜,­¯ª°SÑ)9Ô)9Ñ9Ñ:Ô:ð {ð	{Ø&Ð&Ð&Ð&Ð&Ð&Ø�yŠy��i­°½¸\Ñ9JÔ9JÈ2Ð9MÔ1NÑ(OÔ(OÔ(UÑVÔVÑWÔWÑXÔXð Ø�ðøåð 	{ð 	{ð 	{ÝŒHÐH×OÒOÕPTÐUXÑPYÔPYÔPbÐdgÑhÔhÕjnÔjyÑzÔzÐzÐzÐzÐzÐzÐzøøøøð	{øøøåÔ˜Ñ Ô Ð Ð Ð s   ²AB Â
C*ÂAC%Ã%C*c                 ó–  ‡— 	 |                       |                      ¦   «         ¦  «                             ¦   «         Šn# t          t          f$ r Y dS w xY w‰sdS ‰                     d¦  «        }|rt          d|i¦  «         dS ‰                     d¦  «        }|dv st          ˆfd„dD ¦   «         ¦  «        rdS ‰                     d	¦  «        p|p|pt          | d	d
¦  «        }|dv rdn|}‰                     d¦  «        p‰                     d¦  «        }|dv r t          t          | dd¦  «        p|¦  «        }|r!t          |¦  «         
                    ¦   «         sdS ||‰                     ¦   «         ‰                     d¦  «        ‰                     d¦  «        t          | dd¦  «        t          | dd¦  «        dœ}|dk    r=‰                     d¦  «        }|                     ||dk    rdn	|dk    rdnd¬¦  «         n9|dk    r3|                     d t          d!z   t          d"|d#œ¦  «        z   d$¬%¦  «         t          |¦  «         dS )&zERead the focused item; ordinary buttons keep their existing behavior.Fr÷   r[  TÚ	item_type)r©   ÚbackÚ	add_movieÚ
add_seriesÚback_to_seriesÚback_to_seasonsc              3   óJ   •K  — | ]}‰                      |¦  «        d k    V — ŒdS )r4  N)rH  )ro   r  rX  s     €r]   rr   z!dialog_context.<locals>.<genexpr>i  sf   øè è € ð kxð kxð  KLÐko×k{Òk{Ð|}Ñk~Ôk~ð  CFò  lFð kxð kxð kxð kxð kxð kxr_   )Úis_add_favoriteÚis_start_gameÚis_start_actor_gameÚis_start_director_gameÚis_start_creator_gamer$  r)  r6  r  r  r
  )r   r&  Úcurrent_series_idr	   r*  r%  Ú_context_uidÚ_context_row)rÜ   rû   rù   rü   rý   rÎ   rq   r  Úknown_for_departmentÚ	DirectingrL   ÚWritingr  r  )r
  r  r&   r   ré   Úshow_movie_collection)r§   r  r4  )rÜ   rñ   r   )r#  Ú
getFocusIdÚgetSelectedItemÚAttributeErrorÚRuntimeErrorrH  r0  r±   r„  r´   rK  rI  rð   rí   r   )	r³  r  rË   r8  Úmediarû   r[  Ú
departmentrX  s	           @r]   Údialog_contextrQ  \  sá  ø€ ðØ× Ò  ×!2Ò!2Ñ!4Ô!4Ñ5Ô5×EÒEÑGÔGˆˆøÝ�LÐ)ð ð ð Øˆuˆuðøøøàð ØˆuØ
×
Ò
Ð-Ñ
.Ô
.€CØ
ð Ý�6˜3�-Ñ Ô Ð ØˆtØ× Ò  Ñ-Ô-€IØÐcÐcÐcÕgjð kxð kxð kxð kxØvðkxñ kxô kxñ hxô hxÐcàˆuØ×Ò˜\Ñ*Ô*Ði¨iÐi¸4ÐiÅ7È6ÐS_ÐahÑCiÔCi€EØÐ1Ð1Ð1ˆDˆD°u€EØ×Ò˜IÑ&Ô&Ð@¨$×*:Ò*:¸4Ñ*@Ô*@€DØÐ%Ð%Ð%Ý•7˜6Ð#6¸Ñ;Ô;ÐC¸tÑDÔDˆØð •s˜4‘y”y×(Ò(Ñ*Ô*ð ØˆuØ 4°$·-²-±/´/Ø×!Ò! /Ñ2Ô2¸×9IÒ9IÐJZÑ9[Ô9[Ý˜6 >°2Ñ6Ô6½wÀvÈ~Ð_aÑ?bÔ?bðdð d€Dð �ÒÐØ×%Ò%Ð&<Ñ=Ô=ˆ
Ø�Š�t°
¸kÒ0IÐ0I * *Ð[eÐirÒ[rÐ[rÈxÈxÐxˆñ  	Aô  	Að  	Að  	AØ	�,Ò	Ð	Ø�Š˜­¨s©
µYÐJaÐnrÐ?sÐ?sÑ5tÔ5tÑ(tð  ~Aˆñ  	Bô  	Bð  	BÝˆd�O„O€OØˆ4s   ƒ9= ½AÁAc                 óR   — t          | d¦  «        st          \  | _        | _        d S d S )NrE  )Úhasattrrƒ  rE  rF  )r³  s    r]   Úcapture_dialogrT    s7   € Ý�6˜>Ñ*Ô*ð DÝ3CÑ0ˆÔ˜VÔ0Ð0Ð0ðDð Dr_   c                 ó0  ‡ ‡
‡‡‡— 	 ‰                       ‰                      ¦   «         ¦  «        }|                     |                     ¦   «         ¦  «        Šn# t          t
          f$ r Y dS w xY w‰                     d¦  «        Š
‰
r2‰                     d¦  «        dk    s‰                     d¦  «        dk    rdS ‰ j        j        Š‰ j	        ‰ j
        ‰                     ¦   «         dœ}‰                     d¦  «        p)‰                     d¦  «        p‰                     d	¦  «        Š‰�r9‰                     d
¦  «        ‰                     d¦  «        }}|                     ‰dk    rdn|r|rdnd‰||‰
‰¬¦  «         ‰‰                     d¦  «        ‰                     d¦  «        dœ}‰dk    r+|                     d‰                     ¦   «         ‰
¬¦  «         nv|r|s1ddlm} |                     ‰
‰¦  «        \  }}t!          |¦  «        dz   }|                     d‰                     d¦  «        p‰                     ¦   «         ||‰
¬¦  «         t#          |¦  «        |d<   n|                     d‰
‰¬¦  «         i }‰r†‰                      ¦   «         dk    r:t%          d¦  «        ‰ j        f|d <   ‰dk    rˆ ˆfd!„}t%          d"¦  «        |f|d#<   n4‰                      ¦   «         d$k    rˆ
ˆ ˆˆfd%„}	t%          d&¦  «        |	f|d'<   t)          |‰ |¬(¦  «         d)S )*zgThe channel dialog's lists inherit the originating widget, too; its other controls keep their behavior.Frþ   Úis_create_buttonr1  Úis_add_buttonrø   r  r  r  r   r&  r  r)  r  rú   rÑ  Úyear)r  rÑ  rX  Úplay_movie_from_addon)r§   rù   r-  r   )ÚProgressManagerrÚ   r·  r¸  )r§   r¸  r*  r%  r,  r  r   r  i(#  rI   rH   c                  ó>   •— ‰‰ _         ‰                      ¦   «          d S r­   )Ú_play_selection_itemÚ_show_edit_progress_dialog)r³  rX  s   €€r]   rD   z-channel_dialog_context.<locals>.edit_progress§  s#   ø€ Ø26�FÔ/Ø×5Ò5Ñ7Ô7Ð7Ð7Ð7r_   rE   rD   iŒ#  c                  ó–   •— ‰dk    r‰                      ‰‰ ¦  «         n‰                     ‰‰ ¦  «         ‰                     ¦   «          d S )Nr  )Ú_show_movie_detail_dialogÚ_show_series_detail_dialogÚ _show_delete_series_confirmation)Úcidr³  r  rû   s   €€€€r]   rF   z.channel_dialog_context.<locals>.remove_program¬  sU   ø€ Ø˜8Ò#Ð#Ø×4Ò4°T¸3Ñ?Ô?Ð?Ð?à×5Ò5°d¸CÑ@Ô@Ð@Ø×7Ò7Ñ9Ô9Ð9Ð9Ð9r_   rG   rF   )r)  rã  T)r#  rK  ÚgetListItemÚgetSelectedPositionrM  rN  rH  r!  Úchannel_typerE  rF  rI  rð   Úwcs.airZ  Úget_progressr®  r”  r^   Ú"_enter_program_reorder_mode_directr0  )r³  Úcontrolr[  rü   rý   r«   rZ  rã  rD   rF   rb  rX  r  rû   s   `         @@@@r]   Úchannel_dialog_contextrj  „  s§  øøøøø€ ðØ×#Ò# F×$5Ò$5Ñ$7Ô$7Ñ8Ô8ˆØ×"Ò" 7×#>Ò#>Ñ#@Ô#@ÑAÔAˆˆøÝ�LÐ)ð ð ð Øˆuˆuðøøøà
×
Ò
˜<Ñ
(Ô
(€CØð �$×"Ò"Ð#5Ñ6Ô6¸&Ò@Ð@ÀD×DTÒDTÐUdÑDeÔDeÐioÒDoÐDoØˆuØÔ!Ô.€DØÔ&¨vÔ/BÈTÏ]Ê]É_Ì_Ð]Ð]€DØ×Ò˜IÑ&Ô&Ðg¨$×*:Ò*:¸:Ñ*FÔ*FÐgÈ$×JZÒJZÐ[fÑJgÔJg€DØñ 7Ø×Ò Ñ)Ô)¨4×+;Ò+;¸IÑ+FÔ+Fˆ1ˆØ�Š D¨HÒ$4Ð$4˜˜ÀqÐ:XÈQÐ:X¸)¸)ÐTXÐ_cØ˜1¨¸4ð 	ñ 	Aô 	Að 	Aà!¨T×-=Ò-=¸hÑ-GÔ-GÐQU×QaÒQaÐbhÑQiÔQiÐjÐjˆØ�8ÒÐØ�MŠMÐ!8ÀÇÂÁÄÐehˆMÑiÔiÐiÐiàð ˜Að Ø2Ð2Ð2Ð2Ð2Ð2Ø&×3Ò3°C¸Ñ>Ô>‘��1Ý˜‘F”F˜Q‘J�Ø�MŠMÐ!:È×HXÒHXÐYfÑHgÔHgÐHzÐko×kxÒkxÑkzÔkzØ()¸!ÈSð ñ Rô Rð Rå& v™œˆˆ^ÑÐà�Š˜ s°ˆÑ6Ô6Ð6Ø€GØð FØ×ÒÑÔ $Ò&Ð&Ý'+¨E¡{¤{°FÔ4]Ð&^ˆG�NÑ#Ø�tŠ|ˆ|ð8ð 8ð 8ð 8ð 8ð 8õ -1°©K¬K¸Ð+G�˜Ñ(øØ×ÒÑ Ô  DÒ(Ð(ð:ð :ð :ð :ð :ð :ð :ð :õ *.¨e©¬°nÐ(EˆGÐ$Ñ%Ýˆd 6°7Ð;Ñ;Ô;Ð;Øˆ4s   ‡AA ÁA+Á*A+c                  óŠ   — t          t          j        t          j        ¦   «         ¦  «                             ¦   «         ¦  «        S )zJThe parent window's selection, even while Kodi's context dialog is active.)r´   r  r  ÚgetCurrentWindowIdrK  rm   r_   r]   Úfocused_controlrm  ·  s/   € å�wŒ~�gÔ8Ñ:Ô:Ñ;Ô;×FÒFÑHÔHÑIÔIÐIr_   c           
      óâ  — |                       ¦   «         sdS d                     | ¦  «        }t          j        |dz   ¦  «        }|r|S t          j        |dz   ¦  «        }|                     t
          ¦  «        sdS t          t          t          |¦  «        j	        ¦  «        ¦  «        }t          j        t          j        |dz   ¦  «        |¬¦  «        }dD ]6}|                     d|z   t          j        |d	z   |z   d
z   ¦  «        ¦  «         Œ7t          ||t          j        |dz   ¦  «        |                     dd¦  «        |                     dd¦  «        ¦  «         |                     d¦  «        S )Nr	   zContainer({}).ListItem.zProperty(milionar.ctxdata)Ú
FolderPathÚLabel)rñ   rú   r   zProperty(milionar.rB  ÚIsFolderrÎ   rê   r÷   )rK  rÔ   rÒ   rÓ   rz   rí   r°   r   r   rô   r  ÚListItemrQ  re  ÚgetCondVisibilityr    rH  )ri  rð  rË   rñ   r«   rX  r  s          r]   Úfocused_datart  ¼  si  € Ø�?Š?ÑÔð ØˆrØ&×-Ò-¨gÑ6Ô6€FÝ
Ô
˜FÐ%AÑAÑ
BÔ
B€CØ
ð Øˆ
ÝÔ˜V lÑ2Ñ3Ô3€DØ�?Š?�4Ñ Ô ð Øˆrå•)�H T™NœNÔ0Ñ1Ô1Ñ2Ô2€FÝÔ�DÔ-¨f°wÑ.>Ñ?Ô?ÀdÐKÑKÔK€DØHð lð lˆØ×Ò˜ tÑ+­TÔ->¸vÐH\Ñ?\Ð_cÑ?cÐfiÑ?iÑ-jÔ-jÑkÔkÐkÐkÝ
ˆ4�•tÔ-¨f°zÑ.AÑBÔBÀFÇJÂJÈuÐVXÑDYÔDYÐ[a×[eÒ[eÐfnÐprÑ[sÔ[sÑtÔtÐtØ×ÒÐ.Ñ/Ô/Ð/r_   c                  óè  — t          j        d¦  «        } |                      d¦  «        s|                      d¦  «        rdS t          j        dd¦  «         t          j        ¦   «         dk    rt          d¬¦  «         dS t          t          ¦   «         ¦  «        }|rt          d|i¦  «         dS t          j        ¦   «         d	k    r,|  
                    dd
¦  «         t          j        d¦  «         dS dS )zUReplace Kodi's generated actions before exposing the popup; our own popup is guarded.r  r  úmilionar.ctx.nativeNzDialog.Close(contextmenu,true)T)Únativer[  ip+  r4  úAction(ContextMenu))r  r  rH  rÒ   r5  rl  Úhome_contextrt  rm  r0  rQ  )r.  r[  s     r]   Únative_contextrz  Ï  sÿ   € åŒ>˜%Ñ Ô €DØ×ÒÐ-Ñ.Ô.ð °$×2BÒ2BÐCXÑ2YÔ2Yð ØˆåÔÐ8¸$Ñ?Ô?Ð?ÝÔ!Ñ#Ô# uÒ,Ð,Ý˜DÐ!Ñ!Ô!Ð!ØˆÝ�Ñ)Ô)Ñ*Ô*€DØð 3Ý�6˜4�.Ñ!Ô!Ð!Ð!Ð!Ý	Ô	#Ñ	%Ô	%¨Ò	.Ð	.Ø×ÒÐ.°Ñ4Ô4Ð4ÝÔÐ1Ñ2Ô2Ð2Ð2Ð2ð 
/Ð	.r_   c                 óž  — t          j        ¦   «         st          j        d¦  «         dS ddlm} t          ¦   «         }|dk    rst          j        d¦  «        }||j        v r| 	                    |¦  «         n>| r(t          j        d¦  «                             dd	¦  «         t          j        d¦  «         dS dd
lm} |                     |¦  «        }|r|                     |¦  «         dS t!          |¦  «        }|rt#          d|i¦  «         dS | r(t          j        d¦  «                             dd	¦  «         t          j        d¦  «         dS )zdHome keymap dispatch: read the actual focus synchronously, including C immediately after navigation.rx  Nr   rØ   Ú9000z%Container(9000).ListItem.Property(id)r  rv  r4  rE  r[  )r   r™  rÒ   r5  r{   rÙ   rm  rÓ   ÚMENU_SECTIONSÚopen_for_menu_itemr  r  rQ  rF  Úfocused_widgetÚedit_saved_herort  r0  )rw  rÙ   ri  Úmenu_idrF  rî  r[  s          r]   ry  ry  á  s{  € åŒ=‰?Œ?ð ÝÔÐ1Ñ2Ô2Ð2ØˆØÐÐÐÐÐÝÑÔ€GØ�&ÒÐÝÔ#Ð$KÑLÔLˆØ�eÔ)Ð)Ð)Ø×$Ò$ WÑ-Ô-Ð-Ð-àð NÝ”˜uÑ%Ô%×1Ò1Ð2GÈÑMÔMÐMÝÔÐ 5Ñ6Ô6Ð6ØˆØ%Ð%Ð%Ð%Ð%Ð%Ø×(Ò(¨Ñ1Ô1€FØð Ø×Ò˜fÑ%Ô%Ð%ØˆÝ˜Ñ Ô €DØð 3Ý�6˜4�.Ñ!Ô!Ð!Ð!Ð!àð 	JÝŒN˜5Ñ!Ô!×-Ò-Ð.CÀSÑIÔIÐIÝÔÐ1Ñ2Ô2Ð2Ð2Ð2r_   r­   rh  )FF)F)NTN)8Ú__doc__rÃ   r¢  rÇ   r   r   r   r   r   rÒ   rY   r  r{   r   rí   rƒ  r¼   r�   r‚   r€   r}   r   ÚCONTEXT_ONLYr^   r|   rœ   r¸   r»   rÅ   rÌ   rÖ   ræ   rõ   re  rk  rG  r�  r”  rT  rV  rª  rÇ  rÜ  rá  rò  r	  r  r0  r(  rQ  rT  rj  rm  rt  rz  ry  rm   r_   r]   ú<module>r„     s™  ðà VÐ VØ €€€Ø 	€	€	€	Ø GÐ GÐ GÐ GÐ GÐ GÐ GÐ GÐ GÐ GÐ GÐ GÐ GÐ Gà €€€Ø Ð Ð Ð Ø €€€Ø Ð Ð Ð Ð Ð à(€ØÐ ð
Ø
ˆEð
Ø˜eð
Ø%-¨uð
Ø6>Àð
ØGOÐQVð
àˆeð
à˜Uð
à$1°5ð
à:CÀUð
àLRÐTYð
ð ˆEð
ð ˜eð
ð &/°ð
ð 8FÀuð
ð ˆEð	
ð " 5ð	
ð +2°5ð	
ð 
ð ;CÀEð	
ð
 ˆEð
ð
   ð
ð
 )8¸ð
ð �ð
ð ! %ð
ð *5°eð
ð >EÀeð
ð �ð
ð & uð
ð /@Àð
ð �uð
ð 0°ð
ð 9FÀuð
ð ˆUð
ð ˜eð
ð &6°uð
ð 
ð 
ð ?OÐPUð
ð �Eð
ð *¨5ð
ð 3<¸Uð
ð EPÐQVð
ð ˆEð
ð  ð
ð (2°5ð
ð ;JÈ5ð
ð �ð
ð )¨%ð
ð 2;¸Eð
ð DIÈ%ð
ð �Uð
ð -¨eð
ð 6DÀUð
ð ˆEð
ð 
ð $°ÀEØ u¸UÐPUØ˜eð!
ð 
ð 
€ð$ O€	ØC€	ð	€ð	!€ð-€àm€ðOð Oð Oð|ð |ð |ð.Lð Lð Lð>ð ð ð ð, ð  ð  ðWð Wð Wð
ð ð ðð ð ðð ð ð
*ð 
*ð 
*ðKð Kð Kð Kð\Hð Hð HðOð Oð Oð
 Rð  Rð  RðFCð Cð Cð Cð
Wð Wð WðPð Pð Pð Pð>ð >ð >ð2.ð .ð .ðbð ð ð0ð ð ð&-ð &-ð &-ðR%ð %ð %ðP8ð 8ð 8ð=ð =ð =ð =ð@
!ð 
!ð 
!ð ð  ð  ð  ðFDð Dð Dð
0ð 0ð 0ðfJð Jð Jð
0ð 0ð 0ð&3ð 3ð 3ð$3ð 3ð 3ð 3ð 3ð 3r_   