!7 sS inputDiagrams = [[ CirclesAndLines(circles=[Circle(text="A [Anything]", x=d("0.32"), y=d("0.55")), Circle(text="B [Anything]", x=d("0.68"), y=d("0.55"))], lines=[Arrow(a=t5, b=t26, text="is"), Arrow(a=t26, b=t5, text="then: is?")], title="A B B A") CirclesAndLines(circles=[Circle(quickvis="Philosophy", text="Philosophy", x=d("0.27"), y=d("0.47")), Circle(quickvis="Asking questions", text="Asking questions", x=d("0.75"), y=d("0.47"))], lines=[Arrow(a=t5, b=t30, text="is")], title="Philosophy") ]]; p { L webs = websFromCALStructures_vis(inputDiagrams); Web instructionWeb = first(webs); Web patternWeb = web_withoutRelationsStartingWith(instructionWeb, "Then:"); Web inputWeb = last(webs); Map map = web_matchAllPerms(patternWeb, inputWeb); if (map != null) print("Have match!"); else print("No match."); print(map); }