def try_raising(value):
    """Try to raise an exception from option in the first place.
    Raises from classes (e.g. ValueError)
    or exception objects (e.g. ValueError('Incorrect value!'))

    If that fails, returns the value itself.
    """
    if value is TypeError or isinstance(value, TypeError):
        raise value
    try:
        raise value
    except TypeError:
        return value
