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

export const IconMeetup24 = 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}
                <path
                    fill={color}
                    fillRule="evenodd"
                    d="M16.378 20.429a.962.962 0 011.414-.454.96.96 0 11-1.414.454zm-5.471 1.51a.592.592 0 111.101.436.592.592 0 01-1.101-.436zm-6.474-2.807a.427.427 0 11.592-.614.427.427 0 01-.592.614zm-1.6-7.32A.917.917 0 111 11.79a.917.917 0 011.835.023zM6.058 6.09a.696.696 0 11-1.295-.512.696.696 0 011.295.512zm1.686-4.202a.488.488 0 11-.678.701.488.488 0 01.678-.7zm5.958.536a.91.91 0 11-.779 1.645.91.91 0 01.779-1.645zm4.506 4.868c.28.624.4 1.308.348 1.99h.001a2.247 2.247 0 011.497 2.904 2.248 2.248 0 01-.688.988 3.923 3.923 0 01-1.09 5.31c-.723.501-1.553.708-2.369.678a2.669 2.669 0 01-1.067 1.551c-1.041.72-2.4.587-3.305-.22-.026.02-.05.041-.073.063a.969.969 0 01-.096.08 3.566 3.566 0 01-5.6-2.849 3.302 3.302 0 01-2.26-1.466 3.334 3.334 0 01.555-4.264 3.097 3.097 0 01.86-4.185c.4-.273.86-.446 1.34-.506a4.619 4.619 0 016.822-2.24 4.084 4.084 0 015.125 2.166zm2.588 1.08a.775.775 0 11-1.442-.57.775.775 0 011.442.57zm1.057 4.595a.576.576 0 11-.799.828.576.576 0 01.8-.828zm1.02-2.706a.429.429 0 11-.599.615.429.429 0 01.599-.615zm-7.275 5.418c.41.057.816.113.88.526.17 1.098-1.958.688-2.444.451-.762-.374-1.226-1.229-1.027-2.073.076-.326.489-1.171.878-1.967.364-.745.706-1.446.732-1.638.054-.404-.161-.438-.297-.445-.173-.01-.312.076-.48.333-.107.161-.97 1.872-1.548 3.02-.262.52-.466.925-.513 1.014-.273.514-.615.637-.959.619-.502-.027-.731-.295-.659-.78.02-.13.264-.728.528-1.375.313-.766.653-1.601.684-1.814.036-.242-.012-.5-.252-.623-.241-.123-.525.066-.61.209-.055.093-.434 1.059-.838 2.085-.452 1.15-.934 2.376-1.023 2.537-.29.529-.597.697-1.056.719-1.087.051-1.894-.844-1.538-1.94.03-.09.089-.29.17-.563.357-1.2 1.133-3.806 1.566-4.575.357-.634 1.346-1.115 2.033-.818.225.098.506.233.718.334.123.06.222.107.275.13.294.13.606-.162.775-.32l.062-.057.048-.042c.125-.11.25-.22.403-.286.172-.074.444-.104.654-.074.15.019.294.079.413.173.127.101.216.186.325.291l.071.069c.201.19.35.1.459.035l.028-.017.006-.003c.188-.11.34-.198.898-.187.582.01 1.25.217 1.388 1.208.075.535-.348 1.479-.787 2.46-.464 1.036-.946 2.114-.877 2.79.05.474.484.534.914.594z"
                    clipRule="evenodd"
                />
            </svg>
        );
    }
);
