The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
%!PS-Adobe-2.0 EPSF-1.2
%%BoundingBox: 40 135 260 312
%%Creator: Gisle Aas (Copyright 1998), Reini Urban (Copyright 2009)

0.5 dup scale

%require "common.ps"
%require "arrow.ps"

/S {                                   % x y str
  dup stringwidth pop 2 div            % x y str dx
  4 2 roll                             % str dx x y
  moveto                               % str dx
  gsave
     % draw a nice box around the text
     0 -2 rmoveto
     dup 3 add
     dup 0 rlineto
     0 20 rlineto
     dup 2 mul neg 0 rlineto
     0 -20 rlineto
     closepath
     gsave 0.95 setgray fill grestore
     0.5 setlinewidth stroke
     pop
  grestore
  neg 0 rmoveto                        % str
  show
} def

/A {
  20 add   % adjust to-y
  3 2 roll 3 sub 3 1 roll % adjust from-y
  1.5 7 9 arrow fill
} def


%---------------------------------

/Helvetica 18 SF
300 600 (SvNULL) S

% extra arrow from RV to IV
%gsave 0.5 setgray 251 558 282 558 1.5 7 9 arrow fill grestore
% and from RV to BIND
%gsave 0.5 setgray 199 558 172 558 1.5 7 9 arrow fill grestore

200 550 (NV)   S   300 600 200 550 A
300 550 (IV)   S   300 600 300 550 A
400 550 (PV)   S   300 600 400 550 A

300 500 (PVIV) S 300 550 300 500 A   
300 450 (PVNV) S 300 500 300 450 A   200 550 295 450 A
300 400 (PVMG) S 300 450 300 400 A   400 550 305 400 A

155 330 (P5RX) S 300 400 155 330 A
225 330 (PVLV) S 300 400 225 330 A
300 330 (AV)   S 300 400 300 330 A
350 330 (HV)   S 300 400 350 330 A
400 330 (CV)   S 300 400 400 330 A
450 330 (GV)   S 300 400 450 330 A
500 330 (IO)   S 300 400 500 330 A

400 280 (PVFM) S 400 330 400 280 A