2bi @ % S SK r S SKrS SKrS SKrS SKJrJr \ R S4\ R S4\ R S4\ R S4\ R S4\ R S4\ R S 4/r\\\\4 \S
' \R$ " S5 rS\S
\4S jrg) N)ListTuplezutf-8zutf-16z utf-16-bez utf-16-lezutf-32z utf-32-bez utf-32-leBOMSs coding[:=]\s*([-\w.]+)datareturnc * [ H: u pU R U5 ( d M U [ U5 S R U5 s $ U R S5 SS Hw nUSS S:X d M [
R
U5 ( d M* [
R
U5 nUc eUR 5 S R S5 nU R U5 s $ U R [ R " S5 =( d [ R " 5 5 $ ) zCheck a bytes string for a BOM to correctly detect the encoding
Fallback to locale.getpreferredencoding(False) like open() on Python3N
r #asciiF)r
startswithlendecodesplitENCODING_REsearchgroupslocalegetpreferredencodingsysgetdefaultencoding)r bomencodinglineresults ڎ/builddir/build/BUILDROOT/alt-python313-pip-23.3.1-3.el8.x86_64/opt/alt/python313/lib/python3.13/site-packages/pip/_internal/utils/encoding.pyauto_decoder s
??3C
#**844
5!"1%!9!3!3D!9!9 ''-F%%%}}q)009H;;x(( & ;;##E*Fc.D.D.F )codecsr rer typingr r BOM_UTF8 BOM_UTF16BOM_UTF16_BEBOM_UTF16_LE BOM_UTF32BOM_UTF32_BEBOM_UTF32_LEr bytesstr__annotations__compiler r r r