1
; add model procedures here
5
Algeria Tunisia Morocco
11
water-coef air-coef security-coef
12
air-pol-threshold water-pol-threshold attraction-threshold
20
;timer-set? in interface
31
patches-own [water-quality air-quality initial-colour]
33
tourists-own [ cash comfort ]
34
hotels-own [ rentability rooms customers price proprio income]
35
airports-own [ activity pollution income capacity ]
36
industries-own [ activity pollution income rentability proprio]
37
crops-own [ activity pollution income ]
38
fun-own [ activity price income ]
39
players-own [ name country tourists-welcomed cash ]
42
;; (for this model to work with NetLogo's new plotting features,
43
;; __clear-all-and-reset-ticks should be replaced with clear-all at
44
;; the beginning of your setup procedure and reset-ticks at the end
47
import-world "LeJeu.csv"
50
set list-of-coefs ( sentence water-coef air-coef )
51
set water-pol-threshold 5
52
set air-pol-threshold 5
53
set attraction-threshold 5
57
set list-of-countries ( sentence black green red turquoise )
58
set hotels-price 1000 ; in millions of $
59
set airports-price 1000 ;
61
set industries-price 200 ;
62
set tourists-expenditures (400 + random 100) ; 1 tourist agent expend 100 M$ to 500 M$ a year
63
set starting-wealth 500
71
set initial-colour pcolor
76
to set-industry-rentability [_player _colour]
79
ifelse ([pcolor] of patch-here = [country] of _player)
81
[ ; build outside country
82
ifelse (num-of-players = 1)
84
[; ask partner to accept
85
ifelse (not (any? players with [_colour = country]))
86
[ set rentability 40 ]
87
[ ;_partner is a player
88
set _partner [name] of one-of players with [_colour = country]
89
ifelse (user-yes-or-no? (word _partner " ,Do you accept that player " [name] of _player " builds an industry in your country ?"))
90
[ set rentability read-from-string user-input "Negociate with your partner the percentage of money YOU make on the industry you are constructing (in percent) : \n ===> "]
93
ask _player [set cash (cash + industries-price)]
101
to init-industry [_player _colour]
102
set shape "industries"
106
set activity read-from-string user-input "Please define initial activity of this industry (from 1 to 10):"
107
set activity set-activity(activity)
108
set income industries-price / 20
109
set proprio [name] of _player
110
set-industry-rentability _player _colour
120
set _player turtle player
121
ifelse [cash] of _player < industries-price
123
user-message (word "You have not enough cash ( " [cash] of _player " ) to construct industries (" industries-price " ).")
126
if (mouse-down? and not any? turtles-at mouse-xcor mouse-ycor and not ([pcolor] of patch-at mouse-xcor mouse-ycor = black))
128
set _colour [pcolor] of patch mouse-xcor mouse-ycor
129
create-industries 1 [
130
init-industry _player _colour
132
ask _player [set cash (cash - industries-price)]
133
compute-industries-income
140
let _player turtle player
142
ifelse [cash] of _player < airports-price
143
[user-message (word "You have not enough cash ( " [cash] of _player " ) to construct airports (" airports-price " ).")]
145
if (mouse-down? and not any? turtles-at mouse-xcor mouse-ycor)
147
ifelse (not ([pcolor] of patch-at mouse-xcor mouse-ycor = [country] of _player))
148
[user-message "You cannote build airports outside your country,even if you are very generous..."]
150
ask _player [set cash (cash + industries-price)]
157
set activity random 10
158
;set activity read-from-string user-input "Please define initial activity of this airport (from 1 to 10):"
159
;set activity set-activity(activity)
163
set cash tourists-expenditures
174
let _player turtle player
175
ifelse [cash] of _player < crops-price
176
[user-message (word "You have not enough cash ( " [cash] of _player " ) to construct crops (" crops-price " ).") ]
178
if (mouse-down? and not any? turtles-at mouse-xcor mouse-ycor)
180
ifelse (not ([pcolor] of patch-at mouse-xcor mouse-ycor = [country] of _player))
181
[user-message "You cannote build crops outside your country,even if you are very generous..."]
183
ask _player [set cash (cash - crops-price)]
190
set activity random 10
191
;set activity read-from-string user-input "Please define initial activity of this crop (from 1 to 10):"
192
;set activity set-activity(activity)
199
to build-infrastructures
200
run (word "build-" infrastructure)
204
let _player turtle player
208
ifelse [cash] of _player < hotels-price
209
[user-message (word "You have not enough cash ( " [cash] of _player " ) to construct a hotel (" hotels-price " ).")]
211
if (mouse-down? and not any? turtles-at mouse-xcor mouse-ycor)
213
ifelse (not ([pcolor] of patch-at mouse-xcor mouse-ycor = [country] of _player))
214
[user-message "You cannote build hotels outside your country,even if you are very generous..."]
216
ask _player [set cash (cash - hotels-price)]
219
set proprio [name] of _player
220
set rooms (1 + random 5 )
224
set price (50 + random 50)
231
if (mouse-down? and not any? turtles-at mouse-xcor mouse-ycor )
239
set cash (100 + random 100)
243
to-report compute-attraction
244
report ( ((water-quality * water-coef) + (air-quality * air-coef)) / sum list-of-coefs)
251
[ask patches in-radius 2 [ set water-quality set-quality (water-quality - (a - water-pol-threshold))]]
252
if (breed = airports)
253
[ask patches in-radius 2 [ set air-quality set-quality (air-quality - (a - air-pol-threshold))]]
254
if (breed = industries)
256
ask patches in-radius 2
258
set water-quality set-quality (water-quality - ( a - water-pol-threshold) )
259
set air-quality set-quality (air-quality - ( a - air-pol-threshold) )
264
to-report set-quality [value]
265
if value > 10 [report 10]
266
if value < 0 [report 0]
286
set neighbs patches in-radius 2 with [pcolor = my-colour]
288
set AQ [air-quality] of patch-here
289
set WQ [water-quality] of patch-here
291
set APC (AQ - air-pol-threshold)
292
set WPC (WQ - water-pol-threshold)
294
set average (0.5 * (AQ + WQ))
299
[ set pcolor scale-color initial-colour average 0 10 ]
300
[ set pcolor initial-colour ]
303
if (breed = airports)
304
[ set activity (set-activity (activity + APC)) ]
306
[ set activity (set-activity (activity + WPC)) ]
307
if (breed = industries)
308
[ set activity (set-activity (int (activity + (0.5 * (APC + WPC))))) ] ;
312
to-report set-activity [value]
313
if value > 10 [ report 10 ]
314
if value < 0 [ report 0 ]
319
while [count tourists-here > rooms][ask one-of tourists [leave-hotel] ]
320
ask tourists-here [stay-in-hotel]
321
set customers count tourists-here
325
if not (any? hotels-here)
330
let P [price] of one-of hotels-here
331
set comfort compute-attraction
332
if comfort < attraction-threshold
334
show (word "this place stinks !(comfort " comfort " )")
339
show (word "this place is nice ! (comfort " comfort " )")
343
show "no more cash to pay my bill.."
349
set heading random 180 jump random 10
350
if cash < min [price] of hotels
352
show "i have no more cash to stay here....Returning home !"
353
hatch 1 [ set cash tourists-expenditures go-to-airport ]
360
let _airport one-of airports in-radius 100 with [pcolor = [country] of turtle player]
361
setxy [xcor] of _airport [ycor] of _airport
362
; set heading towards _airport
363
; jump distance _airport
369
;distance and neighbors are netlogo primitives.
372
ifelse any? hotels-here
374
[if (any? hotels in-radius dist)
376
set target one-of hotels in-radius dist
377
setxy [xcor] of target [ycor] of target
378
; set heading towards target
379
; jump distance target
386
let H one-of hotels-here
388
let C [customers] of H
391
ifelse not (any? crops in-radius 5)
392
[show "damn i'm starving here ! leaving..." leave-hotel ]
397
[show "i found a hotel"]
398
[leave-hotel look-for-hotel]
400
[show "no more rooms here,leaving" leave-hotel]
407
; Crops Industries Airports
408
let CIA turtles with [breed = airports or breed = industries or breed = crops]
409
ask CIA [launch-activity adjust-activity]
413
let _sources turtles with [breed = industries or breed = hotels]
414
let _player turtle player
415
ask _player [set cash (cash + sum ([income] of _sources with [proprio = name]))]
418
to compute-industries-income
419
set income (income * rentability) / 10
422
to compute-hotels-income
423
set income (price * customers)
427
; Crops Industries Airports
428
;let CIA turtles with [breed = airports or breed = industries or breed = crops]
429
;ask CIA [launch-activity adjust-activity]
431
ask tourists [go-tourists]
432
ask hotels [manage-hotel compute-hotels-income]
445
set num-of-players read-from-string user-input "Nouvelle partie.Combien de joueurs ?"
446
set list-of-players-names []
447
repeat num-of-players
449
set _name user-input (word "Joueur " (i + 1) " , veuillez entrez votre nom")
450
set list-of-players-names lput _name list-of-players-names
451
set _country user-input (word _name " veuillez choisir votre pays (entrez un chiffre)... : \n[1] Algerie \n[2] Tunisie \n[3] Maroc ")
455
set country (item read-from-string _country list-of-countries )
457
setxy max-pxcor max-pycor
458
set cash starting-wealth
463
user-message "Que la fête commence !"
464
; set timer-set? true
469
set player (player + 1) mod num-of-players
472
;to-report time-remaining
473
; ifelse (timer-set? = true and timer < time-of-turn)
474
; [ report time-of-turn - timer ]
476
; if (timer-set? = true and timer > time-of-turn)
478
; user-message "Time Up !"
479
; set player ((player + 1) mod num-of-players)
480
; user-message "Your turn" + (value-from turtle player [name] )
519
[int activity] of airports
530
[floor activity] of crops
541
[floor activity] of industries
569
[cash] of one-of tourists
580
values-from patches-from turtles [patch-here][air-quality]
591
values-from patches-from turtles [patch-here][water-quality]
601
build-infrastructures
602
build-infrastructures
620
"airports" "industries" "crops"
674
[(water-quality + air-quality) / 2] of turtles
685
[cash] of turtle player + \" Millions $\"
695
industries rentability
696
[rentability] of industries with [proprio = [name] of turtle player]
707
[name] of turtle player
715
Ceci est une simulation sous forme de jeu, dont le but est de gagner de l'argent, le plus possible. Elle a été écrite autour d'un thème, le tourisme autour de la méditéranée et le respect de l'environnement. Il y a eu des efforts considérables quant à l'approche économique de cette simulation, en essayant de se rapprocher le mieux que possible des valeurs réelles et des prix réels des éléments du jeu.
719
Le but du jeu est de faire venir le plus de tourists dans votre pays. Pour cela vous devez leur offrire tout le confort nécéssaire :
720
1)Il doit y avoir au moins un aéroport pour qu'ils puissent venir dans votre pays.
721
2)Il doit y avoir assez d'hôtels avec assez de chambres pour tous.
722
3)Il faut ils doivent être bien nourris, pour cela vous devez construir des EXPLOITATIONS AGRICOLES, et ajuster au mieux leur ACTIVITE, afin qu'elles produisent assez, sans trop polluer.
723
4)Il ne doit pas y avoir trop de pollution devant les hôtels, car cela les fait fuir.
725
Pour construir toutes ces infrastructures, vous allez avoir besoin d'argent. L'argent peut être gagné de différentes manières :
727
1) En ramenant des touristes : un touriste dépense toujours de l'argent.
728
2) En construisant des industries : les industries vous font gagner beacoup d'argent, mais polluent d'avantage que les aéorport ou les exploitations agricoles.
732
Appuyez sur New Game pour commencer une nouvelle partie.
733
Une fois la configuration du jeu términée, vous disposez d'un tableau de bord.
734
Vous devez en premier lieu construir des hôtels et des aéroports qui acceuilleront vos touristes. Ensuite, vous devez trouvez le meilleur moyen de faire venir le plus de touristes. A vous de jouer !
738
Les calculs ont été fait selon les données suivantes :
740
1)Il y a en moyenne 4 millions de tourists dans un pays du maghreb.
741
2)Un hôtel comprends en moyenne 300 chambres, il faut donc environs 10 000 hotels pour
742
acceuillir 3 millions de tourists.
744
3) On peut utiliser sous netlogo un peu moins de 1000 agents
745
4) Un aéorport coute environs 500 millions US $.
746
(source http://www.lesoleil.sn/discus/messages/2/2.html)
747
5) Une approximation du coût de construction d'une industrie a été fixée à 200M US $
748
(source http://www.bouygues.fr/fr/actualites/autres_com_groupe.asp?id=4
749
http://www.bouygues.fr/fr/groupe/europ_centrale.asp)
750
6)Une approximation du coût de construction d'une exploitation agricole a été fixée à 1OM US $.
751
7)Une approximation du cout de construction d'un hôtel a été fixée à 40M US $ et sa durée d'amorcement a été fixée à 15 ans.
752
(source http://www.twnside.org.sg/title/nf65.htm)
753
8)Une approximation de la production d'une exploitation agricole de blé a été fixée à 2 tonnes / hectars.
754
(source : http://www.cimmyt.org/Research/wheat/map/developing_world/wheat_developing_world.htm
756
9)Un touriste dépense entre 100 $(Algerie) et 500$ (Maroc) par an.
757
(source : http://www.animaweb.org/opportunites_tourisme.htm )
759
En prenant en compte ces points, il a été décidé que :
761
1)Un agent de type TOURISTE représente en réalité 100.000 touristes. Ce qui reviens à représenter les 3 millions de tourists réels par 30 agents tourists.
763
2)Un agent de type HOTEL représente en réalité 1.000 hotels, son coût s'élève donc à 1000 * 10M = 1B$. On peut représenter les 10.000 hôtels par 10 agents hôtels.
765
3)Un agent de type AEROPORT peut ammener en un an (un tour de cycle) 10 agents TOURISTS,ce qui corresponderait à 1 millions de tourists réels. Il faudrait donc 4 agents aéroport pour acceuillir 4 millions de touristes.
767
4)Une estimation de la production agricole est de 2 tonnes de blé / hectars, ainsi, il faut environs 200 hectars pour nourir 100.000 touristes, soit un agent TOURISTE.
768
Pour nourrir 4 millions de tourists, il faudrait donc 8000 hectars de champs de blés, soit 10 fois 800 hectars. On fixe la production d'un agent de type EXPLOITATION AGRICOLE à 1600 tonnes produits sur 800 hectars. Une exploitation agricole fait environs 10 hectars dans la vie réelle, on supposera qu'un agent EXPLOITATION AGRICOLE représente donc 80 exploitations agricoles, sont coût s'élève donc à 80 * 10M$ = 800 M$. Ainsi, 10 agents EXPLOITATION AGRICOLES nourriraient 4 millions de touristes.
770
5) Une chambre d'hôtel représente en réalité 60 chambres.
771
(un agent de type HOTEL ayant 5 chambres simule 300 chambres réellles).
773
6) Un touriste rapporte 250 $ de bénéfices. Ainsi, un agent TOURISTE (100.000 tourists) rapporte 25M$.
775
7) Il a été fixé que la somme d'argent disponible au début du jeu est celle nécéssaire à l'acceuil de 1 millions de tourists, soit 10 agents TOURISTS, au joueur de faire de son mieux pour améliorer son score. Cette somme s'élève à 17B$ et s'est calculée de la sorte :
777
Pour 1 millions de touristes il faut :
779
1) 1 aéroport ==> 500 M $
780
2) 0.5 Million de chambres d'hotels, soit un peu plus de 1500 hotels representés par 2 agent HOTELS ==> 10M * 1500 = 60.000 M$ ==> 15 B$
781
3) 2 000 Tonnes de nourritures, produites par 160 exploitations agricoles, soit 2 agents EXPLOITATION AGRICOLE ==> 160 * 10M = 1.6 B.
783
on a donc 0.5 B$ + 15 B + 1.6 B + = 17 B$ arrondis.
785
On vois tout de suite que ce qui coûte le plus cher est l'investissment hôtelier.
789
Essayez de voir ce que ça donne dans les cas suivants :
790
Investire massivement dans l'industrie, à l'interieur et à l'exterieur du pays (essayez chaque cas séparément)
791
Investire massivement dans les hôtels.
792
Investire massivement dans les aérports.
793
Mépriser l'investissement dans les exploitations agricoles.
795
Essayez de voir ce que ça donne si vous faites trop d'attentas sur les pays voisins.
798
## EXTENDING THE MODEL
800
Le model est ouvert à de nombreuses améliorations. Il est en effet possible d'ajouter beaucoup de foncionnalités qui apporteront plus du charme à ce petit jeu, comme :
802
1)Introduire les banques, les impôts, la population locale, les catastrophe naturelles, le commerce internationale etc...
803
1bis)Introduire la gestion de l'énérgie, des centres de traitements de l'eau, les campagnes publicitaires pour réduire les émissions de gaz toxiques...
804
2)Construire l'interface réseau en utilisant le module HUBNET, afin que les joueurs du monde entier puissent s'affronter sur le net !
805
3)Introduire l'intelligence artificielle évoluée.
810
La puissance de Netlogo réside dans sa programmation par agent, qui, selon mon opinion, adhère parfaitement à cette simulation axée sur l'interaction entre touristes, infrastructures, et environnement.
814
La colonie de termites a été la première simulation qui m'a introduit à StarLogo, petit frère de NetLogo. Elle m'a beaucoup aidé à comprendre la programmation par agent. Les intéréssés pourront s'y référrer.
816
## CREDITS AND REFERENCES
818
Yacine Ahmed Chaouche - Université Paris 8 - Juin 2004
819
Droits Libre sous consentement écrit de l'auteur.
821
yacinechaouche@yahoo.com
826
Polygon -7500403 true true 150 5 40 250 150 205 260 250
831
Rectangle -1184463 true false 85 119 217 168
832
Circle -1184463 true false 55 116 57
833
Polygon -1184463 true false 100 117 151 43 151 120
834
Polygon -1184463 true false 151 120 149 242 101 165
839
Polygon -7500403 true true 136 61 129 46 144 30 119 45 124 60 114 82 97 37 132 10 93 36 111 84 127 105 172 105 189 84 208 35 171 11 202 35 204 37 186 82 177 60 180 44 159 32 170 44 165 60
840
Polygon -7500403 true true 150 95 135 103 139 117 125 149 137 180 135 196 150 204 166 195 161 180 174 150 158 116 164 102
841
Polygon -7500403 true true 149 186 128 197 114 232 134 270 149 282 166 270 185 232 171 195 149 186
842
Polygon -7500403 true true 225 66 230 107 159 122 161 127 234 111 236 106
843
Polygon -7500403 true true 78 58 99 116 139 123 137 128 95 119
844
Polygon -7500403 true true 48 103 90 147 129 147 130 151 86 151
845
Polygon -7500403 true true 65 224 92 171 134 160 135 164 95 175
846
Polygon -7500403 true true 235 222 210 170 163 162 161 166 208 174
847
Polygon -7500403 true true 249 107 211 147 168 147 168 150 213 150
852
Polygon -7500403 true true 150 0 0 150 105 150 105 293 195 293 195 150 300 150
857
Polygon -1184463 true false 152 149 77 163 67 195 67 211 74 234 85 252 100 264 116 276 134 286 151 300 167 285 182 278 206 260 220 242 226 218 226 195 222 166
858
Polygon -16777216 true false 150 149 128 151 114 151 98 145 80 122 80 103 81 83 95 67 117 58 141 54 151 53 177 55 195 66 207 82 211 94 211 116 204 139 189 149 171 152
859
Polygon -7500403 true true 151 54 119 59 96 60 81 50 78 39 87 25 103 18 115 23 121 13 150 1 180 14 189 23 197 17 210 19 222 30 222 44 212 57 192 58
860
Polygon -16777216 true false 70 185 74 171 223 172 224 186
861
Polygon -16777216 true false 67 211 71 226 224 226 225 211 67 211
862
Polygon -16777216 true false 91 257 106 269 195 269 211 255
863
Line -1 false 144 100 70 87
864
Line -1 false 70 87 45 87
865
Line -1 false 45 86 26 97
866
Line -1 false 26 96 22 115
867
Line -1 false 22 115 25 130
868
Line -1 false 26 131 37 141
869
Line -1 false 37 141 55 144
870
Line -1 false 55 143 143 101
871
Line -1 false 141 100 227 138
872
Line -1 false 227 138 241 137
873
Line -1 false 241 137 249 129
874
Line -1 false 249 129 254 110
875
Line -1 false 253 108 248 97
876
Line -1 false 249 95 235 82
877
Line -1 false 235 82 144 100
882
Polygon -7500403 true true 2 6 2 39 270 298 297 298 299 271 187 160 279 75 276 22 100 67 31 0
887
Polygon -7500403 true true 2 4 33 4 298 270 298 298 272 298 155 184 117 289 61 295 61 105 0 43
892
Polygon -1 true false 63 162 90 207 223 207 290 162
893
Rectangle -6459832 true false 150 32 157 162
894
Polygon -13345367 true false 150 34 131 49 145 47 147 48 149 49
895
Polygon -7500403 true true 158 33 230 157 182 150 169 151 157 156
896
Polygon -7500403 true true 149 55 88 143 103 139 111 136 117 139 126 145 130 147 139 147 146 146 149 55
901
Polygon -1 true false 63 162 90 207 223 207 290 162
902
Rectangle -6459832 true false 150 32 157 162
903
Polygon -13345367 true false 150 34 131 49 145 47 147 48 149 49
904
Polygon -7500403 true true 157 54 175 79 174 96 185 102 178 112 194 124 196 131 190 139 192 146 211 151 216 154 157 154
905
Polygon -7500403 true true 150 74 146 91 139 99 143 114 141 123 137 126 131 129 132 139 142 136 126 142 119 147 148 147
910
Polygon -1 true false 63 162 90 207 223 207 290 162
911
Rectangle -6459832 true false 150 32 157 162
912
Polygon -13345367 true false 150 34 131 49 145 47 147 48 149 49
913
Polygon -7500403 true true 158 37 172 45 188 59 202 79 217 109 220 130 218 147 204 156 158 156 161 142 170 123 170 102 169 88 165 62
914
Polygon -7500403 true true 149 66 142 78 139 96 141 111 146 139 148 147 110 147 113 131 118 106 126 71
919
Polygon -7500403 true true 45 255 255 255 255 45 45 45
924
Polygon -16777216 true false 151 76 138 91 138 284 150 296 162 286 162 91
925
Polygon -7500403 true true 164 106 184 79 205 61 236 48 259 53 279 86 287 119 289 158 278 177 256 182 164 181
926
Polygon -7500403 true true 136 110 119 82 110 71 85 61 59 48 36 56 17 88 6 115 2 147 15 178 134 178
927
Polygon -7500403 true true 46 181 28 227 50 255 77 273 112 283 135 274 135 180
928
Polygon -7500403 true true 165 185 254 184 272 224 255 251 236 267 191 283 164 276
929
Line -7500403 true 167 47 159 82
930
Line -7500403 true 136 47 145 81
931
Circle -7500403 true true 165 45 8
932
Circle -7500403 true true 134 45 6
933
Circle -7500403 true true 133 44 7
934
Circle -7500403 true true 133 43 8
939
Circle -7500403 true true 35 35 230
944
Rectangle -13840069 true false 129 103 174 242
945
Polygon -13840069 true false 126 174 52 174 130 142
946
Polygon -13840069 true false 130 142 46 140 133 114
947
Polygon -13840069 true false 128 113 45 113 146 9 268 104 166 109
948
Polygon -13840069 true false 170 109 256 114 169 139
949
Polygon -13840069 true false 169 139 265 166 167 169
954
Polygon -8630108 true false 74 12 18 12 19 290 63 293 64 165 170 160 174 285 245 287 232 7 163 8 162 129 75 129
959
Rectangle -13345367 true false 46 95 221 214
960
Rectangle -13345367 true false 58 22 78 90
961
Polygon -13345367 true false 78 84 149 6 153 106
962
Polygon -13345367 true false 160 89 196 11 198 98
967
Rectangle -1 true true 90 75 270 225
968
Circle -1 true true 15 75 150
969
Rectangle -16777216 true false 81 225 134 286
970
Rectangle -16777216 true false 180 225 238 285
971
Circle -16777216 true false 1 88 92
976
Polygon -7500403 true true 150 0 180 135 255 255 225 240 150 180 75 240 45 255 120 135
981
Polygon -7500403 true true 150 0 0 150 120 150 120 293 180 293 180 150 300 150
986
Circle -1184463 true false 96 36 113
987
Rectangle -1184463 true false 135 148 164 294
988
Polygon -1184463 true false 130 146 40 199 56 218 135 167
989
Polygon -1184463 true false 156 142 247 199 227 222 141 163
994
Polygon -7500403 true true 225 30 225 270 120 270 105 210 60 180 45 30 105 60 105 30
995
Polygon -8630108 true false 195 75 195 120 240 120 240 75
996
Polygon -8630108 true false 195 225 195 180 240 180 240 225
1001
Polygon -7500403 true true 120 135 225 135 225 210 75 210 75 165 105 165
1002
Polygon -8630108 true false 90 210 105 225 120 210
1003
Polygon -8630108 true false 180 210 195 225 210 210
1008
Polygon -7500403 true true 180 135 75 135 75 210 225 210 225 165 195 165
1009
Polygon -8630108 true false 210 210 195 225 180 210
1010
Polygon -8630108 true false 120 210 105 225 90 210
1015
Polygon -7500403 true true 138 75 162 75 165 105 225 105 225 142 195 135 195 187 225 195 225 225 195 217 195 202 105 202 105 217 75 225 75 195 105 187 105 135 75 142 75 105 135 105
1020
Rectangle -7500403 true true 15 105 105 165
1021
Rectangle -7500403 true true 45 90 105 105
1022
Polygon -7500403 true true 60 90 83 44 104 90
1023
Polygon -16777216 true false 67 90 82 59 97 89
1024
Rectangle -1 true false 48 93 59 105
1025
Rectangle -16777216 true false 51 96 55 101
1026
Rectangle -16777216 true false 0 121 15 135
1027
Rectangle -16777216 true false 15 136 60 151
1028
Polygon -1 true false 15 136 23 149 31 136
1029
Polygon -1 true false 30 151 37 136 43 151
1030
Rectangle -7500403 true true 105 120 263 195
1031
Rectangle -7500403 true true 108 195 259 201
1032
Rectangle -7500403 true true 114 201 252 210
1033
Rectangle -7500403 true true 120 210 243 214
1034
Rectangle -7500403 true true 115 114 255 120
1035
Rectangle -7500403 true true 128 108 248 114
1036
Rectangle -7500403 true true 150 105 225 108
1037
Rectangle -7500403 true true 132 214 155 270
1038
Rectangle -7500403 true true 110 260 132 270
1039
Rectangle -7500403 true true 210 214 232 270
1040
Rectangle -7500403 true true 189 260 210 270
1041
Line -7500403 true 263 127 281 155
1042
Line -7500403 true 281 155 281 192
1047
Polygon -6459832 true true 117 97 91 74 66 74 60 85 36 85 38 92 44 97 62 97 81 117 84 134 92 147 109 152 136 144 174 144 174 103 143 103 134 97
1048
Polygon -6459832 true true 87 80 79 55 76 79
1049
Polygon -6459832 true true 81 75 70 58 73 82
1050
Polygon -6459832 true true 99 131 76 152 76 163 96 182 104 182 109 173 102 167 99 173 87 159 104 140
1051
Polygon -6459832 true true 107 138 107 186 98 190 99 196 112 196 115 190
1052
Polygon -6459832 true true 116 140 114 189 105 137
1053
Rectangle -6459832 true true 109 150 114 192
1054
Rectangle -6459832 true true 111 143 116 191
1055
Polygon -6459832 true true 168 106 184 98 205 98 218 115 218 137 186 164 196 176 195 194 178 195 178 183 188 183 169 164 173 144
1056
Polygon -6459832 true true 207 140 200 163 206 175 207 192 193 189 192 177 198 176 185 150
1057
Polygon -6459832 true true 214 134 203 168 192 148
1058
Polygon -6459832 true true 204 151 203 176 193 148
1059
Polygon -6459832 true true 207 103 221 98 236 101 243 115 243 128 256 142 239 143 233 133 225 115 214 114
1064
Polygon -6459832 true true 170 127 200 93 231 93 237 103 262 103 261 113 253 119 231 119 215 143 213 160 208 173 189 187 169 190 154 190 126 180 106 171 72 171 73 126 122 126 144 123 159 123
1065
Polygon -6459832 true true 201 99 214 69 215 99
1066
Polygon -6459832 true true 207 98 223 71 220 101
1067
Polygon -6459832 true true 184 172 189 234 203 238 203 246 187 247 180 239 171 180
1068
Polygon -6459832 true true 197 174 204 220 218 224 219 234 201 232 195 225 179 179
1069
Polygon -6459832 true true 78 167 95 187 95 208 79 220 92 234 98 235 100 249 81 246 76 241 61 212 65 195 52 170 45 150 44 128 55 121 69 121 81 135
1070
Polygon -6459832 true true 48 143 58 141
1071
Polygon -6459832 true true 46 136 68 137
1072
Polygon -6459832 true true 45 129 35 142 37 159 53 192 47 210 62 238 80 237
1073
Line -16777216 false 74 237 59 213
1074
Line -16777216 false 59 213 59 212
1075
Line -16777216 false 58 211 67 192
1076
Polygon -6459832 true true 38 138 66 149
1077
Polygon -6459832 true true 46 128 33 120 21 118 11 123 3 138 5 160 13 178 9 192 0 199 20 196 25 179 24 161 25 148 45 140
1078
Polygon -6459832 true true 67 122 96 126 63 144
1095
Line -7500403 true 150 150 90 180
1096
Line -7500403 true 150 150 210 180