Allan's bag seems to be quite easy.He has got 2 red balls.

So the third ball depends on the label. If the label says there are 3 red balls, then he will get the third ball as white.If it says that there are 2 red and a white ball then the third ball should be a red ball.These are the only cases as Allan is able to say the third ball.

In case of Brian, he has got a red ball and a white ball.So his bag's label should tell him that 2 red or white balls are there.So he has chosen the opposite ball and told it immediately.

Since Charlie has taken out 2 white balls and could not say the answer, the label should say that there must be

**two red and a white** or

**three red**.

Now it's the turn of David.He guessed all of his three balls correctly.He had made it even without seeing the two balls.So the only chance of doing it is by using the constraint

**The numbers of red balls in all bags are different.**By this we can reduce the possibilities.

Allan got 2 red for sure.

Brian got 1 red for sure.

Charlie may or may not have 1 red

David's case, a big question mark.

Since Charlie could not answer, the chance of having 1 red ball should be there.

So Brian don't have only 1 red,but 2.

Since Brian got 2 red,Allan should have different number.So he should got 3 red.