<Ul> <Li> Verdun </Li> <Li> Somme </Li> </Ul> <Ul> <Li> Alberich </Li> <Li> Nivelle <Ul> <Li> Arras </Li> <Li> 2nd Aisne </Li> <Li> Hills </Li> </Ul> </Li> <Li> Messines </Li> <Li> 3rd Ypres (Passchendaele) </Li> <Li> La Malmaison </Li> <Li> 1st Cambrai </Li> </Ul> <Li> Nivelle <Ul> <Li> Arras </Li> <Li> 2nd Aisne </Li> <Li> Hills </Li> </Ul> </Li> <Ul> <Li> Arras </Li> <Li> 2nd Aisne </Li> <Li> Hills </Li> </Ul>

Where did the german spring offensive take place