<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def _invade_isolated_Ts(self):
 r""" Throats that are uninvaded connected to pores that are both invaded should be invaded too. """

        net = self.project.network
        Ts = net['throat.conns'].copy()
        invaded_Ps = self['pore.invasion_sequence'] > -1
        uninvaded_Ts = self['throat.invasion_sequence'] == -1
        isolated_Ts = np.logical_and(invaded_Ps[Ts[:, 0]],
                                     invaded_Ps[Ts[:, 1]])
        isolated_Ts = np.logical_and(isolated_Ts, uninvaded_Ts)
        inv_Pc = self['pore.invasion_pressure']
        inv_seq = self['pore.invasion_sequence']
        if np.any(isolated_Ts):
            max_array = Ts[:, 0]
            second_higher = inv_seq[Ts][:, 1] > inv_seq[Ts][:, 0]
            max_array[second_higher] = Ts[:, 1][second_higher]
            mPc = inv_Pc[max_array]
            mSeq = inv_seq[max_array]
            mClu = self['pore.cluster'][max_array]
            self['throat.invasion_pressure'][isolated_Ts] = mPc[isolated_Ts]
            self['throat.invasion_sequence'][isolated_Ts] = mSeq[isolated_Ts]
            self['throat.cluster'][isolated_Ts] = mClu[isolated_Ts]