}}|jA|j>tCjD|}|jdrB|D]<}|j*t,j.k7s!||j0|j2zz }>n$t7||}|rtt#||}t!djG|Dcgc]}|j|s|c}tjdy#t $rd}YwxYwcc} wcc}wcc}wcc}}wcc}}wcc} wcc}wcc}w)z:Entry Point for completion of main and subcommand options.PIP_AUTO_COMPLETEN COMP_WORDS COMP_CWORDhelp-)show uninstallT) local_onlyinstallpath=rz--c3&K|]}|v ywN).0namecwordss l/mnt/ssd/data/python-lab/DaemonControl/venv/lib/python3.12/site-packages/pip/_internal/cli/autocompletion.py zautocomplete..lsGd46>Gs )$osenvirongetsplitint IndexErrorrlistrsysexit startswithr loweriter_installed_distributionscanonical_nameprintauto_complete_pathsr parseroption_list_allroptparse SUPPRESS_HELP _long_opts _short_optsnargsget_path_completion_typeany handler_map option_groups option_listappendr from_iterablejoin)cwordcurrentr2 subcommandsoptionssubcommand_namewordshould_list_installedenvlcdist installedshould_list_installablesr subcommandoptopt_strx prev_optsvkcompletion_typepathsoption opt_label handler_nameioptsflattened_optsrs @r autocompleter\s"**, ::>>, 'rzz~~l/K ZZ % + + -ab 1F  <( )E# !F}%KG#'O ; "O  " f $ HHQK$+$6$6s$; ;! T A  !)+CB <<<M&&11"5''vabz9##I% D$K  ""3' ' HOy,H ! $+GV< d   HHQK#O4 $$44 Cxx81118;8X-4Wcii( /5Q.CDQWWS\!_D D(/Ffq!1I3EAq6FF&-Gdag1FAq6GG2      - -  'AE-23Tay3G3 Fq IayVAYr]d2S )   Gj.D.D.FGG * 6 6 8 ( **73,' ( (.';';>COO#CCK D 7vunUO"#6w#PQ  chh;Ha!,,w2GHIJHHQKG 40 EFG4 =IsTR%.?R7R<(S SS%S ?S ; SS)S S % R43R4c|dks||dz jdsy|D]}|jtjk(r!t |j dD]g}||dz j dd|k(s!|j r,td|j j dDsY|j ccSy)aLGet the type of path completion (``file``, ``dir``, ``path`` or None) :param cwords: same as the environmental variable ``COMP_WORDS`` :param cword: same as the environmental variable ``COMP_CWORD`` :param opts: The available options to check :return: path completion type (``file``, ``dir``, ``path`` or None) rrN/rrc3$K|]}|dv yw))rfiledirNr)rrPs r r!z+get_path_completion_type..s*56A00*s)r,rr4r5strr&metavarr:)rrArZrNos r r9r9s qyuqy)44S9' 88x-- - S$ 'Aeai &&s+A.!3{{c*:=++:K:KC:P*';;&  '' c#Ktjj|\}tjj|}tj|tj sytjj fdtj|D}|D]}tjj||}tjj tjj||}|dk7r$tjj|r|tjj|stjj|dyw)atIf ``completion_type`` is ``file`` or ``path``, list all regular files and directories starting with ``current``; otherwise only list directories starting with ``current``. :param current: The word to be completed :param completion_type: path completion type(``file``, ``path`` or ``dir``) :return: A generator of regular files and/or directories Nc3K|]5}tjj|js2|7ywr)r#rnormcaser,)rrPfilenames r r!z&auto_complete_paths..s2rww/?/?/B/M/Mh/Ws3>>rar) r#rr&abspathaccessR_OKrhlistdirr@isfileisdir) rBrT directory current_path file_listfrN comp_fileris @r r1r1s''--0Ix77??9-L 99\277 +ww)H::l+I .ggll<+GG$$RWW\\)Q%?@  e #s(;O WW]]3 '',,y"- - .s EE7%E7)returnNone)rz list[str]rAr'rZz Iterable[Any]ruz str | None)rBrbrTrbruz Iterable[str])__doc__ __future__rr4r#r*collections.abcr itertoolsrtypingrpip._internal.cli.main_parserrpip._internal.commandsrr pip._internal.metadatar r\r9r1rrer rsWG" $<@:pf !)60.re