(If (Com {[LIT_OTHER "["]} {[LIT_CHARS X] [DQ [ComSub (Pipeline (Com {[LIT_CHARS echo]}) (Com redirects=[(FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 2)]{[LIT_CHARS md5sum]} {[LIT_CHARS -b]}) )]]} {[LIT_OTHER "!"] [LIT_OTHER "="]} {[LIT_CHARS X]} {[LIT_OTHER "]"]}) (FunctionDef do_md5sum [] (Com {[LIT_CHARS md5sum]} {[LIT_CHARS -b]} {[VarSub 1]}) ) (Com {[LIT_OTHER "["]} {[LIT_CHARS X] [DQ [ComSub (Pipeline (Com {[LIT_CHARS echo]}) (Com redirects=[(FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 2)]{[LIT_CHARS command]} {[LIT_CHARS md5]}) )]]} {[LIT_OTHER "!"] [LIT_OTHER "="]} {[LIT_CHARS X]} {[LIT_OTHER "]"]}) (FunctionDef do_md5sum [] (Pipeline (Com {[LIT_CHARS command]} {[LIT_CHARS md5]} {[VarSub 1]}) (Com {[LIT_CHARS sed]} {[SQ ]}) ) ) (Com {[LIT_OTHER "["]} {[LIT_CHARS -x]} {[LIT_CHARS /sbin/md5]} {[LIT_OTHER "]"]}) (FunctionDef do_md5sum [] (Pipeline (Com {[LIT_CHARS /sbin/md5]} {[LIT_CHARS -r]} {[VarSub 1]}) (Com {[LIT_CHARS sed]} {[SQ ]}) ) ) (Com {[LIT_CHARS openssl]} {[LIT_CHARS version]} < (FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 1), (DescriptorRedirectNode target={[LIT_CHARS 1]} &"> 2), > ) (FunctionDef do_md5sum [] (Pipeline (Com {[LIT_CHARS openssl]} {[LIT_CHARS md5]} {[VarSub 1]}) (Com {[LIT_CHARS sed]} {[SQ ]}) ) ) (ElseTrue) (FunctionDef do_md5sum [] (Com {[LIT_CHARS echo]} {[LIT_CHARS No]} {[LIT_CHARS md5sum]} {[LIT_CHARS program]} {[LIT_CHARS found]}) ) )