
    PhB                       U d dl mZ d dlmZ  G d de      Z G d de      Zd+d,dZd	Zd
ZdZ	dZ
dZdZdZdZdZdZdZdZdZdZi dde
d	fdde	d	fdde
d	fdde
d	fdd e	d fd!d"e	d	d	d
ddddd#d$fd%d&e	d	d d	d
dddddd'd(d)
fd*d+e	d	fd,d-e	d	fd.d/e	d	fd0d1e	d	fd2d3ed	fd4d5ed	fd6d7ed	fd8d9ed	fd:d;e
d fd<d=e	d	fi d>d?e	d	fd@dAe
d	fdBdCe
d fdDdEe	d fdFdGe	d fdHdIed	fdJdKed	fdLdMe	d	d	d
dNfdOdPed	fdQdRed	fdSdTed	fdUdVe
d	fdWdXe
d	fdYdZe	d	fd[d\e	d fd]d^e
d	fd_d`e
d	fi dadbe	d	d	d
ddcfdddee	d
fdfdge	d fdhdied	fdjdked	fdldmed	fdndoed	fdpdqe	d	d	d
drfdsdted
fdudvedfdwdxe	d fdydze	d
fd{d|e
d	fd}d~e
d	fdde
d fdde
d fdde
d fi dde	d	fdded	fdde	d	fdde	d fdded	fdde	d fdde	d fdded fdded fdde	dfdded	fdde	d	fdde
d	fdde
d	fdde	d	fdde	d fdde	d fi dde
d fdde
d fdde
d fddedfdde	d
fdde	d	fddedfdded fdded	fdded	fdded fdde
d	fdded	fdde
d	fdded	fdded	fdde
d	fi dded	fdded	fdde
d	fdded	fdded fdde
d	fdde
d	fdde
d	fdded	fdded	fdde
d	fdded	fdded	fdded	fdded	fdded	fdded	fded	fded	fded	fded	fde	d	d d	dfded	fde
d fded	fdZded<   ded	fded	fde
d	fded	fdi d dedfd	ded
fd
dedfdded
fddedfdded	fdded	fddedfdd ed fdded
fdded
fdded	fdded
fdded	fdded
fdd	ed	fdd
ed
fded	fded fded
fdedfded
fdedfded
fded	fded
fded	fded fded fdedfde	d	fdded	fded	fddZi ddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5ddd6d7d8d9i d:d;d<d=d>d?ddd@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYi dZd[d\d]d^d_ddēd`dadbdcdddedfdgddƓdhdidjdkdldmdndodpdqdrdsdtdudvdwi dxdydzd{d|d}d~dddddddddddddddddddddȓddddddi ddddddddddddddddʓ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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ߐ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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 Zd!ed"<   i Zd#ed$<   i Zd%ed&<   d-d'Z e        i Zd(ed)<   h d*Zej=                  d       ej=                  d{       ej=                  d}       ej=                  d       y(.      )annotations)
NamedTuplec                  @    e Zd ZU ded<   ded<   ded<   ded<   ded<   y	)
_TagInfo
int | Nonevaluestrnametypelengthzdict[str, int]enumN)__name__
__module____qualname____annotations__     ^/mnt/c/Users/Administrator/Desktop/help_/test_env/lib/python3.12/site-packages/PIL/TiffTags.pyr   r      s    
I

r   r   c                  Z     e Zd ZU g Zded<   	 	 	 	 	 d	 	 	 	 	 	 	 	 	 	 	 d fdZddZ xZS )TagInfoz	list[str]	__slots__c           	     4    t         |   | |||||xs i       S N)super__new__)clsr   r
   r   r   r   	__class__s         r   r   zTagInfo.__new__#   s"     wsE4vtzrJJr   c                V    | j                   r| j                   j                  ||      S |S r   )r   get)selfr   s     r   cvt_enumzTagInfo.cvt_enum-   s$     /3iityy}}UE*BUBr   )NunknownNNN)r   r   r
   r	   r   r   r   r   r   zdict[str, int] | Nonereturnr   )r   r	   r#   z	int | str)r   r   r   r   r   r   r!   __classcell__)r   s   @r   r   r       sj    Iy !!&*KK K 	K
 K $K 
KCr   r   Nc                    |#|t         v rt         |   j                  |       nd}nt        j                  |       }|xs  t        | t        j                  | d            S )ah  
    :param tag: Integer tag number
    :param group: Which :py:data:`~PIL.TiffTags.TAGS_V2_GROUPS` to look in

    .. versionadded:: 8.3.0

    :returns: Taginfo namedtuple, From the ``TAGS_V2`` info if possible,
        otherwise just populating the value and name from ``TAGS``.
        If the tag is not recognized, "unknown" is returned for the name

    Nr"   )TAGS_V2_GROUPSr   TAGS_V2r   TAGS)taggroupinfos      r   lookupr,   4   sS     16.1H~e$((-d{{3973i 899r                           	   
                  NewSubfileType   SubfileType   
