implement balanced escrow functionality