made it more functional