% punk letters

beginpunkchar("A",13,1,2);
z1=pp(1.5u,0); z2=(.5w,1.1h); z3=pp(w-1.5u,0);
pd z1; pd z3; draw z1--z2--z3;  % left and right diagonals
z4=pp .3[z1,z2]; z5=pp .3[z3,z2]; pd z4; pd z5; draw z4--z5; % crossbar
endchar;

beginpunkchar("B",12,1,1);
z1=pp(2u,0); z2=pp(2u,.6h); z3=pp(2u,h); pd z1; pd z3; draw z1--z3; % stem
z1.5=pp(w-u,.5y2); z2.5=pp(w-u,.5[y2,y3]); draw z2--z2.5--z3;  % upper lobe
draw flex(z2,z1.5,z1); % lower lobe
endchar;

beginpunkchar("C",13,1,2);
z1=pp(w-2u,.8h); z2=pp(.6w,h); z3=pp(u,.5h); z4=(.6w,0); z5=(w-2u,.2h);
pd z1; pd z5; draw z1..z2..z3..z4..z5;  % arc
endchar;

beginpunkchar("D",14,1,2);
z1=pp(2u,0); z2=pp(2u,h); z3=pp(w-u,.6h);
pd z1; pd z2; draw flex(z1,z3,z2); % lobe
draw z1--z2;  % stem
endchar;

beginpunkchar("E",12,.5,1);
z1=pp(2u,0); z2=pp(2u,h); z3=pp(w-2.5u,h); z4=pp(w-2u,0);
pd z3; pd z4; draw z4--z1--z2--z3; % stem and arms
z5=pp(2u,.6h); z6=pp(w-3u,.6h); pd z5; pd z6; draw z5--z6;  % crossbar
endchar;

beginpunkchar("F",12,.5,2);
z1=pp(2u,0); z2=pp(2u,h); z3=pp(w-2u,h);
pd z1; pd z3; draw z1--z2--z3;  % stem and arm
z5=pp(2u,.6h); z6=pp(w-3u,.6h); z4=pp .5[z5,z6]-(0,.1h);
pd z5; pd z6; draw flex (z5,z4,z6); % crossbar
endchar;

beginpunkchar("G",13,.5,.5);
z1=pp(w-2u,.8h); z2=pp(.6w,h); z3=pp(u,.5h); z4=pp(.6w,0); z5=(w-2u,0);
pd z1; draw z1..z2..z3..z4---z5;  % arc
z6=pp(.5[u,x5],.4h); pd z6; pd z5; draw z6--(pp(x5,y6))--z5; % spur
endchar;

beginpunkchar("H",14,1,.5);
z1=pp(2u,0); z2=pp(2u,h); z3=pp(w-2u,0); z4=pp(w-2u,h);
z5=pp(2u,.6h); z6=pp(w-2u,.6h);
pd z1; pd z2; pd z3; pd z4; draw z1--z2; draw flex(z3,z6,z4); % stems
pd z5; draw z5--z6;  % crossbar
endchar;

beginpunkchar("I",5,1,2);
z1=pp(.5w,0); z2=(.5w,1/3h); z3=(.5w,2/3h); z4=(.5w,h);
pd z1; pd z4; draw flex(z1,z2,z3,z4);  % stem
endchar;

beginpunkchar("J",9,1,2);
z1=pp(w-2u,h); z2=pp(w-2u,-.1h); z3=pp(u,0);
pd z1; pd z3; draw z1--z2--z3; % arc
endchar;

beginpunkchar("K",14,1,2);
z1=pp(2u,0); z2=pp(2u,h); z3=pp(2u,1/3h); z4=pp(w-1.5u,h);
pd z1; pd z2; draw z1--z2;  % stem
pd z3; pd z4; draw z3--z4;  % upper diagonal
z6=pp(w-u,0); z5=1/3[z3,z4];
pd z6; draw flex(z5,.8[z1,2/3[z5,z6] ],z6);% lower diagonal
endchar;

beginpunkchar("L",11,1,2);
z1=pp(2u,h); z2=pp(2u,0); z3=pp(w-1.5u,0);
pd z1; pd z3; draw z1--z2--z3;  % stem and arm
endchar;

