optimizing the public members