(CommandList
  children: [
    (C {(set)} {(-euo)} {(pipefail)})
    (WhileUntil
      keyword: <KW_While while>
      cond: [
        (Sentence
          child: (C {(Lit_Other '[')} {(KW_Bang '!')} {(-f)} {(WORKSPACE)} {(Lit_Other ']')})
          terminator: <Op_Semi ';'>
        )
      ]
      body: 
        (DoGroup
          children: [
            (C {(cd)} {(..)})
            (If
              arms: [
                (if_arm
                  cond: [
                    (C {(Lit_Other '[')} {(DQ (/))} {(Lit_Other '=')} 
                      {
                        (CommandSubPart
                          command_list: (CommandList children:[(C {(pwd)})])
                          left_token: <Left_CommandSub '$('>
                          spids: [94 96]
                        )
                      } {(Lit_Other ']')}
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(echo)} {(DQ ('WORKSPACE not found.'))}]
                      redirects: [(Redir op:<Redir_GreatAnd '1>&'> fd:1 arg_word:{(2)})]
                    )
                    (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)})
                  ]
                  spids: [16777215 101]
                )
              ]
              spids: [16777215 119]
            )
          ]
          spids: [76 121]
        )
    )
    (C {(Lit_Other ':')} 
      {
        (BracedVarSub
          token: <VSub_Name ANDROID_BUILD_TOOLS_VERSION>
          suffix_op: (StringUnary op_id:VTest_ColonEquals arg_word:{(DQ (21.1.1))})
          spids: [126 132]
        )
      }
    )
    (C {(Lit_Other ':')} 
      {
        (BracedVarSub
          token: <VSub_Name ANDROID_API_LEVEL>
          suffix_op: (StringUnary op_id:VTest_ColonEquals arg_word:{(DQ (19))})
          spids: [136 142]
        )
      }
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (C {(Lit_Other '[')} {(-n)} 
                  {
                    (DQ 
                      (BracedVarSub
                        token: <VSub_Name ANDROID_HOME>
                        suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(EmptyPart)})
                        spids: [152 155]
                      )
                    )
                  } {(Lit_Other ']')}
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (SimpleCommand
              words: [{(cat)}]
              redirects: [
                (HereDoc
                  op: <Redir_DLess '<<'>
                  fd: 16777215
                  here_begin: {(EOF)}
                  here_end_span_id: 211
                  stdin_parts: [
                    ('def android_sdk():\n')
                    ('  native.android_sdk_repository(\n')
                    ('    name = ')
                    (Right_DoubleQuote '"')
                    (androidsdk)
                    (Right_DoubleQuote '"')
                    (',\n')
                    ('    path = ')
                    (Right_DoubleQuote '"')
                    (${ VSub_Name ANDROID_HOME)
                    (Right_DoubleQuote '"')
                    (',\n')
                    ('    # Available versions are under /path/to/sdk/build-tools/.\n')
                    ('    build_tools_version = ')
                    (Right_DoubleQuote '"')
                    (${ VSub_Name ANDROID_BUILD_TOOLS_VERSION)
                    (Right_DoubleQuote '"')
                    (',\n')
                    ('    # Available versions are under /path/to/sdk/platforms/.\n')
                    ('    api_level = ')
                    (${ VSub_Name ANDROID_API_LEVEL)
                    (',\n')
                    ('  )\n')
                    ('  native.bind(name = ')
                    (Right_DoubleQuote '"')
                    (android_sdk_for_testing)
                    (Right_DoubleQuote '"')
                    (', actual = ')
                    (Right_DoubleQuote '"')
                    ('@androidsdk//:files')
                    (Right_DoubleQuote '"')
                    (')\n')
                  ]
                )
                (Redir
                  op: <Redir_Great '>'>
                  fd: 16777215
                  arg_word: {(WORKSPACE.user.bzl)}
                )
              ]
            )
          ]
          spids: [16777215 161]
        )
      ]
      else_action: [
        (SimpleCommand
          words: [{(cat)}]
          redirects: [
            (HereDoc
              op: <Redir_DLess '<<'>
              fd: 16777215
              here_begin: {(EOF)}
              here_end_span_id: 234
              stdin_parts: [
                ('def android_sdk():\n')
                ('    native.bind(name = ')
                (Right_DoubleQuote '"')
                (android_sdk_for_testing)
                (Right_DoubleQuote '"')
                (', actual = ')
                (Right_DoubleQuote '"')
                ('//:dummy')
                (Right_DoubleQuote '"')
                (')\n')
              ]
            )
            (Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(WORKSPACE.user.bzl)})
          ]
        )
      ]
      spids: [212 235]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (C {(Lit_Other '[')} {(-n)} 
                  {
                    (DQ 
                      (BracedVarSub
                        token: <VSub_Name ANDROID_NDK>
                        suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(EmptyPart)})
                        spids: [245 248]
                      )
                    )
                  } {(Lit_Other ']')}
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (SimpleCommand
              words: [{(cat)}]
              redirects: [
                (HereDoc
                  op: <Redir_DLess '<<'>
                  fd: 16777215
                  here_begin: {(EOF)}
                  here_end_span_id: 295
                  stdin_parts: [
                    ('def android_ndk():\n')
                    ('  native.android_ndk_repository(\n')
                    ('    name = ')
                    (Right_DoubleQuote '"')
                    (androidndk)
                    (Right_DoubleQuote '"')
                    (',\n')
                    ('    path = ')
                    (Right_DoubleQuote '"')
                    (${ VSub_Name ANDROID_NDK)
                    (Right_DoubleQuote '"')
                    (',\n')
                    ('    api_level = ')
                    (${ VSub_Name ANDROID_API_LEVEL)
                    (',\n')
                    ('  )\n')
                    ('  native.bind(name = ')
                    (Right_DoubleQuote '"')
                    (android_ndk_for_testing)
                    (Right_DoubleQuote '"')
                    (', actual = ')
                    (Right_DoubleQuote '"')
                    ('@androidndk//:files')
                    (Right_DoubleQuote '"')
                    (')\n')
                  ]
                )
                (Redir
                  op: <Redir_DGreat '>>'>
                  fd: 16777215
                  arg_word: {(WORKSPACE.user.bzl)}
                )
              ]
            )
          ]
          spids: [16777215 254]
        )
      ]
      else_action: [
        (SimpleCommand
          words: [{(cat)}]
          redirects: [
            (HereDoc
              op: <Redir_DLess '<<'>
              fd: 16777215
              here_begin: {(EOF)}
              here_end_span_id: 318
              stdin_parts: [
                ('def android_ndk():\n')
                ('    native.bind(name = ')
                (Right_DoubleQuote '"')
                (android_ndk_for_testing)
                (Right_DoubleQuote '"')
                (', actual = ')
                (Right_DoubleQuote '"')
                ('//:dummy')
                (Right_DoubleQuote '"')
                (')\n')
              ]
            )
            (Redir op:<Redir_DGreat '>>'> fd:16777215 arg_word:{(WORKSPACE.user.bzl)})
          ]
        )
      ]
      spids: [296 319]
    )
    (SimpleCommand
      words: [{(cat)}]
      redirects: [
        (HereDoc
          op: <Redir_DLess '<<'>
          fd: 16777215
          here_begin: {(EOF)}
          here_end_span_id: 334
          stdin_parts: [('def android_repositories():\n') ('  android_sdk()\n') ('  android_ndk()\n')]
        )
        (Redir op:<Redir_DGreat '>>'> fd:16777215 arg_word:{(WORKSPACE.user.bzl)})
      ]
    )
  ]
)