human
I wrote the below code

    def get_name_scope_name():
        if (get_tf_version_number() > 1.2):
            return tf.get_default_graph().get_name_scope()
        else:
            g = tf.get_default_graph()
            s = 'RANDOM_STR_ABCDEFG'
            unique = g.unique_name(s)
            scope = unique[:(- len(s))].rstrip('/')
            return scope
    @wraps(func)
    def _impl(self, *args, **kwargs):
        distr_name = self.name
        if (distr_name is None):
            distr_name = self.__class__.__name__
        if (distr_name not in get_name_scope_name()):
            with tf.name_scope(((distr_name + '_') + func.__name__)):
                return func(self, *args, **kwargs)
        else:
            return func(self, *args, **kwargs)
    return _impl

What's a good function header?

=====
Here's a good function header?
assistant
#Here's a good function header.

def class_scope(func):