
    vKgM              
         S SK Jr  S SKrS SKrS SKrS SKrS SKrS SKrS SK	r	S SK
r
S SKrS SKJr  S SKJr  S SKJr  S SKrS SKrS SKJr  S SKrS SKJrJr  S SKJr  S S	KJr  S S
KJ r   1 Skr!1 Skr"SS1r#Sr$\$SS0S.\%RM                  \"\#-  S5      E\" S5      SS.\" S5      SS0S.\" S5      SSS.\" S5      SSSS.S.SSS00S.\" S 5      SSS!.S".\" S#5      S$S%.S&.r'\
R                  S':w  a  \" S(5      S)S*S+.\'S,'   S- r(S. r)\RT                  " S/S09S1 5       r+\RT                  S2 5       r,S3 r-S4 r.S5r/S6 r0S7 r1S8 r2\Rf                  Ri                  S9S:S;S<\$Rk                  S=S>5      4/5      S? 5       r6S@ r7SA r8SB r9SCr:SDr;\Rf                  Ry                  SE5      SF 5       r=SG r>\Rf                  Ri                  SH\?" \R                  R                  5       5      \?" \R                  5      SI9SJ 5       rBSK rCSL rDSM rESN rFSO rGSP rHSQ rISR rJSS rK\Rf                  Ri                  STSUSV/5      \Rf                  R                  \R                  " 5       SW:g  SXSY9SZ 5       5       rNS]S[ jrOS\ rPg)^    )annotationsN)suppress)cleandoc)ZipFile)tags)bdist_wheelget_abi_tag)Distribution)SetuptoolsDeprecationWarning)	run_setup>   dummy_dist-1.0.dist-info/WHEELdummy_dist-1.0.dist-info/RECORD!dummy_dist-1.0.dist-info/METADATA&dummy_dist-1.0.dist-info/top_level.txt>
   NOTICEAUTHORSCOPYINGLICENCELICENSE
COPYING.md
NOTICE.rstAUTHORS.txtLICENCE.txtLICENSE.txtzLICENSE~zAUTHORS~zQfrom setuptools import setup

setup(
    name='dummy_dist',
    version='1.0',
)
	DUMMYFILE )setup.pylicensesu  
            from setuptools import setup

            setup(
                name="simple.dist",
                version="0.1",
                description="A testing distribution ☃",
                extras_require={"voting": ["beaglevote"]},
            )
            )r   
simpledistui  
            from setuptools import setup

            setup(
                name="complex-dist",
                version="0.1",
                description="Another testing distribution ☃",
                long_description="Another testing distribution ☃",
                author="Illustrious Author",
                author_email="illustrious@example.org",
                url="http://example.org/exemplary",
                packages=["complexdist"],
                setup_requires=["setuptools"],
                install_requires=["quux", "splort"],
                extras_require={"simple": ["simple.dist"]},
                entry_points={
                    "console_scripts": [
                        "complex-dist=complexdist:main",
                        "complex-dist2=complexdist:main",
                    ],
                },
            )
            __init__.pyzdef main(): return)r   complexdistz
            from setuptools import setup

            setup(
                name="headers.dist",
                version="0.1",
                description="A distribution with headers",
                headers=["header.h"],
            )
            )r   zheadersdist.pyzheader.hak  
            from setuptools import setup

            setup(
                name="testrepo",
                version="0.1",
                packages=["mypackage"],
                description="A test package with commas in file names",
                include_package_data=True,
                package_data={"mypackage.data": ["*"]},
            )
            )r    z	1,2,3.txt)r    data	mypackage)r   r#   ztestrepo-0.1.0u  
            from setuptools import setup

            setup(
                name="unicode.dist",
                version="0.1",
                description="A testing distribution ☃",
                packages=["unicodedist"],
                zip_safe=True,
            )
            )r       åäö_日本語.py)r   unicodedistu   
            [metadata]
            name = utf8-metadata-dist
            version = 42
            author_email = "John X. Ãørçeč" <john@utf8.org>, Γαμα קּ 東 <gama@utf8.org>
            long_description = file: README.rst
               UTF-8 描述 説明)	setup.cfgz
