blob: 762ed6d0a4b4b997cabdfee0d37748a27857a1ff [file] [log] [blame]
cristy3eaa0ef2010-03-06 20:35:26 +00001<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
cristy2c839602010-04-03 02:32:08 +00003<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" dir="ltr">
cristy3eaa0ef2010-03-06 20:35:26 +00004<head>
cristy3de29cc2010-04-15 02:34:44 +00005 <meta http-equiv="content-type" content="text/html; charset=utf-8"/>
cristy3eaa0ef2010-03-06 20:35:26 +00006 <meta name="verify-v1" content="g222frIIxcQTrvDR3NBRUSKP3AnMNoqxOkIniCEkV7U=" />
7 <link rel="meta" type="application/rdf+xml" title="ICI" href="http://imagemagick.org/ici.rdf" />
cristy3de29cc2010-04-15 02:34:44 +00008 <style type="text/css" media="all">
cristy3eaa0ef2010-03-06 20:35:26 +00009 @import url("../../www/magick.css");
cristy3de29cc2010-04-15 02:34:44 +000010 </style>
cristy3ed852e2009-09-05 21:47:34 +000011 <link rel="shortcut icon" href="../../images/wand.ico" type="images/vnd.microsoft.icon"/>
12 <title>ImageMagick: MagickCore, C API for ImageMagick: Memory Allocation</title>
13 <meta http-equiv="Content-Language" content="en-US"/>
14 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
15 <meta http-equiv="Reply-to" content="magick-users@imagemagick.org"/>
16 <meta name="Generator" content="PHP"/>
17 <meta name="Keywords" content="magickcore, c, api, for, imagemagick:, memory, allocation, ImageMagick, ImageMagic, MagickCore, MagickWand, PerlMagick, Magick++, RMagick, PythonMagick, JMagick, TclMagick, Image, Magick, Magic, Wand, ImageMagickObject, Swiss, Army, Knife, Image, Processing"/>
18 <meta name="Description" content="ImageMagick® is a software suite to create, edit, and compose bitmap images. It can read, convert and write images in a variety of formats (about 100) including GIF, JPEG, JPEG-2000, PNG, PDF, PhotoCD, TIFF, and DPX. Use ImageMagick to translate, flip, mirror, rotate, scale, shear and transform images, adjust image colors, apply various special effects, or draw text, lines, polygons, ellipses and Bézier curves. ImageMagick is free software delivered as a ready-to-run binary distribution or as source code that you can freely use, copy, modify, and distribute. Its license is compatible with the GPL. It runs on all major operating systems. The functionality of ImageMagick is typically utilized from the command line or you can use the features from programs written in your favorite programming language. Choose from these interfaces: MagickCore (C), MagickWand (C), ChMagick (Ch), Magick++ (C++), JMagick (Java), L-Magick (Lisp), PascalMagick (Pascal), PerlMagick (Perl), MagickWand for PHP (PHP), PythonMagick (Python), RMagick (Ruby), or TclMagick (Tcl/TK). With a language interface, use ImageMagick to modify or create images automagically and dynamically."/>
19 <meta name="Rating" content="GENERAL"/>
20 <meta name="Robots" content="INDEX, FOLLOW"/>
21 <meta name="Generator" content="ImageMagick Studio LLC"/>
22 <meta name="Author" content="ImageMagick Studio LLC"/>
23 <meta name="Revisit-after" content="2 DAYS"/>
24 <meta name="Resource-type" content="document"/>
cristy16af1cb2009-12-11 21:38:29 +000025 <meta name="Copyright" content="Copyright (c) 1999-2010 ImageMagick Studio LLC"/>
cristy3ed852e2009-09-05 21:47:34 +000026 <meta name="Distribution" content="Global"/>
cristy3eaa0ef2010-03-06 20:35:26 +000027</head>
28
29<body id="www-imagemagick-org">
30<div class="titlebar">
31<a href="../../index.html">
32 <img src="../../images/script.png" alt="[ImageMagick]"
33 style="width: 350px; height: 60px; margin: 28px auto; float: left;" /></a>
34<a href="http://www.networkredux.com">
35 <img src="../../images/networkredux.png" alt="[sponsor]"
36 style="margin: 45px auto; border: 0px; float: left;" /></a>
37<a href="http://www.imagemagick.org/discourse-server/">
38 <img src="../../images/logo.jpg" alt=""
39 style="width: 114px; height: 118px; border: 0px; float: right;" /></a>
40<a href="../../index.html">
41 <img src="../../images/sprite.jpg" alt=""
42 style="width: 114px; height: 118px; border: 0px; float: right;" /></a>
43</div>
44
cristyce69bb02010-07-27 19:49:46 +000045<div class="westbar">
cristy3eaa0ef2010-03-06 20:35:26 +000046
cristy3ed852e2009-09-05 21:47:34 +000047<div class="menu">
cristy83a272e2010-05-07 20:40:35 +000048 <a title="About ImageMagick" href="../../index.html">About ImageMagick</a>
cristy3ed852e2009-09-05 21:47:34 +000049</div>
cristy3eaa0ef2010-03-06 20:35:26 +000050<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +000051<div class="menu">
cristybb503372010-05-27 20:51:26 +000052 <a title="Binary Releases" href="../../www/binary-releases.html">Binary Releases</a>
53</div>
54<div class="sub">
55 <a title="Binary Release: Unix" href="../../www/binary-releases.html#unix">Unix</a>
56</div>
57<div class="sub">
58 <a title="Binary Release: MacOS X" href="../../www/binary-releases.html#macosx">Mac OS X</a>
59</div>
60<div class="sub">
61 <a title="Binary Release: Windows" href="../../www/binary-releases.html#windows">Windows</a>
62</div>
63<div class="sep"></div>
64<div class="menu">
cristy83a272e2010-05-07 20:40:35 +000065 <a title="Command-line Tools" href="../../www/command-line-tools.html">Command-line Tools</a>
cristy3ed852e2009-09-05 21:47:34 +000066</div>
67<div class="sub">
cristy83a272e2010-05-07 20:40:35 +000068 <a title="Command-line Tools: Processing" href="../../www/command-line-processing.html">Processing</a>
cristy3ed852e2009-09-05 21:47:34 +000069</div>
70<div class="sub">
cristy83a272e2010-05-07 20:40:35 +000071 <a title="Command-line Tools: Options" href="../../www/command-line-options.html">Options</a>
cristy3ed852e2009-09-05 21:47:34 +000072</div>
73<div class="sub">
cristy83a272e2010-05-07 20:40:35 +000074 <a title="Command-line Tools: Usage" href="http://www.imagemagick.org/Usage/">Usage</a>
cristy3ed852e2009-09-05 21:47:34 +000075</div>
76<div class="menu">
cristy83a272e2010-05-07 20:40:35 +000077 <a title="Program Interfaces" href="../../www/api.html">Program Interfaces</a>
cristy3ed852e2009-09-05 21:47:34 +000078</div>
79<div class="sub">
cristy83a272e2010-05-07 20:40:35 +000080 <a title="Program Interface: MagickWand" href="../../www/magick-wand.html">MagickWand</a>
cristy3ed852e2009-09-05 21:47:34 +000081</div>
82<div class="sub">
cristy83a272e2010-05-07 20:40:35 +000083 <a title="Program Interface: MagickCore" href="../../www/magick-core.html">MagickCore</a>
cristy3ed852e2009-09-05 21:47:34 +000084</div>
85<div class="sub">
cristy83a272e2010-05-07 20:40:35 +000086 <a title="Program Interface: PerlMagick" href="../../www/perl-magick.html">PerlMagick</a>
cristy3ed852e2009-09-05 21:47:34 +000087</div>
88<div class="sub">
cristy83a272e2010-05-07 20:40:35 +000089 <a title="Program Interface: Magick++" href="../../Magick++/">Magick++</a>
cristy3ed852e2009-09-05 21:47:34 +000090</div>
cristy3eaa0ef2010-03-06 20:35:26 +000091<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +000092<div class="menu">
cristy83a272e2010-05-07 20:40:35 +000093 <a title="Install from Source" href="../../www/install-source.html">Install from Source</a>
cristy3ed852e2009-09-05 21:47:34 +000094</div>
95<div class="sub">
cristy83a272e2010-05-07 20:40:35 +000096 <a title="Install from Source: Unix" href="../../www/install-source.html#unix">Unix</a>
cristy3ed852e2009-09-05 21:47:34 +000097</div>
98<div class="sub">
cristy83a272e2010-05-07 20:40:35 +000099 <a title="Install from Source: Windows" href="../../www/install-source.html#windows">Windows</a>
cristy3ed852e2009-09-05 21:47:34 +0000100 </div>
101<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000102 <a title="Resources" href="../../www/resources.html">Resources</a>
cristy3ed852e2009-09-05 21:47:34 +0000103</div>
cristybb503372010-05-27 20:51:26 +0000104<div class="menu">
105 <a title="Architecture" href="../../www/architecture.html">Architecture</a>
106</div>
cristy3ed852e2009-09-05 21:47:34 +0000107<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000108 <a title="Download" href="../../www/download.html">Download</a>
cristy3ed852e2009-09-05 21:47:34 +0000109</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000110<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000111<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000112 <a title="Search" href="../http://www.imagemagick.org/script/search.php">Search</a>
cristy3ed852e2009-09-05 21:47:34 +0000113</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000114<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000115<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000116 <a title="Site Map"href="../../www/sitemap.html">Site Map</a>
cristy3ed852e2009-09-05 21:47:34 +0000117</div>
118<div class="sub">
cristy83a272e2010-05-07 20:40:35 +0000119 <a title="Site Map: Links"href="../../www/links.html">Links</a>
cristy3ed852e2009-09-05 21:47:34 +0000120</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000121<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000122<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000123 <a title="Sponsors" href="../../www/sponsors.html">Sponsors:</a>
cristy3ed852e2009-09-05 21:47:34 +0000124
125<div class="sponsbox">
126<div class="sponsor">
cristy83a272e2010-05-07 20:40:35 +0000127 <a title="Sponsor: Webdesign Agentur" href="http://www.ventzke-partner.de">Webdesign Agentur</a><!-- 201101010480 invendio.de-->
cristy3de29cc2010-04-15 02:34:44 +0000128</div>
129<div class="sponsor">
cristy83a272e2010-05-07 20:40:35 +0000130 <a title="Sponsor: LVM Versicherung" href="http://www.neu-reich.de">LVM Versicherung</a><!-- 201101010480 -->
cristy8f900122010-03-05 15:26:31 +0000131</div>
132<div class="sponsor">
cristy83a272e2010-05-07 20:40:35 +0000133 <a title="Sponsor: Deko.net" href="http://www.deko.net">Deko.net</a><!-- 201101010600 Peterssen-->
cristy1f9e1ed2009-11-18 04:09:38 +0000134</div>
135<div class="sponsor">
cristy83a272e2010-05-07 20:40:35 +0000136 <a title="Sponsor: Druckerei" href="http://www.print24.de/">Druckerei</a><!-- 201009010720 -->
cristyc1c61662009-09-30 14:04:37 +0000137</div>
138<div class="sponsor">
cristy83a272e2010-05-07 20:40:35 +0000139 <a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
cristyb4c03bb2009-09-27 13:55:46 +0000140</div>
141<div class="sponsor">
cristyce69bb02010-07-27 19:49:46 +0000142 <a title="Sponsor: Free Catalogs" href="http://www.who-sells-it.com/">Free Catalogs</a><!-- 20120801000600 -->
cristy3ed852e2009-09-05 21:47:34 +0000143</div>
cristy3ed852e2009-09-05 21:47:34 +0000144</div>
145</div>
cristyce69bb02010-07-27 19:49:46 +0000146</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000147
cristyce69bb02010-07-27 19:49:46 +0000148<div class="eastbar">
149 <script type="text/javascript">
150 <!--
151 google_ad_client = "pub-3129977114552745";
152 /* 160x600, created 7/27/10 */
153 google_ad_slot = "0574824969";
154 google_ad_width = 160;
155 google_ad_height = 600;
156 //-->
157 </script>
158 <script type="text/javascript"
159 src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
160 </script>
cristy3eaa0ef2010-03-06 20:35:26 +0000161</div>
162
163<div class="main">
164
cristy3ed852e2009-09-05 21:47:34 +0000165<p class="navigation-index">[<a href="#AcquireAlignedMemory">AcquireAlignedMemory</a> &bull; <a href="#AcquireMagickMemory">AcquireMagickMemory</a> &bull; <a href="#AcquireQuantumMemory">AcquireQuantumMemory</a> &bull; <a href="#CopyMagickMemory">CopyMagickMemory</a> &bull; <a href="#GetMagickMemoryMethods">GetMagickMemoryMethods</a> &bull; <a href="#RelinquishAlignedMemory">RelinquishAlignedMemory</a> &bull; <a href="#RelinquishMagickMemory">RelinquishMagickMemory</a> &bull; <a href="#ResetMagickMemory">ResetMagickMemory</a> &bull; <a href="#ResizeMagickMemory">ResizeMagickMemory</a> &bull; <a href="#ResizeQuantumMemory">ResizeQuantumMemory</a> &bull; <a href="#SetMagickMemoryMethods">SetMagickMemoryMethods</a>]</p>
166
167<h2><a href="http://www.imagemagick.org/api/MagickCore/memory
168_8c.html" target="source" name="AcquireAlignedMemory">AcquireAlignedMemory</a></h2>
169<div class="doc-section">
170
171<p>AcquireAlignedMemory() returns a pointer to a block of memory at least size bytes whose address is a multiple of 16*sizeof(void *).</p></ol>
172
173<p>The format of the AcquireAlignedMemory method is:</p>
174
175<pre class="code">
176 void *AcquireAlignedMemory(const size_t count,const size_t quantum)
177</pre>
178
179<p>A description of each parameter follows:</p></ol>
180
181<h5>count</h5>
182<ol><p>the number of quantum elements to allocate.</p></ol>
183
184<h5>quantum</h5>
185<ol><p>the number of bytes in each quantum.</p></ol>
186
187 </div>
188<h2><a href="http://www.imagemagick.org/api/MagickCore/memory
189_8c.html" target="source" name="AcquireMagickMemory">AcquireMagickMemory</a></h2>
190<div class="doc-section">
191
192<p>AcquireMagickMemory() returns a pointer to a block of memory at least size bytes suitably aligned for any use.</p></ol>
193
194<p>The format of the AcquireMagickMemory method is:</p>
195
196<pre class="code">
197 void *AcquireMagickMemory(const size_t size)
198</pre>
199
200<p>A description of each parameter follows:</p></ol>
201
202<h5>size</h5>
203<ol><p>the size of the memory in bytes to allocate.</p></ol>
204
205 </div>
206<h2><a href="http://www.imagemagick.org/api/MagickCore/memory
207_8c.html" target="source" name="AcquireQuantumMemory">AcquireQuantumMemory</a></h2>
208<div class="doc-section">
209
210<p>AcquireQuantumMemory() returns a pointer to a block of memory at least count * quantum bytes suitably aligned for any use.</p></ol>
211
212<p>The format of the AcquireQuantumMemory method is:</p>
213
214<pre class="code">
215 void *AcquireQuantumMemory(const size_t count,const size_t quantum)
216</pre>
217
218<p>A description of each parameter follows:</p></ol>
219
220<h5>count</h5>
221<ol><p>the number of quantum elements to allocate.</p></ol>
222
223<h5>quantum</h5>
224<ol><p>the number of bytes in each quantum.</p></ol>
225
226 </div>
227<h2><a href="http://www.imagemagick.org/api/MagickCore/memory
228_8c.html" target="source" name="CopyMagickMemory">CopyMagickMemory</a></h2>
229<div class="doc-section">
230
231<p>CopyMagickMemory() copies size bytes from memory area source to the destination. Copying between objects that overlap will take place correctly. It returns destination.</p></ol>
232
233<p>The format of the CopyMagickMemory method is:</p>
234
235<pre class="code">
236 void *CopyMagickMemory(void *destination,const void *source,
237 const size_t size)
238</pre>
239
240<p>A description of each parameter follows:</p></ol>
241
242<h5>destination</h5>
243<ol><p>the destination.</p></ol>
244
245<h5>source</h5>
246<ol><p>the source.</p></ol>
247
248<h5>size</h5>
249<ol><p>the size of the memory in bytes to allocate.</p></ol>
250
251 </div>
252<h2><a href="http://www.imagemagick.org/api/MagickCore/memory
253_8c.html" target="source" name="GetMagickMemoryMethods">GetMagickMemoryMethods</a></h2>
254<div class="doc-section">
255
256<p>GetMagickMemoryMethods() gets the methods to acquire, resize, and destroy memory.</p></ol>
257
258<p>The format of the GetMagickMemoryMethods() method is:</p>
259
260<pre class="code">
261 void GetMagickMemoryMethods(AcquireMemoryHandler *acquire_memory_handler,
262 ResizeMemoryHandler *resize_memory_handler,
263 DestroyMemoryHandler *destroy_memory_handler)
264</pre>
265
266<p>A description of each parameter follows:</p></ol>
267
268<h5>acquire_memory_handler</h5>
269<ol><p>method to acquire memory (e.g. malloc).</p></ol>
270
271<h5>resize_memory_handler</h5>
272<ol><p>method to resize memory (e.g. realloc).</p></ol>
273
274<h5>destroy_memory_handler</h5>
275<ol><p>method to destroy memory (e.g. free).</p></ol>
276
277 </div>
278<h2><a href="http://www.imagemagick.org/api/MagickCore/memory
279_8c.html" target="source" name="RelinquishAlignedMemory">RelinquishAlignedMemory</a></h2>
280<div class="doc-section">
281
282<p>RelinquishAlignedMemory() frees memory acquired with AcquireAlignedMemory() or reuse.</p></ol>
283
284<p>The format of the RelinquishAlignedMemory method is:</p>
285
286<pre class="code">
287 void *RelinquishAlignedMemory(void *memory)
288</pre>
289
290<p>A description of each parameter follows:</p></ol>
291
292<h5>memory</h5>
293<ol><p>A pointer to a block of memory to free for reuse.</p></ol>
294
295 </div>
296<h2><a href="http://www.imagemagick.org/api/MagickCore/memory
297_8c.html" target="source" name="RelinquishMagickMemory">RelinquishMagickMemory</a></h2>
298<div class="doc-section">
299
300<p>RelinquishMagickMemory() frees memory acquired with AcquireMagickMemory() or AcquireQuantumMemory() for reuse.</p></ol>
301
302<p>The format of the RelinquishMagickMemory method is:</p>
303
304<pre class="code">
305 void *RelinquishMagickMemory(void *memory)
306</pre>
307
308<p>A description of each parameter follows:</p></ol>
309
310<h5>memory</h5>
311<ol><p>A pointer to a block of memory to free for reuse.</p></ol>
312
313 </div>
314<h2><a href="http://www.imagemagick.org/api/MagickCore/memory
315_8c.html" target="source" name="ResetMagickMemory">ResetMagickMemory</a></h2>
316<div class="doc-section">
317
318<p>ResetMagickMemory() fills the first size bytes of the memory area pointed to by memory with the constant byte c.</p></ol>
319
320<p>The format of the ResetMagickMemory method is:</p>
321
322<pre class="code">
323 void *ResetMagickMemory(void *memory,int byte,const size_t size)
324</pre>
325
326<p>A description of each parameter follows:</p></ol>
327
328<h5>memory</h5>
329<ol><p>A pointer to a memory allocation.</p></ol>
330
331<h5>byte</h5>
332<ol><p>Set the memory to this value.</p></ol>
333
334<h5>size</h5>
335<ol><p>Size of the memory to reset.</p></ol>
336
337 </div>
338<h2><a href="http://www.imagemagick.org/api/MagickCore/memory
339_8c.html" target="source" name="ResizeMagickMemory">ResizeMagickMemory</a></h2>
340<div class="doc-section">
341
342<p>ResizeMagickMemory() changes the size of the memory and returns a pointer to the (possibly moved) block. The contents will be unchanged up to the lesser of the new and old sizes.</p></ol>
343
344<p>The format of the ResizeMagickMemory method is:</p>
345
346<pre class="code">
347 void *ResizeMagickMemory(void *memory,const size_t size)
348</pre>
349
350<p>A description of each parameter follows:</p></ol>
351
352<h5>memory</h5>
353<ol><p>A pointer to a memory allocation.</p></ol>
354
355<h5>size</h5>
356<ol><p>the new size of the allocated memory.</p></ol>
357
358 </div>
359<h2><a href="http://www.imagemagick.org/api/MagickCore/memory
360_8c.html" target="source" name="ResizeQuantumMemory">ResizeQuantumMemory</a></h2>
361<div class="doc-section">
362
363<p>ResizeQuantumMemory() changes the size of the memory and returns a pointer to the (possibly moved) block. The contents will be unchanged up to the lesser of the new and old sizes.</p></ol>
364
365<p>The format of the ResizeQuantumMemory method is:</p>
366
367<pre class="code">
368 void *ResizeQuantumMemory(void *memory,const size_t count,
369 const size_t quantum)
370</pre>
371
372<p>A description of each parameter follows:</p></ol>
373
374<h5>memory</h5>
375<ol><p>A pointer to a memory allocation.</p></ol>
376
377<h5>count</h5>
378<ol><p>the number of quantum elements to allocate.</p></ol>
379
380<h5>quantum</h5>
381<ol><p>the number of bytes in each quantum.</p></ol>
382
383 </div>
384<h2><a href="http://www.imagemagick.org/api/MagickCore/memory
385_8c.html" target="source" name="SetMagickMemoryMethods">SetMagickMemoryMethods</a></h2>
386<div class="doc-section">
387
388<p>SetMagickMemoryMethods() sets the methods to acquire, resize, and destroy memory.</p></ol>
389
390<p>The format of the SetMagickMemoryMethods() method is:</p>
391
392<pre class="code">
393 SetMagickMemoryMethods(AcquireMemoryHandler acquire_memory_handler,
394 ResizeMemoryHandler resize_memory_handler,
395 DestroyMemoryHandler destroy_memory_handler)
396</pre>
397
398<p>A description of each parameter follows:</p></ol>
399
400<h5>acquire_memory_handler</h5>
401<ol><p>method to acquire memory (e.g. malloc).</p></ol>
402
403<h5>resize_memory_handler</h5>
404<ol><p>method to resize memory (e.g. realloc).</p></ol>
405
406<h5>destroy_memory_handler</h5>
407<ol><p>method to destroy memory (e.g. free).</p></ol>
408
409 </div>
cristy3eaa0ef2010-03-06 20:35:26 +0000410
411</div>
412
413<div id="linkbar">
cristyce69bb02010-07-27 19:49:46 +0000414 <span id="linkbar-west">&nbsp;</span>
cristy3eaa0ef2010-03-06 20:35:26 +0000415 <span id="linkbar-center">
416 <a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> &bull;
cristyce69bb02010-07-27 19:49:46 +0000417 <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>
cristy3eaa0ef2010-03-06 20:35:26 +0000418 </span>
419 <span id="linkbar-east">&nbsp;</span>
420 </div>
421 <div class="footer">
422 <span id="footer-west">&copy; 1999-2010 ImageMagick Studio LLC</span>
423 <span id="footer-east"> <a href="../http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>
424 </div>
425 <div style="clear: both; margin: 0; width: 100%; "></div>
426</body>
427</html>