```\nfunction _getRequiredPrefund(MemoryUserOp memory mUserOp) internal pure returns (uint256 requiredPrefund) {\nunchecked {\n    //when using a Paymaster, the verificationGasLimit is used also to as a limit for the postOp call.\n    // our security model might call postOp eventually twice\n    uint256 mul = mUserOp.paymaster != address(0) ? 3 : 1;\n    uint256 requiredGas = mUserOp.callGasLimit + mUserOp.verificationGasLimit * mul + mUserOp.preVerificationGas;\n\n    requiredPrefund = requiredGas * mUserOp.maxFeePerGas;\n}\n}\n```\n