My answer was : 1, 2, 3, 5.
I think it is the correct answer acordind to http://msdn.microsoft.com/en-us/library/ms190736.aspx
Hash recursion and hash bailout cause reduced performance in your server. To eliminate or reduce the frequency of hash recursion and bailouts, do one of the following:
Make sure that statistics exist on the columns that are being joined or grouped.
If statistics exist on the columns, update them.
Use a different type of join. For example, use a MERGE or LOOP join instead, if appropriate.
Increase available memory on the computer. Hash recursion or bailout occurs when there is not enough memory to process queries in place and they need to spill to disk.
Creating or updating the statistics on the column involved in the join is the most effective way to reduce the number of hash recursion or bailouts that occur.