+
    Six>                         R t ^ RIHt ^ RIHt ^ RIHt ^ RIt^ RIt^ RIt^ RIH	t	 RR lt
RR ltRR ltRR	 ltRR
 ltR tRR ltR tRR ltR tR tR# )z?Provides tab completion functionality for CLIs built with Fire.)absolute_import)division)print_functionN)inspectutilsc                 h    VR 8X  d   \        V \        V4      V4      # \        V \        V4      V4      # )fish)_FishScript	_Commands_BashScript)name	componentdefault_optionsshells   &&&&N/home/ubuntu/hermes-agent/venv/lib/python3.14/site-packages/fire/completion.pyScriptr      s1    
f_tYy1?CC	T9Y/	AA    c                H  a aa T;'       g    \        4       p\        S W4      w  r4pRpRpRpRoRoV VV3R lp	. p
\        4       pVP                  S 4       VP                  \        VP	                  4       4      4      pVP                  \        VP	                  4       4      4      pV Fp  pV	! V4      P                  RP                  \        WL,          P                  W\,          4      4      4      R7      pV
P                  VP                  VVR	7      4       Kr  	  R
P                  V
4      pVP                  VR7      pVP                  S S VRP                  V4      S P                  RR4      P                  RR4      P                  RR4      RP                  V4      R7      # )aB  Returns a Bash script registering a completion function for the commands.

Args:
  name: The first token in the commands, also the name of the command.
  commands: A list of all possible commands that tab completion can complete
      to. Each command is a list or tuple of the string tokens that make up
      that command.
  default_options: A dict of options that can be used with any command. Use
      this if there are flags that can always be appended to a command.
Returns:
  A string which is the Bash script. Source the bash script to enable tab
  completion in Bash.
a  # bash completion support for {name}
# DO NOT EDIT.
# This script is autogenerated by fire/completion.py.

_complete-{identifier}()
{{
  local cur prev opts lastcommand
  COMPREPLY=()
  prev="${{COMP_WORDS[COMP_CWORD-1]}}"
  cur="${{COMP_WORDS[COMP_CWORD]}}"
  lastcommand=$(get_lastcommand)

  opts="{default_options}"
  GLOBAL_OPTIONS="{global_options}"

{checks}

  COMPREPLY=( $(compgen -W "${{opts}}" -- ${{cur}}) )
  return 0
}}

get_lastcommand()
{{
  local lastcommand i

  lastcommand=
  for ((i=0; i < ${{#COMP_WORDS[@]}}; ++i)); do
    if [[ ${{COMP_WORDS[i]}} != -* ]] && [[ -n ${{COMP_WORDS[i]}} ]] && [[
      ${{COMP_WORDS[i]}} != $cur ]]; then
      lastcommand=${{COMP_WORDS[i]}}
    fi
  done

  echo $lastcommand
}}

filter_options()
{{
  local opts
  opts=""
  for opt in "$@"
  do
    if ! option_already_entered $opt; then
      opts="$opts $opt"
    fi
  done

  echo $opts
}}

option_already_entered()
{{
  local opt
  for opt in ${{COMP_WORDS[@]:0:$COMP_CWORD}}
  do
    if [ $1 == $opt ]; then
      return 0
    fi
  done
  return 1
}}

is_prev_global()
{{
  local opt
  for opt in $GLOBAL_OPTIONS
  do
    if [ $opt == $prev ]; then
      return 0
    fi
  done
  return 1
}}

complete -F _complete-{identifier} {command}
z;
  case "${{lastcommand}}" in
  {lastcommand_checks}
  esaczQ
    {command})
      {opts_assignment}
      opts=$(filter_options $opts)
    ;;z
      if is_prev_global; then
        opts="${{GLOBAL_OPTIONS}}"
      else
        opts="{options} ${{GLOBAL_OPTIONS}}"
      fiz,
      opts="{options} ${{GLOBAL_OPTIONS}}" c                    < V S8X  d   S# S# N )commandr   %opts_assignment_main_command_template#opts_assignment_subcommand_templates   &r   _GetOptsAssignmentTemplate/_BashScript.<locals>._GetOptsAssignmentTemplate   s    $2200r    )options)r   opts_assignment
)lastcommand_checks/ .,)r   r   checksr   
identifierglobal_options)
set_GetMapsaddunionkeysformatjoinsortedappendreplace)r   commandsr   r&   options_mapsubcommands_mapbash_completion_templatecheck_wrapperlastcommand_check_templater   linescommands_setr   r   r   r$   r   r   s   f&&             @@r   r
   r
   "   s    $,,su/19
H2..KZ
-
 
)%+/'1 %,4##C(<(<(>$?@,##C(8(8(:$;<,g09@@;'--o.FGH
 A O
 
