given the potential size of output it might make sense to take advantage of the `logging` module