cleaning up boilerplate