(command.CommandList
  children: [
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:HOME)
          op: Equal
          rhs: 
            {
              (DQ 
                (command_sub
                  left_token: <Left_Backtick '`'>
                  command_list: 
                    (command.CommandList
                      children: [
                        (command.Sentence
                          child: 
                            (command.Simple
                              words: [{(cd)} {($ VSub_Number '$0')}]
                              redirects: [
                                (redir.Redir
                                  op: <Redir_Great '>'>
                                  fd: 16777215
                                  arg_word: {(/dev/null)}
                                )
                                (redir.Redir
                                  op: <Redir_GreatAnd '2>&'>
                                  fd: 2
                                  arg_word: {(1)}
                                )
                              ]
                            )
                          terminator: <Op_Semi ';'>
                        )
                        (C {(pwd)})
                      ]
                    )
                )
              )
            }
        )
      ]
      redirects: [
        (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(/dev/null)})
        (redir.Redir op:<Redir_GreatAnd '2>&'> fd:2 arg_word:{(1)})
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {(Lit_LBracket '[')} {(KW_Bang '!')} {(-e)} {(../prebuilt/libQt5_OpenGLES2.tar.xz)} 
                  {(Lit_RBracket ']')}
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [(C {(cp)} {(qt5_build/libQt5_OpenGLES2.tar.xz)} {(../prebuilt)})]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {(Lit_LBracket '[')} {(KW_Bang '!')} {(-e)} {(../rootfs/usr/local/lib/libaasdk.so)} 
                  {(Lit_RBracket ']')}
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [(C {(cp)} {(aasdk/lib/libaasdk.so)} {(../crankshaft/rootfs/usr/local/lib)})]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {(Lit_LBracket '[')} {(KW_Bang '!')} {(-e)} 
                  {(../rootfs/usr/local/lib/libaasdk_proto.so)} {(Lit_RBracket ']')}
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [(C {(cp)} {(aasdk/lib/libaasdk_proto.so)} {(../crankshaft/rootfs/usr/local/lib)})]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {(Lit_LBracket '[')} {(KW_Bang '!')} {(-e)} {(../rootfs/usr/local/bin/autoapp)} 
                  {(Lit_RBracket ']')}
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [(C {(cp)} {(openauto/bin/autoapp)} {(../crankshaft/rootfs/usr/local/bin)})]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {(Lit_LBracket '[')} {(KW_Bang '!')} {(-e)} {(../rootfs/usr/local/bin/btservice)} 
                  {(Lit_RBracket ']')}
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [(C {(cp)} {(openauto/bin/btservice)} {(../crankshaft/rootfs/usr/local/bin)})]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {(Lit_LBracket '[')} {(KW_Bang '!')} {(-e)} {(../rootfs/opt/crankshaft/dumb_suid)} 
                  {(Lit_RBracket ']')}
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [(C {(cp)} {(../src/dumb_suid/dumb_suid)} {(../crankshaft/rootfs/opt/crankshaft)})]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {(Lit_LBracket '[')} {(KW_Bang '!')} {(-e)} {(../rootfs/opt/crankshaft/gpio2kbd)} 
                  {(Lit_RBracket ']')}
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [(C {(cp)} {(gpio2kbd/gpio2kbd)} {(../crankshaft/rootfs/opt/crankshaft)})]
        )
      ]
    )
    (C {(cd)} {($ VSub_DollarName '$HOME')})
  ]
)