No subject


Fri Feb 8 15:06:04 EST 2008


each LAYER object, then making a single request for the layer EVERYTHING =
would do just what it seems you are describing.

=20

-      Ed

=20

Ed McNierney

President and Chief Mapmaker

TopoZone.com / Maps a la carte, Inc.

73 Princeton Street, Suite 305

North Chelmsford, MA  01863

Phone: 978-251-4242, Fax: 978-251-1396

ed at topozone.com

=20

=20

=20

From: UMN MapServer Users List [mailto:MAPSERVER-USERS at LISTS.UMN.EDU] On =
Behalf Of Andre Lockhart
Sent: Wednesday, May 23, 2007 9:50 PM
To: MAPSERVER-USERS at LISTS.UMN.EDU
Subject: [UMN_MAPSERVER-USERS] Combining layers into fewer tiles to =
reduce the number of Apache GETs

=20

We have a MapServer application that uses ESRI shapefiles. There is a =
different shapefile for land, street, city name, railroads, parks, etc. =
MapServer creates and overlays tiles/layers for each and decorates them =
according to the mapfile.

=20

The problem is that it requires over 200 GETs on the web server to pull =
all these layers/tiles down to the client and render them.=20

=20

Since all these layers are static and never need to be toggled on/off, =
we would like to 'flatten' them into one layer. This would reduce the =
number of GETs by almost an order of magnitude.

=20

Does anyone know how to do this while keeping the 'decoration' (like =
colors, fonts, etc.) specified in the mapfile?

=20

Thanks!

=20

=20

=20

=20

  <http://www.covaluate.com/>=20

         Andr=E9 Lockhart, President

         andre at CoValuate.com

         510.333.7189

=20


------_=_NextPart_002_01C79DA8.A440F715
Content-Type: text/html;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<META HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; =
charset=3Diso-8859-1">
<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40">

<head>

