outputFile has a .write method with the same signature… why can't you just pass outputFile anywhere you would have passed StringConsumer?