Add pattern Visitor