Leinster have been given a tough-looking draw for the pool stages of the Heineken Champions Cup.
The defending champions have been paired with fellow-four time champions Toulouse in Pool 1, along with Premiership sides Wasps and Bath. It's a group with a combined 11 titles between them.
Wasps and Bath will provide a familiar draw for Leo Cullen's side too. Leinster were grouped with those English sides in the disastrous 2015/16 season, which saw them finish bottom of their pool, which also contained Toulon.
Toulouse return to the Champions Cup following a season in the second tier Challenge Cup, finishing third in last season's Top 4.
Wasps have made two huge off-season imports, with new England international Brad Shields joining from the Hurricanes, and All Black outhalf Lima Sopoaga arriving from the Highlanders.
Munster found themselves as a third seed for the draw, and while their Pool 2 is not going to be easy, it could certainly have been worse.
Premiership runners-up Exeter are bound to provide the toughest challenge for Johan van Graan's side, while they will also come up against Gloucester and their former second row Gerbrandt Grobler.
For the second year in a row, Munster will take on the newly crowned French champions Castres, continuing European rugby's most common pairing. Their group stage games are set to be the 15th and 16th meeting between the pair in the tournament's history.
Ulster entered the draw as a tier 4 side, following a disappointing campaign last year. They've been matched with Pro 14 rivals Scarlets, as well as Simon Zebo's new side Racing 92, and the Leicester Tigers.
It's the third year in a row that Racing and Leicester have been paired together in the pool stages.
Leinster, Wasps, Toulouse, Bath
Castres, Exeter Chiefs, Munster, Gloucester
Saracens, Glasgow Warriors, Lyon, Cardiff
Scarlets, Racing 92, Leicester Tigers, Ulster
Montpellier, Newcastle, Edinburgh, Toulon