def make_repr(obj):
    """
    Make a representation text
    :param obj: Python object
    :return: representation text
    """
    repr_text = f'{obj.__class__.__name__} {obj.name} '
    if hasattr(obj, 'package_names'):
        repr_text += f'\n{len(obj.package_names)} packages'
    if hasattr(obj, 'var_names'):
        repr_text += f'\n{len(obj.var_names)} variables.'
    if hasattr(obj, 'value'):
        repr_text += f'\nvalue: {repr(obj.value)}'
        if obj.value.shape:
            repr_text += f'\nshape: {obj.value.shape}'
    if hasattr(obj, 'origin'):
        repr_text += f'\nlocation: {obj.origin}'
    return repr_text
