@yoxisem544 when you define a lazy var, you define a closure that is being dynamically called the first time the variable is being accessed, and must return a value for this variale.
Since this is an instance variable, self exists at this time and we can pass it to the closure. The trick I used here is that, defining a closure that takes a parameter, I can pass this parameter in the call.
I could also have moved all this to a function and written: