import * as React from 'react';
import PropTypes from 'prop-types';
import Icon40PropValues from '../_defaultIconPropValues.ts';

const Print = (props) => {
    const {
        width = Icon40PropValues.width,
        height = Icon40PropValues.height,
        stroke = Icon40PropValues.stroke,
        fill = Icon40PropValues.fill,
        ...restProps
    } = props;

    return (
        <svg
            width={width}
            height={height}
            {...restProps}
            viewBox="0 0 48 48"
            fill="none"
            xmlns="http://www.w3.org/2000/svg"
        >
            <path
                d="M40 14H34C33.45 14 33 14.45 33 15C33 15.55 33.45 16 34 16H40C40.55 16 41 15.55 41 15C41 14.45 40.55 14 40 14Z"
                fill={fill}
                stroke={stroke}
            />
            <path
                d="M33 38H16C15.45 38 15 38.45 15 39C15 39.55 15.45 40 16 40H33C33.55 40 34 39.55 34 39C34 38.45 33.55 38 33 38Z"
                fill={fill}
                stroke={stroke}
            />
            <path
                d="M33 32H16C15.45 32 15 32.45 15 33C15 33.55 15.45 34 16 34H33C33.55 34 34 33.55 34 33C34 32.45 33.55 32 33 32Z"
                fill={fill}
                stroke={stroke}
            />
            <path
                d="M9 33H5.98C4.34 33 3 31.66 3 30.02V12.98C3 11.34 4.34 10 5.98 10H42.02C43.66 10 45 11.34 45 12.98V30.02C45 31.66 43.66 33 42.02 33H39"
                stroke={stroke}
                strokeWidth="3"
                strokeMiterlimit="10"
            />
            <path
                d="M10.04 20H37.91C38.51 20 38.99 20.48 38.99 21.08V42.02C38.99 43.66 37.66 45 36.01 45H11.94C10.3 45 8.96001 43.67 8.96001 42.02V21.08C8.96001 20.48 9.44001 20 10.04 20Z"
                stroke={stroke}
                strokeWidth="3"
                strokeMiterlimit="10"
            />
            <path
                d="M9.00001 10L8.96001 5.13C8.96001 3.96 9.92001 3 11.09 3H36.86C38.03 3 38.99 3.96 38.99 5.13V10"
                stroke={stroke}
                strokeWidth="3"
                strokeMiterlimit="10"
            />
            <circle cx="32" cy="27" r="2" fill={fill} />
        </svg>
    );
};

Print.propTypes = {
    width: PropTypes.string,
    height: PropTypes.string,
    fill: PropTypes.string,
    stroke: PropTypes.string,
};
export default Print;
