class Itinerari:
    def __init__(self, persona):
        self.nom = persona
        self.__etapes = []

    def afegir_etapa(self, etapa):
        self.__etapes.append(etapa)

    def etapa_llarga(self, hores):
        for e in self.__etapes:
            if e.durada() > hores:
                return e.poblacio
        return ''
    def __getitem__(self, i):
        return self.__etapes[i]

    def __len__(self):
        return len(self.__etapes)

    def __iter__(self):
        return map(lambda x: x.poblacio, self.__etapes)

    def temps_etapes(self):
        return sum(map(lambda x: x.durada(), self.__etapes))
