```\n// Get submission keys\nbytes32 nodeSubmissionKey = keccak256(abi.encodePacked("minipool.withdrawable.submitted.node", msg.sender, \_minipoolAddress, \_stakingStartBalance, \_stakingEndBalance));\nbytes32 submissionCountKey = keccak256(abi.encodePacked("minipool.withdrawable.submitted.count", \_minipoolAddress, \_stakingStartBalance, \_stakingEndBalance));\n// Check & update node submission status\nrequire(!getBool(nodeSubmissionKey), "Duplicate submission from node");\nsetBool(nodeSubmissionKey, true);\nsetBool(keccak256(abi.encodePacked("minipool.withdrawable.submitted.node", msg.sender, \_minipoolAddress)), true);\n// Increment submission count\nuint256 submissionCount = getUint(submissionCountKey).add(1);\nsetUint(submissionCountKey, submissionCount);\n```\n