async def _run_tests(self, instance: Instance, data: Dict[str, Any]) -> Tuple[str, str]:
        """
        Run tests and evaluate results.

        Args:
            instance: The MorphCloud instance
            data: Dictionary containing runtime parameters

        Returns:
            tuple: (score, feedback)

        Raises:
            TimeoutError: If test execution times out
        """
        hard_timeout = data["run_timeout"] / 1000 + 3
        run_command = f"cd /workspace && timeout {hard_timeout}s ./run"

        run_result = await instance.aexec(run_command)

        if run_result.exit_code == 124 or run_result.exit_code == 137 or run_result.exit_code == 143:
            return "0", "Time limit exceeded"

        if run_result.exit_code != 0 and "Memory limit exceeded" in run_result.stderr:
            return "0", "Memory limit exceeded"

        if run_result.stdout:
            return run_result.stdout.strip(), run_result.stderr.strip()

        if run_result.exit_code != 0:
            return (
                "0",
                f"Runtime error with exit code {run_result.exit_code}\n{run_result.stderr}",
            )

        return "0", "Unknown error"

        Run tests and evaluate results.

        Args:
            instance: The MorphCloud instance
            data: Dictionary containing runtime parameters

        Returns:
            tuple: (score, feedback)

        Raises:
            TimeoutError: If test execution times out
        
src/open_r1/utils/competitive_programming/morph_client.py