trying to make things cleaner