Functional reasoning in design | Synapse