preparing for guarantee_return