blob: 39b0ecc5156f075361463d331002e9568ba054c5 [file] [log] [blame]
Joe Gregorio66212032012-06-14 09:10:14 -04001<?xml version="1.0" encoding="ascii"?>
2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
3 "DTD/xhtml1-transitional.dtd">
4<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
5<head>
6 <title>apiclient.http.MediaIoBaseUpload</title>
7 <link rel="stylesheet" href="epydoc.css" type="text/css" />
8 <script type="text/javascript" src="epydoc.js"></script>
9</head>
10
11<body bgcolor="white" text="black" link="blue" vlink="#204080"
12 alink="#204080">
13<!-- ==================== NAVIGATION BAR ==================== -->
14<table class="navbar" border="0" width="100%" cellpadding="0"
15 bgcolor="#a0c0ff" cellspacing="0">
16 <tr valign="middle">
17
18 <!-- Tree link -->
19 <th>&nbsp;&nbsp;&nbsp;<a
20 href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
21
22 <!-- Index link -->
23 <th>&nbsp;&nbsp;&nbsp;<a
24 href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
25
26 <!-- Help link -->
27 <th>&nbsp;&nbsp;&nbsp;<a
28 href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
29
30 <th class="navbar" width="100%"></th>
31 </tr>
32</table>
33<table width="100%" cellpadding="0" cellspacing="0">
34 <tr valign="top">
35 <td width="100%">
36 <span class="breadcrumbs">
37 <a href="apiclient-module.html">Package&nbsp;apiclient</a> ::
38 <a href="apiclient.http-module.html">Module&nbsp;http</a> ::
39 Class&nbsp;MediaIoBaseUpload
40 </span>
41 </td>
42 <td>
43 <table cellpadding="0" cellspacing="0">
44 <!-- hide/show private -->
45 <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
46 onclick="toggle_private();">hide&nbsp;private</a>]</span></td></tr>
47 <tr><td align="right"><span class="options"
48 >[<a href="frames.html" target="_top">frames</a
49 >]&nbsp;|&nbsp;<a href="apiclient.http.MediaIoBaseUpload-class.html"
50 target="_top">no&nbsp;frames</a>]</span></td></tr>
51 </table>
52 </td>
53 </tr>
54</table>
55<!-- ==================== CLASS DESCRIPTION ==================== -->
56<h1 class="epydoc">Class MediaIoBaseUpload</h1><p class="nomargin-top"><span class="codelink"><a href="apiclient.http-pysrc.html#MediaIoBaseUpload">source&nbsp;code</a></span></p>
57<center>
58<center> <map id="uml_class_diagram_for_apiclien_19" name="uml_class_diagram_for_apiclien_19">
59<area shape="rect" href="apiclient.http.MediaIoBaseUpload-class.html#__init__" title="Constructor." alt="" coords="17,111,404,129"/>
60<area shape="rect" href="apiclient.http.MediaIoBaseUpload-class.html#chunksize" title="Chunk size for resumable uploads." alt="" coords="17,129,404,148"/>
61<area shape="rect" href="apiclient.http.MediaIoBaseUpload-class.html#mimetype" title="Mime type of the body." alt="" coords="17,148,404,167"/>
62<area shape="rect" href="apiclient.http.MediaIoBaseUpload-class.html#size" title="Size of upload." alt="" coords="17,167,404,185"/>
63<area shape="rect" href="apiclient.http.MediaIoBaseUpload-class.html#resumable" title="Whether this upload is resumable." alt="" coords="17,185,404,204"/>
64<area shape="rect" href="apiclient.http.MediaIoBaseUpload-class.html#getbytes" title="Get bytes from the media." alt="" coords="17,204,404,223"/>
65<area shape="rect" href="apiclient.http.MediaIoBaseUpload-class.html#to_json" title="This upload type is not serializable." alt="" coords="17,223,404,241"/>
66<area shape="rect" href="apiclient.http.MediaIoBaseUpload-class.html" title="A MediaUpload for a io.Base objects." alt="" coords="16,85,405,243"/>
67<area shape="rect" href="apiclient.http.MediaUpload-class.html#new_from_json" title="Utility class method to instantiate a MediaUpload subclass from a JSON representation produced by to_json()." alt="" coords="144,36,277,55"/>
68<area shape="rect" href="apiclient.http.MediaUpload-class.html" title="Describes a media object to upload." alt="" coords="143,11,279,56"/>
69</map>
70 <img src="uml_class_diagram_for_apiclien_19.gif" alt='' usemap="#uml_class_diagram_for_apiclien_19" ismap="ismap" class="graph-without-title" />
71</center>
72</center>
73<hr />
74<pre class="literalblock">
75A MediaUpload for a io.Base objects.
76
77Note that the Python file object is compatible with io.Base and can be used
78with this class also.
79
80
81 fh = io.BytesIO('...Some data to upload...')
82 media = MediaIoBaseUpload(fh, mimetype='image/png',
83 chunksize=1024*1024, resumable=True)
84 service.objects().insert(
85 bucket='a_bucket_id',
86 name='smiley.png',
87 media_body=media).execute()
88
89</pre>
90
91<!-- ==================== INSTANCE METHODS ==================== -->
92<a name="section-InstanceMethods"></a>
93<table class="summary" border="1" cellpadding="3"
94 cellspacing="0" width="100%" bgcolor="white">
95<tr bgcolor="#70b0f0" class="table-header">
96 <td colspan="2" class="table-header">
97 <table border="0" cellpadding="0" cellspacing="0" width="100%">
98 <tr valign="top">
99 <td align="left"><span class="table-header">Instance Methods</span></td>
100 <td align="right" valign="top"
101 ><span class="options">[<a href="#section-InstanceMethods"
102 class="privatelink" onclick="toggle_private();"
103 >hide private</a>]</span></td>
104 </tr>
105 </table>
106 </td>
107</tr>
108<tr>
109 <td width="15%" align="right" valign="top" class="summary">
110 <span class="summary-type">&nbsp;</span>
111 </td><td class="summary">
112 <table width="100%" cellpadding="0" cellspacing="0" border="0">
113 <tr>
114 <td><span class="summary-sig"><a href="apiclient.http.MediaIoBaseUpload-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
115 <span class="summary-sig-arg">fh</span>,
116 <span class="summary-sig-arg">mimetype</span>,
117 <span class="summary-sig-arg">chunksize</span>=<span class="summary-sig-default">524288</span>,
118 <span class="summary-sig-arg">resumable</span>=<span class="summary-sig-default">False</span>)</span><br />
119 Constructor.</td>
120 <td align="right" valign="top">
121 <span class="codelink"><a href="apiclient.http-pysrc.html#MediaIoBaseUpload.__init__">source&nbsp;code</a></span>
122
123 </td>
124 </tr>
125 </table>
126
127 </td>
128 </tr>
129<tr>
130 <td width="15%" align="right" valign="top" class="summary">
131 <span class="summary-type">&nbsp;</span>
132 </td><td class="summary">
133 <table width="100%" cellpadding="0" cellspacing="0" border="0">
134 <tr>
135 <td><span class="summary-sig"><a href="apiclient.http.MediaIoBaseUpload-class.html#chunksize" class="summary-sig-name">chunksize</a>(<span class="summary-sig-arg">self</span>)</span><br />
136 Chunk size for resumable uploads.</td>
137 <td align="right" valign="top">
138 <span class="codelink"><a href="apiclient.http-pysrc.html#MediaIoBaseUpload.chunksize">source&nbsp;code</a></span>
139
140 </td>
141 </tr>
142 </table>
143
144 </td>
145 </tr>
146<tr>
147 <td width="15%" align="right" valign="top" class="summary">
148 <span class="summary-type">&nbsp;</span>
149 </td><td class="summary">
150 <table width="100%" cellpadding="0" cellspacing="0" border="0">
151 <tr>
152 <td><span class="summary-sig"><a href="apiclient.http.MediaIoBaseUpload-class.html#mimetype" class="summary-sig-name">mimetype</a>(<span class="summary-sig-arg">self</span>)</span><br />
153 Mime type of the body.</td>
154 <td align="right" valign="top">
155 <span class="codelink"><a href="apiclient.http-pysrc.html#MediaIoBaseUpload.mimetype">source&nbsp;code</a></span>
156
157 </td>
158 </tr>
159 </table>
160
161 </td>
162 </tr>
163<tr>
164 <td width="15%" align="right" valign="top" class="summary">
165 <span class="summary-type">&nbsp;</span>
166 </td><td class="summary">
167 <table width="100%" cellpadding="0" cellspacing="0" border="0">
168 <tr>
169 <td><span class="summary-sig"><a href="apiclient.http.MediaIoBaseUpload-class.html#size" class="summary-sig-name">size</a>(<span class="summary-sig-arg">self</span>)</span><br />
170 Size of upload.</td>
171 <td align="right" valign="top">
172 <span class="codelink"><a href="apiclient.http-pysrc.html#MediaIoBaseUpload.size">source&nbsp;code</a></span>
173
174 </td>
175 </tr>
176 </table>
177
178 </td>
179 </tr>
180<tr>
181 <td width="15%" align="right" valign="top" class="summary">
182 <span class="summary-type">&nbsp;</span>
183 </td><td class="summary">
184 <table width="100%" cellpadding="0" cellspacing="0" border="0">
185 <tr>
186 <td><span class="summary-sig"><a href="apiclient.http.MediaIoBaseUpload-class.html#resumable" class="summary-sig-name">resumable</a>(<span class="summary-sig-arg">self</span>)</span><br />
187 Whether this upload is resumable.</td>
188 <td align="right" valign="top">
189 <span class="codelink"><a href="apiclient.http-pysrc.html#MediaIoBaseUpload.resumable">source&nbsp;code</a></span>
190
191 </td>
192 </tr>
193 </table>
194
195 </td>
196 </tr>
197<tr>
198 <td width="15%" align="right" valign="top" class="summary">
199 <span class="summary-type">&nbsp;</span>
200 </td><td class="summary">
201 <table width="100%" cellpadding="0" cellspacing="0" border="0">
202 <tr>
203 <td><span class="summary-sig"><a href="apiclient.http.MediaIoBaseUpload-class.html#getbytes" class="summary-sig-name">getbytes</a>(<span class="summary-sig-arg">self</span>,
204 <span class="summary-sig-arg">begin</span>,
205 <span class="summary-sig-arg">length</span>)</span><br />
206 Get bytes from the media.</td>
207 <td align="right" valign="top">
208 <span class="codelink"><a href="apiclient.http-pysrc.html#MediaIoBaseUpload.getbytes">source&nbsp;code</a></span>
209
210 </td>
211 </tr>
212 </table>
213
214 </td>
215 </tr>
216<tr>
217 <td width="15%" align="right" valign="top" class="summary">
218 <span class="summary-type">&nbsp;</span>
219 </td><td class="summary">
220 <table width="100%" cellpadding="0" cellspacing="0" border="0">
221 <tr>
222 <td><span class="summary-sig"><a href="apiclient.http.MediaIoBaseUpload-class.html#to_json" class="summary-sig-name">to_json</a>(<span class="summary-sig-arg">self</span>)</span><br />
223 This upload type is not serializable.</td>
224 <td align="right" valign="top">
225 <span class="codelink"><a href="apiclient.http-pysrc.html#MediaIoBaseUpload.to_json">source&nbsp;code</a></span>
226
227 </td>
228 </tr>
229 </table>
230
231 </td>
232 </tr>
233 <tr>
234 <td colspan="2" class="summary">
235 <div class="private"> <p class="indent-wrapped-lines"><b>Inherited from <code><a href="apiclient.http.MediaUpload-class.html">MediaUpload</a></code></b> (private):
236 <code><a href="apiclient.http.MediaUpload-class.html#_to_json" onclick="show_private();">_to_json</a></code>
237 </p></div>
238 <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
239 <code>__delattr__</code>,
240 <code>__format__</code>,
241 <code>__getattribute__</code>,
242 <code>__hash__</code>,
243 <code>__new__</code>,
244 <code>__reduce__</code>,
245 <code>__reduce_ex__</code>,
246 <code>__repr__</code>,
247 <code>__setattr__</code>,
248 <code>__sizeof__</code>,
249 <code>__str__</code>,
250 <code>__subclasshook__</code>
251 </p>
252 </td>
253 </tr>
254</table>
255<!-- ==================== CLASS METHODS ==================== -->
256<a name="section-ClassMethods"></a>
257<table class="summary" border="1" cellpadding="3"
258 cellspacing="0" width="100%" bgcolor="white">
259<tr bgcolor="#70b0f0" class="table-header">
260 <td colspan="2" class="table-header">
261 <table border="0" cellpadding="0" cellspacing="0" width="100%">
262 <tr valign="top">
263 <td align="left"><span class="table-header">Class Methods</span></td>
264 <td align="right" valign="top"
265 ><span class="options">[<a href="#section-ClassMethods"
266 class="privatelink" onclick="toggle_private();"
267 >hide private</a>]</span></td>
268 </tr>
269 </table>
270 </td>
271</tr>
272 <tr>
273 <td colspan="2" class="summary">
274 <p class="indent-wrapped-lines"><b>Inherited from <code><a href="apiclient.http.MediaUpload-class.html">MediaUpload</a></code></b>:
275 <code><a href="apiclient.http.MediaUpload-class.html#new_from_json">new_from_json</a></code>
276 </p>
277 </td>
278 </tr>
279</table>
280<!-- ==================== PROPERTIES ==================== -->
281<a name="section-Properties"></a>
282<table class="summary" border="1" cellpadding="3"
283 cellspacing="0" width="100%" bgcolor="white">
284<tr bgcolor="#70b0f0" class="table-header">
285 <td colspan="2" class="table-header">
286 <table border="0" cellpadding="0" cellspacing="0" width="100%">
287 <tr valign="top">
288 <td align="left"><span class="table-header">Properties</span></td>
289 <td align="right" valign="top"
290 ><span class="options">[<a href="#section-Properties"
291 class="privatelink" onclick="toggle_private();"
292 >hide private</a>]</span></td>
293 </tr>
294 </table>
295 </td>
296</tr>
297 <tr>
298 <td colspan="2" class="summary">
299 <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
300 <code>__class__</code>
301 </p>
302 </td>
303 </tr>
304</table>
305<!-- ==================== METHOD DETAILS ==================== -->
306<a name="section-MethodDetails"></a>
307<table class="details" border="1" cellpadding="3"
308 cellspacing="0" width="100%" bgcolor="white">
309<tr bgcolor="#70b0f0" class="table-header">
310 <td colspan="2" class="table-header">
311 <table border="0" cellpadding="0" cellspacing="0" width="100%">
312 <tr valign="top">
313 <td align="left"><span class="table-header">Method Details</span></td>
314 <td align="right" valign="top"
315 ><span class="options">[<a href="#section-MethodDetails"
316 class="privatelink" onclick="toggle_private();"
317 >hide private</a>]</span></td>
318 </tr>
319 </table>
320 </td>
321</tr>
322</table>
323<a name="__init__"></a>
324<div>
325<table class="details" border="1" cellpadding="3"
326 cellspacing="0" width="100%" bgcolor="white">
327<tr><td>
328 <table width="100%" cellpadding="0" cellspacing="0" border="0">
329 <tr valign="top"><td>
330 <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
331 <span class="sig-arg">fh</span>,
332 <span class="sig-arg">mimetype</span>,
333 <span class="sig-arg">chunksize</span>=<span class="sig-default">524288</span>,
334 <span class="sig-arg">resumable</span>=<span class="sig-default">False</span>)</span>
335 <br /><em class="fname">(Constructor)</em>
336 </h3>
337 </td><td align="right" valign="top"
338 ><span class="codelink"><a href="apiclient.http-pysrc.html#MediaIoBaseUpload.__init__">source&nbsp;code</a></span>&nbsp;
339 </td>
340 </tr></table>
341
342 <pre class="literalblock">
343Constructor.
344
345Args:
346 fh: io.Base or file object, The source of the bytes to upload.
347 mimetype: string, Mime-type of the file. If None then a mime-type will be
348 guessed from the file extension.
349 chunksize: int, File will be uploaded in chunks of this many bytes. Only
350 used if resumable=True.
351 resumable: bool, True if this is a resumable upload. False means upload
352 in a single request.
353
354</pre>
355 <dl class="fields">
356 <dt>Overrides:
357 object.__init__
358 </dt>
359 </dl>
360</td></tr></table>
361</div>
362<a name="chunksize"></a>
363<div>
364<table class="details" border="1" cellpadding="3"
365 cellspacing="0" width="100%" bgcolor="white">
366<tr><td>
367 <table width="100%" cellpadding="0" cellspacing="0" border="0">
368 <tr valign="top"><td>
369 <h3 class="epydoc"><span class="sig"><span class="sig-name">chunksize</span>(<span class="sig-arg">self</span>)</span>
370 </h3>
371 </td><td align="right" valign="top"
372 ><span class="codelink"><a href="apiclient.http-pysrc.html#MediaIoBaseUpload.chunksize">source&nbsp;code</a></span>&nbsp;
373 </td>
374 </tr></table>
375
376 <pre class="literalblock">
377Chunk size for resumable uploads.
378
379Returns:
380 Chunk size in bytes.
381
382</pre>
383 <dl class="fields">
384 <dt>Overrides:
385 <a href="apiclient.http.MediaUpload-class.html#chunksize">MediaUpload.chunksize</a>
386 </dt>
387 </dl>
388</td></tr></table>
389</div>
390<a name="mimetype"></a>
391<div>
392<table class="details" border="1" cellpadding="3"
393 cellspacing="0" width="100%" bgcolor="white">
394<tr><td>
395 <table width="100%" cellpadding="0" cellspacing="0" border="0">
396 <tr valign="top"><td>
397 <h3 class="epydoc"><span class="sig"><span class="sig-name">mimetype</span>(<span class="sig-arg">self</span>)</span>
398 </h3>
399 </td><td align="right" valign="top"
400 ><span class="codelink"><a href="apiclient.http-pysrc.html#MediaIoBaseUpload.mimetype">source&nbsp;code</a></span>&nbsp;
401 </td>
402 </tr></table>
403
404 <pre class="literalblock">
405Mime type of the body.
406
407Returns:
408 Mime type.
409
410</pre>
411 <dl class="fields">
412 <dt>Overrides:
413 <a href="apiclient.http.MediaUpload-class.html#mimetype">MediaUpload.mimetype</a>
414 </dt>
415 </dl>
416</td></tr></table>
417</div>
418<a name="size"></a>
419<div>
420<table class="details" border="1" cellpadding="3"
421 cellspacing="0" width="100%" bgcolor="white">
422<tr><td>
423 <table width="100%" cellpadding="0" cellspacing="0" border="0">
424 <tr valign="top"><td>
425 <h3 class="epydoc"><span class="sig"><span class="sig-name">size</span>(<span class="sig-arg">self</span>)</span>
426 </h3>
427 </td><td align="right" valign="top"
428 ><span class="codelink"><a href="apiclient.http-pysrc.html#MediaIoBaseUpload.size">source&nbsp;code</a></span>&nbsp;
429 </td>
430 </tr></table>
431
432 <pre class="literalblock">
433Size of upload.
434
435Returns:
436 Size of the body, or None of the size is unknown.
437
438</pre>
439 <dl class="fields">
440 <dt>Overrides:
441 <a href="apiclient.http.MediaUpload-class.html#size">MediaUpload.size</a>
442 </dt>
443 </dl>
444</td></tr></table>
445</div>
446<a name="resumable"></a>
447<div>
448<table class="details" border="1" cellpadding="3"
449 cellspacing="0" width="100%" bgcolor="white">
450<tr><td>
451 <table width="100%" cellpadding="0" cellspacing="0" border="0">
452 <tr valign="top"><td>
453 <h3 class="epydoc"><span class="sig"><span class="sig-name">resumable</span>(<span class="sig-arg">self</span>)</span>
454 </h3>
455 </td><td align="right" valign="top"
456 ><span class="codelink"><a href="apiclient.http-pysrc.html#MediaIoBaseUpload.resumable">source&nbsp;code</a></span>&nbsp;
457 </td>
458 </tr></table>
459
460 <pre class="literalblock">
461Whether this upload is resumable.
462
463Returns:
464 True if resumable upload or False.
465
466</pre>
467 <dl class="fields">
468 <dt>Overrides:
469 <a href="apiclient.http.MediaUpload-class.html#resumable">MediaUpload.resumable</a>
470 </dt>
471 </dl>
472</td></tr></table>
473</div>
474<a name="getbytes"></a>
475<div>
476<table class="details" border="1" cellpadding="3"
477 cellspacing="0" width="100%" bgcolor="white">
478<tr><td>
479 <table width="100%" cellpadding="0" cellspacing="0" border="0">
480 <tr valign="top"><td>
481 <h3 class="epydoc"><span class="sig"><span class="sig-name">getbytes</span>(<span class="sig-arg">self</span>,
482 <span class="sig-arg">begin</span>,
483 <span class="sig-arg">length</span>)</span>
484 </h3>
485 </td><td align="right" valign="top"
486 ><span class="codelink"><a href="apiclient.http-pysrc.html#MediaIoBaseUpload.getbytes">source&nbsp;code</a></span>&nbsp;
487 </td>
488 </tr></table>
489
490 <pre class="literalblock">
491Get bytes from the media.
492
493Args:
494 begin: int, offset from beginning of file.
495 length: int, number of bytes to read, starting at begin.
496
497Returns:
498 A string of bytes read. May be shorted than length if EOF was reached
499 first.
500
501</pre>
502 <dl class="fields">
503 <dt>Overrides:
504 <a href="apiclient.http.MediaUpload-class.html#getbytes">MediaUpload.getbytes</a>
505 </dt>
506 </dl>
507</td></tr></table>
508</div>
509<a name="to_json"></a>
510<div>
511<table class="details" border="1" cellpadding="3"
512 cellspacing="0" width="100%" bgcolor="white">
513<tr><td>
514 <table width="100%" cellpadding="0" cellspacing="0" border="0">
515 <tr valign="top"><td>
516 <h3 class="epydoc"><span class="sig"><span class="sig-name">to_json</span>(<span class="sig-arg">self</span>)</span>
517 </h3>
518 </td><td align="right" valign="top"
519 ><span class="codelink"><a href="apiclient.http-pysrc.html#MediaIoBaseUpload.to_json">source&nbsp;code</a></span>&nbsp;
520 </td>
521 </tr></table>
522
523 <pre class="literalblock">
524This upload type is not serializable.
525
526</pre>
527 <dl class="fields">
528 <dt>Overrides:
529 <a href="apiclient.http.MediaUpload-class.html#to_json">MediaUpload.to_json</a>
530 </dt>
531 </dl>
532</td></tr></table>
533</div>
534<br />
535<!-- ==================== NAVIGATION BAR ==================== -->
536<table class="navbar" border="0" width="100%" cellpadding="0"
537 bgcolor="#a0c0ff" cellspacing="0">
538 <tr valign="middle">
539
540 <!-- Tree link -->
541 <th>&nbsp;&nbsp;&nbsp;<a
542 href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
543
544 <!-- Index link -->
545 <th>&nbsp;&nbsp;&nbsp;<a
546 href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
547
548 <!-- Help link -->
549 <th>&nbsp;&nbsp;&nbsp;<a
550 href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
551
552 <th class="navbar" width="100%"></th>
553 </tr>
554</table>
555<table border="0" cellpadding="0" cellspacing="0" width="100%%">
556 <tr>
557 <td align="left" class="footer">
558 Generated by Epydoc 3.0.1 on Thu Jun 14 08:01:56 2012
559 </td>
560 <td align="right" class="footer">
561 <a target="mainFrame" href="http://epydoc.sourceforge.net"
562 >http://epydoc.sourceforge.net</a>
563 </td>
564 </tr>
565</table>
566
567<script type="text/javascript">
568 <!--
569 // Private objects are initially displayed (because if
570 // javascript is turned off then we want them to be
571 // visible); but by default, we want to hide them. So hide
572 // them unless we have a cookie that says to show them.
573 checkCookie();
574 // -->
575</script>
576</body>
577</html>