```\n/// @dev Sets the bond value and vacancy flag on this minipool\n/// @param \_bondAmount The bond amount selected by the node operator\n/// @param \_currentBalance The current balance of the validator on the beaconchain (will be checked by oDAO and scrubbed if not correct)\nfunction prepareVacancy(uint256 \_bondAmount, uint256 \_currentBalance) override external onlyLatestContract("rocketMinipoolManager", msg.sender) onlyInitialised {\n    // Check status\n    require(status == MinipoolStatus.Initialised, "Must be in initialised status");\n    // Sanity check that refund balance is zero\n    require(nodeRefundBalance == 0, "Refund balance not zero");\n    // Check balance\n    RocketDAOProtocolSettingsMinipoolInterface rocketDAOProtocolSettingsMinipool = RocketDAOProtocolSettingsMinipoolInterface(getContractAddress("rocketDAOProtocolSettingsMinipool"));\n    uint256 launchAmount = rocketDAOProtocolSettingsMinipool.getLaunchBalance();\n    require(\_currentBalance >= launchAmount, "Balance is too low");\n    // Store bond amount\n    nodeDepositBalance = \_bondAmount;\n    // Calculate user amount from launch amount\n    userDepositBalance = launchAmount.sub(nodeDepositBalance);\n    // Flag as vacant\n    vacant = true;\n    preMigrationBalance = \_currentBalance;\n    // Refund the node whatever rewards they have accrued prior to becoming a RP validator\n    nodeRefundBalance = \_currentBalance.sub(launchAmount);\n    // Set status to preLaunch\n    setStatus(MinipoolStatus.Prelaunch);\n}\n```\n