public HashSet <Indice> GetIndices()
        {
            HashSet <Indice> indices = new HashSet <Indice>();

            foreach (Indice ind in Lista2.Where(s => s.posicions.Count > 0))
            {
                indices.Add(ind);
            }
            foreach (Indice ind in Lista3.Where(s => s.posicions.Count > 0))
            {
                indices.Add(ind);
            }
            foreach (Indice ind in Lista4.Where(s => s.posicions.Count > 0))
            {
                indices.Add(ind);
            }
            foreach (Indice ind in Lista5.Where(s => s.posicions.Count > 0))
            {
                indices.Add(ind);
            }
            foreach (Indice ind in Lista6.Where(s => s.posicions.Count > 0))
            {
                indices.Add(ind);
            }
            foreach (Indice ind in Lista7.Where(s => s.posicions.Count > 0))
            {
                indices.Add(ind);
            }
            foreach (Indice ind in Lista8.Where(s => s.posicions.Count > 0))
            {
                indices.Add(ind);
            }
            foreach (Indice ind in Lista9.Where(s => s.posicions.Count > 0))
            {
                indices.Add(ind);
            }
            foreach (Indice ind in Lista10.Where(s => s.posicions.Count > 0))
            {
                indices.Add(ind);
            }
            foreach (Indice ind in Lista11.Where(s => s.posicions.Count > 0))
            {
                indices.Add(ind);
            }
            foreach (Indice ind in Lista12.Where(s => s.posicions.Count > 0))
            {
                indices.Add(ind);
            }
            foreach (Indice ind in Lista13.Where(s => s.posicions.Count > 0))
            {
                indices.Add(ind);
            }
            foreach (Indice ind in Lista14.Where(s => s.posicions.Count > 0))
            {
                indices.Add(ind);
            }
            foreach (Indice ind in Lista15.Where(s => s.posicions.Count > 0))
            {
                indices.Add(ind);
            }
            foreach (Indice ind in Lista16.Where(s => s.posicions.Count > 0))
            {
                indices.Add(ind);
            }
            foreach (Indice ind in Lista17.Where(s => s.posicions.Count > 0))
            {
                indices.Add(ind);
            }
            foreach (Indice ind in Lista18.Where(s => s.posicions.Count > 0))
            {
                indices.Add(ind);
            }
            foreach (Indice ind in Lista19.Where(s => s.posicions.Count > 0))
            {
                indices.Add(ind);
            }
            foreach (Indice ind in Lista20.Where(s => s.posicions.Count > 0))
            {
                indices.Add(ind);
            }
            foreach (Indice ind in Lista21.Where(s => s.posicions.Count > 0))
            {
                indices.Add(ind);
            }
            foreach (Indice ind in Lista22.Where(s => s.posicions.Count > 0))
            {
                indices.Add(ind);
            }
            foreach (Indice ind in Lista23.Where(s => s.posicions.Count > 0))
            {
                indices.Add(ind);
            }
            foreach (Indice ind in Lista24.Where(s => s.posicions.Count > 0))
            {
                indices.Add(ind);
            }
            foreach (Indice ind in Lista25.Where(s => s.posicions.Count > 0))
            {
                indices.Add(ind);
            }
            return(indices);
        }
 public Indice BuscarItem(Posicion pos)
 {
     if (pos.Position >= 1 * multi && pos.Position < 2 * multi)
     {
         return(Lista2.Where(s => pos.Position < s.PosicionEnd && pos.Position >= s.PosicionStart).First());
     }
     if (pos.Position >= 2 * multi && pos.Position < 3 * multi)
     {
         return(Lista3.Where(s => pos.Position < s.PosicionEnd && pos.Position >= s.PosicionStart).First());
     }
     if (pos.Position >= 3 * multi && pos.Position < 4 * multi)
     {
         return(Lista4.Where(s => pos.Position < s.PosicionEnd && pos.Position >= s.PosicionStart).First());
     }
     if (pos.Position >= 4 * multi && pos.Position < 5 * multi)
     {
         return(Lista5.Where(s => pos.Position < s.PosicionEnd && pos.Position >= s.PosicionStart).First());
     }
     if (pos.Position >= 5 * multi && pos.Position < 6 * multi)
     {
         return(Lista5.Where(s => pos.Position < s.PosicionEnd && pos.Position >= s.PosicionStart).First());
     }
     if (pos.Position >= 6 * multi && pos.Position < 7 * multi)
     {
         return(Lista6.Where(s => pos.Position < s.PosicionEnd && pos.Position >= s.PosicionStart).First());
     }
     if (pos.Position >= 7 * multi && pos.Position < 8 * multi)
     {
         return(Lista7.Where(s => pos.Position < s.PosicionEnd && pos.Position >= s.PosicionStart).First());
     }
     if (pos.Position >= 8 * multi && pos.Position < 9 * multi)
     {
         return(Lista8.Where(s => pos.Position < s.PosicionEnd && pos.Position >= s.PosicionStart).First());
     }
     if (pos.Position >= 9 * multi && pos.Position < 10 * multi)
     {
         return(Lista9.Where(s => pos.Position < s.PosicionEnd && pos.Position >= s.PosicionStart).First());
     }
     if (pos.Position >= 10 * multi && pos.Position < 11 * multi)
     {
         return(Lista10.Where(s => pos.Position < s.PosicionEnd && pos.Position >= s.PosicionStart).First());
     }
     if (pos.Position >= 11 * multi && pos.Position < 12 * multi)
     {
         return(Lista11.Where(s => pos.Position < s.PosicionEnd && pos.Position >= s.PosicionStart).First());
     }
     if (pos.Position >= 12 * multi && pos.Position < 13 * multi)
     {
         return(Lista12.Where(s => pos.Position < s.PosicionEnd && pos.Position >= s.PosicionStart).First());
     }
     if (pos.Position >= 13 * multi && pos.Position < 14 * multi)
     {
         return(Lista13.Where(s => pos.Position < s.PosicionEnd && pos.Position >= s.PosicionStart).First());
     }
     if (pos.Position >= 14 * multi && pos.Position < 15 * multi)
     {
         return(Lista14.Where(s => pos.Position < s.PosicionEnd && pos.Position >= s.PosicionStart).First());
     }
     if (pos.Position >= 15 * multi && pos.Position < 16 * multi)
     {
         return(Lista15.Where(s => pos.Position < s.PosicionEnd && pos.Position >= s.PosicionStart).First());
     }
     if (pos.Position >= 16 * multi && pos.Position < 17 * multi)
     {
         return(Lista16.Where(s => pos.Position < s.PosicionEnd && pos.Position >= s.PosicionStart).First());
     }
     if (pos.Position >= 17 * multi && pos.Position < 18 * multi)
     {
         return(Lista17.Where(s => pos.Position < s.PosicionEnd && pos.Position >= s.PosicionStart).First());
     }
     if (pos.Position >= 18 * multi && pos.Position < 19 * multi)
     {
         return(Lista18.Where(s => pos.Position < s.PosicionEnd && pos.Position >= s.PosicionStart).First());
     }
     if (pos.Position >= 19 * multi && pos.Position < 20 * multi)
     {
         return(Lista19.Where(s => pos.Position < s.PosicionEnd && pos.Position >= s.PosicionStart).First());
     }
     if (pos.Position >= 20 * multi && pos.Position < 21 * multi)
     {
         return(Lista20.Where(s => pos.Position < s.PosicionEnd && pos.Position >= s.PosicionStart).First());
     }
     if (pos.Position >= 21 * multi && pos.Position < 22 * multi)
     {
         return(Lista21.Where(s => pos.Position < s.PosicionEnd && pos.Position >= s.PosicionStart).First());
     }
     if (pos.Position >= 22 * multi && pos.Position < 23 * multi)
     {
         return(Lista22.Where(s => pos.Position < s.PosicionEnd && pos.Position >= s.PosicionStart).First());
     }
     if (pos.Position >= 23 * multi && pos.Position < 24 * multi)
     {
         return(Lista23.Where(s => pos.Position < s.PosicionEnd && pos.Position >= s.PosicionStart).First());
     }
     if (pos.Position >= 24 * multi)
     {
         return(Lista24.Where(s => pos.Position < s.PosicionEnd && pos.Position >= s.PosicionStart).First());
     }
     return(null);
 }