
    _iF                        S SK Jr  S SKrS SKrS SKrS SKrS SKrS SKrSSKJ	r	  Sr
\
(       a  SSKJr       S	           S
S jjrSS jrg)    )annotationsN   )ImageF)ImageWinc           
     *	   UGc  [         R                  S:X  Ga  [        R                  " S5      u  pV[        R
                  " U5        S/nU(       a  US[        U5      /-  nO"U (       a  U u  ppUSU SU	 SX-
   SX-
   3/-  n[        R                  " USU/-   5        [        R                  " U5      nUR                  5         [        R                  " U5        U (       Ga,  U(       a  [        R                  " S5      u  pV[        R
                  " U5        [        R                  " SS[        U5      SSU/5        [        R                  " U5       nUR                  UR                  -
  S	:  nS S S 5        [        R                  " U5        W(       a,  U u  ppUR                  X-
  X-
  4[        S
 U  5       5      S9nOUR!                  U 5      nUR                  5         U$ UR                  W
W-
  WW	-
  45      nUR                  5         U$ U$ [         R                  S:X  a  Ub  Sn[        R"                  R%                  UUUb  ['        U5      OS5      u  nnn[        R(                  " SUUSSUS   S-  S-   S-  S5      nU (       a+  Uu  nnU u  ppUR!                  UU-
  U	U-
  U
U-
  UU-
  45      nU$ Un [        R"                  R*                  (       d  Sn[-        U5      e[        R"                  R/                  U5      u  nn[        R(                  " SUUSSUS   S-  S5      nU (       a  UR!                  U 5      nU$ ! , (       d  f       GN= f! [,         Ga.    UGc(  [         R                  S;  Ga  [0        R2                  " S5      (       a  SS/nO@[0        R2                  " S5      (       a  S/nO![0        R2                  " S5      (       a  / SQnOe [        R                  " S5      u  pV[        R
                  " U5        [        R                  " Xv/-   5        [        R                  " U5      nUR                  5         [        R                  " U5        U (       a%  UR!                  U 5      nUR                  5         Us $ Us $ e f = f)Ndarwinz.pngscreencapturez-lz-R,z-x-od   c              3  *   #    U  H	  oS -  v   M     g7f)   N ).0coords     I/var/www/html/land-ocr/venv/lib/python3.13/site-packages/PIL/ImageGrab.py	<genexpr>grab.<locals>.<genexpr>K   s     %BTEaiTs   )boxwin32r   RGBrawBGR   z$Pillow was built without XCB supportBGRX   r   )r   r   zgnome-screenshot-fgrim	spectacle)r!   z-nz-br   r   )sysplatformtempfilemkstemposclosestr
subprocesscallr   openloadunlinkwidthresizetuplecropcoregrabscreen_win32int	frombytesHAVE_XCBOSErrorgrabscreen_x11shutilwhich)bboxinclude_layered_windowsall_screensxdisplaywindowfhfilepathargslefttoprightbottomimim_no_shadowretina
im_cropped
im_resizedoffsetsizedatax0y0display_namemsgs                           r   grabrS   !   s    <<8##++F3LBHHRL#$Ds6{+++/(5$qQuzl!FJ<HIIOODD(#334H%BGGIIIh $,#3#3F#;LBHHRLOO($FT4R H-!#L,>,>!>!D .IIh' 3705%'YY"\6<8 %%BT%B B &/ &

 &(WWT]
HHJ%%!#EDL&3,+G!HJHHJ%%I\\W$! !&!<!<'%1Fq"FD$
 a1qB&	B B+/(5WWdRir52:v{KLI'L zz""8C#,ZZ..|<
d2 __UD$vtAw{ANB	] .-f  CLL8K$K||.//*D1f%%xk**<#++F3LBHHRLOOD:-.H%BGGIIIhWWT]

!!I-s&   M=AM 
MD1RRRc                    [         R                  S:X  at  [        R                  " / SQSS9n U R                  S:w  a  g SS Kn[        R                  " UR                  U R                  SS 5      5      n[        R                  " U5      $ [         R                  S:X  Ga  [        R                  R                  5       u  p2US	:X  a{  SS KnUR                  S
U5      S   nUS   S:X  a#  X%S  R!                  S5      R#                  S5      nO"X%S  R!                  S5      R#                  S5      nUS UR%                  S5       $ ['        U[(        5      (       aP  [        R                  " U5      nUS:X  a  SSKJn  UR/                  U5      $ US:X  a  SSKJn  UR3                  U5      $ g [4        R6                  " S5      (       a  Sn	O [4        R6                  " S5      (       a  Sn	OS n	[8        R:                  " S5      (       a  U	S;   a  / SQn
O3[8        R:                  " S5      (       a  U	S;   a  / SQn
OSn[=        U5      e[        R                  " U
SS9n U R                  S:w  aZ  U R>                  nS  H
  nX;   d  M
    g    U
S    S!3nU(       a$  US"URA                  5       R!                  5        3-  n[C        U5      e[        R                  " U R                  5      n[        R                  " U5      nURE                  5         U$ )#Nr   )	osascriptz-eu#   get the clipboard as «class PNGf»T)capture_outputr      r   fileI   mbcs zutf-16le pngr   )PngImagePluginDIB)BmpImagePluginWAYLAND_DISPLAYwaylandDISPLAYx11wl-paste)rd   N)rg   -timagexclip)rf   N)rj   z
-selection	clipboardrh   z	image/pngr   zDwl-paste or xclip is required for ImageGrab.grabclipboard() on Linux)s   Nothing is copieds   No selections"   No suitable type of content copieds    not availables   cannot convert s(   xclip: Error: There is no owner for the z errorz: )#r"   r#   r)   run
returncodebinasciiioBytesIO	unhexlifystdoutr   r+   r2   grabclipboard_win32structunpack_fromdecodesplitindex
isinstancebytesr^   r`   PngImageFilerb   DibImageFiler&   getenvr9   r:   NotImplementedErrorstderrstripChildProcessErrorr,   )prn   rN   fmtrt   ofilesr`   rb   session_typerB   rR   errsilent_errorrG   s                  r   grabclipboardr      sx   
||xNNF
 <<1zz(,,QXXb_=>zz$		 JJ224	&=""3-a0ABx1}R/55d;R
399$?*5;;r?++dE""::d#De|,%22488,%2248899&''$LYYy!! LL<<
##8I(I.D\\'""|}'DPDXC%c**NN45<<1((C!  &!  !WIV$CCIIK..0122#C((zz!((#ZZ
		    )NFFNN)r;   z tuple[int, int, int, int] | Noner<   boolr=   r   r>   z
str | Noner?   zint | ImageWin.HWND | NonereturnzImage.Image)r   zImage.Image | list[str] | None)
__future__r   ro   r&   r9   r)   r"   r$   r^   r   TYPE_CHECKINGr   rS   r   r   r   r   <module>r      s   " # 	 	   
   .2$))-n
*n!n n 	n
 'n nbNr   