!7 sS inputDiagrams = [[ CirclesAndLines(circles=[Circle(text="Find", x=d("0.27089337175792505"), y=d("0.18181818181818182")), Circle(text="an integer", x=d("0.5965417867435159"), y=d("0.19922630560928434")), Circle(text="odd", x=d("0.5936599423631124"), y=d("0.5145067698259188"))], lines=[Arrow(a=t5, b=t26, text=""), Arrow(a=t26, b=t47, text="that is")]) CirclesAndLines(circles=[Circle(text="A standard function that tests", x=d("0.3645533141210375"), y=d("0.2011605415860735")), Circle(text="an integer", x=d("0.2377521613832853"), y=d("0.5764023210831721")), Circle(text="odd", x=d("0.47982708933717577"), y=d("0.5725338491295938")), Circle(text="\"odd\"", x=d("0.7132564841498559"), y=d("0.562862669245648"))], lines=[Arrow(a=t5, b=t26, text="what"), Arrow(a=t5, b=t47, text="for property"), Arrow(a=t5, b=t68, text="is")]) ]]; p { Web web = webFromCALStructures_noMerge(inputDiagrams); showWeb(web); WebNode find = web_findNode(web, "Find"); WebNode op = web_operand(find); print("Finding: " + op); S plural = plural(dropArticle(web_text(op))); print("Plural: " + plural); /*Pair finder = web_findTriple(web, "A standard function that finds", "", plural); print("Finder: " + finder); if (finder == null) fail("No finder"); S sfName = web_operandText(finder.b, "is"); if (finder == null) fail("No sf"); print(sfName); O found = random((Collection) makeAndCall(sfName)); print("Found: " + sfu(found));*/ }