use log instead of fmt