##################################
#                                #
# Last modified 08/16/2011       # 
#                                #
# Georgi Marinov                 #
#                                # 
##################################

import sys
import string

def run():

    if len(sys.argv) < 2:
        print 'usage: python %s input outfilename' % sys.argv[0]
        sys.exit(1)

    datafilename = sys.argv[1]
    outfilename = sys.argv[2]

    outfile = open(outfilename, 'w')

    lineslist  = open(datafilename)
    j=1
    i=1
    for line in lineslist:
        j+=1
        if j % 1000000 == 0:
            print str(j/1000000) + 'M reads processed'
        if i==1:
            i=2
            if line.startswith('@'):
                pass
            else:
                print 'fastq file corrupted, exiting'
                sys.exit(1)
            fields=line.split(' ')[0].split(':')
            fields2=line.split(' ')[1].split(':')
            outline=fields[0] + '_' + fields[1] + '_' + fields[2] + ':' + fields[3] + ':' + fields[4] + ':' + fields[5] + ':' + fields[6] + '#0' + fields2[0]
            outfile.write(outline + '\n')
            continue
        if i==2:
            outfile.write(line)
            i=3
            continue
        if i==3:
            outfile.write(line)
            i=4
            continue
        if i==4:
            outfile.write(line)
            i=1
            continue
        
    outfile.close()
        
run()