LL"))+ 	* 	-  yy'+   &
 %%((?3\\#r*223;CCCL.1 & 	r   c                2   T;'       g    \        4       p\        WV4      w  r4pRpRpRpRp	\        VP                  4       4      P                  \        VP                  4       4      4       F  p
WZ,           F  pWgP	                  V V
VR7      ,          pK  	  WJ,          P                  V4       F;  pW8g  pYhP	                  T T
V'       d   T	MRVP                  R4      R7      ,          pK=  	  K  	  VP	                  R	P                  R
 V 4       4      R7      # )aB  Returns a Fish script registering a completion function for the commands.

Args:
  name: The first token in the commands, also the name of the command.
  commands: A list of all possible commands that tab completion can complete
      to. Each command is a list or tuple of the string tokens that make up
      that command.
  default_options: A dict of options that can be used with any command. Use
      this if there are flags that can always be appended to a command.
Returns:
  A string which is the Fish script. Source the fish script to enable tab
  completion in Fish.
aL  function __fish_using_command
    set cmd (commandline -opc)
    for i in (seq (count $cmd) 1)
        switch $cmd[$i]
        case "-*"
        case "*"
            if [ $cmd[$i] = $argv[1] ]
                return 0
            else
                return 1
            end
        end
    end
    return 1
end

function __option_entered_check
    set cmd (commandline -opc)
    for i in (seq (count $cmd))
        switch $cmd[$i]
        case "-*"
            if [ $cmd[$i] = $argv[1] ]
                return 1
            end
        end
    end
    return 0
end

function __is_prev_global
    set cmd (commandline -opc)
    set global_options {global_options}
    set prev (count $cmd)

    for opt in $global_options
        if [ "--$opt" = $cmd[$prev] ]
            echo $prev
            return 0
        end
    end
    return 1
end

zJcomplete -c {name} -n '__fish_using_command {command}' -f -a {subcommand}
z}complete -c {name} -n '__fish_using_command {command};{prev_global_check} and __option_entered_check --{option}' -l {option}
z and __is_prev_global;)r   r   
subcommandr!   --)r   r   prev_global_checkoptionr   c              3   .   "   T F  pR V R 2x  K  	  R# 5i)"Nr   ).0r=   s   & r   	<genexpr>_FishScript.<locals>.<genexpr>  s     I.&m.s   )r&   )r'   r(   r+   r*   r,   lstripr-   )r   r1   r   r&   r2   r3   fish_sourcesubcommand_templateflag_templater<   r   r:   r=   check_neededs   &&&           r   r   r      s-    $,,su/19
o2..++Z;F- /_))+,223{7G7G7I3JKg%..
// 0  k / &,,^<_l))1=-2t$	 *  k = L" 
		XXI.II 
 
 r   c                   \        V\        4      '       d   VP                  R4      '       d   R# V'       d   R# V\        J g   V\        J g   V\
        J d   R# \        V\        \        4      4      '       d   R# . p\        P                  ! V4      '       d	   W%9   d   R# \        P                  ! V 4      '       d   Vf!   \        P                  ! V 4      ;'       g    / pVP                  V4      pV'       dL   VP                  R9   d   R# \        \        R\        R4      4      p\        VP                   V4      '       d   R# \        V\        4      '       d   VP                  R4      '       * # R# )a  Returns whether a member should be included in auto-completion or help.

Determines whether a member of an object with the specified name should be
included in auto-completion or help text(both usage and detailed help).

If the member name starts with '__', it will always be excluded. If it
starts with only one '_', it will be included for all non-string types. If
verbose is True, the members, including the private members, are included.

When not in verbose mode, some modules and functions are excluded as well.

Args:
  component: The component containing the member.
  name: The name of the member.
  member: The member itself.
  class_attrs: (optional) If component is a class, provide this as:
    inspectutils.GetClassAttrsDict(component). If not provided, it will be
    computed.
  verbose: Whether to include private members.
Returns
  A boolean value indicating whether the member should be included.
__FTN_tuplegetter_)methodproperty)
isinstancestr
startswithr   r   r   typeinspectismoduleisclassr   GetClassAttrsDictgetkindgetattrcollectionsobject)r   r   memberclass_attrsverbosemodules_to_hide
class_attrtuplegetters   &&&&&   r   MemberVisiblera     s   . ctt44	8		>	!_-../f&";__Y 229=CCk&J 
2	2 KdDk	J%%{	3	3cs###	r   c                   \        V \        4      '       d   V P                  4       pM\        P                  ! V 4      pVf   \
        P                  ! V 4      pV UUu. uF  w  rE\        WWQVR7      '       g   K  WE3NK   	  upp# u uppi )a  Returns a list of the members of the given component.

If verbose is True, then members starting with _ (normally ignored) are
included.

Args:
  component: The component whose members to list.
  class_attrs: (optional) If component is a class, you may provide this as:
    inspectutils.GetClassAttrsDict(component). If not provided, it will be
    computed. If provided, this determines how class members will be treated
    for visibility. In particular, methods are generally hidden for
    non-instantiated classes, but if you wish them to be shown (e.g. for
    completion scripts) then pass in a different class_attr for them.
  verbose: Whether to include private members.
Returns:
  A list of tuples (member_name, member) of all members of the component.
r\   r]   )rN   dictitemsrR   
getmembersr   rU   ra   )r   r\   r]   membersmember_namer[   s   &&&   r   VisibleMembersri   U  s    $ 	4  ooG  +G 00;K7>
7> 3	yv&
( 
( {w
  
s   B:Bc                h    . pV  F)  pVP                  RR4      pVP                  RV 24       K+  	  V# )zTakes a list of fn args and returns a list of the fn's completion strings.

Args:
  fn_args: A list of the args accepted by a function.
Returns:
  A list of possible completion strings for that function.
rK   -r;   )r0   r/   )fn_argscompletionsargs   &  r   _CompletionsFromArgsro   v  s?     +c
++c3
CC5z"  
r   c                    \         P                  ! V 4      '       g   \         P                  ! V 4      '       d=   \        P                  ! V 4      p\        VP                  VP                  ,           4      # \        V \        \        34      '       d.   \        \        V 4      4       Uu. uF  p\        V4      NK  	  up# \         P                  ! V 4      '       d   . # \        WR7       UUu. uF  w  rE\!        V4      NK  	  upp# u upi u uppi )a  Gives possible Fire command completions for the component.

A completion is a string that can be appended to a command to continue that
command. These are used for TAB-completions in Bash for Fire CLIs.

Args:
  component: The component whose completions to list.
  verbose: Whether to include all completions, even private members.
Returns:
  A list of completions for a command that would so far return the component.
r]   )rR   	isroutinerT   r   GetFullArgSpecro   args
kwonlyargsrN   tuplelistrangelenrO   isgeneratorri   _FormatForCommand)r   r]   specindexrh   rK   s   &&    r   Completionsr~     s     y!!W__Y%?%?&&y1D		DOO ;<<	E4=))$)#i.$9:$95CJ$9::##I +9F
F.+ $F
  ;
