Space.c = (0,0); % The origin horizontally(200, client, Mirror, PPGUI); horizontally(200, ints, Master, Space, PPActions); horizontally(200, server, MasterImpl, PPActionsImpl); pair row; row = (0,-100); client.c + 2*row = ints.c + row = server.c; cline = 30; color clcolor, scolor; scolor = (.7,.8,1); clcolor = (1,.7,.7); cleft = xpart Master.c - 50; cright = xpart PPActions.c + 50; draw (cleft, cline) -- (cright, cline) withpen pencircle scaled 10pt withcolor clcolor; draw (cleft, -cline) -- (cright, -cline) withpen pencircle scaled 10pt withcolor scolor; begingroup; save defaultscale; defaultscale = 5; draw thelabel.top("client", (cleft, cline)) withcolor clcolor; draw thelabel.bot("server", (cleft, -cline)) withcolor scolor; endgroup;