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

export const IconKubernetesColor16 = 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={16}
                height={16}
                fill="none"
                viewBox="0 0 16 16"
                aria-hidden={!title}
                ref={svgRef}
                aria-labelledby={titleId}
                {...props}
            >
                {title ? <title id={titleId}>{title}</title> : null}
                <path
                    fill="#326de6"
                    d="M4.5 14.569c.214.278.539.431.874.431h5.251c.335 0 .66-.165.875-.434l3.258-4.178c.214-.278.288-.633.214-.978l-1.165-5.207a1.13 1.13 0 0 0-.606-.777l-4.714-2.31A1.06 1.06 0 0 0 8.002 1c-.168 0-.335.038-.485.115l-4.715 2.32a1.13 1.13 0 0 0-.605.777L1.032 9.42c-.084.345 0 .7.214.978z"
                />
                <path
                    fill="#fff"
                    fillRule="evenodd"
                    d="M12.741 9.128q.147.004.293.024a1 1 0 0 1 .09.02.307.307 0 1 1-.137.595h-.004l-.003-.001-.003-.001-.03-.007-.05-.01a3 3 0 0 1-.274-.106 3 3 0 0 0-.533-.156.24.24 0 0 0-.171.063l-.131-.023a3.97 3.97 0 0 1-1.764 2.212q.023.063.051.123a.24.24 0 0 0-.023.18q.112.256.27.484.09.117.165.244l.028.057.012.025a.306.306 0 0 1-.381.44.3.3 0 0 1-.172-.18l-.01-.02-.028-.058a3 3 0 0 1-.089-.28 3 3 0 0 0-.21-.512.24.24 0 0 0-.156-.095l-.065-.117a3.97 3.97 0 0 1-2.824-.007l-.069.125a.25.25 0 0 0-.132.064q-.157.257-.237.548a3 3 0 0 1-.088.28l-.025.05-.013.027v.001a.306.306 0 0 1-.421.173.307.307 0 0 1-.132-.434l.014-.03.026-.052q.075-.127.164-.244.162-.234.276-.496a.3.3 0 0 0-.027-.173l.056-.133A3.97 3.97 0 0 1 4.22 9.532l-.134.023a.34.34 0 0 0-.176-.062 3 3 0 0 0-.533.156q-.135.06-.275.105l-.05.011-.029.007H3.02l-.002.002h-.005a.308.308 0 0 1-.397-.349.31.31 0 0 1 .261-.245l.004-.001h.003l.006-.002c.024-.006.054-.014.076-.018q.146-.02.293-.023.28-.02.549-.09a.4.4 0 0 0 .131-.133l.128-.037a3.94 3.94 0 0 1 .624-2.752l-.098-.087a.34.34 0 0 0-.061-.176 3 3 0 0 0-.455-.319 3 3 0 0 1-.254-.148l-.048-.038-.015-.012-.005-.004a.323.323 0 0 1-.075-.45.3.3 0 0 1 .244-.107.37.37 0 0 1 .213.08l.022.017c.016.013.034.026.046.037q.107.101.202.213.188.206.412.372c.056.03.121.036.182.018l.11.078a3.94 3.94 0 0 1 2.552-1.224l.007-.129a.33.33 0 0 0 .1-.157 3 3 0 0 0-.034-.554 3 3 0 0 1-.042-.29v-.086A.306.306 0 0 1 8 2.82a.31.31 0 0 1 .306.337v.087a3 3 0 0 1-.041.29 3 3 0 0 0-.035.553.24.24 0 0 0 .1.153v.007l.007.13c.967.087 1.87.522 2.54 1.223l.116-.083a.34.34 0 0 0 .186-.02q.224-.166.412-.373.094-.112.202-.213l.051-.04.017-.014a.307.307 0 1 1 .381.477l-.067.054a3 3 0 0 1-.255.148 3 3 0 0 0-.454.32.24.24 0 0 0-.058.172l-.05.044-.058.053c.542.806.769 1.783.637 2.745l.123.036q.048.085.132.132.27.072.55.09M7.291 5.24q.16-.036.326-.056l-.091 1.6-.007.004a.27.27 0 0 1-.293.256.27.27 0 0 1-.135-.05l-.002.001-1.316-.93c.419-.41.945-.696 1.518-.825m1.618 1.75 1.307-.924a3.2 3.2 0 0 0-1.832-.882l.09 1.598h.002a.27.27 0 0 0 .294.256.3.3 0 0 0 .134-.05zm2.247 1.656L9.61 8.201l-.002-.006a.27.27 0 0 1-.185-.343.27.27 0 0 1 .08-.12L9.5 7.73l1.195-1.067c.366.594.527 1.29.46 1.983m-2.06.854.618 1.49a3.15 3.15 0 0 0 1.275-1.598l-1.593-.269-.003.004a.26.26 0 0 0-.165.022.27.27 0 0 0-.13.348zm-.386 1.905c-.572.13-1.17.1-1.726-.088l.777-1.4h.001a.27.27 0 0 1 .475-.001h.006l.779 1.402a3 3 0 0 1-.312.087m-2.418-.422.612-1.474-.004-.006a.268.268 0 0 0-.297-.37L6.6 9.13l-1.579.267a3.16 3.16 0 0 0 1.271 1.586m-.996-4.32 1.201 1.071-.001.007a.269.269 0 0 1-.106.462l-.001.005-1.54.443a3.13 3.13 0 0 1 .447-1.988m2.95 1.154h-.493l-.306.38.11.476.443.213.442-.212.11-.476z"
                    clipRule="evenodd"
                />
            </svg>
        );
    }
);
