The German army had reached its peak of manpower in 1916 and the Hindenburg Programme had been intended to reduce the burden on the remaining manpower by substituting machines. In 1917, the had managed to withstand the attacks of the French and the British, while offensive operations had been conducted on the eastern and southern fronts. The coalition against Germany increased its output of war materiel even more than the increase of the Hindenburg Programme, an industrial competition that Germany could not win; the programme worsened the labour shortage in Germany. The theoretical changes in German defensive tactics had greater effect than the increase in the size of the army and the output of weapons. British attacks in 1917 were much more competent than those of 1916 but German defensive methods were adapted to negate the effect of the maturing of the British Expeditionary Force (BEF). The Battle of the Somme (1 July – 18 November 1916) had cost the about and the Second Battle of the Aisne (16 April – 9 May 1917), the main part of the Nivelle Offensive, cost another The Third Battle of Ypres (31 July – 10 November) added casualties.