#!/usr/bin/perl

$myColorH3K9me3 = "255,128,0";  # orange
$myColorH4K20me3 = "0,102,0";   # green
$myColorInput = "102,102,102";  # grey

open(OUT, ">trackDb.hmod.txt");

##### supertrack: H3K9me3 and H4K20me3 (depth & peaks) #####
$prio = 300;
print OUT "track\tdataHMOD\n";
print OUT "compositeTrack\ton\n";
print OUT "shortLabel\tHistone Mod\n";
print OUT "longLabel\tHistoneMod ChIP-seq\n";
print OUT "priority\t$prio\n";
print OUT "subGroup1\tMark Mark H3K9me3=H3K9me3 H4K20me3=H4K20me3 input=input\n";
print OUT "subGroup2\tType Type depth=depth peak=peak other=other\n";
print OUT "dimensions\tdimX=Mark dimY=Type\n";
print OUT "sortOrder\tMark=+ Type=+\n";
print OUT "type\tbed 3\n\n";

#H3K9me3 tracks
$prio++;
print OUT "    track\tH3K9me3_Hardison-rep1.D\n";
print OUT "    parent\tdataHMOD\n";
print OUT "    bigDataUrl\tDATA/hmod/H3K9me3_Hardison-rep1.A2.bigWig\n";
print OUT "    shortLabel\tH3K9me3_Hardison-rep1\n";
print OUT "    longLabel\tH3K9me3_Hardison-rep1 depth\n";
print OUT "    type\tbigWig\n";
print OUT "    color\t$myColorH3K9me3\n";
print OUT "    priority\t$prio\n";
print OUT "    visibility\tfull\n";
print OUT "    dragAndDrop\ton\n";
print OUT "    alwaysZero\ton\n";
print OUT "    graphTypeDefault\tbar\n";
print OUT "    maxHeightPixels\t150:40:11\n";
print OUT "    viewLimits\t0:80\n";
print OUT "    showSubtrackColorOnUi\ton\n";
print OUT "    subGroups\tMark=H3K9me3 Type=depth\n\n";
$prio++;
print OUT "    track\tH3K9me3_Hardison-rep2.D\n";
print OUT "    parent\tdataHMOD\n";
print OUT "    bigDataUrl\tDATA/hmod/H3K9me3_Hardison-rep2.A2.bigWig\n";
print OUT "    shortLabel\tH3K9me3_Hardison-rep2\n";
print OUT "    longLabel\tH3K9me3_Hardison-rep2 depth\n";
print OUT "    type\tbigWig\n";
print OUT "    color\t$myColorH3K9me3\n";
print OUT "    priority\t$prio\n";
print OUT "    visibility\tfull\n";
print OUT "    dragAndDrop\ton\n";
print OUT "    alwaysZero\ton\n";
print OUT "    graphTypeDefault\tbar\n";
print OUT "    maxHeightPixels\t150:40:11\n";
print OUT "    viewLimits\t0:80\n";
print OUT "    showSubtrackColorOnUi\ton\n";
print OUT "    subGroups\tMark=H3K9me3 Type=depth\n\n";
$prio++;
print OUT "    track\tH3K9me3_Hardison.FC\n";
print OUT "    parent\tdataHMOD\n";
print OUT "    bigDataUrl\tDATA/hmod/H3K9me3_Hardison.FoldChange_ENCFF289ATH.bigWig\n";
print OUT "    shortLabel\tH3K9me3_Hardison-FC\n";
print OUT "    longLabel\tH3K9me3_Hardison FoldChange (ENCFF289ATH)\n";
print OUT "    type\tbigWig\n";
print OUT "    color\t$myColorH3K9me3\n";
print OUT "    priority\t$prio\n";
print OUT "    visibility\tfull\n";
print OUT "    dragAndDrop\ton\n";
print OUT "    alwaysZero\ton\n";
print OUT "    graphTypeDefault\tbar\n";
print OUT "    maxHeightPixels\t150:40:11\n";
print OUT "    viewLimits\t0:10\n";
print OUT "    showSubtrackColorOnUi\ton\n";
print OUT "    subGroups\tMark=H3K9me3 Type=other\n\n";
$prio++;
print OUT "    track\tH3K9me3_Hardison.P\n";
print OUT "    parent\tdataHMOD\n";
print OUT "    bigDataUrl\tDATA/hmod/H3K9me3_Hardison.peaks_ENCFF180LQA.bigBed\n";
print OUT "    shortLabel\tH3K9me3_Hardison peaks\n";
print OUT "    longLabel\tH3K9me3_Hardison peaks (ENCFF180LQA)\n";
print OUT "    type\tbigBed\n";
print OUT "    color\t$myColorH3K9me3\n";
print OUT "    priority\t$prio\n";
print OUT "    visibility\tdense\n";
print OUT "    subGroups\tMark=H3K9me3 Type=peak\n\n";


