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

export const IconAwsCloudwatchColor24 = 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="#759c3e"
                    d="M21 17.57q-.035.011-.068.027l-8.836 4.338q-.044.02-.088.034l-.002-.014V18.88l.691-.24 2.634-.92q.815-.284 1.628-.566l1.162-.406q.84-.293 1.678-.583l1.093-.379c.022-.008.041-.024.062-.036l.045-.006z"
                />
                <path
                    fill="#c6cdbd"
                    d="M3.02 17.564 3 17.57v-1.81h.015q.003.04.004.08v1.196z"
                />
                <path
                    fill="#759c3e"
                    d="M9.324 2q.031.008.063.02.227.092.456.18c.172.066.346.127.518.193.147.056.292.118.44.174.147.057.297.107.444.164.147.056.292.118.44.174q.224.084.45.166.279.105.555.212.21.084.419.168c.131.05.265.095.397.146q.244.096.489.193c.147.056.297.108.445.164s.293.118.44.174c.155.06.312.114.467.172.14.054.278.114.419.167q.226.084.453.167.139.053.287.112v7.996q-.221.005-.442.013-.165.007-.328.017-.135.007-.268.017-.256.02-.514.04-.175.01-.35.018l-.246.016q-.261.02-.521.04-.168.01-.336.018l-.231.015q-.256.02-.514.04-.275.017-.552.033l-.26.016-.59.042q-.144.008-.29.017c-.171.012-.342.028-.514.04q-.168.01-.336.018c-.019 0-.042-.007-.047.022l-.079-.004v3.537l-.003.096c-.015 0-.03-.003-.044 0l-.405.093q-.156.034-.312.065V2"
                />
                <path
                    fill="#4b612c"
                    d="M9.324 2v14.951q-.047-.007-.095-.02l-1.754-.53-.25-.078V3.026q.029-.016.058-.031l1.979-.973q.03-.012.062-.022"
                />
                <path
                    fill="#759c3e"
                    d="M18.201 12.748h.278v2.546q0 .047.006.095l-.004.36c-.001.075-.001.075-.074.095l-.723.212-.966.288-1.196.353-.844.25-1.475.434-1.009.3c-.062.02-.125.033-.187.049l.001-.03v-4.34q.048-.008.096-.014.194-.015.387-.033c.173-.017.346-.038.52-.055q.27-.024.543-.047.3-.03.601-.058l.194-.018.385-.04.372-.033q.186-.02.371-.04.194-.016.387-.032.297-.028.594-.058l.2-.019.386-.039q.186-.015.372-.033l.416-.04.342-.033c.01 0 .019-.013.028-.02z"
                />
                <path
                    fill="#4b612c"
                    d="M3.02 17.564V15.84q-.002-.04-.005-.08l.06-.004c.018.011.035.025.055.031q1.156.404 2.313.806l3.505 1.22 3.059 1.068v3.075l-.032.002-.062-.026-8.852-4.347z"
                />
                <path
                    fill="#b7ca9d"
                    d="m12.007 18.88-3.06-1.067-3.504-1.221-2.313-.806c-.02-.006-.037-.02-.056-.03.02-.009.039-.022.06-.025q.29-.044.58-.085l.56-.079.443-.064.096-.01.008.098.07.024q.558.172 1.114.343.161.048.322.094h.015q.022.002.045 0 .279-.05.558-.096.138-.02.28-.034v.4l.25.078 1.755.532c.03.009.062.012.094.018q.156-.032.312-.065l.405-.093c.014-.003.03 0 .044 0v.372l.073.023 1.433.424.416.119q.094-.023.187-.048.504-.15 1.009-.3.738-.219 1.475-.434l.844-.251 1.196-.353.966-.288.723-.212c.073-.02.073-.02.074-.095q.001-.18.004-.36.207.024.413.052.236.033.472.068l.457.065.464.067.45.065q.084.011.169.024c.016.002.03.014.044.02-.02.012-.04.028-.062.036l-1.093.379-1.678.583-1.162.406-1.628.566-.943.33-1.69.59z"
                />
                <path
                    fill="#4b612c"
                    d="M6.327 16.052q-.161-.046-.322-.094l-1.113-.343q-.035-.011-.071-.024l-.008-.098q.004-.05.005-.101v-9.44q0-.096.088-.13l1.356-.51c.025-.01.053-.01.08-.015v10.742z"
                />
                <path
                    fill="#759c3e"
                    d="m6.341 16.039.001-.074V5.297q.103.015.204.034l.612.135c.021.005.045.002.066.003l.002.11v10.27l-.002.073q-.14.015-.28.035-.277.047-.557.096-.022.002-.045.001z"
                />
                <path
                    fill="#b6c99b"
                    d="M18.201 12.748c-.01.007-.018.02-.028.02l-.342.031-.416.042q-.185.015-.372.033l-.386.038-.2.02-.594.057c-.129.012-.258.02-.387.033-.124.012-.247.028-.37.04-.124.012-.248.02-.373.033q-.193.019-.386.039l-.193.018q-.3.03-.601.058-.271.022-.543.048c-.174.016-.347.037-.52.054q-.194.018-.387.033-.048.006-.096.015l-.132-.017-.384-.042-.718-.075c-.072-.007-.144-.007-.216-.015q-.195-.023-.39-.049c.005-.029.028-.022.047-.022q.167-.007.336-.018.256-.02.513-.04.146-.009.291-.017l.589-.042.26-.016q.277-.014.553-.033c.17-.011.342-.027.513-.04l.231-.015c.113-.007.224-.01.336-.018q.261-.02.521-.04l.246-.016q.176-.007.351-.018.256-.02.514-.04l.268-.016.328-.018.441-.013.493-.002h1.114q.045.002.089.008z"
                />
                <path fill="#596f39" d="m11.975 21.957.031-.002.002.014z" />
                <path
                    fill="#4b612c"
                    d="M10.167 13.164q.195.025.392.048c.071.007.144.008.215.015a146 146 0 0 1 1.102.117l.132.016v4.34l-.001.03-.416-.118-1.433-.424-.073-.023v-.372l.003-.096V13.16z"
                />
                <path
                    fill="#567031"
                    d="m6.34 16.039.002.014-.015-.001.014-.013z"
                />
            </svg>
        );
    }
);
