(command.AndOr
  ops: [Id.Op_DAmp]
  children: [
    (command.ShFunction
      name: _xhost
      body: 
        (command.BraceGroup
          children: [
            (C {(local)} {(cur)} {(prev)} {(words)} {(cword)})
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (C {(_init_completion)})
                (command.ControlFlow
                  token: (Token id:Id.ControlFlow_Return val:return span_id:27)
                )
              ]
            )
            (command.Case
              to_match: {($ Id.VSub_DollarName '$cur')}
              arms: [
                (case_arm
                  pat_list: [{(Id.Lit_Other '+') (Id.Lit_Star '*')}]
                  action: [
                    (C {(_known_hosts_real)} {(-p) (Id.Lit_Other '+')} 
                      {
                        (DQ 
                          (braced_var_sub
                            token: (Token id:Id.VSub_Name val:cur span_id:49)
                            suffix_op: 
                              (suffix_op.Slice
                                begin: (arith_expr.ArithWord w:{(Id.Lit_Digits 1)})
                              )
                          )
                        )
                      }
                    )
                  ]
                  spids: [38 40 55 -1]
                )
                (case_arm
                  pat_list: [{(-) (Id.Lit_Star '*')}]
                  action: [
                    (C {(_known_hosts_real)} {(-p-)} 
                      {
                        (DQ 
                          (braced_var_sub
                            token: (Token id:Id.VSub_Name val:cur span_id:68)
                            suffix_op: 
                              (suffix_op.Slice
                                begin: (arith_expr.ArithWord w:{(Id.Lit_Digits 1)})
                              )
                          )
                        )
                      }
                    )
                  ]
                  spids: [58 60 74 -1]
                )
                (case_arm
                  pat_list: [{(Id.Lit_Star '*')}]
                  action: [(C {(_known_hosts_real)} {(DQ ($ Id.VSub_DollarName '$cur'))})]
                  spids: [77 78 86 -1]
                )
              ]
            )
          ]
        )
    )
    (C {(complete)} {(-F)} {(_xhost)} {(xhost)})
  ]
)