Right, I didn't see your last comment before I replied.  I've moved the `cast` back into each visitor.