K buitlin visitor refactoring