Validate and finishes a tracer by adding mandatory extra attributes.

    :param \*args: Arguments.
    :type \*args: \*
    :return: Validated wrapped object.
    :rtype: object

def validate_tracer(*args):
    """
    Validate and finishes a tracer by adding mandatory extra attributes.

    :param \*args: Arguments.
    :type \*args: \*
    :return: Validated wrapped object.
    :rtype: object
    """

    object, wrapped = args
    if is_traced(object) or is_untracable(object) or get_object_name(object) in UNTRACABLE_NAMES:
        return object

    set_tracer_hook(wrapped, object)
    set_traced(wrapped)

    return wrapped