reduce dupe logs, handle error conditions better