more work on ArrayList