extending visitor behaviour