(BraceGroup
  children: [
    (C {(.)} {(/DietPi/dietpi/func/dietpi-globals)})
    (C {(G_CHECK_ROOT_USER)})
    (C {(G_CHECK_ROOTFS_RW)})
    (C {(export)} {(Lit_VarLike 'G_PROGRAM_NAME=') (SQ <DietPi-Bugreport>)})
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:UPLOAD_FILESIZE_LIMIT)
          op: Equal
          rhs: {(83886080)}
          spids: [87]
        )
      ]
      spids: [87]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:UPLOAD_FILESIZE) op:Equal rhs:{(0)} spids:[91])]
      spids: [91]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:DATE_CURRENT)
          op: Equal
          rhs: 
            {
              (CommandSubPart
                command_list: 
                  (CommandList
                    children: [(C {(date)} {(Lit_Other '+') (DQ ('%d-%m-%Y'))})]
                  )
                left_token: <Left_CommandSub '$('>
                spids: [97 104]
              )
            }
          spids: [96]
        )
      ]
      spids: [96]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:ONLINE_BUG_REPORT) op:Equal rhs:{(1)} spids:[108])]
      spids: [108]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:CREATE_BUG_REPORT) op:Equal rhs:{(0)} spids:[112])]
      spids: [112]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:BUG_REPORT_COMPLETED) op:Equal rhs:{(0)} spids:[116])]
      spids: [116]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:UNIQUE_ID_HW)
          op: Equal
          rhs: 
            {
              (CommandSubPart
                command_list: 
                  (CommandList
                    children: [(C {(sed)} {(-n)} {(5p)} {(/DietPi/dietpi/.hw_model)})]
                  )
                left_token: <Left_CommandSub '$('>
                spids: [122 130]
              )
            }
          spids: [121]
        )
      ]
      spids: [121]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:UNIQUE_ID_BUGNUMBER) op:Equal rhs:{(0)} spids:[133])]
      spids: [133]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:INTERNET_AVAILABLE) op:Equal rhs:{(0)} spids:[137])]
      spids: [137]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:FTP_ADDR) op:Equal rhs:{(DQ (dietpi.com))} spids:[142])]
      spids: [142]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:FTP_USER)
          op: Equal
          rhs: {(DQ (dietpi-survey))}
          spids: [148]
        )
      ]
      spids: [148]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:FTP_PASS) op:Equal rhs:{(DQ (raspberry13))} spids:[154])]
      spids: [154]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:FILEPATH_TEMP)
          op: Equal
          rhs: {(DQ (/tmp/dietpi-bugreport))}
          spids: [161]
        )
      ]
      spids: [161]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:FILE_GENERATED_ZIP)
          op: Equal
          rhs: {(DQ (bugreport.zip))}
          spids: [168]
        )
      ]
      spids: [168]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:FILE_BUGREPORT_TEXT)
          op: Equal
          rhs: {(DQ (bugreport.txt))}
          spids: [174]
        )
      ]
      spids: [174]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:FILE_BUG_NUMBER)
          op: Equal
          rhs: {(DQ (/DietPi/dietpi/.bug_id))}
          spids: [180]
        )
      ]
      spids: [180]
    )
    (FuncDef
      name: Generate_Template_Doc
      body: 
        (BraceGroup
          children: [
            (SimpleCommand
              words: [{(cat)}]
              redirects: [
                (HereDoc
                  op: <Redir_DLess '<<'>
                  fd: 16777215
                  here_begin: {(_EOF_)}
                  here_end_span_id: 246
                  stdin_parts: [
                    ('----------------------------------------------------------------\n')
                    (' DietPi : Bug Report\n')
                    (' #Date\n')
                    ('----------------------------------------------------------------\n')
                    (' Please fill out the information regarding your issue.\n')
                    ('\n')
                    (' When completed, save and exit nano:\n')
                    (' - Press CTRL+X\n')
                    (' - Press Y\n')
                    (' - Press Enter\n')
                    ('\n')
                    ('----------------------------------------------------------------\n')
                    (' Your contact information\n')
                    ('----------------------------------------------------------------\n')
                    ('Email address =\n')
                    ('Name          =\n')
                    ('\n')
                    ('\n')
                    ('----------------------------------------------------------------\n')
                    (' Short Description of the issue (eg: Desktop wont start):\n')
                    ('----------------------------------------------------------------\n')
                    ('\n')
                    ('\n')
                    ('----------------------------------------------------------------\n')
                    (' When does the issue occur? (eg: I tried to run startx):\n')
                    ('----------------------------------------------------------------\n')
                    ('\n')
                    ('\n')
                    ('----------------------------------------------------------------\n')
                    (' Error Codes (if applicable):\n')
                    ('----------------------------------------------------------------\n')
                    ('\n')
                    ('\n')
                    ('----------------------------------------------------------------\n')
                    (' Additional Notes:\n')
                    ('----------------------------------------------------------------\n')
                    ('\n')
                    ('\n')
                    ('End of Line ;)\n')
                  ]
                )
                (Redir
                  op: <Redir_Great '>'>
                  fd: 16777215
                  arg_word: {(DQ ($ VSub_Name '$FILE_BUGREPORT_TEXT'))}
                )
              ]
            )
            (C {(sed)} {(-i)} {(DQ ('/#Date/c') (Lit_Other '\\') (' ') ($ VSub_Name '$DATE_CURRENT'))} 
              {(DQ ($ VSub_Name '$FILE_BUGREPORT_TEXT'))}
            )
          ]
          spids: [190]
        )
      spids: [187 190]
    )
    (FuncDef
      name: Generate_Zip_File
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:zip_settings)
                  op: Equal
                  rhs: {(DQ (-9))}
                  spids: [291]
                )
              ]
              spids: [289]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DParen
                          child: 
                            (ArithBinary
                              op_id: Arith_DEqual
                              left: (ArithWord w:{($ VSub_Name '$ONLINE_BUG_REPORT')})
                              right: (ArithWord w:{(Lit_Digits 1)})
                            )
                          spids: [304 313]
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:FILE_GENERATED_ZIP)
                          op: Equal
                          rhs: 
                            {
                              (DQ (bugreport-) ($ VSub_Name '$UNIQUE_ID_HW') (-) 
                                ($ VSub_Name '$UNIQUE_ID_BUGNUMBER') (.zip)
                              )
                            }
                          spids: [320]
                        )
                      ]
                      spids: [320]
                    )
                  ]
                  spids: [16777215 316]
                )
              ]
              else_action: [
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:FILE_GENERATED_ZIP)
                      op: Equal
                      rhs: {(DQ (bugreport.zip))}
                      spids: [339]
                    )
                  ]
                  spids: [339]
                )
              ]
              spids: [335 346]
            )
            (C {(zip)} {(DQ ($ VSub_Name '$zip_settings'))} {(DQ ($ VSub_Name '$FILE_GENERATED_ZIP'))} 
              {(DQ ($ VSub_Name '$FILE_BUGREPORT_TEXT'))}
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:afile_list)
                  op: Equal
                  rhs: 
                    {
                      (ArrayLiteralPart
                        words: [
                          {(DQ ('/var/log/*'))}
                          {(DQ ('/DietPi/*'))}
                          {(DQ (/boot/dietpi.txt))}
                          {(DQ (/boot/config.txt))}
                          {(DQ ('/boot/dietpi/*'))}
                          {(DQ ('/var/tmp/dietpi/logs/*'))}
                          {(DQ ('/var/lib/dietpi/*'))}
                          {(DQ (/etc/X11/xorg.conf))}
                          {(DQ (/etc/bash.bashrc))}
                          {(DQ (/etc/rc.local))}
                          {(DQ (/etc/asound.conf))}
                          {(DQ (/etc/network/interfaces))}
                          {(DQ (/etc/fstab))}
                          {(DQ (/etc/dphys-swapfile))}
                          {(DQ (/etc/sysctl.conf))}
                          {(DQ ('/etc/sysctl.d/*'))}
                          {(DQ (/root/.bashrc))}
                          {(DQ ('/etc/init.d/*'))}
                          {(DQ ('/etc/systemd/*'))}
                          {(DQ (/etc/apt/sources.list))}
                          {(DQ ('/etc/apt/sources.list.d/*'))}
                        ]
                      )
                    }
                  spids: [380]
                )
              ]
              spids: [378]
            )
            (ForExpr
              init: 
                (BinaryAssign
                  op_id: Arith_Equal
                  left: (LhsName name:i)
                  right: (ArithWord w:{(Lit_Digits 0)})
                )
              cond: 
                (ArithBinary
                  op_id: Arith_Less
                  left: (ArithVarRef name:i)
                  right: 
                    (ArithWord
                      w: 
                        {
                          (BracedVarSub
                            token: <VSub_Name afile_list>
                            prefix_op: VSub_Pound
                            bracket_op: (WholeArray op_id:Lit_At)
                            spids: [535 541]
                          )
                        }
                    )
                )
              update: (UnaryAssign op_id:Node_PostDPlus child:(LhsName name:i))
              body: 
                (DoGroup
                  children: [
                    (C {(zip)} {(-r)} {(DQ ($ VSub_Name '$zip_settings'))} 
                      {(DQ ($ VSub_Name '$FILE_GENERATED_ZIP'))} 
                      {
                        (BracedVarSub
                          token: <VSub_Name afile_list>
                          bracket_op: (ArrayIndex expr:(ArithWord w:{($ VSub_Name '$i')}))
                          spids: [566 571]
                        )
                      }
                    )
                  ]
                  spids: [550 575]
                )
            )
            (C {(unset)} {(afile_list)})
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:acommand_list)
                  op: Equal
                  rhs: 
                    {
                      (ArrayLiteralPart
                        words: [
                          {(DQ ('ls -lha /var/log'))}
                          {(DQ ('dpkg -l'))}
                          {(DQ ('ifconfig -a'))}
                          {(DQ (iwconfig))}
                          {(DQ ('ip a'))}
                          {(DQ (lsusb))}
                          {(DQ ('cat /proc/cpuinfo'))}
                          {(DQ ('ps aux'))}
                          {(DQ (blkid))}
                          {(DQ (mount))}
                          {(DQ ('df -h'))}
                          {(DQ ('ls /etc/rc*.d/'))}
                          {(DQ ('cut -d: -f1 /etc/passwd'))}
                          {(DQ (locale))}
                          {(DQ ('ls -lha /mnt'))}
                          {(DQ (dmesg))}
                          {(DQ (lsmod))}
                          {(DQ ('systemctl status *.service -l'))}
                          {(DQ ('systemctl status *.mount -l'))}
                          {(DQ ('/DietPi/dietpi/dietpi-services status'))}
                        ]
                      )
                    }
                  spids: [591]
                )
              ]
              spids: [589]
            )
            (ForExpr
              init: 
                (BinaryAssign
                  op_id: Arith_Equal
                  left: (LhsName name:i)
                  right: (ArithWord w:{(Lit_Digits 0)})
                )
              cond: 
                (ArithBinary
                  op_id: Arith_Less
                  left: (ArithVarRef name:i)
                  right: 
                    (ArithWord
                      w: 
                        {
                          (BracedVarSub
                            token: <VSub_Name acommand_list>
                            prefix_op: VSub_Pound
                            bracket_op: (WholeArray op_id:Lit_At)
                            spids: [714 720]
                          )
                        }
                    )
                )
              update: (UnaryAssign op_id:Node_PostDPlus child:(LhsName name:i))
              body: 
                (DoGroup
                  children: [
                    (SimpleCommand
                      words: [
                        {
                          (BracedVarSub
                            token: <VSub_Name acommand_list>
                            bracket_op: (ArrayIndex expr:(ArithWord w:{($ VSub_Name '$i')}))
                            spids: [733 738]
                          )
                        }
                      ]
                      redirects: [
                        (Redir
                          op: <Redir_Great '>'>
                          fd: 16777215
                          arg_word: {(command_output_) ($ VSub_Name '$i') (.txt)}
                        )
                      ]
                    )
                    (C {(zip)} {(-r)} {(DQ ($ VSub_Name '$zip_settings'))} 
                      {(DQ ($ VSub_Name '$FILE_GENERATED_ZIP'))} {(command_output_) ($ VSub_Name '$i') (.txt)}
                    )
                    (C {(rm)} {(command_output_) ($ VSub_Name '$i') (.txt)})
                  ]
                  spids: [729 772]
                )
            )
            (C {(unset)} {(acommand_list)})
          ]
          spids: [277]
        )
      spids: [274 277]
    )
    (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name '$FILEPATH_TEMP'))})
    (C {(cd)} {(DQ ($ VSub_Name '$FILEPATH_TEMP'))})
    (C {(G_CHECK_URL)} {(DQ ($ VSub_Name '$FTP_ADDR'))})
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (DParen
                  child: 
                    (ArithBinary
                      op_id: Arith_DEqual
                      left: (ArithWord w:{($ VSub_QMark '$?')})
                      right: (ArithWord w:{(Lit_Digits 0)})
                    )
                  spids: [845 854]
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:INTERNET_AVAILABLE)
                  op: Equal
                  rhs: {(1)}
                  spids: [861]
                )
              ]
              spids: [861]
            )
          ]
          spids: [16777215 857]
        )
      ]
      spids: [16777215 866]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (DParen
                  child: 
                    (ArithBinary
                      op_id: Arith_DEqual
                      left: (ArithWord w:{($ VSub_Name '$INTERNET_AVAILABLE')})
                      right: (ArithWord w:{(Lit_Digits 0)})
                    )
                  spids: [876 885]
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (C {(clear)})
            (C {(whiptail)} {(--title)} {(DQ (Offline))} {(--yesno)} 
              {
                (DQ ('Error: Unable to connect to ') ($ VSub_Name '$FTP_ADDR') (Lit_Other '\\') 
                  ('n- Make sure a network device is installed.') (Lit_Other '\\') ('n- Check your network connection is functional.') (Lit_Other '\\') ('n- ') 
                  ($ VSub_Name '$FTP_ADDR') (' may be offline.') (Lit_Other '\\') (n) (Lit_Other '\\') 
                  ('n Would you like to generate an offline bug report?') (Lit_Other '\\') ('n - /DietPi/bugreport.zip')
                )
              } {(--yes-button)} {(DQ (Ok))} {(--no-button)} {(DQ (Exit))} {(--defaultno)} {(--backtitle)} 
              {(DQ ('DietPi Bug Report'))} {(14)} {(70)}
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:CHOICE)
                  op: Equal
                  rhs: {($ VSub_QMark '$?')}
                  spids: [950]
                )
              ]
              spids: [950]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DParen
                          child: 
                            (ArithBinary
                              op_id: Arith_DEqual
                              left: (ArithWord w:{($ VSub_Name '$CHOICE')})
                              right: (ArithWord w:{(Lit_Digits 0)})
                            )
                          spids: [956 965]
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:ONLINE_BUG_REPORT)
                          op: Equal
                          rhs: {(0)}
                          spids: [972]
                        )
                      ]
                      spids: [972]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:CREATE_BUG_REPORT)
                          op: Equal
                          rhs: {(1)}
                          spids: [976]
                        )
                      ]
                      spids: [976]
                    )
                  ]
                  spids: [16777215 968]
                )
              ]
              spids: [16777215 981]
            )
          ]
          spids: [16777215 888]
        )
      ]
      else_action: [
        (C {(whiptail)} {(--title)} {(DQ ('Send DietPi Bug Report?'))} {(--yesno)} 
          {
            (DQ ('DietPi will generate and upload a bug report for your system.') (Lit_Other '\\') (n) 
              (Lit_Other '\\') ('nThis file will contain:') (Lit_Other '\\') ('n- Your description of the bug/issue.') (Lit_Other '\\') 
              ('n- DietPi settings.') (Lit_Other '\\') ('n- Log files.') (Lit_Other '\\') ('n- Config files specific to DietPi.') 
              (Lit_Other '\\') (n) (Lit_Other '\\') ('nDo you wish to continue?')
            )
          } {(--yes-button)} {(DQ (Ok))} {(--no-button)} {(DQ (Exit))} {(--defaultno)} {(--backtitle)} 
          {(DQ ('DietPi Bug Report'))} {(15)} {(70)}
        )
        (Assignment
          keyword: Assign_None
          pairs: [
            (assign_pair
              lhs: (LhsName name:CHOICE)
              op: Equal
              rhs: {($ VSub_QMark '$?')}
              spids: [1048]
            )
          ]
          spids: [1048]
        )
        (If
          arms: [
            (if_arm
              cond: [
                (Sentence
                  child: 
                    (DParen
                      child: 
                        (ArithBinary
                          op_id: Arith_DEqual
                          left: (ArithWord w:{($ VSub_Name '$CHOICE')})
                          right: (ArithWord w:{(Lit_Digits 0)})
                        )
                      spids: [1054 1063]
                    )
                  terminator: <Op_Semi ';'>
                )
              ]
              action: [
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:ONLINE_BUG_REPORT)
                      op: Equal
                      rhs: {(1)}
                      spids: [1070]
                    )
                  ]
                  spids: [1070]
                )
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:CREATE_BUG_REPORT)
                      op: Equal
                      rhs: {(1)}
                      spids: [1074]
                    )
                  ]
                  spids: [1074]
                )
              ]
              spids: [16777215 1066]
            )
          ]
          spids: [16777215 1079]
        )
      ]
      spids: [989 1083]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (DParen
                  child: 
                    (ArithBinary
                      op_id: Arith_DEqual
                      left: (ArithWord w:{($ VSub_Name '$CREATE_BUG_REPORT')})
                      right: (ArithWord w:{(Lit_Digits 1)})
                    )
                  spids: [1097 1106]
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(KW_Bang '!')} {(-f)} 
                          {(DQ ($ VSub_Name '$FILE_BUGREPORT_TEXT'))} {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {(Generate_Template_Doc)})]
                  spids: [16777215 1136]
                )
              ]
              spids: [16777215 1144]
            )
            (C {(nano)} {(DQ ($ VSub_Name '$FILE_BUGREPORT_TEXT'))})
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(-f)} {(DQ ($ VSub_Name '$FILE_BUG_NUMBER'))} 
                          {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:UNIQUE_ID_BUGNUMBER)
                          op: Equal
                          rhs: 
                            {
                              (CommandSubPart
                                command_list: 
                                  (CommandList
                                    children: [(C {(cat)} {(DQ ($ VSub_Name '$FILE_BUG_NUMBER'))})]
                                  )
                                left_token: <Left_CommandSub '$('>
                                spids: [1186 1192]
                              )
                            }
                          spids: [1185]
                        )
                      ]
                      spids: [1185]
                    )
                  ]
                  spids: [16777215 1181]
                )
              ]
              spids: [16777215 1196]
            )
            (C {(Generate_Zip_File)})
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DParen
                          child: 
                            (ArithBinary
                              op_id: Arith_DEqual
                              left: (ArithWord w:{($ VSub_Name '$ONLINE_BUG_REPORT')})
                              right: (ArithWord w:{(Lit_Digits 0)})
                            )
                          spids: [1222 1231]
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(rm)} {(/DietPi/bugreport.zip)}]
                      redirects: [(Redir op:<Redir_AndGreat '&>'> fd:16777215 arg_word:{(/dev/null)})]
                    )
                    (SimpleCommand
                      words: [
                        {(cp)}
                        {(DQ ($ VSub_Name '$FILE_GENERATED_ZIP'))}
                        {(/DietPi/bugreport.zip)}
                      ]
                      redirects: [(Redir op:<Redir_AndGreat '&>'> fd:16777215 arg_word:{(/dev/null)})]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:BUG_REPORT_COMPLETED)
                          op: Equal
                          rhs: {(1)}
                          spids: [1265]
                        )
                      ]
                      spids: [1265]
                    )
                  ]
                  spids: [16777215 1234]
                )
              ]
              else_action: [
                (C {(G_CHECK_URL)} {(DQ ($ VSub_Name '$FTP_ADDR'))})
                (If
                  arms: [
                    (if_arm
                      cond: [
                        (Sentence
                          child: 
                            (DParen
                              child: 
                                (ArithBinary
                                  op_id: Arith_DEqual
                                  left: (ArithWord w:{($ VSub_QMark '$?')})
                                  right: (ArithWord w:{(Lit_Digits 0)})
                                )
                              spids: [1291 1300]
                            )
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      action: [
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:UPLOAD_FILESIZE)
                              op: Equal
                              rhs: 
                                {
                                  (CommandSubPart
                                    command_list: 
                                      (CommandList
                                        children: [
                                          (C {(stat)} {(-c) (Lit_Other '%') (s)} 
                                            {(DQ ($ VSub_Name '$FILE_GENERATED_ZIP'))}
                                          )
                                        ]
                                      )
                                    left_token: <Left_CommandSub '$('>
                                    spids: [1312 1322]
                                  )
                                }
                              spids: [1311]
                            )
                          ]
                          spids: [1311]
                        )
                        (If
                          arms: [
                            (if_arm
                              cond: [
                                (Sentence
                                  child: 
                                    (DParen
                                      child: 
                                        (ArithBinary
                                          op_id: Arith_Great
                                          left: (ArithWord w:{($ VSub_Name '$UPLOAD_FILESIZE')})
                                          right: (ArithWord w:{($ VSub_Name '$UPLOAD_FILESIZE_LIMIT')})
                                        )
                                      spids: [1332 1341]
                                    )
                                  terminator: <Op_Semi ';'>
                                )
                              ]
                              action: [
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:BUG_REPORT_COMPLETED)
                                      op: Equal
                                      rhs: {(-2)}
                                      spids: [1348]
                                    )
                                  ]
                                  spids: [1348]
                                )
                              ]
                              spids: [16777215 1344]
                            )
                          ]
                          else_action: [
                            (C {(G_DIETPI-NOTIFY)} {(2)} {(DQ ('Uploading bug report, please wait...'))})
                            (C {(wput)} {(--timeout) (Lit_Other '=') (10th-4)} 
                              {(--tries) (Lit_Other '=') (1)} {(--waitretry) (Lit_Other '=') (2)} {(-B)} {(-u)} {(DQ ($ VSub_Name '$FILE_GENERATED_ZIP'))} 
                              {(ftp) (Lit_Other ':') (//) (DQ ($ VSub_Name '$FTP_USER')) 
                                (Lit_Other ':') (DQ ($ VSub_Name '$FTP_PASS')) (Lit_Other '@') (DQ ($ VSub_Name '$FTP_ADDR'))
                              }
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:BUG_REPORT_COMPLETED)
                                  op: Equal
                                  rhs: {(1)}
                                  spids: [1408]
                                )
                              ]
                              spids: [1408]
                            )
                          ]
                          spids: [1357 1413]
                        )
                      ]
                      spids: [16777215 1303]
                    )
                  ]
                  else_action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:BUG_REPORT_COMPLETED)
                          op: Equal
                          rhs: {(-1)}
                          spids: [1421]
                        )
                      ]
                      spids: [1421]
                    )
                  ]
                  spids: [1417 1426]
                )
              ]
              spids: [1274 1429]
            )
          ]
          spids: [16777215 1109]
        )
      ]
      spids: [16777215 1433]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (DParen
                  child: 
                    (ArithBinary
                      op_id: Arith_DEqual
                      left: (ArithWord w:{($ VSub_Name '$BUG_REPORT_COMPLETED')})
                      right: (ArithWord w:{(Lit_Digits 1)})
                    )
                  spids: [1447 1456]
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DParen
                          child: 
                            (ArithBinary
                              op_id: Arith_DEqual
                              left: (ArithWord w:{($ VSub_Name '$ONLINE_BUG_REPORT')})
                              right: (ArithWord w:{(Lit_Digits 0)})
                            )
                          spids: [1469 1478]
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {(whiptail)} {(--title)} {(DQ ('Bug Report Created'))} {(--msgbox)} 
                      {
                        (DQ ('Your offline bug report has been generated:') (Lit_Other '\\') 
                          ('n - /DietPi/bugreport.zip') (Lit_Other '\\') (n) (Lit_Other '\\') ('nContact DietPi for support using one of the below:') 
                          (Lit_Other '\\') ('n- Github Issue : https://github.com/Fourdee/DietPi/issues') (Lit_Other '\\') 
                          ('n- RPi Forum    : https://goo.gl/QzyTVm') (Lit_Other '\\') ('n- Odroid Forum : http://goo.gl/26owYc') (Lit_Other '\\') 
                          ('n- DietPi Forum : http://dietpi.com/phpbb/viewforum.php?f=9')
                        )
                      } {(--backtitle)} {(DQ ('DietPi Bug Report'))} {(16)} {(70)}
                    )
                    (C {(/DietPi/dietpi/dietpi-banner)} {(1)})
                    (C {(echo)} {(-e)} 
                      {
                        (DQ (Lit_Other '\\') ('n Bug report generated. /DietPi/bugreport.zip ') 
                          (Lit_Other '\\') ('n ')
                        )
                      }
                    )
                  ]
                  spids: [16777215 1481]
                )
              ]
              else_action: [
                (C {(whiptail)} {(--title)} {(DQ ('Bug Report Sent'))} {(--msgbox)} 
                  {
                    (DQ ('Your bug report has been sent.') (Lit_Other '\\') 
                      (
'nPlease make note of your reference code below. This will need to be used when contacting DietPi for support.'
                      ) (Lit_Other '\\') (n) (Lit_Other '\\') ('n Reference CODE: ') ($ VSub_Name '$UNIQUE_ID_HW') (-) 
                      ($ VSub_Name '$UNIQUE_ID_BUGNUMBER') (' ') (Lit_Other '\\') (n) (Lit_Other '\\') ('nContact DietPi for support using one of the below:') 
                      (Lit_Other '\\') ('n- Github Issue : https://github.com/Fourdee/DietPi/issues') (Lit_Other '\\') 
                      ('n- RPi Forum    : https://goo.gl/QzyTVm') (Lit_Other '\\') ('n- Odroid Forum : http://goo.gl/26owYc') (Lit_Other '\\') 
                      ('n- DietPi Forum : http://dietpi.com/phpbb/viewforum.php?f=9')
                    )
                  } {(--backtitle)} {(DQ ('DietPi Bug Report'))} {(18)} {(70)}
                )
                (C {(/DietPi/dietpi/dietpi-banner)} {(1)})
                (C {(echo)} {(-e)} 
                  {
                    (DQ (Lit_Other '\\') ('n Bug report Sent. Thank you.') (Lit_Other '\\') 
                      ('n Your reference code: ') ($ VSub_Name '$UNIQUE_ID_HW') (-) ($ VSub_Name '$UNIQUE_ID_BUGNUMBER') (' ') (Lit_Other '\\') (n)
                    )
                  }
                )
              ]
              spids: [1542 1626]
            )
            (DParen
              child: (UnaryAssign op_id:Node_PostDPlus child:(LhsName name:UNIQUE_ID_BUGNUMBER))
              spids: [1634 1638]
            )
            (SimpleCommand
              words: [{(echo)} {(-e)} {(DQ ($ VSub_Name '$UNIQUE_ID_BUGNUMBER'))}]
              redirects: [
                (Redir
                  op: <Redir_Great '>'>
                  fd: 16777215
                  arg_word: {(DQ ($ VSub_Name '$FILE_BUG_NUMBER'))}
                )
              ]
            )
          ]
          spids: [16777215 1459]
        )
        (if_arm
          cond: [
            (Sentence
              child: 
                (DParen
                  child: 
                    (ArithBinary
                      op_id: Arith_DEqual
                      left: (ArithWord w:{($ VSub_Name '$BUG_REPORT_COMPLETED')})
                      right: (ArithUnary op_id:Node_UnaryMinus child:(ArithWord w:{(Lit_Digits 1)}))
                    )
                  spids: [1663 1673]
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (C {(whiptail)} {(--title)} {(DQ ('Upload failed'))} {(--msgbox)} 
              {
                (DQ ('Error: Unable to upload Bug report.') (Lit_Other '\\') (n) (Lit_Other '\\') 
                  ('nConnection to ') ($ VSub_Name '$FTP_ADDR') (' has failed:') (Lit_Other '\\') 
                  ('n- Check your network connection is functional.') (Lit_Other '\\') ('n- Please try again later.')
                )
              } {(--backtitle)} {(DQ ('DietPi Bug Report'))} {(12)} {(70)}
            )
            (C {(/DietPi/dietpi/dietpi-banner)} {(1)})
          ]
          spids: [1661 1676]
        )
        (if_arm
          cond: [
            (Sentence
              child: 
                (DParen
                  child: 
                    (ArithBinary
                      op_id: Arith_DEqual
                      left: (ArithWord w:{($ VSub_Name '$BUG_REPORT_COMPLETED')})
                      right: (ArithUnary op_id:Node_UnaryMinus child:(ArithWord w:{(Lit_Digits 2)}))
                    )
                  spids: [1727 1737]
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (C {(whiptail)} {(--title)} {(DQ ('Bug report upload failed'))} {(--msgbox)} 
              {
                (DQ ('Error: Bug report file exceeds size limit') (Lit_Other '\\') ('n - Max size = ') 
                  (ArithSubPart
                    anode: 
                      (ArithBinary
                        op_id: Arith_Slash
                        left: 
                          (ArithBinary
                            op_id: Arith_Slash
                            left: (ArithWord w:{($ VSub_Name '$UPLOAD_FILESIZE_LIMIT')})
                            right: (ArithWord w:{(Lit_Digits 1024)})
                          )
                        right: (ArithWord w:{(Lit_Digits 1024)})
                      )
                    spids: [1758 1771]
                  ) (MB) (Lit_Other '\\') ('n - Bug report size = ') 
                  (ArithSubPart
                    anode: 
                      (ArithBinary
                        op_id: Arith_Slash
                        left: 
                          (ArithBinary
                            op_id: Arith_Slash
                            left: (ArithWord w:{($ VSub_Name '$UPLOAD_FILESIZE')})
                            right: (ArithWord w:{(Lit_Digits 1024)})
                          )
                        right: (ArithWord w:{(Lit_Digits 1024)})
                      )
                    spids: [1775 1788]
                  ) (MB) (Lit_Other '\\') (n) (Lit_Other '\\') ('nThis bug report has NOT been sent.')
                )
              } {(--backtitle)} {(DQ ('DietPi Bug Report'))} {(12)} {(60)}
            )
            (C {(/DietPi/dietpi/dietpi-banner)} {(1)})
          ]
          spids: [1725 1740]
        )
        (if_arm
          cond: [
            (Sentence
              child: 
                (DParen
                  child: 
                    (ArithBinary
                      op_id: Arith_DEqual
                      left: (ArithWord w:{($ VSub_Name '$CREATE_BUG_REPORT')})
                      right: (ArithWord w:{(Lit_Digits 0)})
                    )
                  spids: [1819 1828]
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (C {(/DietPi/dietpi/dietpi-banner)} {(1)})
            (C {(echo)} {(-e)} 
              {(DQ (Lit_Other '\\') ('nBug report aborted by user.') (Lit_Other '\\') (n))}
            )
          ]
          spids: [1817 1831]
        )
      ]
      spids: [16777215 1853]
    )
    (C {(cd)} {(DQ ($ VSub_Name '$HOME'))})
    (SimpleCommand
      words: [{(rm)} {(-R)} {(DQ ($ VSub_Name '$FILEPATH_TEMP'))}]
      redirects: [(Redir op:<Redir_AndGreat '&>'> fd:16777215 arg_word:{(/dev/null)})]
    )
    (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(0)})
  ]
  spids: [3]
)