    track gtexRnaSignalSpleenSRR1079046
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1079046.hg19.bigWig
    shortLabel spleen F XV7Q
    longLabel GTEx RNA signal from female Spleen (GTEX-XV7Q-0126-SM-4BRVK)
    subGroups sex=F age=a40
    color 227,184,136
    metadata donor=GTEX-XV7Q age=40 sex=F hardyScore=0 sample=GTEX-XV7Q-0126-SM-4BRVK \
            tissue=spleen autolysisScore=2 rnaIntegrity=8.6 batch=BP-34373 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=12/14/2012

    track gtexRnaSignalSpleenSRR1086983
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1086983.hg19.bigWig
    shortLabel spleen F T5JW
    longLabel GTEx RNA signal from female Spleen (GTEX-T5JW-0126-SM-4DM6K)
    subGroups sex=F age=a20
    color 227,184,136
    metadata donor=GTEX-T5JW age=20 sex=F hardyScore=0 sample=GTEX-T5JW-0126-SM-4DM6K \
            tissue=spleen autolysisScore=1 rnaIntegrity=7.3 batch=BP-25965 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=06/05/2012

    track gtexRnaSignalSpleenSRR1090984
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1090984.hg19.bigWig
    shortLabel spleen F R55G
    longLabel GTEx RNA signal from female Spleen (GTEX-R55G-0226-SM-48FEI)
    subGroups sex=F age=a40
    color 227,184,136
    metadata donor=GTEX-R55G age=40 sex=F hardyScore=0 sample=GTEX-R55G-0226-SM-48FEI \
            tissue=spleen autolysisScore=1 rnaIntegrity=7.7 batch=BP-21546 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=01/18/2012

    track gtexRnaSignalSpleenSRR1091500
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1091500.hg19.bigWig
    shortLabel spleen F Q734
    longLabel GTEx RNA signal from female Spleen (GTEX-Q734-0226-SM-48U1A)
    subGroups sex=F age=a40
    color 227,184,136
    metadata donor=GTEX-Q734 age=40 sex=F hardyScore=0 sample=GTEX-Q734-0226-SM-48U1A \
            tissue=spleen autolysisScore=2 rnaIntegrity=7.8 batch=BP-20044 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=11/10/2011

    track gtexRnaSignalSpleenSRR1092257
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1092257.hg19.bigWig
    shortLabel spleen F POMQ
    longLabel GTEx RNA signal from female Spleen (GTEX-POMQ-0126-SM-48TD6)
    subGroups sex=F age=a20
    color 227,184,136
    metadata donor=GTEX-POMQ age=20 sex=F hardyScore=0 sample=GTEX-POMQ-0126-SM-48TD6 \
            tissue=spleen autolysisScore=1 rnaIntegrity=7.3 batch=BP-19350 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=10/12/2011

    track gtexRnaSignalSpleenSRR1094073
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1094073.hg19.bigWig
    shortLabel spleen F PX3G
    longLabel GTEx RNA signal from female Spleen (GTEX-PX3G-0926-SM-48U12)
    subGroups sex=F age=a20
    color 227,184,136
    metadata donor=GTEX-PX3G age=20 sex=F hardyScore=0 sample=GTEX-PX3G-0926-SM-48U12 \
            tissue=spleen autolysisScore=1 rnaIntegrity=7.8 batch=BP-19882 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=11/03/2011

    track gtexRnaSignalSpleenSRR1327747
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1327747.hg19.bigWig
    shortLabel spleen F 11XUK
    longLabel GTEx RNA signal from female Spleen (GTEX-11XUK-0426-SM-5EQML)
    subGroups sex=F age=a40
    color 227,184,136
    metadata donor=GTEX-11XUK age=40 sex=F hardyScore=0 sample=GTEX-11XUK-0426-SM-5EQML \
            tissue=spleen autolysisScore=1 rnaIntegrity=6 batch=BP-44312 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=10/04/2013

    track gtexRnaSignalSpleenSRR1348911
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1348911.hg19.bigWig
    shortLabel spleen F 13VXT
    longLabel GTEx RNA signal from female Spleen (GTEX-13VXT-1326-SM-5LU3Y)
    subGroups sex=F age=a20
    color 227,184,136
    metadata donor=GTEX-13VXT age=20 sex=F hardyScore=0 sample=GTEX-13VXT-1326-SM-5LU3Y \
            tissue=spleen autolysisScore=2 rnaIntegrity=6.4 batch=BP-47486 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=12/17/2013

    track gtexRnaSignalSpleenSRR1351857
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1351857.hg19.bigWig
    shortLabel spleen F 12WSJ
    longLabel GTEx RNA signal from female Spleen (GTEX-12WSJ-0526-SM-5GCOZ)
    subGroups sex=F age=a40
    color 227,184,136
    metadata donor=GTEX-12WSJ age=40 sex=F hardyScore=0 sample=GTEX-12WSJ-0526-SM-5GCOZ \
            tissue=spleen autolysisScore=0 rnaIntegrity=5.8 batch=BP-43881 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=09/23/2013

    track gtexRnaSignalSpleenSRR1375549
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1375549.hg19.bigWig
    shortLabel spleen F ZYWO
    longLabel GTEx RNA signal from female Spleen (GTEX-ZYWO-0226-SM-5GZX3)
    subGroups sex=F age=a40
    color 227,184,136
    metadata donor=GTEX-ZYWO age=40 sex=F hardyScore=0 sample=GTEX-ZYWO-0226-SM-5GZX3 \
            tissue=spleen autolysisScore=0 rnaIntegrity=6.9 batch=BP-43693 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=09/17/2013

    track gtexRnaSignalSpleenSRR1378045
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1378045.hg19.bigWig
    shortLabel spleen F 12WSK
    longLabel GTEx RNA signal from female Spleen (GTEX-12WSK-0126-SM-5GCO7)
    subGroups sex=F age=a40
    color 227,184,136
    metadata donor=GTEX-12WSK age=40 sex=F hardyScore=0 sample=GTEX-12WSK-0126-SM-5GCO7 \
            tissue=spleen autolysisScore=1 rnaIntegrity=6.9 batch=BP-44157 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=10/01/2013

    track gtexRnaSignalSpleenSRR1382687
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1382687.hg19.bigWig
    shortLabel spleen F 1399S
    longLabel GTEx RNA signal from female Spleen (GTEX-1399S-0226-SM-5IFFG)
    subGroups sex=F age=a30
    color 227,184,136
    metadata donor=GTEX-1399S age=30 sex=F hardyScore=0 sample=GTEX-1399S-0226-SM-5IFFG \
            tissue=spleen autolysisScore=1 rnaIntegrity=7.1 batch=BP-46680 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=12/05/2013

    track gtexRnaSignalSpleenSRR1391553
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1391553.hg19.bigWig
    shortLabel spleen F 11VI4
    longLabel GTEx RNA signal from female Spleen (GTEX-11VI4-0126-SM-5GU6Z)
    subGroups sex=F age=a40
    color 227,184,136
    metadata donor=GTEX-11VI4 age=40 sex=F hardyScore=0 sample=GTEX-11VI4-0126-SM-5GU6Z \
            tissue=spleen autolysisScore=1 rnaIntegrity=7.2 batch=BP-43753 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=09/19/2013

    track gtexRnaSignalSpleenSRR1392861
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1392861.hg19.bigWig
    shortLabel spleen F ZV6S
    longLabel GTEx RNA signal from female Spleen (GTEX-ZV6S-0826-SM-5NQ6Z)
    subGroups sex=F age=a40
    color 227,184,136
    metadata donor=GTEX-ZV6S age=40 sex=F hardyScore=0 sample=GTEX-ZV6S-0826-SM-5NQ6Z \
            tissue=spleen autolysisScore=1 rnaIntegrity=5.7 batch=BP-43308 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=09/09/2013

    track gtexRnaSignalSpleenSRR1436323
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1436323.hg19.bigWig
    shortLabel spleen F Y5LM
    longLabel GTEx RNA signal from female Spleen (GTEX-Y5LM-0326-SM-4VBRN)
    subGroups sex=F age=a40
    color 227,184,136
    metadata donor=GTEX-Y5LM age=40 sex=F hardyScore=0 sample=GTEX-Y5LM-0326-SM-4VBRN \
            tissue=spleen autolysisScore=1 rnaIntegrity=8.8 batch=BP-35803 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=02/05/2013

    track gtexRnaSignalSpleenSRR1471731
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1471731.hg19.bigWig
    shortLabel spleen F ZP4G
    longLabel GTEx RNA signal from female Spleen (GTEX-ZP4G-0326-SM-4YCEF)
    subGroups sex=F age=a20
    color 227,184,136
    metadata donor=GTEX-ZP4G age=20 sex=F hardyScore=0 sample=GTEX-ZP4G-0326-SM-4YCEF \
            tissue=spleen autolysisScore=1 rnaIntegrity=7.8 batch=BP-42869 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=08/29/2013

    track gtexRnaSignalSpleenSRR1488111
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1488111.hg19.bigWig
    shortLabel spleen F 11P81
    longLabel GTEx RNA signal from female Spleen (GTEX-11P81-1326-SM-5GU5S)
    subGroups sex=F age=a30
    color 227,184,136
    metadata donor=GTEX-11P81 age=30 sex=F hardyScore=0 sample=GTEX-11P81-1326-SM-5GU5S \
            tissue=spleen autolysisScore=1 rnaIntegrity=7.1 batch=BP-44312 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=10/04/2013

    track gtexRnaSignalSpleenSRR1077944
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1077944.hg19.bigWig
    shortLabel spleen F QCQG
    longLabel GTEx RNA signal from female Spleen (GTEX-QCQG-0226-SM-48U28)
    subGroups sex=F age=a50
    color 227,184,136
    metadata donor=GTEX-QCQG age=50 sex=F hardyScore=0 sample=GTEX-QCQG-0226-SM-48U28 \
            tissue=spleen autolysisScore=1 rnaIntegrity=6.6 batch=BP-20114 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=11/15/2011

    track gtexRnaSignalSpleenSRR1085087
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1085087.hg19.bigWig
    shortLabel spleen F UJHI
    longLabel GTEx RNA signal from female Spleen (GTEX-UJHI-0126-SM-4IHLP)
    subGroups sex=F age=a50
    color 227,184,136
    metadata donor=GTEX-UJHI age=50 sex=F hardyScore=0 sample=GTEX-UJHI-0126-SM-4IHLP \
            tissue=spleen autolysisScore=1 rnaIntegrity=8.1 batch=BP-25734 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=05/29/2012

    track gtexRnaSignalSpleenSRR1318732
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1318732.hg19.bigWig
    shortLabel spleen F 13FH7
    longLabel GTEx RNA signal from female Spleen (GTEX-13FH7-1326-SM-5IFG8)
    subGroups sex=F age=a50
    color 227,184,136
    metadata donor=GTEX-13FH7 age=50 sex=F hardyScore=0 sample=GTEX-13FH7-1326-SM-5IFG8 \
            tissue=spleen autolysisScore=1 rnaIntegrity=8.1 batch=BP-46925 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=12/10/2013

    track gtexRnaSignalSpleenSRR1327279
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1327279.hg19.bigWig
    shortLabel spleen F WXYG
    longLabel GTEx RNA signal from female Spleen (GTEX-WXYG-0126-SM-4OND7)
    subGroups sex=F age=a50
    color 227,184,136

    track gtexRnaSignalSpleenSRR1396227
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1396227.hg19.bigWig
    shortLabel spleen F ZLWG
    longLabel GTEx RNA signal from female Spleen (GTEX-ZLWG-0426-SM-4WWFA)
    subGroups sex=F age=a50
    color 227,184,136
    metadata donor=GTEX-ZLWG age=50 sex=F hardyScore=0 sample=GTEX-ZLWG-0426-SM-4WWFA \
            tissue=spleen autolysisScore=0 rnaIntegrity=8 batch=BP-43141 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=09/05/2013

    track gtexRnaSignalSpleenSRR1400775
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1400775.hg19.bigWig
    shortLabel spleen F ZF2S
    longLabel GTEx RNA signal from female Spleen (GTEX-ZF2S-0326-SM-4WKGD)
    subGroups sex=F age=a50
    color 227,184,136

    track gtexRnaSignalSpleenSRR1415510
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1415510.hg19.bigWig
    shortLabel spleen F 13N11
    longLabel GTEx RNA signal from female Spleen (GTEX-13N11-0126-SM-5KM2Z)
    subGroups sex=F age=a50
    color 227,184,136
    metadata donor=GTEX-13N11 age=50 sex=F hardyScore=0 sample=GTEX-13N11-0126-SM-5KM2Z \
            tissue=spleen autolysisScore=0 rnaIntegrity=6.9 batch=BP-47141 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=12/13/2013

    track gtexRnaSignalSpleenSRR1436740
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1436740.hg19.bigWig
    shortLabel spleen F ZZPU
    longLabel GTEx RNA signal from female Spleen (GTEX-ZZPU-0126-SM-5E446)
    subGroups sex=F age=a50
    color 227,184,136
    metadata donor=GTEX-ZZPU age=50 sex=F hardyScore=0 sample=GTEX-ZZPU-0126-SM-5E446 \
            tissue=spleen autolysisScore=1 rnaIntegrity=6.2 batch=BP-43495 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=09/12/2013

    track gtexRnaSignalSpleenSRR1440332
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1440332.hg19.bigWig
    shortLabel spleen F 147F3
    longLabel GTEx RNA signal from female Spleen (GTEX-147F3-0126-SM-5NQBJ)
    subGroups sex=F age=a50
    color 227,184,136
    metadata donor=GTEX-147F3 age=50 sex=F hardyScore=0 sample=GTEX-147F3-0126-SM-5NQBJ \
            tissue=spleen autolysisScore=1 rnaIntegrity=6.9 batch=BP-47696 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=12/20/2013

    track gtexRnaSignalSpleenSRR1444156
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1444156.hg19.bigWig
    shortLabel spleen F Y3IK
    longLabel GTEx RNA signal from female Spleen (GTEX-Y3IK-0126-SM-4WWE9)
    subGroups sex=F age=a50
    color 227,184,136
    metadata donor=GTEX-Y3IK age=50 sex=F hardyScore=0 sample=GTEX-Y3IK-0126-SM-4WWE9 \
            tissue=spleen autolysisScore=2 rnaIntegrity=8.4 batch=BP-35206 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=01/16/2013

    track gtexRnaSignalSpleenSRR1456991
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1456991.hg19.bigWig
    shortLabel spleen F W5WG
    longLabel GTEx RNA signal from female Spleen (GTEX-W5WG-0626-SM-4SOID)
    subGroups sex=F age=a50
    color 227,184,136
    metadata donor=GTEX-W5WG age=50 sex=F hardyScore=0 sample=GTEX-W5WG-0626-SM-4SOID \
            tissue=spleen autolysisScore=1 rnaIntegrity=8 batch=BP-40880 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=07/16/2013

    track gtexRnaSignalSpleenSRR1487485
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1487485.hg19.bigWig
    shortLabel spleen F Y8LW
    longLabel GTEx RNA signal from female Spleen (GTEX-Y8LW-0126-SM-4VBS1)
    subGroups sex=F age=a50
    color 227,184,136
    metadata donor=GTEX-Y8LW age=50 sex=F hardyScore=0 sample=GTEX-Y8LW-0126-SM-4VBS1 \
            tissue=spleen autolysisScore=2 rnaIntegrity=7.2 batch=BP-41767 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=08/01/2013

    track gtexRnaSignalSpleenSRR1095549
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1095549.hg19.bigWig
    shortLabel spleen F XUJ4
    longLabel GTEx RNA signal from female Spleen (GTEX-XUJ4-0226-SM-4BOP8)
    subGroups sex=F age=a60
    color 227,184,136
    metadata donor=GTEX-XUJ4 age=60 sex=F hardyScore=0 sample=GTEX-XUJ4-0226-SM-4BOP8 \
            tissue=spleen autolysisScore=1 rnaIntegrity=7.2 batch=BP-34205 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=12/11/2012

    track gtexRnaSignalSpleenSRR1309597
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1309597.hg19.bigWig
    shortLabel spleen F 11DXX
    longLabel GTEx RNA signal from female Spleen (GTEX-11DXX-0726-SM-5H12X)
    subGroups sex=F age=a60
    color 227,184,136
    metadata donor=GTEX-11DXX age=60 sex=F hardyScore=0 sample=GTEX-11DXX-0726-SM-5H12X \
            tissue=spleen autolysisScore=0 rnaIntegrity=5.8 batch=BP-43783 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=09/19/2013

    track gtexRnaSignalSpleenSRR1311205
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1311205.hg19.bigWig
    shortLabel spleen F 1122O
    longLabel GTEx RNA signal from female Spleen (GTEX-1122O-0526-SM-5N9DM)
    subGroups sex=F age=a60
    color 227,184,136
    metadata donor=GTEX-1122O age=60 sex=F hardyScore=0 sample=GTEX-1122O-0526-SM-5N9DM \
            tissue=spleen autolysisScore=0 rnaIntegrity=7.8 batch=BP-43989 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=09/26/2013

    track gtexRnaSignalSpleenSRR1335875
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1335875.hg19.bigWig
    shortLabel spleen F 13PL7
    longLabel GTEx RNA signal from female Spleen (GTEX-13PL7-1126-SM-5MR5O)
    subGroups sex=F age=a60
    color 227,184,136
    metadata donor=GTEX-13PL7 age=60 sex=F hardyScore=0 sample=GTEX-13PL7-1126-SM-5MR5O \
            tissue=spleen autolysisScore=1 rnaIntegrity=7.3 batch=BP-47656 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=12/19/2013

    track gtexRnaSignalSpleenSRR1345585
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1345585.hg19.bigWig
    shortLabel spleen F 146FR
    longLabel GTEx RNA signal from female Spleen (GTEX-146FR-1926-SM-5NQA6)
    subGroups sex=F age=a60
    color 227,184,136
    metadata donor=GTEX-146FR age=60 sex=F hardyScore=0 sample=GTEX-146FR-1926-SM-5NQA6 \
            tissue=spleen autolysisScore=1 rnaIntegrity=7.5 batch=BP-47696 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=12/20/2013

    track gtexRnaSignalSpleenSRR1346794
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1346794.hg19.bigWig
    shortLabel spleen F 13CF3
    longLabel GTEx RNA signal from female Spleen (GTEX-13CF3-0226-SM-5J1NW)
    subGroups sex=F age=a60
    color 227,184,136
    metadata donor=GTEX-13CF3 age=60 sex=F hardyScore=0 sample=GTEX-13CF3-0226-SM-5J1NW \
            tissue=spleen autolysisScore=1 rnaIntegrity=6.5 batch=BP-46482 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=12/03/2013

    track gtexRnaSignalSpleenSRR1405099
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1405099.hg19.bigWig
    shortLabel spleen F ZF29
    longLabel GTEx RNA signal from female Spleen (GTEX-ZF29-0626-SM-4WKHD)
    subGroups sex=F age=a60
    color 227,184,136

    track gtexRnaSignalSpleenSRR1441398
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1441398.hg19.bigWig
    shortLabel spleen F 1211K
    longLabel GTEx RNA signal from female Spleen (GTEX-1211K-0426-SM-5FQTP)
    subGroups sex=F age=a60
    color 227,184,136
    metadata donor=GTEX-1211K age=60 sex=F hardyScore=0 sample=GTEX-1211K-0426-SM-5FQTP \
            tissue=spleen autolysisScore=1 rnaIntegrity=7.7 batch=BP-44114 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=09/30/2013

    track gtexRnaSignalSpleenSRR1472929
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1472929.hg19.bigWig
    shortLabel spleen F 12WSD
    longLabel GTEx RNA signal from female Spleen (GTEX-12WSD-1726-SM-5GCN4)
    subGroups sex=F age=a60
    color 227,184,136

    track gtexRnaSignalSpleenSRR1500495
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1500495.hg19.bigWig
    shortLabel spleen F 13PVR
    longLabel GTEx RNA signal from female Spleen (GTEX-13PVR-0326-SM-5RQJY)
    subGroups sex=F age=a60
    color 227,184,136
    metadata donor=GTEX-13PVR age=60 sex=F hardyScore=0 sample=GTEX-13PVR-0326-SM-5RQJY \
            tissue=spleen autolysisScore=1 rnaIntegrity=7.7 batch=BP-48564 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=01/22/2014

    track gtexRnaSignalSpleenSRR1069539
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1069539.hg19.bigWig
    shortLabel spleen M QLQW
    longLabel GTEx RNA signal from male Spleen (GTEX-QLQW-0126-SM-447BK)
    subGroups sex=M age=a30
    color 227,184,136
    metadata donor=GTEX-QLQW age=30 sex=M hardyScore=0 sample=GTEX-QLQW-0126-SM-447BK \
            tissue=spleen autolysisScore=1 rnaIntegrity=6.2 batch=BP-20740 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=12/12/2011

    track gtexRnaSignalSpleenSRR1073947
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1073947.hg19.bigWig
    shortLabel spleen M PLZ6
    longLabel GTEx RNA signal from male Spleen (GTEX-PLZ6-0126-SM-48TC6)
    subGroups sex=M age=a30
    color 227,184,136
    metadata donor=GTEX-PLZ6 age=30 sex=M hardyScore=0 sample=GTEX-PLZ6-0126-SM-48TC6 \
            tissue=spleen autolysisScore=1 rnaIntegrity=7.9 batch=BP-19254 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=10/05/2011

    track gtexRnaSignalSpleenSRR1074526
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1074526.hg19.bigWig
    shortLabel spleen M NPJ8
    longLabel GTEx RNA signal from male Spleen (GTEX-NPJ8-0626-SM-48TBO)
    subGroups sex=M age=a40
    color 227,184,136

    track gtexRnaSignalSpleenSRR1075198
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1075198.hg19.bigWig
    shortLabel spleen M XMK1
    longLabel GTEx RNA signal from male Spleen (GTEX-XMK1-0126-SM-4B65F)
    subGroups sex=M age=a40
    color 227,184,136
    metadata donor=GTEX-XMK1 age=40 sex=M hardyScore=0 sample=GTEX-XMK1-0126-SM-4B65F \
            tissue=spleen autolysisScore=1 rnaIntegrity=7.2 batch=BP-32735 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=11/01/2012

    track gtexRnaSignalSpleenSRR1076369
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1076369.hg19.bigWig
    shortLabel spleen M Q2AH
    longLabel GTEx RNA signal from male Spleen (GTEX-Q2AH-0226-SM-48U1I)
    subGroups sex=M age=a40
    color 227,184,136
    metadata donor=GTEX-Q2AH age=40 sex=M hardyScore=0 sample=GTEX-Q2AH-0226-SM-48U1I \
            tissue=spleen autolysisScore=1 rnaIntegrity=6.5 batch=BP-19904 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=11/04/2011

    track gtexRnaSignalSpleenSRR1077549
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1077549.hg19.bigWig
    shortLabel spleen M WFON
    longLabel GTEx RNA signal from male Spleen (GTEX-WFON-0126-SM-4LVM9)
    subGroups sex=M age=a40
    color 227,184,136
    metadata donor=GTEX-WFON age=40 sex=M hardyScore=0 sample=GTEX-WFON-0126-SM-4LVM9 \
            tissue=spleen autolysisScore=1 rnaIntegrity=5.8 batch=BP-27449 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=07/16/2012

    track gtexRnaSignalSpleenSRR1084055
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1084055.hg19.bigWig
    shortLabel spleen M UPK5
    longLabel GTEx RNA signal from male Spleen (GTEX-UPK5-1626-SM-4JBHI)
    subGroups sex=M age=a40
    color 227,184,136
    metadata donor=GTEX-UPK5 age=40 sex=M hardyScore=0 sample=GTEX-UPK5-1626-SM-4JBHI \
            tissue=spleen autolysisScore=1 rnaIntegrity=7.1 batch=BP-29992 center=C1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=08/23/2012

    track gtexRnaSignalSpleenSRR1086915
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1086915.hg19.bigWig
    shortLabel spleen M U4B1
    longLabel GTEx RNA signal from male Spleen (GTEX-U4B1-0526-SM-4DXTK)
    subGroups sex=M age=a40
    color 227,184,136
    metadata donor=GTEX-U4B1 age=40 sex=M hardyScore=0 sample=GTEX-U4B1-0526-SM-4DXTK \
            tissue=spleen autolysisScore=1 rnaIntegrity=6.5 batch=BP-25599 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=05/23/2012

    track gtexRnaSignalSpleenSRR1086935
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1086935.hg19.bigWig
    shortLabel spleen M S4Q7
    longLabel GTEx RNA signal from male Spleen (GTEX-S4Q7-0126-SM-4AD5P)
    subGroups sex=M age=a20
    color 227,184,136

    track gtexRnaSignalSpleenSRR1089230
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1089230.hg19.bigWig
    shortLabel spleen M O5YT
    longLabel GTEx RNA signal from male Spleen (GTEX-O5YT-0926-SM-48TDG)
    subGroups sex=M age=a20
    color 227,184,136
    metadata donor=GTEX-O5YT age=20 sex=M hardyScore=0 sample=GTEX-O5YT-0926-SM-48TDG \
            tissue=spleen autolysisScore=0 rnaIntegrity=7 batch=BP-17532 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=07/12/2011

    track gtexRnaSignalSpleenSRR1093196
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1093196.hg19.bigWig
    shortLabel spleen M XAJ8
    longLabel GTEx RNA signal from male Spleen (GTEX-XAJ8-0126-SM-47JYG)
    subGroups sex=M age=a40
    color 227,184,136
    metadata donor=GTEX-XAJ8 age=40 sex=M hardyScore=0 sample=GTEX-XAJ8-0126-SM-47JYG \
            tissue=spleen autolysisScore=1 rnaIntegrity=8.1 batch=BP-31440 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=09/25/2012

    track gtexRnaSignalSpleenSRR1094312
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1094312.hg19.bigWig
    shortLabel spleen M PW2O
    longLabel GTEx RNA signal from male Spleen (GTEX-PW2O-0126-SM-48TC8)
    subGroups sex=M age=a20
    color 227,184,136
    metadata donor=GTEX-PW2O age=20 sex=M hardyScore=0 sample=GTEX-PW2O-0126-SM-48TC8 \
            tissue=spleen autolysisScore=2 rnaIntegrity=7.8 batch=BP-19458 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=10/19/2011

    track gtexRnaSignalSpleenSRR1096291
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1096291.hg19.bigWig
    shortLabel spleen M QV31
    longLabel GTEx RNA signal from male Spleen (GTEX-QV31-0126-SM-447BP)
    subGroups sex=M age=a30
    color 227,184,136
    metadata donor=GTEX-QV31 age=30 sex=M hardyScore=0 sample=GTEX-QV31-0126-SM-447BP \
            tissue=spleen autolysisScore=2 rnaIntegrity=6.5 batch=BP-20785 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=12/13/2011

    track gtexRnaSignalSpleenSRR1310604
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1310604.hg19.bigWig
    shortLabel spleen M 11NSD
    longLabel GTEx RNA signal from male Spleen (GTEX-11NSD-0426-SM-5N9CR)
    subGroups sex=M age=a20
    color 227,184,136
    metadata donor=GTEX-11NSD age=20 sex=M hardyScore=0 sample=GTEX-11NSD-0426-SM-5N9CR \
            tissue=spleen autolysisScore=1 rnaIntegrity=6.5 batch=BP-43989 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=09/26/2013

    track gtexRnaSignalSpleenSRR1311980
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1311980.hg19.bigWig
    shortLabel spleen M 11P7K
    longLabel GTEx RNA signal from male Spleen (GTEX-11P7K-0426-SM-5BC5H)
    subGroups sex=M age=a30
    color 227,184,136
    metadata donor=GTEX-11P7K age=30 sex=M hardyScore=0 sample=GTEX-11P7K-0426-SM-5BC5H \
            tissue=spleen autolysisScore=1 rnaIntegrity=5.8 batch=BP-44512 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=10/10/2013

    track gtexRnaSignalSpleenSRR1319690
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1319690.hg19.bigWig
    shortLabel spleen M 14E6E
    longLabel GTEx RNA signal from male Spleen (GTEX-14E6E-1226-SM-5S2R5)
    subGroups sex=M age=a30
    color 227,184,136
    metadata donor=GTEX-14E6E age=30 sex=M hardyScore=0 sample=GTEX-14E6E-1226-SM-5S2R5 \
            tissue=spleen autolysisScore=1 rnaIntegrity=6.8 batch=BP-48651 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=01/24/2014

    track gtexRnaSignalSpleenSRR1324062
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1324062.hg19.bigWig
    shortLabel spleen M 11EQ9
    longLabel GTEx RNA signal from male Spleen (GTEX-11EQ9-0426-SM-5A5JY)
    subGroups sex=M age=a30
    color 227,184,136
    metadata donor=GTEX-11EQ9 age=30 sex=M hardyScore=2 sample=GTEX-11EQ9-0426-SM-5A5JY \
            tissue=spleen autolysisScore=1 rnaIntegrity=8.1 batch=BP-44264 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=10/03/2013

    track gtexRnaSignalSpleenSRR1351016
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1351016.hg19.bigWig
    shortLabel spleen M YFCO
    longLabel GTEx RNA signal from male Spleen (GTEX-YFCO-0926-SM-5LUA5)
    subGroups sex=M age=a40
    color 227,184,136
    metadata donor=GTEX-YFCO age=40 sex=M hardyScore=0 sample=GTEX-YFCO-0926-SM-5LUA5 \
            tissue=spleen autolysisScore=1 rnaIntegrity=6.9 batch=BP-41808 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=08/02/2013

    track gtexRnaSignalSpleenSRR1352437
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1352437.hg19.bigWig
    shortLabel spleen M 145MN
    longLabel GTEx RNA signal from male Spleen (GTEX-145MN-0126-SM-5RQHY)
    subGroups sex=M age=a30
    color 227,184,136
    metadata donor=GTEX-145MN age=30 sex=M hardyScore=0 sample=GTEX-145MN-0126-SM-5RQHY \
            tissue=spleen autolysisScore=1 rnaIntegrity=7.6 batch=BP-48437 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=01/17/2014

    track gtexRnaSignalSpleenSRR1362555
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1362555.hg19.bigWig
    shortLabel spleen M ZPU1
    longLabel GTEx RNA signal from male Spleen (GTEX-ZPU1-1026-SM-4YCEQ)
    subGroups sex=M age=a40
    color 227,184,136
    metadata donor=GTEX-ZPU1 age=40 sex=M hardyScore=0 sample=GTEX-ZPU1-1026-SM-4YCEQ \
            tissue=spleen autolysisScore=0 rnaIntegrity=7.2 batch=BP-43308 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=09/09/2013

    track gtexRnaSignalSpleenSRR1396765
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1396765.hg19.bigWig
    shortLabel spleen M U3ZH
    longLabel GTEx RNA signal from male Spleen (GTEX-U3ZH-0126-SM-4DXUK)
    subGroups sex=M age=a30
    color 227,184,136
    metadata donor=GTEX-U3ZH age=30 sex=M hardyScore=0 sample=GTEX-U3ZH-0126-SM-4DXUK \
            tissue=spleen autolysisScore=1 rnaIntegrity=6.2 batch=BP-25328 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=05/14/2012

    track gtexRnaSignalSpleenSRR1401972
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1401972.hg19.bigWig
    shortLabel spleen M YB5E
    longLabel GTEx RNA signal from male Spleen (GTEX-YB5E-0426-SM-5IFHR)
    subGroups sex=M age=a40
    color 227,184,136
    metadata donor=GTEX-YB5E age=40 sex=M hardyScore=0 sample=GTEX-YB5E-0426-SM-5IFHR \
            tissue=spleen autolysisScore=1 rnaIntegrity=7.6 batch=BP-45247 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=10/29/2013

    track gtexRnaSignalSpleenSRR1402109
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1402109.hg19.bigWig
    shortLabel spleen M 11LCK
    longLabel GTEx RNA signal from male Spleen (GTEX-11LCK-0126-SM-5A5M5)
    subGroups sex=M age=a30
    color 227,184,136
    metadata donor=GTEX-11LCK age=30 sex=M hardyScore=0 sample=GTEX-11LCK-0126-SM-5A5M5 \
            tissue=spleen autolysisScore=1 rnaIntegrity=7.5 batch=BP-44512 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=10/10/2013

    track gtexRnaSignalSpleenSRR1409677
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1409677.hg19.bigWig
    shortLabel spleen M 12WSN
    longLabel GTEx RNA signal from male Spleen (GTEX-12WSN-0126-SM-5DUX5)
    subGroups sex=M age=a40
    color 227,184,136
    metadata donor=GTEX-12WSN age=40 sex=M hardyScore=0 sample=GTEX-12WSN-0126-SM-5DUX5 \
            tissue=spleen autolysisScore=0 rnaIntegrity=6.8 batch=BP-44437 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=10/08/2013

    track gtexRnaSignalSpleenSRR1417566
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1417566.hg19.bigWig
    shortLabel spleen M ZLFU
    longLabel GTEx RNA signal from male Spleen (GTEX-ZLFU-0526-SM-4WWBN)
    subGroups sex=M age=a40
    color 227,184,136
    metadata donor=GTEX-ZLFU age=40 sex=M hardyScore=0 sample=GTEX-ZLFU-0526-SM-4WWBN \
            tissue=spleen autolysisScore=1 rnaIntegrity=6.8 batch=BP-42826 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=08/28/2013

    track gtexRnaSignalSpleenSRR1429287
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1429287.hg19.bigWig
    shortLabel spleen M 13S86
    longLabel GTEx RNA signal from male Spleen (GTEX-13S86-0126-SM-5S2PI)
    subGroups sex=M age=a40
    color 227,184,136
    metadata donor=GTEX-13S86 age=40 sex=M hardyScore=0 sample=GTEX-13S86-0126-SM-5S2PI \
            tissue=spleen autolysisScore=1 rnaIntegrity=6.9 batch=BP-48647 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=01/24/2014

    track gtexRnaSignalSpleenSRR1499503
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1499503.hg19.bigWig
    shortLabel spleen M 1399R
    longLabel GTEx RNA signal from male Spleen (GTEX-1399R-0226-SM-5IJGG)
    subGroups sex=M age=a30
    color 227,184,136
    metadata donor=GTEX-1399R age=30 sex=M hardyScore=0 sample=GTEX-1399R-0226-SM-5IJGG \
            tissue=spleen autolysisScore=1 rnaIntegrity=7.3 batch=BP-45485 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=11/05/2013

    track gtexRnaSignalSpleenSRR2135309
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR2135309.hg19.bigWig
    shortLabel spleen M WFON
    longLabel GTEx RNA signal from male Spleen (GTEX-WFON-0126-SM-5CHTF_rep1)
    subGroups sex=M age=a40
    color 227,184,136

    track gtexRnaSignalSpleenSRR1069303
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1069303.hg19.bigWig
    shortLabel spleen M XPVG
    longLabel GTEx RNA signal from male Spleen (GTEX-XPVG-0626-SM-4B65B)
    subGroups sex=M age=a50
    color 227,184,136
    metadata donor=GTEX-XPVG age=50 sex=M hardyScore=0 sample=GTEX-XPVG-0626-SM-4B65B \
            tissue=spleen autolysisScore=1 rnaIntegrity=8.8 batch=BP-33777 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=11/30/2012

    track gtexRnaSignalSpleenSRR1069400
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1069400.hg19.bigWig
    shortLabel spleen M XGQ4
    longLabel GTEx RNA signal from male Spleen (GTEX-XGQ4-0126-SM-4AT4H)
    subGroups sex=M age=a50
    color 227,184,136
    metadata donor=GTEX-XGQ4 age=50 sex=M hardyScore=0 sample=GTEX-XGQ4-0126-SM-4AT4H \
            tissue=spleen autolysisScore=1 rnaIntegrity=6.4 batch=BP-32102 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=10/12/2012

    track gtexRnaSignalSpleenSRR1080600
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1080600.hg19.bigWig
    shortLabel spleen M XXEK
    longLabel GTEx RNA signal from male Spleen (GTEX-XXEK-0126-SM-4BRVU)
    subGroups sex=M age=a50
    color 227,184,136
    metadata donor=GTEX-XXEK age=50 sex=M hardyScore=0 sample=GTEX-XXEK-0126-SM-4BRVU \
            tissue=spleen autolysisScore=1 rnaIntegrity=7.2 batch=BP-34430 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=12/17/2012

    track gtexRnaSignalSpleenSRR1082447
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1082447.hg19.bigWig
    shortLabel spleen M QDVN
    longLabel GTEx RNA signal from male Spleen (GTEX-QDVN-0526-SM-48TZ4)
    subGroups sex=M age=a50
    color 227,184,136
    metadata donor=GTEX-QDVN age=50 sex=M hardyScore=0 sample=GTEX-QDVN-0526-SM-48TZ4 \
            tissue=spleen autolysisScore=1 rnaIntegrity=7.7 batch=BP-20293 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=11/22/2011

    track gtexRnaSignalSpleenSRR1091404
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1091404.hg19.bigWig
    shortLabel spleen M OIZH
    longLabel GTEx RNA signal from male Spleen (GTEX-OIZH-0926-SM-48TBR)
    subGroups sex=M age=a50
    color 227,184,136
    metadata donor=GTEX-OIZH age=50 sex=M hardyScore=0 sample=GTEX-OIZH-0926-SM-48TBR \
            tissue=spleen autolysisScore=2 rnaIntegrity=6.1 batch=BP-18147 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=08/10/2011

    track gtexRnaSignalSpleenSRR1097417
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1097417.hg19.bigWig
    shortLabel spleen M XQ8I
    longLabel GTEx RNA signal from male Spleen (GTEX-XQ8I-1726-SM-4BOQB)
    subGroups sex=M age=a50
    color 227,184,136
    metadata donor=GTEX-XQ8I age=50 sex=M hardyScore=0 sample=GTEX-XQ8I-1726-SM-4BOQB \
            tissue=spleen autolysisScore=1 rnaIntegrity=6 batch=BP-34031 center=C1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=12/07/2012

    track gtexRnaSignalSpleenSRR1326225
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1326225.hg19.bigWig
    shortLabel spleen M QV44
    longLabel GTEx RNA signal from male Spleen (GTEX-QV44-0126-SM-4R1KH)
    subGroups sex=M age=a50
    color 227,184,136
    metadata donor=GTEX-QV44 age=50 sex=M hardyScore=0 sample=GTEX-QV44-0126-SM-4R1KH \
            tissue=spleen autolysisScore=1 rnaIntegrity=7.4 batch=BP-20865 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=12/15/2011

    track gtexRnaSignalSpleenSRR1328339
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1328339.hg19.bigWig
    shortLabel spleen M 117YX
    longLabel GTEx RNA signal from male Spleen (GTEX-117YX-2126-SM-5GIEL)
    subGroups sex=M age=a50
    color 227,184,136
    metadata donor=GTEX-117YX age=50 sex=M hardyScore=0 sample=GTEX-117YX-2126-SM-5GIEL \
            tissue=spleen autolysisScore=1 rnaIntegrity=6.5 batch=BP-44261 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=10/03/2013

    track gtexRnaSignalSpleenSRR1334200
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1334200.hg19.bigWig
    shortLabel spleen M ZTTD
    longLabel GTEx RNA signal from male Spleen (GTEX-ZTTD-1726-SM-57WEL)
    subGroups sex=M age=a50
    color 227,184,136

    track gtexRnaSignalSpleenSRR1345782
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1345782.hg19.bigWig
    shortLabel spleen M X4LF
    longLabel GTEx RNA signal from male Spleen (GTEX-X4LF-0226-SM-4QAS8)
    subGroups sex=M age=a50
    color 227,184,136
    metadata donor=GTEX-X4LF age=50 sex=M hardyScore=0 sample=GTEX-X4LF-0226-SM-4QAS8 \
            tissue=spleen autolysisScore=1 rnaIntegrity=6 batch=BP-30712 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=09/06/2012

    track gtexRnaSignalSpleenSRR1352639
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1352639.hg19.bigWig
    shortLabel spleen M 13111
    longLabel GTEx RNA signal from male Spleen (GTEX-13111-0126-SM-5EGHO)
    subGroups sex=M age=a50
    color 227,184,136
    metadata donor=GTEX-13111 age=50 sex=M hardyScore=0 sample=GTEX-13111-0126-SM-5EGHO \
            tissue=spleen autolysisScore=1 rnaIntegrity=7.2 batch=BP-44901 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=10/22/2013

    track gtexRnaSignalSpleenSRR1359238
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1359238.hg19.bigWig
    shortLabel spleen M 144GN
    longLabel GTEx RNA signal from male Spleen (GTEX-144GN-2126-SM-5O99D)
    subGroups sex=M age=a50
    color 227,184,136
    metadata donor=GTEX-144GN age=50 sex=M hardyScore=0 sample=GTEX-144GN-2126-SM-5O99D \
            tissue=spleen autolysisScore=1 rnaIntegrity=6.7 batch=BP-47675 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=12/19/2013

    track gtexRnaSignalSpleenSRR1367896
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1367896.hg19.bigWig
    shortLabel spleen M WYJK
    longLabel GTEx RNA signal from male Spleen (GTEX-WYJK-0726-SM-4ONC9)
    subGroups sex=M age=a50
    color 227,184,136

    track gtexRnaSignalSpleenSRR1370495
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1370495.hg19.bigWig
    shortLabel spleen M WHWD
    longLabel GTEx RNA signal from male Spleen (GTEX-WHWD-0126-SM-4OORS)
    subGroups sex=M age=a50
    color 227,184,136
    metadata donor=GTEX-WHWD age=50 sex=M hardyScore=0 sample=GTEX-WHWD-0126-SM-4OORS \
            tissue=spleen autolysisScore=1 rnaIntegrity=7.5 batch=BP-27512 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=07/17/2012

    track gtexRnaSignalSpleenSRR1373879
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1373879.hg19.bigWig
    shortLabel spleen M Y3I4
    longLabel GTEx RNA signal from male Spleen (GTEX-Y3I4-0126-SM-4TT26)
    subGroups sex=M age=a50
    color 227,184,136
    metadata donor=GTEX-Y3I4 age=50 sex=M hardyScore=0 sample=GTEX-Y3I4-0126-SM-4TT26 \
            tissue=spleen autolysisScore=1 rnaIntegrity=6.9 batch=BP-35758 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=02/04/2013

    track gtexRnaSignalSpleenSRR1391961
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1391961.hg19.bigWig
    shortLabel spleen M X585
    longLabel GTEx RNA signal from male Spleen (GTEX-X585-1826-SM-4QAS3)
    subGroups sex=M age=a50
    color 227,184,136
    metadata donor=GTEX-X585 age=50 sex=M hardyScore=4 sample=GTEX-X585-1826-SM-4QAS3 \
            tissue=spleen autolysisScore=2 rnaIntegrity=5.7 batch=BP-31298 center=C1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=09/19/2012

    track gtexRnaSignalSpleenSRR1401933
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1401933.hg19.bigWig
    shortLabel spleen M 111CU
    longLabel GTEx RNA signal from male Spleen (GTEX-111CU-0426-SM-5GZY1)
    subGroups sex=M age=a50
    color 227,184,136

    track gtexRnaSignalSpleenSRR1418145
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1418145.hg19.bigWig
    shortLabel spleen M QMRM
    longLabel GTEx RNA signal from male Spleen (GTEX-QMRM-0226-SM-4R1K7)
    subGroups sex=M age=a50
    color 227,184,136
    metadata donor=GTEX-QMRM age=50 sex=M hardyScore=0 sample=GTEX-QMRM-0226-SM-4R1K7 \
            tissue=spleen autolysisScore=1 rnaIntegrity=7.2 batch=BP-20785 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=12/13/2011

    track gtexRnaSignalSpleenSRR1443483
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1443483.hg19.bigWig
    shortLabel spleen M ZDYS
    longLabel GTEx RNA signal from male Spleen (GTEX-ZDYS-1026-SM-4WKHC)
    subGroups sex=M age=a50
    color 227,184,136

    track gtexRnaSignalSpleenSRR1447850
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1447850.hg19.bigWig
    shortLabel spleen M 139YR
    longLabel GTEx RNA signal from male Spleen (GTEX-139YR-0426-SM-5IFFV)
    subGroups sex=M age=a50
    color 227,184,136
    metadata donor=GTEX-139YR age=50 sex=M hardyScore=0 sample=GTEX-139YR-0426-SM-5IFFV \
            tissue=spleen autolysisScore=1 rnaIntegrity=7.8 batch=BP-46925 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=12/10/2013

    track gtexRnaSignalSpleenSRR1453549
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1453549.hg19.bigWig
    shortLabel spleen M 14DAR
    longLabel GTEx RNA signal from male Spleen (GTEX-14DAR-0326-SM-5S2PS)
    subGroups sex=M age=a50
    color 227,184,136
    metadata donor=GTEX-14DAR age=50 sex=M hardyScore=0 sample=GTEX-14DAR-0326-SM-5S2PS \
            tissue=spleen autolysisScore=1 rnaIntegrity=7.1 batch=BP-48647 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=01/24/2014

    track gtexRnaSignalSpleenSRR1454177
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1454177.hg19.bigWig
    shortLabel spleen M WY7C
    longLabel GTEx RNA signal from male Spleen (GTEX-WY7C-0126-SM-4ONCO)
    subGroups sex=M age=a50
    color 227,184,136

    track gtexRnaSignalSpleenSRR1477057
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1477057.hg19.bigWig
    shortLabel spleen M ZAB5
    longLabel GTEx RNA signal from male Spleen (GTEX-ZAB5-0526-SM-5CVMU)
    subGroups sex=M age=a50
    color 227,184,136
    metadata donor=GTEX-ZAB5 age=50 sex=M hardyScore=0 sample=GTEX-ZAB5-0526-SM-5CVMU \
            tissue=spleen autolysisScore=0 rnaIntegrity=7.4 batch=BP-45390 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=11/01/2013

    track gtexRnaSignalSpleenSRR1072456
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1072456.hg19.bigWig
    shortLabel spleen M OOBJ
    longLabel GTEx RNA signal from male Spleen (GTEX-OOBJ-0926-SM-48TDO)
    subGroups sex=M age=a60
    color 227,184,136
    metadata donor=GTEX-OOBJ age=60 sex=M hardyScore=0 sample=GTEX-OOBJ-0926-SM-48TDO \
            tissue=spleen autolysisScore=2 rnaIntegrity=7.5 batch=BP-18253 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=08/16/2011

    track gtexRnaSignalSpleenSRR1073507
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1073507.hg19.bigWig
    shortLabel spleen M S4Z8
    longLabel GTEx RNA signal from male Spleen (GTEX-S4Z8-0226-SM-4AD5K)
    subGroups sex=M age=a60
    color 227,184,136
    metadata donor=GTEX-S4Z8 age=60 sex=M hardyScore=0 sample=GTEX-S4Z8-0226-SM-4AD5K \
            tissue=spleen autolysisScore=1 rnaIntegrity=7.4 batch=BP-23077 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=03/13/2012

    track gtexRnaSignalSpleenSRR1079782
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1079782.hg19.bigWig
    shortLabel spleen M VJYA
    longLabel GTEx RNA signal from male Spleen (GTEX-VJYA-0126-SM-4KL1P)
    subGroups sex=M age=a60
    color 227,184,136
    metadata donor=GTEX-VJYA age=60 sex=M hardyScore=0 sample=GTEX-VJYA-0126-SM-4KL1P \
            tissue=spleen autolysisScore=1 rnaIntegrity=7.5 batch=BP-26874 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=07/02/2012

    track gtexRnaSignalSpleenSRR1085039
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1085039.hg19.bigWig
    shortLabel spleen M P4QS
    longLabel GTEx RNA signal from male Spleen (GTEX-P4QS-0926-SM-48TBS)
    subGroups sex=M age=a60
    color 227,184,136
    metadata donor=GTEX-P4QS age=60 sex=M hardyScore=0 sample=GTEX-P4QS-0926-SM-48TBS \
            tissue=spleen autolysisScore=1 rnaIntegrity=6.7 batch=BP-18727 center=B1 \
            isolationMethod=RNA_isolation_PAXgene_Tissue_miRNA isolationDate=09/08/2011

    track gtexRnaSignalSpleenSRR1323788
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1323788.hg19.bigWig
    shortLabel spleen M 12BJ1
    longLabel GTEx RNA signal from male Spleen (GTEX-12BJ1-0726-SM-5EGGF)
    subGroups sex=M age=a60
    color 227,184,136
    metadata donor=GTEX-12BJ1 age=60 sex=M hardyScore=0 sample=GTEX-12BJ1-0726-SM-5EGGF \
            tissue=spleen autolysisScore=1 rnaIntegrity=6.3 batch=BP-44399 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=10/07/2013

    track gtexRnaSignalSpleenSRR1334461
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1334461.hg19.bigWig
    shortLabel spleen M 111FC
    longLabel GTEx RNA signal from male Spleen (GTEX-111FC-1326-SM-5N9D9)
    subGroups sex=M age=a60
    color 227,184,136

    track gtexRnaSignalSpleenSRR1377756
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1377756.hg19.bigWig
    shortLabel spleen M 132QS
    longLabel GTEx RNA signal from male Spleen (GTEX-132QS-0226-SM-5IFFZ)
    subGroups sex=M age=a60
    color 227,184,136
    metadata donor=GTEX-132QS age=60 sex=M hardyScore=0 sample=GTEX-132QS-0226-SM-5IFFZ \
            tissue=spleen autolysisScore=1 rnaIntegrity=6.3 batch=BP-45499 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=11/05/2013

    track gtexRnaSignalSpleenSRR1432500
    parent gtexRnaSignalSpleen off
    type bigWig
    bigDataUrl spleen/gtexRnaSignalSRR1432500.hg19.bigWig
    shortLabel spleen M ZDTT
    longLabel GTEx RNA signal from male Spleen (GTEX-ZDTT-1026-SM-5KM19)
    subGroups sex=M age=a60
    color 227,184,136
    metadata donor=GTEX-ZDTT age=60 sex=M hardyScore=0 sample=GTEX-ZDTT-1026-SM-5KM19 \
            tissue=spleen autolysisScore=0 rnaIntegrity=5.9 batch=BP-45485 center=B1 \
            isolationMethod=RNA_Extraction_from_Paxgene-derived_Lysate_Plate_Based isolationDate=11/05/2013

