def estadisAgencies(avió, agencies):
    #
    # Cada agència manté un registre de les reserves fetes.
    # Estudiem si hi ha hagut "overbooking". Cada reserva
    # ha de tenir un seient únic.
    #
    freq = {}
    for ag in agencies:
        for r in ag.reserva.values():
            freq[r] = freq.get(r, 0) + 1
    if freq == {}:
        print("cap reserva feta. Avió tot ocupat d'abans")

    reserves = 0
    print("Seients amb més d'una reserva:")
    for f in sorted(freq):
        if freq[f] != 1:
            print(f, freq[f])
        else:
            reserves += freq[f]
    if reserves == len(freq):
        print('Places reservades sense "overbooking"')
    else:
        print(reserves, 'places OK de', len(freq))
    if reserves == avió.places():
        print("Tot l'avió ocupat")
    print("Reserves per agència")
    for ag in agencies:
        print('{:>6s}: {:6d}'.format(ag.nomAg,len(ag.reserva)))
    print("Clients per ordre temporal de reserva:")
    fmt = '{:>6s}: {:24s} {:s}'
    print(fmt.format('seient','client', 'data'))
    for s, reserva in sorted(((s, avió[s]) for s in avió),
                             key= lambda x: x[1][1]):
        client, data = reserva
        print(fmt.format(s, client, data))

        
