use latest spl::safe_ptr udpate