{'repo_name': 'ucscGenomeBrowser/kent', 'stars': '114', 'repo_language': 'C', 'file_name': 'wgEncodeRbpSuper.html', 'mime_type': 'text/html', 'hash': -6545534286293523459, 'source_dataset': 'data'}


/*
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 *
 *   http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 */
package org.apache.samza.container.disk;

import org.junit.Test;

import java.util.Arrays;
import java.util.Collections;
import java.util.List;

import static junit.framework.Assert.assertEquals;

public class TestWatermarkDiskQuotaPolicy {
  @Test
  public void testNoEntries() {
    WatermarkDiskQuotaPolicy policy = new WatermarkDiskQuotaPolicy(Collections.<WatermarkDiskQuotaPolicy.Entry>emptyList());

    assertEquals(1.0, policy.apply(1.0));
    assertEquals(1.0, policy.apply(0.5));
    assertEquals(1.0, policy.apply(0.0));
  }

  @Test
  public void testOneEntryUntriggered() {
    double workFactor = 0.5f;
    List<WatermarkDiskQuotaPolicy.Entry> entries = Collections.singletonList(new WatermarkDiskQuotaPolicy.Entry(0.5, 1.0, workFactor));
    WatermarkDiskQuotaPolicy policy = new WatermarkDiskQuotaPolicy(entries);

    assertEquals(1.0, policy.apply(1.0));
    assertEquals(1.0, policy.apply(0.75));
    assertEquals(1.0, policy.apply(0.5));
  }

