Visitor pattern complete.