<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def run( self ):
 """ Interact with the blockchain peer, until we get a socket error or we exit the loop explicitly. Return True on success Raise on error """


        self.handshake()

        try:
            self.loop()
        except socket.error, se:
            if self.finished:
                return True
            else:
                raise