  @Test
  public void testOneEntryTriggered() {
    double workFactor = 0.5f;
    List<WatermarkDiskQuotaPolicy.Entry> entries = Collections.singletonList(new WatermarkDiskQuotaPolicy.Entry(0.5, 1.0, workFactor));
    WatermarkDiskQuotaPolicy policy = new WatermarkDiskQuotaPolicy(entries);

    assertEquals(workFactor, policy.apply(0.25));
  }

  @Test
  public void testTwoEntriesTriggered() {
    double workFactor1 = 0.5f;
    double workFactor2 = 0.25f;
    List<WatermarkDiskQuotaPolicy.Entry> entries = Arrays.asList(
        new WatermarkDiskQuotaPolicy.Entry(0.5, 1.0, workFactor1),
        new WatermarkDiskQuotaPolicy.Entry(0.2, 0.4, workFactor2));
    WatermarkDiskQuotaPolicy policy = new WatermarkDiskQuotaPolicy(entries);

    assertEquals(1.0, policy.apply(0.5));
    assertEquals(workFactor1, policy.apply(0.4));
    assertEquals(workFactor2, policy.apply(0.1));
  }

  @Test
  public void testTwoEntriesTriggeredSkipFirst() {
    double workFactor1 = 0.5f;
    double workFactor2 = 0.25f;
    List<WatermarkDiskQuotaPolicy.Entry> entries = Arrays.asList(
        new WatermarkDiskQuotaPolicy.Entry(0.5, 1.0, workFactor1),
        new WatermarkDiskQuotaPolicy.Entry(0.2, 0.4, workFactor2));
    WatermarkDiskQuotaPolicy policy = new WatermarkDiskQuotaPolicy(entries);

    assertEquals(workFactor2, policy.apply(0.1));
  }

