+
    in                       R t ^ RIHt ^ RIHt ^ RIt]P                  ! R4      tRRRRR	R
RRRRRR
RRRR/tRRRRR	RRRRRRRRRRR/t	RRR
RRR/t
 ! R R]! R. RO4      4      tR R lt]! ^^^R4      t]P                  4       tR# )zMeta related things.)annotations)
namedtupleNz(?x)
    (?P<major>\d+)(?:\.(?P<minor>\d+))?(?:\.(?P<micro>\d+))?
    (?:(?P<type>a|b|rc)(?P<pre>\d+))?
    (?:\.post(?P<post>\d+))?
    (?:\.dev(?P<dev>\d+))?
    .dev z
.dev-alphaaz	.dev-betab.dev-candidatercalphabeta	candidatefinalz2 - Pre-Alphaz	3 - Alphaz4 - Betaz5 - Production/Stablec                  r   a  ] tR t^(tRtRR V 3R llltR R ltR R ltR R	 ltR
 R lt	R R lt
RtV ;t# )Versiona  
Get the version (PEP 440).

A biased approach to the PEP 440 semantic version.

Provides a tuple structure which is sorted for comparisons `v1 > v2` etc.
  (major, minor, micro, release type, pre-release build, post-release build, development release build)
Release types are named in is such a way they are comparable with ease.
Accessors to check if a development, pre-release, or post-release build. Also provides accessor to get
development status for setup files.

How it works (currently):

- You must specify a release type as either `final`, `alpha`, `beta`, or `candidate`.
- To define a development release, you can use either `.dev`, `.dev-alpha`, `.dev-beta`, or `.dev-candidate`.
  The dot is used to ensure all development specifiers are sorted before `alpha`.
  You can specify a `dev` number for development builds, but do not have to as implicit development releases
  are allowed.
- You must specify a `pre` value greater than zero if using a prerelease as this project (not PEP 440) does not
  allow implicit prereleases.
- You can optionally set `post` to a value greater than zero to make the build a post release. While post releases
  are technically allowed in prereleases, it is strongly discouraged, so we are rejecting them. It should be
  noted that we do not allow `post0` even though PEP 440 does not restrict this. This project specifically
  does not allow implicit post releases.
- It should be noted that we do not support epochs `1!` or local versions `+some-custom.version-1`.

Acceptable version releases:

```
Version(1, 0, 0, "final")                    1.0
Version(1, 2, 0, "final")                    1.2
Version(1, 2, 3, "final")                    1.2.3
Version(1, 2, 0, ".dev-alpha", pre=4)        1.2a4
Version(1, 2, 0, ".dev-beta", pre=4)         1.2b4
Version(1, 2, 0, ".dev-candidate", pre=4)    1.2rc4
Version(1, 2, 0, "final", post=1)            1.2.post1
Version(1, 2, 3, ".dev")                     1.2.3.dev0
Version(1, 2, 3, ".dev", dev=1)              1.2.3.dev1
```

c               8    V ^8  d   QhRRRRRRRRRRRRR	RR
R/# )   majorintminormicroreleasestrprepostdevreturnr    )formats   "[/Users/mibo/.openclaw/workspace/.venv-ak/lib/python3.14/site-packages/soupsieve/__meta__.py__annotate__Version.__annotate__S   s^     &R &R&R&R'*&R58&R &R  &R +.&R 
	&R    c           
       < WW5V3 F+  p\        V\        4      '       d
   V^ 8  d   K"  \        R4      h	  V\        9  d   \        RV R24      hRTu;8  d   R8  d=   M M9V^ 8X  d   \        R4      hV'       d   \        R4      hV'       d   \        R4      hMZVR	8  d.   VR
8  d   V^ 8X  d   \        R4      hV'       d   \        R4      hM&V'       d   \        R4      hV'       d   \        R4      h\        S	V `  WW#WEWg4      # )zValidate version info.z6All version parts except 'release' should be integers.'z' is not a valid release type.r   r   z"Implicit pre-releases not allowed.z%Version is not a development release.z0Post-releases are not allowed with pre-releases.r
   r   z!Implicit pre-release not allowed.zVersion is not a pre-release.)
