'''
Created on Dec 3, 2012

@author: ola
'''
def get_data(name):
    itlist = []
    dr = {}
    f = open(name)
    for line in f:
        parts = line.strip().split(":")
        name=parts[0]
        rest = parts[1]
        ratings = rest.split(",")
        dr[name] = {}
        for item in ratings:
            rate = item.split(" ")
            eat = rate[0]
            itlist.append(eat)
            eval = int(rate[1])
            dr[name][eat] = eval
            #print eat,eval
        #print name,rest        
    itlist = sorted(set(itlist))
    for key in dr:
        ratings = dr[key]
        nlist = []
        for eat in itlist:
            if eat in ratings:
                nlist.append(ratings[eat])
            else:
                nlist.append(0)
        dr[key] = nlist
    return itlist,dr

if __name__ == '__main__':
    x,y = get_data("foods.txt")
    print x
    for key in y:
        print key,y[key]