added virtual method to visitor implementation