a  ze@s|ddlZddlZddlmZiZdZdgZejZGdddee Z dd Z d d Z e e ejd krxd dZe edS)N)aliasesz --unknown--*c@s eZdZdS)CodecRegistryErrorN)__name__ __module__ __qualname__r r F/opt/bitninja-python-dojo/embedded/lib/python3.9/encodings/__init__.pyr(srcCsft|trt|d}g}d}|D]:}|s4|dkrV|rF|rF|d||d}q d}q d|S)NasciiF._T) isinstancebytesstrisalnumappendjoin)encodingcharspunctcr r r normalize_encoding+s    rc Cspt|t}|tur|St|}t|p:t|dd}|durN||g}n|g}|D]@}|rXd|vrjqXztd|tdd}WntyYqX0qqXd}z |j }Wnt yd}Yn0|durdt|<dS|}t |t j s$dt|krdksntd|j|jft|drt|d r|d durRt|d r|d durnt|d rt|dkr|ddurt|drt|d kr|d durt|d std |j|jft|dks|ddur|ddt||jdd d f7}t j |}|t|<z |}Wnt yLYn 0|D]} | tvrR|t| <qR|S)Nr r z encodings.r)fromlistlevelz#module "%s" (%s) failed to registerrz'incompatible codecs in module "%s" (%s))N)_cacheget_unknownr_aliasesreplace __import__ _import_tail ImportError getregentryAttributeErrorrcodecs CodecInfolenrr__file__callablesplit getaliases) rentry norm_encodingaliased_encodingmodnamesmodnamemodr* codecaliasesaliasr r r search_functionFs                      (    r;win32cCsLz4ddl}d|}||kr2ddl}|jWSWntyFYn0dS)Nrzcp%s)_winapiZGetACPZencodings.mbcsmbcsr*r))rr=Zansi_code_page encodingsr r r _alias_mbcss  r@)r,sysrrr"r$r(r% LookupError SystemErrorrrr;registerplatformr@r r r r s U