#H4K20me3 tracks
$prio++;
print OUT "    track\tH4K20me3_Bernstein.D\n";
print OUT "    parent\tdataHMOD\n";
print OUT "    bigDataUrl\tDATA/hmod/H4K20me3_Bernstein.A2.bigWig\n";
print OUT "    shortLabel\tH4K20me3_Bernstein\n";
print OUT "    longLabel\tH4K20me3_Bernstein depth\n";
print OUT "    type\tbigWig\n";
print OUT "    color\t$myColorH4K20me3\n";
print OUT "    priority\t$prio\n";
print OUT "    visibility\tfull\n";
print OUT "    dragAndDrop\ton\n";
print OUT "    alwaysZero\ton\n";
print OUT "    graphTypeDefault\tbar\n";
print OUT "    maxHeightPixels\t150:40:11\n";
print OUT "    viewLimits\t0:30\n";
print OUT "    showSubtrackColorOnUi\ton\n";
print OUT "    subGroups\tMark=H4K20me3 Type=depth\n\n";
$prio++;
print OUT "    track\tWCE_Bernstein.D\n";
print OUT "    parent\tdataHMOD\n";
print OUT "    bigDataUrl\tDATA/hmod/WCE_Bernstein.A2.bigWig\n";
print OUT "    shortLabel\tinput_Bernstein\n";
print OUT "    longLabel\tinput_Bernstein depth\n";
print OUT "    type\tbigWig\n";
print OUT "    color\t$myColorInput\n";
print OUT "    priority\t$prio\n";
print OUT "    visibility\tfull\n";
print OUT "    dragAndDrop\ton\n";
print OUT "    alwaysZero\ton\n";
print OUT "    graphTypeDefault\tbar\n";
print OUT "    maxHeightPixels\t150:40:11\n";
print OUT "    viewLimits\t0:30\n";
print OUT "    showSubtrackColorOnUi\ton\n";
print OUT "    subGroups\tMark=input Type=depth\n\n";

$prio++;
print OUT "    track\tH4K20me3_Young.D\n";
print OUT "    parent\tdataHMOD\n";
print OUT "    bigDataUrl\tDATA/hmod/H4K20me3_Young.A2.bigWig\n";
print OUT "    shortLabel\tH4K20me3_Young\n";
print OUT "    longLabel\tH4K20me3_Young depth\n";
print OUT "    type\tbigWig\n";
print OUT "    color\t$myColorH4K20me3\n";
print OUT "    priority\t$prio\n";
print OUT "    visibility\tfull\n";
print OUT "    dragAndDrop\ton\n";
print OUT "    alwaysZero\ton\n";
print OUT "    graphTypeDefault\tbar\n";
print OUT "    maxHeightPixels\t150:40:11\n";
print OUT "    viewLimits\t0:30\n";
print OUT "    showSubtrackColorOnUi\ton\n";
print OUT "    subGroups\tMark=H4K20me3 Type=depth\n\n";

