test with balance checking