grthtrhthjhtyjytjytkergtrhtrjytjerhrfh4:24 29/09/2026+ y¢å3þãó.€Rt^RIt^RIt^RIt^RIHtHtRt]PR29dR;t t M5]PR8XdRt Rt M^RIt]P!4t ] R 8Ht ] R39t R t Rt] 'dR t Rt.R4Owtttt]t]t]!]4!R R 44t^^€,^, tR5tR6tR7tR8tR9tR:tR;tR]PR8Xd]'])]+.t6M']PR8Xd.t6M] 'd]+.t6M]'](])]+]*.t6]PnR8Xd ]3.]6,t8M]PnR 8Xd ]4.]6,t8M]6t8Rs9R!t:Rs;R=R"ltR%t?Rs@R=R&ltARsB^sCR'tDR(tER>R)ltFR*tG]!!R+4tH]!!R,4tI]!!R-4tJ]!!R.4tK]!!R/4tL]!!R04tM]NR18Xd ]G!4R#R# ]2d Rt,Rt.Rt0Rt1ELi;i)?aœUUID objects (universally unique identifiers) according to RFC 4122/9562. This module provides immutable UUID objects (class UUID) and functions for generating UUIDs corresponding to a specific UUID version as specified in RFC 4122/9562, e.g., uuid1() for UUID version 1, uuid3() for UUID version 3, and so on. Note that UUID version 2 is deliberately omitted as it is outside the scope of the RFC. If all you want is a unique ID, you should probably call uuid1() or uuid4(). Note that uuid1() may compromise privacy since it creates a UUID containing the computer's network address. uuid4() creates a random UUID. Typical usage: >>> import uuid # make a UUID based on the host ID and current time >>> uuid.uuid1() # doctest: +SKIP UUID('a8098c1a-f86e-11da-bd1a-00112444be1e') # make a UUID using an MD5 hash of a namespace UUID and a name >>> uuid.uuid3(uuid.NAMESPACE_DNS, 'python.org') UUID('6fa459ea-ee8a-3ca4-894e-db77e160355e') # make a random UUID >>> uuid.uuid4() # doctest: +SKIP UUID('16fd2706-8baf-433b-82eb-8c7fada847da') # make a UUID using a SHA-1 hash of a namespace UUID and a name >>> uuid.uuid5(uuid.NAMESPACE_DNS, 'python.org') UUID('886313e1-3b8a-5372-9b90-0c9aee199e5d') # make a UUID from a string of hex digits (braces and hyphens ignored) >>> x = uuid.UUID('{00010203-0405-0607-0809-0a0b0c0d0e0f}') # convert a UUID to a string of hex digits in standard form >>> str(x) '00010203-0405-0607-0809-0a0b0c0d0e0f' # get the raw 16 bytes of the UUID >>> x.bytes b'\x00\x01\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f' # make a UUID from a 16-byte string >>> uuid.UUID(bytes=x.bytes) UUID('00010203-0405-0607-0809-0a0b0c0d0e0f') # get the Nil UUID >>> uuid.NIL UUID('00000000-0000-0000-0000-000000000000') # get the Max UUID >>> uuid.MAX UUID('ffffffff-ffff-ffff-ffff-ffffffffffff') N)ÚEnumÚ _simple_enumzKa-Ping Yee Úwin32ÚdarwinFÚlinuxTÚAIXó:ó.có"€]tRt^^t^tRtRtRtR#)ÚSafeUUIDN©éÿÿÿÿ)Ú__name__Ú __module__Ú __qualname__Ú__firstlineno__ÚsafeÚunsafeÚunknownÚ__static_attributes__r óÚ+/opt/alt/python314/lib64/python3.14/uuid.pyr r ^s†à €DØ €FØ„Grr có–a€]tRt^rtoRtR"tR#R]P/Rllt] R4t Rt Rt Rt R tR tR tR tR tRtRtRtRt]R4t]R4t]R4t]R4t]R4t]R4t]R4t]R4t]R4t ]R4t!]R4t"]R4t#]R4t$]R4t%]R 4t&R!t'Vt(R#)$ÚUUIDaã Instances of the UUID class represent UUIDs as specified in RFC 4122. UUID objects are immutable, hashable, and usable as dictionary keys. Converting a UUID to a string with str() yields something in the form '12345678-1234-1234-1234-123456789abc'. The UUID constructor accepts five possible forms: a similar string of hexadecimal digits, or a tuple of six integer fields (with 32-bit, 16-bit, 16-bit, 8-bit, 8-bit, and 48-bit values respectively) as an argument named 'fields', or a string of 16 bytes (with all the integer fields in big-endian order) as an argument named 'bytes', or a string of 16 bytes (with the first three fields in little-endian order) as an argument named 'bytes_le', or a single 128-bit integer as an argument named 'int'. UUIDs have these read-only attributes: bytes the UUID as a 16-byte string (containing the six integer fields in big-endian byte order) bytes_le the UUID as a 16-byte string (with time_low, time_mid, and time_hi_version in little-endian byte order) fields a tuple of the six integer fields of the UUID, which are also available as six individual attributes and two derived attributes. Those attributes are not always relevant to all UUID versions: The 'time_*' attributes are only relevant to version 1. The 'clock_seq*' and 'node' attributes are only relevant to versions 1 and 6. The 'time' attribute is only relevant to versions 1, 6 and 7. time_low the first 32 bits of the UUID time_mid the next 16 bits of the UUID time_hi_version the next 16 bits of the UUID clock_seq_hi_variant the next 8 bits of the UUID clock_seq_low the next 8 bits of the UUID node the last 48 bits of the UUID time the 60-bit timestamp for UUIDv1/v6, or the 48-bit timestamp for UUIDv7 clock_seq the 14-bit sequence number hex the UUID as a 32-character hexadecimal string int the UUID as a 128-bit integer urn the UUID as a URN as specified in RFC 4122/9562 variant the UUID variant (one of the constants RESERVED_NCS, RFC_4122, RESERVED_MICROSOFT, or RESERVED_FUTURE) version the UUID version number (1 through 8, meaningful only when the variant is RFC_4122) is_safe An enum indicating whether the UUID has been generated in a way that is safe for multiprocessing applications, via uuid_generate_time_safe(3). Úis_safeNc óz€WW4V.PR4^8wd \R4hVeEM}VemVPRR4PRR4pVPR4PRR4p\ V4^ 8wd \ R4h\ V^4pEM Ve•\ V4^8wd \ R 4h\V\4'gQ\V44hV^RR1,V^^R1,,V^^R1,,VR ,,p\ PV4pEMuVeY\ V4^8wd \ R 4h\V\4'gQ\V44h\ PV4pEMVEe\ V4^8wd \ R 4hVwr‰p r¼p ^Tu;8:dR8gM\ R 4h^T u;8:dR8gM\ R4h^T u;8:dR8gM\ R4h^T u;8:dR8gM\ R4h^T u;8:dR8gM\ R4h^T u;8:dR8gM\ R4hV ^,V ,pV^`,V ^P,,V ^@,,V^0,,V ,p^Tu;8:d \8:gM\ R4hVeB^Tu;8:d^8:gM\ R4hV\,pVR,pWV^L,,p\PVRV4\PVRV4R#)aŒCreate a UUID from either a string of 32 hexadecimal digits, a string of 16 bytes as the 'bytes' argument, a string of 16 bytes in little-endian order as the 'bytes_le' argument, a tuple of six integers (32-bit time_low, 16-bit time_mid, 16-bit time_hi_version, 8-bit clock_seq_hi_variant, 8-bit clock_seq_low, 48-bit node) as the 'fields' argument, or a single 128-bit integer as the 'int' argument. When a string of hex digits is given, curly braces, hyphens, and a URN prefix are all optional. For example, these expressions all yield the same UUID: UUID('{12345678-1234-5678-1234-567812345678}') UUID('12345678123456781234567812345678') UUID('urn:uuid:12345678-1234-5678-1234-567812345678') UUID(bytes='\x12\x34\x56\x78'*4) UUID(bytes_le='\x78\x56\x34\x12\x34\x12\x78\x56' + '\x12\x34\x56\x78\x12\x34\x56\x78') UUID(fields=(0x12345678, 0x1234, 0x5678, 0x12, 0x34, 0x567812345678)) UUID(int=0x12345678123456781234567812345678) Exactly one of 'hex', 'bytes', 'bytes_le', 'fields', or 'int' must be given. The 'version' argument is optional; if given, the resulting UUID will have its variant and version set according to RFC 4122, overriding the given 'hex', 'bytes', 'bytes_le', 'fields', or 'int'. is_safe is an enum exposed as an attribute on the instance. It indicates whether the UUID has been generated in a way that is safe for multiprocessing applications, via uuid_generate_time_safe(3). NzGone of the hex, bytes, bytes_le, fields, or int arguments must be givenzurn:Úzuuid:z{}Ú-z$badly formed hexadecimal UUID stringz bytes_le is not a 16-char stringºéNNzbytes is not a 16-char stringzfields is not a 6-tuplez*field 1 out of range (need a 32-bit value)z*field 2 out of range (need a 16-bit value)z*field 3 out of range (need a 16-bit value)z*field 4 out of range (need an 8-bit value)z*field 5 out of range (need an 8-bit value)z*field 6 out of range (need a 48-bit value)z*int is out of range (need a 128-bit value)zillegal version numberìÚintrr liéì)ÚcountÚ TypeErrorÚreplaceÚstripÚlenÚ ValueErrorÚint_Ú isinstanceÚbytes_ÚreprÚ from_bytesÚ _UINT_128_MAXÚ_RFC_4122_CLEARFLAGS_MASKÚobjectÚ __setattr__)ÚselfÚhexÚbytesÚbytes_leÚfieldsr!ÚversionrÚtime_lowÚtime_midÚtime_hi_versionÚclock_seq_hi_variantÚ clock_seq_lowÚnodeÚ clock_seqs&&&&&&&$ rÚ__init__Ú UUID.__init__²sí€ð@ ˜¨#Ð .× 4Ñ 4°TÓ :¸aÔ ?Üð=ó>ð >à Š?Ù Ø Š_Ø—+‘+˜f bÓ)×1Ñ1°'¸2Ó>ˆCØ—)‘)˜D“/×)Ñ)¨#¨rÓ2ˆCÜ�3‹x˜2Œ~Ü Ð!GÓHÐHÜ�s˜B“-ŠCØ Ò !Ü�8‹} Ô"Ü Ð!CÓDÐDܘh¬×/Ò/Ð ?´°h³Ó ?Ð/ؘc˜g 2˜gÕ&¨°#°c¸"°*Õ)=Õ=ؘc # b˜jÕ)õ*Ø,4°R­Lõ9ˆEä—/‘/ %Ó(ŠCØ Ò Ü�5‹z˜RÔÜ Ð!@ÓAÐAܘe¤V×,Ò,Ð 9¬d°5«kÓ 9Ð,Ü—/‘/ %Ó(ŠCØ Ó Ü�6‹{˜aÔÜ Ð!:Ó;Ð;à:@ñ 8ˆX Ø !°$ؘÖ, GÖ,Ü Ð!MÓNÐNؘÖ, GÖ,Ü Ð!MÓNÐNؘÖ3¨7Ö3Ü Ð!MÓNÐNØÐ,Ö7°Ö7Ü Ð!MÓNÐNؘ Ö0¨Ö0Ü Ð!MÓNÐNؘÖ( Ö(Ü Ð!MÓNÐNØ-°Õ2°mÕCˆIØ •N x°2¥~Õ6Ø# rÕ)õ+Ø.7¸2­oõ?ØAEõFˆCà�CÖ(œ=Ö(ÜÐIÓJÐ JØ Ò Ø˜Ö$ 1Ö$Ü Ð!9Ó:Ð:à Ô,Õ ,ˆCà Ð(Õ (ˆCà ˜b•=Õ ˆCÜ×ј4 ¨Ô,Ü×ј4 ¨GÖ4rc óò€^Tu;8:d \8:gMQ\V44h\PV4p\P VRV4\P VR\ P 4V#)z9Create a UUID from an integer *value*. Internal use only.r!r)r/r-r1Ú__new__r2r r)ÚclsÚvaluer3s&& rÚ _from_intÚUUID._from_int s]€ð�EÖ*œ]Ö*Ð7¬D°«KÓ7Ð*Ü�~‰~˜cÓ"ˆÜ×ј4 ¨Ô.Ü×ј4 ¬H×,<Ñ,<Ô=؈ rcó’€RVP/pVP\P8wdVPPVR&V#)r!r)r!rr rrE)r3Úds& rÚ __getstate__ÚUUID.__getstate__s<€Ø �D—H‘HÐ ˆØ �<‰<œ8×+Ñ+Ô +ð Ÿ<™<×-Ñ-ˆAˆi‰L؈rcóÊ€\PVRVR,4\PTRRV9d\VR,44R#\P4R#)r!rN)r1r2r r)r3Ústates&&rÚ __setstate__ÚUUID.__setstate__sQ€Ü×ј4 ¨¨e­ Ô5ä×ј4 à'¨5Ô0ô$ E¨)Õ$4Ó5ö Hä6>×6FÑ6Fö Hrcól€\V\4'dVPVP8H#\#©N©r+rr!ÚNotImplemented©r3Úothers&&rÚ__eq__Ú UUID.__eq__#ó(€Ü �eœT× "Ò "Ø—8‘8˜uŸy™yÑ(Ð (ÜÐrcól€\V\4'dVPVP8#\#rQrRrTs&&rÚ__lt__Ú UUID.__lt__+ó(€Ü �eœT× "Ò "Ø—8‘8˜eŸi™iÑ'Ð 'ÜÐrcól€\V\4'dVPVP8„#\#rQrRrTs&&rÚ__gt__Ú UUID.__gt__0r\rcól€\V\4'dVPVP8*#\#rQrRrTs&&rÚ__le__Ú UUID.__le__5rXrcól€\V\4'dVPVP8¬#\#rQrRrTs&&rÚ__ge__Ú UUID.__ge__:rXrcó,€\VP4#rQ)Úhashr!©r3s&rÚ__hash__Ú UUID.__hash__?s€Ü�D—H‘H‹~Ðrcó€VP#rQ©r!rhs&rÚ__int__Ú UUID.__int__Bs €Ø�x‰xˆrcóP€VPP: R\V4: R2#)Ú(Ú))Ú __class__rÚstrrhs&rÚ__repr__Ú UUID.__repr__Es€ØŸ>™>×2Ô2´C¸¶IÐ>Ð>rcó€\R4h)zUUID objects are immutable)r%)r3ÚnamerEs&&&rr2ÚUUID.__setattr__Hs€ÜÐ4Ó5Ð5rc ó€€VPpVR, RVR, RVR, RVR, RVR, 2 #):NrNr:ré N:rzéN:r{éN:r|NN)r4)r3Úxs& rÚ__str__Ú UUID.__str__KsB€Ø �H‰HˆØ�B•%�˜˜!˜D�'˜ ! A e¥H :¨Q¨q°­x¨j¸¸!¸C½&¸ÐBÐBrcó8€VPP^4#)r{)r!Úto_bytesrhs&rr5Ú UUID.bytesOs€à�x‰x× Ñ  Ó$Ð$rcó’€VPpV^RR1,V^^R1,,V^^R1,,VR,,#)éNrr ©r5)r3r5s& rr6Ú UUID.bytes_leSsI€à— ‘ ˆØ�c�g˜2�g•  s¨3¨r zÕ!2Õ2°U¸3¸sÀ2¸:Õ5FÕFØ�b• õð rcóŠ€VPVPVPVPVPVP 3#rQ)r9r:r;r<r=r>rhs&rr7Ú UUID.fieldsYs:€à— ‘ ˜tŸ}™}¨d×.BÑ.BØ×)Ñ)¨4×+=Ñ+=¸t¿y¹yðJð Jrcó(€VP^`, #)é`rlrhs&rr9Ú UUID.time_low^s€à�x‰x˜2�~Ðrcó6€VP^P, R,#)éPéÿÿrlrhs&rr:Ú UUID.time_midbó€à—‘˜B• &Õ(Ð(rcó6€VP^@, R,#)é@rŽrlrhs&rr;ÚUUID.time_hi_versionfr�rcó6€VP^8, ^ÿ,#)é8rlrhs&rr<ÚUUID.clock_seq_hi_variantjó€à—‘˜B• $Õ&Ð&rcó6€VP^0, ^ÿ,#)é0rlrhs&rr=ÚUUID.clock_seq_lownr—rcóÀ€VP^8XdVVP^`, pVP^@, R,pV^,VP^ ,,V,#VP^8XdVP^P, #VP^@, R,pVP^`, pV^0,VP^ ,,V,#)ééÿ)r8r!r:)r3Útime_hiÚtime_los& rÚtimeÚ UUID.timers¢€à �<‰<˜1Ô à—h‘h "•nˆGØ—x‘x 2•~¨Õ/ˆGؘb•= D§M¡M°RÕ$7Õ8¸7ÕBÐ BØ �\‰\˜QÔ à—8‘8˜r•>Ð !ð —x‘x 2•~¨Õ/ˆGØ—h‘h "•nˆGؘb•= D§M¡M°RÕ$7Õ8¸7ÕBÐ BrcóX€VP^?,^,VP,#)é?)r<r=rhs&rr?ÚUUID.clock_seq…s(€à×+Ñ+¨dÕ2°qÕ8Ø×"Ñ"õ#ð $rcó(€VPR,#)ìÿÿÿrlrhs&rr>Ú UUID.nodeŠs€à�x‰x˜.Õ(Ð(rcó6€VPP4#rQ)r5r4rhs&rr4ÚUUID.hexŽs€à�z‰z�~‰~ÓÐrcó&€R\V4,#)z urn:uuid:)rsrhs&rÚurnÚUUID.urn’s€àœS ›YÕ&Ð&rcóÈ€VPR,'g\#VPR,'g\#VPR,'g\#\#)i€r ll)r!Ú RESERVED_NCSÚRFC_4122ÚRESERVED_MICROSOFTÚRESERVED_FUTURErhs&rÚvariantÚ UUID.variant–sF€à�x‰x˜<×(Ô(ÜÐ Ø—‘˜\×*Ô*܈OØ—‘˜\×*Ô*Ü%Ð %ä"Ð "rcóv€VP\8Xd$\VP^L, ^,4#R#)éLN)r²r¯r!rhs&rr8Ú UUID.version¡s-€ð �<‰<œ8Ô #ܘŸ™ B�¨#Õ-Ó.Ð .ñ $rr )r!rÚ __weakref__)NNNNNN))rrrrÚ__doc__Ú __slots__r rr@Ú classmethodrFrJrNrVrZr^rardrirmrtr2r~Úpropertyr5r6r7r9r:r;r<r=r r?r>r4r«r²r8rÚ__classdictcell__)Ú __classdict__s@rrrrsªø‡€ñ;ðz2€IñW5à"*×"2Ñ"2õW5ðrñóðòòHòòò ò ò ò òò?ò6òCðñ%óð%ðñóðð ñJóðJðñóððñ)óð)ðñ)óð)ðñ'óð'ðñ'óð'ðñCóðCð$ñ$óð$ðñ)óð)ðñ óð ðñ'óð'ðñ#óð#ðñ/óö/rrcóh€^RIp^RIp^RIp^RIpVPP RVP 4PVP4pVPRR.4VPWPPV4R7pVfR#\VP4pRVR&VR 8wdV.VO5pMV3pVPVVPVPVR7p V 'gR#V P!4wr«VP#V 4# \$TP&3dR#i;i) éNÚPATHz/sbinz /usr/sbin)ÚpathÚCÚLC_ALL)ÚstdoutÚstderrÚenv)r)ÚioÚosÚshutilÚ subprocessÚenvironÚgetÚdefpathÚsplitÚpathsepÚextendÚwhichÚjoinÚdictÚPopenÚPIPEÚDEVNULLÚ communicateÚBytesIOÚOSErrorÚSubprocessError) ÚcommandÚargsrÇrÈrÉrÊÚ path_dirsÚ executablerÆÚprocrÄrÅs &* rÚ_get_command_stdoutrà¨s€ß%×%ðØ—J‘J—N‘N 6¨2¯:©:Ó6×<Ñ<¸R¿Z¹ZÓHˆ Ø×ј' ;Ð/Ô0Ø—\‘\ '· ± ·±À Ó0J�\ÓKˆ Ø Ò Ùô�2—:‘:ӈ؈ˆH‰ à �5Œ=Ø!Ð) DÑ)‰Gà!�mˆGØ×Ñ Ø'1§¡Ø'1×'9Ñ'9Ø$'ð ó)ˆ÷ÙØ×)Ñ)Ó+‰ˆØ�z‰z˜&Ó!Ð!øÜ �Z×/Ñ/Ð 0ôÚðús’BDÂADÃ3"DÄD1Ä0D1có€VR,'*#)élr ©Úmacs&rÚ _is_universalråÖs€Ø�w•Ô Ð rcóÒ€\W4pVfR#RpVF«pVP4P4P4p\ \ V44FdpWx,V9gKWs!V4,p \ V P\R4^4p \V 4'dV uu#T;'gT pKf K­ T;'gR# \\3dKŒi;i)aƒSearches a command's output for a MAC address near a keyword. Each line of words in the output is case-insensitively searched for any of the given keywords. Upon a match, get_word_index is invoked to pick a word from the line, given the index of the match. For example, lambda i: 0 would get the first word on the line, while lambda i: i - 1 would get the word preceding the keyword. Nr) ràÚlowerÚrstriprÎÚranger(r!r&Ú _MAC_DELIMrår)Ú IndexError) rÛrÜÚkeywordsÚget_word_indexrÄÚfirst_local_macÚlineÚwordsÚiÚwordräs &&&& rÚ_find_mac_near_keywordróÚsÔ€ô! Ó /€FØ ‚~Ùà€Oۈؗ ‘ “ ×#Ñ#Ó%×+Ñ+Ó-ˆÜ”s˜5“zÖ"ˆAØ�x˜8Ö#ð =Ø  °Ó!2Õ3�DܘdŸl™l¬:°sÓ;¸RÓ@�Cô% S×)Ò)Ø"œ Ø&5×&<Ð&<¸’Oó#ñð$ × "Ð "˜dÐ"øô#¤JÐ/ôò ð úsÁ,.CÃC&Ã%C&cóê€VP\4p\V4^8wdR#\'dV\;QJdRV4F 'dK RM RM !RV44'gR#RP RV44pMM\;QJdRV4F 'dK RM RM !RV44'gR#RP V4p\ V^4# \dR#i;i)rœNc3ó`"€TF$p^\V4u;8*;'d^8*Mux€K& R#5i)râN©r(©Ú.0Úparts& rÚ Ú_parse_mac.. s$é€Ð9±5¨4�1œ˜D› ×&Ô& Q×&Ñ&³5ùs‚,.FTrc3óD"€TFqP^R4x€K R#5i)éó0N)Úrjustr÷s& rrúrûsé€Ð@¹%°$Ÿ*™* Q¨×-Ð-»%ùs‚ c3ó>"€TFp\V4^8Hx€K R#5i)rýNrör÷s& rrúrûsé€Ð4©e d”3�t“9 –>«eùs‚)rÎrêr(Ú_MAC_OMITS_LEADING_ZEROESÚallrÒr!r))ròÚpartsÚhexstrs& rÚ _parse_macrýs´€ð �J‰J”zÓ "€EÜ ˆ5ƒz�Q„Ùß Ó ÷ ‹sÑ9±5Ó9�s�sŠsÑ9±5Ó9×9Ò9Ù Ø—‘Ñ@¹%Ó@Ó@‰ç‹sÑ4©eÓ4�s�sŠsÑ4©eÓ4×4Ò4Ù Ø—‘˜%“ˆðÜ�6˜2‹ÐøÜ ôÚðúsà C#Ã# C2Ã1C2có¬€\W4pVfR#VP4P4P4pVP V4pRpTFXpTP4P4pY…,p \T 4p T fK;\T 4'dT u#TeKVT pKZ T# \ dR#i;i \ dK~i;i)aLooks for a MAC address under a heading in a command's output. The first line of words in the output is searched for the given heading. Words at the same word index as the heading in subsequent lines are then examined to see if they look like MAC addresses. N) ràÚreadlinerèrÎÚindexr)rërrå) rÛrÜÚheadingrÄrìÚ column_indexrîrïrðròräs &&& rÚ_find_mac_under_headingr s×€ô! Ó /€FØ ‚~Ùà�‰Ó ×'Ñ'Ó)×/Ñ/Ó1€HðØ—~‘~ gÓ.ˆ ð€Oۈؗ ‘ “ ×#Ñ#Ó%ˆð ØÕ&ˆDô˜ÓˆØ Š;Ù Ü ˜× Ò ØŠJØ Ô "Ø!ŠOñð Ðøô' ôÚðûôô Ú ð ús#¿B2Á6CÂ2 CÃCà CÃCcóP€RpRFp\RWR4pV'gKVu# R#)z5Get the hardware address on Unix by running ifconfig.Úifconfigcó€V^,#©râr ©rñs&rÚÚ#_ifconfig_getnode..Ds€È1ÈQÎ3rN)shwaddrsethersaddress:slladdr)rz-az-av©ró)rìrÜräs rÚ_ifconfig_getnoder?s0€ð=€HÛ!ˆÜ$ Z°ÁÓOˆß ‰3ØŠJñ"ñ rcó:€\RRR.R4pV'dV#R#)z/Get the hardware address on Unix by running ip.ÚipÚlinks link/ethercó€V^,#rr rs&rrÚ_ip_getnode..Ls€È!ÈAÎ#rNrrãs rÚ _ip_getnoderIs!€ô !  v° ¨Á Ó N€Cß Øˆ Ù rcó¬€^RIp^RIp\VR4'gR#VPVP 44p\ RRTP!T4.R4pT'dT#\ RRTP!T4.R4pT'dT#\ RRTP!RT,4.R4pT'dT#R# \ dR#i;i) z0Get the hardware address on Unix by running arp.NÚ gethostbynameÚarpz-ancó€R#)râr r rs&rrÚ_arp_getnode..\s€ÑQSrcó€V^,#rr rs&rrras €ÐQRÐSTÖQTrz(%s)có€V^,#)rýr rs&rrrgs€˜a žcr)rÈÚsocketÚhasattrrÚ gethostnamerÙróÚfsencode)rÈr"Úip_addrräs rÚ _arp_getnoder'QsÆ€çÜ �6˜?× +Ò +ÙðØ×&Ñ& v×'9Ñ'9Ó';Ó<ˆô ! ¨°· ² ¸GÓ0DÐ/EÁ|Ó T€Cß Øˆ ô ! ¨°· ² ¸GÓ0DÐ/EÁ}Ó U€Cß Øˆ ô ! ¨°· ² ¸FÀWÕ.ps€Érrr rrÚ_lanscan_getnoder,ms€ô " )¨U°W°I¹{Ó KÐKrcó€\RRR4#)z4Get the hardware address on Unix by running netstat.Únetstatz-iansAddress)r r rrÚ_netstat_getnoder/rs€ô # 9¨f°jÓ AÐArÚgenerate_time_safeÚ UuidCreatecó~€\'d1\'d#\4wr\VR7P#R#R#)zBGet the hardware address on Unix using the _uuid extension module.r…N)Ú_generate_time_safeÚ_has_stable_extractable_noderr>)Ú uuid_timeÚ_s rÚ _unix_getnoder7…s1€çÓ×;Ó;Ü*Ó,‰ ˆ ܘ)Ô$×)Ñ)Ð)ñ <Ñrcóz€\'d/\'d!\4p\VR7P#R#R#)zEGet the hardware address on Windows using the _uuid extension module.)r6N)Ú _UuidCreater4rr>)Ú uuid_bytess rÚ_windll_getnoder;‹s,€çƒ{×3Ó3Ü “]ˆ ܘZÔ(×-Ñ-Ð-ñ4�{rcób€\P\P!^44R,#)zGet a random node ID.l©r!r.rÈÚurandomr rrÚ_random_getnoder?‘s €ô �>‰>œ"Ÿ*š* Q›-Ó (¨GÕ 4Ð4rÚposixÚntcóö€\e\#\\.,F4pV!4s\fK^\u;8:dR8gK*\u#K6 QRP\44h KW;i)aGet the hardware address as a 48-bit positive integer. The first time this runs, it may launch a separate program, which could be quite slow. If all attempts to obtain the hardware address fail, we choose a random 48-bit number with its eighth bit set to 1 as recommended in RFC 4122. z,_random_getnode() returned invalid value: {}r#)Ú_nodeÚ_GETTERSr?Úformat)Úgetters rÚgetnoderG¾sq€ô Ò܈ äœoÐ.×.Ð.ˆð Ù“HˆEô Ô  A¬Ö$:°'×$:ÜŠLò%;ñ /ðOÐ@×GÑGÌÓNÓNˆ5øð  Ú ús ¥A3Á3A8có8€\e2Yu;Jdf(MM$\4wr#\V4p\ W$R7#\ P !4pV^d,R,p\eV\8:d\^,pVsVf^RIpVP^4pVR,pV^ , R,p V^0, R,p V^ÿ,p V^, ^?,p Vf \4p\ W‰V WËV3^R7# \d\PpLêi;i)aGenerate a UUID from a host ID, sequence number, and the current time. If 'node' is not given, getnode() is used to obtain the hardware address. If 'clock_seq' is given, it is used as the sequence number; otherwise a random 14-bit sequence number is chosen.N)r5rì@'Hw� ìÿÿrŽr�)r7r8) r3r r)rrr Útime_nsÚ_last_timestampÚrandomÚ getrandbitsrG) r>r?r5Úsafely_generatedrÚ nanosecondsÚ timestamprMr9r:r;r=r<s && rÚuuid1rRÖs€ôÒ&¨4×+DÓ+DÜ&9Ó&;Ñ#ˆ ð 'ÜÐ/Ó0ˆGô˜)Ô5Ð5ô—,’,“.€Kð˜sÕ"Ð%7Õ7€IÜÒ" y´OÔ'CÜ# aÕ'ˆ Ø€OØÒÛØ×&Ñ& rÓ*ˆ ؘ:Õ%€HؘR• 6Õ)€HØ  B•¨&Õ0€OØ Õ$€MØ%¨�N¨dÕ2ÐØ ‚|Ü‹yˆÜ ˜¨OØ,¸TðCØLMô OðOøô-ô 'Ü×&Ñ&ŠGð 'ús£ C;Ã;DÄDcó:€\V\4'd \VR4p^RIpVP VPV,RR7p\ P VP44pV\,pV\,p\PV4#)zAGenerate a UUID from the MD5 hash of a namespace UUID and a name.úutf-8NF©Úusedforsecurity) r+rsr5ÚhashlibÚmd5r!r.Údigestr0Ú_RFC_4122_VERSION_3_FLAGSrrF)Ú namespacerwrWÚhÚ int_uuid_3s&& rÚuuid3r^ûsr€ä�$œ×ÒÜ�T˜7Ó#ˆÛØ� ‰ �I—O‘O dÕ*¸Eˆ ÓB€AÜ—‘ §¡£ Ó+€JØÔ+Õ+€JØÔ+Õ+€JÜ �>‰>˜*Ó %Ð%rcó²€\P\P!^44pV\,pV\ ,p\ PV4#)zGenerate a random UUID.)r!r.rÈr>r0Ú_RFC_4122_VERSION_4_FLAGSrrF)Ú int_uuid_4s rÚuuid4rbs=€ä—‘¤§ ¢ ¨2£Ó/€JØÔ+Õ+€JØÔ+Õ+€JÜ �>‰>˜*Ó %Ð%rcóH€\V\4'd \VR4p^RIpVP VPV,RR7p\ P VP4R,4pV\,pV\,p\PV4#)zCGenerate a UUID from the SHA-1 hash of a namespace UUID and a name.rTNFrU:Nr{N) r+rsr5rWÚsha1r!r.rYr0Ú_RFC_4122_VERSION_5_FLAGSrrF)r[rwrWr\Ú int_uuid_5s&& rÚuuid5rg sv€ä�$œ×ÒÜ�T˜7Ó#ˆÛØ� ‰ �Y—_‘_ tÕ+¸Uˆ ÓC€AÜ—‘ §¡£ ¨3¥Ó0€JØÔ+Õ+€JØÔ+Õ+€JÜ �>‰>˜*Ó %Ð%rcóÒ€^RIpVP!4pV^d,R,p\eV\8:d\^,pVsVf^RIpVP ^4pV^ , R,pVR,pVR,pVf \ 4pV^P,p W—^@,,p W˜^0,,p W�R,,p V \ ,p \PV 4#)aXSimilar to :func:`uuid1` but where fields are ordered differently for improved DB locality. More precisely, given a 60-bit timestamp value as specified for UUIDv1, for UUIDv6 the first 48 most significant bits are stored first, followed by the 4-bit version (same position), followed by the remaining 12 bits of the original 60-bit timestamp. NrIr¦r�iÿ?) r rKÚ_last_timestamp_v6rMrNrGÚ_RFC_4122_VERSION_6_FLAGSrrF) r>r?r rPrQrMÚtime_hi_and_midrŸÚclock_sÚ int_uuid_6s && rÚuuid6rnsÖ€óØ—,’,“.€Kð˜sÕ"Ð%7Õ7€IÜÒ%¨)Ô7IÔ*IÜ&¨Õ*ˆ Ø"ÐØÒÛØ×&Ñ& rÓ*ˆ Ø  B•Ð*:Õ:€Oؘ&Õ €Gؘ&Õ €GØ ‚|Ü‹yˆð! BÕ&€JؘR•-Õ€JؘR•-Õ€JØÐ)Õ)Õ)€JàÔ+Õ+€JÜ �>‰>˜*Ó %Ð%rcóŒ€\P\P!^ 44pV^ , R,pVR,pW3#)é lÿÿÿrJr=)ÚrandÚcounterÚtails rÚ_uuid7_get_counter_and_tailrtCs8€Ü �>‰>œ"Ÿ*š* R›.Ó )€Dà�r�z˜_Õ,€Gà �+Õ €DØ ˆ=Ðrcó\€\P!4pVR,p\e V\8”d\4wr#MkV\8d\^,p\^,pVR8”dV^, p\4wr#M)\ P \P!^44pVR,pV^, pVR,pVR,pVR,pV^P,pW†^@,,pW‡^ ,,pWƒ,pV\,p\PV4p VsVsV #)z‚Generate a UUID from a Unix timestamp in milliseconds and random bits. UUIDv7 objects feature monotonicity within a millisecond. i@Blÿÿÿr¦r�iÿÿÿ?rJ) r rKÚ_last_timestamp_v7rtÚ_last_counter_v7r!r.rÈr>Ú_RFC_4122_VERSION_7_FLAGSrrF) rPÚ timestamp_msrrrsÚ unix_ts_msÚ counter_msbsÚ counter_hiÚ counter_loÚ int_uuid_7Úress rÚuuid7r€Ls€ô*—,’,“.€KØ )Õ+€LäÒ! \Ô4FÔ%FÜ3Ó5‰ ˆ�à Ô,Ô ,Ü-°Õ1ˆLä" QÕ&ˆØ �_Ô $à ˜AÕ ˆLÜ7Ó9‰MˆG�Tô—>‘>¤"§*¢*¨Q£-Ó0ˆDàÐ 0Õ0€Jؘb•=€Là Õ&€Jà˜;Õ&€Jð ˆKÕ€Dà˜rÕ!€JØ Õ"Õ"€JØ Õ"Õ"€JØÕ€JàÔ+Õ+€JÜ �.‰.˜Ó $€Cð&ÐØÐØ €JrcóF€Vf^RIpVP^04pVf^RIpVP^ 4pVf^RIpVP^>4pVR,^P,pWAR,^@,,pWBR,,pV\,p\P V4#)aGenerate a UUID from three custom blocks. * 'a' is the first 48-bit chunk of the UUID (octets 0-5); * 'b' is the mid 12-bit chunk (octets 6-7); * 'c' is the last 62-bit chunk (octets 8-15). When a value is not specified, a pseudo-random value is generated. Nr¦r�lÿÿÿÿ)rMrNÚ_RFC_4122_VERSION_8_FLAGSrrF)ÚaÚbÚcrMÚ int_uuid_8s&&& rÚuuid8r‡Œs•€ð ‚yÛØ × Ñ ˜rÓ "ˆØ‚yÛØ × Ñ ˜rÓ "ˆØ‚yÛØ × Ñ ˜rÓ "ˆØÐ&Õ&¨2Õ-€JØ�u•9 Õ#Õ#€JØÐ+Õ+Õ+€JàÔ+Õ+€JÜ �>‰>˜*Ó %Ð%rcó"€R\R\R\R\R\R\ R\ /pR'pR\R \R \R \/p^R I pVPVPR RR7pVPRRVP4RRR7VPRRRRP!V4 R2RR7VPRRRR7VPRR R!\"^R"R#7VP%4pWP&,pVP(pVP*pVP&V9dzV'd V'g VP-R$VP& R%24Wr9d W',pM \/V4p\3VP44Fp \7V!Wx44K R #\3VP44Fp \7V!44K R # \0d,p TP-T R&TP(: 24R p ? LŽR p ? ii;i)(z$Run the uuid command line interface.rRr^rbrgrnr€r‡z@dnsz@urlz@oidz@x500Nz1Generate a UUID using the selected UUID function.T)Úformatter_classÚ descriptionÚcolorz-uz--uuidzfunction to generate the UUID)ÚchoicesÚdefaultÚhelpz-nz --namespacez {any UUID,Ú,Ú}zUuuid3/uuid5 only: a UUID, or a well-known predefined UUID addressed by namespace name)ÚmetavarrŽz-Nz--namez:uuid3/uuid5 only: name used as part of generating the UUID)rŽz-Cz--countÚNUMzgenerate NUM fresh UUIDs)r‘Útyper�rŽzIncorrect number of arguments. zO requires a namespace and a name. Run 'python -m uuid -h' for more information.z: )r^rg)rRr^rbrgrnr€r‡Ú NAMESPACE_DNSÚ NAMESPACE_URLÚ NAMESPACE_OIDÚNAMESPACE_X500ÚargparseÚArgumentParserÚArgumentDefaultsHelpFormatterÚ add_argumentÚkeysrÒr!Ú parse_argsÚuuidr[rwÚerrorrr)rér$Úprint) Ú uuid_funcsÚuuid_namespace_funcsÚ namespacesr˜ÚparserrÜÚ uuid_funcr[rwÚexcr6s rÚmainr§¦s €ð ”ؔؔؔؔؔؔð€Jð.Ðà” Ø” Ø” Ø”ð €JóØ × $Ñ $Ø ×>Ñ>ØGØð%ó€Fð  ×ј˜hØ *§¡Ó 1Ø 'Ø<ðô>ð ×ј˜mØ"-¨c¯h©h°zÓ.BÐ-CÀ2Ð Fð,ðô-ð  ×ј˜hðCðôDð ×ј˜i°¼SÈ!Ø7ðô9ð × Ñ Ó €DØŸ9™9Õ%€IØ—‘€IØ �9‰9€Dà ‡y�yÐ(Ô(ß§Ø �L‰LØ1Ø—9‘9�+ð@ð@ô ð Ô "Ø"Õ-‰Ið ;Ü  ›O� ô�t—z‘zÖ"ˆAÜ ‘)˜IÓ,Ö -ó#ô�t—z‘zÖ"ˆAÜ ‘)“+Ö ó#øô ô ;Ø— ‘  ˜u B t§~¡~Ñ&8Ð9×:Ñ:ûð ;úsÅ0 GÇ HÇ#!H È Hz$6ba7b810-9dad-11d1-80b4-00c04fd430c8z$6ba7b811-9dad-11d1-80b4-00c04fd430c8z$6ba7b812-9dad-11d1-80b4-00c04fd430c8z$6ba7b814-9dad-11d1-80b4-00c04fd430c8z$00000000-0000-0000-0000-000000000000z$ffffffff-ffff-ffff-ffff-ffffffffffffÚ__main__>ÚwasirrÚ emscripten)ÚLinuxÚAndroid)zreserved for NCS compatibilityzspecified in RFC 4122z$reserved for Microsoft compatibilityzreserved for future definitionlúÿÿÿ llll l ll)NN)NNN)Or¸rÈÚsysr ÚenumrrÚ __author__ÚplatformÚ_AIXÚ_LINUXÚsystemÚ_platform_systemrêrr®r¯r°r±r!r*r5r,r r/r0Ú_RFC_4122_VERSION_1_FLAGSrZr`rerjrxr‚rràrårórr rrr'r,r/Ú_uuidÚgetattrr3Úhas_stable_extractable_noder4r9Ú ImportErrorr7r;r?Ú _OS_GETTERSrwrDrCrGrLrRr^rbrgrirnrvrwrtr€r‡r§r”r•r–r—ÚNILÚMAXrr rrÚr½sõðñ8ót Û Û ç#ð+€ ð‡<�<Ð<Ô<ØÐ€D‰6؇\�\�WÔØ €FØ �DãØ—’Ó(ÐØ 5Ñ(€DØÐ#7Ñ7€Fà € Ø!Ðߨ€JØ $Ðò?NÑ;€ ˆhÐ*¨Oð €Ø €ñˆdÓ÷ðóðð �c•˜Q•€ à>Ðà7ÐØ7ÐØ7ÐØ7ÐØ7ÐØ7ÐØ7Ð÷s/ñs/òl ò\!ò #òFò8!òLòòò8Lò Bð ÛÙ! %Ð)=¸tÓDÐØ#(×#DÑ#DÐ Ù˜% ¨tÓ4€Kò*ò .ò 5÷0 ØÐ 1Ð2�K؇\�\�XÔØ$ lÐ4DÐE�K؇\�\�WÔà�Kß Ø#Ð$�Kà$ k°<Ø#Ð%5ð7€Kà‡7�7ˆgÔØˆ Õ,�H؇W�W�„_ØÐ  ;Õ.�Hà€Hà €òOð,€ô#OòJ &ò&ò &ðÐô"&ðJÐØÐòò=ô@&ò4?ñHÐ;Ó<€ ÙÐ;Ó<€ ÙÐ;Ó<€ ÙÐ<Ó=€ñ Ð 1Ó2€Ù Ð 1Ó2€à ˆzÔÙ†Fñøðm ôØ €EØÐØ#(Р؃Kð úsÃ$HÈHÈH