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

export const IconPingIdentityColor24 = 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="#B3282D">
                    <path d="M6.91 12.833c.447 0 .58-.056.73-.299.092-.156.132-.325.132-.597 0-.538-.275-.863-.737-.863h-.697v1.759h.571zM8.094 17.253c-.222 0-.349.176-.362.528h.717c-.003-.183-.027-.295-.073-.378a.321.321 0 00-.282-.15zM6.786 18.478a.326.326 0 00.097-.123h-.004v-.902c-.08-.12-.195-.177-.381-.177a.325.325 0 00-.292.177c-.073.129-.1.252-.1.49 0 .2.013.346.063.445.073.143.17.2.315.2a.42.42 0 00.302-.11zM14.539 18.435v.083h.043c.026 0 .053-.007.053-.044 0-.033-.027-.04-.053-.04h-.043z" />
                    <path
                        fillRule="evenodd"
                        d="M14.403 18.538c0 .116.076.199.176.199.096 0 .175-.083.175-.2 0-.115-.076-.198-.175-.198-.097 0-.176.083-.176.199zm.182-.143c.066 0 .1.023.1.083 0 .046-.027.07-.07.073l.07.123h-.05l-.07-.12h-.03v.123h-.05v-.282h.1z"
                        clipRule="evenodd"
                    />
                    <path d="M16.719 12.392c-.398 0-.627.232-.627.63 0 .435.249.607.617.604.418 0 .644-.212.644-.604 0-.398-.232-.63-.634-.63z" />
                    <path
                        fillRule="evenodd"
                        d="M3.355 3.355h17.29v17.29H3.355V3.355zm3.319 6.78c.926 0 1.208.1 1.513.282.508.299.783.83.78 1.493 0 .764-.345 1.377-.94 1.676-.248.126-.484.193-1.088.193h-.6v2.124H5.24v-5.768h1.434zm-1.182 6.312H5.24v2.34h.252v-2.34zm2.144.833a.574.574 0 01.471-.236c.173 0 .319.067.422.183.136.15.172.312.179.717v.036h-.98v.04c0 .16.02.282.074.372.09.149.232.209.392.209.152 0 .275-.05.384-.16l.097.17a.756.756 0 01-.531.212c-.435 0-.697-.338-.697-.903 0-.285.056-.47.189-.64zm2.569.219a.425.425 0 00-.421-.451c-.167 0-.333.086-.495.262 0-.14-.057-.266-.057-.266l-.239.073s.06.116.06.359v1.31h.239v-1.264c.113-.13.309-.239.435-.239.073 0 .139.03.172.073.043.057.057.103.057.282v1.148h.249V17.5zm-.256-7.703c-.358 0-.657.306-.657.687 0 .382.292.69.64.69.359 0 .65-.308.65-.69 0-.378-.281-.687-.633-.687zm.511 1.756l-1.049.176v4.171h1.05v-4.347zm.83 5.539h-.408v-.644h-.253v.644h-.205v.202h.205v1.165c0 .173.044.282.153.339.06.03.123.046.206.046.11 0 .14-.013.219-.056l-.033-.17c-.021.01-.029.017-.037.02-.01.003-.022.003-.06.003-.156 0-.202-.063-.202-.252v-1.095h.338l.077-.202zm-4.404-.644h.246v1.789c0 .292.01.448.046.547h-.252s-.03-.083-.033-.172a.474.474 0 01-.415.199c-.408 0-.64-.319-.64-.86 0-.361.109-.627.325-.786.1-.077.189-.107.301-.107.176 0 .332.08.425.216 0 0-.003-.14-.003-.262v-.564zm7.049 2.4l.537-1.76h-.285l-.309 1.115c-.036.14-.096.359-.096.359h-.007s-.046-.262-.093-.422l-.321-1.101-.243.09.342 1.061a7.622 7.622 0 01.196.803c-.07.186-.15.26-.302.312l.073.18c.275-.07.402-.296.508-.638zm.408-.31c0-.135.106-.248.236-.248.129 0 .232.11.235.249 0 .136-.106.248-.235.248-.13 0-.236-.112-.236-.248zm2.21-3.726l.564.006c.61.007.933.107 1.221.382.236.232.346.524.346.906 0 .358-.103.63-.322.88-.352.398-.956.547-1.583.547-.571 0-1.158-.1-1.52-.458a1.022 1.022 0 01-.329-.753c0-.233.053-.349.093-.432h.973a.612.612 0 00-.047.273c0 .341.269.524.754.524.265 0 .49-.03.657-.14a.52.52 0 00.258-.431c0-.382-.321-.501-.736-.508l-.448-.01c-.472-.01-.777-.05-.966-.132-.19-.073-.305-.263-.305-.555 0-.272.076-.53.736-.713-.58-.16-.862-.548-.862-1.178 0-.873.667-1.437 1.692-1.437.226 0 .431.033.72.106.22.06.362.093.495.093.288 0 .587-.133.83-.365l.437.707c-.229.222-.448.315-.736.315-.082 0-.167-.01-.23-.018a4.06 4.06 0 00-.046-.005c.156.199.236.415.236.697 0 .73-.63 1.26-1.484 1.26-.046 0-.076 0-.156-.01-.265.133-.414.233-.414.35 0 .056.063.099.172.099zm-4.188-1.912c.245-.232.518-.381.73-.381.276 0 .352.142.352.617v2.764h1.035v-3.103c0-.265-.023-.448-.08-.603-.125-.366-.517-.614-.965-.614-.236 0-.508.066-.72.182-.169.097-.3.194-.45.307l-.011.008a1.15 1.15 0 00-.15-.53l-.932.281c.093.282.139.63.139.996v3.08h1.052v-3.004zm.192 5.486V17.29h.326l.076-.203h-.395v-.643h-.252v.643h-.206v.203h.206v1.165c0 .172.043.282.153.338.06.03.122.047.205.047.11 0 .14-.014.22-.057l-.034-.17-.023.013c-.019.011-.019.011-.073.011-.156 0-.203-.063-.203-.252zm-.746-1.334l-.256.043v1.692h.256v-1.735z"
                        clipRule="evenodd"
                    />
                </g>
            </svg>
        );
    }
);
