Not sure, but I think it's possible that the pattern is not followed up to some extent, and a little bit forward it does. 
Also, the else statement is superflous, right? 
What do you think?