Surface shaders apply lighting calculations and are the final shading before fragment integration. There should be only one surface shader per shading shading network which may contain an arbitrarily-large coshader input network feeding the surface shader.