##################################
#                                #
# Last modified 2017/08/25       # 
#                                #
# Georgi Marinov                 #
#                                # 
##################################

import sys
import string
import math

def run():

    if len(sys.argv) < 3:
        print 'usage: python %s cluster_significance.txt leafcutter_junctiontable outputfilename' % sys.argv[0]
        sys.exit(1)
    
    cluster_significance = sys.argv[1]
    SJtable = sys.argv[2]

    DXClusterDict = {}
    linelist = open(cluster_significance)
    for line in linelist:
        fields=line.strip().split('\t')
        if line.startswith('cluster'):
            continue
        if line.startswith('#'):
            continue
        cluster = fields[0].split(':')[-1]
        DXClusterDict[cluster] = 1

    print DXClusterDict

    outfile = open(sys.argv[3], 'w')

    i=0
    linelist = open(SJtable)
    for line in linelist:
        i+=1
        if i == 1:
            outfile.write('#chr\tleft\tright\tcluster\t' + line)
            continue
        fields = line.strip().split(' ')
        cluster = fields[0].split(':')[3]
        if DXClusterDict.has_key(cluster):
            pass
        else:
            continue
        outline = line.replace(':','\t').replace(' ','\t')
        outfile.write(outline)

    outfile.close()
   
run()