making it more functional