(AndOr OP_AND_IF (FunctionDef _unrar [] (List (= scope= flags=0 words=[{[LIT_CHARS cur]}, {[LIT_CHARS prev]}, {[LIT_CHARS words]}, {[LIT_CHARS cword]}] bindings=[]) (AndOr OP_OR_IF (Com {[LIT_CHARS _init_completion]} ) (Com {[LIT_CHARS return]} ) ) (If (DBracket {B2 BINARY_STRING_EQUAL {[VarSub cur]} {[LIT_CHARS -] [LIT_OTHER "*"]}}) (= scope= flags=0 words=[] bindings=[('COMPREPLY', {[Array {[ComSub (Com {[LIT_CHARS compgen]} {[LIT_CHARS -W]} {[SQ ]} {[LIT_CHARS --]} {[DQ [VarSub cur]]})]}]})]) (ElseTrue) (If (DBracket {B2 BINARY_INT_EQ {[VarSub cword]} {[LIT_CHARS 1]}}) (= scope= flags=0 words=[] bindings=[('COMPREPLY', {[Array {[ComSub (Com {[LIT_CHARS compgen]} {[LIT_CHARS -W]} {[SQ ]} {[LIT_CHARS --]} {[DQ [VarSub cur]]})]}]})]) (ElseTrue) (Com {[LIT_CHARS _filedir]} {[LIT_CHARS rar]} ) ) ) ) ) (Com {[LIT_CHARS complete]} {[LIT_CHARS -F]} {[LIT_CHARS _unrar]} {[LIT_CHARS unrar]} ) )