void Load()
    {
        try
        {
            BinaryFormatter bf   = new BinaryFormatter();
            FileStream      file = File.Open(GetSaveFilePath(), FileMode.Open);

            object data = bf.Deserialize(file);

            if (data == null || !(data is Info))
            {
                throw new FileNotFoundException();
            }

            file.Close();


            Info info = (Info)data;

            this.currentYear = info.currentYear;
            this.graves      = info.graves;
        }
        catch (FileNotFoundException) {
            this.graves = new GraveRingBuffer(graveSlots.Count);
        }
    }
    GameObject[] Populate()
    {
        try
        {
            int          l      = graves.Count;
            GameObject[] result = new GameObject[l];

            int i = 0;
            foreach (Grave grave in graves.kernel)
            {
                result[i] = CreateGrave(grave, i);
                i++;
            }

            return(result);
        }
        catch (NullReferenceException)
        {
            graves = new GraveRingBuffer(graveSlots.Count);
            return(new GameObject[0]);
        }
    }
 public Info(GraveRingBuffer graves, int currentYear)
 {
     this.currentYear = currentYear;
     this.graves      = graves;
 }