1<!DOCTYPE html><!-- This page is a placeholder for generated extensions api doc. Note:
2    1) The <head> information in this page is significant, should be uniform
3       across api docs and should be edited only with knowledge of the
4       templating mechanism.
5    3) All <body>.innerHTML is genereated as an rendering step. If viewed in a
6       browser, it will be re-generated from the template, json schema and
7       authored overview content.
8    4) The <body>.innerHTML is also generated by an offline step so that this
9       page may easily be indexed by search engines.
10--><html xmlns="http://www.w3.org/1999/xhtml"><head>
11    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
12    <link href="css/ApiRefStyles.css" rel="stylesheet" type="text/css">
13    <link href="css/print.css" rel="stylesheet" type="text/css" media="print">
14    <script type="text/javascript" src="/third_party/jstemplate/jstemplate_compiled.js">
15    </script>
16    <script type="text/javascript" src="js/api_page_generator.js"></script>
17    <script type="text/javascript" src="js/bootstrap.js"></script>
18    <script type="text/javascript" src="js/sidebar.js"></script>
19  <title>What's New in Extensions? - Google Chrome Extensions - Google Code</title></head>
20  <body>  <div id="gc-container" class="labs">
21      <div id="devModeWarning">
22        You are viewing extension docs in chrome via the 'file:' scheme: are you expecting to see local changes when you refresh? You'll need run chrome with --allow-file-access-from-files.
23      </div>
24      <!-- SUBTEMPLATES: DO NOT MOVE FROM THIS LOCATION -->
25      <!-- In particular, sub-templates that recurse, must be used by allowing
26           jstemplate to make a copy of the template in this section which
27           are not operated on by way of the jsskip="true" -->
28      <div style="display:none">
29
30        <!-- VALUE -->
31        <div id="valueTemplate">
32          <dt>
33            <var>paramName</var>
34              <em>
35
36                <!-- TYPE -->
37                <div style="display:inline">
38                  (
39                    <span class="optional">optional</span>
40                    <span class="enum">enumerated</span>
41                    <span id="typeTemplate">
42                      <span>
43                        <a> Type</a>
44                      </span>
45                      <span>
46                        <span>
47                          array of <span><span></span></span>
48                        </span>
49                        <span>paramType</span>
50                        <span></span>
51                      </span>
52                    </span>
53                  )
54                </div>
55
56              </em>
57          </dt>
58          <dd class="todo">
59            Undocumented.
60          </dd>
61          <dd>
62            Description of this parameter from the json schema.
63          </dd>
64          <dd>
65            This parameter was added in version
66            <b><span></span></b>.
67            You must omit this parameter in earlier versions,
68            and you may omit it in any version.  If you require this
69            parameter, the manifest key
70            <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a>
71            can ensure that your extension won't be run in an earlier browser version.
72          </dd>
73
74          <!-- OBJECT PROPERTIES -->
75          <dd>
76            <dl>
77              <div>
78                <div>
79                </div>
80              </div>
81            </dl>
82          </dd>
83
84          <!-- OBJECT METHODS -->
85          <dd>
86            <div></div>
87          </dd>
88
89          <!-- OBJECT EVENT FIELDS -->
90          <dd>
91            <div></div>
92          </dd>
93
94          <!-- FUNCTION PARAMETERS -->
95          <dd>
96            <div></div>
97          </dd>
98
99        </div> <!-- /VALUE -->
100
101        <div id="functionParametersTemplate">
102          <h5>Parameters</h5>
103          <dl>
104            <div>
105              <div>
106              </div>
107            </div>
108          </dl>
109        </div>
110      </div> <!-- /SUBTEMPLATES -->
111
112  <a id="top"></a>
113    <div id="skipto">
114      <a href="#gc-pagecontent">Skip to page content</a>
115      <a href="#gc-toc">Skip to main navigation</a>
116    </div>
117    <!-- API HEADER -->
118    <table id="header" width="100%" cellspacing="0" border="0">
119      <tbody><tr>
120        <td valign="middle"><a href="http://code.google.com/"><img src="images/code_labs_logo.gif" height="43" width="161" alt="Google Code Labs" style="border:0; margin:0;"></a></td>
121        <td valign="middle" width="100%" style="padding-left:0.6em;">
122          <form action="http://www.google.com/cse" id="cse" style="margin-top:0.5em">
123            <div id="gsc-search-box">
124              <input type="hidden" name="cx" value="002967670403910741006:61_cvzfqtno">
125              <input type="hidden" name="ie" value="UTF-8">
126              <input type="text" name="q" value="" size="55">
127              <input class="gsc-search-button" type="submit" name="sa" value="Search">
128              <br>
129              <span class="greytext">e.g. "page action" or "tabs"</span>
130            </div>
131          </form>
132
133          <script type="text/javascript" src="http://www.google.com/jsapi"></script>
134          <script type="text/javascript">google.load("elements", "1", {packages: "transliteration"});</script>
135          <script type="text/javascript" src="http://www.google.com/coop/cse/t13n?form=cse&t13n_langs=en"></script>
136          <script type="text/javascript" src="http://www.google.com/coop/cse/brand?form=cse&lang=en"></script>
137        </td>
138      </tr>
139    </tbody></table>
140
141    <div id="codesiteContent" class="">
142
143      <a id="gc-topnav-anchor"></a>
144      <div id="gc-topnav">
145        <h1>Google Chrome Extensions (<a href="http://code.google.com/labs/">Labs</a>)</h1>
146        <ul id="home" class="gc-topnav-tabs">
147          <li id="home_link">
148            <a href="index.html" title="Google Chrome Extensions home page">Home</a>
149          </li>
150          <li id="docs_link">
151            <a href="docs.html" title="Official Google Chrome Extensions documentation">Docs</a>
152          </li>
153          <li id="faq_link">
154            <a href="faq.html" title="Answers to frequently asked questions about Google Chrome Extensions">FAQ</a>
155          </li>
156          <li id="samples_link">
157            <a href="samples.html" title="Sample extensions (with source code)">Samples</a>
158          </li>
159          <li id="group_link">
160            <a href="http://groups.google.com/a/chromium.org/group/chromium-extensions" title="Google Chrome Extensions developer forum">Group</a>
161          </li>
162        </ul>
163      </div> <!-- end gc-topnav -->
164
165    <div class="g-section g-tpl-170">
166      <!-- SIDENAV -->
167      <div class="g-unit g-first" id="gc-toc">
168        <ul>
169          <li><a href="getstarted.html">Getting Started</a></li>
170          <li><a href="overview.html">Overview</a></li>
171          <li class="leftNavSelected">What's New?</li>
172          <li><h2><a href="devguide.html">Developer's Guide</a></h2>
173            <ul>
174              <li>Browser UI
175                <ul>
176                  <li><a href="browserAction.html">Browser Actions</a></li>
177                  <li><a href="contextMenus.html">Context Menus</a></li>
178                  <li><a href="notifications.html">Desktop Notifications</a></li>
179                  <li><a href="omnibox.html">Omnibox</a></li>
180                  <li><a href="options.html">Options Pages</a></li>
181                  <li><a href="override.html">Override Pages</a></li>
182                  <li><a href="pageAction.html">Page Actions</a></li>
183                </ul>
184              </li>
185              <li>Browser Interaction
186                <ul>
187                  <li><a href="bookmarks.html">Bookmarks</a></li>
188                  <li><a href="cookies.html">Cookies</a></li>
189                  <li><a href="events.html">Events</a></li>
190                  <li><a href="history.html">History</a></li>
191                  <li><a href="management.html">Management</a></li>
192                  <li><a href="tabs.html">Tabs</a></li>
193                  <li><a href="windows.html">Windows</a></li>
194                </ul>
195              </li>
196              <li>Implementation
197                <ul>
198                  <li><a href="a11y.html">Accessibility</a></li>
199                  <li><a href="background_pages.html">Background Pages</a></li>
200                  <li><a href="content_scripts.html">Content Scripts</a></li>
201                  <li><a href="xhr.html">Cross-Origin XHR</a></li>
202                  <li><a href="idle.html">Idle</a></li>
203                  <li><a href="i18n.html">Internationalization</a></li>
204                  <li><a href="messaging.html">Message Passing</a></li>
205                  <li><a href="npapi.html">NPAPI Plugins</a></li>
206                </ul>
207              </li>
208              <li>Finishing
209                <ul>
210                  <li><a href="hosting.html">Hosting</a></li>
211                  <li><a href="external_extensions.html">Other Deployment Options</a></li>
212                </ul>
213              </li>
214            </ul>
215          </li>
216          <li><h2><a href="apps.html">Packaged Apps</a></h2></li>
217          <li><h2><a href="tutorials.html">Tutorials</a></h2>
218            <ul>
219              <li><a href="tut_debugging.html">Debugging</a></li>
220              <li><a href="tut_analytics.html">Google Analytics</a></li>
221              <li><a href="tut_oauth.html">OAuth</a></li>
222            </ul>
223          </li>
224          <li><h2>Reference</h2>
225            <ul>
226              <li>Formats
227                <ul>
228                  <li><a href="manifest.html">Manifest Files</a></li>
229                  <li><a href="match_patterns.html">Match Patterns</a></li>
230                </ul>
231              </li>
232              <li><a href="permission_warnings.html">Permission Warnings</a></li>
233              <li><a href="api_index.html">chrome.* APIs</a></li>
234              <li><a href="api_other.html">Other APIs</a></li>
235            </ul>
236          </li>
237          <li><h2><a href="samples.html">Samples</a></h2></li>
238          <div class="line"> </div>
239          <li><h2>More</h2>
240            <ul>
241              <li><a href="http://code.google.com/chrome/webstore/docs/index.html">Chrome Web Store</a></li>
242              <li><a href="http://code.google.com/chrome/apps/docs/developers_guide.html">Hosted Apps</a></li>
243              <li><a href="themes.html">Themes</a></li>
244            </ul>
245          </li>
246        </ul>
247      </div>
248      <script>
249        initToggles();
250      </script>
251
252    <div class="g-unit" id="gc-pagecontent">
253      <div id="pageTitle">
254        <h1 class="page_title">What's New in Extensions?</h1>
255      </div>
256        <!-- TABLE OF CONTENTS -->
257        <div id="toc" style="display: none; ">
258          <h2>Contents</h2>
259          <ol>
260            <li>
261              <a>h2Name</a>
262              <ol>
263                <li>
264                  <a>h3Name</a>
265                </li>
266              </ol>
267            </li>
268              <li>
269                <a href="#apiReference">API reference</a>
270                <ol>
271                  <li>
272                    <a href="#properties">Properties</a>
273                    <ol>
274                      <li>
275                        <a href="#property-anchor">propertyName</a>
276                      </li>
277                    </ol>
278                  </li>
279                  <li>
280                    <a>Methods</a>
281                    <ol>
282                      <li>
283                        <a href="#method-anchor">methodName</a>
284                      </li>
285                    </ol>
286                  </li>
287                  <li>
288                    <a>Events</a>
289                    <ol>
290                      <li>
291                        <a href="#event-anchor">eventName</a>
292                      </li>
293                    </ol>
294                  </li>
295                  <li>
296                    <a href="#types">Types</a>
297                    <ol>
298                      <li>
299                        <a href="#id-anchor">id</a>
300                      </li>
301                    </ol>
302                  </li>
303                </ol>
304              </li>
305          </ol>
306        </div>
307        <!-- /TABLE OF CONTENTS -->
308
309        <!-- Standard content lead-in for experimental API pages -->
310        <p id="classSummary" style="display: none; ">
311          For information on how to use experimental APIs, see the <a href="experimental.html">chrome.experimental.* APIs</a> page.
312        </p>
313
314        <!-- STATIC CONTENT PLACEHOLDER -->
315        <div id="static"><div id="pageData-name" class="pageData">What's New in Extensions?</div>
316<!-- <div id="pageData-showTOC" class="pageData">true</div> -->
317
318<p>
319This page lists the API and manifest changes
320made in recent releases.
321</p>
322
323<ul>
324  <li> <a href="#12">Google Chrome 12</a> </li>
325  <li> <a href="#11">Google Chrome 11</a> </li>
326  <li> <a href="#10">Google Chrome 10</a> </li>
327  <li> <a href="#9">Google Chrome 9</a> </li>
328  <li> <a href="#8">Google Chrome 8</a> </li>
329  <li> <a href="#7">Google Chrome 7</a> </li>
330  <li> <a href="#6">Google Chrome 6</a> </li>
331</ul>
332
333
334<h2 id="12"> Google Chrome 12 </h2>
335
336<h4> Additions to existing APIs </h4>
337  <ul>
338    <li> Two new <code>chrome.extension</code>
339      methodsâ<a href="extension.html#method-isAllowedFileSchemeAccess">isAllowedFileSchemeAccess()</a> and
340      <a href="extension.html#method-isAllowedIncognitoAccess">isAllowedIncognitoAccess()</a>âlet you
341      determine whether your extension has increased access,
342      which the user specifies using the extensions management page
343      (<b>chrome://extensions</b>).
344      </li>
345    <li> The <a href="windows.html#method-create">chrome.windows.create()</a>
346      method can now take a <code>focused</code> value.
347      Previously, all new windows had the keyboard focus;
348      now you can create windows without interrupting the user's typing.
349      </li>
350    <li> If the manifest specifies "experimental" permission,
351      your extension can specify "panel" as the value of
352      the <code>type</code> field in
353      the <a href="windows.html#method-create">chrome.windows.create()</a>
354      method
355      or the <a href="windows.html#type-Window">Window</a> type.
356      </li>
357    <li> The <a href="cookies.html#event-onChanged">onChanged</a>
358      event of <code>chrome.cookies</code>
359      now has a <code>cause</code> parameter. </li>
360    <li> The <code>chrome.contextMenus</code>
361      <a href="contextMenus.html#method-create">create()</a> and
362      <a href="contextMenus.html#method-update">update()</a>
363      methods now let you specify a context value of "frame".
364  </li></ul>
365
366<h2 id="11"> Google Chrome 11 </h2>
367
368<h4> Changes to existing APIs </h4>
369  <ul>
370    <li>
371      For security reasons, you can no longer call
372      <a href="tabs.html#method-captureVisibleTab">chrome.tab.captureVisibleTab()</a>
373      on just any tab.
374      Instead, you now must have
375      <a href="manifest.html#permissions">host permission</a>
376      for the URL displayed by that tab.
377      To get the previous behavior,
378      specify <code>&lt;all_urls&gt;</code> for the host permission.
379    </li>
380  </ul>
381
382<h4> Additions to existing APIs </h4>
383  <ul>
384    <li>
385      The management API's
386      <a href="management.html#type-ExtensionInfo">ExtensionInfo</a> object
387      now has a <code>homepageUrl</code> property.
388    </li>
389    <li> The management API now lets you get the icons of
390      disabled apps and extensions.
391      Also, you can now modify the regular icon's URL
392      to get its disabled equivalent.
393      See <a href="management.html#type-IconInfo">IconInfo</a> for details.
394    </li>
395    <li> The cookies API
396      <a href="cookies.html#method-set">set()</a>
397      and <a href="cookies.html#method-remove">remove()</a> methods
398      can now take callbacks.
399    </li>
400  </ul>
401
402<h2 id="10"> Google Chrome 10 </h2>
403
404<h4> Manifest changes </h4>
405  <ul>
406    <li>The new <a href="manifest.html#bg">background</a> permission
407      extends the life of Chrome,
408      allowing your extension or app
409      to run even when Chrome has no windows open.
410      </li>
411  </ul>
412
413<h4> Additions to existing APIs </h4>
414  <ul>
415    <li> The <a href="windows.html#method-create">chrome.windows.create()</a>
416      method now has a <code>tabId</code> field.
417      You can use it to move a tab or panel into a new window.
418      <p class="note">
419      <b>Note:</b>
420      This change was incorrectly attributed to Chrome 9
421      in previous release notes.
422    </p></li>
423  </ul>
424
425<h2 id="9"> Google Chrome 9 </h2>
426
427<h4> New APIs </h4>
428  <ul>
429    <li>The <a href="omnibox.html">omnibox API</a> allows you to
430      register a keyword with Chrome's address bar. </li>
431  </ul>
432
433<h4> Manifest changes </h4>
434  <ul>
435    <li> The <a href="manifest.html#homepage_url">homepage_url</a> field
436      lets you specify the extension or app's homepage. </li>
437  </ul>
438
439<h4> Additions to existing APIs </h4>
440  <ul>
441    <li> The <a href="tabs.html#type-Tab">Tab</a> object
442      now has a <code>pinned</code> property
443      that's reflected in various <code>chrome.tabs</code> methods.
444      For example,
445      you can <a href="tabs.html#method-create">create</a>
446      a pinned tab. </li>
447    <li> The <a href="windows.html#method-create">chrome.windows.create()</a>
448      method can now take a list of URLs,
449      letting you create multiple tabs in the new window. </li>
450    <li> The new
451      <a href="management.html#method-get">chrome.management.get()</a> method
452      lets you get information about the specified extension or app. </li>
453  </ul>
454
455
456<h2 id="8"> Google Chrome 8 </h2>
457
458<p>
459We took a break for Chrome 8.
460No API or manifest changes worth noting.
461</p>
462
463
464<h2 id="7"> Google Chrome 7 </h2>
465
466<h4> New APIs </h4>
467  <ul>
468    <li> All users can now install
469      <a href="http://code.google.com/chrome/apps/index.html">apps</a>;
470      packaged apps can use extension APIs.
471      </li>
472    <li> The <a href="management.html">management API</a>
473      lets you work with installed apps and extensions.
474      </li>
475  </ul>
476
477<h4> Manifest changes </h4>
478  <ul>
479    <li> Introduced <a href="manifest.html#incognito">split incognito</a>
480      mode as the default for installable web apps
481      (also available to extensions).
482      </li>
483    <li> The <a href="tabs.html">tabs API</a>
484      <code>create()</code> and <code>update()</code> methods
485      no longer require the "tabs" permission, removing one common cause of
486      <a href="permission_warnings.html">scary dialogs</a>.
487      </li>
488  </ul>
489
490
491<h2 id="6">Google Chrome 6</h2>
492
493<h4> New APIs </h4>
494  <ul>
495    <li>The <a href="contextMenus.html">context menus API</a> allows you to
496      add context menus to pages or specific objects on a page. </li>
497    <li>The <a href="cookies.html">cookies API</a> allows you to manage the
498      browser's cookie system.  </li>
499    <li>The <a href="idle.html">idle API</a> allows you to detect when the
500      machine's idle state changes. </li>
501  </ul>
502
503<h4> Additions to existing APIs </h4>
504  <ul>
505    <li>The <a href="extension.html#method-getViews">chrome.extension.getViews()</a>
506      method can now return popup views. </li>
507    <li>A new <a href="windows.html#property-WINDOW_ID_NONE">WINDOW_ID_NONE</a> constant
508      identifies when focus shifts away from the browser. </li>
509    <li>The new <a href="tabs.html#method-getCurrent">chrome.tabs.getCurrent()</a> method
510      returns the tab associated with the currently executing script. </li>
511  </ul>
512
513<h4> Manifest changes </h4>
514  <ul>
515    <li>The <a href="manifest.html#geolocation">geolocation</a> permission
516      gives an extension access to the user's physical location. </li>
517    <li><a href="match_patterns.html">Match patterns</a> can now select all
518      schemes or all URLs. </li>
519    <li>Access to file:/// URLs no longer triggers the "access to your machine"
520      security warning, but now requires user opt-in from the extensions
521      management page. </li>
522  </ul>
523
524</div>
525
526        <!-- API PAGE -->
527        <div class="apiPage" style="display: none; ">
528        <a name="apiReference"></a>
529        <h2>API reference: chrome.apiname </h2>
530
531          <!-- PROPERTIES -->
532          <div class="apiGroup">
533            <a name="properties"></a>
534            <h3 id="properties">Properties</h3>
535
536            <div>
537              <a></a>
538              <h4>getLastError</h4>
539              <div class="summary">
540                <!-- Note: intentionally longer 80 columns -->
541                <span>chrome.extension</span><span>lastError</span>
542              </div>
543              <div>
544              </div>
545            </div>
546
547          </div> <!-- /apiGroup -->
548
549          <!-- METHODS -->
550          <div id="methodsTemplate" class="apiGroup">
551            <a></a>
552            <h3>Methods</h3>
553
554            <!-- iterates over all functions -->
555            <div class="apiItem">
556              <a></a> <!-- method-anchor -->
557              <h4>method name</h4>
558
559              <div class="summary"><span>void</span>
560                  <!-- Note: intentionally longer 80 columns -->
561                  <span>chrome.module.methodName</span>(<span><span>, </span><span></span>
562                      <var><span></span></var></span>)</div>
563
564              <div class="description">
565                <p class="todo">Undocumented.</p>
566                <p>
567                  A description from the json schema def of the function goes here.
568                </p>
569
570                <!-- PARAMETERS -->
571                <h4>Parameters</h4>
572                <dl>
573                  <div>
574                    <div>
575                    </div>
576                  </div>
577                </dl>
578
579                <!-- RETURNS -->
580                <h4>Returns</h4>
581                <dl>
582                  <div>
583                    <div>
584                    </div>
585                  </div>
586                </dl>
587
588                <!-- CALLBACK -->
589                <div>
590                  <div>
591                  <h4>Callback function</h4>
592                  <p>
593                    The callback <em>parameter</em> should specify a function
594                    that looks like this:
595                  </p>
596                  <p>
597                    If you specify the <em>callback</em> parameter, it should
598                    specify a function that looks like this:
599                  </p>
600
601                  <!-- Note: intentionally longer 80 columns -->
602                  <pre>function(<span>Type param1, Type param2</span>) <span class="subdued">{...}</span>;</pre>
603                  <dl>
604                    <div>
605                      <div>
606                      </div>
607                    </div>
608                  </dl>
609                  </div>
610                </div>
611
612                <!-- MIN_VERSION -->
613                <p>
614                  This function was added in version <b><span></span></b>.
615                  If you require this function, the manifest key
616                  <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a>
617                  can ensure that your extension won't be run in an earlier browser version.
618                </p>
619              </div> <!-- /description -->
620
621            </div>  <!-- /apiItem -->
622
623          </div>  <!-- /apiGroup -->
624
625          <!-- EVENTS -->
626          <div id="eventsTemplate" class="apiGroup">
627            <a></a>
628            <h3>Events</h3>
629            <!-- iterates over all events -->
630            <div class="apiItem">
631              <a></a>
632              <h4>event name</h4>
633
634              <div class="summary">
635                <!-- Note: intentionally longer 80 columns -->
636                <span class="subdued">chrome.bookmarks</span><span>onEvent</span><span class="subdued">.addListener</span>(function(<span>Type param1, Type param2</span>) <span class="subdued">{...}</span>);
637              </div>
638
639              <div class="description">
640                <p class="todo">Undocumented.</p>
641                <p>
642                  A description from the json schema def of the event goes here.
643                </p>
644
645                <!-- PARAMETERS -->
646                <div>
647                  <h4>Parameters</h4>
648                  <dl>
649                    <div>
650                      <div>
651                      </div>
652                    </div>
653                  </dl>
654                </div>
655              </div> <!-- /decription -->
656
657            </div> <!-- /apiItem -->
658
659          </div> <!-- /apiGroup -->
660
661          <!-- TYPES -->
662          <div class="apiGroup">
663            <a name="types"></a>
664            <h3 id="types">Types</h3>
665
666            <!-- iterates over all types -->
667            <div class="apiItem">
668              <a></a>
669              <h4>type name</h4>
670
671              <div>
672              </div>
673
674            </div> <!-- /apiItem -->
675
676          </div> <!-- /apiGroup -->
677
678        </div> <!-- /apiPage -->
679      </div> <!-- /gc-pagecontent -->
680    </div> <!-- /g-section -->
681  </div> <!-- /codesiteContent -->
682    <div id="gc-footer" --="">
683      <div class="text">
684  <p>
685  Except as otherwise <a href="http://code.google.com/policies.html#restrictions">noted</a>,
686  the content of this page is licensed under the <a rel="license" href="http://creativecommons.org/licenses/by/3.0/">Creative Commons
687  Attribution 3.0 License</a>, and code samples are licensed under the
688  <a rel="license" href="http://code.google.com/google_bsd_license.html">BSD License</a>.
689  </p>
690  <p>
691  ©2011 Google
692  </p>
693
694<!-- begin analytics -->
695<script src="http://www.google-analytics.com/urchin.js" type="text/javascript"></script>
696<script src="http://www.google-analytics.com/ga.js" type="text/javascript"></script>
697
698<script type="text/javascript">
699  // chrome doc tracking
700  try {
701    var engdocs = _gat._getTracker("YT-10763712-2");
702    engdocs._trackPageview();
703  } catch(err) {}
704
705  // code.google.com site-wide tracking
706  try {
707    _uacct="UA-18071-1";
708    _uanchor=1;
709    _uff=0;
710    urchinTracker();
711  }
712  catch(e) {/* urchinTracker not available. */}
713</script>
714<!-- end analytics -->
715      </div>
716    </div> <!-- /gc-footer -->
717  </div> <!-- /gc-container -->
718</body></html>
719