try to be smarter