ImageWidth  ImageLength  BitsPerSample  Compressioni  )UncompressedzCCITT 1dzGroup 3 FaxzGroup 4 FaxLZWJPEGPackBits  PhotometricInterpretationi#  i|  )
WhiteIsZeroBlackIsZeroRGBzRGB PalettezTransparency MaskCMYKYCbCrCieLABCFA	LinearRaw  Threshholdingi  	CellWidthi	  
CellLength
  	FillOrder  DocumentNamei  ImageDescriptioni  Makei  Modeli  StripOffsets  Orientation  SamplesPerPixel  RowsPerStripi  StripByteCounts  MinSampleValue  MaxSampleValue  XResolution  YResolution  PlanarConfiguration)
ContiguousSeparatei  PageName  	XPosition  	YPositioni   FreeOffsetsi!  FreeByteCountsi"  GrayResponseUniti#  GrayResponseCurvei$  	T4Optionsi%  	T6Options(  ResolutionUnit)noneinchcm)  
PageNumber-  TransferFunctioni1  Softwarei2  DateTimei;  Artisti<  HostComputeri=  	Predictor)r   zHorizontal Differencingi>  
WhitePointi?  PrimaryChromaticities@  ColorMapA  HalftoneHintsB  	TileWidthC  
TileLengthiD  TileOffsetsiE  TileByteCountsJ  SubIFDsiL  InkSetM  InkNamesiN  NumberOfInksiP  DotRangeiQ  TargetPrinterR  ExtraSamplesS  SampleFormatT  SMinSampleValueU  SMaxSampleValueiV  TransferRangei[  
JPEGTablesi   JPEGProci  JPEGInterchangeFormati  JPEGInterchangeFormatLengthi  JPEGRestartIntervali  JPEGLosslessPredictorsi  JPEGPointTransformsi  JPEGQTablesi  JPEGDCTablesi	  JPEGACTablesi  YCbCrCoefficients  YCbCrSubSampling  YCbCrPositioning  ReferenceBlackWhitei  XMPi  	Copyrighti  IptcNaaInfoiI  PhotoshopInfoi  ExifIFDis  
ICCProfile%  
GPSInfoIFD   ExifVersioni\  ImageSourceData  InteroperabilityIFD  
CFAPatterni   
MPFVersioni  NumberOfImagesi  MPEntryi  ImageUIDListi  TotalFramesi  MPIndividualNumi  PanOrientationi  PanOverlap_Hi  PanOverlap_Vi  BaseViewpointNumi  ConvergenceAnglei  BaselineLengthi  VerticalDivergencei  AxisDistance_Xi	  AxisDistance_Yi
  AxisDistance_ZYawAngle
PitchAngle	RollAngleFlashPixVersionMakerNoteSafety)UnsafeSafeBestQualityScaleImageJMetaDataByteCountsImageJMetaData)i  i  i     i5  i\  i  i  zFdict[int, tuple[str, int, int] | tuple[str, int, int, dict[str, int]]]_tags_v2)r   r   r   r   GPSVersionIDGPSLatitudeRefGPSLatitudeGPSLongitudeRefGPSLongitudeGPSAltitudeRefGPSAltitudeGPSTimeStampGPSSatellites	GPSStatusGPSMeasureModeGPSDOPGPSSpeedRefGPSSpeed   GPSTrackRef   GPSTrackGPSImgDirectionRefGPSImgDirectionGPSMapDatumGPSDestLatitudeRefGPSDestLatitudeGPSDestLongitudeRefGPSDestLongitudeGPSDestBearingRefGPSDestBearingGPSDestDistanceRefGPSDestDistanceGPSProcessingMethodGPSAreaInformationGPSDateStampGPSDifferential)                                          InteropIndexInteropVersion)r-   r.   )r   r   r   i  zWang Annotationi  ExposureTimei  FNumberi  z
MD FileTagi  zMD ScalePixeli  zMD ColorTablei  z
MD LabNamei  zMD SampleInfoi  zMD PrepDatei  zMD PrepTimei  zMD FileUnitsi  ModelPixelScaleTagi~  zINGR Packet Data Tagi  zINGR Flag Registersi  zIrasB Transformation Matrixi  ModelTiepointTagi؅  ModelTransformationTagi  GeoKeyDirectoryTagi  GeoDoubleParamsTagi  GeoAsciiParamsTagi"  ExposureProgrami$  SpectralSensitivityi'  ISOSpeedRatingsi(  OECFi0  SensitivityTypei1  StandardOutputSensitivityi2  RecommendedExposureIndexi3  ISOSpeedi4  ISOSpeedLatitudeyyyi5  ISOSpeedLatitudezzzi\  zHylaFAX FaxRecvParamsi]  zHylaFAX FaxSubAddressi^  zHylaFAX FaxRecvTimei  DateTimeOriginali  DateTimeDigitizedi  ComponentsConfigurationi  CompressedBitsPerPixeli  ShutterSpeedValuei  ApertureValuei  BrightnessValuei  ExposureBiasValuei  MaxApertureValuei  SubjectDistancei  MeteringModei  LightSourcei	  Flashi
  FocalLengthi  SubjectAreai|  	MakerNotei  UserCommenti  SubSeci  SubSecTimeOriginali  SubsecTimeDigitizedr   i  
