Using objc_precise_lifetime to ensure the object is freed at the correct time.