public override void Remove(Component component)
 {
     throw new NotImplementedException("Cannot remove from a leaf");
 }
 public override void Add(Component component)
 {
     throw new NotImplementedException("Cannot add to Leaf");
 }
 public override void Remove(Component component)
 {
     _childrens.Remove(component);
 }
 public override void Add(Component component)
 {
     _childrens.Add(component);
 }
 public abstract void Remove(Component component);
 public abstract void Add(Component component);