def download_fastqs(self,dest_dir,barcode,overwrite=False):
fastq_props = self.get_fastq_files_props(barcode=barcode)<EOL>res = {}  <EOL>for f in fastq_props:<EOL><INDENT>props = fastq_props[f]<EOL>read_num = int(props["<STR_LIT>"])<EOL>barcode = props["<STR_LIT>"]<EOL>if barcode not in res:<EOL><INDENT>res[barcode] = {}<EOL><DEDENT>name = props["<STR_LIT>"]<EOL>filedest = os.path.abspath(os.path.join(dest_dir,name))<EOL>res[barcode][read_num] = filedest<EOL>if os.path.exists(filedest) and not overwrite:<EOL><INDENT>continue<EOL><DEDENT>debug_logger.debug("<STR_LIT>".format(name=name,project=self.dx_project_name,path=filedest))<EOL>dxpy.download_dxfile(f,filedest)<EOL><DEDENT>return res<EOL>
Downloads all FASTQ files in the project that match the specified barcode, or if a barcode 
isn't given, all FASTQ files as in this case it is assumed that this is not a multiplexed 
experiment. Files are downloaded to the directory specified by dest_dir. 

Args:
    barcode: `str`. The barcode sequence used. 
    dest_dir: `str`. The local directory in which the FASTQs will be downloaded.
    overwrite: `bool`. If True, then if the file to download already exists in dest_dir, the 
        file will be downloaded again, overwriting it. If False, the file will not be 
        downloaded again from DNAnexus.

Returns: 
     `dict`: The key is the barcode, and the value is a dict with integer keys of 1 for the 
      forward reads file, and 2 for the reverse reads file. If not paired-end, 

Raises:
    `Exception`: The barcode is specified and less than or greater than 2 FASTQ files are found.