<meta name=3DGenerator content=3D"Microsoft Word 12 (filtered medium)">
<!--[if !mso]>
<style>
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style>
<![endif]-->
<style>
<!--
 /* Font Definitions */
 @font-face
	{font-family:Wingdings;
	panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:Tahoma;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
	{font-family:Verdana;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
 /* Style Definitions */
 p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
	{mso-style-priority:34;
	margin-top:0in;
	margin-right:0in;
	margin-bottom:0in;
	margin-left:.5in;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";}
span.EmailStyle17
	{mso-style-type:personal;
	font-family:"Verdana","sans-serif";
	color:navy;
	font-weight:normal;
	font-style:normal;
	text-decoration:none none;}
span.EmailStyle18
	{mso-style-type:personal-reply;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page Section1
	{size:8.5in 11.0in;
	margin:1.0in 1.25in 1.0in 1.25in;}
div.Section1
	{page:Section1;}
 /* List Definitions */
 @list l0
	{mso-list-id:1305550850;
	mso-list-type:hybrid;
	mso-list-template-ids:-1772833566 1570777720 67698691 67698693 67698689 =
67698691 67698693 67698689 67698691 67698693;}
@list l0:level1
	{mso-level-start-at:201;
	mso-level-number-format:bullet;
	mso-level-text:-;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	margin-left:36.75pt;
	text-indent:-.25in;
	mso-ansi-font-size:10.0pt;
	font-family:"Verdana","sans-serif";
	mso-fareast-font-family:Calibri;
	mso-bidi-font-family:"Times New Roman";
	color:navy;}
@list l1
	{mso-list-id:1908682965;
	mso-list-type:hybrid;
	mso-list-template-ids:519063520 -1718868640 67698691 67698693 67698689 =
67698691 67698693 67698689 67698691 67698693;}
@list l1:level1
	{mso-level-start-at:0;
	mso-level-number-format:bullet;
	mso-level-text:-;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	margin-left:.75in;
	text-indent:-.25in;
	font-family:"Calibri","sans-serif";
	mso-fareast-font-family:Calibri;
	mso-bidi-font-family:"Times New Roman";}
@list l1:level2
	{mso-level-tab-stop:1.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l1:level3
	{mso-level-tab-stop:1.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l1:level4
	{mso-level-tab-stop:2.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l1:level5
	{mso-level-tab-stop:2.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l1:level6
	{mso-level-tab-stop:3.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l1:level7
	{mso-level-tab-stop:3.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l1:level8
	{mso-level-tab-stop:4.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l1:level9
	{mso-level-tab-stop:4.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
ol
	{margin-bottom:0in;}
ul
	{margin-bottom:0in;}
-->
</style>
<!--[if gte mso 9]><xml>
 <o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
 <o:shapelayout v:ext=3D"edit">
  <o:idmap v:ext=3D"edit" data=3D"1" />
 </o:shapelayout></xml><![endif]-->
</head>

<body lang=3DEN-US link=3Dblue vlink=3Dpurple>

<div class=3DSection1>

<p class=3DMsoNormal><span =
style=3D'font-size:10.0pt;font-family:"Verdana","sans-serif";
color:navy'>Andr=E9 &#8211;<o:p></o:p></span></p>

<p class=3DMsoNormal><span =
style=3D'font-size:10.0pt;font-family:"Verdana","sans-serif";
color:navy'><o:p>&nbsp;</o:p></span></p>

<p class=3DMsoNormal><span =
style=3D'font-size:10.0pt;font-family:"Verdana","sans-serif";
color:navy'>Your description sounds a little odd.=A0 It is common for =
MapServer
applications to contain many dozens of shapefiles.=A0 There may be one =
shapefile
per layer, but many layers combined into a GROUP with that keyword.=A0 =
And a
given MapServer request can specify as many layers &#8211; in one GET =
request &#8211; as needed.<o:p></o:p></span></p>

<p class=3DMsoNormal><span =
style=3D'font-size:10.0pt;font-family:"Verdana","sans-serif";
color:navy'><o:p>&nbsp;</o:p></span></p>

<p class=3DMsoNormal><span =
style=3D'font-size:10.0pt;font-family:"Verdana","sans-serif";
color:navy'>From your description, simply adding a GROUP EVERYTHING (for
example) to each LAYER object, then making a single request for the =
layer
EVERYTHING would do just what it seems you are =
describing.<o:p></o:p></span></p>

<p class=3DMsoNormal><span =
style=3D'font-size:10.0pt;font-family:"Verdana","sans-serif";
color:navy'><o:p>&nbsp;</o:p></span></p>

<p class=3DMsoListParagraph =
style=3D'margin-left:36.75pt;text-indent:-.25in;
mso-list:l0 level1 lfo1'><![if !supportLists]><span =
style=3D'font-size:10.0pt;
font-family:"Verdana","sans-serif";color:navy'><span =
style=3D'mso-list:Ignore'>-<span
style=3D'font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
</span></span></span><![endif]><span
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Ed<o:p></o:p></span></p>

<p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'><o:p>&nbsp;</o:p></span></p>

<p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>Ed McNierney<o:p></o:p></span></p>

<p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>President and Chief Mapmaker<o:p></o:p></span></p>

<p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>TopoZone.com / Maps a la carte, =
Inc.<o:p></o:p></span></p>

<p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>73 Princeton Street, Suite 305<o:p></o:p></span></p>

<p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>North Chelmsford, MA=A0 01863<o:p></o:p></span></p>

<p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>Phone: 978-251-4242, Fax: =
978-251-1396<o:p></o:p></span></p>

<p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>ed at topozone.com</span><span =
style=3D'font-size:11.0pt;font-family:
"Calibri","sans-serif";color:#1F497D'><o:p></o:p></span></p>

<p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'><o:p>&nbsp;</o:p></span></p>

<p class=3DMsoListParagraph style=3D'margin-left:36.75pt'><span =
style=3D'font-size:
11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p>&nbsp;</o:p=
></span></p>

<p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'><o:p>&nbsp;</o:p></span></p>

<div>

<div style=3D'border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt =
0in 0in 0in'>

<p class=3DMsoNormal><b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span>=
</b><span
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'> UMN =
MapServer Users
List [mailto:MAPSERVER-USERS at LISTS.UMN.EDU] <b>On Behalf Of </b>Andre =
Lockhart<br>
<b>Sent:</b> Wednesday, May 23, 2007 9:50 PM<br>
<b>To:</b> MAPSERVER-USERS at LISTS.UMN.EDU<br>
<b>Subject:</b> [UMN_MAPSERVER-USERS] Combining layers into fewer tiles =
to
reduce the number of Apache GETs<o:p></o:p></span></p>

</div>

</div>

<p class=3DMsoNormal><o:p>&nbsp;</o:p></p>

<p class=3DMsoNormal><span =
style=3D'font-size:10.0pt;font-family:"Verdana","sans-serif";
color:navy'>We have a MapServer application that uses ESRI shapefiles. =
There is
a different shapefile for land, street, city name, railroads, parks, =
etc.
MapServer creates and overlays tiles/layers for each and decorates them
according to the mapfile.<o:p></o:p></span></p>

<p class=3DMsoNormal><span =
style=3D'font-size:10.0pt;font-family:"Verdana","sans-serif";
color:navy'><o:p>&nbsp;</o:p></span></p>

<p class=3DMsoNormal><span =
style=3D'font-size:10.0pt;font-family:"Verdana","sans-serif";
color:navy'>The problem is that it requires over 200 GETs on the web =
server to
pull all these layers/tiles down to the client and render them. =
<o:p></o:p></span></p>

<p class=3DMsoNormal><span =
style=3D'font-size:10.0pt;font-family:"Verdana","sans-serif";
color:navy'><o:p>&nbsp;</o:p></span></p>

<p class=3DMsoNormal><span =
style=3D'font-size:10.0pt;font-family:"Verdana","sans-serif";
color:navy'>Since all these layers are static and never need to be =
toggled
on/off, we would like to &#8216;flatten&#8217; them into one layer. This =
would reduce the
number of GETs by almost an order of magnitude.<o:p></o:p></span></p>

<p class=3DMsoNormal><span =
style=3D'font-size:10.0pt;font-family:"Verdana","sans-serif";
color:navy'><o:p>&nbsp;</o:p></span></p>

<p class=3DMsoNormal><span =
style=3D'font-size:10.0pt;font-family:"Verdana","sans-serif";
color:navy'>Does anyone know how to do this while keeping the =
&#8216;decoration&#8217;
(like colors, fonts, etc.) specified in the =
mapfile?<o:p></o:p></span></p>

<p class=3DMsoNormal><span =
style=3D'font-size:10.0pt;font-family:"Verdana","sans-serif";
color:navy'><o:p>&nbsp;</o:p></span></p>

<p class=3DMsoNormal><span =
style=3D'font-size:10.0pt;font-family:"Verdana","sans-serif";
color:navy'>Thanks!<o:p></o:p></span></p>

<p class=3DMsoNormal><span =
style=3D'font-size:10.0pt;font-family:"Verdana","sans-serif";
color:navy'><o:p>&nbsp;</o:p></span></p>

<p class=3DMsoNormal><span =
style=3D'font-size:10.0pt;font-family:"Verdana","sans-serif";
color:navy'><o:p>&nbsp;</o:p></span></p>

<p class=3DMsoNormal><span =
style=3D'font-size:10.0pt;font-family:"Verdana","sans-serif";
color:navy'><o:p>&nbsp;</o:p></span></p>

<p class=3DMsoNormal><span class=3DMsoHyperlink><span =
style=3D'color:navy;text-decoration:
none'><o:p>&nbsp;</o:p></span></span></p>

<p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span
style=3D'color:navy'><a href=3D"http://www.covaluate.com/"><span =
style=3D'color:navy;
text-decoration:none'><img border=3D0 width=3D166 height=3D40 =
id=3D"_x0000_i1025"
src=3D"cid:image001.jpg at 01C79D87.1ACCBE80"></span></a></span><o:p></o:p><=
/p>

<p class=3DMsoNormal><span =
style=3D'font-size:10.0pt;font-family:"Verdana","sans-serif";
color:navy'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Andr=E9 =
Lockhart,
President<o:p></o:p></span></p>

<p class=3DMsoNormal><span =
style=3D'font-size:10.0pt;font-family:"Verdana","sans-serif";
color:navy'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a
href=3D"mailto:andre at CoValuate.com">andre at CoValuate.com</a><o:p></o:p></s=
pan></p>

<p class=3DMsoNormal><span =
style=3D'font-size:10.0pt;font-family:"Verdana","sans-serif";
color:navy'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
510.333.7189<o:p></o:p></span></p>

<p class=3DMsoNormal><o:p>&nbsp;</o:p></p>

</div>

</body>

</html>

------_=_NextPart_002_01C79DA8.A440F715--

------_=_NextPart_001_01C79DA8.A440F715
Content-Type: image/jpeg;
	name="image001.jpg"
Content-Transfer-Encoding: base64
Content-ID: <image001.jpg at 01C79D87.1ACCBE80>
Content-Description: image001.jpg
Content-Location: image001.jpg

/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0a
HBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIy
MjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAARCAAoAKYDASIA
AhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA
AAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3
ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWm
p6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEA
AwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSEx
BhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElK
U1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3
uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD38kAE
k4A6mvKPFfx10XRr9tM0S0l1q+VthMJxEG9AcEsfoPxqt8dfF97p1hY+F9Id1vtWOJGQ4by87Qo/
3jx9AfWjSdH0H4PeH7ctbR3viO4QNJMwyQT2X0UHjjrTinJ2QN2M0fFb4ltH9pHgBvs2M/6ibOPr
/wDWrd8IfG/Tdd1aHRdY0240nU5XEaK+WRnPQdAVJ9x+NY+o/E7xNpWri21BYLZyofySgbCnkZxX
T6ePD3xEnsL66tY4dZ0+ZLiKeIYY7SDjPdfUGuqeCrQp+1a90yVaDlyp6no1FFIzBVLMQFAySegr
kNRaKz7XXtHvrk21pqllPOvWKKdWYfgDV9mVFLMwVQMkk4ApuLWjQXForPtNd0jULhrez1SyuJl6
xxTqzD8AatvdW8VzFbSTxrPMGMcbMAzgdcDvjNDTWjC9yWioWurdLqO1eeNbiRWdIiw3MoxkgdSB
kfnTZr60t7q3tZ7qGO4uSwgidwGl2jJ2g8nA64pAWKKhurq3srZ7i6njggT70kjBVXnHJNTUAFFQ
wXdvctKsE8cphcxyBGB2MOqnHQ8jiiC6t7oSG3njlEcjRP5bBtrjqpx0I9KAJqKrpfWkl9LYpdQt
dxIHkgDguinoSvUA1V1DxBo2kyiLUdUs7Ryu4LPMqHHryaANKiqVjrGm6nDJLYX9tcxxffeGQMF7
8kdKox+MPDUzKsWvaa5cgKFuUOSfTmgDbooooA8C8dgH9pHw19q/498W+zd0+839ag+MZvY/FNyz
K5gKRmMjsNv+Oa6P47eFb28sLDxXpKsbzSWzIEGW8vO4MP8AdPP0J9Kt6NrWhfF3w7CfNig1yCPb
PbOcHPcj1UnkEdO9dOElTjVTqbGdVScfd3PnRrmZ5zJJI7uepYkmvT/hNfXU3jLTLeEPtBdpGP8A
d2HNXdQ+FGui7MdppjyAnhzLGE+uc5/Suu8LaPovwyuLb+2b+KfX9UkS2ht4edgYjgDrjpljj2r1
sXVowouMKnNfoclKE3NNxtY9Xrzr403l5aeBtts7pHPcpHOy8fJgnH0JAFei1V1HTbPVrCWxv7dJ
7aYbXjccGvFoVFTqRm1ex2zV4tHmGqeEvAOl6RoWoNevpUuUeC7tHy87YB54Oef51d+NN7dQeC7S
OCSRbe5uUS4ccErgnB+prV034UeFdM1KO9S3uJnibfFHcTF40OcjC/411eqaXZazp8thqNulxbSj
DRv/AJ4NdTxMFUhK7lbuZ8jcWtjxv4ieHtB8L+H9D1Tw6iWuoidPJlgclphtzuPPPIHPvjvXoXjH
zYND07xBsxcaTPHdyAdfKI2zL/3wxP8AwGoNK+FXhfSdSjvo7e4nkibdEtzMXSM9sD2rsLm2ivLW
a2nQPDMhjdT3UjBFZ4mtGcYxTbtfV+ZUItNs5nQiuseMda1oMHgtgmm2rDkEL88rD6swH/AK4fxX
qlpqHiHWtWWV/tugtFFparC7BpI2Ek2CFI+b/V9e1eo6DoVl4c0W30nTxILeAEKZG3McnJJPc807
RtGtND0tNPtA5iVnctK25nZmLMzHuSSa5DQ5rx7ew6l8K769t2DQXEEMqH1VnQiu1rAfwhpjeEpP
DW64GnuCBiT50BfeADjgA9ParVho01ldCZ9a1O7ABHlXDxlD7/KgP60AY3gkYv8AxWO/9tS/+gJS
eCJY4bLxHNIwWNNbvXZj0AD8mtK68LW02o3F/a3t/p09yB9oNnKFExAwGYEEbscZGDUn/CL6cvhi
Xw/EJobKWNo5Ckh8xtxyxLHJJbJyfc0AeX6PrtlDreneLjM63eq6hJFeI0Mg22suFhyxXGF2Rnr/
ABGvQviL/wAk91z/AK9j/MVr6hotjqWhS6NPFiykh8nYhwVUDjB7EYGPpRqWj22raHNpF28rW80X
lOwbDkeufXigB9z/AMgSb/r2b/0GuU+H8uu/8IZoC/YdN+x/ZIh5n2t/M24HO3y8Z9s/jXaPAj2z
W7Z2MhQ884xiue0/weNLs7eztNf1lLa3VUji82IgKOg5jzQB0tFFFACMoZSrAEEYIPevJPFHwI0r
UtQbU/Dt/Lot6SW2RgmLd6rggr+Bx7UUUAZa/DT4qqv2dfH37jGM+fLnH5Z/Wtnwl8EbPR9ah1zX
dWudX1OFxJGWJVFcdCcklse5x7UUUAer0UUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABR
RRQB/9k=

------_=_NextPart_001_01C79DA8.A440F715--



More information about the mapserver-users mailing list