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

export const IconLinuxColor24 = 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="#202020"
                    d="M19.626 17.761c-.142-.159-.21-.455-.282-.77-.072-.314-.152-.653-.41-.873l-.002-.001a1.1 1.1 0 0 0-.317-.191c.359-1.064.218-2.124-.144-3.082-.445-1.175-1.22-2.199-1.814-2.9-.663-.836-1.312-1.63-1.3-2.804.02-1.791.198-5.112-2.954-5.117q-.193 0-.4.016c-3.523.284-2.589 4.005-2.64 5.25-.065.912-.25 1.63-.877 2.52-.736.876-1.773 2.293-2.263 3.768-.232.696-.342 1.406-.24 2.077a2 2 0 0 0-.092.09c-.216.23-.376.51-.554.698-.166.166-.403.23-.663.323s-.546.23-.72.564l-.001.002a1 1 0 0 0-.108.483c0 .154.023.31.046.461.048.313.096.61.032.81-.206.563-.233.953-.088 1.235.146.284.445.409.783.48.675.14 1.59.105 2.312.488.772.403 1.555.547 2.18.404.453-.103.82-.373 1.01-.788.487-.002 1.024-.209 1.882-.256.583-.047 1.31.207 2.147.16q.033.136.097.262l.001.002c.325.649.928.945 1.57.895.643-.051 1.327-.43 1.88-1.088l-.1-.085.101.084c.527-.64 1.402-.904 1.982-1.254.29-.175.525-.394.544-.712.018-.318-.17-.674-.598-1.15"
                />
                <path
                    fill="#f8bf11"
                    d="M19.959 18.897c-.011.196-.153.342-.416.5-.524.317-1.454.592-2.048 1.311-.516.614-1.145.951-1.699.995-.553.043-1.03-.186-1.313-.752v-.002c-.176-.333-.103-.857.044-1.41.147-.554.359-1.122.387-1.584v-.001c.03-.592.063-1.109.163-1.508.1-.398.256-.668.533-.82l.039-.02c.03.512.285 1.035.733 1.148.49.13 1.198-.292 1.496-.635l.175-.007c.262-.006.482.01.706.205l.002.002c.172.146.254.422.325.731.072.31.128.647.342.887.41.455.542.763.531.96M9.988 20.348v.003c-.047.622-.398.96-.937 1.083-.538.123-1.268 0-1.997-.38-.806-.428-1.766-.385-2.382-.514-.308-.064-.508-.16-.6-.34-.093-.18-.095-.493.101-1.028l.001-.002v-.002c.098-.3.026-.626-.021-.933s-.07-.586.035-.78v-.002c.135-.259.332-.351.576-.439s.534-.156.762-.386l.002-.001v-.001c.212-.223.371-.503.557-.701.157-.168.314-.279.55-.28h.008q.063 0 .132.01c.314.048.588.268.852.625l.761 1.388v.001c.203.423.631.889.994 1.363.362.475.643.951.606 1.316"
                />
                <path
                    fill="#d6a312"
                    d="M13.785 7.411c-.06-.12-.186-.233-.398-.32l-.001-.001c-.442-.19-.634-.203-.881-.363-.402-.258-.734-.349-1.01-.348-.144 0-.273.026-.388.066-.336.116-.56.357-.7.49-.027.025-.062.05-.148.113s-.216.158-.402.297c-.165.124-.219.285-.162.475.057.189.24.407.573.595l.001.001c.207.122.349.286.511.416.081.065.167.123.27.167.102.044.222.074.372.083.353.02.612-.086.842-.217.23-.13.424-.29.647-.363.458-.143.784-.431.886-.704a.46.46 0 0 0-.012-.387"
                />
                <path
                    fill="#202020"
                    d="M12.626 8.086c-.364.19-.789.42-1.241.42s-.809-.209-1.066-.412c-.128-.102-.232-.203-.31-.277-.137-.107-.12-.258-.065-.254.094.012.108.135.167.19.08.076.18.173.302.269.243.192.566.38.972.38.405 0 .877-.238 1.165-.4.164-.092.371-.256.541-.38.13-.096.125-.21.232-.198.107.013.028.127-.122.258s-.385.305-.575.404"
                />
                <path
                    fill="#fff"
                    d="M18.195 15.848a2 2 0 0 0-.162 0c.125-.395-.151-.685-.888-1.018-.763-.336-1.371-.303-1.474.378a1 1 0 0 0-.016.11q-.085.029-.172.076c-.359.196-.554.552-.663.989s-.14.963-.17 1.556c-.018.298-.141.701-.265 1.128-1.25.893-2.987 1.28-4.46.273a7 7 0 0 0-.333-.468l-.23-.294q.228 0 .384-.071a.49.49 0 0 0 .265-.274c.09-.242 0-.583-.288-.972-.288-.39-.775-.829-1.49-1.268-.527-.327-.82-.728-.958-1.164s-.119-.906-.013-1.371c.204-.892.727-1.76 1.061-2.305.09-.066.032.123-.338.81-.331.629-.952 2.079-.103 3.211a6.7 6.7 0 0 1 .539-2.396c.47-1.066 1.454-2.916 1.532-4.39a4 4 0 0 0 .24.158c.181.107.317.262.493.403a1.22 1.22 0 0 0 .821.286c.342 0 .61-.112.832-.239.241-.138.434-.291.617-.35.387-.122.695-.336.87-.585.3 1.184.999 2.895 1.448 3.73.239.442.714 1.383.919 2.517q.196-.005.426.054c.537-1.391-.454-2.889-.908-3.306-.183-.178-.192-.257-.1-.254.49.436 1.137 1.31 1.371 2.298.108.45.13.923.016 1.39q.084.036.17.077c.862.419 1.18.784 1.027 1.281"
                />
                <path
                    fill="#e6e6e6"
                    d="M12.058 12.088c-.795.003-1.57.36-2.227 1.023s-1.163 1.603-1.453 2.698l.087.055v.004c.671.427 1.15.854 1.445 1.254.313.423.451.835.32 1.192a.73.73 0 0 1-.388.404q-.028.013-.058.022.16.209.305.429c1.349.897 2.917.565 4.095-.247.115-.396.22-.765.234-.996.03-.594.06-1.131.176-1.6.118-.471.346-.9.777-1.136.024-.013.05-.021.073-.033a1 1 0 0 1 .032-.135c-.347-.888-.845-1.627-1.444-2.142-.6-.515-1.28-.788-1.974-.792m3.384 3.078-.001.008v-.008"
                />
                <path
                    fill="#fff"
                    d="M13.826 6.047a1.5 1.5 0 0 1-.128.639q-.074.172-.179.298l-.074-.033a6 6 0 0 0-.237-.095c-.07-.027-.125-.045-.182-.064.041-.05.122-.108.152-.182a1 1 0 0 0 .072-.347l.002-.015a1 1 0 0 0-.05-.337.6.6 0 0 0-.155-.262.32.32 0 0 0-.222-.101h-.012a.33.33 0 0 0-.216.085.6.6 0 0 0-.174.25 1 1 0 0 0-.072.349v.014q-.003.106.013.2a2.5 2.5 0 0 0-.506-.172 2 2 0 0 1-.014-.19v-.018a1.5 1.5 0 0 1 .126-.638c.09-.204.201-.35.358-.47a.8.8 0 0 1 .494-.176h.008c.179 0 .332.053.489.167.159.115.274.26.366.462.09.198.135.39.14.619zM11.126 6.28a1.5 1.5 0 0 0-.396.18 1 1 0 0 0 .003-.213v-.012a1 1 0 0 0-.068-.274.5.5 0 0 0-.138-.203.23.23 0 0 0-.17-.063q-.088.006-.157.092a.5.5 0 0 0-.1.222.9.9 0 0 0-.019.293l.001.012a.9.9 0 0 0 .068.275.5.5 0 0 0 .166.224c-.059.045-.098.077-.147.113l-.11.081a1 1 0 0 1-.23-.342 1.5 1.5 0 0 1-.128-.545v-.002a1.5 1.5 0 0 1 .065-.556c.055-.18.13-.31.238-.417a.51.51 0 0 1 .378-.169c.119 0 .225.04.335.128.119.095.209.216.284.388.076.171.116.343.127.545v.002q.009.127-.002.242"
                />
                <path
                    fill="#202020"
                    d="M11.723 6.765c.015.048.093.04.138.063.04.02.071.065.115.066.043.002.109-.014.114-.056.007-.056-.074-.09-.126-.111-.067-.026-.153-.04-.216-.005-.014.008-.03.027-.025.043M11.263 6.765c-.015.048-.093.04-.137.063-.04.02-.072.065-.116.066-.042.002-.108-.014-.114-.056-.007-.056.074-.09.126-.111.067-.026.153-.04.216-.005.014.008.03.027.025.043"
                />
            </svg>
        );
    }
);
