Heat 25ml olive oil and 15g butter in a pan. Add 12 garlic cloves, crushed, and 1 onion, finely chopped, and cook them gently for 10 minutes, stirring occasionally.
Stir in 15g plain flour and make a smooth paste. Cook for a few minutes, stirring, without letting the mixture brown. Then stir in 1 litre chicken stock and 1 litre water. Bring to the boil, reduce the heat and cover the pan. Simmer gently for 30 minutes.
Just before serving, lightly whisk 2 egg yolks in a bowl (if the whole batch is not going to be served, pour half of the soup into a pan and add just 1 egg yolk!). Remove the pan from the heat and add a ladleful of soup to the yolks. Stir with the whisk until the yolks are well mixed with the soup, then pour the mixture into the pan.
Heat the soup over low heat, stirring, for a few seconds but do not allow it to simmer or boil or the yolks will curdle. Best served warm with ciabatta bread.