def METHOD_NAME(obj: Model):
    module = obj.__class__.__module__
    name = obj.__class__.__name__
    _id = getattr(obj, "_id", None)
    cls_name = make_id()
    def row(c: str):
        return f'<div style="display: table-row;">{c}</div>'
    def hidden_row(c: str):
        return f'<div class="{cls_name}" style="display: none;">{c}</div>'
    def cell(c: str):
        return f'<div style="display: table-cell;">{c}</div>'
    html = ''
    html += '<div style="display: table;">'
    ellipsis_id = make_id()
    ellipsis = f'<span id="{ellipsis_id}" style="cursor: pointer;">&hellip;)</span>'
    prefix = cell(f'<b title="{module}.{name}">{name}</b>(')
    html += row(prefix + cell('id' + '&nbsp;=&nbsp;' + repr(_id) + ', ' + ellipsis))
    props = obj.properties_with_values().items()
    sorted_props = sorted(props, key=itemgetter(0))
    all_props = sorted_props
    for i, (prop, value) in enumerate(all_props):
        end = ')' if i == len(all_props)-1 else ','
        html += hidden_row(cell("") + cell(prop + '&nbsp;=&nbsp;' + repr(value) + end))
    html += '</div>'
    html += _HTML_REPR % dict(ellipsis_id=ellipsis_id, cls_name=cls_name)
    return html