Re@sddlZddlZddlZddlZddlmZerbddlmZmZm Z ej dfej dfej dfej dfejdfejd fejd fgZejd Zd d ZdS)N)MYPY_CHECK_RUNNING)ListTupleTextzutf-8zutf-16z utf-16-bez utf-16-lezutf-32z utf-32-bez utf-32-lescoding[:=]\s*([-\w.]+)cCsx@tD]8\}}|j|r|t|dj|SqWx|jdddD]r}|dddkr]tj|r]tj|}|dk st|jdjd}|j|Sq]W|jt j dpt j S) zCheck a bytes string for a BOM to correctly detect the encoding Fallback to locale.getpreferredencoding(False) like open() on Python3Ns r#asciiF) BOMS startswithlendecodesplit ENCODING_REsearchAssertionErrorgroupslocalegetpreferredencodingsysgetdefaultencoding)databomencodinglineresultr/builddir/build/BUILDROOT/alt-python35-pip-20.2.4-5.el8.x86_64/opt/alt/python35/lib/python3.5/site-packages/pip/_internal/utils/encoding.py auto_decodes! %r)codecsrrerpip._internal.utils.typingrtypingrrrBOM_UTF8 BOM_UTF16 BOM_UTF16_BE BOM_UTF16_LE BOM_UTF32 BOM_UTF32_BE BOM_UTF32_LEr compilerrrrrrs