ossp-pkg/xds/docs/architecture.eps
%!PS-Adobe-2.0 EPSF-2.0
%%Title: architecture.dia
%%Creator: Dia v0.88.1
%%CreationDate: Tue Jul 31 14:23:46 2001
%%For: simons
%%Magnification: 1.0000
%%Orientation: Portrait
%%BoundingBox: 0 0 1279 542
%%Pages: 1
%%BeginSetup
%%EndSetup
%%EndComments
%%BeginProlog
[ /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /space /exclam /quotedbl /numbersign /dollar /percent /ampersand /quoteright
/parenleft /parenright /asterisk /plus /comma /hyphen /period /slash /zero /one
/two /three /four /five /six /seven /eight /nine /colon /semicolon
/less /equal /greater /question /at /A /B /C /D /E
/F /G /H /I /J /K /L /M /N /O
/P /Q /R /S /T /U /V /W /X /Y
/Z /bracketleft /backslash /bracketright /asciicircum /underscore /quoteleft /a /b /c
/d /e /f /g /h /i /j /k /l /m
/n /o /p /q /r /s /t /u /v /w
/x /y /z /braceleft /bar /braceright /asciitilde /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
/space /exclamdown /cent /sterling /currency /yen /brokenbar /section /dieresis /copyright
/ordfeminine /guillemotleft /logicalnot /hyphen /registered /macron /degree /plusminus /twosuperior /threesuperior
/acute /mu /paragraph /periodcentered /cedilla /onesuperior /ordmasculine /guillemotright /onequarter /onehalf
/threequarters /questiondown /Agrave /Aacute /Acircumflex /Atilde /Adieresis /Aring /AE /Ccedilla
/Egrave /Eacute /Ecircumflex /Edieresis /Igrave /Iacute /Icircumflex /Idieresis /Eth /Ntilde
/Ograve /Oacute /Ocircumflex /Otilde /Odieresis /multiply /Oslash /Ugrave /Uacute /Ucircumflex
/Udieresis /Yacute /Thorn /germandbls /agrave /aacute /acircumflex /atilde /adieresis /aring
/ae /ccedilla /egrave /eacute /ecircumflex /edieresis /igrave /iacute /icircumflex /idieresis
/eth /ntilde /ograve /oacute /ocircumflex /otilde /odieresis /divide /oslash /ugrave
/uacute /ucircumflex /udieresis /yacute /thorn /ydieresis] /isolatin1encoding exch def
/Times-Roman-latin1
/Times-Roman findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/Times-Italic-latin1
/Times-Italic findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/Times-Bold-latin1
/Times-Bold findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/Times-BoldItalic-latin1
/Times-BoldItalic findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/AvantGarde-Book-latin1
/AvantGarde-Book findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/AvantGarde-BookOblique-latin1
/AvantGarde-BookOblique findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/AvantGarde-Demi-latin1
/AvantGarde-Demi findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/AvantGarde-DemiOblique-latin1
/AvantGarde-DemiOblique findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/Bookman-Light-latin1
/Bookman-Light findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/Bookman-LightItalic-latin1
/Bookman-LightItalic findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/Bookman-Demi-latin1
/Bookman-Demi findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/Bookman-DemiItalic-latin1
/Bookman-DemiItalic findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/Courier-latin1
/Courier findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/Courier-Oblique-latin1
/Courier-Oblique findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/Courier-Bold-latin1
/Courier-Bold findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/Courier-BoldOblique-latin1
/Courier-BoldOblique findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/Helvetica-latin1
/Helvetica findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/Helvetica-Oblique-latin1
/Helvetica-Oblique findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/Helvetica-Bold-latin1
/Helvetica-Bold findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/Helvetica-BoldOblique-latin1
/Helvetica-BoldOblique findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/Helvetica-Narrow-latin1
/Helvetica-Narrow findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/Helvetica-Narrow-Oblique-latin1
/Helvetica-Narrow-Oblique findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/Helvetica-Narrow-Bold-latin1
/Helvetica-Narrow-Bold findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/Helvetica-Narrow-BoldOblique-latin1
/Helvetica-Narrow-BoldOblique findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/NewCenturySchoolbook-Roman-latin1
/NewCenturySchoolbook-Roman findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/NewCenturySchoolbook-Italic-latin1
/NewCenturySchoolbook-Italic findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/NewCenturySchoolbook-Bold-latin1
/NewCenturySchoolbook-Bold findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/NewCenturySchoolbook-BoldItalic-latin1
/NewCenturySchoolbook-BoldItalic findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/Palatino-Roman-latin1
/Palatino-Roman findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/Palatino-Italic-latin1
/Palatino-Italic findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/Palatino-Bold-latin1
/Palatino-Bold findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/Palatino-BoldItalic-latin1
/Palatino-BoldItalic findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/Symbol-latin1
/Symbol findfont
definefont pop
/ZapfChancery-MediumItalic-latin1
/ZapfChancery-MediumItalic findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/ZapfDingbats-latin1
/ZapfDingbats findfont
dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding isolatin1encoding def
currentdict end
definefont pop
/cp {closepath} bind def
/c {curveto} bind def
/f {fill} bind def
/a {arc} bind def
/ef {eofill} bind def
/ex {exch} bind def
/gr {grestore} bind def
/gs {gsave} bind def
/sa {save} bind def
/rs {restore} bind def
/l {lineto} bind def
/m {moveto} bind def
/rm {rmoveto} bind def
/n {newpath} bind def
/s {stroke} bind def
/sh {show} bind def
/slc {setlinecap} bind def
/slj {setlinejoin} bind def
/slw {setlinewidth} bind def
/srgb {setrgbcolor} bind def
/rot {rotate} bind def
/sc {scale} bind def
/sd {setdash} bind def
/ff {findfont} bind def
/sf {setfont} bind def
/scf {scalefont} bind def
/sw {stringwidth pop} bind def
/tr {translate} bind def
/ellipsedict 8 dict def
ellipsedict /mtrx matrix put
/ellipse
{ ellipsedict begin
/endangle exch def
/startangle exch def
/yrad exch def
/xrad exch def
/y exch def
/x exch def /savematrix mtrx currentmatrix def
x y tr xrad yrad sc
0 0 1 startangle endangle arc
savematrix setmatrix
end
} def
/mergeprocs {
dup length
3 -1 roll
dup
length
dup
5 1 roll
3 -1 roll
add
array cvx
dup
3 -1 roll
0 exch
putinterval
dup
4 2 roll
putinterval
} bind def
28.346000 -28.346000 scale
-0.950000 -25.050000 translate
%%EndProlog
1.000000 1.000000 1.000000 srgb
n 32.000000 16.000000 m 32.000000 25.000000 l 46.000000 25.000000 l 46.000000 16.000000 l f
0.100000 slw
[] 0 sd
[] 0 sd
0 slj
0.000000 0.000000 0.000000 srgb
n 32.000000 16.000000 m 32.000000 25.000000 l 46.000000 25.000000 l 46.000000 16.000000 l cp s
1.000000 1.000000 1.000000 srgb
n 32.000000 6.000000 m 32.000000 15.000000 l 46.000000 15.000000 l 46.000000 6.000000 l f
0.100000 slw
[] 0 sd
[] 0 sd
0 slj
0.000000 0.000000 0.000000 srgb
n 32.000000 6.000000 m 32.000000 15.000000 l 46.000000 15.000000 l 46.000000 6.000000 l cp s
1.000000 1.000000 1.000000 srgb
n 19.000000 11.000000 m 19.000000 20.000000 l 28.000000 20.000000 l 28.000000 11.000000 l f
0.100000 slw
[] 0 sd
[] 0 sd
0 slj
0.000000 0.000000 0.000000 srgb
n 19.000000 11.000000 m 19.000000 20.000000 l 28.000000 20.000000 l 28.000000 11.000000 l cp s
1.000000 1.000000 1.000000 srgb
n 1.000000 6.000000 m 1.000000 25.000000 l 15.000000 25.000000 l 15.000000 6.000000 l f
0.100000 slw
[] 0 sd
[] 0 sd
0 slj
0.000000 0.000000 0.000000 srgb
n 1.000000 6.000000 m 1.000000 25.000000 l 15.000000 25.000000 l 15.000000 6.000000 l cp s
1.000000 1.000000 1.000000 srgb
n 4.000000 8.000000 m 4.000000 10.000000 l 14.000000 10.000000 l 14.000000 8.000000 l f
0.100000 slw
[] 0 sd
[] 0 sd
0 slj
0.000000 0.000000 0.000000 srgb
n 4.000000 8.000000 m 4.000000 10.000000 l 14.000000 10.000000 l 14.000000 8.000000 l cp s
/Courier-latin1 ff 0.800000 scf sf
(xds_init\(\)) dup sw 2 div 9.000000 ex sub 9.234483 m gs 1 -1 sc sh gr
1.000000 1.000000 1.000000 srgb
n 4.000000 10.000000 m 4.000000 12.000000 l 14.000000 12.000000 l 14.000000 10.000000 l f
0.100000 slw
[] 0 sd
[] 0 sd
0 slj
0.000000 0.000000 0.000000 srgb
n 4.000000 10.000000 m 4.000000 12.000000 l 14.000000 12.000000 l 14.000000 10.000000 l cp s
/Courier-latin1 ff 0.800000 scf sf
(xds_destroy\(\)) dup sw 2 div 9.000000 ex sub 11.234483 m gs 1 -1 sc sh gr
1.000000 1.000000 1.000000 srgb
n 4.000000 20.000000 m 4.000000 22.000000 l 14.000000 22.000000 l 14.000000 20.000000 l f
0.100000 slw
[] 0 sd
[] 0 sd
0 slj
0.000000 0.000000 0.000000 srgb
n 4.000000 20.000000 m 4.000000 22.000000 l 14.000000 22.000000 l 14.000000 20.000000 l cp s
/Courier-latin1 ff 0.800000 scf sf
(xds_encode\(\)) dup sw 2 div 9.000000 ex sub 21.234483 m gs 1 -1 sc sh gr
1.000000 1.000000 1.000000 srgb
n 4.000000 18.000000 m 4.000000 20.000000 l 14.000000 20.000000 l 14.000000 18.000000 l f
0.100000 slw
[] 0 sd
[] 0 sd
0 slj
0.000000 0.000000 0.000000 srgb
n 4.000000 18.000000 m 4.000000 20.000000 l 14.000000 20.000000 l 14.000000 18.000000 l cp s
/Courier-latin1 ff 0.800000 scf sf
(xds_getbuffer\(\)) dup sw 2 div 9.000000 ex sub 19.234483 m gs 1 -1 sc sh gr
1.000000 1.000000 1.000000 srgb
n 4.000000 16.000000 m 4.000000 18.000000 l 14.000000 18.000000 l 14.000000 16.000000 l f
0.100000 slw
[] 0 sd
[] 0 sd
0 slj
0.000000 0.000000 0.000000 srgb
n 4.000000 16.000000 m 4.000000 18.000000 l 14.000000 18.000000 l 14.000000 16.000000 l cp s
/Courier-latin1 ff 0.800000 scf sf
(xds_setbuffer\(\)) dup sw 2 div 9.000000 ex sub 17.234483 m gs 1 -1 sc sh gr
1.000000 1.000000 1.000000 srgb
n 4.000000 14.000000 m 4.000000 16.000000 l 14.000000 16.000000 l 14.000000 14.000000 l f
0.100000 slw
[] 0 sd
[] 0 sd
0 slj
0.000000 0.000000 0.000000 srgb
n 4.000000 14.000000 m 4.000000 16.000000 l 14.000000 16.000000 l 14.000000 14.000000 l cp s
/Courier-latin1 ff 0.800000 scf sf
(xds_unregister\(\)) dup sw 2 div 9.000000 ex sub 15.234483 m gs 1 -1 sc sh gr
1.000000 1.000000 1.000000 srgb
n 4.000000 12.000000 m 4.000000 14.000000 l 14.000000 14.000000 l 14.000000 12.000000 l f
0.100000 slw
[] 0 sd
[] 0 sd
0 slj
0.000000 0.000000 0.000000 srgb
n 4.000000 12.000000 m 4.000000 14.000000 l 14.000000 14.000000 l 14.000000 12.000000 l cp s
/Courier-latin1 ff 0.800000 scf sf
(xds_register\(\)) dup sw 2 div 9.000000 ex sub 13.234483 m gs 1 -1 sc sh gr
1.000000 1.000000 1.000000 srgb
n 4.000000 22.000000 m 4.000000 24.000000 l 14.000000 24.000000 l 14.000000 22.000000 l f
0.100000 slw
[] 0 sd
[] 0 sd
0 slj
0.000000 0.000000 0.000000 srgb
n 4.000000 22.000000 m 4.000000 24.000000 l 14.000000 24.000000 l 14.000000 22.000000 l cp s
/Courier-latin1 ff 0.800000 scf sf
(xds_decode\(\)) dup sw 2 div 9.000000 ex sub 23.234483 m gs 1 -1 sc sh gr
1.000000 1.000000 1.000000 srgb
n 21.000000 15.000000 m 21.000000 17.000000 l 27.000000 17.000000 l 27.000000 15.000000 l f
0.100000 slw
[] 0 sd
[] 0 sd
0 slj
0.000000 0.000000 0.000000 srgb
n 21.000000 15.000000 m 21.000000 17.000000 l 27.000000 17.000000 l 27.000000 15.000000 l cp s
/Courier-latin1 ff 0.800000 scf sf
(engines) dup sw 2 div 24.000000 ex sub 16.234483 m gs 1 -1 sc sh gr
1.000000 1.000000 1.000000 srgb
n 21.000000 17.000000 m 21.000000 19.000000 l 27.000000 19.000000 l 27.000000 17.000000 l f
0.100000 slw
[] 0 sd
[] 0 sd
0 slj
0.000000 0.000000 0.000000 srgb
n 21.000000 17.000000 m 21.000000 19.000000 l 27.000000 19.000000 l 27.000000 17.000000 l cp s
/Courier-latin1 ff 0.800000 scf sf
(buffer) dup sw 2 div 24.000000 ex sub 18.234483 m gs 1 -1 sc sh gr
1.000000 1.000000 1.000000 srgb
n 21.000000 13.000000 m 21.000000 15.000000 l 27.000000 15.000000 l 27.000000 13.000000 l f
0.100000 slw
[] 0 sd
[] 0 sd
0 slj
0.000000 0.000000 0.000000 srgb
n 21.000000 13.000000 m 21.000000 15.000000 l 27.000000 15.000000 l 27.000000 13.000000 l cp s
/Courier-latin1 ff 0.800000 scf sf
(mode) dup sw 2 div 24.000000 ex sub 14.234483 m gs 1 -1 sc sh gr
/Times-Roman-latin1 ff 1.000000 scf sf
(Framework) dup sw 2 div 3.750000 ex sub 7.300000 m gs 1 -1 sc sh gr
/Times-Roman-latin1 ff 1.000000 scf sf
(Context) dup sw 2 div 20.850000 ex sub 12.200000 m gs 1 -1 sc sh gr
1.000000 1.000000 1.000000 srgb
n 34.000000 8.000000 m 34.000000 10.000000 l 45.000000 10.000000 l 45.000000 8.000000 l f
0.100000 slw
[] 0 sd
[] 0 sd
0 slj
0.000000 0.000000 0.000000 srgb
n 34.000000 8.000000 m 34.000000 10.000000 l 45.000000 10.000000 l 45.000000 8.000000 l cp s
/Courier-latin1 ff 0.800000 scf sf
(xdr_encode_int32\(\)) dup sw 2 div 39.500000 ex sub 9.234483 m gs 1 -1 sc sh gr
1.000000 1.000000 1.000000 srgb
n 34.000000 10.000000 m 34.000000 12.000000 l 45.000000 12.000000 l 45.000000 10.000000 l f
0.100000 slw
[] 0 sd
[] 0 sd
0 slj
0.000000 0.000000 0.000000 srgb
n 34.000000 10.000000 m 34.000000 12.000000 l 45.000000 12.000000 l 45.000000 10.000000 l cp s
/Courier-latin1 ff 0.800000 scf sf
(xdr_decode_int32\(\)) dup sw 2 div 39.500000 ex sub 11.234483 m gs 1 -1 sc sh gr
1.000000 1.000000 1.000000 srgb
n 34.000000 18.000000 m 34.000000 20.000000 l 45.000000 20.000000 l 45.000000 18.000000 l f
0.100000 slw
[] 0 sd
[] 0 sd
0 slj
0.000000 0.000000 0.000000 srgb
n 34.000000 18.000000 m 34.000000 20.000000 l 45.000000 20.000000 l 45.000000 18.000000 l cp s
/Courier-latin1 ff 0.800000 scf sf
(xml_encode_int32\(\)) dup sw 2 div 39.500000 ex sub 19.234483 m gs 1 -1 sc sh gr
1.000000 1.000000 1.000000 srgb
n 34.000000 20.000000 m 34.000000 22.000000 l 45.000000 22.000000 l 45.000000 20.000000 l f
0.100000 slw
[] 0 sd
[] 0 sd
0 slj
0.000000 0.000000 0.000000 srgb
n 34.000000 20.000000 m 34.000000 22.000000 l 45.000000 22.000000 l 45.000000 20.000000 l cp s
/Courier-latin1 ff 0.800000 scf sf
(xml_decode_unt32\(\)) dup sw 2 div 39.500000 ex sub 21.234483 m gs 1 -1 sc sh gr
/Times-Roman-latin1 ff 1.000000 scf sf
(XML Engines) dup sw 2 div 35.135600 ex sub 17.299118 m gs 1 -1 sc sh gr
/Times-Roman-latin1 ff 1.000000 scf sf
(XDR engines) dup sw 2 div 34.985600 ex sub 7.349118 m gs 1 -1 sc sh gr
n 39.434315 24.059358 0.106066 0.100161 0 360 ellipse f
0.100000 slw
[] 0 sd
[] 0 sd
n 39.434315 24.059358 0.106066 0.100161 0 360 ellipse cp s
n 39.434315 23.456016 0.106066 0.100161 0 360 ellipse f
0.100000 slw
[] 0 sd
[] 0 sd
n 39.434315 23.456016 0.106066 0.100161 0 360 ellipse cp s
n 39.434315 22.852674 0.106066 0.100161 0 360 ellipse f
0.100000 slw
[] 0 sd
[] 0 sd
n 39.434315 22.852674 0.106066 0.100161 0 360 ellipse cp s
n 39.518566 14.037661 0.106066 0.100161 0 360 ellipse f
0.100000 slw
[] 0 sd
[] 0 sd
n 39.518566 14.037661 0.106066 0.100161 0 360 ellipse cp s
n 39.518566 13.434319 0.106066 0.100161 0 360 ellipse f
0.100000 slw
[] 0 sd
[] 0 sd
n 39.518566 13.434319 0.106066 0.100161 0 360 ellipse cp s
n 39.518566 12.830977 0.106066 0.100161 0 360 ellipse f
0.100000 slw
[] 0 sd
[] 0 sd
n 39.518566 12.830977 0.106066 0.100161 0 360 ellipse cp s
showpage