try:
    from verilog_framework.verilogtoimage.logger import get_logger
except ImportError:
    from .logger import get_logger

try:
    try:
        from verilog_framework.verilogtoimage.converters import (
            YosysConverter, NetlistSVGConverter, CairoSVGConverter
        )
    except ImportError:
        from .converters import (
            YosysConverter, NetlistSVGConverter, CairoSVGConverter
        )
    _converters_available = True
except (ImportError, Exception) as e:
    YosysConverter = None
    NetlistSVGConverter = None
    CairoSVGConverter = None
    _converters_available = False

try:
    try:
        from verilog_framework.verilogtoimage.pipeline import VerilogToImagePipeline
    except ImportError:
        from .pipeline import VerilogToImagePipeline
    _pipeline_available = True
except (ImportError, Exception) as e:
    VerilogToImagePipeline = None
    _pipeline_available = False

__all__ = [
    'get_logger',
    'YosysConverter', 'NetlistSVGConverter', 'CairoSVGConverter',
    'VerilogToImagePipeline'
]
