def update_routing_segmentation_maps_from_source_segment(
    self,
    segment_id: int,
    segment_map: dict,
) -> bool:
    """Update D-NAT policies for specific source segment

    .. list-table::
        :header-rows: 1

        * - Swagger Section
          - Method
          - Endpoint
        * - vrf
          - POST
          - /vrf/config/maps/{srcSegmentId}

    .. warning::

        This will replace all D-NAT map rules for this source segment!

    :param segment_id: Numeric id of routing segment
    :type segment_id: int
    :param segment_map: Dictionary of segment map to configure \n
        * keyword **<priority_number>** (`dict`): D-NAT rule
            object \n
            * keyword **match** (`dict`): Match object \n
                * keyword **acl** (`str`): ACL to match against
                * keyword **matchstr** (`dict`): Matching ip
                    object \n
                    * keyword **dst_ip** (`str`): Destination IP
            * keyword **set** (`dict`): Set action object \n
                * keyword **dst_vrf** (`str`): Destination VRF id
                * keyword **trans_dst_ip** (`str`): Translated IP
            * keyword **comment** (`str`): Rule comment
            * keyword **enable** (`bool`): Rule enable status
            * keyword **gms_marked** (`bool`): Flag to determine if this
              rule was created by Orchestrator
            * keyword **misc** (`str`): No description in Swagger
    :type segment_map: dict
    :return: Returns True/False based on successful call
    :rtype: bool
    """
    return self._post(
        "/vrf/config/maps/{}".format(segment_id),
        data=segment_map,
        expected_status=[204],
        return_type="bool",
    )