| %!PS-Adobe-2.0 |
| %%Creator: dvipsk 5.55a Copyright 1986, 1994 Radical Eye Software |
| %%Title: glxspec.dvi |
| %%Pages: 27 |
| %%PageOrder: Ascend |
| %%BoundingBox: 0 0 612 792 |
| %%DocumentFonts: whaeberli |
| %%EndComments |
| %DVIPSCommandLine: dvips glxspec |
| %DVIPSParameters: dpi=300, compressed, comments removed |
| %DVIPSSource: TeX output 1997.07.09:1335 |
| %%BeginProcSet: texc.pro |
| /TeXDict 250 dict def TeXDict begin /N{def}def /B{bind def}N /S{exch}N |
| /X{S N}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{dup dup 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 /IE 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 IE N |
| end dup{/foo setfont}2 array copy cvx N load 0 nn put /ctr 0 N[}B /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 dup definefont setfont}B /ch-width{ch-data dup |
| length 5 sub get}B /ch-height{ch-data dup length 4 sub get}B /ch-xoff{ |
| 128 ch-data dup length 3 sub get sub}B /ch-yoff{ch-data dup length 2 sub |
| get 127 sub}B /ch-dx{ch-data dup length 1 sub get}B /ch-image{ch-data |
| dup 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 /sf 0 N /CharBuilder{save 3 1 roll S dup |
| /base get 2 index get S /BitMaps get S get /ch-data X pop /ctr 0 N ch-dx |
| 0 ch-xoff ch-yoff ch-height sub ch-xoff ch-width add ch-yoff |
| setcachedevice ch-width ch-height true[1 0 0 -1 -.1 ch-xoff sub ch-yoff |
| .1 sub]/id ch-image N /rw ch-width 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 dup 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 dup gp add |
| /gp X adv}B /nd{/cp 0 N rw exit}B /lsh{rw cp 2 copy get dup 0 eq{pop 1}{ |
| dup 255 eq{pop 254}{dup dup add 255 and S 1 and or}ifelse}ifelse put 1 |
| adv}B /rsh{rw cp 2 copy get dup 0 eq{pop 128}{dup 255 eq{pop 127}{dup 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}]dup{bind pop}forall N /D{/cc X dup type /stringtype ne{] |
| }if nn /base get cc ctr put nn /BitMaps get S ctr S sf 1 ne{dup dup |
| length 1 sub dup 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 dup 1 get dup mul exch 0 get dup mul |
| add .99 lt{/QV}{/RV}ifelse load def pop pop}N /eop{SI restore showpage |
| userdict /eop-hook known{eop-hook}if}N /@start{userdict /start-hook |
| known{start-hook}if pop /VResolution X /Resolution X 1000 div /DVImag X |
| /IE 256 array N 0 1 255{IE S 1 string dup 0 3 index put cvn put}for |
| 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 /rulex 0 N /ruley 0 N /v{/ruley X /rulex X V}B /V |
| {}B /RV statusdict begin /product where{pop product dup length 7 ge{0 7 |
| getinterval dup(Display)eq exch 0 4 getinterval(NeXT)eq or}{pop false} |
| ifelse}{false}ifelse end{{gsave TR -.1 .1 TR 1 1 scale rulex ruley false |
| RMat{BDot}imagemask grestore}}{{gsave TR -.1 .1 TR rulex ruley scale 1 1 |
| false RMat{BDot}imagemask grestore}}ifelse B /QV{gsave newpath transform |
| round exch round exch itransform moveto rulex 0 rlineto 0 ruley neg |
| rlineto rulex neg 0 rlineto fill grestore}B /a{moveto}B /delta 0 N /tail |
| {dup /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 |
| %%BeginFont: whaeberli |
| |
| /F_whaeberli 10 dict def |
| F_whaeberli begin |
| |
| /FontType 3 def |
| /FontMatrix [0.001 0 0 0.001 0 0] def |
| /FontBBox [0 -319 777 703] def |
| |
| /Encoding 256 array def |
| 0 1 255 {Encoding exch /.notdef put} for |
| Encoding 32 /space put |
| Encoding 33 /exclam put |
| Encoding 34 /quotedbl put |
| Encoding 35 /numbersign put |
| Encoding 36 /dollar put |
| Encoding 37 /percent put |
| Encoding 38 /ampersand put |
| Encoding 39 /quoteright put |
| Encoding 40 /parenleft put |
| Encoding 41 /parenright put |
| Encoding 42 /asterisk put |
| Encoding 43 /plus put |
| Encoding 44 /comma put |
| Encoding 45 /hyphen put |
| Encoding 46 /period put |
| Encoding 47 /slash put |
| Encoding 48 /zero put |
| Encoding 49 /one put |
| Encoding 50 /two put |
| Encoding 51 /three put |
| Encoding 52 /four put |
| Encoding 53 /five put |
| Encoding 54 /six put |
| Encoding 55 /seven put |
| Encoding 56 /eight put |
| Encoding 57 /nine put |
| Encoding 58 /colon put |
| Encoding 59 /semicolon put |
| Encoding 60 /less put |
| Encoding 61 /equal put |
| Encoding 62 /greater put |
| Encoding 63 /question put |
| Encoding 64 /at put |
| Encoding 65 /A put |
| Encoding 66 /B put |
| Encoding 67 /C put |
| Encoding 68 /D put |
| Encoding 69 /E put |
| Encoding 70 /F put |
| Encoding 71 /G put |
| Encoding 72 /H put |
| Encoding 73 /I put |
| Encoding 74 /J put |
| Encoding 75 /K put |
| Encoding 76 /L put |
| Encoding 77 /M put |
| Encoding 78 /N put |
| Encoding 79 /O put |
| Encoding 80 /P put |
| Encoding 81 /Q put |
| Encoding 82 /R put |
| Encoding 83 /S put |
| Encoding 84 /T put |
| Encoding 85 /U put |
| Encoding 86 /V put |
| Encoding 87 /W put |
| Encoding 88 /X put |
| Encoding 89 /Y put |
| Encoding 90 /Z put |
| Encoding 91 /bracketleft put |
| Encoding 92 /backslash put |
| Encoding 93 /bracketright put |
| Encoding 94 /asciicircum put |
| Encoding 95 /underscore put |
| Encoding 96 /quoteleft put |
| Encoding 97 /a put |
| Encoding 98 /b put |
| Encoding 99 /c put |
| Encoding 100 /d put |
| Encoding 101 /e put |
| Encoding 102 /f put |
| Encoding 103 /g put |
| Encoding 104 /h put |
| Encoding 105 /i put |
| Encoding 106 /j put |
| Encoding 107 /k put |
| Encoding 108 /l put |
| Encoding 109 /m put |
| Encoding 110 /n put |
| Encoding 111 /o put |
| Encoding 112 /p put |
| Encoding 113 /q put |
| Encoding 114 /r put |
| Encoding 115 /s put |
| Encoding 116 /t put |
| Encoding 117 /u put |
| Encoding 118 /v put |
| Encoding 119 /w put |
| Encoding 120 /x put |
| Encoding 121 /y put |
| Encoding 122 /z put |
| Encoding 123 /braceleft put |
| Encoding 124 /bar put |
| Encoding 125 /braceright put |
| Encoding 126 /asciitilde put |
| |
| /CharProcs 96 dict def |
| |
| CharProcs begin |
| |
| /.notdef {} def |
| |
| /space { |
| 600 0 0 0 600 800 setcachedevice |
| } def |
| |
| /exclam { |
| 259 0 69 -14 321 624 setcachedevice |
| newpath |
| 111 -14 moveto |
| 156 13 lineto |
| 157 79 lineto |
| 105 101 lineto |
| 69 48 lineto |
| 75 12 lineto |
| closepath |
| 147 143 moveto |
| 180 170 lineto |
| 321 611 lineto |
| 287 624 lineto |
| 251 570 lineto |
| 124 158 lineto |
| closepath |
| fill |
| } def |
| |
| /quotedbl { |
| 304 0 161 483 377 681 setcachedevice |
| newpath |
| 189 483 moveto |
| 221 512 lineto |
| 245 666 lineto |
| 222 681 lineto |
| 190 653 lineto |
| 161 507 lineto |
| closepath |
| 280 493 moveto |
| 319 546 lineto |
| 377 665 lineto |
| 355 681 lineto |
| 320 657 lineto |
| 250 509 lineto |
| closepath |
| fill |
| } def |
| |
| /numbersign { |
| 515 0 103 70 533 587 setcachedevice |
| newpath |
| 263 70 moveto |
| 300 92 lineto |
| 376 215 lineto |
| 382 224 lineto |
| 465 239 lineto |
| 474 277 lineto |
| 427 286 lineto |
| 419 289 lineto |
| 425 300 lineto |
| 451 349 lineto |
| 458 356 lineto |
| 468 358 lineto |
| 529 370 lineto |
| 533 407 lineto |
| 495 414 lineto |
| 488 416 lineto |
| 491 425 lineto |
| 533 536 lineto |
| 514 554 lineto |
| 479 532 lineto |
| 425 412 lineto |
| 416 407 lineto |
| 385 404 lineto |
| 375 402 lineto |
| 370 409 lineto |
| 428 570 lineto |
| 397 587 lineto |
| 366 544 lineto |
| 310 404 lineto |
| 304 395 lineto |
| 169 368 lineto |
| 162 338 lineto |
| 207 326 lineto |
| 259 333 lineto |
| 270 335 lineto |
| 273 326 lineto |
| 248 277 lineto |
| 241 268 lineto |
| 232 266 lineto |
| 118 246 lineto |
| 103 218 lineto |
| 131 196 lineto |
| 203 208 lineto |
| 209 202 lineto |
| 168 96 lineto |
| 185 76 lineto |
| 220 98 lineto |
| 268 207 lineto |
| 275 216 lineto |
| 284 217 lineto |
| 306 221 lineto |
| 316 219 lineto |
| 316 211 lineto |
| 246 98 lineto |
| closepath |
| 311 287 moveto |
| 337 338 lineto |
| 347 342 lineto |
| 380 347 lineto |
| 389 345 lineto |
| 383 335 lineto |
| 356 286 lineto |
| 347 277 lineto |
| 315 275 lineto |
| 305 277 lineto |
| closepath |
| fill |
| } def |
| |
| /dollar { |
| 552 0 103 -28 562 625 setcachedevice |
| newpath |
| 181 -28 moveto |
| 219 -16 lineto |
| 270 90 lineto |
| 276 100 lineto |
| 286 101 lineto |
| 328 104 lineto |
| 337 101 lineto |
| 333 90 lineto |
| 312 -8 lineto |
| 336 -19 lineto |
| 370 19 lineto |
| 397 112 lineto |
| 405 119 lineto |
| 503 172 lineto |
| 541 250 lineto |
| 522 333 lineto |
| 475 379 lineto |
| 470 386 lineto |
| 493 500 lineto |
| 496 510 lineto |
| 506 513 lineto |
| 555 523 lineto |
| 562 560 lineto |
| 513 569 lineto |
| 503 566 lineto |
| 502 575 lineto |
| 500 625 lineto |
| 462 625 lineto |
| 443 565 lineto |
| 440 555 lineto |
| 431 550 lineto |
| 421 546 lineto |
| 410 541 lineto |
| 405 547 lineto |
| 394 583 lineto |
| 356 573 lineto |
| 346 522 lineto |
| 343 512 lineto |
| 287 456 lineto |
| 290 409 lineto |
| 313 393 lineto |
| 319 386 lineto |
| 246 171 lineto |
| 237 165 lineto |
| 159 218 lineto |
| 128 237 lineto |
| 103 216 lineto |
| 111 181 lineto |
| 193 119 lineto |
| 210 112 lineto |
| 218 107 lineto |
| 214 97 lineto |
| 171 -13 lineto |
| closepath |
| 298 158 moveto |
| 301 168 lineto |
| 364 351 lineto |
| 367 361 lineto |
| 377 365 lineto |
| 402 352 lineto |
| 403 344 lineto |
| 355 167 lineto |
| 349 160 lineto |
| 307 156 lineto |
| closepath |
| 418 184 moveto |
| 421 194 lineto |
| 446 298 lineto |
| 448 308 lineto |
| 456 312 lineto |
| 464 308 lineto |
| 484 245 lineto |
| 457 199 lineto |
| 426 184 lineto |
| closepath |
| 405 418 moveto |
| 396 421 lineto |
| 387 425 lineto |
| 386 435 lineto |
| 392 469 lineto |
| 394 479 lineto |
| 405 485 lineto |
| 426 493 lineto |
| 432 490 lineto |
| 430 479 lineto |
| 420 425 lineto |
| 414 414 lineto |
| closepath |
| fill |
| } def |
| |
| /percent { |
| 549 0 51 -96 613 643 setcachedevice |
| newpath |
| 60 -96 moveto |
| 97 -81 lineto |
| 613 623 lineto |
| 585 643 lineto |
| 523 578 lineto |
| 51 -61 lineto |
| closepath |
| 378 63 moveto |
| 461 86 lineto |
| 517 142 lineto |
| 516 192 lineto |
| 512 200 lineto |
| 504 204 lineto |
| 512 214 lineto |
| 512 250 lineto |
| 462 244 lineto |
| 372 173 lineto |
| 338 107 lineto |
| 360 68 lineto |
| closepath |
| 398 122 moveto |
| 404 131 lineto |
| 435 165 lineto |
| 444 172 lineto |
| 453 171 lineto |
| 459 164 lineto |
| 462 156 lineto |
| 455 145 lineto |
| 406 119 lineto |
| closepath |
| 208 333 moveto |
| 292 351 lineto |
| 346 407 lineto |
| 340 465 lineto |
| 336 472 lineto |
| 343 479 lineto |
| 359 515 lineto |
| 307 537 lineto |
| 215 509 lineto |
| 149 446 lineto |
| 137 386 lineto |
| 180 340 lineto |
| closepath |
| 215 393 moveto |
| 194 409 lineto |
| 224 455 lineto |
| 254 472 lineto |
| 265 474 lineto |
| 268 469 lineto |
| 281 435 lineto |
| 289 430 lineto |
| 292 421 lineto |
| 287 412 lineto |
| 225 389 lineto |
| closepath |
| fill |
| } def |
| |
| /ampersand { |
| 521 0 75 2 465 570 setcachedevice |
| newpath |
| 444 2 moveto |
| 454 4 lineto |
| 463 13 lineto |
| 465 50 lineto |
| 365 150 lineto |
| 364 158 lineto |
| 391 203 lineto |
| 372 223 lineto |
| 342 209 lineto |
| 335 201 lineto |
| 327 203 lineto |
| 295 284 lineto |
| 294 293 lineto |
| 408 433 lineto |
| 433 526 lineto |
| 402 570 lineto |
| 343 565 lineto |
| 270 495 lineto |
| 228 384 lineto |
| 224 296 lineto |
| 105 158 lineto |
| 75 78 lineto |
| 92 34 lineto |
| 157 17 lineto |
| 259 61 lineto |
| 305 96 lineto |
| 312 104 lineto |
| 321 101 lineto |
| 434 2 lineto |
| closepath |
| 134 90 moveto |
| 182 178 lineto |
| 238 237 lineto |
| 248 240 lineto |
| 251 231 lineto |
| 283 160 lineto |
| 288 152 lineto |
| 281 143 lineto |
| 186 81 lineto |
| 143 75 lineto |
| 134 79 lineto |
| closepath |
| 286 377 moveto |
| 316 469 lineto |
| 363 518 lineto |
| 372 518 lineto |
| 375 508 lineto |
| 344 428 lineto |
| 300 374 lineto |
| 294 365 lineto |
| 285 367 lineto |
| closepath |
| fill |
| } def |
| |
| /quoteright { |
| 219 0 146 418 276 614 setcachedevice |
| newpath |
| 158 418 moveto |
| 195 435 lineto |
| 276 589 lineto |
| 253 614 lineto |
| 221 587 lineto |
| 146 432 lineto |
| closepath |
| fill |
| } def |
| |
| /parenleft { |
| 293 0 99 -59 366 689 setcachedevice |
| newpath |
| 179 -59 moveto |
| 209 -54 lineto |
| 220 -17 lineto |
| 164 79 lineto |
| 161 229 lineto |
| 222 444 lineto |
| 309 597 lineto |
| 366 666 lineto |
| 353 689 lineto |
| 314 675 lineto |
| 215 552 lineto |
| 126 333 lineto |
| 99 136 lineto |
| 127 4 lineto |
| closepath |
| fill |
| } def |
| |
| /parenright { |
| 321 0 117 -105 317 685 setcachedevice |
| newpath |
| 140 -105 moveto |
| 180 -71 lineto |
| 272 93 lineto |
| 314 268 lineto |
| 317 460 lineto |
| 270 626 lineto |
| 225 685 lineto |
| 195 679 lineto |
| 189 642 lineto |
| 247 513 lineto |
| 264 316 lineto |
| 221 109 lineto |
| 138 -45 lineto |
| 117 -93 lineto |
| closepath |
| fill |
| } def |
| |
| /asterisk { |
| 416 0 117 208 436 513 setcachedevice |
| newpath |
| 173 208 moveto |
| 217 238 lineto |
| 239 264 lineto |
| 246 266 lineto |
| 249 256 lineto |
| 279 209 lineto |
| 316 224 lineto |
| 315 261 lineto |
| 296 305 lineto |
| 292 314 lineto |
| 302 319 lineto |
| 426 361 lineto |
| 436 400 lineto |
| 398 404 lineto |
| 346 386 lineto |
| 334 384 lineto |
| 337 393 lineto |
| 395 499 lineto |
| 363 513 lineto |
| 276 397 lineto |
| 270 388 lineto |
| 262 386 lineto |
| 258 395 lineto |
| 228 465 lineto |
| 189 455 lineto |
| 193 398 lineto |
| 207 361 lineto |
| 211 354 lineto |
| 206 347 lineto |
| 123 317 lineto |
| 117 289 lineto |
| 151 275 lineto |
| 172 282 lineto |
| 183 286 lineto |
| 187 280 lineto |
| 179 273 lineto |
| 154 225 lineto |
| closepath |
| fill |
| } def |
| |
| /plus { |
| 530 0 117 79 533 476 setcachedevice |
| newpath |
| 286 79 moveto |
| 313 112 lineto |
| 347 259 lineto |
| 354 266 lineto |
| 364 268 lineto |
| 510 282 lineto |
| 533 317 lineto |
| 503 335 lineto |
| 377 324 lineto |
| 366 324 lineto |
| 365 333 lineto |
| 379 476 lineto |
| 342 476 lineto |
| 318 397 lineto |
| 307 335 lineto |
| 303 324 lineto |
| 293 324 lineto |
| 136 321 lineto |
| 117 287 lineto |
| 147 268 lineto |
| 281 268 lineto |
| 289 263 lineto |
| 289 254 lineto |
| 259 90 lineto |
| closepath |
| fill |
| } def |
| |
| /comma { |
| 247 0 43 -111 201 107 setcachedevice |
| newpath |
| 74 -108 moveto |
| 140 -46 lineto |
| 201 71 lineto |
| 194 107 lineto |
| 163 103 lineto |
| 79 -41 lineto |
| 43 -82 lineto |
| 63 -111 lineto |
| closepath |
| fill |
| } def |
| |
| /hyphen { |
| 500 0 111 231 494 289 setcachedevice |
| newpath |
| 389 231 moveto |
| 481 233 lineto |
| 494 270 lineto |
| 429 286 lineto |
| 129 289 lineto |
| 111 254 lineto |
| 141 238 lineto |
| closepath |
| fill |
| } def |
| |
| /period { |
| 210 0 68 20 164 108 setcachedevice |
| newpath |
| 98 20 moveto |
| 150 32 lineto |
| 164 71 lineto |
| 124 108 lineto |
| 76 82 lineto |
| 68 41 lineto |
| closepath |
| fill |
| } def |
| |
| /slash { |
| 512 0 51 -71 569 625 setcachedevice |
| newpath |
| 70 -71 moveto |
| 115 -43 lineto |
| 303 185 lineto |
| 569 588 lineto |
| 564 625 lineto |
| 525 614 lineto |
| 210 145 lineto |
| 51 -43 lineto |
| closepath |
| fill |
| } def |
| |
| /zero { |
| 524 0 107 43 545 603 setcachedevice |
| newpath |
| 211 43 moveto |
| 305 71 lineto |
| 440 175 lineto |
| 525 307 lineto |
| 545 430 lineto |
| 510 508 lineto |
| 449 550 lineto |
| 442 556 lineto |
| 447 565 lineto |
| 449 596 lineto |
| 401 603 lineto |
| 285 536 lineto |
| 180 416 lineto |
| 117 287 lineto |
| 107 165 lineto |
| 143 78 lineto |
| 200 43 lineto |
| closepath |
| 213 104 moveto |
| 169 160 lineto |
| 173 282 lineto |
| 237 411 lineto |
| 351 522 lineto |
| 380 540 lineto |
| 388 537 lineto |
| 403 505 lineto |
| 465 463 lineto |
| 488 381 lineto |
| 447 270 lineto |
| 349 162 lineto |
| 253 104 lineto |
| closepath |
| fill |
| } def |
| |
| /one { |
| 194 0 62 -7 238 584 setcachedevice |
| newpath |
| 90 -4 moveto |
| 118 25 lineto |
| 223 448 lineto |
| 238 572 lineto |
| 214 584 lineto |
| 184 558 lineto |
| 93 133 lineto |
| 62 10 lineto |
| 71 -4 lineto |
| 80 -7 lineto |
| closepath |
| fill |
| } def |
| |
| /two { |
| 505 0 142 -17 453 579 setcachedevice |
| newpath |
| 183 -17 moveto |
| 442 8 lineto |
| 453 45 lineto |
| 397 54 lineto |
| 231 43 lineto |
| 222 45 lineto |
| 223 54 lineto |
| 418 391 lineto |
| 453 513 lineto |
| 424 569 lineto |
| 337 579 lineto |
| 213 541 lineto |
| 157 486 lineto |
| 165 460 lineto |
| 203 469 lineto |
| 301 518 lineto |
| 392 518 lineto |
| 383 449 lineto |
| 255 203 lineto |
| 142 14 lineto |
| 164 -14 lineto |
| closepath |
| fill |
| } def |
| |
| /three { |
| 460 0 81 2 475 582 setcachedevice |
| newpath |
| 103 2 moveto |
| 312 70 lineto |
| 401 137 lineto |
| 444 224 lineto |
| 430 321 lineto |
| 411 384 lineto |
| 475 488 lineto |
| 465 544 lineto |
| 379 582 lineto |
| 234 572 lineto |
| 166 532 lineto |
| 158 495 lineto |
| 195 493 lineto |
| 276 526 lineto |
| 396 515 lineto |
| 413 508 lineto |
| 420 501 lineto |
| 420 490 lineto |
| 352 377 lineto |
| 368 312 lineto |
| 387 228 lineto |
| 344 152 lineto |
| 247 97 lineto |
| 91 48 lineto |
| 81 18 lineto |
| closepath |
| fill |
| } def |
| |
| /four { |
| 523 0 113 7 575 587 setcachedevice |
| newpath |
| 363 7 moveto |
| 398 25 lineto |
| 575 564 lineto |
| 550 584 lineto |
| 519 555 lineto |
| 440 312 lineto |
| 430 305 lineto |
| 181 277 lineto |
| 173 282 lineto |
| 179 291 lineto |
| 321 566 lineto |
| 305 587 lineto |
| 268 569 lineto |
| 113 266 lineto |
| 124 231 lineto |
| 234 224 lineto |
| 402 246 lineto |
| 412 246 lineto |
| 416 239 lineto |
| 346 28 lineto |
| 347 17 lineto |
| 354 10 lineto |
| closepath |
| fill |
| } def |
| |
| /five { |
| 544 0 67 -12 602 606 setcachedevice |
| newpath |
| 152 -12 moveto |
| 266 -4 lineto |
| 375 48 lineto |
| 442 136 lineto |
| 452 228 lineto |
| 406 298 lineto |
| 276 356 lineto |
| 216 363 lineto |
| 206 363 lineto |
| 206 372 lineto |
| 263 544 lineto |
| 273 549 lineto |
| 583 555 lineto |
| 602 592 lineto |
| 597 600 lineto |
| 497 606 lineto |
| 209 601 lineto |
| 197 564 lineto |
| 203 527 lineto |
| 140 324 lineto |
| 180 303 lineto |
| 271 296 lineto |
| 373 246 lineto |
| 398 185 lineto |
| 362 107 lineto |
| 288 57 lineto |
| 173 41 lineto |
| 93 71 lineto |
| 67 39 lineto |
| 115 -2 lineto |
| closepath |
| fill |
| } def |
| |
| /six { |
| 406 0 100 39 396 620 setcachedevice |
| newpath |
| 184 39 moveto |
| 256 59 lineto |
| 355 153 lineto |
| 396 252 lineto |
| 382 340 lineto |
| 315 375 lineto |
| 234 363 lineto |
| 224 361 lineto |
| 214 356 lineto |
| 210 361 lineto |
| 214 370 lineto |
| 312 521 lineto |
| 396 593 lineto |
| 391 620 lineto |
| 341 611 lineto |
| 243 517 lineto |
| 142 344 lineto |
| 100 201 lineto |
| 113 93 lineto |
| 165 41 lineto |
| closepath |
| 186 98 moveto |
| 155 167 lineto |
| 173 270 lineto |
| 261 317 lineto |
| 321 310 lineto |
| 340 248 lineto |
| 295 162 lineto |
| 216 97 lineto |
| closepath |
| fill |
| } def |
| |
| /seven { |
| 554 0 176 32 610 620 setcachedevice |
| newpath |
| 235 32 moveto |
| 273 46 lineto |
| 444 310 lineto |
| 454 314 lineto |
| 513 308 lineto |
| 532 335 lineto |
| 498 363 lineto |
| 489 367 lineto |
| 483 370 lineto |
| 489 381 lineto |
| 610 579 lineto |
| 589 620 lineto |
| 413 611 lineto |
| 184 591 lineto |
| 176 583 lineto |
| 178 546 lineto |
| 437 556 lineto |
| 541 569 lineto |
| 546 564 lineto |
| 541 555 lineto |
| 430 384 lineto |
| 421 379 lineto |
| 339 375 lineto |
| 322 340 lineto |
| 366 324 lineto |
| 377 324 lineto |
| 387 324 lineto |
| 384 314 lineto |
| 224 57 lineto |
| closepath |
| fill |
| } def |
| |
| /eight { |
| 541 0 86 2 571 629 setcachedevice |
| newpath |
| 210 2 moveto |
| 335 21 lineto |
| 450 93 lineto |
| 517 181 lineto |
| 524 252 lineto |
| 449 342 lineto |
| 445 347 lineto |
| 453 354 lineto |
| 542 425 lineto |
| 571 493 lineto |
| 537 578 lineto |
| 500 559 lineto |
| 513 474 lineto |
| 458 418 lineto |
| 347 368 lineto |
| 267 368 lineto |
| 241 393 lineto |
| 260 453 lineto |
| 351 537 lineto |
| 453 574 lineto |
| 490 597 lineto |
| 477 629 lineto |
| 374 609 lineto |
| 255 524 lineto |
| 188 423 lineto |
| 190 354 lineto |
| 250 312 lineto |
| 256 305 lineto |
| 247 300 lineto |
| 141 217 lineto |
| 86 135 lineto |
| 92 57 lineto |
| 160 8 lineto |
| closepath |
| 216 59 moveto |
| 145 86 lineto |
| 149 145 lineto |
| 218 221 lineto |
| 350 284 lineto |
| 402 293 lineto |
| 409 289 lineto |
| 470 223 lineto |
| 448 164 lineto |
| 361 90 lineto |
| 226 57 lineto |
| closepath |
| fill |
| } def |
| |
| /nine { |
| 484 0 140 -54 477 634 setcachedevice |
| newpath |
| 387 -54 moveto |
| 418 -27 lineto |
| 460 382 lineto |
| 421 405 lineto |
| 245 344 lineto |
| 195 367 lineto |
| 205 426 lineto |
| 278 513 lineto |
| 385 574 lineto |
| 468 583 lineto |
| 477 592 lineto |
| 475 629 lineto |
| 407 634 lineto |
| 295 587 lineto |
| 191 499 lineto |
| 140 402 lineto |
| 144 333 lineto |
| 194 291 lineto |
| 286 298 lineto |
| 389 338 lineto |
| 400 344 lineto |
| 405 340 lineto |
| 407 330 lineto |
| 363 -18 lineto |
| 377 -52 lineto |
| closepath |
| fill |
| } def |
| |
| /colon { |
| 208 0 66 7 220 379 setcachedevice |
| newpath |
| 79 7 moveto |
| 140 14 lineto |
| 160 63 lineto |
| 170 122 lineto |
| 132 126 lineto |
| 74 70 lineto |
| 66 20 lineto |
| closepath |
| 148 275 moveto |
| 208 301 lineto |
| 220 363 lineto |
| 175 379 lineto |
| 128 333 lineto |
| 130 282 lineto |
| closepath |
| fill |
| } def |
| |
| /semicolon { |
| 254 0 85 -61 227 360 setcachedevice |
| newpath |
| 119 -61 moveto |
| 175 -6 lineto |
| 212 92 lineto |
| 165 135 lineto |
| 116 115 lineto |
| 85 57 lineto |
| 120 30 lineto |
| 131 32 lineto |
| 135 26 lineto |
| 131 16 lineto |
| 93 -37 lineto |
| closepath |
| 150 246 moveto |
| 202 261 lineto |
| 227 307 lineto |
| 214 354 lineto |
| 167 360 lineto |
| 125 324 lineto |
| 120 266 lineto |
| closepath |
| fill |
| } def |
| |
| /less { |
| 474 0 114 -46 530 603 setcachedevice |
| newpath |
| 377 -46 moveto |
| 407 -35 lineto |
| 410 3 lineto |
| 265 209 lineto |
| 203 268 lineto |
| 197 275 lineto |
| 201 284 lineto |
| 528 570 lineto |
| 530 600 lineto |
| 492 603 lineto |
| 174 326 lineto |
| 114 273 lineto |
| 130 244 lineto |
| 244 144 lineto |
| closepath |
| fill |
| } def |
| |
| /equal { |
| 451 0 133 225 467 418 setcachedevice |
| newpath |
| 162 225 moveto |
| 410 252 lineto |
| 416 289 lineto |
| 286 291 lineto |
| 161 273 lineto |
| 147 237 lineto |
| 152 229 lineto |
| closepath |
| 396 351 moveto |
| 456 358 lineto |
| 464 367 lineto |
| 467 388 lineto |
| 462 395 lineto |
| 209 418 lineto |
| 146 405 lineto |
| 133 368 lineto |
| 178 358 lineto |
| closepath |
| fill |
| } def |
| |
| /greater { |
| 508 0 54 -50 508 621 setcachedevice |
| newpath |
| 76 -50 moveto |
| 294 108 lineto |
| 508 300 lineto |
| 501 335 lineto |
| 243 621 lineto |
| 204 614 lineto |
| 201 575 lineto |
| 439 314 lineto |
| 443 305 lineto |
| 435 298 lineto |
| 91 14 lineto |
| 54 -25 lineto |
| closepath |
| fill |
| } def |
| |
| /question { |
| 426 0 156 19 467 587 setcachedevice |
| newpath |
| 225 19 moveto |
| 263 41 lineto |
| 273 46 lineto |
| 301 59 lineto |
| 304 97 lineto |
| 257 127 lineto |
| 196 107 lineto |
| 188 68 lineto |
| 207 26 lineto |
| closepath |
| 272 197 moveto |
| 304 223 lineto |
| 339 324 lineto |
| 456 449 lineto |
| 467 529 lineto |
| 414 582 lineto |
| 271 587 lineto |
| 192 546 lineto |
| 156 481 lineto |
| 179 455 lineto |
| 208 469 lineto |
| 234 515 lineto |
| 306 532 lineto |
| 395 521 lineto |
| 414 490 lineto |
| 356 411 lineto |
| 273 317 lineto |
| 252 215 lineto |
| closepath |
| fill |
| } def |
| |
| /at { |
| 624 0 117 17 603 600 setcachedevice |
| newpath |
| 353 17 moveto |
| 468 46 lineto |
| 551 103 lineto |
| 603 199 lineto |
| 589 231 lineto |
| 553 211 lineto |
| 503 126 lineto |
| 403 78 lineto |
| 302 83 lineto |
| 219 143 lineto |
| 175 246 lineto |
| 189 370 lineto |
| 256 483 lineto |
| 343 533 lineto |
| 445 537 lineto |
| 505 495 lineto |
| 523 400 lineto |
| 487 287 lineto |
| 464 263 lineto |
| 454 259 lineto |
| 450 268 lineto |
| 448 368 lineto |
| 456 375 lineto |
| 474 411 lineto |
| 431 428 lineto |
| 329 402 lineto |
| 241 330 lineto |
| 207 273 lineto |
| 224 222 lineto |
| 279 208 lineto |
| 370 246 lineto |
| 379 254 lineto |
| 389 261 lineto |
| 393 254 lineto |
| 412 210 lineto |
| 470 209 lineto |
| 536 270 lineto |
| 575 368 lineto |
| 571 488 lineto |
| 528 560 lineto |
| 430 600 lineto |
| 317 580 lineto |
| 215 512 lineto |
| 153 419 lineto |
| 117 287 lineto |
| 137 163 lineto |
| 201 72 lineto |
| 304 24 lineto |
| closepath |
| 265 277 moveto |
| 337 347 lineto |
| 389 368 lineto |
| 397 365 lineto |
| 392 356 lineto |
| 326 279 lineto |
| 275 264 lineto |
| 265 268 lineto |
| closepath |
| fill |
| } def |
| |
| /A { |
| 790 0 59 -48 723 625 setcachedevice |
| newpath |
| 693 -48 moveto |
| 713 -46 lineto |
| 722 -39 lineto |
| 723 29 lineto |
| 583 524 lineto |
| 554 625 lineto |
| 515 620 lineto |
| 308 337 lineto |
| 300 330 lineto |
| 195 319 lineto |
| 186 282 lineto |
| 244 273 lineto |
| 254 270 lineto |
| 252 261 lineto |
| 59 -1 lineto |
| 79 -28 lineto |
| 122 4 lineto |
| 320 268 lineto |
| 328 275 lineto |
| 597 272 lineto |
| 601 264 lineto |
| 684 -43 lineto |
| closepath |
| 555 330 moveto |
| 376 333 lineto |
| 373 337 lineto |
| 380 347 lineto |
| 506 523 lineto |
| 514 532 lineto |
| 519 527 lineto |
| 579 342 lineto |
| 582 331 lineto |
| 575 328 lineto |
| closepath |
| fill |
| } def |
| |
| /B { |
| 606 0 76 -28 590 629 setcachedevice |
| newpath |
| 193 -28 moveto |
| 349 -14 lineto |
| 480 41 lineto |
| 566 130 lineto |
| 590 222 lineto |
| 557 300 lineto |
| 474 344 lineto |
| 406 356 lineto |
| 396 356 lineto |
| 396 363 lineto |
| 406 370 lineto |
| 485 451 lineto |
| 502 531 lineto |
| 457 588 lineto |
| 317 626 lineto |
| 204 629 lineto |
| 181 607 lineto |
| 186 451 lineto |
| 154 216 lineto |
| 84 35 lineto |
| 76 0 lineto |
| 105 -19 lineto |
| closepath |
| 194 28 moveto |
| 156 35 lineto |
| 150 41 lineto |
| 219 256 lineto |
| 221 266 lineto |
| 226 275 lineto |
| 308 301 lineto |
| 469 284 lineto |
| 524 238 lineto |
| 529 179 lineto |
| 479 104 lineto |
| 372 46 lineto |
| 215 26 lineto |
| closepath |
| 236 351 moveto |
| 246 564 lineto |
| 250 572 lineto |
| 259 574 lineto |
| 404 547 lineto |
| 446 512 lineto |
| 424 453 lineto |
| 313 372 lineto |
| 242 340 lineto |
| 234 340 lineto |
| closepath |
| fill |
| } def |
| |
| /C { |
| 609 0 107 -23 580 593 setcachedevice |
| newpath |
| 299 -23 moveto |
| 434 8 lineto |
| 552 93 lineto |
| 575 129 lineto |
| 548 150 lineto |
| 409 54 lineto |
| 316 32 lineto |
| 228 68 lineto |
| 171 165 lineto |
| 171 284 lineto |
| 218 393 lineto |
| 310 495 lineto |
| 409 540 lineto |
| 500 535 lineto |
| 552 497 lineto |
| 580 512 lineto |
| 572 559 lineto |
| 517 592 lineto |
| 405 593 lineto |
| 304 551 lineto |
| 195 451 lineto |
| 123 316 lineto |
| 107 172 lineto |
| 155 59 lineto |
| 243 -9 lineto |
| closepath |
| fill |
| } def |
| |
| /D { |
| 736 0 53 -43 741 625 setcachedevice |
| newpath |
| 79 -43 moveto |
| 265 -35 lineto |
| 442 14 lineto |
| 587 98 lineto |
| 689 206 lineto |
| 741 326 lineto |
| 738 425 lineto |
| 671 517 lineto |
| 536 586 lineto |
| 363 625 lineto |
| 206 619 lineto |
| 180 584 lineto |
| 207 564 lineto |
| 249 569 lineto |
| 258 568 lineto |
| 258 558 lineto |
| 205 237 lineto |
| 136 23 lineto |
| 133 13 lineto |
| 123 9 lineto |
| 62 4 lineto |
| 53 -32 lineto |
| closepath |
| 193 23 moveto |
| 275 289 lineto |
| 316 558 lineto |
| 319 568 lineto |
| 328 569 lineto |
| 511 532 lineto |
| 644 460 lineto |
| 689 377 lineto |
| 665 266 lineto |
| 581 158 lineto |
| 448 74 lineto |
| 272 19 lineto |
| 197 9 lineto |
| 189 13 lineto |
| closepath |
| fill |
| } def |
| |
| /E { |
| 653 0 61 -43 699 624 setcachedevice |
| newpath |
| 77 -43 moveto |
| 460 -35 lineto |
| 573 -37 lineto |
| 592 -1 lineto |
| 551 17 lineto |
| 177 14 lineto |
| 135 13 lineto |
| 127 16 lineto |
| 128 25 lineto |
| 206 358 lineto |
| 211 367 lineto |
| 222 367 lineto |
| 510 363 lineto |
| 530 388 lineto |
| 510 416 lineto |
| 219 423 lineto |
| 216 430 lineto |
| 231 564 lineto |
| 236 572 lineto |
| 246 572 lineto |
| 680 569 lineto |
| 699 596 lineto |
| 676 621 lineto |
| 198 624 lineto |
| 175 575 lineto |
| 128 246 lineto |
| 61 -20 lineto |
| closepath |
| fill |
| } def |
| |
| /F { |
| 636 0 49 -64 694 634 setcachedevice |
| newpath |
| 75 -64 moveto |
| 105 -35 lineto |
| 201 358 lineto |
| 208 363 lineto |
| 509 368 lineto |
| 534 400 lineto |
| 504 421 lineto |
| 224 421 lineto |
| 214 423 lineto |
| 216 435 lineto |
| 235 569 lineto |
| 240 578 lineto |
| 251 578 lineto |
| 653 572 lineto |
| 692 583 lineto |
| 694 620 lineto |
| 565 634 lineto |
| 214 625 lineto |
| 180 601 lineto |
| 155 407 lineto |
| 49 -54 lineto |
| 55 -61 lineto |
| closepath |
| fill |
| } def |
| |
| /G { |
| 627 0 113 -111 686 609 setcachedevice |
| newpath |
| 435 -111 moveto |
| 474 -103 lineto |
| 528 123 lineto |
| 545 275 lineto |
| 509 282 lineto |
| 491 233 lineto |
| 459 57 lineto |
| 455 48 lineto |
| 445 46 lineto |
| 291 46 lineto |
| 208 92 lineto |
| 164 186 lineto |
| 179 298 lineto |
| 245 400 lineto |
| 375 490 lineto |
| 530 546 lineto |
| 675 560 lineto |
| 686 597 lineto |
| 609 609 lineto |
| 442 577 lineto |
| 273 490 lineto |
| 167 386 lineto |
| 113 268 lineto |
| 114 137 lineto |
| 171 41 lineto |
| 273 -8 lineto |
| 425 -12 lineto |
| 435 -10 lineto |
| 444 -12 lineto |
| 443 -23 lineto |
| 430 -104 lineto |
| closepath |
| fill |
| } def |
| |
| /H { |
| 631 0 107 -43 694 629 setcachedevice |
| newpath |
| 128 -43 moveto |
| 162 -17 lineto |
| 238 314 lineto |
| 241 324 lineto |
| 252 328 lineto |
| 576 337 lineto |
| 583 333 lineto |
| 581 324 lineto |
| 513 -6 lineto |
| 549 -12 lineto |
| 582 76 lineto |
| 694 616 lineto |
| 687 624 lineto |
| 657 624 lineto |
| 649 615 lineto |
| 598 409 lineto |
| 596 398 lineto |
| 587 395 lineto |
| 264 381 lineto |
| 254 384 lineto |
| 254 393 lineto |
| 273 619 lineto |
| 239 629 lineto |
| 217 584 lineto |
| 196 389 lineto |
| 193 379 lineto |
| 182 379 lineto |
| 133 365 lineto |
| 134 328 lineto |
| 173 324 lineto |
| 183 323 lineto |
| 184 312 lineto |
| 107 -26 lineto |
| closepath |
| fill |
| } def |
| |
| /I { |
| 190 0 83 13 224 588 setcachedevice |
| newpath |
| 108 13 moveto |
| 138 43 lineto |
| 218 469 lineto |
| 224 582 lineto |
| 188 588 lineto |
| 168 541 lineto |
| 119 209 lineto |
| 83 23 lineto |
| 89 16 lineto |
| closepath |
| fill |
| } def |
| |
| /J { |
| 587 0 84 28 650 634 setcachedevice |
| newpath |
| 183 28 moveto |
| 287 46 lineto |
| 353 105 lineto |
| 421 266 lineto |
| 469 524 lineto |
| 474 555 lineto |
| 479 564 lineto |
| 489 566 lineto |
| 634 579 lineto |
| 650 616 lineto |
| 597 634 lineto |
| 241 597 lineto |
| 225 560 lineto |
| 230 552 lineto |
| 405 559 lineto |
| 415 558 lineto |
| 416 547 lineto |
| 364 268 lineto |
| 305 128 lineto |
| 252 87 lineto |
| 172 93 lineto |
| 118 143 lineto |
| 84 123 lineto |
| 99 71 lineto |
| closepath |
| fill |
| } def |
| |
| /K { |
| 554 0 78 -32 583 621 setcachedevice |
| newpath |
| 94 -32 moveto |
| 128 -8 lineto |
| 175 187 lineto |
| 182 194 lineto |
| 242 246 lineto |
| 250 254 lineto |
| 259 252 lineto |
| 448 -26 lineto |
| 478 -25 lineto |
| 494 1 lineto |
| 307 293 lineto |
| 306 301 lineto |
| 548 544 lineto |
| 583 600 lineto |
| 557 621 lineto |
| 224 296 lineto |
| 198 275 lineto |
| 191 266 lineto |
| 190 275 lineto |
| 232 614 lineto |
| 197 620 lineto |
| 174 574 lineto |
| 99 97 lineto |
| 78 -24 lineto |
| closepath |
| fill |
| } def |
| |
| /L { |
| 534 0 93 -25 484 578 setcachedevice |
| newpath |
| 120 -25 moveto |
| 381 7 lineto |
| 475 21 lineto |
| 484 50 lineto |
| 452 67 lineto |
| 160 39 lineto |
| 150 35 lineto |
| 147 43 lineto |
| 213 435 lineto |
| 217 577 lineto |
| 180 578 lineto |
| 163 519 lineto |
| 100 76 lineto |
| 93 -3 lineto |
| closepath |
| fill |
| } def |
| |
| /M { |
| 589 0 78 -43 623 620 setcachedevice |
| newpath |
| 488 -43 moveto |
| 517 -32 lineto |
| 613 421 lineto |
| 623 603 lineto |
| 592 620 lineto |
| 543 574 lineto |
| 364 266 lineto |
| 356 261 lineto |
| 354 270 lineto |
| 280 572 lineto |
| 253 609 lineto |
| 209 580 lineto |
| 93 170 lineto |
| 78 7 lineto |
| 110 -6 lineto |
| 132 28 lineto |
| 176 286 lineto |
| 238 490 lineto |
| 242 499 lineto |
| 245 488 lineto |
| 314 196 lineto |
| 358 182 lineto |
| 411 240 lineto |
| 554 493 lineto |
| 559 503 lineto |
| 565 503 lineto |
| 565 493 lineto |
| 473 -32 lineto |
| closepath |
| fill |
| } def |
| |
| /N { |
| 492 0 81 -23 548 597 setcachedevice |
| newpath |
| 102 -23 moveto |
| 112 -19 lineto |
| 137 13 lineto |
| 206 405 lineto |
| 209 446 lineto |
| 213 456 lineto |
| 216 449 lineto |
| 323 150 lineto |
| 369 -4 lineto |
| 417 4 lineto |
| 475 218 lineto |
| 548 580 lineto |
| 517 596 lineto |
| 490 563 lineto |
| 397 128 lineto |
| 390 123 lineto |
| 389 133 lineto |
| 280 460 lineto |
| 217 597 lineto |
| 177 588 lineto |
| 154 467 lineto |
| 100 97 lineto |
| 81 -4 lineto |
| closepath |
| fill |
| } def |
| |
| /O { |
| 590 0 111 2 592 583 setcachedevice |
| newpath |
| 276 2 moveto |
| 369 9 lineto |
| 465 64 lineto |
| 555 180 lineto |
| 592 312 lineto |
| 588 462 lineto |
| 536 550 lineto |
| 456 583 lineto |
| 365 565 lineto |
| 254 490 lineto |
| 167 386 lineto |
| 111 256 lineto |
| 121 128 lineto |
| 194 30 lineto |
| closepath |
| 283 61 moveto |
| 197 118 lineto |
| 165 218 lineto |
| 187 310 lineto |
| 257 423 lineto |
| 354 504 lineto |
| 437 527 lineto |
| 504 495 lineto |
| 540 395 lineto |
| 522 241 lineto |
| 465 135 lineto |
| 386 71 lineto |
| 292 59 lineto |
| closepath |
| fill |
| } def |
| |
| /P { |
| 683 0 124 -54 715 632 setcachedevice |
| newpath |
| 146 -54 moveto |
| 179 -27 lineto |
| 293 425 lineto |
| 316 570 lineto |
| 318 580 lineto |
| 327 583 lineto |
| 537 559 lineto |
| 654 495 lineto |
| 655 456 lineto |
| 584 402 lineto |
| 275 282 lineto |
| 273 245 lineto |
| 282 241 lineto |
| 511 312 lineto |
| 661 389 lineto |
| 715 460 lineto |
| 705 527 lineto |
| 614 593 lineto |
| 453 632 lineto |
| 226 632 lineto |
| 181 606 lineto |
| 187 572 lineto |
| 249 578 lineto |
| 258 578 lineto |
| 259 569 lineto |
| 190 216 lineto |
| 124 -37 lineto |
| closepath |
| fill |
| } def |
| |
| /Q { |
| 695 0 107 -64 646 566 setcachedevice |
| newpath |
| 251 -64 moveto |
| 376 -52 lineto |
| 491 14 lineto |
| 518 37 lineto |
| 526 39 lineto |
| 611 -2 lineto |
| 640 26 lineto |
| 593 68 lineto |
| 569 85 lineto |
| 563 90 lineto |
| 569 100 lineto |
| 630 239 lineto |
| 646 382 lineto |
| 583 550 lineto |
| 498 566 lineto |
| 362 538 lineto |
| 248 469 lineto |
| 165 377 lineto |
| 107 237 lineto |
| 108 98 lineto |
| 158 -2 lineto |
| closepath |
| 271 -7 moveto |
| 192 57 lineto |
| 159 156 lineto |
| 170 268 lineto |
| 234 384 lineto |
| 319 460 lineto |
| 453 509 lineto |
| 536 483 lineto |
| 585 393 lineto |
| 580 261 lineto |
| 527 130 lineto |
| 520 122 lineto |
| 513 125 lineto |
| 414 196 lineto |
| 384 184 lineto |
| 385 145 lineto |
| 474 75 lineto |
| 478 68 lineto |
| 470 61 lineto |
| 363 -2 lineto |
| closepath |
| fill |
| } def |
| |
| /R { |
| 676 0 140 -59 645 625 setcachedevice |
| newpath |
| 152 -59 moveto |
| 182 -54 lineto |
| 242 149 lineto |
| 299 521 lineto |
| 302 551 lineto |
| 302 561 lineto |
| 310 566 lineto |
| 495 536 lineto |
| 583 467 lineto |
| 583 418 lineto |
| 518 356 lineto |
| 354 291 lineto |
| 273 264 lineto |
| 276 229 lineto |
| 353 162 lineto |
| 521 0 lineto |
| 579 -57 lineto |
| 607 -41 lineto |
| 597 3 lineto |
| 428 179 lineto |
| 368 224 lineto |
| 361 230 lineto |
| 364 238 lineto |
| 374 241 lineto |
| 557 321 lineto |
| 627 393 lineto |
| 645 453 lineto |
| 613 531 lineto |
| 506 592 lineto |
| 300 625 lineto |
| 196 616 lineto |
| 178 591 lineto |
| 200 566 lineto |
| 231 569 lineto |
| 241 569 lineto |
| 246 563 lineto |
| 192 180 lineto |
| 140 -45 lineto |
| closepath |
| fill |
| } def |
| |
| /S { |
| 559 0 101 -7 526 614 setcachedevice |
| newpath |
| 253 -7 moveto |
| 388 -2 lineto |
| 482 59 lineto |
| 526 135 lineto |
| 522 233 lineto |
| 450 319 lineto |
| 216 462 lineto |
| 214 500 lineto |
| 278 542 lineto |
| 393 555 lineto |
| 489 536 lineto |
| 514 569 lineto |
| 479 597 lineto |
| 350 614 lineto |
| 225 577 lineto |
| 162 513 lineto |
| 155 453 lineto |
| 206 388 lineto |
| 421 264 lineto |
| 470 196 lineto |
| 462 116 lineto |
| 395 56 lineto |
| 280 46 lineto |
| 172 86 lineto |
| 138 152 lineto |
| 101 134 lineto |
| 122 50 lineto |
| closepath |
| fill |
| } def |
| |
| /T { |
| 705 0 160 -30 755 578 setcachedevice |
| newpath |
| 398 -30 moveto |
| 432 -4 lineto |
| 497 356 lineto |
| 505 488 lineto |
| 509 500 lineto |
| 518 501 lineto |
| 737 527 lineto |
| 755 554 lineto |
| 732 578 lineto |
| 506 564 lineto |
| 469 560 lineto |
| 314 546 lineto |
| 177 537 lineto |
| 160 501 lineto |
| 203 486 lineto |
| 444 497 lineto |
| 451 492 lineto |
| 401 109 lineto |
| 378 -13 lineto |
| closepath |
| fill |
| } def |
| |
| /U { |
| 501 0 126 2 538 643 setcachedevice |
| newpath |
| 262 2 moveto |
| 342 32 lineto |
| 436 158 lineto |
| 509 340 lineto |
| 538 536 lineto |
| 527 643 lineto |
| 489 637 lineto |
| 481 558 lineto |
| 459 363 lineto |
| 379 162 lineto |
| 300 68 lineto |
| 261 63 lineto |
| 211 128 lineto |
| 183 282 lineto |
| 209 508 lineto |
| 209 555 lineto |
| 170 549 lineto |
| 126 333 lineto |
| 142 146 lineto |
| 195 35 lineto |
| closepath |
| fill |
| } def |
| |
| /V { |
| 573 0 180 -12 639 652 setcachedevice |
| newpath |
| 310 -12 moveto |
| 350 1 lineto |
| 500 305 lineto |
| 639 634 lineto |
| 610 652 lineto |
| 578 611 lineto |
| 342 90 lineto |
| 335 87 lineto |
| 334 97 lineto |
| 263 503 lineto |
| 216 615 lineto |
| 180 600 lineto |
| 188 532 lineto |
| 251 257 lineto |
| 295 -2 lineto |
| closepath |
| fill |
| } def |
| |
| /W { |
| 724 0 170 -48 777 629 setcachedevice |
| newpath |
| 250 -48 moveto |
| 290 -39 lineto |
| 476 240 lineto |
| 482 245 lineto |
| 487 236 lineto |
| 543 8 lineto |
| 581 -12 lineto |
| 618 6 lineto |
| 677 157 lineto |
| 769 528 lineto |
| 777 629 lineto |
| 740 629 lineto |
| 718 560 lineto |
| 639 218 lineto |
| 597 85 lineto |
| 592 75 lineto |
| 585 71 lineto |
| 583 82 lineto |
| 522 316 lineto |
| 484 321 lineto |
| 396 217 lineto |
| 282 37 lineto |
| 275 32 lineto |
| 274 43 lineto |
| 231 426 lineto |
| 222 595 lineto |
| 185 597 lineto |
| 170 550 lineto |
| 206 82 lineto |
| 235 -39 lineto |
| closepath |
| fill |
| } def |
| |
| /X { |
| 658 0 96 -7 651 620 setcachedevice |
| newpath |
| 109 -7 moveto |
| 147 4 lineto |
| 379 254 lineto |
| 388 263 lineto |
| 395 259 lineto |
| 569 -6 lineto |
| 598 3 lineto |
| 603 41 lineto |
| 438 305 lineto |
| 433 314 lineto |
| 440 323 lineto |
| 646 580 lineto |
| 651 619 lineto |
| 615 620 lineto |
| 409 363 lineto |
| 400 360 lineto |
| 395 368 lineto |
| 208 614 lineto |
| 180 601 lineto |
| 178 564 lineto |
| 354 319 lineto |
| 359 310 lineto |
| 354 301 lineto |
| 96 14 lineto |
| closepath |
| fill |
| } def |
| |
| /Y { |
| 669 0 177 -75 730 632 setcachedevice |
| newpath |
| 298 -75 moveto |
| 335 -54 lineto |
| 415 252 lineto |
| 730 609 lineto |
| 717 632 lineto |
| 678 615 lineto |
| 393 303 lineto |
| 385 294 lineto |
| 380 296 lineto |
| 294 500 lineto |
| 213 602 lineto |
| 177 586 lineto |
| 189 541 lineto |
| 282 388 lineto |
| 340 194 lineto |
| 285 -61 lineto |
| closepath |
| fill |
| } def |
| |
| /Z { |
| 618 0 75 -28 631 588 setcachedevice |
| newpath |
| 103 -26 moveto |
| 404 -18 lineto |
| 546 -20 lineto |
| 555 -13 lineto |
| 550 21 lineto |
| 274 39 lineto |
| 192 35 lineto |
| 182 37 lineto |
| 188 45 lineto |
| 416 282 lineto |
| 631 559 lineto |
| 614 587 lineto |
| 201 588 lineto |
| 171 559 lineto |
| 182 535 lineto |
| 534 532 lineto |
| 544 532 lineto |
| 543 523 lineto |
| 268 192 lineto |
| 75 1 lineto |
| 93 -28 lineto |
| closepath |
| fill |
| } def |
| |
| /bracketleft { |
| 330 0 54 -122 370 676 setcachedevice |
| newpath |
| 125 -122 moveto |
| 239 -104 lineto |
| 254 -75 lineto |
| 251 -67 lineto |
| 204 -59 lineto |
| 121 -64 lineto |
| 114 -57 lineto |
| 116 -48 lineto |
| 236 583 lineto |
| 239 603 lineto |
| 243 612 lineto |
| 253 614 lineto |
| 358 633 lineto |
| 370 670 lineto |
| 322 676 lineto |
| 208 661 lineto |
| 182 615 lineto |
| 78 24 lineto |
| 54 -98 lineto |
| 95 -119 lineto |
| closepath |
| fill |
| } def |
| |
| /backslash { |
| 602 0 188 -79 528 657 setcachedevice |
| newpath |
| 509 -79 moveto |
| 519 -76 lineto |
| 527 -70 lineto |
| 528 -20 lineto |
| 266 592 lineto |
| 226 657 lineto |
| 188 643 lineto |
| 194 596 lineto |
| 383 167 lineto |
| 489 -75 lineto |
| closepath |
| fill |
| } def |
| |
| /bracketright { |
| 349 0 62 -127 412 703 setcachedevice |
| newpath |
| 90 -127 moveto |
| 255 -100 lineto |
| 278 -52 lineto |
| 317 254 lineto |
| 412 680 lineto |
| 384 703 lineto |
| 198 693 lineto |
| 191 656 lineto |
| 331 643 lineto |
| 342 644 lineto |
| 347 639 lineto |
| 345 629 lineto |
| 240 141 lineto |
| 221 -43 lineto |
| 219 -52 lineto |
| 209 -57 lineto |
| 64 -82 lineto |
| 62 -119 lineto |
| closepath |
| fill |
| } def |
| |
| /asciicircum { |
| 457 0 131 330 474 547 setcachedevice |
| newpath |
| 159 330 moveto |
| 259 405 lineto |
| 319 474 lineto |
| 326 476 lineto |
| 331 469 lineto |
| 443 356 lineto |
| 474 386 lineto |
| 394 488 lineto |
| 334 547 lineto |
| 282 510 lineto |
| 187 416 lineto |
| 131 360 lineto |
| 149 330 lineto |
| closepath |
| fill |
| } def |
| |
| /underscore { |
| 780 0 60 -59 716 14 setcachedevice |
| newpath |
| 489 -59 moveto |
| 696 -54 lineto |
| 716 -19 lineto |
| 686 -2 lineto |
| 98 14 lineto |
| 60 4 lineto |
| 60 -32 lineto |
| 261 -52 lineto |
| closepath |
| fill |
| } def |
| |
| /quoteleft { |
| 284 0 186 486 325 674 setcachedevice |
| newpath |
| 287 486 moveto |
| 325 504 lineto |
| 313 560 lineto |
| 228 674 lineto |
| 198 671 lineto |
| 186 633 lineto |
| 265 517 lineto |
| closepath |
| fill |
| } def |
| |
| /a { |
| 564 0 71 -59 511 442 setcachedevice |
| newpath |
| 237 -59 moveto |
| 466 -41 lineto |
| 501 -14 lineto |
| 511 208 lineto |
| 481 330 lineto |
| 410 404 lineto |
| 301 442 lineto |
| 207 425 lineto |
| 180 395 lineto |
| 194 372 lineto |
| 307 384 lineto |
| 406 328 lineto |
| 446 244 lineto |
| 447 233 lineto |
| 445 224 lineto |
| 437 228 lineto |
| 310 252 lineto |
| 195 225 lineto |
| 98 150 lineto |
| 71 59 lineto |
| 117 -21 lineto |
| 217 -57 lineto |
| closepath |
| 233 -2 moveto |
| 153 28 lineto |
| 130 90 lineto |
| 163 144 lineto |
| 252 189 lineto |
| 363 189 lineto |
| 440 153 lineto |
| 448 97 lineto |
| 442 27 lineto |
| 439 17 lineto |
| 430 10 lineto |
| 253 -4 lineto |
| closepath |
| fill |
| } def |
| |
| /b { |
| 570 0 82 -25 546 616 setcachedevice |
| newpath |
| 103 -25 moveto |
| 136 0 lineto |
| 145 2 lineto |
| 324 -19 lineto |
| 428 6 lineto |
| 511 79 lineto |
| 546 180 lineto |
| 523 252 lineto |
| 451 296 lineto |
| 299 301 lineto |
| 196 270 lineto |
| 188 270 lineto |
| 188 280 lineto |
| 230 616 lineto |
| 193 616 lineto |
| 165 527 lineto |
| 82 -8 lineto |
| closepath |
| 267 39 moveto |
| 160 59 lineto |
| 152 64 lineto |
| 152 74 lineto |
| 177 199 lineto |
| 186 207 lineto |
| 289 245 lineto |
| 432 239 lineto |
| 484 201 lineto |
| 479 130 lineto |
| 423 61 lineto |
| 329 35 lineto |
| closepath |
| fill |
| } def |
| |
| /c { |
| 530 0 96 -28 500 435 setcachedevice |
| newpath |
| 275 -28 moveto |
| 420 -16 lineto |
| 470 3 lineto |
| 469 39 lineto |
| 284 28 lineto |
| 176 68 lineto |
| 147 126 lineto |
| 172 238 lineto |
| 241 340 lineto |
| 333 379 lineto |
| 431 368 lineto |
| 465 314 lineto |
| 500 333 lineto |
| 500 381 lineto |
| 442 428 lineto |
| 342 435 lineto |
| 239 398 lineto |
| 158 319 lineto |
| 96 180 lineto |
| 96 81 lineto |
| 147 16 lineto |
| 254 -25 lineto |
| closepath |
| fill |
| } def |
| |
| /d { |
| 586 0 87 -28 616 615 setcachedevice |
| newpath |
| 322 -28 moveto |
| 496 -14 lineto |
| 529 14 lineto |
| 524 71 lineto |
| 616 601 lineto |
| 583 615 lineto |
| 558 580 lineto |
| 513 300 lineto |
| 510 289 lineto |
| 503 289 lineto |
| 406 331 lineto |
| 262 328 lineto |
| 160 284 lineto |
| 100 204 lineto |
| 87 114 lineto |
| 128 28 lineto |
| 212 -13 lineto |
| closepath |
| 252 35 moveto |
| 174 72 lineto |
| 144 152 lineto |
| 172 223 lineto |
| 248 268 lineto |
| 372 277 lineto |
| 462 243 lineto |
| 493 224 lineto |
| 498 217 lineto |
| 462 50 lineto |
| 458 39 lineto |
| 448 35 lineto |
| closepath |
| fill |
| } def |
| |
| /e { |
| 470 0 90 -12 424 409 setcachedevice |
| newpath |
| 241 -12 moveto |
| 345 8 lineto |
| 424 72 lineto |
| 419 108 lineto |
| 381 97 lineto |
| 295 46 lineto |
| 214 50 lineto |
| 159 100 lineto |
| 147 158 lineto |
| 153 165 lineto |
| 278 197 lineto |
| 370 259 lineto |
| 391 321 lineto |
| 351 395 lineto |
| 284 409 lineto |
| 195 365 lineto |
| 109 246 lineto |
| 90 134 lineto |
| 128 37 lineto |
| 201 -7 lineto |
| closepath |
| 163 236 moveto |
| 228 328 lineto |
| 288 354 lineto |
| 326 326 lineto |
| 328 287 lineto |
| 207 229 lineto |
| 166 221 lineto |
| 158 225 lineto |
| closepath |
| fill |
| } def |
| |
| /f { |
| 498 0 108 -30 534 587 setcachedevice |
| newpath |
| 194 -30 moveto |
| 228 -7 lineto |
| 247 207 lineto |
| 255 212 lineto |
| 319 219 lineto |
| 326 226 lineto |
| 332 257 lineto |
| 326 264 lineto |
| 265 268 lineto |
| 257 270 lineto |
| 256 280 lineto |
| 291 476 lineto |
| 334 526 lineto |
| 424 522 lineto |
| 474 481 lineto |
| 491 437 lineto |
| 521 444 lineto |
| 534 481 lineto |
| 500 549 lineto |
| 402 587 lineto |
| 308 572 lineto |
| 247 507 lineto |
| 204 342 lineto |
| 197 270 lineto |
| 190 263 lineto |
| 108 244 lineto |
| 108 207 lineto |
| 178 207 lineto |
| 189 208 lineto |
| 192 200 lineto |
| 178 -21 lineto |
| closepath |
| fill |
| } def |
| |
| /g { |
| 528 0 22 -319 499 356 setcachedevice |
| newpath |
| 234 -319 moveto |
| 317 -307 lineto |
| 384 -247 lineto |
| 448 -98 lineto |
| 499 180 lineto |
| 496 317 lineto |
| 410 356 lineto |
| 295 337 lineto |
| 179 268 lineto |
| 103 172 lineto |
| 74 70 lineto |
| 95 7 lineto |
| 158 -12 lineto |
| 272 17 lineto |
| 374 89 lineto |
| 432 158 lineto |
| 437 164 lineto |
| 438 153 lineto |
| 388 -112 lineto |
| 326 -241 lineto |
| 266 -264 lineto |
| 42 -201 lineto |
| 22 -236 lineto |
| 114 -282 lineto |
| closepath |
| 136 56 moveto |
| 145 136 lineto |
| 201 217 lineto |
| 295 280 lineto |
| 398 296 lineto |
| 425 289 lineto |
| 433 284 lineto |
| 432 273 lineto |
| 354 141 lineto |
| 254 67 lineto |
| 160 43 lineto |
| closepath |
| fill |
| } def |
| |
| /h { |
| 505 0 91 -41 485 615 setcachedevice |
| newpath |
| 404 -41 moveto |
| 439 -14 lineto |
| 485 201 lineto |
| 468 317 lineto |
| 414 367 lineto |
| 341 351 lineto |
| 213 237 lineto |
| 192 209 lineto |
| 184 204 lineto |
| 182 215 lineto |
| 232 606 lineto |
| 197 615 lineto |
| 175 579 lineto |
| 103 93 lineto |
| 91 1 lineto |
| 114 -12 lineto |
| 125 -8 lineto |
| 159 43 lineto |
| 247 199 lineto |
| 345 293 lineto |
| 395 308 lineto |
| 425 241 lineto |
| 410 87 lineto |
| 384 -24 lineto |
| closepath |
| fill |
| } def |
| |
| /i { |
| 295 0 134 -18 315 523 setcachedevice |
| newpath |
| 157 -18 moveto |
| 188 8 lineto |
| 230 215 lineto |
| 226 363 lineto |
| 188 360 lineto |
| 173 291 lineto |
| 157 97 lineto |
| 134 -4 lineto |
| closepath |
| 284 389 moveto |
| 315 400 lineto |
| 315 437 lineto |
| 191 523 lineto |
| 159 497 lineto |
| 191 453 lineto |
| closepath |
| fill |
| } def |
| |
| /j { |
| 406 0 38 -188 428 527 setcachedevice |
| newpath |
| 128 -188 moveto |
| 189 -172 lineto |
| 260 -86 lineto |
| 319 86 lineto |
| 341 351 lineto |
| 304 356 lineto |
| 295 349 lineto |
| 254 43 lineto |
| 194 -97 lineto |
| 151 -134 lineto |
| 94 -101 lineto |
| 61 -86 lineto |
| 38 -108 lineto |
| 61 -156 lineto |
| closepath |
| 394 391 moveto |
| 428 414 lineto |
| 413 446 lineto |
| 296 527 lineto |
| 262 504 lineto |
| 277 472 lineto |
| closepath |
| fill |
| } def |
| |
| /k { |
| 434 0 81 -39 384 609 setcachedevice |
| newpath |
| 106 -39 moveto |
| 135 -8 lineto |
| 166 115 lineto |
| 217 160 lineto |
| 227 165 lineto |
| 234 159 lineto |
| 314 34 lineto |
| 339 -4 lineto |
| 376 12 lineto |
| 357 85 lineto |
| 279 202 lineto |
| 273 209 lineto |
| 279 217 lineto |
| 384 321 lineto |
| 376 347 lineto |
| 337 340 lineto |
| 194 208 lineto |
| 187 200 lineto |
| 179 202 lineto |
| 179 211 lineto |
| 224 601 lineto |
| 217 609 lineto |
| 180 600 lineto |
| 145 393 lineto |
| 89 32 lineto |
| 81 -26 lineto |
| closepath |
| fill |
| } def |
| |
| /l { |
| 190 0 79 -2 226 592 setcachedevice |
| newpath |
| 105 -2 moveto |
| 134 25 lineto |
| 226 577 lineto |
| 205 592 lineto |
| 173 569 lineto |
| 79 28 lineto |
| 96 -2 lineto |
| closepath |
| fill |
| } def |
| |
| /m { |
| 661 0 112 -41 613 382 setcachedevice |
| newpath |
| 557 -39 moveto |
| 566 -41 lineto |
| 576 -37 lineto |
| 600 -1 lineto |
| 613 210 lineto |
| 570 317 lineto |
| 526 333 lineto |
| 472 293 lineto |
| 423 218 lineto |
| 417 209 lineto |
| 412 209 lineto |
| 412 218 lineto |
| 375 338 lineto |
| 327 367 lineto |
| 270 340 lineto |
| 193 241 lineto |
| 189 240 lineto |
| 187 250 lineto |
| 176 379 lineto |
| 139 382 lineto |
| 127 335 lineto |
| 121 92 lineto |
| 112 10 lineto |
| 147 1 lineto |
| 156 7 lineto |
| 228 200 lineto |
| 308 307 lineto |
| 317 308 lineto |
| 325 303 lineto |
| 355 193 lineto |
| 347 -8 lineto |
| 373 -16 lineto |
| 400 14 lineto |
| 470 197 lineto |
| 512 263 lineto |
| 519 272 lineto |
| 527 268 lineto |
| 558 157 lineto |
| 544 -25 lineto |
| closepath |
| fill |
| } def |
| |
| /n { |
| 484 0 107 -64 446 423 setcachedevice |
| newpath |
| 122 -64 moveto |
| 142 -61 lineto |
| 152 -54 lineto |
| 262 206 lineto |
| 349 323 lineto |
| 358 324 lineto |
| 365 317 lineto |
| 388 164 lineto |
| 369 -18 lineto |
| 404 -28 lineto |
| 427 17 lineto |
| 446 222 lineto |
| 414 354 lineto |
| 368 384 lineto |
| 309 356 lineto |
| 210 219 lineto |
| 203 210 lineto |
| 196 215 lineto |
| 197 224 lineto |
| 194 405 lineto |
| 163 423 lineto |
| 138 391 lineto |
| 136 160 lineto |
| 107 -54 lineto |
| closepath |
| fill |
| } def |
| |
| /o { |
| 551 0 98 23 534 405 setcachedevice |
| newpath |
| 245 23 moveto |
| 349 35 lineto |
| 465 104 lineto |
| 530 195 lineto |
| 534 286 lineto |
| 467 388 lineto |
| 392 405 lineto |
| 246 365 lineto |
| 138 280 lineto |
| 98 193 lineto |
| 111 105 lineto |
| 179 41 lineto |
| closepath |
| 237 83 moveto |
| 167 130 lineto |
| 155 197 lineto |
| 201 272 lineto |
| 308 333 lineto |
| 411 347 lineto |
| 475 270 lineto |
| 473 200 lineto |
| 418 129 lineto |
| 318 81 lineto |
| closepath |
| fill |
| } def |
| |
| /p { |
| 530 0 0 -317 497 356 setcachedevice |
| newpath |
| 21 -317 moveto |
| 53 -289 lineto |
| 128 -32 lineto |
| 133 -23 lineto |
| 142 -17 lineto |
| 320 -4 lineto |
| 432 41 lineto |
| 494 120 lineto |
| 497 201 lineto |
| 435 282 lineto |
| 306 342 lineto |
| 198 356 lineto |
| 148 335 lineto |
| 44 -138 lineto |
| 0 -301 lineto |
| closepath |
| 160 39 moveto |
| 150 39 lineto |
| 147 46 lineto |
| 189 286 lineto |
| 191 296 lineto |
| 199 301 lineto |
| 333 270 lineto |
| 425 207 lineto |
| 444 143 lineto |
| 408 87 lineto |
| 296 45 lineto |
| closepath |
| fill |
| } def |
| |
| /q { |
| 476 0 83 -291 468 377 setcachedevice |
| newpath |
| 334 -291 moveto |
| 363 -261 lineto |
| 468 368 lineto |
| 392 377 lineto |
| 278 342 lineto |
| 153 245 lineto |
| 83 119 lineto |
| 87 21 lineto |
| 145 -24 lineto |
| 236 -17 lineto |
| 340 48 lineto |
| 355 64 lineto |
| 363 71 lineto |
| 367 68 lineto |
| 308 -282 lineto |
| closepath |
| 174 28 moveto |
| 136 67 lineto |
| 151 148 lineto |
| 235 254 lineto |
| 344 312 lineto |
| 397 319 lineto |
| 406 317 lineto |
| 407 307 lineto |
| 351 143 lineto |
| 275 59 lineto |
| 194 26 lineto |
| closepath |
| fill |
| } def |
| |
| /r { |
| 468 0 71 0 463 425 setcachedevice |
| newpath |
| 87 0 moveto |
| 122 25 lineto |
| 179 294 lineto |
| 267 338 lineto |
| 347 333 lineto |
| 402 282 lineto |
| 428 256 lineto |
| 463 279 lineto |
| 427 354 lineto |
| 342 395 lineto |
| 239 388 lineto |
| 199 370 lineto |
| 189 370 lineto |
| 189 379 lineto |
| 182 425 lineto |
| 152 421 lineto |
| 128 340 lineto |
| 71 8 lineto |
| closepath |
| fill |
| } def |
| |
| /s { |
| 520 0 53 -64 470 405 setcachedevice |
| newpath |
| 142 -64 moveto |
| 309 -52 lineto |
| 421 -7 lineto |
| 470 52 lineto |
| 469 109 lineto |
| 386 185 lineto |
| 248 268 lineto |
| 245 277 lineto |
| 248 286 lineto |
| 380 347 lineto |
| 449 347 lineto |
| 461 384 lineto |
| 421 405 lineto |
| 306 377 lineto |
| 202 310 lineto |
| 185 261 lineto |
| 230 202 lineto |
| 408 93 lineto |
| 415 57 lineto |
| 349 14 lineto |
| 214 -9 lineto |
| 67 4 lineto |
| 53 -32 lineto |
| closepath |
| fill |
| } def |
| |
| /t { |
| 485 0 122 -9 498 497 setcachedevice |
| newpath |
| 300 -9 moveto |
| 328 20 lineto |
| 361 300 lineto |
| 363 310 lineto |
| 373 312 lineto |
| 488 328 lineto |
| 498 365 lineto |
| 451 375 lineto |
| 378 368 lineto |
| 370 370 lineto |
| 371 381 lineto |
| 372 493 lineto |
| 336 497 lineto |
| 317 449 lineto |
| 312 377 lineto |
| 311 365 lineto |
| 303 361 lineto |
| 136 340 lineto |
| 122 312 lineto |
| 151 291 lineto |
| 297 307 lineto |
| 306 303 lineto |
| 304 293 lineto |
| 274 -2 lineto |
| closepath |
| fill |
| } def |
| |
| /u { |
| 525 0 106 -23 517 435 setcachedevice |
| newpath |
| 428 -23 moveto |
| 464 -1 lineto |
| 517 428 lineto |
| 482 435 lineto |
| 461 388 lineto |
| 434 202 lineto |
| 427 193 lineto |
| 277 70 lineto |
| 217 54 lineto |
| 178 92 lineto |
| 164 218 lineto |
| 194 416 lineto |
| 170 428 lineto |
| 140 400 lineto |
| 106 153 lineto |
| 136 43 lineto |
| 185 0 lineto |
| 267 8 lineto |
| 379 85 lineto |
| 414 115 lineto |
| 421 119 lineto |
| 422 109 lineto |
| 414 -10 lineto |
| closepath |
| fill |
| } def |
| |
| /v { |
| 433 0 135 13 461 462 setcachedevice |
| newpath |
| 219 13 moveto |
| 258 23 lineto |
| 461 444 lineto |
| 432 462 lineto |
| 398 421 lineto |
| 264 157 lineto |
| 257 146 lineto |
| 253 151 lineto |
| 198 356 lineto |
| 172 395 lineto |
| 135 377 lineto |
| 175 230 lineto |
| closepath |
| fill |
| } def |
| |
| /w { |
| 673 0 127 2 699 455 setcachedevice |
| newpath |
| 448 2 moveto |
| 496 18 lineto |
| 699 432 lineto |
| 674 455 lineto |
| 637 414 lineto |
| 483 108 lineto |
| 478 98 lineto |
| 474 107 lineto |
| 437 338 lineto |
| 403 365 lineto |
| 358 333 lineto |
| 257 126 lineto |
| 252 115 lineto |
| 245 119 lineto |
| 169 368 lineto |
| 132 361 lineto |
| 127 312 lineto |
| 219 19 lineto |
| 259 20 lineto |
| 317 127 lineto |
| 383 266 lineto |
| 388 275 lineto |
| 395 275 lineto |
| 395 264 lineto |
| 433 13 lineto |
| closepath |
| fill |
| } def |
| |
| /x { |
| 494 0 64 2 453 414 setcachedevice |
| newpath |
| 78 2 moveto |
| 118 10 lineto |
| 276 160 lineto |
| 285 168 lineto |
| 293 165 lineto |
| 409 30 lineto |
| 444 52 lineto |
| 427 93 lineto |
| 333 212 lineto |
| 333 222 lineto |
| 452 386 lineto |
| 453 405 lineto |
| 447 414 lineto |
| 408 409 lineto |
| 308 272 lineto |
| 300 263 lineto |
| 292 263 lineto |
| 178 412 lineto |
| 140 398 lineto |
| 148 352 lineto |
| 251 216 lineto |
| 250 208 lineto |
| 64 25 lineto |
| closepath |
| fill |
| } def |
| |
| /y { |
| 537 0 126 -268 546 381 setcachedevice |
| newpath |
| 164 -268 moveto |
| 201 -254 lineto |
| 546 344 lineto |
| 540 381 lineto |
| 502 374 lineto |
| 334 72 lineto |
| 328 70 lineto |
| 323 78 lineto |
| 164 342 lineto |
| 134 340 lineto |
| 126 333 lineto |
| 127 294 lineto |
| 291 8 lineto |
| 289 0 lineto |
| 154 -252 lineto |
| closepath |
| fill |
| } def |
| |
| /z { |
| 595 0 129 -14 576 386 setcachedevice |
| newpath |
| 149 -14 moveto |
| 441 -7 lineto |
| 532 -8 lineto |
| 540 28 lineto |
| 404 52 lineto |
| 278 48 lineto |
| 268 48 lineto |
| 267 56 lineto |
| 275 64 lineto |
| 574 331 lineto |
| 576 368 lineto |
| 499 381 lineto |
| 159 386 lineto |
| 131 356 lineto |
| 144 333 lineto |
| 486 328 lineto |
| 495 326 lineto |
| 489 319 lineto |
| 211 79 lineto |
| 129 19 lineto |
| 140 -12 lineto |
| closepath |
| fill |
| } def |
| |
| /braceleft { |
| 377 0 120 -75 417 672 setcachedevice |
| newpath |
| 265 -75 moveto |
| 295 -72 lineto |
| 309 -35 lineto |
| 211 35 lineto |
| 222 136 lineto |
| 261 268 lineto |
| 231 300 lineto |
| 205 312 lineto |
| 199 319 lineto |
| 209 323 lineto |
| 276 358 lineto |
| 316 541 lineto |
| 358 606 lineto |
| 417 635 lineto |
| 416 672 lineto |
| 367 670 lineto |
| 296 615 lineto |
| 246 505 lineto |
| 229 393 lineto |
| 226 386 lineto |
| 215 381 lineto |
| 135 342 lineto |
| 120 303 lineto |
| 178 259 lineto |
| 196 252 lineto |
| 199 245 lineto |
| 151 59 lineto |
| 170 -13 lineto |
| closepath |
| fill |
| } def |
| |
| /bar { |
| 212 0 86 -68 237 657 setcachedevice |
| newpath |
| 116 -68 moveto |
| 144 -35 lineto |
| 219 419 lineto |
| 237 653 lineto |
| 201 657 lineto |
| 181 610 lineto |
| 118 125 lineto |
| 86 -50 lineto |
| closepath |
| fill |
| } def |
| |
| /braceright { |
| 348 0 58 -127 341 663 setcachedevice |
| newpath |
| 76 -127 moveto |
| 179 -97 lineto |
| 243 -35 lineto |
| 266 148 lineto |
| 263 196 lineto |
| 262 206 lineto |
| 270 212 lineto |
| 341 268 lineto |
| 336 305 lineto |
| 286 345 lineto |
| 317 467 lineto |
| 330 579 lineto |
| 293 644 lineto |
| 228 663 lineto |
| 189 648 lineto |
| 186 611 lineto |
| 253 597 lineto |
| 274 536 lineto |
| 225 342 lineto |
| 249 291 lineto |
| 266 282 lineto |
| 271 275 lineto |
| 266 270 lineto |
| 204 222 lineto |
| 200 21 lineto |
| 178 -35 lineto |
| 99 -67 lineto |
| 60 -82 lineto |
| 58 -119 lineto |
| closepath |
| fill |
| } def |
| |
| /asciitilde { |
| 488 0 125 280 504 414 setcachedevice |
| newpath |
| 337 280 moveto |
| 409 296 lineto |
| 504 379 lineto |
| 495 414 lineto |
| 456 402 lineto |
| 376 338 lineto |
| 305 365 lineto |
| 229 400 lineto |
| 168 377 lineto |
| 125 328 lineto |
| 135 303 lineto |
| 174 316 lineto |
| 218 344 lineto |
| closepath |
| fill |
| } def |
| |
| end |
| /BuildChar { |
| exch begin |
| Encoding exch get |
| CharProcs exch get |
| end |
| exec |
| } def |
| end |
| /whaeberli F_whaeberli definefont pop |
| %%EndFont |
| %%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]/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[2 index currentdict |
| end definefont 3 -1 roll makefont /setfont load]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{/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 false 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 /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 /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 |
| TeXDict begin @defspecial |
| |
| userdict begin /start-hook { /cshow {dup stringwidth pop 2 div neg |
| 0 rmoveto show} def} def /bop-hook{ gsave /Times-Roman findfont 10 |
| scalefont setfont 306 20 translate 0 0 moveto (Version 1.2 - 4 March 1997) |
| cshow grestore} def end |
| |
| @fedspecial end TeXDict begin |
| 40258437 52099154 1000 300 300 (glxspec.dvi) @start /Fa |
| 2 63 df<EC01C0EC0780EC1E001478EB01E0EB0780010EC7FC133813F0EA03C0000FC8FC |
| 123C12F0A2123C120FEA03C0EA00F01338130E6D7EEB01E0EB0078141EEC0780EC01C01A |
| 1A7C9723>60 D<12E01278121EEA0780EA01E0EA0078131C1307EB03C0EB00F0143C140F |
| EC03C0A2EC0F00143C14F0EB03C049C7FC131C1378EA01E0EA0780001EC8FC127812E01A |
| 1A7C9723>62 D E /Fb 61 123 df<90380FF07F90397FF9FF809039F83FC7C03901E07F |
| 8F0003140FEA07C091383F07806EC7FCA5B612F8A22607C01FC7FCB0393FF8FFF0A22220 |
| 809F1F>11 D<EB0FE0EB7FF8EBF81C3801E07C1203EA07C0A2143891C7FCA3EBC1FEB5FC |
| A23807C03EB0393FF9FFC0A21A20809F1D>I<1330136013C0EA01801203EA07005A120E |
| 121E121C123CA212381278A412F85AA97E1278A41238123CA2121C121E120E120F7EEA03 |
| 801201EA00C0136013300C2D7CA114>40 D<12C012607E7E121C7E120F7E1380120313C0 |
| A2120113E0A413F01200A9120113E0A413C01203A21380120713005A120E5A12185A5A5A |
| 0C2D7DA114>I<13E0487E6C5AA23870E1C038F8E3E0EAFCE7387E4FC0380F5E00EA03F8 |
| A2EA0F5E387E4FC038FCE7E0EAF8E33870E1C03800E000A2487E6C5A13147DA11A>I<EA |
| FFF0A40C047F8B11>45 D<1238127C12FEA3127C123807077C860F>I<137013F0120712 |
| FF12F91201B3A4387FFFC0A2121D7D9C1A>49 D<EA03FC381FFF8038381FC0387C07E038 |
| FE03F0A214F81301127C1238EA000314F0A2EB07E0EB0FC01400131E5B13705B3801C018 |
| EA0380EA0600481338381FFFF05A5AB5FCA2151D7E9C1A>I<EA03FC380FFF80381C0FC0 |
| 383C07E0387E03F0A31307003C13E01200EB0FC0EB3F803803FE005B38000F80EB07C0EB |
| 03E014F014F81238127C12FEA214F012FC387807E0383C0FC0381FFF803803FC00151D7E |
| 9C1A>I<EB01C013031307A2130F131F133B1373136313C3EA01831203EA0703120E120C |
| 12181238127012E0B512FEA2380007C0A6EBFFFEA2171D7F9C1A>I<001C13E0EA1FFF14 |
| C01480140013FC13C00018C7FCA4EA19FE381FFF80381E07C0381803E0381001F0120014 |
| F8A2127812FCA314F0EA7803007013E0383C0FC0380FFF00EA03FC151D7E9C1A>I<133F |
| 3801FFC03807C0E0EA0F81381F03F0121E123E127CEB01E090C7FCEAFC1013FF00FD13C0 |
| EB03E038FE01F0A200FC13F8A4127CA3003C13F0123E381E03E0380F07C03807FF803801 |
| FE00151D7E9C1A>I<1260387FFFF8A214F014E014C038E0018038C00300A21306C65A5B |
| 13381330137013F0A2485AA21203A41207A56C5A6C5A151E7D9D1A>I<EA01FE380FFF80 |
| 381E07C0383801E0EB00F01278A2127C127FEBC1E0383FE3C0381FFF80380FFE003807FF |
| 8014C0001F13E0383C3FF0EA780FEB03F8EAF00113001478A214701278007C13E0383E03 |
| C0380FFF803803FC00151D7E9C1A>I<14E0A2497EA3497EA2EB06FCA2EB0EFEEB0C7EA2 |
| 497EA201307F141F01707FEB600FA2496C7E90B5FC4880EB8003000380EB0001A200066D |
| 7EA2000E803AFFE00FFFE0A2231F7E9E28>65 D<B512FEECFFC03907C007E0EC03F0EC01 |
| F815FCA515F8140315F0EC0FE090B5128015C09038C003F0EC01F815FC140015FEA515FC |
| 1401EC03F8EC07F0B612E015001F1F7E9E25>I<903807FC0290383FFF0E9038FE03DE39 |
| 03F000FE4848133E4848131E485A48C7120EA2481406127EA200FE1400A7127E1506127F |
| 7E150C6C7E6C6C13186C6C13386C6C13703900FE01C090383FFF80903807FC001F1F7D9E |
| 26>I<B512FEECFFC03907E007F0EC01F86E7E157E81A2ED1F80A316C0A91680A3ED3F00 |
| A2157E5D4A5AEC07F0B612C04AC7FC221F7E9E28>I<B612E0A23807E007140114001560 |
| 15701530A21430A21500147014F013FFA213E014701430150CA214001518A31538157815 |
| F8EC03F0B6FCA21E1F7E9E22>I<B612E0A23807E00714011400156015701530A21430A2 |
| 1500147014F013FFA213E014701430A391C7FCA8B57EA21C1F7E9E21>I<903807FC0290 |
| 383FFF0E9038FE03DE3903F000FE4848133E4848131E485A48C7120EA2481406127EA200 |
| FE91C7FCA591381FFFE0A2007E9038007E00A2127F7EA26C7E6C7E6C7E6C6C13FE3800FE |
| 0190383FFF8E903807FC06231F7D9E29>I<B5FCA2EA07E0B3A9B5FCA2101F7E9E14>73 |
| D<B5EBFFE0A2D807E0EB1E0015185D5D4A5A4A5A0206C7FC5C5C5C14F0EBE1F813E3EBE6 |
| FCEBEC7EEBF87F497E496C7E6E7E8114076E7E6E7E6E7EA2157E157FB53803FFF0A2241F |
| 7E9E29>75 D<B57EA2D807E0C7FCB115C0A31401A3EC0380A2140F141FB6FCA21A1F7E9E |
| 1F>I<D8FFE0EC3FF86D147F00071600D806F814DFA3017CEB019FA26DEB031FA26D1306 |
| A290380F800CA2903807C018A3903803E030A2903801F060A2903800F8C0A2EC7D80A2EC |
| 3F00A3141ED8FFF0903803FFF8140C2D1F7E9E32>I<D8FFE0EBFFF07F0007EC06007FEA |
| 06FC137E7F1480131FEB0FC0EB07E0EB03F0EB01F814FC1300147E143FEC1F8615C6EC0F |
| E61407EC03F6EC01FE1400A2157E153E151E150ED8FFF01306A2241F7E9E29>I<EB1FF8 |
| 90B5FC3901F81F803907E007E0390FC003F0391F8001F890C7FC4814FC4814FE007E147E |
| A200FE147FA9007E147E007F14FEA26C14FCEB8001001F14F8390FC003F03907E007E039 |
| 01F81F806CB51200EB1FF8201F7D9E27>I<B512FEECFF803907E00FE0EC03F0EC01F8A2 |
| 15FCA515F8A2EC03F0EC0FE090B51280ECFE0001E0C7FCACB5FCA21E1F7E9E24>I<EB1F |
| F890B5FC3901F81F803907E007E0390FC003F0391F8001F8A248C712FC4814FEA2007E14 |
| 7E00FE147FA9007E147EA2007F14FE6C14FCEB87C1391F8FE1F8390FD833F03907F81FE0 |
| 000114806CB5120090381FFE03EB000EEC0F0715FF8015FEA2EC03FCEC01F8EC00F02028 |
| 7D9E27>I<B512FCECFF803907E00FE0EC03F081140181A45D14035DEC0FE090B5128002 |
| FCC7FCEBE03FEC0F8081140781A381A31630EC03F802011360B53800FFC0ED3F80241F7E |
| 9E27>I<3803FC08380FFF38381E03F8EA3800481378143812F01418A26C13007EEA7FC0 |
| 13FE383FFF806C13C06C13E06C13F0C613F81307EB00FC147C143C12C0A36C1338147800 |
| F8137038FE01E038EFFFC000811300161F7D9E1D>I<007FB512FCA2397C07E07C007014 |
| 1C0060140CA200E0140E00C01406A400001400B10003B512C0A21F1E7E9D24>I<B53801 |
| FFE0A23A07E0000C00B3A400035C6C7E5D6C6C5B90387E03C090381FFF80D903FCC7FC23 |
| 1F7E9E28>I<D8FFFEEB3FF8A2D80FE0EB0380000715006D5B000314067F00015C7F0000 |
| 5CA2017E5BA2017F13706D1360EC80E0011F5B14C090380FC180A2D907E3C7FCA2EB03F6 |
| A214FE6D5AA26D5AA21470A2251F7F9E28>I<3CFFFC0FFFC0FFE0A23C0FC000FC000E00 |
| 7F00076E130CA26D151C0003D901BF1318A2D801F85D9138031F80A22600FC076D5AEC06 |
| 0F01FE15E0903A7E0C07E0C0A2013FECE18091381803F1A2D91FB801FBC7FCECB00102F0 |
| 13FF6D486C5AA201075C4A137CA2010314784A133801011430331F7F9E36>I<3AFFFE07 |
| FF80A23A07F000700000035C6D5B6C6C485A3800FE03D97E07C7FCEB7F06EB3F8CEB1FDC |
| EB0FF85C13076D7EA28080EB067EEB0E7F496C7E9038181FC0EB300F01707F496C7E4848 |
| 6C7EEB8001D803007F486D7E3AFFF007FFE0A2231F7E9E28>I<EA07FC381FFF80383F07 |
| C0EB03E0EB01F0A2120C1200133FEA07FDEA1F81EA3E01127C12F8A3EAFC02EA7E0C383F |
| F87E380FE03E17147F9319>97 D<B4FCA2121FAAEB1FC0EB7FF0EBE0F8EB807CEB007E14 |
| 3EA2143FA6143EA2147C1380381EC1F8381C7FE038181F8018207E9F1D>I<EA01FE3807 |
| FF80381F0FC0123EA2127CEB030000FCC7FCA6127C127E003E1360003F13C0EA1F813807 |
| FF00EA01FC13147E9317>I<EB07F8A21300AAEA01F8EA07FEEA1F83EA3E01EA7E00127C |
| A212FCA6127CA2127EEA3E01EA1F07380FFEFFEA03F818207E9F1D>I<EA01FE3807FF80 |
| 380F83C0381E01E0383E00F05A14F812FCB5FCA200FCC7FCA3127CA26C1318121E380F80 |
| 703807FFE0C6138015147F9318>I<EB3F80EBFFC03803E3E0EA07C71387120FEB83C0EB |
| 8000A5EAFFFCA2EA0F80B0EA7FF8A213207F9F10>I<3803FC3C380FFFFE381E079E383C |
| 03DE007C13E0A5003C13C0381E0780381FFF00EA13FC0030C7FCA21238383FFF806C13F0 |
| 6C13F84813FC3878007C0070133E00F0131EA30078133CA2383F01F8380FFFE000011300 |
| 171E7F931A>I<B4FCA2121FAAEB0FC0EB3FE0EB61F0EBC0F813801300AD38FFE7FFA218 |
| 207D9F1D>I<121C123E127FA3123E121CC7FCA6B4FCA2121FB0EAFFE0A20B217EA00E>I< |
| B4FCA2121FAAEB01FEA2EB00F014C0EB0380EB0700130C5B137C13FC139E130F001E1380 |
| EB07C01303EB01E014F0EB00F838FFC3FFA218207E9F1C>107 D<B4FCA2121FB3AAEAFF |
| E0A20B207E9F0E>I<3AFE0FE03F8090391FF07FC03A1E70F9C3E09039407D01F0EB807E |
| 121FEB007CAC3AFFE3FF8FFEA227147D932C>I<38FE0FC0EB3FE0381E61F0EBC0F81380 |
| EA1F00AD38FFE7FFA218147D931D>I<48B4FC000713C0381F83F0383E00F8A248137CA2 |
| 00FC137EA6007C137CA26C13F8A2381F83F03807FFC00001130017147F931A>I<38FF1F |
| C0EB7FF0381FE1F8EB80FCEB007EA2143E143FA6143E147E147CEB80FCEBC1F8EB7FE0EB |
| 1F8090C7FCA7EAFFE0A2181D7E931D>I<EAFE3EEB7F80381ECFC0138FA2121FEB030090 |
| C7FCABEAFFF0A212147E9316>114 D<EA0FE6EA3FFEEA701EEA600EEAE006A2EAF800EA |
| FFC0EA7FF8EA3FFCEA1FFE1203EA001FEAC007A212E0EAF006EAF81EEAFFFCEAC7F01014 |
| 7E9315>I<1203A45AA25AA2123FEAFFFCA2EA1F00AA1306A5EA0F8CEA07F8EA03F00F1D |
| 7F9C14>I<38FF07F8A2EA1F00AD1301A2EA0F063807FCFF6C5A18147D931D>I<39FFE07F |
| 80A2391F001C00380F8018A26C6C5AA26C6C5AA2EBF0E000015B13F900005B13FF6DC7FC |
| A2133EA2131CA219147F931C>I<3AFFC7FE1FE0A23A1F00F0030014F8D80F801306A290 |
| 38C1BC0E0007140CEBC3BE3903E31E18A29038F60F380001143001FE13B03900FC07E0A2 |
| EBF80301785BA2903830018023147F9326>I<38FFC0FFA2380F80703807C0606D5A3803 |
| E180EA01F36CB4C7FC137E133E133F497E136FEBC7C0380183E0380381F048C67E000E7F |
| 39FF81FF80A219147F931C>I<39FFE07F80A2391F001C00380F8018A26C6C5AA26C6C5A |
| A2EBF0E000015B13F900005B13FF6DC7FCA2133EA2131CA21318A2EA783012FC5BEAC0E0 |
| EAE1C0EA7F80001EC8FC191D7F931C>I<383FFFE0A2383C07C038380F80EA701F38603F |
| 00133E5BC65A1201485AEBE060EA07C0EA0F80001F13E0383F00C0EA3E01EA7C03B5FCA2 |
| 13147F9317>I E /Fc 18 118 df<EAFFF8A2EA0700B3EAFFF8A20D177D9614>73 |
| D<38FC1F80A238380E00A3EA3C1EEA1C1CA46C5AA4EA0630EA0770A3EA0360A213E0A26C |
| 5A11177F9614>86 D<EA7E3EA2EA1C3CEA1E38EA0E78EA0F7012075B12035B120112037F |
| A2EA0770A2EA0E781338EA1C3C131CEA3C1E38FE3F80A211177F9614>88 |
| D<EA1FC0EA7FF0EA7078EA2018EA001CA2EA07FC121FEA3C1C127012E0A3EA707C383FFF |
| 80EA0F8F11107E8F14>97 D<EA03F8EA0FFEEA1C0EEA3804EA7000126012E0A412601270 |
| EA380EEA1C1EEA0FFCEA03F00F107E8F14>99 D<137EA2130EA5EA07CEEA0FFEEA1C3EEA |
| 301EEA700E12E0A61270EA301EEA383E381FEFC0EA07CF12177F9614>I<EA07E0EA0FF0 |
| EA1C38EA301CEA700CEAE00EA2EAFFFEA2EAE00012601270EA380EEA1C1EEA0FFCEA03F0 |
| 0F107E8F14>I<13FCEA01FEEA038EEA07041300A3EA7FFE12FFEA0700ACEAFFF8A20F17 |
| 7F9614>I<12FCA2121CA51378EA1DFEEA1F86EA1E07121CAA38FF8FE0A21317809614> |
| 104 D<1206120FA21206C7FCA4B4FCA21207ACEAFFF8A20D187C9714>I<EAFF80A21203 |
| B3EAFFFEA20F177E9614>108 D<EAFC78EAFDFEEA1F86EA1E07121CAA38FF8FE0A21310 |
| 808F14>110 D<EA07C0EA1FF0EA3C78EA701CA2EAE00EA6EA701CEA783CEA3C78EA1FF0 |
| EA07C00F107E8F14>I<EAFCF8EAFDFEEA1F07EA1E03001C1380EB01C0A6EB0380001E13 |
| 00EA1F0EEA1DFCEA1CF890C7FCA6B47EA21218808F14>I<EAFE1FEB7F80EA0EE3380F81 |
| 0090C7FCA2120EA8EAFFF0A211107F8F14>114 D<EA0FD8EA3FF8EA603812C0A2EAF000 |
| EA7F80EA3FF0EA07F8EA001CEA600612E012F0EAF81CEAFFF8EACFE00F107E8F14>I<12 |
| 06120EA4EA7FFC12FFEA0E00A8130EA3131CEA07F8EA01F00F157F9414>I<EAFC3FA2EA |
| 1C07AB131F380FFFE0EA03E71310808F14>I E /Fd 2 104 df<133C13E0EA01C0EA0380 |
| ADEA0700121E12F8121E1207EA0380ADEA01C0EA00E0133C0E257E9B13>102 |
| D<12F8121E1207EA0380ADEA01C0EA00E0133C13E0EA01C0EA0380ADEA0700121E12F80E |
| 257E9B13>I E /Fe 29 122 df<EBFE7C380381C6380603CE000E1384001C1380A6B512 |
| F0381C0380AE38FF8FF0171A809916>11 D<126012F0A212701210A31220A21240A2040B |
| 7D830B>44 D<126012F0A2126004047D830B>46 D<130CA3131EA2132F1327A2EB4380A3 |
| EB81C0A200017F1300A248B47E38020070A2487FA3487FA2003C131EB4EBFFC01A1A7F99 |
| 1D>65 D<EB3F023801C0C63803002E000E131E48130E14065A007813021270A200F090C7 |
| FCA5903801FFC03970000E00A2127812387EA27E000313163801C06638003F821A1A7E99 |
| 1E>71 D<EAFFE0000EC7FCB01408A3141814101430147014F0B5FC151A7F9918>76 |
| D<137F3801C1C038070070000E7F487F003C131E0038130E0078130F00707F00F01480A8 |
| 0078EB0F00A20038130E003C131E001C131C6C5B6C5B3801C1C0D8007FC7FC191A7E991E |
| >79 D<007FB5FC38701C0700401301A200C0148000801300A300001400B13803FFE0191A |
| 7F991C>84 D<39FFC0FF80390F003C0014106C5BEA03806D5A00015BEA00E101F1C7FC13 |
| 7A133E131C131EA21317EB27801343EB41C0EB81E0EA010048137000021378481338000C |
| 7F001E133EB4EB7FC01A1A7F991D>88 D<EA1FC0EA38707FEA101C1200A2EA03FCEA1E1C |
| 1238127012E01480A2133CEA705F381F8F0011107F8F13>97 D<12FC121CA913FCEA1D07 |
| 381E0380381C01C0130014E0A6EB01C01480381E0300EA1906EA10F8131A809915>I<EA |
| 07F8EA1C1C1238EA700813005AA612701304EA3808EA1C18EA07E00E107F8F11>I<133F |
| 1307A9EA03E7EA0C17EA180F487E127012E0A6126012706C5AEA1C373807C7E0131A7F99 |
| 15>I<EA07C0EA1C30EA30181270EA600C12E0EAFFFCEAE000A41260EA7004EA3808EA1C |
| 18EA07E00E107F8F11>I<EA01F0EA0718EA0E38EA1C101300A6EAFFC0EA1C00AEEAFF80 |
| 0D1A80990C>I<EA0FCF3818718038303000EA7038A4EA30306C5AEA2FC00060C7FCA212 |
| 70EA3FF013FC6C7EEA600FEAC003A4EA6006EA381CEA07E011187F8F13>I<12FC121CA9 |
| 137CEA1D87381E0380A2121CAB38FF9FF0141A809915>I<1218123CA212181200A612FC |
| 121CAE12FF081A80990A>I<12FC121CB3A6EAFF80091A80990A>108 |
| D<38FC7C1F391D8E6380391E0781C0A2001C1301AB39FF9FE7F81D107F8F20>I<EAFC7C |
| EA1D87381E0380A2121CAB38FF9FF01410808F15>I<EA07E0EA1C38EA300CEA700EEA60 |
| 06EAE007A6EA6006EA700EEA381CEA1C38EA07E010107F8F13>I<EAFCFCEA1D07381E03 |
| 80381C01C0A2EB00E0A6EB01C01480381E0300EA1D06EA1CF890C7FCA6B47E1317808F15 |
| >I<EAFC78EA1D9CEA1E1C1308EA1C00ABEAFF800E10808F0F>114 |
| D<EA1F20EA60E0EA402012C0A2EAF000127FEA3FC0EA1FE0EA00F0EA8070133012C01320 |
| EAF040EA8F800C107F8F0F>I<1208A41218A21238EAFFC0EA3800A81320A41218EA1C40 |
| EA07800B177F960F>I<38FC1F80EA1C03AB1307120CEA0E0B3803F3F01410808F15>I<39 |
| FE7F1F8039381C0700003C1306381C0C04130E380E16081317A238072310149013A33803 |
| C1A014E0380180C0A319107F8F1C>119 D<38FF0F80383C0700EA1C061304A26C5AA26C |
| 5AA3EA03A0A2EA01C0A36C5AA248C7FCA212E112E212E4127811177F8F14>121 |
| D E /Ff 2 122 df<120CA2EACCC012EDEA7F80EA0C00EA7F80EAEDC012CCEA0C00A20A |
| 0B7D8B10>3 D<1218A512FFA21218AF08167D900E>121 D E /Fg |
| 2 122 df<1202A3EAC218EAF278EA3AE0EA0F80A2EA3AE0EAF278EAC218EA0200A30D0E |
| 7E8E12>3 D<1206A8EAFFF0A2EA0600B30C1D7E9611>121 D E /Fh |
| 54 122 df<137013F0EA01E0EA03C0EA0780EA0F00121E121C5AA25AA45AA81270A47EA2 |
| 7E121E7EEA0780EA03C0EA01F0120013700C24799F18>40 D<126012F012787E7E7EEA07 |
| 801203EA01C0A2EA00E0A41370A813E0A4EA01C0A2EA03801207EA0F00121E5A5A5A1260 |
| 0C247C9F18>I<EA01C0A4EA41C138F1C780EAFDDF387FFF00EA1FFCEA07F0A2EA1FFCEA |
| 7FFF38FDDF80EAF1C73841C100EA01C0A411147D9718>I<136013F0A7387FFFC0B512E0 |
| A26C13C03800F000A7136013147E9718>I<121C123E127E127F123F121F1207120E121E |
| 127C12F81260080C788518>I<387FFFC0B512E0A26C13C013047E8F18>I<EA01801203A2 |
| 1207120F123F12FF12FB12431203B0EA7FFCEAFFFEEA7FFC0F1C7B9B18>49 |
| D<1218123C127EA2123C12181200A81218123C127EA2123E121E120E121C123C127812F0 |
| 1260071A789318>59 D<137013F8A213D8A2EA01DCA3138CEA038EA4EA0707A5380FFF80 |
| A3EA0E03381C01C0A3387F07F000FF13F8007F13F0151C7F9B18>65 |
| D<EA7FFCB5FC6C1380381C03C01301EB00E0A4130114C01307381FFF80140014C0EA1C03 |
| EB00E014F01470A414F014E01303387FFFC0B51280387FFE00141C7F9B18>I<EBF8E0EA |
| 03FEEA07FFEA0F07EA1E03EA3C01EA38005AA214005AA8127014E0A27E123C381E01C0EA |
| 0F073807FF803803FE00EA00F8131C7E9B18>I<EA7FF8EAFFFE6C7E381C0F80EB03C0A2 |
| EB01E01300A214F01470A814F014E0A2130114C01303EB0F80387FFF00485AEA7FF8141C |
| 7F9B18>I<B512F0A3381C0070A41400A2130EA3EA1FFEA3EA1C0EA390C7FCA21438A5B5 |
| 12F8A3151C7F9B18>I<B512F8A3381C0038A41400A21307A3EA1FFFA3EA1C07A390C7FC |
| A7EAFFC0A3151C7F9B18>I<3801F1C0EA03FDEA0FFFEA1F0FEA1C03123813011270A290 |
| C7FC5AA5EB0FF0131F130F387001C0A213031238A2EA1C07EA1F0FEA0FFFEA03FDEA01F1 |
| 141C7E9B18>I<387F07F038FF8FF8387F07F0381C01C0A9EA1FFFA3EA1C01AA387F07F0 |
| 38FF8FF8387F07F0151C7F9B18>I<EA7FFFB512806C1300EA01C0B3A4EA7FFFB512806C |
| 1300111C7D9B18>I<387F07F038FF87F8387F07F0381C03C0EB07801400130E131E5B13 |
| 385B13F0121DA2EA1FB8A2131C121EEA1C0EA27FA2EB0380A2EB01C0387F03F038FF87F8 |
| 387F03F0151C7F9B18>75 D<EAFFC0A3001CC7FCB114E0A5B5FCA3131C7E9B18>I<38FC |
| 01F8EAFE03A2383B06E0A4138EA2EA398CA213DCA3EA38D8A213F81370A21300A638FE03 |
| F8A3151C7F9B18>I<387E07F038FF0FF8387F07F0381D81C0A313C1121CA213E1A31361 |
| 1371A213311339A31319A2131D130DA3EA7F07EAFF87EA7F03151C7F9B18>I<EA0FFE38 |
| 3FFF804813C0EA7803EA700100F013E0EAE000B0EAF001007013C0EA7C07EA7FFF6C1380 |
| 380FFE00131C7E9B18>I<EAFFFEEBFF8014C0EA1C03EB01E013001470A514E01301EB03 |
| C0EA1FFF1480EBFE00001CC7FCA8B47EA3141C7F9B18>I<EA7FF8EAFFFE6C7E381C0F80 |
| 130314C01301A313031480130F381FFF005BA2EA1C0F7FEB0380A5149CA3387F01F8EAFF |
| 81387F00F0161C7F9B18>82 D<3803F1C0EA1FFF5AEA7C0FEA7003EAE001A390C7FC1270 |
| 1278123FEA1FF0EA07FEC67EEB0F80EB03C01301EB00E0A2126012E0130100F013C038F8 |
| 0780B5FCEBFE00EAE7F8131C7E9B18>I<387FFFF8B5FCA238E07038A400001300B2EA07 |
| FFA3151C7F9B18>I<38FF83FEA3381C0070B36C13E0EA0F01380783C03803FF806C1300 |
| EA007C171C809B18>I<38FE03F8EAFF07EAFE03383C01E0001C13C0A3EA1E03000E1380 |
| A438070700A4EA038EA4EA018C13DCA3EA00D813F8A21370151C7F9B18>I<38FE03F8A3 |
| 38700070A36C13E0A513F8EA39FC13DCA2001913C0A3138CA2EA1D8DA31305000D1380EA |
| 0F07A2EA0E03151C7F9B18>I<387F0FE0139F130F380E0700120FEA070E138EEA039C13 |
| DCEA01F8A212005B137013F07F487E13DCEA039E138EEA070F7F000E13801303001E13C0 |
| 387F07F000FF13F8007F13F0151C7F9B18>I<383FFFE05AA2387001C01303EB07801400 |
| C65A131E131C133C5B137013F0485A5B1203485A90C7FC5A001E13E0121C123C5A1270B5 |
| FCA3131C7E9B18>90 D<EA0FF0EA1FFC487EEA3C0FEA180738000380A213FF1207121FEA |
| 7F03127812E0A3EAF007EA780F383FFFF8EA1FFDEA07F015147E9318>97 |
| D<127E12FE127E120EA5133EEBFF80000F13C0EBC1E01380EB0070120E1438A6000F1370 |
| A2EB80E013C1EBFFC0000E138038063E00151C809B18>I<EA01FEEA07FF001F1380EA3E |
| 073838030048C7FCA25AA61270EB01C01238EA3E03381FFF8000071300EA01FC12147D93 |
| 18>I<EB1F80133F131F1303A5EA03E3EA0FFBEA1FFFEA3C1FEA380FEA7007130312E0A6 |
| EA7007A2EA380FEA3C1F381FFFF0380FFBF83803E3F0151C7E9B18>I<EA01F0EA07FCEA |
| 1FFEEA3E0F38380780EA7003A238E001C0A2B5FCA300E0C7FC1270EB01C01238EA3E0738 |
| 1FFF8000071300EA01F812147D9318>I<EB1F80EB7FC0EBFFE013E13801C0C01400A338 |
| 7FFFC0B5FCA23801C000AEEA7FFFA3131C7F9B18>I<3801E1F03807FFF85A381E1E3038 |
| 1C0E00487EA5EA1C0EEA1E1EEA1FFC5BEA39E00038C7FC7EEA1FFEEBFFC04813E0387801 |
| F038700070481338A4007813F0EA7E03381FFFC06C13803801FC00151F7F9318>I<127E |
| 12FE127E120EA5133EEBFF80000F13C013C1EB80E01300120EAB387FC7FC38FFE7FE387F |
| C7FC171C809B18>I<EA0380EA07C0A3EA0380C7FCA4EA7FC012FF127F1201AEB5FCA310 |
| 1D7C9C18>I<EAFFC0A31201B3A4B51280A3111C7D9B18>108 D<38F9C1C038FFF7F013FF |
| 383E3E38EA3C3CA2EA3838AB38FE3E3EEB7E7EEB3E3E1714809318>I<EA7E3E38FEFF80 |
| 007F13C0EA0FC1EB80E01300120EAB387FC7FC38FFE7FE387FC7FC1714809318>I<EA01 |
| F0EA0FFE487E383E0F80EA3803387001C0A238E000E0A5EAF001007013C0EA7803383C07 |
| 80EA3E0F381FFF006C5AEA01F013147E9318>I<EA7E3E38FEFF80007F13C0380FC1E013 |
| 80EB0070120E1438A6000F1370A2EB80E013C1EBFFC0000E1380EB3E0090C7FCA7EA7FC0 |
| 487E6C5A151E809318>I<3801F380EA07FBEA1FFFEA3E1FEA380FEA7007A2EAE003A6EA |
| 7007A2EA380FEA3C1FEA1FFFEA0FFBEA03E3EA0003A7EB1FF0EB3FF8EB1FF0151E7E9318 |
| >I<38FF0FC0EB3FE0EB7FF0EA07F0EBE060EBC0005BA290C7FCA9EAFFFC7F5B14147E93 |
| 18>I<EA07F7EA3FFF5AEA780FEAE007A3007CC7FCEA7FE0EA1FFCEA03FEEA001F386007 |
| 80EAE003A212F038F80F00B5FC13FCEAE7F011147D9318>I<487E1203A4387FFFC0B5FC |
| A238038000A9144014E0A33801C1C013FF6C1380EB3E0013197F9818>I<387E07E0EAFE |
| 0FEA7E07EA0E00AC1301EA0F033807FFFC6C13FE3801FCFC1714809318>I<387F8FF000 |
| FF13F8007F13F0381C01C0380E0380A338070700A3138FEA038EA3EA01DCA3EA00F8A213 |
| 7015147F9318>I<38FF07F8138F1307383800E0A4381C01C0137113F9A213D9EA1DDD00 |
| 0D1380A3138DEA0F8FA23807070015147F9318>I<387F8FF0139F138F380F0700EA078E |
| EA039EEA01DC13F81200137013F07FEA01DCEA039E138EEA0707000E1380387F8FF000FF |
| 13F8007F13F015147F9318>I<387F8FF000FF13F8007F13F0380E01C0EB0380A21207EB |
| 0700A2EA0387A2138EEA01CEA213CC120013DC1378A31370A313F05B1279EA7BC0EA7F80 |
| 6CC7FC121E151E7F9318>I E /Fi 45 122 df<1238127C12FEA3127C123807077C8610> |
| 46 D<13181378EA01F812FFA21201B3A7387FFFE0A213207C9F1C>49 |
| D<EA03FCEA0FFF383C1FC0387007E0007C13F0EAFE0314F8A21301127CEA3803120014F0 |
| A2EB07E014C0EB0F80EB1F00133E13385BEBE018EA01C0EA0380EA0700000E1338380FFF |
| F05A5A5AB5FCA215207D9F1C>I<13FE3807FFC0380F07E0381E03F0123FEB81F8A3EA1F |
| 0314F0120014E0EB07C0EB1F803801FE007F380007C0EB01F014F8EB00FCA2003C13FE12 |
| 7EB4FCA314FCEA7E01007813F8381E07F0380FFFC03801FE0017207E9F1C>I<14E01301 |
| 1303A21307130F131FA21337137713E7EA01C71387EA03071207120E120C121812381270 |
| 12E0B6FCA2380007E0A790B5FCA218207E9F1C>I<00301320383E01E0383FFFC0148014 |
| 005B13F8EA33C00030C7FCA4EA31FCEA37FF383E0FC0383807E0EA3003000013F0A214F8 |
| A21238127C12FEA200FC13F0A2387007E0003013C0383C1F80380FFF00EA03F815207D9F |
| 1C>I<EB1F80EBFFE03803E0703807C0F0380F01F8121F123EA2387E00F0007C1300A2EA |
| FC08EB7FC0EBFFE038FD80F038FF00F848137CA248137EA4127CA3003C137C123E001E13 |
| F86C13F0380783E03803FFC0C6130017207E9F1C>I<12601278387FFFFEA214FC14F8A2 |
| 14F038E0006014C038C00180EB0300A2EA00065B131C131813381378A25BA31201A31203 |
| A76C5A17227DA11C>I<1470A214F8A3497EA2497EA3EB067FA2010C7F143FA2496C7EA2 |
| 01307F140F01707FEB6007A201C07F90B5FC4880EB8001A2D803007F14004880000680A2 |
| 3AFFE007FFF8A225227EA12A>65 D<D903FE138090381FFF819038FF01E33901F8003FD8 |
| 03E0131F4848130F48481307121F48C71203A2481401127EA200FE91C7FCA8127EED0180 |
| 127F7E15036C6C1400120F6C6C1306D803F05B6C6C13386CB413F090381FFFC0D903FEC7 |
| FC21227DA128>67 D<B67E15F03907F003FCEC007E81ED1F80ED0FC0ED07E0A216F01503 |
| A316F8A916F0A3ED07E0A2ED0FC0ED1F80ED3F00157EEC03FCB612F0158025227EA12B> |
| I<B612FCA23807F000153C151C150C150EA21506140CA31500141C143CEBFFFCA2EBF03C |
| 141C140CA21503A214001506A3150EA2151E153EEC01FCB6FCA220227EA125>I<B612F8 |
| A23807F001EC007815381518151CA2150CA21418A21500A214381478EBFFF8A2EBF07814 |
| 381418A491C7FCA8B512C0A21E227EA123>I<D903FE134090391FFFC0C090387F00F1D8 |
| 01F8133F4848130FD807C01307000F1403485A48C71201A2481400127EA200FE1500A791 |
| 380FFFFC127E007F9038001FC0A27EA26C7E6C7E6C7E6C7ED801FC133F39007F80E79038 |
| 1FFFC30103130026227DA12C>I<B512C0A2D807F0C7FCB31518A41538A21570A215F014 |
| 011407B6FCA21D227EA122>76 D<D8FFF0EC0FFF6D5C000716E0D806FC1437A3017E1467 |
| A26D14C7A290391F800187A290390FC00307A3903807E006A2903803F00CA2903801F818 |
| A3903800FC30A2EC7E60A2EC3FC0A2EC1F80A3EC0F00D8FFF091B5FC140630227EA135> |
| I<EB07FC90383FFF809038FC07E03903F001F848486C7E4848137E48487FA248C7EA1F80 |
| A24815C0007E140FA200FE15E0A9007E15C0007F141FA26C15806D133F001F15006C6C13 |
| 7E6C6C5B6C6C485A3900FC07E090383FFF80D907FCC7FC23227DA12A>79 |
| D<B512FEECFFC03907F007F0EC01F86E7E157E157FA6157E5D4A5AEC07F090B512C05D90 |
| 38F00FE06E7E6E7E6E7EA81606EC00FEEDFF0CB538803FF8ED0FF027227EA12A>82 |
| D<3801FE023807FF86381F01FE383C007E007C131E0078130EA200F81306A27E1400B4FC |
| 13E06CB4FC14C06C13F06C13F86C13FC000313FEEA003F1303EB007F143FA200C0131FA3 |
| 6C131EA26C133C12FCB413F838C7FFE00080138018227DA11F>I<007FB61280A2397E03 |
| F80F00781407007014030060140100E015C0A200C01400A400001500B3A248B512F0A222 |
| 227EA127>I<B538803FFCA23A07F0000180B3A60003EC03007F000114066C6C130E017E |
| 5B90383F80F890380FFFE0010190C7FC26227EA12B>I<B53A0FFFF00FFEA2260FF00090 |
| C712E000076E14C0A26C6C90393F800180A26D14C00001EE0300A26D496C5A0000026F13 |
| 06A2017F9038C7F00CA2028113F8013F01835BA29139C301FC38011F153016FE90260FE6 |
| 005BA202FEEBFFE06D486D5AA26D486D5AA36D486DC7FCA36D48130EA237227FA13A>87 |
| D<EA0FFC383FFF80387E07C0EB03E0130114F0123C1200A2133FEA03FDEA1FC1EA3F0112 |
| 7E12FCA4EA7E02EB0CF8381FF87F3807E03F18167E951B>97 D<B4FCA2121FABEB0FE0EB |
| 3FF8EBE07CEB803E497EEC0F80A215C0A81580141F01801300EBC03E381EE07C381C3FF8 |
| 38180FC01A237EA21F>I<EBFF80000713E0380F83F0EA1F03123E127E387C01E090C7FC |
| 12FCA6127C127EA2003E13186C1330380FC0603807FFC0C6130015167E9519>I<EB01FE |
| A2EB003EABEA01FC3807FFBE380F81FE381F007E003E133E127E127C12FCA8127CA26C13 |
| 7E6C13FE380F83BE3907FF3FC0EA01FC1A237EA21F>I<13FE3807FF80380F87C0381E01 |
| E0003E13F0EA7C0014F812FCA2B5FCA200FCC7FCA3127CA2127E003E13186C1330380FC0 |
| 703803FFC0C6130015167E951A>I<EB1FC0EB7FE0EBF1F0EA01E31203EA07C3EBC1E0EB |
| C000A6EAFFFEA2EA07C0B2EA3FFCA2142380A211>I<3801FE0F3907FFBF80380F87C738 |
| 1F03E7391E01E000003E7FA5001E5BEA1F03380F87C0EBFF80D809FEC7FC0018C8FCA212 |
| 1C381FFFE06C13F86C13FE001F7F383C003F48EB0F80481307A40078EB0F006C131E001F |
| 137C6CB45A000113C019217F951C>I<B4FCA2121FABEB07E0EB1FF8EB307CEB403CEB80 |
| 3EA21300AE39FFE1FFC0A21A237EA21F>I<121C123E127FA3123E121CC7FCA7B4FCA212 |
| 1FB2EAFFE0A20B247EA310>I<1338137C13FEA3137C13381300A7EA03FEA2EA003EB3A5 |
| 127812FC133C137CEA78F8EA7FE0EA1F800F2E83A311>I<B4FCA2121FB3ADEAFFE0A20B |
| 237EA210>108 D<3AFF07F007F090391FFC1FFC3A1F303E303E01401340496C487EA201 |
| 001300AE3BFFE0FFE0FFE0A22B167E9530>I<38FF07E0EB1FF8381F307CEB403CEB803E |
| A21300AE39FFE1FFC0A21A167E951F>I<13FE3807FFC0380F83E0381E00F0003E13F848 |
| 137CA300FC137EA7007C137CA26C13F8381F01F0380F83E03807FFC03800FE0017167E95 |
| 1C>I<38FF0FE0EB3FF8381FE07CEB803E497E1580A2EC0FC0A8EC1F80A29038803F00EB |
| C03EEBE0FCEB3FF8EB0FC090C8FCA8EAFFE0A21A207E951F>I<EBFE033807FF87380FC1 |
| C7381F006F48133F127E80127C12FCA7127EA2003E5B6C5B380FC1DF3807FF9F3801FC1F |
| C7FCA8ECFFE0A21B207E951E>I<EAFE1FEB3FC0381E67E013C71387A2381F83C090C7FC |
| ADEAFFF0A213167E9517>I<EA0FF3EA3FFFEA781FEA6007EAE003A212F000FCC7FCEA7F |
| E013F8EA3FFEEA0FFF120138000F80EAC007130312E0A238F00700EAFC0EEAEFFCEAC7F0 |
| 11167E9516>I<487EA41203A21207A2120F123FB5FCA2EA0F80ABEB8180A5EB8300EA07 |
| C3EA03FEEA00F811207F9F16>I<38FF01FEA2381F003EAF147E14FE380F81BE3907FF3F |
| C0EA01FC1A167E951F>I<3AFFE3FF07F8A23A1F007800C09038807C01000F1580A23A07 |
| C07E030014DE5D3903E1DF06148FD801F1138CEBF307A2D800FF13D8EBFE0315F890387C |
| 01F0A2013C5BEB3800A225167F9528>119 D<39FFE07FC0A2390F801C006C6C5A6C6C5A |
| EBF0606C6C5A3800F980137F6DC7FC7F80497E1337EB63E0EBC1F03801C0F848487E3807 |
| 007E000E133E39FF80FFE0A21B167F951E>I<39FFE01FE0A2391F800700000F1306EBC0 |
| 0E0007130C13E000035BA26C6C5AA26C6C5AA2EB7CC0A2137F6D5AA26DC7FCA2130EA213 |
| 0CA25B1278EAFC3813305BEA69C0EA7F80001FC8FC1B207F951E>I |
| E /Fj 29 122 df<EC3FE0ECE010903801803801031378A290380700301500A3130EA390 |
| B512E0EB0E0090381C01C0A4EC03801338A3EC0700A2137801701310EC0E20A313609038 |
| E00640EC038091C7FC5BA21201EA3180127948C8FC1262123C1D29829F1A>12 |
| D<1330A31320A2381861C0381C678038064E00EA0378EA01E0A2EA07B0EA1C98EA798EEA |
| E1860001C7FCA25AA3121478A117>42 D<EA7FF0EAFFE0127F0C037D8A10>45 |
| D<14021406A2140E141EA2143F142F144F14CF148FEB010FA21302A213041308A2011013 |
| 8014071320EB3FFFEB40071380A2EA0100A2120212061204001E14C039FF807FF81D207E |
| 9F22>65 D<903807E04090381C18C09038300580EB600313C000011301018013001203A3 |
| 91C7FC7FA213F86CB47E14E06C6C7E131FEB01F8EB0078A21438A21220A2143000601370 |
| 146014E000705B38E80380D8C606C7FCEA81F81A217D9F1A>83 D<EBF180380389C03807 |
| 0780EA0E03121C123C383807001278A3EAF00EA31420EB1C40A2EA703C135C38308C8038 |
| 0F070013147C9317>97 D<EA0780123FEA0700A4120EA45AA213F0EA1D0CEA3A0E123CEA |
| 380FA21270A4EAE01EA3131C133C1338EA607013E0EA31C0EA1F0010207B9F15>I<137E |
| EA01C138030080EA0E07121E001C1300EA3C0248C7FCA35AA5EA70011302EA3004EA1838 |
| EA07C011147C9315>I<1478EB03F8EB0070A414E0A4EB01C0A213F1EA038938070780EA |
| 0E03121C123C383807001278A3EAF00EA31420EB1C40A2EA703C135C38308C80380F0700 |
| 15207C9F17>I<137CEA01C2EA0701120E121C123CEA3802EA780CEA7BF0EA7C0012F0A4 |
| 127013011302EA3804EA1838EA07C010147C9315>I<1478EB019CEB033CA2EB07181400 |
| A2130EA5EBFFE0EB1C00A45BA55BA55BA5485AA35B1231007BC7FC12F31266123C162982 |
| 9F0E>I<EB1E30EB7138EBE0F03801C070EA03801207EB00E05AA3381E01C0A4EB0380A2 |
| EA0E07130B38061700EA01E7EA0007A2130EA21230EA781C485AEA6070EA3FC0151D7F93 |
| 15>I<EA01E0120FEA01C0A4485AA448C7FCA2131E1363380E8180380F01C0120EA2381C |
| 0380A438380700A3EB0E1000701320A2131CEB0C4000E013803860070014207D9F17>I< |
| 13C0EA01E0A213C0C7FCA7120E12131223EA4380EA4700A21287120EA35AA3EA38401380 |
| A21270EA31001232121C0B1F7C9E0E>I<EB0180EB03C0A2148090C7FCA7133C13461387 |
| A2EA0107A2EA020E1200A35BA45BA45BA45BA21230EA79C0EAF1800063C7FC123C122882 |
| 9E0E>I<EA01E0120FEA01C0A4485AA448C7FCA2EB03C0EB0420380E08E013111321EB40 |
| C0381C8000001DC7FC121EEA1FC0EA38E01370A2EB384038707080A3EB310012E0EA601E |
| 13207D9F15>I<EA03C0121FEA0380A4EA0700A4120EA45AA45AA45AA3127112E2A41264 |
| 12380A207C9F0C>I<391C0F80F0392630C318394740640C903880680EEB0070A2008E49 |
| 5A120EA34848485AA3ED70803A3803807100A215E115623970070064D83003133821147C |
| 9325>I<381C0F80382630C0384740601380EB0070A2008E13E0120EA3381C01C0A3EB03 |
| 8400381388A2EB0708EB031000701330383001C016147C931A>I<137CEA01C338030180 |
| 000E13C0121E001C13E0123C1278A338F003C0A3EB07801400EA700F130EEA3018EA1870 |
| EA07C013147C9317>I<3801C1E0380262183804741C1378EB701EA2EA08E01200A33801 |
| C03CA3143838038078147014E0EBC1C038072380EB1E0090C7FCA2120EA45AA2B47E171D |
| 809317>I<EA1C1EEA266138278380EA47871307EB0300008EC7FC120EA35AA45AA45A12 |
| 3011147C9313>114 D<13FCEA0302EA0601EA0C03130713061300EA0F8013F0EA07F8EA |
| 03FCEA003E130E1270EAF00CA2EAE008EA4010EA2060EA1F8010147D9313>I<EA018013 |
| C0EA0380A4EA0700A2EAFFF0EA0700120EA45AA45AA31320EA7040A21380A2EA3100121E |
| 0C1C7C9B0F>I<000E13C0001313E0382301C0EA4381EA4701A238870380120EA3381C07 |
| 00A31410EB0E201218A2381C1E40EA0C263807C38014147C9318>I<380E0380EA130700 |
| 2313C0EA4383EA4701130000871380120EA3381C0100A31302A25BA25BEA0E30EA03C012 |
| 147C9315>I<000EEBC1C0001313E3392301C3E0384381C1384701C01560398703804012 |
| 0EA3391C070080A3EC0100A21306EB0F02000C5B380E13083803E1F01B147C931E>I<38 |
| 038380380CC440381068E013711220EB70C03840E0001200A3485AA314403863808012F3 |
| EB810012E5EA84C6EA787813147D9315>I<000E13C0001313E0382301C0EA4381EA4701 |
| A238870380120EA3381C0700A4130E1218A2EA1C1EEA0C3CEA07DCEA001CA25B12F05BEA |
| E060485AEA4380003EC7FC131D7C9316>I E /Fk 34 122 df<130E131E137EEA07FE12 |
| FFA212F81200B3ABB512FEA317277BA622>49 D<EBFF80000713F04813FC381E03FE3938 |
| 00FF80007C133F00FE14C06C131F15E0140FA2127E003C131FC7FC15C0A2EC3F80150014 |
| 7E5C5C495A495AEB078049C7FC131E4913E013705B3901C001C0EA0380EA0600000FB5FC |
| 5A5A5AB61280A31B277DA622>I<EB7F803803FFF04813FC380F81FE381F007FEA3F80EC |
| 3F80A3121F1300C7EA7F00A2147E5C495AEB07F0EBFFC0A2EB01F8EB007E801580EC1FC0 |
| A215E0A2123C127EB4FCA215C0143F481480007CEB7F00383F01FE6CB45A000713F0C613 |
| 801B277DA622>I<140FA25C5C5C5C5BA2EB03BFEB073F130E131C133C1338137013E0EA |
| 01C0EA038012071300120E5A5A5A12F0B612F8A3C7EA7F00A890381FFFF8A31D277EA622 |
| >I<00181303381F801FEBFFFE5C5C5C14C091C7FC001CC8FCA7EB7FC0381DFFF8381F80 |
| FC381E003F1208C7EA1F8015C0A215E0A21218127C12FEA315C05A0078EB3F80A26CEB7F |
| 00381F01FE6CB45A000313F0C613801B277DA622>I<EB07F8EB3FFE90B5FC3901FC0780 |
| 3903F00FC03807C01FEA0F80121F130048EB0F8091C7FC127EA3EAFE02EB1FF0EB3FFCEB |
| 603EEB801F00FF14809038000FC0A24814E0A4127EA4123E003F14C07EEC1F80D80F8013 |
| 003807E07E6CB45A6C5B38003FC01B277DA622>I<B612F815FF16C03A03F8001FE0ED0F |
| F0ED07F8150316FCA21501A3150316F8A2ED07F0150FED1FC0EDFF8090B5EAFE00EDFFC0 |
| 9039F8000FF0ED03F8ED01FC16FE1500A216FFA616FE1501ED03FC1507ED1FF8B712E016 |
| C0EDFE0028297DA830>66 D<B712E0A33903FC001FED07F01501A215001670A3913801C0 |
| 781638A302031300A2140F90B5FCA3EBFC0F1403A20201130EA3161C91C7FCA3163C1638 |
| 167816F815011503151FB712F0A327297EA82C>69 D<B712C0A33903FC003FED0FE01503 |
| 1501A21500A316F0913801C070A316001403A2140F90B5FCA3EBFC0F1403A21401A491C8 |
| FCA9B512FCA324297EA82A>I<91387FE003903907FFFC07011FEBFF0F90397FF00F9F90 |
| 39FF0001FFD801FC7F484880484880484880485A82485A82127FA290CAFC5AA892B512F8 |
| 7E7F03001300123FA26C7EA26C7E6C7E6C7E6C7E6CB45B90387FF007011FB5129F0107EB |
| FE0F9039007FF0032D297CA835>I<B512FCA3D803FCC8FCB3A3ED01C0A415031680A215 |
| 07A2150FA2151F157F913801FF00B7FCA322297EA828>76 D<ECFFC0010F13FC90383F80 |
| 7F9039FE001FC0D801F8EB07E048486D7E48486D7E000F8148486D7EA24848147FA2007F |
| 168090C8123FA34816C0AA6C16806D147FA2003F1600A26C6C14FEA26C6C495A6C6C495A |
| 6C6C495A6C6C495A6C6C495A90263FC0FFC7FC90380FFFFC010013C02A297CA833>79 |
| D<9038FF80600003EBF0E0000F13F8381F80FD383F001F003E1307481303A200FC1301A2 |
| 14007EA26C140013C0EA7FFCEBFFE06C13F86C13FE80000714806C14C0C6FC010F13E0EB |
| 007FEC1FF0140F140700E01303A46C14E0A26C13076C14C0B4EB0F80EBE03F39E3FFFE00 |
| 00E15B38C01FF01C297CA825>83 D<3B7FFFF01FFFE0A3000190C7EAF0006C6D485A02C0 |
| 5B017F13036D6C485AD91FF090C7FC5D90380FF81E6D6C5A1538903803FE786D6C5A5D6D |
| 5B147F6E7EA26E7E81143F81EC7BFEECF3FFEB01E102C07F01036D7EEB078049486C7E01 |
| 0E6D7E131E496D7E01386D7E498001F0130348486D7EB5013F13FCA32E297EA833>88 |
| D<3803FF80000F13F0381F01FC383F80FE147F801580EA1F00C7FCA4EB3FFF3801FC3FEA |
| 0FE0EA1F80EA3F00127E5AA4145F007E13DF393F839FFC381FFE0F3803FC031E1B7E9A21 |
| >97 D<EB3FF03801FFFC3803F03E380FC07FEA1F80EA3F00A248133E007E90C7FCA212FE |
| A7127EA2127F6CEB03801380001FEB0700380FE00E3803F83C3801FFF838003FC0191B7E |
| 9A1E>99 D<EC7FF0A31407ACEB3F873801FFF73807F03F380FC00F381F8007EA3F00A212 |
| 7EA312FEA8127EA27EA2381F800F380FC01F3907E07FFF3801FFE738007F87202A7EA925 |
| >I<EB3FC03801FFF03803E07C380F803E001F7F130048EB0F80127E15C0A200FE1307A2 |
| B6FCA248C8FCA3127EA2127F6CEB01C07E390F8003803907C007003803F01E3800FFFCEB |
| 3FE01A1B7E9A1F>I<9038FF80F00003EBE3F8390FC1FE1C391F007C7C48137E003EEB3E |
| 10007EEB3F00A6003E133E003F137E6C137C380FC1F8380BFFE00018138090C8FC1238A2 |
| 123C383FFFF814FF6C14C06C14E06C14F0121F383C0007007CEB01F8481300A4007CEB01 |
| F0A2003FEB07E0390FC01F806CB5120038007FF01E287E9A22>103 |
| D<EAFFE0A3120FAC147E9038E1FF809038E30FC001E413E0EBE80701F813F013F0A213E0 |
| B039FFFE3FFFA3202A7DA925>I<1207EA0F80EA1FC0EA3FE0A3EA1FC0EA0F80EA0700C7 |
| FCA7EAFFE0A3120FB3A3EAFFFEA30F2B7EAA12>I<EAFFE0A3120FB3B2EAFFFEA30F2A7E |
| A912>108 D<26FFC07FEB1FC0903AC1FFC07FF0903AC307E0C1F8D80FC49038F101FC90 |
| 39C803F20001D801FE7F01D05BA201E05BB03CFFFE3FFF8FFFE0A3331B7D9A38>I<38FF |
| C07E9038C1FF809038C30FC0D80FC413E0EBC80701D813F013D0A213E0B039FFFE3FFFA3 |
| 201B7D9A25>I<EB3FE03801FFFC3803F07E390FC01F80391F800FC0393F0007E0A2007E |
| EB03F0A300FE14F8A8007E14F0A26CEB07E0A2391F800FC0390FC01F803907F07F003801 |
| FFFC38003FE01D1B7E9A22>I<38FFE1FE9038EFFF809038FE0FE0390FF803F09038F001 |
| F801E013FC140015FEA2157FA8157E15FEA215FC140101F013F89038F807F09038FC0FE0 |
| 9038EFFF809038E1FC0001E0C7FCA9EAFFFEA320277E9A25>I<38FFC1F0EBC7FCEBC63E |
| 380FCC7F13D813D0A2EBF03EEBE000B0B5FCA3181B7F9A1B>114 |
| D<3803FE30380FFFF0EA3E03EA7800127000F01370A27E00FE1300EAFFE06CB4FC14C06C |
| 13E06C13F0000713F8C6FCEB07FC130000E0137C143C7E14387E6C137038FF01E038E7FF |
| C000C11300161B7E9A1B>I<13E0A41201A31203A21207120F381FFFE0B5FCA2380FE000 |
| AD1470A73807F0E0000313C03801FF8038007F0014267FA51A>I<39FFE07FF0A3000F13 |
| 07B2140FA2000713173903F067FF3801FFC738007F87201B7D9A25>I<39FFFC03FFA339 |
| 0FF000F0000714E07F0003EB01C0A2EBFC0300011480EBFE070000140013FFEB7F0EA214 |
| 9EEB3F9C14FC6D5AA26D5AA36D5AA26D5AA2201B7F9A23>I<3BFFFC7FFC1FFCA33B0FE0 |
| 0FE001C02607F007EB0380A201F8EBF00700031600EC0FF801FC5C0001150EEC1FFC2600 |
| FE1C5B15FE9039FF387E3C017F1438EC787F6D486C5A16F0ECE01F011F5CA26D486C5AA2 |
| EC800701075CA22E1B7F9A31>I<39FFFC1FFEA33907F003803803F8079038FC0F003801 |
| FE1E00005BEB7F3814F86D5A6D5A130F806D7E130F497EEB3CFEEB38FFEB787F9038F03F |
| 803901E01FC0D803C013E0EB800F39FFF03FFFA3201B7F9A23>I<39FFFC03FFA3390FF0 |
| 00F0000714E07F0003EB01C0A2EBFC0300011480EBFE070000140013FFEB7F0EA2149EEB |
| 3F9C14FC6D5AA26D5AA36D5AA26D5AA25CA21307003890C7FCEA7C0FEAFE0E131E131C5B |
| EA74F0EA3FE0EA0F8020277F9A23>I E /Fl 4 104 df<14FF010713E090381F00F80178 |
| 131E01E01307D80180EB018048C812C000061560481530A248151848150CA2481506A448 |
| 1503A900601506A46C150CA26C15186C1530A26C15606C15C06C6CEB0180D800E0EB0700 |
| 0178131E011F13F8903807FFE0010090C7FC282B7EA02D>13 D<EA03F0EA0FFC487E487E |
| 481380A2B512C0A66C1380A26C13006C5A6C5AEA03F012127E9317>15 |
| D<130F1338136013E0EA01C0AFEA0380EA0700121E12F8121E1207EA0380EA01C0AFEA00 |
| E013601338130F102D7DA117>102 D<12F8121E1207EA0380EA01C0AFEA00E013601338 |
| 130F1338136013E0EA01C0AFEA0380EA0700121E12F8102D7DA117>I |
| E /Fm 72 123 df<90381F83E09038F06E303901C07878380380F8903800F03048EB7000 |
| A7B612803907007000B2383FE3FF1D20809F1B>11 D<133FEBE0C0EA01C0380381E0EA07 |
| 01A290C7FCA6B512E0EA0700B2383FC3FC1620809F19>I<EB3FE013E0EA01C1EA0381EA |
| 0700A8B5FCEA0700B2383FE7FC1620809F19>I<90381F81F89038F04F043901C07C0639 |
| 0380F80FEB00F05A0270C7FCA6B7FC3907007007B23A3FE3FE3FE02320809F26>I<9038 |
| 1F81FF9038F06F073901C07C0F380380F849487E481370A7B7FC3907007007B23A3FE3FE |
| 3FE02320809F26>I<127012F812FCA212741204A31208A21210A212201240060E7C9F0D> |
| 39 D<13401380EA01005A12061204120C5AA212381230A212701260A412E0AC1260A412 |
| 701230A212381218A27E120412067E7EEA008013400A2E7BA112>I<7E12407E12307E12 |
| 08120C7EA212077EA213801201A413C0AC1380A412031300A25A1206A25A120812185A12 |
| 205A5A0A2E7EA112>I<1303AFB612FCA2D80003C7FCAF1E207E9A23>43 |
| D<127012F012F8A212781208A31210A31220A21240050E7C840D>I<EAFFF0A20C02808A |
| 0F>I<127012F8A3127005057C840D>I<144014C0EB0180A3EB0300A31306A25BA35BA35B |
| A25BA35BA3485AA348C7FCA21206A35AA35AA25AA35AA35AA2122D7EA117>I<EA03F0EA |
| 0E1C487EEA1806EA380738700380A400F013C0AD00701380A3EA780700381300EA1806EA |
| 1C0E6C5AEA03F0121F7E9D17>I<13801203120F12F31203B3A6EA07C0EAFFFE0F1E7C9D |
| 17>I<EA03F0EA0C1CEA100E487E00401380128000F013C0EAF803A3EA200712001480A2 |
| EB0F00130E5B5B5B13605B485A48C7FC000613405A5A00101380EA3FFF5AB5FC121E7E9D |
| 17>I<EA03F0EA0C1CEA100EEA200F007813801307A2EA380F12001400A2131E131C1370 |
| EA07F0EA003C130E130FEB0780A214C0122012F8A300F013801240EB0F00EA200EEA183C |
| EA07F0121F7E9D17>I<1306A2130EA2131E132EA2134E138EA2EA010E1202A212041208 |
| A212101220A2124012C0B512F038000E00A7EBFFE0141E7F9D17>I<EA1803EA1FFE5B5B |
| 13E00010C7FCA6EA11F0EA161CEA180EEA10071480EA0003A214C0A3127012F0A200E013 |
| 801240EB0700EA20066C5AEA0838EA07E0121F7E9D17>I<137CEA0182EA0701380E0380 |
| EA0C0712183838030090C7FC12781270A2EAF1F0EAF21CEAF406EAF807EB0380A200F013 |
| C0A51270A214801238EB07001218EA0C0E6C5AEA01F0121F7E9D17>I<1240387FFFE014 |
| C0A23840008038800100A21302485AA25B5BA25BA21360A213E05B1201A41203A76C5A13 |
| 1F7E9D17>I<EA03F0EA0C0CEA1006EA3003382001801260A3127038780300123EEA3F06 |
| EA1FC8EA0FF0EA03F8487EEA0C7EEA103F38300F80EA6007EB01C012C01300A31480EA60 |
| 0100201300EA1002EA0C0CEA03F0121F7E9D17>I<EA03F0EA0E18487E487E13071270EB |
| 038012F0A214C0A5EA7007A21238EA180BEA0E13EA03E338000380A3EB07001230EA7806 |
| 130EEA700CEA2018EA1070EA0FC0121F7E9D17>I<127012F8A312701200AA127012F8A3 |
| 127005147C930D>I<127012F8A312701200AA127012F012F8A212781208A31210A31220 |
| A21240051D7C930D>I<5B497EA3497EA3EB09E0A3EB10F0A3EB2078A3497EA2EBC03EEB |
| 801EA248B5FCEB000FA20002EB0780A348EB03C0A2120C001E14E039FF801FFE1F207F9F |
| 22>65 D<B512E0380F0078141EA2801580A515005C141E147CEBFFF0EB007C141FEC0F80 |
| EC07C0140315E0A515C014071580EC0F00143EB512F01B1F7E9E20>I<90380FE0109038 |
| 381C309038E002703803C00139078000F048C71270121E15305A1510127C127800F81400 |
| A91278007C1410123CA26C1420A27E6C6C13406C6C13803900E00300EB380CEB0FF01C21 |
| 7E9F21>I<B512F83807801EEC0780EC03C0EC01E0EC00F015701578A2153CA3153EA815 |
| 3CA2157C1578A215F0EC01E0EC03C0EC0780EC1E00B512F81F1F7F9E23>I<B61280380F |
| 000F14031401140015C01540A314401500A214C0130113FF130113001440A3EC0020A315 |
| 40A315C01401EC0380140FB6FC1B1F7E9E1F>I<B61280380780071401A2140015C01540 |
| A4EC2000A3146014E013FF138014601420A391C7FCA87FEAFFFE1A1F7F9E1E>I<90380F |
| E0109038381C309038E002703803C00139078000F048C71270121E15305A1510127C1278 |
| 00F81400A7EC3FFEEC01F000781300127C123CA27EA27E6C7E3903C001703900E0023090 |
| 38380C1090380FF0001F217E9F24>I<39FFF07FF8390F000780AD90B5FCEB0007AF39FF |
| F07FF81D1F7E9E22>I<EAFFF0EA0F00B3ABEAFFF00C1F7E9E10>I<EAFFF8EA0F8090C7FC |
| B21402A414061404A2140C141C147CB512FC171F7E9E1C>76 D<B46CEB07FE000715C0A2 |
| D805C0130BA2D804E01313A301701323A26D1343A36D1383A290380E0103A3EB0702A3EB |
| 0384A2EB01C8A3EB00F0A21460121FD8FFE0EB7FFE271F7F9E2A>I<B4EB0FF8390F8003 |
| E0EC0080EA0BC0EA09E0A2EA08F01378A27F7FA27FEB0780A2EB03C0EB01E0A2EB00F014 |
| 78A2143C141EA2140F1407A214031401123E38FF80001D1F7E9E22>I<EB1FE0EB703838 |
| 01C00E48487E39070003804814C0001EEB01E048EB00F0A2007C14F8A20078147800F814 |
| 7CA900781478007C14F8A2003C14F0003E1301001E14E06CEB03C06C1480390380070038 |
| 01E01E38007038EB1FE01E217E9F23>I<B512E0380F007C141E80EC0780A215C0A41580 |
| A2EC0F00141E147CEBFFE090C8FCAEEAFFF01A1F7E9E1F>I<B57E380F00F0143C8080A2 |
| 1580A41500A2141E5C14F0EBFF80EB01C0EB0070A280143CA3143EA31504143F141FEC0F |
| 0839FFF00788C7EA01F01E207E9E21>82 D<3803F040380C0CC0EA1803EA3001EA6000A2 |
| 12E01440A36C13007E127CEA7F80EA3FF86CB4FC00071380C613C0EB1FE013031301EB00 |
| F014707EA46C136014E06C13C038F8018038C60300EA81FC14217E9F19>I<007FB512E0 |
| 38780F010060EB006000401420A200C0143000801410A400001400B3497E3803FFFC1C1F |
| 7E9E21>I<39FFF00FF8390F0003E0EC0080B3A46CEB01001380120314026C6C5A6C6C5A |
| EB3830EB0FC01D207E9E22>I<39FFF003FE391F8000F86CC7126015206C6C1340A36C6C |
| 1380A2EBE00100011400A23800F002A213F8EB7804A26D5AA36D5AA2131F6D5AA2EB07C0 |
| A36D5AA36DC7FC1F207F9E22>I<3BFFF07FF81FF03B1F000FC007C06C90390780018017 |
| 0015C001805C00071502EC09E013C000035DEC19F01410D801E05CA2EC2078D800F05CA2 |
| EC403C01785CA2EC801E017C1460013C144090383D000F133F6D5CA2011E1307010E91C7 |
| FCA2010C7F010413022C207F9E2F>I<397FF81FF8390FE007C03907C0030000031302EB |
| E0063801F00400005BEBF818EB78106D5AEB3E60EB1E406D5AA213076D7E497E1305EB08 |
| F0EB18F8EB1078EB207CEB603EEB401EEB801F3901000F801407000214C000061303001F |
| EB07E039FFC01FFE1F1F7F9E22>I<EA1FE0EA3030EA7818131CEA300E1200A313FEEA07 |
| 8EEA1E0E1238127800F01310A3131E127838386720380F83C014147E9317>97 |
| D<121C12FC121CAA137CEA1D87381E0180EB00C0001C13E01470A21478A6147014F014E0 |
| 001E13C0381A018038198700EA107C15207E9F19>I<EA01FCEA0706EA1C0F1238130600 |
| 78C7FC127012F0A61270127800381380A2381C0100EA0706EA01F811147F9314>I<EB01 |
| C0130F1301AAEA01F1EA070DEA0C03EA180112381278127012F0A61270A21238EA180312 |
| 0CEA070D3801F1F815207F9F19>I<EA03F0EA0E1C487E487EA21270EB038012F0A2B5FC |
| 00F0C7FCA31270A26C1380A2381C0100EA0706EA01F811147F9314>I<137CEA01C6EA03 |
| 0F1207EA0E061300A7EAFFF0EA0E00B2EA7FE01020809F0E>I<14E03803E330EA0E3CEA |
| 1C1C38380E00EA780FA5EA380E6C5AEA1E38EA33E00020C7FCA21230A2EA3FFE381FFF80 |
| 14C0383001E038600070481330A4006013606C13C0381C03803803FC00141F7F9417>I< |
| 121C12FC121CAA137C1386EA1D03001E1380A2121CAE38FF8FF014207E9F19>I<123812 |
| 7CA31238C7FCA6121C12FC121CB1EAFF80091F7F9E0C>I<13E0EA01F0A3EA00E01300A6 |
| 1370EA07F012001370B3A31260EAF06013C0EA6180EA3F000C28829E0E>I<121C12FC12 |
| 1CAAEB1FE0EB0780EB060013045B5B5B136013E0EA1DF0EA1E70EA1C38133C131C7F130F |
| 7F148014C038FF9FF014207E9F18>I<121C12FC121CB3ABEAFF8009207F9F0C>I<391C3E |
| 03E039FCC30C30391D039038391E01E01CA2001C13C0AE3AFF8FF8FF8021147E9326>I< |
| EA1C7CEAFC86EA1D03001E1380A2121CAE38FF8FF014147E9319>I<EA01F8EA070E381C |
| 0380383801C0A2387000E0A200F013F0A6007013E0A2383801C0A2381C038038070E00EA |
| 01F814147F9317>I<EA1C7CEAFD87381E018014C0381C00E014F014701478A6147014F0 |
| 14E0381E01C0EB0380381D8700EA1C7C90C7FCA8B47E151D7E9319>I<3801F04038070C |
| C0EA0E02EA1C03EA38011278127012F0A6127012781238EA1C03EA0C05EA0709EA01F1EA |
| 0001A8EB0FF8151D7F9318>I<EA1CF0EAFD18EA1E3CA21318EA1C00AEEAFFC00E147E93 |
| 12>I<EA0FC8EA3038EA6018EAC008A3EAE000127CEA3FE0EA1FF0EA07F8EA003CEA800E |
| 130612C0A21304EAE00CEAD818EA87E00F147F9312>I<1202A31206A2120EA2123EEAFF |
| F8EA0E00AB1304A5EA07081203EA01F00E1C7F9B12>I<381C0380EAFC1FEA1C03AE1307 |
| 120CEA061B3803E3F014147E9319>I<38FF83F8383E00E0001C13C06C1380A338070100 |
| A21383EA0382A2EA01C4A213E4EA00E8A21370A3132015147F9318>I<39FF9FE1FC393C |
| 078070391C030060EC8020000E1440A214C0D80704138014E0A239038861001471A23801 |
| D032143A143E3800E01CA2EB6018EB40081E147F9321>I<38FF87F8381E03C0380E0180 |
| EB0300EA0702EA0384EA01C813D8EA00F01370137813F8139CEA010E1202EA0607380403 |
| 80000C13C0003C13E038FE07FC16147F9318>I<38FF83F8383E00E0001C13C06C1380A3 |
| 38070100A21383EA0382A2EA01C4A213E4EA00E8A21370A31320A25BA3EAF080A200F1C7 |
| FC1262123C151D7F9318>I<EA7FFFEA700E1260EA401C133813781370EA00E0120113C0 |
| EA038012071301120E121EEA1C03EA3802EA7006130EEAFFFE10147F9314>I |
| E /Fn 134[27 25 1[22 26 24 26 23 1[26 27 24 33 9 22 1[15 |
| 25 26 25 23 29 26 28 28 8[33 2[25 35 28 34 2[29 1[29 |
| 27 2[9 1[31 3[30 30 39 7[24 1[28 4[25 10 2[10 25 12 5[26 |
| 38[{}43 50.000000 /whaeberli rf /Fo 23 122 df<127012F8A312701200AB127012 |
| F8A3127005157C940E>58 D<D8FFFCEBFF80D80FC0EB7C006C48133015205D5D4AC7FC14 |
| 025C5C5C5C5C5CEB81C0EB83E01385EB88F01390EBA078EBC03C13808080A26E7E811403 |
| 6E7EA26E7E81486C7F3AFFFC07FF8021227EA126>75 D<B512F0380F803C0007130FEC07 |
| 8015C0140315E0A615C014071580EC0F00143CEBFFF00180C7FCAE487EEAFFFC1B227EA1 |
| 21>80 D<B512E0380F803C0007130E6E7E81140381A55D14075D020EC7FC143CEBFFE0EB |
| 80708080141E140E140FA481A3168015C014073A0FC003C10039FFFC01E2C8127C21237E |
| A124>82 D<3BFFF03FFC03FE3B1F8007E000F86C486C48137017206E7ED807801540A24A |
| 7E2603C0021480A39039E004780100011600A2EC083CD800F01402A2EC101E01785CA2EC |
| 200F013C5CA20260138890391E400790A216D090391F8003F0010F5CA2EC00016D5CA201 |
| 06130001025C2F237FA132>87 D<EA1FE0EA3038EA780C130EEA30071200A313FFEA07C7 |
| EA1E07123C1278127000F01308A3130FEA7817383C2390380FC1E015157E9418>97 |
| D<120E12FE121E120EAB131FEB61C0EB8060380F0030000E1338143C141C141EA7141C14 |
| 3C1438000F1370380C8060EB41C038083F0017237FA21B>I<EA01FEEA0703380C078012 |
| 1C383803000078C7FC127012F0A712700078134012386C1380380C0100EA0706EA01F812 |
| 157E9416>I<14E0130F13011300ABEA01F8EA0704EA0C02EA1C01EA38001278127012F0 |
| A7127012781238EA1801EA0C0238070CF03801F0FE17237EA21B>I<EA01FCEA0707380C |
| 0380381C01C01238007813E0EA700012F0B5FC00F0C7FCA512700078132012386C13406C |
| 138038070300EA00FC13157F9416>I<120E12FE121E120EABEB1F80EB60C0EB80E0380F |
| 0070A2120EAF38FFE7FF18237FA21B>104 D<121C123EA3121CC7FCA8120E127E121E12 |
| 0EB1EAFFC00A227FA10E>I<120E12FE121E120EABEB03FCEB01F014C01480EB02005B5B |
| 5B133813F8EA0F1CEA0E1E130E7F1480EB03C0130114E0EB00F014F838FFE3FE17237FA2 |
| 1A>107 D<120E12FE121E120EB3ADEAFFE00B237FA20E>I<390E1FC07F3AFE60E183803A |
| 1E807201C03A0F003C00E0A2000E1338AF3AFFE3FF8FFE27157F942A>I<380E1F8038FE |
| 60C0381E80E0380F0070A2120EAF38FFE7FF18157F941B>I<EA01FCEA0707380C018038 |
| 1800C0003813E0481370A200F01378A700701370007813F0003813E0381C01C0380E0380 |
| 38070700EA01FC15157F9418>I<EA0E3CEAFE46EA1E8FEA0F0F13061300120EAD120FEA |
| FFF010157F9413>114 D<EA0F88EA3078EA601812C01308A212E0EAF000127FEA3FE0EA |
| 0FF0EA01F8EA003CEA801C130CA212C01308EAE018EAD030EA8FC00E157E9413>I<1202 |
| A41206A3120E121E123EEAFFFCEA0E00AB1304A6EA07081203EA01F00E1F7F9E13>I<00 |
| 0E137038FE07F0EA1E00000E1370AD14F0A238060170380382783800FC7F18157F941B> |
| I<38FF80FE381E00781430000E1320A26C1340A2EB80C000031380A23801C100A2EA00E2 |
| A31374A21338A3131017157F941A>I<38FF80FE381E00781430000E1320A26C1340A2EB |
| 80C000031380A23801C100A2EA00E2A31374A21338A31310A25BA35B12F05B12F10043C7 |
| FC123C171F7F941A>121 D E /Fp 27 122 df<126012F0A2126004047C830C>46 |
| D<5A1207123F12C71207B3A5EAFFF80D1C7C9B15>49 D<EA07C0EA1830EA201CEA400C13 |
| 0EEAF00F12F81307A21270EA000F130EA2131CA213381370136013C0EA0180EA0300EA06 |
| 01120C1218EA1002EA3FFE127F12FF101C7E9B15>I<B512C0380F00788080140E140FA4 |
| 140E141E5C14F8EBFFF0EB003C8080801580A5EC0F00A2141E1478B512E0191C7F9B1D> |
| 66 D<B512C0380F00F0143C140E80A2EC038015C01401A215E0A815C0A2140315801407 |
| 1500140E5C1470B512C01B1C7E9B20>68 D<B512F8380F007814181408A2140C1404A213 |
| 011400A35B13FF13037FA490C7FCA8EAFFF8161C7E9B1B>70 D<90381F8080EBE0613801 |
| 801938070007000E13035A14015A00781300A2127000F01400A6ECFFF0EC0F8000701307 |
| 1278A212387EA27E6C130B380180113800E06090381F80001C1E7E9C21>I<EAFFF8EA0F |
| 8090C7FCB01408A31418A2141014301470EB01F0B5FC151C7E9B1A>76 |
| D<B5FC380F01E0EB007880141C141EA4141C143C5CEB01E001FFC7FCEB01E0EB00701478 |
| 80A61510A2141CA239FFF00E20C7EA03C01C1D7E9B1F>82 D<39FFF07FC0390FC01E0038 |
| 07800CEBC00800035B6C6C5A13F000005BEB7880137C013DC7FC133E7F7F80A2EB13C0EB |
| 23E01321EB40F0497E14783801007C00027F141E0006131F001F148039FF807FF01C1C7F |
| 9B1F>88 D<EA1FC0EA3070EA78387F12301200A2EA01FCEA0F1C12381270126000E01340 |
| A3EA603C38304E80381F870012127E9115>97 D<12FC121CAA137CEA1D87381E0180381C |
| 00C014E014601470A6146014E014C0381E018038190700EA10FC141D7F9C17>I<EA03F8 |
| EA0C0CEA181E1230EA700CEA600012E0A61260EA70021230EA1804EA0C18EA03E00F127F |
| 9112>I<EB1F801303AAEA03F3EA0E0BEA1807EA30031270126012E0A6126012701230EA |
| 1807EA0E1B3803E3F0141D7F9C17>I<EA07E0EA0C30EA1818EA300CEA700EEA600612E0 |
| EAFFFEEAE000A41260EA70021230EA1804EA0C18EA03E00F127F9112>I<EB03803807C4 |
| C0EA1C783838388038301800EA701CA4EA3018EA38386C5AEA27C00020C7FCA21230EA3F |
| F86CB4FC1480EA2003386001C0EAC000A33860018038300300EA1C0EEA07F8121C7F9215 |
| >103 D<1218123CA21218C7FCA712FC121CB0EAFF80091D7F9C0C>105 |
| D<12FC121CAAEB0FE0EB0780EB06005B13105B5B13E0121DEA1E70EA1C781338133C131C |
| 7F130F148038FF9FE0131D7F9C16>107 D<12FC121CB3A9EAFF80091D7F9C0C>I<39FC7E |
| 07E0391C838838391D019018001EEBE01C001C13C0AD3AFF8FF8FF8021127F9124>I<EA |
| FC7CEA1C87EA1D03001E1380121CAD38FF9FF014127F9117>I<EA03F0EA0E1CEA180648 |
| 7E00701380EA600100E013C0A600601380EA700300301300EA1806EA0E1CEA03F012127F |
| 9115>I<EAFCE0EA1D38EA1E78A2EA1C301300ACEAFFC00D127F9110>114 |
| D<EA1F90EA2070EA4030EAC010A212E0EAF800EA7F80EA3FE0EA0FF0EA00F8EA80381318 |
| 12C0A2EAE010EAD060EA8FC00D127F9110>I<1204A4120CA2121C123CEAFFE0EA1C00A9 |
| 1310A5120CEA0E20EA03C00C1A7F9910>I<38FC1F80EA1C03AD1307120CEA0E1B3803E3 |
| F014127F9117>I<38FF07E0383C0380381C0100A2EA0E02A2EA0F06EA0704A2EA0388A2 |
| 13C8EA01D0A2EA00E0A31340A25BA212F000F1C7FC12F312661238131A7F9116>121 |
| D E /Fq 1 14 df<EC7FC0903803FFF890380F803E90393C0007800170EB01C001C0EB00 |
| 6048488048C87E0006814881A24881A248ED0180A248ED00C0A3481660AB006016C0A36C |
| ED0180A26CED0300A26C1506A26C5D6C5D6C6C5C6C6C5C0170495A013CEB078090260F80 |
| 3EC7FC903803FFF89038007FC02B2F7DA332>13 D E /Fr 27 122 |
| df<13021304130813101330136013C0A2EA0180A2EA03005A1206120EA2120C121CA212 |
| 181238A35AA612F0A25AAD7EA21270A67EA31218121CA2120C120EA2120612077EEA0180 |
| A2EA00C0A21360133013101308130413020F497AB519>40 D<7E12407E7E12187E7EA27E |
| A2EA018013C0120013E0A213601370A213301338A3131CA6131EA2130EAD131EA2131CA6 |
| 1338A313301370A2136013E0A213C012011380EA0300A21206A25A5A12105A5A5A0F497C |
| B519>I<127812FCA4127806067A8512>46 D<130813381378EA01F8123FEAFE7812C012 |
| 00B3B313FC387FFFF8A2152F7AAE21>49 D<EB7F803801FFF0380701F8380C007E48131F |
| 00107F48148048EB07C0A2EC03E012B012F87EA31278C7FCEC07C0A21580140F15005C14 |
| 1E5C5C14705C495A495A49C7FC130E130C5B5B5B491320485A48C7FC000614405A120848 |
| 14C0003FB5FC481480B6FCA21B2F7DAE21>I<DA1FE013809138FFFC01903807F00F9039 |
| 0F800183013EC712C3017814274914174848140F485A48481407160348C8FC481501121E |
| 123E123C1600127CA20078160012F8AA92380FFFFC1278007C9138001FC0EE0F80123CA2 |
| 123E121E121F7E6C7E7F12036C7E6C6C1417137C6D1463D90F8013C3903907F007819039 |
| 00FFFE00DA1FF013002E337CB134>71 D<B512C0A2D807F0C8FC6C5AB3AA1620A41640A4 |
| 16C0A21501A21503ED0780151F0007147FB7FCA223317DB029>76 |
| D<EC3FC0903801C038903807000E011CEB0380496D7E01F0EB00F0484814784848804914 |
| 1C0007151E48C87EA2001EED0780A248ED03C0A2007C16E0A200781501A200F816F0AB00 |
| 7CED03E0A4003C16C0003E1507001E1680A26CED0F00A26C6C141E6C6C5CA26C6C5C6C6C |
| 5C0138EB01C06D495A0107010EC7FC903801E0789038003FC02C337CB134>79 |
| D<90387F80203801FFE03907C07860380F001C001EEB06E0481303003813010078130012 |
| 70156012F0A21520A37E1500127C127E7E13C0EA1FF86CB47E6C13F06C13FCC613FF010F |
| 1380010013C0EC1FE01407EC03F01401140015F8A26C1478A57E15706C14F015E07E6CEB |
| 01C000ECEB038000C7EB070038C1F01E38807FFCEB0FF01D337CB125>83 |
| D<D8FFFEEC07FFA2D807F0EC01F849EC00E0000316407F00011680A26D140100001600A2 |
| 017C1402A2137E013E5CA26D5CA280010F5CA26E133001071420A26D6C5BA28001015CA2 |
| 6D6C48C7FCA214FCEC7C02A2EC7E06EC3E04A26E5AA21588EC0F90A2EC07E0A36E5AA36E |
| 5AA230327FB032>86 D<D8FFFE903B3FFF8001FFC0A2D80FE0D903F8C7EA7E006C480101 |
| 151C19186C6C01001510A2826C6C5FA36DEB013E000060A2ED021F017C5FA24B6C7E6D4C |
| C7FCA217C06DD908071302A3913A801003E006010F1604A29139C02001F001075EA29238 |
| 4000F8D903E05DA203C013FC6D6C48EB7C20A2177E02F9C7EA3E6001001640A202FE141F |
| 027E5DA2027C140F023C92C8FCA202388002181406A342327FB044>I<267FFF80EBFFF8 |
| A2D803FEC7EA3F806C48EC1E0000001518017E141016306D14206D6C5B16C06D6C5B6D6C |
| 48C7FC0103130214F06D6C5A01005B14FCEC7E10EC3E20EC3F606E5A6E5A816E7E14034A |
| 7EEC05F814084A7E157EEC203EEC403F9138C01F80EC800FD901007F496D7E0102130349 |
| 80010C6D7E0108130049800130147E0120143E49143F01C0EC1F801201D80FE0EC3FE0D8 |
| FFF891B5FCA230317FB032>I<13FE380303C0380C00E00010137080003C133C003E131C |
| 141EA21208C7FCA3EB0FFEEBFC1EEA03E0EA0F80EA1F00123E123C127C481404A3143EA2 |
| 1278007C135E6CEB8F08390F0307F03903FC03E01E1F7D9E21>97 |
| D<EB1FC0EBF0303801C00C38078002EA0F00000E130F001E5B5AA2007C1304007890C7FC |
| 12F8A91278127C123C15807E000EEB0100120F380780023801C00C3800F030EB1FC0191F |
| 7E9E1D>99 D<15F0141FA214011400AFEB0FC0EB70303801C00C3803800238070001120E |
| 001E13005AA2127C1278A212F8A71278A2127C123CA27E000E13016C1302380380046C6C |
| 487E3A00F030FF80EB1FC021327EB125>I<EB3F80EBE0E0380380383807003C000E7F12 |
| 1E001C7F123C127C00781480140712F8A2B6FC00F8C8FCA61278127C123C15807E000EEB |
| 0100000F13027E3801C00C3800F030EB1FC0191F7E9E1D>I<EA078012FFA2120F1207AF |
| 14FE903883078090388C03C090389001E013A06E7E13C0A25BB3A2486C487E3AFFFC1FFF |
| 80A221327EB125>104 D<120FEA1F80A4EA0F00C7FCABEA0780127FA2120F1207B3A6EA |
| 0FC0EAFFF8A20D307EAF12>I<260780FEEB1FC03BFF83078060F0903A8C03C180783B0F |
| 9001E2003CD807A013E4DA00F47F01C013F8A2495BB3A2486C486C133F3CFFFC1FFF83FF |
| F0A2341F7E9E38>109 D<380780FE39FF83078090388C03C0390F9001E0EA07A06E7E13 |
| C0A25BB3A2486C487E3AFFFC1FFF80A2211F7E9E25>I<EB1FC0EBF0783801C01C380700 |
| 07481480001EEB03C0001C1301003C14E0A248EB00F0A300F814F8A8007814F0007C1301 |
| 003C14E0A26CEB03C0A26CEB07803907800F003801C01C3800F078EB1FC01D1F7E9E21> |
| I<380781FC39FF86078090388801C0390F9000E0D807A0137001C01378497F153E151E15 |
| 1FA2811680A716005DA2151E153E153C6D5B01A013705D90389803C0D9860FC7FCEB81F8 |
| 0180C8FCAB487EEAFFFCA2212D7E9E25>I<380783E038FF8418EB887CEA0F90EA07A014 |
| 38EBC000A35BB3487EEAFFFEA2161F7E9E19>114 D<3801FC10380E0330381800F04813 |
| 7048133012E01410A37E6C1300127EEA3FF06CB4FC6C13C0000313E038003FF0EB01F813 |
| 006C133CA2141C7EA27E14186C1338143000CC136038C301C03880FE00161F7E9E1A>I< |
| 1340A513C0A31201A212031207120F381FFFE0B5FC3803C000B01410A80001132013E000 |
| 001340EB78C0EB1F00142C7FAB19>I<3BFFF03FF80FFCA23B0F8007E003F0913903C001 |
| C00007ED0080A201C0EBE00100031600140401E06D5A00011502EC087001F0EB78060000 |
| 1504EC10380178EB3C08A2EC201C013CEB1E10A2EC400E011EEB0F20A2EC8007010F14C0 |
| A2EC00036D5CA201061301010291C7FC2E1F7F9E30>119 D<D8FFF8EBFF80A2D80FC0EB |
| 7C006C48133815306C6C1320A26C6C5BA27F00005CA2D97801C7FCA2137CEB3C02A26D5A |
| A2131F6D5AA2EB0790A214D0EB03E0A26D5AA36D5AA249C8FCA31302A25B1270EAF80C13 |
| 085BEA7020EA3040EA1F80212D7F9E23>121 D E end |
| %%EndProlog |
| %%BeginSetup |
| %%Feature: *Resolution 300dpi |
| TeXDict begin |
| |
| %%EndSetup |
| %%Page: 0 1 |
| 0 0 bop 651 422 a Fr(Op)r(enGL)901 396 y Fq(\015)-39 |
| b Fp(R)965 422 y Fr(Graphics)816 513 y(with)22 b(the)646 |
| 605 y(X)f(Windo)n(w)g(System)1185 579 y Fq(\015)-39 b |
| Fp(R)753 676 y Fr(\(V)-6 b(ersion)22 b(1.2\))802 802 |
| y Fo(Phil)16 b(Karlton)643 860 y(Revised)f(b)o(y:)21 |
| b(P)o(aula)c(W)l(omac)o(k)508 1027 y Fn(Copyright)765 |
| 1026 y Fm(c)753 1027 y Fl(\015)j Fn(1992-1997)g(Silicon)g(Graphics,)i |
| (Inc.)411 1133 y(This)e(document)i(contains)e(unpublished)i |
| (information)f(of)770 1189 y(Silicon)g(Graphics,)g(Inc.)224 |
| 1296 y Fm(This)14 b(do)q(cumen)o(t)g(is)g(protected)g(b)o(y)f(cop)o |
| (yrigh)o(t,)g(and)h(con)o(tains)g(information)f(proprietary)224 |
| 1352 y(to)i(Silicon)k(Graphics,)d(Inc.)22 b(An)o(y)16 |
| b(cop)o(ying,)g(adaptation,)g(distribution,)h(public)h(p)q(erfor-)224 |
| 1409 y(mance,)d(or)f(public)j(displa)o(y)f(of)f(this)g(do)q(cumen)o(t)g |
| (without)g(the)g(express)g(written)g(consen)o(t)224 1465 |
| y(of)e(Silicon)j(Graphics,)e(Inc.)20 b(is)14 b(strictly)g(prohibited.) |
| 21 b(The)14 b(receipt)g(or)f(p)q(ossession)i(of)e(this)224 |
| 1522 y(do)q(cumen)o(t)19 b(do)q(es)g(not)f(con)o(v)o(ey)g(an)o(y)g |
| (righ)o(ts)g(to)g(repro)q(duce,)h(disclose,)h(or)e(distribute)i(its)224 |
| 1578 y(con)o(ten)o(ts,)12 b(or)g(to)g(man)o(ufacture,)h(use,)g(or)f |
| (sell)i(an)o(ything)f(that)f(it)h(ma)o(y)f(describ)q(e,)i(in)g(whole) |
| 224 1634 y(or)h(in)h(part.)524 1728 y Fn(U.S.)21 b(Government)g |
| (Restricted)g(Rights)f(Legend)224 1822 y Fm(Use,)j(duplication,)i(or)c |
| (disclosure)i(b)o(y)f(the)g(Go)o(v)o(ernmen)o(t)e(is)i(sub)s(ject)g(to) |
| f(restrictions)224 1879 y(set)g(forth)f(in)h(F)-5 b(AR)21 |
| b(52.227.19\(c\)\(2)o(\))d(or)i(subparagraph)g(\(c\)\(1\)\(ii\))g(of)g |
| (the)h(Righ)o(ts)g(in)224 1935 y(T)l(ec)o(hnical)16 b(Data)e(and)g |
| (Computer)g(Soft)o(w)o(are)f(clause)i(at)f(DF)-5 b(ARS)14 |
| b(252.227-7013)e(and/or)224 1991 y(in)21 b(similar)g(or)e(successor)h |
| (clauses)h(in)g(the)f(F)-5 b(AR)20 b(or)f(the)h(DOD)g(or)f(NASA)h(F)-5 |
| b(AR)20 b(Sup-)224 2048 y(plemen)o(t.)28 b(Unpublished)20 |
| b(righ)o(ts)d(reserv)o(ed)h(under)g(the)f(cop)o(yrigh)o(t)g(la)o(ws)h |
| (of)f(the)g(United)224 2104 y(States.)30 b(Con)o(tractor/man)o |
| (ufacturer)16 b(is)j(Silicon)i(Graphics,)f(Inc.,)f(2011)f(N.)g |
| (Shoreline)224 2161 y(Blvd.,)e(Moun)o(tain)f(View,)g(CA)g(94039-7311.) |
| 333 2255 y Fn(OpenGL)22 b(is)d(a)h(registered)i(trademark)f(of)f |
| (Silicon)h(Graphics,)g(Inc.)259 2311 y(X)f(is)f(a)h(registered)i |
| (trademark)g(of)e(the)g(Massachussetts)i(Institute)f(of)878 |
| 2368 y(Technology)295 2424 y(Unix)e(is)g(a)h(registered)i(trademark)g |
| (of)e(A)g(T)g(&)g(T)g(Bell)h(Laboratories.)p eop |
| %%Page: 1 2 |
| 1 1 bop 224 469 a Fr(Op)r(enGL)474 443 y Fq(\015)-39 |
| b Fp(R)536 469 y Fr(Graphics)20 b(with)f(the)h(X)g(Windo)n(w)f(System) |
| 1607 443 y Fq(\015)-39 b Fp(R)802 595 y Fo(Phil)16 b(Karlton)643 |
| 653 y(Revised)f(b)o(y:)21 b(P)o(aula)c(W)l(omac)o(k)224 |
| 903 y Fk(1)67 b(Ov)n(erview)224 1004 y Fm(This)14 b(do)q(cumen)o(t)f |
| (describ)q(es)i(GLX,)e(the)g(Op)q(enGL)h(extension)g(to)f(the)g(X)g |
| (Windo)o(w)224 1061 y(System.)19 b(It)13 b(refers)f(to)g(concepts)h |
| (discussed)h(in)g(the)e(Op)q(enGL)i(sp)q(eci\014cation,)h(and)224 |
| 1117 y(ma)o(y)e(b)q(e)h(view)o(ed)f(as)g(an)g(X)h(sp)q(eci\014c)h(app)q |
| (endix)g(to)d(that)h(do)q(cumen)o(t.)19 b(P)o(arts)12 |
| b(of)h(the)224 1173 y(do)q(cumen)o(t)j(assume)f(some)g(acquain)o(tance) |
| g(with)h(b)q(oth)f(the)h(Op)q(enGL)g(and)g(X.)295 1230 |
| y(In)j(the)g(X)g(Windo)o(w)g(System,)g(Op)q(enGL)h(rendering)g(is)f |
| (made)g(a)o(v)m(ailable)i(as)224 1286 y(an)15 b(extension)h(to)e(X)h |
| (in)g(the)g(formal)g(X)f(sense:)21 b(connection)16 b(and)f(authen)o |
| (tication)224 1343 y(are)h(accomplished)j(with)e(the)g(normal)f(X)h |
| (mec)o(hanisms.)24 b(As)17 b(with)g(other)f(X)h(ex-)224 |
| 1399 y(tensions,)g(there)f(is)g(a)g(de\014ned)h(net)o(w)o(ork)e(proto)q |
| (col)h(for)g(the)g(Op)q(enGL)h(rendering)224 1456 y(commands)e |
| (encapsulated)i(within)f(the)f(X)h(b)o(yte)f(stream.)295 |
| 1512 y(Since)25 b(p)q(erformance)e(is)h(critical)g(in)h(3D)d |
| (rendering,)k(there)e(is)g(a)e(w)o(a)o(y)h(for)224 1569 |
| y(Op)q(enGL)17 b(rendering)g(to)e(b)o(ypass)h(the)g(data)f(enco)q(ding) |
| i(step,)f(the)g(data)f(cop)o(ying,)224 1625 y(and)g(in)o(terpretation)f |
| (of)h(that)e(data)h(b)o(y)h(the)f(X)h(serv)o(er.)k(This)c |
| Fj(dir)n(e)n(ct)g(r)n(endering)f Fm(is)224 1682 y(p)q(ossible)k(only)f |
| (when)g(a)f(pro)q(cess)h(has)f(direct)h(access)g(to)f(the)g(graphics)h |
| (pip)q(eline)q(.)224 1738 y(Allo)o(wing)j(for)e(parallel)j(rendering)e |
| (has)g(a\013ected)g(the)f(design)i(of)e(the)h(GLX)g(in-)224 |
| 1794 y(terface.)h(This)15 b(has)g(resulted)h(in)g(an)e(added)i(burden)g |
| (on)f(the)g(clien)o(t)h(to)e(explicitly)224 1851 y(prev)o(en)o(t)h |
| (parallel)i(execution)f(when)g(that)e(is)i(inappropriate.)295 |
| 1907 y(X)10 b(and)h(the)f(Op)q(enGL)i(ha)o(v)o(e)e(di\013eren)o(t)g |
| (con)o(v)o(en)o(tions)g(for)g(naming)h(en)o(try)f(p)q(oin)o(ts)224 |
| 1964 y(and)16 b(macros.)j(The)c(GLX)g(extension)h(adopts)f(those)g(of)g |
| (the)g(Op)q(enGL.)224 2107 y Fk(2)67 b(GLX)22 b(Op)r(eration)224 |
| 2210 y Fi(2.1)56 b(Rendering)17 b(Con)n(texts)i(and)g(Dra)n(wing)g |
| (Surfaces)224 2296 y Fm(The)k(Op)q(enGL)h(sp)q(eci\014cation)g(is)f(in) |
| o(ten)o(tionally)h(v)m(ague)f(on)g(ho)o(w)f(a)g(rendering)224 |
| 2352 y(con)o(text)f(\(an)h(abstract)e(Op)q(enGL)j(state)e(mac)o(hine\)) |
| i(is)f(created.)39 b(One)23 b(of)e(the)224 2409 y(purp)q(oses)f(of)e |
| (GLX)h(is)h(to)e(pro)o(vide)i(a)e(means)h(to)g(create)f(an)h(Op)q(enGL) |
| i(con)o(text)224 2465 y(and)16 b(asso)q(ciate)f(it)g(with)h(a)f(dra)o |
| (wing)g(surface.)925 2613 y(1)p eop |
| %%Page: 2 3 |
| 2 2 bop 295 286 a Fm(In)19 b(X,)g(a)f(rendering)i(surface)e(is)i |
| (called)g(a)e Fh(Drawable)p Fm(.)30 b Fh(Window)p Fm(s,)18 |
| b(one)h(t)o(yp)q(e)224 343 y(of)j Fh(Drawable)p Fm(,)g(are)g(asso)q |
| (ciated)g(with)g(a)g Fh(Visual)p Fm(.)1128 326 y Fg(\003)1188 |
| 343 y Fm(The)g(X)g(proto)q(col)g(allo)o(ws)224 399 y(for)17 |
| b(a)g(single)h Fh(VisualID)e Fm(to)h(b)q(e)h(instan)o(tiated)f(at)g(m)o |
| (ultiple)i(depths.)27 b(The)17 b(GLX)224 456 y(bindings)22 |
| b(allo)o(w)f(only)g(one)f(depth)h(for)f(an)g(Op)q(enGL)h(renderer)g |
| (for)f(an)o(y)g(giv)o(en)224 512 y Fh(VisualID)p Fm(.)11 |
| b(In)i(GLX)f(the)g(de\014nition)i(of)e Fh(Visual)g Fm(has)g(b)q(een)h |
| (extended)g(to)f(include)224 569 y(the)18 b(t)o(yp)q(es,)f(quan)o |
| (tities)h(and)g(sizes)g(of)f(the)h(ancillary)h(bu\013ers)e(\(depth,)h |
| (accum)o(u-)224 625 y(lation,)h(auxiliary)l(,)h(and)e(stencil\).)29 |
| b(Double)19 b(bu\013ering)g(capabilit)o(y)g(is)g(also)e(\014xed)224 |
| 682 y(b)o(y)f(the)g Fh(Visual)p Fm(.)524 665 y Fg(y)564 |
| 682 y Fm(The)g(ancillary)i(bu\013ers)e(ha)o(v)o(e)g(no)g(meaning)h |
| (within)g(the)f(core)224 738 y(X)h(en)o(vironmen)o(t.)26 |
| b(The)17 b(set)g(of)g(extended)h Fh(Visual)p Fm(s)e(is)h(\014xed)h(at)e |
| (serv)o(er)h(startup)224 795 y(time.)j(One)15 b(result)f(is)g(that)f(a) |
| h(serv)o(er)f(can)h(exp)q(ort)g(m)o(ultiple)i Fh(Visual)p |
| Fm(s)d(that)g(di\013er)224 851 y(only)j(in)g(the)f(extended)h |
| (attributes.)295 907 y(The)i(other)f(t)o(yp)q(e)h(of)f(X)h |
| Fh(Drawable)e Fm(is)j(a)e Fh(Pixmap)p Fm(,)g(a)h(dra)o(wing)f(surface)h |
| (that)224 964 y(is)24 b(main)o(tained)f(o\013)f(screen.)44 |
| b(The)23 b(GLX)g(equiv)m(alen)o(t)h(to)e(an)h(X)g Fh(Pixmap)f |
| Fm(is)h(a)224 1020 y Fh(GLXPixmap)p Fm(.)35 b(A)21 b |
| Fh(GLXPixmap)e Fm(is)i(created)g(using)g(the)g Fh(Visual)e |
| Fm(along)i(with)g(its)224 1077 y(extended)d(attributes.)25 |
| b(The)17 b Fh(Visual)f Fm(is)i(used)f(to)f(de\014ne)j(the)e(t)o(yp)q(e) |
| g(and)g(size)h(of)224 1133 y(the)h(Ancillary)h(bu\013ers)f(asso)q |
| (ciated)g(with)g(the)f Fh(Pixmap)p Fm(.)30 b(The)19 b |
| Fh(Pixmap)e Fm(is)j(used)224 1190 y(as)i(the)g(fron)o(t-left)g(color)h |
| (bu\013er.)41 b(A)22 b Fh(GLXDrawable)f Fm(is)i(the)f(union)i |
| Fl(f)p Fh(Window)p Fm(,)224 1246 y Fh(GLXPixmap)p Fl(g)p |
| Fm(.)295 1303 y(Ancillary)15 b(bu\013ers)f(are)f(asso)q(ciated)h(with)g |
| (a)f Fh(GLXDrawable)p Fm(,)f(not)h(with)h(a)g(ren-)224 |
| 1359 y(dering)i(con)o(text.)j(If)d(sev)o(eral)f(Op)q(enGL)i(renderers)e |
| (are)g(all)h(writing)g(to)e(the)h(same)224 1416 y(windo)o(w,)f(they)h |
| (will)h(share)e(those)g(bu\013ers.)19 b(Rendering)d(op)q(erations)e(to) |
| g(one)g(win-)224 1472 y(do)o(w)21 b(nev)o(er)h(a\013ect)f(the)h |
| (unobscured)h(pixels)g(of)e(another)g(windo)o(w,)j(or)d(of)g(the)224 |
| 1528 y(corresp)q(onding)e(pixels)h(of)d(ancillary)j(bu\013ers)e(of)g |
| (that)f(windo)o(w.)29 b(If)18 b(an)g Fh(Expose)224 1585 |
| y Fm(ev)o(en)o(t)d(is)h(receiv)o(ed)h(b)o(y)e(the)h(clien)o(t,)g(the)g |
| (v)m(alues)g(in)h(the)e(ancillary)i(bu\013ers)f(and)f(in)224 |
| 1641 y(the)f(bac)o(k)g(bu\013ers)g(for)f(regions)h(corresp)q(onding)h |
| (to)e(the)h(exp)q(osed)g(region)g(b)q(ecome)224 1698 |
| y(unde\014ned.)295 1754 y(A)f(rendering)g(con)o(text)g(can)g(b)q(e)g |
| (used)g(with)h(m)o(ultiple)g Fh(GLXDrawable)p Fm(s)d(as)i(long)224 |
| 1811 y(as)k(those)g Fh(Drawable)p Fm(s)e(are)i Fj(similar)p |
| Fm(.)25 b(Similar)18 b(means)f(that)g(the)g(rendering)h(con-)224 |
| 1867 y(texts)d(and)g Fh(GLXDrawable)p Fm(s)f(are)h(created)g(with)g |
| (the)h(same)f Fh(XVisualInfo)p Fm(.)295 1924 y(An)22 |
| b(application)i(can)f(use)f(an)o(y)g(rendering)i(con)o(text)d(\(sub)s |
| (ject)h(to)g(the)g(re-)224 1980 y(strictions)16 b(discussed)h(in)g(the) |
| e(section)h(on)g(address)g(spaces\))f(to)g(render)h(in)o(to)f(an)o(y) |
| 224 2037 y(similar)k Fh(GLXDrawable)p Fm(.)26 b(An)18 |
| b(implication)i(is)e(that)f(m)o(ultiple)j(applications)f(can)224 |
| 2093 y(render)d(in)o(to)f(the)g(same)g(windo)o(w,)g(eac)o(h)g(using)h |
| (a)f(di\013eren)o(t)h(rendering)g(con)o(text.)p 224 2133 |
| 570 2 v 275 2159 a Ff(\003)293 2175 y Fe(The)10 b(asso)q(ciation)j(is)e |
| (with)g(a)f Fd(f)p Fc(Visual)p Fe(,)e Fc(screen)p Fe(,)g |
| Fc(depth)p Fd(g)g Fe(triple.)18 b(An)10 b Fc(XVisualIn)o(fo)c |
| Fe(is)11 b(used)224 2221 y(b)o(y)i(GLX)g(functions)i(since)f(it)f(can)h |
| (b)q(e)f(in)o(terpreted)h(unam)o(biguosl)q(y)m(.)277 |
| 2252 y Ff(y)293 2268 y Fe(An)o(y)h(rendering)h(system)e(is)h(free)f(to) |
| h(use)f(the)h(ancillary)i(bu\013ers)e(as)f(long)i(as)e(it)h(uses)g |
| (them)224 2313 y(in)f(a)f(manner)h(consisten)o(t)g(with)g(the)f(use)g |
| (b)o(y)h(the)f(Op)q(enGL.)925 2613 y Fm(2)p eop |
| %%Page: 3 4 |
| 3 3 bop 224 286 a Fi(2.2)56 b(Using)18 b(Rendering)g(Con)n(texts)224 |
| 372 y Fm(Op)q(enGL)k(de\014nes)f(b)q(oth)f(clien)o(t)h(state)f(and)g |
| (serv)o(er)g(state.)33 b(Th)o(us)20 b(a)g(rendering)224 |
| 429 y(con)o(text)f(consists)h(of)f(t)o(w)o(o)f(parts:)28 |
| b(one)19 b(to)g(hold)h(the)g(clien)o(t)h(state)d(and)i(one)g(to)224 |
| 485 y(hold)e(the)f(serv)o(er)f(state.)24 b(The)17 b(clien)o(t)h(is)f |
| (resp)q(onsible)i(for)d(creating)h(a)f(rendering)224 |
| 542 y(con)o(text)f(and)g(a)g(dra)o(w)o(able;)g(defaults)g(are)g(not)g |
| (supplied.)295 598 y(Eac)o(h)21 b(thread)h(can)g(ha)o(v)o(e)f(at)g |
| (most)g(one)g(curren)o(t)h(rendering)h(con)o(text.)38 |
| b(In)224 655 y(addition,)17 b(a)e(rendering)i(con)o(text)e(can)h(b)q(e) |
| h(curren)o(t)f(for)f(only)h(one)g(thread)g(at)f(one)224 |
| 711 y(time.)295 767 y(Issuing)f(Op)q(enGL)h(commands)e(ma)o(y)g(cause)g |
| (the)h(X)f(bu\013er)g(to)g(b)q(e)h(\015ushed.)20 b(In)224 |
| 824 y(particular,)15 b(calling)h Fb(glFlush\(\))f Fm(will)h(\015ush)f |
| (b)q(oth)f(the)g(X)h(and)f(Op)q(enGL)h(render-)224 880 |
| y(ing)h(streams.)295 937 y(Some)h(state)f(is)h(shared)g(b)q(et)o(w)o |
| (een)g(the)g(Op)q(enGL)h(and)f(X.)f(The)h(pixel)i(v)m(alues)224 |
| 993 y(in)d(the)f(X)f(frame)h(bu\013er)f(are)h(shared.)20 |
| b(The)15 b(X)g(double)h(bu\013er)e(extension)i(\(DBE\))224 |
| 1050 y(has)h(a)f(de\014nition)j(for)d(whic)o(h)i(bu\013er)e(is)i |
| (curren)o(tly)f(the)g(displa)o(y)o(ed)h(bu\013er.)25 |
| b(This)224 1106 y(information)17 b(is)g(shared)f(with)h(GLX.)f(The)h |
| (state)e(of)h(whic)o(h)i(bu\013er)e(is)h(displa)o(y)o(ed)224 |
| 1163 y(trac)o(ks)k(in)i(b)q(oth)f(extensions,)h(indep)q(enden)o(t)i(of) |
| c(whic)o(h)i(extension)f(initiates)h(a)224 1219 y(bu\013er)15 |
| b(sw)o(ap.)224 1341 y Fi(2.3)56 b(Direct)17 b(Rendering)h(and)h |
| (Address)g(Spaces)224 1427 y Fm(One)h(of)f(the)g(basic)h(assumptions)f |
| (of)g(the)g(X)g(proto)q(col)g(is)h(that)e(if)i(a)f(clien)o(t)h(can)224 |
| 1483 y(name)f(an)g(ob)s(ject,)h(then)f(it)h(can)f(manipulate)h(that)f |
| (ob)s(ject.)31 b(GLX)19 b(in)o(tro)q(duces)224 1540 y(the)e(notion)g |
| (of)g(an)f Fj(A)n(ddr)n(ess)h(Sp)n(ac)n(e)p Fm(.)24 b(A)17 |
| b(GLX)g(ob)s(ject)f(cannot)h(b)q(e)g(used)g(outside)224 |
| 1596 y(of)e(the)g(address)g(space)h(in)g(whic)o(h)g(it)f(exists.)295 |
| 1652 y(In)20 b(a)f(classic)i(UNIX)f(en)o(vironmen)o(t,)g(eac)o(h)g(pro) |
| q(cess)f(is)h(in)g(its)g(o)o(wn)f(address)224 1709 y(space.)h(In)14 |
| b(a)g(m)o(ulti-threaded)h(en)o(vironmen)o(t,)f(eac)o(h)g(of)f(the)h |
| (threads)f(will)j(share)d(a)224 1765 y(virtual)j(address)f(space)h |
| (whic)o(h)g(references)g(a)e(common)h(data)g(region.)295 |
| 1822 y(An)21 b(Op)q(enGL)i(clien)o(t)f(that)f(is)g(rendering)h(to)f(a)g |
| (graphics)g(engine)i(directly)224 1878 y(connected)17 |
| b(to)e(the)i(executing)g(CPU)e(ma)o(y)h(a)o(v)o(oid)f(passing)i(the)f |
| (tok)o(ens)f(through)224 1935 y(the)h(X)f(serv)o(er.)20 |
| b(This)15 b(generalization)i(is)f(made)f(for)g(p)q(erformance)g |
| (reasons.)20 b(The)224 1991 y(mo)q(del)15 b(describ)q(ed)g(here)f(sp)q |
| (eci\014cally)j(allo)o(ws)d(for)f(suc)o(h)h(optimizations,)g(but)g(do)q |
| (es)224 2048 y(not)h(mandate)g(that)f(an)o(y)h(implemen)o(tation)i |
| (supp)q(ort)e(it.)295 2104 y(When)e(direct)g(rendering)h(is)f(o)q |
| (ccurring,)g(the)g(address)g(space)g(of)f(the)h(renderer)224 |
| 2161 y(is)h(that)e(of)g(the)i(direct)f(pro)q(cess;)h(when)f(direct)h |
| (rendering)g(is)g(not)e(b)q(eing)i(used,)g(the)224 2217 |
| y(address)21 b(space)f(of)g(the)g(renderer)h(is)g(that)f(of)f(the)i(X)f |
| (serv)o(er.)35 b(The)21 b(clien)o(t)g(has)224 2273 y(the)h(abilit)o(y)h |
| (to)f(reject)g(the)g(use)g(of)f(direct)i(rendering,)h(but)f(there)f(ma) |
| o(y)f(b)q(e)h(a)224 2330 y(p)q(erformance)16 b(p)q(enalt)o(y)f(in)h |
| (doing)g(so.)295 2386 y(In)e(order)g(to)f(use)i(direct)f(rendering,)h |
| (a)f(clien)o(t)h(m)o(ust)e(create)h(a)g(direct)g(render-)224 |
| 2443 y(ing)g(con)o(text.)k(Both)13 b(the)g(clien)o(t)h(con)o(text)f |
| (state)f(and)h(the)g(serv)o(er)g(con)o(text)f(state)h(of)925 |
| 2613 y(3)p eop |
| %%Page: 4 5 |
| 4 4 bop 224 745 1459 2 v 224 1939 2 1195 v 278 819 a |
| 21313290 15345567 1578762 1644544 51178209 37627166 startTexFig |
| |
| 278 819 a |
| %%BeginDocument: block.eps |
| 1 setlinejoin |
| /M { moveto } bind def /S { show } bind def |
| /R { rmoveto } bind def /L { lineto } bind def |
| /B { newpath 0 0 M 0 1 L 1 1 L 1 0 L closepath } bind def |
| /CS { closepath stroke } bind def |
| /newfont 10 dict def |
| newfont begin |
| |
| /FontType 3 def |
| /FontMatrix [1 0 0 1 0 0] def |
| /FontBBox [0 0 1 1] def |
| /Encoding 256 array def |
| 0 1 255 {Encoding exch /.notdef put} for |
| |
| /CharProcs 1 dict def |
| CharProcs begin |
| /.notdef {} def |
| |
| end |
| |
| /BuildChar { |
| 1 0 |
| 0 0 1 1 |
| setcachedevice |
| exch begin |
| Encoding exch get |
| CharProcs exch get |
| end |
| exec |
| } def |
| end |
| /PatternFont newfont definefont pop |
| |
| /bwproc { |
| rgbproc |
| dup length 3 idiv string 0 3 0 |
| 5 -1 roll { |
| add 2 1 roll 1 sub dup 0 eq |
| { pop 3 idiv 3 -1 roll dup 4 -1 roll dup |
| 3 1 roll 5 -1 roll put 1 add 3 0 } |
| { 2 1 roll } ifelse |
| } forall |
| pop pop pop |
| } def |
| systemdict /colorimage known not { |
| /colorimage { |
| pop |
| pop |
| /rgbproc exch def |
| { bwproc } image |
| } def |
| } if |
| /incr { |
| 2 1 roll dup 3 -1 roll |
| 5 -1 roll dup 6 1 roll cvi put |
| 3 1 roll dup 4 1 roll add 3 1 roll |
| } bind def |
| /scanspan { |
| /xb2 exch def |
| /xg2 exch def |
| /xr2 exch def |
| /xx2 exch def |
| /xb1 exch def |
| /xg1 exch def |
| /xr1 exch def |
| /xx1 exch def |
| /dx xx2 xx1 sub def |
| dx 0 ne { |
| /drdx xr2 xr1 sub dx div def |
| /dgdx xg2 xg1 sub dx div def |
| /dbdx xb2 xb1 sub dx div def |
| }{ |
| /drdx 0 def |
| /dgdx 0 def |
| /dbdx 0 def |
| } ifelse |
| /len dx 1 add cvi 3 mul def |
| len string dup dup |
| xr1 drdx 3 -1 roll |
| 0 3 len 1 sub { incr } for |
| pop pop pop |
| xg1 dgdx 3 -1 roll |
| 1 3 len 1 sub { incr } for |
| pop pop pop |
| xb1 dbdx 3 -1 roll |
| 2 3 len 1 sub { incr } for |
| 3 1 roll pop pop |
| } bind def |
| /scantrap { |
| /trapsave save def |
| /b4 exch def |
| /g4 exch def |
| /r4 exch def |
| /x4 exch def |
| /b3 exch def |
| /g3 exch def |
| /r3 exch def |
| /x3 exch def |
| /b2 exch def |
| /g2 exch def |
| /r2 exch def |
| /y2 exch def |
| /x2 exch def |
| /b1 exch def |
| /g1 exch def |
| /r1 exch def |
| /y1 exch def |
| /x1 exch def |
| /dy y1 y2 sub def |
| dy 0 ne { |
| /dxdy12 x2 x1 sub dy div def |
| /dxdy43 x3 x4 sub dy div def |
| /drdy12 r2 r1 sub dy div def |
| /drdy43 r3 r4 sub dy div def |
| /dgdy12 g2 g1 sub dy div def |
| /dgdy43 g3 g4 sub dy div def |
| /dbdy12 b2 b1 sub dy div def |
| /dbdy43 b3 b4 sub dy div def |
| }{ |
| /dxdy12 0 def |
| /dxdy43 0 def |
| /drdy12 0 def |
| /drdy43 0 def |
| /dgdy12 0 def |
| /dgdy43 0 def |
| /dbdy12 0 def |
| /dbdy43 0 def |
| } ifelse |
| y1 -1 y2 { |
| x4 x1 sub 0 lt { exit } if |
| /y exch def |
| /traploopsave save def |
| x1 r1 g1 b1 x4 r4 g4 b4 scanspan |
| /img exch def |
| /xlen x4 x1 sub 1 add def |
| x1 y translate |
| xlen 1 scale |
| xlen cvi 1 8 [xlen 0 0 0.9 0 0] { img } false 3 colorimage |
| traploopsave restore |
| /x1 x1 dxdy12 add def |
| /r1 r1 drdy12 add def |
| /g1 g1 dgdy12 add def |
| /b1 b1 dbdy12 add def |
| /x4 x4 dxdy43 add def |
| /r4 r4 drdy43 add def |
| /g4 g4 dgdy43 add def |
| /b4 b4 dbdy43 add def |
| } for |
| trapsave restore |
| } def |
| /d { |
| newpath |
| moveto |
| lineto |
| lineto |
| closepath |
| stroke |
| } bind def |
| /q { |
| newpath |
| moveto |
| lineto |
| lineto |
| lineto |
| closepath |
| stroke |
| } bind def |
| /draw3 { |
| setgray |
| newpath |
| moveto |
| lineto |
| lineto |
| closepath |
| stroke |
| } bind def |
| /F3 { |
| setgray |
| newpath |
| moveto |
| lineto |
| lineto |
| closepath |
| fill |
| } bind def |
| /F4 { |
| setgray |
| newpath |
| moveto |
| lineto |
| lineto |
| lineto |
| closepath |
| fill |
| } bind def |
| /F5 { |
| setgray |
| newpath |
| moveto |
| lineto |
| lineto |
| lineto |
| lineto |
| closepath |
| fill |
| } bind def |
| /showcaseisoencoding [ |
| /.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 /minus /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 /guilsinglright |
| /fraction /florin /quotesingle /quotedblleft |
| /guilsinglleft /fi /fl /endash |
| /dagger /daggerdbl /bullet /quotesinglbase |
| /quotedblbase /quotedblright /ellipsis /trademark |
| /dotlessi /grave /acute /circumflex |
| /tilde /macron /breve /dotaccent |
| /dieresis /perthousand /ring /cedilla |
| /Ydieresis /hungarumlaut /ogonek /caron |
| /emdash /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 ] def |
| /Helvetica-Bold findfont |
| dup length dict begin |
| {1 index /FID ne {def} {pop pop} ifelse} forall |
| /Encoding showcaseisoencoding def |
| currentdict |
| end |
| /Helvetica-Bold-SHOWISO exch definefont pop |
| /Courier-Bold findfont |
| dup length dict begin |
| {1 index /FID ne {def} {pop pop} ifelse} forall |
| /Encoding showcaseisoencoding def |
| currentdict |
| end |
| /Courier-Bold-SHOWISO exch definefont pop |
| /NewCenturySchlbk-BoldItalic findfont |
| dup length dict begin |
| {1 index /FID ne {def} {pop pop} ifelse} forall |
| /Encoding showcaseisoencoding def |
| currentdict |
| end |
| /NewCenturySchlbk-BoldItalic-SHOWISO exch definefont pop |
| /Helvetica-BoldOblique findfont |
| dup length dict begin |
| {1 index /FID ne {def} {pop pop} ifelse} forall |
| /Encoding showcaseisoencoding def |
| currentdict |
| end |
| /Helvetica-BoldOblique-SHOWISO exch definefont pop |
| /Helvetica-Oblique findfont |
| dup length dict begin |
| {1 index /FID ne {def} {pop pop} ifelse} forall |
| /Encoding showcaseisoencoding def |
| currentdict |
| end |
| /Helvetica-Oblique-SHOWISO exch definefont pop |
| /Helvetica findfont |
| dup length dict begin |
| {1 index /FID ne {def} {pop pop} ifelse} forall |
| /Encoding showcaseisoencoding def |
| currentdict |
| end |
| /Helvetica-SHOWISO exch definefont pop |
| /Times-Italic findfont |
| dup length dict begin |
| {1 index /FID ne {def} {pop pop} ifelse} forall |
| /Encoding showcaseisoencoding def |
| currentdict |
| end |
| /Times-Italic-SHOWISO exch definefont pop |
| gsave |
| 0 0 0 setrgbcolor |
| gsave |
| newpath |
| 14.3725 478.994 M -5.62748 518.994 L 223.373 518.994 L 223.373 478.994 L |
| closepath clip newpath |
| /Helvetica-Bold-SHOWISO findfont 32 scalefont setfont |
| 0 0 0 setrgbcolor |
| 24 487 M (GLX) S |
| 102.104 487 M (Client) S |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| 0 0 0 setrgbcolor |
| gsave |
| 0 setlinejoin |
| 309.562 243.075 translate |
| -90 rotate |
| 1.1 1.1 scale |
| newpath 0 0 M -20 -5 L -20 5 L closepath fill |
| grestore |
| 1 setlinewidth |
| newpath |
| 309.562 429.267 M |
| 309.562 262.075 L |
| stroke |
| grestore |
| 0 0 0 setrgbcolor |
| 0 0 0 setrgbcolor |
| gsave |
| matrix currentmatrix |
| [179.773 0 0 -139.751 213.558 571.59] concat |
| B |
| setmatrix |
| 3 setlinewidth |
| gsave stroke grestore |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| 0 0 0 setrgbcolor |
| 1 setlinewidth |
| newpath |
| 214.499 485.853 M |
| 336.858 485.853 L |
| stroke |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| newpath |
| 260.972 443.842 M 240.972 474.842 L 349.972 474.842 L 349.972 443.842 L |
| closepath clip newpath |
| 270 450 M gsave |
| -270 0.0 translate |
| 1.06779 1.0 scale |
| 252.858 0.0 translate |
| /Helvetica-Bold-SHOWISO findfont 24 scalefont setfont |
| 0 0 0 setrgbcolor |
| (Xlib) S |
| grestore |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| newpath |
| 232.736 501.286 M 212.736 563.286 L 408.736 563.286 L 408.736 501.286 L |
| closepath clip newpath |
| 242 539 M gsave |
| -242 0.0 translate |
| 1.02541 1.0 scale |
| 236.004 0.0 translate |
| /Helvetica-Bold-SHOWISO findfont 24 scalefont setfont |
| 0 0 0 setrgbcolor |
| (Application) S |
| grestore |
| /Helvetica-Bold-SHOWISO findfont 24 scalefont setfont |
| 0 0 0 setrgbcolor |
| 242 508 M (and) S |
| 293.328 508 M (Toolkit) S |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| 1 setlinewidth |
| 339.681 472.135 M 339.681 503.135 L 393.681 503.135 L 393.681 472.135 L |
| closepath stroke |
| newpath |
| 329.681 472.135 M 309.681 503.135 L 423.681 503.135 L 423.681 472.135 L |
| closepath clip newpath |
| 339 479 M gsave |
| -339 0.0 translate |
| 1.05383 1.0 scale |
| 321.685 0.0 translate |
| /Helvetica-Bold-SHOWISO findfont 24 scalefont setfont |
| 0 0 0 setrgbcolor |
| (GLX) S |
| grestore |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| newpath |
| 21.9023 170.341 M 1.90228 210.341 L 197.902 210.341 L 197.902 170.341 L |
| closepath clip newpath |
| /Helvetica-Bold-SHOWISO findfont 32 scalefont setfont |
| 0 0 0 setrgbcolor |
| 31 179 M (X) S |
| 65.384 179 M (Server) S |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| matrix currentmatrix |
| [179.773 0 0 -139.751 216.382 241.503] concat |
| B |
| setmatrix |
| 3 setlinewidth |
| gsave stroke grestore |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| 1 setlinewidth |
| [1] 0 setdash |
| 293.09 158.196 M 293.09 182.196 L 395.09 182.196 L 395.09 158.196 L |
| closepath stroke |
| newpath |
| 283.09 158.196 M 263.09 182.196 L 425.09 182.196 L 425.09 158.196 L |
| closepath clip newpath |
| /Helvetica-Bold-SHOWISO findfont 18 scalefont setfont |
| 0 0 0 setrgbcolor |
| 293 165 M (X) S |
| 313.98 165 M (Renderer) S |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| 1 setlinewidth |
| 280.03 117.042 M 280.03 141.042 L 395.03 141.042 L 395.03 117.042 L |
| closepath stroke |
| newpath |
| 270.03 117.042 M 250.03 141.042 L 425.03 141.042 L 425.03 117.042 L |
| closepath clip newpath |
| /Helvetica-Bold-SHOWISO findfont 18 scalefont setfont |
| 0 0 0 setrgbcolor |
| 280 124 M (GL) S |
| 313.98 124 M (Renderer) S |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| 1 setlinewidth |
| 223.911 217.067 M 223.911 241.067 L 303.911 241.067 L 303.911 217.067 L |
| closepath stroke |
| newpath |
| 213.911 217.067 M 193.911 241.067 L 333.911 241.067 L 333.911 217.067 L |
| closepath clip newpath |
| 223 224 M gsave |
| -223 0.0 translate |
| 1.02613 1.0 scale |
| 217.322 0.0 translate |
| /Helvetica-Bold-SHOWISO findfont 18 scalefont setfont |
| 0 0 0 setrgbcolor |
| (Dispatch) S |
| grestore |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| 0 0 0 setrgbcolor |
| gsave |
| 0 setlinejoin |
| 292.031 168.199 translate |
| 0 rotate |
| 1.1 1.1 scale |
| newpath 0 0 M -20 -5 L -20 5 L closepath fill |
| grestore |
| 1 setlinewidth |
| newpath |
| 240.912 216.353 M |
| 240.912 168.199 L |
| 273.031 168.199 L |
| stroke |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| 0 0 0 setrgbcolor |
| gsave |
| 0 setlinejoin |
| 277.972 129.045 translate |
| 0 rotate |
| 1.1 1.1 scale |
| newpath 0 0 M -20 -5 L -20 5 L closepath fill |
| grestore |
| 1 setlinewidth |
| newpath |
| 231.382 216.353 M |
| 231.382 129.045 L |
| 258.972 129.045 L |
| stroke |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| matrix currentmatrix |
| [30.1191 0 0 -164.615 638.048 237.216] concat |
| B |
| setmatrix |
| 3 setlinewidth |
| gsave stroke grestore |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| 0 0 0 setrgbcolor |
| 3 setlinewidth |
| newpath |
| 668.168 237.216 M |
| 728.406 292.088 L |
| 728.406 127.473 L |
| 668.168 72.6014 L |
| stroke |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| 0 0 0 setrgbcolor |
| 3 setlinewidth |
| newpath |
| 638.049 237.216 M |
| 698.287 292.088 L |
| 728.406 292.088 L |
| stroke |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| newpath |
| 573.458 25.4462 M 553.458 65.4462 L 807.458 65.4462 L 807.458 25.4462 L |
| closepath clip newpath |
| 583 34 M gsave |
| -583 0.0 translate |
| 1.02845 1.0 scale |
| 566.87 0.0 translate |
| /Helvetica-Bold-SHOWISO findfont 32 scalefont setfont |
| 0 0 0 setrgbcolor |
| (Framebuffer) S |
| grestore |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| 0 0 0 setrgbcolor |
| gsave |
| 0 setlinejoin |
| 639.99 171.199 translate |
| 0 rotate |
| 1.1 1.1 scale |
| newpath 0 0 M -20 -5 L -20 5 L closepath fill |
| grestore |
| 1 setlinewidth |
| newpath |
| 398.037 171.199 M |
| 620.99 171.199 L |
| stroke |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| 0 0 0 setrgbcolor |
| gsave |
| 0 setlinejoin |
| 639.99 130.045 translate |
| 0 rotate |
| 1.1 1.1 scale |
| newpath 0 0 M -20 -5 L -20 5 L closepath fill |
| grestore |
| 1 setlinewidth |
| newpath |
| 398.037 130.045 M |
| 620.99 130.045 L |
| stroke |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| newpath |
| 486.865 320.381 M 466.865 382.381 L 640.865 382.381 L 640.865 320.381 L |
| closepath clip newpath |
| /Helvetica-Bold-SHOWISO findfont 24 scalefont setfont |
| 0 0 0 setrgbcolor |
| 497 358 M (Direct) S |
| 575.664 358 M (GL) S |
| 498 327 M gsave |
| -498 0.0 translate |
| 1.03455 1.0 scale |
| 481.37 0.0 translate |
| (Renderer) S |
| grestore |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| 0 0 0 setrgbcolor |
| gsave |
| 0 setlinejoin |
| 548.633 385.398 translate |
| -90 rotate |
| 1.1 1.1 scale |
| newpath 0 0 M -20 -5 L -20 5 L closepath fill |
| grestore |
| 1 setlinewidth |
| newpath |
| 393.331 484.138 M |
| 548.633 484.138 L |
| 548.633 404.398 L |
| stroke |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| 0 0 0 setrgbcolor |
| gsave |
| 0 setlinejoin |
| 637.166 215.782 translate |
| 0 rotate |
| 1.1 1.1 scale |
| newpath 0 0 M -20 -5 L -20 5 L closepath fill |
| grestore |
| 1 setlinewidth |
| newpath |
| 548.633 303.234 M |
| 548.633 215.782 L |
| 618.166 215.782 L |
| stroke |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| matrix currentmatrix |
| [139.301 0 0 -83.1647 479.923 387.256] concat |
| B |
| setmatrix |
| 3 setlinewidth |
| gsave stroke grestore |
| grestore |
| grestore |
| showpage |
| %%EndDocument |
| |
| endTexFig |
| 263 1909 a Fp(Figure)14 b(1.)k(Direct)c(Rendering)g(Blo)q(c)o(k)g |
| (Diagram.)p 1681 1939 2 1195 v 224 1941 1459 2 v 925 |
| 2613 a Fm(4)p eop |
| %%Page: 5 6 |
| 5 5 bop 224 286 a Fm(a)17 b(direct)h(rendering)g(con)o(text)e(exist)i |
| (in)g(the)f(clien)o(t's)h(address)f(space;)g(this)h(state)224 |
| 343 y(cannot)13 b(b)q(e)h(shared)f(b)o(y)g(a)g(clien)o(t)i(in)f |
| (another)e(pro)q(cess.)20 b(With)13 b(indirect)i(rendering)224 |
| 399 y(con)o(texts,)d(the)h(clien)o(t)h(con)o(text)e(state)g(is)i(k)o |
| (ept)e(in)i(the)f(clien)o(t's)g(address)g(space)g(and)224 |
| 456 y(the)j(serv)o(er)f(con)o(text)h(state)f(is)h(k)o(ept)g(in)g(the)g |
| (address)g(space)g(of)f(the)h(X)g(serv)o(er.)21 b(In)224 |
| 512 y(this)e(case)f(the)h(serv)o(er)e(con)o(text)h(state)g(is)g(stored) |
| g(in)h(an)g(X)f(resource;)h(it)g(has)f(an)224 569 y(asso)q(ciated)e |
| (XID)f(and)g(ma)o(y)g(p)q(oten)o(tially)h(b)q(e)g(used)g(b)o(y)f |
| (another)g(clien)o(t)h(pro)q(cess.)224 690 y Fi(2.4)56 |
| b(Op)r(enGL)18 b(Displa)n(y)g(Lists)224 776 y Fm(Most)13 |
| b(Op)q(enGL)i(state)e(is)h(small)g(and)g(easily)h(retriev)o(ed)f(using) |
| h(the)e Fb(glGet*)i Fm(com-)224 833 y(mands.)33 b(This)20 |
| b(is)f(not)g(true)h(of)f(Op)q(enGL)h(displa)o(y)h(lists,)g(whic)o(h)f |
| (are)f(used,)i(for)224 889 y(example,)15 b(to)f(encapsulate)i(a)e(mo)q |
| (del)i(of)e(some)h(ph)o(ysical)h(ob)s(ject.)j(First,)14 |
| b(there)h(is)224 946 y(no)i(mec)o(hanism)h(to)f(obtain)h(the)f(con)o |
| (ten)o(ts)g(of)g(a)g(displa)o(y)h(list)g(from)f(the)g(render-)224 |
| 1002 y(ing)h(con)o(text.)27 b(Second,)19 b(displa)o(y)g(lists)f(ma)o(y) |
| f(b)q(e)i(large)f(and)g(n)o(umerous.)27 b(It)18 b(ma)o(y)224 |
| 1059 y(b)q(e)e(desirable)h(for)d(m)o(ultiple)j(rendering)f(con)o(texts) |
| f(to)g(share)g(displa)o(y)h(lists)g(rather)224 1115 y(than)f |
| (replicating)i(that)e(information)g(in)h(eac)o(h)f(con)o(text.)295 |
| 1171 y(GLX)21 b(pro)o(vides)g(for)f(limited)i(sharing)f(of)g(displa)o |
| (y)g(lists;)j(the)d(lists)h(can)e(b)q(e)224 1228 y(shared)g(only)h(if)g |
| (the)f(serv)o(er)g(state)f(for)h(the)g(con)o(texts)g(share)g(a)g |
| (single)h(address)224 1284 y(space.)31 b(Using)20 b(this)f(mec)o |
| (hanism,)h(a)f(single)h(set)f(of)f(lists)i(can)f(b)q(e)h(used,)g(for)e |
| (in-)224 1341 y(stance,)f(b)o(y)f(a)h(con)o(text)f(that)g(supp)q(orts)h |
| (color)g(index)h(rendering)f(and)g(a)g(con)o(text)224 |
| 1397 y(that)e(supp)q(orts)g(R)o(GBA)g(rendering.)295 |
| 1454 y(A)i(group)g(of)g(shared)h(displa)o(y)h(lists)f(exists)g(un)o |
| (til)g(the)g(last)f(referencing)i(ren-)224 1510 y(dering)d(con)o(text)f |
| (is)h(destro)o(y)o(ed.)k(All)c(rendering)h(con)o(texts)d(ha)o(v)o(e)h |
| (equal)h(access)g(to)224 1567 y(using)g(lists)f(or)g(de\014ning)h(new)f |
| (lists.)21 b(Implemen)o(tations)15 b(sharing)h(con)o(texts)e(m)o(ust) |
| 224 1623 y(handle)i(the)e(case)g(where)h(one)f(rendering)i(con)o(text)d |
| (is)i(using)g(a)f(displa)o(y)i(list)f(when)224 1680 y(another)g |
| (rendering)h(con)o(text)f(destro)o(ys)f(that)h(list.)295 |
| 1736 y(When)e(displa)o(y)g(lists)h(are)e(shared)g(b)q(et)o(w)o(een)h |
| (Op)q(enGL)h(con)o(texts,)e(the)h(sharing)224 1792 y(extends)18 |
| b(only)g(to)f(the)g(displa)o(y)i(lists)f(themselv)o(es)g(and)f(the)h |
| (information)f(ab)q(out)224 1849 y(whic)o(h)f(displa)o(y)g(list)g(n)o |
| (um)o(b)q(ers)f(ha)o(v)o(e)g(b)q(een)h(allo)q(cated.)21 |
| b(In)15 b(particular,)h(the)f(v)m(alue)224 1905 y(of)g(the)g(base)g |
| (set)g(with)h Fb(glListBase)h Fm(is)f(not)e(shared.)295 |
| 1962 y(In)24 b(general,)i(Op)q(enGL)e(commands)g(are)f(not)g(atomic.)44 |
| b Fb(glEndList)26 b Fm(and)224 2018 y Fb(glDeleteLists)f |
| Fm(are)d(exceptions.)42 b(The)23 b(list)g(named)g(in)g(a)f |
| Fb(glNewList)i Fm(call)224 2075 y(is)16 b(not)f(created)g(or)g(sup)q |
| (erseded)i(un)o(til)f Fb(glEndList)h Fm(is)f(called.)22 |
| b(If)16 b(one)f(rendering)224 2131 y(con)o(text)g(is)g(sharing)g(a)g |
| (displa)o(y)h(list)g(with)f(another,)f(it)h(will)i(con)o(tin)o(ue)e(to) |
| g(use)g(the)224 2188 y(existing)d(de\014nition)h(while)f(the)f(second)g |
| (con)o(text)g(is)g(in)h(the)f(pro)q(cess)g(of)f(re-de\014ning)224 |
| 2244 y(it.)925 2613 y(5)p eop |
| %%Page: 6 7 |
| 6 6 bop 224 286 a Fi(2.5)56 b(T)-5 b(exture)17 b(Ob)s(jects)224 |
| 372 y Fm(Op)q(enGL)i(texture)e(state)g(can)h(b)q(e)g(encapsulated)h(in) |
| f(a)f(named)h(texture)f(ob)s(ject.)224 429 y(A)j(texture)f(ob)s(ject)g |
| (is)h(created)g(b)o(y)f(binding)j(an)d(un)o(used)i(name)e(to)g(one)h |
| (of)f(the)224 485 y(texture)e(targets)e(\(TEXTURE)p 787 |
| 485 14 2 v 16 w(1D)i(or)f(TEXTURE)p 1164 485 V 16 w(2D\))g(of)h(a)f |
| (rendering)i(con-)224 542 y(text.)h(When)13 b(a)g(texture)g(ob)s(ject)g |
| (is)h(b)q(ound,)g(Op)q(enGL)h(op)q(erations)e(on)g(the)g(target)224 |
| 598 y(to)i(whic)o(h)h(it)g(is)g(b)q(ound)g(a\013ect)f(the)g(b)q(ound)i |
| (texture)e(ob)s(ject,)f(and)i(queries)g(of)f(the)224 |
| 655 y(target)f(to)h(whic)o(h)h(it)f(is)h(b)q(ound)g(return)f(state)g |
| (from)f(the)h(b)q(ound)h(texture)f(ob)s(ject.)295 711 |
| y(T)l(exture)f(ob)s(jects)h(ma)o(y)e(b)q(e)j(shared)f(b)o(y)f |
| (rendering)i(con)o(texts,)e(as)g(long)h(as)f(the)224 |
| 767 y(serv)o(er)k(p)q(ortion)h(of)f(the)h(con)o(texts)e(share)i(the)f |
| (same)g(address)h(space.)30 b(Op)q(enGL)224 824 y(mak)o(es)15 |
| b(no)g(attempt)g(to)g(sync)o(hronize)h(access)g(to)e(texture)i(ob)s |
| (jects.)k(If)15 b(a)g(texture)224 880 y(ob)s(ject)10 |
| b(is)h(b)q(ound)g(to)e(more)h(than)g(one)h(con)o(text,)f(then)g(it)h |
| (is)g(up)f(to)g(the)g(programmer)224 937 y(to)15 b(ensure)h(that)f(the) |
| h(con)o(ten)o(ts)f(of)h(the)f(ob)s(ject)g(are)h(not)f(b)q(eing)i(c)o |
| (hanged)f(via)g(one)224 993 y(con)o(text)g(while)h(another)f(con)o |
| (text)f(is)i(using)g(the)f(texture)g(ob)s(ject)f(for)g(rendering.)224 |
| 1050 y(The)i(results)g(of)f(c)o(hanging)h(a)f(texture)g(ob)s(ject)g |
| (while)i(another)e(con)o(text)g(is)h(using)224 1106 y(it)f(are)e |
| (unde\014ned.)295 1163 y(A)k(texture)h(ob)s(ject)f(will)j(not)d(b)q(e)h |
| (deleted)h(un)o(til)g(it)f(is)g(no)g(longer)g(b)q(ound)h(to)224 |
| 1219 y(an)o(y)15 b(rendering)h(con)o(text.)224 1341 y |
| Fi(2.6)56 b(Aligning)18 b(Multiple)f(Dra)n(w)n(ables)224 |
| 1427 y Fm(A)11 b(clien)o(t)h(can)g(create)e(one)i(windo)o(w)f(with)g |
| (an)g(o)o(v)o(erla)o(y)f Fh(Visual)g Fm(and)i(a)e(second)i(with)224 |
| 1483 y(a)17 b(main)h(plane)g Fh(Visual)e Fm(and)h(then)h(mo)o(v)o(e)e |
| (them)h(indep)q(enden)o(tly)j(or)d(in)h(concert)224 1540 |
| y(to)c(k)o(eep)h(them)f(aligned.)21 b(This)15 b(is)g(a)f(ma)s(jor)f(c)o |
| (hange)i(b)q(et)o(w)o(een)g(the)f(Op)q(enGL)i(and)224 |
| 1596 y(the)g(previous)g(SGI)f(proprietary)g(GL:)g(allo)q(cation)i(of)d |
| (o)o(v)o(erla)o(y)h(planes)h(and)g(main)224 1652 y(planes)f(for)f(ev)o |
| (ery)g(windo)o(w)h(is)g(no)f(longer)h(done)f(automatically)l(.)21 |
| b(T)l(o)14 b(accomplish)224 1709 y(what)e(w)o(as)f(done)h(b)o(y)g(a)g |
| Fb(dra)o(wmo)q(de)p Fm(/)p Fb(gcon\014g)g Fm(pair)g(in)h(previous)g(v)o |
| (ersions)f(of)g(the)224 1765 y(SGI)i(proprietary)f(GL,)g(the)h(Op)q |
| (enGL)h(clien)o(t)f(can)g(use)g(the)f(follo)o(wing)i(paradigm:)292 |
| 1859 y Fl(\017)23 b Fm(Mak)o(e)11 b(the)h(windo)o(ws)f(whic)o(h)i(are)e |
| (to)g(share)h(the)g(same)f(screen)h(area)f(c)o(hildren)338 |
| 1916 y(of)k(a)h(single)h(windo)o(w)f(\(that)f(will)j(nev)o(er)e(b)q(e)h |
| (written\).)22 b(Size)17 b(and)f(p)q(osition)338 1972 |
| y(the)d(c)o(hildren)i(to)e(completely)h(o)q(cclude)h(their)e(paren)o |
| (t.)19 b(When)14 b(the)f(windo)o(w)338 2029 y(com)o(bination)k(m)o(ust) |
| g(b)q(e)g(mo)o(v)o(ed)g(or)f(resized,)i(p)q(erform)f(the)g(op)q |
| (eration)g(on)338 2085 y(the)e(paren)o(t.)292 2179 y |
| Fl(\017)23 b Fm(Mak)o(e)18 b(the)h(sub)o(windo)o(ws)h(ha)o(v)o(e)f(a)f |
| (bac)o(kground)h(of)g Fh(None)g Fm(so)f(that)h(the)g(X)338 |
| 2235 y(serv)o(er)h(will)i(not)f(pain)o(t)g(in)o(to)f(the)h(shared)g |
| (area)f(when)h(y)o(ou)f(restac)o(k)g(the)338 2292 y(c)o(hildren.)292 |
| 2385 y Fl(\017)j Fm(Select)17 b(for)f(device-related)j(ev)o(en)o(ts)d |
| (on)h(the)f(paren)o(t)h(windo)o(w,)f(not)h(on)f(the)338 |
| 2442 y(c)o(hildren.)28 b(Since)19 b(device-related)g(ev)o(en)o(ts)e |
| (with)h(the)f(fo)q(cus)h(in)g(one)f(of)g(the)925 2613 |
| y(6)p eop |
| %%Page: 7 8 |
| 7 7 bop 338 286 a Fm(c)o(hild)20 b(windo)o(ws)f(will)i(b)q(e)e |
| (inherited)i(b)o(y)e(the)g(paren)o(t,)g(input)h(dispatc)o(hing)338 |
| 343 y(can)15 b(b)q(e)h(done)g(directly)g(without)f(reference)h(to)f |
| (the)g(c)o(hild)i(on)e(top.)224 465 y Fi(2.7)56 b(Multiple)17 |
| b(Threads)224 550 y Fm(It)12 b(is)h(p)q(ossible)g(to)f(create)f(a)h(v)o |
| (ersion)g(of)g(the)g(clien)o(t)h(side)g(library)f(that)g(is)g |
| (protected)224 607 y(against)g(m)o(ultiple)j(threads)d(attempting)g(to) |
| g(access)h(the)f(same)g(connection.)21 b(This)224 663 |
| y(is)15 b(accomplished)g(b)o(y)f(ha)o(ving)g(appropriate)g |
| (de\014nitions)i(for)d Fb(Lo)q(c)o(kDispla)o(y)i Fm(and)224 |
| 720 y Fb(Unlo)q(c)o(kDispla)o(y)p Fm(.)21 b(Since)15 |
| b(there)e(is)h(some)g(p)q(erformance)g(p)q(enalt)o(y)g(for)f(doing)h |
| (the)224 776 y(lo)q(c)o(king,)h(it)f(is)g(implemen)o(tation-dep)q |
| (enden)o(t)i(whether)e(a)f(thread)g(safe)h(v)o(ersion,)f(a)224 |
| 833 y(non-safe)j(v)o(ersion,)f(or)g(b)q(oth)h(v)o(ersions)f(of)g(the)h |
| (library)g(are)g(pro)o(vided.)21 b(In)o(terrupt)224 889 |
| y(routines)11 b(ma)o(y)f(not)g(share)g(a)g(connection)h(\(and)f(hence)i |
| (a)e(rendering)h(con)o(text\))f(with)224 946 y(the)k(main)f(thread.)20 |
| b(An)13 b(application)i(ma)o(y)e(b)q(e)h(written)g(as)f(a)g(set)g(of)g |
| (co-op)q(erating)224 1002 y(pro)q(cesses.)295 1059 y(X)20 |
| b(has)h(atomicit)o(y)f(\(b)q(et)o(w)o(een)h(clien)o(ts\))h(and)e |
| (sequen)o(tialit)o(y)i(\(within)g(a)e(sin-)224 1115 y(gle)d(clien)o |
| (t\))g(requiremen)o(ts)g(that)e(limit)j(the)e(amoun)o(t)f(of)h |
| (parallelism)i(ac)o(hiev)m(able)224 1171 y(when)j(in)o(terpreting)h |
| (the)e(command)h(streams.)35 b(GLX)20 b(relaxes)h(these)g(require-)224 |
| 1228 y(men)o(ts.)j(Sequen)o(tialit)o(y)18 b(is)g(still)g(guaran)o(teed) |
| e(within)i(a)e(command)h(stream,)f(but)224 1284 y(not)c(b)q(et)o(w)o |
| (een)g(the)g(X)g(and)g(the)g(Op)q(enGL)h(command)f(streams.)18 |
| b(It)11 b(is)i(p)q(ossible,)h(for)224 1341 y(example,)h(that)e(an)h(X)h |
| (command)f(issued)h(b)o(y)f(a)g(single)h(threaded)f(clien)o(t)i(after)d |
| (an)224 1397 y(Op)q(enGL)k(command)e(migh)o(t)g(b)q(e)h(executed)g(b)q |
| (efore)f(that)g(Op)q(enGL)h(command.)295 1454 y(The)f(X)g(sp)q |
| (eci\014cation)i(requires)f(that)f(commands)g(are)g(atomic:)338 |
| 1548 y(If)10 b(a)h(serv)o(er)f(is)g(implemen)o(ted)j(with)d(in)o |
| (ternal)i(concurrency)l(,)g(the)e(o)o(v)o(er-)338 1604 |
| y(all)21 b(e\013ect)f(m)o(ust)f(b)q(e)i(as)f(if)g(individual)j |
| (requests)d(are)g(executed)h(to)338 1660 y(completion)f(in)g(some)e |
| (serial)i(order,)f(and)g(requests)g(from)f(a)h(giv)o(en)338 |
| 1717 y(connection)g(m)o(ust)f(b)q(e)h(executed)g(in)g(deliv)o(ery)g |
| (order)f(\(that)f(is,)i(the)338 1773 y(total)14 b(execution)j(order)e |
| (is)g(a)g(sh)o(u\017e)h(of)e(the)i(individual)i(streams\).)224 |
| 1867 y(Op)q(enGL)j(commands)e(are)g(not)g(guaran)o(teed)g(to)g(b)q(e)h |
| (atomic.)32 b(Some)20 b(Op)q(enGL)224 1924 y(rendering)d(commands)e |
| (migh)o(t)h(otherwise)f(impair)i(in)o(teractiv)o(e)f(use)g(of)f(the)g |
| (win-)224 1980 y(do)o(wing)g(system)g(b)o(y)g(the)g(user.)20 |
| b(F)l(or)15 b(instance)h(calling)h(a)e(deeply)h(nested)g(displa)o(y)224 |
| 2037 y(list)j(or)f(rendering)h(a)f(large)g(texture)g(mapp)q(ed)h(p)q |
| (olygon)g(on)f(a)g(system)g(with)g(no)224 2093 y(graphics)h(hardw)o |
| (are)e(could)i(prev)o(en)o(t)e(a)h(user)g(from)f(p)q(opping)i(up)g(a)e |
| (men)o(u)h(so)q(on)224 2149 y(enough)e(to)e(b)q(e)i(usable.)295 |
| 2206 y(Sync)o(hronization)i(is)g(in)g(the)f(hands)h(of)f(the)g(clien)o |
| (t.)28 b(It)17 b(can)g(b)q(e)h(main)o(tained)224 2262 |
| y(with)12 b(mo)q(derate)f(cost)f(with)i(the)f(judicious)i(use)f(of)f |
| (the)g Fb(glFinish)p Fm(,)i Fb(glXW)l(aitGL)p Fm(,)224 |
| 2319 y Fb(glXW)l(aitX)p Fm(,)k(and)g Fb(XSync)f Fm(commands.)24 |
| b(Op)q(enGL)18 b(and)f(X)g(rendering)h(can)e(b)q(e)224 |
| 2375 y(done)i(in)h(parallel)g(as)e(long)h(as)f(the)h(clien)o(t)h(do)q |
| (es)f(not)f(preclude)i(it)f(with)g(explicit)224 2432 |
| y(sync)o(hronization)13 b(calls.)20 b(This)13 b(is)g(true)f(ev)o(en)h |
| (when)g(the)f(rendering)h(is)g(b)q(eing)h(done)925 2613 |
| y(7)p eop |
| %%Page: 8 9 |
| 8 8 bop 224 286 a Fm(b)o(y)17 b(the)g(X)g(serv)o(er.)25 |
| b(Th)o(us,)16 b(a)h(m)o(ulti-threaded)h(X)f(serv)o(er)g(implemen)o |
| (tation)h(ma)o(y)224 343 y(execute)d(Op)q(enGL)g(rendering)g(commands)f |
| (in)g(parallel)i(with)e(other)g(X)g(requests.)295 399 |
| y(Some)31 b(p)q(erformance)h(degradation)f(ma)o(y)g(b)q(e)h(exp)q |
| (erienced)i(if)e(needless)224 456 y(switc)o(hing)17 b(b)q(et)o(w)o(een) |
| f(Op)q(enGL)i(and)e(X)g(rendering)h(is)g(done.)23 b(This)16 |
| b(ma)o(y)g(in)o(v)o(olv)o(e)224 512 y(a)f(round)g(trip)h(to)f(the)g |
| (serv)o(er,)f(whic)o(h)i(can)g(b)q(e)g(costly)l(.)224 |
| 655 y Fk(3)67 b(F)-6 b(unctions)24 b(and)f(Errors)224 |
| 759 y Fi(3.1)56 b(Errors)224 844 y Fm(Where)18 b(p)q(ossible,)i(as)d |
| (in)i(X,)e(when)h(a)g(request)f(terminates)h(with)g(an)g(error,)f(the) |
| 224 901 y(request)e(has)g(no)h(side)g(e\013ects.)295 |
| 957 y(The)j(error)f(co)q(des)h(that)f(ma)o(y)g(b)q(e)i(generated)f(b)o |
| (y)f(a)h(request)g(are)f(describ)q(ed)224 1014 y(with)k(that)g |
| (request.)40 b(The)22 b(follo)o(wing)h(table)f(summarizes)h(the)f |
| (GLX-sp)q(eci\014c)224 1070 y(error)15 b(co)q(des)g(that)g(are)g |
| (visible)i(to)e(applications:)247 1176 y Fh(GLXBadContext)22 |
| b Fm(A)i(v)m(alue)i(for)d(a)h Fh(Context)g Fm(argumen)o(t)f(do)q(es)h |
| (not)g(name)g(a)338 1233 y Fh(Context)p Fm(.)247 1327 |
| y Fh(GLXBadContextState)h Fm(An)i(attempt)g(w)o(as)f(made)i(to)e(switc) |
| o(h)i(to)f(another)338 1383 y(rendering)c(con)o(text)e(while)i(the)f |
| (curren)o(t)f(con)o(text)g(w)o(as)g(in)i Fh(RenderMode)338 |
| 1440 y(GL)p 389 1440 15 2 v 17 w(FEEDBACK)c Fm(or)h Fh(GL)p |
| 726 1440 V 17 w(SELECT)p Fm(,)f(or)h(a)g(call)i(to)e |
| Fb(glXMak)o(eCurren)o(t)e Fm(w)o(as)338 1496 y(made)d(b)q(et)o(w)o(een) |
| h(a)e Fb(glBegin)j Fm(and)e(the)h(corresp)q(onding)g(call)g(to)f |
| Fb(glEnd)p Fm(.)247 1590 y Fh(GLXBadCurrentWindow)c Fm(The)k(curren)o |
| (t)f Fh(Drawable)e Fm(of)i(the)g(calling)i(thread)e(is)g(a)338 |
| 1646 y(windo)o(w)h(that)g(is)g(no)h(longer)f(v)m(alid.)247 |
| 1740 y Fh(GLXBadDrawable)g Fm(The)j Fh(Drawable)e Fm(argumen)o(t)g(do)q |
| (es)i(not)f(name)g(a)g Fh(Drawable)338 1797 y Fm(con\014gured)f(for)e |
| (Op)q(enGL)j(rendering.)247 1890 y Fh(GLXBadPixmap)e |
| Fm(The)i Fh(Pixmap)f Fm(argumen)o(t)g(do)q(es)h(not)f(name)h(a)g |
| Fh(Pixmap)f Fm(that)g(is)338 1947 y(appropriate)f(for)g(Op)q(enGL)h |
| (rendering.)247 2041 y Fh(GLXUnsupportedPrivateRequ)o(est)g |
| Fm(Ma)o(y)j(b)q(e)h(returned)g(in)g(resp)q(onse)g(to)f(ei-)338 |
| 2097 y(ther)12 b(a)g(glXV)l(endorPriv)m(ate)i(request)f(or)f(a)g(glXV)l |
| (endorPriv)m(ateWithReply)338 2154 y(request.)295 2260 |
| y(The)j(follo)o(wing)h(error)e(co)q(des)i(ma)o(y)e(b)q(e)i(generated)f |
| (b)o(y)g(a)g(fault)o(y)g(GLX)g(imple-)224 2316 y(men)o(tation,)g(but)g |
| (w)o(ould)h(not)e(normally)i(b)q(e)g(visible)h(to)e(clien)o(ts:)247 |
| 2423 y Fh(GLXBadContextTag)9 b Fm(A)j(rendering)g(request)g(con)o |
| (tains)f(an)h(in)o(v)m(alid)h(con)o(text)e(tag.)338 2479 |
| y(\(Con)o(text)j(tags)g(are)h(used)h(to)e(iden)o(tify)j(con)o(texts)d |
| (in)i(the)f(proto)q(col.\))925 2613 y(8)p eop |
| %%Page: 9 10 |
| 9 9 bop 247 286 a Fh(GLXBadRenderRequest)12 b Fm(A)k(glXRender)g |
| (request)g(is)f(ill-formed.)247 380 y Fh(GLXBadLargeRequest)e |
| Fm(A)i(glXRenderLarge)h(request)g(is)f(ill-formed.)224 |
| 502 y Fi(3.2)56 b(F)-5 b(unctions)224 588 y Fm(GLX)15 |
| b(functions)h(should)g(not)f(b)q(e)h(called)g(b)q(et)o(w)o(een)g |
| Fb(glBegin)g Fm(and)g Fb(glEnd)g Fm(op)q(er-)224 644 |
| y(ations.)22 b(If)16 b(a)f(GLX)h(function)h(is)f(called)h(within)g(a)f |
| Fb(glBegin)p Fm(/)p Fb(glEnd)i Fm(pair,)e(then)224 701 |
| y(the)f(result)h(is)g(unde\014ned;)g(ho)o(w)o(ev)o(er,)e(no)i(error)e |
| (is)i(rep)q(orted.)224 821 y Fb(3.2.1)52 b(Initializat)q(ion)224 |
| 907 y Fm(T)l(o)15 b(ascertain)g(if)h(the)f(GLX)h(extension)g(is)f |
| (de\014ned)i(for)e(an)g(X)g(serv)o(er,)f(use)338 1013 |
| y Fh(Bool)33 b Fb(glX)o(QueryExtension)p Fh(\()58 b(Display)33 |
| b Fj(*dpy)p Fh(,)39 b(int)34 b Fj(*er-)406 1069 y(r)n(or)p |
| 468 1069 14 2 v 17 w(b)n(ase)p Fh(,)14 b(int)h Fj(*event)p |
| 819 1069 V 16 w(b)n(ase)g Fh(\))24 b(;)224 1176 y Fj(dpy)c |
| Fm(sp)q(eci\014es)h(the)e(connection)i(to)e(the)g(X)g(serv)o(er.)32 |
| b Fh(False)19 b Fm(is)h(returned)f(if)h(the)224 1232 |
| y(extension)g(is)g(not)e(presen)o(t.)32 b Fj(err)n(or)p |
| 853 1232 V 17 w(b)n(ase)18 b Fm(is)i(used)f(to)g(return)g(the)g(v)m |
| (alue)h(of)f(the)224 1288 y(\014rst)d(error)g(co)q(de.)24 |
| b(The)16 b(constan)o(t)g(error)f(co)q(des)i(should)h(b)q(e)f(added)g |
| (to)e(this)i(base)224 1345 y(to)e(get)f(the)i(actual)f(v)m(alue.)295 |
| 1401 y Fj(event)p 402 1401 V 16 w(b)n(ase)g Fm(is)i(included)i(for)c |
| (future)h(extension.)24 b(GLX)16 b(do)q(es)h(not)f(curren)o(tly)224 |
| 1458 y(de\014ne)g(an)o(y)f(ev)o(en)o(ts.)295 1514 y(The)g(GLX)g |
| (de\014nition)j(exists)d(in)h(m)o(ultiple)h(v)o(ersions.)j(Use)338 |
| 1608 y Fh(Bool)11 b Fb(glX)o(QueryV)l(ersion)p Fh(\()34 |
| b(Display)11 b Fj(*dpy)p Fh(,)j(int)d Fj(*major)p Fh(,)j(int)406 |
| 1665 y Fj(*minor)h Fh(\))24 b(;)224 1758 y Fm(to)15 b(disco)o(v)o(er)g |
| (whic)o(h)h(v)o(ersion)g(of)e(GLX)i(is)f(a)o(v)m(ailable.)22 |
| b(Up)q(on)16 b(success,)f Fj(major)h Fm(and)224 1815 |
| y Fj(minor)11 b Fm(are)g(\014lled)i(in)f(with)g(the)f(ma)s(jor)f(and)h |
| (minor)g(v)o(ersions)h(of)e(the)i(extension)g(im-)224 |
| 1871 y(plemen)o(tation.)21 b(If)14 b(the)g(clien)o(t)i(and)f(serv)o(er) |
| e(b)q(oth)i(ha)o(v)o(e)f(the)g(same)g(ma)s(jor)f(v)o(ersion)224 |
| 1928 y(n)o(um)o(b)q(er)h(then)f(they)h(are)f(compatible)h(and)g(the)f |
| (minor)h(v)o(ersion)f(that)g(is)h(returned)224 1984 y(is)i(the)f(minim) |
| o(um)h(of)f(the)g(t)o(w)o(o)f(minor)i(v)o(ersion)f(n)o(um)o(b)q(ers.) |
| 295 2041 y Fj(major)e Fm(and)f Fj(minor)h Fm(do)f(not)g(return)g(v)m |
| (alues)i(if)f(they)f(are)g(sp)q(eci\014ed)j(as)d Fb(NULL)p |
| Fm(.)295 2097 y Fb(glX)o(QueryV)l(ersion)h Fm(returns)j |
| Fb(T)l(rue)f Fm(if)h(it)g(succeeds)g(and)g Fb(F)l(alse)g |
| Fm(if)g(it)g(fails.)224 2154 y(If)g(it)f(fails,)h Fj(major)g |
| Fm(and)f Fj(minor)g Fm(are)g(not)g(up)q(dated.)224 2274 |
| y Fb(3.2.2)52 b(Con\014guration)18 b(Managemen)o(t)224 |
| 2359 y Fm(The)c(constan)o(ts)g(sho)o(wn)f(in)i(T)l(able)g(1)f(are)f |
| (passed)i(to)e Fb(glX)o(GetCon\014g)h Fm(and)h Fb(glX-)224 |
| 2416 y(Cho)q(oseVisual)h Fm(to)f(sp)q(ecify)h(whic)o(h)g(attributes)f |
| (are)g(b)q(eing)h(queried.)925 2613 y(9)p eop |
| %%Page: 10 11 |
| 10 10 bop 224 772 1676 2 v 223 829 2 57 v 384 812 a Fm(A)o(ttribute)p |
| 730 829 V 211 w(T)o(yp)q(e)p 934 829 V 76 w(Notes)p 1899 |
| 829 V 224 830 1676 2 v 224 839 V 223 895 2 57 v 365 878 |
| a Fh(GLX)p 440 878 15 2 v 17 w(USE)p 529 878 V 17 w(GL)p |
| 730 895 2 57 v 165 w Fm(b)q(o)q(olean)p 934 895 V 51 |
| w Fb(T)l(rue)15 b Fm(if)g(Op)q(enGL)i(rendering)f(supp)q(orted)p |
| 1899 895 V 224 897 1676 2 v 223 953 2 57 v 305 936 a |
| Fh(GLX)p 380 936 15 2 v 17 w(BUFFER)p 541 936 V 17 w(SIZE)p |
| 730 953 2 57 v 115 w Fm(in)o(teger)p 934 953 V 59 w(depth)g(of)f(the)g |
| (color)g(bu\013er)p 1899 953 V 224 955 1676 2 v 223 1011 |
| 2 57 v 374 994 a Fh(GLX)p 449 994 15 2 v 16 w(LEVEL)p |
| 730 1011 2 57 v 184 w Fm(in)o(teger)p 934 1011 V 59 w(frame)g(bu\013er) |
| g(lev)o(el)p 1899 1011 V 224 1013 1676 2 v 223 1069 2 |
| 57 v 386 1053 a Fh(GLX)p 461 1053 15 2 v 16 w(RGBA)p |
| 730 1069 2 57 v 186 w Fm(b)q(o)q(olean)p 934 1069 V 51 |
| w Fb(T)l(rue)g Fm(if)g(R)o(GBA)h(rendering)g(supp)q(orted)p |
| 1899 1069 V 224 1071 1676 2 v 223 1128 2 57 v 290 1111 |
| a Fh(GLX)p 365 1111 15 2 v 17 w(DOUBLEBUFFER)p 730 1128 |
| 2 57 v 89 w Fm(b)q(o)q(olean)p 934 1128 V 51 w Fb(T)l(rue)f |
| Fm(if)g(color)h(bu\013ers)f(ha)o(v)o(e)f(fron)o(t/bac)o(k)g(pairs)p |
| 1899 1128 V 224 1129 1676 2 v 223 1186 2 57 v 362 1169 |
| a Fh(GLX)p 437 1169 15 2 v 16 w(STEREO)p 730 1186 2 57 |
| v 162 w Fm(b)q(o)q(olean)p 934 1186 V 51 w Fb(T)l(rue)h |
| Fm(if)g(color)h(bu\013ers)f(ha)o(v)o(e)f(left/righ)o(t)i(pairs)p |
| 1899 1186 V 224 1187 1676 2 v 223 1244 2 57 v 305 1227 |
| a Fh(GLX)p 380 1227 15 2 v 17 w(AUX)p 469 1227 V 17 w(BUFFERS)p |
| 730 1244 2 57 v 115 w Fm(in)o(teger)p 934 1244 V 59 w(n)o(um)o(b)q(er)f |
| (of)g(auxiliary)i(color)e(bu\013ers)p 1899 1244 V 224 |
| 1245 1676 2 v 223 1302 2 57 v 341 1285 a Fh(GLX)p 416 |
| 1285 15 2 v 17 w(RED)p 505 1285 V 17 w(SIZE)p 730 1302 |
| 2 57 v 151 w Fm(in)o(teger)p 934 1302 V 59 w(n)o(um)o(b)q(er)g(of)g |
| (bits)h(of)f(Red)h(in)g(the)f(framebu\013er)p 1899 1302 |
| V 224 1304 1676 2 v 223 1360 2 57 v 317 1343 a Fh(GLX)p |
| 392 1343 15 2 v 17 w(GREEN)p 529 1343 V 17 w(SIZE)p 730 |
| 1360 2 57 v 127 w Fm(in)o(teger)p 934 1360 V 59 w(n)o(um)o(b)q(er)g(of) |
| g(bits)h(of)f(Green)g(in)h(the)f(framebu\013er)p 1899 |
| 1360 V 224 1362 1676 2 v 223 1418 2 57 v 329 1401 a Fh(GLX)p |
| 404 1401 15 2 v 17 w(BLUE)p 517 1401 V 17 w(SIZE)p 730 |
| 1418 2 57 v 139 w Fm(in)o(teger)p 934 1418 V 59 w(n)o(um)o(b)q(er)g(of) |
| g(bits)h(of)f(Blue)h(in)g(the)f(framebu\013er)p 1899 |
| 1418 V 224 1420 1676 2 v 223 1476 2 57 v 317 1459 a Fh(GLX)p |
| 392 1459 15 2 v 17 w(ALPHA)p 529 1459 V 17 w(SIZE)p 730 |
| 1476 2 57 v 127 w Fm(in)o(teger)p 934 1476 V 59 w(n)o(um)o(b)q(er)g(of) |
| g(bits)h(in)g(the)f(destination)h(alpha)g(bu\013er)p |
| 1899 1476 V 224 1478 1676 2 v 223 1534 2 57 v 317 1517 |
| a Fh(GLX)p 392 1517 15 2 v 17 w(DEPTH)p 529 1517 V 17 |
| w(SIZE)p 730 1534 2 57 v 127 w Fm(in)o(teger)p 934 1534 |
| V 59 w(n)o(um)o(b)q(er)f(of)g(bits)h(in)g(the)f(depth)h(bu\013er)p |
| 1899 1534 V 224 1536 1676 2 v 223 1593 2 57 v 293 1576 |
| a Fh(GLX)p 368 1576 15 2 v 17 w(STENCIL)p 553 1576 V |
| 16 w(SIZE)p 730 1593 2 57 v 104 w Fm(in)o(teger)p 934 |
| 1593 V 59 w(n)o(um)o(b)q(er)f(of)g(bits)h(in)g(the)f(stencil)i |
| (bu\013er)p 1899 1593 V 224 1594 1676 2 v 223 1651 2 |
| 57 v 273 1634 a Fh(GLX)p 348 1634 15 2 v 17 w(ACCUM)p |
| 485 1634 V 16 w(RED)p 573 1634 V 17 w(SIZE)p 730 1651 |
| 2 57 v 83 w Fm(in)o(teger)p 934 1651 V 59 w(n)o(um)o(b)q(er)e(Red)i |
| (bits)e(in)h(the)g(accum)o(ulation)g(bu\013er)p 1899 |
| 1651 V 224 1652 1676 2 v 223 1709 2 57 v 249 1692 a Fh(GLX)p |
| 324 1692 15 2 v 17 w(ACCUM)p 461 1692 V 16 w(GREEN)p |
| 597 1692 V 17 w(SIZE)p 730 1709 2 57 v 59 w Fm(in)o(teger)p |
| 934 1709 V 59 w(n)o(um)o(b)q(er)f(Green)h(bits)f(in)h(the)g(accum)o |
| (ulation)g(bu\013er)p 1899 1709 V 224 1710 1676 2 v 223 |
| 1767 2 57 v 261 1750 a Fh(GLX)p 336 1750 15 2 v 17 w(ACCUM)p |
| 473 1750 V 16 w(BLUE)p 585 1750 V 17 w(SIZE)p 730 1767 |
| 2 57 v 71 w Fm(in)o(teger)p 934 1767 V 59 w(n)o(um)o(b)q(er)f(Blue)i |
| (bits)f(in)g(the)f(accum)o(ulation)h(bu\013er)p 1899 |
| 1767 V 224 1769 1676 2 v 223 1825 2 57 v 249 1808 a Fh(GLX)p |
| 324 1808 15 2 v 17 w(ACCUM)p 461 1808 V 16 w(ALPHA)p |
| 597 1808 V 17 w(SIZE)p 730 1825 2 57 v 59 w Fm(in)o(teger)p |
| 934 1825 V 59 w(n)o(um)o(b)q(er)f(Alpha)i(bits)e(in)h(the)g(accum)o |
| (ulation)g(bu\013er)p 1899 1825 V 224 1827 1676 2 v 599 |
| 1904 a(T)l(able)g(1:)j(Con\014guration)c(attributes.)914 |
| 2613 y(10)p eop |
| %%Page: 11 12 |
| 11 11 bop 295 286 a Fh(GLX)p 370 286 15 2 v 16 w(BUFFER)p |
| 530 286 V 17 w(SIZE)12 b Fm(giv)o(es)g(the)h(total)e(depth)i(of)f(the)h |
| (color)f(bu\013er)g(in)h(bits.)20 b(F)l(or)224 343 y |
| Fb(PseudoColor)13 b Fm(and)g Fb(StaticColor)h Fm(visuals,)g(this)f(is)h |
| (equal)f(to)g(the)f(depth)i(v)m(alue)224 399 y(rep)q(orted)22 |
| b(in)h(the)f(core)g(X11)f(Visual.)42 b(F)l(or)21 b Fb(T)l(rueColor)g |
| Fm(and)h Fb(DirectColor)224 456 y Fm(visuals,)16 b Fh(GLX)p |
| 460 456 V 17 w(BUFFER)p 621 456 V 16 w(SIZE)e Fm(is)i(the)f(sum)g(of)f |
| Fh(GLX)p 1090 456 V 17 w(RED)p 1179 456 V 17 w(SIZE)p |
| Fm(,)g Fh(GLX)p 1391 456 V 17 w(GREEN)p 1528 456 V 16 |
| w(SIZE)p Fm(,)224 512 y Fh(GLX)p 299 512 V 17 w(BLUE)p |
| 412 512 V 17 w(SIZE)p Fm(,)d(and)i Fh(GLX)p 707 512 V |
| 16 w(ALPHA)p 843 512 V 17 w(SIZE)p Fm(.)e(Note)h(that)g(this)h(v)m |
| (alue)h(ma)o(y)d(b)q(e)i(larger)224 569 y(than)f(the)h(depth)g(v)m |
| (alue)g(rep)q(orted)f(in)i(the)e(core)g(X11)g(visual)h(since)h(it)e(ma) |
| o(y)g(include)224 625 y(alpha)21 b(planes)g(that)e(ma)o(y)g(not)h(b)q |
| (e)h(rep)q(orted)f(b)o(y)g(X11.)34 b(Also,)21 b(for)e |
| Fh(TrueColor)224 682 y Fm(visuals,)e(the)e(sum)h(of)f |
| Fh(GLX)p 688 682 V 17 w(RED)p 777 682 V 17 w(SIZE)p Fm(,)f |
| Fh(GLX)p 989 682 V 17 w(GREEN)p 1126 682 V 17 w(SIZE)p |
| Fm(,)g(and)i Fh(GLX)p 1427 682 V 17 w(BLUE)p 1540 682 |
| V 17 w(SIZE)224 738 y Fm(ma)o(y)f(b)q(e)h(larger)f(than)g(the)g(maxim)o |
| (um)g(depth)h(that)e(core)h(X11)g(can)g(supp)q(ort.)295 |
| 795 y(T)l(o)10 b(obtain)h(a)f(description)i(of)e(an)g(Op)q(enGL)i |
| (attribute)f(exp)q(orted)f(b)o(y)h(a)f Fh(Visual)224 |
| 851 y Fm(use)338 945 y Fh(int)24 b Fb(glX)o(GetCon\014g)p |
| Fh(\()48 b(Display)23 b Fj(*dpy)p Fh(,)k(XVisualInfo*)22 |
| b Fj(*vi-)406 1001 y(sual)p Fh(,)15 b(int)g Fj(attribute)p |
| Fh(,)g(int)g Fj(*value)h Fh(\))23 b(;)295 1095 y Fb(glX)o(GetCon\014g)c |
| Fm(returns)g(through)g Fj(value)g Fm(the)h(v)m(alue)g(of)f(the)g |
| Fj(attribute)i Fm(of)224 1152 y Fj(visual)p Fm(.)295 |
| 1208 y Fb(glX)o(GetCon\014g)f Fm(returns)g(one)h(of)f(the)g(follo)o |
| (wing)h(error)f(co)q(des)g(if)h(it)g(fails,)224 1264 |
| y(and)16 b(Success)g(otherwise:)247 1371 y Fh(GLX)p 322 |
| 1371 V 17 w(NO)p 387 1371 V 17 w(EXTENSION)d Fj(dpy)j |
| Fm(do)q(es)g(not)f(supp)q(ort)g(the)g(GLX)g(extension.)247 |
| 1465 y Fh(GLX)p 322 1465 V 17 w(BAD)p 411 1465 V 16 w(SCREEN)g |
| Fm(screen)h(of)e Fj(visual)h Fm(do)q(es)h(not)e(corresp)q(ond)i(to)f(a) |
| f(screen.)247 1558 y Fh(GLX)p 322 1558 V 17 w(BAD)p 411 |
| 1558 V 16 w(ATTRIBUTE)g Fj(attribute)i Fm(is)g(not)f(a)g(v)m(alid)i |
| (GLX)e(attribute.)247 1652 y Fh(GLX)p 322 1652 V 17 w(BAD)p |
| 411 1652 V 16 w(VISUAL)j Fj(visual)f Fm(do)q(es)i(not)f(supp)q(ort)g |
| (GLX)g(and)g(an)h(attribute)e(other)338 1709 y(than)e |
| Fh(GLX)p 519 1709 V 17 w(USE)p 608 1709 V 16 w(GL)g Fm(w)o(as)g(sp)q |
| (eci\014ed.)247 1802 y Fh(GLX)p 322 1802 V 17 w(BAD)p |
| 411 1802 V 16 w(VALUE)g Fm(parameter)f(in)o(v)m(alid)295 |
| 1909 y(A)28 b(GLX)g(implemen)o(tation)h(ma)o(y)e(exp)q(ort)h(man)o(y)f |
| (visuals)i(that)e(supp)q(ort)224 1965 y(Op)q(enGL.)17 |
| b(These)g(visuals)h(supp)q(ort)e(either)h(color)f(index)i(or)e(R)o(GBA) |
| g(rendering.)224 2022 y(Curren)o(tly)k(R)o(GBA)g(rendering)h(can)f(b)q |
| (e)h(supp)q(orted)f(only)h(b)o(y)f(Visuals)h(of)e(t)o(yp)q(e)224 |
| 2078 y Fb(T)l(rueColor)11 b Fm(or)h Fb(DirectColor)g |
| Fm(and)g(color)g(index)h(rendering)f(can)g(b)q(e)h(supp)q(orted)224 |
| 2134 y(only)j(b)o(y)f(Visuals)h(of)f(t)o(yp)q(e)g Fb(PseudoColor)g |
| Fm(or)g Fb(StaticColor)p Fm(.)295 2191 y(Serv)o(ers)10 |
| b(are)g(required)i(to)e(exp)q(ort)g(at)g(least)h(one)g(visual)h(that)d |
| (supp)q(orts)i(R)o(GBA)224 2247 y(rendering.)34 b(A)o(t)19 |
| b(least)g(one)h(of)f(the)g(visuals)h(that)f(supp)q(orts)h(R)o(GBA)f |
| (rendering)224 2304 y(m)o(ust)h(ha)o(v)o(e)h(at)f(least)h(one)f(color)h |
| (bu\013er,)h(a)e(stencil)j(bu\013er)d(of)h(at)f(least)h(1)f(bit,)224 |
| 2360 y(a)h(depth)g(bu\013er)g(of)f(at)g(least)h(12)f(bits,)i(and)f(an)g |
| (accum)o(ulation)g(bu\013er;)j(alpha)224 2417 y(bitplanes)19 |
| b(are)f(optional.)28 b(The)18 b(color)g(bu\013er)f(size)i(for)e(this)h |
| (visual)h(m)o(ust)e(b)q(e)i(as)224 2473 y(large)d(as)f(that)h(of)f(the) |
| h(deep)q(est)h Fb(T)l(rueColor)p Fm(,)e Fb(DirectColor)p |
| Fm(,)h Fb(PseudoColor)p Fm(,)914 2613 y(11)p eop |
| %%Page: 12 13 |
| 12 12 bop 372 242 1130 2 v 371 299 2 57 v 532 282 a Fm(A)o(ttribute)p |
| 878 299 V 185 w(Default)p 1075 299 V 50 w(Selection)17 |
| b(Criteria)p 1500 299 V 372 301 1130 2 v 372 309 V 371 |
| 365 2 57 v 513 348 a Fh(GLX)p 588 348 15 2 v 17 w(USE)p |
| 677 348 V 16 w(GL)p 878 365 2 57 v 178 w Fb(T)l(rue)p |
| 1075 365 V 78 w Fm(exact)p 1500 365 V 372 367 1130 2 |
| v 371 423 2 57 v 453 406 a Fh(GLX)p 528 406 15 2 v 17 |
| w(BUFFER)p 689 406 V 16 w(SIZE)p 878 423 2 57 v 168 w |
| Fm(0)p 1075 423 V 112 w(minim)o(um,)f(smallest)p 1500 |
| 423 V 372 425 1130 2 v 371 482 2 57 v 522 465 a Fh(GLX)p |
| 597 465 15 2 v 16 w(LEVEL)p 878 482 2 57 v 236 w Fm(0)p |
| 1075 482 V 112 w(exact)p 1500 482 V 372 483 1130 2 v |
| 371 540 2 57 v 533 523 a Fh(GLX)p 608 523 15 2 v 17 w(RGBA)p |
| 878 540 2 57 v 203 w Fb(F)l(alse)p 1075 540 V 67 w Fm(exact)p |
| 1500 540 V 372 541 1130 2 v 371 598 2 57 v 438 581 a |
| Fh(GLX)p 513 581 15 2 v 17 w(DOUBLEBUFFER)p 878 598 2 |
| 57 v 106 w Fb(F)l(alse)p 1075 598 V 67 w Fm(exact)p 1500 |
| 598 V 372 599 1130 2 v 371 656 2 57 v 510 639 a Fh(GLX)p |
| 585 639 15 2 v 16 w(STEREO)p 878 656 2 57 v 179 w Fb(F)l(alse)p |
| 1075 656 V 67 w Fm(exact)p 1500 656 V 372 658 1130 2 |
| v 371 714 2 57 v 453 697 a Fh(GLX)p 528 697 15 2 v 17 |
| w(AUX)p 617 697 V 17 w(BUFFERS)p 878 714 2 57 v 167 w |
| Fm(0)p 1075 714 V 112 w(minim)o(um,)g(smallest)p 1500 |
| 714 V 372 716 1130 2 v 371 772 2 57 v 489 755 a Fh(GLX)p |
| 564 755 15 2 v 17 w(RED)p 653 755 V 17 w(SIZE)p 878 772 |
| 2 57 v 203 w Fm(0)p 1075 772 V 112 w(minim)o(um,)g(largest)p |
| 1500 772 V 372 774 1130 2 v 371 830 2 57 v 465 813 a |
| Fh(GLX)p 540 813 15 2 v 17 w(GREEN)p 677 813 V 16 w(SIZE)p |
| 878 830 2 57 v 180 w Fm(0)p 1075 830 V 112 w(minim)o(um,)g(largest)p |
| 1500 830 V 372 832 1130 2 v 371 888 2 57 v 477 871 a |
| Fh(GLX)p 552 871 15 2 v 17 w(BLUE)p 665 871 V 17 w(SIZE)p |
| 878 888 2 57 v 191 w Fm(0)p 1075 888 V 112 w(minim)o(um,)g(largest)p |
| 1500 888 V 372 890 1130 2 v 371 946 2 57 v 465 930 a |
| Fh(GLX)p 540 930 15 2 v 17 w(ALPHA)p 677 930 V 16 w(SIZE)p |
| 878 946 2 57 v 180 w Fm(0)p 1075 946 V 112 w(minim)o(um,)g(largest)p |
| 1500 946 V 372 948 1130 2 v 371 1005 2 57 v 465 988 a |
| Fh(GLX)p 540 988 15 2 v 17 w(DEPTH)p 677 988 V 16 w(SIZE)p |
| 878 1005 2 57 v 180 w Fm(0)p 1075 1005 V 112 w(minim)o(um,)g(largest)p |
| 1500 1005 V 372 1006 1130 2 v 371 1063 2 57 v 441 1046 |
| a Fh(GLX)p 516 1046 15 2 v 17 w(STENCIL)p 701 1046 V |
| 16 w(SIZE)p 878 1063 2 57 v 156 w Fm(0)p 1075 1063 V |
| 112 w(minim)o(um,)g(smallest)p 1500 1063 V 372 1064 1130 |
| 2 v 371 1121 2 57 v 421 1104 a Fh(GLX)p 496 1104 15 2 |
| v 17 w(ACCUM)p 633 1104 V 16 w(RED)p 721 1104 V 17 w(SIZE)p |
| 878 1121 2 57 v 135 w Fm(0)p 1075 1121 V 112 w(minim)o(um,)g(largest)p |
| 1500 1121 V 372 1122 1130 2 v 371 1179 2 57 v 397 1162 |
| a Fh(GLX)p 472 1162 15 2 v 17 w(ACCUM)p 609 1162 V 16 |
| w(GREEN)p 745 1162 V 17 w(SIZE)p 878 1179 2 57 v 111 |
| w Fm(0)p 1075 1179 V 112 w(minim)o(um,)g(largest)p 1500 |
| 1179 V 372 1181 1130 2 v 371 1237 2 57 v 409 1220 a Fh(GLX)p |
| 484 1220 15 2 v 17 w(ACCUM)p 621 1220 V 16 w(BLUE)p 733 |
| 1220 V 17 w(SIZE)p 878 1237 2 57 v 123 w Fm(0)p 1075 |
| 1237 V 112 w(minim)o(um,)g(largest)p 1500 1237 V 372 |
| 1239 1130 2 v 371 1295 2 57 v 397 1278 a Fh(GLX)p 472 |
| 1278 15 2 v 17 w(ACCUM)p 609 1278 V 16 w(ALPHA)p 745 |
| 1278 V 17 w(SIZE)p 878 1295 2 57 v 111 w Fm(0)p 1075 |
| 1295 V 112 w(minim)o(um,)g(largest)p 1500 1295 V 372 |
| 1297 1130 2 v 258 1374 a(T)l(able)g(2:)j(Defaults)d(and)f(selection)i |
| (criteria)e(used)h(b)o(y)f Fb(glX)o(Cho)q(oseVisual)p |
| Fm(.)224 1556 y(or)21 b Fb(StaticColor)h Fm(visual)g(supp)q(orted)g(on) |
| f(framebu\013er)f(lev)o(el)i(zero)f(\(the)g(main)224 |
| 1613 y(image)15 b(planes\),)h(and)f(it)h(m)o(ust)e(b)q(e)i(a)o(v)m |
| (ailable)h(on)e(framebu\013er)g(lev)o(el)h(zero.)295 |
| 1669 y(If)j(the)g(X)f(serv)o(er)h(exp)q(orts)g(a)f Fb(PseudoColor)g |
| Fm(or)h Fb(StaticColor)h Fm(visual)g(on)224 1726 y(framebu\013er)c(lev) |
| o(el)j(0,)d(a)g(visual)i(that)e(supp)q(orts)h(color)g(index)h |
| (rendering)g(is)f(also)224 1782 y(required.)30 b(If)18 |
| b(color)g(index)i(rendering)f(is)g(supp)q(orted)f(then)h(one)f(of)g |
| (the)g(visuals)224 1839 y(that)d(supp)q(orts)g(color)h(index)h |
| (rendering)f(m)o(ust)f(ha)o(v)o(e)g(at)g(least)g(one)h(color)g |
| (bu\013er,)224 1895 y(a)h(stencil)i(bu\013er)e(of)g(at)g(least)g(1)g |
| (bit,)h(and)g(a)f(depth)h(bu\013er)f(of)g(at)g(least)g(12)g(bits.)224 |
| 1952 y(It)e(also)f(m)o(ust)h(ha)o(v)o(e)f(as)g(man)o(y)g(color)h |
| (bitplanes)h(as)e(the)h(deep)q(est)h Fb(PseudoColor)224 |
| 2008 y Fm(or)f Fb(StaticColor)i Fm(visual)g(supp)q(orted)f(on)f |
| (framebu\013er)g(lev)o(el)i(zero,)d(and)i(it)g(m)o(ust)224 |
| 2065 y(itself)g(b)q(e)g(made)f(a)o(v)m(ailable)i(on)e(lev)o(el)i(zero.) |
| 295 2121 y Fb(glX)o(Cho)q(oseVisual)e Fm(is)g(used)h(to)e(\014nd)i(a)f |
| (visual)h(that)e(matc)o(hes)g(the)h(clien)o(t's)224 2177 |
| y(sp)q(eci\014ed)i(attributes.)338 2276 y Fh(XVisualInfo*)28 |
| b Fb(glX)o(Cho)q(oseVisual)p Fh(\()53 b(Display)29 b |
| Fj(*dpy)p Fh(,)34 b(int)406 2333 y Fj(scr)n(e)n(en)p |
| Fh(,)13 b(int)i Fj(*attrib)p 786 2333 14 2 v 18 w(list)f |
| Fh(\))24 b(;)295 2432 y Fb(glX)o(Cho)q(oseVisual)19 b |
| Fm(returns)f(a)h(p)q(oin)o(ter)g(to)f(an)g Fh(XVisualInfo)f |
| Fm(structure)224 2488 y(describing)k(the)e(visual)i(that)d(b)q(est)h |
| (matc)o(hes)g(the)g(sp)q(eci\014ed)i(attributes.)32 b(If)19 |
| b(no)914 2613 y(12)p eop |
| %%Page: 13 14 |
| 13 13 bop 224 286 a Fm(matc)o(hing)15 b(visual)i(exists,)e |
| Fb(NULL)h Fm(is)g(returned.)295 343 y(The)28 b(attributes)g(are)g(matc) |
| o(hed)h(in)g(an)f(attribute-sp)q(eci\014c)i(manner,)i(as)224 |
| 399 y(sho)o(wn)22 b(in)g(T)l(able)h(2.)39 b(Some)22 b(of)g(the)g |
| (attributes,)h(suc)o(h)f(as)f Fh(GLX)p 1384 399 15 2 |
| v 17 w(LEVEL)p Fm(,)g(m)o(ust)224 456 y(matc)o(h)13 b(the)h(sp)q |
| (eci\014ed)h(v)m(alue)g(exactly;)f(others,)f(suc)o(h)h(as,)f |
| Fh(GLX)p 1293 456 V 17 w(BUFFER)p 1454 456 V 16 w(SIZE)g |
| Fm(and)224 512 y Fh(GLX)p 299 512 V 17 w(RED)p 388 512 |
| V 17 w(SIZE)19 b Fm(m)o(ust)g(meet)h(or)g(exceed)h(the)f(sp)q |
| (eci\014ed)i(minim)o(um)f(v)m(alues.)35 b(In)224 569 |
| y(the)14 b(case)h(of)f Fh(GLX)p 523 569 V 16 w(BUFFER)p |
| 683 569 V 17 w(SIZE)p Fm(,)f(preference)i(is)g(giv)o(en)g(based)f(on)g |
| (ho)o(w)g(close)h(the)224 625 y(visual's)21 b(attribute)f(v)m(alue)h |
| (is)g(to)f(the)g(sp)q(eci\014ed)i(v)m(alue.)36 b(\(A)o(ttributes)20 |
| b(that)f(are)224 682 y(matc)o(hed)e(in)h(this)g(manner)f(ha)o(v)o(e)g |
| Fh(minimum,)23 b(smallest)16 b Fm(listed)i(as)f(their)h(selec-)224 |
| 738 y(tion)h(criteria)h(in)f(T)l(able)h(2.\))30 b(In)20 |
| b(the)f(case)g(of)f Fh(GLX)p 1124 738 V 17 w(RED)p 1213 |
| 738 V 17 w(SIZE)p Fm(,)g(if)h(the)g(sp)q(eci\014ed)224 |
| 795 y(v)m(alue)j(is)g(non-zero,)g(then)f(preference)h(is)f(giv)o(en)g |
| (to)g(visuals)g(with)h(the)e(largest)224 851 y(v)m(alue)j(for)e(this)i |
| (attribute;)h(otherwise)e(preference)h(is)f(giv)o(en)h(to)e(visuals)i |
| (with)224 907 y(the)c(smallest)h(v)m(alue.)32 b(\(A)o(ttributes)19 |
| b(that)f(are)h(matc)o(hed)g(in)h(this)f(manner)h(ha)o(v)o(e)224 |
| 964 y Fh(minimum,)j(largest)14 b Fm(listed)j(as)d(their)i(selection)h |
| (criteria)f(in)g(T)l(able)g(2.\))295 1020 y(If)11 b Fh(GLX)p |
| 411 1020 V 16 w(RGBA)g Fm(is)g(in)g Fj(attrib)p 730 1020 |
| 14 2 v 17 w(list)f Fm(then)h(the)g(resulting)h(visual)g(will)g(b)q(e)f |
| Fh(TrueColor)224 1077 y Fm(or)h Fh(DirectColor)p Fm(.)18 |
| b(If)12 b(all)i(other)e(attributes)h(are)f(equiv)m(alen)o(t,)i(then)f |
| (a)f Fh(TrueColor)224 1133 y Fm(visual)k(will)h(b)q(e)f(c)o(hosen)g(in) |
| g(preference)g(to)e(a)h Fh(DirectColor)f Fm(visual.)295 |
| 1190 y(If)24 b Fh(GLX)p 424 1190 15 2 v 17 w(RGBA)g Fm(is)h(not)f(in)i |
| Fj(attrib)p 876 1190 14 2 v 17 w(list)d Fm(then)i(the)g(returned)g |
| (visual)g(will)h(b)q(e)224 1246 y Fh(PseudoColor)11 b |
| Fm(or)h Fh(StaticColor)p Fm(.)18 b(If)13 b(all)g(other)g(attributes)f |
| (are)g(equiv)m(alen)o(t)j(then)224 1303 y(a)f Fh(PseudoColor)g |
| Fm(visual)h(will)i(b)q(e)e(c)o(hosen)g(in)g(preference)h(to)e(a)g |
| Fh(StaticColor)f Fm(vi-)224 1359 y(sual.)295 1416 y(If)i(an)g |
| (attribute)g(is)g(not)g(sp)q(eci\014ed)i(in)f Fj(attrib)p |
| 1067 1416 V 17 w(list)p Fm(,)e(then)h(the)g(default)g(v)m(alue)i(is)224 |
| 1472 y(used.)k(See)15 b(T)l(able)h(2)f(for)g(a)g(list)h(of)f(defaults.) |
| 295 1528 y(Default)c(sp)q(eci\014cations)j(are)d(sup)q(erseded)i(b)o(y) |
| e(the)h(attributes)f(included)j(in)f Fj(at-)224 1585 |
| y(trib)p 296 1585 V 17 w(list)p Fm(.)19 b(In)o(teger)c(attributes)g |
| (are)g(immediately)i(follo)o(w)o(ed)e(b)o(y)g(the)h(corresp)q(ond-)224 |
| 1641 y(ing)21 b(desired)h(v)m(alue.)37 b(Bo)q(olean)22 |
| b(attributes)e(app)q(earing)i(in)f Fj(attrib)p 1397 1641 |
| V 17 w(list)f Fm(ha)o(v)o(e)g(an)224 1698 y(implicit)i |
| Fb(T)l(rue)e Fm(v)m(alue;)j(suc)o(h)d(attributes)g(are)f |
| Fj(never)g Fm(follo)o(w)o(ed)h(b)o(y)g(an)g(explicit)224 |
| 1754 y Fb(T)l(rue)15 b Fm(or)g Fb(F)l(alse)g Fm(v)m(alue.)21 |
| b(The)15 b(list)h(is)g(terminated)f(with)h Fh(None)p |
| Fm(.)295 1811 y(T)l(o)f(free)g(the)g(data)g(returned,)g(use)g |
| Fb(XF)l(ree)p Fm(.)295 1867 y Fb(NULL)h Fm(is)g(returned)f(if)h(an)f |
| (unde\014ned)i(GLX)e(attribute)g(is)h(encoun)o(tered.)224 |
| 1986 y Fb(3.2.3)52 b(O\013)17 b(Screen)g(Rendering)224 |
| 2071 y Fm(T)l(o)h(create)f(an)h(o\013)f(screen)h(rendering)h(area,)e |
| (\014rst)g(create)h(an)f(X)h Fh(Pixmap)f Fm(of)g(the)224 |
| 2128 y(depth)f(sp)q(eci\014ed)h(b)o(y)e(the)h(desired)g |
| Fh(Visual)p Fm(,)e(then)i(call)338 2223 y Fh(GLXPixmap)43 |
| b Fb(glX)o(CreateGLXPixmap)p Fh(\()68 b(Display)43 b |
| Fj(*dpy)p Fh(,)406 2280 y(XVisualInfo*)13 b Fj(visual)p |
| Fh(,)i(Pixmap)g Fj(pixmap)h Fh(\))23 b(;)295 2375 y Fb(glX)o |
| (CreateGLXPixmap)c Fm(creates)g(an)g(o\013)g(screen)h(rendering)g(area) |
| f(and)224 2432 y(returns)i(its)g(XID.)g(An)o(y)g(GLX)g(rendering)h(con) |
| o(text)f(created)g(with)g(resp)q(ect)h(to)224 2488 y |
| Fj(visual)15 b Fm(can)g(b)q(e)h(used)g(to)f(render)g(in)o(to)g(this)h |
| (o\013)e(screen)i(area.)914 2613 y(13)p eop |
| %%Page: 14 15 |
| 14 14 bop 295 286 a Fj(pixmap)22 b Fm(is)h(used)f(for)f(the)h(R)o(GB)g |
| (planes)h(of)e(the)h(fron)o(t-left)g(bu\013er)g(of)f(the)224 |
| 343 y(resulting)16 b(GLX)f(o\013)g(screen)g(rendering)h(area.)k(The)15 |
| b(alpha)g(bu\013er)g(and)h(ancillary)224 399 y(bu\013ers)g(sp)q |
| (eci\014ed)j(b)o(y)d Fj(visual)g Fm(are)f(created)i(without)f |
| (externally)h(visible)i(names.)224 456 y(GLX)f(pixmaps)h(ma)o(y)e(b)q |
| (e)i(created)f(with)g(a)f Fj(visual)h Fm(that)f(includes)j(bac)o(k)e |
| (bu\013ers)224 512 y(and)11 b(stereoscopic)g(bu\013ers.)19 |
| b(Ho)o(w)o(ev)o(er,)10 b Fb(glXSw)o(apBu\013ers)f Fm(is)j(ignored)f |
| (for)f(these)224 569 y(pixmaps.)295 625 y(A)i(direct)g(rendering)h(con) |
| o(text)e(migh)o(t)h(not)f(b)q(e)h(able)h(to)e(b)q(e)h(made)g(curren)o |
| (t)g(with)224 682 y(a)j Fh(GLXPixmap)p Fm(.)295 738 y(If)i(the)f(depth) |
| h(of)f Fj(pixmap)i Fm(do)q(es)f(not)f(matc)o(h)g(the)h(depth)g(v)m |
| (alue)g(rep)q(orted)g(b)o(y)224 795 y(core)j(X11)g(for)f |
| Fj(visual)p Fm(,)i(or)e(if)i Fj(pixmap)g Fm(w)o(as)e(not)h(created)g |
| (with)g(resp)q(ect)h(to)e(the)224 851 y(same)f(screen)h(as)f |
| Fj(visual)p Fm(,)g(then)h(a)f Fh(BadMatch)f Fm(error)h(is)h(generated.) |
| 29 b(If)19 b Fj(visual)f Fm(is)224 907 y(not)h(v)m(alid)h(\(e.g.,)e(if) |
| h(GLX)g(do)q(es)h(not)e(supp)q(ort)h(it\),)g(then)g(a)g |
| Fh(BadValue)e Fm(error)i(is)224 964 y(generated.)h(If)13 |
| b Fj(pixmap)i Fm(is)f(not)f(a)h(v)m(alid)h(pixmap)f(id,)h(then)f(a)f |
| Fh(BadPixmap)g Fm(error)g(is)224 1020 y(generated.)26 |
| b(Finally)l(,)18 b(if)g(the)f(serv)o(er)g(cannot)f(allo)q(cate)i(the)f |
| (new)h(GLX)f(pixmap,)224 1077 y(a)e Fh(BadAlloc)f Fm(error)h(is)g |
| (generated.)295 1133 y(A)g Fh(GLXPixmap)f Fm(is)i(destro)o(y)o(ed)e(b)o |
| (y)h(calling)338 1240 y Fh(void)74 b Fb(glXDestro)o(yGLXPixmap)p |
| Fh(\()98 b(Display)74 b Fj(*dpy)p Fh(,)406 1296 y(GLXPixmap)14 |
| b Fj(pixmap)i Fh(\))24 b(;)295 1402 y Fm(This)15 b(request)f(deletes)i |
| (the)f(asso)q(ciation)g(b)q(et)o(w)o(een)f(the)h(resource)g(ID)f |
| Fj(pixmap)224 1459 y Fm(and)j(the)g(GLX)f(pixmap.)25 |
| b(The)17 b(storage)e(will)j(b)q(e)f(freed)g(when)g(it)g(is)g(not)f |
| (curren)o(t)224 1515 y(to)f(an)o(y)g(clien)o(t.)295 1572 |
| y(If)i Fj(pixmap)g Fm(is)g(not)f(a)h(v)m(alid)h(GLX)e(pixmap)i(then)f |
| (a)f Fh(GLXBadPixmap)f Fm(error)h(is)224 1628 y(generated.)224 |
| 1748 y Fb(3.2.4)52 b(Rendering)18 b(Con)o(texts)224 1834 |
| y Fm(T)l(o)d(create)g(an)g(Op)q(enGL)i(rendering)f(con)o(text)f(call) |
| 338 1928 y Fh(GLXContext)70 b Fb(glX)o(CreateCon)o(text)p |
| Fh(\()94 b(Display)70 b Fj(*dpy)p Fh(,)406 1984 y(XVisualInfo*)10 |
| b Fj(visual)p Fh(,)j(GLXContext)d Fj(shar)n(e)p 1210 |
| 1984 14 2 v 17 w(list)p Fh(,)h(Bool)h Fj(dir)n(e)n(ct)406 |
| 2041 y Fh(\))24 b(;)224 2134 y Fb(glX)o(CreateCon)o(text)17 |
| b Fm(returns)g Fb(NULL)h Fm(if)f(it)h(fails.)26 b(If)18 |
| b Fb(glX)o(CreateCon)o(text)224 2191 y Fm(succeeds,)c(it)e(initializes) |
| j(the)e(rendering)g(con)o(text)f(to)f(the)i(default)f(Op)q(enGL)i |
| (state)224 2247 y(and)k(returns)f(a)g(handle)h(to)f(it.)26 |
| b(This)18 b(handle)g(can)f(b)q(e)h(used)g(to)f(render)g(to)g(b)q(oth) |
| 224 2304 y(windo)o(ws)e(and)h(GLX)f(pixmaps.)295 2360 |
| y(If)i Fj(shar)n(e)p 448 2360 V 16 w(list)f Fm(is)h(not)f |
| Fb(NULL)p Fm(,)h(then)g(all)h(displa)o(y)f(lists)h(and)e(texture)h(ob)s |
| (jects)224 2417 y(except)12 b(texture)f(ob)s(jects)g(named)g(0)g(will)i |
| (b)q(e)f(shared)g(b)o(y)f Fj(shar)n(e)p 1291 2417 V 17 |
| w(list)f Fm(and)i(the)f(newly)224 2473 y(created)k(rendering)i(con)o |
| (text.)i(An)d(arbitrary)e(n)o(um)o(b)q(er)i(of)f Fb(GLX)o(Con)o(texts)f |
| Fm(can)914 2613 y(14)p eop |
| %%Page: 15 16 |
| 15 15 bop 224 286 a Fm(share)14 b(a)g(single)i(displa)o(y)f(list)g(and) |
| f(texture)g(ob)s(ject)g(space.)20 b(All)15 b(sharing)g(con)o(texts)224 |
| 343 y(m)o(ust)f(also)h(share)f(a)g(single)i(address)f(space)g(or)f(a)g |
| Fh(BadMatch)g Fm(error)f(is)i(generated.)295 399 y(If)f |
| Fj(dir)n(e)n(ct)g Fm(is)g(true,)g(then)g(a)g(direct)h(rendering)g(con)o |
| (text)e(will)j(b)q(e)f(created)f(if)g(the)224 456 y(implemen)o(tation) |
| 21 b(supp)q(orts)f(direct)g(rendering)h(and)f(the)f(connection)i(is)f |
| (to)f(an)224 512 y(X)e(serv)o(er)g(that)g(is)g(lo)q(cal.)27 |
| b(If)18 b Fj(dir)n(e)n(ct)f Fm(is)g Fb(F)l(alse)p Fm(,)h(then)f(a)g |
| (rendering)h(con)o(text)f(that)224 569 y(renders)f(through)f(the)g(X)g |
| (serv)o(er)g(is)h(created.)295 625 y(Direct)i(rendering)i(con)o(texts)e |
| (ma)o(y)g(b)q(e)h(a)f(scarce)h(resource)g(in)g(some)f(imple-)224 |
| 682 y(men)o(tations.)32 b(If)20 b Fj(dir)n(e)n(ct)f Fm(is)h(true,)g |
| (and)f(if)h(a)f(direct)h(rendering)h(con)o(text)d(cannot)224 |
| 738 y(b)q(e)d(created,)f(then)h Fb(glX)o(CreateCon)o(text)f |
| Fm(will)i(attempt)d(to)h(create)g(an)h(indirect)224 795 |
| y(con)o(text)g(instead.)295 851 y Fb(glX)o(CreateCon)o(text)i |
| Fm(can)i(generate)e(the)i(follo)o(wing)g(GLX)f(extension)h(er-)224 |
| 907 y(rors:)f Fh(GLXBadContext)11 b Fm(if)i Fj(shar)n(e)p |
| 800 907 14 2 v 17 w(list)f Fm(is)h(neither)h(zero)f(nor)f(a)h(v)m(alid) |
| i(GLX)d(render-)224 964 y(ing)h(con)o(text;)f Fh(BadValue)f |
| Fm(if)i Fj(visual)f Fm(is)h(not)f(a)f(v)m(alid)j(X)f(Visual)g(or)f(if)h |
| (GLX)f(do)q(es)h(not)224 1020 y(supp)q(ort)18 b(it;)h |
| Fh(BadMatch)e Fm(if)i Fj(shar)n(e)p 817 1020 V 16 w(list)e |
| Fm(de\014nes)i(an)f(address)g(space)g(that)f(cannot)224 |
| 1077 y(b)q(e)c(shared)g(with)f(the)h(newly)g(created)f(con)o(text)g(or) |
| g(if)g Fj(shar)n(e)p 1240 1077 V 17 w(list)f Fm(w)o(as)h(created)g(on)g |
| (a)224 1133 y(di\013eren)o(t)i(screen)f(than)g(the)h(one)f(referenced)h |
| (b)o(y)f Fj(visual)p Fm(;)g Fh(BadAlloc)g Fm(if)g(the)g(serv)o(er)224 |
| 1190 y(do)q(es)j(not)e(ha)o(v)o(e)h(enough)h(resources)f(to)g(allo)q |
| (cate)h(the)f(new)g(con)o(text.)295 1246 y(T)l(o)g(determine)h(if)g(an) |
| f(Op)q(enGL)h(rendering)h(con)o(text)d(is)i(direct)g(call)338 |
| 1340 y Fh(Bool)e Fb(glXIsDirect)p Fh(\()40 b(Display)14 |
| b Fj(*dpy)p Fh(,)i(GLXContext)d Fj(ctx)j Fh(\))23 b(;)295 |
| 1434 y Fb(glXIsDirect)13 b Fm(returns)g Fb(T)l(rue)g |
| Fm(if)h Fj(ctx)f Fm(is)g(a)g(direct)h(rendering)g(con)o(text,)f |
| Fb(F)l(alse)224 1490 y Fm(otherwise.)19 b(If)13 b Fj(ctx)g |
| Fm(is)g(not)g(a)f(v)m(alid)j(GLX)d(rendering)i(con)o(text,)f(a)f |
| Fh(GLXBadContext)224 1547 y Fm(error)j(is)g(generated.)295 |
| 1603 y(An)g(Op)q(enGL)i(rendering)f(con)o(text)f(is)g(destro)o(y)o(ed)g |
| (b)o(y)g(calling)338 1697 y Fh(void)21 b Fb(glXDestro)o(yCon)o(text)p |
| Fh(\()45 b(Display)21 b Fj(*dpy)p Fh(,)k(GLXContext)406 |
| 1753 y Fj(ctx)15 b Fh(\))24 b(;)224 1847 y Fm(If)c Fj(ctx)g |
| Fm(is)g(still)h(curren)o(t)f(to)f(an)o(y)g(thread,)h |
| Fj(ctx)g Fm(is)g(not)f(destro)o(y)o(ed)g(un)o(til)i(it)f(is)g(no)224 |
| 1904 y(longer)d(curren)o(t.)24 b(In)17 b(an)o(y)f(ev)o(en)o(t,)g(the)h |
| (asso)q(ciated)g(XID)g(will)h(b)q(e)f(destro)o(y)o(ed)f(and)224 |
| 1960 y Fj(ctx)f Fm(cannot)g(subsequen)o(tly)i(b)q(e)f(made)f(curren)o |
| (t)g(to)g(an)o(y)f(thread.)295 2017 y Fb(glXDestro)o(yCon)o(text)h |
| Fm(will)j(generate)e(a)g Fh(GLXBadContext)f Fm(error)g(if)i |
| Fj(ctx)g Fm(is)224 2073 y(not)e(a)g(v)m(alid)i(rendering)f(con)o(text.) |
| 295 2130 y(T)l(o)f(cop)o(y)g(Op)q(enGL)h(rendering)h(state)d(from)g |
| (one)i(con)o(text)e(to)h(another,)f(use)338 2223 y Fh(void)36 |
| b Fb(glX)o(Cop)o(yCon)o(text)p Fh(\()59 b(Display)35 |
| b Fj(*dpy)p Fh(,)43 b(GLXContext)406 2280 y Fj(sour)n(c)n(e)p |
| Fh(,)15 b(GLXContext)e Fj(dest)p Fh(,)i(unsigned)23 b(long)15 |
| b Fj(mask)g Fh(\))23 b(;)224 2374 y Fb(glX)o(Cop)o(yCon)o(text)13 |
| b Fm(copies)j(selected)g(groups)e(of)h(state)f(v)m(ariables)i(from)e |
| Fj(sour)n(c)n(e)224 2430 y Fm(to)g Fj(dest)p Fm(.)20 |
| b Fj(mask)14 b Fm(indicates)i(whic)o(h)g(groups)e(of)g(state)g(v)m |
| (ariables)i(are)e(to)g(b)q(e)h(copied;)224 2487 y(it)25 |
| b(con)o(tains)g(the)f(bit)o(wise)i(OR)f(of)f(the)h(sym)o(b)q(olic)h |
| (names)f(for)f(the)g(attribute)914 2613 y(15)p eop |
| %%Page: 16 17 |
| 16 16 bop 224 286 a Fm(groups.)20 b(The)15 b(sym)o(b)q(olic)h(names)f |
| (are)g(the)g(same)g(as)g(those)g(used)g(b)o(y)g Fb(glPushA)o(t-)224 |
| 343 y(trib)p Fm(,)j(describ)q(ed)i(in)e(the)f(Op)q(enGL)i(Sp)q |
| (eci\014cation.)29 b(Also,)18 b(the)g(order)f(in)h(whic)o(h)224 |
| 399 y(the)h(attributes)g(are)f(copied)i(to)e Fj(dest)h |
| Fm(as)f(a)g(result)i(of)e(the)h Fb(glX)o(Cop)o(yCon)o(text)224 |
| 456 y Fm(op)q(eration)24 b(is)g(the)f(same)g(as)g(the)h(order)f(in)h |
| (whic)o(h)h(they)e(are)g(p)q(opp)q(ed)i(o\013)e(of)224 |
| 512 y(the)d(stac)o(k)g(when)g Fb(glP)o(opA)o(ttrib)g |
| Fm(is)h(called.)36 b(The)20 b(single)i(sym)o(b)q(olic)f(constan)o(t)224 |
| 569 y Fh(GL)p 275 569 15 2 v 17 w(ALL)p 364 569 V 17 |
| w(ATTRIB)p 525 569 V 16 w(BITS)13 b Fm(can)g(b)q(e)h(used)g(to)f(cop)o |
| (y)g(the)h(maxim)o(um)f(p)q(ossible)i(p)q(ortion)224 |
| 625 y(of)j(the)g(rendering)h(state.)27 b(It)18 b(is)h(not)e(an)h(error) |
| f(to)h(sp)q(ecify)h Fj(mask)f Fm(bits)g(that)f(are)224 |
| 682 y(unde\014ned.)295 738 y(If)e Fj(sour)n(c)n(e)f Fm(and)h |
| Fj(dest)g Fm(do)f(not)h(share)f(an)h(address)g(space)g(or)f(w)o(ere)h |
| (not)f(created)224 795 y(on)21 b(the)g(same)f(screen,)i(a)f |
| Fh(BadMatch)e Fm(error)h(is)h(generated.)37 b(\()p Fj(sour)n(c)n(e)19 |
| b Fm(and)i Fj(dest)224 851 y Fm(ma)o(y)e(b)q(e)i(based)f(on)g |
| (di\013eren)o(t)h(X)f(visuals)h(and)f(still)h(share)f(an)g(address)g |
| (space;)224 907 y Fb(glX)o(Cop)o(yCon)o(text)11 b Fm(will)j(w)o(ork)d |
| (correctly)h(in)h(suc)o(h)g(cases.)19 b(\))f(If)13 b(the)f(destination) |
| 224 964 y(con)o(text)j(is)g(curren)o(t)g(for)g(some)g(thread)f(then)i |
| (a)f Fh(BadAccess)e Fm(error)i(is)g(generated.)224 1020 |
| y(If)k(the)h(source)f(con)o(text)f(is)i(the)f(same)g(as)f(the)h(curren) |
| o(t)g(con)o(text)g(of)f(the)h(calling)224 1077 y(thread,)c(and)g(the)h |
| (curren)o(t)f(dra)o(w)o(able)g(of)g(the)g(calling)i(thread)f(is)f(a)g |
| (windo)o(w)h(that)224 1133 y(is)c(no)e(longer)h(v)m(alid,)i(a)e |
| Fh(GLXBadCurrentWindow)d Fm(is)k(generated.)18 b(Finally)l(,)13 |
| b(if)e(either)224 1190 y Fj(sour)n(c)n(e)17 b Fm(or)g |
| Fj(dest)h Fm(is)g(not)f(a)g(v)m(alid)i(GLX)f(rendering)h(con)o(text,)e |
| (a)g Fh(GLXBadContext)224 1246 y Fm(error)e(is)g(generated.)295 |
| 1303 y Fb(glX)o(Cop)o(yCon)o(text)i Fm(p)q(erforms)h(an)h(implicit)i |
| Fb(glFlush\(\))f Fm(if)f Fj(sour)n(c)n(e)f Fm(is)h(the)224 |
| 1359 y(curren)o(t)c(con)o(text)g(for)f(the)i(calling)h(thread.)295 |
| 1416 y(Only)22 b(one)g(rendering)g(con)o(text)f(ma)o(y)f(b)q(e)i(in)g |
| (use,)h(or)d Fj(curr)n(ent)p Fm(,)j(for)d(a)h(par-)224 |
| 1472 y(ticular)f(thread)f(at)g(a)g(giv)o(en)h(time.)32 |
| b(The)20 b(minim)o(um)g(n)o(um)o(b)q(er)g(of)f(curren)o(t)g(ren-)224 |
| 1528 y(dering)i(con)o(texts)f(that)f(m)o(ust)h(b)q(e)h(supp)q(orted)g |
| (b)o(y)f(a)g(GLX)g(implemen)o(tation)i(is)224 1585 y(one.)e(\(Supp)q |
| (orting)14 b(a)f(larger)g(n)o(um)o(b)q(er)h(of)f(curren)o(t)g |
| (rendering)i(con)o(texts)e(is)g(essen-)224 1641 y(tial)18 |
| b(for)e(general-purp)q(ose)i(systems,)f(but)g(ma)o(y)f(not)g(b)q(e)i |
| (necessary)f(for)f(turnk)o(ey)224 1698 y(applications.\))295 |
| 1754 y(T)l(o)f(mak)o(e)f(a)h(con)o(text)g(curren)o(t,)g(call)338 |
| 1839 y Fh(Bool)29 b Fb(glXMak)o(eCurren)o(t)p Fh(\()51 |
| b(Display)29 b Fj(*dpy)p Fh(,)34 b(GLXDrawable)406 1895 |
| y Fj(dr)n(awable)p Fh(,)15 b(GLXContext)f Fj(ctx)h Fh(\))24 |
| b(;)295 1980 y Fm(If)19 b(the)g(calling)i(thread)e(already)h(has)f(a)f |
| (curren)o(t)h(rendering)i(con)o(text,)e(then)224 2037 |
| y(that)13 b(con)o(text)g(is)h(\015ushed)h(and)f(mark)o(ed)f(as)h(no)f |
| (longer)h(curren)o(t.)19 b Fj(ctx)14 b Fm(is)g(made)g(the)224 |
| 2093 y(curren)o(t)h(con)o(text)g(for)f(the)i(calling)h(thread.)295 |
| 2149 y(If)i(the)g Fj(dr)n(awable)f Fm(and)h Fj(ctx)g |
| Fm(are)g(not)f(similar,)i(a)f Fh(BadMatch)f Fm(error)g(is)h(gener-)224 |
| 2206 y(ated.)32 b(If)19 b Fj(ctx)h Fm(is)f(curren)o(t)h(to)e(some)h |
| (other)g(thread,)h(then)f Fb(glXMak)o(eCurren)o(t)224 |
| 2262 y Fm(will)26 b(generate)d(a)h Fh(BadAccess)e Fm(error.)45 |
| b Fh(GLXBadContextState)22 b Fm(is)i(generated)224 2319 |
| y(if)f(there)f(is)h(a)f(curren)o(t)h(rendering)g(con)o(text)f(and)g |
| (its)h(render)g(mo)q(de)g(is)f(either)224 2375 y Fb(GL)p |
| 299 2375 16 2 v 20 w(FEEDBA)o(CK)g Fm(or)g Fb(GL)p 772 |
| 2375 V 20 w(SELECT)p Fm(.)h Fh(GLXBadContextState)e Fm(will)j(also)224 |
| 2432 y(b)q(e)f(generated)g(if)f Fb(glXMak)o(eCurren)o(t)f |
| Fm(is)i(called)g(b)q(et)o(w)o(een)g(a)f Fb(glBegin)i |
| Fm(and)224 2488 y(its)18 b(corresp)q(onding)h Fb(glEnd)p |
| Fm(.)30 b(If)18 b Fj(ctx)g Fm(is)h(not)e(a)h(v)m(alid)i(GLX)e |
| (rendering)h(con)o(text,)914 2613 y(16)p eop |
| %%Page: 17 18 |
| 17 17 bop 224 286 a Fh(GLXBadContext)12 b Fm(is)i(generated.)19 |
| b(If)14 b Fj(dr)n(awable)g Fm(is)g(not)f(a)g(v)m(alid)i(GLX)f(dra)o(w)o |
| (able,)f(a)224 343 y Fh(GLXBadDrawable)d Fm(error)h(is)h(generated.)19 |
| b(If)12 b(the)g(previous)h(con)o(text)e(of)g(the)h(calling)224 |
| 399 y(thread)i(has)f(un\015ushed)i(commands,)e(and)h(the)g(previous)g |
| (dra)o(w)o(able)g(is)g(a)f(windo)o(w)224 456 y(that)e(is)h(no)f(longer) |
| h(v)m(alid,)h Fh(GLXBadCurrentWindow)c Fm(is)j(generated.)19 |
| b(Finally)l(,)13 b(note)224 512 y(that)k(the)g(ancillary)i(bu\013ers)e |
| (for)g Fj(dr)n(awable)g Fm(need)h(not)f(b)q(e)h(allo)q(cated)h(un)o |
| (til)f(they)224 569 y(are)g(needed.)29 b(A)18 b Fh(BadAlloc)f |
| Fm(error)g(will)j(b)q(e)e(generated)g(if)h(the)f(serv)o(er)f(do)q(es)i |
| (not)224 625 y(ha)o(v)o(e)c(enough)h(resources)f(to)f(allo)q(cate)i |
| (the)f(bu\013ers.)295 682 y(If)h Fj(dr)n(awable)f Fm(is)h(destro)o(y)o |
| (ed)f(after)g Fb(glXMak)o(eCurren)o(t)f Fm(is)i(called)h(then)f(sub-) |
| 224 738 y(sequen)o(t)g(rendering)h(commands)f(will)i(b)q(eha)o(v)o(e)e |
| (as)g(if)g Fj(dr)n(awable)g Fm(is)h(b)q(ound)g(to)e(the)224 |
| 795 y(NULL)h(clip.)22 b(The)16 b(commands)f(will)i(b)q(e)f(pro)q |
| (cessed)g(and)f(the)g(con)o(text)g(state)f(will)224 851 |
| y(b)q(e)i(up)q(dated,)g(but)f(no)g(output)g(will)i(app)q(ear)e(on)h |
| (the)f(displa)o(y)l(.)295 907 y(T)l(o)e(release)g(the)g(curren)o(t)g |
| (con)o(text)g(without)g(assigning)h(a)f(new)g(one,)g(use)h |
| Fh(NULL)224 964 y Fm(for)j Fj(ctx)g Fm(and)g Fh(None)f |
| Fm(for)h Fj(dr)n(awable)p Fm(.)25 b(If)17 b Fj(ctx)h |
| Fm(is)f Fh(NULL)g Fm(and)g Fj(dr)n(awable)g Fm(is)g(not)g |
| Fh(None)p Fm(,)224 1020 y(or)d(if)g Fj(dr)n(awable)h |
| Fm(is)f Fh(None)g Fm(and)g Fj(ctx)g Fm(is)h(not)f Fh(NULL)p |
| Fm(,)f(then)h(a)g Fh(BadMatch)f Fm(error)h(will)h(b)q(e)224 |
| 1077 y(generated.)295 1133 y(The)f(\014rst)f(time)h Fj(ctx)g |
| Fm(is)g(made)g(curren)o(t)g(to)f(a)g Fh(GLXDrawable)p |
| Fm(,)g(its)g(initial)j(view-)224 1190 y(p)q(ort)g(is)h(set.)24 |
| b(That)16 b(viewp)q(ort)g(m)o(ust)g(b)q(e)h(reset)g(b)o(y)f(the)g |
| (clien)o(t)i(when)f Fj(ctx)g Fm(is)g(sub-)224 1246 y(sequen)o(tly)f |
| (made)f(curren)o(t.)295 1303 y(Note)21 b(that)h(when)g(m)o(ultiple)i |
| (threads)e(are)g(using)g(their)h(curren)o(t)f(con)o(texts)224 |
| 1359 y(to)16 b(render)g(to)g(the)g(same)g(dra)o(w)o(able,)g(Op)q(enGL)i |
| (do)q(es)e(not)g(guaran)o(tee)f(atomicit)o(y)224 1416 |
| y(of)22 b(fragmen)o(t)f(up)q(date)h(op)q(erations.)41 |
| b(In)22 b(particular,)i(programmers)d(ma)o(y)h(not)224 |
| 1472 y(assume)17 b(that)g(depth-bu\013ering)i(will)g(automatically)f(w) |
| o(ork)e(correctly;)i(there)g(is)224 1528 y(a)13 b(race)g(condition)i(b) |
| q(et)o(w)o(een)e(threads)g(that)g(read)g(and)h(up)q(date)f(the)h(depth) |
| g(bu\013er.)224 1585 y(Clien)o(ts)e(are)f(resp)q(onsible)i(for)e(a)o(v) |
| o(oiding)g(this)h(condition.)20 b(They)11 b(ma)o(y)g(use)g(v)o(endor-) |
| 224 1641 y(sp)q(eci\014c)18 b(extensions)f(or)f(they)g(ma)o(y)f |
| (arrange)g(for)h(separate)g(threads)f(to)h(dra)o(w)f(in)224 |
| 1698 y(disjoin)o(t)h(regions)f(of)g(the)g(framebu\013er,)g(for)f |
| (example.)295 1754 y Fb(glX)o(GetCurren)o(tCon)o(text)f |
| Fm(returns)i(the)h(curren)o(t)f(con)o(text.)338 1861 |
| y Fh(GLXContext)f Fb(glX)o(GetCurren)o(tCon)o(text)p |
| Fh(\()22 b(void)h(\))h(;)295 1967 y Fm(If)15 b(there)g(is)h(no)f |
| (curren)o(t)g(con)o(text,)g Fb(NULL)h Fm(is)f(returned.)295 |
| 2023 y Fb(glX)o(GetCurren)o(tDra)o(w)o(able)9 b Fm(returns)h(the)g(XID) |
| g(of)g(the)h(curren)o(t)f(dra)o(w)o(able.)338 2130 y |
| Fh(GLXDrawable)j Fb(glX)o(GetCurren)o(tDra)o(w)o(able)p |
| Fh(\()23 b(void)g(\))h(;)295 2236 y Fm(If)15 b(there)g(is)h(no)f |
| (curren)o(t)g(dra)o(w)o(able,)g Fh(None)g Fm(is)g(returned.)295 |
| 2292 y(T)l(o)e(get)g(the)h(displa)o(y)g(asso)q(ciated)g(with)g(the)g |
| (curren)o(t)f(con)o(text)g(and)h(dra)o(w)o(able,)224 |
| 2349 y(call)338 2455 y Fh(Display*)g Fb(glX)o(GetCurren)o(tDispla)o(y)p |
| Fh(\()23 b(void)g(\))h(;)914 2613 y Fm(17)p eop |
| %%Page: 18 19 |
| 18 18 bop 295 286 a Fm(If)19 b(there)h(is)f(no)g(curren)o(t)h(con)o |
| (text,)f Fb(NULL)h Fm(is)g(returned.)32 b(This)20 b(routine)g(is)224 |
| 343 y(a)o(v)m(ailable)d(only)f(if)f(the)h(GLX)f(v)o(ersion)g(is)h(1.2)e |
| (or)h(later.)295 399 y Fb(glX)o(Get*)e Fm(calls)h(retriev)o(e)f(clien)o |
| (t-side)i(state)d(and)h(do)f(not)h(force)f(a)h(round)g(trip)224 |
| 456 y(to)k(the)h(X)f(serv)o(er.)26 b(Unlik)o(e)19 b(most)e(X)h(calls)g |
| (\(including)i(the)e Fb(glX)o(Query*)e Fm(calls\))224 |
| 512 y(that)f(return)g(a)g(v)m(alue,)h(these)f(calls)h(do)g(not)e |
| (\015ush)i(an)o(y)f(p)q(ending)i(requests.)224 632 y |
| Fb(3.2.5)52 b(Sync)o(hronization)19 b(Primitiv)o(es)224 |
| 718 y Fm(T)l(o)h(prev)o(en)o(t)g(X)g(requests)g(from)f(executing)j(un)o |
| (til)f(an)o(y)f(outstanding)g(Op)q(enGL)224 775 y(rendering)c(is)g |
| (done,)f(call)338 868 y Fh(void)f Fb(glXW)l(aitGL)p Fh(\()26 |
| b(void)d(\))h(;)224 962 y Fm(Op)q(enGL)14 b(calls)f(made)g(prior)f(to)g |
| Fb(glXW)l(aitGL)i Fm(are)e(guaran)o(teed)g(to)f(b)q(e)i(executed)224 |
| 1019 y(b)q(efore)h(X)f(rendering)h(calls)h(made)e(after)f |
| Fb(glXW)l(aitGL)p Fm(.)j(While)f(the)g(same)f(result)224 |
| 1075 y(can)j(b)q(e)f(ac)o(hiev)o(ed)i(using)f Fb(glFinish)p |
| Fm(,)g Fb(glXW)l(aitGL)g Fm(do)q(es)g(not)f(require)h(a)f(round)224 |
| 1132 y(trip)e(to)f(the)h(serv)o(er,)f(and)h(is)g(therefore)g(more)f |
| (e\016cien)o(t)h(in)h(cases)e(where)h(the)g(clien)o(t)224 |
| 1188 y(and)j(serv)o(er)e(are)h(on)g(separate)g(mac)o(hines.)295 |
| 1244 y Fb(glXW)l(aitGL)d Fm(is)f(ignored)h(if)f(there)g(is)g(no)g |
| (curren)o(t)f(rendering)i(con)o(text.)18 b(If)11 b(the)224 |
| 1301 y(dra)o(w)o(able)g(asso)q(ciated)h(with)g(the)f(calling)j |
| (thread's)d(curren)o(t)g(con)o(text)g(is)h(a)f(windo)o(w)224 |
| 1357 y(that)k(is)g(no)g(longer)h(v)m(alid,)g(a)f Fh |
| (GLXBadCurrentWindow)e Fm(error)h(is)i(generated.)295 |
| 1414 y(T)l(o)c(prev)o(en)o(t)g(the)h(Op)q(enGL)h(command)e(sequence)i |
| (from)d(executing)j(un)o(til)f(an)o(y)224 1470 y(outstanding)i(X)h |
| (requests)f(are)g(completed,)g(call)338 1564 y Fh(void)f |
| Fb(glXW)l(aitX)p Fh(\()25 b(void)e(\))h(;)224 1658 y |
| Fm(X)18 b(rendering)i(calls)f(made)f(prior)g(to)g Fb(glXW)l(aitX)h |
| Fm(are)f(guaran)o(teed)f(to)h(b)q(e)h(exe-)224 1714 y(cuted)c(b)q |
| (efore)g(Op)q(enGL)h(rendering)f(calls)h(made)e(after)g |
| Fb(glXW)l(aitX)p Fm(.)g(While)i(the)224 1771 y(same)f(result)g(can)g(b) |
| q(e)g(ac)o(hiev)o(ed)g(using)h Fb(XSync)p Fm(,)e Fb(glXW)l(aitX)h |
| Fm(do)q(es)g(not)f(require)224 1827 y(a)h(round)g(trip)h(to)f(the)g |
| (serv)o(er,)f(and)i(ma)o(y)e(therefore)h(b)q(e)h(more)f(e\016cien)o(t.) |
| 295 1884 y Fb(glXW)l(aitX)f Fm(is)h(ignored)f(if)h(there)f(is)g(no)g |
| (curren)o(t)g(rendering)h(con)o(text.)k(If)14 b(the)224 |
| 1940 y(dra)o(w)o(able)d(asso)q(ciated)h(with)g(the)f(calling)j |
| (thread's)d(curren)o(t)g(con)o(text)g(is)h(a)f(windo)o(w)224 |
| 1997 y(that)k(is)g(no)g(longer)h(v)m(alid,)g(a)f Fh |
| (GLXBadCurrentWindow)e Fm(error)h(is)i(generated.)224 |
| 2117 y Fb(3.2.6)52 b(Double)18 b(Bu\013ering)224 2203 |
| y Fm(F)l(or)e(dra)o(w)o(ables)g(that)g(are)h(double)g(bu\013ered,)g |
| (the)g(con)o(ten)o(ts)f(of)g(the)h(bac)o(k)f(bu\013er)224 |
| 2259 y(can)j(b)q(e)g(made)g(p)q(oten)o(tially)h(visible)h(\(i.e.,)e(b)q |
| (ecome)g(the)g(con)o(ten)o(ts)f(of)g(the)h(fron)o(t)224 |
| 2315 y(bu\013er\))c(b)o(y)g(calling)338 2409 y Fh(void)28 |
| b Fb(glXSw)o(apBu\013ers)f Fh(\()53 b(Display)27 b Fj(*dpy)p |
| Fh(,)33 b(GLXDrawable)406 2466 y Fj(dr)n(awable)15 b |
| Fh(\))24 b(;)914 2613 y Fm(18)p eop |
| %%Page: 19 20 |
| 19 19 bop 224 286 a Fm(The)16 b(con)o(ten)o(ts)f(of)g(the)g(bac)o(k)g |
| (bu\013er)h(then)f(b)q(ecome)i(unde\014ned.)22 b(This)16 |
| b(op)q(eration)224 343 y(is)g(a)g(no-op)g(if)g Fj(dr)n(awable)g |
| Fm(w)o(as)f(created)g(with)i(a)e(non-double-bu\013ered)j(visual,)f(or) |
| 224 399 y(if)f Fj(dr)n(awable)f Fm(is)h(a)f Fh(GLXPixmap)p |
| Fm(.)295 456 y(All)f(GLX)g(rendering)g(con)o(texts)e(share)i(the)f |
| (same)g(notion)g(of)g(whic)o(h)h(are)f(fron)o(t)224 512 |
| y(bu\013ers)j(and)h(whic)o(h)g(are)f(bac)o(k)h(bu\013ers)f(for)g(a)g |
| (giv)o(en)h(dra)o(w)o(able.)23 b(This)17 b(notion)g(is)224 |
| 569 y(also)e(shared)h(with)f(the)g(X)h(double)g(bu\013er)f(extension)h |
| (\(DBE\).)295 625 y(When)e(m)o(ultiple)h(threads)e(are)g(rendering)i |
| (to)e(the)g(same)h(dra)o(w)o(able,)f(only)h(one)224 682 |
| y(of)20 b(them)g(need)g(call)h Fh(glXSwapBuffers)d Fm(and)i(all)h(of)f |
| (them)g(will)h(see)f(the)g(e\013ect)224 738 y(of)c(the)h(sw)o(ap.)23 |
| b(The)17 b(clien)o(t)h(m)o(ust)d(sync)o(hronize)j(the)f(threads)f(that) |
| g(p)q(erform)g(the)224 795 y(sw)o(ap)i(and)h(the)g(rendering,)h(using)f |
| (some)g(means)f(outside)h(the)g(scop)q(e)g(of)f(GLX,)224 |
| 851 y(to)e(insure)i(that)e(eac)o(h)h(new)g(frame)f(is)h(completely)h |
| (rendered)g(b)q(efore)f(it)g(is)g(made)224 907 y(visible.)295 |
| 964 y(If)27 b Fj(dpy)h Fm(and)f Fj(dr)n(awable)g Fm(are)g(the)g(displa) |
| o(y)i(and)e(dra)o(w)o(able)g(for)g(the)g(call-)224 1020 |
| y(ing)h(thread's)f(curren)o(t)g(con)o(text,)j Fh(glXSwapBuffers)25 |
| b Fm(p)q(erforms)i(an)h(implicit)224 1077 y Fh(glFlush\(\))p |
| Fm(.)18 b(Subsequen)o(t)e(Op)q(enGL)f(commands)f(can)g(b)q(e)h(issued)h |
| (immediately)l(,)224 1133 y(but)g(will)h(not)f(b)q(e)g(executed)h(un)o |
| (til)g(the)f(bu\013er)g(sw)o(apping)g(has)f(completed,)i(t)o(ypi-)224 |
| 1190 y(cally)f(during)h(v)o(ertical)e(retrace)g(of)g(the)g(displa)o(y)h |
| (monitor.)295 1246 y(If)c Fj(dr)n(awable)f Fm(is)i(not)e(a)g(v)m(alid)i |
| (GLX)f(dra)o(w)o(able,)g Fb(glXSw)o(apBu\013ers)e Fm(generates)224 |
| 1303 y(a)15 b Fh(GLXBadDrawable)e Fm(error.)19 b(If)c |
| Fj(dpy)g Fm(and)g Fj(dr)n(awable)g Fm(are)g(the)g(displa)o(y)h(and)f |
| (dra)o(w-)224 1359 y(able)f(asso)q(ciated)f(with)h(the)f(calling)i |
| (thread's)d(curren)o(t)h(con)o(text,)g(and)g(if)h Fj(dr)n(awable)224 |
| 1416 y Fm(is)21 b(a)g(windo)o(w)f(that)g(is)i(no)e(longer)h(v)m(alid,)i |
| (a)e Fh(GLXBadCurrentWindow)d Fm(error)i(is)224 1472 |
| y(generated.)224 1592 y Fb(3.2.7)52 b(Access)16 b(to)i(X)f(F)l(on)o(ts) |
| 224 1678 y Fm(A)e(shortcut)g(for)g(using)h(X)f(fon)o(ts)f(is)i(pro)o |
| (vided)g(b)o(y)f(the)g(command)338 1772 y Fh(void)d Fb(glXUseXF)l(on)o |
| (t)p Fh(\()35 b(Font)12 b Fj(font)p Fh(,)h(int)f Fj(\014rst)p |
| Fh(,)h(int)f Fj(c)n(ount)p Fh(,)h(int)406 1828 y Fj(list)p |
| 469 1828 14 2 v 16 w(b)n(ase)h Fh(\))24 b(;)224 1922 |
| y Fj(c)n(ount)19 b Fm(displa)o(y)h(lists)g(are)e(de\014ned)j(starting)d |
| (at)h Fj(list)p 1142 1922 V 16 w(b)n(ase)p Fm(,)f(eac)o(h)h(list)h |
| (consisting)224 1978 y(of)d(a)g(single)i(call)g(on)e |
| Fb(glBitmap)p Fm(.)28 b(The)18 b(de\014nition)h(of)e(bitmap)h |
| Fj(list)p 1424 1978 V 16 w(b)n(ase)f Fm(+)h(i)g(is)224 |
| 2035 y(tak)o(en)d(from)f(the)i(glyph)g Fj(\014rst)e Fm(+)i(i)g(of)f |
| Fj(font)p Fm(.)k(If)d(a)f(glyph)h(is)g(not)e(de\014ned,)j(then)e(an)224 |
| 2091 y(empt)o(y)g(displa)o(y)h(list)g(is)g(constructed)f(for)g(it.)20 |
| b(The)c Fh(width)p Fm(,)e Fh(height)p Fm(,)g Fh(xorig)p |
| Fm(,)g(and)224 2148 y Fh(yorig)20 b Fm(of)f(the)i(constructed)f(bitmap) |
| g(are)g(computed)h(from)e(the)h(fon)o(t)g(metrics)224 |
| 2204 y(as)g Fh(rbearing-lbearing)p Fm(,)e Fh(ascent+descent)p |
| Fm(,)h Fh(-lbearing)p Fm(,)h(and)g Fh(descent-1)224 2261 |
| y Fm(resp)q(ectiv)o(ely)l(.)26 b Fh(xmove)15 b Fm(is)i(tak)o(en)f(from) |
| g(the)h Fh(width)e Fm(metric)i(and)g Fh(ymove)f Fm(is)h(set)f(to)224 |
| 2317 y(zero.)295 2374 y(Note)d(that)f(in)i(the)g(direct)g(rendering)g |
| (case,)f(this)h(requires)g(that)e(the)i(bitmaps)224 2430 |
| y(b)q(e)i(copied)g(to)f(the)g(clien)o(t's)h(address)g(space.)295 |
| 2486 y Fb(glXUseXF)l(on)o(t)e Fm(p)q(erforms)h(an)g(implicit)j |
| Fh(glFlush\(\))p Fm(.)914 2613 y(19)p eop |
| %%Page: 20 21 |
| 20 20 bop 295 286 a Fb(glXUseXF)l(on)o(t)25 b Fm(is)i(ignored)g(if)f |
| (there)h(is)f(no)h(curren)o(t)f(GLX)g(rendering)224 343 |
| y(con)o(text.)64 b Fh(BadFont)29 b Fm(is)i(generated)f(if)g |
| Fj(font)g Fm(is)h(not)f(a)f(v)m(alid)j(X)e(fon)o(t)g(id.)224 |
| 399 y Fh(GLXBadContextState)11 b Fm(is)j(generated)g(if)g(the)g(curren) |
| o(t)f(GLX)h(rendering)h(con)o(text)224 456 y(is)f(in)h(displa)o(y)g |
| (list)f(construction)g(mo)q(de.)20 b Fh(GLXBadCurrentWindow)11 |
| b Fm(is)j(generated)224 512 y(if)j(the)f(dra)o(w)o(able)f(asso)q |
| (ciated)i(with)f(the)g(calling)h(thread's)f(curren)o(t)g(con)o(text)f |
| (is)h(a)224 569 y(windo)o(w)g(and)f(is)h(no)f(longer)g(v)m(alid.)224 |
| 689 y Fb(3.2.8)52 b(GLX)17 b(V)l(ersioning)224 775 y |
| Fm(The)h(follo)o(wing)h(functions)g(are)f(a)o(v)m(ailable)h(only)g(if)f |
| (the)h(GLX)f(v)o(ersion)g(is)h(1.1)e(or)224 831 y(later.)338 |
| 925 y Fh(const)23 b(char*)68 b Fb(glX)o(QueryExtensionsString)p |
| Fh(\()g(Display)406 981 y Fj(*dpy)p Fh(,)16 b(int)f Fj(scr)n(e)n(en)e |
| Fh(\))24 b(;)295 1075 y Fb(glX)o(QueryExtensionsString)15 |
| b Fm(returns)h(a)f(p)q(oin)o(ter)i(to)e(a)g(string)h(describ-)224 |
| 1132 y(ing)c(whic)o(h)g(GLX)f(extensions)h(are)f(supp)q(orted)g(on)g |
| (the)h(connection.)19 b(The)12 b(string)f(is)224 1188 |
| y(zero-terminated)16 b(and)f(con)o(tains)h(a)f(space-sep)q(erated)h |
| (list)g(of)f(extension)i(names.)224 1244 y(The)g(extension)g(names)g |
| (themselv)o(es)g(do)f(not)g(con)o(tain)h(spaces.)24 b(If)16 |
| b(there)h(are)f(no)224 1301 y(extensions)g(to)f(GLX,)g(then)g(the)g |
| (empt)o(y)g(string)g(is)h(returned.)338 1407 y Fh(const)23 |
| b(char*)e Fb(glX)o(GetClien)o(tString)p Fh(\()47 b(Display)22 |
| b Fj(*dpy)p Fh(,)i(int)406 1464 y Fj(name)15 b Fh(\);)295 |
| 1570 y Fb(glX)o(GetClien)o(tString)h Fm(returns)g(a)f(p)q(oin)o(ter)g |
| (to)g(a)g(static,)g(zero-terminated)224 1626 y(string)j(describing)h |
| (some)e(asp)q(ect)h(of)f(the)g(clien)o(t)i(library)l(.)28 |
| b(The)18 b(p)q(ossible)h(v)m(alues)224 1683 y(for)e Fj(name)g |
| Fm(are)h Fh(GLX)p 574 1683 15 2 v 16 w(VENDOR)p Fm(,)f |
| Fh(GLX)p 836 1683 V 16 w(VERSION)p Fm(,)f(and)i Fh(GLX)p |
| 1212 1683 V 17 w(EXTENSIONS)p Fm(.)e(If)h Fj(name)224 |
| 1739 y Fm(is)i(not)f(set)g(to)g(one)h(of)f(these)g(v)m(alues)i(then)f |
| Fb(NULL)g Fm(is)g(returned.)30 b(The)18 b(format)224 |
| 1796 y(and)d(con)o(ten)o(ts)f(of)g(the)h(v)o(endor)g(string)f(is)h |
| (implemen)o(tation)h(dep)q(enden)o(t,)g(and)f(the)224 |
| 1852 y(format)e(of)h(the)g(extension)h(string)g(is)f(the)h(same)f(as)f |
| (for)h Fb(glX)o(QueryExtension-)224 1909 y(sString)p |
| Fm(.)20 b(The)c(v)o(ersion)f(string)g(is)h(laid)g(out)f(as)g(follo)o |
| (ws:)338 2015 y Fa(<)p Fm(ma)s(jor)p 495 2015 14 2 v |
| 15 w(v)o(ersion.minor)p 778 2015 V 17 w(v)o(ersion)p |
| Fa(><)p Fm(space)p Fa(><)p Fm(v)o(endor-sp)q(eci\014c)406 |
| 2071 y(info)p Fa(>)224 2178 y Fm(Both)c(the)g(ma)s(jor)e(and)i(minor)g |
| (p)q(ortions)g(of)f(the)h(v)o(ersion)g(n)o(um)o(b)q(er)g(are)f(of)h |
| (arbitrary)224 2234 y(length.)36 b(The)21 b(v)o(endor-sp)q(eci\014c)h |
| (information)e(is)h(optional.)36 b(Ho)o(w)o(ev)o(er,)20 |
| b(if)h(it)g(is)224 2291 y(presen)o(t,)15 b(the)g(format)f(and)i(con)o |
| (ten)o(ts)e(are)h(implemen)o(tation)h(sp)q(eci\014c.)338 |
| 2397 y Fh(const)23 b(char*)12 b Fb(glX)o(QueryServ)o(erString)p |
| Fh(\()e(Display)h Fj(*dpy)p Fh(,)j(int)406 2453 y Fj(scr)n(e)n(en)p |
| Fh(,)f(int)i Fj(name)g Fh(\))24 b(;)914 2613 y Fm(20)p |
| eop |
| %%Page: 21 22 |
| 21 21 bop 295 286 a Fb(glX)o(QueryServ)o(erString)34 |
| b Fm(returns)i(a)h(p)q(oin)o(ter)g(to)f(a)g(static,)41 |
| b(zero-)224 343 y(terminated)14 b(string)h(describing)g(some)f(asp)q |
| (ect)g(of)g(the)g(serv)o(er's)f(GLX)i(extension.)224 |
| 399 y(The)i(p)q(ossible)i(v)m(alues)e(for)f Fj(name)h |
| Fm(and)g(the)g(format)e(of)h(the)h(strings)f(is)i(the)e(same)224 |
| 456 y(as)i(for)g Fb(glX)o(GetClien)o(tString)p Fm(.)30 |
| b(If)19 b Fj(name)f Fm(is)h(not)f(set)g(to)f(a)h(recognized)i(v)m(alue) |
| 224 512 y(then)c Fb(NULL)g Fm(is)g(returned.)224 655 |
| y Fk(4)67 b(Enco)r(ding)23 b(on)g(the)f(X)h(Byte)f(Stream)224 |
| 757 y Fm(In)16 b(the)g(remote)f(rendering)i(case,)e(the)h(o)o(v)o |
| (erhead)f(asso)q(ciated)h(with)g(in)o(terpreting)224 |
| 813 y(the)21 b(GLX)g(extension)h(requests)f(m)o(ust)g(b)q(e)h |
| (minimized.)40 b(F)l(or)20 b(this)h(reason,)h(all)224 |
| 870 y(commands)15 b(ha)o(v)o(e)f(b)q(een)h(brok)o(en)g(up)g(in)o(to)g |
| (t)o(w)o(o)e(categories:)19 b(Op)q(enGL)d(and)f(GLX)224 |
| 926 y(commands)k(that)g(are)g(eac)o(h)g(implemen)o(ted)i(as)e(a)g |
| (single)i(X)e(extension)h(request)224 983 y(and)f(Op)q(enGL)h |
| (rendering)g(requests)f(that)f(are)h(batc)o(hed)g(within)h(a)e |
| Fh(GLXRender)224 1039 y Fm(request.)224 1161 y Fi(4.1)56 |
| b(Requests)17 b(that)i(hold)f(a)h(single)f(extension)f(request)224 |
| 1247 y Fm(Eac)o(h)f(of)g(the)h(commands)f(from)f(glx.h)i(\(that)e(is,)i |
| (the)f Fb(glX*)h Fm(commands\))f(is)h(en-)224 1303 y(co)q(ded)d(b)o(y)f |
| (a)f(separate)h(X)g(extension)h(request.)19 b(In)13 b(addition,)i |
| (there)e(is)g(a)g(separate)224 1360 y(X)j(extension)h(request)f(for)f |
| (eac)o(h)i(of)e(the)h(Op)q(enGL)i(commands)d(that)h(cannot)f(b)q(e)224 |
| 1416 y(put)j(in)o(to)g(a)f(displa)o(y)i(list.)29 b(That)17 |
| b(list)h(consists)g(of)g(all)h(the)e Fb(glGet*)i Fm(commands)224 |
| 1473 y(plus)330 1566 y Fb(glAreT)l(exturesResiden)o(t)330 |
| 1623 y(glDeleteLists)330 1679 y(glDeleteT)l(extures)330 |
| 1736 y(glEndList)330 1792 y(glF)l(eedbac)o(kBu\013er)330 |
| 1849 y(glFinish)330 1905 y(glFlush)330 1962 y(glGenLists)330 |
| 2018 y(glGenT)l(extures)330 2074 y(glIsEnabled)330 2131 |
| y(glIsList)330 2187 y(glIsT)l(exture)330 2244 y(glNewList)330 |
| 2300 y(glPixelStoref)330 2357 y(glPixelStorei)330 2413 |
| y(glReadPixels)330 2470 y(glRenderMo)q(de)914 2613 y |
| Fm(21)p eop |
| %%Page: 22 23 |
| 22 22 bop 224 247 1459 2 v 224 631 2 385 v 278 321 a |
| 21313290 2557593 2105016 42626580 38679674 47099740 startTexFig |
| |
| 278 321 a |
| %%BeginDocument: encoding.eps |
| 1 setlinejoin |
| /M { moveto } bind def /S { show } bind def |
| /R { rmoveto } bind def /L { lineto } bind def |
| /B { newpath 0 0 M 0 1 L 1 1 L 1 0 L closepath } bind def |
| /CS { closepath stroke } bind def |
| /newfont 10 dict def |
| newfont begin |
| |
| /FontType 3 def |
| /FontMatrix [1 0 0 1 0 0] def |
| /FontBBox [0 0 1 1] def |
| /Encoding 256 array def |
| 0 1 255 {Encoding exch /.notdef put} for |
| |
| /CharProcs 1 dict def |
| CharProcs begin |
| /.notdef {} def |
| |
| end |
| |
| /BuildChar { |
| 1 0 |
| 0 0 1 1 |
| setcachedevice |
| exch begin |
| Encoding exch get |
| CharProcs exch get |
| end |
| exec |
| } def |
| end |
| /PatternFont newfont definefont pop |
| |
| /bwproc { |
| rgbproc |
| dup length 3 idiv string 0 3 0 |
| 5 -1 roll { |
| add 2 1 roll 1 sub dup 0 eq |
| { pop 3 idiv 3 -1 roll dup 4 -1 roll dup |
| 3 1 roll 5 -1 roll put 1 add 3 0 } |
| { 2 1 roll } ifelse |
| } forall |
| pop pop pop |
| } def |
| systemdict /colorimage known not { |
| /colorimage { |
| pop |
| pop |
| /rgbproc exch def |
| { bwproc } image |
| } def |
| } if |
| /incr { |
| 2 1 roll dup 3 -1 roll |
| 5 -1 roll dup 6 1 roll cvi put |
| 3 1 roll dup 4 1 roll add 3 1 roll |
| } bind def |
| /scanspan { |
| /xb2 exch def |
| /xg2 exch def |
| /xr2 exch def |
| /xx2 exch def |
| /xb1 exch def |
| /xg1 exch def |
| /xr1 exch def |
| /xx1 exch def |
| /dx xx2 xx1 sub def |
| dx 0 ne { |
| /drdx xr2 xr1 sub dx div def |
| /dgdx xg2 xg1 sub dx div def |
| /dbdx xb2 xb1 sub dx div def |
| }{ |
| /drdx 0 def |
| /dgdx 0 def |
| /dbdx 0 def |
| } ifelse |
| /len dx 1 add cvi 3 mul def |
| len string dup dup |
| xr1 drdx 3 -1 roll |
| 0 3 len 1 sub { incr } for |
| pop pop pop |
| xg1 dgdx 3 -1 roll |
| 1 3 len 1 sub { incr } for |
| pop pop pop |
| xb1 dbdx 3 -1 roll |
| 2 3 len 1 sub { incr } for |
| 3 1 roll pop pop |
| } bind def |
| /scantrap { |
| /trapsave save def |
| /b4 exch def |
| /g4 exch def |
| /r4 exch def |
| /x4 exch def |
| /b3 exch def |
| /g3 exch def |
| /r3 exch def |
| /x3 exch def |
| /b2 exch def |
| /g2 exch def |
| /r2 exch def |
| /y2 exch def |
| /x2 exch def |
| /b1 exch def |
| /g1 exch def |
| /r1 exch def |
| /y1 exch def |
| /x1 exch def |
| /dy y1 y2 sub def |
| dy 0 ne { |
| /dxdy12 x2 x1 sub dy div def |
| /dxdy43 x3 x4 sub dy div def |
| /drdy12 r2 r1 sub dy div def |
| /drdy43 r3 r4 sub dy div def |
| /dgdy12 g2 g1 sub dy div def |
| /dgdy43 g3 g4 sub dy div def |
| /dbdy12 b2 b1 sub dy div def |
| /dbdy43 b3 b4 sub dy div def |
| }{ |
| /dxdy12 0 def |
| /dxdy43 0 def |
| /drdy12 0 def |
| /drdy43 0 def |
| /dgdy12 0 def |
| /dgdy43 0 def |
| /dbdy12 0 def |
| /dbdy43 0 def |
| } ifelse |
| y1 -1 y2 { |
| x4 x1 sub 0 lt { exit } if |
| /y exch def |
| /traploopsave save def |
| x1 r1 g1 b1 x4 r4 g4 b4 scanspan |
| /img exch def |
| /xlen x4 x1 sub 1 add def |
| x1 y translate |
| xlen 1 scale |
| xlen cvi 1 8 [xlen 0 0 0.9 0 0] { img } false 3 colorimage |
| traploopsave restore |
| /x1 x1 dxdy12 add def |
| /r1 r1 drdy12 add def |
| /g1 g1 dgdy12 add def |
| /b1 b1 dbdy12 add def |
| /x4 x4 dxdy43 add def |
| /r4 r4 drdy43 add def |
| /g4 g4 dgdy43 add def |
| /b4 b4 dbdy43 add def |
| } for |
| trapsave restore |
| } def |
| /d { |
| newpath |
| moveto |
| lineto |
| lineto |
| closepath |
| stroke |
| } bind def |
| /q { |
| newpath |
| moveto |
| lineto |
| lineto |
| lineto |
| closepath |
| stroke |
| } bind def |
| /draw3 { |
| setgray |
| newpath |
| moveto |
| lineto |
| lineto |
| closepath |
| stroke |
| } bind def |
| /F3 { |
| setgray |
| newpath |
| moveto |
| lineto |
| lineto |
| closepath |
| fill |
| } bind def |
| /F4 { |
| setgray |
| newpath |
| moveto |
| lineto |
| lineto |
| lineto |
| closepath |
| fill |
| } bind def |
| /F5 { |
| setgray |
| newpath |
| moveto |
| lineto |
| lineto |
| lineto |
| lineto |
| closepath |
| fill |
| } bind def |
| /showcaseisoencoding [ |
| /.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 /minus /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 /guilsinglright |
| /fraction /florin /quotesingle /quotedblleft |
| /guilsinglleft /fi /fl /endash |
| /dagger /daggerdbl /bullet /quotesinglbase |
| /quotedblbase /quotedblright /ellipsis /trademark |
| /dotlessi /grave /acute /circumflex |
| /tilde /macron /breve /dotaccent |
| /dieresis /perthousand /ring /cedilla |
| /Ydieresis /hungarumlaut /ogonek /caron |
| /emdash /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 ] def |
| /Helvetica-Bold findfont |
| dup length dict begin |
| {1 index /FID ne {def} {pop pop} ifelse} forall |
| /Encoding showcaseisoencoding def |
| currentdict |
| end |
| /Helvetica-Bold-SHOWISO exch definefont pop |
| /Courier-Bold findfont |
| dup length dict begin |
| {1 index /FID ne {def} {pop pop} ifelse} forall |
| /Encoding showcaseisoencoding def |
| currentdict |
| end |
| /Courier-Bold-SHOWISO exch definefont pop |
| gsave |
| 0 0 0 setrgbcolor |
| gsave |
| matrix currentmatrix |
| [96 0 0 -68 32 716] concat |
| B |
| setmatrix |
| 2 setlinewidth |
| gsave stroke grestore |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| matrix currentmatrix |
| [144 0 0 -68 128 716] concat |
| B |
| setmatrix |
| 2 setlinewidth |
| gsave stroke grestore |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| matrix currentmatrix |
| [316 0 0 -68 272 716] concat |
| B |
| setmatrix |
| 2 setlinewidth |
| gsave stroke grestore |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| 0 0 0 setrgbcolor |
| 2 setlinewidth |
| [2 3 8 3] 1 setdash |
| newpath |
| 88 716 M |
| 88 648 L |
| stroke |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| newpath |
| 273 687 M 253 706 L 343 706 L 343 687 L |
| closepath clip newpath |
| 283 692 M gsave |
| -283 0.0 translate |
| 0.972763 1.0 scale |
| 290.924 0.0 translate |
| /Helvetica-Bold-SHOWISO findfont 14 scalefont setfont |
| 0 0 0 setrgbcolor |
| (GLX) S |
| grestore |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| newpath |
| 265 658 M 245 677 L 358 677 L 358 658 L |
| closepath clip newpath |
| 275 663 M gsave |
| -275 0.0 translate |
| 1.05743 1.0 scale |
| 260.064 0.0 translate |
| /Helvetica-Bold-SHOWISO findfont 14 scalefont setfont |
| 0 0 0 setrgbcolor |
| (Render) S |
| grestore |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| 0 0 0 setrgbcolor |
| 2 setlinewidth |
| [2 3 8 3] 1 setdash |
| newpath |
| 328 716 M |
| 328 648 L |
| stroke |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| 0 0 0 setrgbcolor |
| 2 setlinewidth |
| [2 3 8 3] 1 setdash |
| newpath |
| 184 716 M |
| 184 648 L |
| stroke |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| newpath |
| 128 686 M 108 705 L 198 705 L 198 686 L |
| closepath clip newpath |
| 138 691 M gsave |
| -138 0.0 translate |
| 0.972763 1.0 scale |
| 141.864 0.0 translate |
| /Helvetica-Bold-SHOWISO findfont 14 scalefont setfont |
| 0 0 0 setrgbcolor |
| (GLX) S |
| grestore |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| newpath |
| 33 659 M 13 697 L 109 697 L 109 659 L |
| closepath clip newpath |
| 44 683 M gsave |
| -44 0.0 translate |
| 1.0661 1.0 scale |
| 41.272 0.0 translate |
| /Helvetica-Bold-SHOWISO findfont 14 scalefont setfont |
| 0 0 0 setrgbcolor |
| (Core) S |
| grestore |
| 56 664 M gsave |
| -56 0.0 translate |
| 0.963804 1.0 scale |
| 58.1031 0.0 translate |
| /Helvetica-Bold-SHOWISO findfont 14 scalefont setfont |
| 0 0 0 setrgbcolor |
| (X) S |
| grestore |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| newpath |
| 81 670 M 61 689 L 153 689 L 153 670 L |
| closepath clip newpath |
| 91 675 M gsave |
| -91 0.0 translate |
| 1.04225 1.0 scale |
| 87.3115 0.0 translate |
| /Helvetica-Bold-SHOWISO findfont 14 scalefont setfont |
| 0 0 0 setrgbcolor |
| (data) S |
| grestore |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| newpath |
| 125 658 M 105 677 L 209 677 L 209 658 L |
| closepath clip newpath |
| 135 663 M gsave |
| -135 0.0 translate |
| 1.03806 1.0 scale |
| 130.05 0.0 translate |
| /Helvetica-Bold-SHOWISO findfont 14 scalefont setfont |
| 0 0 0 setrgbcolor |
| (single) S |
| grestore |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| newpath |
| 189 670 M 169 689 L 261 689 L 261 670 L |
| closepath clip newpath |
| 199 675 M gsave |
| -199 0.0 translate |
| 1.04225 1.0 scale |
| 190.934 0.0 translate |
| /Helvetica-Bold-SHOWISO findfont 14 scalefont setfont |
| 0 0 0 setrgbcolor |
| (data) S |
| grestore |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| 0 0 0 setrgbcolor |
| 1 setlinewidth |
| [1 3] 0 setdash |
| newpath |
| 464 712 M |
| 464 648 L |
| stroke |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| newpath |
| 325 670 M 305 689 L 396 689 L 396 670 L |
| closepath clip newpath |
| 335 675 M gsave |
| -335 0.0 translate |
| 1.0075 1.0 scale |
| 332.505 0.0 translate |
| /Helvetica-Bold-SHOWISO findfont 14 scalefont setfont |
| 0 0 0 setrgbcolor |
| (cmd) S |
| grestore |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| 0 0 0 setrgbcolor |
| 1 setlinewidth |
| [1 3] 0 setdash |
| newpath |
| 376 704 M |
| 376 660 L |
| stroke |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| newpath |
| 385 670 M 365 689 L 457 689 L 457 670 L |
| closepath clip newpath |
| 395 675 M gsave |
| -395 0.0 translate |
| 1.04225 1.0 scale |
| 378.989 0.0 translate |
| /Helvetica-Bold-SHOWISO findfont 14 scalefont setfont |
| 0 0 0 setrgbcolor |
| (data) S |
| grestore |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| newpath |
| 461 670 M 441 689 L 532 689 L 532 670 L |
| closepath clip newpath |
| 471 675 M gsave |
| -471 0.0 translate |
| 1.0075 1.0 scale |
| 467.492 0.0 translate |
| /Helvetica-Bold-SHOWISO findfont 14 scalefont setfont |
| 0 0 0 setrgbcolor |
| (cmd) S |
| grestore |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| 0 0 0 setrgbcolor |
| 1 setlinewidth |
| [1 3] 0 setdash |
| newpath |
| 512 704 M |
| 512 660 L |
| stroke |
| grestore |
| 0 0 0 setrgbcolor |
| gsave |
| newpath |
| 529 670 M 509 689 L 601 689 L 601 670 L |
| closepath clip newpath |
| 539 675 M gsave |
| -539 0.0 translate |
| 1.04225 1.0 scale |
| 517.153 0.0 translate |
| /Helvetica-Bold-SHOWISO findfont 14 scalefont setfont |
| 0 0 0 setrgbcolor |
| (data) S |
| grestore |
| grestore |
| grestore |
| showpage |
| %%EndDocument |
| |
| endTexFig |
| 263 601 a Fp(Figure)14 b(2.)k(GLX)13 b(b)o(yte)i(stream.)p |
| 1681 631 2 385 v 224 633 1459 2 v 330 811 a Fb(glSelectBu\013er)224 |
| 961 y Fm(The)c(t)o(w)o(o)e Fb(PixelStore)i Fm(commands)f(\()p |
| Fb(glPixelStorei)i Fm(and)e Fb(glPixelStoref)p Fm(\))h(are)224 |
| 1018 y(exceptions.)21 b(These)15 b(commands)g(are)f(issued)i(to)e(the)h |
| (serv)o(er)f(only)i(to)e(allo)o(w)h(it)g(to)224 1074 |
| y(set)c(its)f(error)g(state)g(appropriately)l(.)19 b(Pixel)12 |
| b(storage)e(state)f(is)j(main)o(tained)f(en)o(tirely)224 |
| 1131 y(on)16 b(the)g(clien)o(t)h(side.)22 b(When)16 b(pixel)i(data)d |
| (is)h(transmitted)f(to)h(the)f(serv)o(er)h(\(b)o(y)f |
| Fb(gl-)224 1187 y(Dra)o(wPixels)p Fm(,)e(for)h(example\),)g(the)g |
| (pixel)h(storage)e(information)h(that)f(describ)q(es)224 |
| 1243 y(it)j(is)g(transmitted)f(as)g(part)g(of)g(the)g(same)g(proto)q |
| (col)h(request.)k(Implemen)o(tations)224 1300 y(ma)o(y)13 |
| b(not)h(c)o(hange)g(this)g(b)q(eha)o(vior,)g(b)q(ecause)h(suc)o(h)f(c)o |
| (hanges)g(w)o(ould)g(cause)g(shared)224 1356 y(con)o(texts)h(to)f(b)q |
| (eha)o(v)o(e)i(incorrectly)l(.)224 1478 y Fi(4.2)56 b(Request)17 |
| b(that)i(holds)f(m)n(ultiple)e(Op)r(enGL)i(commands)224 |
| 1564 y Fm(The)e(remaining)h(Op)q(enGL)g(commands)f(are)g(those)f(that)h |
| (ma)o(y)f(b)q(e)h(put)g(in)o(to)g(dis-)224 1620 y(pla)o(y)d(lists.)20 |
| b(Multiple)14 b(o)q(ccurrences)g(of)e(these)h(commands)f(are)h(group)q |
| (ed)g(together)224 1677 y(in)o(to)k(a)g(single)h(X)f(extension)g |
| (request)g(\()p Fb(GLXRender)p Fm(\).)24 b(This)18 b(is)f(diagrammed) |
| 224 1733 y(in)f(Figure)g(2.)295 1790 y(The)c(grouping)g(minimizes)i |
| (dispatc)o(hing)g(within)f(the)f(X)g(serv)o(er.)18 b(The)12 |
| b(library)224 1846 y(pac)o(ks)18 b(as)g(man)o(y)g(Op)q(enGL)i(commands) |
| e(as)g(p)q(ossible)i(in)o(to)e(a)g(single)i(X)e(request)224 |
| 1903 y(\(without)j(exceeding)i(the)f(maxim)o(um)f(size)h(limit\).)39 |
| b(No)22 b(Op)q(enGL)g(command)224 1959 y(ma)o(y)15 b(b)q(e)h(split)g |
| (across)e(m)o(ultiple)j Fb(GLXRender)e Fm(requests.)295 |
| 2016 y(F)l(or)i(long)i(Op)q(enGL)h(commands)e(\(those)g(longer)g(than)g |
| (a)g(maxim)o(um)h(X)f(re-)224 2072 y(quest)i(size\),)h(a)f(series)h(of) |
| e Fb(GLXRenderLarge)h Fm(commands)g(is)h(issued.)35 b(The)224 |
| 2128 y(structure)19 b(of)g(the)h(Op)q(enGL)h(command)e(within)h |
| Fb(GLXRenderLarge)g Fm(is)g(the)224 2185 y(same)15 b(as)g(for)f |
| Fb(GLXRender)p Fm(.)295 2241 y(Note)j(that)g(it)h(is)g(legal)h(to)e(ha) |
| o(v)o(e)g(a)h Fb(glBegin)h Fm(in)f(one)g(request,)g(follo)o(w)o(ed)g(b) |
| o(y)224 2298 y Fb(glV)l(ertex)g Fm(commands,)i(and)f(ev)o(en)o(tually)h |
| (the)f(matc)o(hing)h Fb(glEnd)g Fm(in)g(a)e(subse-)224 |
| 2354 y(quen)o(t)d(request.)20 b(A)c(command)f(is)g(not)g(the)g(same)g |
| (as)g(an)g(Op)q(enGL)i(primitiv)o(e.)914 2613 y(22)p |
| eop |
| %%Page: 23 24 |
| 23 23 bop 224 286 a Fi(4.3)56 b(Wire)17 b(represen)n(tations)h(and)h(b) |
| n(yte)f(sw)n(apping)224 372 y Fm(Unsigned)f(and)e(signed)h(in)o(tegers) |
| f(are)g(represen)o(ted)h(as)f(they)g(are)g(represen)o(ted)g(in)224 |
| 429 y(the)g(core)g(X)f(proto)q(col.)20 b(Single)d(and)e(double)h |
| (precision)g(\015oating)f(p)q(oin)o(t)g(n)o(um)o(b)q(ers)224 |
| 485 y(are)f(sen)o(t)g(and)g(receiv)o(ed)h(in)g(IEEE)g(\015oating)f(p)q |
| (oin)o(t)g(format.)k(The)d(X)f(b)o(yte)g(stream)224 542 |
| y(and)21 b(net)o(w)o(ork)e(sp)q(eci\014cations)k(mak)o(e)d(it)g(imp)q |
| (ossible)j(for)d(the)h(clien)o(t)g(to)f(assure)224 598 |
| y(that)f(double)i(precision)g(\015oating)e(p)q(oin)o(t)h(n)o(um)o(b)q |
| (ers)g(will)h(b)q(e)g(naturally)f(aligned)224 655 y(within)e(the)g |
| (transp)q(ort)e(bu\013ers)h(of)g(the)g(serv)o(er.)25 |
| b(F)l(or)17 b(those)f(arc)o(hitectures)i(that)224 711 |
| y(require)d(it,)e(the)h(serv)o(er)f(or)g(clien)o(t)i(m)o(ust)e(cop)o(y) |
| h(those)f(\015oating)h(p)q(oin)o(t)g(n)o(um)o(b)q(ers)g(to)224 |
| 767 y(a)h(prop)q(erly)h(aligned)h(bu\013er)e(b)q(efore)g(using)h(them.) |
| 295 824 y(Byte)23 b(sw)o(apping)h(on)f(the)g(encapsulated)i(Op)q(enGL)f |
| (b)o(yte)f(stream)g(is)g(p)q(er-)224 880 y(formed)15 |
| b(b)o(y)h(the)f(serv)o(er)g(using)h(the)g(same)f(rule)h(as)f(the)g |
| (core)h(X)f(proto)q(col.)20 b(Single)224 937 y(precision)d(\015oating)f |
| (p)q(oin)o(t)g(v)m(alues)h(are)e(sw)o(app)q(ed)h(in)h(the)e(same)h(w)o |
| (a)o(y)e(that)h(32-bit)224 993 y(in)o(tegers)d(are)f(sw)o(app)q(ed.)19 |
| b(Double)12 b(precision)h(\015oating)f(p)q(oin)o(t)g(v)m(alues)h(are)e |
| (sw)o(app)q(ed)224 1050 y(across)k(all)h(8)f(b)o(ytes.)224 |
| 1171 y Fi(4.4)56 b(Sequen)n(tialit)n(y)224 1257 y Fm(There)16 |
| b(are)f(t)o(w)o(o)f(sequences)j(of)e(commands:)20 b(the)c(X)f(stream,)g |
| (and)g(the)h(Op)q(enGL)224 1314 y(stream.)34 b(In)21 |
| b(general)g(these)f(t)o(w)o(o)f(streams)g(are)h(indep)q(enden)o(t:)32 |
| b(Although)21 b(the)224 1370 y(commands)h(in)h(eac)o(h)g(stream)e(will) |
| j(b)q(e)f(pro)q(cessed)g(in)g(sequence,)i(there)d(is)h(no)224 |
| 1427 y(guaran)o(tee)17 b(that)g(commands)h(in)g(the)g(separate)f |
| (streams)g(will)i(b)q(e)g(pro)q(cessed)f(in)224 1483 |
| y(the)d(order)g(in)h(whic)o(h)g(they)g(w)o(ere)f(issued)h(b)o(y)f(the)g |
| (calling)i(thread.)295 1540 y(An)g(exception)h(to)f(this)g(rule)h |
| (arises)f(when)h(a)f(single)h(command)f(app)q(ears)g(in)224 |
| 1596 y Fj(b)n(oth)e Fm(streams.)k(This)d(forces)f(the)g(t)o(w)o(o)f |
| (streams)h(to)f(rendezv)o(ous.)295 1652 y(Because)f(the)f(pro)q |
| (cessing)h(of)f(the)g(t)o(w)o(o)f(streams)g(ma)o(y)h(tak)o(e)f(place)i |
| (at)f(di\013eren)o(t)224 1709 y(rates,)h(and)h(some)f(op)q(erations)h |
| (ma)o(y)f(dep)q(end)j(on)d(the)h(results)g(of)f(commands)h(in)g(a)224 |
| 1765 y(di\013eren)o(t)j(stream,)e(w)o(e)i(distinguish)h(b)q(et)o(w)o |
| (een)f(commands)f(assigned)h(to)f(eac)o(h)h(of)224 1822 |
| y(the)e(X)h(and)f(Op)q(enGL)i(streams.)295 1878 y(The)f(follo)o(wing)g |
| (commands)f(are)h(pro)q(cessed)g(on)g(the)f(clien)o(t)i(side)g(and)f |
| (there-)224 1935 y(fore)f(do)g(not)g(exist)g(in)h(either)g(the)g(X)f |
| (or)g(the)g(Op)q(enGL)h(stream:)330 2041 y Fb(glX)o(GetClien)o(tString) |
| 330 2097 y(glX)o(GetCurren)o(tCon)o(text)330 2154 y(glX)o(GetCurren)o |
| (tDispla)o(y)330 2210 y(glX)o(GetCurren)o(tDra)o(w)o(able)330 |
| 2267 y(glX)o(GetCon\014g)295 2429 y Fm(The)h(follo)o(wing)g(commands)f |
| (are)g(in)i(the)e(X)h(stream)f(and)h(ob)q(ey)g(the)f(sequen-)224 |
| 2486 y(tialit)o(y)g(guaran)o(tees)e(for)h(X)g(requests:)914 |
| 2613 y(23)p eop |
| %%Page: 24 25 |
| 24 24 bop 330 286 a Fb(glX)o(CreateCon)o(text)330 343 |
| y(glXDestro)o(yCon)o(text)330 399 y(glXMak)o(eCurren)o(t)330 |
| 456 y(glXIsDirect)330 512 y(glX)o(QueryExtensionsString)330 |
| 569 y(glX)o(QueryServ)o(erString)330 625 y(glX)o(QueryV)l(ersion)330 |
| 682 y(glXW)l(aitGL)330 738 y(glX)o(CreateGLXPixmap)330 |
| 795 y(glXDestro)o(yGLXPixmap)330 851 y(glX)o(Cho)q(oseVisual)330 |
| 907 y(glXSw)o(apBu\013ers)14 b Fm(\(but)h(see)h(b)q(elo)o(w\))330 |
| 964 y Fb(glX)o(Cop)o(yCon)o(text)e Fm(\(see)h(b)q(elo)o(w\))295 |
| 1127 y Fb(glXSw)o(apBu\013ers)h Fm(is)h(in)h(the)g(X)f(stream)f(if)i |
| (and)f(only)h(if)f(the)h(displa)o(y)g(and)224 1183 y(dra)o(w)o(able)13 |
| b(are)g(not)g(those)h(b)q(elonging)h(to)d(the)i(calling)h(thread's)e |
| (curren)o(t)g(con)o(text;)224 1240 y(otherwise)19 b(it)f(is)h(in)g(the) |
| f(Op)q(enGL)h(stream.)28 b Fb(glX)o(Cop)o(yCon)o(text)17 |
| b Fm(is)i(in)g(the)f(X)224 1296 y(stream)i(alone)i(if)g(and)f(only)h |
| (if)f(its)h(source)f(con)o(text)f(di\013ers)i(from)e(the)h(calling)224 |
| 1352 y(thread's)15 b(curren)o(t)g(con)o(text;)f(otherwise)i(it)f(is)h |
| (in)g(b)q(oth)f(streams.)295 1409 y(Commands)23 b(in)h(the)g(Op)q(enGL) |
| h(stream,)g(whic)o(h)f(ob)q(ey)g(the)g(sequen)o(tialit)o(y)224 |
| 1465 y(guaran)o(tees)15 b(for)f(Op)q(enGL)j(requests)e(are:)330 |
| 1572 y Fb(glXW)l(aitX)330 1628 y(glXSw)o(apBu\013ers)f |
| Fm(\(see)h(b)q(elo)o(w\))330 1685 y(All)i(Op)q(enGL)f(Commands)295 |
| 1847 y Fb(glXSw)o(apBu\013ers)11 b Fm(is)j(in)f(the)g(Op)q(enGL)i |
| (stream)d(if)h(and)g(only)h(if)f(the)g(displa)o(y)224 |
| 1904 y(and)g(dra)o(w)o(able)f(are)h(those)f(b)q(elonging)i(to)e(the)h |
| (calling)h(thread's)f(curren)o(t)f(con)o(text;)224 1960 |
| y(otherwise)k(it)f(is)h(in)g(the)f(X)g(stream.)295 2017 |
| y(Commands)f(in)i(b)q(oth)g(streams,)e(whic)o(h)i(force)f(a)g(rendezv)o |
| (ous)g(are:)330 2123 y Fb(glX)o(Cop)o(yCon)o(text)f Fm(\(see)h(b)q(elo) |
| o(w\))330 2179 y Fb(glXUseXF)l(on)o(t)295 2342 y(glX)o(Cop)o(yCon)o |
| (text)9 b Fm(is)i(in)g(b)q(oth)g(streams)f(if)h(and)f(only)h(if)g(the)g |
| (source)g(con)o(text)224 2399 y(is)18 b(the)f(same)f(as)h(the)g(curren) |
| o(t)g(con)o(text)f(of)h(the)g(calling)i(thread;)e(otherwise)g(it)h(is) |
| 224 2455 y(in)e(the)f(X)h(stream)e(only)l(.)914 2613 |
| y(24)p eop |
| %%Page: 25 26 |
| 25 25 bop 224 286 a Fk(5)67 b(Extending)24 b(Op)r(enGL)224 |
| 388 y Fm(Op)q(enGL)16 b(is)e(extended)h(b)o(y)f(adding)h(new)f(GLX)g |
| (requests,)g(Op)q(enGL)i(requests)e(or)224 444 y(additional)f(en)o |
| (umerated)e(v)m(alues)i(to)d(the)i(Op)q(enGL)g(requests.)19 |
| b(The)11 b(Op)q(enGL)i(Ar-)224 501 y(c)o(hitectural)h(Review)g(Board)e |
| (main)o(tains)h(a)f(registry)g(of)h(indexes)h(for)e(eac)o(h)g(v)o |
| (endor)224 557 y(to)j(use)g(as)g(they)g(wish.)295 614 |
| y(New)23 b(names)f(m)o(ust)g(clearly)i(indicate)g(to)e(clien)o(ts)i |
| (whether)f(some)g(partic-)224 670 y(ular)h(feature)g(is)h(in)f(the)g |
| (core)g(Op)q(enGL)h(or)f(is)g(v)o(endor)g(sp)q(eci\014c.)48 |
| b(T)l(o)24 b(mak)o(e)224 727 y(a)e(v)o(endor-sp)q(eci\014c)i(name,)g |
| (app)q(end)g(a)d(compan)o(y)i(iden)o(ti\014er)g(\(in)g(upp)q(er)g |
| (case\))224 783 y(and)c(an)o(y)e(additional)j(v)o(endor-sp)q(eci\014c)g |
| (tags)e(\(e.g.)28 b(mac)o(hine)19 b(names\).)29 b(F)l(or)17 |
| b(in-)224 840 y(stance,)22 b(SGI)f(migh)o(t)f(add)h(new)g(commands)f |
| (and)h(manifest)g(constan)o(ts)f(of)g(the)224 896 y(form)f |
| Fb(glNewCommandSGI)f Fm(and)i Fb(GL)p 990 896 16 2 v |
| 19 w(NEW)p 1138 896 V 19 w(DEFINITION)p 1481 896 V 19 |
| w(SGI)p Fm(.)f(If)224 952 y(SGI)f(w)o(an)o(ted)g(to)f(pro)o(vide)i |
| (extensions)f(that)g(w)o(ere)f(sp)q(eci\014c)j(to)e(its)g(Realit)o(y)h |
| (En-)224 1009 y(gine,)13 b(then)f(the)f(names)h(migh)o(t)f(b)q(e)i(of)e |
| (the)g(form)g Fb(glNewCommandSGIre)g Fm(and)224 1065 |
| y Fb(GL)p 299 1065 V 20 w(NEW)p 448 1065 V 19 w(DEFINITION)p |
| 791 1065 V 19 w(SGI)p 900 1065 V 18 w(RE)p Fm(.)k(If)f(t)o(w)o(o)f(or)h |
| (more)f(licensees)k(agree)c(in)224 1122 y(go)q(o)q(d)i(faith)h(to)e |
| (implemen)o(t)j(the)e(same)g(extension,)g(and)h(to)e(mak)o(e)h(the)g |
| (sp)q(eci\014ca-)224 1178 y(tion)f(of)g(that)f(extension)i(publicly)h |
| (a)o(v)m(ailable,)g(the)e(pro)q(cedures)g(and)g(tok)o(ens)g(that)224 |
| 1235 y(are)h(de\014ned)i(b)o(y)e(the)g(extension)h(can)f(b)q(e)h |
| (su\016xed)g(b)o(y)f Fb(EXT)p Fm(.)224 1378 y Fk(6)67 |
| b(Glossary)224 1479 y Fb(Address)16 b(Space)23 b Fm(the)30 |
| b(set)f(of)h(ob)s(jects)f(or)g(memory)g(lo)q(cations)h(accessible)338 |
| 1536 y(through)18 b(a)f(single)j(name)e(space.)29 b(In)19 |
| b(other)f(w)o(ords,)f(it)i(is)f(a)g(data)g(region)338 |
| 1592 y(that)c(one)i(or)e(more)h(pro)q(cesses)h(ma)o(y)e(share)h |
| (through)g(p)q(oin)o(ters.)224 1686 y Fb(Clien)o(t)24 |
| b Fm(an)16 b(X)h(clien)o(t.)26 b(An)18 b(application)g(comm)o(unicates) |
| f(to)g(a)f(serv)o(er)h(b)o(y)f(some)338 1743 y(path.)j(The)13 |
| b(application)i(program)d(is)h(referred)g(to)g(as)f(a)h(clien)o(t)i(of) |
| d(the)h(win-)338 1799 y(do)o(w)i(system)f(serv)o(er.)20 |
| b(T)l(o)15 b(the)g(serv)o(er,)g(the)g(clien)o(t)h(is)g(the)f(comm)o |
| (unication)338 1855 y(path)e(itself.)20 b(A)13 b(program)f(with)h(m)o |
| (ultiple)i(connections)f(is)f(view)o(ed)h(as)f(m)o(ul-)338 |
| 1912 y(tiple)j(clien)o(ts)g(to)f(the)g(serv)o(er.)k(The)c(resource)g |
| (lifetimes)i(are)d(con)o(trolled)i(b)o(y)338 1968 y(the)f(connection)h |
| (lifetimes,)h(not)e(the)g(application)i(program)d(lifetimes.)224 |
| 2062 y Fb(Connection)24 b Fm(a)15 b(bidirectional)j(b)o(yte)d(stream)f |
| (that)g(carries)i(the)f(X)g(\(and)g(GLX\))338 2119 y(proto)q(col)h(b)q |
| (et)o(w)o(een)h(the)g(clien)o(t)h(and)f(the)g(serv)o(er.)24 |
| b(A)16 b(clien)o(t)i(t)o(ypically)g(has)338 2175 y(only)e(one)f |
| (connection)h(to)f(a)g(serv)o(er.)224 2269 y Fb(\(Rendering\))k(Con)o |
| (text)j Fm(a)15 b(Op)q(enGL)h(rendering)g(con)o(text.)j(This)c(is)h(a)e |
| (virtual)338 2325 y(Op)q(enGL)j(mac)o(hine.)24 b(All)18 |
| b(Op)q(enGL)g(rendering)f(is)g(done)f(with)h(resp)q(ect)g(to)338 |
| 2382 y(a)g(con)o(text.)27 b(The)19 b(state)e(main)o(tained)h(b)o(y)g |
| (one)g(rendering)h(con)o(text)e(is)i(not)338 2438 y(a\013ected)c(b)o(y) |
| g(another)g(except)g(in)h(case)g(of)e(shared)i(displa)o(y)g(lists.)914 |
| 2613 y(25)p eop |
| %%Page: 26 27 |
| 26 26 bop 224 286 a Fb(GLX)o(Con)o(text)22 b Fm(a)g(handle)i(to)e(a)g |
| (rendering)i(con)o(text.)41 b(Rendering)25 b(con)o(texts)338 |
| 343 y(consist)15 b(of)g(clien)o(t)i(side)f(state)e(and)h(serv)o(er)g |
| (side)h(state.)224 437 y Fb(Similar)24 b Fm(a)18 b(p)q(oten)o(tial)h |
| (corresp)q(ondence)h(among)e Fh(GLXDrawable)p Fm(s)f(and)h(render-)338 |
| 493 y(ing)f(con)o(texts.)25 b Fh(Window)p Fm(s)16 b(and)h |
| Fh(GLXPixmap)p Fm(s)f(are)h(similar)h(to)e(a)h(rendering)338 |
| 550 y(con)o(text)j(are)h(similar)h(if,)g(and)f(only)h(if,)g(they)f(ha)o |
| (v)o(e)g(b)q(een)h(created)f(with)338 606 y(resp)q(ect)15 |
| b(to)g(the)g(same)g Fh(VisualID)f Fm(and)i(ro)q(ot)e(windo)o(w.)224 |
| 700 y Fb(Thread)23 b Fm(one)15 b(of)f(a)g(group)g(of)g(pro)q(cesses)g |
| (all)i(sharing)e(the)h(same)f(address)g(space.)338 756 |
| y(T)o(ypically)l(,)g(eac)o(h)f(thread)f(will)i(ha)o(v)o(e)e(its)g(o)o |
| (wn)g(program)f(coun)o(ter)h(and)h(stac)o(k)338 813 y(p)q(oin)o(ter,)22 |
| b(but)e(the)h(text)f(and)h(data)f(spaces)g(are)h(visible)h(to)e(eac)o |
| (h)h(of)f(the)338 869 y(threads.)e(A)11 b(thread)g(that)f(is)h(the)g |
| (only)h(mem)o(b)q(er)f(of)f(its)h(group)g(is)g(equiv)m(alen)o(t)338 |
| 926 y(to)j(a)h(pro)q(cess.)914 2613 y(26)p eop |
| %%Trailer |
| end |
| userdict /end-hook known{end-hook}if |
| %%EOF |