import { forwardRef, useMemo } from 'react';
import { IconProps } from './types';

export const IconBridgecrew24 = forwardRef<SVGSVGElement, IconProps>(
    ({ color = 'currentColor', title, ...props }, svgRef) => {
        const titleId = useMemo(
            () =>
                title
                    ? 'title-' + Math.random().toString(36).substr(2, 9)
                    : undefined,
            [title]
        );
        return (
            <svg
                xmlns="http://www.w3.org/2000/svg"
                width={24}
                height={24}
                fill="none"
                viewBox="0 0 24 24"
                aria-hidden={!title}
                ref={svgRef}
                aria-labelledby={titleId}
                {...props}
            >
                {title ? <title id={titleId}>{title}</title> : null}
                <g fill={color}>
                    <path
                        fillRule="evenodd"
                        d="M5.687 14.595c.013-.03.05-.05.087-.069q.026-.012.048-.027a3.245 3.245 0 0 0 6.032-.178l.727 1.111-.414.382-.001.002.415-.384c1.436 1.311 3.477 1.374 4.56.173l-.968-.973c-1.022.594-1.825.552-2.473-.132a1.695 1.695 0 0 1-.164-2.253c.545-.704 1.527-.915 2.294-.489q.112.066.217.145l.104.073.336-.355q.319-.336.645-.682l-.425-.325c.142-.528.01-1.019-.258-1.47-.499-.84-1.316-1.291-2.193-1.647-.977-.396-1.959-.783-2.94-1.17q-.591-.232-1.181-.465l.065-.081.066-.083c1.115-1.405 2.506-1.643 3.991-.624.501.343.972.763 1.357 1.227 1.386 1.67 2.752 3.356 4.117 5.043l1.097 1.354c.499.616.93 1.269 1.109 2.053.204.902-.09 1.634-.796 2.212-.791.647-1.739.935-2.735 1.109q-2.047.356-4.095.716h-.002q-2.445.431-4.89.855c-.784.136-1.572.241-2.361.347-.127.017-.257.008-.387-.002l-.174-.01h-.005c-.862-.012-1.536-.344-1.954-1.108-.487-.659-.697-1.421-.839-2.203l-.258-1.426v-.001c-.461-2.544-.923-5.088-1.357-7.636a6.3 6.3 0 0 1-.039-1.774c.14-1.16.907-1.826 2.096-1.83.575-.002 1.185.043 1.72.23a71 71 0 0 1 3.01 1.157q.594.24 1.19.475-.01.03-.018.062-.018.07-.049.135-.232.446-.466.89-.447.843-.88 1.693c-.184.363-.352.735-.52 1.106l-.218.479-.347.149-.534.23V7.726H5.562v.368q0 .662-.004 1.323c-.005 1.11-.01 2.219.016 3.327.01.403.082.804.155 1.204q.051.275.093.55-.023.015-.05.028c-.036.019-.072.039-.085.068"
                        clipRule="evenodd"
                    />
                    <path d="M8.133 9.74c.166-.368.333-.737.515-1.097.287-.567.584-1.13.88-1.693l.467-.89c.022-.042.035-.089.048-.135l.018-.062h.073l1.18.466c.982.387 1.964.773 2.941 1.17.878.355 1.694.807 2.193 1.646.269.452.4.942.258 1.471l-.069-.035q-.06-.03-.12-.062c-1.59-.839-3.54-.265-4.392 1.295-.06.11-.112.222-.17.343l-.08.17c-.372-.98-1.02-1.653-1.994-2.01-.647-.237-1.307-.204-1.97-.089zM10.577 13.252c-.018-.976-.823-1.728-1.826-1.707-.971.021-1.762.813-1.754 1.757.008.974.847 1.772 1.84 1.752a1.77 1.77 0 0 0 1.74-1.802" />
                </g>
            </svg>
        );
    }
);