  @Test
  public void testTwoEntriesReversedOrder() {
    // Results should be the same regardless of order as we sort policies at construction time.
    double workFactor1 = 0.5f;
    double workFactor2 = 0.25f;
    List<WatermarkDiskQuotaPolicy.Entry> entries = Arrays.asList(
        new WatermarkDiskQuotaPolicy.Entry(0.2, 0.4, workFactor2),
        new WatermarkDiskQuotaPolicy.Entry(0.5, 1.0, workFactor1));
    WatermarkDiskQuotaPolicy policy = new WatermarkDiskQuotaPolicy(entries);

    assertEquals(workFactor2, policy.apply(0.1));
  }

  @Test
  public void testTriggerEntriesAndRecover() {
    double workFactor1 = 0.5f;
    double workFactor2 = 0.25f;
    List<WatermarkDiskQuotaPolicy.Entry> entries = Arrays.asList(
        new WatermarkDiskQuotaPolicy.Entry(0.5, 1.0, workFactor1),
        new WatermarkDiskQuotaPolicy.Entry(0.2, 0.4, workFactor2));
    WatermarkDiskQuotaPolicy policy = new WatermarkDiskQuotaPolicy(entries);

    assertEquals(workFactor2, policy.apply(0.1));
    assertEquals(workFactor1, policy.apply(0.4));
    assertEquals(1.0, policy.apply(1.0));
  }

