%!PS-Adobe-2.0
%%Creator: dvips(k) 5.92b Copyright 2002 Radical Eye Software
%%Title: ssdxml.dvi
%%Pages: 31 0
%%PageOrder: Ascend
%%BoundingBox: 0 0 596 842
%%DocumentFonts: Helvetica-Bold CMSY10 Helvetica Helvetica-Oblique CMR7
%%+ CMTT10 CMMI10 CMR10 CMSY7 CMMI7 CMMI5 CMTT9 LASY7 CMSY9 CMITT10
%%EndComments
%%BeginProcSet: PStoPS 1 15
userdict begin
[/showpage/erasepage/copypage]{dup where{pop dup load
type/operatortype eq{1 array cvx dup 0 3 index cvx put
bind def}{pop}ifelse}{pop}ifelse}forall
[/letter/legal/executivepage/a4/a4small/b5/com10envelope
/monarchenvelope/c5envelope/dlenvelope/lettersmall/note
/folio/quarto/a5]{dup where{dup wcheck{exch{}put}
{pop{}def}ifelse}{pop}ifelse}forall
/setpagedevice {pop}bind 1 index where{dup wcheck{3 1 roll put}
{pop def}ifelse}{def}ifelse
/PStoPSmatrix matrix currentmatrix def
/PStoPSxform matrix def/PStoPSclip{clippath}def
/defaultmatrix{PStoPSmatrix exch PStoPSxform exch concatmatrix}bind def
/initmatrix{matrix defaultmatrix setmatrix}bind def
/initclip[{matrix currentmatrix PStoPSmatrix setmatrix
[{currentpoint}stopped{$error/newerror false put{newpath}}
{/newpath cvx 3 1 roll/moveto cvx 4 array astore cvx}ifelse]
{[/newpath cvx{/moveto cvx}{/lineto cvx}
{/curveto cvx}{/closepath cvx}pathforall]cvx exch pop}
stopped{$error/errorname get/invalidaccess eq{cleartomark
$error/newerror false put cvx exec}{stop}ifelse}if}bind aload pop
/initclip dup load dup type dup/operatortype eq{pop exch pop}
{dup/arraytype eq exch/packedarraytype eq or
{dup xcheck{exch pop aload pop}{pop cvx}ifelse}
{pop cvx}ifelse}ifelse
{newpath PStoPSclip clip newpath exec setmatrix} bind aload pop]cvx def
/initgraphics{initmatrix newpath initclip 1 setlinewidth
0 setlinecap 0 setlinejoin []0 setdash 0 setgray
10 setmiterlimit}bind def
end
%%EndProcSet
%DVIPSWebPage: (www.radicaleye.com)
%DVIPSCommandLine: dvips -p225 -l286 ssdxml
%DVIPSParameters: dpi=600, compressed
%DVIPSSource: TeX output 2006.07.19:0955
%%BeginProcSet: texc.pro
%!
/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72
mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 0
0 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{
landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize
mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR[
matrix currentmatrix{A A round sub abs 0.00001 lt{round}if}forall round
exch round exch]setmatrix}N/@landscape{/isls true N}B/@manualfeed{
statusdict/manualfeed true put}B/@copies{/#copies X}B/FMat[1 0 0 -1 0 0]
N/FBB[0 0 0 0]N/nn 0 N/IEn 0 N/ctr 0 N/df-tail{/nn 8 dict N nn begin
/FontType 3 N/FontMatrix fntrx N/FontBBox FBB N string/base X array
/BitMaps X/BuildChar{CharBuilder}N/Encoding IEn N end A{/foo setfont}2
array copy cvx N load 0 nn put/ctr 0 N[}B/sf 0 N/df{/sf 1 N/fntrx FMat N
df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A
definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get
}B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub}
B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr
1 add N}if}B/id 0 N/rw 0 N/rc 0 N/gp 0 N/cp 0 N/G 0 N/CharBuilder{save 3
1 roll S A/base get 2 index get S/BitMaps get S get/Cd X pop/ctr 0 N Cdx
0 Cx Cy Ch sub Cx Cw add Cy setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx
sub Cy .1 sub]/id Ci N/rw Cw 7 add 8 idiv string N/rc 0 N/gp 0 N/cp 0 N{
rc 0 ne{rc 1 sub/rc X rw}{G}ifelse}imagemask restore}B/G{{id gp get/gp
gp 1 add N A 18 mod S 18 idiv pl S get exec}loop}B/adv{cp add/cp X}B
/chg{rw cp id gp 4 index getinterval putinterval A gp add/gp X adv}B/nd{
/cp 0 N rw exit}B/lsh{rw cp 2 copy get A 0 eq{pop 1}{A 255 eq{pop 254}{
A A add 255 and S 1 and or}ifelse}ifelse put 1 adv}B/rsh{rw cp 2 copy
get A 0 eq{pop 128}{A 255 eq{pop 127}{A 2 idiv S 128 and or}ifelse}
ifelse put 1 adv}B/clr{rw cp 2 index string putinterval adv}B/set{rw cp
fillstr 0 4 index getinterval putinterval adv}B/fillstr 18 string 0 1 17
{2 copy 255 put pop}for N/pl[{adv 1 chg}{adv 1 chg nd}{1 add chg}{1 add
chg nd}{adv lsh}{adv lsh nd}{adv rsh}{adv rsh nd}{1 add adv}{/rc X nd}{
1 add set}{1 add clr}{adv 2 chg}{adv 2 chg nd}{pop nd}]A{bind pop}
forall N/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn
/BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put
}if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{
bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A
mul exch 0 get A mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N/eop{
SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{
userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X
1000 div/DVImag X/IEn 256 array N 2 string 0 1 255{IEn S A 360 add 36 4
index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N
/p{show}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0 N/Ry 0 N/V{}B/RV/v{
/Ry X/Rx X V}B statusdict begin/product where{pop false[(Display)(NeXT)
(LaserWriter 16/600)]{A length product length le{A length product exch 0
exch getinterval eq{pop true exit}if}{pop}ifelse}forall}{false}ifelse
end{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{BDot}imagemask
grestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat{BDot}
imagemask grestore}}ifelse B/QV{gsave newpath transform round exch round
exch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0 rlineto
fill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B/M{S p
delta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}B/g{0 M}
B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p -3 w}B/n{
p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{0 S
rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end
%%EndProcSet
%%BeginProcSet: pstricks.pro
%!
% PostScript prologue for pstricks.tex.
% Version 97 patch 3, 98/06/01
% For distribution, see pstricks.tex.
%
/tx@Dict 200 dict def tx@Dict begin
/ADict 25 dict def
/CM { matrix currentmatrix } bind def
/SLW /setlinewidth load def
/CLW /currentlinewidth load def
/CP /currentpoint load def
/ED { exch def } bind def
/L /lineto load def
/T /translate load def
/TMatrix { } def
/RAngle { 0 } def
/Atan { /atan load stopped { pop pop 0 } if } def
/Div { dup 0 eq { pop } { div } ifelse } def
/NET { neg exch neg exch T } def
/Pyth { dup mul exch dup mul add sqrt } def
/PtoC { 2 copy cos mul 3 1 roll sin mul } def
/PathLength@ { /z z y y1 sub x x1 sub Pyth add def /y1 y def /x1 x def }
def
/PathLength { flattenpath /z 0 def { /y1 ED /x1 ED /y2 y1 def /x2 x1 def
} { /y ED /x ED PathLength@ } {} { /y y2 def /x x2 def PathLength@ }
/pathforall load stopped { pop pop pop pop } if z } def
/STP { .996264 dup scale } def
/STV { SDict begin normalscale end STP } def
/DashLine { dup 0 gt { /a .5 def PathLength exch div } { pop /a 1 def
PathLength } ifelse /b ED /x ED /y ED /z y x add def b a .5 sub 2 mul y
mul sub z Div round z mul a .5 sub 2 mul y mul add b exch Div dup y mul
/y ED x mul /x ED x 0 gt y 0 gt and { [ y x ] 1 a sub y mul } { [ 1 0 ]
0 } ifelse setdash stroke } def
/DotLine { /b PathLength def /a ED /z ED /y CLW def /z y z add def a 0 gt
{ /b b a div def } { a 0 eq { /b b y sub def } { a -3 eq { /b b y add
def } if } ifelse } ifelse [ 0 b b z Div round Div dup 0 le { pop 1 } if
] a 0 gt { 0 } { y 2 div a -2 gt { neg } if } ifelse setdash 1
setlinecap stroke } def
/LineFill { gsave abs CLW add /a ED a 0 dtransform round exch round exch
2 copy idtransform exch Atan rotate idtransform pop /a ED .25 .25
% DG/SR modification begin - Dec. 12, 1997 - Patch 2
%itransform translate pathbbox /y2 ED a Div ceiling cvi /x2 ED /y1 ED a
itransform pathbbox /y2 ED a Div ceiling cvi /x2 ED /y1 ED a
% DG/SR modification end
Div cvi /x1 ED /y2 y2 y1 sub def clip newpath 2 setlinecap systemdict
/setstrokeadjust known { true setstrokeadjust } if x2 x1 sub 1 add { x1
% DG/SR modification begin - Jun. 1, 1998 - Patch 3 (from Michael Vulis)
% a mul y1 moveto 0 y2 rlineto stroke /x1 x1 1 add def } repeat grestore }
% def
a mul y1 moveto 0 y2 rlineto stroke /x1 x1 1 add def } repeat grestore
pop pop } def
% DG/SR modification end
/BeginArrow { ADict begin /@mtrx CM def gsave 2 copy T 2 index sub neg
exch 3 index sub exch Atan rotate newpath } def
/EndArrow { @mtrx setmatrix CP grestore end } def
/Arrow { CLW mul add dup 2 div /w ED mul dup /h ED mul /a ED { 0 h T 1 -1
scale } if w neg h moveto 0 0 L w h L w neg a neg rlineto gsave fill
grestore } def
/Tbar { CLW mul add /z ED z -2 div CLW 2 div moveto z 0 rlineto stroke 0
CLW moveto } def
/Bracket { CLW mul add dup CLW sub 2 div /x ED mul CLW add /y ED /z CLW 2
div def x neg y moveto x neg CLW 2 div L x CLW 2 div L x y L stroke 0
CLW moveto } def
/RoundBracket { CLW mul add dup 2 div /x ED mul /y ED /mtrx CM def 0 CLW
2 div T x y mul 0 ne { x y scale } if 1 1 moveto .85 .5 .35 0 0 0
curveto -.35 0 -.85 .5 -1 1 curveto mtrx setmatrix stroke 0 CLW moveto }
def
/SD { 0 360 arc fill } def
/EndDot { { /z DS def } { /z 0 def } ifelse /b ED 0 z DS SD b { 0 z DS
CLW sub SD } if 0 DS z add CLW 4 div sub moveto } def
/Shadow { [ { /moveto load } { /lineto load } { /curveto load } {
/closepath load } /pathforall load stopped { pop pop pop pop CP /moveto
load } if ] cvx newpath 3 1 roll T exec } def
/NArray { aload length 2 div dup dup cvi eq not { exch pop } if /n exch
cvi def } def
/NArray { /f ED counttomark 2 div dup cvi /n ED n eq not { exch pop } if
f { ] aload /Points ED } { n 2 mul 1 add -1 roll pop } ifelse } def
/Line { NArray n 0 eq not { n 1 eq { 0 0 /n 2 def } if ArrowA /n n 2 sub
def n { Lineto } repeat CP 4 2 roll ArrowB L pop pop } if } def
/Arcto { /a [ 6 -2 roll ] cvx def a r /arcto load stopped { 5 } { 4 }
ifelse { pop } repeat a } def
/CheckClosed { dup n 2 mul 1 sub index eq 2 index n 2 mul 1 add index eq
and { pop pop /n n 1 sub def } if } def
/Polygon { NArray n 2 eq { 0 0 /n 3 def } if n 3 lt { n { pop pop }
repeat } { n 3 gt { CheckClosed } if n 2 mul -2 roll /y0 ED /x0 ED /y1
ED /x1 ED x1 y1 /x1 x0 x1 add 2 div def /y1 y0 y1 add 2 div def x1 y1
moveto /n n 2 sub def n { Lineto } repeat x1 y1 x0 y0 6 4 roll Lineto
Lineto pop pop closepath } ifelse } def
/Diamond { /mtrx CM def T rotate /h ED /w ED dup 0 eq { pop } { CLW mul
neg /d ED /a w h Atan def /h d a sin Div h add def /w d a cos Div w add
def } ifelse mark w 2 div h 2 div w 0 0 h neg w neg 0 0 h w 2 div h 2
div /ArrowA { moveto } def /ArrowB { } def false Line closepath mtrx
setmatrix } def
% DG modification begin - Jan. 15, 1997
%/Triangle { /mtrx CM def translate rotate /h ED 2 div /w ED dup 0 eq {
%pop } { CLW mul /d ED /h h d w h Atan sin Div sub def /w w d h w Atan 2
%div dup cos exch sin Div mul sub def } ifelse mark 0 d w neg d 0 h w d 0
%d /ArrowA { moveto } def /ArrowB { } def false Line closepath mtrx
%setmatrix } def
/Triangle { /mtrx CM def translate rotate /h ED 2 div /w ED dup
CLW mul /d ED /h h d w h Atan sin Div sub def /w w d h w Atan 2
div dup cos exch sin Div mul sub def mark 0 d w neg d 0 h w d 0
d /ArrowA { moveto } def /ArrowB { } def false Line closepath mtrx
% DG/SR modification begin - Jun. 1, 1998 - Patch 3 (from Michael Vulis)
% setmatrix } def
setmatrix pop } def
% DG/SR modification end
/CCA { /y ED /x ED 2 copy y sub /dy1 ED x sub /dx1 ED /l1 dx1 dy1 Pyth
def } def
/CCA { /y ED /x ED 2 copy y sub /dy1 ED x sub /dx1 ED /l1 dx1 dy1 Pyth
def } def
/CC { /l0 l1 def /x1 x dx sub def /y1 y dy sub def /dx0 dx1 def /dy0 dy1
def CCA /dx dx0 l1 c exp mul dx1 l0 c exp mul add def /dy dy0 l1 c exp
mul dy1 l0 c exp mul add def /m dx0 dy0 Atan dx1 dy1 Atan sub 2 div cos
abs b exp a mul dx dy Pyth Div 2 div def /x2 x l0 dx mul m mul sub def
/y2 y l0 dy mul m mul sub def /dx l1 dx mul m mul neg def /dy l1 dy mul
m mul neg def } def
/IC { /c c 1 add def c 0 lt { /c 0 def } { c 3 gt { /c 3 def } if }
ifelse /a a 2 mul 3 div 45 cos b exp div def CCA /dx 0 def /dy 0 def }
def
/BOC { IC CC x2 y2 x1 y1 ArrowA CP 4 2 roll x y curveto } def
/NC { CC x1 y1 x2 y2 x y curveto } def
/EOC { x dx sub y dy sub 4 2 roll ArrowB 2 copy curveto } def
/BAC { IC CC x y moveto CC x1 y1 CP ArrowA } def
/NAC { x2 y2 x y curveto CC x1 y1 } def
/EAC { x2 y2 x y ArrowB curveto pop pop } def
/OpenCurve { NArray n 3 lt { n { pop pop } repeat } { BOC /n n 3 sub def
n { NC } repeat EOC } ifelse } def
/AltCurve { { false NArray n 2 mul 2 roll [ n 2 mul 3 sub 1 roll ] aload
/Points ED n 2 mul -2 roll } { false NArray } ifelse n 4 lt { n { pop
pop } repeat } { BAC /n n 4 sub def n { NAC } repeat EAC } ifelse } def
/ClosedCurve { NArray n 3 lt { n { pop pop } repeat } { n 3 gt {
CheckClosed } if 6 copy n 2 mul 6 add 6 roll IC CC x y moveto n { NC }
repeat closepath pop pop } ifelse } def
/SQ { /r ED r r moveto r r neg L r neg r neg L r neg r L fill } def
/ST { /y ED /x ED x y moveto x neg y L 0 x L fill } def
/SP { /r ED gsave 0 r moveto 4 { 72 rotate 0 r L } repeat fill grestore }
def
/FontDot { DS 2 mul dup matrix scale matrix concatmatrix exch matrix
rotate matrix concatmatrix exch findfont exch makefont setfont } def
/Rect { x1 y1 y2 add 2 div moveto x1 y2 lineto x2 y2 lineto x2 y1 lineto
x1 y1 lineto closepath } def
/OvalFrame { x1 x2 eq y1 y2 eq or { pop pop x1 y1 moveto x2 y2 L } { y1
y2 sub abs x1 x2 sub abs 2 copy gt { exch pop } { pop } ifelse 2 div
exch { dup 3 1 roll mul exch } if 2 copy lt { pop } { exch pop } ifelse
/b ED x1 y1 y2 add 2 div moveto x1 y2 x2 y2 b arcto x2 y2 x2 y1 b arcto
x2 y1 x1 y1 b arcto x1 y1 x1 y2 b arcto 16 { pop } repeat closepath }
ifelse } def
/Frame { CLW mul /a ED 3 -1 roll 2 copy gt { exch } if a sub /y2 ED a add
/y1 ED 2 copy gt { exch } if a sub /x2 ED a add /x1 ED 1 index 0 eq {
pop pop Rect } { OvalFrame } ifelse } def
/BezierNArray { /f ED counttomark 2 div dup cvi /n ED n eq not { exch pop
} if n 1 sub neg 3 mod 3 add 3 mod { 0 0 /n n 1 add def } repeat f { ]
aload /Points ED } { n 2 mul 1 add -1 roll pop } ifelse } def
/OpenBezier { BezierNArray n 1 eq { pop pop } { ArrowA n 4 sub 3 idiv { 6
2 roll 4 2 roll curveto } repeat 6 2 roll 4 2 roll ArrowB curveto }
ifelse } def
/ClosedBezier { BezierNArray n 1 eq { pop pop } { moveto n 1 sub 3 idiv {
6 2 roll 4 2 roll curveto } repeat closepath } ifelse } def
/BezierShowPoints { gsave Points aload length 2 div cvi /n ED moveto n 1
sub { lineto } repeat CLW 2 div SLW [ 4 4 ] 0 setdash stroke grestore }
def
/Parab { /y0 exch def /x0 exch def /y1 exch def /x1 exch def /dx x0 x1
sub 3 div def /dy y0 y1 sub 3 div def x0 dx sub y0 dy add x1 y1 ArrowA
x0 dx add y0 dy add x0 2 mul x1 sub y1 ArrowB curveto /Points [ x1 y1 x0
y0 x0 2 mul x1 sub y1 ] def } def
/Grid { newpath /a 4 string def /b ED /c ED /n ED cvi dup 1 lt { pop 1 }
if /s ED s div dup 0 eq { pop 1 } if /dy ED s div dup 0 eq { pop 1 } if
/dx ED dy div round dy mul /y0 ED dx div round dx mul /x0 ED dy div
round cvi /y2 ED dx div round cvi /x2 ED dy div round cvi /y1 ED dx div
round cvi /x1 ED /h y2 y1 sub 0 gt { 1 } { -1 } ifelse def /w x2 x1 sub
0 gt { 1 } { -1 } ifelse def b 0 gt { /z1 b 4 div CLW 2 div add def
/Helvetica findfont b scalefont setfont /b b .95 mul CLW 2 div add def }
if systemdict /setstrokeadjust known { true setstrokeadjust /t { } def }
{ /t { transform 0.25 sub round 0.25 add exch 0.25 sub round 0.25 add
exch itransform } bind def } ifelse gsave n 0 gt { 1 setlinecap [ 0 dy n
div ] dy n div 2 div setdash } { 2 setlinecap } ifelse /i x1 def /f y1
dy mul n 0 gt { dy n div 2 div h mul sub } if def /g y2 dy mul n 0 gt {
dy n div 2 div h mul add } if def x2 x1 sub w mul 1 add dup 1000 gt {
pop 1000 } if { i dx mul dup y0 moveto b 0 gt { gsave c i a cvs dup
stringwidth pop /z2 ED w 0 gt {z1} {z1 z2 add neg} ifelse h 0 gt {b neg}
{z1} ifelse rmoveto show grestore } if dup t f moveto g t L stroke /i i
w add def } repeat grestore gsave n 0 gt
% DG/SR modification begin - Nov. 7, 1997 - Patch 1
%{ 1 setlinecap [ 0 dx n div ] dy n div 2 div setdash }
{ 1 setlinecap [ 0 dx n div ] dx n div 2 div setdash }
% DG/SR modification end
{ 2 setlinecap } ifelse /i y1 def /f x1 dx mul
n 0 gt { dx n div 2 div w mul sub } if def /g x2 dx mul n 0 gt { dx n
div 2 div w mul add } if def y2 y1 sub h mul 1 add dup 1000 gt { pop
1000 } if { newpath i dy mul dup x0 exch moveto b 0 gt { gsave c i a cvs
dup stringwidth pop /z2 ED w 0 gt {z1 z2 add neg} {z1} ifelse h 0 gt
{z1} {b neg} ifelse rmoveto show grestore } if dup f exch t moveto g
exch t L stroke /i i h add def } repeat grestore } def
/ArcArrow { /d ED /b ED /a ED gsave newpath 0 -1000 moveto clip newpath 0
1 0 0 b grestore c mul /e ED pop pop pop r a e d PtoC y add exch x add
exch r a PtoC y add exch x add exch b pop pop pop pop a e d CLW 8 div c
mul neg d } def
/Ellipse { /mtrx CM def T scale 0 0 1 5 3 roll arc mtrx setmatrix } def
/Rot { CP CP translate 3 -1 roll neg rotate NET } def
/RotBegin { tx@Dict /TMatrix known not { /TMatrix { } def /RAngle { 0 }
def } if /TMatrix [ TMatrix CM ] cvx def /a ED a Rot /RAngle [ RAngle
dup a add ] cvx def } def
/RotEnd { /TMatrix [ TMatrix setmatrix ] cvx def /RAngle [ RAngle pop ]
cvx def } def
/PutCoor { gsave CP T CM STV exch exec moveto setmatrix CP grestore } def
/PutBegin { /TMatrix [ TMatrix CM ] cvx def CP 4 2 roll T moveto } def
/PutEnd { CP /TMatrix [ TMatrix setmatrix ] cvx def moveto } def
/Uput { /a ED add 2 div /h ED 2 div /w ED /s a sin def /c a cos def /b s
abs c abs 2 copy gt dup /q ED { pop } { exch pop } ifelse def /w1 c b
div w mul def /h1 s b div h mul def q { w1 abs w sub dup c mul abs } {
h1 abs h sub dup s mul abs } ifelse } def
/UUput { /z ED abs /y ED /x ED q { x s div c mul abs y gt } { x c div s
mul abs y gt } ifelse { x x mul y y mul sub z z mul add sqrt z add } { q
{ x s div } { x c div } ifelse abs } ifelse a PtoC h1 add exch w1 add
exch } def
/BeginOL { dup (all) eq exch TheOL eq or { IfVisible not { Visible
/IfVisible true def } if } { IfVisible { Invisible /IfVisible false def
} if } ifelse } def
/InitOL { /OLUnit [ 3000 3000 matrix defaultmatrix dtransform ] cvx def
/Visible { CP OLUnit idtransform T moveto } def /Invisible { CP OLUnit
neg exch neg exch idtransform T moveto } def /BOL { BeginOL } def
/IfVisible true def } def
end
% END pstricks.pro
%%EndProcSet
%%BeginProcSet: pst-dots.pro
%!PS-Adobe-2.0
%%Title: Dot Font for PSTricks
%%Creator: Timothy Van Zandt
%%Creation Date: May 7, 1993
%% Version 97 patch 1, 99/12/16
%% Modified by Etienne Riga - Dec. 16, 1999
%% to add /Diamond, /SolidDiamond and /BoldDiamond
10 dict dup begin
/FontType 3 def
/FontMatrix [ .001 0 0 .001 0 0 ] def
/FontBBox [ 0 0 0 0 ] def
/Encoding 256 array def
0 1 255 { Encoding exch /.notdef put } for
Encoding
dup (b) 0 get /Bullet put
dup (c) 0 get /Circle put
dup (C) 0 get /BoldCircle put
dup (u) 0 get /SolidTriangle put
dup (t) 0 get /Triangle put
dup (T) 0 get /BoldTriangle put
dup (r) 0 get /SolidSquare put
dup (s) 0 get /Square put
dup (S) 0 get /BoldSquare put
dup (q) 0 get /SolidPentagon put
dup (p) 0 get /Pentagon put
dup (P) 0 get /BoldPentagon put
% DG/SR modification begin - Dec. 16, 1999 - From Etienne Riga
dup (l) 0 get /SolidDiamond put
dup (d) 0 get /Diamond put
(D) 0 get /BoldDiamond put
% DG/SR modification end
/Metrics 13 dict def
Metrics begin
/Bullet 1000 def
/Circle 1000 def
/BoldCircle 1000 def
/SolidTriangle 1344 def
/Triangle 1344 def
/BoldTriangle 1344 def
/SolidSquare 886 def
/Square 886 def
/BoldSquare 886 def
/SolidPentagon 1093.2 def
/Pentagon 1093.2 def
/BoldPentagon 1093.2 def
% DG/SR modification begin - Dec. 16, 1999 - From Etienne Riga
/SolidDiamond 1008 def
/Diamond 1008 def
/BoldDiamond 1008 def
% DG/SR modification end
/.notdef 0 def
end
/BBoxes 13 dict def
BBoxes begin
/Circle { -550 -550 550 550 } def
/BoldCircle /Circle load def
/Bullet /Circle load def
/Triangle { -571.5 -330 571.5 660 } def
/BoldTriangle /Triangle load def
/SolidTriangle /Triangle load def
/Square { -450 -450 450 450 } def
/BoldSquare /Square load def
/SolidSquare /Square load def
/Pentagon { -546.6 -465 546.6 574.7 } def
/BoldPentagon /Pentagon load def
/SolidPentagon /Pentagon load def
% DG/SR modification begin - Dec. 16, 1999 - From Etienne Riga
/Diamond { -428.5 -742.5 428.5 742.5 } def
/BoldDiamond /Diamond load def
/SolidDiamond /Diamond load def
% DG/SR modification end
/.notdef { 0 0 0 0 } def
end
/CharProcs 20 dict def
CharProcs begin
/Adjust {
2 copy dtransform floor .5 add exch floor .5 add exch idtransform
3 -1 roll div 3 1 roll exch div exch scale
} def
/CirclePath { 0 0 500 0 360 arc closepath } def
/Bullet { 500 500 Adjust CirclePath fill } def
/Circle { 500 500 Adjust CirclePath .9 .9 scale CirclePath
eofill } def
/BoldCircle { 500 500 Adjust CirclePath .8 .8 scale CirclePath
eofill } def
/BoldCircle { CirclePath .8 .8 scale CirclePath eofill } def
/TrianglePath { 0 660 moveto -571.5 -330 lineto 571.5 -330 lineto
closepath } def
/SolidTriangle { TrianglePath fill } def
/Triangle { TrianglePath .85 .85 scale TrianglePath eofill } def
/BoldTriangle { TrianglePath .7 .7 scale TrianglePath eofill } def
/SquarePath { -450 450 moveto 450 450 lineto 450 -450 lineto
-450 -450 lineto closepath } def
/SolidSquare { SquarePath fill } def
/Square { SquarePath .89 .89 scale SquarePath eofill } def
/BoldSquare { SquarePath .78 .78 scale SquarePath eofill } def
/PentagonPath {
-337.8 -465 moveto
337.8 -465 lineto
546.6 177.6 lineto
0 574.7 lineto
-546.6 177.6 lineto
closepath
} def
/SolidPentagon { PentagonPath fill } def
/Pentagon { PentagonPath .89 .89 scale PentagonPath eofill } def
/BoldPentagon { PentagonPath .78 .78 scale PentagonPath eofill } def
% DG/SR modification begin - Dec. 16, 1999 - From Etienne Riga
/DiamondPath { 0 742.5 moveto -428.5 0 lineto 0 -742.5 lineto
428.5 0 lineto closepath } def
/SolidDiamond { DiamondPath fill } def
/Diamond { DiamondPath .85 .85 scale DiamondPath eofill } def
/BoldDiamond { DiamondPath .7 .7 scale DiamondPath eofill } def
% DG/SR modification end
/.notdef { } def
end
/BuildGlyph {
exch
begin
Metrics 1 index get exec 0
BBoxes 3 index get exec
setcachedevice
CharProcs begin load exec end
end
} def
/BuildChar {
1 index /Encoding get exch get
1 index /BuildGlyph get exec
} bind def
end
/PSTricksDotFont exch definefont pop
%END pst-dots.pro
%%EndProcSet
%%BeginProcSet: pst-node.pro
%!
% PostScript prologue for pst-node.tex.
% Version 97 patch 1, 97/05/09.
% For distribution, see pstricks.tex.
%
/tx@NodeDict 400 dict def tx@NodeDict begin
tx@Dict begin /T /translate load def end
/NewNode { gsave /next ED dict dup 3 1 roll def exch { dup 3 1 roll def }
if begin tx@Dict begin STV CP T exec end /NodeMtrx CM def next end
grestore } def
/InitPnode { /Y ED /X ED /NodePos { NodeSep Cos mul NodeSep Sin mul } def
} def
/InitCnode { /r ED /Y ED /X ED /NodePos { NodeSep r add dup Cos mul exch
Sin mul } def } def
/GetRnodePos { Cos 0 gt { /dx r NodeSep add def } { /dx l NodeSep sub def
} ifelse Sin 0 gt { /dy u NodeSep add def } { /dy d NodeSep sub def }
ifelse dx Sin mul abs dy Cos mul abs gt { dy Cos mul Sin div dy } { dx
dup Sin mul Cos Div } ifelse } def
/InitRnode { /Y ED /X ED X sub /r ED /l X neg def Y add neg /d ED Y sub
/u ED /NodePos { GetRnodePos } def } def
/DiaNodePos { w h mul w Sin mul abs h Cos mul abs add Div NodeSep add dup
Cos mul exch Sin mul } def
/TriNodePos { Sin s lt { d NodeSep sub dup Cos mul Sin Div exch } { w h
mul w Sin mul h Cos abs mul add Div NodeSep add dup Cos mul exch Sin mul
} ifelse } def
/InitTriNode { sub 2 div exch 2 div exch 2 copy T 2 copy 4 index index /d
ED pop pop pop pop -90 mul rotate /NodeMtrx CM def /X 0 def /Y 0 def d
sub abs neg /d ED d add /h ED 2 div h mul h d sub Div /w ED /s d w Atan
sin def /NodePos { TriNodePos } def } def
/OvalNodePos { /ww w NodeSep add def /hh h NodeSep add def Sin ww mul Cos
hh mul Atan dup cos ww mul exch sin hh mul } def
/GetCenter { begin X Y NodeMtrx transform CM itransform end } def
/XYPos { dup sin exch cos Do /Cos ED /Sin ED /Dist ED Cos 0 gt { Dist
Dist Sin mul Cos div } { Cos 0 lt { Dist neg Dist Sin mul Cos div neg }
{ 0 Dist Sin mul } ifelse } ifelse Do } def
/GetEdge { dup 0 eq { pop begin 1 0 NodeMtrx dtransform CM idtransform
exch atan sub dup sin /Sin ED cos /Cos ED /NodeSep ED NodePos NodeMtrx
dtransform CM idtransform end } { 1 eq {{exch}} {{}} ifelse /Do ED pop
XYPos } ifelse } def
/AddOffset { 1 index 0 eq { pop pop } { 2 copy 5 2 roll cos mul add 4 1
roll sin mul sub exch } ifelse } def
/GetEdgeA { NodeSepA AngleA NodeA NodeSepTypeA GetEdge OffsetA AngleA
AddOffset yA add /yA1 ED xA add /xA1 ED } def
/GetEdgeB { NodeSepB AngleB NodeB NodeSepTypeB GetEdge OffsetB AngleB
AddOffset yB add /yB1 ED xB add /xB1 ED } def
/GetArmA { ArmTypeA 0 eq { /xA2 ArmA AngleA cos mul xA1 add def /yA2 ArmA
AngleA sin mul yA1 add def } { ArmTypeA 1 eq {{exch}} {{}} ifelse /Do ED
ArmA AngleA XYPos OffsetA AngleA AddOffset yA add /yA2 ED xA add /xA2 ED
} ifelse } def
/GetArmB { ArmTypeB 0 eq { /xB2 ArmB AngleB cos mul xB1 add def /yB2 ArmB
AngleB sin mul yB1 add def } { ArmTypeB 1 eq {{exch}} {{}} ifelse /Do ED
ArmB AngleB XYPos OffsetB AngleB AddOffset yB add /yB2 ED xB add /xB2 ED
} ifelse } def
/InitNC { /b ED /a ED /NodeSepTypeB ED /NodeSepTypeA ED /NodeSepB ED
/NodeSepA ED /OffsetB ED /OffsetA ED tx@NodeDict a known tx@NodeDict b
known and dup { /NodeA a load def /NodeB b load def NodeA GetCenter /yA
ED /xA ED NodeB GetCenter /yB ED /xB ED } if } def
/LPutLine { 4 copy 3 -1 roll sub neg 3 1 roll sub Atan /NAngle ED 1 t sub
mul 3 1 roll 1 t sub mul 4 1 roll t mul add /Y ED t mul add /X ED } def
/LPutLines { mark LPutVar counttomark 2 div 1 sub /n ED t floor dup n gt
{ pop n 1 sub /t 1 def } { dup t sub neg /t ED } ifelse cvi 2 mul { pop
} repeat LPutLine cleartomark } def
/BezierMidpoint { /y3 ED /x3 ED /y2 ED /x2 ED /y1 ED /x1 ED /y0 ED /x0 ED
/t ED /cx x1 x0 sub 3 mul def /cy y1 y0 sub 3 mul def /bx x2 x1 sub 3
mul cx sub def /by y2 y1 sub 3 mul cy sub def /ax x3 x0 sub cx sub bx
sub def /ay y3 y0 sub cy sub by sub def ax t 3 exp mul bx t t mul mul
add cx t mul add x0 add ay t 3 exp mul by t t mul mul add cy t mul add
y0 add 3 ay t t mul mul mul 2 by t mul mul add cy add 3 ax t t mul mul
mul 2 bx t mul mul add cx add atan /NAngle ED /Y ED /X ED } def
/HPosBegin { yB yA ge { /t 1 t sub def } if /Y yB yA sub t mul yA add def
} def
/HPosEnd { /X Y yyA sub yyB yyA sub Div xxB xxA sub mul xxA add def
/NAngle yyB yyA sub xxB xxA sub Atan def } def
/HPutLine { HPosBegin /yyA ED /xxA ED /yyB ED /xxB ED HPosEnd } def
/HPutLines { HPosBegin yB yA ge { /check { le } def } { /check { ge } def
} ifelse /xxA xA def /yyA yA def mark xB yB LPutVar { dup Y check { exit
} { /yyA ED /xxA ED } ifelse } loop /yyB ED /xxB ED cleartomark HPosEnd
} def
/VPosBegin { xB xA lt { /t 1 t sub def } if /X xB xA sub t mul xA add def
} def
/VPosEnd { /Y X xxA sub xxB xxA sub Div yyB yyA sub mul yyA add def
/NAngle yyB yyA sub xxB xxA sub Atan def } def
/VPutLine { VPosBegin /yyA ED /xxA ED /yyB ED /xxB ED VPosEnd } def
/VPutLines { VPosBegin xB xA ge { /check { le } def } { /check { ge } def
} ifelse /xxA xA def /yyA yA def mark xB yB LPutVar { 1 index X check {
exit } { /yyA ED /xxA ED } ifelse } loop /yyB ED /xxB ED cleartomark
VPosEnd } def
/HPutCurve { gsave newpath /SaveLPutVar /LPutVar load def LPutVar 8 -2
roll moveto curveto flattenpath /LPutVar [ {} {} {} {} pathforall ] cvx
def grestore exec /LPutVar /SaveLPutVar load def } def
/NCCoor { /AngleA yB yA sub xB xA sub Atan def /AngleB AngleA 180 add def
GetEdgeA GetEdgeB /LPutVar [ xB1 yB1 xA1 yA1 ] cvx def /LPutPos {
LPutVar LPutLine } def /HPutPos { LPutVar HPutLine } def /VPutPos {
LPutVar VPutLine } def LPutVar } def
/NCLine { NCCoor tx@Dict begin ArrowA CP 4 2 roll ArrowB lineto pop pop
end } def
/NCLines { false NArray n 0 eq { NCLine } { 2 copy yA sub exch xA sub
Atan /AngleA ED n 2 mul dup index exch index yB sub exch xB sub Atan
/AngleB ED GetEdgeA GetEdgeB /LPutVar [ xB1 yB1 n 2 mul 4 add 4 roll xA1
yA1 ] cvx def mark LPutVar tx@Dict begin false Line end /LPutPos {
LPutLines } def /HPutPos { HPutLines } def /VPutPos { VPutLines } def }
ifelse } def
/NCCurve { GetEdgeA GetEdgeB xA1 xB1 sub yA1 yB1 sub Pyth 2 div dup 3 -1
roll mul /ArmA ED mul /ArmB ED /ArmTypeA 0 def /ArmTypeB 0 def GetArmA
GetArmB xA2 yA2 xA1 yA1 tx@Dict begin ArrowA end xB2 yB2 xB1 yB1 tx@Dict
begin ArrowB end curveto /LPutVar [ xA1 yA1 xA2 yA2 xB2 yB2 xB1 yB1 ]
cvx def /LPutPos { t LPutVar BezierMidpoint } def /HPutPos { { HPutLines
} HPutCurve } def /VPutPos { { VPutLines } HPutCurve } def } def
/NCAngles { GetEdgeA GetEdgeB GetArmA GetArmB /mtrx AngleA matrix rotate
def xA2 yA2 mtrx transform pop xB2 yB2 mtrx transform exch pop mtrx
itransform /y0 ED /x0 ED mark ArmB 0 ne { xB1 yB1 } if xB2 yB2 x0 y0 xA2
yA2 ArmA 0 ne { xA1 yA1 } if tx@Dict begin false Line end /LPutVar [ xB1
yB1 xB2 yB2 x0 y0 xA2 yA2 xA1 yA1 ] cvx def /LPutPos { LPutLines } def
/HPutPos { HPutLines } def /VPutPos { VPutLines } def } def
/NCAngle { GetEdgeA GetEdgeB GetArmB /mtrx AngleA matrix rotate def xB2
yB2 mtrx itransform pop xA1 yA1 mtrx itransform exch pop mtrx transform
/y0 ED /x0 ED mark ArmB 0 ne { xB1 yB1 } if xB2 yB2 x0 y0 xA1 yA1
tx@Dict begin false Line end /LPutVar [ xB1 yB1 xB2 yB2 x0 y0 xA1 yA1 ]
cvx def /LPutPos { LPutLines } def /HPutPos { HPutLines } def /VPutPos {
VPutLines } def } def
/NCBar { GetEdgeA GetEdgeB GetArmA GetArmB /mtrx AngleA matrix rotate def
xA2 yA2 mtrx itransform pop xB2 yB2 mtrx itransform pop sub dup 0 mtrx
transform 3 -1 roll 0 gt { /yB2 exch yB2 add def /xB2 exch xB2 add def }
{ /yA2 exch neg yA2 add def /xA2 exch neg xA2 add def } ifelse mark ArmB
0 ne { xB1 yB1 } if xB2 yB2 xA2 yA2 ArmA 0 ne { xA1 yA1 } if tx@Dict
begin false Line end /LPutVar [ xB1 yB1 xB2 yB2 xA2 yA2 xA1 yA1 ] cvx
def /LPutPos { LPutLines } def /HPutPos { HPutLines } def /VPutPos {
VPutLines } def } def
/NCDiag { GetEdgeA GetEdgeB GetArmA GetArmB mark ArmB 0 ne { xB1 yB1 } if
xB2 yB2 xA2 yA2 ArmA 0 ne { xA1 yA1 } if tx@Dict begin false Line end
/LPutVar [ xB1 yB1 xB2 yB2 xA2 yA2 xA1 yA1 ] cvx def /LPutPos {
LPutLines } def /HPutPos { HPutLines } def /VPutPos { VPutLines } def }
def
/NCDiagg { GetEdgeA GetArmA yB yA2 sub xB xA2 sub Atan 180 add /AngleB ED
GetEdgeB mark xB1 yB1 xA2 yA2 ArmA 0 ne { xA1 yA1 } if tx@Dict begin
false Line end /LPutVar [ xB1 yB1 xA2 yA2 xA1 yA1 ] cvx def /LPutPos {
LPutLines } def /HPutPos { HPutLines } def /VPutPos { VPutLines } def }
def
/NCLoop { GetEdgeA GetEdgeB GetArmA GetArmB /mtrx AngleA matrix rotate
def xA2 yA2 mtrx transform loopsize add /yA3 ED /xA3 ED /xB3 xB2 yB2
mtrx transform pop def xB3 yA3 mtrx itransform /yB3 ED /xB3 ED xA3 yA3
mtrx itransform /yA3 ED /xA3 ED mark ArmB 0 ne { xB1 yB1 } if xB2 yB2
xB3 yB3 xA3 yA3 xA2 yA2 ArmA 0 ne { xA1 yA1 } if tx@Dict begin false
Line end /LPutVar [ xB1 yB1 xB2 yB2 xB3 yB3 xA3 yA3 xA2 yA2 xA1 yA1 ]
cvx def /LPutPos { LPutLines } def /HPutPos { HPutLines } def /VPutPos {
VPutLines } def } def
% DG/SR modification begin - May 9, 1997 - Patch 1
%/NCCircle { 0 0 NodesepA nodeA \tx@GetEdge pop xA sub 2 div dup 2 exp r
%r mul sub abs sqrt atan 2 mul /a ED r AngleA 90 add PtoC yA add exch xA add
%exch 2 copy /LPutVar [ 4 2 roll r AngleA ] cvx def /LPutPos { LPutVar t 360
%mul add dup 5 1 roll 90 sub \tx@PtoC 3 -1 roll add /Y ED add /X ED /NAngle ED
/NCCircle { NodeSepA 0 NodeA 0 GetEdge pop 2 div dup 2 exp r
r mul sub abs sqrt atan 2 mul /a ED r AngleA 90 add PtoC yA add exch xA add
exch 2 copy /LPutVar [ 4 2 roll r AngleA ] cvx def /LPutPos { LPutVar t 360
mul add dup 5 1 roll 90 sub PtoC 3 -1 roll add /Y ED add /X ED /NAngle ED
% DG/SR modification end
} def /HPutPos { LPutPos } def /VPutPos { LPutPos } def r AngleA 90 sub a add
AngleA 270 add a sub tx@Dict begin /angleB ED /angleA ED /r ED /c 57.2957 r
Div def /y ED /x ED } def
/NCBox { /d ED /h ED /AngleB yB yA sub xB xA sub Atan def /AngleA AngleB
180 add def GetEdgeA GetEdgeB /dx d AngleB sin mul def /dy d AngleB cos
mul neg def /hx h AngleB sin mul neg def /hy h AngleB cos mul def
/LPutVar [ xA1 hx add yA1 hy add xB1 hx add yB1 hy add xB1 dx add yB1 dy
add xA1 dx add yA1 dy add ] cvx def /LPutPos { LPutLines } def /HPutPos
{ xB yB xA yA LPutLine } def /VPutPos { HPutPos } def mark LPutVar
tx@Dict begin false Polygon end } def
/NCArcBox { /l ED neg /d ED /h ED /a ED /AngleA yB yA sub xB xA sub Atan
def /AngleB AngleA 180 add def /tA AngleA a sub 90 add def /tB tA a 2
mul add def /r xB xA sub tA cos tB cos sub Div dup 0 eq { pop 1 } if def
/x0 xA r tA cos mul add def /y0 yA r tA sin mul add def /c 57.2958 r div
def /AngleA AngleA a sub 180 add def /AngleB AngleB a add 180 add def
GetEdgeA GetEdgeB /AngleA tA 180 add yA yA1 sub xA xA1 sub Pyth c mul
sub def /AngleB tB 180 add yB yB1 sub xB xB1 sub Pyth c mul add def l 0
eq { x0 y0 r h add AngleA AngleB arc x0 y0 r d add AngleB AngleA arcn }
{ x0 y0 translate /tA AngleA l c mul add def /tB AngleB l c mul sub def
0 0 r h add tA tB arc r h add AngleB PtoC r d add AngleB PtoC 2 copy 6 2
roll l arcto 4 { pop } repeat r d add tB PtoC l arcto 4 { pop } repeat 0
0 r d add tB tA arcn r d add AngleA PtoC r h add AngleA PtoC 2 copy 6 2
roll l arcto 4 { pop } repeat r h add tA PtoC l arcto 4 { pop } repeat }
ifelse closepath /LPutVar [ x0 y0 r AngleA AngleB h d ] cvx def /LPutPos
{ LPutVar /d ED /h ED /AngleB ED /AngleA ED /r ED /y0 ED /x0 ED t 1 le {
r h add AngleA 1 t sub mul AngleB t mul add dup 90 add /NAngle ED PtoC }
{ t 2 lt { /NAngle AngleB 180 add def r 2 t sub h mul t 1 sub d mul add
add AngleB PtoC } { t 3 lt { r d add AngleB 3 t sub mul AngleA 2 t sub
mul add dup 90 sub /NAngle ED PtoC } { /NAngle AngleA 180 add def r 4 t
sub d mul t 3 sub h mul add add AngleA PtoC } ifelse } ifelse } ifelse
y0 add /Y ED x0 add /X ED } def /HPutPos { LPutPos } def /VPutPos {
LPutPos } def } def
/Tfan { /AngleA yB yA sub xB xA sub Atan def GetEdgeA w xA1 xB sub yA1 yB
sub Pyth Pyth w Div CLW 2 div mul 2 div dup AngleA sin mul yA1 add /yA1
ED AngleA cos mul xA1 add /xA1 ED /LPutVar [ xA1 yA1 m { xB w add yB xB
w sub yB } { xB yB w sub xB yB w add } ifelse xA1 yA1 ] cvx def /LPutPos
{ LPutLines } def /VPutPos@ { LPutVar flag { 8 4 roll pop pop pop pop }
{ pop pop pop pop 4 2 roll } ifelse } def /VPutPos { VPutPos@ VPutLine }
def /HPutPos { VPutPos@ HPutLine } def mark LPutVar tx@Dict begin
/ArrowA { moveto } def /ArrowB { } def false Line closepath end } def
/LPutCoor { NAngle tx@Dict begin /NAngle ED end gsave CM STV CP Y sub neg
exch X sub neg exch moveto setmatrix CP grestore } def
/LPut { tx@NodeDict /LPutPos known { LPutPos } { CP /Y ED /X ED /NAngle 0
def } ifelse LPutCoor } def
/HPutAdjust { Sin Cos mul 0 eq { 0 } { d Cos mul Sin div flag not { neg }
if h Cos mul Sin div flag { neg } if 2 copy gt { pop } { exch pop }
ifelse } ifelse s add flag { r add neg } { l add } ifelse X add /X ED }
def
/VPutAdjust { Sin Cos mul 0 eq { 0 } { l Sin mul Cos div flag { neg } if
r Sin mul Cos div flag not { neg } if 2 copy gt { pop } { exch pop }
ifelse } ifelse s add flag { d add } { h add neg } ifelse Y add /Y ED }
def
end
% END pst-node.pro
%%EndProcSet
%%BeginProcSet: pst-coil.pro
%!
% PostScript prologue for pst-coil.tex.
% Version 97 patch 1, 98/06/02
% For distribution, see pstricks.tex.
%
/tx@CoilDict 40 dict def tx@CoilDict begin
/CoilLoop { /t ED t sin AspectSin mul t 180 div AspectCos mul add t cos
lineto } def
/Coil { /Inc ED dup sin /AspectSin ED cos /AspectCos ED /ArmB ED /ArmA ED
/h ED /w ED /y1 ED /x1 ED /y0 ED /x0 ED x0 y0 translate y1 y0 sub x1 x0
sub 2 copy Pyth /TotalLength ED Atan rotate /BeginAngle ArmA AspectCos
Div w h mul Div 360 mul def /EndAngle TotalLength ArmB sub AspectCos Div
w h mul Div 360 mul def 1 0 0 0 ArrowA ArmA 0 lineto /mtrx CM def w h
mul 2 Div w 2 Div scale BeginAngle Inc EndAngle { CoilLoop } for
EndAngle CoilLoop mtrx setmatrix TotalLength ArmB sub 0 lineto CP
% DG/SR modification begin - Jun. 2, 1998 - Patch 1 (from Michael Vulis)
% TotalLength 0 ArrowB lineto } def
TotalLength 0 ArrowB lineto
pop pop pop pop } def
% DG/SR modification end
/AltCoil { /Inc ED dup sin /AspectSin ED cos /AspectCos ED /h ED /w ED
/EndAngle ED /BeginAngle ED /mtrx CM def w h mul 2 Div w 2 Div scale
BeginAngle sin AspectSin mul BeginAngle 180 div AspectCos mul add
BeginAngle cos /lineto load stopped { moveto } if BeginAngle Inc
EndAngle { CoilLoop } for EndAngle CoilLoop mtrx setmatrix } def
/ZigZag { /ArmB ED /ArmA ED 2 div /w ED w mul /h ED /y1 ED /x1 ED /y0 ED
/x0 ED x1 y1 translate y0 y1 sub x0 x1 sub 2 copy Pyth /TotalLength ED
Atan rotate TotalLength ArmA sub ArmB sub dup h div cvi /n ED n h mul
sub 2 div dup ArmA add /ArmA ED ArmB add /ArmB ED /x ArmB h 2 div add
def mark 0 0 ArmB 0 n { x w /w w neg def /x x h add def } repeat
TotalLength ArmA sub 0 TotalLength 0 } def
end
% END pst-coil.pro
%%EndProcSet
%%BeginProcSet: 8r.enc
% File 8r.enc as of 2002-03-12 for PSNFSS 9
%
% This is the encoding vector for Type1 and TrueType fonts to be used
% with TeX. This file is part of the PSNFSS bundle, version 9
%
% Authors: S. Rahtz, P. MacKay, Alan Jeffrey, B. Horn, K. Berry, W. Schmidt
%
% Idea is to have all the characters normally included in Type 1 fonts
% available for typesetting. This is effectively the characters in Adobe
% Standard Encoding + ISO Latin 1 + extra characters from Lucida + Euro.
%
% Character code assignments were made as follows:
%
% (1) the Windows ANSI characters are almost all in their Windows ANSI
% positions, because some Windows users cannot easily reencode the
% fonts, and it makes no difference on other systems. The only Windows
% ANSI characters not available are those that make no sense for
% typesetting -- rubout (127 decimal), nobreakspace (160), softhyphen
% (173). quotesingle and grave are moved just because it's such an
% irritation not having them in TeX positions.
%
% (2) Remaining characters are assigned arbitrarily to the lower part
% of the range, avoiding 0, 10 and 13 in case we meet dumb software.
%
% (3) Y&Y Lucida Bright includes some extra text characters; in the
% hopes that other PostScript fonts, perhaps created for public
% consumption, will include them, they are included starting at 0x12.
%
% (4) Remaining positions left undefined are for use in (hopefully)
% upward-compatible revisions, if someday more characters are generally
% available.
%
% (5) hyphen appears twice for compatibility with both ASCII and Windows.
%
% (6) /Euro is assigned to 128, as in Windows ANSI
%
/TeXBase1Encoding [
% 0x00 (encoded characters from Adobe Standard not in Windows 3.1)
/.notdef /dotaccent /fi /fl
/fraction /hungarumlaut /Lslash /lslash
/ogonek /ring /.notdef
/breve /minus /.notdef
% These are the only two remaining unencoded characters, so may as
% well include them.
/Zcaron /zcaron
% 0x10
/caron /dotlessi
% (unusual TeX characters available in, e.g., Lucida Bright)
/dotlessj /ff /ffi /ffl
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
% very contentious; it's so painful not having quoteleft and quoteright
% at 96 and 145 that we move the things normally found there down to here.
/grave /quotesingle
% 0x20 (ASCII begins)
/space /exclam /quotedbl /numbersign
/dollar /percent /ampersand /quoteright
/parenleft /parenright /asterisk /plus /comma /hyphen /period /slash
% 0x30
/zero /one /two /three /four /five /six /seven
/eight /nine /colon /semicolon /less /equal /greater /question
% 0x40
/at /A /B /C /D /E /F /G /H /I /J /K /L /M /N /O
% 0x50
/P /Q /R /S /T /U /V /W
/X /Y /Z /bracketleft /backslash /bracketright /asciicircum /underscore
% 0x60
/quoteleft /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o
% 0x70
/p /q /r /s /t /u /v /w
/x /y /z /braceleft /bar /braceright /asciitilde
/.notdef % rubout; ASCII ends
% 0x80
/Euro /.notdef /quotesinglbase /florin
/quotedblbase /ellipsis /dagger /daggerdbl
/circumflex /perthousand /Scaron /guilsinglleft
/OE /.notdef /.notdef /.notdef
% 0x90
/.notdef /.notdef /.notdef /quotedblleft
/quotedblright /bullet /endash /emdash
/tilde /trademark /scaron /guilsinglright
/oe /.notdef /.notdef /Ydieresis
% 0xA0
/.notdef % nobreakspace
/exclamdown /cent /sterling
/currency /yen /brokenbar /section
/dieresis /copyright /ordfeminine /guillemotleft
/logicalnot
/hyphen % Y&Y (also at 45); Windows' softhyphen
/registered
/macron
% 0xD0
/degree /plusminus /twosuperior /threesuperior
/acute /mu /paragraph /periodcentered
/cedilla /onesuperior /ordmasculine /guillemotright
/onequarter /onehalf /threequarters /questiondown
% 0xC0
/Agrave /Aacute /Acircumflex /Atilde /Adieresis /Aring /AE /Ccedilla
/Egrave /Eacute /Ecircumflex /Edieresis
/Igrave /Iacute /Icircumflex /Idieresis
% 0xD0
/Eth /Ntilde /Ograve /Oacute
/Ocircumflex /Otilde /Odieresis /multiply
/Oslash /Ugrave /Uacute /Ucircumflex
/Udieresis /Yacute /Thorn /germandbls
% 0xE0
/agrave /aacute /acircumflex /atilde
/adieresis /aring /ae /ccedilla
/egrave /eacute /ecircumflex /edieresis
/igrave /iacute /icircumflex /idieresis
% 0xF0
/eth /ntilde /ograve /oacute
/ocircumflex /otilde /odieresis /divide
/oslash /ugrave /uacute /ucircumflex
/udieresis /yacute /thorn /ydieresis
] def
%%EndProcSet
%%BeginProcSet: texps.pro
%!
TeXDict begin/rf{findfont dup length 1 add dict begin{1 index/FID ne 2
index/UniqueID ne and{def}{pop pop}ifelse}forall[1 index 0 6 -1 roll
exec 0 exch 5 -1 roll VResolution Resolution div mul neg 0 0]FontType 0
ne{/Metrics exch def dict begin Encoding{exch dup type/integertype ne{
pop pop 1 sub dup 0 le{pop}{[}ifelse}{FontMatrix 0 get div Metrics 0 get
div def}ifelse}forall Metrics/Metrics currentdict end def}{{1 index type
/nametype eq{exit}if exch pop}loop}ifelse[2 index currentdict end
definefont 3 -1 roll makefont/setfont cvx]cvx def}def/ObliqueSlant{dup
sin S cos div neg}B/SlantFont{4 index mul add}def/ExtendFont{3 -1 roll
mul exch}def/ReEncodeFont{CharStrings rcheck{/Encoding false def dup[
exch{dup CharStrings exch known not{pop/.notdef/Encoding true def}if}
forall Encoding{]exch pop}{cleartomark}ifelse}if/Encoding exch def}def
end
%%EndProcSet
%%BeginProcSet: special.pro
%!
TeXDict begin/SDict 200 dict N SDict begin/@SpecialDefaults{/hs 612 N
/vs 792 N/ho 0 N/vo 0 N/hsc 1 N/vsc 1 N/ang 0 N/CLIP 0 N/rwiSeen false N
/rhiSeen false N/letter{}N/note{}N/a4{}N/legal{}N}B/@scaleunit 100 N
/@hscale{@scaleunit div/hsc X}B/@vscale{@scaleunit div/vsc X}B/@hsize{
/hs X/CLIP 1 N}B/@vsize{/vs X/CLIP 1 N}B/@clip{/CLIP 2 N}B/@hoffset{/ho
X}B/@voffset{/vo X}B/@angle{/ang X}B/@rwi{10 div/rwi X/rwiSeen true N}B
/@rhi{10 div/rhi X/rhiSeen true N}B/@llx{/llx X}B/@lly{/lly X}B/@urx{
/urx X}B/@ury{/ury X}B/magscale true def end/@MacSetUp{userdict/md known
{userdict/md get type/dicttype eq{userdict begin md length 10 add md
maxlength ge{/md md dup length 20 add dict copy def}if end md begin
/letter{}N/note{}N/legal{}N/od{txpose 1 0 mtx defaultmatrix dtransform S
atan/pa X newpath clippath mark{transform{itransform moveto}}{transform{
itransform lineto}}{6 -2 roll transform 6 -2 roll transform 6 -2 roll
transform{itransform 6 2 roll itransform 6 2 roll itransform 6 2 roll
curveto}}{{closepath}}pathforall newpath counttomark array astore/gc xdf
pop ct 39 0 put 10 fz 0 fs 2 F/|______Courier fnt invertflag{PaintBlack}
if}N/txpose{pxs pys scale ppr aload pop por{noflips{pop S neg S TR pop 1
-1 scale}if xflip yflip and{pop S neg S TR 180 rotate 1 -1 scale ppr 3
get ppr 1 get neg sub neg ppr 2 get ppr 0 get neg sub neg TR}if xflip
yflip not and{pop S neg S TR pop 180 rotate ppr 3 get ppr 1 get neg sub
neg 0 TR}if yflip xflip not and{ppr 1 get neg ppr 0 get neg TR}if}{
noflips{TR pop pop 270 rotate 1 -1 scale}if xflip yflip and{TR pop pop
90 rotate 1 -1 scale ppr 3 get ppr 1 get neg sub neg ppr 2 get ppr 0 get
neg sub neg TR}if xflip yflip not and{TR pop pop 90 rotate ppr 3 get ppr
1 get neg sub neg 0 TR}if yflip xflip not and{TR pop pop 270 rotate ppr
2 get ppr 0 get neg sub neg 0 S TR}if}ifelse scaleby96{ppr aload pop 4
-1 roll add 2 div 3 1 roll add 2 div 2 copy TR .96 dup scale neg S neg S
TR}if}N/cp{pop pop showpage pm restore}N end}if}if}N/normalscale{
Resolution 72 div VResolution 72 div neg scale magscale{DVImag dup scale
}if 0 setgray}N/psfts{S 65781.76 div N}N/startTexFig{/psf$SavedState
save N userdict maxlength dict begin/magscale true def normalscale
currentpoint TR/psf$ury psfts/psf$urx psfts/psf$lly psfts/psf$llx psfts
/psf$y psfts/psf$x psfts currentpoint/psf$cy X/psf$cx X/psf$sx psf$x
psf$urx psf$llx sub div N/psf$sy psf$y psf$ury psf$lly sub div N psf$sx
psf$sy scale psf$cx psf$sx div psf$llx sub psf$cy psf$sy div psf$ury sub
TR/showpage{}N/erasepage{}N/setpagedevice{pop}N/copypage{}N/p 3 def
@MacSetUp}N/doclip{psf$llx psf$lly psf$urx psf$ury currentpoint 6 2 roll
newpath 4 copy 4 2 roll moveto 6 -1 roll S lineto S lineto S lineto
closepath clip newpath moveto}N/endTexFig{end psf$SavedState restore}N
/@beginspecial{SDict begin/SpecialSave save N gsave normalscale
currentpoint TR @SpecialDefaults count/ocount X/dcount countdictstack N}
N/@setspecial{CLIP 1 eq{newpath 0 0 moveto hs 0 rlineto 0 vs rlineto hs
neg 0 rlineto closepath clip}if ho vo TR hsc vsc scale ang rotate
rwiSeen{rwi urx llx sub div rhiSeen{rhi ury lly sub div}{dup}ifelse
scale llx neg lly neg TR}{rhiSeen{rhi ury lly sub div dup scale llx neg
lly neg TR}if}ifelse CLIP 2 eq{newpath llx lly moveto urx lly lineto urx
ury lineto llx ury lineto closepath clip}if/showpage{}N/erasepage{}N
/setpagedevice{pop}N/copypage{}N newpath}N/@endspecial{count ocount sub{
pop}repeat countdictstack dcount sub{end}repeat grestore SpecialSave
restore end}N/@defspecial{SDict begin}N/@fedspecial{end}B/li{lineto}B
/rl{rlineto}B/rc{rcurveto}B/np{/SaveX currentpoint/SaveY X N 1
setlinecap newpath}N/st{stroke SaveX SaveY moveto}N/fil{fill SaveX SaveY
moveto}N/ellipse{/endangle X/startangle X/yrad X/xrad X/savematrix
matrix currentmatrix N TR xrad yrad scale 0 0 1 startangle endangle arc
savematrix setmatrix}N end
%%EndProcSet
%%BeginFont: CMITT10
%!PS-AdobeFont-1.1: CMITT10 1.0
%%CreationDate: 1991 Aug 18 17:48:50
% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
11 dict begin
/FontInfo 7 dict dup begin
/version (1.0) readonly def
/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
/FullName (CMITT10) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle -14.04 def
/isFixedPitch true def
end readonly def
/FontName /CMITT10 def
/PaintType 0 def
/FontType 1 def
/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 97 /a put
dup 98 /b put
dup 100 /d put
dup 101 /e put
dup 104 /h put
dup 105 /i put
dup 108 /l put
dup 111 /o put
dup 112 /p put
dup 114 /r put
dup 115 /s put
dup 116 /t put
dup 117 /u put
dup 118 /v put
dup 119 /w put
dup 120 /x put
readonly def
/FontBBox{11 -233 669 696}readonly def
/UniqueID 5000779 def
currentdict end
currentfile eexec
D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
D919C2DDD26BDC0D99398B9F4D004D606918A40B8D7BFA821B73E118040992A4
E1BF99740F8FAA47E4349853C8149C0F8BE2F23C6F332BC0373C867D0715E8FA
FF163A60AFD0FED665D5829739975C5DE12EB30895604D211F645D4E13330DB7
64B6E35463C93B752F691FDDC44595B0A0E9E57C6F649809C4DBC7DB58102A60
46349E9A5740893A1BD4536B99ECE72B147B713619037400669C07291022F84F
4F3302F8244D2F0F1380466E81E0B5E00AF33E021A55620A7A93F3BD49C7040A
67C096167F502EF2051B526405B9391B4340A3FFEC103E317E315A88D31661E1
7E4104A2B925D1DDA9586861904FF6FFCE6A8E808385E4C4014F5A494874E2FB
C3758D6989AB68C4CEF82F92B9439794FC404A29D086ED6B27997735BC3A24F0
473FFD74BAECF5282E2EBFCB92D69B81C568D394055E2E30A7E3F448796E4EB8
019AC2E075377F777183BD87FDD194E855ABFA35AFA73304DBB181C267431B16
70456FD8470B525011891C1E140B8FF24A474B89F1CEAAB509F91FCAF512E16D
8413BAC0C664FDCD31245C5996F4883305D3EDF1C8D1E6F0B1E79A06028BBDDF
6AA5B515DF33BA8FFF2394262F3FE1DF95AD661322BFA5179E325BD1B1EECE49
69F64789FF1BE8DE5CD7485571A07471BD6CAB4891BAB122BE4C4A1B7176F33E
A1A434F745811B71EA8AF73407F32E9F4EAAE1C1FAA979523C18A24F754C307C
CE056DCB71B20292D4FBCBF9AB9E9B81DADAB90E60BE926315049E5BF0F50315
66D82E4963CB556F19461F43EF80302912AC1168884A1692AC59BFBC431B14AC
A5FC06C4AB595F9DF66CE5EB69568038445A9EDDE20CF92BA308A23178D8555C
78CCCF09E4E648AF4BE995779BDC661F16D3E69392546A9D38B8717311B5B462
58B8443E29A9C5BE561822F1926EF38E12C13783D5E2DBEA6748AABAE81C0FC4
23B7B71B1663174A0C0745DEBCE7B323C745D8F625E0D90DC1B4007F50E2C9EC
3142369959B85265B8DD67727CC63CB67A8CCCF700ABE8D064D6EC3F3BF303E4
58D669D49BC5C51D19FBDE1CF945CB1F75A89AFABCE0866D036A39DCA68AF1C8
60C89C52327B0311A09667EF5FC39E36C61D1AA61F9A5CA8A6D6D1048DC80FCA
6064CEBE764226AFF010622C69D5BB332E85B97E40591422D64D42CA97E22102
BD21ACAD1436F5D26A8663A854D3105DC0A4D9FF621F0CB870AF0F4D6820A17C
02353C90EDC6D0397F33575A0DFD9044D1F125A9CD41D200D1B601440357DD21
4B53C0B6B1111345C1919D7A26C8DDEA74C8F6709CF7401B94C5E56855D8224B
818BCDC6C768225C06C29579BFDBC94AC42F66FE6FF677DA6C862B501CE97AED
6CBDA212B1E4AA2EB928719758D50767D530B6737737825D1AB574A01204E6EB
59874BE32E5C827A582D50E053740FB0FEA07485089E0FB3675D6BAB2761A3C0
2465228002C424E27B990BD6F57BD9FEC5FA4A871225A3701F480144412BD923
D7B2650B50263CC4B02F43B59BA2A9A11EDCAD026FB93F3CD293F9421FB21A6B
3B44B629F6B81DB0891A529BA177B1383EEBE5CF50D2F415EEC78F7345E43F11
6BF307EC964A3AC7C1A557B1051BE5638BFDD18D2BDD5F76501491EFE603899B
D2F5B4AD087F536FBEE9E9957AC38D49C08B8A3B44A8243233E1C16B77571344
0FB006377234E1DA392FCCC93904EDBF2A19B94B1D3AB471F4518EE04DF5AF03
A08AE58A652E683C09432A0D190635A26DEA18960C791BAF82E8ABD9F382457C
A3C708318F97C85F7DFEC6A5163A71D8F6871DE42AC5C37F77168E891250FAE0
C39F2AF6040A6962C635E2C2E5FC4D3EE73F9ABCC973738AADED9F34977881F6
E685E482039DE4514696DCAA6A23A767198C127714D1138505557663B0A6B1CD
887058509C5757C1971B8E6994793D9CC0E7DD22F9B338B10AFED54128D88396
9E0B2DB221048627936ADC523AC2902061756C608E9134BAEFE417BFEF6E4C97
B8B4CC7D6E0518CABE53C0FBCC5560101A895F3DEF212A139DBE705DE520B3D7
7895FE95C33C6E472C16AA2237D414C7EDF780D08E4458A1F2CD856CCD1908E0
B88366AFBFB55FAAEBF5849CD2AD4ADBF571E9CAD4170610EAD4744BC8678974
D808267C9181672E807687FBE201E2CC3C29A836801F8722BE7D0910F878F962
F904445DA568DBE59735DF8E129487C0A217805BF69E7A565C18E9EAF3DF5030
A260825B958515DB6A1E45E07A7CC29F5D0B19F370D2A9F3DE275C8DB8C3909A
8DBCBDA79F7C631B36A5FBF1A952A03AD322E5CBA9085424EEC85529A0AF296C
25A568292EA43C3AC91205A9EAB8E45B0982FAECA807B25C2D52B6DF3B276D02
8A4D86FC0127199DFD0CF2E3306A81ABA119DA4D27B53AD0F524A88E45F89F7E
9AEF9EA349CB572D96C8190F66BB23756443BAED81F423742B4647C2A152756D
14B6EBEA56A5FA8C91DDBD1932291082137F7A2BBAB84F76F142C57F7935C04C
F8552EEA6AF846CE52D6E47FF5465A09F7F3E081393C83200139DC5760646220
40D6B81043B3C99921CAD7A8A556FCBC51D51A46E9CAEA7BAF861F3A672F83E0
509F608DC113AAC9657E4181AC02647DCE3BD0DCD65C6A9C9A3D5C2B849F8093
8A9473644FE38B64D41DD653FF4BF67C59D9F026E53FFF506ED65EB3B010A066
AD98F8D995E6D7ECC2E91987A4BE9860469B24642FB3557F31C5999FA16CC989
D6AC83A8B30D87657E292083147C6BD328E36177D57571F7649BB23CABE00A97
8B9E35DD8767187B67D5452EBD7CB5155ED1D86F9216AD86C010CEFC3B5910F7
71CB73CFBD0F4BF6121B5B5586723B79EFD91CFE588C4B340631BD1AF0FB1716
0F4907737F6B85A6B46924CDCDE5F09F86AA2209A038643112FA3203516A6EBE
EA170A1490620B672E624622815BBF221356EB5DF55383B611367BD226EA5287
0C211D2E20178522EEFD6595CFE8F3F980340425F42BC87AE2C26AEDBBC0D67A
BA1D80517A0EC783A2C631886679CF5330A309FE110B9D2854DA03C8B708FACC
046867DB62B7038A07EC56978453B92FA49F6F82532CBD5E8FC4CD1BA2B6ADC5
3CB89C14728B5D48B728E494B1D6DCEFFAE9583BCA0647F7C59301C4ED5FF5B1
A6F76869E8C5B5064C2380BD65CC7940A90A6CB6056A3AD7480AD9BCA3FB7D4A
C9285CFDD66AD4E03E9AB4629ECC7643B6524EE4A2162C8A9E96B8B520AAC27F
EBA3FDAA78AE87B75C57AB59FC8252E4415343D3A87AD7F8A3B9DC4879EC3C93
8F0224944B3D6E266B995CF7A63F3664C2E430DEFD7357F03D8F1116FBEFB431
EED8C1DA23C3513D9F236375834ACA302AA49B2567FB0EE614A1707B6E93BB53
F163FF6D5E118B88886A8D99AADAA9F0E306D1BD47B8C62726FFEB70638539E0
B1B62D12B85638D43AF60155FC5972B3287F7ABB0E26366064542C6F6E6B710B
9C185E647A0330EEEE22C39041C91522AF228B07C93C4ACC3049BA9B9B75A02F
2C41BF78EB854C8FD4F592104C2BC984CAE3A4852A8832BE2A7E2C513A1397E4
26817FFBEF1D2A8B8A666A1183433EA4A563FCEF207B4E8F4AAEA241EB9E3AB8
7182AC6FAF4EC677BBCAFA42E956D7CBB8DD1F57A5A13C2463ACB88662C67011
AB3ECFAC5C7B4E62B24BB744EBF51BEF15290DD12609DFC7B54A34D06A86AA43
ED92DBD1D1A420EE22C6B3B14FBA32F46788B9F8512235EAE2345B461ACC0B2F
A2F3CE00716C23EE7304878F7F5DB3F0E8BF6C1577D0C2892F3533BF00140C56
9343DA6AC73079395B134068A8062D3ABC1785978A9CFEFC52D8DD0A506FCC0A
2867FF3305B6F23D2C3A0134367E3F40EEC0DC205F210776CDFC5867AF4A781C
3C0E70B69626CFC0CA855C94FC8DAC2635CD9B31A267F8345B7DF471004115C2
B380A67363F9DFE8D7FACEBBFAB9A48194D1549527C5EAE3B298395CBC8B6091
90347ACA986CA132E6659673982D27624E535B5F67E681418C8CABCC231573F3
E2BEFBDE820279CA1D9C658F2F7570F0155DCCDEE172ED8063F92EB704A3F149
609FDD2E45E24565A123164A8EF1A1320DDAEF7267EDD14423AA3CF8D618D1BE
9EFD37A9375185764F596151B0BF31F11656E31CD6F39BCA9C812E55E83931D9
A2163DBCF0B10C62408117C2B3BB0B043B2FF0430B5D010401EDC358DAF3E8C9
E499B29ECD08702DB69C90995C6FAB19560D4F0A8DA69A9D47EB4E1E0D32E7FF
57034254B30B90B06EADF24C926FBBEE3929A5C21FA0E2620C05A0FED621A18F
ADB965D1F4CDE67EA1AA351E2517E973C7A7EDAFDD30FA65363067FC46373929
F8F116E9152BC4FB8CA35D0257E7715CEE4150FD93CBFA36C38ECAA7BEFE5EF9
3C106A098A5AC5C9DB5162B388E65009A0AB05452A2575A4D3A09AC6D27AA451
17876B851D57745A5CC68A164EAC5F9BD1CB2E917CC3EA416876AEA818F6CD13
5A92FA8AB06DC4918D3947941F94A081DB8FF5A0C1C633EDADED7DB8EB34A0B2
48C7900883A4DD407358851658171E25DD574147962ABCD2ECC2C3BD3C5E0399
A52456CA733834D6A03591101ABD5D78549AD667EADD62F43D26FF3C575BA716
E24BD93856810760B35690B8E812BAD2EB7A94F378733843FC7A217C70A92614
566EC54FFA02A401670D767472226667C608C23BD8824C4C5A8BB059B5BB339A
76DF87F3375208659C1316BD3559858C815E4716EDC90159D785839724B5C056
F9CF0621BA4C617D380EED8461A2F31F45B094B6A56EE784C85718146B8C607A
719C52E86D4B10EDADF53972903F59611B1530F88600CDBC4454609C00E7B268
D9C8173291502C3B9973F6B1AC8C846923F6E7AAC7D40E3FD6EB5765A612C5F6
BF675035BC7E084A905E4F2B5CE64E3318DD1C3562EB3284574F61DE1E7ECF60
0FF967451CE3F62F1729
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
%%EndFont
%%BeginFont: CMSY9
%!PS-AdobeFont-1.1: CMSY9 1.0
%%CreationDate: 1991 Aug 15 07:22:27
% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
11 dict begin
/FontInfo 7 dict dup begin
/version (1.0) readonly def
/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
/FullName (CMSY9) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle -14.035 def
/isFixedPitch false def
end readonly def
/FontName /CMSY9 def
/PaintType 0 def
/FontType 1 def
/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 15 /bullet put
readonly def
/FontBBox{-30 -958 1146 777}readonly def
/UniqueID 5000819 def
currentdict end
currentfile eexec
D9D66F633B846A97B686A97E45A3D0AA052F09F9C8ADE9D907C058B87E9B6964
7D53359E51216774A4EAA1E2B58EC3176BD1184A633B951372B4198D4E8C5EF4
A213ACB58AA0A658908035BF2ED8531779838A960DFE2B27EA49C37156989C85
E21B3ABF72E39A89232CD9F4237FC80C9E64E8425AA3BEF7DED60B122A52922A
221A37D9A807DD01161779DDE7D31FF2B87F97C73D63EECDDA4C49501773468A
27D1663E0B62F461F6E40A5D6676D0037D33F24E2FAC2B0009AD3C8350CDF8CC
65BCA87979C36D14CB552E9A985E48BE4E88ECA16DF418749AF04FDD2B0E1380
D281BB2476BB45FF30946B247DFD7F57305FA87E50CA338121C71CDFDF927A9C
77FF14CB4A1D6D80356FB1171ED38C37702350497B44E42CE31DB2F493807DAA
15B887C671199A54C4C1294BC520F5538C15556BC43C9F62342B121C6DCD6C5F
491DA47FF360201EE21C08A781ED0589A6DF91B99FE118B9B29E4F068672E52F
1A06C514D91C4C937D4E642503392B1CD1BE8C2F499A1AD3753691F4D1DAB520
BDD769BBD915603E1046B31412DEA252E4078BE8F1EC3A9A3258255B42357330
3ED92EF62F3BF5BDA25D821AC468EB1ECCBDCC3555DBE7D3A521D45C6D9E25E1
67C6ADCA1B3A0990441EA2F1445681DBB732FBBB8797634CE7C56351C3F05371
3274F087BD1B07128A8049503591C35B7A7A16D9C25A6174DB685922BD975D94
0C25E001A342E8FB763DC0CBB36FCA00A7932D61218C5D3E2229EDE4C9FC4578
CDDBC04484C54B8F8E8E817070763063C7E8B4C8A7373913EAB41A5ACD8528F2
9E7FF55B2C91C139B712
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
%%EndFont
%%BeginFont: CMSY7
%!PS-AdobeFont-1.1: CMSY7 1.0
%%CreationDate: 1991 Aug 15 07:21:52
% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
11 dict begin
/FontInfo 7 dict dup begin
/version (1.0) readonly def
/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
/FullName (CMSY7) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle -14.035 def
/isFixedPitch false def
end readonly def
/FontName /CMSY7 def
/PaintType 0 def
/FontType 1 def
/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 48 /prime put
readonly def
/FontBBox{-15 -951 1252 782}readonly def
/UniqueID 5000817 def
currentdict end
currentfile eexec
D9D66F633B846A97B686A97E45A3D0AA052F09F9C8ADE9D907C058B87E9B6964
7D53359E51216774A4EAA1E2B58EC3176BD1184A633B951372B4198D4E8C5EF4
A213ACB58AA0A658908035BF2ED8531779838A960DFE2B27EA49C37156989C85
E21B3ABF72E39A89232CD9F4237FC80C9E64E8425AA3BEF7DED60B122A52922A
221A37D9A807DD01161779DDE7D251491EBF65A98C9FE2B1CF8D725A70281949
8F4AFFE638BBA6B12386C7F32BA350D62EA218D5B24EE612C2C20F43CD3BFD0D
F02B185B692D7B27BEC7290EEFDCF92F95DDEB507068DE0B0B0351E3ECB8E443
E611BE0A41A1F8C89C3BC16B352C3443AB6F665EAC5E0CC4229DECFC58E15765
424C919C273E7FA240BE7B2E951AB789D127625BBCB7033E005050EB2E12B1C8
E5F3AD1F44A71957AD2CC53D917BFD09235601155886EE36D0C3DD6E7AA2EF9C
C402C77FF1549E609A711FC3C211E64E8F263D60A57E9F2B47E3480B978AAF63
868AEA25DA3D5413467B76D2F02F8097D2841EDA6677731A6ACFEC0BABF1016A
089B2D24E941E5E7649642B5280D22A2A1499CA9708C88490B456D647364C957
D289912A4360E31002BEB15135CC9FEBE452F9F6C627968ABD65EC4D987AC218
E4C5427189CFB260E8321817639C61C05B19DD9035A4CDB46FCC415633BB924E
C508609EF6EA51685FD6E4EB10FB915414DBB3022D3733CBEB1BAFD628ACB64A
661042A600224B084B612B557596A01D1F1F5CB77E3E63E93510A79E0D131271
3F35F8C34F36C30A593689DD275BDB0054C56527EE372B33BB5673041EE004DA
002AD9C278B0CBA7F111CF641C05FC33AD07591C6FE59CA12B0E2D
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
%%EndFont
%%BeginFont: CMMI7
%!PS-AdobeFont-1.1: CMMI7 1.100
%%CreationDate: 1996 Jul 23 07:53:53
% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
11 dict begin
/FontInfo 7 dict dup begin
/version (1.100) readonly def
/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
/FullName (CMMI7) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle -14.04 def
/isFixedPitch false def
end readonly def
/FontName /CMMI7 def
/PaintType 0 def
/FontType 1 def
/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 105 /i put
dup 110 /n put
readonly def
/FontBBox{0 -250 1171 750}readonly def
/UniqueID 5087382 def
currentdict end
currentfile eexec
D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
D919C2DDD26BDC0D99398B9F4D03D77639DF1232A4D6233A9CAF69B151DFD33F
C0962EAC6E3EBFB8AD256A3C654EAAF9A50C51BC6FA90B61B60401C235AFAB7B
B078D20B4B8A6D7F0300CF694E6956FF9C29C84FCC5C9E8890AA56B1BC60E868
DA8488AC4435E6B5CE34EA88E904D5C978514D7E476BF8971D419363125D4811
4D886EDDDCDDA8A6B0FDA5CF0603EA9FA5D4393BEBB26E1AB11C2D74FFA6FEE3
FAFBC6F05B801C1C3276B11080F5023902B56593F3F6B1F37997038F36B9E3AB
76C2E97E1F492D27A8E99F3E947A47166D0D0D063E4E6A9B535DC9F1BED129C5
123775D5D68787A58C93009FD5DA55B19511B95168C83429BD2D878207C39770
012318EA7AA39900C97B9D3859E3D0B04750B8390BF1F1BC29DC22BCAD50ECC6
A3C633D0937A59E859E5185AF9F56704708D5F1C50F78F43DFAC43C4E7DC9413
44CEFE43279AFD3C167C942889A352F2FF806C2FF8B3EB4908D50778AA58CFFC
4D1B14597A06A994ED8414BBE8B26E74D49F6CF54176B7297CDA112A69518050
01337CBA5478EB984CDD22020DAED9CA8311C33FBCC84177F5CE870E709FC608
D28B3A7208EFF72988C136142CE79B4E9C7B3FE588E9824ABC6F04D141E589B3
914A73A42801305439862414F893D5B6C327A7EE2730DEDE6A1597B09C258F05
261BC634F64C9F8477CD51634BA648FC70F659C90DC042C0D6B68CD1DF36D615
24F362B85A58D65A8E6DFD583EF9A79A428F2390A0B5398EEB78F4B5A89D9AD2
A517E0361749554ABD6547072398FFDD863E40501C316F28FDDF8B550FF8D663
9843D0BEA42289F85BD844891DB42EC7C51229D33EE7E83B1290404C799B8E8C
889787CDC0C51802EA1E0C63E6DE20980D3DD206F05360F78906FF0132D5F4EB
8B2384EBF991DF6A99488477067F4A8C0FCE0CDE8FDEDE80EE0E087271DCB088
9A0B2ED6FCA29399FF34CAAD2F4ADE9979E7B1F46EBCF7EAAA9C1BD7D5A7C901
C4F56769AB3279B88B453CAD4F980D5776CBAFA7A5E45EA940A80018FF8A1060
649DBA8BECEB5FB18938F7E69FDCC37A64DA9FE7336ED1BBE2609B8752409617
6D0C56A0CA33A91D7D34AC34703DD12E031D0EEDDC326DB3C7D69E2EEEF2103E
0207D54FCA89E72DF619FDA6021550754A0D030D6EAD60F32A4889A025703DE5
A8CDED50E5F7F6F06CB9A29BD7A5FA653CB399D3B21A2B4BF37F51C31C165D68
01F36ED6F31DB77CA973CF6B83D22495487E1B6024F5E3102FF2C81D6BBFEE37
EDF7922ED0D015B44F48A5D9D038D9831EF172D0346456F4B9845DC2E57D2DF0
566DC8DD79D13BF83B380CB195F7619E0F6B2578A36C3EBAF45E775F06CB33DA
90630DA177E741F5E86D6C2CCD285CE0C39070FE3BB5C5AC5EAD82753A521F6D
E159B9CC589E1DA082437A1E0CF115B3B88DE31461153596734DFC910E7D2A64
2CFE5D5BE313E4CB2B7665893A51B263E664094A94078AD2F3D7A189168D95B0
029D54A6CF6D85773F314ED03B0D43A5602416F30BC1A9B44D7AA2EE12034AB5
B2C7DE0B9F15DC55C6C808C5AECEF16F70453F209BFF0D5E9038A6603946D9D4
FA1FB5435EBFB48DBDF1521A1AA595DB64FA37D36CFD73675F18C1601CE2D5C8
92764CC093EB43726671E23A6953368F4C31CE413326629E87264D1B0D1855AB
E20AEF4B8030F0
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
%%EndFont
%%BeginFont: CMTT9
%!PS-AdobeFont-1.1: CMTT9 1.0
%%CreationDate: 1991 Aug 20 16:46:24
% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
11 dict begin
/FontInfo 7 dict dup begin
/version (1.0) readonly def
/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
/FullName (CMTT9) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle 0 def
/isFixedPitch true def
end readonly def
/FontName /CMTT9 def
/PaintType 0 def
/FontType 1 def
/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 36 /dollar put
dup 39 /quoteright put
dup 40 /parenleft put
dup 41 /parenright put
dup 46 /period put
dup 47 /slash put
dup 48 /zero put
dup 49 /one put
dup 50 /two put
dup 58 /colon put
dup 60 /less put
dup 61 /equal put
dup 62 /greater put
dup 64 /at put
dup 67 /C put
dup 68 /D put
dup 69 /E put
dup 70 /F put
dup 72 /H put
dup 76 /L put
dup 77 /M put
dup 79 /O put
dup 82 /R put
dup 83 /S put
dup 84 /T put
dup 87 /W put
dup 91 /bracketleft put
dup 93 /bracketright put
dup 95 /underscore put
dup 97 /a put
dup 98 /b put
dup 99 /c put
dup 100 /d put
dup 101 /e put
dup 102 /f put
dup 103 /g put
dup 104 /h put
dup 105 /i put
dup 108 /l put
dup 109 /m put
dup 110 /n put
dup 111 /o put
dup 112 /p put
dup 114 /r put
dup 115 /s put
dup 116 /t put
dup 117 /u put
dup 119 /w put
dup 121 /y put
dup 123 /braceleft put
dup 125 /braceright put
readonly def
/FontBBox{-6 -233 542 698}readonly def
/UniqueID 5000831 def
currentdict end
currentfile eexec
D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
2BDBF16FBC7512FAA308A093FE5F00F963068B8232429ED8B7CF6A3D879A2D1E
2931CE5F5D18C658602059F07BE66E6EFC9239D7AB2FB8A4CBD41675B8ECF279
650C29E53B14AC0E392A664848C1844B1CECBB2D5CFB72D0916B675C9A9A1E35
F12696A6F628473C604A95376468E06E295AD6F76CEB939D94113532050B9D5A
D2F41A9EFB9424D986612313B89EFE9C8A71313340B248F6853B1EDBF02B7F9E
F447220FE131D7D54CFB8AA1281DBAEA73E665BACB1F164552CC0CEDB63BD4B1
4A9AE8AC6FA02242DBE8DA46B64B6BFC11762F0784F216FC8B9120D688D1705A
438B14F5E5DEAF2A98408B3B64620DE3732A4DAE6D08D5D97E34C75DAE19EABD
BA0796165C1151BCBFB1DF8D29A63A8300DBDB9E3323CB82D0337598B83F4F2B
A97CF5196D4D1CEC1EDB8966E548C0D9C194C932319610FB43EA1B86322FE641
AB48770FF13BD475A7267E142388563D1A400419C585B22A9886074687BEDF74
D905BE8EE440BA2ABF28EAB673399B7F129B9729DD5564C681954621903B84BB
CAF89AC5ADB2932472DF29ADA2BDBDB4D05F65F28F5F4C529613D61858E0074A
082A852710A62A147C966F2B85B51B0BE85F11D2057C66FDD61F6C5755367980
9F4DE680601D4DA41B46F8D2148450000413C27AA39B586B74B977B25F0FD3C0
4BA1EBFAFDBEC531EA1210365091671CE3C86A6D4BC591C37DCC02570042575A
9D24252D6E01A8603753934D7EA5CAC1BE4E5AD2BA047DE8F3983B23A8A1511F
B08D373B69E5076CE4300137B8805EBCC0AAB89BBB312A77835795E3C069322D
42C893A30AD739E2BDD299679B158F7493764F2321E3965141B5ED1C6F4765ED
F46D391A646B30C90002B1C461AEE79E5F094CACCA656CEA3DB921CC5205F328
A2C69F817061D6C60B121EEE844CA5008F23DF0AB872BF42A2C9FE9FD1C7F27B
0D76E4CF123D78F023275AD09A3E6CFFA363411D953D10D1FFB61DFF4E64C402
523B7935DC742FD4C279065019ADE7F20A44EF951CB72FEE22602EE03A0415AC
2387B695C09FF0C3C2787FE4ECB50CDD7CFCE5C3E7E430FBDFC31275E440EA26
E460F4C15C39F3FE1DE89C77BC0BCF6998243F364AD73073024D291576F0D898
86372BF24A3354CDC94C60B5BF91170FD17A07AC15EB6F8D7A1C7474A1011926
8BAF21D2A65086F199B581C9B82C2664E95112F1E4840132BEC14847913F215E
094438D88EB24B9C9507A8D0103B65B825025A96954D30E4E8BC51182E4B3155
A044B7D0EF213C8570DAD9776031D7500946B6A8A8A45E9A4C63A66F6774FD7B
32A94FF7F37EDB7E5C956867AE59AE6F64D6E8B2F13D7AE43AC49ACE659680DD
058570A31DA26FA0E3A0CEF06E735CFFF42E1D3E01BDD0C56675E4D2AEC98EE6
C32702F3DFBF6657D9AE10072AD8222BA3ABFC859C8B365FCA06BA04CF80C618
C1E008CBF02557A6620D1A5DC6EDECAAB62327179FFA199A0DFDEA6D526A0A3B
A460FD353F80EE2DAEB3D686673B8AC3D02768F88574E6E50E792B0169F1D63D
64115186C3018A71E685A1ABC8894F96825317FBC48224F1B9A4C3D035A9A96A
62693AFFC6A420D8DEA35E15118A3DAB4BD4292DF579CAE2CACF4C3FD4B2CAB6
4ACC997E9BBA91DCD6870D5D232E0834CD4997033FA67CFE298A655A3B21633A
599D5AD64B70DB6284329272D213DA324F08E1C50BCA48144C858ECD584ADEAA
1D1720A3BD281101C9958CFF7B2B76BBFB9A921EB7C6743190DB65E806C6023D
A64DA261BB00D9DEAF958DA9A2F2B64D18C9BADBC272462B0ED25101CA22093E
A8A29FA7BA9488D02EE279506C0C6F02EEB5BF5E3ACD0F890377E74A1AF8A51C
97ECA986F17E925469497DCE85805519974470EC826ADB8921E37B74121D4647
1005585390DA31436E2AEB55B6A0E3364E528F96DA9A82CF2D6B9982C07721CF
A0E10ACE4AD76D4B23AA36848CC0076FD9CD253C4D4039B23546DBA8BC63563B
7789141C954CE2F7C10E6CCB3717568F43E0E625D6C88D31ECD7BE543BA667C6
F9BC7C8A438EF65986711CDAEB6603FACE6827FDAFE0452D18910FE45A5815E0
77CA4D74C5640A532E0CA0CE74925BE3F278B32CF513EA64300DEB6F75E658A1
723E7D332129EEA3ED89C3A681DCEB390E5E80F454BC5B6297CD950C7358D822
52EA0D20477D5DF2B9A4F089FAAADDB1056FACB321BF0A1C560D6060FCCF3BA1
015F268EE95D788FFF7E5E775674DD99701B0C70E819F97ACE01A0C961174166
92B698F69D8325B1F6060B2620B87D6DF646949A8476FEC8A7DB4D6D881754D4
61B21A7D078D82A477B805A107F62E859C5CEC44301948AB57FA947A339558C9
32E695E4748C414387CCAC7682FDB6DE282CF9AA991A90B11FA186F2A50E1229
D207B1989D33E06E172490E47A37B6D7939CE7375F443169C24E8EB013F1129E
82191F39E4F0C0A815D4A6EDC4EB97257F73FFC2B538665AA53B563C56CE16F3
9A68A5E5A0D2E57B0951BC191FBC87F668F46223BDA2E99BF586A814220C991C
24930318A0E98D046C741608CF9793624C4488CDCE7BEFFE6BDFBD438F035737
A21EDC5D075ACA04DC5AF0C966C2D40A04D0E5951A84EA5691B4AF97FAB21758
2612609CFB36D848BF0FAB91AAC80F914221B6BEF3EF1002D10CC62CAA367C9A
EF853413F18C33B8FDEE3368C7D3BCD188BC91537D993B91F15BBAA13C06F640
4B1037A53E0D881D43E9F69A32B7206887708655AFB4C2F2A9DC4D7DA8AEB2B9
4F941858C08A752047788549E98B8A03FEB206CBDE40541A79AB5B593B676AB7
487AD3F4ECA1C59AE2875BB6DEFEA4E4F2D4656C68A87DF12D76092E3DEA180A
DB54D721F3FB9CB4271732CEFE36D1CC0A7087C4945BA7C5EAF814BB6F971993
06B3785BF8541327E191F2BC601FBDFE5BA51E8F9F1075829A4A06AE17E013B0
B28E95FDF4D311CD204B792FCEFDD1290960503F1542C67DBC2FA0BD202B7619
9E8E1B507718950583236EAF6DBDE20517E23087F17BEFFDA98CD0D937967048
F55DEC86DC1AB3BB3DBD43D2E6EFACAF1E9F6F66BC8717C1C816F847A26DEB70
B4F9F3E38CBFCCEFDC74DE02FB639C850D98C7DDB183654837F1A6049AE3E4A7
7225045D16663294D445C9E1DFB53C5A68FE230D02DAF4AC1B9E28437F582E68
049D519FB7E5098376F460EF66BAC59CAAE60A9605A7233EA64FC9DA3814B3BF
4ED17DB02C77768969F0D4454DA18F91F97EFFC5EC3C002E6CC2A20CF66A2A53
F4B51614A02372B94368AFDE338C3A4704A4AA48EEBED9D0A8B217048B5C0B41
8124681161DB83E00C31A0D4ADBC36C053825705FEB7FC10069BCD5FDAC40621
BD24DE8CDA15E16D2761EC755F56CDDEF5A6754F12FDE99FB9FACAA5FDBF6E1B
ECF5B8D97FE3E530AF189E183FC3CE339D7346ADB2D6A59004F4C9924E1FCDA9
18524F99A50C2E26D6913AD6F2C69479C8AEEBBCFC84A6946B81C40F014C3B64
74E25E0E903129D717945F43BBF6A6464C3E8288865DE76879223FE5DB0B0BF5
E3AD64C68720F5EA6DE6BC150EBC6B7CD1CB8F3BA33ABA5B194E6264E0EA1D70
6475CAA242C981BF44ABD26342E908AFE6A938E3DBB418FD18D777B1A4C3F760
EB5470B0CFA42443A1AF9AC32F8879EDCFCE80F4003CF9D8991946A39E88117B
58109D44696218CE1E88DCF6B0CE375DF221DE290D421D2CD46079F4F9F50041
1BDC15B5A7771A8627D863C6621E63AB10EC9FAE42D4E4B2E5285DBFF0D15FAF
39B3EF194B8E4D2A2E8047DB9822BF2F6B6CC46E7BAE6B2531D6B3639DF40EE5
1AA7A84A2E3D080F43A124FF423BBCF22A4EA35F17D3D498A24D33C5CF918B23
B424248579043F2FAD00C6941044AD17228AC5230DC66E821FA714AFFE96061D
330F9A758D8F334166E3272F475363EED6423004C224B02B650E620BB71F82EA
73EF2347C318109EAFDC56DC63813AA12FF49DF694EC302BD00B01450178F740
38266B055C7399CFDFEE6A822FE99F5A693E98BC70C28F3F086E73804E1C9D72
A76F10E23C659743D6A12093D89841F43FF22D422C1DC39DBC2DA69AC2DF78ED
13770FA9443A3B2DDEEC069BE5243FFAE03B641F5FCA6673254A5AA65A334542
29C7166803877F94FD70450AE69AB90CC14385ED006519449CC8692A7CFE1650
D364861DBB1DAA5F530C5F2B27BC1227E31B4865330FE50721E38068766F191F
84A4AAB292AE132651FCE5AB7859EBCD70A8CC3D0265A896A3DD5A24A8FD1D3D
0F04F306010E34D907FD465891B6916F3B5799B4F5E5765A241417353AA41C37
A18C78D6386E6AD010E1A3781243C32084D47E75C797955234B89D74D0C9F955
4F605AC9298E666AADDFB254D11EBB278ACA1551A4371213E740F993E51E9A73
C96CC0BD45FFEFAC0DE406E4C4208568CCC6DD030CE0C523892C8A0BD3024ADB
5CD5144E652876AADC4572DF3ABB68AD8D3E5F8B558BE4CBD3381BB9DD898042
13F5037FEC537CCDF0A0E0B71C36BFEE95F6CBF5F5605487328A320AEB90FFF0
CD0870434481FA2326A35A72EDC937DF75997B484FB0D1C6DFC40369FC802F54
30572472722404B8B907941FD8FB2457A9F68DD0CF6558E87EA35CEF3B38AA01
A11DC9B59A0549480FB3832627B2DAF4627B49A91F0FA86B23D480FFA38414CF
1E63434C01580A9A25A97B95C840BEC9B6D0C658DF679814FBABF7A5FE350E11
68416DD639D5B031A4D6F09394A1E814F462E2FDDE20BF069833A09A7B106F84
ED1CCA24321E6676A1DD980CB8E433B3CD787D864DAF8BDA70194483F29FA1F1
7D331152B881D56F486B44D0B42DB05DA67CFC77AA638E19E1B52EE5B335BD8E
653374C891BB05C3C32A43531FB0ABE0C238AC0102039B787B2260F2D130B6B9
E646D5577214CFEC1CC1FFC69BC807B0C76E170444BAE7282F859E3EFC37E7A3
C496280CBD31239D2E3C993762407BE1C0827F4C36242F72BA085CE371C60D10
02B8E25CBFA3D4F007E4656E359F4D3524E61387DB9736B56A228D81D8FF6FCF
37D439978D74666E3C30F7CB92BEA58479DA5B1F863709402DDA8321021F279D
C3E94E00CF753F5FF27261F9567FC0478F51B57BC490AF906AC52F1C6F45FCD9
6C9BFBB372E0ED07C8EAC16132CB380F86B69C6DE911C8A378C1A33445F76800
2A3DB00826ECDFA25069B2061F432527B499B366BF51C3A272AA3334DD675029
F494AA7D1FD4021F322FC59769C3C59640A3B1096B6EA536C66D79E1A9118556
821D36516F6C3364DDF55BEABC4D58BA66ED00539B630692E3B35788E382D0D9
61AFB7D5B55F7C5AB1231F4286BB9803E2F1CB7A5BBFF74BAAB34830A9EDC45E
0BCE37D7CE96CA69F5F22236CAB3464461EFDD3E102DAF16A511F9900D924A89
151FB2939E10C30996AC4C8A49B6D71CCD2D1E4F1E5E46299F6B16632B2A36A5
EF2BCD944810B1134B2C2AEFF0391427AD67238960B906C510CC03196D0D7209
43E7D57D41111A0C0E6F6502E658400B0B26C586520ADD0DBD81A5068C65A2E9
5AD5387E5944A39D5AB2EE3E0DF64D545F44479C9942D442C26CCF1D3198EFE0
E3EB2E76C9289A9CFB14A6CF29646DA3FBFC4577D775C23825E2A5734E9AB48B
8A9FB937C4A72A58BE7131A69C6107E1E127EE6C2EDCB1CE215E56964A0EB840
1F943B67819AFFB2872197FB6927C123090E4CA970992CC98CAFED877D6277D0
4D6156AD31C313DCD7EB62126D4A3FFA68168E0C697E44A23E051C0A7C339E34
23AB4552CD9692048323AA46BF71547A68301F3057E2707A70DE6323C892B6DB
17D934E18FBB0952EF9AE8D8F7EE9DCEEEAF5E2CA5F5E50AD14CA0B422B0B9CB
8A424A78A98FD8C2E514EFC0319FF885B5C3FDBB5EC553E1FCDD5636A26B51F8
A8B4BF2A6DF848BF40E8042FF3FE83AF274B72061F2ED2ADC437E7A8DAF3B13E
E8A26D137402C045EAF7A4CD5684B72BE303420CC75F333D0FAFA00B72975BA1
E3C274803CEEEF147140BC4596E8D6C5808D0DA830CDE778977F5ABF8CB8F0F1
5D8A243454ECB1A315504C761A2A71D903CF25B5CE6C9412212831F93539D64C
FC6BDC1F7B9B73BAE9FDE1F6BDB66020B2502D35EF82A1A818A8B38B830E7893
5D3936F081726E8FC185058303B27EAF9631A97F439C7E38F41432E1276D7CFE
EE1CE370624E06F00C060D6484ACA52573569210EBC487C1996E139F8EBEEFCA
13A63B4DDE0E4E9C35BE9C8A5C6526AD02AEE2ECEF3893B3DCA8EA7AFA438282
7AD019B84777F1B49B1A001345993D109F6C3346C574F36C79C93DFBB07DB7CA
8A73CBE817F8DC60A5BB1ECF86CBADBFCF363C89CC8B4823581A74AE0967E8CF
7E7ED261766FAA48D39A7159E629AC6FFD93616D70720A2ED76C5F05D7CD12D2
05F6147A25AE6F2B4D2EB942C96B44829E95F59BFB6F9CED7030C1C14B304620
281419011D9D1D8B27B738FD6948FAA402D1647D991BF541AD79924DF07C72A0
9579FA6C23E8B505D55538A5915D375AFB64E4922803CF39ECE8B7CBE856DA11
00FAC0207A607CCB604C85EC224DF1ED5FB77828F85C124C134091CAD5B4D3CA
0097A4D7F46034592AD27C3D1E401791D288AB4376B381A9B2374567C7511F53
78964C0EA2B0C9E95E3D3CE2C059432C4BDB801A15672C764CDB376467A24D9B
144CF0958E121988896E72856C2DE278369146152952390A3653F25A79A94F13
7986450F9189EE483A7359D95428882EAC87CEB4695DD9392C8046C33916736D
2BF8D4FF7C7D5EE5E3708920CA06C4630B4C2BD6830E8166A3DF02CB2DFD2BDA
54A65B89022B6612BCBDB6E2CC3D710F91464E79E893703D07D1E4B6AB93FDA3
EC9C73BCDD81D5F1E8571A645C33E25F6F574C14D06D118A3CA0C046D92278D0
7A8D6666A95035CC512BF1B16798873DE4AC7B8106D6EED0A37FEA630E1DC9A7
16B194333A2C5B46CB200E41409C28503FCBE7A1171F6D2D5C31C146C59C3766
D8FB2D030C155D7815809731456820BE69053036DDBF6E05D641058755DFA2EC
D3A52DAD0DAAB6087B32BD080E1D74ABEB87C2A186418CAA6035DF92D016FB36
EF88F741A073844C94B6ADB55B16EBB23F6B5A15948C1D7DA15DAAA62D68F440
4E22FE8B9D9EA352BB04A05A5DCDB8583D6A9F87B487A92BACF1882F1CC671DB
8CF9F87528CD9D8E7251362E00FE5246C07B89EFB3CB22BCE6AC1B6FB3D97696
8F1EBA1B3B59A116AE8304C734C3EEA00843AA5D2E4C898897C4BF1D0E47D123
118A99529985B7C9D629031E63B3FCD3E69A2828D4ABDCE725FF517AFC54500E
64EB6E1DEA8948DBC61CBF2ECF58B3470D252F9C57AADF5F29F0032319A7BAFE
A6A4D33454580405CCC3F47353053B045F8A80419053607919DF559BFDD03842
05E3BBC2AF1DBDD0AD1FDB2505B8EE70A1722052CA3270951EE177331FF8D684
FD6D35B110E3F889E2BCC0DA6B037393016F88F040F9AF0DF5078BDB453BF9C6
354AF8F4D8B64E094A5A986BCA1381F08C4082DED9F75A21A1762E1E8D978175
6C44209AE85CB7DBE35F302958C1B4B5451678A969A5FCA4D39FA74912C4E772
8BB81D62C5475D2AFFCC389B895F7A6C1BEE56786825F86A9CA0A9D399DC593F
D7CA791CB9ADC9ABECCF19F86C1A3D901A6AC63888C15B73EDA505A5D56C9927
DE373AAA9E75CFE93E4F350BD3732C9F7626B8FB68CA2FDED42716E5EA7D5240
F37022BE36DF265FBE3B4FD80183611C8E03E036440D4F23D65C1623B40FBE97
DA7D19F91701156F56802487E68B6320023A6AC3FD5AEAF7997883F0AB28A19C
4D796CBFF0E53A32176F769DF3BE8EF726206A0F55AF12F0A97F0A2A5BC095BB
33B010F0C277DC248BFF34FE0C44CE1521DEA30D86E569A428F26FEB89982425
44C2A62B2F1208623163850D2E7EEFE14B59AF62EF17A52663139D30E3EA2153
FCDF486ED1AA5A0F6F9519B0B6A70FC65E0D761EB722688BD4B48715E23F075E
7C45311707707A34D8003AE88F5C664A916B580A1E498A2B24CE54B89677FB30
2E8BBA0EF38E888BD39FDE59EABDBB97C02354789913BEC7D9EF294070ABFD10
72CF1B833941844E7917217A811DD3B4C0BACF779439540C93D9DB984BD035F0
87620B521EE0C55F8AF491AD5BC6688F6ADB43DCD42ECD607CB5EE8C19664934
9DC3407EACEF5C800D0FEE5394AAF9751B9B74E55A9CD591F28C5C04885C641C
22724FABFE55793EAADD50476F14EBD9BD757E877B8E4406FB7658A28A8875AE
46B13E780604FBC56708902D27627365BF7A3A8CED94F84FDCFE0D47ADEBD5EB
D9CBBC6EA51858DC70D743D0383EB10D025D7A96006949230BA533BDD30614BF
CA7913EF0E17BB598F0663AF4DFAB68E9CEDBFD6983B8D284437290A8BB9C77D
FA1DB7AABA84720E9D145C540DC2E635EBB64683F638DBE9C6E0926E728A452F
2D8B070CECDF7F130477A23FB5AFDE818B7BCE10798D8B04EC20CCDE73A78580
29E54B0D48DBF8848D56342585EEB215EC65DAAC725ECDE74C0D1B180814598D
16B214EB068DCB8E39A297F9119EE30272DA0A17D384917E198171390C063566
72267A9E071D7CF7B4DC97287425D178782C1BD11B132A96BA7618F8F9A4401B
7628E596462C07273FE3242A2AA89573886F08507C50D7F3DC3270D996B74B8A
B0A4B48FB3C48B5A089DE8BDFF6F597BBB18D4966BAF5FAA49D3162B592730A0
38EE576325D6B0A97210C307C8BCE260CC456404F908173303868B8F3BD23FEC
EA8F057222C95AFA381D6E16655F0411700A44BF2225C7C5D8FCC83799F6E717
F1A27298A46F2D344A607B078FB936058B00A8AD42C4EDA33836D0D6B122E276
3D00A8CC2E65DE3981153F46E8213371ADBB156E7F91DA185D752DD2E67EE6AA
FA6C0BC28693A464FD2267DE7248EBCEC893125B3383EA25CB36B74B1DCBC807
E48299293103F36C81FE86D57400D3F7B63437CB560DC6C00DB3529C8B6E9322
A2B3F1FFE1905FAD09B5DF4FE9F6EDBF85F6F72DE16E1768A273DA5F3D244852
9F3C2B6436D5D564A6F2D711405C8101DAD61F853A87A9A40C1799C94FF54957
A0990BDEF3BAFBAF9C1EA8EA6505098601A67068DCB081A741A434CE2E7ADC8E
36EC2B630CAF2B52018DA1452D26F81849903F5A69A676C04798480BAEADDB63
53FE90FAD0D5B2ADED47D6C779F39D9E36EAD1481C3C764341F8447A6FEA70E8
1D0482A872F854FB59A7A4BBB21F19B4A049E239F617B0FEF3F2D79E508A53A9
9CB8548D27493ED15C9CF4D622311B407CB069F3B2A10328F08F049888C51730
8E1E12A3BED78D34019150C36591A7140FA4B35C8F29CF8CCC738450FBAE1067
5C6EAB14157865646AE789B59E9B819878C6BBA20A1C52A652437BDF16CBDE39
6ACE0A7DF2883F8E5911B3C606B8B76C8FEC365662C1B147225BFB1F39633170
8C515BF58BD3A315EADA6908DC087C9B3B882942B2F743F9DF5E289618802B90
D46D0D69CCA2C9E763778E45DED2E8229F663C815669A1CF555270F3B3280CEF
F01F980256B58FA207B5E2BB256EC89A20C313C782ADA5B83B7E86CFDD71B051
CFF5B55AC96F8FBFEDCBC612607778B5E038A410829487D899367319BE18F254
AC5EB2F5070971AF9AB96D9F6EB2007EFAD5ADA8B23D65060369783879422478
753EF07BF3DE343B0E7DE10CE5B416DB4EF98894C683194BDAD8AAD002C8D077
952DA33A9F7F2EEEF80A6087268C1CF55599297CA2796C0E6EA67C85FBD8EF36
A2FD904D70642E779FAC15E75C9932FF201596FBF97376EED4206E0E0AF051D3
60B7F619360B589ED7F0EDFCB0B8A7A972ABBD7DEC1C7FBFB7189C7AE30A1918
EA6C36BCBF6F54AA0D402DDBCF90E4E729788D2208F901644D77BAF73B9A85D8
8A6D3AF7B87C035E0EBDC9620276AE09406DD06463C8178CBC422B51472CCD20
C90D4F42371BCF0556D3D637909E939834011775B1254B17D34808CA416C78E4
53A547CC65097EE13D426C7C14BCE22062B1418D828F8954884C25C26E09DA86
F7DD79760B8D299C43CDC2BDA851E90A9AB4D7334D3074C4EFB19E919155EC9D
12933024075CA39B35C99B026504D393679C55AF4FA7019793F3FB860026ADDF
6455C6D6663161812DF0F0BBC1B5392EA32628C7294BC9CD1EE6817F1EC107AC
FB99BB1F894FA1BDE7339F4AB241CAA2481DE9F0456B6DC9319FE553480BE522
7B23C8F50C42AF9FCB5932B18BA1B61A1081CF5A740ADA3B34C3552456CF7509
3559500504B8EBBF32198C626DE82FCBC9B30AA4FBCC57B615A2F85E86ED2F82
D5E759E841B28E69A37DC9268E073825E849FDDCEB0C90EC41CD7F3BCDF15C90
6334D387B7C9C86CAA5BEFD88C4EE3D3C3F51B022F8CB7FB9D0CB4A18711ECD2
2F5FE17C65D6E75AC0949B10A59C202577887E633447FC1218928D0E5A47972A
FF7C5745C3B773227AE80BD9B584BDDEBD68C4BDE5EB6FF8F4FAF655709D5975
256DE97D31A9EB9BF5F2B2438ED1DE36891062747B0C7D8F4432B2443307646E
A3E98D42CF2FF67E99CC0A2BE72BE0CBE6E0A887134B81AF75AEA5AF66B2BB9C
418D504D7F7416F28337C30352D3E9348B1904EFE015666A099398FBA82427BC
73762CB58163CB9128D64D49F48440FE4D469DA81C1B5A2CFAFEBBA7AA0389F7
832E1549D6EB97503E68EA6869A0FA3C10120BA8DC92DCF76332839CA93C14EA
8B4E7F6E414C6FC07E0FFA4EA7204BA4D38144B39FFC988A6EC07C8170C868BE
A0FBF881B59578339A8B4151FD87751068FC7A2E4C1208C2D8CB9AB9C1E179E7
2D31ABEBF7C8269174C77E16A7BE7059733A44C0C43A64DF500FEFCF24141A39
F1B39C6B0F69884D0A27D4AAE80FD3118101A0558DE4826F2B497FDC9BF07F54
8DE4ECB38FAFD8EEFE3BAF1B123A7B40BCAA2C72A0F1160DD33CAEAAEA8D6D3E
B00FF1F46174B5026C79FD311871CB7D4F8C5413C055C4189F05DA6FDF561D15
105FF917A7275EE3DA1EBF8D209630F4C7E6C60C3A956B88BF899B74289C8B2B
EAF7D346EC4440B7B011BC131ACC58A29C61CC8C0DC99AB2279BAF1C3BAD41B1
F8F91EEE977D7621407C0089EE3B923A0D09AF3C0EAE14554D8A231C4B627279
13D7F795771517F6B0AAFD8137A005683790610D7B37704C205DC0255C80FDF0
9BF3C88CE074CBA4213300F8C772397813C5F16EB5210F31E44DF38A679321B0
69D62E6D482F71DEE4B7BE3E34186CB0C2465375DFDEBD37FA1F6A
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
%%EndFont
%%BeginFont: CMMI5
%!PS-AdobeFont-1.1: CMMI5 1.100
%%CreationDate: 1996 Aug 02 08:21:10
% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
11 dict begin
/FontInfo 7 dict dup begin
/version (1.100) readonly def
/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
/FullName (CMMI5) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle -14.04 def
/isFixedPitch false def
end readonly def
/FontName /CMMI5 def
/PaintType 0 def
/FontType 1 def
/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 60 /less put
dup 62 /greater put
readonly def
/FontBBox{37 -250 1349 750}readonly def
/UniqueID 5087380 def
currentdict end
currentfile eexec
D9D66F633B846A97B686A97E45A3D0AA06DA87FC7163A5A2A756A598FAB07633
89DE8BB201D5DB4627484A80A431B6AFDBBBF23D4157D4AFE17E6B1C853DD417
25F84CD55402AB88AB7EEFDEDBF2C2C731BD25567C53B474CCF739188A930039
098A197F9C4BE7594D79442B2C8A67447DE44698321145D7689B91EF235EA80E
B600AA8E238064F154284096C4C2554EFE8DDF13AFF8D3CE30E0999375C0FEE6
F992DEA5FC3897E2CC8B7A90238E61E41622DE80F438DD994C73275CC52249D9
F6686F87F394FB7BB668138B210BEC9E46415A1B58C990B81E7D7DD301143517
4C2A259D2A0A1E200F8101469C10D7D537B0D4D39296A9AB3F132DA9A3B459B0
F850E2B3A03BDCB35AEF82285D19C38F474FB414F8EC971B994D1C7DD753B271
2B71549DF497C665DF0F266988209D9EB616E4D9BA229FF984E7A886DB01FD21
48ED2E4859FD6416C2CE52537464EA884C8C9C2D1083E2B83BE4B766474C23B6
6E8EC5003200AB10514BB44D14CA700416AB6B2683E80862E7D5B49A05526A32
554BB23AB8B0824BBA198E3825CE82380CC0FECF46651E3E5D77F09465E73164
20342822F29572BC7F73F2C3BF95ED3BB6FDEADC20C6AC866C4F2C679594D7E8
8D944704A3C5D771DC39503BECAB89F34D8CDB8FDB91AFE21F3F0260D05E90C5
73E2C13DFA022C4522E5918EE25038A0498FBB530DA33B0AE238B1C6ED03FC04
2BFED8236E07820C5BAB411EAE1B31D93A2FA7C374B1725FEC359ABCB88E2C89
214529A263D795AACB0B95A3AB2F4E08EF350C282CE521716DBB06E5B8291B3F
5D4ACA230FA192F64BC902A4C8842C0F916F92FBD002ADD408BF0401D0284FBB
F05D4C6DB631420747CC902C5E1617E6573612FB26C8378DF41FFB5048D3CF06
4893DBA48EF4B043D760F60C75712169D16C83EE020C45369E443E853E1809DD
F395B812067D6FDBD26111B34F42C21036AF952D0D767FD17F6959D9FDD46005
D64FFF54772B50BB9B173AE79702981F58F9F235C591F476A31852174DF0619C
A470359153DC32610E782B204E7945515464DACE9099B81EEECC7EBD4B5126AF
C3FD9DDFB329AF1C95C41FA4A5F6958869509A23BD7210386329771FA46FF926
0E54AC35106253EE140449425A8670E1F92B178A02A58EB57540F4BD8110E548
BB584EA6D625C5F5FE0124A98E49915F1A1B95D2125874360EED1C4379FEF3C6
90E5780C20309F11F2F23FAD635C44BA030B39EFF083A3ECCDD2641DCD35B24D
59A1A8D05205EE919E493B61A71A6094495FB548138663E5A5502C030DBE36CB
DE41888F3DAB30D4AAAB7AAC1DCB5A962388B744FBC56F80DA3C5BDB587DB825
602078D33F666EDFE5A13C498CADAFA26219A6DBE0841F38229158BE544304A1
55DDF025F255FE43CF617924D01661324B69801830FFB4DB7A2B3DB969312A8F
F23DA3283566E2C86D0365E3078A787FF1BD15096EA53567D7BEBF6F81909ACA
0FF21ECC2394991B8FB4906C4FE8944AFB9723E8B41B6D136AC07A77E0C86DE2
34999D037E8ACC61D106BEF9119062DE01B3CA6E9B28029092EE369D3E3F4702
04A474047939BCB2721F5DF37A27F2701801C7EEF1E0AA7A3725EC2FD6C44EAF
56ED90365FD343B6CF59E5CA7B549B55258F21BFF3E5CCB2BFEECA22D1612959
B414CDAF8316F642F229A91827FD046DEE93957A192632DCD62F7138D32D5825
61D426BC5387DE69C1E5B96605838A7141F261BBAADB755D3F3735B33C8E66AA
A4ED5CB3B56202974E4674AC8354F8E913AA8FC827649018B636D6
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
%%EndFont
%%BeginFont: CMR10
%!PS-AdobeFont-1.1: CMR10 1.00B
%%CreationDate: 1992 Feb 19 19:54:52
% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
11 dict begin
/FontInfo 7 dict dup begin
/version (1.00B) readonly def
/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
/FullName (CMR10) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle 0 def
/isFixedPitch false def
end readonly def
/FontName /CMR10 def
/PaintType 0 def
/FontType 1 def
/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 40 /parenleft put
dup 41 /parenright put
dup 91 /bracketleft put
dup 93 /bracketright put
readonly def
/FontBBox{-251 -250 1009 969}readonly def
/UniqueID 5000793 def
currentdict end
currentfile eexec
D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
2BDBF16FBC7512FAA308A093FE5CF7158F1163BC1F3352E22A1452E73FECA8A4
87100FB1FFC4C8AF409B2067537220E605DA0852CA49839E1386AF9D7A1A455F
D1F017CE45884D76EF2CB9BC5821FD25365DDEA6E45F332B5F68A44AD8A530F0
92A36FAC8D27F9087AFEEA2096F839A2BC4B937F24E080EF7C0F9374A18D565C
295A05210DB96A23175AC59A9BD0147A310EF49C551A417E0A22703F94FF7B75
409A5D417DA6730A69E310FA6A4229FC7E4F620B0FC4C63C50E99E179EB51E4C
4BC45217722F1E8E40F1E1428E792EAFE05C5A50D38C52114DFCD24D54027CBF
2512DD116F0463DE4052A7AD53B641A27E81E481947884CE35661B49153FA19E
0A2A860C7B61558671303DE6AE06A80E4E450E17067676E6BBB42A9A24ACBC3E
B0CA7B7A3BFEA84FED39CCFB6D545BB2BCC49E5E16976407AB9D94556CD4F008
24EF579B6800B6DC3AAF840B3FC6822872368E3B4274DD06CA36AF8F6346C11B
43C772CC242F3B212C4BD7018D71A1A74C9A94ED0093A5FB6557F4E0751047AF
D72098ECA301B8AE68110F983796E581F106144951DF5B750432A230FDA3B575
5A38B5E7972AABC12306A01A99FCF8189D71B8DBF49550BAEA9CF1B97CBFC7CC
96498ECC938B1A1710B670657DE923A659DB8757147B140A48067328E7E3F9C3
7D1888B284904301450CE0BC15EEEA00E48CCD6388F3FC3C8578EF9A20A0E06E
4F7ADDAF0E7D1E182D115BF1AD931977325AD391E72E2B13CC108E3726C11099
E2000623188AAAC9F3E233EB253BDD8B0A4759A66A113E066238B0086AC1B634
5ABFF90E4B5ED3FA69C22541981B2BFC9710AEF6B50A8BB53431C7B4D380D721
639E005D6B4688EE16BFF48443E7C9E5FB5BC5883E271CB03428948F9221D912
2E2F3750D1A1AE5FF546535E1DEBF69B458DF49EA3817D9612E5C9A0B7A698E7
5F576FB653DE1297A8C417599917F9D75D42234E54B4B1E99669BA5A40B4AA21
43CE5634719D8F3536694F15E4F8E5B7D9CFE15B68A7D53FF47B923F0AB3CD4F
FEC1BAA7036B5936213BB109CA9425C69A28B7221E68FC79848CD6AFB220F45A
A0D21EC1020DA99816247E6B49FE263926782D00E5B3A57151761303FEA24487
F85FB9B6E6C83B05B38B3BA7F81776B082204C032D467B91767AAD865BBF0F1C
271649C2ED9F8111C5637017470B3F6C3DAA3AF1705DF2B7838968B4EA7F9E62
BE7DA1AD8D81D3608EE86352BEA38DB87A0D57A5DD28829D8728077ED4C16931
59E158F9155CFCD1CE098395826D7D29C56EE27BF71132F6F4BF467EA6B120D1
E0F831D75C9A66FE8B0BC0BE434C439878A75A2A7E8C4F395C26AEEE8FCFCFCD
1DA8117D1DCD5FE02F4C1367DC3A31D289A6E900F0E75EC4E0F350BB84070E1C
3D7FE3D3C7E79415189A7ABAB7F243D687C762779FF8BE2C8538A1BC20AA1EB7
CA06BD220E64DD5481B450CB954B9C5FB64021E299CFEF9FEC04BCF715539CCC
B95E46AAF9EEC67291A8862DEDCE21ACEBFF891E73816C9D419B5A63F37474D6
014017F33414DD969812F96D66E8A31159DF56015A2E810C22B1509C6FBC14EA
CEB252F1E51E30426E5093EA63BA3F8E19194EC7533D5194900F1822D0561936
0A773EB7F22C14DB9260C99EC161B30A5753949340C8972530A7941D43BFA63C
44253D72913F2BBC4902
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
%%EndFont
%%BeginFont: CMR7
%!PS-AdobeFont-1.1: CMR7 1.0
%%CreationDate: 1991 Aug 20 16:39:21
% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
11 dict begin
/FontInfo 7 dict dup begin
/version (1.0) readonly def
/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
/FullName (CMR7) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle 0 def
/isFixedPitch false def
end readonly def
/FontName /CMR7 def
/PaintType 0 def
/FontType 1 def
/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 49 /one put
dup 50 /two put
readonly def
/FontBBox{-27 -250 1122 750}readonly def
/UniqueID 5000790 def
currentdict end
currentfile eexec
D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
2BDBF16FBC7512FAA308A093FE5CF5B8CABB9FFC6CC3F1E9AE32F234EB60FE7D
E34995B1ACFF52428EA20C8ED4FD73E3935CEBD40E0EAD70C0887A451E1B1AC8
47AEDE4191CCDB8B61345FD070FD30C4F375D8418DDD454729A251B3F61DAE7C
8882384282FDD6102AE8EEFEDE6447576AFA181F27A48216A9CAD730561469E4
78B286F22328F2AE84EF183DE4119C402771A249AAC1FA5435690A28D1B47486
1060C8000D3FE1BF45133CF847A24B4F8464A63CEA01EC84AA22FD005E74847E
01426B6890951A7DD1F50A5F3285E1F958F11FC7F00EE26FEE7C63998EA1328B
C9841C57C80946D2C2FC81346249A664ECFB08A2CE075036CEA7359FCA1E90C0
F686C3BB27EEFA45D548F7BD074CE60E626A4F83C69FE93A5324133A78362F30
8E8DCC80DD0C49E137CDC9AC08BAE39282E26A7A4D8C159B95F227BDA2A281AF
A9DAEBF31F504380B20812A211CF9FEB112EC29A3FB3BD3E81809FC6293487A7
455EB3B879D2B4BD46942BB1243896264722CB59146C3F65BD59B96A74B12BB2
9A1354AF174932210C6E19FE584B1B14C00E746089CBB17E68845D7B3EA05105
EEE461E3697FCF835CBE6D46C75523478E766832751CF6D96EC338BDAD57D53B
52F5340FAC9FE0456AD13101824234B262AC0CABA43B62EBDA39795BAE6CFE97
563A50AAE1F195888739F2676086A9811E5C9A4A7E0BF34F3E25568930ADF80F
0BDDAC3B634AD4BA6A59720EA4749236CF0F79ABA4716C340F98517F6F06D9AB
7ED8F46FC1868B5F3D3678DF71AA772CF1F7DD222C6BF19D8EF0CFB7A76FC6D1
0AD323C176134907AB375F20CFCD667AB094E2C7CB2179C4283329C9E435E7A4
1E042AD0BAA059B3F862236180B34D3FCED833472577BACD472A4CD5C7347D2E
1D0D6630F446F3708FCB29A85F40B4DAB4D60AA8F5B2DBD67F2E45D80C7A7E86
144669F75F8FA14609F8E4246FEC475ED262E03D30393C78C7828206842B565A
DBE20EA52EE9C4C3862B2F5F12CF89D935B89B84A45CEFCEAEE8EC8806339364
56FF1FE2E5112803E3E40162D5188D2210A54816AA9960611721C23A292AE80A
8F8C0FB114D71C111700B0FEA8804F37C5D31ECD7006603C53F4BDF7208286AF
3A25CEE58E88BF81A4800B68C2A19EBDADF9B1074702E779A7DD915EFE09D35E
BD176D7346D859D0944520171C4E97696AE0502C43C391FCE5E8FB1789065E18
BE3AF62200D57912360411CE848B4550D1B0A3BA576F9B41CED3A23E753631A7
25375ABE8A4B55BC65AE2EAFAE452766961965093084D218637FB447795CC991
EB1EF26BF82B7A81FA847ABD3B559D35828AD7DDC5FC7B43C6C14E6ADEDD7663
F272AA9A121630C5263D58773BCB1437EC2FC54C4AF90E677A8E7D1738D003D4
18998C03CC9AE182E7758767FEB5E1B03C6CC32AD30D0ABAE6552290771E2CB1
A23F469A8447C1868C6DEC2C3C2BCFC691867E
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
%%EndFont
%%BeginFont: LASY7
%!PS-AdobeFont-1.1: LASY7 1.001
%%CreationDate: 1992 Oct 23 20:19:18
%%RevisionDate: 2001 Jun 05 20:19:18
% Copyright (C) 1997, 2001 American Mathematical Society. All Rights Reserved.
11 dict begin
/FontInfo 7 dict dup begin
/version (1.001) readonly def
/Notice (Copyright (C) 1997, 2001 American Mathematical Society. All Rights Reserved) readonly def
/FullName (LASY7) readonly def
/FamilyName (LaTeX) readonly def
/Weight (Medium) readonly def
/ItalicAngle -14.035 def
/isFixedPitch false def
end readonly def
/FontName /LASY7 def
/PaintType 0 def
/FontType 1 def
/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 50 /a50 put
readonly def
/FontBBox{-23 -206 1077 685}readonly def
/UniqueID 5011946 def
currentdict end
currentfile eexec
D9D66F637A9E5292A4933615152D29EEC26E1BED2E48CAB7AC058698EA30B07E
F8BDB66981B14445E1107420FDAF32EDBD5C26E35B334E3AF24373B2A13984D9
1D56801ACCF98612DE2C19685E0F4D52369AD642D169AB57DAB10665C6C01538
4E7DF30628B47D6551F93A50553E592B5E1540B411A313F39E4149341C981D3C
705F8AD7782F59531404B3C001D8B882E0C5468D00B26040A352ED823D7C8DF4
B632A37A034C6304A39F28739AC3D634CDC707B53474E63135975E7F0FFF2458
99878B3A6D8D7AC6F2A2728768B8C2226075299B8CB08B76AED9A00BF448A646
87014E8B1C1723204BCBB97BF0F735E436F1805B4026CA792A2464E1FEA5F6FE
DB9D0AC1A487281E2A1B534501CCF5B67ADEF8A2C129B199CF24D46D7212A046
CBBFAE80486200C6037B3F9E995C34C97AC775B527E2557CD1956CB28CFE63AC
781572153003A49D0913ED58C88D0F946570FD9BEA98F7FEF6D5F7E05F69595C
2E6FC1480027F2EB1FBBFDADB6D6DAB4C2AFEC00F2E996D8AC8B25C2C0F59D23
C99F2767325EBA7F568C2F6C191F4ED92BB5A9B8681BB4C100C442465CB0B4DC
6F99D91DEAC92D071470EC3E39A664CFBDF9A25B8147C9272AEAC2BDECF5F9CF
4456450CD3958BE859995D22DCBDF4B291F1B149091DAFF47D5AEFA9496FA24C
565554AF04D35E66B806C5E658A9406E215A8504858E744AC67FDBC2B68CFB12
9CDB40F754A806D7FA078B911831FA2BB52F58C00DF6D43DC004780026BFACFA
6488683940E88290FEC54CF5C92D9D07093F70736336F56C1723B3AEB01C18FE
8021435F3744DC38CCB5706BCD226653750F9CEE0BBD15A0580678F2AA58D58F
6578DB30979BA9BD10EB02BB37F2E4CB7F083B2C699C39F179820FB8C2DBD7A4
E7EDF03E83F7536946A3F532650AC5CD48C10BA3AB8F67915EAC0053592CA317
E0A8EFD1322398DB7D9B32ECE97791A00B49839C58E426531833D30F153863E9
2A79516C2878AEE6916F0FA78F94714ED709C10DB24955FC0DE6769D34E4E1DB
2ADED1775C5A5A6313C93B6A0195311B4A334B4D9B914EA59194239AAD1358BC
269B8CBD35A7685ACB29282D46440A38083B9CB2258BB81E2489B5FBF551AEA1
330D4DF70E9E650964A369CA2F77DEBD0CDBCECDD2DFE4EE609FBBCDF40F1331
636EC76ACD1DEB43CB2F3F0EFB6C4E3D4E0D9C2280BC554B8069E12D0EABDBB3
BB21317625BBF133833F49E85EB7DA56BBC7230E0662842B2D09C5DA7801EA05
D1E539A4D5B0C86CC7677CE10A59416480CA2890D500CBFC8810EA18C3CE91C3
D77C9085218BF5A6E903C578CAEAD2C13DE98CCDC83FD58DD86AE9435F800899
6DEB7F8CECDDF9A2DEC084AF662484CF7C41B2174021593C89593CAF8F04F0C9
0A3C0E7DEB5EA5F9FF293D7CC9787FA3580A5D3D3B10A5831E8A2977FA12EA03
9469C2B9F2954F3F3F7F0D9A2DEC31646AC2DDB19900D1F51E70871C7FEF1BF3
0A80DD408596D3C7B0B661
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
%%EndFont
%%BeginFont: CMMI10
%!PS-AdobeFont-1.1: CMMI10 1.100
%%CreationDate: 1996 Jul 23 07:53:57
% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
11 dict begin
/FontInfo 7 dict dup begin
/version (1.100) readonly def
/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
/FullName (CMMI10) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle -14.04 def
/isFixedPitch false def
end readonly def
/FontName /CMMI10 def
/PaintType 0 def
/FontType 1 def
/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 25 /pi put
dup 46 /triangleright put
dup 47 /triangleleft put
dup 59 /comma put
dup 62 /greater put
dup 65 /A put
dup 97 /a put
dup 98 /b put
dup 99 /c put
dup 100 /d put
dup 101 /e put
dup 104 /h put
dup 105 /i put
dup 108 /l put
dup 109 /m put
dup 110 /n put
dup 111 /o put
dup 112 /p put
dup 114 /r put
dup 115 /s put
dup 116 /t put
dup 117 /u put
dup 118 /v put
dup 120 /x put
readonly def
/FontBBox{-32 -250 1048 750}readonly def
/UniqueID 5087385 def
currentdict end
currentfile eexec
D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958
9E394A533A081C36D456A09920001A3D2199583EB9B84B4DEE08E3D12939E321
990CD249827D9648574955F61BAAA11263A91B6C3D47A5190165B0C25ABF6D3E
6EC187E4B05182126BB0D0323D943170B795255260F9FD25F2248D04F45DFBFB
DEF7FF8B19BFEF637B210018AE02572B389B3F76282BEB29CC301905D388C721
59616893E774413F48DE0B408BC66DCE3FE17CB9F84D205839D58014D6A88823
D9320AE93AF96D97A02C4D5A2BB2B8C7925C4578003959C46E3CE1A2F0EAC4BF
8B9B325E46435BDE60BC54D72BC8ACB5C0A34413AC87045DC7B84646A324B808
6FD8E34217213E131C3B1510415CE45420688ED9C1D27890EC68BD7C1235FAF9
1DAB3A369DD2FC3BE5CF9655C7B7EDA7361D7E05E5831B6B8E2EEC542A7B38EE
03BE4BAC6079D038ACB3C7C916279764547C2D51976BABA94BA9866D79F13909
95AA39B0F03103A07CBDF441B8C5669F729020AF284B7FF52A29C6255FCAACF1
74109050FBA2602E72593FBCBFC26E726EE4AEF97B7632BC4F5F353B5C67FED2
3EA752A4A57B8F7FEFF1D7341D895F0A3A0BE1D8E3391970457A967EFF84F6D8
47750B1145B8CC5BD96EE7AA99DDC9E06939E383BDA41175233D58AD263EBF19
AFC0E2F840512D321166547B306C592B8A01E1FA2564B9A26DAC14256414E4C8
42616728D918C74D13C349F4186EC7B9708B86467425A6FDB3A396562F7EE4D8
40B43621744CF8A23A6E532649B66C2A0002DD04F8F39618E4F572819DD34837
B5A08E643FDCA1505AF6A1FA3DDFD1FA758013CAED8ACDDBBB334D664DFF5B53
9560176676BE05041EFE060F63E40701FB6BEDD98B47FCD8454AB391EE747B0D
D7673DBB0828167D9D5A368EE6B44A55DB55AF79CBD4B7EAFCE0DF7CDD16F174
7820A2766511FE2419CB6EAFEBB423137546335BEA3DFDE52519F984754691D7
6B5A89CC50D5D890F7E7E8B5FFE672658F6C6B0EA370558E4D7389B28C990F26
D203B83BC1F78CF401C28309588F43DED5BE64EFB3BABBC6DABA7D4BCC08ABDF
BCC7337D29EC2A23373BD84AC5990BA457C772A01C351248282400947E5084E7
AC8C4126A69E33584829733E1231DE32AAC3B5498E0B73807A53EFBE35FFB5EF
3EB9277A2291118C24CFE7ADD4792FE075EA8F6B2682658C1ACD0AD25CA38C11
C62CE364BF9C3A372625A9ECD7FE95610FDB56AF3D13351BBD1E7C1097FFAC6D
5B2685A219524B33305899416AA56492F7182D2D7793C1AADC06E093266346D5
0FC8EBB15CB46AA57E9C5AACE7AF59B578EFDC590756F615AD758A7ED5EC9847
74B42DA455B9DD1C176E18E23858D72DE073E1816194E6783EBEF4F3EF70DECF
B47EC1D84B617120FA059FFB18A7FAC1B670E37906826CCA6BA557965D7A4533
F10224F49013CC875C71B182A9B1CAE43C23F180A3D78A34BDDFE22372F7574E
97A1B48B5308CA9F658D5AD74007FE5810F2C021400FA16FD2BB883B4CDC0C36
64D33899B635929656FFD146C659DB6FEA46899B7B9D0101B81729B07294E66E
AFE05332F0F1D6FEB7FF0251AD5C22BB733EE0C93114BDD3CBDF1A49EF23504E
A1F958F8BA57EBA80070F022BF8B09AC3B7A1025DC434C3F2BD24E00FAE76C12
D4B3A9B7E209808E08605C900641A1F789C104D05FC3C28D3FD272FA500E9673
A51981B651C891E9BD9EF2812EFAC22A8BF65A9733933E76FD1709F3AF14C119
909F4287BB88050177EB08EF9CD26F4685B48DF4AC78CB45F23C900ADA978E54
98D45A1D0AF846F1BA43C66D2FB610C030A7B4851812388F9CF46C24F1D639F4
80104EA14027D2A8B444BB39424295D37C0BCD2D630267654E9D131322861D70
E0B80FD9748A5EA253D6B968FDED29A0B859540BDD9CF0BB191BD3A7420ED0F4
32740F9AA14A67AA6843609CA8F49C9B161CBAE81CB5A2D21B1A81C85E145B4E
282F776AA43962587250CB7FC1FF1F6FE7323B947EC204E2029E16D084A8EA35
CF9F1942D0AA0EC6E816C06EBAECCB61976060A64682B299E0E17729080E2459
22833BD52F7C8C32A75FE0443696E246D9695A64F0407BABA44ABFB64A9605CA
7BE87F3174A118F2F88D7691243CE333851E44D8E13CFFC4ED3F13C42BB08655
0F61CD6CD689E91B83E3ED36B039A6455BA1B94700EBDD793C7FC391677AE2FC
1139A2DC429ADC06B8128F21F2392DA84F96210E7B5D82DC8C5A2F6650E2CF91
9454A412DD28EBCA7BE078C60FC9962E44C130D536FF584F7D276F839E341C64
986928CC91A95B474AA41A6FDE15EFA3915AFE921556F45B0E96E56020F9DF86
586AACC7BDB8E2A345A011838B1A025084230F1F8E22E48D4F90702EF9B99C2F
2EC5EE376248C9715D3BED361573452000F4DC5BB6D5F4548E8FC7F73D44FBFE
60809EE998B680BA6A27AEDF00EF1FAAA7DA0C47B4394770D6FBBF76C0ABE82D
1CAC15E18C862ABC02ACA9AAF514C4A92FA5CEAC6621D09F5D92CCDCD45F649F
D769F64A08751B3D2FDFA8FE39978C910AE7C2562EC8D5E73F7366DA034E857B
E08DAA3040DFE591678A1F1395D6CAC2F2F397BA9839BBF5182BDB3BFC7DDF1E
6A5426397C7F87D0617922AD57556CEEB61810BE1AF8F946E1A9A0C80BFCF193
C9A539DB674719BE8CA72773D637012519836264D116C56F18F6F61DB9EAC490
AC950E01C73E74515620CA619CC39C894A93E2735EEEEA5DC130281F161A56A0
99D8E64EB8D05101D72574A91445B4AEB21D10C54100C88DB8F19B40CBD6B209
D541C88874C7B3FD7110CC92264051407B2FC4932888E1B1434928D2DA21057B
0E8258F700C9E6EE7951C3C92408EE2A70B9D16849443369705FABE1EBD22A35
2A5B937B1662C555964C024A79B2944E1F7974B938C466C2745C6B0C7A93FD86
03128BC34E2BFD28FB340BED7002752E8D0167056C82CC2EE87C78F54ED0F924
88957653EFCC7F34B19FCBC4E048063A63034F8C68D035096C5F33A2CD456CCD
C436B9237C472E760A0FD0C40100AE2F3072A3B210409BA12027C206BEDC7247
CD743E41D9BB0E49809D23E48638CDBD583573A0E5A2DEE0B342A5EB5BBBA645
6FE71E1E0A0B44EEAF27FB6085104CD80D02281F12EB0C31B31AE0A2D31CE058
91B6DD7241C439DF5657A6226575ECD9008978EF07251409610EE08D8770474D
339CBCA99E384380B686F97BF2ACAF0A96ABE155F9A4BC7EFFF58A463759A44E
E15D55FBECADEE74634C863D7D953ABE408F2AF9542D6C197D5C24DF04C5DAF3
52073D9187653A39BE33AE9C7EEC36B62AC4336CE9490FD3D8D26AEE9F104E91
56ED2DB632AE8832191FB369FBF037A945A5D751269B62C69FB06E413EEBD36D
726941E02EFC1A50FAE364CCB66C187B29451ED71C0F3B23B3E85B39D87D35CB
FCE63F204C21978F1F71208BF27AF805AC2C868938B927866143BF9EA20F58B7
AC2D92C07F8AC98FDE09E9F4113A8D4CB4FA9E4CA9DE339A33ECA5A0B27BA381
5F332FA97F6AFFBCD560C5B85893747C6E5C49D1CAA8E313A6F41FA9EF97DD23
E0938A648B424990CBB79F0C41B4FDF6D9AAA502E61603C2A2214B318701D3B8
2B8EFAD259B797D1E56A5A460E3872857BDDC137850CAE94203B9D802D857890
389D816737801F290BCF3D6169C1C70E7B0DB4C8B7AC33CBD220E141251A2689
42231BAB212D32A4288FECC1CF240780A4DA9542133615D12CB7F8E09F27B6BE
56C0B055186352E86A33776116684DDF07C856DD0174D4E8F0B369C17C2EED55
184228730134465943C972AD89EA97B8CB0D7CABEEDD33DE1FDB0DF651EB503F
A408848583DB975C2BABB4E01EE6DF98A300F96C71A8E179CA7C05CBB6DAA0A2
7B5BA5D638BFD139738B366C21BD6528DB4145E86082DD5C448E2411732160C1
DEEE0215B6275113F24AC2F30F1EB459A57EDE8BCFF28FE72D1AFEC5417FE6DB
9DA0710BC57753658CB103F74D2F63D887352EBCB9554466FFBD45CEEAC7B289
157D7315D8CCCBADFC8769D1AAE3B2801F71CA0F1DD1E4FDEF19260463AA6E64
5A3780277B6CB229CBF577E1A7784529DEC01C392195B8DC9511A5214EC7C71D
C91B90C1751CB96198240594FB448473CA530077DC611BCEF354E9BE8D3B01C0
A23D065EF135D83F1627F9ABB313C858638A2A2D9DCAC9FAD8756BDA63F5733C
0F125EB9644C849AB4225CDB9AC78595E401093FD36AC852AC897F55A10B2138
A9A28023BD40F0DBA638FBCDD354339AF8353B5CABC46E606345D38B1D499C29
C4A1ED615A341AE9157F1428C063891D6620C58F3F0FB7EF316D383615B5D05E
9E1F287FF4E9688DF0D01193DCC92DAA0D5013E7A0DC0C0F8A0119A14174D445
6BB1FBCCA03D0EACAEB57D06BD7F89515141B2214D72F0FA19D7A01627611FB2
9CB64FB3A05FC6D130AA7E4610F805017BD086F3256F8CB1DE5837A8B94B8C8C
D58DDD470B4D1A43458C16ADE37C67C5F271F3B05E123EB4D30A2B572EA09BF2
42F5E3AC26FBCBD05508202AD8DF19FDAFA111CCF0639C81B9C948DB8F8B4C48
BEDAC1F61209B4C915DF68AED9024C666E09FC59D8914725BE7E41E1EC619F38
54448C003BB86DEDD604CCA049DFAEE690CD84F999A3DA5B3CB2BCA1346EC465
2E8F26983590A20A578898FE8D8F831CEF738C8430E059A140EFE9985716FF5D
D6C4F1E3008FE9E9F15E70D443C1B7B60901C5F0A81E8163B9D09AD4085F3564
10B7A344DFE10748C9DAAEAB24C72D0800DCDFA0149F441008D29B755DA43797
05ACAAF82A647D0376673C1C3939324E6ADDBFD27923C16D81BC340E317C3911
6DC291F922689B5B1EC263E9E4601BC5DAECE3040676C56776C44BD95B39B9C0
C912875DB7452D2D6C03AFEABA112C399A13C09B12B2673583132851F79F5A22
DFC23149ADCC29685375D765620A32A2E6819CE97919C1137C83B21A2E9771E5
052F4DBCF152FDF1BE23C9E8638B7EADE6991937F68F4D4E9AC5A192302DD411
D06643E057BE602E71DB280598A6BEEFBD73CE58A844519E38462D9CE9E99E37
1B70D73FD09091C460FD603E84B57B22363A35C9E68B2E593B8A6F8543C4597C
385D9DB62A671DFC8F6EB6FFA0E326DAE4DCDDE339D093B59DD4401DCCC3B024
17BC178C2548EAF61AFFBBC0523C1DD5D43E7E129C16B8CEBBA8F29DC2098FCC
C57533468A13F2B14AD03FEC51C3B1ABF5C59382FB11D28E119DC72B9A6F38CE
098B58EB59334E3E5E87EF5DCE61C85F4CFB4F5A6278B44AE3C1E6069DA32B7A
935FB04B0808C78ABC7B0C99AD509DFD16CC5B93B2047BFC4191B0F0336E67D7
07008C08E640C051D86D65E44F9489E527FD6CDCEAD2439E89BD93C89F829D23
3CCF7C84AB38092B6FEFFD6D2780ABE03C026356A28A97C79807BBEB66BE490B
CB06F932AFF0162663CDC4B57D04069DA6C224217A237A3F2BA1C4DAF9C44775
E0417B812228B54C65A064661F314E73268162FB0F328D8A67F5676D085DEBB3
479E47017E95AFC4BEF3A8E8631A5191B6E93B149ACF0AD76236B1ED1E6D92D0
E6155AC4B69F6798BCEB64558C1F18A84507FF5D9F35BA3C2DA84A91815C2C87
91762227A8C394A82D6530D89CED8B85117B7BC8A6FC0A6E5E16686094A9B282
D949521E3462B85BC61F92E02676095D189B5198DCD7A71074FBC12D8CB970A1
A0C2EFF4A1900F8E44F0BDAF9F2CAEE26F16FFF243589138F49649A4085E3B65
BC607117AE53E4BFDFFD727FC1F94086EC15677D06E7043D4140E16B7CA33AEC
4508462410C563A0C4DA14D25128D214693FE2C79D7E4F95DF3FB19520961C59
6C9CE76021699BDA54A80296E12DDADDACB145ECDBFCB68EBA3937FC4FA3E2FC
B47B20F0E56FF3BFDEA0EB586408A6BE41BBF7C0A7DE09C7815F3B056329565F
854F263ADC02D21327D615515DFAE9835A799BF50E5AD3E0AC8515CDDC33C89D
81BE70FEF39B2BB546E64DB50EBF2045502270C7ED000431E614FAE7450D8F40
73CCE8BFB88ECB64A2EC60E49506BEB653886615B061173AA6AAAF08C4C9E67F
61B302C577186954D8F4B253789AD7A002FA2F8B1D7F56777C3ED6FDABBDF5FC
4CEC8007F0EC8452849C58CFB78F406BDBC44E92DA062B37E632FE6DF0D7AC1C
93663DBEA17418E997377174CE3E40C6518C3D13C65BD67FB2B32704BF80A1D4
D0FC2C0AE3CC2D1022B6905A42BEF54CFBD564FF568F364AA5D70CC5D515C765
474FB713FB8E0560A02CB62D2660850CF682377BA5E213CC0AA0D90C62315135
1AA3D1EBBB88495B3B1C896EF4E54EF1943BE97B3A3FDAAB323DD6E0E31B0148
071B02BD7E910152E11E31E506E0F3752E4FF0D7DAE4370744B7532914B0DED0
C6568031C2360FF939002FB89F8A4757C1E30FC40EAD0881B435BA326C2A04FF
41694987A073773C0E998FC76D2F96721A1EDB2F3C2B8094D080C8F3150166C3
54A6BCDE7A10337A468756C8012A24A11F92B04AEEB61856AC171D05A1352ECA
C315C0EB2AD44089F9CF17FD5C1E50CA36D62F2A0C2EB3B83A8E1D90FAD06F7A
3BF8AAD8E96C37A81E5C468B6B9F7E6657C9016F7E7561A4A06645E36C368D6D
AC77303F0389B7EEA0ED680E08FCDE1EFC594E44FFA7F62D9B29928415DE259A
3912C483AE0A98A3989174B667E711FD6F89A31448CD92E9BAFC01C2375D4BAB
1F5EEC5FA96315EB9A31D102CA9E45012CDD4A94954AAE5ACACFECA8D8811385
8C07783F1322D558E8FEA1F69F1B2FB469BD87BC59632E3F753D4D2453B68D5A
E0D6E317EF97E4070539FD21764849652C363D6F99E95BFE44A98C193227B60D
A762DB24328755FE96015539349AD4612AF52433F0941035FE87D3C6D9847FC7
2A073897F777A4C4D5DF72AD3492C324BE31629C795167290E690DBA565049C1
03A0C9087102C8433C3FBF24A71D5B3286D8F939B09D11FC93D3221A78C8EE0D
41D01B54AA75C2C4F7F99563BC92A8757D2D65CF837A68D4383C50228CF3FAC9
877B19C62D8612FE4AAA8D29CE79BBE1A5F6040E20300E45B07361CC4CA31A9F
E75384FEC73B5E431C5D3ED93E42B090C5C722253DC8ED5331559F7D014F14C5
2AC257408EA2AA1F0AF1121BC444CEAF2DDA00F0E74C216B6A2FF72BBC38AF2F
4D86958C0104F0A8F6E0326FE05461B3
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
%%EndFont
%%BeginFont: CMSY10
%!PS-AdobeFont-1.1: CMSY10 1.0
%%CreationDate: 1991 Aug 15 07:20:57
% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
11 dict begin
/FontInfo 7 dict dup begin
/version (1.0) readonly def
/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
/FullName (CMSY10) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle -14.035 def
/isFixedPitch false def
end readonly def
/FontName /CMSY10 def
/PaintType 0 def
/FontType 1 def
/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 3 /asteriskmath put
dup 15 /bullet put
dup 24 /similar put
dup 26 /propersubset put
dup 33 /arrowright put
dup 102 /braceleft put
dup 103 /braceright put
dup 106 /bar put
readonly def
/FontBBox{-29 -960 1116 775}readonly def
/UniqueID 5000820 def
currentdict end
currentfile eexec
D9D66F633B846A97B686A97E45A3D0AA052F09F9C8ADE9D907C058B87E9B6964
7D53359E51216774A4EAA1E2B58EC3176BD1184A633B951372B4198D4E8C5EF4
A213ACB58AA0A658908035BF2ED8531779838A960DFE2B27EA49C37156989C85
E21B3ABF72E39A89232CD9F4237FC80C9E64E8425AA3BEF7DED60B122A52922A
221A37D9A807DD01161779DDE7D31FF2B87F97C73D63EECDDA4C49501773468A
27D1663E0B62F461F6E40A5D6676D1D12B51E641C1D4E8E2771864FC104F8CBF
5B78EC1D88228725F1C453A678F58A7E1B7BD7CA700717D288EB8DA1F57C4F09
0ABF1D42C5DDD0C384C7E22F8F8047BE1D4C1CC8E33368FB1AC82B4E96146730
DE3302B2E6B819CB6AE455B1AF3187FFE8071AA57EF8A6616B9CB7941D44EC7A
71A7BB3DF755178D7D2E4BB69859EFA4BBC30BD6BB1531133FD4D9438FF99F09
4ECC068A324D75B5F696B8688EEB2F17E5ED34CCD6D047A4E3806D000C199D7C
515DB70A8D4F6146FE068DC1E5DE8BC5703C1951831CFD3569BF1CC312382F4A
9021A393937B4273C787E9D56333F42371DB5838AA49D6AEE4B508186DEACA4D
7EB0242FFCF2DC0A6A3768993C4F8159586243A43602A123BAD2FF432665641A
08F5697DA32F3D01F751FA6D533AF3C41675ECFFEA038AEDF8A5C4D7918985F0
0B4C719C8D79A2624D29812828FD084205310255E200EFB8C3C208BFD421A4B7
5402533879C3CCBE680ECB321F2ED81F39792B76507C3F0D61ECD93DCE5A8F72
05F2AA25F63C8C1C4E7F1DE769CE81A2BE1928806CCA503D4A3F026672E60265
99C72AA5AA4BBD040182AB1949252DF929A0CE93A9E6F33923CB07E79A7EA1AC
D904EB899D62EEEEAD0F7378EEAC81ACD5A5616024C109774014E7A9E64F266F
A14DE85145B435699EE994B80FAD906FF9BDE5E97D4787E367D24208C324FF69
A8CBA574E4C38DE62049E6DDF5DDB9035E44B51E634077911C91AD9ED640971D
D44335640E47314F6E7DB960AF74AF597249F7FE8B2C2DDAA8EFF52E556434F3
F021E3403E35EA8C9DF53857A987DDE32CB40A0DE6A8BB7F7E22E0E7A378D1BC
B71314C18FA3528C8B86051308EE3FF168A630D583DBA55C5825512F47FD1EA8
DC0F4EC92A953D28D80CBE183EC10DF9DEE69787E0648781E2120CC56473F709
C58E9A1C33DC5FC2217F21FF358E39BA1954A4D8FDAABF1EC577BC2D10A20E30
7B47A93E531DD4A8754E70BAE617BA0FB016BED197BBBD62B7540027E7224E6B
C8BAEE505846398EB27A6ABA0A32FE5B6CFA4255BB411E2253F16906622FC9B6
5BCF6FE8F00D5E23D2BCC74BF9727C91DDBFA9A86CDC96D059BED6683823A256
AAFB7ECAA3A1551927E6D2EF23742EBBBAF5DCFF0B55F227A9E71F1ED18B770A
37AFCEB34DCE0D342320D39DAED3E7E91153DAAF713B10CB0025E83B2E913020
3F5007121224C95ACACBD772CA8C8353DDE744504F3F8295CF9225B46607A479
C9F4B1DB97134E4676D2099E70993605782D9B46B0E1FDFF0CEE996E042701A5
0288A43A9EE09EA08DE55B601BA4AFE04531617AA80141BA62D4E38067D31C1B
33D2046F81049A0CEDAAB0ED62D962EE2ACF58FD42F4560B1D71938931A52823
D73623199811BDC9ADCFDAA37DC43B55EE18D8E698C8FC609611300A98DD045C
CB53EF20E00313968E71C913279C4D2CEB8EF67C618A2D153AC76EA6066B6166
FF9F5B293E44C894D6A367706AEAE0AFBCDE7E2B7CDE94A6C8174359D529BED5
287F6D0A571DA8A29A15641F6092013214B4FEAEA619DAB248B2CB8B757D0C3E
054986DC53CDC4FEBF7FD8AF1CE066ED8EDAD01E6587CEA7C17E3798941599A9
FC5F4BCE7F0651F127F790A2B14CFE88725B6EAA92FCCADECF12D17ADF721142
62F650483ED6D2648A8EE5F030FE35CDAEF89F8A846DF5F3FFBDA44A14D6E590
EB2DCAC84EB2D07ABF0253894E2109A24690BFADD96586703DA2A7EC769D6999
2C18699C56D2E59BD50553721C136745ACB1D0D4FD4B8BA644B1B11F526880FC
2C4253AD68025FCE580B0B7DA664B14FD95C384B20B841318F2CA701C74BAFB1
8E667DC226D330C1D1D6A3B1965508056284FBF6F54C1AD48FBE65F0B01714A0
EB1E501E5CEA12B598DEBA58D3282FDE58A1BE215CECD63279CBA6FE61C8B89E
AB1358DF6018C87F94ABA21DCE5481858D37DE357AE231CDDE8222B8D35715F7
F0C3F9BBCA349C53DBC6AF36772A97B1E6F93F1254282E82F3DE6E11E8D02A98
EF83A897675E65
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
%%EndFont
%%BeginFont: CMTT10
%!PS-AdobeFont-1.1: CMTT10 1.00B
%%CreationDate: 1992 Apr 26 10:42:42
% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
11 dict begin
/FontInfo 7 dict dup begin
/version (1.00B) readonly def
/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
/FullName (CMTT10) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle 0 def
/isFixedPitch true def
end readonly def
/FontName /CMTT10 def
/PaintType 0 def
/FontType 1 def
/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 34 /quotedbl put
dup 36 /dollar put
dup 37 /percent put
dup 39 /quoteright put
dup 40 /parenleft put
dup 41 /parenright put
dup 42 /asterisk put
dup 43 /plus put
dup 44 /comma put
dup 45 /hyphen put
dup 46 /period put
dup 47 /slash put
dup 48 /zero put
dup 49 /one put
dup 50 /two put
dup 51 /three put
dup 53 /five put
dup 56 /eight put
dup 57 /nine put
dup 58 /colon put
dup 59 /semicolon put
dup 60 /less put
dup 61 /equal put
dup 62 /greater put
dup 63 /question put
dup 64 /at put
dup 65 /A put
dup 66 /B put
dup 67 /C put
dup 68 /D put
dup 69 /E put
dup 70 /F put
dup 71 /G put
dup 72 /H put
dup 73 /I put
dup 75 /K put
dup 76 /L put
dup 77 /M put
dup 78 /N put
dup 79 /O put
dup 80 /P put
dup 81 /Q put
dup 82 /R put
dup 83 /S put
dup 84 /T put
dup 85 /U put
dup 86 /V put
dup 87 /W put
dup 88 /X put
dup 89 /Y put
dup 90 /Z put
dup 91 /bracketleft put
dup 93 /bracketright put
dup 95 /underscore put
dup 97 /a put
dup 98 /b put
dup 99 /c put
dup 100 /d put
dup 101 /e put
dup 102 /f put
dup 103 /g put
dup 104 /h put
dup 105 /i put
dup 108 /l put
dup 109 /m put
dup 110 /n put
dup 111 /o put
dup 112 /p put
dup 113 /q put
dup 114 /r put
dup 115 /s put
dup 116 /t put
dup 117 /u put
dup 118 /v put
dup 119 /w put
dup 120 /x put
dup 121 /y put
dup 122 /z put
dup 123 /braceleft put
dup 125 /braceright put
readonly def
/FontBBox{-4 -235 731 800}readonly def
/UniqueID 5000832 def
currentdict end
currentfile eexec
D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
2BDBF16FBC7512FAA308A093FE5F00F963068B8232429ED8B7CF6A3D879A2D19
38DD5C4467F9DD8C5D1A2000B3A6BF2F25629BAEC199AE8BD4BA6ED9BBF7DABF
D0E153BAB1C17900D4FCE209622ACD19E7C74C2807D0397357ED07AB460D5204
EB3A45B7AC4D106B7303AD8348853032A745F417943F9B4FED652B835AA49727
A8B4117AFF1D4BCE831EB510B6851796D0BE6982B76620CB3CE0C22CACDD4593
F244C14EEC0E5A7C4AC42392F81C01BC4257FE12AF33F4BFEA9108FF11CF9714
4DD6EC70A2C4C1E4F328A1EB25E43525FB1E16C07E28CC359DF61F426B7D41EA
6A0C84DD63275395A503AAE908E1C82D389FD12A21E86999799E7F24A994472E
A10EAE77096709BE0D11AAD24A30D96E15A51D720AFB3B10D2E0AC8DC1A1204B
E8725E00D7E3A96F9978BC19377034D93D080C4391E579C34FF9FC2379CB119F
1E5BBEA91AE20F343C6420BE1E2BD0636B04FCCC0BEE0DC2D56D66F06DB22438
452822CBEAF03EE9EAA8398F276EC0D92A7FB978C17805DB2F4A7DFBA56FD6AF
8670EB364F01DE8FCAFBAF657D68C3A03112915736CEABAA8BA5C0AC25288369
5D49BD891FABEFE8699A0AE3ED85B48ACB22229E15623399C93DE7D935734ADA
DA7A1462C111D44AD53EA35B57E5D0B5FC0B481820E43222DB8EFCD5D30E15F9
BA304FA879392EE0BCC0E1A61E74B3A1FC3A3D170218D7244580C7AA0DC65D19
741FA5FE6F8CBF60250ACC27454BBF0897CA4B909C83A56672958752ED4B5E79
E18660764F155E86F09EFA9F7685F2F5027EC85A775287B30E2069DE4E4D5712
E7D033481A53A2702BA7542C71062173039030CF28D8B9C63B5596A9B42B33E7
D922944A38713383D3648A4AF160A3B0C8F3379BA4372BE2E7EA49AABA75AEEE
C5DDE1D8BF68483C3D21271280ABB91D54CC819680322EAB72E1250A760BC8DA
726405EFE420635B5B7F0B48752C06083E92BDE06401C42A2C528C8A60381227
CEBEF0C9440DC034DAD9C19FB27DB399BDAEE22053591D6538587C768C1B7B0B
7D1E222D2D8AF3A6473CC4C0D6C3E0DB49068CEB8C9BD1C5CD486A50DAA10BC7
7D6286142355E3F21DD254E27C00C442728A0BAEC9D3F17AE9CE320D317A2CE6
B61F2E522FBDF3F7D10C8785024E6BB3DF7D7E698BB17CC4066B3E647615499A
0097AABC876D44898952954D26B7F1864F5406CF60DC02A14D94DFE6F5A061E6
1A5863B63A724EEA8553D8869606E127478D08536B882CA2E5DB900DC43E618D
2064B98B7C18E287D6FEB6A0DDB2B59FCFF378F0F1AED393BF85E28AF7BE91A3
A835F0896ED977B1C5720C67A056B8254FC47E06B3468056F8D433B9A877D32E
5A756429A9D551E48CB43E39A7CF1ED1E1CA038F43989AC7CA76DC92E67A72C1
373701B09303E153EE280CCF9D92793B4B2D90F5236AC361A0451922BC2207FA
6A2E8564701CEF7DFB72844A0321342AA3B6AEE0EF8928917A2396657D0ED969
C88780196E5F903AEB022A4CEDB70F36E38390B39303C32AED1463DB8035838D
F8B7041FF4B7CF03FBCF06FE08AEB3358887A94EEFF9B5C920B18BC33548C3FB
89F171BB45ABE13EC65737A4224165F47D33F454316DDAC5604DE37AE9B7B3D6
B8C86EC36DCAE43AC734CD7048ED6D227F72B55B2A6A96187D1364EB31556A4A
BF0C59888953CD2765A3B4A5F3715F242A89B4BD709DFFA1449186AE27C8BD14
3D0B5E03A723CCB86BFE18BF25EBE3A6333F83CBC8C33A0AFCBCAE8F9BE6FD84
8F2AF7F6CCDD3BFC1257DB2AAC7E8AB86DC029E9A4E7359A1D4DE362017A2531
B90ADED92CFBC42063B44E42E376C4F1FF5D5B347CAC398805FE76A645A4B290
58841D9821D7F955D3824CB1754278E8D6B61DFE0193B7827630671B4D8DFFCF
9E48D7A8E5813605B8AECD46918C23CE4FB77C94C9D4473CA173C1A730DC3F3B
DB4C9F3CAFEB58A392E33C4C13E488B77BC143B76F52BA76803BC744FE4FDE0B
B66DCB054487277DFEC0048C3D0B1F6CDF5CFD421BCD37B99D16EDE246ABBF5F
0F768EC862D5710FC2172E89315C64CC7361618E122C790A921BF929492F8A77
91BA5B1FE9887C0C8BF1535FEE00F07017B14BBDD7DFF099D160EF2987F27EE2
45664AA06C3F9047F81DFA2088979B100BF63CCA56EB3A80D23F1FDBDC09CA7E
B8096F325B93AC64D35D23A4403FB57D00194DCCF275716DA56C1B9EB7CD9791
A0A4B1BE15C1B51C0FED33DDC9CE8AEF7BC5EFB6592D78CD3ECBBFCAACFF68BE
3F4C2EBD95457C4F2551103A8ABA9F41592BC91F8F3281B6545B10044F7787E3
F0CAC35B4CD6E67919B10B5EC7293DA4BD3D325404A7C53C0E04775FB7B52F45
9E07A5A567D642CB0B2DD2EDD350E6D14542F8D5F6EF190EC77F3F6351925DBC
B00629C4B5A9A69F95890CD4A241BC4C5BB3EFEAFABBAEDF855CAB4B449A48B2
22DE1FC0EB74C1D8EAFA6CC9EF173CFDF8562903711951390F793A6B2F618685
2EB6F2BFE2D101BC8C8C6D7A0703B2F8F0FE0F9A1F339D8F9AFDCC33FC3563BF
7A3F22C7376032DA486FB7E5E3404D03D78E331C059FB3401354352B4790B99B
DBC2E255291600FD317ABB94CB410ECEA514CC76B22D6DBDEF87C5304AEEDCE8
579362BD47D756E788278A0FA3944E0E7620B570FA53EA23CF8332EDA288AE0B
2AAF3384B00334197F46214360D28D131234B2C3AFCACB866475538B3A5E1758
2B5D0AC1E15DC290D76D5C668DC082EA0D13A369B72469B57CA661B090053C9B
B97F45685EA82646DFFEC4B6FAA0952D2E292073ED02C94F881328A903753095
BA4EEA23EFE620EB3C95DAB00F8CDDF95383E444379F19A179E90EB1BB9AB6D7
32CCF87B13AABE926B5C7DA4FA929FDDFDB66A830E8E7B37536C53326F7A9BED
1EE5FB6609BA0D81D9084A866499CCDB6AF3E14565BF6251D41F5DE33F396F30
EC59D8D62500D49943F7D193073A53356DC8A601277393D07EB1C986227EA576
9C12AD7D0719F378669D1249DD98E34065CA9FA354D8F56FA87824BCFF747599
790527C82EDF73E84AB89A154B7BE13FA0B7FDB04D540E18902F3BFA3C936EB5
CFF34946A697B7E42938144DB7C146C7B5EDE97781299B3AEF506A2DC8A45D18
C692484C9D69624D811B5050BA1956D037F4DF41626AF695C143FFCC1FF310A9
D4DEBE4AEC2B99B0209B01A85EB83185B4041A32479913AD6DBD2A134C3BEBAA
52B5E2C1CFE86D8F9A76F2E804B40DC97B97FEBE45C14DD102E3CDDC4F68CAE0
59A2C8CCA9553D552BFBFD012D7CCA094C1FBC8384158AD8CD4E30617B620561
7E833A7D00554F04FF717E8E47399E9DB8AE25FDE84D8BD2CDE5C5128020E4B6
8DF8CDC2F3623EE3D7337954585F3E9C87477AA56E0415026D3B1EBF35FC4B99
59122DA845425EE957EC2461FACE4700D0CBE54F43605F4047938A05AFD055C3
D710180850E19B37356C998446312842E1A732BCEECE63E8A438FD0F628B7A81
FEF7CE6D87EFD43C7553329CB6384F7238B7E7DDDDCFD2D8104791A843748A5E
BCE62275D3F5E39B56BDDBC334C46833F46047643C3B1CEE991DBB9F99C9852D
CADB19838A2D68ED0ABC67075DEA051CE32757C1040B54A746D87393E0109BC2
40E16C930C6A37F42C4660D4A2DC313924BB056FB8CE53A6DFCE210C64492052
44C676D7729370FDDDEB3A5966695D2412AE6D9A95DE6EF681C2A3324C223BDC
04561EACDE29429187D6113717D680411F10C004E3C193F665C88BE0EA3CAF51
A13372CF269C0962E62F4E3B0A26EDD9970C868FE1B77117A95E6DE5D4E7022D
62C0EE616C668682B3D156C758F3C82087705F0D157379F805D2C28E1B5DC457
ED334B4CF0966D34C71EA25EDD71C39E082A33D96B7C757B7E0415725CE5AE51
26DB55B6004EFFC98D4D9373A0C866B90039AB9449D57CDBF37356D0AD60782C
BD135B7705B0825BF0436FF28F66192D8AEB2765187C3DB8925F3AEBFE42D3CD
B4CEF753F8FD9E5D776A606D34AE13672C950723B2DA1CC52A5A84EBCAAD0D0B
3F53FB6624E92B018E292B2ECBAD36EAB2AFEB8768568C3B93DAF6E46210988E
9DF9E66E7DABAB81E29B0391C45E2F22C7B24DD4C4893EC957D7E05D976BEE0F
819CDD1F23D2C741F51EFA858678C11C430A6D628BBE87220307C30C89EE9D45
88CD3F609C7B8D9B89C84F8EE7A3F86402096324809FBD270E41986A4B6C8C98
4F9813BDD2BD4A4B30A82F46298251E64CE29BADD234570DD932806FBF134FE3
48284F8E771DABAF965A13BAB77368F98A3152081501EFE785D56B85C1BCA9E3
B438B1D7B0986370FCA16E4C472740F28CA6CEC39F63A1AAB96CA77CDC7A93AF
D6B179EAC3A2904C31DC2D6EE4CA8B834DB2F1620DEB97842078C937EB43A05F
E5535071FFB5C764657CD90393AE75DC4C303FCFED0E22EA7AF8A07C19DBDE32
32E635BF0061A2678CD52F6C16EE42B328E22CF48A3E0E072A96769656EBD186
4EB5B62C6263FEE46406970C1402809B06D7692BDC2CAE7257AC62852611F04D
2B9B9CDA3D5208587DFEF419E5AF80116A0861A9EF389C909199130E5A54468E
52B44DE4303C7D69FC61948FB9DEC65ADAC280D91C951A108E06BF2FACE867CF
DDAF8FB4777B6F6D18B37032D24689C9736BC569D603F82FE22F6B37C8EC42B0
C609FBD1E6B2366622FCA9E4C843C568A6980C6962D92658F4C9F8C695154E95
EA5628FACB3B7AD5E93F00749803545B53D1795DEA4E7F057A98F83FA3C0B522
BBE1D5E3C9AB0F1A7BE27710A13FA58E45DE375AB99E0E2BB7D986DD808746DF
354B03EF9113830D83807BD2A22B2DE578AC47620A1EBEEA64CBA72B77408B8F
AD57808C6CAB3C000B562D24E94E225E865826750C784CB4454B01269B25FB81
1E53B9542B09CC26AB13095C67F9AC47F789CD26E372652F3E4DEB83A7D11E41
0F24DAC045A0E118E9D84875216DCAFE32B93B469CC0897E83B34AB16E7D1CFE
54BF493443EDFC28269AF352048E734CE90536DF1A3EB90D551E09D46097999F
7837530FEF599D75F847648463C46D3D97CC74FAF644A3C524017E3C9CE13CA7
48C67D2C1F2F659C55104729CB33D74BBD66CFA3130F474AA943BC142924D64A
53DA0FE86581CDFB950DF59900B8045A9680AB0D63F993759F48C9F63A46B255
CE560E967F183944C5EB5A5966422ECFE5524086D1357AB0437D3D90627CCBEA
11D75BA309F9B9E912AEEDFA1E2464F03A92654ED79EEA1181D14D729442BA01
DDC36272B008B62DF66AC92D0828100115CA192ABEF4743FB52C8E04EDA5DCA7
0499AC1FB3AF8285FBB3B4E8FFE70B9504214F1E01070FCEC76387FC9A473535
BDC8496CE3D64BABC0D748F94E183E7A77E3645418225A8C02B316156F773C71
20FF0EA47F4CC5C1E6134BC046B5342173C6BD7E0422DACE76FF5E8F5339F09D
0D38A980D5EB44846D4092F16C7090F9A97D60B1220FCBBACB6A87603D3AD094
DBA4E249D7D21C50805122CB1DAD8C74B3079580236273B0F63E846C8CC9F8D0
41B1BD47E3B03843DB7CB25A58D10CAE616D8B5A145D7976D5AFB2403F6DC293
9CA32C4175F7269C0AA905CF228AFCEA033704E52F60C880AB64829585DD0C78
9678B51CFCA0A61EBB50CA8F663030CC0B230FF0A1D5761FE04CC527BF96D61D
854B3306375CB3B6F04885C4BC66E4A0B8B36B6B93032594A0B85AE2793F828E
FF5B2CD0C3F5A2878F7D35151FC3689F248F235D3E01A022C0018380BBA42EAE
056E6192CB10DD3BE1BD4E388662845E7D018049671276709E8FD6BBD665D14D
1D6D404506CFC0CCF0C84AD54544FAF7D581FAC3EBD9DFB3A8F2622C74ED86BB
E861B16EFBECE5182B74F1C01009335F4E5F604A602B8C93F6EC88E5C05E12BB
2F66529CAAA880DAAE638BFC9D74E8E3657AF0A0B7E65D28983D0E374CB0820B
1453FA23C07E3F7296B4CD406DE61BDB22097A85966C5AD59E865FDF9233A7D9
0CBFCE494ABE64407A49CF7F80EB4F3A18B918CDA916235FA107F3AFD65D544C
EC7AD96B4C7DFDD20A43A34895A6F144B325244BF21FE3CFD2C867AB79E66B3C
4FA370FD295DCF31904DC4102C9B3DEA424C0A397DC04353F76EA479749E3A3C
4AABB31D5E71B30299A81A4C2494D910B53F3E1F9378792CEB4AF3CF88B761EA
8EFCB19F195CA8B1F0BE481603B091BF3D0370929A2239FAA97ED06990AEB025
1FA0BE39B42338B1B3D52ED3EAA3018A5053E8E632154CD8EA003899897F5928
4B4F0F3D4D2F49534405C92CEC686E7C9A811572E69B91E946A964A9AD8762F2
B3F1509DD4E9F3FB375E3521A813488583173F3B9ABFC1DBBD7AA2BF3D743DF1
CAFD43FE4A9362E86EFB36CCEC637706FB9C24D969EB401798EEB0D7ED4AEF7A
371FEBAAFC9C41F5386B15D9C34C93A863F780A78E31726B3AB709EDE99287E2
4AD5DAB8BD9A4D826DE3D53D632F9C5B17353B40F370A3ECD2F46F1129A565CA
217ED8CEEE2C5455F607EBF8BFBA7BF4FB9B58E13CE24580520C69BE0074E1CC
40B2DB380EDD70B16D9BFD91BFE60FA877714520A19501A12EA59E8A2F777EBE
62AE60C8A3A8F2B925DE3AF3E810AD1C4F84CC759BDB8803F2F7BCD8682789C5
E8D07C5A3F56C59EBA449F0FE0978F860AF65733126ED12AABABB5DF7D08664C
2439D3994E738D1C393FB5A5448B6CDB316F3BCE0CE08F8EF3F35504C3760DF6
7A26ADDDCB44D587D9FDAA87E4EEFF0E7E96BBC87DBECCD9E976E9AA2DB56F5E
EFD8AE7A5DCDE79B9B73C353562DB97E99D995D29395996AE704A48241890E51
9908EDF22C5EAE65BBE5CFDE187CC319EE0123CBBF2E72BE34C0699CCDA52E3E
CE77C5C3C5AA537D07A20597BCF6066E6FE4D4AF9BC0756436634FCCF881B7C7
D9753CF4A911F03361A79FF2F1435040B12F04D56570E46A89734495FB489190
7CC95BB1165924EE0974D873633F3D72FACF130449D0A3BD11F781EDA3FE2B9D
BFBC21A468A30B8B5BB93FBA3CE6EC84DAC8800A482566F558AF3DC9F0CAE78B
0796DF13B7202DFD71A77616B6039B9EE7096709BDCF330ECB99BC97BC771A63
219201A0E710A97B4C7463FE552B52A282D504D690FE07425167DA7E71A0BDD0
BF62408CD0107AE015C928B838ABEFAEDA885F9624536052AA2F57813FCC0BB1
220060B50768FDE9CAFF72C5BA0B637E8D63A672B929FEDCC27CE0E3578CDFA0
C2BBEB4084F59AA8AEB1EAC2CE448364C29E8B8F7A5FD7866F40C2A64EB6230A
A6C864144EA331A8F3CDDF52349FF7F8B8E8653FB16B035F45E448C343251FD2
58E8CE23D2774FCBDA280679035C86ABE8E1299F7CF4C4CCC479808F5DD053B3
FC6C7FFE8DB7521FC782F21AC5DDD2C3C2496AABAA51C0B0CE34260A433A6833
8561042E8B9449F9D8D4A0345D89398BDB8D8B169CD03563C6251736835B4ED7
BD7D898E4A5416BDF0910C9BFC99AFF2FD38F28ADC9AFDC0801162FF9C14BF52
0BA47CA0CC9FADF65D6E7B961DB9A5C5172B8A29A8A0D48A7F53C69DA2F48BB4
5DFF7CFFAE93E9C062DEC541EB911E7815C8584BF09610FD63C2EEA9D96835B8
74617020BF9948A3168568E71D57C3188681CBD5554548DA56750EC9EBDC61B2
7F38F0120BA8BB792F6D7A209024A40D4B65AE83EE21EFE94457E913CC7E1E8B
9A9A66B18C5F5644617AFCC321D2AB87AB145BDA0F7F7B73B6028AC9EF1C1C73
640B85FC5F43DEC9C5DA01A2B0974A2246E91AE04D88C007633E87738F2D4C70
D69132ABC10D08C07A37EE0972C70EFE3BFD64A76F4DF250D5251CEF91DF7C8D
6C647752CD59E4ABABB508B67A0079129C217DCA6E0BF9BDDD3832839F75934E
3B7F103BC6999C7FA6807E2D7B01603118C6D5D789C61E0C9A5A841E7BB123DE
38A0D07AB9024407AEE6A97CD3E5B57A46847AA7B9BA0F5BF7006DBD3719CA48
39B621286A3EB039A46E1D77A69F1585F39A83F829D419586F8CF14923EDC1AD
76605A6C16243CEF5CDE08A2EBC04B9883ADF3FF09B7921F6D78BBF270218F78
681C8CC8997E4235394D7A0AC57AECBC32027B2E9AD387B45A29720997AC781B
D5C692A224BF7B13B02F83AAF835FA3E5CC88623E076D62777EF48F66691AF61
320773DC53215DD7F7BB5E299C2758B5E83CC8B54D49A8BAE82FF26E8A72F96C
D2179E7CF36B66D45103D3B92548F34C15AC72CE6F4A0C6015C0263867B50A5A
8458C7AD2CDF1C11F6EB138788CE350E690B7BF10672A163A7E7210A150B8122
907ABF4BD7685047FDDD95F58305D7B140F7EDBDCEA1DD5DD8D79B52784E52CA
D3DC5F0DA765E556A54FBEBF0577420DF436913C3054C6906BA3EB1210AEF9DA
2E7B624DF2953AF8AB000AA94640FDC878568390B5E0AAEE57A59C078246838B
406863CC14D3E36815345B5DFCEF39550044A491EFC77416AF81AD373D6AD6A0
158DC55ADE7976F50575F7706CE2268B7E10FAE6BA69F15AA5FD351DC4333427
347FAB04F88826DDBF6FB844AD4E80CAE58E9775728F565A81387F1FD057CABA
6BD8C10CFA4F0EC7A045FF567BBBABDB03C04E6D29048C98678602901B31948F
886857BA1193B5D33F0F9AC5EA63D7D4EEA00523E19FAA6935F9D51DDB0074B6
ABF2B264C66B51C18D057E854AF12F01A24D4751CE60A25DC0584EA1C1A97D03
8326CCF291470F1AB8CAF3AF9CDDE0FD87470C975C94A75BC9501E7AF64B90E6
73F2B799739A643D388B41812E2620118AC6344BDDBB474233DE312D4ED69A8C
51AD10C5356437908017ED61B4998198E3C9C553837361E07379A46D02DE6340
E09632B26B50AB0C617F8D6D40BD4E5330C5836588BDE362E654A09C609BC572
FFD4292E3CB450433B1EFEC0685B9C4A7114F06472B76344097947F2B84BCF2D
B6AA80B1379B242032C7CA9948BBE66F6192D003B85245FDAEF75F8EEB2A3681
8F1813BA63E0746EBA5EB97952C7DE7F04BA4DB8E4ED77C7183003ED73ED35A7
5FC09C20CAEC66F479D696F9711C04C7246B5BBFD847B9B092DDAF02B10AB952
829052DCAE601EF166DCCEAC744D3F378D0D3F530D968E84502D5E437651DE69
14455B6A15A688E2C937EC9326090C4D1D4BE971302E819CB4E9F7B614C69D81
C62BC1FB70B7D313D4A79BE890E2AD39EC009C04C6981194AE0ECF36C34D5C86
89AD56D5B5F784DCAA81BE7E274402C67A05730B94BE88F207251D1E1AFE5D44
D5D510131176659DD1E65633EBF3B032DC12E3F9387EB4F935C9647A3909718B
B07558C9A08F0CB9005191796280CABB03B81E5B86E342F2EC0CA5DF99C24994
2717E233B86E101127A16EA3CF3F1D621EBEA6991BE53BF6F465E97A76663956
496897C20EE9DA44901CA15AE723D172174B33361EF8F49E59670F6E5FE7BA18
812860E96BD43AA7E43A018732A97E78DCDA3EC7AC0EEE08BDB038E34CCF79FD
C74393502F747E4E4D2166B183888B254D214F5BB6BF83921C48C65ECA632ADF
04985D309EA3D2E34911CE191B596E6E7A70CDB3D5765E855563360716AB7FBE
00FCE08AAF332FEAB86EF1B4A5BCBEFC98B4A9767FDDAEFF6CD0CC98EF1D2552
531E523D31D8019FEB1C6123BBF799FACB633534A143DF23143C42B6F729BC3C
4C7C0AFE8DE95F3219A15D3EEF29A9D38E5B7282FA935692E520A94ED178B558
976B4E726BC8AC82294B87673DE57727E534DD0BD9933857CE6AC17ABEDDE1D7
499C67D674F6541EF9B19D2417F899ABEA4AF25E4C297508915D7D138B5E43E9
2BD45FB5162B06BD4A25B321C79639DECA2EA3A7D9CC2638ADE3BD5C8E89862B
FD658A79C952444DAB61ED0ABAA1908CEB1352217237DD19CEAA1882A4FDE07B
E005CB3EA55F25168A1CD4785015A3367767A2B2E8D6970AAA2A3A5F6B142358
619A46DAE6A3B87F2CED8A0E7DEA95C9720782350E58C0365CFCD0DC61B918D8
8D13AFBB3FDC13B6943DD77B55D5A2C54F243C291F7C40641C1E372E062002EE
B8A621BA54F449843E50513ACF7A654582DD30FF120DA78214B60ACD11AE167A
517C7C425F48A33C0C6971440B5708F6721FFE6AB1FEB0B045E1DFCE8364950A
DDCA290957A81BC7C44697B8A0E79D3F3A2F90D512C1F26AC72381B8123469C2
5FF101CF55300A4B7173444C8703D3C59F262F9F4CD238F8827C6E3DC20367FC
0F8725E6550D2132EA965A00558C0AC1E299CD343162CC2DF78D02D31412CD9D
C30F78EFC4FC4288072B073EC9DDB237A3DCF3E48501220FF40C793841AA6788
B39F04E5FFA95DA3072113C66FD582C3B8A2ABA7CDC3E9BEC8AC7612010709AF
18BCF24C47A2008327EE6C182823A17B87051E10F2EEB3D3821E37B003262AED
CB5B804F16E07F456935F601EAE3508F5BFCE4B890214B805CF9C7CF11E44729
1A2903B5B9710054C61B7D878A54B092E298F54B2D22AB36FE2CECAE09E1541D
6EAE63EDED9436C5819D08B2FDD95E5BAF21E97643AB5AE52D32A52937C1ED4D
D00526E45B742AE62CE2CA6866541F25B5BDE61721961A98100269874F4E435A
BB34FAAC371AF73F70D3D2C160CEE7FA7FC3919DAA1669B90FD97655AA678FB7
D4688C0FE15547D28AEDEFE52D5E26473167481474105DB0A4AE5C6D74BFB195
81261BF0C28AEA283D33C193E5146FCD0B07ED5B16122CD24F044660EB8CE4E5
4CC2E6B3B7BEE3BD7BF2E7E2BA4BF3C84DE2394C7F0C5657F03E23674776B5C4
60FEF221C692D63D3461E39794F448FCC32C79B72874A6699DEABD42E602FF6D
EC3B71A9B77C180D91E55ECE651529D37A007A70FFA8C1D46FFEEC3158288D13
4892B872155B840A3C3EB7D6F0A3BAE73B958F9A43850E03FA4AE86FFA4BC42A
8B3EB829DB802A532931B0E10F91E76BBABBC7B56D189B1E91E5DD84DAA141F7
2E9EDECAE83A62A9C23A697C7D38A7D32842170129E153DE2B15E07D35C86597
A234A5373A5A30012028F6203285F47F92C50B0D136C88DDB520F5F1BC9615DE
9E38040785562E6F24CAC728BE7D4B8F9265E8ED325124CEC02594FE46837379
0181000D92D9F7361383C53770EE2F25A822F4AD90ED539DAF9F060545D654FA
554EA9F5BD800A1C28151E40CCA7B74449880C6EC62AE1A8EDD56BD240DD1116
E13AA64D3BBF9CF9B4A831198F991FADF3B1989C74220337E463266756C150FF
58DF4D0614103FA9B5C575C44F38A1AA4B89697C42D184B174C0E5C7E058C469
B768EE76F1D1B294E46FDF265DD504F3CDAA0059FA7501473351D365D92C252C
85A7C89FD859ABBBDF742C55283AD148BAC0D09B8B91CD10ACF397B08ACA639D
3ACCD87194371247CE5E076F3B482B5DCAC50FB473445775061558828E84CB94
527BBB4F736B2A4CF0D675307D6203C0759A8DCC33E9A5A188440AA9D4864ED8
29E633A468857C7C2F7EF30BB80B207D75C1AF6DBC275136C0BAA02316D6B6EA
7F8D7773F5B1A6FA30BB87C7E6C46BB2F3E7EE4C367261480CAF500FBF7D526C
AA7DE597230B42F21ED949038C791F344BE2206680E8A3C6FD3ACE42EAB376F4
B80375BAC43F6B3A6652D704DFCBADEC20998FC99A93FD8B4E80122D9DED0523
19DACE748D1F248F907D2F0E91FFC50D36669986B8F32089E7B6EA709D6CC25F
22550CF60774BFDD99D31B6E8C1FB517F563D1B343721599C1D3A8EC9AC8528D
BD9D34F887DFDBDDFD290CAA0D2304340736BFD5EFB53DD3983C3556303703DC
B0AF4FCFEA65180831FC067C8797192F841EFA686E4312B2ACEA3E8B5F600297
B41CAF540662A30AAFE2AFA8AE97A2B8F2750A494F7F78D00B9D17A7BDBED77C
0114FFE3A7B99ED68C425D2F026BC413E1382A303E2607D19CC1CAF923A68514
F63C8471E6C1C03E78D5393FB0FE3C03BD3115E0E916813ADE2CF731E60556AE
E6733DF5263BD122AE3DE5534CAE38037129A36A961567A762252F9C5C3129AF
5C3D543CCF88C7523C20F3A061C8DE8E8C5071C8BB0B5BA0C2E82124735BB787
6494A285CC34649366B4A8ABE9ED86E3087ADD653C73546287380816AAD0A1AE
34DE0E5BC8CCED00A3830760ADC6DCEBE66C3F183CC811F40EC89F8959ECE4D9
D6EE9668765E6B1199D138DA349D62C95C4DE7152535B3983BA169F6D239DF3D
96D6F660E8E8923725B2A59C348FF736F77C7BC1FF896F32DF73B96FD1C2F345
95DB15AE92CACB5D2844D82403464C11DC86CCF78AF6E9864A1701C00574E08B
3DC2CFCA593EE681E978AD72E95E093802A718FDC3A15E8B5C78BFFC82B7B1EE
2932AF7BC3ED85F1A75104D39E6052F8377F7936D24A8CB824F49D348224D50B
1B3BB7369B2B3019F06B427AE092CF8F345F0B8C7AA7D90D2560FB34B5768581
74BF49CDFAF032E99D862693E6ADFAA81DEAAB6297E51C1A0E8A568EA9F36070
BF0852CC35B0A194E1B7EBD35343C1CE8CE93ECA1FE0DA905B96CC900F59E9B6
4074B736732554CC47B1F8420C62E0EA42BDB8D47AFFAEAC7008B03F3CCB1913
F841950FD5A4D6867E9AF33B45CF52F07E7887E8194E414EE66324DF435AEEF6
03FCA75BE71BB7539AE48BCC4ECC8F484986A54FD1F18CFE6D1B8C8C00DF53F2
9D6F4B2B216325BEB567FFE023B9B77D16E14AB181715A23650E9B9AE0270738
463CF8347D4CB9F7B345B1B997C815157D2A29D04F0286DA0C5AAD24D2AD2F03
BF1F38AEA92533F4495F8973DF118CB5C41BAE62279CD0D70FE410F9A16F07C4
2CF26207D1A3910AC7995D81919321ED067A4A0164A5B48B88854831A748FCF1
FB2F0F660BF1B723AD455721CC904C19E9CABADC5F4948F6A308049CBA387210
F6C79610602EEEB192B25661E0928F7AB542794BAD5EACA1F442A398003AD4DD
83C1844A1C7027BE27056C3296DB5F54DB5A99C1490D07EC4955C763E242AA8D
B97656B6D43152E29A04E081789E58259429D562DE8E6BCA9A755A4CF1B730F5
6A8930BA0B4C76E259C4C32F7874514D2B2F9BDF5303F78BB83CDAC2DE8C2AAA
F6E0E59E04F009CB427A1384230E0C2B017B53BEB62A475300DA877E11E4B835
CF4FBCC00086853F1BC5342185FE8F398C7E527229057B76FDC093E1093588B0
6FC809CB4C01E90D47D7D61C6D792C152DBAE855B5AA86FF8747353BC5E2E9F6
2D8FDF8EF76FA7C19D4666DCCCD7F1855A8006CD57EA3CF9C60F73E82255A16B
C879F45BF2108B9D2B6B11062B1278E8EE8C0FD7057CCF9D8B6D8E57D18F5070
29F918A5C2FAB797329694B7F89D9ED29454066CCBB956370FB81035ECBA7758
F753C5E69400AF00C5CACFD382463AF0E7420FF7C66F3331C7C82A5A34F93FD1
319E7BE672B5CBBC5B84CFC9FAC7DD253A6A6549DDE34BEA560EC2315CD0258E
3EE37F239A600E6F10B28F8E7A1623055C01BEF6C3D542D497F5FD751AE34493
FB8E1200FD24BDDBEBDBA9CCF7FDB3FE23AE4CB4DB3AD84566836D7DA377CFF6
6E783FDAB74CFC6770234339A73DAF8BFC0B97F704248146B83686E319A07520
17875DCA141974B00C3A34922B7BFC43C60AF91291A2433C4D84CAAB46537A03
8405457AB3EAF2D80A776286099AADE8613610ECC75DDCDF94C0F6DE83A55219
F97D57A21D6DCD153DC353BF50D79C94DB38AE6448F802C432CADE3329A5E18E
5C49DC3C33DD13CACF01ECCE67790E16BB381AF31E0DB28247479BCE52ED2717
8743B4CCEEF28FD0CE2ACA807D10A9D6D466B1A4EC8C23AC294CE4BB17AFAE35
3C32786579E5B036CB0D2CB9D36476BF113DE7BE5596FDF5462FE2594CD1B67C
FC59A8B44FA95BE52C54ACAD264CA1277150C9D33E96B7D21ED62DDF7B8FC87B
0C6CC52204DAAF080BCE0B1DA1023C4B881802C2A4DC1C562913B3D2BE6D28E4
8F916906551651984736EE9D369A8A92BD5877289532C82425A549A667BC8E33
C1E45D4BF93F833A67E7F54883F5BE9A5631F64557954A6FE4CD41A1AFBFF372
24D97204265C059D3ECF89FBAC150299DEB3B15137FCC5A04E287C9C0814F9EB
12A68F42AD6B4A673DCE4F8A0F2F59BF111B6CBF0EF5A80A2E234FEC234A04BB
E57B77BDB78A0A96C9455DC5B616BD84C7D88E6C42B69ACACFBD4BF2C7D05E88
3CD9A69CF287A03D9C69017F1F186359DE87321C3FCFA30FE663DB2C972A0600
C8E58162C282ADE39325C3C973407C59EB29B0C1318CB336407D6BF34B501CA9
B44D5E22FDD2DBE37E609BB7D7EA784C0A43F497C0BE46082B8F18924A06B372
F43C11C69D5D0DC284F265E2F6B1F194B8F97EE6417E51D238E34A46A643D163
306D2806B7560A21967D5510B578DB8573E90EE43954B367A77DEE0F789808F8
F912050DF8D96CE4784952E0974CB23DB4B062A585B17B2D55E060143055F8B6
4AD7F15215D2D5EC74B1FB7185FB0C9CC62EE29DB86AA53439A297E0CFCC602D
4654B0F2E0A26F1F6BF1895CFB070AE6AB66D98BFE4F21B807C92F2B5C7B6D7E
AA39F2418F6CE1E794081DDA57C3346BB96B4D344651F154FD363CF224CDC25E
8E3F2DA5EBD712A884F4FF43B6061BA304AE1C1B613ED31E1105442E59FC768E
83A192A9631E6E05A55D04BF8056AD94246BACC5AE8DCD743D11FEC221FB8DAF
11F6648C3A7C29B89BAED261B1B00BA5CE40A97F762D726D8126D10723649FA1
BDDB1206BB2E884AD9FD65EEC45E0F5C557C1A9DA54DA04C0B5B687BFE8148C3
BB30DCBB0BF5295D96A849A3E9143B03B1DC7F7E74C9035C8D7778D319AACE5D
B4574A8A9C9731F20D22B88B7F1FF4DA080FD4F203760FCC930BCBF4CC2D1731
267A91A3FF99E9B27CAFD829979767F2E8AC4DF761B776A535FCB70BA8435544
E61F505DA96381BB808282F83E5AE6BD26E9CC2A856735437BE805A5D5649193
4CB9AFEDCA955D17E954B4DAB34A97440AEEA9F51E3969785EB7A876FD7BBEE2
D47C6E26EAC1843CE0C739D1E3864AAD95C4C707DAC3C6AAD170DB5FAA0281C4
3358275C890F91D6DDDFEAD977B9CE3B2CB93BFF8F3E800EADB9BD0443F57C36
728AECA3D6010919DDAAFBD3CC1CBA55109CE50E1369A4EF0F64BEB530F1FA59
5C41C752A6EC1B13D740F83BB5AF4896BEDA32CCDD3FC01848B2305B4AD1F05A
37C0D416D7F78473CA646416C8D3FC526B94148DF71B8B180C3497C3DDE5318E
B971318EAA45CA7D2F9AAC5070115E70F8EDE88750F2D1AF1122C8EBFBA4B71D
3C00EF8F1409827F98AD279CEB263494B7A96C952FCC60D65C259F1924BDEA92
E4FB65FFA31EAF16F3B2994D936E0A49F406044A1F8499B1F27EFB284D73C0AC
C9051039365ADC36F5D6F4B97847B7623FBF742E12B772B2F7DFF4A65E266B9B
8A7546DFE3444837F88043348CBEC632A7628C791FFC20EAE7310AD9DF14037F
DB07B0E840373A30E4ACDC189DA390B1707F3C31E091F26343EFDF4400CFD623
C47A6F861275827A773AD7F2F30BB3F2F7758AED68EF76E29D10A3317607F734
2B26AC821F4448E0ABE8B1F4EB2555F5706F86D35AEE1196A588EAA3087AF6A1
8ADD5B58E8DA6975A20AF908B16A7DACCF4D72B914A7735B95CC3BE1792C780A
280C4C592A44DA84056542D81DC260D88DA381D99938051C9471C2D00CA769BB
690A918F2FCFDBA5DEC0E0896FCDE14D2904E6F3578B09C3549AB1EE83996571
2C82A222239C0AC73051550E3852180C7EABE6E81B7B432FCC7807BD67D72D1B
0D7D95C1C6FDD5AB576166827488A123884581E100343C0145CD0DE01152C6F5
D4890748321F4D7065810069C9FB83CCD0B61A795E2C9EB916E9E6BEDBA33078
C89FDCCFAA1E6EF714A7290325360A62FCB5A5590A15C1A639544D80FE1487AA
ABBB0767DD275F2F0B532279F94E2E4B45AFBAC218BC80939E8DC8FF91DEBC6E
6DBD58EF224A8A4F2C239080165BE0DDDD19E845D6379278283EC214A2CDBE15
762D3E806C6C1A1D99A0CAF2EBA3EEADB15FA1AEA960A5E229AE49B43BAFFBE2
3052EE33DCF038414BE9CB8A77B169809ADBA4A742E7ECD9DCC0A3DBB1C3531F
E2A110B2AFC6CC7F62E08FDA83FA2D126926CCCD59D47683B6EA4ED382C9E3E7
E5A4596773385F2EA48D5708FA3D4711909EB1D2888F6B92CA69E5C2B2D64C45
5DCA70299BE6A53084FAB9C727FF8A615AC8ED902A42BEE105E72D2F91D7B798
9D55DA8835DB8DB41DF41CD8C456587DFE2AAB5666BE3BBD56F3546EBD902B78
73F090F67CA50E9CFE7832469CEB6CB28DD6E9E89251BDE97634E4FB6E90309A
3018B340ECF1F955AE6CD497CDF566238285CDF141C67E1BEB5A11D32E4D153D
C94CF15586E528AB124BD229D63034F5A09E254256A7C018444196CC392DF3B5
1EE530D7DD40B17E06562AE97D94F0E37312F793A5DD2042A2CB2E6D973F0344
CF2BFBF4BF810D578E775E2BA822FC2BBAC91B9EE715B7CD9D27AED2852E49E3
44D8DAB6CC83B348EF2EF87739382E9E3BDC80D2F8FBA5678489B7435874FD05
00D722F4F882B0F9DCAAF422A6626D69133B0E4E2B196DED05BA35D01A319047
4DD1243A2B99D18BE2CA581B784885844BCC482AF04FE8E75AE7D62D8F40A391
33F1CD1E9FB8946509D40D07A4B91FA4984E168C3B1FB200DDAF9CE6858D6F5E
D63EA03F8DCD65DCB4B6EC99ED28A1417B5FF5B854C45917E15526A98E0E50E6
EC0893F6E2F26E0D33D89FF9E5EE5C83A6EDDC7D7DC8B5A6A66A3C754DA9E0B8
6C06CB682E89EA3198B1C7E021FBF9009C8127B67F1B9302A3B676923E0CDE94
7AE0A6CF1EC9A21FCFD08CD2E43671E4C9F01322A9876B7E72A06CD6A408262B
B302634FD189AA5BC011A948B6495306B2722B757EF349A082199DF955D2C47C
01B5102C45D66304002D12BB5A55CCDB5B846BF4A55526C65EDCF66699BAA4D5
7ACE7C49D8C42D356298333BF93BD6B502952B997F021D0D2A556ADC1D3DD096
FE29716F8F456DC64B0231E58FE42224C7CEB0FF09237D02FD4883C2FE43B9BD
65EAB80225E00D4E25DC927C7AB23A0DE044DF06A43A407F076736ADEDFE5474
2FFB6BD0282808769FCA51006B229E8CA3AAD517BBA657C7640E7EC8613DC499
6BFCDF3DAF414EE61FCEA6D106AB372BCB82A2C16C2AF6A34B356EC87AD2929C
46EB19BC0770B47D23BCCC2E152F22B07D72EE86CD97446C44358DBFE3CD28B9
FD4F4016A263630EF91FBDEA6BFCE4E677BBEA3816339CD88CAA5A1489269451
B8A719622C43CEF177C2BA6D5BC48B1D9E35274199C168D00FCCF147660A2C0B
88DB523637F41FC726F4819829AB4A55DAD457EB66338BF664578D0B96C9242B
0CC06260A380AD164B02D8DA0263AE7DEF8C5D6F369B2F70293B97BAE1814CC1
2CE0817A62D5AB1FC53C610DAD47FBBDB72FFB4292D5F8A07751C05412FBCF15
899FB16932CA66EAE7E122D99BBF7D0940FD92C2094FB18D354EE54923A1137A
359E20D153B70AE7B3E1274F95C0AF0720732DCA8EA71856A8896A0D9E29F840
19AF7BCEA5C94D2F9C131459A51D43F9226A7F3FA283E28111EEF95B8B4BCC0C
5EA82DC735873DFC44B9A7D9F15B8C1D4D6FD1373F841E3655FC37D284C4FE98
88E47BD9544F2BC50D2060ABAE3C4148F40D55A262A9EEBF41CD601D28D9CF82
D6E062BCA1E6F54701B05213C3FB2D1C42C32C11DAA7E20E15F66C892E321AC9
9BAEFB5780D1514C5B0F60476E65098B966F3F2A30DCF9CEB0CDF9F9D490E393
EDADA7E01E301A6D735C9005118DA16BB41F5DA463C157877AF8D32D10C1FCD4
B1691DDF1B41B080470E70D015C533C4470DF4BC66582EEAC8CB73937FCBF93B
E59158176FD2CCB477FB339951C71D515E7B1D21529C5072EC3D092072BEC89C
160E018EEE6D600F92419765D4FD94813A0AE7D5EB519306CB6FF5C4A42F8DFC
D63AFAAF7ADC0B1F1369138D244A4A06BC6ED2C0218D8847D2DF601C44988F3E
ADB7D33B5583B6B977C5288DE3FAB6E6CE98C4D8D2BC998A1C3A7C3FB289B7ED
99D751F8880AC7425D0DEE5F3A7DC147F998ABD0957D0DA10734B2612096D192
F78C369996934D68E0D3883FF20756D3161FADEF8AF1CAB9083BB691F8A41B1D
063844B1B2711B785328B5894A8681727551298C62A0CA6EE31EE11B20AD1D33
8EE908A5CF9ADA9C7ABB63DC0A682B2327542E676982D61B4DE5955EE6B19ED5
5731FDB3EB6084A149E7A1EAF03C232B225BBC3EC264823E3DAEAFAEA3CBE086
C5B29AD237D63D98E99ABB593CF1EBA7153C8191252C50C96257AD1614F45709
BA9DE93BED4BF8B28F0532753BBB6F4FC53493ECA19316872E4D5189B93830E7
2ECE84FFA4A6827929977239AD7A99AA2159B7004D8F4FCAF0BE721594BB1CC6
589DE5A8D1A37FEB9C67FA585802F72E7C30AFE5A053BFF958E3FEE2892530BD
B9997DF9106D9C2C4C336F84E83739DEFA54E45371F988EA56E13455C90F723D
A46EEFC9F2B9E66562EFA53A54EEEA009E16D6C887EB9B48A4C2552053ACAB6B
D8BF72DD7071865366A95CA644CD675D01156A21B978BDB88AF033772410DE1D
FC0B5A556B0AA327AF24C72A107DFE928B83FD4BEC4F38EDAA5FCE7F8B6831AB
0D8079C83C03301A04EFFD1CF2
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
%%EndFont
TeXDict begin 39158280 55380996 1728 600 600 (ssdxml.dvi)
@start /Fa 135[75 75 75 75 75 75 75 1[75 75 2[75 2[75
75 2[75 75 1[75 75 97[{}16 143.462 /CMITT10 rf /Fb 134[65
65 93 65 72 36 65 43 72 72 72 72 108 29 1[29 29 72 72
36 72 72 65 72 72 8[86 122 3[86 93 100 86 100 1[108 72
1[65 1[93 1[79 86 1[93 8[36 2[72 1[72 72 72 1[72 72 36
36 43 1[75 1[43 43 36[65 65 2[{ TeXBase1Encoding ReEncodeFont }53
129.116 /Helvetica rf /Fc 134[72 72 104 72 80 40 72 48
80 80 80 80 120 32 1[32 32 80 80 40 80 80 72 80 80 12[88
22[84 2[40 10[40 40 48 40 2[48 48 3[80 33[72 2[{
TeXBase1Encoding ReEncodeFont }35 143.462 /Helvetica-Oblique
rf /Fd 134[115 1[161 115 126 69 115 80 126 126 1[126
184 57 2[57 126 126 1[115 126 115 1[115 8[138 2[149 1[138
149 161 1[161 1[172 126 2[57 2[126 1[149 1[149 149 6[69
2[115 115 115 115 115 115 115 115 1[57 69 57 2[69 69
57 39[{ TeXBase1Encoding ReEncodeFont }47 206.585 /Helvetica-Bold
rf /Fe 105[96 61[115 163 1[124 105 115 124 134 115 134
124 143 105 1[96 1[124 134 105 115 124 124 124 124 6[57
10[48 1[57 3[57 57 48 39[{ TeXBase1Encoding ReEncodeFont }28
172.154 /Helvetica-Bold rf /Ff 166[92 92 130 92 99 84
92 99 1[92 107 99 115 84 1[77 38 99 107 84 92 99 99 99
99 65[{ TeXBase1Encoding ReEncodeFont }23 137.723 /Helvetica-Bold
rf /Fg 198[56 56 56 56 56 56 56 56 56 56 48[{
TeXBase1Encoding ReEncodeFont }10 100.423 /Helvetica
rf /Fh 105[80 29[80 4[80 56 8[40 3[80 1[80 29[96 14[80
4[80 2[40 46[{ TeXBase1Encoding ReEncodeFont }11 143.462
/Helvetica-Bold rf /Fi 87[48 17[80 1[48 48 24[72 72 72
104 72 80 40 72 48 80 80 80 80 120 32 72 32 32 80 80
40 80 80 72 80 80 3[40 1[40 1[96 96 135 96 104 88 96
104 112 96 112 104 120 80 96 72 40 104 112 88 96 104
104 96 96 146 80 1[84 1[40 40 80 80 80 1[80 80 80 80
80 80 40 40 48 40 84 56 48 48 32 2[80 2[40 29[72 72 2[{
TeXBase1Encoding ReEncodeFont }84 143.462 /Helvetica
rf /Fj 134[198 3[218 119 198 139 1[218 1[218 1[99 2[99
1[218 1[198 3[198 8[238 6[278 3[297 218 7[258 68[{
TeXBase1Encoding ReEncodeFont }17 356.934 /Helvetica-Bold
rf /Fk 139[99 1[116 1[182 7[182 2[165 3[165 29[215 11[165
165 54[{ TeXBase1Encoding ReEncodeFont }9 297.54 /Helvetica-Bold
rf /Fl 240[66 15[{}1 129.116 /CMSY9 rf /Fm 207[33 48[{}1
100.423 /CMSY7 rf /Fn 145[71 4[41 105[{}2 100.423 /CMMI7
rf /Fo 130[68 1[68 1[68 1[68 1[68 68 68 68 1[68 68 68
68 68 2[68 68 68 68 68 68 68 68 68 1[68 1[68 1[68 3[68
2[68 68 68 2[68 1[68 68 3[68 1[68 68 68 68 2[68 1[68
68 68 1[68 7[68 68 68 68 68 4[68 68 68 2[68 36[{}51 129.116
/CMTT9 rf /Fp 193[78 1[78 60[{}2 71.731 /CMMI5 rf /Fq
162[40 1[40 49[56 56 40[{}4 143.462 /CMR10 rf /Fr 205[57
57 49[{}2 100.423 /CMR7 rf /Fs 205[81 50[{}1 100.423
/LASY7 rf /Ft 135[82 1[70 82 52 67 65 1[72 70 86 126
43 2[49 83 2[67 75 62 62 76 31[108 2[112 2[40 11[72 72
20[82 25[{}24 143.462 /CMMI10 rf /Fu 149[40 2[72 72 68[143
6[112 1[112 8[72 11[72 3[{}8 143.462 /CMSY10 rf /Fv 130[75
1[75 75 75 75 75 75 75 75 75 75 75 75 75 75 75 75 2[75
75 75 75 75 75 75 75 75 1[75 1[75 1[75 75 75 75 75 75
75 75 75 75 75 75 75 75 75 75 75 1[75 75 75 75 75 75
75 75 75 75 75 75 75 75 75 75 75 75 2[75 1[75 75 75 75
75 75 75 75 75 75 75 75 75 1[75 75 1[75 34[{}80 143.462
/CMTT10 rf end
%%EndProlog
%%BeginSetup
%%Feature: *Resolution 600dpi
TeXDict begin
%%PaperSize: A4
end
userdict/PStoPSxform PStoPSmatrix matrix currentmatrix
matrix invertmatrix matrix concatmatrix
matrix invertmatrix put
%%EndSetup
%%Page: (0,1) 1
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 0.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
/showpage{}def/copypage{}def/erasepage{}def
PStoPSxform concat
TeXDict begin 225 0 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 2559
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 3.8 neg 411.43053 76.2004 .5 Frame gsave 1.00 0.71 0.76 setrgbcolor
fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap stroke
grestore end
@endspecial 4801 1899 a
Fk(Chapter)83 b(6)4801 2338 y Fj(XML)100 b(Quer)t(y)f(Langua)l(g)t(es)
4821 2831 y Fu(\017)72 b Fi(XP)-6 b(ath)39 b(is)g(not)g(a)h(quer)t(y)f
(language:)4965 3033 y(selects)f(only)h(sets)g(of)h(nodes)4821
3326 y Fu(\017)72 b Fi(additional)38 b(functionality)f(of)j(quer)t(y)f
(languages:)5014 3573 y Fh(\226)72 b Fi(composition)37
b(of)i(tuples/str)r(uctures)e(from)i(se)l(v)l(er)o(al)f(nodes)g(of)i(a)
f(path)5014 3820 y Fh(\226)72 b Fi(joins)5014 4067 y
Fh(\226)g Fi(deref)l(erencing)5166 4287 y Fu(\003)f Fi(via)39
b(joins)5166 4488 y Fu(\003)71 b Fi(via)39 b(direct)g(resolving)f(of)h
(IDs)g(\(seen)g(as)h(v)l(alues\))5166 4690 y Fu(\003)71
b Fi(via)39 b(deref)l(erencing)e(of)j(ID)f(attr)r(ib)m(utes)5014
4937 y Fh(\226)72 b Fi(agg)o(regations)5014 5184 y Fh(\226)g
Fi(f)l(or)t(matting)37 b(and)i(restr)r(uctur)r(ing)e(of)j(results)5014
5431 y Fh(\226)72 b Fi(oper)o(ations)37 b(on)i(the)h(order)e(of)i
(nodes!)10633 5482 y
0 setgray
10633 5482 a 7586 5768 a Fg(225)4500
6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 421.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
PStoPSxform concat
TeXDict begin 226 1 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1884
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.69437 neg 411.43053 16.69438 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 6733 1907 a
Fe(X)8 b(M)g(L)58 b(Q)6 b Ff(U)i(E)g(R)q(Y)60 b Fe(L)8
b Ff(A)g(N)g(G)g(U)q(A)q(G)g(E)h(S)4707 2583 y Fi(Collected)37
b(e)l(xper)r(iences)h(from)g(SQL,)h(OQL,)g(OEM/WSL/MSL,)e(F-Logic)h
(and)h(some)g(more)g(...)4821 2883 y Fu(\017)72 b Fi(predecessors)37
b(of)i(XP)-6 b(ath:)49 b(XSL)39 b(P)-6 b(atter)t(ns/XP)f(ointer/XQL)34
b(\(1998\))4821 3184 y Fu(\017)72 b Fi(XQL)39 b(e)l(xtended)f(the)h
(ear)r(ly)g(\223basic)f(f)l(or)t(m\224)g(to)i(a)f(quer)t(y)g(language)
5014 3436 y Fh(\226)72 b Fi(adding)38 b(se)l(v)l(er)o(al)g(constr)r
(ucts)g(to)h(the)h(path)f(e)l(xpressions)5014 3688 y
Fh(\226)72 b Fi(increasingly)37 b(complicated)5014 3940
y Fh(\226)72 b Fi(still)39 b(not)g(suf\002ciently)f(e)l(xpressiv)l(e)
5014 4192 y Fh(\226)72 b Fi(sho)n(w)o(ed)37 b(the)j(limits)e(and)h
(requirements)4821 4492 y Fu(\017)72 b Fi(XML-QL)38 b(\(1998\):)48
b(patter)t(n-matching-based)34 b(\223e)l(xtr)o(action)j(language\224)
5014 4744 y Fh(\226)72 b Fi(not)39 b(path-based,)e(b)m(ut)j(XML-patter)
t(n/template-based)33 b(binding)39 b(of)g(v)l(ar)r(iab)m(les)5014
4996 y Fh(\226)72 b Fi(semantics)37 b(b)m(y)j(a)f(clause-constr)r(uct)
5014 5248 y Fh(\226)72 b Fi(gener)o(ation)37 b(and)i(str)r(uctur)r(ing)
f(of)i(the)f(result)f(b)m(y)i(an)f(XML)g(patter)t(n)f(with)h(v)l(ar)r
(iab)m(les)10633 5482 y
0 setgray
10633 5482 a 7586 5768 a Fg(226)4500
6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
%%Page: (2,3) 2
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 0.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
/showpage{}def/copypage{}def/erasepage{}def
PStoPSxform concat
TeXDict begin 227 2 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 2475
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 12.6304 neg 411.43053 17.63042 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 6349 2484 a
Fe(X)8 b(M)g(L)58 b(Q)6 b Ff(U)i(E)g(R)q(Y)60 b Fe(L)8
b Ff(A)g(N)g(G)g(U)q(A)q(G)g(E)g(S)62 b Fe(\()8 b Ff(C)g(O)g(N)g(T)g
Fe(')g Ff(D)g Fe(\))4821 3111 y Fu(\017)72 b Fi(Quilt)39
b(\(2000\):)47 b(SQL-style)38 b(e)l(xtension)g(of)h(XP)-6
b(ath)5014 3363 y Fh(\226)72 b Fi(binding)38 b(of)i(v)l(ar)r(iab)m(les)
e(b)m(y)i(XP)-6 b(ath)39 b(e)l(xpressions)5014 3615 y
Fh(\226)72 b Fi(nested)38 b(loops)h(b)m(y)g(\223f)l(or\224-clauses)5014
3867 y Fh(\226)72 b Fi(additional)38 b(conditions)f(in)j(a)f
(\223where\224-clause)5014 4119 y Fh(\226)72 b Fi(str)r(uctur)r(ing)38
b(of)h(the)g(result)g(b)m(y)g(a)h(\223retur)t(n\224-clause)4821
4420 y Fu(\017)72 b Fi(XQuer)t(y)38 b(\(2001\):)48 b
(\223of\002cial\224)38 b(v)l(ersion)h(of)g(Quilt)5014
4671 y Fh(\226)72 b Fi(no)n(w)38 b(integ)o(r)o(ated)f(in)j(the)f
(W3C-Dr)o(aft)f(XP)-6 b(ath/XQuer)t(y)10633 5482 y
0 setgray
10633
5482 a 7586 5768 a Fg(227)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop
end
PStoPSsaved restore
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 421.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
PStoPSxform concat
TeXDict begin 228 3 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 2632
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 3.8 neg 411.43053 29.04741 .5 Frame gsave 1.00 0.71 0.76 setrgbcolor
fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap stroke
grestore end
@endspecial 4801 2539 a
Fd(6.1)207 b(XQL)4707 2910 y Fi(XQL)39 b(\(XML)f(Quer)t(y)h(Language;)f
(1998\))h(is)g(a)h(simple)e(quer)t(y)h(language)f(based)h(on)g(ear)r
(ly)g(constr)r(ucts)f(of)4707 3114 y(XP)-6 b(ath:)4821
3392 y Fu(\017)72 b Fi(all)39 b(XP)-6 b(ath)39 b(e)l(xpressions)e(that)
i(can)g(be)h(e)l(xpressed)d(without)h(the)i(use)f(of)g(\223)p
Fc(axis)t Fi(::\224)48 b(\(cf)l(.)39 b(Slide)g(197)g(-)4965
3595 y(ax)l(es)f(ha)m(v)l(e)i(only)f(been)g(added)f(later\).)4821
3896 y Fu(\017)72 b Fi(te)l(xt\(\))38 b(w)n(as)h(a)h(function,)4821
4196 y Fu(\017)72 b Fi(function)38 b(applications)f(ha)m(v)l(e)j(been)f
(e)l(xpressed)e(b)m(y)j(\223!\224)48 b(at)40 b(the)f(end)g(of)h(the)f
(path)g(e)l(xpression:)4965 4399 y
0. 0. 1. setrgbcolor
4965 4399 a Fi(//countr)t(y/name!te)
l(xt\(\))6285 4399 y
0 setgray
6285 4399 a 4707 4700 a Fi(Fur)6
b(ther)38 b(quer)t(ying)g(functionality)f(w)n(as)i(integ)o(r)o(ated)e
(syntactically)g(into)i(the)h(path)f(e)l(xpressions)n(.)10633
5482 y
0 setgray
10633 5482 a 7586 5768 a Fg(228)4500 6000 y
tx@Dict begin -90 Rot end
4500
6000 a eop end
PStoPSsaved restore
%%Page: (4,5) 3
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 0.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
/showpage{}def/copypage{}def/erasepage{}def
PStoPSxform concat
TeXDict begin 229 4 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 2653
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.69437 neg 411.43053 16.69438 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 5674 2676 a
Fe(X)8 b(Q)g(L)g(:)58 b(B)8 b Ff(O)g(O)g(L)g(E)g(A)g(N)61
b Fe(O)8 b Ff(P)g(E)g(R)g(A)l(T)g(I)g(O)g(N)g(S)62 b(A)8
b(N)g(D)59 b Fe(S)8 b Ff(E)g(T)57 b Fe(O)8 b Ff(P)g(E)g(R)g(A)l(T)g(I)g
(O)g(N)g(S)4821 3279 y Fu(\017)72 b Fi(q)5045 3300 y
Fr(1)5149 3279 y Fi(union)39 b(q)5620 3300 y Fr(2)5684
3279 y Fi(,)119 b(q)5923 3300 y Fr(1)6027 3279 y Fu(j)40
b Fi(q)6187 3300 y Fr(2)4821 3579 y Fu(\017)72 b Fi(q)5045
3601 y Fr(1)5149 3579 y Fi(intersect)38 b(q)5811 3601
y Fr(2)4821 3880 y Fu(\017)72 b Fi(q)5045 3901 y Fr(1)5149
3880 y Fu(\030)39 b Fi(q)5380 3901 y Fr(2)5484 3880 y
Fi(\(union,)g(in)g(case)g(that)g(both)g(are)g(non-empty\))4821
4181 y Fu(\017)72 b Fi(q)5045 4202 y Fr(1)5149 4181 y
Fi(or)39 b(q)5396 4202 y Fr(2)4821 4481 y Fu(\017)72
b Fi(q)5045 4503 y Fr(1)5149 4481 y Fi(and)39 b(q)5508
4503 y Fr(2)10633 5482 y
0 setgray
10633 5482 a 7586 5768 a Fg(229)4500
6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 421.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
PStoPSxform concat
TeXDict begin 230 5 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1719
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 12.6304 neg 411.43053 17.63042 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 5493 1728 a
Fe(X)8 b(Q)g(L)g(:)58 b(R)8 b Ff(E)g(T)g(U)g(R)g(N)61
b Fe(O)8 b Ff(P)g(E)g(R)g(A)l(T)r(O)g(R)g(S)62 b Fe(\()8
b(P)g Ff(R)d(O)j(J)g(E)g(C)g(T)g(I)g(O)h(N)g(S)61 b(O)8
b(N)58 b(T)8 b(H)g(E)58 b(P)-6 b(A)l(T)8 b(H)g Fe(\))4707
2083 y Fi(Oper)o(ators)37 b(that)i(output)g(the)g(node)g(that)g(is)h
(addressed)d(at)j(the)f(giv)l(en)g(position:)4694 2355
y(??:)71 b(the)39 b(complete)f(node)h(is)g(added)g(to)h(the)f(output)g
(str)r(ucture)f(\(including)f(attr)r(ib)m(utes)i(and)g(subelements\))
4773 2628 y(?:)72 b(only)39 b(the)g(element)f(\223hull\224)h(is)g
(added)g(to)h(the)f(output)4707 2673 y
0. 0. 1. setrgbcolor
4707 2673 a 4821
2915 a Fu(\017)72 b Fi(countr)t(y/city[@isCountr)t(yCap]/nam)o(e)4965
3157 y Fv(Berlin)4965 3355 y(Rome)4821
3627 y Fu(\017)g Fi(countr)t(y?/city[@isCountr)t(yCap]/na)o(me)4965
3869 y Fv()78 b(Berlin)j()4965
4067 y()d(Rome)j()4821
4339 y Fu(\017)72 b Fi(countr)t(y?[@car)p 5916 4339 44
6 v 49 w(code?]/city[@isCountr)t(yCap]/na)o(me)4965 4582
y Fv()h(Berlin)i()
4965 4779 y()h(Rome)i()
4821 5051 y Fu(\017)72 b Fi(countr)t(y?[@car)p 5916 5051
V 49 w(code?]/city?[@isCountr)t(yCap]/n)o(ame)o(!te)l(x)o(t\(\))4965
5294 y Fv()h(Berlin)i
()4965 5491 y()h(Rome)i
()10633 5482 y
0 setgray
10633 5482 a 7586 5768 a Fg(230)4500
6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
%%Page: (6,7) 4
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 0.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
/showpage{}def/copypage{}def/erasepage{}def
PStoPSxform concat
TeXDict begin 231 6 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4707 1538
a
0 setgray
4707 1538 a 4761 1777 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.69437 neg 411.43053 16.69438 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial
7065 1800 a Fe(X)8 b(Q)g(L)g(:)59 b(G)8 b Ff(R)d(O)j(U)g(P)g(I)g(N)g(G)
4821 2400 y Fu(\017)72 b Fi(cop)l(y)38 b(a)i(par)6 b(t)39
b(of)g(the)h(or)r(iginal)e(document)g(str)r(ucture:)4965
2603 y Ft(path)5248 2624 y Fr(1)5352 2603 y Fu(f)h Ft(path)5746
2624 y Fr(2)5850 2603 y Fu(g)4821 2903 y(\017)72 b Fi(without)38
b(g)o(rouping:)4965 3106 y
0. 0. 1. setrgbcolor
4965 3106 a Fi(countr)t(y?[@car)p
5916 3106 44 6 v 49 w(code?]/city?/name!te)l(xt\(\))7488
3106 y
0 setgray
7488 3106 a 4965 3370 a Fv()h
(Berlin)i()4965 3573 y()
h(Hamburg)j()4965 3776 y()h(Munich)i()4821
4077 y Fu(\017)72 b Fi(with)39 b(g)o(rouping:)4965 4280
y
0. 0. 1. setrgbcolor
4965 4280 a Fi(countr)t(y?[@car)p 5916 4280 44 6 v
49 w(code?])48 b Fu(f)p Fi(/city?/name!te)l(xt\(\))p
Fu(g)7680 4280 y
0 setgray
7680 4280 a 4965 4543 a Fv()5115 4746 y(Berlin)5115
4949 y(Hamburg)5115 5152 y(Munich)4965
5355 y()10633 5482 y
0 setgray
10633 5482 a 7586 5768
a Fg(231)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 421.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
PStoPSxform concat
TeXDict begin 232 7 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1987
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.69437 neg 411.43053 16.69438 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 7061 2010 a
Fe(X)8 b(Q)g(L)g(:)59 b(S)8 b Ff(E)g(M)g(I)g(J)g(O)g(I)g(N)g(S)4821
2610 y Fu(\017)72 b Fi(Semi-joins)37 b(via)i(subquer)r(ies)f(in)i(the)f
(condition:)7004 2945 y Ft(\031)5 b Fq([)p Ft(A)p Fq(]\()p
Ft(r)42 b(.)-24 b(/)40 b(s)p Fq(\))f Ft(;)104 b(A)39
b Fu(\032)h Fi(attr)o Fq(\()p Ft(r)t Fq(\))4707 3317
y Fi(Quer)t(y:)48 b(name)38 b(of)i(the)f(continent)f(where)h(Ger)t(man)
n(y)e(is)i(located:)4707 3445 y
0 setgray
4707 3445 a 4707 3445
a
0 setgray
4707 3445 a 4707 3617 a
0. 0. 1. setrgbcolor
4707 3617 a Fi(/mondial/continent)5875
3617 y
0. 0. 1. setrgbcolor
5875 3617 a Fi([@id)c(=)4707 3678 y
0 setgray
4707 3678
a 4707 3678 a
0 setgray
4707 3678 a 5871 3820 a
0. 0. 1. setrgbcolor
5871 3820 a 40
w Fi(/mondial/countr)t(y)6971 3820 y
0. 0. 1. setrgbcolor
6971 3820 a Fi([@car)p
7366 3820 44 6 v 47 w(code=\223D\224])4707 3881 y
0 setgray
4707
3881 a 6967 4024 a
0. 0. 1. setrgbcolor
6967 4024 a Fi(/encompassed/@continent])4707
4085 y
0 setgray
4707 4085 a 4707 4085 a
0 setgray
4707 4085 a 5871 4227
a
0. 0. 1. setrgbcolor
5871 4227 a Fi(/name!te)l(xt\(\))6635 4227 y
0. setgray
6635 4227
a 4761 4552 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0.80 1. 0.80 setrgbcolor 0. true
3.8 neg 4.9949 neg 411.43053 9.99492 .5 Frame gsave 0.80 1. 0.80 setrgbcolor
fill grestore gsave 0.8 SLW 0.80 1. 0.80 setrgbcolor 0 setlinecap stroke
grestore end
@endspecial
4801 4567 a Fi(Prob)m(lems)4821 4845 y Fu(\017)72 b Fi(full)39
b(joins)g(with)g(join)g(conditions)f(not)h(possib)m(le)4821
5146 y Fu(\017)72 b Fi(no)39 b(restr)r(uctur)r(ing/gener)o(ation)c(of)k
(ans)l(w)o(er)f(str)r(ucture)10633 5482 y
0 setgray
10633 5482
a 7586 5768 a Fg(232)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
%%Page: (8,9) 5
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 0.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
/showpage{}def/copypage{}def/erasepage{}def
PStoPSxform concat
TeXDict begin 233 8 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1796
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.69437 neg 411.43053 16.69438 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 7249 1819 a
Fe(X)8 b(Q)g(L)g(:)58 b(J)8 b Ff(O)g(I)g(N)g(S)4821 2418
y Fu(\017)72 b Fi(Asymmetr)r(ic)37 b(full)i(joins)g(e)l(xpressed)e(b)m
(y)j Fc(correlating)d(v)l(ar)r(iab)m(les)43 b Fi(and)c(\223alter)t
(nativ)l(e\224-constr)r(uct:)4965 2621 y(Filters)f(ma)l(y)h(contain)f
(v)l(ar)r(iab)m(le)h(assignments)e(of)j(the)f(f)l(or)t(m)5166
2873 y
0. 0. 1. setrgbcolor
5166 2873 a Fi([$)p Ft(v)5 b(ar)42 b Fi(:=)e Ft(expr)t
Fi(])4707 2913 y
0 setgray
4707 2913 a 4965 3125 a Fi(that)f(are)g(the)g(used)g
(in)h(another)e(condition)5166 3377 y
0. 0. 1. setrgbcolor
5166 3377 a Fi([)p
Ft(expr)5496 3325 y Fm(0)5575 3377 y Fi(=)i($)p Ft(v)5
b(ar)t Fi(])4707 3417 y
0 setgray
4707 3417 a 4707 3477 a
0 setgray
4707
3477 a 4707 3477 a
0 setgray
4707 3477 a 4707 3477 a
0 setgray
4707 3477
a 4965 3652 a
0. 0. 1. setrgbcolor
4965 3652 a Fi(//organization?)5909 3652
y
0. 0. 1. setrgbcolor
5909 3652 a Fi([$s)36 b(:=)k(@headq])e Fu(f)6997 3652
y
0. 0. 1. setrgbcolor
6997 3652 a Fi(name??)47 b Fu(j)40 b Fi(ab)o(bre)l(v??)47
b Fu(j)39 b Fi(member??)47 b Fu(j)40 b Fi(//city[@id=$s]??)46
b Fu(g)4965 3915 y Fv()5040 4118 y(European)80
b(Union)5040 4321 y(EU)5040 4524
y()5040 4727 y()5040 5134 y()h
(Brussels)k(...)c()4965 5337 y()
10633 5482 y
0 setgray
10633 5482 a 7586 5768 a Fg(233)4500 6000
y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 421.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
PStoPSxform concat
TeXDict begin 234 9 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 2126
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.69437 neg 411.43053 16.69438 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 6968 2149 a
Fe(X)8 b(Q)g(L)g(:)59 b(C)8 b Ff(O)g(N)g(C)g(L)g(U)g(S)g(I)g(O)h(N)4821
2749 y Fu(\017)72 b Fi(Ad-hoc-constr)r(ucts)36 b(\(in)j(diff)l(erent)f
(v)l(ersions\))4821 3049 y Fu(\017)72 b Fi(insuf\002cient)37
b(restr)r(uctur)r(ing)h(functionality)5014 3301 y Fh(\226)72
b Fi(tree)39 b(str)r(ucture)f(of)h(the)h(input)f(is)g(in)g(pr)r
(inciple)g(retained)4821 3602 y Fu(\017)72 b Fi(insuf\002cient)37
b(join)j(functionality)4821 3902 y Fu(\017)72 b Fi(no)39
b(clear)g(semantics)f(f)l(or)h(the)g(result)g(f)l(or)t(mat)4821
4203 y Fu(\017)72 b Fi(quer)r(ies)38 b(cannot)h(be)g(nested)g(\(cf)l(.)
g(SQL,)f(OQL:)h(results)g(are)g(again)g(relations\);)4965
4406 y(here)g(is)g(e)l(v)l(en)g(no)h(notion)e(of)i(a)f(subquer)t(y)4821
4707 y Fu(\017)72 b Fi(one)39 b(of)h(the)f(reasons:)47
b(no)40 b(v)l(ar)r(iab)m(le)f(concept)4821 5008 y Fu(\017)72
b Fi(implemented)37 b(and)i(used)g(up)g(to)h(2002)f(in)g(the)h(\223T)
-17 b(amino\224)37 b(system)h(of)i(Softw)n(are)e(A)l(G.)10633
5482 y
0 setgray
10633 5482 a 7586 5768 a Fg(234)4500 6000 y
tx@Dict begin -90 Rot end
4500
6000 a eop end
PStoPSsaved restore
%%Page: (10,11) 6
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 0.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
/showpage{}def/copypage{}def/erasepage{}def
PStoPSxform concat
TeXDict begin 235 10 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 2024
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 3.8 neg 411.43053 31.42343 .5 Frame gsave 1.00 0.71 0.76 setrgbcolor
fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap stroke
grestore end
@endspecial 4801 1896 a
Fd(6.2)207 b(Quer)r(y)57 b(Langua)n(g)r(es:)72 b(Requirements)4761
2336 y @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0.80 1. 0.80 setrgbcolor 0. true
3.8 neg 6.09749 neg 411.43053 11.09749 .5 Frame gsave 0.80 1. 0.80
setrgbcolor fill grestore gsave 0.8 SLW 0.80 1. 0.80 setrgbcolor 0
setlinecap stroke grestore end
@endspecial 4801 2337
a Fi(Requirements)34 b(on)j(XML)g(Quer)t(y)f(Languages)g([Da)m(vid)g
(Maier)g(and)h(W3C)g(XML)g(Quer)t(y)f(Requirements])4821
2606 y Fu(\017)72 b Fi(closedness:)47 b(output)38 b(m)o(ust)h(be)g(XML)
4821 2907 y Fu(\017)72 b Fi(or)6 b(thogonality/composability:)43
b(e)l(v)l(er)t(ywhere)38 b(where)g(a)i(set)f(of)h(XML)e(elements)g(is)i
(required,)e(also)h(a)4965 3110 y(quer)t(y)g(is)g(allo)n(w)o(ed.)4821
3411 y Fu(\017)72 b Fi(clean)39 b(de\002nition)f(and)h(nesting)f(of)i
(oper)o(ations:)46 b(selection,)38 b(e)l(xtr)o(action/projection,)d
(restr)r(uctur)r(ing,)4965 3614 y(combination/join,)h(fusion)j(of)g
(elements)n(,)4821 3914 y Fu(\017)72 b Fi(applicab)m(le)38
b(without)g(presence)g(of)i(schema,)e(b)m(ut)h(can)g(use)g(a)h(schema,)
4821 4215 y Fu(\017)72 b Fi(retaining)38 b(the)h(order)g(of)g(nodes)n
(,)4821 4516 y Fu(\017)72 b Fi([quer)r(ies)38 b(should)h(ha)m(v)l(e)g
(an)h(XML)e(representation,)f(especially)-14 b(,)37 b(XML)i(documents)f
(should)g(be)i(ab)m(le)4965 4719 y(to)f(contain)g(embedded)e(quer)r
(ies])4821 5020 y Fu(\017)72 b Fi(resolving)38 b(of)h(XP)-7
b(ointer)38 b(and)h(XLink)4821 5320 y Fu(\017)72 b Fi(f)l(or)t(mal)38
b(semantics:)46 b(der)r(iving)39 b(str)r(ucture)f(of)h(the)h(result,)e
(equiv)l(alence)g(and)h(quer)t(y)g(containment)10633
5482 y
0 setgray
10633 5482 a 7586 5768 a Fg(235)4500 6000 y
tx@Dict begin -90 Rot end
4500
6000 a eop end
PStoPSsaved restore
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 421.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
PStoPSxform concat
TeXDict begin 236 11 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1974
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 3.8 neg 411.43053 29.04741 .5 Frame gsave 1.00 0.71 0.76 setrgbcolor
fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap stroke
grestore end
@endspecial 4801 1881 a
Fd(6.3)207 b(XML-QL)4821 2253 y Fu(\017)72 b Fv(http://www.w3.org/TR/1)
q(998)q(/NO)q(TE-)8 b(xml)q(-)f(q)q(l-)g(1)q(998)q(081)q(9/)4821
2553 y Fu(\017)72 b Fi(simple)n(,)38 b(patter)t(n-based)e(XML)j(quer)t
(y)g(language:)4965 2816 y(WHERE)g Ft(xml)s Fi(-)p Ft(patter)t(n)f
Fi(IN)h Ft(ur)t(l)k Fi(CONSTR)-6 b(UCT)36 b Ft(r)t(esul)s(t)4821
3117 y Fu(\017)72 b Fi(usage)38 b(of)i(v)l(ar)r(iab)m(le)f(bindings:)
4965 3320 y Ft(xml)s Fi(-)p Ft(patter)t(n)f Fi(contains)g(v)l(ar)r(iab)
m(les)h(that)g(can)g(be)h(used)f(in)g Ft(r)t(esul)s(t)p
Fi(,)4821 3621 y Fu(\017)72 b Fi(declar)o(ativ)l(e)n(,)4821
3922 y Fu(\017)g Fi(\223relationally)37 b(complete\224,)h(i.e)n(.,)h
(joins)f(can)i(be)f(e)l(xpressed.)4707 4222 y(Example:)5354
4222 y
0. 0. 1. setrgbcolor
5354 4222 a 5008 4523 a Fv(WHERE)77 b()
5610 4726 y($name)5460 4929 y()5008
5132 y(IN)e("http://www.../mondial)q(.xm)q(l")5008 5335
y(CONSTRUCT)i()4707
5390 y
0 setgray
4707 5390 a 10633 5482 a
0 setgray
10633 5482 a 7586 5768
a Fg(236)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
%%Page: (12,13) 7
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 0.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
/showpage{}def/copypage{}def/erasepage{}def
PStoPSxform concat
TeXDict begin 237 12 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 2128
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.69437 neg 411.43053 16.69438 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 7083 2150 a
Fe(X)8 b(M)g(L)g(-)g(Q)g(L)g(:)61 b(J)8 b Ff(O)g(I)g(N)g(S)4707
2825 y Fi(Joins)38 b(are)h(e)l(xpressed)f(as)h(a)h(list)f(of)4707
3028 y(WHERE)f(\()p Ft(expr)5614 3050 y Fr(1)5718 3028
y Fi(IN)h Ft(doc)6108 3050 y Fr(1)6172 3028 y Fi(,)h(...)49
b(,)40 b Ft(expr)6787 3050 y Fn(n)6904 3028 y Fi(IN)g
Ft(doc)7295 3050 y Fn(n)7372 3028 y Fi(\)-clauses:)4821
3329 y Fu(\017)72 b Fi(equijoin)38 b(inside)h(a)g(document:)6752
3329 y
0. 0. 1. setrgbcolor
6752 3329 a 5040 3592 a Fv(WHERE)5191 3795 y()5191 3998 y(IN)e(mondial.xml,)5191
4202 y()5341 4405 y()5191 4608 y()5191
4811 y(IN)d(mondial.xml,)5040 5014 y(CONSTRUCT)i(...)4707
5037 y
0 setgray
4707 5037 a 10633 5482 a
0 setgray
10633 5482 a 7586 5768
a Fg(237)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 421.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
PStoPSxform concat
TeXDict begin 238 13 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1910
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.69437 neg 411.43053 16.69438 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 7083 1933 a
Fe(X)8 b(M)g(L)g(-)g(Q)g(L)g(:)61 b(J)8 b Ff(O)g(I)g(N)g(S)4821
2531 y Fu(\017)72 b Fi(Joins)39 b(that)g(combine)f(m)o(ultiple)f
(documents:)4707 2561 y
0. 0. 1. setrgbcolor
4707 2561 a 5040 2794 a Fv(WHERE)5191
2997 y()5191 3201 y(IN)f(http://www.../europe.x)
q(ml,)5191 3404 y()5191 3607 y(IN)f
(http://www.../america.)q(xml)q(,)5191 3810 y()5191 4013 y(IN)e(http://www.../lufthans)q
(a.x)q(ml)5040 4216 y(CONSTRUCT)5115 4419 y()5266
4623 y()5266
4826 y()5115
5029 y()4707 5255 y
0 setgray
4707 5255 a 10633 5482
a
0 setgray
10633 5482 a 7586 5768 a Fg(238)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000
a eop end
PStoPSsaved restore
%%Page: (14,15) 8
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 0.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
/showpage{}def/copypage{}def/erasepage{}def
PStoPSxform concat
TeXDict begin 239 14 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1705
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.69437 neg 411.43053 16.69438 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 6627 1728 a
Fe(X)8 b(M)g(L)g(-)g(Q)g(L)g(:)61 b(N)8 b Ff(E)g(S)g(T)g(E)g(D)59
b Fe(Q)6 b Ff(U)i(E)g(R)g(I)g(E)g(S)4707 2164 y Fi(WHERE)38
b Ft(xml)s Fi(-)p Ft(patter)t(n)h Fi(IN)g Ft(ur)t(l)k
Fi(CONSTR)-6 b(UCT)36 b Ft(r)t(esul)s(t)4821 2440 y Fu(\017)72
b Ft(r)t(esul)s(t)39 b Fi(can)g(contain)g(nested)f(WHERE)h(...)49
b(IN)39 b(...)49 b(CONSTR)-6 b(UCT)37 b(statements)n(.)4761
2896 y @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.38539 neg 411.43053 16.38539 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 6721 2920
a Fe(F)8 b Ff(U)g(R)d(T)j(H)g(E)g(R)61 b Fe(F)8 b Ff(U)g(N)g(C)g(T)g(I)
g(O)g(N)h(A)g(L)g(I)g(T)f(Y)4821 3337 y Fu(\017)72 b
Fi(tag-v)l(ar)r(iab)m(les:)47 b(WHERE)6445 3317 y Fp(<)6522
3337 y Fi($tag)6802 3317 y Fp(>)6919 3337 y Fi(...)7088
3317 y Fp(<)7166 3337 y Fi(/)7206 3317 y Fp(>)4821 3613
y Fu(\017)72 b Fi(regular)38 b(path)h(e)l(xpressions:)46
b(instead)39 b(of)g(XP)-6 b(ath')f(s)39 b(\223//\224,)8139
3597 y Fp(<)8216 3613 y Fv(*)8291 3597 y Fp(>)8445 3613
y Fv(...)8821 3597 y Fp(<)8899 3613 y Fv(/)8974 3597
y Fp(>)9172 3613 y Fi(is)g(used.)4761 3976 y @beginspecial
@setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.38539 neg 411.43053 16.38539 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 7219 4001 a Fe(D)r Ff(A)l(T)l(A)59
b Fe(M)8 b Ff(O)g(D)g(E)g(L)4821 4413 y Fu(\017)72 b
Fi(Gr)o(aph-based:)46 b(XML-tree)38 b(with)h(IDREF)f(edges:)4707
4444 y
0. 0. 1. setrgbcolor
4707 4444 a 5191 4658 a Fv(WHERE)5341 4856 y()5492 5054 y($name<)q(/na)q(me>)q($)q(pop)q(
)q()
5341 5252 y()5191 5450 y(IN)e(...)g(CONSTRUCT)i(...)4707
5466 y
0 setgray
4707 5466 a 10633 5482 a
0 setgray
10633 5482 a 7586 5768
a Fg(239)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 421.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
PStoPSxform concat
TeXDict begin 240 15 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 2176
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.69437 neg 411.43053 16.69438 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 6802 2198 a
Fe(X)8 b(M)g(L)g(-)g(Q)g(L)g(:)62 b(C)8 b Ff(O)g(N)g(C)g(L)g(U)g(S)g(I)
g(O)h(N)4821 2797 y Fu(\017)72 b Fi(clause-based)37 b(high-le)l(v)l(el)
h(language)4821 3097 y Fu(\017)72 b Fi(selection)38 b(and)h(constr)r
(uction)e(patter)t(n-based)g(\(b)m(y)i(binding)g(v)l(ar)r(iab)m(les)f
(in)i(the)f(patter)t(ns;)f(similar)g(to)4965 3301 y(Logic)h(Prog)o(r)o
(amming\))4821 3601 y Fu(\017)72 b Fi(join)39 b(conditions:)47
b(not)39 b(in)h(a)f(WHERE)g(clause)n(,)f(b)m(ut)i(implicitly)e(e)l
(xpressed)f(b)m(y)j Fc(join)f(v)l(ar)r(iab)m(les)j Fi(\(lik)m(e)d(in)
4965 3804 y(Logic)g(Prog)o(r)o(amming\))4821 4105 y Fu(\017)72
b Fi(g)o(r)o(aph)38 b(data)h(model;)f(no)i(diff)l(erence)d(betw)o(een)h
(tree)h(edges)f(and)i(ref)l(erence)d(edges)4821 4406
y Fu(\017)72 b Fi(has)39 b(been)g(implemented)4821 4706
y Fu(\017)72 b Fi(used)39 b(in)g(diff)l(erent)f(projects)g(\(e)n(.g.)h
(MIX)g(\226)h(Mediation)d(in)j(XML;)f(UC)g(San)g(Diego)f(1999/2000\))
5014 4958 y Fh(\226)72 b Fi(allo)n(ws)38 b(f)l(or)h(access)f(and)h
(combination)f(of)h(diff)l(erent)f(HTML/XML-sources)d(in)40
b(a)g(quer)t(y)-14 b(.)10633 5482 y
0 setgray
10633 5482 a 7586
5768 a Fg(240)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
%%Page: (16,17) 9
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 0.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
/showpage{}def/copypage{}def/erasepage{}def
PStoPSxform concat
TeXDict begin 241 16 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1906
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 3.8 neg 411.43053 30.71783 .5 Frame gsave 1.00 0.71 0.76 setrgbcolor
fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap stroke
grestore end
@endspecial 4801 1789 a
Fd(6.4)207 b(SQL,)57 b(OQL)g(etc.)4821 2178 y Fu(\017)72
b Fi(set-or)r(iented)37 b(\(sets)i(of)h(tuples)e(or)i(objects\))e
(language)4821 2471 y Fu(\017)72 b Fi(implicit)38 b(iter)o(ation)g(o)n
(v)l(er)h(sets:)5166 2718 y(SELECT)f(...)49 b(FR)m(OM)38
b Fc(relation-or-e)l(xtent)7525 2718 y
1. 0. 0. setrgbcolor
7525 2718 a Fi(c)7597
2718 y
0 setgray
7597 2718 a 4821 3010 a Fu(\017)72 b Fi(v)l(ar)r(iab)m(le)5503
3010 y
1. 0. 0. setrgbcolor
5503 3010 a Fi(c)5575 3010 y
0 setgray
5575 3010 a 39 w
Fi(r)o(anges)38 b(o)n(v)l(er)6404 3010 y
0. 0. 1. setrgbcolor
6404 3010 a
Fc(data)h(items)7067 3010 y
0 setgray
7067 3010 a 4821 3302 a Fu(\017)72
b Fi(join:)48 b(use)39 b(se)l(v)l(er)o(al)f(such)h(v)l(ar)r(iab)m(les)g
(and)g(correlate)f(them)4821 3594 y Fu(\017)72 b Fi(WHERE)39
b(and)g(SELECT)f(par)6 b(t:)48 b(use)39 b(these)g(v)l(ar)r(iab)m(les)
4761 3887 y @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0.80 1. 0.80 setrgbcolor 0. true
3.8 neg 5.06746 neg 411.43053 10.06746 .5 Frame gsave 0.80 1. 0.80
setrgbcolor fill grestore gsave 0.8 SLW 0.80 1. 0.80 setrgbcolor 0
setlinecap stroke grestore end
@endspecial 4801
3903 a(Similar)f(constr)r(ucts)g(f)l(or)h(XML?)4821 4165
y Fu(\017)72 b Fi(v)l(ar)r(iab)m(les)38 b(r)o(ange)h(o)n(v)l(er)g(sets)
g(of)g(nodes)4821 4458 y Fu(\017)72 b Fi(...)49 b(sets)39
b(of)g(nodes)g(can)g(be)h(addressed)d(b)m(y)j(XP)-6 b(ath)4821
4750 y Fu(\017)72 b Fi(str)o(aightf)l(orw)n(ard)36 b(and)j(intuitiv)l
(e:)4965 5042 y(f)l(or)5168 5042 y
1. 0. 0. setrgbcolor
5168 5042 a Fi($c)5320
5042 y
0 setgray
5320 5042 a 39 w Fi(in)5511 5042 y
0. 0. 1. setrgbcolor
5511 5042 a
Fi(//countr)t(y)6067 5042 y
0 setgray
6067 5042 a 4965 5244 a Fi(where)5395
5244 y
1. 0. 0. setrgbcolor
5395 5244 a Fi($c)5547 5244 y
0 setgray
5547 5244 a Fi(.population)f
Ft(>)h Fi(1000000)4965 5445 y(retur)t(n)5383 5445 y
1. 0. 0. setrgbcolor
5383
5445 a Fi($c)5535 5445 y
0 setgray
5535 5445 a Fi(.name)10633 5482
y
0 setgray
10633 5482 a 7586 5768 a Fg(241)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000
a eop end
PStoPSsaved restore
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 421.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
PStoPSxform concat
TeXDict begin 242 17 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1915
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 3.8 neg 411.43053 31.32983 .5 Frame gsave 1.00 0.71 0.76 setrgbcolor
fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap stroke
grestore end
@endspecial 4801 1789 a
Fd(6.5)207 b(Quilt)58 b(and)f(XQuer)r(y)4821 2173 y Fu(\017)72
b Fi(a)39 b(Quilt)g(is)h(a)5682 2173 y
0. 0. 1. setrgbcolor
5682 2173 a Fi(\223Flic)m(k)m
(enteppich\224)6692 2173 y
0 setgray
6692 2173 a 37 w Fi(...)4821
2445 y Fu(\017)72 b Fi(IBM,)39 b(Softw)n(are)e(A)l(G,)i(INRIA;)g(liter)
o(ature:)46 b(W)l(ebDB2000-W)l(or)r(kshop)4821 2717 y
Fu(\017)72 b Fi(Str)r(ucture)38 b(similar)g(to)6203 2717
y
0. 0. 1. setrgbcolor
6203 2717 a Fi(SQL/OQL:)f(clause-based,)g(functional)h(language)9091
2717 y
0 setgray
9091 2717 a 4965 2915 a Fi(\(arbitr)o(ar)t(y)f(nesting)i(of)g
(FL)-10 b(WR)40 b(e)l(xpressions)d(allo)n(w)o(ed\),)4821
3187 y Fu(\017)72 b Fi(Use)39 b(of)g(v)l(ar)r(iab)m(les)g(similar)f(to)
i(SQL/OQL,)4821 3459 y Fu(\017)72 b Fi(based)38 b(upon)5754
3459 y
0. 0. 1. setrgbcolor
5754 3459 a Fi(XP)-6 b(ath)39 b(\(pre)l(viously)e(XQL/XSL)h(P)-6
b(atter)t(ns\))8128 3459 y
0 setgray
8128 3459 a 38 w Fi(in)40
b(the)8557 3459 y
0. 0. 1. setrgbcolor
8557 3459 a Fi(selection)e(par)6 b(t)9417
3459 y
0 setgray
9417 3459 a 39 w Fi(and)39 b(upon)10094 3459 y
0. 0. 1. setrgbcolor
10094 3459 a Fi(XML-QL)10630 3459 y
0 setgray
10630 3459 a 4965
3657 a Fi(\(XML)f(patter)t(ns\))g(in)h(the)6348 3657
y
0. 0. 1. setrgbcolor
6348 3657 a Fi(constr)r(uction)e(par)6 b(t)7417 3657
y
0 setgray
7417 3657 a Fi(:)4821 3929 y Fu(\017)4965 3929 y
1. 0. 0. setrgbcolor
4965
3929 a Fi(F)5053 3929 y
0 setgray
5053 3929 a Fi(or)5220 3929 y
1. 0. 0. setrgbcolor
5220 3929 a Fi(L)5300 3929 y
0 setgray
5300 3929 a Fi(et)5459 3929
y
1. 0. 0. setrgbcolor
5459 3929 a Fi(W)5594 3929 y
0 setgray
5594 3929 a Fi(here)5922
3929 y
1. 0. 0. setrgbcolor
5922 3929 a Fi(R)6026 3929 y
0 setgray
6026 3929 a Fi(etur)t(n-clauses)
5166 4164 y(f)l(or)39 b Ft(v)5 b(ar)t(iabl)s(e)38 b Fi(in)i
Ft(xpath)p Fi(-)p Ft(expr)202 b Fi(//)39 b(from)g(XQL/XP)-6
b(ath)38 b(and)h(XML-QL)5166 4367 y(let)g Ft(additional)p
6019 4367 44 6 v 54 w(v)5 b(ar)t(iabl)s(e)38 b Fi(:=)i
Ft(xpath)p Fi(-)p Ft(expr)5166 4570 y Fi(where)e Ft(condition)5166
4773 y Fi(retur)t(n)g Ft(xml)s Fi(-)p Ft(expr)808 b Fi(//)39
b(from)g(XML-QL)4821 5046 y Fu(\017)72 b Fi(has)39 b(been)g(mo)n(v)l
(ed)g(into)g(W3C')-7 b(s)39 b(\223XML)f(Quer)t(y\224)h(in)g(2001)g
(with)g(only)g(small)g(changes)n(.)4821 5318 y Fu(\017)72
b Fi(Remar)r(k:)47 b(XQuer)t(y)39 b(is)g(case-sensitiv)l(e)n(.)4965
5515 y(ALL)g(KEYW)m(ORDS)f(MUST)g(BE)h(WRITTEN)g(WITH)7911
5515 y
1. 0. 0. setrgbcolor
7911 5515 a Fi(non-capital)8615 5515 y
0 setgray
8615 5515
a 38 w Fi(LETTERS!)10633 5482 y
0 setgray
10633 5482 a 7586 5768
a Fg(242)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
%%Page: (18,19) 10
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 0.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
/showpage{}def/copypage{}def/erasepage{}def
PStoPSxform concat
TeXDict begin 243 18 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1705
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.69437 neg 411.43053 16.69438 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 6963 1728 a
Fe(X)8 b(Q)e Ff(U)i(E)g(R)q(Y)p Fe(:)73 b(E)8 b Ff(X)g(A)g(M)g(P)g(L)g
(E)4821 2050 y Fu(\017)72 b Fi(f)l(or-clause:)47 b(binding)38
b(of)h(v)l(ar)r(iab)m(les)g(\(cf)l(.)g(SQL:)g(FR)m(OM\))4821
2324 y Fu(\017)72 b Fi(where-clause:)46 b(e)l(v)l(aluation)38
b(of)h(conditions)4821 2599 y Fu(\017)72 b Fi(retur)t(n-clause:)46
b(gener)o(ation)37 b(of)j(the)f(result)f(\(cf)l(.)h(SQL:)g(SELECT\))
4707 2647 y
0. 0. 1. setrgbcolor
4707 2647 a 4761 3509 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0. setgray 0. true 3.8 neg 50.1047
neg 411.15254 54.6047 .5 Frame gsave 1. setgray fill grestore gsave
0.8 SLW 0. setgray 0 setlinecap stroke grestore end
@endspecial 4829 2859 a Fo()4897 3046 y({)67
b(for)g($c)h(in)f(/mondial/country)5032 3232 y(where)g($c/population)e
(>)j(10000000)5032 3418 y(return)f()5710
3604 y({)h($c/name)e(})5710 3790 y()h({)g(string\($c/@area\))d(})
k()5507 3977 y()4897 4163 y(})f()10660
3509 y
0 setgray
10660 3509 a 4707 4351 a Fi([Filename:)47 b(\002rst-e)l(xample)n
(.xq])6511 4351 y
0. setgray
6511 4351 a 4707 4593 a Fi(gener)o(ates)5383
4593 y
0. 0. 1. setrgbcolor
5383 4593 a 4707 4833 a Fp(<)4784 4852 y Fb(result)5101
4833 y Fp(>)o(<)5255 4852 y Fb(bigcountr)t(y)5857 4833
y Fp(>)n(<)6010 4852 y Fb(name)6334 4833 y Fp(>)6411
4852 y Fb(F)-6 b(r)o(ance)6807 4833 y Fp(<)6883 4852
y Fb(/name)7243 4833 y Fp(>)o(<)7398 4852 y Fb(area)7657
4833 y Fp(>)7734 4852 y Fb(547030)8166 4833 y Fp(<)8242
4852 y Fb(/area)8537 4833 y Fp(>)o(<)8692 4852 y Fb(/bigcountr)t(y)9330
4833 y Fp(>)5178 5020 y(<)5255 5038 y Fb(bigcountr)t(y)5857
5020 y Fp(>)n(<)6010 5038 y Fb(name)6334 5020 y Fp(>)6411
5038 y Fb(Spain)6742 5020 y Fp(<)6819 5038 y Fb(/name)7179
5020 y Fp(>)n(<)7333 5038 y Fb(area)7592 5020 y Fp(>)7669
5038 y Fb(504750)8101 5020 y Fp(<)8177 5038 y Fb(/area)8472
5020 y Fp(>)o(<)8627 5038 y Fb(/bigcountr)t(y)9265 5020
y Fp(>)5178 5224 y Fb(:)4707 5392 y Fp(<)4784 5410 y
Fb(result)5101 5392 y Fp(>)4707 5482 y
0. setgray
4707 5482 a 10633
5482 a
0 setgray
10633 5482 a 7586 5768 a Fg(243)4500 6000 y
tx@Dict begin -90 Rot end
4500
6000 a eop end
PStoPSsaved restore
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 421.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
PStoPSxform concat
TeXDict begin 244 19 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4707 1466
a
0 setgray
4707 1466 a 4761 1705 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.69437 neg 411.43053 16.69438 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial
4927 1728 a Fe(A)8 b Ff(S)g(I)g(D)g(E)g Fe(:)72 b(T)r
Ff(O)8 b(O)g(L)g(S)59 b Fe(\226)d(X)8 b(Q)e Ff(U)i(E)g(R)q(Y)60
b(A)8 b(S)57 b(A)g Fe(D)r Ff(A)l(T)l(A)8 b(B)t(A)g(S)g(E)61
b(A)8 b(N)g(D)58 b Fe(W)8 b Ff(E)g(B)57 b Fe(Q)6 b Ff(U)i(E)g(R)q(Y)60
b Fe(L)8 b Ff(A)g(N)g(G)g(U)q(A)q(G)h(E)4761 2105 y @beginspecial
@setspecial
tx@Dict begin STP newpath 0.8 SLW 0.80 1. 0.80 setrgbcolor 0. true
3.8 neg 4.9949 neg 411.43053 9.99492 .5 Frame gsave 0.80 1. 0.80 setrgbcolor
fill grestore gsave 0.8 SLW 0.80 1. 0.80 setrgbcolor 0 setlinecap stroke
grestore end
@endspecial 4801 2120 a Fi(XML)39 b(Databases)4821
2351 y Fu(\017)72 b Fi(local)39 b(repositor)t(y)f(of)h(XML)g(documents)
4821 2625 y Fu(\017)72 b Fi(adding)38 b(documents)g(to)h(the)h
(Database)4821 2899 y Fu(\017)72 b Fi(access)38 b(only)h(against)g
(locally)f(stored)h(documents)4821 3172 y Fu(\017)72
b Fi(presence)38 b(of)h(access)g(paths)f(lik)m(e)i(inde)l(x)l(es)d(etc)
4821 3446 y Fu(\017)72 b Fi(manipulation)37 b(of)i(documents)4707
3720 y(T)-17 b(ool:)48 b(a)39 b(local)g(eXist)g(repositor)t(y;)f(see)h
(W)l(eb)g(page)4707 3918 y(paths:)5147 3918 y
0. 0. 1. setrgbcolor
5147 3918
a Fi(/mondial//countr)t(y/name)6647 3918 y
0 setgray
6647 3918
a 35 w Fi(or)6849 3918 y
0. 0. 1. setrgbcolor
6849 3918 a Fi(doc\('/db/xmlcourse/mondial.xm)
o(l'\)/m)o(ond)o(ial/co)o(untr)s(y/nam)o(e)10399 3918
y
0 setgray
10399 3918 a 4761 4186 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0.80 1. 0.80 setrgbcolor 0. true
3.8 neg 6.09749 neg 411.43053 11.09749 .5 Frame gsave 0.80 1. 0.80
setrgbcolor fill grestore gsave 0.8 SLW 0.80 1. 0.80 setrgbcolor 0
setlinecap stroke grestore end
@endspecial 4801 4187 a Fi(Quer)r(ies)f(against)h(the)g(W)l(eb)4821
4432 y Fu(\017)72 b Fi(quer)t(ying)38 b(the)h(whole)g(W)l(eb)4821
4706 y Fu(\017)72 b Fi(documents)37 b(not)j(locally)e(stored;)h(only)f
(on-the-\003y-inde)l(xing)e(possib)m(le)4821 4980 y Fu(\017)72
b Fi(access)38 b(to)i(remote)e(documents)g(b)m(y)h(their)g(ur)r(l)4707
5254 y(T)-17 b(ool:)48 b(saxonXQ;)37 b(see)j(W)l(eb)f(page)4707
5451 y
0. 0. 1. setrgbcolor
4707 5451 a Fi(paths:)48 b(doc\(')p Fc(\002lename)37
b(or)i(ur)r(l)12 b Fi('\)//countr)t(y/name)7417 5451
y
0 setgray
7417 5451 a 10633 5482 a
0 setgray
10633 5482 a 7586 5768 a Fg(244)4500
6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
%%Page: (20,21) 11
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 0.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
/showpage{}def/copypage{}def/erasepage{}def
PStoPSxform concat
TeXDict begin 245 20 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1705
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.69437 neg 411.43053 16.69438 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 6153 1728 a
Fe(X)8 b(Q)e Ff(U)i(E)g(R)q(Y)p Fe(:)73 b(O)p Ff(V)8
b(E)g(R)q(V)g(I)g(E)g(W)60 b(O)8 b(F)58 b Fe(F)8 b Ff(U)g(N)g(C)g(T)g
(I)g(O)g(N)h(A)f(L)h(I)g(T)g(Y)4821 2118 y Fu(\017)72
b Fi(f)l(or-clause:)47 b(de\002nes)38 b(nested)g(loops)h(where)g(each)g
(of)g(the)g(v)l(ar)r(iab)m(les)g(r)r(uns)g(o)n(v)l(er)g(the)h(set)f(of)
g(selected)4965 2315 y(v)l(alues)4821 2587 y Fu(\017)72
b Fi(v)l(ar)r(iab)m(les)38 b(in)i(XP)-6 b(ath)39 b(e)l(xpressions:)46
b(bound)39 b(in)g(f)l(or/let)g(\(or)g(b)m(y)g(surrounding)f
(statements\),)f(the)m(y)i(are)4965 2785 y(used)g(as)g(star)6
b(ting)38 b(points)h(f)l(or)g(paths)g(and)g(in)g(conditions)4821
3057 y Fu(\017)72 b Fi(joins:)5014 3292 y Fh(\226)g Fi(m)o(ultiple)37
b(v)l(ar)r(iab)m(les)i(in)g(a)h(f)l(or-clause:)5166 3489
y(f)l(or)f Fc($v)l(ar)5645 3511 y Fr(1)5748 3489 y Fi(in)h
Fc(doc)6132 3511 y Fr(1)6195 3489 y Fc(/path)6515 3511
y Fr(1)6579 3489 y Fi(,)g(.)24 b(.)g(.)g(,)38 b Fc($v)l(ar)7205
3511 y Fn(n)7323 3489 y Fi(in)h Fc(doc)7706 3511 y Fn(n)7784
3489 y Fc(/path)8104 3511 y Fn(n)5014 3724 y Fh(\226)72
b Fi(correlated)37 b(de\002nition)h(of)i(the)f(v)l(ar)r(iab)m(les)g(in)
g(the)h(f)l(or-clause:)5166 3921 y(f)l(or)f Fc($v)l(ar)5645
3943 y Fr(1)5748 3921 y Fi(in)h Fc(doc)6132 3943 y Fr(1)6195
3921 y Fc(/path)6515 3943 y Fr(1)6579 3921 y Fi(,)g Fc($v)l(ar)6935
3943 y Fr(2)7038 3921 y Fi(in)g Fc($v)l(ar)7466 3943
y Fr(1)7530 3921 y Fc(/path)7850 3943 y Fr(2)7913 3921
y Fi(,)g(.)24 b(.)g(.)4821 4194 y Fu(\017)72 b Fi(let-clause)38
b(f)l(or)h(de\002nition)f(of)h(\223constants\224:)4965
4391 y(let)g Fc($v)l(ar)h(:=)f(e)l(xpr)4965 4588 y Fi(binds)g
Fc($v)l(ar)55 b Fi(to)40 b(the)f Fc(whole)g(result)51
b Fi(of)40 b Fc(e)l(xpr)54 b Fi(\(in)40 b(gener)o(al,)d(a)j(node)f
(set\).)4821 4861 y Fu(\017)72 b Fi(nested/iter)o(ated)36
b(f)l(or-let-f)l(or-let-clauses)f(allo)n(w)o(ed)4821
5133 y Fu(\017)72 b Fi(gener)o(ation)37 b(of)j(nested)e(and)h(g)o
(rouped)f(str)r(uctures:)4965 5330 y(the)h(retur)t(n-clause)e(ma)l(y)h
(contain)h(fur)6 b(ther)38 b(FL)-10 b(WR-clauses)37 b(\(which)i(can)g
(contain)f(v)l(ar)r(iab)m(les)h(from)4965 5528 y(the)g(outer)g
(clause\).)10633 5482 y
0 setgray
10633 5482 a 7586 5768 a Fg(245)4500
6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 421.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
PStoPSxform concat
TeXDict begin 246 21 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1705
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.69437 neg 411.43053 16.69438 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 6279 1728 a
Fe(S)8 b Ff(I)g(M)g(P)g(L)g(E)g(S)g(T)60 b Fe(X)8 b(Q)e
Ff(U)i(E)g(R)q(Y)60 b Fe(Q)6 b Ff(U)i(E)g(R)g(I)g(E)g(S)g
Fe(:)73 b(X)8 b(P)-7 b Ff(A)l(T)8 b(H)4821 2312 y Fu(\017)72
b Fi(Each)39 b(XP)-6 b(ath)39 b(quer)t(y)g(is)g(also)g(an)g(XQuer)t(y)g
(quer)t(y)4965 2515 y(result:)48 b(a)39 b(sequence)f(of)i(nodes)f(or)g
(liter)o(al)f(v)l(alues)7776 2515 y
0. 0. 1. setrgbcolor
7776 2515 a 5266
2776 a Fv(doc\('mondial.xml'\)//c)q(oun)q(try)q(/na)q(me)4707
2830 y
0 setgray
4707 2830 a 4965 3038 a Fi(Note:)48 b(diff)l(erent)38
b(beha)m(vior)g(when)h(retur)t(ning)e(attr)r(ib)m(ute)i(nodes!)8528
3038 y
0. 0. 1. setrgbcolor
8528 3038 a 5266 3299 a Fv(doc\('mondial.xml'\)//c)q(oun)q(try)q
(/@a)q(rea)4707 3353 y
0 setgray
4707 3353 a 4761 3879 a @beginspecial
@setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.69437 neg 411.43053 16.69438 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 6830 3901 a Fe(X)8 b(Q)e Ff(U)i(E)g(R)q(Y)p
Fe(:)73 b(F)8 b Ff(O)g(R)g Fe(-)g Ff(C)g(L)g(A)q(U)h(S)f(E)6996
4491 y Fi(f)l(or)39 b($)p Fc(v)l(ar)56 b Fi(=)39 b Fc(xpath-e)l(xpr)
4821 4789 y Fu(\017)72 b Fi(iter)o(ates)38 b(o)n(v)l(er)h(the)g(result)
g(of)g Fc(xpath-e)l(xpr)4707 4819 y
0. 0. 1. setrgbcolor
4707 4819 a 5019
5126 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0. setgray 0. true 3.8 neg 12.26884
neg 393.79057 17.26884 .5 Frame gsave 1. setgray fill grestore gsave
0.8 SLW 0. setgray 0 setlinecap stroke grestore end
@endspecial -93 x Fv(for)77
b($c)f(in)f(/mondial//country/n)q(ame)5019 5236 y(return)j($c)4965
5430 y
0. setgray
4965 5430 a Fi([Filename:)47 b(f)l(or-e)l(xample)n(.xq])4707
5482 y
0 setgray
4707 5482 a 4707 5482 a
0 setgray
4707 5482 a 10633 5482
a
0 setgray
10633 5482 a 7586 5768 a Fg(246)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000
a eop end
PStoPSsaved restore
%%Page: (22,23) 12
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 0.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
/showpage{}def/copypage{}def/erasepage{}def
PStoPSxform concat
TeXDict begin 247 22 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1705
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.69437 neg 411.43053 16.69438 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 6674 1728 a
Fe(X)8 b(Q)e Ff(U)i(E)g(R)q(Y)p Fe(:)73 b(R)8 b Ff(E)g(T)g(U)g(R)g(N)g
Fe(-)g Ff(C)h(L)f(A)r(U)h(S)g(E)4707 2327 y Fi(Output)38
b(of)i(all)f(statements)f(m)o(ust)g(be)h(XML.)4821 2618
y Fu(\017)72 b Fi(simple)38 b(case:)48 b(content)39 b(of)g(a)h(v)l(ar)r
(iab)m(le)4707 2648 y
0. 0. 1. setrgbcolor
4707 2648 a 5019 2952 a @beginspecial
@setspecial
tx@Dict begin STP newpath 0.8 SLW 0. setgray 0. true 3.8 neg 12.26884
neg 393.79057 17.26884 .5 Frame gsave 1. setgray fill grestore gsave
0.8 SLW 0. setgray 0 setlinecap stroke grestore end
@endspecial -94 x Fv(for)77 b($c)f(in)f
(/mondial//country/n)q(ame)5019 3061 y(return)j($c)4965
3153 y
0. setgray
4965 3153 a 4821 3444 a Fu(\017)72 b Fi(and)39
b(gener)o(ation)e(of)j(str)r(uctured)e(results)g(\(cf)l(.)h(OQL\))4707
3496 y
0 setgray
4707 3496 a 4707 3496 a
0 setgray
4707 3496 a 4761 3735
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0.80 1. 0.80 setrgbcolor 0. true
3.8 neg 5.06746 neg 411.43053 10.06746 .5 Frame gsave 0.80 1. 0.80
setrgbcolor fill grestore gsave 0.8 SLW 0.80 1. 0.80 setrgbcolor 0
setlinecap stroke grestore end
@endspecial 4801 3750 a
Fi(Gener)o(ation)e(of)j(Str)r(uctures)4821 4011 y Fu(\017)72
b Fi(liter)o(al)38 b(XML)4821 4302 y Fu(\017)72 b Fi(computed)38
b(element-)g(and)h(attr)r(ib)m(ute)f(constr)r(uctors)g(\(later\))4761
4601 y @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0.80 1. 0.80 setrgbcolor 0. true
3.8 neg 6.02748 neg 411.43053 11.02748 .5 Frame gsave 0.80 1. 0.80
setrgbcolor fill grestore gsave 0.8 SLW 0.80 1. 0.80 setrgbcolor 0
setlinecap stroke grestore end
@endspecial 4801 4603
a(Use)h(of)g(Computed)f(V)-10 b(alues/Str)r(uctures)4821
4878 y Fu(\017)72 b Fi(enclosed)38 b(betw)o(een)g(\223)p
Fu(f)p Fi(\224)h(.)24 b(.)g(.)63 b(\223)p Fu(g)p Fi(\224)4821
5169 y Fu(\017)72 b Fi(e)l(v)l(aluation)38 b(of)h(v)l(ar)r(iab)m(les)g
(and)g(XP)-6 b(ath)39 b(e)l(xpressions)4821 5460 y Fu(\017)72
b Fi(nested)38 b(FL)-10 b(WR-clauses)10633 5482 y
0 setgray
10633
5482 a 7586 5768 a Fg(247)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop
end
PStoPSsaved restore
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 421.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
PStoPSxform concat
TeXDict begin 248 23 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 2008
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.48137 neg 411.43053 16.48138 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 5474 2034 a
Fe(R)8 b Ff(E)g(T)g(U)g(R)g(N)g Fe(-)g(C)h Ff(L)g(A)r(U)g(S)f(E)h
Fe(:)74 b(C)8 b Ff(O)g(N)g(S)g(T)g(R)d(U)j(C)g(T)h(I)g(O)g(N)62
b(O)8 b(F)57 b Fe(R)8 b Ff(E)g(S)g(U)g(L)l(T)59 b Fe(E)8
b Ff(L)g(E)g(M)g(E)g(N)g(T)g(S)4821 2627 y Fu(\017)72
b Fi(liter)o(al)38 b(XML,)h(v)l(alues)g(of)g(v)l(ar)r(iab)m(les)g(and)g
(results)f(of)i(XP)-6 b(ath)39 b(e)l(xpressions)4707
2657 y
0. 0. 1. setrgbcolor
4707 2657 a 5019 3772 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0. setgray 0. true 3.8 neg 68.4918
neg 393.79057 73.49182 .5 Frame gsave 1. setgray fill grestore gsave
0.8 SLW 0. setgray 0 setlinecap stroke grestore end
@endspecial -912 x Fv()5019 3063 y(Name | Ar)q(ea<)q(/th)q(> | Po)q(pul)q(ati)q(on<)q(/th)q(>)5019
3267 y({)76 b(for)g($c)g(in)g(/mondial/country)5170 3470
y(return)5321 3673 y( |
---|
{$c/name/text\()q(\)}<)q(/td>)5622
3876 y( | {string\($c/@area\))q(})5622 4079
y( | {$c/population/te)q(xt\(\))q(})q(td>)5321 4282
y( |
)5019 4485 y(})5019 4689 y(
)10669
3772 y
0 setgray
10669 3772 a 4965 4882 a Fi([Filename:)47 b(tab)m(le-e)l(xample)
n(.xq])4965 5123 y(retur)t(ns)38 b(one)h(tab)m(le)g(ro)n(w)g(f)l(or)g
(each)g(countr)t(y)-14 b(.)10633 5482 y
0 setgray
10633 5482 a
7586 5768 a Fg(248)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
%%Page: (24,25) 13
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 0.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
/showpage{}def/copypage{}def/erasepage{}def
PStoPSxform concat
TeXDict begin 249 24 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 2014
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.69437 neg 411.43053 16.69438 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 6818 2036 a
Fe(X)8 b(Q)e Ff(U)i(E)g(R)q(Y)p Fe(:)72 b(F)8 b Ff(O)g(R)g
Fe(-)g(C)g Ff(L)g(A)r(U)h(S)f(E)4761 2764 y @beginspecial
@setspecial
tx@Dict begin STP newpath 0.8 SLW 0.80 1. 0.80 setrgbcolor 0. true
3.8 neg 6.02748 neg 411.43053 11.02748 .5 Frame gsave 0.80 1. 0.80
setrgbcolor fill grestore gsave 0.8 SLW 0.80 1. 0.80 setrgbcolor 0
setlinecap stroke grestore end
@endspecial 4801 2766 a Fi(Multiple)38 b(V)-10
b(ar)r(iab)m(les)38 b(in)i(a)f(F)l(or-Clause)4821 3058
y Fu(\017)72 b Fi(car)6 b(tesian)37 b(product)4965 3261
y(\(cf)l(.)i(FR)m(OM-clause)d(in)k(SQL\))4707 3291 y
0. 0. 1. setrgbcolor
4707 3291 a 5019 4209 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0. setgray 0. true 3.8 neg 54.74857
neg 393.79057 59.74857 .5 Frame gsave 1. setgray fill grestore gsave
0.8 SLW 0. setgray 0 setlinecap stroke grestore end
@endspecial
5170 3506 a Fv(for)76 b($c)g(in)g(/mondial//country,)5471
3709 y($o)g(in)g(/mondial//organizatio)q(n)5170 3912
y(where)h($c/@capital)i(=)c($o/@headq)5170 4115 y(return)5321
4318 y()5547 4521 y({$c/name/text)q(\(\)}<)q(/co)q
(unt)q(ry>)5547 4724 y({$o/name)q(/tex)q(t\(\))q(})q
(org)q(ani)q(zat)q(ion>)5321 4928 y()10669 4209
y
0 setgray
10669 4209 a 4965 5121 a Fi([Filename:)47 b(car)6 b(tesian-e)l
(xample)n(.xq])10633 5482 y
0 setgray
10633 5482 a 7586 5768 a
Fg(249)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 421.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
PStoPSxform concat
TeXDict begin 250 25 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1984
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.69437 neg 411.43053 16.69438 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 6818 2006 a
Fe(X)8 b(Q)e Ff(U)i(E)g(R)q(Y)p Fe(:)72 b(F)8 b Ff(O)g(R)g
Fe(-)g(C)g Ff(L)g(A)r(U)h(S)f(E)4761 2734 y @beginspecial
@setspecial
tx@Dict begin STP newpath 0.8 SLW 0.80 1. 0.80 setrgbcolor 0. true
3.8 neg 6.02748 neg 411.43053 11.02748 .5 Frame gsave 0.80 1. 0.80
setrgbcolor fill grestore gsave 0.8 SLW 0.80 1. 0.80 setrgbcolor 0
setlinecap stroke grestore end
@endspecial 4801 2736 a Fi(Multiple)38 b(V)-10
b(ar)r(iab)m(les)38 b(in)i(a)f(F)l(or-Clause)4821 3028
y Fu(\017)72 b Fi(\223correlated\224)37 b(Join)4965 3231
y(\(cf)l(.)i(FR)m(OM-clause)d(in)k(Schema-SQL)d(and)i(OQL\))4821
3531 y Fu(\017)72 b Fi(subset)38 b(of)i(the)f(car)6 b(tesian)38
b(product)4965 4340 y
0. 0. 1. setrgbcolor
4965 4340 a 54 w @beginspecial
@setspecial
tx@Dict begin STP newpath 0.8 SLW 0. setgray 0. true 3.8 neg 47.66861
neg 393.79057 52.66861 .5 Frame gsave 1. setgray fill grestore gsave
0.8 SLW 0. setgray 0 setlinecap stroke grestore end
@endspecial 5170 3739 a Fv(for)76 b($c)g(in)g
(/mondial/country,)5471 3942 y($p)g(in)g($c/province)5170
4145 y(return)5321 4348 y()5547 4551 y({$c/name/text)q
(\(\)}<)q(/co)q(unt)q(ry>)5547 4754 y({$p/name/text\(\)})q()5321 4958 y()10669 4340 y
0 setgray
10669 4340 a
4965 5151 a Fi([Filename:)47 b(correlated-join-e)l(xample)n(.xq)o(])
10633 5482 y
0 setgray
10633 5482 a 7586 5768 a Fg(250)4500 6000
y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
%%Page: (26,27) 14
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 0.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
/showpage{}def/copypage{}def/erasepage{}def
PStoPSxform concat
TeXDict begin 251 26 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1900
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.48137 neg 411.43053 16.48138 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 5866 1925 a
Fe(R)8 b Ff(E)g(T)g(U)g(R)g(N)g Fe(-)g(C)h Ff(L)f(A)r(U)h(S)g(E)62
b(W)8 b(I)g(T)g(H)59 b Fe(N)8 b Ff(E)g(S)g(T)g(E)g(D)59
b Fe(F)8 b(L)-6 b(W)8 b(R)g(-)g(C)g Ff(L)g(A)r(U)h(S)f(E)4821
2520 y Fu(\017)72 b Fi(inner)39 b(quer)t(y)g(used)f(in)i(the)f(outer)g
(retur)t(n-clause)e(\(cf)l(.)h(OQL\))4707 2551 y
0. 0. 1. setrgbcolor
4707
2551 a 5019 3672 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0. setgray 0. true 3.8 neg 68.90848
neg 393.79057 73.90848 .5 Frame gsave 1. setgray fill grestore gsave
0.8 SLW 0. setgray 0 setlinecap stroke grestore end
@endspecial
5170 2765 a Fv(for)76 b($c)g(in)g(/mondial/country)5170
2969 y(where)h($c/province)5170 3172 y(return)5321 3375
y()5547 3578 y({$c/name})5547 3781 y({)e(for)h($p)g(in)g
($c/province)5697 3984 y(return)5697 4187 y({$p/name/text\()q
(\)})q(pro)q(v>)5547 4391 y(})5321 4594 y()10669
3672 y
0 setgray
10669 3672 a 4965 4788 a Fi([Filename:)47 b(nested-\003wr-e)l
(xample)n(.xq])4707 4818 y
0. setgray
4707 4818 a 4965 5029 a Fi(gener)o(ates)37
b(f)l(or)i(each)g(countr)t(y)g(that)g(has)g(pro)n(vinces)f(an)8111
5009 y Fp(<)8189 5029 y Fi(ans)l(w)o(er)8648 5009 y Fp(>)8763
5029 y Fi(element)g(that)h(contains)f(a)4965 5212 y Fp(<)5043
5232 y Fi(name)5403 5212 y Fp(>)5519 5232 y Fi(element)g(and)h(a)h
(sequence)e(of)7289 5212 y Fp(<)7367 5232 y Fi(pro)n(v)7645
5212 y Fp(>)7762 5232 y Fi(elements)n(.)4707 5284 y
0 setgray
4707
5284 a 10633 5482 a
0 setgray
10633 5482 a 7586 5768 a Fg(251)4500
6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 421.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
PStoPSxform concat
TeXDict begin 252 27 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1962
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.48137 neg 411.43053 16.48138 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 7238 1988 a
Fe(L)8 b Ff(E)g(T)-11 b Fe(-)8 b(C)g Ff(L)g(A)q(U)h(S)g(E)6982
2588 y Fi(let)39 b($)p Fc(v)l(ar)56 b Fi(:=)39 b Fc(xpath-e)l(xpr)4821
2889 y Fu(\017)72 b Fi(does)39 b(not)g(iter)o(ate)f(o)n(v)l(er)h(the)h
(result)e(of)i Fc(xpath-e)l(xpr)4821 3189 y Fu(\017)72
b Fi(b)m(ut)39 b(binds)g(the)g(complete)f(result)h(of)g
Fc(xpath-e)l(xpr)54 b Fi(as)39 b(sequence)f(of)i(nodes)e(to)i(the)f(v)l
(ar)r(iab)m(le:)4707 3219 y
0. 0. 1. setrgbcolor
4707 3219 a 5019 4046 a @beginspecial
@setspecial
tx@Dict begin STP newpath 0.8 SLW 0. setgray 0. true 3.8 neg 48.36307
neg 393.79057 53.36308 .5 Frame gsave 1. setgray fill grestore gsave
0.8 SLW 0. setgray 0 setlinecap stroke grestore end
@endspecial 5170 3434 a Fv(for)76 b($c)g(in)g
(/mondial/country)5170 3637 y(let)g($cities)i(:=)e($c//city/name)5170
3841 y(return)5321 4044 y()5547 4247 y({$c/name})5547
4450 y({$cities})5321 4653 y()10669 4046 y
0 setgray
10669 4046 a 4965 4866 a Fi([Filename:)47 b(let-e)l(xample)n(.xq])4821
5167 y Fu(\017)72 b Fi(useful)38 b(f)l(or)h(k)m(eeping)g(inter)t
(mediate)e(results)h(f)l(or)h(reuse)g(\(often)f(missed)h(in)g(SQL\))
10633 5482 y
0 setgray
10633 5482 a 7586 5768 a Fg(252)4500 6000
y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
%%Page: (28,29) 15
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 0.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
/showpage{}def/copypage{}def/erasepage{}def
PStoPSxform concat
TeXDict begin 253 28 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1765
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.48137 neg 411.43053 16.48138 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 6491 1790 a
Fe(W)8 b(H)g(E)g(R)g(E)g(-)g(C)g Ff(L)g(A)q(U)h(S)f(E)h
Fe(:)74 b(C)8 b Ff(O)g(N)g(D)g(I)g(T)g(I)g(O)g(N)h(S)4707
2460 y Fi(Similar)38 b(to)h(XP)-6 b(ath')f(s)39 b(conditions)e(\(same)i
(predicates)e(etc\):)4821 2760 y Fu(\017)72 b Fi(logical)38
b(\223and\224)h(and)g(\223or\224)4821 3061 y Fu(\017)72
b Fi(\223not\(...\)\224)47 b(as)40 b(a)f(boolean)g(function)4821
3362 y Fu(\017)72 b Fi(Compar)r(isons:)46 b(\223==\224)39
b(f)l(or)g(node)g(identity)-14 b(,)38 b(\223)7334 3342
y Fp(<)o(<)7489 3362 y Fi(\224)i(and)f(\223)7904 3342
y Fp(>)o(>)8059 3362 y Fi(\224)h(f)l(or)f(document)f(order)-7
b(,)38 b(\223f)l(ollo)n(ws\224)f(and)4965 3565 y(\223precedes\224)4821
3866 y Fu(\017)72 b Fi(Quanti\002ers:)5827 3866 y
0. 0. 1. setrgbcolor
5827
3866 a Fi(where)39 b(some)p Fu(j)p Fi(e)l(v)l(er)t(y)f($)p
Fc(v)l(ar)55 b Fi(in)40 b Fc(e)l(xpr)54 b Fi(satis\002es)39
b Fc(condition)8986 3866 y
0 setgray
8986 3866 a 4707 3902 a
0. 0. 1. setrgbcolor
4707
3902 a 5019 4312 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0. setgray 0. true 3.8 neg 19.3488
neg 393.79057 24.3488 .5 Frame gsave 1. setgray fill grestore gsave
0.8 SLW 0. setgray 0 setlinecap stroke grestore end
@endspecial
5245 4116 a Fv(for)77 b($c)e(in)h(/mondial/country)5245
4320 y(where)h(some)g($city)g(in)f($c//city)h(satisfies)i
($city/population)h(>)c(1000000)5245 4523 y(return)h($c/name)5019
4962 y @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0. setgray 0. true 3.8 neg 19.3488
neg 393.79057 24.3488 .5 Frame gsave 1. setgray fill grestore gsave
0.8 SLW 0. setgray 0 setlinecap stroke grestore end
@endspecial 5245 4767
a(for)g($c)e(in)h(/mondial/country)5245 4970 y(where)h(every)g($city)g
(in)f($c//city)i(satisfies)g($city/population)i(>)c(1000000)5245
5173 y(return)h($c/name)10669 4962 y
0 setgray
10669 4962 a 4965
5366 a Fi([Filenames:)47 b(some-e)l(xample)n(.xq)35 b(and)k(e)l(v)l(er)
t(y-e)l(xample)n(.xq])10633 5482 y
0 setgray
10633 5482 a 7586
5768 a Fg(253)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 421.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
PStoPSxform concat
TeXDict begin 254 29 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 2128
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.48137 neg 411.43053 16.48138 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 5896 2154 a
Fe(C)8 b Ff(O)g(N)g(D)g(I)g(T)g(I)g(O)h(N)g(A)g(L)62
b Fe(E)8 b Ff(V)m(A)g(L)g(U)q(A)l(T)g(I)g(O)g(N)63 b(A)8
b(N)g(D)59 b Fe(A)8 b Ff(L)l(T)g(E)g(R)g(N)g(A)l(T)g(I)g(V)g(E)h(S)4821
2748 y Fu(\017)72 b Fi(if-then:)48 b(alter)t(nativ)l(e)37
b(choice)i(of)g(subelements)4965 2951 y
0. 0. 1. setrgbcolor
4965 2951 a Fi(if)g(\()p
Fc(e)l(xpr)16 b Fi(\))39 b(then)g Fc(e)l(xpr)55 b Fi(else)39
b Fc(e)l(xpr)6748 2951 y
0 setgray
6748 2951 a 4707 2981 a
0. 0. 1. setrgbcolor
4707
2981 a 5019 3994 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0. setgray 0. true 3.8 neg 61.41185
neg 393.79057 66.41187 .5 Frame gsave 1. setgray fill grestore gsave
0.8 SLW 0. setgray 0 setlinecap stroke grestore end
@endspecial
-810 x Fv()5095 3387 y({)75 b(for)i($c)e(in)h(/mondial/country)
5245 3590 y(return)5396 3793 y()5547 3996 y({$c/name})5547
4199 y({if)g(\($c/province\))j(then)e($c/province/city)j(else)d
($c/city})5396 4402 y()5170 4606 y(})5019 4809
y()10669 3994 y
0 setgray
10669 3994 a 4965 5003 a Fi([Filename:)47
b(if-else-e)l(xample)n(.xq])10633 5482 y
0 setgray
10633 5482 a
7586 5768 a Fg(254)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
%%Page: (30,31) 16
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 0.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
/showpage{}def/copypage{}def/erasepage{}def
PStoPSxform concat
TeXDict begin 255 30 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1702
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.48137 neg 411.43053 16.48138 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 6808 1728 a
Fe(O)8 b Ff(R)g(D)g(E)g(R)60 b(O)8 b(F)57 b Fe(R)8 b
Ff(E)g(S)g(U)g(L)l(T)59 b Fe(S)8 b Ff(E)g(T)4707 2181
y Fi(XP)-6 b(ath:)48 b(the)39 b(result)g(is)g Fc(alw)n(a)l(ys)j
Fi(retur)t(ned)c(in)h Fc(document)f(order)16 b Fi(:)4821
2454 y Fu(\017)72 b Fi(purely)38 b(na)m(vigational)g(access:)6734
2454 y
0. 0. 1. setrgbcolor
6734 2454 a 5191 2698 a Fv(//country/city/name)4707
2745 y
0 setgray
4707 2745 a 4821 2987 a Fu(\017)72 b Fi(e)l(v)l(en)39
b(when)g(a)g(bac)m(kw)n(ard)f(axis)h(is)g(used)g(dur)r(ing)g(na)m
(vigation,)f(the)h(nodes)g(are)g(en)o(umer)o(ated)d(in)4965
3184 y(document)i(order)t(:)6063 3184 y
0. 0. 1. setrgbcolor
6063 3184 a 5115
3428 a Fv(//country[name='Germ)q(any)q(']/)q(pro)q(vin)q(ce[)q(last)q
(\(\)])q(/pr)q(ece)q(din)q(g-s)q(ibl)q(ing:)q(:*/)q(nam)q(e)4707
3475 y
0 setgray
4707 3475 a 4965 3671 a Fi(\(bac)m(kw)n(ard)f(axis)i(is)h(only)f
(rele)l(v)l(ant)f(f)l(or)h(conte)l(xt)f(functions)g(in)i(immediate)d
(conditions\))4821 3945 y Fu(\017)72 b Fi(or)39 b(when)g(id-ref)l
(erencing)e(is)i(used:)6971 3945 y
0. 0. 1. setrgbcolor
6971 3945 a 5115 4188
a Fv(id\(//organization/@h)q(ead)q(q\)/)q(nam)q(e)4707
4235 y
0 setgray
4707 4235 a 4965 4431 a Fi(\(note:)48 b(cities)39
b(are)g Fc(not)52 b Fi(ordered)38 b(according)g(to)i(the)f(order)g(of)g
(the)g(organizations!\))4707 4705 y(XQuer)t(y:)47 b(result)39
b(set)g(is)h(ordered)e(according)g(to)h(f)l(or-clause:)8122
4705 y
0. 0. 1. setrgbcolor
8122 4705 a 5083 4979 a Fv(for)76 b($c)g(in)g(//organization)
5083 5176 y(return)h(id\($c/@headq\)/name)4707 5223 y
0 setgray
4707 5223 a 227 x Fi(let-clause:)47 b(binds)38 b(the)i(result)e(set)i
(according)d(to)j(the)f(respectiv)l(e)f(order)-7 b(.)10633
5482 y
0 setgray
10633 5482 a 7586 5768 a Fg(255)4500 6000 y
tx@Dict begin -90 Rot end
4500
6000 a eop end
PStoPSsaved restore
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 421.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
PStoPSxform concat
TeXDict begin 256 31 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1702
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.48137 neg 411.43053 16.48138 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 7379 1728 a
Fe(S)8 b Ff(O)g(R)d(T)j(I)g(N)g(G)4821 2260 y Fu(\017)72
b Fi(order)39 b(b)m(y:)5657 2260 y
0. 0. 1. setrgbcolor
5657 2260 a Fc(e)l(xpr)55
b Fi(order)39 b(b)m(y)g(\()p Fc(e)l(xpr)55 b Fi([ascending)p
Fu(j)p Fi(descending]\))8490 2260 y
0 setgray
8490 2260 a 4707
2296 a
0. 0. 1. setrgbcolor
4707 2296 a 5019 2899 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0. setgray 0. true 3.8 neg 33.09203
neg 393.79057 38.09204 .5 Frame gsave 1. setgray fill grestore gsave
0.8 SLW 0. setgray 0 setlinecap stroke grestore end
@endspecial 5095 2495 a Fv()5245 2698 y({)76
b(for)g($c)g(in)g(//country)5396 2901 y(order)h(by)f($c/name)5396
3105 y(return)h($c/name)h(})5095 3308 y()10669
2899 y
0 setgray
10669 2899 a 4965 3499 a Fi([Filename:)47 b(orderb)m(y-e)l
(xample)n(.xq])4821 3791 y Fu(\017)72 b Fi(note)39 b(that)g(the)g
(inter)t(preter)f(m)o(ust)h(be)g(told)g(whether)f(the)i(v)l(alues)e
(should)h(be)g(regarded)f(as)i(n)o(umbers)4965 3993 y(or)f(as)h(str)r
(ings)e(\(def)l(ault:)47 b(alphan)o(umer)r(ical\))4707
4025 y
0. 0. 1. setrgbcolor
4707 4025 a 5019 4729 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0. setgray 0. true 3.8 neg 40.17198
neg 393.79057 45.172 .5 Frame gsave 1. setgray fill grestore gsave
0.8 SLW 0. setgray 0 setlinecap stroke grestore end
@endspecial 5095 4224 a Fv()5245 4427 y({)76
b(for)g($c)g(in)g(//country)5396 4630 y(where)h($c/population)i(>)d(0)
5396 4833 y(order)h(by)f(number\($c/population\))5396
5036 y(return)h($c/name)228 b(})5095 5239 y()10669
4729 y
0 setgray
10669 4729 a 4965 5431 a Fi([Filename:)47 b(orderb)m(y-n)o(um-e)
l(xample)n(.xq)o(])10633 5482 y
0 setgray
10633 5482 a 7586 5768
a Fg(256)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
%%Page: (32,33) 17
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 0.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
/showpage{}def/copypage{}def/erasepage{}def
PStoPSxform concat
TeXDict begin 257 32 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1702
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.48137 neg 411.43053 16.48138 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 6533 1728 a
Fe(G)8 b Ff(R)d(O)j(U)g(P)g(I)g(N)g(G)62 b(A)8 b(N)g(D)58
b Fe(A)p Ff(G)8 b(G)g(R)g(E)g(G)g(A)l(T)g(I)h(O)g(N)4821
2154 y Fu(\017)72 b Fi(agg)o(regate)37 b(functions)h(o)n(v)l(er)h
(result)g(sets)g(\(a)m(vg,)g(sum\))4821 2433 y Fu(\017)72
b Fi(bind)39 b(v)l(ar)r(iab)m(le)g(with)g(\223f)l(or\224-clause)4821
2711 y Fu(\017)72 b Fi(assign)38 b(g)o(roup)h(with)g(\223let\224)f
(\(dependent)g(on)h(the)h(current)e(v)l(alue)h(in)h(the)f(f)l
(or-clause\))e(to)j(a)f(v)l(ar)r(iab)m(le)4821 2989 y
Fu(\017)72 b Fi(apply)39 b(agg)o(regate)e(function)h(to)i(a)f(nodeset)
4707 3021 y
0. 0. 1. setrgbcolor
4707 3021 a 5019 4227 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0. setgray 0. true 3.8 neg 75.57176
neg 393.79057 80.57178 .5 Frame gsave 1. setgray fill grestore gsave
0.8 SLW 0. setgray 0 setlinecap stroke grestore end
@endspecial -1014 x Fv()5019 3416 y({)76 b(for)g($c)g(in)g
(/mondial/country)5170 3619 y(let)g($cities)i(:=)e($c//city)5170
3823 y(where)h(sum\($cities/populatio)q(n\))k(>)76 b(10000000)5170
4026 y(return)5321 4229 y()5547 4432 y({$c/name})5547
4635 y({sum\($cities/populatio)q(n\)})5321 4838 y()5019
5041 y(})5019 5245 y()10669 4227 y
0 setgray
10669 4227
a 4965 5433 a Fi([Filename:)47 b(agg)o(r-1-e)l(xample)n(.xq])10633
5482 y
0 setgray
10633 5482 a 7586 5768 a Fg(257)4500 6000 y
tx@Dict begin -90 Rot end
4500
6000 a eop end
PStoPSsaved restore
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 421.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
PStoPSxform concat
TeXDict begin 258 33 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1875
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.38539 neg 411.43053 16.38539 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 7163 1899 a
Fe(A)p Ff(G)8 b(G)g(R)g(E)g(G)g(A)l(T)g(I)h(O)g(N)4821
2493 y Fu(\017)72 b Fi(agg)o(regation)37 b(o)n(v)l(er)i(result)g(of)g
(a)h(FL)-10 b(WR)39 b(subquer)t(y)4821 2794 y Fu(\017)72
b Fi(bind)39 b(\(single\))f(inter)t(mediate)f(result)h(b)m(y)i
(\223let\224)4707 2825 y
0. 0. 1. setrgbcolor
4707 2825 a 5019 4042 a @beginspecial
@setspecial
tx@Dict begin STP newpath 0.8 SLW 0. setgray 0. true 3.8 neg 75.57176
neg 393.79057 80.57178 .5 Frame gsave 1. setgray fill grestore gsave
0.8 SLW 0. setgray 0 setlinecap stroke grestore end
@endspecial -1014 x Fv()5019 3232
y({)76 b(for)g($c)g(in)g(/mondial/country)5170 3435 y(let)g($maxpop)i
(:=)e(max\()g(for)h($citypop)g(in)f($c//city/population/)q(tex)q(t\(\))
6676 3638 y(return)i($citypop\))5170 3841 y(return)5321
4044 y()5547 4247 y({$c/name})5547 4450 y({$maxpop})5321
4654 y()5019 4857 y(})5019 5060 y()10669
4042 y
0 setgray
10669 4042 a 4965 5253 a Fi([Filename:)47 b(agg)o(r-2-e)l
(xample)n(.xq])10633 5482 y
0 setgray
10633 5482 a 7586 5768 a
Fg(258)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
%%Page: (34,35) 18
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 0.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
/showpage{}def/copypage{}def/erasepage{}def
PStoPSxform concat
TeXDict begin 259 34 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1701
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.38539 neg 411.43053 16.38539 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 6227 1725 a
Fe(A)-6 b Ff(T)8 b(T)g(R)g(I)g(B)f(U)h(T)h(E)f(S)62 b(I)8
b(N)58 b(T)8 b(H)g(E)57 b Fe(R)8 b(E)g(T)g(U)g(R)g(N)g(-)h
Ff(C)f(L)h(A)r(U)g(S)f(E)4821 2304 y Fu(\017)72 b Fi(note)39
b(that)g(e)l(xpressions)e(the)i(f)l(or)t(m)f(\223@b)m(la\224)h(retur)t
(n)f Fc(attr)r(ib)m(ute)h(nodes)j Fi(-)e(these)f(are)4965
2506 y(\(AttrName)n(,v)l(alue\)-pairs:)4707 2536 y
0. 0. 1. setrgbcolor
4707
2536 a 5115 2768 a Fv()5266 2971 y({//country[name='Germ)q(any)
q(']/)q(@ca)q(r_c)q(ode})5115 3173 y()4707 3207
y
0 setgray
4707 3207 a 4965 3435 a Fi(gener)o(ates)5681 3435 y
0. 0. 1. setrgbcolor
5681 3435 a -20 x Fp(<)5759 3435 y Fi(result)f(car)p
6358 3435 44 6 v 51 w(code=\223D\224/)7036 3415 y Fp(>)7112
3435 y
0 setgray
7112 3435 a Fi(.)4821 3733 y Fu(\017)72 b Fi(attr)r(ib)m(ute)38
b(nodes)h(are)g(alw)n(a)l(ys)f(added)h(to)g(the)h(surrounding)d
(element.)4821 4032 y Fu(\017)72 b Fi(if)39 b(only)g(their)g(v)l(alue)g
(is)h(needed,)e(apply)h(str)r(ing\(\).)4707 4086 y
0. 0. 1. setrgbcolor
4707
4086 a 4761 4846 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0. setgray 0. true 3.8 neg 41.28311
neg 411.43053 46.28313 .5 Frame gsave 1. setgray fill grestore gsave
0.8 SLW 0. setgray 0 setlinecap stroke grestore end
@endspecial
4987 4337 a Fv(for)76 b($c)g(in)g(/mondial/country)4987
4540 y(return)5138 4743 y()5288 4946 y({$c/@area})5288
5149 y({string\($c/@car_code)q(\)})5138 5352 y()10664
4846 y
0 setgray
10664 4846 a 4707 5565 a Fi([Filename:)47 b(attr)r(ib)m(ute-e)l
(xample)n(.xq])7690 4434 y(Result:)7690 4657 y Fp(<)7768
4677 y Fi(countr)t(y)38 b(area=\22328750\224)9150 4657
y Fp(>)9225 4677 y Fi(AL)9401 4657 y Fp(<)9478 4677 y
Fi(/countr)t(y)9994 4657 y Fp(>)7690 4901 y(<)7768 4921
y Fi(countr)t(y)g(area=\223131940\224)9230 4901 y Fp(>)9305
4921 y Fi(GR)9521 4901 y Fp(<)9598 4921 y Fi(/countr)t(y)10114
4901 y Fp(>)7770 5165 y Fi(:)10633 5482 y
0 setgray
10633 5482
a 7586 5768 a Fg(259)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 421.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
PStoPSxform concat
TeXDict begin 260 35 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1702
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.48137 neg 411.43053 16.48138 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 5925 1728 a
Fe(C)8 b Ff(O)g(M)g(P)g(U)g(T)g(E)g(D)61 b Fe(E)8 b Ff(L)g(E)g(M)g(E)g
(N)g(T)-11 b Fe(-)61 b Ff(A)8 b(N)g(D)59 b Fe(A)-6 b
Ff(T)8 b(T)g(R)g(I)g(B)f(U)h(T)g(E)62 b Fe(N)8 b Ff(A)g(M)g(E)g(S)4821
2173 y Fu(\017)72 b Fi(e)l(xplicit)38 b(constr)r(uctors)5014
2413 y Fh(\226)72 b Fi(element)38 b Fc(e)l(xpr)55 b(attrs-and-content)
5166 2612 y Fi(the)38 b(e)l(v)l(aluation)f(of)i Fc(e)l(xpr)54
b Fi(yields)38 b(the)g(name)g(of)h(the)f(element,)f(the)i(result)f(of)g
Fc(attrs-and-content)49 b Fi(is)5166 2811 y(then)39 b(inser)6
b(ted)38 b(as)h(attr)r(ib)m(utes)f(and)h(content)5166
3010 y(Note:)48 b(content)38 b(is)i(a)f(node)g(sequence)n(,)f(separ)o
(ated)f(b)m(y)j(\223,)-14 b(\224)5014 3250 y Fh(\226)72
b Fi(attr)r(ib)m(ute)38 b Fc(e)l(xpr)55 b(e)l(xpr-v)l(alue)5166
3449 y Fi(the)39 b(e)l(v)l(aluation)f(of)h Fc(e)l(xpr)55
b Fi(yields)39 b(the)g(name)g(of)g(the)h(attr)r(ib)m(ute)n(,)e
Fc(e)l(xpr-v)l(alue)i Fi(yields)f(its)g(v)l(alue)n(.)4707
3497 y
0. 0. 1. setrgbcolor
4707 3497 a 4761 4533 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0. setgray 0. true 3.8 neg 61.41185
neg 411.43053 66.41187 .5 Frame gsave 1. setgray fill grestore gsave
0.8 SLW 0. setgray 0 setlinecap stroke grestore end
@endspecial 4836 3723 a Fv()4912 3926 y({)75
b(for)i($c)f(in)g(doc\('mondial.xml'\)//co)q(untr)q(y)5062
4129 y(where)h($c/encompassed)5062 4332 y(return)5062
4535 y(element)h({)e($c/@car_code)j(})5665 4739 y({)d(attribute)i
({$c/encompassed[1]/@co)q(nti)q(nen)q(t})k({"yes"},)5816
4942 y($c/name)5665 5145 y(})4912 5348 y(})75 b()10664
4533 y
0 setgray
10664 4533 a 4707 5537 a Fi([Filename:)47 b(computed-constr)r
(uctors-e)l(xa)o(mple)m(.xq])8905 3781 y(A)40 b(result)e(node:)8905
4004 y Fp(<)8983 4024 y Fi(B)h(europe=\223y)m(es\224)9967
4004 y Fp(>)9025 4207 y(<)9102 4227 y Fi(name)9462 4207
y Fp(>)9539 4227 y Fi(Belgium)10059 4207 y Fp(<)10135
4227 y Fi(/name)10535 4207 y Fp(>)8905 4410 y(<)8983
4430 y Fi(/B)9119 4410 y Fp(>)10633 5482 y
0 setgray
10633 5482
a 7586 5768 a Fg(260)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
%%Page: (36,37) 19
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 0.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
/showpage{}def/copypage{}def/erasepage{}def
PStoPSxform concat
TeXDict begin 261 36 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1780
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.48137 neg 411.43053 16.48138 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 6594 1806 a
Fe(F)8 b Ff(U)g(N)g(C)g(T)g(I)g(O)g(N)h(S)62 b(A)8 b(N)g(D)58
b Fe(O)8 b Ff(P)g(E)g(R)g(A)l(T)r(O)g(R)g(S)4821 2400
y Fu(\017)72 b Fi(Recall)38 b(Slide)h(211)g(f)l(or)g(str)r(ing\(\))g
(and)g(name\(\),)f(and)h(Slide)g(208)g(f)l(or)g(id\(\).)4821
2701 y Fu(\017)72 b Fi(See)39 b(\223XML)g(Quer)t(y)f(Functions)g(and)h
(Oper)o(ators\224)e(f)l(or)i(prede\002ned)f(functions)4821
3002 y Fu(\017)72 b Fi(e)n(.g.)48 b(remo)n(v)l(al)39
b(of)g(duplicate)f(v)l(alues:)48 b(distinct-v)l(alues\(...\))8239
3002 y
0. 0. 1. setrgbcolor
8239 3002 a 5191 3265 a Fv(distinct-values\(doc\('.)q(..')q
(\)//)q(SPE)q(AKE)q(R\))4707 3299 y
0 setgray
4707 3299 a 4965
3528 a Fi(Ho)n(w)38 b(man)n(y)h(speeches)f(has)h(each)g(of)g(the)h
(speak)m(ers)e(in)h(\223Hamlet\224?)4965 4439 y
0. 0. 1. setrgbcolor
4965
4439 a 54 w @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0. setgray 0. true 3.8 neg 54.74857
neg 393.79057 59.74857 .5 Frame gsave 1. setgray fill grestore gsave
0.8 SLW 0. setgray 0 setlinecap stroke grestore end
@endspecial 5095
3736 a Fv(for)76 b($a)g(in)g(distinct-values\(doc\('/)q(db/)q(xml)q
(cou)q(rse)q(/ha)q(mlet)q(.xm)q(l'\))q(//S)q(PEA)q(KER)q(\))5095
3939 y(let)g($n)g(:=)g(count\(//SPEECH[SPEAKER)82 b(=)76
b($a]\))5095 4142 y(order)h(by)e($n)h(descending)5095
4346 y(return)5245 4549 y()5396 4752 y({$a})5396
4955 y({$n})5245 5158 y()10669 4439 y
0 setgray
10669
4439 a 4965 5351 a Fi([Filename:)47 b(distinct-v)l(alues)n(.xq])10633
5482 y
0 setgray
10633 5482 a 7586 5768 a Fg(261)4500 6000 y
tx@Dict begin -90 Rot end
4500
6000 a eop end
PStoPSsaved restore
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 421.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
PStoPSxform concat
TeXDict begin 262 37 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 2297
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.38539 neg 411.43053 16.38539 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 6665 2321 a
Fe(U)8 b Ff(S)g(E)g(R)g Fe(-)g(D)g Ff(E)g(FI)g(N)g(E)h(D)62
b Fe(F)8 b Ff(U)g(N)g(C)g(T)g(I)g(O)g(N)h(S)4821 2915
y Fu(\017)72 b Fi(User)39 b(de\002ned)f(functions)g(are)h(declared)f
(in)i(the)f(prolog:)4965 3118 y
0. 0. 1. setrgbcolor
4965 3118 a Fi(declare)f(function)g
Fc(func)p 6298 3118 44 6 v 51 w(name)k Fi(\([)p Fc($v)l(ar)7106
3139 y Fr(1)7169 3118 y Fi(,)e(.)24 b(.)g(.)g(,)39 b
Fc($v)l(ar)7796 3139 y Fn(n)7874 3118 y Fi(]\))g([as)g
Fc(retur)t(nT)-17 b(ype)s Fi(])4965 3321 y Fu(f)5209
3524 y Fc(e)l(xpr)38 b(that)i(uses)e($v)l(ar)6421 3546
y Fr(1)6485 3524 y Fc(,)i(.)24 b(.)g(.)g(,)39 b($v)l(ar)7112
3546 y Fn(n)4965 3727 y Fu(g)5076 3727 y
0 setgray
5076 3727 a
4821 4028 a Fu(\017)72 b Fi(P)-6 b(ar)o(ameters:)5788
4028 y
0. 0. 1. setrgbcolor
5788 4028 a Fi($)p Fc(v)l(ar)6064 4050 y Fn(i)6151
4028 y Fi([as)40 b Fc(par)o(amT)-17 b(ype)s Fi(])7136
4028 y
0 setgray
7136 4028 a Fi(,)36 b(def)l(ault)i(f)l(or)h(par)o(ameter)f(and)h
(retur)t(n)f(types)h(is)g(item\(\)*)4965 4231 y(\(i.e)n(.)g(a)g
(sequence)f(of)i(nodes)n(,)e(liter)o(als)g(etc.\),)4821
4532 y Fu(\017)72 b Fi(An)n(y)39 b(sequence)f(type)h(ma)l(y)f(be)i
(used)f(f)l(or)7283 4532 y
0. 0. 1. setrgbcolor
7283 4532 a Fc(par)o(amT)-17
b(ype)7996 4532 y
0 setgray
7996 4532 a 36 w Fi(and)8312 4532 y
0. 0. 1. setrgbcolor
8312 4532 a Fc(retur)t(nT)g(ype)8998 4532 y
0 setgray
8998 4532
a 36 w Fi(\(cf)l(.)39 b(XML)g(Schema\),)4821 4833 y Fu(\017)72
b Fi(An)n(y)39 b(XQuer)t(y)f(e)l(xpression)f(is)j(allo)n(w)o(ed)e(in)h
(the)g(function)g(body)-14 b(.)10633 5482 y
0 setgray
10633 5482
a 7586 5768 a Fg(262)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
%%Page: (38,39) 20
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 0.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
/showpage{}def/copypage{}def/erasepage{}def
PStoPSxform concat
TeXDict begin 263 38 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1701
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.38539 neg 411.43053 16.38539 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 6178 1725 a
Fe(U)8 b Ff(S)g(E)g(R)g Fe(-)g(D)g Ff(E)g(FI)g(N)g(E)h(D)62
b Fe(F)8 b Ff(U)g(N)g(C)g(T)g(I)g(O)g(N)h(S)g Fe(:)74
b(E)8 b Ff(X)g(A)g(M)g(P)g(L)g(E)g(S)4821 2109 y Fu(\017)72
b Fi(A)39 b(function)g(computing)e(the)j(population)d(density)i(f)l(or)
g(a)g(giv)l(en)h(countr)t(y:)4965 2924 y
0. 0. 1. setrgbcolor
4965 2924 a
54 w @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0. setgray 0. true 3.8 neg 48.36307
neg 393.79057 53.36308 .5 Frame gsave 1. setgray fill grestore gsave
0.8 SLW 0. setgray 0 setlinecap stroke grestore end
@endspecial -612 x Fv(declare)78
b(function)g(local:density)h(\($name)e(as)f(xs:string\))j(as)d
(element\(density\))5019 2515 y({)5170 2719 y(for)g($c)g(in)g
(doc\('/db/xmlcourse/mo)q(ndi)q(al.)q(xml)q('\)/)q(/co)q(untr)q(y[n)q
(ame)q(=$n)q(ame)q(])5170 2922 y(let)g($density)i(:=)e(if)g(\($c/@area)
i(>)e(0\))g(then)g($c/population)k(div)c($c/@area)i(else)e(0)5170
3125 y(return)h({$density}<)q(/den)q(sit)q(y>)5019
3328 y(};)5019 3531 y(local:density\('Germa)q(ny')q(\))10669
2924 y
0 setgray
10669 2924 a 4965 3740 a Fi([Filename:)47 b(function-density)-14
b(.xq])4821 4012 y Fu(\017)72 b Fi(Example)38 b(f)l(or)h(a)g(recursiv)l
(e)g(function:)4965 4723 y
0. 0. 1. setrgbcolor
4965 4723 a 54 w @beginspecial
@setspecial
tx@Dict begin STP newpath 0.8 SLW 0. setgray 0. true 3.8 neg 41.28311
neg 393.79057 46.28313 .5 Frame gsave 1. setgray fill grestore gsave
0.8 SLW 0. setgray 0 setlinecap stroke grestore end
@endspecial -509 x Fv(declare)78 b(function)g
(local:depth\($e)h(as)d(node\(\)\))i(as)e(xs:integer)5019
4417 y({)5245 4620 y(if)g(\(fn:empty\($e/*\)\))81 b(then)76
b(1)5245 4823 y(else)h(fn:max\(for)h($c)e(in)g($e/*)h(return)g
(local:depth\($c\)\))j(+)c(1)5019 5026 y(};)5019 5229
y(local:depth\(doc\('/db)q(/xm)q(lco)q(urs)q(e/mo)q(ndi)q(al.)q(xml)q
('\)\))10669 4723 y
0 setgray
10669 4723 a 4965 5438 a Fi([Filename:)47
b(function-depth.xq])10633 5482 y
0 setgray
10633 5482 a 7586 5768
a Fg(263)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 421.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
PStoPSxform concat
TeXDict begin 264 39 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 2209
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.38539 neg 411.43053 16.38539 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 6228 2234 a
Fe(U)8 b Ff(S)g(E)g(R)g Fe(-)g(D)g Ff(E)g(FI)g(N)h(E)f(D)63
b Fe(F)8 b Ff(U)g(N)g(C)g(T)g(I)g(O)g(N)h(S)f Fe(:)74
b(E)8 b Ff(X)g(A)g(M)g(P)g(L)g(E)4707 2903 y Fi(Ignor)r(ing)38
b(the)h(FL)-10 b(WR,)39 b(XQuer)t(y)g(can)g(e)l(v)l(en)g(be)g(used)g
(as)h(a)f(common)f(functional)g(language:)4821 3204 y
Fu(\017)72 b Fi(e)l(v)l(er)t(y)39 b(\(ar)r(ithmetic)e(+)j(if\))f(e)l
(xpression)f(is)h(a)h(v)l(alid)f(XQuer)t(y)g(e)l(xpression)4707
3257 y
0. 0. 1. setrgbcolor
4707 3257 a 4761 4121 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0. setgray 0. true 3.8 neg 48.36307
neg 411.43053 53.36308 .5 Frame gsave 1. setgray fill grestore gsave
0.8 SLW 0. setgray 0 setlinecap stroke grestore end
@endspecial -612 x Fv(\(:call)77 b(saxonXQ)h(faculty.xq)g(x=5)f(:\))
4761 3713 y(declare)h(variable)f($x)f(external;)4761
3916 y(declare)i(function)f(local:faculty\($n)k(as)76
b(xs:integer\))j(as)d(xs:integer)4761 4119 y({)151 b(if)76
b(\($n=1\))h(then)g(1)4987 4322 y(else)g($n*)f(local:faculty\($n)k(-)c
(1\))4761 4525 y(};)4761 4728 y(local:faculty\($x\))10664
4121 y
0 setgray
10664 4121 a 4707 4943 a Fi([Filename:)47 b(f)l(aculty)-14
b(.xq])10633 5482 y
0 setgray
10633 5482 a 7586 5768 a Fg(264)4500
6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
%%Page: (40,41) 21
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 0.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
/showpage{}def/copypage{}def/erasepage{}def
PStoPSxform concat
TeXDict begin 265 40 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1702
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.48137 neg 411.43053 16.48138 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 6279 1728 a
Fe(O)8 b Ff(P)g(E)g(R)g(A)l(T)g(I)g(O)g(N)g(S)62 b(O)8
b(N)57 b Fe(S)8 b Ff(E)g(T)g(S)g Fe(/)g(C)g Ff(O)g(L)g(L)g(E)g(C)h(T)g
(I)f(O)h(N)g(S)4707 2173 y Fi(Compar)r(isons)37 b(are)i
(instance-based:)46 b(if)39 b(one)h(oper)o(and)d(is)j(a)g(set,)f(each)g
(v)l(alue)g(is)g(compared)4821 2445 y Fu(\017)72 b Fi(...)49
b(as)39 b(w)o(e)g(ha)m(v)l(e)g(seen)g(f)l(or)g(XP)-6
b(ath:)6920 2445 y
0. 0. 1. setrgbcolor
6920 2445 a Fi(countr)t(y[)7436 2445
y
1. 0. 1. setrgbcolor
7436 2445 a Fi(.//city/name)8172 2445 y
0. 0. 1. setrgbcolor
8172 2445 a
36 w Fi(=)39 b(\223Cordoba\224]/name)9455 2445 y
0 setgray
9455
2445 a 4965 2642 a
0. 0. 1. setrgbcolor
4965 2642 a Fi(countr)t(y[)5481 2642
y
1. 0. 1. setrgbcolor
5481 2642 a Fi(.//city/population)6521 2642 y
0. 0. 1. setrgbcolor
6521
2642 a 35 w Ft(>)g Fi(1000000]/name)7744 2642 y
0 setgray
7744
2642 a 4821 2915 a Fu(\017)72 b Fi(b)m(ut)39 b(some)m(what)f(sur)t(pr)r
(ising)g(when)h(using)g(a)g(\223let\224-vie)m(w:)4707
2946 y
0. 0. 1. setrgbcolor
4707 2946 a 5019 3455 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0. setgray 0. true 3.8 neg 27.1232
neg 393.79057 32.12321 .5 Frame gsave 1. setgray fill grestore gsave
0.8 SLW 0. setgray 0 setlinecap stroke grestore end
@endspecial -307 x Fv(let)77 b($europcountries)j(:=)c
(//country[encompassed/)q(@co)q(ntin)q(ent)q(="e)q(uro)q(pe")q(])5019
3351 y(for)h($country)g(in)f(//country)5019 3554 y(where)h(not)f
(\($country)j(=)c($europcountries\))5019 3757 y(return)j($country/name)
10669 3455 y
0 setgray
10669 3455 a 4965 3965 a Fi([Filename:)47
b(set-compar)r(ison-e)l(xample)n(.xq)o(])4965 4192 y(outputs)38
b(all)i(names)e(of)i(non-european)d(countr)r(ies)n(.)4965
4390 y(\(note)i(that)g(\223where)f(not)h(\($countr)t(y/name)e(=)j
($europcountr)r(ies/name\)\224)35 b(w)o(ould)j(ha)m(v)l(e)h(the)h(same)
4965 4587 y(eff)l(ect\))4821 4859 y Fu(\017)72 b Fi(selection)38
b(from)h(let-collections)d(is)k(also)f(instance-based:)4965
5137 y
0. 0. 1. setrgbcolor
4965 5137 a 54 w @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0. setgray 0. true 3.8 neg 12.96329
neg 393.79057 17.9633 .5 Frame gsave 1. setgray fill grestore gsave
0.8 SLW 0. setgray 0 setlinecap stroke grestore end
@endspecial
-104 x Fv(let)77 b($europcountries)j(:=)c(//country[encompassed/)q(@co)
q(ntin)q(ent)q(="e)q(uro)q(pe")q(])5019 5236 y(return)i
($europcountries[@area>)q(3000)q(00])q(/na)q(me)10669
5137 y
0 setgray
10669 5137 a 4965 5444 a Fi([Filename:)47 b(set-selection-e)l
(xample)n(.xq])10633 5482 y
0 setgray
10633 5482 a 7586 5768 a
Fg(265)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 421.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
PStoPSxform concat
TeXDict begin 266 41 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1699
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.28644 neg 411.43053 16.28645 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 7262 1725 a
Fe(F)8 b Ff(L)g(E)g(X)g(I)g(B)g(I)g(L)g(I)h(T)f(Y)4707
2166 y Fi(F)l(or)38 b(each)h(task,)g(there)g(is)g(a)h(m)o(ultitude)e
(of)h(possib)m(le)f(solutions)g(...)4761 2432 y @beginspecial
@setspecial
tx@Dict begin STP newpath 0.8 SLW 0.80 1. 0.80 setrgbcolor 0. true
3.8 neg 6.02748 neg 411.43053 11.02748 .5 Frame gsave 0.80 1. 0.80
setrgbcolor fill grestore gsave 0.8 SLW 0.80 1. 0.80 setrgbcolor 0
setlinecap stroke grestore end
@endspecial 4801 2434 a(Example:)47 b(Uncorrelated)37
b(Subquer)r(ies)4707 2661 y(Names)h(of)h(all)h(countr)r(ies)e(that)h
(are)g(larger)g(than)g(Ger)t(man)n(y:)4821 2916 y Fu(\017)72
b Fi(XP)-6 b(ath:)5439 2916 y
0. 0. 1. setrgbcolor
5439 2916 a 5168 3142 a
Fo(//country[@area)65 b(>)i(number\(//country[@car_code='D']/)o(@area)o
(\)]/n)o(ame)4707 3186 y
0 setgray
4707 3186 a 4821 3430 a Fu(\017)72
b Fi(XQuer)t(y)38 b(and)h(SQL:)g(uncorrelated)f(subquer)t(y/semijoin)
4965 3627 y
0. 0. 1. setrgbcolor
4965 3627 a 90 x Fo(for)67 b($c)g(in)h(//country)4965
3903 y(where)f($c/@area)f(>)5033 4089 y(number\(//country[@car_code='D)
o(']/@a)o(rea\))4965 4275 y(return)g($c/name)4965 4309
y
0 setgray
4965 4309 a 7968 3627 a
0. 0. 1. setrgbcolor
7968 3627 a 79 x Fo(SELECT)h(c.name)7968
3892 y(FROM)g(country)f(c)7968 4078 y(WHERE)h(c.area)f(>)i(\(SELECT)e
(c2.area)9053 4265 y(FROM)g(country)h(c2)9053 4451 y(WHERE)f(c2.code)h
(=)g('D'\))7968 4484 y
0 setgray
7968 4484 a 4821 4679 a Fu(\017)72
b Fi(binding)38 b(the)h(uncorrelated)f(subquer)t(y)g(to)h(a)h(v)l(ar)r
(iab)m(le:)8044 4679 y
0. 0. 1. setrgbcolor
8044 4679 a 5168 4905 a Fo(let)67
b($germanyarea)f(:=)h(number\(//country[@car_code='D')o(]/@ar)o(ea\))
5168 5086 y(for)g($c)h(in)f(//country)5168 5266 y(where)g($c/@area)f(>)
i($germanyarea)5168 5447 y(return)f($c/name)4707 5473
y
0 setgray
4707 5473 a 10633 5482 a
0 setgray
10633 5482 a 7586 5768 a Fg(266)4500
6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
%%Page: (42,43) 22
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 0.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
/showpage{}def/copypage{}def/erasepage{}def
PStoPSxform concat
TeXDict begin 267 42 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 2673
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.38539 neg 411.43053 16.38539 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 7289 2697 a
Fe(E)8 b Ff(X)g(E)g(R)g(C)g(I)g(S)g(E)g(S)4707 3364 y
Fi(...)49 b(see)39 b(W)l(eb)-6 b(.)4707 3680 y Fh(Ex)o(er)m(cise)37
b(6.1)4707 3883 y Fi(Deter)t(mine)g(the)i(lo)n(w)o(est)f(mountain)g
(that)h(is)g(the)h(highest)e(mountain)g(of)i(the)f(continent)f(where)g
(it)i(is)4707 4086 y(located.)4707 4364 y(Solv)l(e)f(the)g(prob)m(lem)f
(f)l(or)h(the)g(relational)f(Mondial-DB)g(in)h(SQL,)g(and)g(f)l(or)g
(XML)g(in)g(XQuer)t(y)-14 b(.)10545 4386 y Fs(2)10633
5482 y
0 setgray
10633 5482 a 7586 5768 a Fg(267)4500 6000 y
tx@Dict begin -90 Rot end
4500
6000 a eop end
PStoPSsaved restore
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 421.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
PStoPSxform concat
TeXDict begin 268 43 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1705
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.69437 neg 411.43053 16.69438 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 6819 1728 a
Fe(X)8 b(Q)e Ff(U)i(E)g(R)q(Y)p Fe(:)73 b(C)8 b Ff(O)g(N)g(C)g(L)g(U)g
(S)g(I)g(O)h(N)4761 2122 y @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0.80 1. 0.80 setrgbcolor 0. true
3.8 neg 6.02493 neg 411.43053 11.02495 .5 Frame gsave 0.80 1. 0.80
setrgbcolor fill grestore gsave 0.8 SLW 0.80 1. 0.80 setrgbcolor 0
setlinecap stroke grestore end
@endspecial 40 w Fi(Design)38 b(and)h(Functionality)4821
2369 y Fu(\017)72 b Fi(combines)38 b(the)h(positiv)l(e)f(e)l(xper)r
(iences)g(of)h(pre)l(vious)f(approaches)4821 2643 y Fu(\017)72
b Fi(a)m(v)l(oids)39 b(their)g(dr)o(a)m(wbac)m(ks)4821
2917 y Fu(\017)72 b Fi(intuitiv)l(ely)38 b(clear)h(syntax)f(and)h
(semantics)4821 3191 y Fu(\017)72 b Fi(declar)o(ativ)l(e)n(,)37
b(or)6 b(thogonal,)37 b(functional)h(style:)48 b(e)l(v)l(er)t(y)40
b(e)l(xpression)d(is)i(a)h(function)e(on)i(nodesets)e(that)4965
3388 y(also)h(retur)t(ns)f(a)h(nodeset)5014 3624 y Fh(\226)72
b Fi(e)l(xplicit,)38 b(v)l(ar)r(iab)m(le-based)f(iter)o(ation:)47
b(\223f)l(or)39 b Fc(v)l(ar)56 b Fi(in)39 b Fc(e)l(xpression)r
Fi(\224)5014 3860 y Fh(\226)72 b Fi(implicit)38 b(iter)o(ation:)47
b(\223)p Fc(collection)r Fi([)p Fc(condition)r Fi(]\224)36
b(or)j(\223)p Fc(collection)r Fi(/)p Fc(path)r Fi(\224)4821
4134 y Fu(\017)72 b Fi(Theoretical)37 b(bac)m(kg)o(round)g(\(see)i(W3C)
h(XML)f(Quer)t(y)g(F)l(or)t(mal)e(Semantics;)h(datatypes)f(of)j(the)f
(XML)4965 4332 y(Schema)f(and)h(XML)g(Quer)t(y)g(Data)g(Model\))5014
4567 y Fh(\226)72 b Fi(f)l(or)38 b(each)g(e)l(xpression)e(\(and)i(thus)
h(also)f(f)l(or)g(its)g(result\),)g(the)g(f)l(or)t(mal)f(type)h
(\(according)f(to)i(the)f(XML)5166 4765 y(Schema)g(datatypes\))f(can)j
(be)f(deter)t(mined.)5014 5001 y Fh(\226)72 b Fi(the)39
b(type)g(of)g(each)g(v)l(ar)r(iab)m(le)g(is)h(deter)t(mined)d(in)i(the)
h(same)e(w)n(a)l(y)-14 b(.)5014 5237 y Fh(\226)72 b Fi(f)l(or)t(mal,)37
b(denotational)h(semantics)f(of)j(quer)r(ies:)5166 5434
y(\223what)e(is)i(the)f(ans)l(w)o(er)f(set)h(of)g(a)h(giv)l(en)f(e)l
(xpression?\224)10633 5482 y
0 setgray
10633 5482 a 7586 5768 a
Fg(268)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
%%Page: (44,45) 23
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 0.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
/showpage{}def/copypage{}def/erasepage{}def
PStoPSxform concat
TeXDict begin 269 44 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 2108
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 12.6304 neg 411.43053 17.63042 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 6423 2117 a
Fe(X)8 b(Q)e Ff(U)i(E)g(R)q(Y)p Fe(:)72 b(C)8 b Ff(O)g(N)g(C)g(L)g(U)g
(S)g(I)h(O)f(N)63 b Fe(\()8 b(C)g Ff(O)g(N)g(T)g Fe(')g
Ff(D)g Fe(\))4707 2820 y Fi(W3C)39 b(XML)g(Quer)t(y)g(F)l(or)t(mal)e
(Semantics:)4821 3120 y Fu(\017)72 b Fi(XP)-6 b(ath/XQuer)t(y)37
b(is)j(a)f(functional)f(language)n(.)4821 3421 y Fu(\017)72
b Fi(is)39 b(b)m(uilt)g(from)g(e)l(xpressions)n(,)e(r)o(ather)h(than)h
(statements)n(.)47 b(Ev)l(er)t(y)39 b(constr)r(uct)f(in)i(the)f
(language)f(\(e)l(xcept)4965 3624 y(f)l(or)h(the)g(XQuer)t(y)g(quer)t
(y)g(prolog\))f(is)h(an)h(e)l(xpression)d(and)i(e)l(xpressions)e(can)i
(be)h(composed)4965 3827 y(arbitr)o(ar)r(ily)-14 b(.)4821
4128 y Fu(\017)72 b Fi(The)39 b(result)g(of)g(one)g(e)l(xpression)e
(can)j(be)f(used)g(as)g(the)h(input)e(to)i(an)n(y)f(other)g(e)l
(xpression,)e(as)i(long)g(as)4965 4331 y(the)g(type)g(of)h(the)f
(result)g(of)g(the)g(f)l(or)t(mer)f(e)l(xpression)f(is)j(compatib)m(le)
d(with)i(the)h(input)e(type)h(of)h(the)4965 4534 y(latter)f(e)l
(xpression)e(with)i(which)f(it)i(is)f(composed.)4821
4835 y Fu(\017)72 b Fi(Another)38 b(char)o(acter)r(istic)f(of)i(a)h
(functional)e(language)g(is)h(that)g(v)l(ar)r(iab)m(les)g(are)g(alw)n
(a)l(ys)f(passed)g(b)m(y)4965 5038 y(v)l(alue)n(,)h(and)g(a)h(v)l(ar)r
(iab)m(le')-7 b(s)38 b(v)l(alue)h(cannot)f(be)i(modi\002ed)e(through)g
(side)h(eff)l(ects)n(.)10633 5482 y
0 setgray
10633 5482 a 7586
5768 a Fg(269)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 421.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
PStoPSxform concat
TeXDict begin 270 45 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 2315
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 12.6304 neg 411.43053 17.63042 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 6423 2324 a
Fe(X)8 b(Q)e Ff(U)i(E)g(R)q(Y)p Fe(:)72 b(C)8 b Ff(O)g(N)g(C)g(L)g(U)g
(S)g(I)h(O)f(N)63 b Fe(\()8 b(C)g Ff(O)g(N)g(T)g Fe(')g
Ff(D)g Fe(\))4821 2952 y Fu(\017)72 b Fi(Note:)48 b(XQuer)t(yX)38
b(pro)n(vides)g(a)i(syntax)e(that)h(is)h(f)l(or)t(m)o(ulated)c(in)k
(XML)4761 3425 y @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0.80 1. 0.80 setrgbcolor 0. true
3.8 neg 4.9949 neg 411.43053 9.99492 .5 Frame gsave 0.80 1. 0.80 setrgbcolor
fill grestore gsave 0.8 SLW 0.80 1. 0.80 setrgbcolor 0 setlinecap stroke
grestore end
@endspecial
4801 3440 a(Restr)r(ictions)4821 3718 y Fu(\017)72 b
Fi(up)39 b(to)h(no)n(w)f(no)g(resolving)f(of)h(XLink/XP)-7
b(ointer)37 b(\(see)i(later\))4821 4222 y Fu(\017)72
b Fi(only)39 b(a)5387 4222 y
1. 0. 0. setrgbcolor
5387 4222 a Fc(quer)t(y)g(language)6382
4222 y
0 setgray
6382 4222 a Fi(:)4965 4425 y(decision)f(of)h(the)h(W3C:)f
(\002rst)g(complete)f(XQuer)t(y)h(1.0)g(as)g(a)h(quer)t(y)f(language)f
(and)h(mak)m(e)g(it)4965 4628 y(consistent)f(with)h(XML)f(Schema)g(and)
i(XML)e(Quer)t(y)h(Data)g(Model)g(as)g(a)h(\223Recommendation\224,)35
b(and)4965 4831 y(then)k(star)6 b(t)39 b(of\002cial)f(thoughts)g(about)
h(updates)f(in)i(XQuer)t(y)e(2.0.)10633 5482 y
0 setgray
10633
5482 a 7586 5768 a Fg(270)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop
end
PStoPSsaved restore
%%Page: (46,47) 24
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 0.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
/showpage{}def/copypage{}def/erasepage{}def
PStoPSxform concat
TeXDict begin 271 46 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 2176
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.69437 neg 411.43053 16.69438 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 5178 2199 a
Fe(G)8 b Ff(E)g(N)g(E)g(R)g(A)g(L)61 b Fe(D)8 b Ff(E)g(S)g(I)g(G)g(N)59
b Fe(P)-7 b Ff(A)l(T)8 b(T)g(E)g(R)g(N)g(S)61 b(F)8 b(O)g(R)58
b Fe(D)r Ff(A)l(T)l(A)8 b(B)t(A)g(S)g(E)60 b Fe(Q)6 b
Ff(U)i(E)g(R)q(Y)60 b Fe(L)8 b Ff(A)g(N)g(G)g(U)q(A)q(G)h(E)f(S)4707
2874 y Fi(SQL,)38 b(OQL,)h(XML-QL,)f(XQuer)t(y)h(\(and)f(man)n(y)h
(others\))f(use)h(the)h(same)e(under)r(lying)g(pr)r(inciple:)4821
3175 y Fu(\017)72 b Fi(binding)38 b(v)l(ar)r(iab)m(les)4821
3476 y Fu(\017)72 b Fi(e)l(v)l(aluating)38 b(a)h(condition)4821
3776 y Fu(\017)72 b Fi(gener)o(ating)37 b(a)j(result)e(\(which)h(is)g
(a)h(set)f(of)h(data)f(items)f(of)i(the)f(under)r(lying)f(data)h
(model\))4707 4077 y(Note:)48 b(XQL)39 b(did)g(not)g(f)l(ollo)n(w)f
(this)i(idea)f Fu(!)h Fi(restr)r(icted)e(e)l(xpressiv)l(eness)e(and)k
(clar)r(ity)4707 4355 y(...)49 b(let')-7 b(s)38 b(no)n(w)h(ha)m(v)l(e)h
(a)f(look)g(on)h(one)f(more)g(XML)f(quer)t(y)h(language)4821
4656 y Fu(\017)72 b Fi(the)39 b(under)r(lying)f(pr)r(inciple)g(is)i
(the)f(same)4821 4957 y Fu(\017)72 b(!)40 b Fi(e)l(v)l(er)t(ything)e
(else)h(is)h(\223just)f(syntax\224!)10633 5482 y
0 setgray
10633
5482 a 7586 5768 a Fg(271)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop
end
PStoPSsaved restore
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 421.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
PStoPSxform concat
TeXDict begin 272 47 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 2195
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 3.8 neg 411.43053 31.42343 .5 Frame gsave 1.00 0.71 0.76 setrgbcolor
fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap stroke
grestore end
@endspecial 4801 2068 a
Fd(6.6)207 b(Fur)t(ther)58 b(\(Academic\))f(Quer)r(y)h(Langua)n(g)r(es)
4761 2583 y @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.38539 neg 411.43053 16.38539 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 7297
2607 a Fe(X)8 b(P)-7 b Ff(A)l(T)8 b(H)g Fe(L)g Ff(O)g(G)4821
3239 y Fu(\017)72 b Fi(Prolog-/Datalog-style)35 b(\(Ma)l(y)-14
b(,)38 b(DBPL)h(and)g(VLDB)f(2001;)h(TPLP)g(2004\))4821
3540 y Fu(\017)72 b Fi(based)38 b(on)i(F-Logic)5014 3792
y Fh(\226)72 b Fi(path)39 b(syntax)f(changed)g(from)h
Fc(step)p Fi(.)p Fc(step)p Fi(.)p Fc(step)i Fi(to)f Fc(step)t
Fi(/)p Fc(step)t Fi(/)p Fc(step)5014 4044 y Fh(\226)72
b Fi(same)38 b(syntax)h(f)l(or)g(conditions)f(as)h(f)l(or)g(F-Logic:)47
b(\223[...]\224)i(could)38 b(be)i(reused)5014 4296 y
Fh(\226)72 b Fi(F-Logic)38 b(semantics)f(\(1989\))i(closely)f(related)h
(with)g(XP)-6 b(ath)39 b(semantics)5014 4548 y Fh(\226)72
b Fi(ne)m(w:)48 b(distinction)38 b(betw)o(een)g(attr)r(ib)m
(utes/subelements)4821 4848 y Fu(\017)72 b Fi(Binding)38
b(of)i(v)l(ar)r(iab)m(les)e(at)6412 4848 y
1. 0. 0. setrgbcolor
6412 4848
a Fc(arbitr)o(ar)t(y)6943 4848 y
0 setgray
6943 4848 a 38 w Fi(positions)g(of)h
(an)g(e)l(xpression)4821 5149 y Fu(\017)72 b Fi(joins)39
b(as)g(conjunction)f(\(as)h(in)g(Prolog/Datalog\))10633
5482 y
0 setgray
10633 5482 a 7586 5768 a Fg(272)4500 6000 y
tx@Dict begin -90 Rot end
4500
6000 a eop end
PStoPSsaved restore
%%Page: (48,49) 25
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 0.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
/showpage{}def/copypage{}def/erasepage{}def
PStoPSxform concat
TeXDict begin 273 48 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1997
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.38539 neg 411.43053 16.38539 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 7297 2021 a
Fe(X)8 b(P)-7 b Ff(A)l(T)8 b(H)g Fe(L)g Ff(O)g(G)4821
2614 y Fu(\017)72 b Fi(implicit)38 b(resolving)g(of)h(m)o(ulti-v)l
(alued)e(attr)r(ib)m(utes)4821 2915 y Fu(\017)72 b Fi(implicit)38
b(resolving)g(of)h(ref)l(erence)f(attr)r(ib)m(utes)7487
2915 y
0. 0. 1. setrgbcolor
7487 2915 a 5191 3178 a Fv(?-)76 b(//country->C[name->N)81
b(and)c(@membership->O/name->A)q(].)4707 3233 y
0. setgray
4707
3233 a 4821 3501 a Fu(\017)72 b Fi(access)38 b(to)i(signature/metadata)
6879 3501 y
0. 0. 1. setrgbcolor
6879 3501 a 5191 3765 a Fv(?-)76 b(//country[name="German)q
(y"])q(/M.)5191 3968 y(?-)g(//country[name="German)q(y"])q(/@A)q(.)4707
4022 y
0. setgray
4707 4022 a 4821 4291 a Fu(\017)c Fi(class)38
b(membership)g(and)h(-hier)o(arch)l(y)7075 4291 y
0. 0. 1. setrgbcolor
7075
4291 a 5191 4554 a Fv(?-)76 b(C)f(isa)i(country[name->N]/M.)5191
4757 y(?-)f(_C)g(isa)g(country/@A->_O,)k(_O)c(isa)g(X.)5191
4960 y(?-)g(country[@M=>C].)381 b(\045)76 b(from)g(DTD)4707
5186 y
0 setgray
4707 5186 a 4707 5186 a
0 setgray
4707 5186 a 4707 5186
a
0 setgray
4707 5186 a 4707 5186 a
0 setgray
4707 5186 a 4707 5186 a
0 setgray
4707
5186 a 10633 5482 a
0 setgray
10633 5482 a 7586 5768 a Fg(273)4500
6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 421.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
PStoPSxform concat
TeXDict begin 274 49 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 2355
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.48137 neg 411.43053 16.48138 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 6823 2380 a
Fe(X)8 b(P)-7 b Ff(A)l(T)8 b(H)g Fe(L)g Ff(O)g(G)g Fe(:)72
b(O)p Ff(V)8 b(E)g(R)q(V)g(I)g(E)g(W)4821 2973 y Fu(\017)72
b Fi(declar)o(ativ)l(e)37 b(language)4821 3273 y Fu(\017)72
b Fi(implicit)38 b(iter)o(ation)g(\(\002xpoint)g(semantics\))4821
3574 y Fu(\017)72 b Fi(\(equi-\)join)37 b(v)l(ar)r(iab)m(les)4821
3875 y Fu(\017)72 b Fi(XP)-6 b(ath-style)37 b(semantics)h(in)i(r)r(ule)
f(heads)f(f)l(or)7484 3875 y
1. 0. 0. setrgbcolor
7484 3875 a Fc(gener)o(ation)8163
3875 y
0 setgray
8163 3875 a 38 w Fi(and)8480 3875 y
1. 0. 0. setrgbcolor
8480 3875
a Fc(manipulation)9296 3875 y
0 setgray
9296 3875 a 37 w Fi(of)i(XML)e(data)4821
4176 y Fu(\017)72 b Fi(\002rst)39 b(implementation)d(of)k(an)f(update)g
(language)f(f)l(or)h(XML)g(\(Demo)f(VLDB)h(2001\))4821
4476 y Fu(\017)72 b Fi(\002xpoint)38 b(semantics)g(f)l(or)h(e)l(x)l
(ecution)4821 4777 y Fu(\017)72 b Fi(can)39 b(compute)f(tr)o(ansitiv)l
(e)g(closure)g(etc.)10633 5482 y
0 setgray
10633 5482 a 7586 5768
a Fg(274)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
%%Page: (50,51) 26
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 0.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
/showpage{}def/copypage{}def/erasepage{}def
PStoPSxform concat
TeXDict begin 275 50 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5480 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1704
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.69437 neg 411.43053 16.69438 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 5113 1726 a
Fe(G)8 b Ff(E)g(N)g(E)g(R)g(A)g(L)61 b Fe(D)8 b Ff(E)g(S)g(I)g(G)g(N)60
b Fe(P)8 b Ff(R)g(I)g(N)g(C)g(I)g(P)g(L)g(E)g(S)62 b(F)8
b(O)g(R)58 b Fe(D)r Ff(A)l(T)l(A)8 b(B)t(A)g(S)g(E)61
b Fe(Q)6 b Ff(U)i(E)g(R)q(Y)60 b Fe(L)8 b Ff(A)g(N)g(G)g(U)q(A)q(G)g(E)
h(S)4707 2074 y Fi(SQL,)38 b(OQL,)h(XML-QL,)f(XQuer)t(y)h(\(and)f(man)n
(y)h(others\))f(use)h(the)h(same)e(under)r(lying)g(pr)r(inciple:)4821
2349 y Fu(\017)72 b Fi(binding)38 b(v)l(ar)r(iab)m(les)4821
2624 y Fu(\017)72 b Fi(e)l(v)l(aluating)38 b(a)h(condition)4821
2899 y Fu(\017)72 b Fi(gener)o(ating)37 b(a)j(result)e(\(which)h(is)g
(a)h(set)f(of)h(data)f(items)f(of)i(the)f(under)r(lying)f(data)h
(model\))5496 3181 y Fb(SQL/OQL)611 b(XML-QL)853 b(XQuer)t(y)936
b(XP)-5 b(athLog)p 4707 3254 5926 6 v 4707 3410 a(v)m(ar)r(iab)m(les:)
238 b(1-step-na)m(vig.)431 b(XML)35 b(patter)s(ns)562
b(XP)-5 b(ath)36 b(na)m(vig.)652 b(XP)-5 b(ath)35 b(na)m(vig.+)5496
3633 y(SQL:)h(\003at)f(data)g(model)2711 b(XP)-5 b(ath)35
b(P)-5 b(atter)s(ns)5496 3857 y(OQL:)36 b(+)h(path)e(na)m(vig.)p
4707 3930 V 4707 4086 a(conditions:)169 b(WHERE)36 b(clause)286
b(P)-5 b(atter)s(ns)854 b(XP)-5 b(ath)36 b(fr)o(agment)485
b(XP)-5 b(ath)35 b(\002lters)6673 4310 y(\(Equality)f(join)h(conds\))
170 b(\(only)35 b(non-join-conds\))169 b(\(Join)35 b(conds\))6673
4533 y(WHERE)h(clause)443 b(WHERE)37 b(Clause)458 b(separ)o(ate)34
b(conjuncts)6673 4756 y(\(compar)r(isons+joins\))169
b(\(all\))1162 b(\(compar)r(isons+joins\))4827 5007 y
Fl(\017)72 b Fb(the)35 b(under)r(lying)f(Logic)g(Prog)o(r)o(amming)f
(\002xpoint)h(semantics)f(enab)m(les)i(XP)-5 b(athLog)34
b(to)i(compute)e(the)h(tr)o(ansitiv)m(e)4965 5188 y(closure)4827
5442 y Fl(\017)72 b Fb(...)44 b(b)m(ut)36 b(it)f(does)g(not)g(allo)n(w)
g(f)l(or)h(syntactically)c(nested)i(statements)10633
5480 y
0 setgray
10633 5480 a 7586 5765 a Fg(275)4500 6000 y
tx@Dict begin -90 Rot end
4500
6000 a eop end
PStoPSsaved restore
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 421.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
PStoPSxform concat
TeXDict begin 276 51 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 2312
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 12.6304 neg 411.43053 17.63042 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 6056 2321 a
Fe(F)8 b Ff(U)g(R)d(T)j(H)g(E)g(R)61 b Fe(\()8 b(A)r
Ff(C)g(A)g(D)g(E)g(M)g(I)g(C)h Fe(\))63 b(Q)6 b Ff(U)i(E)g(R)q(Y)59
b Fe(L)8 b Ff(A)g(N)g(G)g(U)q(A)q(G)h(E)f(S)4821 2948
y Fu(\017)72 b Fi(XML-GL)38 b(\(Comai,)g(P)-7 b(olitecnico)37
b(Milano)-6 b(,)39 b(1999\):)48 b(g)o(r)o(aphical)37
b(\223language\224)4821 3249 y Fu(\017)72 b Fi(Lorel-XML)37
b(\(Stanf)l(ord)h(Univ)-11 b(.,)38 b(1999\):)48 b(OQL-style)38
b(language)n(,)g(mig)o(r)o(ation)e(of)k(Lorel)4821 3550
y Fu(\017)72 b Fi(Y)-16 b(A)f(TL-XML)37 b(\(Cluet,)i(INRIA,)f(2000\):)
48 b(ter)t(m-based)37 b(language)n(,)h(mig)o(r)o(ation)f(of)i(Y)-16
b(A)f(TL)4821 3850 y Fu(\017)72 b Fi(Lixto/Elog)38 b(\(Gottlob)-6
b(,)38 b(TU)h(Wien,)h(2001\):)48 b(g)o(r)o(aphical)37
b(tool)i(f)l(or)g(data)g(e)l(xtr)o(action)e(from)i(the)g(W)l(eb)-6
b(,)4965 4054 y(Datalog-based)37 b(inter)t(nals)4821
4354 y Fu(\017)72 b Fi(Xcer)t(pt,)38 b(XChange)g(\(Br)t(y)i(et)f(al,)g
(LMU)g(M)16 b(\250)-64 b(unchen,)38 b(2002\):)48 b(ter)t(m-)38
b(and)h(uni\002cation-based)e(language)4707 4655 y(...)49
b(man)n(y)38 b(diff)l(erent)g(approaches)f(to)j(the)f(same)g(goal)g
(\(mainly)f(in)i(Europe\).)4707 4858 y(Ov)l(er)t(vie)m(w)e(in)i(\(Ma)l
(y)-14 b(,)37 b(TPLP)i(2004\).)10633 5482 y
0 setgray
10633 5482
a 7586 5768 a Fg(276)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
%%Page: (52,53) 27
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 0.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
/showpage{}def/copypage{}def/erasepage{}def
PStoPSxform concat
TeXDict begin 277 52 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 2477
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 3.8 neg 411.43053 70.50993 .5 Frame gsave 1.00 0.71 0.76 setrgbcolor
fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap stroke
grestore end
@endspecial 4801 1899 a
Fk(Chapter)83 b(7)4801 2338 y Fj(Manipulating)101 b(XML)f(Data)4821
2735 y Fu(\017)72 b Fi(XML)39 b(data)g(in)g(\002les:)5014
2969 y Fh(\226)72 b Fi(usually)38 b(no)h(changes)g(\(e)l(xcept)f(man)o
(ually)f(or)i(b)m(y)h(scr)r(ipts\))5014 3204 y Fh(\226)72
b Fi(tr)o(ansf)l(or)t(mations)35 b(XML)k Fu(!)h Fi(HTML)f(etc:)48
b(XSL)-16 b(T)4821 3477 y Fu(\017)72 b Fi(XML)39 b(data)g(in)g
(application)f(systems)5014 3712 y Fh(\226)72 b Fi(inside)38
b(the)i(application)d(prog)o(r)o(amming)f(language;)i(mostly)g(b)m(y)i
(the)f(DOM-API)5014 3946 y Fh(\226)72 b Fi(no)39 b(special)f(data)h
(manipulation)f(language)g(necessar)t(y)g(\(cf)l(.)g(OQL\)?)4821
4219 y Fu(\017)72 b Fi(diff)l(erent)38 b(proposals)5014
4454 y Fh(\226)72 b Fi(pre-XQuer)t(y)37 b(commercial)g(area:)5166
4666 y Fu(\003)71 b Fi(XMLDB:)38 b(XUpdate)g(\(1999\))5166
4863 y Fu(\003)71 b Fi(eXcelon)38 b(\(2000;)h(XUL)g(as)g(e)l(xtension)f
(of)h(XSL)-16 b(T\))5014 5098 y Fh(\226)72 b Fi(academic)37
b(area:)5166 5310 y Fu(\003)71 b Fi(\223Updating)38 b(XML)-23
b(\224)39 b(\(Hale)l(vy)e(et)j(al,)f(SIGMOD)f(2001\))h(as)g(an)g(e)l
(xtension)f(to)i(XQuer)t(y)5166 5508 y Fu(\003)71 b Fi(XP)-6
b(athLog)38 b(\(Ma)l(y)-14 b(,)38 b(VLDB)h(2001\):)48
b(Prolog-style)37 b(quer)t(y-)i(and)g(manipulation)e(language)10633
5482 y
0 setgray
10633 5482 a 7586 5768 a Fg(277)4500 6000 y
tx@Dict begin -90 Rot end
4500
6000 a eop end
PStoPSsaved restore
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 421.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
PStoPSxform concat
TeXDict begin 278 53 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 2134
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.69437 neg 411.43053 16.69438 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 5788 2157 a
Fe(E)8 b Ff(X)g(T)g(E)g(N)g(D)g(I)g(N)g(G)62 b Fe(X)8
b(Q)e Ff(U)i(E)g(R)q(Y)60 b(W)8 b(I)g(T)g(H)59 b Fe(U)8
b Ff(P)g(D)r(A)l(T)g(E)g(S)60 b Fe(\226)d(C)8 b Ff(O)g(N)g(C)g(E)g(P)g
(T)g(S)4707 2833 y Fi(In)39 b(the)g(meantime)f(consensus)g(about)h
(which)f(oper)o(ations)f(is)j(reached.)47 b(Syntax)39
b(is)g(still)g(open.)4821 3133 y Fu(\017)72 b Fi(alw)n(a)l(ys)38
b(wr)6 b(t.)38 b(a)i(conte)l(xt)e(node)4821 3434 y Fu(\017)72
b Fi(base)39 b(oper)o(ations:)5014 3686 y Fh(\226)72
b Fi(delete)38 b Fc(node)5014 3938 y Fh(\226)72 b Fi(rename)38
b Fc(node)k Fi(as)d Fc(name)5014 4190 y Fh(\226)72 b
Fi(inser)6 b(t)38 b Fc(node/nodes)k Fi(bef)l(ore)p Fu(j)p
Fi(after)p Fu(j)p Fi(into)36 b Fc(node)4821 4490 y Fu(\017)72
b Fi(combined)38 b(oper)o(ations:)5014 4742 y Fh(\226)72
b Fi(replace)38 b Fc(node)k Fi(with)d Fc(node)5014 4994
y Fh(\226)72 b Fi(mo)n(v)l(e)39 b Fc(node)j Fi(bef)l(ore)p
Fu(j)p Fi(after)p Fu(j)p Fi(into)36 b Fc(node)10633 5482
y
0 setgray
10633 5482 a 7586 5768 a Fg(278)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000
a eop end
PStoPSsaved restore
%%Page: (54,55) 28
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 0.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
/showpage{}def/copypage{}def/erasepage{}def
PStoPSxform concat
TeXDict begin 279 54 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 2031
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 3.8 neg 411.43053 31.16426 .5 Frame gsave 1.00 0.71 0.76 setrgbcolor
fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap stroke
grestore end
@endspecial 4801 1905 a
Fd(7.1)207 b(XML:DB)57 b(Initiative')-12 b(s)59 b(XUpdate)4821
2310 y Fu(\017)72 b Fi(XML:DB)38 b(Initiativ)l(e)g(f)l(ounded)g(in)i
(late)f(1999)4965 2513 y(Goal:)48 b(interf)l(ace)38 b(f)l(or)h(stor)r
(ing)f(XML)h(in)h(databases)4821 2813 y Fu(\017)72 b
Fi(Lo)n(w-le)l(v)l(el)37 b(API)j(\(J)m(a)m(v)l(a)f(etc.,)g(using)g(DOM)
f(+)i(XP)-6 b(ath)39 b(...\))4821 3114 y Fu(\017)72 b
Fi(an)39 b(update)g(concept:)47 b(XUpdate)4821 3415 y
Fu(\017)72 b Fi(Implementation:)4965 3618 y(dbXML)38
b(Core)h(XML)g(Database)f(released)g(as)h(Open)g(Source)f(softw)n(are)g
(in)i(Sept.)48 b(2000)4965 3821 y(tr)o(ansf)l(erred)37
b(to)i(the)g(Apache)g(Softw)n(are)f(F)l(oundation)f
(\(\223Xindice\224\))4821 4122 y Fu(\017)72 b Fv(http://xmldb-)7
b(org.sour)q(cef)q(org)q(e.ne)q(t/)4965 4325 y Fi(\(inactiv)l(e?\))4821
4626 y Fu(\017)72 b Fi(The)39 b(XML:DB)f(database)g(API)h(is)h
(implemented)d(in)i(se)l(v)l(er)o(al)f(systems:)4965
4829 y(eXist,)g(X-Hiv)l(e)n(,)h(T)-17 b(amino)-6 b(,)38
b(XML:DB)g(Le)l(xus)n(,)g(...)4707 5129 y(...)49 b(b)m(ut)39
b(here)g(w)o(e)g(are)g(mainly)f(interested)g(in)i(XUpdate)e(...)4707
5333 y(\(note)g(that)i(XUpdate)e(\(1999\))g(is)i(not)f(related)f(with)h
(XQuer)t(y)g(\(2001\)\))10633 5482 y
0 setgray
10633 5482 a 7586
5768 a Fg(279)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 421.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
PStoPSxform concat
TeXDict begin 280 55 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1701
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.38539 neg 411.43053 16.38539 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 6975 1725 a
Fe(X)8 b(M)g(L)g(:)g(D)g(B)61 b(X)8 b(U)g Ff(P)g(D)r(A)l(T)g(E)4707
2278 y Fi(Situation)38 b(in)h(1999:)48 b(XML,)39 b(XP)-6
b(ath,)39 b(XSL)-16 b(T)39 b([see)g(later],)g(lo)n(w-le)l(v)l(el)e
(APIs)4821 2564 y Fu(\017)72 b Fi(Requirement:)5875 2564
y
1. 0. 0. setrgbcolor
5875 2564 a Fi(\223The)39 b(XML)g(Update)f(speci\002cation)f(MUST)i
(be)g(an)h(XML)e(element\224)9616 2564 y
0 setgray
9616 2564 a
4965 2764 a Fi(i.e)n(.,)h(the)g(language)f(is)i(itself)e(in)i(XML)f
(syntax)f(\(lik)m(e)h(XSL)-16 b(T)39 b(and)g(XML)g(Schema\))4821
3050 y Fu(\017)72 b Fi(XUpdate:)47 b(a)40 b(v)l(er)t(y)f(basic)g(descr)
r(iption)f(of)h(update)g(oper)o(ations:)5014 3293 y Fh(\226)72
b Fi(which)38 b(node)h(\(elements)n(,)f(attr)r(ib)m(utes\))5014
3536 y Fh(\226)72 b Fi(which)38 b(oper)o(ation)g(\(delete)n(,)g(update)
h(v)l(alue)n(,)f(append/inser)6 b(t)37 b(to)j(contents\))5014
3779 y Fh(\226)72 b Fi(ne)m(w)39 b(v)l(alue)g(\(in)g(case)g(of)h
(update/append/inser)6 b(t\))4707 4065 y(Basic)38 b(str)r(ucture:)5747
4065 y
0. 0. 1. setrgbcolor
5747 4065 a 4874 4331 a Fp(<)4952 4351 y Fi(xu:modi\002cations)e
(xmlns:xu=)i(\223http://www)-9 b(.xmldb)j(.org/xupdate\224)8687
4331 y Fp(>)5042 4534 y(<)5119 4554 y Fi(xu:)p Fc(oper)o(ation)40
b Fi(select=)e(\223)p Fc(xpath-e)l(xpression)r Fi(\224)7638
4534 y Fp(>)5209 4758 y Fc(contents)g(\(e)n(.g.)49 b(ne)m(w)39
b(v)l(alue\))5042 4941 y Fp(<)5119 4961 y Fi(/xu:)p Fc(oper)o(ation)
5952 4941 y Fp(>)4874 5144 y(<)4952 5164 y Fi(/xu:modi\002cations)6024
5144 y Fp(>)4707 5243 y
0 setgray
4707 5243 a 207 x Fi(...)49 b(submit)38
b(such)h(an)g(element)f(as)i(a)f(kind)g(of)h(a)g(\223message\224)d(to)j
(the)f(DB)g(and)g(get)g(the)h(update)n(.)10633 5482 y
0 setgray
10633 5482 a 7586 5768 a Fg(280)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000
a eop end
PStoPSsaved restore
%%Page: (56,57) 29
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 0.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
/showpage{}def/copypage{}def/erasepage{}def
PStoPSxform concat
TeXDict begin 281 56 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1630
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0.80 1. 0.80 setrgbcolor 0. true
3.8 neg 5.95493 neg 411.43053 10.95494 .5 Frame gsave 0.80 1. 0.80
setrgbcolor fill grestore gsave 0.8 SLW 0.80 1. 0.80 setrgbcolor 0
setlinecap stroke grestore end
@endspecial 4801 1631 a
Fi(XUpdate:)47 b(Example)4707 1622 y
0. 0. 1. setrgbcolor
4707 1622 a 4761
2369 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0. setgray 0. true 3.8 neg 40.17198
neg 411.43053 45.172 .5 Frame gsave 1. setgray fill grestore gsave
0.8 SLW 0. setgray 0 setlinecap stroke grestore end
@endspecial -506 x
Fv()4761 2066 y()4912 2269 y()5062 2472 y(Deu)q(tsch)q(lan)q(d)q(xu:)q(ele)q(men)q(t>)4912
2676 y()4761 2879 y()4707
3074 y
0 setgray
4707 3074 a 39 w Fi([Filename:)47 b(XUpdate/append.xu])4707
3352 y(Calling)38 b(eXist)h(with)g(\(see)g Fv(client.sh)78
b(-h)p Fi(\))4707 3631 y Fv(/bin/gen)p 5316 3631 46 6
v 56 w(client.sh)h(-u)c Fa(user)102 b Fv(-P)76 b Fa(password)103
b Fv(-c)76 b(/db/may)h(-f)f(mondial.xml)j(-X)d(append.xu)4707
3909 y Fi(e)l(x)l(ecutes)37 b(the)i(update)n(.)4821 4209
y Fu(\017)72 b Fv(select=)77 b(")p Fa(xpath)27 b Fv(")40
b Fi(is)g(the)f(same)g(as)g(in)h(XSL)-16 b(T)39 b(\(see)f(later\),)h
(XML)g(Schema)f(etc.)49 b(\226)39 b(a)h(widely)e(used)4965
4412 y(concept)g(in)i(the)f(XML)g(w)o(or)r(ld.)4965 4616
y(\(if)g(m)o(ultiple)f(nodes)h(are)g(addressed,)e(each)i(one)g(is)h
(modi\002ed\))4821 4916 y Fu(\017)4965 4900 y Fp(<)5043
4916 y Fv(xu:element)5793 4900 y Fp(>)5913 4916 y Fi(constr)r(uctor)e
(is)h(the)h(same)e(as)i(in)f(XSL)-16 b(T)39 b(\(1998\))g(and)g(later)g
(in)g(XQuer)t(y')-7 b(s)38 b(RETURN)4965 5119 y(clause)4821
5420 y Fu(\017)72 b Fi(analogously)37 b(inser)6 b(t-bef)l(ore)37
b(and)i(inser)6 b(t-after)-7 b(.)10633 5482 y
0 setgray
10633 5482
a 7586 5768 a Fg(281)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 421.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
PStoPSxform concat
TeXDict begin 282 57 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 2235
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0.80 1. 0.80 setrgbcolor 0. true
3.8 neg 6.02748 neg 411.43053 11.02748 .5 Frame gsave 0.80 1. 0.80
setrgbcolor fill grestore gsave 0.8 SLW 0.80 1. 0.80 setrgbcolor 0
setlinecap stroke grestore end
@endspecial 4801 2237 a
Fi(XUpdate:)47 b(Examples)38 b(\(Cont')-7 b(d\))4707
2314 y
0. 0. 1. setrgbcolor
4707 2314 a 4761 2857 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0. setgray 0. true 3.8 neg 26.01207
neg 411.43053 31.01208 .5 Frame gsave 1. setgray fill grestore gsave
0.8 SLW 0. setgray 0 setlinecap stroke grestore end
@endspecial -303 x Fv()4761
2757 y()4912 2960 y()4761 3164 y()4707
3359 y
0 setgray
4707 3359 a 39 w Fi([Filename:)47 b(XUpdate/remo)n(v)l(e)n(.xu])
4707 3389 y
0. 0. 1. setrgbcolor
4707 3389 a 4761 4135 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0. setgray 0. true 3.8 neg 40.17198
neg 411.43053 45.172 .5 Frame gsave 1. setgray fill grestore gsave
0.8 SLW 0. setgray 0 setlinecap stroke grestore end
@endspecial -506 x Fv()4761
3833 y()4912 4036 y()5138 4239 y(80000000)4912 4442
y()4761 4645 y()4707 4841
y
0 setgray
4707 4841 a 39 w Fi([Filename:)47 b(XUpdate/update)n(.xu])10633
5482 y
0 setgray
10633 5482 a 7586 5768 a Fg(282)4500 6000 y
tx@Dict begin -90 Rot end
4500
6000 a eop end
PStoPSsaved restore
%%Page: (58,59) 30
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 0.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
/showpage{}def/copypage{}def/erasepage{}def
PStoPSxform concat
TeXDict begin 283 58 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1624
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0.80 1. 0.80 setrgbcolor 0. true
3.8 neg 6.02748 neg 411.43053 11.02748 .5 Frame gsave 0.80 1. 0.80
setrgbcolor fill grestore gsave 0.8 SLW 0.80 1. 0.80 setrgbcolor 0
setlinecap stroke grestore end
@endspecial 4801 1626 a
Fi(XUpdate:)47 b(Examples)38 b(\(Cont')-7 b(d\))4821
1868 y Fu(\017)72 b Fi(get)39 b(the)g(ne)m(w)h(v)l(alue)f(from)f(the)i
(database:)4707 1915 y
0. 0. 1. setrgbcolor
4707 1915 a 4761 2640 a @beginspecial
@setspecial
tx@Dict begin STP newpath 0.8 SLW 0. setgray 0. true 3.8 neg 40.17198
neg 411.43053 45.172 .5 Frame gsave 1. setgray fill grestore gsave
0.8 SLW 0. setgray 0 setlinecap stroke grestore end
@endspecial -506 x Fv()4761
2338 y()4912 2541 y()5138 2744 y()4912 2947 y()4761 3150 y()4707
3340 y
0 setgray
4707 3340 a 39 w Fi([Filename:)47 b(XUpdate/update-select.xu])
4707 3597 y(note:)h(the)39 b(inner)79 b Fv(select)j Fi(cannot)38
b(depend)h(on)g(the)g(current)g(node)n(.)4707 3627 y
0. 0. 1. setrgbcolor
4707 3627 a 4761 4556 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0. setgray 0. true 3.8 neg 54.3319
neg 411.43053 59.33191 .5 Frame gsave 1. setgray fill grestore gsave
0.8 SLW 0. setgray 0 setlinecap stroke grestore end
@endspecial
-709 x Fv()4761 4050 y()4912 4253 y()4912 4659 y()5138 4862 y()4912 5066 y()4761 5269 y
()4707 5458 y
0 setgray
4707 5458 a 39 w Fi([Filename:)47
b(XUpdate/update-v)l(ar)r(iab)m(le)n(.xu])10633 5482
y
0 setgray
10633 5482 a 7586 5768 a Fg(283)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000
a eop end
PStoPSsaved restore
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 421.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
PStoPSxform concat
TeXDict begin 284 59 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1869
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.48137 neg 411.43053 16.48138 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 6121 1895 a
Fe(X)8 b(U)g Ff(P)g(D)r(A)l(T)g(E)g Fe(:)72 b(C)8 b Ff(O)g(N)g(C)g(L)g
(U)g(S)g(I)h(O)g(N)62 b(A)8 b(N)g(D)59 b Fe(C)8 b Ff(O)g(M)g(M)g(E)g(N)
g(T)g(S)4821 2489 y Fu(\017)72 b Fi(XML-syntax)37 b(of)j(the)f
(language)f(strongly)g(in\003uenced)g(b)m(y)h(XSL)-16
b(T)39 b(\(1998\))5014 2741 y Fh(\226)72 b Fi(elements)38
b(as)h(commands)5014 2993 y Fh(\226)72 b Fv(select="...")43
b Fi(selects)c(nodes)f(to)i(which)e(the)i(command)d(is)j(applied)5014
3245 y Fh(\226)72 b Fi(use)39 b(of)g(v)l(ar)r(iab)m(les)g
Fv(select="$)p Fa(variable)30 b Fv(")40 b Fi(as)g(in)f(XSL)-16
b(T)f(,)39 b(and)g(later)g(also)g(in)g(XQuer)t(y)5014
3497 y Fh(\226)72 b Fi(element/command)36 b(contents)i(speci\002es)g
(what)g(is)i(to)f(be)h(done)5014 3749 y Fh(\226)72 b
Fi(element)38 b(gener)o(ation)f(b)m(y)j(liter)o(al)e(XML)h(\(also)f(in)
i(XSL)-16 b(T)39 b(and)g(later)g(XQuer)t(y\))4821 4050
y Fu(\017)72 b Fi(only)39 b(v)l(er)t(y)g(simple)g(functionality)5014
4302 y Fh(\226)72 b Fi(no)39 b(w)n(a)l(y)g(to)g(compute)f(the)h(inner)g
(v)l(alue)n(,)5014 4553 y Fh(\226)72 b Fi(no)39 b(iter)o(ation)f(etc.)
4821 4854 y Fu(\017)72 b Fi(same)38 b(time:)49 b(combination)37
b(with)i(XSL)-16 b(T)39 b(and)g(XUpdate)f(to)i(XUL)e(\(XML)h(Update)
4965 5057 y(Language/Updateg)o(r)o(ams)34 b([Excelon]\):)4965
5260 y(XSL)-16 b(T)39 b(prog)o(r)o(am)e(str)r(uctures)h(+)h(XUpdate)f
(oper)o(ations)n(,)f(applied)i(to)g(\223current)f(node\224)h(of)h(XSL)
-16 b(T)f(.)10633 5482 y
0 setgray
10633 5482 a 7586 5768 a Fg(284)4500
6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
%%Page: (60,61) 31
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 0.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
/showpage{}def/copypage{}def/erasepage{}def
PStoPSxform concat
TeXDict begin 285 60 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 2477
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 3.8 neg 411.43053 31.32983 .5 Frame gsave 1.00 0.71 0.76 setrgbcolor
fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap stroke
grestore end
@endspecial 4801 2351 a
Fd(7.2)207 b(XQuer)r(y)57 b(with)h(Updates)f(\(2001\))4821
2755 y Fu(\017)72 b Fi(e)l(xtend)38 b(a)5551 2755 y
0. 0. 1. setrgbcolor
5551
2755 a Fc(declar)o(ativ)l(e)f(quer)t(y)i(language)7274
2755 y
0 setgray
7274 2755 a 38 w Fi(with)g(updates)4821 3056 y
Fu(\017)72 b Fi(based)38 b(on)i Fc(v)l(ar)r(iab)m(le)f(bindings)4821
3356 y Fu(\017)72 b Fi(SQL:)39 b(FR)m(OM-WHERE)e(f)l(or)i(selecting)f
(nodes)g(...)4965 3559 y(...)49 b(that)39 b(are)g(then)g(modi\002ed.)
4821 3860 y Fu(\017)72 b Fi(XQuer)t(y:)48 b(FOR-LET)-20
b(-WHERE)36 b(f)l(or)j(selecting)f(nodes)h(...)4965 4063
y(...)49 b(that)39 b(are)g(then)g(modi\002ed.)4821 4364
y Fu(\017)72 b Fi(update)38 b(instead)h(of)g(the)h(retur)t(n-clause)c
(\(cf)l(.)j(SQL:)g(UPD)-6 b(A)-17 b(TE)38 b(vs)n(.)h(SELECT\))4821
4665 y Fu(\017)72 b Fi(XQuer)t(y)38 b(e)l(xpected)g(to)i(reach)e
(recommendation)e(state)j(in)h(2005)f(...)49 b(as)39
b(a)h(quer)t(y)f(language)f(still)4965 4868 y(without)g(updates)n(.)
10633 5482 y
0 setgray
10633 5482 a 7586 5768 a Fg(285)4500 6000
y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
userdict/PStoPSsaved save put
PStoPSmatrix setmatrix
595.000000 421.271378 translate
90 rotate
0.706651 dup scale
userdict/PStoPSmatrix matrix currentmatrix put
userdict/PStoPSclip{0 0 moveto
595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto
closepath}put initclip
PStoPSxform concat
TeXDict begin 286 61 bop 4500 6000 a
tx@Dict begin 90 Rot end
4500 6000 a 4707
5482 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.57869 SLW 0. 0. 0. setrgbcolor 0.0 false
13.12538 neg 13.12538 neg 426.24008 293.06874 .5 Frame gsave 1. 1.
1. setrgbcolor fill grestore gsave 0.57869 SLW 0. 0. 0. setrgbcolor
0 setlinecap stroke grestore end
@endspecial 4761 1705
a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 1.00 0. 0. setrgbcolor 0. true
3.8 neg 11.69437 neg 411.43053 16.69438 .5 Frame gsave 1.00 0.71 0.76
setrgbcolor fill grestore gsave 0.8 SLW 1.00 0. 0. setrgbcolor 0 setlinecap
stroke grestore end
@endspecial 6046 1728 a
Fe(X)8 b(Q)e Ff(U)i(E)g(R)q(Y)60 b(W)8 b(I)g(T)g(H)59
b Fe(U)8 b Ff(P)g(D)r(A)l(T)g(E)g(S)61 b Fe(\226)56 b(E)8
b Ff(X)g(A)g(M)g(P)g(L)g(E)g Fe(:)71 b(Q)6 b Ff(U)i(I)g
Fe(P)4821 2119 y Fu(\017)72 b Fi(QuiP:)38 b(the)i(2001/02)e(XQuer)t(y)h
(prototype)f(of)h(Softw)n(are)f(A)l(G)h([D)-6 b(A)39
b(Lehti)g(2001],)4965 2316 y(later)g(integ)o(r)o(ated)e(into)i(the)g(T)
-17 b(amino)38 b(system)g(\(bef)l(ore:)48 b(XQL\).)4821
2588 y Fu(\017)72 b Fi(calling)38 b Fv(quip)77 b(filename.xq)6692
2572 y Fp(>)6845 2588 y Fv(bla.xml)42 b Fi(wr)r(ites)c(the)i
(modi\002ed)e(XML)h(to)g(a)h(\002le)n(.)4707 2635 y
0. 0. 1. setrgbcolor
4707
2635 a 4761 4082 a @beginspecial @setspecial
tx@Dict begin STP newpath 0.8 SLW 0. setgray 0. true 3.8 neg 90.42615
neg 411.43053 95.42615 .5 Frame gsave 1. setgray fill grestore gsave
0.8 SLW 0. setgray 0 setlinecap stroke grestore end
@endspecial
-1227 x Fv(update)4761 3058 y(for)76 b($c)g(in)g(document\("twocountri)
q(es.)q(xml)q("\)//)q(cou)q(ntr)q(y)4761 3261 y(let)g($area)h(:=)f
(string\($c/@area\))4761 3464 y(delete)h($c/@area)4761
3667 y(insert)g({$area})82 b(after)77 b($c/name)4761
3871 y(rename)g($c//city[@id=$c/@cap)q(ita)q(l])82 b(as)76
b(capital)4761 4074 y(replace)i($c/@car_code)h(with)5062
4277 y(attribute)g(code)d({concat\($c/name/text\()q(\),)82
b(":",)76 b(string\($c/@car_code\))q(\)})4761 4480 y(replace)i
($c/population/text\(\))j(with)4987 4683 y($c/population/text\(\))h(*)
75 b(\(1)h(+)g($c/population_growth)82 b(div)76 b(100\))4761
4886 y(insert)h("biggest)h(city")f(into)4987 5089 y
($c//city[population)k(=)76 b(max\(for)i($citypop)f(in)f
($c//city/population/)q(tex)q(t\(\))6945 5293 y(return)i
(int\($citypop\)\)])4707 5502 y
0 setgray
4707 5502 a 39 w Fi([Filename:)47
b(XQuer)t(y/update)n(.quip])10633 5482 y
0 setgray
10633 5482 a
7586 5768 a Fg(286)4500 6000 y
tx@Dict begin -90 Rot end
4500 6000 a eop end
PStoPSsaved restore
%%Trailer
userdict /end-hook known{end-hook}if
%%EOF