Modelo funcional, modificaciones de la estructura para aprovechar el diseño (HashSet -> TreeSet, para evitar la aletoriedad del HashSet y optimizar a la hora de encontrar el offset dentro del fichero)