  @Test(expected = IllegalArgumentException.class)
  public void testWorkFactorTooHigh() {
    new WatermarkDiskQuotaPolicy(
        Collections.singletonList(new WatermarkDiskQuotaPolicy.Entry(0.5, 1.0, 1.5)));
  }

  @Test(expected = IllegalArgumentException.class)
  public void testWorkFactorTooLow() {
    new WatermarkDiskQuotaPolicy(
        Collections.singletonList(new WatermarkDiskQuotaPolicy.Entry(0.5, 1.0, -1.0)));
  }

  @Test(expected = IllegalArgumentException.class)
  public void testRaiseWorkFactorWithLowerThreshold() {
    List<WatermarkDiskQuotaPolicy.Entry> entries = Arrays.asList(
        new WatermarkDiskQuotaPolicy.Entry(0.5, 1.0, 0.5),
        new WatermarkDiskQuotaPolicy.Entry(0.2, 0.4, 0.75));
    new WatermarkDiskQuotaPolicy(entries);
  }

  @Test(expected = IllegalArgumentException.class)
  public void testDuplicatedRange() {
    List<WatermarkDiskQuotaPolicy.Entry> entries = Arrays.asList(
        new WatermarkDiskQuotaPolicy.Entry(0.5, 1.0, 0.5),
        new WatermarkDiskQuotaPolicy.Entry(0.5, 1.0, 0.75));
    new WatermarkDiskQuotaPolicy(entries);
  }

  @Test(expected = IllegalArgumentException.class)
  public void testFullyOverlappedRange1() {
    List<WatermarkDiskQuotaPolicy.Entry> entries = Arrays.asList(
        new WatermarkDiskQuotaPolicy.Entry(0.5, 1.0, 0.5),
        new WatermarkDiskQuotaPolicy.Entry(0.25, 1.0, 0.75));
    new WatermarkDiskQuotaPolicy(entries);
  }

  @Test(expected = IllegalArgumentException.class)
  public void testFullyOverlappedRange2() {
    List<WatermarkDiskQuotaPolicy.Entry> entries = Arrays.asList(
        new WatermarkDiskQuotaPolicy.Entry(0.5, 0.75, 0.75),
        new WatermarkDiskQuotaPolicy.Entry(0.25, 1.0, 0.5));
    new WatermarkDiskQuotaPolicy(entries);
  }
}

{'repo_name': 'apache/samza', 'stars': '633', 'repo_language': 'Java', 'file_name': 'TestKinesisInputDescriptor.java', 'mime_type': 'text/x-java', 'hash': -5316262962151291606, 'source_dataset': 'data'}


.page-content {
  padding: 2rem 4rem;
  h1 {
    text-align: center;
  }
  section {
    margin-bottom: 2.5rem;
    h2 {
      margin-bottom: 0.5rem;
    }
    + section {
      border-top: 1px solid #cdd1d4;
      padding-top: 1rem;
    }
    li {
      margin-bottom: 0.5rem;
    }
  }
}

{'repo_name': 'carbon-design-system/carbon-components-react', 'stars': '1032', 'repo_language': 'JavaScript', 'file_name': 'config.yml', 'mime_type': 'text/plain', 'hash': -6970228203476952113, 'source_dataset': 'data'}


/*
Copyright 2017 Bitnami.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
import Home from './Home'
export default Home

{'repo_name': 'kubeless/kubeless-ui', 'stars': '371', 'repo_language': 'JavaScript', 'file_name': 'main.js', 'mime_type': 'text/plain', 'hash': 1474376431437352643, 'source_dataset': 'data'}


fileFormatVersion: 2
guid: 213abbe4462fc3045a3d7aa8d3d0e2f8
TextureImporter:
  fileIDToRecycleName: {}
  externalObjects: {}
  serializedVersion: 7
  mipmaps:
    mipMapMode: 0
    enableMipMap: 1
    sRGBTexture: 1
    linearTexture: 0
    fadeOut: 0
    borderMipMap: 0
    mipMapsPreserveCoverage: 0
    alphaTestReferenceValue: 0.5
    mipMapFadeDistanceStart: 1
    mipMapFadeDistanceEnd: 3
  bumpmap:
    convertToNormalMap: 0
    externalNormalMap: 0
    heightScale: 0.25
    normalMapFilter: 0
  isReadable: 0
  streamingMipmaps: 0
  streamingMipmapsPriority: 0
  grayScaleToAlpha: 0
  generateCubemap: 6
  cubemapConvolution: 0
  seamlessCubemap: 0
  textureFormat: 1
  maxTextureSize: 2048
  textureSettings:
    serializedVersion: 2
    filterMode: -1
    aniso: -1
    mipBias: -100
    wrapU: -1
    wrapV: -1
    wrapW: -1
  nPOTScale: 1
  lightmap: 0
  compressionQuality: 50
  spriteMode: 0
  spriteExtrude: 1
  spriteMeshType: 1
  alignment: 0
  spritePivot: {x: 0.5, y: 0.5}
  spritePixelsToUnits: 100
  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
  spriteGenerateFallbackPhysicsShape: 1
  alphaUsage: 1
  alphaIsTransparency: 0
  spriteTessellationDetail: -1
  textureType: 0
  textureShape: 1
  singleChannelComponent: 0
  maxTextureSizeSet: 0
  compressionQualitySet: 0
  textureFormatSet: 0
  platformSettings:
  - serializedVersion: 2
    buildTarget: DefaultTexturePlatform
    maxTextureSize: 2048
    resizeAlgorithm: 0
    textureFormat: -1
    textureCompression: 1
    compressionQuality: 50
    crunchedCompression: 0
    allowsAlphaSplitting: 0
    overridden: 0
    androidETC2FallbackOverride: 0
  spriteSheet:
    serializedVersion: 2
    sprites: []
    outline: []
    physicsShape: []
    bones: []
    spriteID:
    vertices: []
    indices:
    edges: []
    weights: []
  spritePackingTag:
  pSDRemoveMatte: 0
  pSDShowRemoveMatteOption: 0
  userData:
  assetBundleName:
  assetBundleVariant:

{'repo_name': 'Sandrem/FlyCasual', 'stars': '322', 'repo_language': 'C#', 'file_name': 'PackageManagerSettings.asset', 'mime_type': 'text/plain', 'hash': -8565388086474895936, 'source_dataset': 'data'}


package client // import "github.com/docker/docker/client"

import (
	"crypto/tls"
	"net/http"
)

// resolveTLSConfig attempts to resolve the TLS configuration from the
// RoundTripper.
func resolveTLSConfig(transport http.RoundTripper) *tls.Config {
	switch tr := transport.(type) {
	case *http.Transport:
		return tr.TLSClientConfig
	default:
		return nil
	}
}

{'repo_name': 'GoogleContainerTools/skaffold', 'stars': '9939', 'repo_language': 'Go', 'file_name': 'skaffold.pb.gw.go', 'mime_type': 'text/plain', 'hash': 3174016839669109814, 'source_dataset': 'data'}


package org.scalaide.core
package lexical

import org.scalaide.ui.syntax._
import org.scalaide.ui.syntax.ScalaSyntaxClasses._
import testsetup.SDTTestUtils
import org.junit.ComparisonFailure
import org.junit.Test
import scalariform.ScalaVersions
import org.scalaide.core.internal.lexical.ScalaCodeTokenizerScalariformBased
import org.scalaide.core.lexical.ScalaCodeTokenizer.Token

class ScalaCodeScannerTest {

  /**
   * Tokenizes the complete content as a Scala source code snippet.
   *
   * There is a sequence returned containing tuples where each tuple value
   * represents a token. The first element is the `ScalaSyntaxClass` specifying
   * the the type of the token. The second element is the offset of the token
   * and the last element is its length.
   */
  def tokenize(str: String): Seq[(ScalaSyntaxClass, Int, Int)] =
    tokenize(str, 0, str.length())

  /**
   * Tokenizes the complete content as a Scala source code snippet. It is
   * possible to tokenize only a specific range, specified by its offset and
   * its length.
   *
   * There is a sequence returned containing tuples where each tuple value
   * represents a token. The first element is the `ScalaSyntaxClass` specifying
   * the the type of the token. The second element is the offset of the token
   * and the last element is its length.
   */
  def tokenize(str: String, offset: Int, length: Int): Seq[(ScalaSyntaxClass, Int, Int)] = {
    val scanner = new ScalaCodeTokenizerScalariformBased(ScalaVersions.DEFAULT)

    val token = scanner.tokenize(str.slice(offset, length), offset) map {
      case Token(start, length, syntaxClass) =>
        (syntaxClass, start, length)
    }
    token.toList
  }

  implicit class Assert_===(actual: Seq[(ScalaSyntaxClass, Int, Int)]) {
    def ===(expected: Seq[(ScalaSyntaxClass, Int, Int)]): Unit = {
      val a = actual map { case (syntaxClass, start, length) => (syntaxClass.baseName, start, length) }
      val e = expected map { case (syntaxClass, start, length) => (syntaxClass.baseName, start, length) }
      if (a != e)
        throw new ComparisonFailure("", e.toString, a.toString)
    }
  }

  @Test
  def brackets(): Unit = {
    "(){}[]" map (x => tokenize(x.toString)) foreach {
      _ === Seq((BRACKET, 0, 1))
    }
  }

  @Test
  def keywords(): Unit = {
    SDTTestUtils.testWithCompiler("lexical") { compiler =>
      def isAlpha(s: String) = s(0) >= 'a' && s(0) <= 'z'
      val keywords = compiler.nme.keywords map (_.toString) filter isAlpha
      /*
       * Discard some keywords:
       * - macro - only a keyword in special places
       * - return - needs special handling, treated in its own test case
       * - then - not yet a final keyword in 2.10
       */
      val testableKeywords = keywords filterNot Set("macro", "return", "then")

      testableKeywords map (x => tokenize(x) -> x) foreach {
        case (token, x) => token === Seq((KEYWORD, 0, x.length()))
      }
    }
  }

  @Test
  def correct_offset(): Unit = {
    val str = "return"
    val offset = 3 // arbitrary non-zero number

    val scanner = new ScalaCodeTokenizerScalariformBased(ScalaVersions.DEFAULT)
    val token = scanner.tokenize(str, offset) map {
      case Token(start, length, syntaxClass) =>
        (syntaxClass, start, length)
    }

    token.toList == Seq((RETURN, 3, 6))
  }

  @Test
  def return_keyword(): Unit = {
    tokenize("return") === Seq((RETURN, 0, 6))
  }

  @Test
  def single_macro_keyword_in_source_should_not_produce_exception(): Unit = {
    tokenize("macro") === Seq((DEFAULT, 0, 5))
  }

  @Test
  def operator_keywords(): Unit = {
    val xs = "_ : = => <- <: <% >: ⇒ ← . , ; # @"
    xs split " " map (x => tokenize(x) -> x) foreach {
      case (token, x) => token === Seq((OPERATOR, 0, x.length()))
    }
  }

  @Test
  def ascii_operators(): Unit = {
    val os = """!%&*+-<=>?\^|~/""" map (_.toString)
    os map tokenize foreach {
      _ === Seq((OPERATOR, 0, 1))
    }
  }

  @Test
  def number_literals(): Unit = {
    val xs = "1 1.0 1E1 1E-1 1e1 1D 1d 1F 1f 1L 1l 0x1 0X1 01" split " "
    xs map (x => tokenize(x) -> x) foreach {
      case (token, x) => token === Seq((NUMBER_LITERAL, 0, x.length()))
    }
  }

  @Test
  def symbol_literal(): Unit = {
    tokenize("'symbol") === Seq((SYMBOL, 0, 7))
  }

  @Test
  def requires_is_no_keyword(): Unit = {
    tokenize("requires") === Seq((DEFAULT, 0, 8))
  }

}

