
    z%i{                     6    	 d dl Z dddZi Zd Zd Zd	dZd Zy)
    Nzxml.dom.minidomzxml.dom.DOMImplementation)minidom4DOMc                     	 |t         | <   y )N)
registered)namefactorys     B/home/uftp/.pyenv/versions/3.12.0/lib/python3.12/xml/dom/domreg.pyregisterDOMImplementationr
      s     Jt    c                 B    	 |D ]  \  }}| j                  ||      r y y)Nr      )
hasFeature)domfeaturesfvs       r	   _good_enoughr       s.    L !~~a" r   c                 R   	 dd l }d }t        j                  |       }|rt        |i i dg      }|j	                         S | rt        |           S t        j                  j                  s'd|j                  v rt	        |j                  d         S t        |t              rt        |      }t
        j                         D ]  } |       }t        ||      s|c S  t        j                         D ]  }	 t	        |      }t        ||      s|c S  t#        d      # t         $ r Y 8w xY w)Nr   getDOMImplementation
PYTHON_DOM)r   z$no suitable DOM implementation found)oswell_known_implementationsget
__import__r   r   sysflagsignore_environmentenviron
isinstancestr_parse_feature_stringvaluesr   keys	ExceptionImportError)r   r   r   creatormodr   s         r	   r   r   '   s%   
C G
$
(
(
.C
b"'=&>?''))	$!!YY))lbjj.H#2::l+CDD (C (2$$& iX&J
 .224 	&g6C X&J <
==  		s   1D	D&%D&c                    g }| j                         }d}t        |      }||k  rR||   }|d   dv rt        d|      |dz   }d }||k  r||   }|d   dv r|dz   }|}|j                  ||f       ||k  rRt	        |      S )Nr   
0123456789zbad feature name: r   )splitlen
ValueErrorappendtuple)sr   partsilengthfeatureversionr   s           r	   r!   r!   R   s    HGGIE	AZF
f*(1:%w@AAEv:aAt|#E'*+ f* ?r   )N )r   r   r   r
   r   r   r!   r5   r   r	   <module>r6      s;   >   '  
	)>Vr   