$prio++;
print OUT "    track\tH4K20me3_Zhao.D\n";
print OUT "    parent\tdataHMOD\n";
print OUT "    bigDataUrl\tDATA/hmod/H4K20me3_Zhao.A2.bigWig\n";
print OUT "    shortLabel\tH4K20me3_Zhao\n";
print OUT "    longLabel\tH4K20me3_Zhao depth\n";
print OUT "    type\tbigWig\n";
print OUT "    color\t$myColorH4K20me3\n";
print OUT "    priority\t$prio\n";
print OUT "    visibility\tfull\n";
print OUT "    dragAndDrop\ton\n";
print OUT "    alwaysZero\ton\n";
print OUT "    graphTypeDefault\tbar\n";
print OUT "    maxHeightPixels\t150:40:11\n";
print OUT "    viewLimits\t0:30\n";
print OUT "    showSubtrackColorOnUi\ton\n";
print OUT "    subGroups\tMark=H4K20me3 Type=depth\n\n";
$prio++;
print OUT "    track\tinput_Zhao.D\n";
print OUT "    parent\tdataHMOD\n";
print OUT "    bigDataUrl\tDATA/hmod/input_Zhao.A2.bigWig\n";
print OUT "    shortLabel\tinput_Zhao\n";
print OUT "    longLabel\tinput_Zhao depth\n";
print OUT "    type\tbigWig\n";
print OUT "    color\t$myColorInput\n";
print OUT "    priority\t$prio\n";
print OUT "    visibility\tfull\n";
print OUT "    dragAndDrop\ton\n";
print OUT "    alwaysZero\ton\n";
print OUT "    graphTypeDefault\tbar\n";
print OUT "    maxHeightPixels\t150:40:11\n";
print OUT "    viewLimits\t0:30\n";
print OUT "    showSubtrackColorOnUi\ton\n";
print OUT "    subGroups\tMark=input Type=depth\n\n";

$prio++;
print OUT "    track\tH4K20me3_Bernstein.P\n";
print OUT "    parent\tdataHMOD\n";
print OUT "    bigDataUrl\tDATA/hmod/H4K20me3_Bernstein.A2_v1I.bigBed\n";
print OUT "    shortLabel\tH4K20me3_Bernstein peaks\n";
print OUT "    longLabel\tH4K20me3_Bernstein peaks\n";
print OUT "    type\tbigBed\n";
print OUT "    color\t$myColorH4K20me3\n";
print OUT "    priority\t$prio\n";
print OUT "    visibility\tdense\n";
print OUT "    subGroups\tMark=H4K20me3 Type=peak\n\n";
$prio++;
print OUT "    track\tH4K20me3_Zhao.P\n";
print OUT "    parent\tdataHMOD\n";
print OUT "    bigDataUrl\tDATA/hmod/H4K20me3_Zhao.A2_v1I.bigBed\n";
print OUT "    shortLabel\tH4K20me3_Zhao peaks\n";
print OUT "    longLabel\tH4K20me3_Zhao peaks\n";
print OUT "    type\tbigBed\n";
print OUT "    color\t$myColorH4K20me3\n";
print OUT "    priority\t$prio\n";
print OUT "    visibility\tdense\n";
print OUT "    subGroups\tMark=H4K20me3 Type=peak\n\n";
$prio++;
print OUT "    track\tH4K20me3_fromHUryuB.P\n";
print OUT "    parent\tdataHMOD\n";
print OUT "    bigDataUrl\tDATA/hmod/H4K20me3_fromHUryu.broad.bigBed\n";
print OUT "    shortLabel\tH4K20me3 - Uryu broad\n";
print OUT "    longLabel\tH4K20me3 peaks from HUryu (broad)\n";
print OUT "    type\tbigBed\n";
print OUT "    color\t$myColorH4K20me3\n";
print OUT "    priority\t$prio\n";
print OUT "    visibility\tdense\n";
print OUT "    subGroups\tMark=H4K20me3 Type=peak\n\n";
$prio++;
print OUT "    track\tH4K20me3_fromHUryuN.P\n";
print OUT "    parent\tdataHMOD\n";
print OUT "    bigDataUrl\tDATA/hmod/H4K20me3_fromHUryu.narrow.bigBed\n";
print OUT "    shortLabel\tH4K20me3 - Uryu narrow\n";
print OUT "    longLabel\tH4K20me3 peaks from HUryu (narrow)\n";
print OUT "    type\tbigBed\n";
print OUT "    color\t$myColorH4K20me3\n";
print OUT "    priority\t$prio\n";
print OUT "    visibility\tdense\n";
print OUT "    subGroups\tMark=H4K20me3 Type=peak\n\n";


