import { forwardRef } from "react";
import type { IconProps } from "../../types";

export const IconToolCrosswordOutline = forwardRef<SVGSVGElement, IconProps>(
  ({ color = "currentColor", ...props }, forwardedRef) => {
    const { className } = props;
    props = {
      ...props,
      width: `${props.width || props.size || 20}`,
      height: `${props.height || props.size || 20}`,
      className: `${
        className ? className + " " : ""
      }customeow-icon customeow-icon-icon-tool-crossword-outline`,
    };
    return (
      <svg
        viewBox="0 0 20 20"
        fill="none"
        xmlns="http://www.w3.org/2000/svg"
        {...props}
        ref={forwardedRef}
      >
        <g fill={color} clipPath="url(#a)">
          <path
            d="M5.59491 2.75894C5.63604 2.78934 5.66685 2.83164 5.6832 2.8801L7.23318 7.25009C7.25244 7.28536 7.26254 7.3249 7.26254 7.36508C7.26254 7.40527 7.25244 7.44483 7.23318 7.4801C7.2116 7.5136 7.18201 7.54119 7.14709 7.56039C7.11218 7.5796 7.07305 7.5898 7.0332 7.59009H6.47321C6.42072 7.58929 6.36968 7.57264 6.32684 7.5423C6.28401 7.51195 6.25135 7.46936 6.23318 7.4201L5.97321 6.6601H4.33319L4.0632 7.4201C4.04504 7.46936 4.01238 7.51195 3.96954 7.5423C3.92671 7.57264 3.87567 7.58929 3.82318 7.59009H3.27319C3.23198 7.58971 3.19145 7.57955 3.15494 7.56042C3.11842 7.5413 3.08698 7.51377 3.0632 7.4801C3.04627 7.44413 3.03748 7.40484 3.03748 7.36508C3.03748 7.32532 3.04627 7.28606 3.0632 7.25009L4.67319 2.8801C4.68953 2.83164 4.72035 2.78934 4.76147 2.75894C4.8026 2.72854 4.85208 2.71149 4.9032 2.71008H5.45319C5.50431 2.71149 5.55378 2.72854 5.59491 2.75894ZM4.6832 5.69009H5.6832L5.16318 4.3501L4.6832 5.69009Z"
            fillRule="evenodd"
            clipRule="evenodd"
          />
          <path
            d="M.799988 2.50005C.799988 1.56116 1.5611.800049 2.49999.800049H7.79999C8.73887.800049 9.49999 1.56116 9.49999 2.50005V7.80005C9.49999 8.73893 8.73887 9.50005 7.79999 9.50005H2.49999C1.5611 9.50005.799988 8.73893.799988 7.80005V2.50005ZM2.49999 2.00005H7.79999C8.07613 2.00005 8.29999 2.22391 8.29999 2.50005V7.80005C8.29999 8.07619 8.07613 8.30005 7.79999 8.30005H2.49999C2.22385 8.30005 1.99999 8.07619 1.99999 7.80005V2.50005C1.99999 2.22391 2.22385 2.00005 2.49999 2.00005ZM6.34988 14.7297C6.46146 14.6432 6.55349 14.5342 6.6199 14.4097 6.70827 14.2257 6.75277 14.0237 6.74991 13.8197 6.75221 13.5746 6.69012 13.3332 6.56989 13.1197 6.44418 12.894 6.25219 12.7125 6.0199 12.5997 5.74943 12.4672 5.45097 12.402 5.1499 12.4097H3.62988C3.56358 12.4097 3.50001 12.436 3.45312 12.4829 3.40624 12.5298 3.37988 12.5934 3.37988 12.6597V17.0397C3.37988 17.106 3.40624 17.1695 3.45312 17.2164 3.50001 17.2633 3.56358 17.2897 3.62988 17.2897H5.2099C5.53275 17.3007 5.85397 17.2392 6.1499 17.1097 6.3922 17.0002 6.59476 16.8186 6.72989 16.5897 6.8557 16.3706 6.92125 16.1222 6.91989 15.8697 6.92427 15.6224 6.86579 15.3781 6.74991 15.1597 6.64897 14.9893 6.51253 14.8426 6.34988 14.7297ZM5.90991 15.8697C5.91226 15.9286 5.90083 15.9874 5.87653 16.0412 5.85222 16.095 5.81571 16.1424 5.7699 16.1796 5.60676 16.2935 5.40742 16.3434 5.2099 16.3197H4.40991V15.3197H5.2699C5.40135 15.313 5.5323 15.3405 5.6499 15.3997 5.74326 15.4451 5.82016 15.5185 5.8699 15.6097 5.90719 15.6909 5.92105 15.781 5.90991 15.8697ZM4.40991 14.3297V13.3797H5.1499C5.31418 13.363 5.47864 13.4095 5.60989 13.5097 5.65174 13.5496 5.68491 13.5977 5.70728 13.6511 5.72965 13.7044 5.74075 13.7618 5.7399 13.8197 5.74442 13.9147 5.72001 14.0088 5.66989 14.0897 5.61409 14.1645 5.54237 14.2259 5.4599 14.2696 5.35824 14.3106 5.24947 14.331 5.13989 14.3297H4.40991Z"
            fillRule="evenodd"
            clipRule="evenodd"
          />
          <path
            d="M0.799988 12.2C0.799988 11.2611 1.5611 10.5 2.49999 10.5H7.79999C8.73887 10.5 9.49999 11.2611 9.49999 12.2V17.5C9.49999 18.4389 8.73887 19.2 7.79999 19.2H2.49999C1.5611 19.2 0.799988 18.4389 0.799988 17.5V12.2ZM2.49999 11.7H7.79999C8.07613 11.7 8.29999 11.9239 8.29999 12.2V17.5C8.29999 17.7761 8.07613 18 7.79999 18H2.49999C2.22385 18 1.99999 17.7761 1.99999 17.5V12.2C1.99999 11.9239 2.22385 11.7 2.49999 11.7Z"
            fillRule="evenodd"
            clipRule="evenodd"
          />
          <path d="M16.164 15.47H16.694C16.7266 15.4624 16.7606 15.462 16.7934 15.4689C16.8262 15.4758 16.8571 15.4898 16.8839 15.5099C16.9078 15.537 16.9255 15.5689 16.9358 15.6034C16.9462 15.6379 16.949 15.6743 16.944 15.7099C16.9018 15.9528 16.8172 16.1864 16.694 16.3999C16.571 16.5979 16.4155 16.7737 16.2339 16.9199C16.0537 17.0601 15.8507 17.1683 15.6339 17.2399C15.4078 17.3129 15.1716 17.35 14.934 17.3499C14.5343 17.3546 14.1418 17.2435 13.804 17.0299C13.4669 16.8225 13.1989 16.5198 13.034 16.16C12.8491 15.748 12.7535 15.3015 12.7535 14.8499C12.7535 14.3984 12.8491 13.9519 13.034 13.5399C13.2035 13.1805 13.4702 12.8757 13.804 12.66C14.1447 12.454 14.5359 12.3466 14.934 12.3499C15.1716 12.3499 15.4078 12.387 15.6339 12.4599C15.8523 12.528 16.0558 12.6365 16.2339 12.78C16.4178 12.9237 16.5737 13.1 16.694 13.2999C16.8172 13.5135 16.9018 13.7471 16.944 13.9899C16.949 14.0256 16.9462 14.062 16.9358 14.0965C16.9255 14.131 16.9078 14.1629 16.8839 14.19C16.8617 14.219 16.8329 14.2423 16.7998 14.2579C16.7668 14.2736 16.7305 14.2811 16.694 14.28H16.164C16.1067 14.2808 16.051 14.261 16.007 14.2243C15.9629 14.1877 15.9335 14.1364 15.924 14.0799C15.8984 13.97 15.8545 13.8652 15.7939 13.7699C15.7368 13.6793 15.6619 13.6011 15.5739 13.5399C15.4846 13.4794 15.3869 13.4323 15.284 13.3999C15.1682 13.3794 15.0497 13.3794 14.934 13.3999C14.7261 13.3959 14.5213 13.4514 14.344 13.5599C14.1626 13.68 14.0202 13.8503 13.934 14.0499C13.8132 14.3166 13.7551 14.6074 13.7639 14.8999C13.7578 15.1923 13.8158 15.4825 13.934 15.75C14.0202 15.9496 14.1626 16.1199 14.344 16.2399C14.5213 16.3485 14.7261 16.404 14.934 16.3999C15.0523 16.3988 15.17 16.382 15.284 16.3499C15.3876 16.3192 15.4855 16.272 15.5739 16.2099C15.6619 16.1488 15.7368 16.0706 15.7939 15.9799C15.8545 15.8847 15.8984 15.7799 15.924 15.6699C15.9335 15.6134 15.9629 15.5622 16.007 15.5256C16.051 15.4889 16.1067 15.4692 16.164 15.47Z" />
          <path
            d="M12.2 10.5C11.2611 10.5 10.5 11.2611 10.5 12.2V17.5C10.5 18.4389 11.2611 19.2 12.2 19.2H17.5C18.4389 19.2 19.2 18.4389 19.2 17.5V12.2C19.2 11.2611 18.4389 10.5 17.5 10.5H12.2ZM17.5 11.7H12.2C11.9239 11.7 11.7 11.9239 11.7 12.2V17.5C11.7 17.7761 11.9239 18 12.2 18H17.5C17.7761 18 18 17.7761 18 17.5V12.2C18 11.9239 17.7761 11.7 17.5 11.7Z"
            fillRule="evenodd"
            clipRule="evenodd"
          />
        </g>
        <defs>
          <clipPath id="a">
            <path fill={color} d="M0 0H20V20H0z" />
          </clipPath>
        </defs>
      </svg>
    );
  }
);

IconToolCrosswordOutline.displayName = "IconToolCrosswordOutline";

export default IconToolCrosswordOutline;
