better logging and organization