def path(self, which=None):
        """Extend ``nailgun.entity_mixins.Entity.path``.
        The format of the returned path depends on the value of ``which``:

        clone
            /api/hostgroups/:hostgroup_id/clone
        puppetclass_ids
            /api/hostgroups/:hostgroup_id/puppetclass_ids
        smart_class_parameters
            /api/hostgroups/:hostgroup_id/smart_class_parameters
        smart_class_variables
            /api/hostgroups/:hostgroup_id/smart_variables

        Otherwise, call ``super``.

        """
        if which in (
                'clone',
                'puppetclass_ids',
                'smart_class_parameters',
                'smart_variables'
        ):
            return '{0}/{1}'.format(
                super(HostGroup, self).path(which='self'),
                which
            )
        return super(HostGroup, self).path(which)
Extend ``nailgun.entity_mixins.Entity.path``.
        The format of the returned path depends on the value of ``which``:

        clone
            /api/hostgroups/:hostgroup_id/clone
        puppetclass_ids
            /api/hostgroups/:hostgroup_id/puppetclass_ids
        smart_class_parameters
            /api/hostgroups/:hostgroup_id/smart_class_parameters
        smart_class_variables
            /api/hostgroups/:hostgroup_id/smart_variables

        Otherwise, call ``super``.