{'repo_name': 'scala-ide/scala-ide', 'stars': '495', 'repo_language': 'Scala', 'file_name': 'pom.xml', 'mime_type': 'text/xml', 'hash': -3962435634310860862, 'source_dataset': 'data'}


{'repo_name': 'sideeffects/GameDevelopmentToolset', 'stars': '768', 'repo_language': 'Python', 'file_name': 'VAT_utilities.h', 'mime_type': 'text/plain', 'hash': 5845949547320913740, 'source_dataset': 'data'}


package generate

import (
	"context"
	"fmt"
	"go/ast"
	"go/build"
	"go/parser"
	"go/token"
	"io/ioutil"
	"log"
	"os"
	"os/exec"
	"path"
	"path/filepath"
	"reflect"
	"strings"

	"github.com/d4l3k/go-pry/pry"
	"github.com/pkg/errors"
)

type Generator struct {
	contexts []pryContext
	debug    bool
	Build    build.Context
}

func NewGenerator(debug bool) *Generator {
	return &Generator{
		debug: debug,
		Build: build.Default,
	}
}

// Debug prints debug statements if debug is true.
func (g Generator) Debug(templ string, k ...interface{}) {
	if g.debug {
		log.Printf(templ, k...)
	}
}

// ExecuteGoCmd runs the 'go' command with certain parameters.
func (g *Generator) ExecuteGoCmd(ctx context.Context, args []string, env []string) error {
	binary, err := exec.LookPath("go")
	if err != nil {
		return err
	}

	cmd := exec.CommandContext(ctx, binary, args...)
	cmd.Env = append(os.Environ(), env...)
	cmd.Stdout = os.Stdout
	cmd.Stderr = os.Stderr
	cmd.Stdin = os.Stdin
	return cmd.Run()
}

// InjectPry walks the scope and replaces pry.Pry with pry.Apply(pry.Scope{...}).
func (g *Generator) InjectPry(filePath string) (string, error) {
	g.Debug("Prying into %s\n", filePath)
	filePath, err := filepath.Abs(filePath)
	if err != nil {
		return "", nil
	}

	g.contexts = make([]pryContext, 0)

	fset := token.NewFileSet() // positions are relative to fset

	// Parse the file containing this very example
	// but stop after processing the imports.
	f, err := parser.ParseFile(fset, filePath, nil, 0)
	if err != nil {
		return "", err
	}

	packagePairs := []string{}
	for _, imp := range f.Imports {
		importStr := imp.Path.Value[1 : len(imp.Path.Value)-1]
		if importStr != "../pry" {
			dir := filepath.Dir(filePath)
			pkg, err := g.Build.Import(importStr, dir, build.AllowBinary)
			if err != nil {
				return "", err
			}
			importName := pkg.Name
			if imp.Name != nil {
				importName = imp.Name.Name
			}
			pkgAst, err := parser.ParseDir(fset, pkg.Dir, nil, parser.ParseComments)
			if err != nil {
				return "", err
			}
			pair := "\"" + importName + "\": pry.Package{Name: \"" + pkg.Name + "\", Functions: map[string]interface{}{"
			added := make(map[string]bool)
			for _, nPkg := range pkgAst {
				exports, err := g.GetExports(importName, nPkg, added)
				if err != nil {
					return "", err
				}
				pair += exports
			}
			pair += "}}, "
			packagePairs = append(packagePairs, pair)
		}
	}

	var funcs []*ast.FuncDecl
	var vars []string

	// Print the imports from the file's AST.
	for k, v := range f.Scope.Objects {
		switch decl := v.Decl.(type) {
		case *ast.FuncDecl:
			funcs = append(funcs, decl)
		case *ast.ValueSpec:
			vars = append(vars, k)
		}
	}

	for _, f := range funcs {
		vars = append(vars, f.Name.Name)
		if f.Recv != nil {
			vars = g.extractFields(vars, f.Recv.List)
		}
		if f.Type != nil {
			if f.Type.Params != nil {
				vars = g.extractFields(vars, f.Type.Params.List)
			}
			if f.Type.Results != nil {
				vars = g.extractFields(vars, f.Type.Results.List)
			}
		}
		vars = g.extractVariables(vars, f.Body.List)
	}

	fileTextBytes, err := ioutil.ReadFile(filePath)
	if err != nil {
		return "", nil
	}

	fileText := (string)(fileTextBytes)

	offset := 0

	if len(g.contexts) == 0 {
		return "", nil
	}

	g.Debug(" :: Found %d pry statements.\n", len(g.contexts))

	for _, context := range g.contexts {
		filteredVars := filterVars(context.Vars)
		obj := "&pry.Scope{Vals:map[string]interface{}{ "
		for _, v := range filteredVars {
			obj += "\"" + v + "\": " + v + ", "
		}
		obj += strings.Join(packagePairs, "")
		obj += "}}"
		text := "pry.Apply(" + obj + ")"
		fileText = fileText[0:context.Start+offset] + text + fileText[context.End+offset:]
		offset = len(text) - (context.End - context.Start)
	}

	newPath := filepath.Dir(filePath) + "/." + filepath.Base(filePath) + "pry"

	err = os.Rename(filePath, newPath)
	if err != nil {
		return "", err
	}
	ioutil.WriteFile(filePath, ([]byte)(fileText), 0644)
	return filePath, nil
}

// GetExports returns a string of gocode that represents the exports (constants/functions) of an ast.Package.
func (g *Generator) GetExports(importName string, pkg *ast.Package, added map[string]bool) (string, error) {
	if pkg.Name == "main" {
		return "", nil
	}
	vars := ""
	for name, file := range pkg.Files {
		if strings.HasSuffix(name, "_test.go") {
			continue
		}

		match, err := g.Build.MatchFile(path.Dir(name), path.Base(name))
		if err != nil {
			return "", err
		}
		if !match {
			continue
		}

		// Print the imports from the file's AST.
		scope := pry.NewScope()
		for k, obj := range file.Scope.Objects {
			if added[k] {
				continue
			}
			added[k] = true
			firstLetter := k[0:1]
			if firstLetter == strings.ToUpper(firstLetter) && firstLetter != "_" {

				isType := false

				switch stmt := obj.Decl.(type) {
				/*
					case *ast.ValueSpec:
						if len(stmt.Values) > 0 {
							out, err := pry.InterpretExpr(scope, stmt.Values[0])
							if err != nil {
								fmt.Println("ERR", err)
								//continue
							} else {
								scope[obj.Name] = out
							}
						}
				*/
				case *ast.TypeSpec:
					switch typ := stmt.Type.(type) {
					case *ast.StructType:
						isType = true
						scope.Set(obj.Name, typ)

					default:
						out, err := scope.Interpret(stmt.Type)
						if err != nil {
							g.Debug("TypeSpec ERR %s\n", err.Error())
							//continue
						} else {
							scope.Set(obj.Name, out)
							isType = true
						}
					}
				}

				if obj.Kind != ast.Typ || isType {
					path := importName + "." + k
					vars += "\"" + k + "\": "
					if isType {
						out, _ := scope.Get(obj.Name)
						switch v := out.(type) {
						case reflect.Type:
							zero := reflect.Zero(v).Interface()
							val := fmt.Sprintf("%#v", zero)
							if zero == nil {
								val = "nil"
							}
							vars += fmt.Sprintf("pry.Type(%s(%s))", path, val)
						case *ast.StructType:
							vars += fmt.Sprintf("pry.Type(%s{})", path)
						default:
							log.Fatalf("got unknown type: %T %+v", out, out)
						}

						// TODO Fix hack for very large constants
					} else if path == "math.MaxUint64" || path == "crc64.ISO" || path == "crc64.ECMA" {
						vars += fmt.Sprintf("uint64(%s)", path)
					} else {
						vars += path
					}
					vars += ","
					if g.debug {
						vars += "\n"
					}
				}
			}
		}
	}
	return vars, nil
}

// GenerateFile generates a injected file.
func (g *Generator) GenerateFile(imports []string, extraStatements, path string) error {
	file := "package main\nimport (\n\t\"github.com/d4l3k/go-pry/pry\"\n\n"
	for _, imp := range imports {
		if len(imp) == 0 {
			continue
		}
		file += fmt.Sprintf("\t%#v\n", imp)
	}
	file += ")\nfunc main() {\n\t" + extraStatements + "\n\tpry.Pry()\n}\n"

	if err := ioutil.WriteFile(path, []byte(file), 0644); err != nil {
		return err
	}

	_, err := g.InjectPry(path)
	return err
}

// GenerateAndExecuteFile generates and executes a temp file with the given imports
func (g *Generator) GenerateAndExecuteFile(ctx context.Context, imports []string, extraStatements string) error {
	dir, err := ioutil.TempDir("", "pry")
	if err != nil {
		return err
	}
	defer func() {
		if err := os.RemoveAll(dir); err != nil {
			log.Fatal(err)
		}
	}()
	newPath := dir + "/main.go"

	if err := g.GenerateFile(imports, extraStatements, newPath); err != nil {
		return err
	}

	if err := g.ExecuteGoCmd(ctx, []string{"run", newPath}, nil); err != nil {
		return err
	}
	return nil
}

