##################################
#                                #
# Last modified 02/15/2011       # 
#                                #
# Georgi Marinov                 #
#                                # 
##################################

import sys
import string
import math
from sets import Set

def run():

    if len(sys.argv) < 4:
        print 'usage: python %s GENCODE-data iIDR outfilename1 outfilename2' % sys.argv[0]
        sys.exit(1)
    
    input=sys.argv[1]
    iIDR=sys.argv[2]
    outfile1 = open(sys.argv[3], 'w')
    outfile2 = open(sys.argv[4], 'w')

    numbertoIDRDict={}
    i=0
    linelist = open(iIDR)
    for line in linelist:
        fields=line.strip().split('\t')
        IDR=fields[0]
        numbertoIDRDict[i]=IDR
        i+=1

    outline='#ID\tchr\tleft\tright\tFPKM\tFPKM_lo\tFPKM_hi\tstatus\tnpIDR'
    outfile1.write(outline+'\n')
    outfile2.write(outline+'\n')

    i=0
    linelist = open(input)
    for line in linelist:
        if line.startswith('ID1'):
            continue
        fields=line.strip().split('\t')
        ID=fields[0]
        IDR=numbertoIDRDict[i]
        chr=fields[1]
        left=fields[2]
        right=fields[3]
        FPKM1=fields[4]
        FPKM1_lo=fields[5]
        FPKM1_hi=fields[6]
        status1=fields[7]
        FPKM2=fields[8]
        FPKM2_lo=fields[9]
        FPKM2_hi=fields[10]
        status2=fields[11]
        outline1=ID+'\t'+chr+'\t'+left+'\t'+right+'\t'+FPKM1+'\t'+FPKM1_lo+'\t'+FPKM1_hi+'\t'+status1+'\t'+IDR
        outline2=ID+'\t'+chr+'\t'+left+'\t'+right+'\t'+FPKM2+'\t'+FPKM2_lo+'\t'+FPKM2_hi+'\t'+status2+'\t'+IDR
        outfile1.write(outline1+'\n')
        outfile2.write(outline2+'\n')
        i+=1

    outfile1.close()
    outfile2.close()

run()