19df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown
29df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown   Copyright (c) 2005-2008, The Android Open Source Project
39df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown
49df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown   Licensed under the Apache License, Version 2.0 (the "License");
59df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown   you may not use this file except in compliance with the License.
69df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown
79df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown   Unless required by applicable law or agreed to in writing, software
89df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown   distributed under the License is distributed on an "AS IS" BASIS,
99df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
109df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown   See the License for the specific language governing permissions and
119df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown   limitations under the License.
129df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown
139df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown
149df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown                                 Apache License
159df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown                           Version 2.0, January 2004
169df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown                        http://www.apache.org/licenses/
179df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown
189df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
199df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown
209df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown   1. Definitions.
219df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown
229df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      "License" shall mean the terms and conditions for use, reproduction,
239df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      and distribution as defined by Sections 1 through 9 of this document.
249df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown
259df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      "Licensor" shall mean the copyright owner or entity authorized by
269df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      the copyright owner that is granting the License.
279df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown
289df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      "Legal Entity" shall mean the union of the acting entity and all
299df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      other entities that control, are controlled by, or are under common
309df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      control with that entity. For the purposes of this definition,
319df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      "control" means (i) the power, direct or indirect, to cause the
329df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      direction or management of such entity, whether by contract or
339df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      otherwise, or (ii) ownership of fifty percent (50%) or more of the
349df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      outstanding shares, or (iii) beneficial ownership of such entity.
359df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown
369df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      "You" (or "Your") shall mean an individual or Legal Entity
379df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      exercising permissions granted by this License.
389df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown
399df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      "Source" form shall mean the preferred form for making modifications,
409df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      including but not limited to software source code, documentation
419df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      source, and configuration files.
429df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown
439df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      "Object" form shall mean any form resulting from mechanical
449df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      transformation or translation of a Source form, including but
459df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      not limited to compiled object code, generated documentation,
469df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      and conversions to other media types.
479df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown
489df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      "Work" shall mean the work of authorship, whether in Source or
499df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      Object form, made available under the License, as indicated by a
509df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      copyright notice that is included in or attached to the work
519df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      (an example is provided in the Appendix below).
529df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown
539df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      "Derivative Works" shall mean any work, whether in Source or Object
549df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      form, that is based on (or derived from) the Work and for which the
559df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      editorial revisions, annotations, elaborations, or other modifications
569df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      represent, as a whole, an original work of authorship. For the purposes
579df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      of this License, Derivative Works shall not include works that remain
589df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      separable from, or merely link (or bind by name) to the interfaces of,
599df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      the Work and Derivative Works thereof.
609df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown
619df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      "Contribution" shall mean any work of authorship, including
629df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      the original version of the Work and any modifications or additions
639df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      to that Work or Derivative Works thereof, that is intentionally
649df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      submitted to Licensor for inclusion in the Work by the copyright owner
659df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      or by an individual or Legal Entity authorized to submit on behalf of
669df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      the copyright owner. For the purposes of this definition, "submitted"
679df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      means any form of electronic, verbal, or written communication sent
689df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      to the Licensor or its representatives, including but not limited to
699df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      communication on electronic mailing lists, source code control systems,
709df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      and issue tracking systems that are managed by, or on behalf of, the
719df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      Licensor for the purpose of discussing and improving the Work, but
729df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      excluding communication that is conspicuously marked or otherwise
739df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      designated in writing by the copyright owner as "Not a Contribution."
749df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown
759df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      "Contributor" shall mean Licensor and any individual or Legal Entity
769df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      on behalf of whom a Contribution has been received by Licensor and
779df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      subsequently incorporated within the Work.
789df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown
799df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown   2. Grant of Copyright License. Subject to the terms and conditions of
809df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      this License, each Contributor hereby grants to You a perpetual,
819df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
829df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      copyright license to reproduce, prepare Derivative Works of,
839df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      publicly display, publicly perform, sublicense, and distribute the
849df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      Work and such Derivative Works in Source or Object form.
859df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown
869df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown   3. Grant of Patent License. Subject to the terms and conditions of
879df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      this License, each Contributor hereby grants to You a perpetual,
889df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
899df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      (except as stated in this section) patent license to make, have made,
909df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      use, offer to sell, sell, import, and otherwise transfer the Work,
919df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      where such license applies only to those patent claims licensable
929df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      by such Contributor that are necessarily infringed by their
939df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      Contribution(s) alone or by combination of their Contribution(s)
949df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      with the Work to which such Contribution(s) was submitted. If You
959df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      institute patent litigation against any entity (including a
969df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      cross-claim or counterclaim in a lawsuit) alleging that the Work
979df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      or a Contribution incorporated within the Work constitutes direct
989df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      or contributory patent infringement, then any patent licenses
999df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      granted to You under this License for that Work shall terminate
1009df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      as of the date such litigation is filed.
1019df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown
1029df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown   4. Redistribution. You may reproduce and distribute copies of the
1039df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      Work or Derivative Works thereof in any medium, with or without
1049df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      modifications, and in Source or Object form, provided that You
1059df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      meet the following conditions:
1069df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown
1079df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      (a) You must give any other recipients of the Work or
1089df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown          Derivative Works a copy of this License; and
1099df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown
1109df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      (b) You must cause any modified files to carry prominent notices
1119df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown          stating that You changed the files; and
1129df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown
1139df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      (c) You must retain, in the Source form of any Derivative Works
1149df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown          that You distribute, all copyright, patent, trademark, and
1159df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown          attribution notices from the Source form of the Work,
1169df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown          excluding those notices that do not pertain to any part of
1179df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown          the Derivative Works; and
1189df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown
1199df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      (d) If the Work includes a "NOTICE" text file as part of its
1209df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown          distribution, then any Derivative Works that You distribute must
1219df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown          include a readable copy of the attribution notices contained
1229df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown          within such NOTICE file, excluding those notices that do not
1239df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown          pertain to any part of the Derivative Works, in at least one
1249df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown          of the following places: within a NOTICE text file distributed
1259df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown          as part of the Derivative Works; within the Source form or
1269df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown          documentation, if provided along with the Derivative Works; or,
1279df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown          within a display generated by the Derivative Works, if and
1289df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown          wherever such third-party notices normally appear. The contents
1299df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown          of the NOTICE file are for informational purposes only and
1309df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown          do not modify the License. You may add Your own attribution
1319df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown          notices within Derivative Works that You distribute, alongside
1329df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown          or as an addendum to the NOTICE text from the Work, provided
1339df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown          that such additional attribution notices cannot be construed
1349df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown          as modifying the License.
1359df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown
1369df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      You may add Your own copyright statement to Your modifications and
1379df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      may provide additional or different license terms and conditions
1389df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      for use, reproduction, or distribution of Your modifications, or
1399df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      for any such Derivative Works as a whole, provided Your use,
1409df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      reproduction, and distribution of the Work otherwise complies with
1419df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      the conditions stated in this License.
1429df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown
1439df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown   5. Submission of Contributions. Unless You explicitly state otherwise,
1449df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      any Contribution intentionally submitted for inclusion in the Work
1459df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      by You to the Licensor shall be under the terms and conditions of
1469df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      this License, without any additional terms or conditions.
1479df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      Notwithstanding the above, nothing herein shall supersede or modify
1489df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      the terms of any separate license agreement you may have executed
1499df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      with Licensor regarding such Contributions.
1509df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown
1519df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown   6. Trademarks. This License does not grant permission to use the trade
1529df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      names, trademarks, service marks, or product names of the Licensor,
1539df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      except as required for reasonable and customary use in describing the
1549df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      origin of the Work and reproducing the content of the NOTICE file.
1559df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown
1569df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown   7. Disclaimer of Warranty. Unless required by applicable law or
1579df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      agreed to in writing, Licensor provides the Work (and each
1589df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      Contributor provides its Contributions) on an "AS IS" BASIS,
1599df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
1609df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      implied, including, without limitation, any warranties or conditions
1619df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
1629df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      PARTICULAR PURPOSE. You are solely responsible for determining the
1639df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      appropriateness of using or redistributing the Work and assume any
1649df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      risks associated with Your exercise of permissions under this License.
1659df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown
1669df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown   8. Limitation of Liability. In no event and under no legal theory,
1679df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      whether in tort (including negligence), contract, or otherwise,
1689df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      unless required by applicable law (such as deliberate and grossly
1699df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      negligent acts) or agreed to in writing, shall any Contributor be
1709df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      liable to You for damages, including any direct, indirect, special,
1719df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      incidental, or consequential damages of any character arising as a
1729df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      result of this License or out of the use or inability to use the
1739df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      Work (including but not limited to damages for loss of goodwill,
1749df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      work stoppage, computer failure or malfunction, or any and all
1759df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      other commercial damages or losses), even if such Contributor
1769df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      has been advised of the possibility of such damages.
1779df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown
1789df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown   9. Accepting Warranty or Additional Liability. While redistributing
1799df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      the Work or Derivative Works thereof, You may choose to offer,
1809df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      and charge a fee for, acceptance of support, warranty, indemnity,
1819df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      or other liability obligations and/or rights consistent with this
1829df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      License. However, in accepting such obligations, You may act only
1839df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      on Your own behalf and on Your sole responsibility, not on behalf
1849df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      of any other Contributor, and only if You agree to indemnify,
1859df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      defend, and hold each Contributor harmless for any liability
1869df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      incurred by, or claims asserted against, such Contributor by reason
1879df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown      of your accepting any such warranty or additional liability.
1889df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown
1899df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown   END OF TERMS AND CONDITIONS
1909df6e7a926ce480baf70e97ee1b9ea387193f6adJeff Brown
191