Functional constraints on the number and shape of flight feathers | Synapse