see - https://stackoverflow.com/questions/35592750/how-does-for-syntax-differ-from-a-regular-lifetime-bound/35595491#35595491 - https://doc.rust-lang.org/nomicon/hrtb.html