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

export const IconLinuxColor16 = 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="#202020"
                    d="M13.338 12.033c-.099-.112-.146-.319-.197-.54-.05-.22-.107-.457-.288-.61v-.001a.763.763 0 00-.223-.134c.252-.745.153-1.487-.1-2.157-.312-.823-.855-1.54-1.27-2.03-.464-.586-.918-1.142-.91-1.963.014-1.254.138-3.579-2.068-3.582-.09 0-.183.004-.28.012-2.466.198-1.812 2.803-1.849 3.675-.045.637-.174 1.14-.613 1.764-.515.612-1.24 1.604-1.584 2.637-.162.487-.24.984-.168 1.454-.023.02-.044.041-.064.062-.151.162-.263.358-.388.49-.116.116-.282.16-.464.225-.183.065-.383.162-.504.395v.001a.702.702 0 00-.077.339c0 .108.016.217.032.322.034.22.068.427.023.567-.144.395-.163.667-.061.865.102.198.31.286.547.335.473.099 1.114.075 1.619.342.54.283 1.089.383 1.526.284a.99.99 0 00.706-.552c.342-.002.717-.147 1.318-.18.408-.033.918.145 1.503.113a.803.803 0 00.068.182l.001.002c.227.454.65.662 1.1.627.45-.036.928-.302 1.315-.762.37-.447.982-.633 1.388-.878.203-.123.368-.276.38-.499.013-.222-.118-.472-.418-.805z"
                />
                <path
                    fill="#F8BF11"
                    d="M13.571 12.828c-.007.137-.107.24-.29.35-.368.221-1.019.414-1.434.918-.362.43-.802.665-1.19.696-.387.03-.721-.13-.919-.526v-.002c-.123-.233-.072-.6.031-.987.103-.388.251-.785.271-1.109.02-.414.044-.776.114-1.056.07-.279.179-.468.373-.574l.027-.014c.022.359.2.725.514.804.343.09.838-.204 1.047-.445.042-.001.083-.004.122-.004.184-.005.337.006.495.143.121.103.179.297.229.513.05.217.09.453.239.62.287.32.38.535.371.673zM6.592 13.843v.002c-.034.436-.28.673-.656.759-.377.086-.888 0-1.398-.267-.565-.299-1.237-.269-1.667-.36-.216-.044-.357-.112-.421-.237-.064-.126-.066-.345.071-.72v-.001l.001-.002c.068-.209.018-.438-.015-.653-.033-.214-.049-.41.024-.546l.001-.001c.094-.181.232-.246.403-.307.17-.062.373-.11.533-.27l.001-.001.001-.001c.148-.156.26-.352.39-.49.11-.118.22-.196.385-.197h.005c.03 0 .06.003.093.008.22.033.411.187.596.437l.533.971c.141.297.441.623.695.955.254.332.45.666.425.921z"
                />
                <path
                    fill="#D6A312"
                    d="M9.25 4.788c-.043-.084-.13-.164-.28-.225-.309-.132-.444-.142-.617-.254-.28-.181-.513-.244-.706-.244a.834.834 0 00-.272.047c-.236.08-.392.25-.49.342-.019.018-.044.035-.104.08-.06.043-.15.11-.28.207-.117.087-.154.2-.114.333.04.132.167.285.4.417.146.085.245.2.36.291a.801.801 0 00.188.117c.072.031.156.052.26.058.248.014.43-.06.59-.151.16-.092.296-.204.452-.255.32-.1.55-.301.62-.493a.324.324 0 00-.007-.27z"
                />
                <path
                    fill="#202020"
                    d="M8.438 5.26c-.255.133-.552.294-.869.294-.316 0-.566-.146-.745-.289-.09-.07-.163-.142-.218-.193-.096-.075-.084-.181-.045-.178.066.008.076.095.117.133.056.053.126.12.211.188.17.135.397.266.68.266.284 0 .614-.166.816-.28.115-.064.26-.179.379-.266.09-.067.087-.147.162-.138.075.009.02.089-.085.18-.105.092-.27.214-.403.283z"
                />
                <path
                    fill="#fff"
                    d="M12.337 10.694a1.724 1.724 0 00-.104 0h-.01c.088-.277-.106-.48-.621-.713-.534-.235-.96-.212-1.032.265-.005.025-.009.05-.011.076a.801.801 0 00-.12.054c-.252.137-.389.386-.465.692-.076.305-.098.674-.119 1.09 0-.001 0 0 0 0-.013.208-.099.49-.186.79-.875.624-2.09.894-3.122.19-.07-.11-.15-.22-.233-.328a13.85 13.85 0 00-.16-.205.65.65 0 00.268-.05.34.34 0 00.186-.192c.063-.17 0-.408-.202-.68-.201-.273-.542-.58-1.043-.888-.368-.229-.574-.51-.67-.815-.097-.304-.084-.634-.01-.96.143-.624.51-1.232.743-1.613.063-.046.023.086-.236.567-.232.44-.667 1.455-.072 2.248.016-.564.15-1.14.377-1.677.329-.747 1.018-2.041 1.072-3.073a2.847 2.847 0 00.169.11c.126.075.221.184.344.282a.85.85 0 00.575.2c.24 0 .427-.078.582-.167.17-.097.304-.204.433-.245.27-.085.486-.235.608-.41.21.83.7 2.027 1.014 2.611.167.31.5.969.643 1.762.091-.002.191.01.299.038.375-.973-.319-2.022-.636-2.314-.128-.124-.135-.18-.07-.177.343.304.795.916.96 1.608.075.315.09.646.01.973.04.017.08.034.12.053.603.294.826.55.719.898z"
                />
                <path
                    fill="#E6E6E6"
                    d="M8.04 8.062c-.556.002-1.099.251-1.558.716-.46.464-.814 1.122-1.018 1.888l.061.038v.004c.47.298.805.598 1.012.878.219.296.316.584.223.833a.513.513 0 01-.27.284c-.013.006-.028.01-.041.015.074.097.146.197.213.3.944.628 2.042.396 2.867-.172.08-.278.153-.537.163-.698.021-.416.042-.792.124-1.12.082-.33.242-.63.544-.795.017-.01.034-.015.051-.023a.76.76 0 01.022-.095c-.242-.622-.591-1.139-1.01-1.499-.42-.36-.897-.552-1.382-.554zm2.37 2.154l-.002.005v-.001l.001-.004z"
                />
                <path
                    fill="#fff"
                    d="M9.278 3.833a1.05 1.05 0 01-.215.656 4.119 4.119 0 00-.218-.09c-.049-.019-.087-.031-.127-.045.029-.035.085-.076.107-.127a.67.67 0 00.05-.243l.001-.01a.673.673 0 00-.035-.236.434.434 0 00-.108-.184.223.223 0 00-.156-.07H8.57a.228.228 0 00-.151.06.433.433 0 00-.122.174.676.676 0 00-.05.244v.01a.718.718 0 00.009.14 1.773 1.773 0 00-.354-.12 1.196 1.196 0 01-.01-.133v-.013a1.035 1.035 0 01.088-.447.793.793 0 01.25-.329.554.554 0 01.346-.123h.006c.125 0 .232.037.342.117a.78.78 0 01.257.324c.063.138.094.273.097.433l.001.012zM7.388 3.997a1.05 1.05 0 00-.277.125.623.623 0 00.002-.15v-.008a.651.651 0 00-.048-.192.37.37 0 00-.096-.141.157.157 0 00-.119-.045c-.042.004-.077.024-.11.065a.372.372 0 00-.07.156.626.626 0 00-.013.205v.008a.634.634 0 00.048.193.367.367 0 00.116.156l-.102.079-.078.057a.706.706 0 01-.16-.24c-.053-.12-.082-.24-.09-.381v-.001a1.071 1.071 0 01.045-.39.668.668 0 01.167-.292.359.359 0 01.264-.118c.084 0 .158.028.235.09a.68.68 0 01.199.271c.053.12.08.24.089.382.003.06.003.116-.002.17z"
                />
                <path
                    fill="#202020"
                    d="M7.806 4.335c.01.034.065.029.097.045.027.014.05.045.08.046.03 0 .076-.01.08-.04.005-.038-.052-.063-.088-.077-.047-.019-.107-.028-.151-.003-.01.005-.021.018-.018.03zM7.484 4.335c-.01.034-.065.029-.096.045-.028.014-.05.045-.081.046-.03 0-.076-.01-.08-.04-.005-.038.052-.063.088-.077.047-.019.108-.028.152-.003.01.005.02.018.017.03z"
                />
            </svg>
        );
    }
);