isinstancer   
ValueErrorREL_MAPsuper__new__)
clsr   r   r   r   r   r   r   value	__class__s
   &&&&&&&& r   r(   Version.__new__S   s    E5Euc**uz !YZZ 6 '!q	)GHII g//ax !EFF !HII !STT  wC1H !DEE !STT 
  !@AA !HIIws5tQQr!   c                   V ^8  d   QhRR/# r   r   boolr   )r   s   "r   r   r    {   s     " " "r!   c                2    \        V P                  ^ 8  4      # )zIs prerelease.)r/   r   selfs   &r   _is_preVersion._is_pre{   s     DHHqL!!r!   c                   V ^8  d   QhRR/# r.   r   )r   s   "r   r   r       s     , , ,r!   c                2    \        V P                  R8  4      # )zIs development.r
   )r/   r   r1   s   &r   _is_devVersion._is_dev   s     DLL7*++r!   c                   V ^8  d   QhRR/# r.   r   )r   s   "r   r   r       s     # #$ #r!   c                2    \        V P                  ^ 8  4      # )zIs post.)r/   r   r1   s   &r   _is_postVersion._is_post   s     DIIM""r!   c                   V ^8  d   QhRR/# r   r   r   r   )r   s   "r   r   r       s     ( ( (r!   c                0    \         V P                  ,          # )zGet development status string.)
DEV_STATUSr   r1   s   &r   _get_dev_statusVersion._get_dev_status   s     $,,''r!   c                   V ^8  d   QhRR/# r>   r   )r   s   "r   r   r       s       r!   c                   V P                   ^ 8X  d   V P                   RV P                   2pM(V P                   RV P                   RV P                    2pV P                  4       '       d-   V\        V P
                  ,           V P                   2,          pV P                  4       '       d   VRV P                   2,          pV P                  4       '       d   VRV P                   2,          pV# )z Get the canonical output string..z.postr   )r   r   r   r3   r&   r   r   r;   r   r7   r   )r2   vers   & r   _get_canonicalVersion._get_canonical   s     ::?ZZL$**.CZZL$**Qtzzl;C<<>>gdll+,TXXJ77C==??U499+&&C<<>>T$(($$C
r!   r   )r       rI   rI   )__name__
__module____qualname____firstlineno____doc__r(   r3   r7   r;   rA   rG   __static_attributes____classcell__)r+   s   @r   r   r   (   s4    (T&R &RP"
,
#
(
 r!   r   c                    V ^8  d   QhRRRR/# )r   rF   r   r   r   r   )r   s   "r   r   r      s      A  As  Aw  Ar!   c           	     Z   \         P                  V 4      pVf   \        RV  R24      h\        VP	                  R4      4      pVP	                  R4      '       d   \        VP	                  R4      4      M^ pVP	                  R4      '       d   \        VP	                  R4      4      M^ pVP	                  R4      '       d8   \
        VP	                  R4      ,          p\        VP	                  R4      4      pMRp^ pVP	                  R	4      '       d   VP	                  R	4      M^ pVP	                  R	4      '       d/   \        VP	                  R	4      4      pV'       d
   R
V,           MRpM^ pVP	                  R4      '       d   \        VP	                  R4      4      M^ p\        W#WEWhV4      # )z.Parse version into a comparable Version tuple.r#   z' is not a valid versionr   r   r   typer   r   r   z.dev-r   r   )RE_VERmatchr%   r   groupPRE_REL_MAPr   )	rF   mr   r   r   r   r   r   r   s	   &        r   parse_versionrY      sF    	SAy1SE!9:;;  !E%&WWW%5%5C !1E%&WWW%5%5C !1E 	wwvaggfo.!''%.! GGENN!''%.Cwwu~~!''%.!'*'G# $%776??3qwwvD5C@@r!   )r   r   r   r   r   r   r   )rN   
__future__r   collectionsr   recompilerT   r&   r@   rW   r   rY   __version_info__rG   __version__r   r!   r   <module>r`      s     " " 		
 B#dS
CR	 O/o[
J$	
 GS&$<vj$`a vr AF 1aG, --/r!   