Well, even that code omits the definition of "said" and "clicked". (The latter is unnecessary as far as I can see.)
I agree that mine isn't precisely by the spec -- you have to press 'enter' to submit the form, and there's an ok button on the last page -- but these are fairly trivial differences in presentation due to the behaviour of the built-in libraries.
(also, minor footnote: I'm assuming that "foo", "said" and "clicked" are instance variables in each example.)