For now this is the same as the generic one
Aim is to clean up restacking logic and remove some duplicated code