original_string: private function magicRun()
      {
          $query = $this->createQuery();
  
          try{
              $this->data = $this->reportDownloader->downloadReportWithAwql(
                  $query, $this->format);
          }catch(ApiException $e)
          {
              $field = $e->getErrors()[0]->getFieldPath();
  
              if(!empty($field)){
                  $this->except($field);
                  $this->magicRun();
              }else
                  var_dump($e->getMessage());
          }
  
      }
code: private function magicRun()
      {
          $query = $this->createQuery();
  
          try{
              $this->data = $this->reportDownloader->downloadReportWithAwql(
                  $query, $this->format);
          }catch(ApiException $e)
          {
              $field = $e->getErrors()[0]->getFieldPath();
  
              if(!empty($field)){
                  $this->except($field);
                  $this->magicRun();
              }else
                  var_dump($e->getMessage());
          }
  
      }
code_tokens: private function magicRun ( ) { $ query = $ this -> createQuery ( ) ; try { $ this -> data = $ this -> reportDownloader -> downloadReportWithAwql ( $ query , $ this -> format ) ; } catch ( ApiException $ e ) { $ field = $ e -> getErrors ( ) [ 0 ] -> getFieldPath ( ) ; if ( ! empty ( $ field ) ) { $ this -> except ( $ field ) ; $ this -> magicRun ( ) ; } else var_dump ( $ e -> getMessage ( ) ) ; } }
docstring: Magic Run the AWQL
  
  Will try to download the report and if fails,
  It pulls out the conflicted field and try again the download.
docstring_tokens: Magic Run the AWQL