I am trying to create a custom dictionary with some methods. I created a struct containing the information for lanes in my game. One information tells me if there is an enemy in the lane(Occupied) and the other if we completed that lane so no more enemies will come there(Completed).

I am able to get the initial information out, but cannot update them with my methods. I construct it by adding all 7 lanes, where none of them are either occupied or completed. Then throughout my game, I would like to mark them either as completed or occupied or free, but even after a lot of time searching around, I couldn't figure out the proper way to call for an update of these items inside my laneInfo property.

```
public struct laneInfo
{
    public bool Occupied;
    public bool Completed;
}

public class laneInfoClass : Dictionary<int, laneInfo>
{
    public laneInfo laneinfo;

    public laneInfoClass()
    {
        for(int i = 0; i <= 6; i++)
        {
            this.Add(i, false, false);
        }
    }
    public void Add(int key, bool occupied, bool completed)
    {
        laneinfo.Occupied = occupied;
        laneinfo.Completed = completed;
        this.Add(key, laneinfo);
    }
    public void Complete()
    {
        laneinfo.Completed = true;
    }
    public void Occupy()
    {
        laneinfo.Occupied = true;
    }
    public void Free()
    {
        laneinfo.Occupied = false;
    }
}

```

Thanks!