Suppose I have an imperative 3rd party library I would like to abstract away because imperative code is messy.
So, I define some very specific function that accepts the 3