more useless stuff, but code is more readable (for me at least...)