.geometry "version 0.40";
.l0; 
v1 = .free(-0.830481, -0.194993, "A");
v2 = .free(0.820383, -0.195009, "B");
l1 = .l.vv(v1, v2);
l2 = .l.vlperp(v1, l1, .in);
v3 = .vonl(l2, -0.830477, 0.17887, [.in, .blink, .white], "X");
l3 = .l.vv(v3, v1, [.in, .blink, .white]);
c1 = .c.ctrvv(v3, v1, v2, .in);
c2 = .c.ctrvv(v2, v1, v3, .in);
v4 = .v.cc(c1, c2, 2, [.in, .blink, .white], "Y");
l4 = .l.vv(v3, v4, [.in, .blink, .white]);
l5 = .l.vv(v4, v2, [.in, .blink, .white]);
l6 = .l.vv(v1, v4, [2 .in, .blink, .white]);
l7 = .l.vv(v3, v2, [2 .in, .blink, .white]);
v5 = .v.ll(l6, l7, [2 .in, .blink, .white], "J");
l8 = .l.vlperp(v5, l1, .in);
v6 = .v.ll(l1, l8, [.white, 2 .in, .blink, .white], "C");
l9 = .l.vv(v5, v6, [3 .in, .blink, .white]);
l10 = .l.vv(v6, v3, [4 .in, .blink, .white]);
v7 = .v.ll(l6, l10, [4 .in, .blink, .white], "K");
l11 = .l.vlperp(v7, l1, [5 .in, .blink, .in]);
v8 = .v.ll(l1, l11, [.white, 4 .in, .blink, .white], "D");
l12 = .l.vv(v7, v8, [6 .in, .white]);
l13 = .l.vv(v8, v3, [6 .in, .blink, .white]);
v9 = .v.ll(l6, l13, [6 .in, .blink, .white], "L");
l14 = .l.vlperp(v9, l1, .in);
v10 = .v.ll(l1, l14, [.white, 6 .in, .blink, .white], "E");
l15 = .l.vv(v9, v10, [7 .in, .blink, .white]);
l16 = .l.vv(v10, v3, [8 .in, .blink, .white]);
v11 = .v.ll(l6, l16, [8 .in, .blink, .white], "M");
l17 = .l.vlperp(v11, l1, .in);
v12 = .v.ll(l1, l17, [.white, 8 .in, .blink, .white], "F");
l18 = .l.vv(v12, v11, [9 .in, .blink, .white]);
l19 = .l.vv(v12, v3, [10 .in, .blink, .white]);
v13 = .v.ll(l6, l19, [10 .in, .blink, .white], "N");
l20 = .l.vlperp(v13, l1, .in);
v14 = .v.ll(l1, l20, [.white, 10 .in, .blink, .white], "G");
l21 = .l.vv(v13, v14, [11 .in, .blink, .white]);
.text("A construction of the harmonic series.  If
AB = 1, AC = 1/2, AD = 1/3, AE = 1/4, et cetera.", .l0);
.text("Construct a rectangle ABYX with AB as one edge.", .l1);
.text("Draw the diagonals AY and BX intersecting
at the point J.", .l2);
.text("Project J to AB giving C, where AC = AB/2.", .l3);
.text("Connect C to X meeting AY at K.", .l4);
.text("Project K to AB at D.  AD = AB/3.", .l5);
.text("Continue in the same manner.", .l6, .l7, .l8, .l9, .l10);
.text("Press 'Next' to continue ...", .tol9);
