def grd_clc(text):
    f1, f2, f3, f4, f5, f6 = text.split('\n')
    n1, g1 = grd_xtr(f1)
    n2, g2 = grd_xtr(f2)
    n3, g3 = grd_xtr(f3)
    n4, g4 = grd_xtr(f4)
    n5, g5 = grd_xtr(f5)
    '''
    print(n1,g1, n2,g2, n3,g3, n4,g4, n5,g5)
    print(w(n1), g1, w(n2), g2, w(n3), g3, w(n4), g4, w(n5), g5)
    '''
    g = round(w(n1)*g1 + w(n2)*g2 + w(n3)*g3 + w(n4)*g4 + w(n5)*g5, 2)
    return 'Your weigthed average grade is {}.'.format(g)


def grd_xtr(s):
    icat = s.find('CAT')
    if icat == -1:
        n = 0
    else:
        n = int(s[icat+3])
    g = float(s.split()[-1])
    return n, g


def w(n):
    if n == 0:
        return 0.5
    elif n == 1:
        return 0.05
    else:
        return 0.15
