working on a more transparent structure