// RevertPry reverts the changes made by InjectPry.
func (g *Generator) RevertPry(modifiedFiles []string) error {
	fmt.Println("Reverting files")
	for _, file := range modifiedFiles {
		newPath := filepath.Dir(file) + "/." + filepath.Base(file) + "pry"
		if _, err := os.Stat(newPath); os.IsNotExist(err) {
			return errors.Errorf("no such file or directory: %s", newPath)
		}

		err := os.Remove(file)
		if err != nil {
			return err
		}
		err = os.Rename(newPath, file)
		if err != nil {
			return err
		}
	}
	return nil
}

func filterVars(vars []string) (fVars []string) {
	for _, v := range vars {
		if v != "_" {
			fVars = append(fVars, v)
		}
	}
	return
}

func (g *Generator) extractVariables(vars []string, l []ast.Stmt) []string {
	for _, s := range l {
		vars = g.handleStatement(vars, s)
	}
	return vars
}

func (g *Generator) extractFields(vars []string, l []*ast.Field) []string {
	for _, s := range l {
		vars = g.handleIdents(vars, s.Names)
	}
	return vars
}

func (g *Generator) handleStatement(vars []string, s ast.Stmt) []string {
	switch stmt := s.(type) {
	case *ast.ExprStmt:
		vars = g.handleExpr(vars, stmt.X)
	case *ast.AssignStmt:
		lhsStatements := (*stmt).Lhs
		for _, v := range lhsStatements {
			vars = g.handleExpr(vars, v)
		}
	case *ast.GoStmt:
		g.handleExpr(vars, stmt.Call)
	case *ast.IfStmt:
		g.handleIfStmt(vars, stmt)
	case *ast.DeclStmt:
		decl := stmt.Decl.(*ast.GenDecl)
		if decl.Tok == token.VAR {
			for _, spec := range decl.Specs {
				valSpec := spec.(*ast.ValueSpec)
				vars = g.handleIdents(vars, valSpec.Names)
			}
		}
	case *ast.BlockStmt:
		vars = g.handleBlockStmt(vars, stmt)
	case *ast.RangeStmt:
		g.handleRangeStmt(vars, stmt)
	case *ast.ForStmt:
		vars = g.handleForStmt(vars, stmt)
	default:
		g.Debug("Unknown %T\n", stmt)
	}
	return vars
}

func (g *Generator) handleIfStmt(vars []string, stmt *ast.IfStmt) []string {
	vars = g.handleStatement(vars, stmt.Init)
	vars = g.handleStatement(vars, stmt.Body)
	return vars
}

func (g *Generator) handleRangeStmt(vars []string, stmt *ast.RangeStmt) []string {
	vars = g.handleExpr(vars, stmt.Key)
	vars = g.handleExpr(vars, stmt.Value)
	vars = g.handleStatement(vars, stmt.Body)
	return vars
}

func (g *Generator) handleForStmt(vars []string, stmt *ast.ForStmt) []string {
	vars = g.handleStatement(vars, stmt.Init)
	vars = g.handleStatement(vars, stmt.Body)
	return vars
}

func (g *Generator) handleBlockStmt(vars []string, stmt *ast.BlockStmt) []string {
	vars = g.extractVariables(vars, stmt.List)
	return vars
}

func (g *Generator) handleIdents(vars []string, idents []*ast.Ident) []string {
	for _, i := range idents {
		vars = append(vars, i.Name)
	}
	return vars
}

func (g *Generator) handleExpr(vars []string, v ast.Expr) []string {
	switch expr := v.(type) {
	case *ast.Ident:
		varMap := make(map[string]bool)
		for _, v := range vars {
			varMap[v] = true
		}
		if !varMap[expr.Name] {
			vars = append(vars, expr.Name)
		}
	case *ast.CallExpr:
		switch fun := expr.Fun.(type) {
		case *ast.SelectorExpr:
			funcName := fun.Sel.Name
			if funcName == "Pry" || funcName == "Apply" {
				g.contexts = append(g.contexts, pryContext{(int)(expr.Pos() - 1), (int)(expr.End() - 1), vars})
			}
			//handleExpr(vars, fun.X)
		case *ast.FuncLit:
			g.handleExpr(vars, fun)
		default:
			g.Debug("Unknown function type %T\n", fun)
		}
		for _, arg := range expr.Args {
			g.handleExpr(vars, arg)
		}
	case *ast.FuncLit:
		if expr.Type.Params != nil {
			for _, param := range expr.Type.Params.List {
				for _, name := range param.Names {
					vars = g.handleExpr(vars, name)
				}
			}
		}
		if expr.Type.Results != nil {
			for _, param := range expr.Type.Results.List {
				for _, name := range param.Names {
					vars = g.handleExpr(vars, name)
				}
			}
		}
		g.handleStatement(vars, expr.Body)
	default:
		g.Debug("Unknown %T\n", expr)
	}
	return vars
}

type pryContext struct {
	Start, End int
	Vars       []string
}

{'repo_name': 'd4l3k/go-pry', 'stars': '2603', 'repo_language': 'Go', 'file_name': 'server.go', 'mime_type': 'text/x-c', 'hash': -3373167075365849092, 'source_dataset': 'data'}


# uncompyle6 version 2.9.10
# Python bytecode 2.7 (62211)
# Decompiled from: Python 3.6.0b2 (default, Oct 11 2016, 05:27:10)
# [GCC 6.2.0 20161005]
# Embedded file name: __init__.py
import dsz
import dsz.cmd
import dsz.data
import dsz.lp

class Environment(dsz.data.Task):

    def __init__(self, cmd=None):
        dsz.data.Task.__init__(self, cmd)

    def _LoadData(self):
        try:
            self.TaskingInfo = Environment.TaskingInfo(dsz.cmd.data.Get('TaskingInfo', dsz.TYPE_OBJECT)[0])
        except:
            self.TaskingInfo = None

        try:
            self.Environment = Environment.Environment(dsz.cmd.data.Get('Environment', dsz.TYPE_OBJECT)[0])
        except:
            self.Environment = None

        return

    class TaskingInfo(dsz.data.DataBean):

        def __init__(self, obj):
            self.SearchMask = list()
            try:
                for x in dsz.cmd.data.ObjectGet(obj, 'SearchMask', dsz.TYPE_OBJECT):
                    self.SearchMask.append(Environment.TaskingInfo.SearchMask(x))

            except:
                pass

            try:
                self.Recursive = dsz.cmd.data.ObjectGet(obj, 'Recursive', dsz.TYPE_BOOL)[0]
            except:
                self.Recursive = None

            return

        class SearchMask(dsz.data.DataBean):

            def __init__(self, obj):
                try:
                    self.value = dsz.cmd.data.ObjectGet(obj, 'value', dsz.TYPE_STRING)[0]
                except:
                    self.value = None

                return

    class Environment(dsz.data.DataBean):

        def __init__(self, obj):
            try:
                self.Action = dsz.cmd.data.ObjectGet(obj, 'Action', dsz.TYPE_STRING)[0]
            except:
                self.Action = None

            self.Value = list()
            try:
                for x in dsz.cmd.data.ObjectGet(obj, 'Value', dsz.TYPE_OBJECT):
                    self.Value.append(Environment.Environment.Value(x))

            except:
                pass

            return

        class Value(dsz.data.DataBean):

            def __init__(self, obj):
                try:
                    self.Value = dsz.cmd.data.ObjectGet(obj, 'Value', dsz.TYPE_STRING)[0]
                except:
                    self.Value = None

                try:
                    self.Name = dsz.cmd.data.ObjectGet(obj, 'Name', dsz.TYPE_STRING)[0]
                except:
                    self.Name = None

                return

dsz.data.RegisterCommand('Environment', Environment)
ENVIRONMENT = Environment
environment = Environment

{'repo_name': 'mdiazcl/fuzzbunch-debian', 'stars': '124', 'repo_language': 'Python', 'file_name': 'Eternalchampion-2.0.0.fb', 'mime_type': 'text/xml', 'hash': -7316799529326752544, 'source_dataset': 'data'}


To simplify installation process, you can deploy a container (~virtual machine) with all dependencies pre-installed.

