var x,y,z,v,w;
procedure a;
  var x,y,u,v;
  procedure b;
    var y,z,v;
    procedure c;
      var y,z;
      begin
        z:=1;
        x:=y+z+w;
        call a
      end;
    procedure d;
      var x,y;
      begin
        x:=z+u;
        call c
      end;
    begin
      y:=x+u+w;
      call c;
      call d
    end;
  begin
    z:=2;
    u:=z+w;
    call b
  end;
begin
  x:=1; y:=2; z:=3; v:=4; w:=5;
  x:=v+w;
  call a
end.
