www/info/about.jsp

Code
Comments
Other
Rev Date Author Line
1383 27 Sep 05 nicklas 1 <%-- $Id$
2091 18 Mar 06 jari 2
1383 27 Sep 05 nicklas 3   ------------------------------------------------------------------
1383 27 Sep 05 nicklas 4
3675 16 Aug 07 jari 5   Copyright (C) 2005 Nicklas Nordborg
5425 23 Sep 10 nicklas 6   Copyright (C) 2006 Johan Enell, Jari Häkkinen, Nicklas Nordborg
3675 16 Aug 07 jari 7   Copyright (C) 2007 Johan Enell, Nicklas Nordborg
3501 15 Jun 07 enell 8
2091 18 Mar 06 jari 9   This file is part of BASE - BioArray Software Environment.
2091 18 Mar 06 jari 10   Available at http://base.thep.lu.se/
1383 27 Sep 05 nicklas 11
1383 27 Sep 05 nicklas 12   BASE is free software; you can redistribute it and/or
1383 27 Sep 05 nicklas 13   modify it under the terms of the GNU General Public License
4476 05 Sep 08 jari 14   as published by the Free Software Foundation; either version 3
1383 27 Sep 05 nicklas 15   of the License, or (at your option) any later version.
1383 27 Sep 05 nicklas 16
1383 27 Sep 05 nicklas 17   BASE is distributed in the hope that it will be useful,
1383 27 Sep 05 nicklas 18   but WITHOUT ANY WARRANTY; without even the implied warranty of
1383 27 Sep 05 nicklas 19   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
1383 27 Sep 05 nicklas 20   GNU General Public License for more details.
1383 27 Sep 05 nicklas 21
1383 27 Sep 05 nicklas 22   You should have received a copy of the GNU General Public License
4510 11 Sep 08 jari 23   along with BASE. If not, see <http://www.gnu.org/licenses/>.
1383 27 Sep 05 nicklas 24   ------------------------------------------------------------------
1383 27 Sep 05 nicklas 25
1383 27 Sep 05 nicklas 26   This page displays a short notice at the bottom of the
1383 27 Sep 05 nicklas 27   screen.
1383 27 Sep 05 nicklas 28
1383 27 Sep 05 nicklas 29   @author Nicklas
1383 27 Sep 05 nicklas 30   @version 2.0
1383 27 Sep 05 nicklas 31 --%>
5426 24 Sep 10 nicklas 32 <%@ page pageEncoding="UTF-8" session="false"
1383 27 Sep 05 nicklas 33   import="net.sf.basedb.core.SessionControl"
1383 27 Sep 05 nicklas 34   import="net.sf.basedb.core.Application"
1466 14 Oct 05 nicklas 35   import="net.sf.basedb.core.Config"
1383 27 Sep 05 nicklas 36   import="net.sf.basedb.clients.web.Base"
2753 20 Oct 06 nicklas 37   import="net.sf.basedb.util.Values"
2600 28 Aug 06 nicklas 38   import="java.sql.Driver"
7534 27 Nov 18 nicklas 39   import="java.sql.DriverManager"
2600 28 Aug 06 nicklas 40   import="java.util.Properties"
6684 14 Jan 15 nicklas 41   import="java.util.List"
6684 14 Jan 15 nicklas 42   import="java.lang.management.ManagementFactory"
6684 14 Jan 15 nicklas 43   import="java.lang.management.MemoryPoolMXBean"
6684 14 Jan 15 nicklas 44   import="java.lang.management.MemoryType"
6684 14 Jan 15 nicklas 45   import="java.lang.management.MemoryUsage"
1383 27 Sep 05 nicklas 46 %>
1383 27 Sep 05 nicklas 47 <%@ taglib prefix="base" uri="/WEB-INF/base.tld" %>
1383 27 Sep 05 nicklas 48 <%@ taglib prefix="t" uri="/WEB-INF/tab.tld" %>
1383 27 Sep 05 nicklas 49
1383 27 Sep 05 nicklas 50 <%
1383 27 Sep 05 nicklas 51 final SessionControl sc = Base.getSessionControl(pageContext, true);
1383 27 Sep 05 nicklas 52 final String ID = sc.getId();
1383 27 Sep 05 nicklas 53 final String serverAdminName = Values.getStringOrNull(sc.getClientDefaultSetting("server.admin.name"));
1383 27 Sep 05 nicklas 54 final String serverAdminEmail = Values.getStringOrNull(sc.getClientDefaultSetting("server.admin.email"));
1383 27 Sep 05 nicklas 55 final String aboutServer = Values.getStringOrNull(sc.getClientDefaultSetting("server.about"));
1383 27 Sep 05 nicklas 56 final float scale = Base.getScale(sc);
1383 27 Sep 05 nicklas 57 final String activePage = request.getParameter("page");
2600 28 Aug 06 nicklas 58
7534 27 Nov 18 nicklas 59 final String dbUrl = Config.getString("db.url");
7534 27 Nov 18 nicklas 60 String driverName = "unknown";
2600 28 Aug 06 nicklas 61 String driverVersion = "";
2600 28 Aug 06 nicklas 62 try
2600 28 Aug 06 nicklas 63 {
7534 27 Nov 18 nicklas 64   final Driver driver = DriverManager.getDriver(dbUrl);
7534 27 Nov 18 nicklas 65   driverName = driver.getClass().getName();
2600 28 Aug 06 nicklas 66   driverVersion = "(version " + driver.getMajorVersion() + "." + driver.getMinorVersion() + ")";
2600 28 Aug 06 nicklas 67 }
2600 28 Aug 06 nicklas 68 catch (Throwable t)
2600 28 Aug 06 nicklas 69 {}
2600 28 Aug 06 nicklas 70
2600 28 Aug 06 nicklas 71 final Properties properties = System.getProperties();
2600 28 Aug 06 nicklas 72 final Runtime runtime = Runtime.getRuntime();
6684 14 Jan 15 nicklas 73 List<MemoryPoolMXBean> beans = ManagementFactory.getMemoryPoolMXBeans();
1383 27 Sep 05 nicklas 74 %>
1383 27 Sep 05 nicklas 75 <base:page type="popup" title="About">
6684 14 Jan 15 nicklas 76 <base:head scripts="tabcontrol-2.js,~info.js" styles="tabcontrol.css">
6684 14 Jan 15 nicklas 77 <style>
6684 14 Jan 15 nicklas 78 #memoryTable th, #memoryTable td
6684 14 Jan 15 nicklas 79 {
6684 14 Jan 15 nicklas 80   text-align: right;
6684 14 Jan 15 nicklas 81   padding-left: 1em;
6684 14 Jan 15 nicklas 82   padding-right: 1.5em;
6684 14 Jan 15 nicklas 83 }
6684 14 Jan 15 nicklas 84
6684 14 Jan 15 nicklas 85 .memory-warning
6684 14 Jan 15 nicklas 86 {
6684 14 Jan 15 nicklas 87   color: #C80000;
6684 14 Jan 15 nicklas 88   font-weight: bold;
6684 14 Jan 15 nicklas 89   background-image: url('../images/warning_small.png');
6684 14 Jan 15 nicklas 90   background-repeat: no-repeat;
6684 14 Jan 15 nicklas 91   background-position: 100% 50%;
6684 14 Jan 15 nicklas 92 }
6684 14 Jan 15 nicklas 93 </style>
6684 14 Jan 15 nicklas 94 </base:head>
6520 18 Aug 14 nicklas 95 <base:body data-read-only="1">
5907 13 Dec 11 nicklas 96   <h1>BASE - BioArray Software Environment</h1>
5907 13 Dec 11 nicklas 97   
5907 13 Dec 11 nicklas 98   <t:tabcontrol subclass="content dialogtabcontrol" 
6177 22 Oct 12 nicklas 99     active="<%=activePage%>" id="about" position="bottom" remember="<%=activePage == null %>">
1383 27 Sep 05 nicklas 100   <t:tab id="about" title="About">
6610 20 Nov 14 nicklas 101     <div class="padded bg-filled-50 absolutefull">
1383 27 Sep 05 nicklas 102     <%=Values.getString(aboutServer, "")%>
1383 27 Sep 05 nicklas 103     <p>
1383 27 Sep 05 nicklas 104     <b>Administrator:</b> <%=Values.getString(serverAdminName, "<i>- unknown -</i>")%><br>
1383 27 Sep 05 nicklas 105     <b>Email:</b> <%=serverAdminEmail == null ? "<i>- unknown -</i>": "<a href=\"mailto:"+serverAdminEmail+"\">"+serverAdminEmail+"</a>"%><br>
2992 01 Dec 06 enell 106     <b>Version:</b> <%=Application.getVersionString()%><br>
1383 27 Sep 05 nicklas 107     <br>
5907 13 Dec 11 nicklas 108     <div style="font-size: 85%;">
5441 05 Oct 10 jari 109       &copy; 2005, 2006, 2007, 2008, 2009, 2010 The BASE team <br/> See
4483 07 Sep 08 jari 110       <a href=http://base.thep.lu.se/browser/trunk/credits.txt>BASE
4483 07 Sep 08 jari 111       version 2  credits</a> for contribution information.
3501 15 Jun 07 enell 112
3501 15 Jun 07 enell 113       <p> BASE is released under the
6139 19 Sep 12 nicklas 114       <a target="_blank" href="http://www.gnu.org/copyleft/gpl.html">GNU
3501 15 Jun 07 enell 115       General Public License</a>. The development of BASE is supported
3501 15 Jun 07 enell 116       by
6139 19 Sep 12 nicklas 117       <a target="_blank" href="http://www.lu.se/">Lund University</a>
3501 15 Jun 07 enell 118       through SCIBLU. Previous patrons of the BASE project were the
6139 19 Sep 12 nicklas 119       <a target="_blank" href="http://www.wallenberg.org/kaw/">Knut and Alice
3501 15 Jun 07 enell 120       Wallenberg Foundation</a> and the
6139 19 Sep 12 nicklas 121       <a target="_blank" href="http://www.cancerfonden.se/">Swedish Cancer
3501 15 Jun 07 enell 122       Society</a>. </p>
5907 13 Dec 11 nicklas 123     </div>
5907 13 Dec 11 nicklas 124     </div>
1383 27 Sep 05 nicklas 125   </t:tab>
1466 14 Oct 05 nicklas 126   
1466 14 Oct 05 nicklas 127   <t:tab id="config" title="Configuration">
1466 14 Oct 05 nicklas 128   
5907 13 Dec 11 nicklas 129   <table class="fullform">
1466 14 Oct 05 nicklas 130   <tr>
5907 13 Dec 11 nicklas 131     <th>Version</th>
2992 01 Dec 06 enell 132     <td class="info"><%=Application.getVersionString()%></td>
1466 14 Oct 05 nicklas 133   </tr>
1466 14 Oct 05 nicklas 134   <tr>
5907 13 Dec 11 nicklas 135     <th>Web server</th>
2600 28 Aug 06 nicklas 136     <td class="info"><%=application.getServerInfo()%></td>
1466 14 Oct 05 nicklas 137   </tr>
1466 14 Oct 05 nicklas 138   <tr>
5907 13 Dec 11 nicklas 139     <th>Database Server</th>
3501 15 Jun 07 enell 140     <td class="info"><%=Application.getDatabaseVersionString()%></td>
3501 15 Jun 07 enell 141   </tr>
3501 15 Jun 07 enell 142   <tr>
7998 10 Aug 21 nicklas 143     <th>JDBC Driver</th>
7998 10 Aug 21 nicklas 144     <td class="info"><%=driverName%> <%=driverVersion%></td>
7998 10 Aug 21 nicklas 145   </tr>
7998 10 Aug 21 nicklas 146   <tr>
7998 10 Aug 21 nicklas 147     <th>Hibernate version</th>
7998 10 Aug 21 nicklas 148     <td class="info"><%=org.hibernate.Version.getVersionString()%></td>
7998 10 Aug 21 nicklas 149   </tr>
7998 10 Aug 21 nicklas 150   <tr>
5907 13 Dec 11 nicklas 151     <th>Database Dialect</th>
2600 28 Aug 06 nicklas 152     <td class="info"><%=Config.getString("db.dialect")%></td>
1466 14 Oct 05 nicklas 153   </tr>
1466 14 Oct 05 nicklas 154   <tr>
5907 13 Dec 11 nicklas 155     <th>Java runtime</th>
2600 28 Aug 06 nicklas 156     <td class="info"><%=properties.getProperty("java.runtime.name")%> 
2600 28 Aug 06 nicklas 157       (<%=properties.getProperty("java.runtime.version")%>), 
6139 19 Sep 12 nicklas 158       <a href="<%=properties.getProperty("java.vendor.url")%>" target="_blank"><%=properties.getProperty("java.vendor")%></a></td>
2600 28 Aug 06 nicklas 159   </tr>
2600 28 Aug 06 nicklas 160   <tr>
5907 13 Dec 11 nicklas 161     <th>Operating system</th>
2600 28 Aug 06 nicklas 162     <td class="info"><%=properties.getProperty("os.name")%> 
2600 28 Aug 06 nicklas 163       <%=properties.getProperty("os.arch")%>
2600 28 Aug 06 nicklas 164       <%=properties.getProperty("os.version")%>
2600 28 Aug 06 nicklas 165       </td>
2600 28 Aug 06 nicklas 166   </tr>
6684 14 Jan 15 nicklas 167   <tr class="dynamic">
5907 13 Dec 11 nicklas 168     <th>Memory</th>
6684 14 Jan 15 nicklas 169     <td class="info">
6684 14 Jan 15 nicklas 170       
6684 14 Jan 15 nicklas 171       <table id="memoryTable" style="xwidth:100%;">
6684 14 Jan 15 nicklas 172       <tr style="border-bottom-width: 1px;">
6684 14 Jan 15 nicklas 173         <th></th>
6684 14 Jan 15 nicklas 174         <th>Used</th>
6684 14 Jan 15 nicklas 175         <th>Max</th>
6684 14 Jan 15 nicklas 176         <th></th>
6684 14 Jan 15 nicklas 177       </tr>
6684 14 Jan 15 nicklas 178       <%
6684 14 Jan 15 nicklas 179       for (MemoryType mtype : MemoryType.values())
6684 14 Jan 15 nicklas 180       {
6762 09 Mar 15 nicklas 181         long sumUsed =  0;
6684 14 Jan 15 nicklas 182         long sumMax = 0;
6684 14 Jan 15 nicklas 183         for (MemoryPoolMXBean mbean : beans) 
6684 14 Jan 15 nicklas 184         {
6684 14 Jan 15 nicklas 185           if (mbean.getType() == mtype)
6684 14 Jan 15 nicklas 186           {
6684 14 Jan 15 nicklas 187             MemoryUsage usage = mbean.getUsage();
6762 09 Mar 15 nicklas 188             long used = usage.getUsed();
6762 09 Mar 15 nicklas 189             long max = usage.getMax();
6762 09 Mar 15 nicklas 190             long percent = -1;
6762 09 Mar 15 nicklas 191             if (max > 0)
6762 09 Mar 15 nicklas 192             {
6762 09 Mar 15 nicklas 193               sumMax += max;
6762 09 Mar 15 nicklas 194               sumUsed += used;
6762 09 Mar 15 nicklas 195               percent = 100*used/max;
6762 09 Mar 15 nicklas 196             }
6684 14 Jan 15 nicklas 197             %>
6684 14 Jan 15 nicklas 198             <tr>
6762 09 Mar 15 nicklas 199             <td><%=mbean.getName() %><%=max <= 0 ? "¹" : ""%></td>
6762 09 Mar 15 nicklas 200             <td><%=Values.formatBytes(used) %></td>
6762 09 Mar 15 nicklas 201             <td><%=max > 0 ? Values.formatBytes(max) : "no limit"%></td>
6762 09 Mar 15 nicklas 202             <td class="<%=percent > 75 ? "memory-warning" : "" %>"><%=percent == -1 ? "-" : percent + "%" %></td>
6684 14 Jan 15 nicklas 203             </tr>
6684 14 Jan 15 nicklas 204           <%
6684 14 Jan 15 nicklas 205           }
6684 14 Jan 15 nicklas 206         }
6684 14 Jan 15 nicklas 207         %>
6684 14 Jan 15 nicklas 208         <tr style="border-bottom-width: 1px; font-weight: bold;">
6684 14 Jan 15 nicklas 209           <td>Sum <%=mtype.toString() %></td>
6684 14 Jan 15 nicklas 210           <td><%=Values.formatBytes(sumUsed) %></td>
6684 14 Jan 15 nicklas 211           <td><%=Values.formatBytes(sumMax) %></td>
6684 14 Jan 15 nicklas 212           <td><%=100*sumUsed / sumMax %>%</td>
6684 14 Jan 15 nicklas 213         </tr>
6684 14 Jan 15 nicklas 214         <%
6684 14 Jan 15 nicklas 215       }
6684 14 Jan 15 nicklas 216       %>
6684 14 Jan 15 nicklas 217       </table>
6762 09 Mar 15 nicklas 218       ¹Not included in sum
2600 28 Aug 06 nicklas 219   </tr>
1466 14 Oct 05 nicklas 220   </table>
1466 14 Oct 05 nicklas 221   </t:tab>
1466 14 Oct 05 nicklas 222   
1383 27 Sep 05 nicklas 223   <t:tab id="license" title="License">
6610 20 Nov 14 nicklas 224     <div style="background: #FFFFFF; color: #000000; padding: 5px;">
4510 11 Sep 08 jari 225 <h3 style="text-align: center;">GNU GENERAL PUBLIC LICENSE</h3>
1383 27 Sep 05 nicklas 226
4510 11 Sep 08 jari 227 <p style="text-align: center;">Version 3, 29 June 2007</p>
1383 27 Sep 05 nicklas 228
4510 11 Sep 08 jari 229 <p>Copyright &copy; 2007 Free Software Foundation,
4510 11 Sep 08 jari 230 Inc. &lt;http://fsf.org/&gt;</p>
1383 27 Sep 05 nicklas 231
4510 11 Sep 08 jari 232 <p>Everyone is permitted to copy and distribute verbatim copies of
4510 11 Sep 08 jari 233 this license document, but changing it is not allowed.</p>
1383 27 Sep 05 nicklas 234
4510 11 Sep 08 jari 235 <h3><a name="preamble"></a>Preamble</h3>
1383 27 Sep 05 nicklas 236
4510 11 Sep 08 jari 237 <p>The GNU General Public License is a free, copyleft license for
4510 11 Sep 08 jari 238 software and other kinds of works.</p>
4510 11 Sep 08 jari 239
4510 11 Sep 08 jari 240 <p>The licenses for most software and other practical works are
4510 11 Sep 08 jari 241 designed to take away your freedom to share and change the works.  By
4510 11 Sep 08 jari 242 contrast, the GNU General Public License is intended to guarantee your
4510 11 Sep 08 jari 243 freedom to share and change all versions of a program--to make sure it
4510 11 Sep 08 jari 244 remains free software for all its users.  We, the Free Software
4510 11 Sep 08 jari 245 Foundation, use the GNU General Public License for most of our
4510 11 Sep 08 jari 246 software; it applies also to any other work released this way by its
4510 11 Sep 08 jari 247 authors.  You can apply it to your programs, too.</p>
4510 11 Sep 08 jari 248
4510 11 Sep 08 jari 249 <p>When we speak of free software, we are referring to freedom, not
1383 27 Sep 05 nicklas 250 price.  Our General Public Licenses are designed to make sure that you
1383 27 Sep 05 nicklas 251 have the freedom to distribute copies of free software (and charge for
4510 11 Sep 08 jari 252 them if you wish), that you receive source code or can get it if you
4510 11 Sep 08 jari 253 want it, that you can change the software or use pieces of it in new
4510 11 Sep 08 jari 254 free programs, and that you know you can do these things.</p>
1383 27 Sep 05 nicklas 255
4510 11 Sep 08 jari 256 <p>To protect your rights, we need to prevent others from denying you
4510 11 Sep 08 jari 257 these rights or asking you to surrender the rights.  Therefore, you
4510 11 Sep 08 jari 258 have certain responsibilities if you distribute copies of the
4510 11 Sep 08 jari 259 software, or if you modify it: responsibilities to respect the freedom
4510 11 Sep 08 jari 260 of others.</p>
1383 27 Sep 05 nicklas 261
4510 11 Sep 08 jari 262 <p>For example, if you distribute copies of such a program, whether
4510 11 Sep 08 jari 263 gratis or for a fee, you must pass on to the recipients the same
4510 11 Sep 08 jari 264 freedoms that you received.  You must make sure that they, too,
4510 11 Sep 08 jari 265 receive or can get the source code.  And you must show them these
4510 11 Sep 08 jari 266 terms so they know their rights.</p>
1383 27 Sep 05 nicklas 267
4510 11 Sep 08 jari 268 <p>Developers that use the GNU GPL protect your rights with two steps:
4510 11 Sep 08 jari 269 (1) assert copyright on the software, and (2) offer you this License
4510 11 Sep 08 jari 270 giving you legal permission to copy, distribute and/or modify it.</p>
1383 27 Sep 05 nicklas 271
4510 11 Sep 08 jari 272 <p>For the developers' and authors' protection, the GPL clearly
4510 11 Sep 08 jari 273 explains that there is no warranty for this free software.  For both
4510 11 Sep 08 jari 274 users' and authors' sake, the GPL requires that modified versions be
4510 11 Sep 08 jari 275 marked as changed, so that their problems will not be attributed
4510 11 Sep 08 jari 276 erroneously to authors of previous versions.</p>
1383 27 Sep 05 nicklas 277
4510 11 Sep 08 jari 278 <p>Some devices are designed to deny users access to install or run
4510 11 Sep 08 jari 279 modified versions of the software inside them, although the
4510 11 Sep 08 jari 280 manufacturer can do so.  This is fundamentally incompatible with the
4510 11 Sep 08 jari 281 aim of protecting users' freedom to change the software.  The
4510 11 Sep 08 jari 282 systematic pattern of such abuse occurs in the area of products for
4510 11 Sep 08 jari 283 individuals to use, which is precisely where it is most unacceptable.
4510 11 Sep 08 jari 284 Therefore, we have designed this version of the GPL to prohibit the
4510 11 Sep 08 jari 285 practice for those products.  If such problems arise substantially in
4510 11 Sep 08 jari 286 other domains, we stand ready to extend this provision to those
4510 11 Sep 08 jari 287 domains in future versions of the GPL, as needed to protect the
4510 11 Sep 08 jari 288 freedom of users.</p>
4510 11 Sep 08 jari 289
4510 11 Sep 08 jari 290 <p>Finally, every program is threatened constantly by software
4510 11 Sep 08 jari 291 patents.  States should not allow patents to restrict development and
4510 11 Sep 08 jari 292 use of software on general-purpose computers, but in those that do, we
4510 11 Sep 08 jari 293 wish to avoid the special danger that patents applied to a free
4510 11 Sep 08 jari 294 program could make it effectively proprietary.  To prevent this, the
4510 11 Sep 08 jari 295 GPL assures that patents cannot be used to render the program
4510 11 Sep 08 jari 296 non-free.</p>
4510 11 Sep 08 jari 297
4510 11 Sep 08 jari 298 <p>The precise terms and conditions for copying, distribution and
1383 27 Sep 05 nicklas 299 modification follow.</p>
1383 27 Sep 05 nicklas 300
4510 11 Sep 08 jari 301 <h3><a name="terms"></a>TERMS AND CONDITIONS</h3>
1383 27 Sep 05 nicklas 302
4510 11 Sep 08 jari 303 <h4><a name="section0"></a>0. Definitions.</h4>
1383 27 Sep 05 nicklas 304
4510 11 Sep 08 jari 305 <p>&ldquo;This License&rdquo; refers to version 3 of the GNU General
4510 11 Sep 08 jari 306 Public License.</p>
1383 27 Sep 05 nicklas 307
4510 11 Sep 08 jari 308 <p>&ldquo;Copyright&rdquo; also means copyright-like laws that apply
4510 11 Sep 08 jari 309 to other kinds of works, such as semiconductor masks.</p>
4510 11 Sep 08 jari 310  
1383 27 Sep 05 nicklas 311
4510 11 Sep 08 jari 312 <p>&ldquo;The Program&rdquo; refers to any copyrightable work licensed
4510 11 Sep 08 jari 313 under this License.  Each licensee is addressed as &ldquo;you&rdquo;.
4510 11 Sep 08 jari 314 &ldquo;Licensees&rdquo; and &ldquo;recipients&rdquo; may be
4510 11 Sep 08 jari 315 individuals or organizations.</p>
1383 27 Sep 05 nicklas 316
4510 11 Sep 08 jari 317 <p>To &ldquo;modify&rdquo; a work means to copy from or adapt all or
4510 11 Sep 08 jari 318 part of the work in a fashion requiring copyright permission, other
4510 11 Sep 08 jari 319 than the making of an exact copy.  The resulting work is called a
4510 11 Sep 08 jari 320 &ldquo;modified version&rdquo; of the earlier work or a work
4510 11 Sep 08 jari 321 &ldquo;based on&rdquo; the earlier work.</p>
1383 27 Sep 05 nicklas 322
4510 11 Sep 08 jari 323 <p>A &ldquo;covered work&rdquo; means either the unmodified Program or
4510 11 Sep 08 jari 324 a work based on the Program.</p>
1383 27 Sep 05 nicklas 325
4510 11 Sep 08 jari 326 <p>To &ldquo;propagate&rdquo; a work means to do anything with it
4510 11 Sep 08 jari 327 that, without permission, would make you directly or secondarily
4510 11 Sep 08 jari 328 liable for infringement under applicable copyright law, except
4510 11 Sep 08 jari 329 executing it on a computer or modifying a private copy.  Propagation
4510 11 Sep 08 jari 330 includes copying, distribution (with or without modification), making
4510 11 Sep 08 jari 331 available to the public, and in some countries other activities as
4510 11 Sep 08 jari 332 well.</p>
1383 27 Sep 05 nicklas 333
4510 11 Sep 08 jari 334 <p>To &ldquo;convey&rdquo; a work means any kind of propagation that
4510 11 Sep 08 jari 335 enables other parties to make or receive copies.  Mere interaction
4510 11 Sep 08 jari 336 with a user through a computer network, with no transfer of a copy, is
4510 11 Sep 08 jari 337 not conveying.</p>
1383 27 Sep 05 nicklas 338
4510 11 Sep 08 jari 339 <p>An interactive user interface displays &ldquo;Appropriate Legal
4510 11 Sep 08 jari 340 Notices&rdquo; to the extent that it includes a convenient and
4510 11 Sep 08 jari 341 prominently visible feature that (1) displays an appropriate copyright
4510 11 Sep 08 jari 342 notice, and (2) tells the user that there is no warranty for the work
4510 11 Sep 08 jari 343 (except to the extent that warranties are provided), that licensees
4510 11 Sep 08 jari 344 may convey the work under this License, and how to view a copy of this
4510 11 Sep 08 jari 345 License.  If the interface presents a list of user commands or
4510 11 Sep 08 jari 346 options, such as a menu, a prominent item in the list meets this
4510 11 Sep 08 jari 347 criterion.</p>
1383 27 Sep 05 nicklas 348
4510 11 Sep 08 jari 349 <h4><a name="section1"></a>1. Source Code.</h4>
1383 27 Sep 05 nicklas 350
4510 11 Sep 08 jari 351 <p>The &ldquo;source code&rdquo; for a work means the preferred form
4510 11 Sep 08 jari 352 of the work for making modifications to it.  &ldquo;Object code&rdquo;
4510 11 Sep 08 jari 353 means any non-source form of a work.</p>
1383 27 Sep 05 nicklas 354
4510 11 Sep 08 jari 355 <p>A &ldquo;Standard Interface&rdquo; means an interface that either
4510 11 Sep 08 jari 356 is an official standard defined by a recognized standards body, or, in
4510 11 Sep 08 jari 357 the case of interfaces specified for a particular programming
4510 11 Sep 08 jari 358 language, one that is widely used among developers working in that
4510 11 Sep 08 jari 359 language.</p>
1383 27 Sep 05 nicklas 360
4510 11 Sep 08 jari 361 <p>The &ldquo;System Libraries&rdquo; of an executable work include
4510 11 Sep 08 jari 362 anything, other than the work as a whole, that (a) is included in the
4510 11 Sep 08 jari 363 normal form of packaging a Major Component, but which is not part of
4510 11 Sep 08 jari 364 that Major Component, and (b) serves only to enable use of the work
4510 11 Sep 08 jari 365 with that Major Component, or to implement a Standard Interface for
4510 11 Sep 08 jari 366 which an implementation is available to the public in source code
4510 11 Sep 08 jari 367 form.  A &ldquo;Major Component&rdquo;, in this context, means a major
4510 11 Sep 08 jari 368 essential component (kernel, window system, and so on) of the specific
4510 11 Sep 08 jari 369 operating system (if any) on which the executable work runs, or a
4510 11 Sep 08 jari 370 compiler used to produce the work, or an object code interpreter used
4510 11 Sep 08 jari 371 to run it.</p>
1383 27 Sep 05 nicklas 372
4510 11 Sep 08 jari 373 <p>The &ldquo;Corresponding Source&rdquo; for a work in object code
4510 11 Sep 08 jari 374 form means all the source code needed to generate, install, and (for
4510 11 Sep 08 jari 375 an executable work) run the object code and to modify the work,
4510 11 Sep 08 jari 376 including scripts to control those activities.  However, it does not
4510 11 Sep 08 jari 377 include the work's System Libraries, or general-purpose tools or
4510 11 Sep 08 jari 378 generally available free programs which are used unmodified in
4510 11 Sep 08 jari 379 performing those activities but which are not part of the work.  For
4510 11 Sep 08 jari 380 example, Corresponding Source includes interface definition files
4510 11 Sep 08 jari 381 associated with source files for the work, and the source code for
4510 11 Sep 08 jari 382 shared libraries and dynamically linked subprograms that the work is
4510 11 Sep 08 jari 383 specifically designed to require, such as by intimate data
4510 11 Sep 08 jari 384 communication or control flow between those subprograms and other
4510 11 Sep 08 jari 385 parts of the work.</p>
1383 27 Sep 05 nicklas 386
4510 11 Sep 08 jari 387 <p>The Corresponding Source need not include anything that users can
4510 11 Sep 08 jari 388 regenerate automatically from other parts of the Corresponding
4510 11 Sep 08 jari 389 Source.</p>
1383 27 Sep 05 nicklas 390
4510 11 Sep 08 jari 391 <p>The Corresponding Source for a work in source code form is that
4510 11 Sep 08 jari 392 same work.</p>
1383 27 Sep 05 nicklas 393
4510 11 Sep 08 jari 394 <h4><a name="section2"></a>2. Basic Permissions.</h4>
1383 27 Sep 05 nicklas 395
4510 11 Sep 08 jari 396 <p>All rights granted under this License are granted for the term of
4510 11 Sep 08 jari 397 copyright on the Program, and are irrevocable provided the stated
4510 11 Sep 08 jari 398 conditions are met.  This License explicitly affirms your unlimited
4510 11 Sep 08 jari 399 permission to run the unmodified Program.  The output from running a
4510 11 Sep 08 jari 400 covered work is covered by this License only if the output, given its
4510 11 Sep 08 jari 401 content, constitutes a covered work.  This License acknowledges your
4510 11 Sep 08 jari 402 rights of fair use or other equivalent, as provided by copyright
4510 11 Sep 08 jari 403 law.</p>
1383 27 Sep 05 nicklas 404
4510 11 Sep 08 jari 405 <p>You may make, run and propagate covered works that you do not
4510 11 Sep 08 jari 406 convey, without conditions so long as your license otherwise remains
4510 11 Sep 08 jari 407 in force.  You may convey covered works to others for the sole purpose
4510 11 Sep 08 jari 408 of having them make modifications exclusively for you, or provide you
4510 11 Sep 08 jari 409 with facilities for running those works, provided that you comply with
4510 11 Sep 08 jari 410 the terms of this License in conveying all material for which you do
4510 11 Sep 08 jari 411 not control copyright.  Those thus making or running the covered works
4510 11 Sep 08 jari 412 for you must do so exclusively on your behalf, under your direction
4510 11 Sep 08 jari 413 and control, on terms that prohibit them from making any copies of
4510 11 Sep 08 jari 414 your copyrighted material outside their relationship with you.</p>
1383 27 Sep 05 nicklas 415
4510 11 Sep 08 jari 416 <p>Conveying under any other circumstances is permitted solely under
4510 11 Sep 08 jari 417 the conditions stated below.  Sublicensing is not allowed; section 10
4510 11 Sep 08 jari 418 makes it unnecessary.</p>
1383 27 Sep 05 nicklas 419
4510 11 Sep 08 jari 420 <h4><a name="section3"></a>3. Protecting Users' Legal Rights From
4510 11 Sep 08 jari 421 Anti-Circumvention Law.</h4>
1383 27 Sep 05 nicklas 422
4510 11 Sep 08 jari 423 <p>No covered work shall be deemed part of an effective technological
4510 11 Sep 08 jari 424 measure under any applicable law fulfilling obligations under article
4510 11 Sep 08 jari 425 11 of the WIPO copyright treaty adopted on 20 December 1996, or
4510 11 Sep 08 jari 426 similar laws prohibiting or restricting circumvention of such
4510 11 Sep 08 jari 427 measures.</p>
1383 27 Sep 05 nicklas 428
4510 11 Sep 08 jari 429 <p>When you convey a covered work, you waive any legal power to forbid
4510 11 Sep 08 jari 430 circumvention of technological measures to the extent such
4510 11 Sep 08 jari 431 circumvention is effected by exercising rights under this License with
4510 11 Sep 08 jari 432 respect to the covered work, and you disclaim any intention to limit
4510 11 Sep 08 jari 433 operation or modification of the work as a means of enforcing, against
4510 11 Sep 08 jari 434 the work's users, your or third parties' legal rights to forbid
4510 11 Sep 08 jari 435 circumvention of technological measures.</p>
1383 27 Sep 05 nicklas 436
4510 11 Sep 08 jari 437 <h4><a name="section4"></a>4. Conveying Verbatim Copies.</h4>
1383 27 Sep 05 nicklas 438
4510 11 Sep 08 jari 439 <p>You may convey verbatim copies of the Program's source code as you
4510 11 Sep 08 jari 440 receive it, in any medium, provided that you conspicuously and
4510 11 Sep 08 jari 441 appropriately publish on each copy an appropriate copyright notice;
4510 11 Sep 08 jari 442 keep intact all notices stating that this License and any
4510 11 Sep 08 jari 443 non-permissive terms added in accord with section 7 apply to the code;
4510 11 Sep 08 jari 444 keep intact all notices of the absence of any warranty; and give all
4510 11 Sep 08 jari 445 recipients a copy of this License along with the Program.</p>
1383 27 Sep 05 nicklas 446
4510 11 Sep 08 jari 447 <p>You may charge any price or no price for each copy that you convey,
4510 11 Sep 08 jari 448 and you may offer support or warranty protection for a fee.</p>
1383 27 Sep 05 nicklas 449
4510 11 Sep 08 jari 450 <h4><a name="section5"></a>5. Conveying Modified Source Versions.</h4>
1383 27 Sep 05 nicklas 451
4510 11 Sep 08 jari 452 <p>You may convey a work based on the Program, or the modifications to
4510 11 Sep 08 jari 453 produce it from the Program, in the form of source code under the
4510 11 Sep 08 jari 454 terms of section 4, provided that you also meet all of these
4510 11 Sep 08 jari 455 conditions:</p>
1383 27 Sep 05 nicklas 456
4510 11 Sep 08 jari 457 <ul>
1383 27 Sep 05 nicklas 458
4510 11 Sep 08 jari 459 <li>a) The work must carry prominent notices stating that you modified
4510 11 Sep 08 jari 460     it, and giving a relevant date.</li>
1383 27 Sep 05 nicklas 461
4510 11 Sep 08 jari 462 <li>b) The work must carry prominent notices stating that it is
4510 11 Sep 08 jari 463     released under this License and any conditions added under section
4510 11 Sep 08 jari 464     7.  This requirement modifies the requirement in section 4 to
4510 11 Sep 08 jari 465     &ldquo;keep intact all notices&rdquo;.</li>
1383 27 Sep 05 nicklas 466
4510 11 Sep 08 jari 467 <li>c) You must license the entire work, as a whole, under this
4510 11 Sep 08 jari 468     License to anyone who comes into possession of a copy.  This
4510 11 Sep 08 jari 469     License will therefore apply, along with any applicable section 7
4510 11 Sep 08 jari 470     additional terms, to the whole of the work, and all its parts,
4510 11 Sep 08 jari 471     regardless of how they are packaged.  This License gives no
4510 11 Sep 08 jari 472     permission to license the work in any other way, but it does not
4510 11 Sep 08 jari 473     invalidate such permission if you have separately received
4510 11 Sep 08 jari 474     it.</li>
1383 27 Sep 05 nicklas 475
4510 11 Sep 08 jari 476 <li>d) If the work has interactive user interfaces, each must display
4510 11 Sep 08 jari 477     Appropriate Legal Notices; however, if the Program has interactive
4510 11 Sep 08 jari 478     interfaces that do not display Appropriate Legal Notices, your
4510 11 Sep 08 jari 479     work need not make them do so.</li>
1383 27 Sep 05 nicklas 480
4510 11 Sep 08 jari 481 </ul>
1383 27 Sep 05 nicklas 482
4510 11 Sep 08 jari 483 <p>A compilation of a covered work with other separate and independent
4510 11 Sep 08 jari 484 works, which are not by their nature extensions of the covered work,
4510 11 Sep 08 jari 485 and which are not combined with it such as to form a larger program,
4510 11 Sep 08 jari 486 in or on a volume of a storage or distribution medium, is called an
4510 11 Sep 08 jari 487 &ldquo;aggregate&rdquo; if the compilation and its resulting copyright
4510 11 Sep 08 jari 488 are not used to limit the access or legal rights of the compilation's
4510 11 Sep 08 jari 489 users beyond what the individual works permit.  Inclusion of a covered
4510 11 Sep 08 jari 490 work in an aggregate does not cause this License to apply to the other
4510 11 Sep 08 jari 491 parts of the aggregate.</p>
1383 27 Sep 05 nicklas 492
4510 11 Sep 08 jari 493 <h4><a name="section6"></a>6. Conveying Non-Source Forms.</h4>
1383 27 Sep 05 nicklas 494
4510 11 Sep 08 jari 495 <p>You may convey a covered work in object code form under the terms
4510 11 Sep 08 jari 496 of sections 4 and 5, provided that you also convey the
4510 11 Sep 08 jari 497 machine-readable Corresponding Source under the terms of this License,
4510 11 Sep 08 jari 498 in one of these ways:</p>
1383 27 Sep 05 nicklas 499
4510 11 Sep 08 jari 500 <ul>
1383 27 Sep 05 nicklas 501
4510 11 Sep 08 jari 502 <li>a) Convey the object code in, or embodied in, a physical product
4510 11 Sep 08 jari 503     (including a physical distribution medium), accompanied by the
4510 11 Sep 08 jari 504     Corresponding Source fixed on a durable physical medium
4510 11 Sep 08 jari 505     customarily used for software interchange.</li>
1383 27 Sep 05 nicklas 506
4510 11 Sep 08 jari 507 <li>b) Convey the object code in, or embodied in, a physical product
4510 11 Sep 08 jari 508     (including a physical distribution medium), accompanied by a
4510 11 Sep 08 jari 509     written offer, valid for at least three years and valid for as
4510 11 Sep 08 jari 510     long as you offer spare parts or customer support for that product
4510 11 Sep 08 jari 511     model, to give anyone who possesses the object code either (1) a
4510 11 Sep 08 jari 512     copy of the Corresponding Source for all the software in the
4510 11 Sep 08 jari 513     product that is covered by this License, on a durable physical
4510 11 Sep 08 jari 514     medium customarily used for software interchange, for a price no
4510 11 Sep 08 jari 515     more than your reasonable cost of physically performing this
4510 11 Sep 08 jari 516     conveying of source, or (2) access to copy the Corresponding
4510 11 Sep 08 jari 517     Source from a network server at no charge.</li>
1383 27 Sep 05 nicklas 518
4510 11 Sep 08 jari 519 <li>c) Convey individual copies of the object code with a copy of the
4510 11 Sep 08 jari 520     written offer to provide the Corresponding Source.  This
4510 11 Sep 08 jari 521     alternative is allowed only occasionally and noncommercially, and
4510 11 Sep 08 jari 522     only if you received the object code with such an offer, in accord
4510 11 Sep 08 jari 523     with subsection 6b.</li>
1383 27 Sep 05 nicklas 524
4510 11 Sep 08 jari 525 <li>d) Convey the object code by offering access from a designated
4510 11 Sep 08 jari 526     place (gratis or for a charge), and offer equivalent access to the
4510 11 Sep 08 jari 527     Corresponding Source in the same way through the same place at no
4510 11 Sep 08 jari 528     further charge.  You need not require recipients to copy the
4510 11 Sep 08 jari 529     Corresponding Source along with the object code.  If the place to
4510 11 Sep 08 jari 530     copy the object code is a network server, the Corresponding Source
4510 11 Sep 08 jari 531     may be on a different server (operated by you or a third party)
4510 11 Sep 08 jari 532     that supports equivalent copying facilities, provided you maintain
4510 11 Sep 08 jari 533     clear directions next to the object code saying where to find the
4510 11 Sep 08 jari 534     Corresponding Source.  Regardless of what server hosts the
4510 11 Sep 08 jari 535     Corresponding Source, you remain obligated to ensure that it is
4510 11 Sep 08 jari 536     available for as long as needed to satisfy these
4510 11 Sep 08 jari 537     requirements.</li>
1383 27 Sep 05 nicklas 538
4510 11 Sep 08 jari 539 <li>e) Convey the object code using peer-to-peer transmission,
4510 11 Sep 08 jari 540     provided you inform other peers where the object code and
4510 11 Sep 08 jari 541     Corresponding Source of the work are being offered to the general
4510 11 Sep 08 jari 542     public at no charge under subsection 6d.</li>
1383 27 Sep 05 nicklas 543
4510 11 Sep 08 jari 544 </ul>
1383 27 Sep 05 nicklas 545
4510 11 Sep 08 jari 546 <p>A separable portion of the object code, whose source code is
4510 11 Sep 08 jari 547 excluded from the Corresponding Source as a System Library, need not
4510 11 Sep 08 jari 548 be included in conveying the object code work.</p>
1383 27 Sep 05 nicklas 549
4510 11 Sep 08 jari 550 <p>A &ldquo;User Product&rdquo; is either (1) a &ldquo;consumer
4510 11 Sep 08 jari 551 product&rdquo;, which means any tangible personal property which is
4510 11 Sep 08 jari 552 normally used for personal, family, or household purposes, or (2)
4510 11 Sep 08 jari 553 anything designed or sold for incorporation into a dwelling.  In
4510 11 Sep 08 jari 554 determining whether a product is a consumer product, doubtful cases
4510 11 Sep 08 jari 555 shall be resolved in favor of coverage.  For a particular product
4510 11 Sep 08 jari 556 received by a particular user, &ldquo;normally used&rdquo; refers to a
4510 11 Sep 08 jari 557 typical or common use of that class of product, regardless of the
4510 11 Sep 08 jari 558 status of the particular user or of the way in which the particular
4510 11 Sep 08 jari 559 user actually uses, or expects or is expected to use, the product.  A
4510 11 Sep 08 jari 560 product is a consumer product regardless of whether the product has
4510 11 Sep 08 jari 561 substantial commercial, industrial or non-consumer uses, unless such
4510 11 Sep 08 jari 562 uses represent the only significant mode of use of the product.</p>
1383 27 Sep 05 nicklas 563
4510 11 Sep 08 jari 564 <p>&ldquo;Installation Information&rdquo; for a User Product means any
4510 11 Sep 08 jari 565 methods, procedures, authorization keys, or other information required
4510 11 Sep 08 jari 566 to install and execute modified versions of a covered work in that
4510 11 Sep 08 jari 567 User Product from a modified version of its Corresponding Source.  The
4510 11 Sep 08 jari 568 information must suffice to ensure that the continued functioning of
4510 11 Sep 08 jari 569 the modified object code is in no case prevented or interfered with
4510 11 Sep 08 jari 570 solely because modification has been made.</p>
1383 27 Sep 05 nicklas 571
4510 11 Sep 08 jari 572 <p>If you convey an object code work under this section in, or with,
4510 11 Sep 08 jari 573 or specifically for use in, a User Product, and the conveying occurs
4510 11 Sep 08 jari 574 as part of a transaction in which the right of possession and use of
4510 11 Sep 08 jari 575 the User Product is transferred to the recipient in perpetuity or for
4510 11 Sep 08 jari 576 a fixed term (regardless of how the transaction is characterized), the
4510 11 Sep 08 jari 577 Corresponding Source conveyed under this section must be accompanied
4510 11 Sep 08 jari 578 by the Installation Information.  But this requirement does not apply
4510 11 Sep 08 jari 579 if neither you nor any third party retains the ability to install
4510 11 Sep 08 jari 580 modified object code on the User Product (for example, the work has
4510 11 Sep 08 jari 581 been installed in ROM).</p>
1383 27 Sep 05 nicklas 582
4510 11 Sep 08 jari 583 <p>The requirement to provide Installation Information does not
4510 11 Sep 08 jari 584 include a requirement to continue to provide support service,
4510 11 Sep 08 jari 585 warranty, or updates for a work that has been modified or installed by
4510 11 Sep 08 jari 586 the recipient, or for the User Product in which it has been modified
4510 11 Sep 08 jari 587 or installed.  Access to a network may be denied when the modification
4510 11 Sep 08 jari 588 itself materially and adversely affects the operation of the network
4510 11 Sep 08 jari 589 or violates the rules and protocols for communication across the
4510 11 Sep 08 jari 590 network.</p>
1383 27 Sep 05 nicklas 591
4510 11 Sep 08 jari 592 <p>Corresponding Source conveyed, and Installation Information
4510 11 Sep 08 jari 593 provided, in accord with this section must be in a format that is
4510 11 Sep 08 jari 594 publicly documented (and with an implementation available to the
4510 11 Sep 08 jari 595 public in source code form), and must require no special password or
4510 11 Sep 08 jari 596 key for unpacking, reading or copying.</p>
1383 27 Sep 05 nicklas 597
4510 11 Sep 08 jari 598 <h4><a name="section7"></a>7. Additional Terms.</h4>
4510 11 Sep 08 jari 599
4510 11 Sep 08 jari 600 <p>&ldquo;Additional permissions&rdquo; are terms that supplement the
4510 11 Sep 08 jari 601 terms of this License by making exceptions from one or more of its
4510 11 Sep 08 jari 602 conditions.  Additional permissions that are applicable to the entire
4510 11 Sep 08 jari 603 Program shall be treated as though they were included in this License,
4510 11 Sep 08 jari 604 to the extent that they are valid under applicable law.  If additional
4510 11 Sep 08 jari 605 permissions apply only to part of the Program, that part may be used
4510 11 Sep 08 jari 606 separately under those permissions, but the entire Program remains
4510 11 Sep 08 jari 607 governed by this License without regard to the additional
4510 11 Sep 08 jari 608 permissions.</p>
4510 11 Sep 08 jari 609
4510 11 Sep 08 jari 610 <p>When you convey a copy of a covered work, you may at your option
4510 11 Sep 08 jari 611 remove any additional permissions from that copy, or from any part of
4510 11 Sep 08 jari 612 it.  (Additional permissions may be written to require their own
4510 11 Sep 08 jari 613 removal in certain cases when you modify the work.)  You may place
4510 11 Sep 08 jari 614 additional permissions on material, added by you to a covered work,
4510 11 Sep 08 jari 615 for which you have or can give appropriate copyright permission.</p>
4510 11 Sep 08 jari 616
4510 11 Sep 08 jari 617 <p>Notwithstanding any other provision of this License, for material
4510 11 Sep 08 jari 618 you add to a covered work, you may (if authorized by the copyright
4510 11 Sep 08 jari 619 holders of that material) supplement the terms of this License with
4510 11 Sep 08 jari 620 terms:</p>
4510 11 Sep 08 jari 621
4510 11 Sep 08 jari 622 <ul>
4510 11 Sep 08 jari 623
4510 11 Sep 08 jari 624 <li>a) Disclaiming warranty or limiting liability differently from the
4510 11 Sep 08 jari 625     terms of sections 15 and 16 of this License; or</li>
4510 11 Sep 08 jari 626
4510 11 Sep 08 jari 627 <li>b) Requiring preservation of specified reasonable legal notices or
4510 11 Sep 08 jari 628     author attributions in that material or in the Appropriate Legal
4510 11 Sep 08 jari 629     Notices displayed by works containing it; or</li>
4510 11 Sep 08 jari 630
4510 11 Sep 08 jari 631 <li>c) Prohibiting misrepresentation of the origin of that material,
4510 11 Sep 08 jari 632     or requiring that modified versions of such material be marked in
4510 11 Sep 08 jari 633     reasonable ways as different from the original version; or</li>
4510 11 Sep 08 jari 634
4510 11 Sep 08 jari 635 <li>d) Limiting the use for publicity purposes of names of licensors
4510 11 Sep 08 jari 636     or authors of the material; or</li>
4510 11 Sep 08 jari 637
4510 11 Sep 08 jari 638 <li>e) Declining to grant rights under trademark law for use of some
4510 11 Sep 08 jari 639     trade names, trademarks, or service marks; or</li>
4510 11 Sep 08 jari 640
4510 11 Sep 08 jari 641 <li>f) Requiring indemnification of licensors and authors of that
4510 11 Sep 08 jari 642     material by anyone who conveys the material (or modified versions
4510 11 Sep 08 jari 643     of it) with contractual assumptions of liability to the recipient,
4510 11 Sep 08 jari 644     for any liability that these contractual assumptions directly
4510 11 Sep 08 jari 645     impose on those licensors and authors.</li>
4510 11 Sep 08 jari 646
4510 11 Sep 08 jari 647 </ul>
4510 11 Sep 08 jari 648
4510 11 Sep 08 jari 649 <p>All other non-permissive additional terms are considered
4510 11 Sep 08 jari 650 &ldquo;further restrictions&rdquo; within the meaning of section 10.
4510 11 Sep 08 jari 651 If the Program as you received it, or any part of it, contains a
4510 11 Sep 08 jari 652 notice stating that it is governed by this License along with a term
4510 11 Sep 08 jari 653 that is a further restriction, you may remove that term.  If a license
4510 11 Sep 08 jari 654 document contains a further restriction but permits relicensing or
4510 11 Sep 08 jari 655 conveying under this License, you may add to a covered work material
4510 11 Sep 08 jari 656 governed by the terms of that license document, provided that the
4510 11 Sep 08 jari 657 further restriction does not survive such relicensing or
4510 11 Sep 08 jari 658 conveying.</p>
4510 11 Sep 08 jari 659
4510 11 Sep 08 jari 660 <p>If you add terms to a covered work in accord with this section, you
4510 11 Sep 08 jari 661 must place, in the relevant source files, a statement of the
4510 11 Sep 08 jari 662 additional terms that apply to those files, or a notice indicating
4510 11 Sep 08 jari 663 where to find the applicable terms.</p>
4510 11 Sep 08 jari 664
4510 11 Sep 08 jari 665 <p>Additional terms, permissive or non-permissive, may be stated in
4510 11 Sep 08 jari 666 the form of a separately written license, or stated as exceptions; the
4510 11 Sep 08 jari 667 above requirements apply either way.</p>
4510 11 Sep 08 jari 668
4510 11 Sep 08 jari 669 <h4><a name="section8"></a>8. Termination.</h4>
4510 11 Sep 08 jari 670
4510 11 Sep 08 jari 671 <p>You may not propagate or modify a covered work except as expressly
4510 11 Sep 08 jari 672 provided under this License.  Any attempt otherwise to propagate or
4510 11 Sep 08 jari 673 modify it is void, and will automatically terminate your rights under
4510 11 Sep 08 jari 674 this License (including any patent licenses granted under the third
4510 11 Sep 08 jari 675 paragraph of section 11).</p>
4510 11 Sep 08 jari 676
4510 11 Sep 08 jari 677 <p>However, if you cease all violation of this License, then your
4510 11 Sep 08 jari 678 license from a particular copyright holder is reinstated (a)
4510 11 Sep 08 jari 679 provisionally, unless and until the copyright holder explicitly and
4510 11 Sep 08 jari 680 finally terminates your license, and (b) permanently, if the copyright
4510 11 Sep 08 jari 681 holder fails to notify you of the violation by some reasonable means
4510 11 Sep 08 jari 682 prior to 60 days after the cessation.</p>
4510 11 Sep 08 jari 683
4510 11 Sep 08 jari 684 <p>Moreover, your license from a particular copyright holder is
4510 11 Sep 08 jari 685 reinstated permanently if the copyright holder notifies you of the
4510 11 Sep 08 jari 686 violation by some reasonable means, this is the first time you have
4510 11 Sep 08 jari 687 received notice of violation of this License (for any work) from that
4510 11 Sep 08 jari 688 copyright holder, and you cure the violation prior to 30 days after
4510 11 Sep 08 jari 689 your receipt of the notice.</p>
4510 11 Sep 08 jari 690
4510 11 Sep 08 jari 691 <p>Termination of your rights under this section does not terminate
4510 11 Sep 08 jari 692 the licenses of parties who have received copies or rights from you
4510 11 Sep 08 jari 693 under this License.  If your rights have been terminated and not
4510 11 Sep 08 jari 694 permanently reinstated, you do not qualify to receive new licenses for
4510 11 Sep 08 jari 695 the same material under section 10.</p>
4510 11 Sep 08 jari 696
4510 11 Sep 08 jari 697 <h4><a name="section9"></a>9. Acceptance Not Required for Having
4510 11 Sep 08 jari 698 Copies.</h4>
4510 11 Sep 08 jari 699
4510 11 Sep 08 jari 700 <p>You are not required to accept this License in order to receive or
4510 11 Sep 08 jari 701 run a copy of the Program.  Ancillary propagation of a covered work
4510 11 Sep 08 jari 702 occurring solely as a consequence of using peer-to-peer transmission
4510 11 Sep 08 jari 703 to receive a copy likewise does not require acceptance.  However,
4510 11 Sep 08 jari 704 nothing other than this License grants you permission to propagate or
4510 11 Sep 08 jari 705 modify any covered work.  These actions infringe copyright if you do
4510 11 Sep 08 jari 706 not accept this License.  Therefore, by modifying or propagating a
4510 11 Sep 08 jari 707 covered work, you indicate your acceptance of this License to do
4510 11 Sep 08 jari 708 so.</p>
4510 11 Sep 08 jari 709
4510 11 Sep 08 jari 710 <h4><a name="section10"></a>10. Automatic Licensing of Downstream
4510 11 Sep 08 jari 711 Recipients.</h4>
4510 11 Sep 08 jari 712
4510 11 Sep 08 jari 713 <p>Each time you convey a covered work, the recipient automatically
4510 11 Sep 08 jari 714 receives a license from the original licensors, to run, modify and
4510 11 Sep 08 jari 715 propagate that work, subject to this License.  You are not responsible
4510 11 Sep 08 jari 716 for enforcing compliance by third parties with this License.</p>
4510 11 Sep 08 jari 717
4510 11 Sep 08 jari 718 <p>An &ldquo;entity transaction&rdquo; is a transaction transferring
4510 11 Sep 08 jari 719 control of an organization, or substantially all assets of one, or
4510 11 Sep 08 jari 720 subdividing an organization, or merging organizations.  If propagation
4510 11 Sep 08 jari 721 of a covered work results from an entity transaction, each party to
4510 11 Sep 08 jari 722 that transaction who receives a copy of the work also receives
4510 11 Sep 08 jari 723 whatever licenses to the work the party's predecessor in interest had
4510 11 Sep 08 jari 724 or could give under the previous paragraph, plus a right to possession
4510 11 Sep 08 jari 725 of the Corresponding Source of the work from the predecessor in
4510 11 Sep 08 jari 726 interest, if the predecessor has it or can get it with reasonable
4510 11 Sep 08 jari 727 efforts.</p>
4510 11 Sep 08 jari 728
4510 11 Sep 08 jari 729 <p>You may not impose any further restrictions on the exercise of the
4510 11 Sep 08 jari 730 rights granted or affirmed under this License.  For example, you may
4510 11 Sep 08 jari 731 not impose a license fee, royalty, or other charge for exercise of
4510 11 Sep 08 jari 732 rights granted under this License, and you may not initiate litigation
4510 11 Sep 08 jari 733 (including a cross-claim or counterclaim in a lawsuit) alleging that
4510 11 Sep 08 jari 734 any patent claim is infringed by making, using, selling, offering for
4510 11 Sep 08 jari 735 sale, or importing the Program or any portion of it.</p>
4510 11 Sep 08 jari 736
4510 11 Sep 08 jari 737 <h4><a name="section11"></a>11. Patents.</h4>
4510 11 Sep 08 jari 738
4510 11 Sep 08 jari 739 <p>A &ldquo;contributor&rdquo; is a copyright holder who authorizes
4510 11 Sep 08 jari 740 use under this License of the Program or a work on which the Program
4510 11 Sep 08 jari 741 is based.  The work thus licensed is called the contributor's
4510 11 Sep 08 jari 742 &ldquo;contributor version&rdquo;.</p>
4510 11 Sep 08 jari 743
4510 11 Sep 08 jari 744 <p>A contributor's &ldquo;essential patent claims&rdquo; are all
4510 11 Sep 08 jari 745 patent claims owned or controlled by the contributor, whether already
4510 11 Sep 08 jari 746 acquired or hereafter acquired, that would be infringed by some
4510 11 Sep 08 jari 747 manner, permitted by this License, of making, using, or selling its
4510 11 Sep 08 jari 748 contributor version, but do not include claims that would be infringed
4510 11 Sep 08 jari 749 only as a consequence of further modification of the contributor
4510 11 Sep 08 jari 750 version.  For purposes of this definition, &ldquo;control&rdquo;
4510 11 Sep 08 jari 751 includes the right to grant patent sublicenses in a manner consistent
4510 11 Sep 08 jari 752 with the requirements of this License.</p>
4510 11 Sep 08 jari 753
4510 11 Sep 08 jari 754 <p>Each contributor grants you a non-exclusive, worldwide,
4510 11 Sep 08 jari 755 royalty-free patent license under the contributor's essential patent
4510 11 Sep 08 jari 756 claims, to make, use, sell, offer for sale, import and otherwise run,
4510 11 Sep 08 jari 757 modify and propagate the contents of its contributor version.</p>
4510 11 Sep 08 jari 758
4510 11 Sep 08 jari 759 <p>In the following three paragraphs, a &ldquo;patent license&rdquo;
4510 11 Sep 08 jari 760 is any express agreement or commitment, however denominated, not to
4510 11 Sep 08 jari 761 enforce a patent (such as an express permission to practice a patent
4510 11 Sep 08 jari 762 or covenant not to sue for patent infringement).  To
4510 11 Sep 08 jari 763 &ldquo;grant&rdquo; such a patent license to a party means to make
4510 11 Sep 08 jari 764 such an agreement or commitment not to enforce a patent against the
4510 11 Sep 08 jari 765 party.</p>
4510 11 Sep 08 jari 766
4510 11 Sep 08 jari 767 <p>If you convey a covered work, knowingly relying on a patent
4510 11 Sep 08 jari 768 license, and the Corresponding Source of the work is not available for
4510 11 Sep 08 jari 769 anyone to copy, free of charge and under the terms of this License,
4510 11 Sep 08 jari 770 through a publicly available network server or other readily
4510 11 Sep 08 jari 771 accessible means, then you must either (1) cause the Corresponding
4510 11 Sep 08 jari 772 Source to be so available, or (2) arrange to deprive yourself of the
4510 11 Sep 08 jari 773 benefit of the patent license for this particular work, or (3)
4510 11 Sep 08 jari 774 arrange, in a manner consistent with the requirements of this License,
4510 11 Sep 08 jari 775 to extend the patent license to downstream recipients.
4510 11 Sep 08 jari 776 &ldquo;Knowingly relying&rdquo; means you have actual knowledge that,
4510 11 Sep 08 jari 777 but for the patent license, your conveying the covered work in a
4510 11 Sep 08 jari 778 country, or your recipient's use of the covered work in a country,
4510 11 Sep 08 jari 779 would infringe one or more identifiable patents in that country that
4510 11 Sep 08 jari 780 you have reason to believe are valid.</p>
4510 11 Sep 08 jari 781
4510 11 Sep 08 jari 782   
4510 11 Sep 08 jari 783 <p>If, pursuant to or in connection with a single transaction or
4510 11 Sep 08 jari 784 arrangement, you convey, or propagate by procuring conveyance of, a
4510 11 Sep 08 jari 785 covered work, and grant a patent license to some of the parties
4510 11 Sep 08 jari 786 receiving the covered work authorizing them to use, propagate, modify
4510 11 Sep 08 jari 787 or convey a specific copy of the covered work, then the patent license
4510 11 Sep 08 jari 788 you grant is automatically extended to all recipients of the covered
4510 11 Sep 08 jari 789 work and works based on it.</p>
4510 11 Sep 08 jari 790
4510 11 Sep 08 jari 791 <p>A patent license is &ldquo;discriminatory&rdquo; if it does not
4510 11 Sep 08 jari 792 include within the scope of its coverage, prohibits the exercise of,
4510 11 Sep 08 jari 793 or is conditioned on the non-exercise of one or more of the rights
4510 11 Sep 08 jari 794 that are specifically granted under this License.  You may not convey
4510 11 Sep 08 jari 795 a covered work if you are a party to an arrangement with a third party
4510 11 Sep 08 jari 796 that is in the business of distributing software, under which you make
4510 11 Sep 08 jari 797 payment to the third party based on the extent of your activity of
4510 11 Sep 08 jari 798 conveying the work, and under which the third party grants, to any of
4510 11 Sep 08 jari 799 the parties who would receive the covered work from you, a
4510 11 Sep 08 jari 800 discriminatory patent license (a) in connection with copies of the
4510 11 Sep 08 jari 801 covered work conveyed by you (or copies made from those copies), or
4510 11 Sep 08 jari 802 (b) primarily for and in connection with specific products or
4510 11 Sep 08 jari 803 compilations that contain the covered work, unless you entered into
4510 11 Sep 08 jari 804 that arrangement, or that patent license was granted, prior to 28
4510 11 Sep 08 jari 805 March 2007.</p>
4510 11 Sep 08 jari 806
4510 11 Sep 08 jari 807 <p>Nothing in this License shall be construed as excluding or limiting
4510 11 Sep 08 jari 808 any implied license or other defenses to infringement that may
4510 11 Sep 08 jari 809 otherwise be available to you under applicable patent law.</p>
4510 11 Sep 08 jari 810
4510 11 Sep 08 jari 811 <h4><a name="section12"></a>12. No Surrender of Others' Freedom.</h4>
4510 11 Sep 08 jari 812
4510 11 Sep 08 jari 813 <p>If conditions are imposed on you (whether by court order, agreement
4510 11 Sep 08 jari 814 or otherwise) that contradict the conditions of this License, they do
4510 11 Sep 08 jari 815 not excuse you from the conditions of this License.  If you cannot
4510 11 Sep 08 jari 816 convey a covered work so as to satisfy simultaneously your obligations
4510 11 Sep 08 jari 817 under this License and any other pertinent obligations, then as a
4510 11 Sep 08 jari 818 consequence you may not convey it at all.  For example, if you agree
4510 11 Sep 08 jari 819 to terms that obligate you to collect a royalty for further conveying
4510 11 Sep 08 jari 820 from those to whom you convey the Program, the only way you could
4510 11 Sep 08 jari 821 satisfy both those terms and this License would be to refrain entirely
4510 11 Sep 08 jari 822 from conveying the Program.</p>
4510 11 Sep 08 jari 823
4510 11 Sep 08 jari 824 <h4><a name="section13"></a>13. Use with the GNU Affero General Public
4510 11 Sep 08 jari 825 License.</h4>
4510 11 Sep 08 jari 826
4510 11 Sep 08 jari 827 <p>Notwithstanding any other provision of this License, you have
4510 11 Sep 08 jari 828 permission to link or combine any covered work with a work licensed
4510 11 Sep 08 jari 829 under version 3 of the GNU Affero General Public License into a single
4510 11 Sep 08 jari 830 combined work, and to convey the resulting work.  The terms of this
4510 11 Sep 08 jari 831 License will continue to apply to the part which is the covered work,
4510 11 Sep 08 jari 832 but the special requirements of the GNU Affero General Public License,
4510 11 Sep 08 jari 833 section 13, concerning interaction through a network will apply to the
4510 11 Sep 08 jari 834 combination as such.</p>
4510 11 Sep 08 jari 835
4510 11 Sep 08 jari 836 <h4><a name="section14"></a>14. Revised Versions of this License.</h4>
4510 11 Sep 08 jari 837
4510 11 Sep 08 jari 838 <p>The Free Software Foundation may publish revised and/or new
4510 11 Sep 08 jari 839 versions of the GNU General Public License from time to time.  Such
4510 11 Sep 08 jari 840 new versions will be similar in spirit to the present version, but may
4510 11 Sep 08 jari 841 differ in detail to address new problems or concerns.</p>
4510 11 Sep 08 jari 842
4510 11 Sep 08 jari 843 <p>Each version is given a distinguishing version number.  If the
4510 11 Sep 08 jari 844 Program specifies that a certain numbered version of the GNU General
4510 11 Sep 08 jari 845 Public License &ldquo;or any later version&rdquo; applies to it, you
4510 11 Sep 08 jari 846 have the option of following the terms and conditions either of that
4510 11 Sep 08 jari 847 numbered version or of any later version published by the Free
4510 11 Sep 08 jari 848 Software Foundation.  If the Program does not specify a version number
4510 11 Sep 08 jari 849 of the GNU General Public License, you may choose any version ever
4510 11 Sep 08 jari 850 published by the Free Software Foundation.</p>
4510 11 Sep 08 jari 851
4510 11 Sep 08 jari 852 <p>If the Program specifies that a proxy can decide which future
4510 11 Sep 08 jari 853 versions of the GNU General Public License can be used, that proxy's
4510 11 Sep 08 jari 854 public statement of acceptance of a version permanently authorizes you
4510 11 Sep 08 jari 855 to choose that version for the Program.</p>
4510 11 Sep 08 jari 856
4510 11 Sep 08 jari 857 <p>Later license versions may give you additional or different
4510 11 Sep 08 jari 858 permissions.  However, no additional obligations are imposed on any
4510 11 Sep 08 jari 859 author or copyright holder as a result of your choosing to follow a
4510 11 Sep 08 jari 860 later version.</p>
4510 11 Sep 08 jari 861
4510 11 Sep 08 jari 862 <h4><a name="section15"></a>15. Disclaimer of Warranty.</h4>
4510 11 Sep 08 jari 863
4510 11 Sep 08 jari 864 <p>THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
4510 11 Sep 08 jari 865 APPLICABLE LAW.  EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
4510 11 Sep 08 jari 866 HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM &ldquo;AS IS&rdquo;
4510 11 Sep 08 jari 867 WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
4510 11 Sep 08 jari 868 BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
4510 11 Sep 08 jari 869 FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY
4510 11 Sep 08 jari 870 AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE PROGRAM PROVE
4510 11 Sep 08 jari 871 DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR
4510 11 Sep 08 jari 872 CORRECTION.</p>
4510 11 Sep 08 jari 873
4510 11 Sep 08 jari 874 <h4><a name="section16"></a>16. Limitation of Liability.</h4>
4510 11 Sep 08 jari 875
4510 11 Sep 08 jari 876 <p>IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
4510 11 Sep 08 jari 877 WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES
4510 11 Sep 08 jari 878 AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR
4510 11 Sep 08 jari 879 DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL
4510 11 Sep 08 jari 880 DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM
4510 11 Sep 08 jari 881 (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED
4510 11 Sep 08 jari 882 INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF
4510 11 Sep 08 jari 883 THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER
4510 11 Sep 08 jari 884 OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
4510 11 Sep 08 jari 885 DAMAGES.</p>
4510 11 Sep 08 jari 886
4510 11 Sep 08 jari 887 <h4><a name="section17"></a>17. Interpretation of Sections 15 and
4510 11 Sep 08 jari 888 16.</h4>
4510 11 Sep 08 jari 889
4510 11 Sep 08 jari 890 <p>If the disclaimer of warranty and limitation of liability provided
4510 11 Sep 08 jari 891 above cannot be given local legal effect according to their terms,
4510 11 Sep 08 jari 892 reviewing courts shall apply local law that most closely approximates
4510 11 Sep 08 jari 893 an absolute waiver of all civil liability in connection with the
4510 11 Sep 08 jari 894 Program, unless a warranty or assumption of liability accompanies a
4510 11 Sep 08 jari 895 copy of the Program in return for a fee.</p>
4510 11 Sep 08 jari 896
4510 11 Sep 08 jari 897 <p>END OF TERMS AND CONDITIONS</p>
5907 13 Dec 11 nicklas 898   </div>
1383 27 Sep 05 nicklas 899   </t:tab>
1466 14 Oct 05 nicklas 900   <t:tab id="3rdparty" title="3rd-party software">
6610 20 Nov 14 nicklas 901   <div class="padded bg-filled-100 absolutefull" style="height: 2.5em;">
2171 20 Apr 06 nicklas 902   BASE is using other software/material developed by:
5907 13 Dec 11 nicklas 903   </div>
6610 20 Nov 14 nicklas 904   <div class="absolutefull" style="top: 2.5em;">
6610 20 Nov 14 nicklas 905   <table class="fullform topborder">
1383 27 Sep 05 nicklas 906   <tr>
5907 13 Dec 11 nicklas 907     <th>The Hibernate team</th>
6139 19 Sep 12 nicklas 908     <td><a href="http://www.hibernate.org/" target="_blank">http://www.hibernate.org/</a></td>
1383 27 Sep 05 nicklas 909   </tr>
1383 27 Sep 05 nicklas 910   <tr>
5907 13 Dec 11 nicklas 911     <th>Apache Software Foundation</th>
6139 19 Sep 12 nicklas 912     <td><a href="http://www.apache.org/" target="_blank">http://www.apache.org/</a></td>
1383 27 Sep 05 nicklas 913   </tr>
1383 27 Sep 05 nicklas 914   <tr>
5907 13 Dec 11 nicklas 915     <th>Sun Microsystems</th>
6139 19 Sep 12 nicklas 916     <td><a href="http://www.sun.com/" target="_blank">http://www.sun.com/</a></td>
1383 27 Sep 05 nicklas 917   </tr>
1383 27 Sep 05 nicklas 918   <tr>
5907 13 Dec 11 nicklas 919     <th>XDoclet team</th>
6139 19 Sep 12 nicklas 920     <td><a href="http://xdoclet.sourceforge.net/xdoclet/" target="_blank">http://xdoclet.sourceforge.net/xdoclet/</a></td>
1383 27 Sep 05 nicklas 921   </tr>
1383 27 Sep 05 nicklas 922   <tr>
5907 13 Dec 11 nicklas 923     <th>MySQL</th>
6139 19 Sep 12 nicklas 924     <td><a href="http://www.mysql.com/" target="_blank">http://www.mysql.com/</a></td>
1383 27 Sep 05 nicklas 925   </tr>
1383 27 Sep 05 nicklas 926   <tr>
5907 13 Dec 11 nicklas 927     <th>The JDOM(TM) Project</th>
6139 19 Sep 12 nicklas 928     <td><a href="http://www.jdom.org" target="_blank">http://www.jdom.org</a></td>
1383 27 Sep 05 nicklas 929   </tr>
2171 20 Apr 06 nicklas 930   <tr>
5907 13 Dec 11 nicklas 931     <th>Singular systems</th>
6139 19 Sep 12 nicklas 932     <td><a href="http://www.singularsys.com/jep/" target="_blank">http://www.singularsys.com/jep/</a></td>
2171 20 Apr 06 nicklas 933   </tr>
2171 20 Apr 06 nicklas 934   <tr>
5907 13 Dec 11 nicklas 935     <th>JFree software projects</th>
6139 19 Sep 12 nicklas 936     <td><a href="http://www.jfree.org/" target="_blank">http://www.jfree.org/</a></td>
2171 20 Apr 06 nicklas 937   </tr>
2171 20 Apr 06 nicklas 938   <tr>
5907 13 Dec 11 nicklas 939     <th>Mark James</th>
6139 19 Sep 12 nicklas 940     <td><a href="http://www.famfamfam.com/lab/icons/silk/" target="_blank">http://www.famfamfam.com/lab/icons/silk/</a></td>
2171 20 Apr 06 nicklas 941   </tr>
3476 12 Jun 07 nicklas 942   <tr>
5907 13 Dec 11 nicklas 943     <th>Affymetrix</th>
6139 19 Sep 12 nicklas 944     <td><a href="http://www.affymetrix.com" target="_blank">http://www.affymetrix.com</a></td>
3476 12 Jun 07 nicklas 945   </tr>
5907 13 Dec 11 nicklas 946   <tr class="dynamic">
5907 13 Dec 11 nicklas 947     <th></th>
5907 13 Dec 11 nicklas 948     <td></td>
5907 13 Dec 11 nicklas 949   </tr>
1383 27 Sep 05 nicklas 950   </table>
5907 13 Dec 11 nicklas 951   </div>
1383 27 Sep 05 nicklas 952   </t:tab>
1383 27 Sep 05 nicklas 953   </t:tabcontrol>
1383 27 Sep 05 nicklas 954
5907 13 Dec 11 nicklas 955   <base:buttongroup subclass="dialogbuttons">
6177 22 Oct 12 nicklas 956     <base:button id="close" title="Close" />
5907 13 Dec 11 nicklas 957   </base:buttongroup>
1383 27 Sep 05 nicklas 958 </base:body>
2200 27 Apr 06 jari 959 </base:page>