README.rst)
dummy-distzsimple-distzcomplex-distzheaders-distzcommasinfilenames-distzunicode-distzutf8-metadata-distwin32u  
            from setuptools import Extension, setup

            setup(
                name="extension.dist",
                version="0.1",
                description="A testing distribution ☃",
                ext_modules=[
                    Extension(
                        name="extension", sources=["extension.c"], py_limited_api=True
                    )
                ],
            )
            z![bdist_wheel]
py_limited_api=cp32z5#define Py_LIMITED_API 0x03020000
#include <Python.h>)r   r'   extension.czabi3extension-distc                    [         R                  R                  S5      (       a
  [        SSS9O[	        SS05      nUR                  5         [        U5      nU R                  5        H  u  p4[        X#U5        M     UR                  5         U$ )zHRun command in the same process so that it is easier to collect coverager   init)
stop_afterscript_namez%%build_meta%%)
ospathexistsr   r
   parse_config_filesr   itemssetattrfinalize_options)kwargsdist_objcmdattrvalues        a/var/www/highfloat_scraper/venv/lib/python3.13/site-packages/setuptools/tests/test_bdist_wheel.pybdist_wheel_cmdr<      s{     77>>*%% 	*0=*:;< 
 !
h
C||~5! &J    c                    U R                  U5      n[        R                  R                  [        U   [        U5      S9  U$ )N)prefix)mktempjaracor0   buildEXAMPLESstr)tmp_path_factorynamebasedirs      r;   	mkexamplerH      s6    %%d+G
KKhtnS\:Nr=   session)scopec                   U R                  S5      nU R                  S5      n[         Hr  n[        X5      nX-  n[        R                  R                  5       R                  U5         [        [        U5      [        U5      S9R                  5         S S S 5        Mt     [        S UR                  S5       5       5      $ ! , (       d  f       M  = f)NrB   dist	bdist_dirdist_dirc              3  6   #    U H  n[        U5      v   M     g 7fN)rD   ).0fnames     r;   	<genexpr>wheel_paths.<locals>.<genexpr>   s     A*@#e***@s   z*.whl)r@   rC   rH   rA   r0   DirectoryStackcontextr<   rD   runsortedglob)rE   
build_baserO   rF   example_dir	build_dirs         r;   wheel_pathsr^      s    !((1J&&v.H 07%	[['')11+>c)ns8}MQQS ?>  A(--*@AAA ?>s   (+C  
C	c                    [        U S5      $ )Nr(   )rH   )rE   s    r;   
dummy_distr`      s    %|44r=   c                    [        S U  5       5      n[        U5      R                  5        H  nSUR                  ;  a  M   e   g)z0Make sure entry point scripts are not generated.c              3  4   #    U H  nS U;   d  M  Uv   M     g7f)complex_distN rR   r0   s     r;   rT   "test_no_scripts.<locals>.<genexpr>        G$0F   		z.data/scripts/N)nextr   infolistfilename)r^   r0   entrys      r;   test_no_scriptsrm      s;    GGGD'')u~~555 *r=   c                    [        S U  5       5      n[        U5       nUR                  S5      nS S S 5        SR                  5       W;   d   eg ! , (       d  f       N%= f)Nc              3  4   #    U H  nS U;   d  M  Uv   M     g7f)zunicode.distNrd   re   s     r;   rT   &test_unicode_record.<locals>.<genexpr>   rg   rh   z!unicode.dist-0.1.dist-info/RECORDr$   )ri   r   readencode)r^   r0   zfrecords       r;   test_unicode_recordru      sP    GGGD	"<= 
 !'')V333 
s   A
Au   Metadata-Version: 2.1
Name: helloworld
Version: 42
Author-email: "John X. Ãørçeč" <john@utf8.org>, Γαμα קּ 東 <gama@utf8.org>


UTF-8 描述 説明
c                P   U R                  U5        US-  nUS-  nUR                  5         US-  R                  [        SS9  US-  R	                  5          " S S[
        5      nU" 5       nUR                  X#5        US	-  R                  SS9nS
U;   d   eSU;   d   eSU;   d   eg )Nzdummy_dist.egg-infodummy_dist.dist-infozPKG-INFOutf-8encodingzdependency_links.txtc                  .    \ rS rSrSrS r\S 5       rSrg);test_preserve_unicode_metadata.<locals>.simpler_bdist_wheeli  z1Avoid messing with setuptools/distutils internalsc                    g rQ   rd   selfs    r;   __init__Dtest_preserve_unicode_metadata.<locals>.simpler_bdist_wheel.__init__  s    r=   c                    / $ rQ   rd   r~   s    r;   license_pathsItest_preserve_unicode_metadata.<locals>.simpler_bdist_wheel.license_paths  s    Ir=   rd   N)	__name__
__module____qualname____firstlineno____doc__r   propertyr   __static_attributes__rd   r=   r;   simpler_bdist_wheelr|     s    ?	 
	 
	r=   r   METADATAu"   Author-email: "John X. Ãørçeč"u   Γαμα קּ 東 r&   )chdirmkdir
write_textUTF8_PKG_INFOtouchr   egg2dist	read_text)monkeypatchtmp_pathegginfodistinfor   cmd_objmetadatas          r;   test_preserve_unicode_metadatar     s    h..G00HMMOz%%mg%F%%,,.k  "#GW':%00'0BH/8;;;(*** H,,,r=   c                8   UR                  U 5        [        [        U5      S9R                  5         [	        S5       n[
         Vs1 sH  nSU-   iM
     nn[        UR                  5       5      [        U-  :X  d   e S S S 5        g s  snf ! , (       d  f       g = f)NrN   $dist/dummy_dist-1.0-py3-none-any.whldummy_dist-1.0.dist-info/)	r   r<   rD   rX   r   DEFAULT_LICENSE_FILESsetnamelistDEFAULT_FILES)r`   r   r   wfrS   license_filess         r;   test_licenses_defaultr   '  s    j!c(m,002	7	8B=R
=RE'%/=R 	 
 2;;=!]]%BBBB	 
9	8
 
9	8s   	BB(BB
Bc                B   U R                  S5      R                  SSS9  UR                  U 5        [        [	        U5      S9R                  5         [        S5       nS1n[        UR                  5       5      [        U-  :X  d   e S S S 5        g ! , (       d  f       g = f)Nr'   z*[metadata]
license_file=licenses/DUMMYFILErx   ry   r   r   z"dummy_dist-1.0.dist-info/DUMMYFILE
joinpathr   r   r<   rD   rX   r   r   r   r   )r`   r   r   r   r   s        r;   test_licenses_deprecatedr   1  s    $//5 0  j!c(m,002	7	8B=>2;;=!]]%BBBB 
9	8	8s   *B
B)config_fileconfig)r'   z-[metadata]
license_files=licenses/*
  LICENSE)r'   z,[metadata]
license_files=licenses/*, LICENSEr   )z2  license_files=['licenses/DUMMYFILE', 'LICENSE'])c                n   U R                  U5      R                  USS9  UR                  U 5        [        [	        U5      S9R                  5         [        S5       nS Vs1 sH  nSU-   iM
     nn[        UR                  5       5      [        U-  :X  d   e S S S 5        g s  snf ! , (       d  f       g = f)Nrx   ry   r   r   >   r   r   r   r   )r`   r   r   r   r   r   rS   r   s           r;   test_licenses_overrider   >  s     $///Ij!c(m,002	7	8B=U
=UE'%/=U 	 
 2;;=!]]%BBBB	 
9	8
 
9	8s   B&!B!/(B&!B&&
B4c                6   U R                  S5      R                  SSS9  UR                  U 5        [        [	        U5      S9R                  5         [        S5       n[        UR                  5       5      [        :X  d   e S S S 5        g ! , (       d  f       g = f)Nr'   z[metadata]
license_files=
rx   ry   r   r   r   )r`   r   r   r   s       r;   test_licenses_disabledr   V  sz    $//& 0  j!c(m,002	7	8B2;;=!]222 
9	8	8s   $B


Bc                   UR                  U 5        [        [        U5      SS9R                  5         [	        S5       n[        UR                  5       5      nSU;   d   eSU;   d   e S S S 5        g ! , (       d  f       g = f)N2rN   build_numberz&dist/dummy_dist-1.0-2-py3-none-any.whlr   r   )r   r<   rD   rX   r   r   r   )r`   r   r   r   	filenamess        r;   test_build_numberr   `  sj    j!c(m#>BBD	9	:b&	0I===2i??? 
;	:	:s   *A22
B c                   UR                  U 5        [        R                  " [        SS9   [	        [        U5      SS9R                  5         S S S 5        [        R                  R                  S5      (       d   eg ! , (       d  f       N5= f)Nz.*universal is deprecatedmatchT)rN   	universalz(dist/dummy_dist-1.0-py2.py3-none-any.whl)
r   pytestwarnsr   r<   rD   rX   r/   r0   r1   )r`   r   r   s      r;   test_universal_deprecatedr   i  sc    j!	2:U	V#h-4@DDF 
W 77>>DEEEE	 
W	Vs   "A<<
B
a&  #include <Python.h>

static PyMethodDef methods[] = {
  { NULL, NULL, 0, NULL }
};

static struct PyModuleDef module_def = {
  PyModuleDef_HEAD_INIT,
  "extension",
  "Dummy extension module",
  -1,
  methods
};

PyMODINIT_FUNC PyInit_extension(void) {
  return PyModule_Create(&module_def);
}
u   from __future__ import annotations

from setuptools import Extension, setup

setup(
    name="extension.dist",
    version="0.1",
    description="A testing distribution ☃",
    ext_modules=[Extension(name="extension", sources=["extension.c"])],
)
zEonce:Config variable '.*' is unset.*, Python ABI tag may be incorrectc                <   UR                  S5      nUS-  R                  [        SS9  US-  R                  [        SS9  UR	                  S5      nUR	                  S5      nU R                  U5        [        [        U5      [        U5      S9R                  5         g	)
z=Test that building a binary wheel with the limited ABI works.extension_distr   rx   ry   r*   rB   rL   rM   N)	r@   r   EXTENSION_SETUPPYEXTENSION_EXAMPLEr   r   r<   rD   rX   )r   r   rE   
source_dirr]   rO   s         r;   test_limited_abir     s    
 "(()9:J*(():W(M-++,=+P!!'*I  (Hj!c)ns8}EIIKr=   c                   [        UR                  S5      5      n[        R                  " [        U 5      U5        UR	                  U5        [
        R                  " U5       HQ  u  pEnU HE  n[
        R                  " [
        R                  R                  XG5      [        R                  5        MG     MS     [        5       R                  5         g )Ndummy)rD   r   shutilcopytreer   r/   walkchmodr0   joinstatS_IREADr<   rX   )r`   r   r   rG   root_dirsfilesrS   s           r;   test_build_from_readonly_treer     s    (##G,-G
OOC
OW-g !ggg.UEHHRWW\\$.=  / r=   )optioncompress_type)idsc                N   UR                  U 5        [        [        U5      US9R                  5         [	        S5       n[        UR                  5       5      nSU;   d   eSU;   d   eUR                   H  nUR                  U:X  a  M   e   S S S 5        g ! , (       d  f       g = f)N)rN   compressionr   r   r   )	r   r<   rD   rX   r   r   r   filelistr   )r`   r   r   r   r   r   r   zinfos           r;   test_compressionr     s     j!c(m@DDF	7	8B&	0I===2i???[[E&&-777 !	 
9	8	8s   AB	B
B$c                    U  HM  n[        U5       n[        S UR                   5       5      nUR                  U5      nSU;  d   e S S S 5        MO     g ! , (       d  f       Ma  = f)Nc              3  f   #    U H(  oR                   R                  S 5      (       d  M$  Uv   M*     g7f)WHEELN)rk   endswith)rR   fns     r;   rT   .test_wheelfile_line_endings.<locals>.<genexpr>  s!     W+B9M9Mg9VRR+s   "1	1   )r   ri   r   rq   )r^   r0   r   	wheelfilewheelfile_contentss        r;   test_wheelfile_line_endingsr     sT    T]bW"++WWI!#!3 2222 ] ]s   6A
A$	c                    UR                  SS5        UR                  U 5        [        [        U5      SS9R	                  5         [        S5       nUR                   H  nUR                  S:  a  M   e   S S S 5        g ! , (       d  f       g = f)NSOURCE_DATE_EPOCH02ar   z'dist/dummy_dist-1.0-2a-py3-none-any.whl)i     r   r   r   r   )setenvr   r<   rD   rX   r   r   	date_time)r`   r   r   r   r   s        r;   test_unix_epoch_timestampsr     sp    *C0j!c(m$?CCE	:	;r[[E??&;;;; ! 
<	;	;s   A?2A??
Bc                r   U R                  [        SS 5        U R                  [        SS 5        [        5       S:X  d   eU R                  [        SS S5        [        5       S	:X  d   eU R                  [        SS
 5        [        5       S:X  d   eU R                  [        S5        [        5       S:X  d   eg )Ninterpreter_namec                     g)Ncprd   rd   r=   r;   <lambda>*test_get_abi_tag_windows.<locals>.<lambda>      $r=   get_config_varc                    g)Nzcp313-win_amd64rd   xs    r;   r   r     s    ?Pr=   cp313gettotalrefcountc                     g)Nr   rd   rd   r=   r;   r   r     s    r=   Fcp313dc                    g)Nzcp313t-win_amd64rd   r   s    r;   r   r     s    ?Qr=   cp313tdcp313t)r4   r   	sysconfigr	   sysdelattrr   s    r;   test_get_abi_tag_windowsr    s    0,?	#35PQ=G###/EB=H$$$	#35QR=I%%%/0=H$$$r=   c                    U R                  [        SS 5        U R                  [        SS 5        [        5       S:X  d   eg )Nr   c                     gNpprd   rd   r=   r;   r   +test_get_abi_tag_pypy_old.<locals>.<lambda>  r   r=   r   c                    g)Nzpypy36-pp73rd   r   s    r;   r   r    s    }r=   pypy36_pp73)r4   r   r   r	   r  s    r;   test_get_abi_tag_pypy_oldr
    s9    0,?	#35LM=M)))r=   c                    U R                  [        SS 5        U R                  [        SS 5        [        5       S:X  d   eg )Nr   c                    g)Nzpypy37-pp73-darwinrd   r   s    r;   r   +test_get_abi_tag_pypy_new.<locals>.<lambda>      ?Sr=   r   c                     gr  rd   rd   r=   r;   r   r    r   r=   pypy37_pp73r4   r   r   r	   r  s    r;   test_get_abi_tag_pypy_newr    s9    	#35ST0,?=M)))r=   c                    U R                  [        SS 5        U R                  [        SS 5        [        5       S:X  d   eg )Nr   c                    g)Nz"graalpy231-310-native-x86_64-linuxrd   r   s    r;   r   *test_get_abi_tag_graalpy.<locals>.<lambda>  s    /Sr=   r   c                     g)Ngraalpyrd   rd   r=   r;   r   r    s    )r=   graalpy231_310_nativer  r  s    r;   test_get_abi_tag_graalpyr    s@    #%S 02CD=3333r=   c                    U R                  [        SS 5        U R                  [        SS 5        [        5       S:X  d   eg )Nr   c                    g)Nzunknown-python-310rd   r   s    r;   r   +test_get_abi_tag_fallback.<locals>.<lambda>  r  r=   r   c                     g)Nzunknown-pythonrd   rd   r=   r;   r   r    s    :Jr=   unknown_python_310r  r  s    r;   test_get_abi_tag_fallbackr    s;    	#35ST02JK=0000r=   c                T    UR                  U 5        [        SS9R                  5         g)z>Ensure building on platforms with a space in the name succeed.zisilon onefs)	plat_nameN)r   r<   rX   )r`   r   s     r;   test_platform_with_spacer"    s!    j!n-113r=   c                   U R                  U5        SSSSS.nUR                  5        H3  u  p4[        USSS9 nUR                  [	        U5      5        SSS5        M5     [        5       R                  5         S	n[        R                  R                  U5      (       d   e[        [        U5      R                  5       5      nS
 H
  nX;   a  M
   e   S H
  n	X;  a  M
   e   g! , (       d  f       M  = f)z
Setuptools allow authors to set PEP 440's local version segments
using ``egg_info.tag_build``. This should be reflected not only in the
``.whl`` file name, but also in the ``.dist-info`` and ``.data`` dirs.
See pypa/setuptools#3997.
z]
            from setuptools import setup
            setup(headers=["hello.h"])
            z
            [metadata]
            name = test
            version = 1.0

            [options.data_files]
            hello/world = file.txt

            [egg_info]
            tag_build = +what
            tag_date = 0
            r   )r   r'   zfile.txtzhello.hwrx   ry   Nz#dist/test-1.0+what-py3-none-any.whl)z"test-1.0+what.data/headers/hello.hz,test-1.0+what.data/data/hello/world/file.txtz test-1.0+what.dist-info/METADATAztest-1.0+what.dist-info/WHEEL)ztest.data/headers/hello.hz'test-1.0.data/data/hello/world/file.txtztest.dist-info/METADATAztest-1.0.dist-info/WHEEL)r   r3   openwriter   r<   rX   r/   r0   r1   r   r   r   )
r   r   r   filecontentfh
wheel_pathentriesexpectednot_expecteds
             r;   test_data_dir_with_tag_buildr.    s     h %E( $g."HHXg&' /. '  7J77>>*%%%%'*%..01G """ ***# /.s   C##
C2	)reportedr,  )zlinux-x86_64
linux_i686)zlinux-aarch64linux_armv7lLinuxz!Only makes sense to test on Linux)reasonc                    UR                  [        SS 5        [        R                  " 5       n[	        U5      nXl        SUl        UR                  5       u    pVXa:X  d   eg )Ncalcsizec                    g)N   rd   r   s    r;   r   'test_platform_linux32.<locals>.<lambda>:  s    ar=   F)r4   struct
setuptoolsr
   r   r!  root_is_pureget_tag)r/  r,  r   rL   r8   _actuals          r;   test_platform_linux32r?  2  sV     
K8""$D
d
CMC;;=LAqr=   c                   SS jn[        [        5         U R                  [        R                  S5        S S S 5        U R                  [        SU5        [        R                  " [        SS9   SS K
nS S S 5        U R                  [        R                  S5        SS Kng ! , (       d  f       Np= f! , (       d  f       ND= f)	Nc                ^    U S:X  a  [        SU  35      e[        R                  " U /UQ70 UD6$ )NctypeszNo module named )ModuleNotFoundError	importlib
__import__)rF   argsr6   s      r;   _fake_import$test_no_ctypes.<locals>._fake_importD  s8    8%(8&?@@##D:4:6::r=   zwheel.macosx_libfilerE  zNo module named ctypesr   r   zsetuptools.command.bdist_wheel)rF   rD   )r   KeyErrordelitemr   modulesr4   builtinsr   raisesrC  wheel.macosx_libfilesetuptools.command.bdist_wheel)r   rG  wheelr:  s       r;   test_no_ctypesrQ  C  s    ; 
(	CKK)?@ 
 ,=	*2J	K# 
L
 %EF) 
	
 
L	Ks   !B .B1 
B.1
B?c                   UR                  U 5        US-  nUR                  5         US-  R                  SSS9  US-  R                  SSS9  [        [	        U5      [	        U5      S9R                  5         S	S
1n[        S5       n[        UR                  5       5      nS S S 5        UW-
  [        5       :X  d   eU Vs/ sH  nS[	        U5      ;   d  M  UPM     sn(       a   eg ! , (       d  f       NL= fs  snf )Nrw   r   zname: helloworldrx   ry   FOObar)rN   dist_info_dirzdummy_dist-1.0.dist-info/FOOr   r   zegg-info)	r   r   r   r<   rD   rX   r   r   r   )r`   r   r   r   r,  r   files_foundr0   s           r;   test_dist_info_providedrW  Y  s    j!00HNN
&&'9G&L
 !!%'!:c(m3x=IMMO&)H 
7	8B"++-( 
9 k!SU***!,H
c$i0GHHHH 
9	8
 Is   C&?C7C7&
C4)returnNone)Q
__future__r   rL  rD  os.pathr/   platformr   r   r9  r   r   
contextlibr   inspectr   zipfiler   jaraco.pathrA   r   	packagingr   r:  rO  r   r	   setuptools.distr
   setuptools.warningsr   distutils.corer   r   r   OTHER_IGNORED_FILESSETUPPY_EXAMPLEdictfromkeysrC   r<   rH   fixturer^   r`   rm   ru   r   r   r   r   markparametrizereplacer   r   r   r   r   r   filterwarningsr   r   listsupported_compressionsr3   r   r   r   r  r
  r  r  r  r"  r.  skipifsystemr?  rQ  rW  rd   r=   r;   <module>rr     s~   "        
         C ( < $    $ "% ---0CCR
H 	
   
2 &';<5: 	
 " 
 $&R8

 -,
'0 

 (*"E" 
 ,Qtn <<7 
  :O%&H!", i 	B !	B 5 564-8C
C HF##I	
	CC3@F &  KLL
 	+	+	1	1	34[//0  
8
83<	%**4144+n #%FG OO )L  	*,Ir=   