%!PS-Adobe-3.0
%%Title: Diplomacy Map (Sail Ho!)
%%Creator: dpmap, using a map created with DPeye by Mario Huys (woelpad@yahoo.com)
%%DocumentPaperSizes: Letter
%%LanguageLevel: 2
%%Orientation: Landscape
%%Pages: (atend)
%%DocumentNeededResources: font Helvetica-Bold Courier Courier-Bold Times-Roman
%%EndComments
%%BeginDefaults
%%PageResources: font Helvetica-Bold Courier Courier-Bold Times-Roman
%%EndDefaults
% INFO
% 378 568 AEO Village of Aeolus
% 208 508 ALC Alcmene's Village
% 498 438 AMA Amazon Village
% 398 428 APH Aphrodite's Beach
% 513 308 ARE Palace of Ares
% 453 218 ARG Argo's Pasture
% 378 190 AUT Autolycus' Hideout
% 318 190 CAL Callisto's Stronghold
% 508 231 CEC Cecrops' Channel
% 488 533 CEN Centaur Forest
% 168 218 CHA Charon's Crossing
% 448 568 CHI Chiron's Cave
% 373 358 CUP Cupid's Cloud
% 248 608 DEI Deianeira's Grave
% 558 368 EAS Eastern Ocean
% 488 478 ECH Echo's Glade
% 133 213 ELY Elysian Fields
% 178 578 FIE Field of the Golden Fleece
% 223 288 FIR Sea of Fire
% 238 190 FUR Realm of the 3 Furies
% 358 233 GAB Gabrielle's Village
% 388 513 GLI Glittering Gulf
% 278 448 GOC Gulf of Chains
% 318 233 HAD Depths of Hades
% 258 528 HER Hercules' Respite
% 228 363 HES Shrine to Hestia
% 231 365 HES/NC Shrine to Hestia (north coast)
% 223 338 HES/SC Shrine to Hestia (south coast)
% 478 283 HIN Forest of the Golden Hind
% 548 448 HIP Hippolyta's Girdle
% 148 508 JAS Jason's Kingdom
% 428 190 JOX Joxter's Retreat
% 148 328 LBS Lesbian Sea
% 195 355 LES Isle of Lesbos
% 358 308 LOV Lover's Lane
% 343 518 MID Realm of King Midas
% 568 508 MIN Minotaur's Labyrinth
% 198 448 MOR Morpheus' Palace
% 438 513 NAR Narcissus' Reflection
% 468 318 NES Nestor's Kingdom
% 318 568 OLY Mount Olympus
% 148 258 PEA Ocean of Peace
% 268 238 PER Persephone's Garden
% 388 278 POS Poseidon's Curse
% 328 438 PRO Prometheus' Cliff
% 388 388 PSY Village of Psyche
% 428 388 PSY/EC Village of Psyche (east coast)
% 358 388 PSY/WC Village of Psyche (west coast)
% 303 478 SAL Salmonius' Scheme
% 458 378 SCH Scholars Channel
% 518 338 SER Serina's Village
% 528 598 SIS Sisyphus' Hill
% 278 388 SOA Sea of Arrows
% 228 418 SOD Sea of Dreams
% 318 273 SOT Sea of Tears
% 538 193 SOU South Sea
% 398 468 SOW Sea of Waves
% 518 268 STR Strife's Cave
% 438 613 TAN Tantalus' Pool
% 218 238 TAR Tartarus
% 263 348 VES Convent of the Vestal Virgins
% 148 398 WES Western Ocean
% 408 228 XEN Xena's Rest
% 328 613 ZEU Temple of Zeus
% MAP
%%BeginSetup
/bd { bind def } bind def
/xd { exch def } bd
/ld { load def } bd
/ifloor { .001 add floor cvi } bd
/iceiling { .001 sub ceiling cvi } bd
/min { 2 copy gt { exch } if pop } bd
/max { 2 copy lt { exch } if pop } bd
/secure_atan { 2 copy 0 eq exch 0 eq and { pop pop 0 } { atan } ifelse } bd
/center { 3 2 roll add 2 div 3 1 roll add 2 div exch } bd
/a /arc ld
/c /curveto ld
/d /setdash ld
/f /fill ld
/h /show ld
/k /stroke ld
/l /lineto ld
/m /moveto ld
/n /newpath ld
/o /rotate ld
/p /closepath ld
/r /grestore ld
/s /gsave ld
/t /translate ld
/w /setlinewidth ld
/x /scale ld
/y /scalefont ld
/z /setfont ld
%%IncludeResource: font Helvetica-Bold
/MapNameFont /Helvetica-Bold findfont 14 y def
/Powers 20 dict def
%%IncludeResource: font Helvetica-Bold
/MapUnitLetterFont /Helvetica-Bold findfont 14 y def
%%IncludeResource: font Courier
/TextFixedFont /Courier findfont def
%%IncludeResource: font Courier-Bold
/TextHeadingFont /Courier-Bold findfont def
%%IncludeResource: font Times-Roman
/TextTitleFont /Times-Roman findfont def
/PageSetup {
612 0 t
90 o
/FinishReport { } def /InTextMode true def
Black
MovePhase
} bd
/ShowPage {
DrawAliases
DrawRemainingCenters
InTextMode { FinishReport } { r } ifelse
FrameMap
showpage
} bd
/MapForm <<
/FormType 1
/Matrix [ 2.2765 0 0 2.2765 119.36 174.16 ]
/BBox [ 0 0 210.33 204 ]
/FormDict 1 dict
/PaintProc {
dup /Matrix get exch /FormDict get begin
s
matrix invertmatrix concat
SeaBlue 119.36 174.16 478.8 464.4 rectfill
IncludeIsland
IncludeInternalBorders
r
end
} bind
>> def
/DrawMap {
PageSetup
SwitchToMapMode
MapForm execform
/Centers << Centers { pop true } forall >> def
UNOWNED
} bd
/VisitSupplies {
1 dict begin
/s xd
/MOR 198 428 s
/HER 258 508 s
/AEO 378 548 s
/CEN 488 513 s
/AMA 498 418 s
/PRO 328 423 s
/LES 180 348 s
/VES 263 328 s
/TAR 218 218 s
/HAD 318 213 s
/XEN 408 208 s
/STR 518 253 s
/ARE 513 293 s
/NES 468 303 s
/CUP 353 358 s
/APH 398 413 s
end
} def
/VisitTerritories {
5 dict begin
/b xd
/g xd
/w xd
/l xd
/c xd
(MOR) 198 448 c
(ALC) 208 508 c
(HER) 258 528 c
(AEO) 378 568 c
(CHI) 448 568 c
(CEN) 488 533 c
(ECH) 488 478 c
(AMA) 498 438 c
(SAL) 303 478 c
(MID) 343 518 c
(PRO) 328 438 c
(LES) 195 355 c
(VES) 263 348 c
(CHA) 168 218 c
(TAR) 218 238 c
(PER) 268 238 c
(HAD) 318 233 c
(GAB) 358 233 c
(XEN) 408 228 c
(ARG) 453 218 c
(STR) 518 268 c
(SER) 518 338 c
(HIN) 478 283 c
(NES) 468 318 c
(MIN) 568 508 c
(CUP) 373 358 c
(APH) 398 428 c
(JAS) 148 508 c
(ELY) 133 213 c
(JOX) 428 190 c
(HIP) 548 448 c
(OLY) 318 568 l
(ARE) 513 308 l
(SIS) 528 598 l
(ZEU) 328 613 l
(TAN) 438 613 l
(FIE) 178 578 l
(FUR) 238 190 l
(CAL) 318 190 l
(AUT) 378 190 l
(DEI) 248 608 l
(SOD) 228 418 w
(GOC) 278 448 w
(WES) 148 398 w
(SOA) 278 388 w
(GLI) 388 513 w
(NAR) 438 513 w
(SOW) 398 468 w
(FIR) 223 288 w
(LBS) 148 328 w
(PEA) 148 258 w
(SOT) 318 273 w
(POS) 388 278 w
(CEC) 508 231 w
(SOU) 538 193 w
(EAS) 558 368 w
(SCH) 458 378 w
(LOV) 358 308 w
(HES) 228 363 g
(PSY) 388 388 g
(PSY/WC) 358 388 b
(PSY/EC) 428 388 b
(HES/NC) 231 365 b
(HES/SC) 223 338 b
end
} def
/DrawSupplies {
SwitchToMapMode
UNOWNEDCENTER
{ SupplyCenters 3 1 roll 4 3 roll supply } bind
VisitSupplies
} bd
/DrawAlias {
SwitchToMapMode
s
3 1 roll t
.7 .7 x
0 -14 t
MapNameFont z
dup stringwidth pop -2 div 0 neg m h
r
} bd
/DrawName {
pop pop pop
} bd
/DrawAliases {
NameTerritories
} bd
/NameTerritories {
SwitchToMapMode
s
{ DarkGreen 3 2 roll DrawAlias } bind
{ DarkGreen 3 2 roll DrawAlias } bind
{ White 3 2 roll DrawAlias } bind
{ DarkGreen 3 2 roll DrawAlias } bind
{ pop pop pop } bind
VisitTerritories
r
} bd
/VisitPowers {
1 dict begin
/p xd
/UNOWNED (?) /Brown /White p
/EAST (E) /Black /White p
/NORTH (N) /Blue /White p
/SOUTH (S) /Red /White p
/WEST (W) /Green /White p
end
} def
/CreateTroop {
<<
/BBox 4 3 roll
/PaintProc 5 4 roll
6 5 roll {} forall
/FormType 1
/Matrix matrix
>>
} bd
/CreateTroops {
<< 3 1 roll Powers {
3 index 3 index CreateTroop 4 2 roll
} forall pop pop >>
} bd
/PaintFleet {
begin
.7 .7 x
0 8 t
s
.5 .5 x
-35 -16 t
12 3 m 12 9 l 9 12 l 6 13 l 6 17 l % bow
9 17 l 9 23 l 2 22 l 7 16 l 6 16 l
1 22 l % bowsprit
6 27 l 12 37 l 15 45 l % front sail
19 44 l 19 48 l 16 48 l 15 49 l 19 49 l
19 55 l 20 55 l 20 49 l 24 49 l 23 48 l
20 48 l 20 44 l % front mast
24 43 l 24 34 l 27 29 l 33 29 l 33 32 l
25 32 l 28 39 l 31 51 l % mid sail left
35 50 l 35 54 l 30 54 l 29 55 l 35 55 l
35 63 l 36 63 l 36 56 l 36 55 l 42 55 l
41 54 l 36 54 l 36 50 l % mid mast
41 49 l 41 32 l 36 32 l 36 29 l 39 29 l
41 43 l % mid sail right
45 43 l 45 47 l 41 47 l 41 48 l 45 48 l
45 55 l 46 55 l 46 48 l 51 48 l 50 47 l
46 47 l 46 43 l % rear mast
48 43 l 49 28 l 51 28 l 51 31 l 54 33 l
54 23 l 57 26 l 57 22 l 56 21 l % rear sail and flag
56 15 l 59 12 l 59 7 l 57 4 l 55 3 l p % bow
s 4 w Contrast k r Paint f
r
Offset aload pop m
MapUnitLetterFont z
Contrast Letter h
end
} bd
/FleetTroopBBox [
-12.6 .35 9.1 22.75
] def
/PaintArmy {
begin
.7 .7 x
0 8 t
s
.1667 .1667 x
-90 -46 t
39 3 m 37 8 l 32 12 l 32 25 l 27 38 l 34 46 l 34 54 l 26 63 l 16 59 l 16 52 l
19 41 l 13 28 l 12 37 l 6 49 l 5 60 l 1 69 l 7 78 l 8 90 l 12 93 l 19 91 l
30 80 l 38 86 l 45 97 l 50 123 l 58 133 l 65 135 l 67 146 l 75 153 l 69 160 l 57 159 l
72 169 l 84 166 l 84 158 l 78 150 l 82 148 l 82 144 l 88 141 l 82 135 l 79 131 l 80 126 l 82 122 l
90 118 l 93 129 l 106 136 l 104 142 l 116 137 l 123 136 l 129 132 l 139 127 l 144 124 l 141 115 l
134 111 l 126 115 l 119 115 l 129 106 l 133 94 l 133 84 l 136 78 l 135 71 l 155 61 l 157 55 l
149 34 l 137 25 l 130 25 l 131 33 l 134 36 l 148 47 l 145 54 l 132 56 l 125 39 l 120 17 l 127 11 l
132 3 l 118 3 l 117 12 l 111 18 l 115 49 l 100 49 l 96 42 l 77 48 l 69 48 l 63 36 l 76 22 l
81 9 l 76 5 l 70 10 l 71 18 l 53 31 l 55 42 l 41 37 l 37 23 l 43 12 l 49 7 l 49 3 l p
s 12 w Contrast k r Paint f
r
0 6 t
Offset aload pop m
MapUnitLetterFont z
Contrast Letter h
end
} bd
/ArmyTroopBBox [
-11.08 -.12 8.52 20.65
] def
/DrawFleet {
SwitchToMapMode
s t
FleetTroops Power get execform
r
} bd
/DrawArmy {
SwitchToMapMode
s t
ArmyTroops Power get execform
r
} bd
/DrawRemainingCenters {
SwitchToMapMode
UNOWNED
Centers {
{ load exec supply } { pop } ifelse
} forall
} bd
/PaintSupply {
begin
.7 .7 x
Paint
n 0 0 6 0 360 a f
end
} bd
/SupplyCenterBBox [
-4.2 -4.2 4.2 4.2
] def
/supply {
SwitchToMapMode
Centers exch false put
s t
Power get execform
r
} bd
/GetControlledPower {
1 index dup length string cvs 1 index dup length string cvs
1 index length dup 2 index length add 1 add string
dup 0 6 5 roll putinterval dup 2 index 124 put dup 3 2 roll 1 add 4 3 roll putinterval cvn
3 1 roll Powers 3 index known {
pop pop
} {
8 dict dup begin
exch Powers exch get /Paint get /Outer xd
Powers 2 index get { def } forall
end
dup ControlledFleetTroopBBox /PaintControlledFleet load CreateTroop FleetTroops 4 index 3 2 roll put
dup ControlledArmyTroopBBox /PaintControlledArmy load CreateTroop ArmyTroops 4 index 3 2 roll put
dup ControlledSupplyCenterBBox /PaintControlledSupply load CreateTroop SupplyCenters 4 index 3 2 roll put
Powers 2 index 3 2 roll put
[ /Power 3 index 4 3 roll {
ChangeController {
Power GetControlledPower exch
/ChangeController false def
} if pop
} bind /exec load /def load ] cvx 2 index xd
} ifelse
} bd
/PaintControlledFleet {
begin
.7 .7 x
0 8 t
s
.5 .5 x
-35 -16 t
12 3 m 12 9 l 9 12 l 6 13 l 6 17 l % bow
9 17 l 9 23 l 2 22 l 7 16 l 6 16 l
1 22 l % bowsprit
6 27 l 12 37 l 15 45 l % front sail
19 44 l 19 48 l 16 48 l 15 49 l 19 49 l
19 55 l 20 55 l 20 49 l 24 49 l 23 48 l
20 48 l 20 44 l % front mast
24 43 l 24 34 l 27 29 l 33 29 l 33 32 l
25 32 l 28 39 l 31 51 l % mid sail left
35 50 l 35 54 l 30 54 l 29 55 l 35 55 l
35 63 l 36 63 l 36 56 l 36 55 l 42 55 l
41 54 l 36 54 l 36 50 l % mid mast
41 49 l 41 32 l 36 32 l 36 29 l 39 29 l
41 43 l % mid sail right
45 43 l 45 47 l 41 47 l 41 48 l 45 48 l
45 55 l 46 55 l 46 48 l 51 48 l 50 47 l
46 47 l 46 43 l % rear mast
48 43 l 49 28 l 51 28 l 51 31 l 54 33 l
54 23 l 57 26 l 57 22 l 56 21 l % rear sail and flag
56 15 l 59 12 l 59 7 l 57 4 l 55 3 l p % bow
s s 12 w Outer k r 4 w Contrast k r Paint f
r
Offset aload pop m
MapUnitLetterFont z
Contrast Letter h
end
} bd
/ControlledFleetTroopBBox [
-14 -1.05 10.5 24.15
] def
/PaintControlledArmy {
begin
.7 .7 x
0 8 t
s
.1667 .1667 x
-90 -46 t
39 3 m 37 8 l 32 12 l 32 25 l 27 38 l 34 46 l 34 54 l 26 63 l 16 59 l 16 52 l
19 41 l 13 28 l 12 37 l 6 49 l 5 60 l 1 69 l 7 78 l 8 90 l 12 93 l 19 91 l
30 80 l 38 86 l 45 97 l 50 123 l 58 133 l 65 135 l 67 146 l 75 153 l 69 160 l 57 159 l
72 169 l 84 166 l 84 158 l 78 150 l 82 148 l 82 144 l 88 141 l 82 135 l 79 131 l 80 126 l 82 122 l
90 118 l 93 129 l 106 136 l 104 142 l 116 137 l 123 136 l 129 132 l 139 127 l 144 124 l 141 115 l
134 111 l 126 115 l 119 115 l 129 106 l 133 94 l 133 84 l 136 78 l 135 71 l 155 61 l 157 55 l
149 34 l 137 25 l 130 25 l 131 33 l 134 36 l 148 47 l 145 54 l 132 56 l 125 39 l 120 17 l 127 11 l
132 3 l 118 3 l 117 12 l 111 18 l 115 49 l 100 49 l 96 42 l 77 48 l 69 48 l 63 36 l 76 22 l
81 9 l 76 5 l 70 10 l 71 18 l 53 31 l 55 42 l 41 37 l 37 23 l 43 12 l 49 7 l 49 3 l p
s s 36 w Outer k r 12 w Contrast k r Paint f
r
0 6 t
Offset aload pop m
MapUnitLetterFont z
Contrast Letter h
end
} bd
/ControlledArmyTroopBBox [
-12.48 -1.52 9.92 22.05
] def
/PaintControlledSupply {
begin
.7 .7 x
Outer
n 0 0 10 0 360 a f
Contrast
n 0 0 8 0 360 a f
Paint
n 0 0 6 0 360 a f
end
} bd
/ControlledSupplyCenterBBox [
-7 -7 7 7
] def
/Controls {
/ChangeController true def
} bd
/SetArrowStateOk {
[] 0 d
} bd
/OkOrder {
/SetArrowState /SetArrowStateOk ld
} bd
/SetArrowStateFailed {
[4 6] 2 d
} bd
/FailedOrder {
/SetArrowState /SetArrowStateFailed ld
} bd
/MovePhase {
/ArrowColor /ArrowBlack ld
/ArrowBase 20 def
/TraceArrowHead /TraceSingleArrowHead ld
InTextMode not { ArrowColor } if
} bd
/RetreatPhase {
/ArrowColor /ArrowRed ld
/ArrowBase 39.8 def
/TraceArrowHead /TraceDoubleArrowHead ld
InTextMode not { ArrowColor } if
} bd
/ProposePhase {
/ArrowColor /ArrowWhite ld
/ArrowBase 39.8 def
/TraceArrowHead /TraceDoubleArrowHead ld
InTextMode not { ArrowColor } if
} bd
/TraceSingleArrowHead {
% draw the arrow head ...
n
dup -5 m
dup 20 add 0 l
dup 5 l
p
} bd
/TraceDoubleArrowHead {
% draw the double arrow head ...
n
dup -5 m
dup 19.8 add
dup -1 l
dup -5 l
dup 20 add 0 l
dup 5 l
1 l
dup 5 l
p
} bd
/PaintArrowMove {
s
3 index 3 index t
3 2 roll sub 3 1 roll exch sub exch
2 copy dup mul exch dup mul add sqrt 3 1 roll exch secure_atan
.7 .7 x
0 8 t
o
.7 div ArrowBase sub
% if base of arrow is long enough, shorten it enough
% to e.g. move arrow start beyond support circle
dup 14 gt {
14 14 0 t sub
} {
0 t 0
} ifelse
% if base is still too long, shorten it some more
% to make arrow head touch support circle
dup 14 gt {
14 sub
} {
pop 0
} ifelse
1 w
TraceArrowHead
k
% now the shaft ...
2 w
0 0 m
0 l
k
r
} bd
/PaintArrowCircle {
s
5 1 roll
3 index 3 index t
3 2 roll sub 3 1 roll exch sub exch
2 copy dup mul exch dup mul add sqrt 3 1 roll exch secure_atan
.7 .7 x
0 8 t
o
.7 div
1 index sub
% if base of arrow is long enough, shorten it enough
% to e.g. move arrow start beyond support circle
dup 14 gt {
14 14 0 t sub
} {
0 t 0
} ifelse
% draw the circle ...
1 w
n
2 copy add 0 4 3 roll 0 360 a
p k
% now the shaft ...
2 w
0 0 m
0 l
k
r
} bd
/ArrowMove {
SwitchToMapMode
s
SetArrowState
PaintArrowMove
r
} bd
/ArrowHold {
SwitchToMapMode
s
SetArrowState
24 PaintArrowCircle
r
} bd
/ArrowSupport {
SwitchToMapMode
s
SetArrowState
center
8 PaintArrowCircle
r
} bd
/ArrowConvoy {
SwitchToMapMode
s
SetArrowState
center
12 PaintArrowCircle
r
} bd
/ArrowRetreat {
RetreatPhase
ArrowMove
MovePhase
} bd
/ArrowPropose {
ProposePhase
ArrowMove
MovePhase
} bd
/BuildUnit {
SwitchToMapMode
s
t
ArrowWhite
.7 .7 x
0 8 t
6 w [ 3.14 6.28 ] 1.57 d
n
0 0 24 0 360 a
p k
r
} bd
/SlashUnit {
s
3 1 roll t
.7 .7 x
0 8 t
n
-21 -16 m
11 16 l
21 16 l
-11 -16 l
p
exec
r
} bd
/DestroyUnit {
SwitchToMapMode
{ ArrowRed f } SlashUnit
} bd
/DisbandUnit {
SwitchToMapMode
{ s ArrowWhite f r 1 w ArrowRed k } SlashUnit
} bd
/RemoveUnit {
SwitchToMapMode
{ ArrowWhite f } SlashUnit
} bd
/QueryUnit {
SwitchToMapMode
s
t
ArrowWhite
.7 .7 x
0 8 t
4 w
-12 4 m
-8 7 -4 7 0 4 c
4 1 8 1 12 4 c
-12 -4 m
-8 -1 -4 -1 0 -4 c
4 -7 8 -7 12 -4 c
k
r
} bd
/PaintArrowArrive {
s
t
.7 .7 x
0 8 t
180 rotate 54 ArrowBase add neg 0 t
40
1 w
TraceArrowHead
k
% now the shaft ...
2 w
0 0 m
0 l
k
-10 0 m -20 0 l
-30 0 m -40 0 l
k
r
} bd
/PaintArrowArriveFleet {
2 copy
PaintArrowArrive
SetArrowStateOk
exch 0 44 ArrowBase add add .7 mul add exch 10.08 add t
.8 .8 x
FleetTroops Power get execform
} bd
/PaintArrowArriveArmy {
2 copy
PaintArrowArrive
SetArrowStateOk
exch 0 44 ArrowBase add add .7 mul add exch 10.08 add t
.8 .8 x
ArmyTroops Power get execform
} bd
/PaintArrowDepart {
s
t
.7 .7 x
0 8 t
-54 0 t
40
2 w
0 0 m
0 l
-10 0 m -20 0 l
-30 0 m -40 0 l
k
r
} bd
/ArrowDepart {
SwitchToMapMode
s
SetArrowState
PaintArrowDepart
r
} bd
/ArrowArriveFleet {
SwitchToMapMode
s
SetArrowState
PaintArrowArriveFleet
r
} bd
/ArrowArriveArmy {
SwitchToMapMode
s
SetArrowState
PaintArrowArriveArmy
r
} bd
/ArrowSupportArrive {
2 copy exch 89.6 add exch ArrowSupport
} bd
/ArrowSupportDepart {
2 copy exch 61.6 sub exch ArrowSupport
} bd
/ArrowConvoyArrive {
2 copy exch 89.6 add exch ArrowConvoy
} bd
/ArrowConvoyDepart {
2 copy exch 61.6 sub exch ArrowConvoy
} bd
/ArrowRefugeFleet {
RetreatPhase
ArrowArriveFleet
MovePhase
} bd
/ArrowRefugeArmy {
RetreatPhase
ArrowArriveArmy
MovePhase
} bd
/ArrowFlee {
RetreatPhase
ArrowDepart
MovePhase
} bd
/FindUnit {
SwitchToMapMode
s
t
ArrowBlue
.7 .7 x
0 8 t
6 w [ 3.14 6.28 ] 1.57 d
n
0 0 24 0 360 a
p k
r
} bd
/FindArriveUnit {
SwitchToMapMode
s
exch 44.8 add exch 10.08 add t
.8 .8 x
0 0 FindUnit
r
} bd
/LoseUnit {
SwitchToMapMode
s
t
ArrowBlue
.7 .7 x
0 8 t
4 w
-12 4 m
-8 7 -4 7 0 4 c
4 1 8 1 12 4 c
-12 -4 m
-8 -1 -4 -1 0 -4 c
4 -7 8 -7 12 -4 c
k
r
} bd
/LoseArriveUnit {
SwitchToMapMode
s
exch 44.8 add exch 10.08 add t
.8 .8 x
0 0 LoseUnit
r
} bd
/SplitString {
7 dict begin
/nrChars xd
/indentLength xd
/objectString xd
/objectLast objectString length 1 sub def
% Short string?
objectLast nrChars lt {
false objectString
} {
% Look for a suitable place to split.
% First tracking backwards, if that doesn't work, look forward.
/splitIndex -1 def
nrChars -1 0 {
objectString 1 index get 32 eq {
/splitIndex xd exit
} if pop
} for splitIndex -1 eq {
nrChars 1 add 1 objectLast {
objectString 1 index get 32 eq {
/splitIndex xd exit
} if pop
} for
} if
splitIndex -1 eq splitIndex objectLast eq or {
false objectString
} {
% The first part.
objectString 0 splitIndex getinterval
% The second part.
objectString splitIndex 1 add objectLast splitIndex sub getinterval
% Add indentation if needed.
indentLength 0 gt {
dup length indentLength add string
0 1 indentLength 1 sub { 1 index exch 32 put } for
dup indentLength 4 3 roll putinterval
} if
% Add white space of the first part.
/nonSpaceIndex objectLast 1 add def
0 1 objectLast {
objectString 1 index get 32 ne {
/nonSpaceIndex xd exit
} if pop
} for
nonSpaceIndex 0 gt nonSpaceIndex splitIndex lt and {
dup length nonSpaceIndex add string
dup 0 objectString 0 nonSpaceIndex getinterval putinterval
dup nonSpaceIndex 4 3 roll putinterval
} if
exch true exch
} ifelse
} ifelse
end
} bd
/DrawLayoutBorders {
s
TextFixedFont 12 y z
r
} bd
/Owner <<
/Steps [
{ /Count 0 def /Y 135.36 def false true } bind
{
Count 8 ge { false true } {
63 SplitString
/Count Count 1 add def /Y Y 12 sub def
21.6 Y m h
true false
} ifelse
} bind
{
63 SplitString [ exch {
21.6 27.36 m h
} /exec load ] cvx /Finish xd
true true
} bind
{
/Count 1 def /Finish {
21.6 27.36 m (... \() h
Count dup 1 add log iceiling string cvs h
( more\)) h
} bd false true
} bind
{ /Count Count 1 add def 63 SplitString pop true false } bind
]
/Start {
TextFixedFont 12 y z
/StepIndex 0 def
/Step Steps 0 get def
/Finish { } def
} bind
/Write {
19 {
Step {
/StepIndex StepIndex 1 add def
/Step Steps StepIndex get def
} if { not { exit } if () } if
} loop
} bind
>> def
/OwnerReport {
SwitchToTextMode
Owner begin Start end
/FinishReport /FinishOwnerReport load def
} bd
/WriteOwner {
Owner begin Write end
} bd
/FinishOwnerReport {
Owner begin Finish end
} bd
/Adjustment <<
/Steps [
{ /Count 0 def /Y 123.36 def false true } bind
{
Count 7 ge { false true } {
39 SplitString
/Count Count 1 add def /Y Y 12 sub def
489.6 Y m h
true false
} ifelse
} bind
{
39 SplitString [ exch {
489.6 27.36 m h
} /exec load ] cvx /Finish xd
true true
} bind
{
/Count 1 def /Finish {
489.6 27.36 m (... \() h
Count dup 1 add log iceiling string cvs h
( more\)) h
} bd false true
} bind
{ /Count Count 1 add def 39 SplitString pop true false } bind
]
/Start {
TextHeadingFont 12 y z
489.6 123.36 moveto
(Adjustments) h
TextFixedFont 12 y z
/StepIndex 0 def
/Step Steps 0 get def
/Finish { } def
} bind
/Write {
19 {
Step {
/StepIndex StepIndex 1 add def
/Step Steps StepIndex get def
} if { not { exit } if () } if
} loop
} bind
>> def
/AdjustReport {
SwitchToTextMode
Adjustment begin Start end
/FinishReport /FinishAdjustReport load def
} bd
/WriteAdjust {
Adjustment begin Write end
} bd
/FinishAdjustReport {
Adjustment begin Finish end
} bd
/Retreat <<
/Steps [
{ /Count 0 def /Y 231.36 def false true } bind
{
Count 7 ge { false true } {
39 SplitString
/Count Count 1 add def /Y Y 12 sub def
489.6 Y m h
true false
} ifelse
} bind
{
39 SplitString [ exch {
489.6 135.36 m h
} /exec load ] cvx /Finish xd
true true
} bind
{
/Count 1 def /Finish {
489.6 135.36 m (... \() h
Count dup 1 add log iceiling string cvs h
( more\)) h
} bd false true
} bind
{ /Count Count 1 add def 39 SplitString pop true false } bind
]
/Start {
TextHeadingFont 12 y z
489.6 231.36 moveto
(Retreats) h
TextFixedFont 12 y z
/StepIndex 0 def
/Step Steps 0 get def
/Finish { } def
} bind
/Write {
17 {
Step {
/StepIndex StepIndex 1 add def
/Step Steps StepIndex get def
} if { not { exit } if () } if
} loop
} bind
>> def
/RetreatReport {
SwitchToTextMode
Retreat begin Start end
/FinishReport /FinishRetreatReport load def
} bd
/WriteRetreat {
Retreat begin Write end
} bd
/FinishRetreatReport {
Retreat begin Finish end
} bd
/Order <<
/Steps [
{ /Count 0 def /Y 519.36 def false true } bind
{
Count 22 ge { false true } {
39 SplitString
/Count Count 1 add def /Y Y 12 sub def
489.6 Y m h
true false
} ifelse
} bind
{
39 SplitString [ exch {
489.6 243.36 m h
} /exec load ] cvx /Finish xd
true true
} bind
{
/Count 1 def /Finish {
489.6 243.36 m (... \() h
Count dup 1 add log iceiling string cvs h
( more\)) h
} bd false true
} bind
{ /Count Count 1 add def 39 SplitString pop true false } bind
]
/Start {
TextFixedFont 12 y z
/StepIndex 0 def
/Step Steps 0 get def
/Finish { } def
} bind
/Write {
6 {
Step {
/StepIndex StepIndex 1 add def
/Step Steps StepIndex get def
} if { not { exit } if () } if
} loop
} bind
>> def
/OrderReport {
SwitchToTextMode
Order begin Start end
/FinishReport /FinishOrderReport load def
} bd
/WriteOrder {
Order begin Write end
} bd
/FinishOrderReport {
Order begin Finish end
} bd
/DrawTitle {
SwitchToTextMode
TextTitleFont 36 y z
(Diplomacy)
489.6 562.08 m h
TextTitleFont 24 y z
dup stringwidth pop dup 280.8 gt {
489.6 528 m
280.8 exch div dup 1 x exch
0 6.72 rmoveto h
1 exch div 1 x
} {
pop 489.6 534.72 m h
} ifelse
} bd
/SwitchToTextMode {
InTextMode {
FinishReport /FinishReport { } def
} {
r /InTextMode true def
} ifelse
} bd
/SwitchToMapMode {
InTextMode {
FinishReport /FinishReport { } def
/InTextMode false def
s
26.6 150.87 443.6 430.26 rectclip .9265 .9265 x -90.65 -11.32 t
ArrowColor
OkOrder
} if
} bd
/FrameMap {
s
2 w LandBrown
23.6 147.87 m 473.2 147.87 l 473.2 584.13 l 23.6 584.13 l
p
s 8 w Black k r
clipsave clip k cliprestore
r
} bd
/IncludeIsland {
s
/fk {
p
s LandBrown f r
k
} bd
1 w BorderBlack
OutlineChartBrown
r
} bd
/IncludeInternalBorders {
s
/fk { k } bd
1 w [ 6 2 ] 3 d BorderBlack
OutlineChartBlack
r
} bd
/VisitColors {
3 dict begin
/c xd /r xd /g xd
/BorderBlack .1 g
/MountainGrey .5 g
/IceGrey .9 g
/ArrowBlack 0 g
/ArrowWhite .9 g
/Black 0 g
/White .9 g
/LandBrown .8 .7 .4 r
/SeaBlue .1 .4 .6 r
/LandGreen 0 .4 0 r
/SeaWhite 1 1 1 r
/ArrowRed 1 0 0 r
/ArrowBlue .529 .808 .922 r
/Brown .6 .45 .2 r
/Blue 0 0 1 r
/Red 1 0 0 r
/Green 0 .7 0 r
/DarkGreen 0 .4 0 r
end
} def
/OutlineChartBrown {
445.36 307.84 m
448.72 301.2 l
453.2 298.8 l
456.8 294 l
455.6 288.32 l
460.8 277.36 l
473.6 267.6 l
476.88 265.52 l
480.8 264.32 l
482.56 261.36 l
490.8 255.12 l
510.56 246.72 l
521.28 244.8 l
540 255.12 l
543.2 259.2 l
547.36 270.96 l
544.4 274.24 l
544.96 280.56 l
549.76 283.52 l
553.12 288 l
559.68 288.96 l
561.6 292.96 l
559.2 309.12 l
545.36 335.52 l
535.76 341.52 l
520.8 349.92 l
489.6 352.32 l
461.36 334.96 l
459.2 329.12 l
454.4 325.2 l
445.2 307.92 l
445.36 307.84 l
fk
120 173.92 m
120 218.72 l
126.56 229.36 l
142.16 234.16 l
158.4 226.96 l
172.96 228 l
192 234.16 l
212.4 246.16 l
235.2 248.56 l
266.96 244.96 l
271.36 244.8 l
277.68 242.16 l
296.4 240.72 l
307.68 237.36 l
323.92 242.72 l
338.88 240 l
362.96 241.92 l
379.76 251.52 l
387.76 251.12 l
403.12 253.2 l
424.8 250.32 l
433.12 241.2 l
448.08 236.72 l
460.08 228.96 l
472.08 225.92 l
489.6 211.36 l
476.4 189.76 l
476.96 174.16 l
120 173.92 l
fk
170.4 342.72 m
175.76 338.56 l
183.52 337.2 l
193.2 332.56 l
214.16 343.92 l
224 341.12 l
234.56 342.16 l
240.56 333.12 l
246 315.12 l
252.56 312.16 l
262.72 310.8 l
271.2 314.56 l
280.16 322.96 l
284.96 333.76 l
280.96 345.04 l
279.6 354.72 l
269.36 359.52 l
261.6 364.96 l
250.96 368.16 l
244.8 372.72 l
227.6 374.72 l
217.12 372.32 l
199.76 372.16 l
187.76 370.32 l
181.76 370.96 l
172.8 363.12 l
169.76 356.56 l
170.96 342.16 l
170.4 342.72 l
fk
347.36 349.36 m
364.16 341.52 l
382.72 342 l
385.76 346.96 l
393.2 355.2 l
398.32 356.72 l
403.2 361.36 l
415.76 371.52 l
416 388.56 l
430.16 407.52 l
421.76 433.92 l
411.52 439.52 l
400.08 440.16 l
390.48 440.16 l
382.8 436.96 l
376.16 421.36 l
364.8 406.32 l
363.52 395.44 l
350.96 375.76 l
342.48 366 l
341.28 353.44 l
347.28 348.96 l
347.36 349.36 l
fk
597.2 637.12 m
120 637.52 l
119.92 432 l
178.8 433.36 l
190.4 422.16 l
197.92 420 l
202.8 421.92 l
210.48 432.96 l
216 446.56 l
217.76 449.52 l
227.36 472.96 l
234.56 483.12 l
238.8 483.12 l
241.76 492.16 l
250.8 485.52 l
256.8 486.16 l
266.4 478.32 l
278.4 477.76 l
286.8 457.36 l
298.8 442.32 l
302.96 435.76 l
310.16 408.16 l
324 409.36 l
324.56 412.96 l
337.76 414.72 l
346.16 437.52 l
351.6 444.16 l
346.16 481.92 l
366.56 510.72 l
364.16 517.92 l
371.36 528.16 l
379.76 536.56 l
391.76 540.72 l
401.36 546.72 l
404.4 546.72 l
421.2 549.12 l
425.36 547.92 l
428.96 547.92 l
444.56 540.72 l
456 531.76 l
469.2 507.12 l
464.96 486.16 l
464.96 453.12 l
476.4 424.32 l
483.6 420.72 l
492 397.36 l
492.56 393.12 l
496.16 393.12 l
499.76 388.96 l
511.76 391.36 l
525.6 402.72 l
535.76 415.92 l
543.6 426.16 l
559.2 429.76 l
567.6 429.76 l
572.96 426.16 l
582 425.52 l
597.6 418.32 l
597.2 637.12 l
fk
} bd
/OutlineChartBlack {
145.76 232.32 m
146.4 219.12 l
144.56 212.56 l
144 207.76 l
146.96 203.52 l
149.36 199.92 l
171.6 196.96 l
178.8 197.52 l
193.2 201.12 l
200.4 210.72 l
196.8 216.72 l
194.4 235.36 l
fk
192 201.76 m
194.96 196.96 l
202.8 196.96 l
212.96 196.32 l
216.56 199.36 l
230.96 198.16 l
237.6 202.32 l
240 206.56 l
250.8 208.96 l
244.8 221.52 l
242.4 225.76 l
244.16 234.72 l
243.76 247.2 l
fk
198 174.72 m
202.8 182.56 l
209.92 190.24 l
214.8 198.16 l
fk
251.36 208.96 m
255.6 205.36 l
265.2 199.92 l
270 199.36 l
274.16 194.56 l
283.12 190.8 l
286.16 184.96 l
291.6 183.12 l
296.4 174.72 l
fk
270.48 199.2 m
277.2 200.56 l
282 201.76 l
286.8 201.76 l
294.56 199.36 l
301.76 199.92 l
291.6 210.72 l
290.4 214.96 l
290.4 228.72 l
297.2 240.96 l
fk
301.68 199.52 m
306 199.36 l
324 199.92 l
328.16 196.96 l
345.6 196.96 l
351.6 186.16 l
349.2 174.72 l
fk
338.88 239.76 m
337.76 232.32 l
340.8 218.56 l
340.8 213.76 l
344.96 205.92 l
344.96 197.52 l
fk
350.96 187.36 m
356.96 190.96 l
360.56 199.92 l
370.16 204.16 l
377.36 211.36 l
380.4 220.96 l
386.96 236.56 l
385.2 243.12 l
387.76 251.12 l
fk
378.56 213.76 m
383.36 208.96 l
388.16 207.76 l
391.2 202.96 l
403.36 195.92 l
397.76 187.92 l
398.4 183.12 l
400.8 181.36 l
395.2 174.32 l
fk
403.12 196.24 m
412.16 201.12 l
417.52 207.04 l
424.16 210.16 l
434.96 213.76 l
437.36 219.76 l
451.2 234.72 l
fk
417.52 207.36 m
454.16 192.72 l
459.6 193.36 l
477.6 189.76 l
fk
492 351.76 m
498 333.76 l
503.36 325.92 l
fk
503.36 325.92 m
503.36 321.76 l
487.76 312.16 l
484.16 306.72 l
466.8 291.76 l
456.8 286.24 l
fk
482.96 305.52 m
490.8 299.52 l
490.8 294.72 l
500.96 287.52 l
502.16 283.92 l
497.36 271.92 l
491.36 262.96 l
484.8 259.36 l
fk
501.2 286.8 m
508.8 283.36 l
516.56 282.16 l
527.36 283.92 l
531.6 292.96 l
537.6 301.36 l
546 306.72 l
559.2 307.92 l
fk
502.8 325.36 m
506.4 325.36 l
511.2 320.56 l
518.4 321.12 l
524.4 321.12 l
529.76 319.36 l
536.4 316.96 l
545.36 310.32 l
546 306.72 l
fk
350.56 375.36 m
371.36 370.96 l
393.6 373.36 l
413.36 370.32 l
413.36 370.96 l
fk
364.16 404.56 m
372.56 408.16 l
382.8 404.56 l
394.16 403.36 l
399.6 405.76 l
407.36 403.36 l
418.8 400.96 l
422.4 402.16 l
425.92 402 l
fk
213.2 372 m
205.76 339.76 l
fk
241.2 330.16 m
242.4 335.52 l
246.56 339.12 l
248.4 345.76 l
252 352.32 l
256.8 358.32 l
266.4 361.36 l
fk
464.96 463.92 m
491.36 462.16 l
499.76 460.32 l
507.6 460.32 l
518.4 454.32 l
522 442.32 l
522.56 438.72 l
526.8 437.52 l
530.4 432.16 l
533.36 432.16 l
542.32 423.36 l
fk
570.48 427.52 m
571.2 433.92 l
566.4 445.36 l
570.56 452.56 l
578.4 459.12 l
582.56 468.72 l
577.76 478.96 l
559.76 478.96 l
546 468.16 l
538.16 469.92 l
531.6 477.12 l
522 477.12 l
517.76 472.96 l
514.16 468.72 l
518.4 454.32 l
fk
169.76 493.36 m
192 490.96 l
195.6 482.56 l
205.2 476.56 l
208.8 466.32 l
222 459.12 l
fk
241.68 491.76 m
241.76 495.12 l
232.16 510.16 l
225.6 531.12 l
219.6 543.76 l
181.2 543.12 l
fk
223.2 638.56 m
222.56 622.32 l
235.76 601.36 l
230.4 591.12 l
225.6 579.76 l
222 567.76 l
220.8 560.56 l
220.16 541.92 l
fk
346.16 481.92 m
337.2 475.36 l
332.4 468.72 l
318 462.72 l
305.36 454.96 l
297.76 443.44 l
fk
277.2 477.12 m
282 496.32 l
288.56 514.32 l
301.2 526.32 l
312.56 525.12 l
315.6 515.52 l
316.16 503.52 l
319.2 491.52 l
325.76 485.52 l
337.76 476.56 l
fk
293.36 639.12 m
290.96 626.56 l
288.56 604.96 l
276 589.92 l
257.36 584.56 l
254.4 590.56 l
248.4 591.12 l
232.16 594.72 l
fk
391.2 639.12 m
388.8 631.92 l
388.8 624.72 l
393.6 613.36 l
395.28 600.96 l
388.8 599.52 l
382.8 595.36 l
373.76 590.56 l
358.8 586.96 l
342 586.32 l
325.76 586.32 l
314.96 589.36 l
309.6 591.12 l
288.56 604.96 l
fk
348.16 586.8 m
343.76 570.16 l
342.56 561.12 l
343.2 550.32 l
344.96 546.72 l
349.76 545.52 l
355.76 544.96 l
358.16 539.52 l
370.16 525.76 l
fk
312.16 525.36 m
317.36 535.36 l
326.96 535.36 l
332.96 535.36 l
345.6 546.72 l
fk
272.88 589.2 m
271.2 564.72 l
277.76 549.76 l
283.76 540.16 l
301.76 526.32 l
fk
394.8 601.36 m
409.2 594.16 l
415.2 589.92 l
439.2 589.92 l
442.8 593.52 l
458.96 598.32 l
468.56 597.12 l
481.2 592.32 l
485.92 591.36 l
491.36 598.96 l
491.36 605.52 l
483.6 618.16 l
484.16 622.96 l
492 639.12 l
fk
418.72 589.84 m
421.76 557.52 l
421.76 549.12 l
fk
454.8 532.96 m
462.56 545.52 l
468.56 555.12 l
476.96 559.36 l
483.6 564.72 l
493.2 565.92 l
498 568.96 l
515.36 570.16 l
516 573.76 l
fk
531.6 476.56 m
540.56 481.92 l
542.96 487.36 l
541.2 497.52 l
539.36 501.76 l
532.8 503.52 l
524.96 505.92 l
506.4 504.16 l
493.76 506.56 l
468.56 507.76 l
fk
518.4 505.92 m
514.8 513.12 l
516 520.32 l
519.6 526.32 l
523.2 528.16 l
536.96 525.76 l
546.56 524.56 l
553.2 527.52 l
559.76 547.92 l
fk
118.8 298.32 m
128.4 289.92 l
135.6 289.92 l
146.4 291.76 l
152.4 292.32 l
163.2 296.56 l
172.8 295.36 l
212.4 246.16 l
fk
192 332.56 m
192 324.72 l
190.8 320.56 l
188.96 317.52 l
182.4 310.96 l
170.96 294.72 l
fk
118.8 368.32 m
127.76 362.56 l
139.2 362.56 l
144 364.32 l
153.6 359.52 l
170.4 355.92 l
fk
175.2 433.36 m
175.2 421.92 l
174 415.36 l
181.2 402.16 l
182.96 397.92 l
192 388.96 l
194.96 387.76 l
196.16 371.52 l
fk
184.72 395.44 m
194.96 396.16 l
203.36 392.56 l
210 392.56 l
230.4 396.72 l
244.8 402.16 l
265.2 415.92 l
266.96 423.12 l
260.96 432.16 l
252 438.72 l
246.56 448.96 l
227.36 471.76 l
fk
266.88 423.04 m
282.56 417.76 l
290.4 416.56 l
307.2 420.72 l
fk
284.88 334.24 m
293.36 334.96 l
312 341.52 l
317.36 340.32 l
334.16 343.36 l
347.28 348.96 l
fk
343.36 429.92 m
356.4 430.32 l
360.56 432.16 l
366.56 430.96 l
376.08 421.84 l
fk
349.12 458.4 m
360 469.36 l
366 477.12 l
379.76 481.36 l
397.2 480.16 l
409.2 483.12 l
412.8 487.36 l
413.36 496.32 l
415.76 508.96 l
415.2 517.92 l
410.96 533.52 l
408 547.92 l
fk
413.36 489.76 m
420.56 486.16 l
427.2 486.16 l
443.36 484.32 l
444.56 481.36 l
454.16 484.96 l
464.56 484.8 l
fk
426.56 420.72 m
430.16 424.32 l
438.56 424.96 l
452.4 425.52 l
457.2 425.52 l
470.4 420.72 l
484.8 418.96 l
fk
519.52 397.84 m
523.2 381.76 l
529.76 370.32 l
534.56 359.52 l
536.96 346.96 l
536.96 340.32 l
fk
401.92 359.76 m
417.6 352.32 l
426 351.76 l
451.76 347.52 l
457.76 347.52 l
475.36 343.84 l
fk
489.52 210.96 m
510.56 215.52 l
542.96 222.72 l
565.2 229.36 l
598.16 234.16 l
fk
540.56 255.76 m
544.16 247.36 l
552.56 237.12 l
559.2 238.32 l
566.4 229.36 l
fk
424.8 250.96 m
436.16 250.32 l
446.96 252.16 l
470.88 269.44 l
fk
357.76 241.2 m
363.6 267.76 l
364.16 280.96 l
371.36 291.12 l
380.4 294.16 l
399.6 298.96 l
425.36 300.16 l
446.88 304.56 l
fk
270.56 315.12 m
279.6 299.52 l
277.2 286.32 l
277.76 273.76 l
269.36 258.16 l
267.6 245.52 l
fk
278.4 289.36 m
297.6 294.72 l
312 298.32 l
322.16 294.72 l
332.4 293.52 l
342.56 291.76 l
344.4 289.92 l
371.36 291.12 l
fk
120 559.92 m
128.4 547.92 l
143.36 543.12 l
157.2 546.16 l
177.6 547.36 l
182.4 541.92 l
181.76 537.76 l
184.8 528.72 l
181.2 520.96 l
181.2 513.12 l
172.16 493.36 l
168 493.36 l
159.6 478.96 l
160.8 469.92 l
160.8 462.72 l
154.16 454.32 l
151.2 450.72 l
155.92 432.64 l
fk
485.36 591.76 m
498 589.36 l
502.16 585.12 l
506.96 580.32 l
514.8 576.16 l
518.4 568.96 l
527.36 558.72 l
530.96 553.92 l
547.76 553.92 l
555.6 549.76 l
562.8 545.52 l
566.96 559.92 l
571.2 568.96 l
579.6 571.36 l
584.4 570.72 l
597.6 564.16 l
fk
} bd
{
currentdict end 3 1 roll [ exch /setgray load ] cvx def begin
}{
currentdict end 5 1 roll [ 4 1 roll /setrgbcolor load ] cvx def begin
}{
currentdict end 6 1 roll [ 5 1 roll /setcmykcolor load ] cvx def begin
} bind VisitColors
/ChangeController false def
s
MapUnitLetterFont z
{
exch load exch load
2 index [ exch n 0 0 m true charpath pathbbox 3 2 roll add -2 div 3 1 roll add -2 div exch ] 3 1 roll
4 dict begin /Contrast xd /Paint xd /Offset xd /Letter xd currentdict end
currentdict end 3 1 roll
Powers 2 index 3 2 roll put
[ /Power 2 index { ChangeController { Power GetControlledPower /ChangeController false def } if } bind /exec load /def load ] cvx def
begin
} VisitPowers
r
/FleetTroops FleetTroopBBox /PaintFleet load CreateTroops def
/ArmyTroops ArmyTroopBBox /PaintArmy load CreateTroops def
/SupplyCenters SupplyCenterBBox /PaintSupply load CreateTroops def
{ currentdict end 4 1 roll [ SupplyCenters 4 2 roll 4 index ] cvx def begin } bind
VisitSupplies
/UNOWNEDCENTER /UNOWNED ld
/EASTCENTER /EAST ld
/NORTHCENTER /NORTH ld
/SOUTHCENTER /SOUTH ld
/WESTCENTER /WEST ld
/Centers <<
{ pop pop true } bind
VisitSupplies
>> def
%%EndSetup
|