(command.CommandList children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:saved) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$PWD'))} spids: [7] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<Id.Lit_LBracket '['>} {(DQ ($ Id.VSub_Number '$1'))} {<Id.Lit_Equals '='>} {(DQ )} {<Id.Lit_RBracket ']'>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dest) op: assign_op.Equal rhs: {(word_part.TildeSub token:<Id.Lit_TildeLike '~'>) <'/.micropython/lib/'>} spids: [32] ) ] ) ] spids: [13 29] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dest) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$1'))} spids: [39] ) ] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<Id.Lit_LBracket '['>} {<-z>} {(DQ ($ Id.VSub_DollarName '$TMPDIR'))} {<Id.Lit_RBracket ']'>} ) terminator: <Id.Op_Semi _> ) ] ) action: [(C {<cd>} {<'/tmp'>})] spids: [47 60] ) ] else_action: [(C {<cd>} {($ Id.VSub_DollarName '$TMPDIR')})] ) (C {<rm>} {<-rf>} {<micropython-upip-> <Id.Lit_Star '*'>}) (C {<wget>} {<-nd>} {<-r>} {<-l1>} {<https> <Id.Lit_Colon ':'> <'//pypi.python.org/pypi/micropython-upip/'>} {<--accept-regex>} {(DQ <'.*pypi.python.org/packages/source/.*.gz'>)} {<--reject> <Id.Lit_Equals '='> <html>} ) (C {<tar>} {<xfz>} {<micropython-upip-> <Id.Lit_Star '*'> <.tar.gz>}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:tmpd) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$PWD'))} spids: [118] ) ] ) (C {<cd>} {(DQ ($ Id.VSub_DollarName '$saved'))}) (C {<mkdir>} {<-p>} {(DQ ($ Id.VSub_DollarName '$dest'))}) (C {<cp>} {(DQ ($ Id.VSub_DollarName '$tmpd')) <'/micropython-upip-'> <Id.Lit_Star '*'> <'/upip'> <Id.Lit_Star '*'> <.py> } {(DQ ($ Id.VSub_DollarName '$dest'))} ) (C {<echo>} {(DQ <'upip is installed. To use:'>)}) (C {<echo>} {(DQ <'micropython -m upip --help'>)}) ] )