'Accept the current offer.
Args:
party (object): The party accepting the deal.
Returns:
result (object): `True` if this closes the deal, `False`
otherwise
Notes:
This will only close the deal if both parties have
accepted independently. This is done by calling the
`finish()` method.'

def accept(self, party):

    if self.trade_started:
        if (party == self.part_a):
            self.part_a_accepted = True
        elif (party == self.part_b):
            self.part_b_accepted = True
        else:
            raise ValueError
        return self.finish()
    return False
