```\nfunction _copyUserOpToMemory(UserOperation calldata userOp, MemoryUserOp memory mUserOp) internal pure {\n    mUserOp.sender = userOp.sender;\n    mUserOp.nonce = userOp.nonce;\n    mUserOp.callGasLimit = userOp.callGasLimit;\n    mUserOp.verificationGasLimit = userOp.verificationGasLimit;\n    mUserOp.preVerificationGas = userOp.preVerificationGas;\n    mUserOp.maxFeePerGas = userOp.maxFeePerGas;\n    mUserOp.maxPriorityFeePerGas = userOp.maxPriorityFeePerGas;\n    bytes calldata paymasterAndData = userOp.paymasterAndData;\n    if (paymasterAndData.length > 0) {\n        require(paymasterAndData.length >= 20, "AA93 invalid paymasterAndData");\n        mUserOp.paymaster = address(bytes20(paymasterAndData[: 20]));\n    } else {\n        mUserOp.paymaster = address(0);\n    }\n}\n```\n