we can make this better