throw instead of logging
update tests