
    hjc              	       j   S r SSKrSSKrSSKJrJr  SSKJr  SSKJ	r	J
r
  SSKJrJr  SSKJr  SSKJr  SS	KJrJrJrJrJrJrJr  SS
KJrJrJr  SSKJrJ r J!r!J"r"J#r#J$r$J%r%J&r&J'r'J(r(  SSK)J*r*  \" SSSSSSS9r+\" SSSSSSS9r,\" S\-S9r.\(" SSS9S 5       r/\(" SSS9S 5       r/\(" SSS9S 5       r/\(" SSS9S 5       r/\(" SSS9S 5       r0\(" SSS9S 5       r1\(" S SS9S! 5       r2\(" S"SS9S# 5       r/\(" S$SS9S% 5       r/\(" S&S'9S( 5       r3\(" S)S'9S* 5       r4\(" S+S'9S, 5       r5\(" S-S'9S. 5       r6S/ r7g)0u;  
✘ Commands Available -

• `{i}gban <reply user/ username>`
• `{i}ungban`
    Ban/Unban Globally.

• `{i}gstat <reply to user/userid/username>`
   Check if user is GBanned.

• `{i}listgban` : List all GBanned users.

• `{i}gmute` | `{i}ungmute` <reply user/ username>
    Mute/UnMute Globally.

• `{i}gkick <reply/username>` `Globally Kick User`
• `{i}gcast <text/reply>` `Globally Send msg in all grps`

• `{i}gadmincast <text/reply>` `Globally broadcast in your admin chats`
• `{i}gucast <text/reply>` `Globally send msg in all pm users`

• `{i}gblacklist <chat id/username/nothing (for current chat)`
   Add chat to blacklist and ignores global broadcast.
• `{i}ungblacklist` `Remove the chat from blacklist.`

• `{i}gpromote <reply to user> <channel/group/all> <rank>`
    globally promote user where you are admin
    - Set whether To promote only in groups/channels/all.
    Eg- `gpromote group boss` ~ promotes user in all grps.
        `gpromote @username all sar` ~ promote the user in all group & channel
• `{i}gdemote` - `demote user globally`
    N)ChatAdminRequiredErrorFloodWaitError)EditAdminRequest)BlockRequestUnblockRequest)ChatAdminRightsUser)DEVLIST)
KeyManager)gbangmute
is_gbanned	is_gmutedlist_gbannedungbanungmute)create_tl_btn
format_btnget_msg_button   )
HNDLRLOGSNOSPAM_CHAT
OWNER_NAMEeodeor
get_stringinline_mentionultroid_botultroid_cmd)	somethingFT)
add_adminsinvite_userschange_info	ban_usersdelete_messagespin_messagesGBLACKLISTS)castzgpromote( (.*)|$))patternfullsudoc           
        #    U R                   R                  S5      R                  5       nU R                  nU(       d!  U R	                  [        S5      SS9I S h  vN $ U R                  5       I S h  vN nU(       Gaq  U R	                  S5      I S h  vN nU R                  R                  5       nSn[        U5      S:  a  SUS   ;   d	  SUS   ;   a  US   n[        U5      S	:  a  US	   OS
