/*
 * Copyright 2024 Palantir Technologies, Inc. All rights reserved.
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

import * as React from "react";
import type { SVGIconProps } from "../../svgIconProps";
import { IconSize } from "../../iconTypes";
import { SVGIconContainer } from "../../svgIconContainer";

export const InheritedGroup: React.FC<SVGIconProps> = React.forwardRef<any, SVGIconProps>((props, ref) => {
    const isLarge = (props.size ?? IconSize.STANDARD) >= IconSize.LARGE;
    const pixelGridSize = isLarge ? IconSize.LARGE : IconSize.STANDARD;
    const translation = `${-1 * pixelGridSize / 0.05 / 2}`;
    const style = { transformOrigin: "center" };
    return (
        <SVGIconContainer iconName="inherited-group" ref={ref} {...props}>
            <path
                d={isLarge ? "M20 220C31 220 40 211 40 200V120C40 98 58 80 80 80H131.8L125.8 85.8A20.06 20.06 0 0 0 154.2 114.2L194.2 74.2000000000001C197.8 70.6 200 65.6 200 60S197.8 49.4 194.2 45.8L154.2 5.8A20.06 20.06 0 0 0 120 20C120 25.6 122.2 30.6 126 34.2L131.8 40H80C35.8 40 0 75.8 0 120V200C0 211 9 220 20 220M159.92 400C175.72 400 193.52 395 206.1 385.4A72.6 72.6 0 0 0 234.1 338.2C236.3 326.2 237.5 307.8 237.5 295.2V293.4C241.9 291.6 245.9 287 246.9 277C247.5 269.2 244.5000000000001 262.4 242.9000000000001 259.6C241.5000000000001 252.8 237.5000000000001 245.4 230.7000000000001 244C229.9000000000001 240.8 228.9000000000001 237.4 227.7000000000001 234.4C227.5000000000001 234.2 227.3000000000001 233.4 227.3000000000001 233.4C221.9 219.1999999999999 213.7000000000001 206.8 203.5000000000001 197.8C203.5000000000001 196.2 203.5000000000001 194.6 203.7000000000001 193.2C204.7000000000001 182.2 200.7000000000001 174.2 230.3000000000001 161.2C259.6800000000001 148 304.2600000000001 134.2 313.86 113.4C322.86 92.4 319.26 80 319.26 80H214.72A40 40 0 0 1 208.34 88.34L168.34 128.34A40.06 40.06 0 0 1 100 100H80C69.04 100 60 109.04 60 120V149.24C70.22 153.5 80.46 157.5 89.36 161.4C118.94 174.4 115.94 182.4 116.94 193.2L117.14 197.4C106.74 206.4 98.14 219 92.74 233.4000000000001L92.54 233.6L92.34 234.2C90.94 237.2 89.94 240.6 89.14 244.0000000000001C82.34 245.2 78.34 252.6 76.74 259.6C75.14 262.4000000000001 71.94 269.2000000000001 72.74 277C73.74 287.2000000000001 77.94 291.8000000000001 82.54 293.6V295.2000000000001C82.54 308 83.54 326.2000000000001 85.94 338.2000000000001A73 73 0 0 0 113.94 385.4000000000001C126.34 395 144.14 400 159.92 400M279.86 340C291.6600000000001 340 305.06 336.2 314.4600000000001 329C323.66 322 330.46 312 333.86 301C334.6600000000001 298.4000000000001 335.2600000000001 296 335.46 293.4000000000001C337.06 284.4 338.06 270.6 338.06 261.2000000000001V259.8C341.26 258.4 344.26 255 345.06 247.4C345.46 241.6 343.26 236.4 342.0600000000001 234.4C341.06 229.2 338.0600000000001 223.8 332.86 222.6C332.26 220.2000000000001 331.4600000000001 217.6 330.6600000000001 215.4C330.46 215.2000000000001 330.46 214.6000000000001 330.46 214.6000000000001C326.4600000000001 204.0000000000001 320.26 194.6000000000001 312.66 187.8000000000001C312.66 186.6 312.66 185.4000000000001 312.86 184.4C313.66 176.2000000000001 310.66 170.2000000000001 332.86 160.6000000000001C354.8400000000001 150.6000000000001 388.2200000000001 140.4000000000001 395.42 124.8000000000001C402.2200000000001 109.0000000000001 399.42 99.8000000000001 399.42 99.8000000000001H338.64V100A100 100 0 0 1 332.04 121.2C323.04 140.6 304.64 151.6 267.2800000000001 167.2C263.88 168.6 252.08 173.4 251.88 173.6C249.88 174.4 247.8800000000001 175.2 246.2800000000001 176C247.2800000000001 178.8 247.08 181.8 247.4800000000001 185L247.6800000000001 188.2C242.6800000000001 192.4 238.2800000000001 197.8 234.6800000000001 204C239.0800000000001 210.8 242.8800000000001 218.2 245.8800000000001 226.4L246.4400000000001 227.96L246.4000000000001 227.7L246.2800000000001 227L247.4800000000001 230C254.6800000000001 235.2 259.48 243.4 261.8800000000001 252.6C265.4800000000001 260 267.6800000000001 269 266.8800000000001 278.6C265.8800000000001 288.6 262.6800000000001 297 257.48 303C257.0800000000001 313.6 256.2800000000001 325.2 255.0800000000001 334.8C262.6800000000001 338.2 271.6800000000001 340 279.8800000000001 340" : "M20 180C30.2 180 38.7 172.24 39.86 162.32L40 160V100C40 89.8 47.76 81.3 57.68 80.14L60 80H91.8L85.8 85.8A20.06 20.06 0 0 0 112.28 115.88L114.2 114.2L154.2 74.2C157.8 70.6 160 65.6 160 60A20 20 0 0 0 155.88 47.72L154.2 45.8L114.2 5.8A20.06 20.06 0 0 0 80 20C80 24.8 81.6 29.16 84.48 32.58L86 34.2L91.8 39.9999999999999H60A59.92 59.92 0 0 0 0.1 96.46L0 100V160C0 171 9 180 20 180M127.76 320C140.34 320 154.52 315.8 164.52 308C174.12 300.4 181.52 289.8 184.9 277.6C185.7 275 186.3 272.2 186.7 269.6C188.5 260 189.5 245.2 189.5 235V233.6C193.1 232 196.3 228.2 196.9 220.2C197.5 213.8 195.1 208.4 193.7 206C192.5 200.4 189.5 194.4 184.1 193.4Q183.2 189.5 181.7 185.6C181.7 185.4 181.5 184.8 181.5 184.8C177.1 173.2 170.5 163.2 162.52 155.8V152.2C163.32 143.2000000000001 160.12 136.8000000000001 183.7 126.2S242.64 104.4 249.84 87.2C257.24 70 254.24 60.0000000000001 254.24 60.0000000000001H180C180 70.78 175.8 80.9 168.34 88.34L128.34 128.34A40 40 0 0 1 100 140Q95.54 140 91.16 140.9C93.14 144.7 92.8 148.3 93.18 152.4C93.18 153.4 93.38 154.6 93.38 155.8C85.18 162.8 78.38 173 74 184.8V185S73.8 185.2 73.8 185.4C73 187.8 72 190.6 71.4 193.2C65.8 194.2 62.6 200.4 61.4 206C60.2 208.4 57.6 213.8 58.2 220.2C59 228.4 62.4 232.2 66 233.8V235C66 245.2 67 260.2 68.8 269.8C69.2 272.4 69.8 275.2 70.6 277.8C74 289.8 81.4 300.4 91 308C100.96 315.8 115.14 320 127.74 320M220.24 279.2C230.04 279.2 241.24 276 249.02 270C256.62 264.2 262.42 256 265.0200000000001 246.6C265.62 244.6 266.0200000000001 242.4 266.42 240.4C267.8200000000001 233 268.62 221.6 268.62 213.8V212.8C271.4 211.6 274 208.6 274.4000000000001 202.6C274.8 197.6 273 193.6 271.8 191.8C270.8 187.6 268.6 183 264.2 182.2A34 34 0 0 0 262.2 175.6C258.8 166.8 253.6 159 247.22 153.4V150.6C247.82 143.6 245.42 138.8 263.82 130.6C282.4 122.4 310.16 113.8 315.76 100.6C321.56 87.4 319.16 79.8 319.16 79.8H273.2V79.6C272.2 84.4 270.4 89.6 268.2 94.8C261 111.9999999999999 245.82 121.4 214.46 134.8C211.66 136 202.66 139.8 202.46 139.8C198.26 141.6 195.2600000000001 142.8 192.46 144.2C192.86 146.2 192.86 148.2 193.06 150.4C193.06 151.2 193.26 152 193.26 153C191.86 154.2 190.66 155.4 189.46 156.8Q196.06 166.4 200.2600000000001 177.8C200.66 179 200.66 179 200.86 179.8C206.66 184.4 210.46 191.2 212.66 199C215.86 205.6 217.66 213.6 216.8600000000001 222.2C216.2600000000001 230.2 213.66 237.4 209.46 242.8C209.0600000000001 253.4 208.0600000000001 265.4 206.46 273.6C206.2600000000001 274.8 206.0600000000001 276 205.8600000000001 277.4C210.4600000000001 278.6 215.4600000000001 279.2 220.2600000000001 279.2"}
                fillRule="evenodd"
                transform={`scale(0.05, -0.05) translate(${translation}, ${translation})`}
                style={style}
            />
        </SVGIconContainer>
   );
});
InheritedGroup.displayName = `Blueprint6.Icon.InheritedGroup`;
export default InheritedGroup;
