Place a large casserole over a high heat, add the stock, white wine, pearl onions and thyme and bring to a simmer.
Add the chicken, including the carcass and return to a simmer.
Add the button mushrooms, then cover and simmer for about 15-20 minutes, or until the chicken is cooked through.
Remove the casserole from the heat and lift out the chicken, discarding the carcass.
Whisk the egg yolks and cream together in a bowl, then gradually add to the casserole, mixing well as you pour â€“ if the pan is too hot, the eggs will cook too quickly and curdle the sauce.
Return the chicken to the pan then check the seasoning, adding salt and freshly ground black pepper, to taste. Finally stir in the parsley.
For the mash, place the potatoes into a pan of cold, salted water and bring to the boil.
Reduce the heat and simmer for 12-15 minutes, or until the potatoes are tender.
Drain and return to the pan, then place over a low heat for a couple of minutes to dry the potatoes slightly.
Tip the potatoes back into a colander and then pass through a ricer.
Add the butter and milk (or cream) and beat to form a very smooth mash, then season to taste with salt and black pepper.
To serve, spoon the mash into bowls, then top with two pieces of chicken and a ladleful of sauce.