Which of the following is correct about web workers in HTML5?
A - Web Workers do all the computationally expensive tasks without interrupting the user interface and typically run on separate threads.
B - Web Workers allow for long-running scripts that are not interrupted by scripts that respond to clicks or other user interactions.
C - Web Workers allow long tasks to be executed without yielding to keep the page responsive.
D - All of the above.