regular languages – All strings in which every substring 000 appears after every 1

I found this given problem as follows:

Write a regular expression where all strings in which every substring 000 appears after every 1.

Now, I also found the answer from Illinois university study material which is available online. The given answer is as follows:

(1+01+001)*0*

However, I think this is not the correct answer as the RE can generate the given strings as 1, 10, 1010010 and so many. So the RE is not properly justified to the given problem.

Please, help me to get the correct information. Thanks for your kind consideration.