cleaner code
more cleaning