adaptando clases para visitor