Removed extra visitor object creation - it's stateless and immutable anyway