Why is Requirements Elicitation a difficult task ?

Why is Requirements Elicitation a difficult task ?

A. Problem of scope
B. Problem of understanding
C. Problem of volatility
D. All of the mentioned

Explanation: Users specify unnecessary technical detail that may confuse, rather than clarify overall system objectives.Also, the customers/users are not completely sure of what is needed, have a poor understanding of the capabilities and limitations of their computing environment and they do not understand that the requirements change over time