(command.CommandList children: [ (C {(.)} {(./martin.sh)}) (command.CommandList children: [ (command.Sentence child:(C {(get)} {(DQ (/))} {(root)}) terminator:<Op_Semi ';'>) (command.FuncDef name: root body: (command.BraceGroup children: [ (C {(header)} {(DQ (Content-Type))} {(DQ ('text/html; charset=utf-8'))}) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(EOT)} here_end_span_id: 76 stdin_parts: [ ('<!DOCTYPE html>\n') ('<html>\n') (' <head>\n') (' <meta charset=') (Right_DoubleQuote '"') (utf-8) (Right_DoubleQuote '"') ('>\n') (' <title>hello world from ') ($ VSub_DollarName '$PATH_INFO') ('</title>\n') (' </head>\n') (' <body>\n') (' <img src=') (Right_DoubleQuote '"') (/DeanMartin.jpg) (Right_DoubleQuote '"') ('>\n') (' <h1>hello world from ') ($ VSub_DollarName '$PATH_INFO') ('</h1>\n') (' <a href=') (Right_DoubleQuote '"') (/ps) (Right_DoubleQuote '"') ('>processes</a>\n') (' <a href=') (Right_DoubleQuote '"') (/redirect) (Right_DoubleQuote '"') ('>redirect</a>\n') (' </body>\n') ('</html>\n') ] ) ] ) ] ) ) ] ) (command.CommandList children: [ (command.Sentence child: (C {(get)} {(DQ (/ps))} {(ps_handler)}) terminator: <Op_Semi ';'> ) (command.FuncDef name: ps_handler body: (command.BraceGroup children: [(C {(header)} {(DQ (Content-Type))} {(DQ (text/plain))}) (C {(ps)})] ) ) ] ) (command.CommandList children: [ (command.Sentence child: (C {(get)} {(DQ (/DeanMartin.jpg))} {(dean_handler)}) terminator: <Op_Semi ';'> ) (command.FuncDef name: dean_handler body: (command.BraceGroup children: [ (C {(header)} {(DQ (Content-Type))} {(DQ (image/jpeg))}) (C {(cat)} {(DQ (DeanMartin.jpg))}) ] ) ) ] ) (command.CommandList children: [ (command.Sentence child: (C {(get)} {(DQ (/redirect))} {(redirect_handler)}) terminator: <Op_Semi ';'> ) (command.FuncDef name: redirect_handler body: (command.BraceGroup children: [ (C {(status)} {(302)}) (C {(header)} {(DQ (Location))} {(DQ ('http://jackjs.org/'))}) ] ) ) ] ) (C {(martin)} {($ VSub_DollarName '$PORT')}) ] )