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

export const IconAzureBlobStorageColor16 = 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="#2378bc"
                    d="M15 8.004q-.277.466-.55.932c-.15.255-.292.513-.44.768q-.158.267-.317.532l-.394.668q-.318.552-.638 1.102c-.177.303-.358.605-.534.908a73 73 0 0 0-.585 1.016c-.032.056-.067.069-.126.069q-.726-.002-1.453-.001-2.681-.001-5.362.002c-.088 0-.132-.03-.174-.102-.163-.286-.333-.568-.5-.852l-.3-.52q-.242-.42-.486-.837l-.377-.646q-.134-.232-.269-.463-.26-.436-.517-.873c-.15-.259-.295-.52-.444-.779-.102-.176-.209-.349-.311-.524-.07-.12-.137-.24-.209-.36-.022-.035-.014-.063.004-.093l.296-.512.277-.468.323-.55c.123-.21.249-.418.37-.628q.183-.315.365-.631.217-.375.437-.75l.385-.652.39-.67q.293-.502.58-1.008C4.473 2.023 4.51 2 4.578 2q1.013.002 2.025.002h4.828c.05-.005.08.014.104.058q.136.243.276.481.127.215.255.43.192.32.38.643.208.354.413.71.195.34.393.68.186.318.376.636l.401.685.52.905q.119.203.24.406zM4.477 7.991v2.623c0 .123.01.244.053.364.097.277.287.46.552.576a1 1 0 0 0 .404.063h5.005c.186 0 .364-.023.53-.119a.93.93 0 0 0 .491-.784q.003-.07.002-.139v-4.7c0-.038-.008-.07-.037-.098-.08-.077-.156-.16-.236-.236-.19-.186-.383-.368-.574-.554q-.131-.13-.262-.262c-.09-.09-.182-.176-.27-.268a.22.22 0 0 0-.176-.08q-2.231.002-4.462.002c-.21 0-.408.042-.585.158a.94.94 0 0 0-.435.858z"
                />
                <path
                    fill="#fafdfe"
                    d="M4.477 7.99V5.396a.94.94 0 0 1 .435-.859c.177-.115.375-.157.585-.157q2.231 0 4.462-.002c.078 0 .127.029.176.08q.133.136.27.268.131.132.262.262c.191.186.383.368.574.554.08.077.155.159.236.236.03.028.037.06.037.098v4.7q0 .07-.002.14a.93.93 0 0 1-.492.784 1 1 0 0 1-.529.118H5.486a1 1 0 0 1-.404-.063.95.95 0 0 1-.605-.94zm5.35-3.096H5.528c-.05 0-.1-.003-.15.005a.43.43 0 0 0-.314.192.5.5 0 0 0-.064.293v5.23q-.002.064.004.129a.4.4 0 0 0 .314.346q.11.02.223.019 2.42.001 4.837 0 .122-.002.243-.013c.158-.012.261-.1.331-.236.042-.08.04-.166.04-.253V6.184c0-.036-.005-.072-.009-.117H9.827z"
                />
                <path
                    fill="#2478bd"
                    d="M9.827 4.894v1.173h1.156c.004.045.009.08.009.116v4.423c0 .087.002.173-.04.254-.07.135-.173.223-.331.235-.08.006-.162.013-.243.013q-2.418.001-4.837 0-.113.001-.223-.019a.4.4 0 0 1-.314-.346q-.006-.065-.004-.13V5.384c0-.102.005-.2.064-.293A.43.43 0 0 1 5.38 4.9c.049-.008.1-.005.15-.005h4.298m-3.4 4.525c.009.12.013.24.028.36.016.124.047.245.107.36a.54.54 0 0 0 .373.293c.107.024.215.025.325.013a.61.61 0 0 0 .538-.406c.05-.127.075-.26.09-.395.037-.32.018-.632-.09-.939a.5.5 0 0 0-.278-.294.8.8 0 0 0-.573-.031c-.231.07-.36.234-.433.446a1.9 1.9 0 0 0-.088.593M9.57 6.58c-.013-.119-.029-.238-.04-.357a.86.86 0 0 0-.18-.476.46.46 0 0 0-.19-.142.84.84 0 0 0-.375-.06.66.66 0 0 0-.516.272 1 1 0 0 0-.162.486c-.032.298-.033.597.05.89.036.128.09.242.198.324.2.155.432.164.666.11.238-.054.377-.22.452-.445.065-.195.087-.396.097-.602m-.118 3.835a.3.3 0 0 0 .048-.2c-.005-.08-.031-.106-.11-.108q-.084-.001-.169-.001c-.04-.001-.079-.006-.13-.01V8.385c-.072-.007-.134-.018-.196-.02a.4.4 0 0 0-.246.07c-.085.062-.177.114-.265.17q-.06.037-.114.08c-.018.014-.035.039-.036.06a2 2 0 0 0-.001.175c0 .04.027.054.064.049a.3.3 0 0 0 .08-.024c.073-.04.144-.085.216-.126.023-.014.05-.02.076-.03.019.14.012 1.243-.01 1.319h-.088q-.121-.002-.244 0c-.067.003-.09.025-.094.09q-.002.051 0 .102c0 .088.027.125.128.124.334-.005.669-.002 1.003-.002q.047-.001.088-.005m-2.012-3.11V5.58c-.1.003-.186-.027-.277-.008-.04.008-.083.012-.115.032q-.206.126-.404.263a.13.13 0 0 0-.052.072.35.35 0 0 0 .022.242c.037-.012.073-.02.105-.036q.119-.064.236-.13c.02-.01.043-.015.071-.025v1.245c-.001.062-.009.07-.07.072q-.102.002-.206 0c-.152 0-.17.018-.162.173q0 .013.002.028c.012.105.021.114.126.114h1.04c.037 0 .063-.017.067-.052a1 1 0 0 0 .012-.156c-.005-.09-.023-.105-.115-.106h-.28z"
                />
                <path
                    fill="#f9fcfe"
                    d="M6.426 9.419a1.9 1.9 0 0 1 .088-.593c.074-.212.202-.377.433-.446q.297-.09.573.031a.5.5 0 0 1 .279.294c.107.307.126.62.09.94-.016.135-.04.267-.091.394a.61.61 0 0 1-.538.406q-.165.02-.325-.013a.54.54 0 0 1-.372-.294 1 1 0 0 1-.108-.36c-.015-.119-.02-.24-.029-.36m1.06-.035c-.014-.146-.024-.297-.047-.446a.4.4 0 0 0-.074-.186c-.079-.105-.316-.118-.399.02a1 1 0 0 0-.065.141c-.033.088-.036.18-.04.273-.012.232-.018.462.037.69.04.171.112.273.315.249a.21.21 0 0 0 .18-.127.6.6 0 0 0 .049-.158c.019-.15.03-.3.044-.456M9.57 6.581c-.009.206-.03.407-.096.602-.075.225-.214.391-.452.446-.234.053-.465.044-.666-.11a.6.6 0 0 1-.198-.325 2.3 2.3 0 0 1-.05-.89 1 1 0 0 1 .162-.486.66.66 0 0 1 .516-.272q.196-.013.375.06.112.045.19.142c.112.14.166.3.18.476.011.12.027.238.04.357m-1.056.032c-.006.177.004.363.06.545.027.082.076.147.162.162.096.018.193.02.267-.065a.5.5 0 0 0 .11-.27 2.8 2.8 0 0 0 0-.756.7.7 0 0 0-.064-.22c-.025-.048-.072-.103-.122-.118-.14-.045-.292-.014-.352.162-.06.178-.065.363-.061.56"
                />
                <path
                    fill="#fafcfe"
                    d="M9.453 10.417q-.04.003-.088.004c-.334 0-.669-.003-1.003.002-.1.001-.129-.036-.129-.124q-.001-.052.001-.102c.004-.065.027-.087.094-.09q.123-.002.244 0h.088c.022-.076.029-1.18.01-1.32-.027.01-.053.017-.076.03q-.107.065-.216.127a.3.3 0 0 1-.08.024c-.037.005-.063-.01-.064-.049a2 2 0 0 1 0-.176c.002-.02.02-.045.037-.06q.054-.042.114-.078c.088-.057.18-.109.265-.17a.4.4 0 0 1 .246-.07c.062 0 .124.012.197.019v1.714c.05.003.09.008.129.009h.169c.079.003.105.03.11.108a.3.3 0 0 1-.048.201M7.44 7.307h.28c.092.001.11.015.115.107a1 1 0 0 1-.012.155c-.005.035-.03.053-.067.052h-1.04c-.105 0-.114-.01-.126-.114l-.003-.028c-.007-.154.01-.172.163-.172h.206c.06-.003.069-.01.07-.073V5.99c-.028.01-.051.014-.07.025-.08.042-.157.088-.237.13-.032.016-.069.023-.105.035a.35.35 0 0 1-.022-.242.13.13 0 0 1 .051-.072q.2-.135.405-.263c.032-.02.076-.023.115-.031.09-.02.177.01.277.008z"
                />
                <path
                    fill="#267abe"
                    d="M7.486 9.384c-.014.155-.025.306-.044.456a.6.6 0 0 1-.05.158.21.21 0 0 1-.18.127c-.202.024-.273-.078-.314-.25-.055-.227-.05-.457-.037-.689.004-.092.007-.185.04-.273a1 1 0 0 1 .065-.141c.083-.138.32-.125.4-.02.038.052.064.121.073.186.023.149.033.3.047.446M8.514 6.613c-.004-.197 0-.382.06-.56.06-.176.213-.207.353-.162.05.015.097.07.122.119a.7.7 0 0 1 .064.22 2.8 2.8 0 0 1 0 .755.5.5 0 0 1-.11.27c-.074.085-.171.083-.267.065-.086-.015-.135-.08-.161-.162a1.6 1.6 0 0 1-.061-.545"
                />
            </svg>
        );
    }
);
