pub fn forget_and_get<T: Any>(v: T) -> (ForgottenKey<T>, Rc<T>)