ArrowHead(a, b) : if d == (- 0.238, - 0.508) rel (a, b) , c == (- 0.238, 0.508) rel (a, b) | T -> fill (c, a), (a, d), (d, b), (b, c) fi Arrow(c, d, a, b, g, f) : if e == (0.893, 0.) rel (a, b), x == (0, 3) rel (a) | (a, e) para (e, b) and (f, g) cong (e, b) -> ArrowHead(e, b); a, x width stroke (c, d, a, e) fi QuarterCircle(a, b) : if k == (1., 0.552) rel (a, b) , f == (0.552, 1.) rel (a, b) , c == (0., 1.) rel (a, b) | T -> draw (c, f, k, b) fi Circle(a, b) : if e == (0., 1.) rel (a, b) , d == (0., - 1.) rel (a, b) , c == (- 1., - 0.) rel (a, b) | T -> QuarterCircle(a, e) ; QuarterCircle(a, c) ; QuarterCircle(a, d) ; QuarterCircle(a, b) fi fill3(a, b, c): fill (a, b), (b, c) fill5(a, b, c, d, e): fill (a, b), (b, c, d, e) roundstroke(a, b, c, d) : round ends c, d width stroke (a, b) buttstroke(a, b, c, d) : butt ends c, d width stroke (a, b) Κd– "juno" style˜˜J˜—˜J˜—˜J˜—˜J˜Ξ—˜%J˜—˜1J˜—˜J˜&—˜J˜%——…—ž