_tl;dr [dockerhub url](https://hub.docker.com/r/justheuristic/practical_rl/)_

## Install Docker

We recommend you to use either native docker (recommended for linux) or kitematic(recommended for windows).
* Installing [kitematic](https://kitematic.com/), a simple interface to docker (all platforms)
* Pure docker: Guide for [windows](https://docs.docker.com/docker-for-windows/), [linux](https://docs.docker.com/engine/installation/), or [macOS](https://docs.docker.com/docker-for-mac/).
* If you want to use your GPU make sure you have [nvidia-docker](https://github.com/NVIDIA/nvidia-docker) and [NVidia driver](https://www.nvidia.com/en-us/drivers/unix/) + [CUDA 10.2](https://developer.nvidia.com/cuda-downloads) installed

Below are the instructions for both approaches.

## Kitematic
Find dmittov/practical_rl in the search menu. Download and launch the container.

Click on "web preview" screen in the top-right __or__ go to settings, ports and find at which port your jupyter is located, usually 32***.

## Native
`docker run --rm -it -v /path/to/your/repo:/notebooks -p <local_port>:8888 dmittov/practical_rl:spring2020-cpu`

For example,
```docker run --rm -it -v /home/myuser/Documents/practical_rl:/notebooks -p 8888:8888 dmittov/practical_rl:spring2020-cpu```

Then you can access your jupyter in a browser at `localhost:<local_port>/?token=<token_you_see_in_container_logs>`, e.g. `localhost:8888/?token=ad1a5a0aab43efb47a9a805388fcf508d0b5f84a16e4542b&token=ad1a5a0aab43efb47a9a805388fcf508d0b5f84a16e4542b`

#### GPU
`docker run --rm -it -v /path/to/your/repo:/notebooks -p <local_port>:8888 --gpus all dmittov/practical_rl:spring2020-cuda-10.2`

## Manual
Build container

`docker build -t practical_rl --build-arg device=cpu .`

to build GPU version

`docker build -t practical_rl --build-arg device=gpu .`

Run it

`$ docker run --rm -it -v <local_dir>:/notebooks -p <local_port>:8888 practical_rl`

to run GPU version

`$ docker run --rm -it -v <local_dir>:/notebooks -p <local_port>:8888 --gpus all practical_rl`

examples:

```$ docker run --rm -it -v `pwd`:/notebooks -p 8888:8888 practical_rl```

Copy the token from console and run
http://localhost:8888/?token=<token>

{'repo_name': 'yandexdataschool/Practical_RL', 'stars': '4029', 'repo_language': 'Jupyter Notebook', 'file_name': 'seminar_TRPO_theano.ipynb', 'mime_type': 'text/plain', 'hash': 1182266962784955163, 'source_dataset': 'data'}


/* Generated data (by gimp-mkenums) */

#include "config.h"
#include <gio/gio.h>
#include "libgimpbase/gimpbase.h"
#include "text-enums.h"
#include "gimp-intl.h"

/* enumerations from "text-enums.h" */
GType
gimp_text_box_mode_get_type (void)
{
  static const GEnumValue values[] =
  {
    { GIMP_TEXT_BOX_DYNAMIC, "GIMP_TEXT_BOX_DYNAMIC", "dynamic" },
    { GIMP_TEXT_BOX_FIXED, "GIMP_TEXT_BOX_FIXED", "fixed" },
    { 0, NULL, NULL }
  };

  static const GimpEnumDesc descs[] =
  {
    { GIMP_TEXT_BOX_DYNAMIC, NC_("text-box-mode", "Dynamic"), NULL },
    { GIMP_TEXT_BOX_FIXED, NC_("text-box-mode", "Fixed"), NULL },
    { 0, NULL, NULL }
  };

  static GType type = 0;

  if (G_UNLIKELY (! type))
    {
      type = g_enum_register_static ("GimpTextBoxMode", values);
      gimp_type_set_translation_context (type, "text-box-mode");
      gimp_enum_set_value_descriptions (type, descs);
    }

  return type;
}

GType
gimp_text_outline_get_type (void)
{
  static const GEnumValue values[] =
  {
    { GIMP_TEXT_OUTLINE_NONE, "GIMP_TEXT_OUTLINE_NONE", "none" },
    { GIMP_TEXT_OUTLINE_STROKE_ONLY, "GIMP_TEXT_OUTLINE_STROKE_ONLY", "stroke-only" },
    { GIMP_TEXT_OUTLINE_STROKE_FILL, "GIMP_TEXT_OUTLINE_STROKE_FILL", "stroke-fill" },
    { 0, NULL, NULL }
  };

  static const GimpEnumDesc descs[] =
  {
    { GIMP_TEXT_OUTLINE_NONE, "GIMP_TEXT_OUTLINE_NONE", NULL },
    { GIMP_TEXT_OUTLINE_STROKE_ONLY, "GIMP_TEXT_OUTLINE_STROKE_ONLY", NULL },
    { GIMP_TEXT_OUTLINE_STROKE_FILL, "GIMP_TEXT_OUTLINE_STROKE_FILL", NULL },
    { 0, NULL, NULL }
  };

  static GType type = 0;

  if (G_UNLIKELY (! type))
    {
      type = g_enum_register_static ("GimpTextOutline", values);
      gimp_type_set_translation_context (type, "text-outline");
      gimp_enum_set_value_descriptions (type, descs);
    }

  return type;
}

/* Generated data ends here */

{'repo_name': 'glimpse-editor/Glimpse', 'stars': '924', 'repo_language': 'C', 'file_name': 'sr@latin.po', 'mime_type': 'text/x-po', 'hash': -6135311821011853161, 'source_dataset': 'data'}


import os

from CTFd.utils.encoding import hexencode

def generate_nonce():
    return hexencode(os.urandom(32))

{'repo_name': 'CTFd/CTFd', 'stars': '2802', 'repo_language': 'Python', 'file_name': 'b295b033364d_add_ondelete_cascade_to_foreign_keys.py', 'mime_type': 'text/x-python', 'hash': -923338481599311830, 'source_dataset': 'data'}


// Copyright 2014 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef CONTENT_RENDERER_LOADER_WEB_URL_REQUEST_UTIL_H_
#define CONTENT_RENDERER_LOADER_WEB_URL_REQUEST_UTIL_H_

#include <string>

#include "content/common/content_export.h"
#include "content/public/common/request_context_type.h"
#include "content/public/common/resource_type.h"
#include "net/http/http_request_headers.h"
#include "services/network/public/cpp/resource_request_body.h"
#include "services/network/public/mojom/request_context_frame_type.mojom.h"
#include "third_party/blink/public/mojom/blob/blob_registry.mojom.h"
#include "third_party/blink/public/platform/web_mixed_content_context_type.h"
#include "third_party/blink/public/platform/web_url_request.h"

namespace blink {
class WebHTTPBody;
}

namespace content {

ResourceType WebURLRequestContextToResourceType(
    blink::WebURLRequest::RequestContext request_context);

CONTENT_EXPORT ResourceType WebURLRequestToResourceType(
    const blink::WebURLRequest& request);

net::HttpRequestHeaders GetWebURLRequestHeaders(
    const blink::WebURLRequest& request);

std::string GetWebURLRequestHeadersAsString(
    const blink::WebURLRequest& request);

int GetLoadFlagsForWebURLRequest(const blink::WebURLRequest& request);

// Takes a ResourceRequestBody and converts into WebHTTPBody.
blink::WebHTTPBody GetWebHTTPBodyForRequestBody(
    const network::ResourceRequestBody& input);

// Takes a ResourceRequestBody with additional |blob_ptrs| which corresponds to
// each Blob entries, and converts into WebHTTPBody.
// TODO(kinuko): Remove this once Network Service is shipped.
blink::WebHTTPBody GetWebHTTPBodyForRequestBodyWithBlobPtrs(
    const network::ResourceRequestBody& input,
    std::vector<blink::mojom::BlobPtrInfo> blob_ptrs);

// Takes a ResourceRequestBody and gets blob pointers for Blob entries.
// Used only in non-NetworkService cases but with S13nServiceWorker.
// TODO(kinuko): Remove this once Network Service is shipped.
std::vector<blink::mojom::BlobPtrInfo> GetBlobPtrsForRequestBody(
    const network::ResourceRequestBody& input);

// Takes a WebHTTPBody and converts into a ResourceRequestBody.
scoped_refptr<network::ResourceRequestBody> GetRequestBodyForWebHTTPBody(
    const blink::WebHTTPBody& httpBody);

// Takes a WebURLRequest and sets the appropriate information
// in a ResourceRequestBody structure. Returns an empty scoped_refptr
// if the request body is not present.
scoped_refptr<network::ResourceRequestBody> GetRequestBodyForWebURLRequest(
    const blink::WebURLRequest& request);

// Helper functions to convert enums from the blink type to the content
// type.
std::string GetFetchIntegrityForWebURLRequest(
    const blink::WebURLRequest& request);
RequestContextType GetRequestContextTypeForWebURLRequest(
    const blink::WebURLRequest& request);
blink::WebMixedContentContextType GetMixedContentContextTypeForWebURLRequest(
    const blink::WebURLRequest& request);

}  // namespace content

#endif  // CONTENT_RENDERER_LOADER_WEB_URL_REQUEST_UTIL_H_

{'repo_name': 'kiwibrowser/src', 'stars': '728', 'repo_language': 'None', 'file_name': '3db76d1dd7d3a759dccc3f8fa7f68675c080cb095e4881063a6b850fdd68b8bc.pem', 'mime_type': 'text/plain', 'hash': 3113288600675560777, 'source_dataset': 'data'}


{'repo_name': 'thomaspark/glyphsearch', 'stars': '439', 'repo_language': 'JavaScript', 'file_name': 'icons-material.json', 'mime_type': 'text/plain', 'hash': 44494347714658004, 'source_dataset': 'data'}


/*
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package com.facebook.presto.orc.stream;

import io.airlift.slice.BasicSliceInput;
import io.airlift.slice.Slices;
import org.openjdk.jmh.annotations.Benchmark;
import org.openjdk.jmh.annotations.BenchmarkMode;
import org.openjdk.jmh.annotations.Fork;
import org.openjdk.jmh.annotations.Measurement;
import org.openjdk.jmh.annotations.Mode;
import org.openjdk.jmh.annotations.OperationsPerInvocation;
import org.openjdk.jmh.annotations.OutputTimeUnit;
import org.openjdk.jmh.annotations.Param;
import org.openjdk.jmh.annotations.Scope;
import org.openjdk.jmh.annotations.Setup;
import org.openjdk.jmh.annotations.State;
import org.openjdk.jmh.annotations.Warmup;
import org.openjdk.jmh.runner.Runner;
import org.openjdk.jmh.runner.options.Options;
import org.openjdk.jmh.runner.options.OptionsBuilder;
import org.openjdk.jmh.runner.options.VerboseMode;

import java.util.concurrent.ThreadLocalRandom;
import java.util.concurrent.TimeUnit;

import static com.facebook.presto.orc.stream.TestingBitPackingUtils.unpackGeneric;

@SuppressWarnings("MethodMayBeStatic")
@State(Scope.Thread)
@Fork(2)
@Warmup(iterations = 5, time = 500, timeUnit = TimeUnit.MILLISECONDS)
@Measurement(iterations = 5, time = 500, timeUnit = TimeUnit.MILLISECONDS)
@OutputTimeUnit(TimeUnit.NANOSECONDS)
@BenchmarkMode(Mode.AverageTime)
public class BenchmarkLongBitPacker
{
    @Benchmark
    public Object baselineLength1(BenchmarkData data)
            throws Throwable
    {
        data.input.setPosition(0);
        unpackGeneric(data.buffer, 0, 1, data.bits, data.input);
        return data.buffer;
    }

    @Benchmark
    @OperationsPerInvocation(2)
    public Object baselineLength2(BenchmarkData data)
            throws Throwable
    {
        data.input.setPosition(0);
        unpackGeneric(data.buffer, 0, 2, data.bits, data.input);
        return data.buffer;
    }

    @Benchmark
    @OperationsPerInvocation(3)
    public Object baselineLength3(BenchmarkData data)
            throws Throwable
    {
        data.input.setPosition(0);
        unpackGeneric(data.buffer, 0, 3, data.bits, data.input);
        return data.buffer;
    }

    @Benchmark
    @OperationsPerInvocation(4)
    public Object baselineLength4(BenchmarkData data)
            throws Throwable
    {
        data.input.setPosition(0);
        unpackGeneric(data.buffer, 0, 4, data.bits, data.input);
        return data.buffer;
    }

    @Benchmark
    @OperationsPerInvocation(5)
    public Object baselineLength5(BenchmarkData data)
            throws Throwable
    {
        data.input.setPosition(0);
        unpackGeneric(data.buffer, 0, 5, data.bits, data.input);
        return data.buffer;
    }

    @Benchmark
    @OperationsPerInvocation(6)
    public Object baselineLength6(BenchmarkData data)
            throws Throwable
    {
        data.input.setPosition(0);
        unpackGeneric(data.buffer, 0, 6, data.bits, data.input);
        return data.buffer;
    }

    @Benchmark
    @OperationsPerInvocation(7)
    public Object baselineLength7(BenchmarkData data)
            throws Throwable
    {
        data.input.setPosition(0);
        unpackGeneric(data.buffer, 0, 7, data.bits, data.input);
        return data.buffer;
    }

    @Benchmark
    @OperationsPerInvocation(256)
    public Object baselineLength256(BenchmarkData data)
            throws Throwable
    {
        data.input.setPosition(0);
        unpackGeneric(data.buffer, 0, 256, data.bits, data.input);
        return data.buffer;
    }

    @Benchmark
    public Object optimizedLength1(BenchmarkData data)
            throws Throwable
    {
        data.input.setPosition(0);
        data.packer.unpack(data.buffer, 0, 1, data.bits, data.input);
        return data.buffer;
    }

    @Benchmark
    @OperationsPerInvocation(2)
    public Object optimizedLength2(BenchmarkData data)
            throws Throwable
    {
        data.input.setPosition(0);
        data.packer.unpack(data.buffer, 0, 2, data.bits, data.input);
        return data.buffer;
    }

    @Benchmark
    @OperationsPerInvocation(3)
    public Object optimizedLength3(BenchmarkData data)
            throws Throwable
    {
        data.input.setPosition(0);
        data.packer.unpack(data.buffer, 0, 3, data.bits, data.input);
        return data.buffer;
    }

    @Benchmark
    @OperationsPerInvocation(4)
    public Object optimizedLength4(BenchmarkData data)
            throws Throwable
    {
        data.input.setPosition(0);
        data.packer.unpack(data.buffer, 0, 4, data.bits, data.input);
        return data.buffer;
    }

    @Benchmark
    @OperationsPerInvocation(5)
    public Object optimizedLength5(BenchmarkData data)
            throws Throwable
    {
        data.input.setPosition(0);
        data.packer.unpack(data.buffer, 0, 5, data.bits, data.input);
        return data.buffer;
    }

    @Benchmark
    @OperationsPerInvocation(6)
    public Object optimizedLength6(BenchmarkData data)
            throws Throwable
    {
        data.input.setPosition(0);
        data.packer.unpack(data.buffer, 0, 6, data.bits, data.input);
        return data.buffer;
    }

    @Benchmark
    @OperationsPerInvocation(7)
    public Object optimizedLength7(BenchmarkData data)
            throws Throwable
    {
        data.input.setPosition(0);
        data.packer.unpack(data.buffer, 0, 7, data.bits, data.input);
        return data.buffer;
    }

    @Benchmark
    @OperationsPerInvocation(256)
    public Object optimizedLength256(BenchmarkData data)
            throws Throwable
    {
        data.input.setPosition(0);
        data.packer.unpack(data.buffer, 0, 256, data.bits, data.input);
        return data.buffer;
    }

    @SuppressWarnings("FieldMayBeFinal")
    @State(Scope.Thread)
    public static class BenchmarkData
    {
        private final long[] buffer = new long[256];
        private final LongBitPacker packer = new LongBitPacker();

        @Param({"1", "2", "4", "8", "16", "24", "32", "40", "48", "56", "64"})
        private int bits;

        private BasicSliceInput input;

        @Setup
        public void setup()
        {
            byte[] bytes = new byte[256 * 64];
            ThreadLocalRandom.current().nextBytes(bytes);
            input = Slices.wrappedBuffer(bytes).getInput();
        }
    }

    public static void main(String[] args)
            throws Throwable
    {
        // assure the benchmarks are valid before running
        BenchmarkData data = new BenchmarkData();
        data.setup();
        new BenchmarkLongBitPacker().baselineLength256(data);

        Options options = new OptionsBuilder()
                .verbosity(VerboseMode.NORMAL)
                .include(".*" + BenchmarkLongBitPacker.class.getSimpleName() + ".*")
                .build();
        new Runner(options).run();
    }
}

{'repo_name': 'prestodb/presto', 'stars': '10854', 'repo_language': 'Java', 'file_name': 'TestAlluxioCachingFileSystem.java', 'mime_type': 'text/x-java', 'hash': 2331331582246614595, 'source_dataset': 'data'}