<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def _session_next_hop(self, path):
 """Returns nexthop address relevant to current session Nexthop used can depend on capabilities of the session. If VPNv6 capability is active and session is on IPv4 connection, we have to use IPv4 mapped IPv6 address. In other cases we can use connection end point/local ip address. """

        route_family = path.route_family

        # By default we use BGPS's interface IP with this peer as next_hop.
        if self._neigh_conf.next_hop:
            next_hop = self._neigh_conf.next_hop
        else:
            next_hop = self.host_bind_ip
        if route_family == RF_IPv6_VPN:
            next_hop = self._ipv4_mapped_ipv6(next_hop)

        return next_hop