ColorSpacei  PixelXDimensioni  PixelYDimensioni  RelatedSoundFilei  FlashEnergyi  SpatialFrequencyResponsei  FocalPlaneXResolutioni  FocalPlaneYResolutioni  FocalPlaneResolutionUniti  SubjectLocationi  ExposureIndexi  SensingMethodi   
FileSourcei  	SceneTypei  CustomRenderedi  ExposureModei  WhiteBalancei  DigitalZoomRatioi  FocalLengthIn35mmFilmi  SceneCaptureTypei  GainControli  Contrasti	  
Saturationi
  	Sharpnessi  DeviceSettingDescriptioni  SubjectDistanceRangei   ImageUniqueIDi0  CameraOwnerNamei1  BodySerialNumberi2  LensSpecificationi3  LensMakei4  	LensModeli5  LensSerialNumberi  GDAL_METADATAi  GDAL_NODATAi   Gammai'  zOce Scanjob Descriptioni(  zOce Application Selectori)  zOce Identification Numberi*  zOce ImageLogic Characteristicsi  
DNGVersioni  DNGBackwardVersioni  UniqueCameraModeli  LocalizedCameraModeli  CFAPlaneColori  	CFALayouti  LinearizationTablei  BlackLevelRepeatDimi  
BlackLeveli  BlackLevelDeltaHi  BlackLevelDeltaVi  
WhiteLeveli  DefaultScalei  DefaultCropOrigini   DefaultCropSizei!  ColorMatrix1i"  ColorMatrix2i#  CameraCalibration1i$  CameraCalibration2i%  ReductionMatrix1i&  ReductionMatrix2i'  AnalogBalancei(  AsShotNeutrali)  AsShotWhiteXYi*  BaselineExposurei+  BaselineNoisei,  BaselineSharpnessi-  BayerGreenSpliti.  LinearResponseLimiti/  CameraSerialNumberi0  LensInfoi1  ChromaBlurRadiusi2  AntiAliasStrengthi4  DNGPrivateDataCalibrationIlluminant1CalibrationIlluminant2zAlias Layer Metadata)iZ  i[  i`  z dict[int | tuple[int, int], str]r(   zdict[int, TagInfo]r'   zdict[int, dict[int, TagInfo]]r&   c            
        t         j                         D ]X  \  } }|d   t        | <   t        |      dk(  r&|d   j                         D ]  \  }}|t        | |f<    t	        | g| t
        | <   Z t        j                         D ]:  \  }}|j                         D  ci c]  \  } }| t	        | g|  c}} t        |<   < y c c}} w )Nr   r0   r/   )r   itemsr(   lenr   r'   _tags_v2_groupsr&   )kvsksvr*   tagss         r   	_populater    s      $1A$Qq6Q;A$**, #B "aW# Q^^
$ ',,. Mt?Czz| Ltq!GANN!2 LuM Ls   Czdict[int, str]TYPES>(             r?   rA   rC   rE   rK   rU   rY   r[   ra   r   r   r   rc   re   rh   rj   rl   rn   rp   ru   rw   r   r   r   r   r   r   r   r   r   r   r   r   r   r=   r   )r)   intr*   r   r#   r   )r#   None)
__future__r   typingr   r   r   r,   BYTEASCIISHORTLONGRATIONALSIGNED_BYTE	UNDEFINEDSIGNED_SHORTSIGNED_LONGSIGNED_RATIONALFLOATDOUBLEIFDLONG8r   r   r  r(   r'   r&   r  r  LIBTIFF_COREremover   r   r   <module>r     sR  & # z Ch C(:@ 				
	
OT
D!	$OT-	"OT ,a	 OT -q	!	OT
 /5!	$OT 		
	
OT( #	!"	
	
)OTJ /5!	$KOTL +ua	 MOTN ,q	!OOTP +ua	 QOTR .%	#SOTT 
eQ	'UOTV &%	WOTX '5!	YOTZ .$	"[OT\ -	"]OT^ 
UA	&_OT` .$	"aOTb 
T1	%cOTd 
E1	%eOTf 
E1	%gOTh -1	%iOTj -1	%kOTl 
!+K	LmOTn *eQ	oOTp +x	#qOTr +x	#sOTt -q	!uOTv 
D!	$wOTx 
eQ	'yOTz 
ua	({OT| +tQ	}OT~ +tQ	OT@ 
E1q!1&E	FAOTB ,q	!COTD 
eQ	'EOTF *eQ	GOTH *eQ	IOTJ (E1	KOTL .%	#MOTN +ua!!J	KOOTP ,!	$QOTR 
!8Q	/SOTT *eQ	UOTV /5!	$WOTX +tQ	YOTZ ,a	 [OT\ -q	!]OT^ 
D!	$_OT` )T1	aOTb (E1	cOTd *eQ	eOTf .%	#gOTh *eQ	iOTj /5!	$kOTl .%	#mOTn .%	#oOTp 
VQ	'qOTr 
VQ	'sOTt /5!	$uOTv ,	1	%wOTz *eQ	{OT| 
!4	+}OT~ 
'q	1OT@ 
	*AOTB 
