Unanswered - Regressive problem with ordinals regarding countability

I've spent a lot of time thinking about this problem, but I'm running out of time and need a skeleton of the process to solve it if someone wants to tackle it...

Prove:

If $\displaystyle f: \omega_{1} \rightarrow \omega_{1} \wedge \forall \alpha \in \omega_{1} (f(\alpha)<\alpha \vee f(\alpha)=0) \exists \alpha_{0} \in \omega_{1} $ such that the set $\displaystyle \{ \alpha \in \omega_{1}: f(\alpha)= \alpha_{0} \} $ is uncountable.

I've been trying to do this by finding a counterexample to the following sentence

let $\displaystyle f: \omega_{1} \rightarrow \omega_{1} \wedge \forall \alpha \in \omega_{1} (f(\alpha)<\alpha \vee f(\alpha)=0), \Rightarrow \forall \alpha_{0} \in \omega_{1} $ the set $\displaystyle \{ \alpha \in \omega_{1}: f(\alpha)= \alpha_{0} \} $ is countable.

If I can find a single counterexample, then the original problem is true. I've looked at unions to see if I can get high enough in the ordinals so that uncountably many things drop to $\displaystyle \alpha$ when applying the function, but that would mean $\displaystyle \forall \gamma \in \omega_{1} \exists \alpha \in \omega_{1} (\cup \gamma = \alpha, \alpha < \gamma) $ is true. Which, according to my professor, it is not.

Thus, I need help.... please.