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

export const IconAwsCloudwatch16 = 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}
                <g fill={color}>
                    <path d="M6.407 1.004l.029.01.113.045.203.08c.063.024.127.048.19.07l.17.064.142.056a8.142 8.142 0 00.471.179l.15.059a9.923 9.923 0 00.47.177l.384.147.132.053a10.5 10.5 0 00.299.115c.045.016.09.032.136.05l.165.065.174.069.157.058.153.056.146.058.159.063c.056.022.113.042.17.063a7.208 7.208 0 01.3.115c.048.019.096.039.145.057a11.408 11.408 0 00.315.116l.15.06.049.018-.002 2.518-.002 2.52-4.861.316v3.097l-.123.025-.023-.005-.042-.009L5.107 11l-.119-.037-.054-.017v-.278-.025V3.485 1.712l.013-.007.027-.014c.458-.226.916-.45 1.375-.675a.237.237 0 01.03-.012L6.392 1l.016.004zM14.5 11.812l-.01.004a.404.404 0 00-.037.015l-6.136 3.013a.338.338 0 01-.042.016l-.02.008v-2.146l.204-.07.275-.096 1.174-.41a580.853 580.853 0 011.217-.425l.003-.001.566-.197.4-.14h.002l.005-.002.4-.14a574.277 574.277 0 011.544-.536l.38-.131c.01-.004.02-.01.03-.017l.003-.002a.224.224 0 01.01-.006l.032-.004v1.267zM2.014 11.808L2 11.812v-1.257h.01l.02-.001.022-.002a.279.279 0 01.011.007.123.123 0 00.027.015l1.071.373 1.348.47 1.621.564 2.116.74.009.001V14.868l-.023-.009-.016-.007a.447.447 0 01-.026-.011l-6.148-3.019-.028-.014z" />
                    <path d="M12.75 8.464h-.194v-.002l-.022-.002c-.013-.001-.026-.003-.04-.003H11.494l-.114.001a25.784 25.784 0 01-.307.01l-.163.008-.065.004-.046.002a9.47 9.47 0 00-.14.009l-.144.011a17.39 17.39 0 01-.362.025 9.811 9.811 0 00-.265.016l-.153.011-.209.016-.136.008-.097.005a7.02 7.02 0 00-.305.022l-.212.016-.275.016-.108.007-.182.011-.408.03a6.7 6.7 0 01-.092.004l-.11.007-.166.013-.191.015-.156.008-.078.004h-.007c-.01 0-.022-.001-.025.016l.072.009c.066.008.132.017.2.024a1.3 1.3 0 00.08.006 102.76 102.76 0 01.568.057l.18.02.086.01c.019.001.038.004.056.006l.036.005.022-.004a13.189 13.189 0 01.893-.087l.158-.013.316-.03.102-.01.067-.007.067-.006.105-.01c.054-.007.109-.012.163-.017l.117-.01.141-.013.13-.014.128-.014.146-.012a11.738 11.738 0 00.432-.04l.103-.01.14-.014a19.513 19.513 0 00.267-.027l.128-.011.13-.012.29-.028.078-.008.159-.014c.005 0 .009-.005.013-.009l.003-.003.003-.002-.001.002-.005.003c-.004.004-.008.008-.013.009l-.118.011-.12.01-.115.013-.173.016-.128.012-.13.011-.18.019-.089.008-.139.013-.103.01a46.895 46.895 0 01-.443.042l-.135.011-.14.015-.118.013-.127.011c-.043.004-.088.007-.13.012l-.162.016-.107.01a6.927 6.927 0 01-.067.007l-.067.007-.177.017-.24.023-.156.014-.222.019a13.189 13.189 0 00-.36.038 12.034 12.034 0 01-.27.023.607.607 0 00-.044.006l-.022.004-.038-.004-.053-.007-.267-.03c-.166-.017-.332-.035-.499-.051a1.662 1.662 0 00-.071-.005l-.078-.006-.219-.027-.053-.007-.055-.002v2.456l-.001.05v.275l.004.002.046.014c.331.099.663.197.995.294.062.019.125.037.188.054l.1.029.02-.005.024-.006c.029-.007.058-.014.087-.023l.333-.1.367-.108c.193-.058.387-.114.58-.171l.445-.13.293-.088c.097-.03.195-.058.293-.087l.83-.245.334-.1h.003l.334-.1.503-.147c.05-.014.05-.014.05-.066l.003-.25-.001-.017a.575.575 0 01-.003-.05V8.465zM4.236 10.737l.075.021h.009V10.75 3.29l-.018.002c-.012.002-.025.003-.037.007l-.941.356c-.04.015-.061.045-.061.09V10.3a.803.803 0 01-.003.05v.02l.005.069.015.005a246.573 246.573 0 00.807.25l.15.043z" />
                </g>
            </svg>
        );
    }
);