"E1	-COTD 
	*EOTF -q	!GOTH .$	"IOTJ .$	"KOTL 
x	+MOTN 
eQ	'OOTP 
eQ	'QOTR 
1	-SOTT %q	UOTV 
K"WOTX 
M9a(YOTZ 
OT1%[OT^ 
ItQ_OT` 
L)Q'aOTb 
L$"cOTd 
M9a(eOTf 
y!,gOTh 
!4+iOTj 
L)Q'kOTn 
L)Q'oOTp 
dA&qOTr 
Iy!$sOTt 
NIq)uOTv 
M4#wOTx 
tQ'yOTz 
dA&{OT| 
NHa(}OT~ 
NHa(OT@ 
a(AOTB 
3COTD 
h*EOTF 
 /15GOTH 
oq1IOTJ 
oq1KOTL 
oq1MOTN +/1-!,y!,uaAq)AB!,&a0i+]OT
P Of y!,!9a0%tQ/i+	 	ND!$ 	eQ'  	
M8Q'  	
ua(	 
 	
NHa(  	
dA&  	
M8Q'  	
NHa(  	
OUA&  	
K"  	ua(  	Xx#  	]E1%  	Z1%  	]E1%   	Z1%! " 	!5!,# $ !,E1%!5!,!,"E1-1- %+x+!5!,!,"Iq1!9a0UB'q)? D q)/?A.NOW,`N*N*N* 
	N*
 
>N* 
9N* 
<N* 
?N* 
?N* 
<N* 
?N* 
=N* 
=N* 
>N* 
N*  
=!N*" 
!#N*$ 
 %N*& 
('N*( 
)N** 
#+N*, 
?-N*. 
/N*0 
1N*2 
3N*4 
5N*6 
 7N*8 
9N*: 
6;N*< 
=N*> 
&?N*@ 
%AN*B 
:CN*D 
 EN*F 
 GN*H 
"IN*J 
"KN*L 
 MN*N 
=ON*P 
QN*R 
SN*T 
$UN*V 
#WN*X 
YN*Z 
[N*\ 
?]N*^ 
_N*` 
aN*b 
cN*d 
eN*f 
>gN*h 
=iN*j 
7kN*l 
=mN*n 
=oN*p 
;qN*r 
=sN*t 
8uN*v 
wN*x 
 yN*z 
{N*| 
<}N*~ 
N*@ 
AN*B 
CN*D 
 EN*F 
=GN*H 
%IN*J 
"KN*L 
"MN*N 
%ON*P 
QN*R 
?SN*T 
?UN*V 
<WN*X 
;YN*Z 
<[N*\ 
]N*^ 
>_N*` 
>aN*b 
cN*d 
"eN*f 
gN*h 
=iN*j 
:kN*l 
<mN*n 
;oN*p 
%qN*r 
!sN*t 
?uN*v 
wN*x 
yN*z 
{N*| 
:}N*~ 
;N*@ 
AN*B 
?CN*D 
=EN*F 
7GN*H 
$IN*J 
%KN*L 
&MN*N 
+ON*R 
<SN*T 
UN*V 
WN*X 
!YN*Z 
?[N*\ 
;]N*^ 
_N*` 
 aN*b 
<cN*d 
eN*f 
gN*h 
<iN*j 
>kN*l 
mN*n 
oN*p 
>qN*r 
>sN*t 
uN*v 
wN*x 
yN*z 
{N*| 
?}N*~ 
?N*@ 
?AN*B 
CN*D 
?EN*F 
GN*H 
IN*J 
 KN*L 
MN*N 
:ON*P 
QN*R 
SN*T 
UN*V $#![N*& N` !	  02- 2M 
 ~ h*X   C    C    C    C r   