(command.CommandList children: [ (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.Pipeline children: [(C {(echo)} {(DQ ($ VSub_Number '$1'))}) (C {(grep)} {(-Eq)} {(DQ ('^/'))})] negated: F ) terminator: <Op_Semi ';'> ) ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:path) op: Equal rhs: {($ VSub_Number '$1')} ) ] ) ] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:path) op: Equal rhs: { (command_sub left_token: <Left_Backtick '`'> command_list: (command.CommandList children:[(C {(pwd)})]) ) (/) ($ VSub_Number '$1') } ) ] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:path) op: Equal rhs: { (command_sub left_token: <Left_Backtick '`'> command_list: (command.CommandList children: [ (command.Pipeline children: [ (C {(echo)} {(DQ ($ VSub_DollarName '$path'))}) (C {(sed)} {(SQ <'s/ /%20/g'>)}) ] negated: F ) ] ) ) } ) ] ) (C {(firefox)} {(DQ ('file://') ($ VSub_DollarName '$path'))}) ] )