# coding: utf-8

"""
    convertapi

    Convert API lets you effortlessly convert file formats and types.  # noqa: E501

    OpenAPI spec version: v1
    
    Generated by: https://github.com/swagger-api/swagger-codegen.git
"""


import pprint
import re  # noqa: F401

import six


class DocxTable(object):
    """NOTE: This class is auto generated by the swagger code generator program.

    Do not edit the class manually.
    """

    """
    Attributes:
      swagger_types (dict): The key is attribute name
                            and the value is attribute type.
      attribute_map (dict): The key is attribute name
                            and the value is json key in definition.
    """
    swagger_types = {
        'table_id': 'str',
        'path': 'str',
        'width': 'str',
        'width_type': 'str',
        'table_rows': 'list[DocxTableRow]',
        'top_border_type': 'str',
        'top_border_size': 'int',
        'top_border_space': 'int',
        'top_border_color': 'str',
        'bottom_border_type': 'str',
        'bottom_border_size': 'int',
        'bottom_border_space': 'int',
        'bottom_border_color': 'str',
        'left_border_type': 'str',
        'left_border_size': 'int',
        'left_border_space': 'int',
        'left_border_color': 'str',
        'right_border_type': 'str',
        'right_border_size': 'int',
        'right_border_space': 'int',
        'right_border_color': 'str',
        'cell_horizontal_border_type': 'str',
        'cell_horizontal_border_size': 'int',
        'cell_horizontal_border_space': 'int',
        'cell_horizontal_border_color': 'str',
        'cell_vertical_border_type': 'str',
        'cell_vertical_border_size': 'int',
        'cell_vertical_border_space': 'int',
        'cell_vertical_border_color': 'str',
        'start_border_type': 'str',
        'start_border_size': 'int',
        'start_border_space': 'int',
        'start_border_color': 'str',
        'end_border_type': 'str',
        'end_border_size': 'int',
        'end_border_space': 'int',
        'end_border_color': 'str',
        'table_indentation_mode': 'str',
        'table_indentation_width': 'int'
    }

    attribute_map = {
        'table_id': 'TableID',
        'path': 'Path',
        'width': 'Width',
        'width_type': 'WidthType',
        'table_rows': 'TableRows',
        'top_border_type': 'TopBorderType',
        'top_border_size': 'TopBorderSize',
        'top_border_space': 'TopBorderSpace',
        'top_border_color': 'TopBorderColor',
        'bottom_border_type': 'BottomBorderType',
        'bottom_border_size': 'BottomBorderSize',
        'bottom_border_space': 'BottomBorderSpace',
        'bottom_border_color': 'BottomBorderColor',
        'left_border_type': 'LeftBorderType',
        'left_border_size': 'LeftBorderSize',
        'left_border_space': 'LeftBorderSpace',
        'left_border_color': 'LeftBorderColor',
        'right_border_type': 'RightBorderType',
        'right_border_size': 'RightBorderSize',
        'right_border_space': 'RightBorderSpace',
        'right_border_color': 'RightBorderColor',
        'cell_horizontal_border_type': 'CellHorizontalBorderType',
        'cell_horizontal_border_size': 'CellHorizontalBorderSize',
        'cell_horizontal_border_space': 'CellHorizontalBorderSpace',
        'cell_horizontal_border_color': 'CellHorizontalBorderColor',
        'cell_vertical_border_type': 'CellVerticalBorderType',
        'cell_vertical_border_size': 'CellVerticalBorderSize',
        'cell_vertical_border_space': 'CellVerticalBorderSpace',
        'cell_vertical_border_color': 'CellVerticalBorderColor',
        'start_border_type': 'StartBorderType',
        'start_border_size': 'StartBorderSize',
        'start_border_space': 'StartBorderSpace',
        'start_border_color': 'StartBorderColor',
        'end_border_type': 'EndBorderType',
        'end_border_size': 'EndBorderSize',
        'end_border_space': 'EndBorderSpace',
        'end_border_color': 'EndBorderColor',
        'table_indentation_mode': 'TableIndentationMode',
        'table_indentation_width': 'TableIndentationWidth'
    }

    def __init__(self, table_id=None, path=None, width=None, width_type=None, table_rows=None, top_border_type=None, top_border_size=None, top_border_space=None, top_border_color=None, bottom_border_type=None, bottom_border_size=None, bottom_border_space=None, bottom_border_color=None, left_border_type=None, left_border_size=None, left_border_space=None, left_border_color=None, right_border_type=None, right_border_size=None, right_border_space=None, right_border_color=None, cell_horizontal_border_type=None, cell_horizontal_border_size=None, cell_horizontal_border_space=None, cell_horizontal_border_color=None, cell_vertical_border_type=None, cell_vertical_border_size=None, cell_vertical_border_space=None, cell_vertical_border_color=None, start_border_type=None, start_border_size=None, start_border_space=None, start_border_color=None, end_border_type=None, end_border_size=None, end_border_space=None, end_border_color=None, table_indentation_mode=None, table_indentation_width=None):  # noqa: E501
        """DocxTable - a model defined in Swagger"""  # noqa: E501

        self._table_id = None
        self._path = None
        self._width = None
        self._width_type = None
        self._table_rows = None
        self._top_border_type = None
        self._top_border_size = None
        self._top_border_space = None
        self._top_border_color = None
        self._bottom_border_type = None
        self._bottom_border_size = None
        self._bottom_border_space = None
        self._bottom_border_color = None
        self._left_border_type = None
        self._left_border_size = None
        self._left_border_space = None
        self._left_border_color = None
        self._right_border_type = None
        self._right_border_size = None
        self._right_border_space = None
        self._right_border_color = None
        self._cell_horizontal_border_type = None
        self._cell_horizontal_border_size = None
        self._cell_horizontal_border_space = None
        self._cell_horizontal_border_color = None
        self._cell_vertical_border_type = None
        self._cell_vertical_border_size = None
        self._cell_vertical_border_space = None
        self._cell_vertical_border_color = None
        self._start_border_type = None
        self._start_border_size = None
        self._start_border_space = None
        self._start_border_color = None
        self._end_border_type = None
        self._end_border_size = None
        self._end_border_space = None
        self._end_border_color = None
        self._table_indentation_mode = None
        self._table_indentation_width = None
        self.discriminator = None

        if table_id is not None:
            self.table_id = table_id
        if path is not None:
            self.path = path
        if width is not None:
            self.width = width
        if width_type is not None:
            self.width_type = width_type
        if table_rows is not None:
            self.table_rows = table_rows
        if top_border_type is not None:
            self.top_border_type = top_border_type
        if top_border_size is not None:
            self.top_border_size = top_border_size
        if top_border_space is not None:
            self.top_border_space = top_border_space
        if top_border_color is not None:
            self.top_border_color = top_border_color
        if bottom_border_type is not None:
            self.bottom_border_type = bottom_border_type
        if bottom_border_size is not None:
            self.bottom_border_size = bottom_border_size
        if bottom_border_space is not None:
            self.bottom_border_space = bottom_border_space
        if bottom_border_color is not None:
            self.bottom_border_color = bottom_border_color
        if left_border_type is not None:
            self.left_border_type = left_border_type
        if left_border_size is not None:
            self.left_border_size = left_border_size
        if left_border_space is not None:
            self.left_border_space = left_border_space
        if left_border_color is not None:
            self.left_border_color = left_border_color
        if right_border_type is not None:
            self.right_border_type = right_border_type
        if right_border_size is not None:
            self.right_border_size = right_border_size
        if right_border_space is not None:
            self.right_border_space = right_border_space
        if right_border_color is not None:
            self.right_border_color = right_border_color
        if cell_horizontal_border_type is not None:
            self.cell_horizontal_border_type = cell_horizontal_border_type
        if cell_horizontal_border_size is not None:
            self.cell_horizontal_border_size = cell_horizontal_border_size
        if cell_horizontal_border_space is not None:
            self.cell_horizontal_border_space = cell_horizontal_border_space
        if cell_horizontal_border_color is not None:
            self.cell_horizontal_border_color = cell_horizontal_border_color
        if cell_vertical_border_type is not None:
            self.cell_vertical_border_type = cell_vertical_border_type
        if cell_vertical_border_size is not None:
            self.cell_vertical_border_size = cell_vertical_border_size
        if cell_vertical_border_space is not None:
            self.cell_vertical_border_space = cell_vertical_border_space
        if cell_vertical_border_color is not None:
            self.cell_vertical_border_color = cell_vertical_border_color
        if start_border_type is not None:
            self.start_border_type = start_border_type
        if start_border_size is not None:
            self.start_border_size = start_border_size
        if start_border_space is not None:
            self.start_border_space = start_border_space
        if start_border_color is not None:
            self.start_border_color = start_border_color
        if end_border_type is not None:
            self.end_border_type = end_border_type
        if end_border_size is not None:
            self.end_border_size = end_border_size
        if end_border_space is not None:
            self.end_border_space = end_border_space
        if end_border_color is not None:
            self.end_border_color = end_border_color
        if table_indentation_mode is not None:
            self.table_indentation_mode = table_indentation_mode
        if table_indentation_width is not None:
            self.table_indentation_width = table_indentation_width

    @property
    def table_id(self):
        """Gets the table_id of this DocxTable.  # noqa: E501

        The ID of the table; leave blank for new tables  # noqa: E501

        :return: The table_id of this DocxTable.  # noqa: E501
        :rtype: str
        """
        return self._table_id

    @table_id.setter
    def table_id(self, table_id):
        """Sets the table_id of this DocxTable.

        The ID of the table; leave blank for new tables  # noqa: E501

        :param table_id: The table_id of this DocxTable.  # noqa: E501
        :type: str
        """

        self._table_id = table_id

    @property
    def path(self):
        """Gets the path of this DocxTable.  # noqa: E501

        The Path of the location of this table object; leave blank for new tables  # noqa: E501

        :return: The path of this DocxTable.  # noqa: E501
        :rtype: str
        """
        return self._path

    @path.setter
    def path(self, path):
        """Sets the path of this DocxTable.

        The Path of the location of this table object; leave blank for new tables  # noqa: E501

        :param path: The path of this DocxTable.  # noqa: E501
        :type: str
        """

        self._path = path

    @property
    def width(self):
        """Gets the width of this DocxTable.  # noqa: E501

        The Width of the table, or 0 if not specified  # noqa: E501

        :return: The width of this DocxTable.  # noqa: E501
        :rtype: str
        """
        return self._width

    @width.setter
    def width(self, width):
        """Sets the width of this DocxTable.

        The Width of the table, or 0 if not specified  # noqa: E501

        :param width: The width of this DocxTable.  # noqa: E501
        :type: str
        """

        self._width = width

    @property
    def width_type(self):
        """Gets the width_type of this DocxTable.  # noqa: E501

        The Width configuration type of the table  # noqa: E501

        :return: The width_type of this DocxTable.  # noqa: E501
        :rtype: str
        """
        return self._width_type

    @width_type.setter
    def width_type(self, width_type):
        """Sets the width_type of this DocxTable.

        The Width configuration type of the table  # noqa: E501

        :param width_type: The width_type of this DocxTable.  # noqa: E501
        :type: str
        """

        self._width_type = width_type

    @property
    def table_rows(self):
        """Gets the table_rows of this DocxTable.  # noqa: E501

        Rows in the table; this is where the contents is located  # noqa: E501

        :return: The table_rows of this DocxTable.  # noqa: E501
        :rtype: list[DocxTableRow]
        """
        return self._table_rows

    @table_rows.setter
    def table_rows(self, table_rows):
        """Sets the table_rows of this DocxTable.

        Rows in the table; this is where the contents is located  # noqa: E501

        :param table_rows: The table_rows of this DocxTable.  # noqa: E501
        :type: list[DocxTableRow]
        """

        self._table_rows = table_rows

    @property
    def top_border_type(self):
        """Gets the top_border_type of this DocxTable.  # noqa: E501

        Type for the top border - can be a Single, DashDotStroked, Dashed, DashSmallGap, DotDash, DotDotDash, Dotted, Double, DoubleWave, Inset, Nil, None, Outset, Thick, ThickThinLargeGap, ThickThinMediumGap, ThickThinSmallGap, ThinThickLargeGap, ThinThickMediumGap, ThinThickSmallGap, ThinThickThinLargeGap, ThinThickThinMediumGap, ThinThickThinSmallGap, ThreeDEmboss, ThreeDEngrave, Triple, Wave  # noqa: E501

        :return: The top_border_type of this DocxTable.  # noqa: E501
        :rtype: str
        """
        return self._top_border_type

    @top_border_type.setter
    def top_border_type(self, top_border_type):
        """Sets the top_border_type of this DocxTable.

        Type for the top border - can be a Single, DashDotStroked, Dashed, DashSmallGap, DotDash, DotDotDash, Dotted, Double, DoubleWave, Inset, Nil, None, Outset, Thick, ThickThinLargeGap, ThickThinMediumGap, ThickThinSmallGap, ThinThickLargeGap, ThinThickMediumGap, ThinThickSmallGap, ThinThickThinLargeGap, ThinThickThinMediumGap, ThinThickThinSmallGap, ThreeDEmboss, ThreeDEngrave, Triple, Wave  # noqa: E501

        :param top_border_type: The top_border_type of this DocxTable.  # noqa: E501
        :type: str
        """

        self._top_border_type = top_border_type

    @property
    def top_border_size(self):
        """Gets the top_border_size of this DocxTable.  # noqa: E501

        Width of the border in points (1/72nd of an inch)  # noqa: E501

        :return: The top_border_size of this DocxTable.  # noqa: E501
        :rtype: int
        """
        return self._top_border_size

    @top_border_size.setter
    def top_border_size(self, top_border_size):
        """Sets the top_border_size of this DocxTable.

        Width of the border in points (1/72nd of an inch)  # noqa: E501

        :param top_border_size: The top_border_size of this DocxTable.  # noqa: E501
        :type: int
        """

        self._top_border_size = top_border_size

    @property
    def top_border_space(self):
        """Gets the top_border_space of this DocxTable.  # noqa: E501

        Spacing around the border in points (1/72nd of an inch)  # noqa: E501

        :return: The top_border_space of this DocxTable.  # noqa: E501
        :rtype: int
        """
        return self._top_border_space

    @top_border_space.setter
    def top_border_space(self, top_border_space):
        """Sets the top_border_space of this DocxTable.

        Spacing around the border in points (1/72nd of an inch)  # noqa: E501

        :param top_border_space: The top_border_space of this DocxTable.  # noqa: E501
        :type: int
        """

        self._top_border_space = top_border_space

    @property
    def top_border_color(self):
        """Gets the top_border_color of this DocxTable.  # noqa: E501

        HTML-style color hex value (do not include a #)  # noqa: E501

        :return: The top_border_color of this DocxTable.  # noqa: E501
        :rtype: str
        """
        return self._top_border_color

    @top_border_color.setter
    def top_border_color(self, top_border_color):
        """Sets the top_border_color of this DocxTable.

        HTML-style color hex value (do not include a #)  # noqa: E501

        :param top_border_color: The top_border_color of this DocxTable.  # noqa: E501
        :type: str
        """

        self._top_border_color = top_border_color

    @property
    def bottom_border_type(self):
        """Gets the bottom_border_type of this DocxTable.  # noqa: E501

        Type for the bottom border - can be a Single, DashDotStroked, Dashed, DashSmallGap, DotDash, DotDotDash, Dotted, Double, DoubleWave, Inset, Nil, None, Outset, Thick, ThickThinLargeGap, ThickThinMediumGap, ThickThinSmallGap, ThinThickLargeGap, ThinThickMediumGap, ThinThickSmallGap, ThinThickThinLargeGap, ThinThickThinMediumGap, ThinThickThinSmallGap, ThreeDEmboss, ThreeDEngrave, Triple, Wave  # noqa: E501

        :return: The bottom_border_type of this DocxTable.  # noqa: E501
        :rtype: str
        """
        return self._bottom_border_type

    @bottom_border_type.setter
    def bottom_border_type(self, bottom_border_type):
        """Sets the bottom_border_type of this DocxTable.

        Type for the bottom border - can be a Single, DashDotStroked, Dashed, DashSmallGap, DotDash, DotDotDash, Dotted, Double, DoubleWave, Inset, Nil, None, Outset, Thick, ThickThinLargeGap, ThickThinMediumGap, ThickThinSmallGap, ThinThickLargeGap, ThinThickMediumGap, ThinThickSmallGap, ThinThickThinLargeGap, ThinThickThinMediumGap, ThinThickThinSmallGap, ThreeDEmboss, ThreeDEngrave, Triple, Wave  # noqa: E501

        :param bottom_border_type: The bottom_border_type of this DocxTable.  # noqa: E501
        :type: str
        """

        self._bottom_border_type = bottom_border_type

    @property
    def bottom_border_size(self):
        """Gets the bottom_border_size of this DocxTable.  # noqa: E501

        Width of the border in points (1/72nd of an inch)  # noqa: E501

        :return: The bottom_border_size of this DocxTable.  # noqa: E501
        :rtype: int
        """
        return self._bottom_border_size

    @bottom_border_size.setter
    def bottom_border_size(self, bottom_border_size):
        """Sets the bottom_border_size of this DocxTable.

        Width of the border in points (1/72nd of an inch)  # noqa: E501

        :param bottom_border_size: The bottom_border_size of this DocxTable.  # noqa: E501
        :type: int
        """

        self._bottom_border_size = bottom_border_size

    @property
    def bottom_border_space(self):
        """Gets the bottom_border_space of this DocxTable.  # noqa: E501

        Spacing around the border in points (1/72nd of an inch)  # noqa: E501

        :return: The bottom_border_space of this DocxTable.  # noqa: E501
        :rtype: int
        """
        return self._bottom_border_space

    @bottom_border_space.setter
    def bottom_border_space(self, bottom_border_space):
        """Sets the bottom_border_space of this DocxTable.

        Spacing around the border in points (1/72nd of an inch)  # noqa: E501

        :param bottom_border_space: The bottom_border_space of this DocxTable.  # noqa: E501
        :type: int
        """

        self._bottom_border_space = bottom_border_space

    @property
    def bottom_border_color(self):
        """Gets the bottom_border_color of this DocxTable.  # noqa: E501

        HTML-style color hex value (do not include a #)  # noqa: E501

        :return: The bottom_border_color of this DocxTable.  # noqa: E501
        :rtype: str
        """
        return self._bottom_border_color

    @bottom_border_color.setter
    def bottom_border_color(self, bottom_border_color):
        """Sets the bottom_border_color of this DocxTable.

        HTML-style color hex value (do not include a #)  # noqa: E501

        :param bottom_border_color: The bottom_border_color of this DocxTable.  # noqa: E501
        :type: str
        """

        self._bottom_border_color = bottom_border_color

    @property
    def left_border_type(self):
        """Gets the left_border_type of this DocxTable.  # noqa: E501

        Type for the left border - can be a Single, DashDotStroked, Dashed, DashSmallGap, DotDash, DotDotDash, Dotted, Double, DoubleWave, Inset, Nil, None, Outset, Thick, ThickThinLargeGap, ThickThinMediumGap, ThickThinSmallGap, ThinThickLargeGap, ThinThickMediumGap, ThinThickSmallGap, ThinThickThinLargeGap, ThinThickThinMediumGap, ThinThickThinSmallGap, ThreeDEmboss, ThreeDEngrave, Triple, Wave  # noqa: E501

        :return: The left_border_type of this DocxTable.  # noqa: E501
        :rtype: str
        """
        return self._left_border_type

    @left_border_type.setter
    def left_border_type(self, left_border_type):
        """Sets the left_border_type of this DocxTable.

        Type for the left border - can be a Single, DashDotStroked, Dashed, DashSmallGap, DotDash, DotDotDash, Dotted, Double, DoubleWave, Inset, Nil, None, Outset, Thick, ThickThinLargeGap, ThickThinMediumGap, ThickThinSmallGap, ThinThickLargeGap, ThinThickMediumGap, ThinThickSmallGap, ThinThickThinLargeGap, ThinThickThinMediumGap, ThinThickThinSmallGap, ThreeDEmboss, ThreeDEngrave, Triple, Wave  # noqa: E501

        :param left_border_type: The left_border_type of this DocxTable.  # noqa: E501
        :type: str
        """

        self._left_border_type = left_border_type

    @property
    def left_border_size(self):
        """Gets the left_border_size of this DocxTable.  # noqa: E501

        Width of the border in points (1/72nd of an inch)  # noqa: E501

        :return: The left_border_size of this DocxTable.  # noqa: E501
        :rtype: int
        """
        return self._left_border_size

    @left_border_size.setter
    def left_border_size(self, left_border_size):
        """Sets the left_border_size of this DocxTable.

        Width of the border in points (1/72nd of an inch)  # noqa: E501

        :param left_border_size: The left_border_size of this DocxTable.  # noqa: E501
        :type: int
        """

        self._left_border_size = left_border_size

    @property
    def left_border_space(self):
        """Gets the left_border_space of this DocxTable.  # noqa: E501

        Spacing around the border in points (1/72nd of an inch)  # noqa: E501

        :return: The left_border_space of this DocxTable.  # noqa: E501
        :rtype: int
        """
        return self._left_border_space

    @left_border_space.setter
    def left_border_space(self, left_border_space):
        """Sets the left_border_space of this DocxTable.

        Spacing around the border in points (1/72nd of an inch)  # noqa: E501

        :param left_border_space: The left_border_space of this DocxTable.  # noqa: E501
        :type: int
        """

        self._left_border_space = left_border_space

    @property
    def left_border_color(self):
        """Gets the left_border_color of this DocxTable.  # noqa: E501

        HTML-style color hex value (do not include a #)  # noqa: E501

        :return: The left_border_color of this DocxTable.  # noqa: E501
        :rtype: str
        """
        return self._left_border_color

    @left_border_color.setter
    def left_border_color(self, left_border_color):
        """Sets the left_border_color of this DocxTable.

        HTML-style color hex value (do not include a #)  # noqa: E501

        :param left_border_color: The left_border_color of this DocxTable.  # noqa: E501
        :type: str
        """

        self._left_border_color = left_border_color

    @property
    def right_border_type(self):
        """Gets the right_border_type of this DocxTable.  # noqa: E501

        Type for the right border - can be a Single, DashDotStroked, Dashed, DashSmallGap, DotDash, DotDotDash, Dotted, Double, DoubleWave, Inset, Nil, None, Outset, Thick, ThickThinLargeGap, ThickThinMediumGap, ThickThinSmallGap, ThinThickLargeGap, ThinThickMediumGap, ThinThickSmallGap, ThinThickThinLargeGap, ThinThickThinMediumGap, ThinThickThinSmallGap, ThreeDEmboss, ThreeDEngrave, Triple, Wave  # noqa: E501

        :return: The right_border_type of this DocxTable.  # noqa: E501
        :rtype: str
        """
        return self._right_border_type

    @right_border_type.setter
    def right_border_type(self, right_border_type):
        """Sets the right_border_type of this DocxTable.

        Type for the right border - can be a Single, DashDotStroked, Dashed, DashSmallGap, DotDash, DotDotDash, Dotted, Double, DoubleWave, Inset, Nil, None, Outset, Thick, ThickThinLargeGap, ThickThinMediumGap, ThickThinSmallGap, ThinThickLargeGap, ThinThickMediumGap, ThinThickSmallGap, ThinThickThinLargeGap, ThinThickThinMediumGap, ThinThickThinSmallGap, ThreeDEmboss, ThreeDEngrave, Triple, Wave  # noqa: E501

        :param right_border_type: The right_border_type of this DocxTable.  # noqa: E501
        :type: str
        """

        self._right_border_type = right_border_type

    @property
    def right_border_size(self):
        """Gets the right_border_size of this DocxTable.  # noqa: E501

        Width of the border in points (1/72nd of an inch)  # noqa: E501

        :return: The right_border_size of this DocxTable.  # noqa: E501
        :rtype: int
        """
        return self._right_border_size

    @right_border_size.setter
    def right_border_size(self, right_border_size):
        """Sets the right_border_size of this DocxTable.

        Width of the border in points (1/72nd of an inch)  # noqa: E501

        :param right_border_size: The right_border_size of this DocxTable.  # noqa: E501
        :type: int
        """

        self._right_border_size = right_border_size

    @property
    def right_border_space(self):
        """Gets the right_border_space of this DocxTable.  # noqa: E501

        Spacing around the border in points (1/72nd of an inch)  # noqa: E501

        :return: The right_border_space of this DocxTable.  # noqa: E501
        :rtype: int
        """
        return self._right_border_space

    @right_border_space.setter
    def right_border_space(self, right_border_space):
        """Sets the right_border_space of this DocxTable.

        Spacing around the border in points (1/72nd of an inch)  # noqa: E501

        :param right_border_space: The right_border_space of this DocxTable.  # noqa: E501
        :type: int
        """

        self._right_border_space = right_border_space

    @property
    def right_border_color(self):
        """Gets the right_border_color of this DocxTable.  # noqa: E501

        HTML-style color hex value (do not include a #)  # noqa: E501

        :return: The right_border_color of this DocxTable.  # noqa: E501
        :rtype: str
        """
        return self._right_border_color

    @right_border_color.setter
    def right_border_color(self, right_border_color):
        """Sets the right_border_color of this DocxTable.

        HTML-style color hex value (do not include a #)  # noqa: E501

        :param right_border_color: The right_border_color of this DocxTable.  # noqa: E501
        :type: str
        """

        self._right_border_color = right_border_color

    @property
    def cell_horizontal_border_type(self):
        """Gets the cell_horizontal_border_type of this DocxTable.  # noqa: E501

        Type for the cell horizontal border - can be a Single, DashDotStroked, Dashed, DashSmallGap, DotDash, DotDotDash, Dotted, Double, DoubleWave, Inset, Nil, None, Outset, Thick, ThickThinLargeGap, ThickThinMediumGap, ThickThinSmallGap, ThinThickLargeGap, ThinThickMediumGap, ThinThickSmallGap, ThinThickThinLargeGap, ThinThickThinMediumGap, ThinThickThinSmallGap, ThreeDEmboss, ThreeDEngrave, Triple, Wave  # noqa: E501

        :return: The cell_horizontal_border_type of this DocxTable.  # noqa: E501
        :rtype: str
        """
        return self._cell_horizontal_border_type

    @cell_horizontal_border_type.setter
    def cell_horizontal_border_type(self, cell_horizontal_border_type):
        """Sets the cell_horizontal_border_type of this DocxTable.

        Type for the cell horizontal border - can be a Single, DashDotStroked, Dashed, DashSmallGap, DotDash, DotDotDash, Dotted, Double, DoubleWave, Inset, Nil, None, Outset, Thick, ThickThinLargeGap, ThickThinMediumGap, ThickThinSmallGap, ThinThickLargeGap, ThinThickMediumGap, ThinThickSmallGap, ThinThickThinLargeGap, ThinThickThinMediumGap, ThinThickThinSmallGap, ThreeDEmboss, ThreeDEngrave, Triple, Wave  # noqa: E501

        :param cell_horizontal_border_type: The cell_horizontal_border_type of this DocxTable.  # noqa: E501
        :type: str
        """

        self._cell_horizontal_border_type = cell_horizontal_border_type

    @property
    def cell_horizontal_border_size(self):
        """Gets the cell_horizontal_border_size of this DocxTable.  # noqa: E501

        Width of the border in points (1/72nd of an inch)  # noqa: E501

        :return: The cell_horizontal_border_size of this DocxTable.  # noqa: E501
        :rtype: int
        """
        return self._cell_horizontal_border_size

    @cell_horizontal_border_size.setter
    def cell_horizontal_border_size(self, cell_horizontal_border_size):
        """Sets the cell_horizontal_border_size of this DocxTable.

        Width of the border in points (1/72nd of an inch)  # noqa: E501

        :param cell_horizontal_border_size: The cell_horizontal_border_size of this DocxTable.  # noqa: E501
        :type: int
        """

        self._cell_horizontal_border_size = cell_horizontal_border_size

    @property
    def cell_horizontal_border_space(self):
        """Gets the cell_horizontal_border_space of this DocxTable.  # noqa: E501

        Spacing around the border in points (1/72nd of an inch)  # noqa: E501

        :return: The cell_horizontal_border_space of this DocxTable.  # noqa: E501
        :rtype: int
        """
        return self._cell_horizontal_border_space

    @cell_horizontal_border_space.setter
    def cell_horizontal_border_space(self, cell_horizontal_border_space):
        """Sets the cell_horizontal_border_space of this DocxTable.

        Spacing around the border in points (1/72nd of an inch)  # noqa: E501

        :param cell_horizontal_border_space: The cell_horizontal_border_space of this DocxTable.  # noqa: E501
        :type: int
        """

        self._cell_horizontal_border_space = cell_horizontal_border_space

    @property
    def cell_horizontal_border_color(self):
        """Gets the cell_horizontal_border_color of this DocxTable.  # noqa: E501

        HTML-style color hex value (do not include a #)  # noqa: E501

        :return: The cell_horizontal_border_color of this DocxTable.  # noqa: E501
        :rtype: str
        """
        return self._cell_horizontal_border_color

    @cell_horizontal_border_color.setter
    def cell_horizontal_border_color(self, cell_horizontal_border_color):
        """Sets the cell_horizontal_border_color of this DocxTable.

        HTML-style color hex value (do not include a #)  # noqa: E501

        :param cell_horizontal_border_color: The cell_horizontal_border_color of this DocxTable.  # noqa: E501
        :type: str
        """

        self._cell_horizontal_border_color = cell_horizontal_border_color

    @property
    def cell_vertical_border_type(self):
        """Gets the cell_vertical_border_type of this DocxTable.  # noqa: E501

        Type for the cell vertical border - can be a Single, DashDotStroked, Dashed, DashSmallGap, DotDash, DotDotDash, Dotted, Double, DoubleWave, Inset, Nil, None, Outset, Thick, ThickThinLargeGap, ThickThinMediumGap, ThickThinSmallGap, ThinThickLargeGap, ThinThickMediumGap, ThinThickSmallGap, ThinThickThinLargeGap, ThinThickThinMediumGap, ThinThickThinSmallGap, ThreeDEmboss, ThreeDEngrave, Triple, Wave  # noqa: E501

        :return: The cell_vertical_border_type of this DocxTable.  # noqa: E501
        :rtype: str
        """
        return self._cell_vertical_border_type

    @cell_vertical_border_type.setter
    def cell_vertical_border_type(self, cell_vertical_border_type):
        """Sets the cell_vertical_border_type of this DocxTable.

        Type for the cell vertical border - can be a Single, DashDotStroked, Dashed, DashSmallGap, DotDash, DotDotDash, Dotted, Double, DoubleWave, Inset, Nil, None, Outset, Thick, ThickThinLargeGap, ThickThinMediumGap, ThickThinSmallGap, ThinThickLargeGap, ThinThickMediumGap, ThinThickSmallGap, ThinThickThinLargeGap, ThinThickThinMediumGap, ThinThickThinSmallGap, ThreeDEmboss, ThreeDEngrave, Triple, Wave  # noqa: E501

        :param cell_vertical_border_type: The cell_vertical_border_type of this DocxTable.  # noqa: E501
        :type: str
        """

        self._cell_vertical_border_type = cell_vertical_border_type

    @property
    def cell_vertical_border_size(self):
        """Gets the cell_vertical_border_size of this DocxTable.  # noqa: E501

        Width of the border in points (1/72nd of an inch)  # noqa: E501

        :return: The cell_vertical_border_size of this DocxTable.  # noqa: E501
        :rtype: int
        """
        return self._cell_vertical_border_size

    @cell_vertical_border_size.setter
    def cell_vertical_border_size(self, cell_vertical_border_size):
        """Sets the cell_vertical_border_size of this DocxTable.

        Width of the border in points (1/72nd of an inch)  # noqa: E501

        :param cell_vertical_border_size: The cell_vertical_border_size of this DocxTable.  # noqa: E501
        :type: int
        """

        self._cell_vertical_border_size = cell_vertical_border_size

    @property
    def cell_vertical_border_space(self):
        """Gets the cell_vertical_border_space of this DocxTable.  # noqa: E501

        Spacing around the border in points (1/72nd of an inch)  # noqa: E501

        :return: The cell_vertical_border_space of this DocxTable.  # noqa: E501
        :rtype: int
        """
        return self._cell_vertical_border_space

    @cell_vertical_border_space.setter
    def cell_vertical_border_space(self, cell_vertical_border_space):
        """Sets the cell_vertical_border_space of this DocxTable.

        Spacing around the border in points (1/72nd of an inch)  # noqa: E501

        :param cell_vertical_border_space: The cell_vertical_border_space of this DocxTable.  # noqa: E501
        :type: int
        """

        self._cell_vertical_border_space = cell_vertical_border_space

    @property
    def cell_vertical_border_color(self):
        """Gets the cell_vertical_border_color of this DocxTable.  # noqa: E501

        HTML-style color hex value (do not include a #)  # noqa: E501

        :return: The cell_vertical_border_color of this DocxTable.  # noqa: E501
        :rtype: str
        """
        return self._cell_vertical_border_color

    @cell_vertical_border_color.setter
    def cell_vertical_border_color(self, cell_vertical_border_color):
        """Sets the cell_vertical_border_color of this DocxTable.

        HTML-style color hex value (do not include a #)  # noqa: E501

        :param cell_vertical_border_color: The cell_vertical_border_color of this DocxTable.  # noqa: E501
        :type: str
        """

        self._cell_vertical_border_color = cell_vertical_border_color

    @property
    def start_border_type(self):
        """Gets the start_border_type of this DocxTable.  # noqa: E501

        Type for the start border - can be a Single, DashDotStroked, Dashed, DashSmallGap, DotDash, DotDotDash, Dotted, Double, DoubleWave, Inset, Nil, None, Outset, Thick, ThickThinLargeGap, ThickThinMediumGap, ThickThinSmallGap, ThinThickLargeGap, ThinThickMediumGap, ThinThickSmallGap, ThinThickThinLargeGap, ThinThickThinMediumGap, ThinThickThinSmallGap, ThreeDEmboss, ThreeDEngrave, Triple, Wave  # noqa: E501

        :return: The start_border_type of this DocxTable.  # noqa: E501
        :rtype: str
        """
        return self._start_border_type

    @start_border_type.setter
    def start_border_type(self, start_border_type):
        """Sets the start_border_type of this DocxTable.

        Type for the start border - can be a Single, DashDotStroked, Dashed, DashSmallGap, DotDash, DotDotDash, Dotted, Double, DoubleWave, Inset, Nil, None, Outset, Thick, ThickThinLargeGap, ThickThinMediumGap, ThickThinSmallGap, ThinThickLargeGap, ThinThickMediumGap, ThinThickSmallGap, ThinThickThinLargeGap, ThinThickThinMediumGap, ThinThickThinSmallGap, ThreeDEmboss, ThreeDEngrave, Triple, Wave  # noqa: E501

        :param start_border_type: The start_border_type of this DocxTable.  # noqa: E501
        :type: str
        """

        self._start_border_type = start_border_type

    @property
    def start_border_size(self):
        """Gets the start_border_size of this DocxTable.  # noqa: E501

        Width of the border in points (1/72nd of an inch)  # noqa: E501

        :return: The start_border_size of this DocxTable.  # noqa: E501
        :rtype: int
        """
        return self._start_border_size

    @start_border_size.setter
    def start_border_size(self, start_border_size):
        """Sets the start_border_size of this DocxTable.

        Width of the border in points (1/72nd of an inch)  # noqa: E501

        :param start_border_size: The start_border_size of this DocxTable.  # noqa: E501
        :type: int
        """

        self._start_border_size = start_border_size

    @property
    def start_border_space(self):
        """Gets the start_border_space of this DocxTable.  # noqa: E501

        Spacing around the border in points (1/72nd of an inch)  # noqa: E501

        :return: The start_border_space of this DocxTable.  # noqa: E501
        :rtype: int
        """
        return self._start_border_space

    @start_border_space.setter
    def start_border_space(self, start_border_space):
        """Sets the start_border_space of this DocxTable.

        Spacing around the border in points (1/72nd of an inch)  # noqa: E501

        :param start_border_space: The start_border_space of this DocxTable.  # noqa: E501
        :type: int
        """

        self._start_border_space = start_border_space

    @property
    def start_border_color(self):
        """Gets the start_border_color of this DocxTable.  # noqa: E501

        HTML-style color hex value (do not include a #)  # noqa: E501

        :return: The start_border_color of this DocxTable.  # noqa: E501
        :rtype: str
        """
        return self._start_border_color

    @start_border_color.setter
    def start_border_color(self, start_border_color):
        """Sets the start_border_color of this DocxTable.

        HTML-style color hex value (do not include a #)  # noqa: E501

        :param start_border_color: The start_border_color of this DocxTable.  # noqa: E501
        :type: str
        """

        self._start_border_color = start_border_color

    @property
    def end_border_type(self):
        """Gets the end_border_type of this DocxTable.  # noqa: E501

        Type for the end border - can be a Single, DashDotStroked, Dashed, DashSmallGap, DotDash, DotDotDash, Dotted, Double, DoubleWave, Inset, Nil, None, Outset, Thick, ThickThinLargeGap, ThickThinMediumGap, ThickThinSmallGap, ThinThickLargeGap, ThinThickMediumGap, ThinThickSmallGap, ThinThickThinLargeGap, ThinThickThinMediumGap, ThinThickThinSmallGap, ThreeDEmboss, ThreeDEngrave, Triple, Wave  # noqa: E501

        :return: The end_border_type of this DocxTable.  # noqa: E501
        :rtype: str
        """
        return self._end_border_type

    @end_border_type.setter
    def end_border_type(self, end_border_type):
        """Sets the end_border_type of this DocxTable.

        Type for the end border - can be a Single, DashDotStroked, Dashed, DashSmallGap, DotDash, DotDotDash, Dotted, Double, DoubleWave, Inset, Nil, None, Outset, Thick, ThickThinLargeGap, ThickThinMediumGap, ThickThinSmallGap, ThinThickLargeGap, ThinThickMediumGap, ThinThickSmallGap, ThinThickThinLargeGap, ThinThickThinMediumGap, ThinThickThinSmallGap, ThreeDEmboss, ThreeDEngrave, Triple, Wave  # noqa: E501

        :param end_border_type: The end_border_type of this DocxTable.  # noqa: E501
        :type: str
        """

        self._end_border_type = end_border_type

    @property
    def end_border_size(self):
        """Gets the end_border_size of this DocxTable.  # noqa: E501

        Width of the border in points (1/72nd of an inch)  # noqa: E501

        :return: The end_border_size of this DocxTable.  # noqa: E501
        :rtype: int
        """
        return self._end_border_size

    @end_border_size.setter
    def end_border_size(self, end_border_size):
        """Sets the end_border_size of this DocxTable.

        Width of the border in points (1/72nd of an inch)  # noqa: E501

        :param end_border_size: The end_border_size of this DocxTable.  # noqa: E501
        :type: int
        """

        self._end_border_size = end_border_size

    @property
    def end_border_space(self):
        """Gets the end_border_space of this DocxTable.  # noqa: E501

        Spacing around the border in points (1/72nd of an inch)  # noqa: E501

        :return: The end_border_space of this DocxTable.  # noqa: E501
        :rtype: int
        """
        return self._end_border_space

    @end_border_space.setter
    def end_border_space(self, end_border_space):
        """Sets the end_border_space of this DocxTable.

        Spacing around the border in points (1/72nd of an inch)  # noqa: E501

        :param end_border_space: The end_border_space of this DocxTable.  # noqa: E501
        :type: int
        """

        self._end_border_space = end_border_space

    @property
    def end_border_color(self):
        """Gets the end_border_color of this DocxTable.  # noqa: E501

        HTML-style color hex value (do not include a #)  # noqa: E501

        :return: The end_border_color of this DocxTable.  # noqa: E501
        :rtype: str
        """
        return self._end_border_color

    @end_border_color.setter
    def end_border_color(self, end_border_color):
        """Sets the end_border_color of this DocxTable.

        HTML-style color hex value (do not include a #)  # noqa: E501

        :param end_border_color: The end_border_color of this DocxTable.  # noqa: E501
        :type: str
        """

        self._end_border_color = end_border_color

    @property
    def table_indentation_mode(self):
        """Gets the table_indentation_mode of this DocxTable.  # noqa: E501

        Table indentation type  # noqa: E501

        :return: The table_indentation_mode of this DocxTable.  # noqa: E501
        :rtype: str
        """
        return self._table_indentation_mode

    @table_indentation_mode.setter
    def table_indentation_mode(self, table_indentation_mode):
        """Sets the table_indentation_mode of this DocxTable.

        Table indentation type  # noqa: E501

        :param table_indentation_mode: The table_indentation_mode of this DocxTable.  # noqa: E501
        :type: str
        """

        self._table_indentation_mode = table_indentation_mode

    @property
    def table_indentation_width(self):
        """Gets the table_indentation_width of this DocxTable.  # noqa: E501

        Table indentation width  # noqa: E501

        :return: The table_indentation_width of this DocxTable.  # noqa: E501
        :rtype: int
        """
        return self._table_indentation_width

    @table_indentation_width.setter
    def table_indentation_width(self, table_indentation_width):
        """Sets the table_indentation_width of this DocxTable.

        Table indentation width  # noqa: E501

        :param table_indentation_width: The table_indentation_width of this DocxTable.  # noqa: E501
        :type: int
        """

        self._table_indentation_width = table_indentation_width

    def to_dict(self):
        """Returns the model properties as a dict"""
        result = {}

        for attr, _ in six.iteritems(self.swagger_types):
            value = getattr(self, attr)
            if isinstance(value, list):
                result[attr] = list(map(
                    lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
                    value
                ))
            elif hasattr(value, "to_dict"):
                result[attr] = value.to_dict()
            elif isinstance(value, dict):
                result[attr] = dict(map(
                    lambda item: (item[0], item[1].to_dict())
                    if hasattr(item[1], "to_dict") else item,
                    value.items()
                ))
            else:
                result[attr] = value
        if issubclass(DocxTable, dict):
            for key, value in self.items():
                result[key] = value

        return result

    def to_str(self):
        """Returns the string representation of the model"""
        return pprint.pformat(self.to_dict())

    def __repr__(self):
        """For `print` and `pprint`"""
        return self.to_str()

    def __eq__(self, other):
        """Returns true if both objects are equal"""
        if not isinstance(other, DocxTable):
            return False

        return self.__dict__ == other.__dict__

    def __ne__(self, other):
        """Returns true if both objects are not equal"""
        return not self == other