beginpunkchar("M",17,.5,2);
z1=pp(2u,0); z2=pp(2u,h); z3=pp(.5w,0); z4=pp(w-2u,h); z5=pp(w-2u,0);
pd z1; pd z5; draw z1--z2--z3--z4--z5; % stems and diagonals
endchar;

beginpunkchar("N",13,.75,2);
z1=pp(2u,0); z2=pp(2u,h); z3=pp(w-2u,0); z4=pp(w-2u,h);
pd z1; pd z4; draw z1--z2--z3--z4; % stems and diagonals
endchar;

beginpunkchar("O",12,.5,2);
z1=pp(.5w,h); z2=pp(u,.55h); z3=pp(.5w,0); z4=pp(w-u,.55h);
pd z1; draw z1{left}..z2..z3..z4..z1; % bowl
endchar;

beginpunkchar("P",13,1,2);
z1=pp(2u,0); z2=pp(2u,1.1h); z3=pp(2u,.5h); z4=pp(w,.6[y3,y2]);
pd z1; pd z3; draw z1--z2--z4--z3; % stem and bowl
endchar;

beginpunkchar("Q",14,.5,2);
z1=pp(.5w,h); z2=pp(u,.55h); z3=pp(.5w,0); z4=pp(w-u,.55h);
pd z1; draw z1{curl 2}..z2..z3..z4..z1; % bowl
z5=pp(.4w,.2h); z6=pp(w-u,-.1h); z7=pp(.5[x5,x6],-.2h);
pd z5; pd z6; draw z5--z7--z6;  % tail
endchar;

beginpunkchar("R",16,1,2);
z1=pp(2u,0); z2=pp(2u,h); z3=pp(w-u,.6[y2,y4]); z4=pp(2u,.5h); z5=pp(w-1.5u,0);
pd z1; pd z2; pd z5; draw z1--flex(z2,z3,z4)--z5; % stem, bowl, and diagonal
endchar;

beginpunkchar("S",11,.3,1);
z1=pp(w-2u,.9h); z2=pp(.5w,h); z3=pp(u,.7h); z4=.6[z6,z2];
z5=pp(w-u,.35h); z6=pp(.5w,u); z7=pp(u,.2h);
pd z1; pd z7; draw z1--z2...z3..z4..z5...z6--z7;  % stroke
endchar;

beginpunkchar("T",13,.75,2);
z1=pp(u,h); z2=pp(w-u,h); z3=pp(.5w,0);
pd z1; pd z2; pd z3; draw z1--z2;  % arms
draw .5[z1,z2]--z3;  % stem
endchar;

beginpunkchar("U",13,.3,2);
z1=pp(2u,h); z2=pp(2u,.2h); z3=pp(.5w,0); z4=pp(w-2u,.2h); z5=pp(w-2u,h);
pd z1; pd z5; draw z1---z2...z3{z4-z2}...z4---z5; % stroke
endchar;

beginpunkchar("V",13,1,2);
z1=pp(1.5u,h); z2=pp(.5w,0); z3=pp(w-1.5u,h);
pd z1; pd z3; draw z1--z2--z3;  % diagonals
endchar;

beginpunkchar("W",18,1,2);
z1=pp(1.5u,h); z2=pp(.5[x1,x3],0); z3=pp(.5w,.8h); z4=pp(.5[x3,x5],0);
z5=pp(w-1.5u,h);
pd z1; pd z5; draw z1--z2--z3--z4--z5;  % diagonals
endchar;

beginpunkchar("X",13,1,1);
z1=pp(1.5u,h); z2=pp(w-1.5u,0); z3=pp(1.5u,0); z4=pp(w-2.5u,h);
pd z1; pd z2; draw z1--z2;  % main diagonal
pd z3; pd z4; draw z3--z4;  % cross diagonal
endchar;

beginpunkchar("Y",13,1,2);
z1=pp(1.5u,h); z2=pp(w-1.5u,h); z3=pp(.5w,.5h); z4=pp(.5w,0);
pd z1; pd z2; pd z4; draw z1--z3--z4; % stem and left diagonal
draw z2--z3;  % right diagonal
endchar;

beginpunkchar("Z",11,1,2);
z1=pp(1.5u,h); z2=pp(w-2.5u,h); z3=pp(1.5u,0); z4=pp(w-1.5u,0);
pd z1; pd z4; draw z1--z2--z3--z4;  % diagonals
endchar;