class Company(object):

	def accept(self, visitor):
		visitor.visit(self)

	def employee(self, company_employee):
		print(self, "visited by ", company_employee)

	def candidate(self, interview_candidate):
		print(self, "visited by ", interview_candidate)

	def __str__(self):
		return self.__class__.__name__

class Visitor(object):

	def __str__(self):
		return self.__class__.__name__


class company_employee(Visitor):

	def visit(self, company):
		company.employee(self)

class interview_candidate(Visitor):

	def visit(self, company):
		company.candidate(self)


emp = company_employee()
ivc = interview_candidate()
company = Company()


company.accept(emp)
company.accept(ivc)
8a4a8f23364fc25fe31aa16bc20783afd1294247
class Company(object):
    <mask token>
    <mask token>
    <mask token>
    <mask token>


class Visitor(object):

    def __str__(self):
        return self.__class__.__name__


class company_employee(Visitor):

    def visit(self, company):
        company.employee(self)


class interview_candidate(Visitor):

    def visit(self, company):
        company.candidate(self)


<mask token>

class Company(object):
    <mask token>
    <mask token>
    <mask token>

    def __str__(self):
        return self.__class__.__name__


class Visitor(object):

    def __str__(self):
        return self.__class__.__name__


class company_employee(Visitor):

    def visit(self, company):
        company.employee(self)


class interview_candidate(Visitor):

    def visit(self, company):
        company.candidate(self)


<mask token>

class Company(object):

    def accept(self, visitor):
        visitor.visit(self)

    def employee(self, company_employee):
        print(self, 'visited by ', company_employee)

    def candidate(self, interview_candidate):
        print(self, 'visited by ', interview_candidate)

    def __str__(self):
        return self.__class__.__name__


class Visitor(object):

    def __str__(self):
        return self.__class__.__name__


class company_employee(Visitor):

    def visit(self, company):
        company.employee(self)


class interview_candidate(Visitor):

    def visit(self, company):
        company.candidate(self)


<mask token>

class Company(object):

    def accept(self, visitor):
        visitor.visit(self)

    def employee(self, company_employee):
        print(self, 'visited by ', company_employee)

    def candidate(self, interview_candidate):
        print(self, 'visited by ', interview_candidate)

    def __str__(self):
        return self.__class__.__name__


class Visitor(object):

    def __str__(self):
        return self.__class__.__name__


class company_employee(Visitor):

    def visit(self, company):
        company.employee(self)


class interview_candidate(Visitor):

    def visit(self, company):
        company.candidate(self)


<mask token>
company.accept(emp)
company.accept(ivc)

class Company(object):

	def accept(self, visitor):
		visitor.visit(self)

	def employee(self, company_employee):
		print(self, "visited by ", company_employee)

	def candidate(self, interview_candidate):
		print(self, "visited by ", interview_candidate)

	def __str__(self):
		return self.__class__.__name__

class Visitor(object):

	def __str__(self):
		return self.__class__.__name__


class company_employee(Visitor):

	def visit(self, company):
		company.employee(self)

class interview_candidate(Visitor):

	def visit(self, company):
		company.candidate(self)


emp = company_employee()
ivc = interview_candidate()
company = Company()


company.accept(emp)
company.accept(ivc)