nSnU R                  (       a  UR                  R                  OUR                  R                  Ul        U R                  R                  5         S h  vN nSUR!                  5       ;   a  UR"                  (       d9  SUR!                  5       ;  aj  SUR!                  5       ;   aV  UR$                  (       aE   U R                  ['        UR                  UR                  [(        U5      5      I S h  vN   US-  nM  SUR!                  5       ;  d  UR"                  (       d  M  SUR!                  5       ;   d(  SUR!                  5       ;  d  UR$                  (       d  GM  SUR!                  5       ;   d9  SUR!                  5       ;   d%  UR"                  (       d  UR$                  (       d  GM\   U R                  ['        UR                  UR                  [(        U5      5      I S h  vN   US-  nGM  U R                  R                  5       n
U
S   (       d  [	        U SSS9I S h  vN $ U
S   nUR3                  5       (       a  [5        U5      n U R                  R7                  U5      I S h  vN nU R	                  SUR8                   S35      I S h  vN nSn[        U
5      S	:  a  SU
S	   ;   d	  SU
S	   ;   a  U
S	   n[        U
5      S:  a  U
S   OS
nSnU R                  R                  5         S h  vN nSUR!                  5       ;   a  UR"                  (       d  SUR!                  5       ;  a%  SUR!                  5       ;   a  UR$                  (       dP  SUR!                  5       ;  d  M}  SUR!                  5       ;  d  M  UR"                  (       d  UR$                  (       d  M   U" ['        UR                  U[(        U5      5      I S h  vN   US-  nM   GN GNk GNM GN GN! [*         a     GM  f = f GN! [,         a"  n	[.        R0                  " U	5         S n	A	GM  S n	A	ff = f
 [	        USU SU S35      I S h  vN    g  GN) GN! [*         a     U R	                  SU S3SS9I S h  vN  s $ f = f GN GN N! [*         a     GM  f = f
 [	        USUR8                   SU SU S35      I S h  vN    g 7f)Nr   schdl_2   timez!`Promoting Replied User Globally`allgroupchannel   AdMinr   z&Promoted The Replied Users in Total :   chats/`Give someone's username/id or replied to user.`No User Found Regarding `z`Promoting  globally.`   z	Promoted  in Total :  chats.)pattern_matchr2   stripclientr   r   get_reply_messagetextsplitlen
is_privatepeer_iduser_idfrom_ididiter_dialogsloweris_group
is_channelr   _gpromote_rightsBaseException	Exceptionr   infoisdigitint
get_entity
first_name)exr   userevokkeyrankcerknames               (/root/TeamUltroid/plugins/globaltools.py_rc   _   s    	a &&(A((KUU:i0qU999$$&&D55<==VV\\^r7Q;W1-913EQ%CB!r!u*+,,$,,&&DLL<P<Pxx,,. -	"!399;&JJ#))+-,LL(((DD GG, 	   FA 		+qzzzsyy{* 		3||| syy{* CIIK/zz|||"(((DD GG, 	   FA
 FFLLNtD1   t<<>>t9D	L,,T22D 55;t&7{CDDq6A:GqtOad1BA$C1vzqtwxx,,. 	!399;&JJ#))+-,LL#))+-SYY[0ZZ1<<<%(DD , 	   FAC :&=-	" % " ! "IIbMM"Y /\ ">qc3%vNOOO 3 	L!:4&BKKKK	LD	 % + /. "	$//!2,qc3%wOPPPs  AWSW3S4 WS!B:WT.S$T.AW78S*/S'0	S*9%W"7WAW,8S?$S<%	S?.5W#U$)WU ,U-U 1"WU?AW2V6V7V:A1W/W W*%VV	VWW!W$T.'S**
S94W8S99W<S??
T+	T&W&T++WUWU !U<3U64U<9W;U<<WVV
VWV'W=W >Wzgdemote( (.*)|$)c           
      V	  #    U R                   R                  S5      R                  5       nU R                  nU(       d!  U R	                  [        S5      SS9I S h  vN $ U R                  5       I S h  vN nU(       Ga  U R                  (       a  UR                  R                  OUR                  R                  Ul        U R	                  S5      I S h  vN nU R                  R                  5       nSn[        U5      S:  a  SUS   ;   d	  SUS   ;   a  US   nS	nS
nU R                  R                  5         S h  vN nSUR!                  5       ;   a  UR"                  (       d  SUR!                  5       ;  a%  SUR!                  5       ;   a  UR$                  (       dP  SUR!                  5       ;  d  M}  SUR!                  5       ;  d  M  UR"                  (       d  UR$                  (       d  M   U" ['        UR                  UR                  [(        U5      5      I S h  vN   US-  nM  U R                  R                  5       n	U	S   (       d  [	        U SSS9I S h  vN $ U	S   nUR-                  5       (       a  [/        U5      n UR0                  " U5      I S h  vN n
U R	                  SU
R2                   S35      I S h  vN nSn[        U	5      S:  a  SU	S   ;   d	  SU	S   ;   a  U	S   nS	nS
nUR                  " 5         S h  vN nSUR!                  5       ;   a  UR"                  (       d  SUR!                  5       ;  a%  SUR!                  5       ;   a  UR$                  (       dP  SUR!                  5       ;  d  M}  SUR!                  5       ;  d  M  UR"                  (       d  UR$                  (       d  M   U" ['        UR                  U[(        U5      5      I S h  vN   US-  nM   GN GN GN" GN GN! [*         a     GM  f = f
 [	        USU SU S35      I S h  vN    g  GN GN! [*         a     U R	                  SU S3SS9I S h  vN  s $ f = f GN GNZ N! [*         a     GMq  f = f
 [	        USU
R2                   SU SU S35      I S h  vN    g 7f)Nr   r-   r.   r/   z `Demoting Replied User Globally`r1   r2   r3   z	Not AdMinr   z%Demoted The Replied Users in Total : r6   r7   r8   r9   r:   z
`Demoting r;   r4   zDemoted r=   r>   )r?   r2   r@   rA   r   r   rB   rF   rG   rH   rI   rJ   rC   rD   rE   rK   rL   rM   rN   r   _gdemote_rightsrP   rS   rT   rU   rV   )rW   rX   r   rY   rZ   r[   r\   r]   r^   r`   ra   s              rb   rc   rc      s    	a &&(A((KUU:i0qU999$$&&D*+,,$,,&&DLL<P<P55;<<VV\\^r7Q;W1-913EQ%Cxx,,. 	!399;&JJ#))+-,LL#))+-SYY[0ZZ1<<<%(DD GG+ 	   FA
 FFLLNtD1   t<<>>t9D	L$//55D 55:doo%6kBCCq6A:GqtOad1BA$C"//1 	!399;&JJ#))+-,LL#))+-SYY[0ZZ1<<<%(DD + 	   FAU :& =	 % + /. "=aS#fMNNN 6 	L!:4&BKKKK	LC	 % + 2. " 1aS#gNOOOsm  AR)O2R)3O54A"R)O8A$R);P?O; PA1R)8R) R)3/P"O>#	P,4R) P1!)R)P7  P4!P7 %"R)Q$AR)	Q>Q'Q>A1R)R) R)%Q,&Q*'	Q,0R)5R)8R);P>P
PR)PR)*P-+R)4P7 7!Q!QQ!R) Q!!R)'Q>*Q,,
Q;6R):Q;;'R)"R%#R)zungban( (.*)|$)c                 X  #    U R                  S5      I S h  vN nU R                  R                  S5      R                  5       nS nU R                  (       a#  U R                  5       I S h  vN R                  nOxU(       a;   [        U5      n U R                  R                  U5      I S h  vN R                  nO6U R                  (       a  U R                  nOUR                  SSS9I S h  vN $ [!        U5      (       d  UR                  S5      I S h  vN $  U(       d#  U R                  R                  U5      I S h  vN n[#        U5      nSnU R                  R(                  (       a  U R                  R(                  nOGU R                  R+                  5       I S h  vN nU R                  R(                  R-                  U5        U HZ  n	U	R.                  (       d  U	R0                  (       d  M'   U R                  R3                  U	R                  US	S
9I S h  vN   US-  nM\     [E        U5        [G        U[H        5      (       a"  U R                  [K        U5      5      I S h  vN   UR                  SU SU S35      I S h  vN   g  GNy GN(! [         a    Un GNf = f GN! [         a'  nUR                  SU 35      I S h  vN  s S nA$ S nAff = f GN GN GN! [$         a    [        U5      n['        U5      n GNf = f GNm N! [4         a  n
[6        R8                  " SU
R:                  S-    35        [<        R>                  " U
R:                  S-   5      I S h  vN     U R                  R3                  U	R                  US	S
9I S h  vN    US-  n S n
A
GM  ! [$         a&  n[6        R@                  " U5         S nA S n
A
GM  S nAff = fS n
A
f[B        [        4 a     GM'  [$         a"  n[6        R@                  " U5         S nAGMM  S nAff = f GN GN7f)Nz`UnGbanning...`r   zFailed to get User...
Error: $`Reply to some msg or add their id.`r.   r/   z `User/Channel is not Gbanned...`r   Tview_messagesz,[FLOOD_WAIT_ERROR] : on Ungban
Sleeping for 
   z`Ungbaned` z in z! `chats.
Removed from gbanwatch.`)&r   r?   r2   r@   reply_to_msg_idrB   	sender_idrT   
ValueErrorrA   rU   rJ   rQ   editrF   chat_idr   r   rP   str_dialogsget_dialogsextendrM   rN   edit_permissionsr   r   rR   secondsasynciosleep	exceptionr   r   
isinstancer	   r   )rW   xxmatchpeeruseridr_   ra   chatsdialogggbanfws              rb   rc   rc      sV    uu&'	'BOO!!!$**,ED++--88		ZF	HHH//77;;F 
VVBVKKKfWW?@@@,,V44Dd# Exx""xx++--	  (>>U---#hh//&PT/UUU
	 * 6N$hh~f-...
''
dV4w&HI  s 
( .  	F	 8 	H#A"!FGGGG	H
 L@ 5 V6{ .
 V! '		CBJJrM?S mmBJJO444'((33& 4    QJE$ 'NN2&&'*J7   #r""# 	/s  P*JAP*+J,P*J J, -J).J, <2P*.K /(P*K#P*%K) K&K) AP*#L$AP*7(LL 	L)AP**P$+P*
P'P*P*J&"P*%J&&P*)J, ,
K6KKKKP*KP*#P*&K) ) L	P*LP*L
P!AO+M.,O2(N,N
N,%P*,
O6OOP*OOP!2P*6	P!?PP*P!!P*'P*zgban( (.*)|$)c                 	  #    U R                  S5      I S h  vN nSnU R                  (       aA  U R                  5       I S h  vN R                  n U R                  R                  SSS9S   nOU R                  R                  S5      R                  5       (       a^  U R                  R                  SS9S   n U R                  R                  U5      I S h  vN n U R                  R                  SS9S   nOTU R                  (       a+  U R                  n U R                  R                  SSS9S   nOUR                  SSS	9I S h  vN $ S n U R                  R                  U5      I S h  vN n[!        U5      nS
nU[(        R*                  :X  a  UR                  SSS	9I S h  vN $ U[,        ;   a  UR                  SSS	9I S h  vN $ [/        U5      (       a  [1        USSS	9I S h  vN $ U R                  R2                  (       a  U R                  R2                  nOGU R                  R5                  5       I S h  vN nU R                  R2                  R7                  U5        U HZ  n	U	R8                  (       d  U	R:                  (       d  M'   U R                  R=                  U	R>                  USS9I S h  vN   US-  nM\     [Q        X25        [S        U[T        5      (       a"  U R                  [W        U5      5      I S h  vN   SU SU S3nU(       a  USU 3-  nURY                  U5      I S h  vN   g  GN* GN! [         a     GNf = f GN! [         a    Un GNf = f! [         a     GN+f = f! [         a     GN<f = f GNE GN"! ["         a    [%        U5      n['        U5      n GN8f = f GN GN GN GN GN
! [@         a  n
[B        RD                  " SU
RF                  S-    35        [H        RJ                  " U
RF                  S-   5      I S h  vN     U R                  R=                  U	R>                  USS9I S h  vN    US-  n S n
A
GM  ! ["         a&  n[B        RL                  " U5         S nA S n
A
GM  S nAff = fS n
A
f[N        [        4 a     GM>  ["         a"  n[B        RL                  " U5         S nAGMd  S nAff = f GN GN7f)Nz`Gbanning...` r6   r   maxsplitr4   rg   r.   r/   r   z`I can't gban myself.`r<   z`I can't gban my Developers.`z1`User is already gbanned and added to gbanwatch.`   Frh   z2[FLOOD_WAIT_ERROR] : on GBAN Command
Sleeping for rj   z**#Gbanned**  `in z chats and added to gbanwatch!`z
**Reason** : )-r   rk   rB   rl   rC   rD   
IndexErrorr?   r2   r@   rA   parse_idrm   rF   ro   rU   r   rP   rT   rp   r   uidr
   r   r   rq   rr   rs   rM   rN   rt   rJ   r   r   rR   ru   rv   rw   rx   r   r   ry   r	   r   rn   )rW   rz   reasonr}   usrrY   ra   r~   r   r   r   r_   gb_msgs                rb   rc   rc   `  s-    uu_%	%BF++--88	VV\\#\215F 
		q	!	'	'	)	)ffllAl&q)	88,,S11F	VV\\1\-a0F 
	VV\\#\215F VVBVKKKDXX((00d# E VV41V===	7	VV;!VDDD	F		?
 
 	

 	xx""xx++--	  (>>U---#hh//&PU/VVV
	 * 	$hh|F+,,,TF%w.MNFOF8,,
''&/Y 
& .  		
 2 	F	  		  		 L 1 V6{
 >D
 .
 W! '		I"**UW-Y mmBJJO444'((33& 4    QJE$ 'NN2&&'*J7   #r""# 	- s   S!M*S!MS!M /AS!;M MM M. ;S!M? 7S!NS!N 1N2N )S!*N=+!S!O "S!/O0AS!OAS!(O?O	 	O	AS!
S0S!;S<S!S!
MS!MS!M M+'S!*M++S!.
M<8S!;M<<S!?
N	S!NS!N  N:6S!9N::S! S!S!S!	O
SAR"P%#R)(Q#Q
Q#S!#
R-RRS!RRS)S!-	S6SS!SS!S!zg(admin|)cast( (.*)|$)c                 4  #    Su  pnU R                   R                  S5      =n(       a(  [        U R                  R	                  SS9S   5      u  pRO~U R
                  (       aY  U R                  5       I S h  vN nUR                  nUR                  (       a  [        UR                  5      nO"[        U5      u  pRO[        U S5      I S h  vN $ U R                  S5      I S h  vN nSnSnSn	U R                  R                  (       a  U R                  R                  n
OGU R                  R                  5       I S h  vN n
U R                  R                  R                  U
5        U
 GH,  nUR                  (       d  M  UR                  R                   n["        R%                  U5      (       a  MI  ['        S	[)        U5       35      [*        ;  d  Mj  U R                  SS
 S:w  d8  UR                  R,                  (       d  UR                  R.                  (       d  M   U(       a5  [1        U5      n[3        U UU(       a  UR4                  OS UUSS9I S h  vN   O5U R                  R7                  XU(       a  UR4                  OS S9I S h  vN   US-  nGM/     USU SU S3-  nU	S:w  a(  [E        SS5      RG                  U	5        US[H         S3-  nURK                  U5      I S h  vN   g  GNy GN' GN GN N Np! [8         a  n[:        R<                  " UR>                  S-   5      I S h  vN     U(       a6  [1        U5      n[3        U UU(       a  UR4                  OS UUSS9I S h  vN    O6U R                  R7                  XU(       a  UR4                  OS S9I S h  vN    US-  n S nAGMK  ! [@         a  nU	SU S3-  n	US-  n S nA S nAGMn  S nAff = fS nAf[B         a%  nU	S[)        U5       3S-   -  n	US-  n S nAGM  S nAff = f GN,7f)Nr   NNr4   r   r   ;`Give some text to Globally Broadcast or reply a message..``Globally Broadcasting Msg...`r   r   z-100   adminFchatreplyfilerj   u   • 
Done in  chats, error in  chat(s)zgcast-error.logzw+z
You can do `z)ul gcast-error.log` to know error report.)&r?   r2   r   rC   rD   is_replyrB   buttonsr   r   rA   rq   rr   rs   rM   entityrJ   keymcontainsrT   rp   r   admin_rightscreatorr   r!   mediasend_messager   rv   rw   ru   rQ   rP   openwriter   rn   )eventrC   btnr   rz   msgkkr_   doneerrr   rX   r   btr   rrhs                    rb   gcastr     s    %Du  &&q))r)!%**"2"2A"2">q"ABS	--//jj==U]]+C%c*HCP
 
 	
 yy9:	:B	
BD
C||&&||//11$$V,:::88;;DMM$''$s4yk*+;> 

1Q72HH11QXX5E5E5E'*3/'!+0EKKd!%"'   $ll77 5EKKd 8    AID9 j 	htf-bT::D
by%++C0.'PQQ
''$-[ 0
 
; 2$ &  !--

R888 !.s!3B"+ % #/4$ "%)&+#   #(,,";"; $u$ #< #   	$  bT},a  % T#a&?T11C!GB s  A4P6K/7APK2P$K5%AP>K8?>P.P3PAP 6K?K;5K?K=	K?AP)P*P2P5P8P;K?=K??
P	&O /L20O 66N5,M/-6N5#N&$
N5.P5
O?OO POO  P-PPPPzgucast( (.*)|$)c           
      0  #    Su  pnU R                   R                  S5      R                  5       =n(       a(  [        U R                  R                  SS9S   5      u  pO~U R                  (       aY  U R                  5       I S h  vN nUR                  nUR                  (       a  [        UR                  5      nO"[        U5      u  pO[        U S5      I S h  vN $ U R                  S5      I S h  vN nSnSnU R                  R                  (       a  U R                  R                  nOGU R                  R                  5       I S h  vN nU R                  R                  R                  U5        U H  n	U	R                  (       d  M  U	R                   R"                  (       a  M3  U	R$                  n
[&        R)                  U
5      (       a  M[   U(       a5  [+        U5      n[-        U UU(       a  UR.                  OS UU
SS9I S h  vN   O5U R                  R1                  XU(       a  UR.                  OS S	9I S h  vN   US-  nM     UR5                  S
U SU S35      I S h  vN   g  GN GN GN GN, Np N<! [2         a
    US-  n GM  f = f N,7f)Nr   r   r   r   r   r   Fr   r   r   r   r   )r?   r2   r@   r   rC   rD   r   rB   r   r   r   rA   rq   rr   rs   is_userr   botrJ   r   r   r   r!   r   r   rP   rn   )r   r   r   r   rz   r   r_   r   r   rX   r   r   s               rb   gucastr     s+    $OCe  &&q)//11r1!%**"2"2A"2">q"ABS	--//jj==U]]+C%c*HCP
 
 	
 yy9:	:B	
BD||&&||//11$$V,999QXX\\\44D==&&*3/'!+0EKKd!%"'   $ll77 5EKKd 8    AID' , ''HTF"3B4x@
AAAQ 0
 
; 2 % !GBAs   BJI-AJI0J2I33AJ
I6=JJ)$J6I=I9	5I=>I;?	I=J'J(J0J3J6J9I=;I==JJJJzgkick( (.*)|$)c           	      P  #    U R                  S5      I S h  vN nU R                  (       a#  U R                  5       I S h  vN R                  nOU R                  R                  S5      R                  5       (       aK  U R                  R                  U R                  R                  S5      R                  5       5      I S h  vN nO6U R                  (       a  U R                  nOUR                  SSS9I S h  vN $ U R                  R                  U5      I S h  vN R                  nSnU[        R                  :X  a  UR                  SSS9I S h  vN $ U[         ;   a  UR                  S	SS9I S h  vN $ U R                  R"                  (       a  U R                  R"                  nOGU R                  R%                  5       I S h  vN nU R                  R"                  R'                  U5        U H[  nUR(                  (       d  UR*                  (       d  M'   U R                  R-                  UR.                  U5      I S h  vN   US-  nM]     UR                  S
U SU SU S35      I S h  vN   g  GNc GN= GN GN GNi GN4 GN N NH! [0         a     M  f = f N/7f)Nz`Gkicking...`r   rg   r.   r/   r   z`I can't gkick myself.`r<   z`I can't gkick my Developers.`z`Gkicked` [z](tg://user?id=z) `in  chats.`)r   rk   rB   rl   r?   r2   r@   rA   r   rF   ro   rn   rU   rV   r   r   r
   rq   rr   rs   rM   rN   kick_participantrJ   rP   )rW   rz   r}   ra   r~   r   gkicks          rb   r   r   8  s    uu_%	%B++--88	
		q	!	'	'	)	)xx(()>)>q)A)G)G)IJJ	
WWC!WLLL((%%f--99DE VV5AV>>>VV<1VEEExx""xx++--	  (>>U---hh//&AAA
	  ''Kv_VHF5'R
SSS7 
&-J M- ?E .
 B  Ss   J&I:(J& I=BJ&J 6J&:J;"J&J7J&J	!J&7J8AJ&JAJ&)JJ		J"J&4J$5J&=J& J&J&J&	J&J&J&J
J!J& J!!J&zgmute( (.*)|$)c                   #    U R                  S5      I S h  vN nU R                  (       a#  U R                  5       I S h  vN R                  nOU R                  R                  S5      R                  5       (       aK  U R                  R                  U R                  R                  S5      R                  5       5      I S h  vN nO7U R                  (       a  U R                  nOUR                  SSSS9I S h  vN $ U R                  R                  U5      I S h  vN nSnU[        R                  :X  a  UR                  SSS	9I S h  vN $ U[        ;   a  UR                  S
SS	9I S h  vN $ [        U5      (       a  UR                  SSS	9I S h  vN $ U R                  R                   (       a  U R                  R                   nOGU R                  R#                  5       I S h  vN nU R                  R                   R%                  U5        U HI  nUR&                  (       d  M   U R                  R)                  UR*                  USS9I S h  vN   US-  nMK     [/        U5        UR1                  S[3        U5       SU S35      I S h  vN   g  GN GN[ GN GN GN GN[ GN< GN N N\! [,         a     M  f = f N27f)Nz`Gmuting...`r   rg   r.   )tomer0   r   z`I can't gmute myself.`r<   r/   z`I can't gmute my Developers.`z`User is already gmuted.`r   Fsend_messagesz	`Gmuted` r   r   )r   rk   rB   rl   r?   r2   r@   rA   r   rF   ro   rU   r   r   r
   r   rq   rr   rs   rM   rt   rJ   rP   r   rn   r   )rW   rz   r}   ra   r~   r   onmutes          rb   rc   rc   X  s-    uu^$	$B++--88	
		q	!	'	'	)	)xx(()>)>q)A)G)G)IJJ	
VVBQRVSSS$$V,,DE VV5AV>>>VV<1VEEEVV7aV@@@xx""xx++--	  (???hh//		6QV/WWW
	  
&M
''InT235xH
III= 
%-J T, ?E@ .
 X   Js   KJ(K JBKJ7K;J!<"KJ$-KJ'!K.J*/'KJ-AK*J0+=K-(J4J2	J43KKKKK!K$K'K*K-K0K2J44
K>KKKzungmute( (.*)|$)c                   #    U R                  S5      I S h  vN nU R                  (       a#  U R                  5       I S h  vN R                  nOU R                  R                  S5      R                  5       (       aK  U R                  R                  U R                  R                  S5      R                  5       5      I S h  vN nO6U R                  (       a  U R                  nOUR                  SSS9I S h  vN $ U R                  R                  U5      I S h  vN R                  nSn[        U5      (       d  UR                  SSS9I S h  vN $ U R                  R                  (       a  U R                  R                  nOGU R                  R                  5       I S h  vN nU R                  R                  R!                  U5        U HI  nUR"                  (       d  M   U R                  R%                  UR&                  US	S
9I S h  vN   US-  nMK     [+        U5        UR-                  S[/        U5       SU S35      I S h  vN   g  GN< GN GN GNb GNB GN N NV! [(         a     M  f = f N,7f)Nz`UnGmuting...`r   rg   r.   r/   r   z`User is not gmuted.`r<   Tr   z`Ungmuted` r   r   )r   rk   rB   rl   r?   r2   r@   rA   r   rF   ro   rU   rV   r   rq   rr   rs   rM   rt   rJ   rP   r   rn   r   )rW   rz   r}   ra   r~   r   hurrs          rb   rc   rc   {  s    uu%&	&B++--88	
		q	!	'	'	)	)xx(()>)>q)A)G)G)IJJ	
VVBVKKK((%%f--99DEVVV3!V<<<xx""xx++--	  (===hh//t/TTT
	  FO
''Kt 45U5'J
KKK5 
'-J L- = .
 U   Ls   I<I(I< IBI<I6I<:I;"I<I3I<I"AI<%I%&=I<((I)I'	I)3I<I:I<I<I<I<I<"I<%I<'I))
I73I<6I77I<z	listgban$)r*   c                   #    [        5       nU R                  [        S5      5      I S h  vN nSnU(       d  UR                  S5      I S h  vN $ U HR  n U R                  R                  [        U5      5      I S h  vN nUS[        USS9 S3-  nX   nX6b  SU S	3OS-  nMT     S
[         SU 3n[        U5      S:  a  [        SS5       nUR                  UR                  SS5      R                  SS5      R                  SS5      R                  SS5      5        S S S 5        UR                  SS[        [        R                   5       3S9I S h  vN   ["        R$                  " S5        UR'                  5       I S h  vN   g UR                  USS9I S h  vN   g  GNz GN[ GN,! [         a    Un GN9f = f! , (       d  f       N= f Ny NM N67f)Ncom_1r   z`You haven't GBanned anyone!`z<strong>User</strong>: T)htmlr   z<strong>Reason</strong>: z

z!<strong>List of users GBanned by z</strong>:

i   zgbanned.txtwz<strong>z	</strong>z<a href=tg://user?id=z</a>zList of users GBanned by )r   messager   )
parse_mode)r   r   r   rn   rA   rU   rT   rP   r   r   rE   r   r   replacer   r   meosremovedelete)	r   usersrX   r   ira   r   gbanned_usersfs	            rb   list_gengbannedr     s     NEii
7+,,A
CVV;<<<	00Q88D 	(4)H(ILL;M*6($7SWW  8
|>RUQVWM
=D -%GG%%j"5b)0"5$	 & gg/{~~0N/OP  
 	
 	
 			- hhjff]vf6669 	- = 9 	D	 &%	

 	6s   (GF$!GF'	G'F->F*?F-AGAG "5GG-GGGGG'G*F--F=9G<F==G 
G
GGGzgstat( (.*)|$)c                   #    U R                  [        S5      5      I S h  vN nU R                  (       a#  U R                  5       I S h  vN R                  nOU R
                  (       a#  U R                  5       I S h  vN R                  nOU R                  R                  S5      R                  5       (       aL   U R                  R                  U R                  R                  S5      R                  5       5      I S h  vN nOUR                  SSS9I S h  vN $ U R                  R                  U5      I S h  vN R                  nSU S3n[!        U5      n[#        5       R%                  U5      nU(       a  US	-  nXW(       a  S
U S3OS-  nOUS-  nUR'                  U5      I S h  vN   g  GN GNm GN< N! [         a$  nUR                  U SS9I S h  vN  s S nA$ S nAff = f N N NE7f)Nr   r   rj   r/   rg   r.   z**z is zGlobally Bannedz with reason** `r:   z.**znot Globally Banned.**)r   r   rF   get_chatrJ   rk   rB   rl   r?   r2   r@   rA   r   rQ   rU   rV   r   r   getrn   )rW   rz   r}   r   ra   r   	is_bannedr   s           rb   gstat_r     s     uuZ()	)B||

$((	
		++--88	
		q	!	'	'	)	)	388,,Q__-B-B1-E-K-K-MNNF VVBVKKK((%%f--99DtfD/C6"I^'F  v!&+5@''
''#,+ 
*$- O 	33%r2222	3 L- s   G5F3(G5	F6
3G5=F9>=G5<AF> F<F> G5G/"G5=G1>A/G5-G3.G56G59G5<F> >
G,G'GG'!G,"G5'G,,G51G53G5zgblacklist$c                 8   #    [        U S5      I S h  vN   g  N7f)Naddgblackerr   s    rb   
blacklist_r     s     
5%
      zungblacklist$c                 8   #    [        U S5      I S h  vN   g  N7f)Nr   r   r   s    rb   
ungblackerr     s     
5(
###r   c                   #     [        U R                  R                  SS9S   5      n U R                  R	                  U5      I S h  vN R
                  nUS:X  a  [        R                  U5        OUS:X  a  [        R                  U5        U R                  SU SU 35      I S h  vN   g  Ne! [         a1  nU R                  S[        U5       S35      I S h  vN  s S nA$ S nAff = f! [         a    U R                  n Nf = f Na7f)	Nr   r   z**ERROR**
`r:   r   r   zGlobal Broadcasts: 
zed )rT   rC   rD   rA   rU   rJ   rQ   r   rp   r   ro   r   r   r   )r   type_ro   rW   s       rb   r   r     s      ejj&&&2156	="\\44W==AAG
 ~	(	G
))+E7#gY?
@@@ > 	=\#a&#;<<<<	=  --  As   D%C. B0 B.	B0 AD(D
)D.B0 0
C+:!C&CC& C+!C. %D&C++C. .DDDD)8__doc__rv   r   telethon.errors.rpcerrorlistr   r   telethon.tl.functions.channelsr   telethon.tl.functions.contactsr   r   telethon.tl.typesr   r	   pyUltroid.dBr
   pyUltroid.dB.baser   pyUltroid.dB.gban_mute_dbr   r   r   r   r   r   r   pyUltroid.fns.toolsr   r   r   r   r   r   r   r   r   r   r   r   r   r    _inliner!   rO   re   listr   rc   r   r   r   r   r   r   r   r        rb   <module>r      s!  @  	 O ; G 3   (   J I   "  " -d+ (48hQ 9hQV '$7QP 8QPh &6< 7<~ _t4M 5M` -=R >Rj &6-B 7-B` %5T 6T> %5J 6JD '$7L 8L< 77B 2 ]#! $! _%$ &$Ar   