s   'D+D
c                    \        V \        4      '       g   \        V 4      p V P                  R4      '       d   V # V P                  RR4      # )a  Replaces underscores with hyphens, unless the token starts with a token.

This is because we typically prefer hyphens to underscores at the command
line, but we reserve hyphens at the start of a token for flags. This becomes
relevant when --verbose is activated, so that things like __str__ don't get
transformed into --str--, which would get confused for a flag.

Args:
  token: The token to transform.
Returns:
  The transformed token.
rK   rk   )rN   rO   rP   r0   )tokens   &r   r{   r{     sA     
E3		JE
cL	sC	  r   c              #    "   \         P                  ! V 4      '       g   \         P                  ! V 4      '       d   \        V RR7       F  pV3x  K
  	  \         P                  ! V 4      '       d   R# V^8  d   R# \	        V / RR7       F:  w  r4\        V4      pV3x  \        WA^,
          4       F  pV3V,           x  K  	  K<  	  R# 5i)a  Yields tuples representing commands.

To use the command from Python, insert '.' between each element of the tuple.
To use the command from the command line, insert ' ' between each element of
the tuple.

Args:
  component: The component considered to be the root of the yielded commands.
  depth: The maximum depth with which to traverse the member DAG for commands.
Yields:
  Tuples, each tuple representing one possible command for this CLI.
  Only traverses the member DAG up to a depth of depth.
Frq   Nrc   )rR   rr   rT   r~   ri   r{   r	   )r   depth
completionrh   r[   r   s   &&    r   r	   r	     s      y!!W__Y%?%?!)U;
M <y!!

QY
 ,I249;k $K0K.VQY/NW$$ 0;s   8C	4C	0AC	c                 $    V P                  R 4      # )rk   )rP   )rn   s   &r   	_IsOptionr     s    		r   c                h  a \         P                   ! S4      p\        P                  ! V3R l4      p\        P                  ! \        4      pV F  p\	        V4      ^8X  dS   \        V^ ,          4      '       d   VP                  V^ ,          4       KE  WP,          P                  V^ ,          4       Ke  V'       g   Ko  VR,          p\        VR,          4      p\        V4      '       d   Tp	MTp	W,          P                  V4       WP                  RR4      ,          P                  V4       K  	  W4V3# )a  Returns sets of subcommands and options for each command.

Args:
  name: The first token in the commands, also the name of the command.
  commands: A list of all possible commands that tab completion can complete
      to. Each command is a list or tuple of the string tokens that make up
      that command.
  default_options: A dict of options that can be used with any command. Use
      this if there are flags that can always be appended to a command.
Returns:
  global_options: A set of all options of the first token of the command.
  subcommands_map: A dict storing set of subcommands for each
      command/subcommand.
  options_map: A dict storing set of options for each subcommand.
c                  0   < \         P                   ! S 4      # r   )copy)r   s   r   <lambda>_GetMaps.<locals>.<lambda>  s    		/0Jr   rK   rk   )	r   rY   defaultdictr'   ry   r   r)   r{   r0   )
r   r1   r   r&   r2   r3   r   r:   rn   args_maps
   &&f       r   r(   r(     s      99_-.''(JK+++C0/g
7|q	71:		71:&!!'!*-	2;jgbk*c	3"s#!!#s+,005# & 
o	55r   )Nbashr   )NF)F)   )__doc__
__future__r   r   r   rY   r   rR   firer   r   r
   r   ra   ri   ro   r~   r{   r	   r   r(   r   r   r   <module>r      s_    F &  %    BZzZz6rB:!, %F'6r   