Diagrammatic Reasoning