(List (= scope= flags=0 words=[] bindings=[('USAGE', {[SQ ]})]) (= scope= flags=0 words=[] bindings=[('SUBDIRECTORY_OK', {[SQ ]})]) (= scope= flags=0 words=[] bindings=[('OPTIONS_SPEC', {[SQ ]})]) (Com {[LIT_CHARS .]} {[LIT_CHARS git-sh-setup]} ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "WARNING: '"][VarSub 0][LIT_CHARS "' is deprecated in favor of 'git fsck --lost-found'"]]} < (DescriptorRedirectNode target={[LIT_CHARS 2]} &"> 1), > ) (If (Com {[LIT_DBRACKET_LIKE "["]} {[DQ [VarSub #]]} {[LIT_NEQUAL "!="]} {[DQ [LIT_CHARS 0]]} {[LIT_DBRACKET_LIKE "]"]} ) (Com {[LIT_CHARS usage]} ) ) (= scope= flags=0 words=[] bindings=[('laf', {[DQ [VarSub GIT_DIR][LIT_CHARS /lost-found]]})]) (AndOr OP_AND_IF (Com {[LIT_CHARS rm]} {[LIT_CHARS -fr]} {[DQ [VarSub laf]]} ) (AndOr OP_OR_IF (Com {[LIT_CHARS mkdir]} {[LIT_CHARS -p]} {[DQ [VarSub laf][LIT_CHARS /commit]]} {[DQ [VarSub laf][LIT_CHARS /other]]} ) (Com {[LIT_CHARS exit]} ) ) ) (Pipeline (Com {[LIT_CHARS git]} {[LIT_CHARS fsck]} {[LIT_CHARS --full]} {[LIT_CHARS --no-reflogs]} ) (While (Com {[LIT_CHARS read]} {[LIT_CHARS dangling]} {[LIT_CHARS type]} {[LIT_CHARS sha1]} ) (Case to_match={[DQ [VarSub dangling]]}, pat_word_list=[[{[LIT_CHARS dangling]}]] (List (If (Com {[LIT_CHARS git]} {[LIT_CHARS rev-parse]} {[LIT_CHARS -q]} {[LIT_CHARS --verify]} {[DQ [VarSub sha1][LIT_CHARS "^0"]]} < (FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 1), > ) (List (= scope= flags=0 words=[] bindings=[('dir', {[DQ [VarSub laf][LIT_CHARS /commit]]})]) (Com {[LIT_CHARS git]} {[LIT_CHARS show-branch]} {[DQ [VarSub sha1]]} ) ) (ElseTrue) (= scope= flags=0 words=[] bindings=[('dir', {[DQ [VarSub laf][LIT_CHARS /other]]})]) ) (Com {[LIT_CHARS echo]} {[DQ [VarSub sha1]]} < (FilenameRedirectNode filename={[DQ [VarSub dir][LIT_CHARS /][VarSub sha1]]} "> 1), > ) ) ) ) ) )