#!/usr/bin/python3

# assume input comes from standard input, so could have been run like -
# gzip -cd GRCh38_latest_rna.fna.gz | python3 counts.py

import sys

firstGeneLine = False
overall = {}
first = {}
second = {}
last = {}
secondLast = {}

lastLine = None
skipGene = False
for line in sys.stdin:
    if line[0] == '>':
        skipGene = False
        if line.find('transcript variant') >= 0:
            pos = line.find('transcript variant') + len('transcript variant')
            if line.find('transcript variant 1') < 0 or line[pos+2].isdigit():
                skipGene = True
                
        if skipGene: continue
        
        firstGeneLine = True
        if lastLine:
            if len(lastLine) >= 2:
                letter = lastLine[-2]
                if not letter.isspace():
                    last[letter] = last.setdefault(letter,0) + 1
            if len(lastLine) >= 3:
                letter = lastLine[-3]
                if not letter.isspace():
                    secondLast[letter] = secondLast.setdefault(letter,0) + 1
    else:
        if skipGene: continue
        
        for letter in line:
            if letter.isspace(): continue
            overall[letter] = overall.setdefault(letter,0) + 1
        if firstGeneLine:
            letter = line[0]
            if not letter.isspace():
                first[letter] = first.setdefault(letter,0) + 1
            letter = line[1]
            if not letter.isspace():
                second[letter] = second.setdefault(letter,0) + 1
        firstGeneLine = False
    lastLine = line
    
if lastLine:
    letter = lastLine[-1]
    if not letter.isspace():
        last[letter] = last.setdefault(letter,0) + 1
    letter = lastLine[-2]
    if not letter.isspace():
        secondLast[letter] = secondLast.setdefault(letter,0) + 1

def percents(d, s):
    print('Percentages for', s)
    total = 0
    for k in d:
        total += d[k]
    for k in d:
        print(k, 100*d[k]/total)
    print('')
    
percents(overall, 'overall')
percents(first, 'first')
percents(second, 'second')
percents(last, 'last')
percents(secondLast, 'secondLast')