aboutsummaryrefslogtreecommitdiff
path: root/en
diff options
context:
space:
mode:
authorAndroid Partner Docs <noreply@android.com>2018-10-26 10:56:08 -0700
committerMark Hecomovich <mheco@google.com>2018-10-26 14:26:23 -0700
commit4ba4ea56ab8aec0d24df1254bcbe01d7b2bd2512 (patch)
tree880f10c16e1daf2eb4ca993e526fc1a0097b92cf /en
parent98a440bcd336b9b5e6102c5b921eec7f9b14ac02 (diff)
downloadsource.android.com-4ba4ea56ab8aec0d24df1254bcbe01d7b2bd2512.tar.gz
Docs: Changes to source.android.com
- 218879518 Add Configuration tuning section to Wi-Fi debug page by Kenneth Lau <kennethlau@google.com> - 218712036 Devsite localized content from translation request 1008371. by Android Partner Docs <noreply@android.com> - 218712025 Devsite localized content from translation request 1005928. by Android Partner Docs <noreply@android.com> - 218712020 Devsite localized content from translation request 1007339. by Android Partner Docs <noreply@android.com> - 218684781 Fix formatting by Android Partner Docs <noreply@android.com> - 218542171 Update acknowledgement for CVE-2017-13270 by Danielle Roberts <daroberts@google.com> - 218533117 Update RFoV zip file to 1.3 by Kenneth Lau <kennethlau@google.com> - 218530006 Devsite localized content from translation request 1008213. by Android Partner Docs <noreply@android.com> - 218529978 Devsite localized content from translation request 1002445. by Android Partner Docs <noreply@android.com> - 218529963 Devsite localized content from translation request 972165. by Android Partner Docs <noreply@android.com> - 218437924 Add a note about Hardware requirements if downloading a m... by Christina Nguyen <cqn@google.com> - 218368944 Fix broken link. by Mark Hecomovich <mheco@google.com> - 218359370 Devsite localized content from translation request 1008218. by Android Partner Docs <noreply@android.com> - 218359361 Devsite localized content from translation request 1007771. by Android Partner Docs <noreply@android.com> - 218359349 Devsite localized content from translation request 1007338. by Android Partner Docs <noreply@android.com> - 218258283 Add Pixel 2, Pixel 2 XL, Pixel 3 and Pixel 3 XL to the ru... by Android Partner Docs <noreply@android.com> - 218229160 Improve link text. by Mark Hecomovich <mheco@google.com> - 218221208 Add Dr. Rick O'Rang loopback app to SAC. by Mark Hecomovich <mheco@google.com> - 218204284 AOSP source requires more disk space nowadays, update the... by Android Partner Docs <noreply@android.com> - 218185116 Automated g4 rollback of changelist 217173674. by Android Partner Docs <noreply@android.com> - 218179268 Devsite localized content from translation request 980063. by Android Partner Docs <noreply@android.com> - 217957597 Publish localized bulletins by Danielle Roberts <daroberts@google.com> - 217908051 Devsite localized content from translation request 1003354. by Android Partner Docs <noreply@android.com> - 217893115 Devsite localized content from translation request 964303. by Android Partner Docs <noreply@android.com> - 217893097 Devsite localized content from translation request 1005895. by Android Partner Docs <noreply@android.com> - 217889812 Fix typo in library name by Christina Nguyen <cqn@google.com> - 217886741 Automated g4 rollback of changelist 217699000. by Android Partner Docs <noreply@android.com> - 217779012 Update Sensor Fusion zip file from revision 1.4 to 1.5 by Kenneth Lau <kennethlau@google.com> - 217765958 Update build numbers for pi dr1 releases by Android Partner Docs <noreply@android.com> - 217750196 Devsite localized content from translation request 1001123. by Android Partner Docs <noreply@android.com> - 217743339 Devsite localized content from translation request 990059. by Android Partner Docs <noreply@android.com> - 217743327 Devsite localized content from translation request 1003746. by Android Partner Docs <noreply@android.com> - 217743322 Devsite localized content from translation request 1007147. by Android Partner Docs <noreply@android.com> - 217699000 Updating the links in the USB audio interface section to ... by Android Partner Docs <noreply@android.com> - 217645344 Changed headings to sentence case by Android Partner Docs <noreply@android.com> - 217556428 Devsite localized content from translation request 1004748. by Android Partner Docs <noreply@android.com> - 217556410 Devsite localized content from translation request 1004737. by Android Partner Docs <noreply@android.com> - 217547197 Automated g4 rollback of changelist 213015576. by Android Partner Docs <noreply@android.com> - 217352540 Devsite localized content from translation request 999860. by Android Partner Docs <noreply@android.com> - 217352528 Devsite localized content from translation request 999858. by Android Partner Docs <noreply@android.com> - 217304729 Devsite localized content from translation request 1001062. by Android Partner Docs <noreply@android.com> - 217303399 Delete _freeze.yaml file to publish: by Christina Nguyen <cqn@google.com> - 217227763 Fix the hyper link for Vulkan Implementor's Guide by Android Partner Docs <noreply@android.com> - 217175480 Devsite localized content from translation request 1001099. by Android Partner Docs <noreply@android.com> - 217175474 Devsite localized content from translation request 1002304. by Android Partner Docs <noreply@android.com> - 217175455 Devsite localized content from translation request 999876. by Android Partner Docs <noreply@android.com> - 217173674 The USB Audio CTS Verifier Tests page is updated to add t... by Android Partner Docs <noreply@android.com> - 216872776 Devsite localized content from translation request 999606. by Android Partner Docs <noreply@android.com> - 216866964 Add test group to android source whitelist by Android Partner Docs <noreply@android.com> - 216863256 Create temporary files to test whitelists on source.andro... by Android Partner Docs <noreply@android.com> - 216770677 Update content license to android by Danielle Roberts <daroberts@google.com> - 216755328 Update broken link to point to correct path. by Christina Nguyen <cqn@google.com> - 216746846 Updates to intsan by Danielle Roberts <daroberts@google.com> - 216721226 Devsite localized content from translation request 976999. by Android Partner Docs <noreply@android.com> - 216714261 Devsite localized content from translation request 995323. by Android Partner Docs <noreply@android.com> - 216713954 Devsite localized content from translation request 969253. by Android Partner Docs <noreply@android.com> - 216713937 Devsite localized content from translation request 1003362. by Android Partner Docs <noreply@android.com> - 216713923 Devsite localized content from translation request 999285. by Android Partner Docs <noreply@android.com> - 216625979 Devsite localized content from translation request 972168. by Android Partner Docs <noreply@android.com> - 216623489 Publish Enterprise Security report by Danielle Roberts <daroberts@google.com> - 216557488 Fix try > tray typo in managed profile by Danielle Roberts <daroberts@google.com> - 216555020 Devsite localized content from translation request 1001113. by Android Partner Docs <noreply@android.com> - 216555003 Devsite localized content from translation request 998044. by Android Partner Docs <noreply@android.com> - 216553118 Add ADB to the developer tools bug component table. by Android Partner Docs <noreply@android.com> - 216552360 Add Janet to Android OWNERS file by Christina Nguyen <cqn@google.com> - 216547801 [SAC Bug] Update CTS/CTS-Verifier/CTS_Instant downloads f... by Android Partner Docs <noreply@android.com> - 216436716 Updated ro.product.first_api_level requirement to differe... by Christina Nguyen <cqn@google.com> - 216374672 Devsite localized content from translation request 995326. by Android Partner Docs <noreply@android.com> - 216260547 Change "Assembly" to "Details" in left nav by Kenneth Lau <kennethlau@google.com> - 216255124 Update images and components for Sensor Fusion Box by Kenneth Lau <kennethlau@google.com> - 216225168 Devsite localized content from translation request 1056411. by Android Partner Docs <noreply@android.com> - 216225159 Devsite localized content from translation request 977320. by Android Partner Docs <noreply@android.com> - 215985064 Fix links on the Accessories for Android page by Kenneth Lau <kennethlau@google.com> - 215983993 Fix errors in EuiccManager/EuiccCardManager sample code by Kenneth Lau <kennethlau@google.com> PiperOrigin-RevId: 218879518 Change-Id: Idaf13561fe53a45d8a10d7965ff7a5ee26ef9802
Diffstat (limited to 'en')
-rw-r--r--en/compatibility/_toc-tests.yaml2
-rw-r--r--en/compatibility/cts/camera-its-box-assembly.html2
-rw-r--r--en/compatibility/cts/camera_its_iab_tech_drawings.zipbin3334613 -> 0 bytes
-rw-r--r--en/compatibility/cts/downloads.html98
-rw-r--r--en/compatibility/cts/images/sensor_fusion_assembly_abs_pieces.pngbin2009033 -> 1004713 bytes
-rw-r--r--en/compatibility/cts/images/sensor_fusion_assembly_assembled_fixture.pngbin2417871 -> 910659 bytes
-rw-r--r--en/compatibility/cts/images/sensor_fusion_assembly_checkerboard.pngbin727594 -> 639887 bytes
-rw-r--r--en/compatibility/cts/images/sensor_fusion_assembly_clamp.pngbin1480374 -> 498491 bytes
-rw-r--r--en/compatibility/cts/images/sensor_fusion_assembly_clamp_attachment_drawing.pngbin0 -> 176891 bytes
-rw-r--r--en/compatibility/cts/images/sensor_fusion_assembly_exterior_bolts.pngbin4288801 -> 1046164 bytes
-rw-r--r--en/compatibility/cts/images/sensor_fusion_assembly_handle_pieces.pngbin256629 -> 794457 bytes
-rw-r--r--en/compatibility/cts/images/sensor_fusion_assembly_interior_wall_lights.pngbin164054 -> 1213450 bytes
-rw-r--r--en/compatibility/cts/images/sensor_fusion_assembly_light_strips_diffusers.pngbin923434 -> 189249 bytes
-rw-r--r--en/compatibility/cts/images/sensor_fusion_assembly_phone_fixture_holes.pngbin0 -> 1099568 bytes
-rw-r--r--en/compatibility/cts/images/sensor_fusion_assembly_phone_mount_servo.pngbin0 -> 464329 bytes
-rw-r--r--en/compatibility/cts/images/sensor_fusion_assembly_screws.pngbin0 -> 14622 bytes
-rw-r--r--en/compatibility/cts/images/sensor_fusion_assembly_servo_servo_plate.pngbin195735 -> 669206 bytes
-rw-r--r--en/compatibility/cts/images/sensor_fusion_assembly_servo_shaft.pngbin157373 -> 407104 bytes
-rw-r--r--en/compatibility/cts/images/sensor_fusion_assembly_strips_taped_back.pngbin331899 -> 52252 bytes
-rw-r--r--en/compatibility/cts/rfov_its_box_assembly_1_3.zipbin0 -> 2710038 bytes
-rw-r--r--en/compatibility/cts/sensor-fusion-box-assembly.md170
-rw-r--r--en/compatibility/cts/sensor-fusion-quick-start.html4
-rw-r--r--en/compatibility/cts/sensor_fusion_1.5.zip (renamed from en/compatibility/cts/sensor_fusion_1.4.zip)bin6156836 -> 6650653 bytes
-rw-r--r--en/compatibility/cts/setup.html30
-rw-r--r--en/devices/_toc-connectivity.yaml2
-rw-r--r--en/devices/accessories/index.html8
-rw-r--r--en/devices/architecture/vndk/linker-namespace.html2
-rw-r--r--en/devices/audio/latency/loopback.html2
-rw-r--r--en/devices/audio/latency/measure.html37
-rw-r--r--en/devices/audio/warmup.html6
-rw-r--r--en/devices/graphics/arch-vulkan.html2
-rw-r--r--en/devices/tech/admin/managed-profiles.html2
-rw-r--r--en/devices/tech/config/namespaces_libraries.html2
-rw-r--r--en/devices/tech/connect/esim-euicc-api.md4
-rw-r--r--en/devices/tech/connect/esim-overview.md4
-rw-r--r--en/devices/tech/connect/wifi-debug.md59
-rw-r--r--en/devices/tech/debug/intsan.html20
-rw-r--r--en/devices/tech/power/platform_mgmt.html2
-rw-r--r--en/license.html6
-rw-r--r--en/security/bulletin/2018.html4
-rw-r--r--en/security/bulletin/index.html4
-rw-r--r--en/security/bulletin/pixel/2018.html4
-rw-r--r--en/security/bulletin/pixel/index.html4
-rw-r--r--en/security/images/enterprise-whitepaper-cover.pngbin0 -> 33501 bytes
-rw-r--r--en/security/images/gpp.pngbin0 -> 53423 bytes
-rw-r--r--en/security/overview/acknowledgements.html4
-rw-r--r--en/security/overview/reports.html56
-rw-r--r--en/setup/build/building.html10
-rw-r--r--en/setup/build/requirements.html5
-rw-r--r--en/setup/build/running.html40
-rw-r--r--en/setup/contribute/report-bugs.html6
-rw-r--r--en/setup/images/Android_greenrobot.ai587
-rw-r--r--en/setup/images/Android_greenrobot.epsbin0 -> 454226 bytes
-rw-r--r--en/setup/images/Android_greenrobot.pngbin0 -> 12844 bytes
-rw-r--r--en/setup/images/Android_greenrobot.svg21
-rw-r--r--en/setup/start/brands.html164
-rw-r--r--en/setup/start/build-numbers.html12
-rw-r--r--en/whitelist/_book.yaml129
-rw-r--r--en/whitelist/_whitelist.yaml4
-rw-r--r--en/whitelist/index.md6
60 files changed, 1312 insertions, 212 deletions
diff --git a/en/compatibility/_toc-tests.yaml b/en/compatibility/_toc-tests.yaml
index 7460532c..e631cc6b 100644
--- a/en/compatibility/_toc-tests.yaml
+++ b/en/compatibility/_toc-tests.yaml
@@ -33,7 +33,7 @@ toc:
path: /compatibility/cts/camera-its-box-assembly
- title: Sensor Fusion Box Quick Start
path: /compatibility/cts/sensor-fusion-quick-start
- - title: Sensor Fusion Box Assembly
+ - title: Sensor Fusion Box Details
path: /compatibility/cts/sensor-fusion-box-assembly
- title: Secure Element
path: /compatibility/cts/secure-element
diff --git a/en/compatibility/cts/camera-its-box-assembly.html b/en/compatibility/cts/camera-its-box-assembly.html
index 2b4e7b98..f6336f10 100644
--- a/en/compatibility/cts/camera-its-box-assembly.html
+++ b/en/compatibility/cts/camera-its-box-assembly.html
@@ -53,7 +53,7 @@ provides step-by-step instructions for assembling an RFoV ITS-in-a-box.</p>
<h3>Required tools</h3>
<p>Before getting started, ensure you have
-<a href="camera_its_iab_tech_drawings.zip">downloaded the technical
+<a href="rfov_its_box_assembly_1_3.zip">downloaded the technical
drawings</a> for the ITS-in-a box and have the following tools available:</p>
<ul>
<li>Phillips head screwdriver</li>
diff --git a/en/compatibility/cts/camera_its_iab_tech_drawings.zip b/en/compatibility/cts/camera_its_iab_tech_drawings.zip
deleted file mode 100644
index ddf25da4..00000000
--- a/en/compatibility/cts/camera_its_iab_tech_drawings.zip
+++ /dev/null
Binary files differ
diff --git a/en/compatibility/cts/downloads.html b/en/compatibility/cts/downloads.html
index ebc2265a..16798cde 100644
--- a/en/compatibility/cts/downloads.html
+++ b/en/compatibility/cts/downloads.html
@@ -31,102 +31,102 @@ R&lt;number&gt; in the link name.</p>
<h2 id="android-90">Android 9</h2>
<p>Android 9 is the release of the development milestone code-named P.
The source code for the following tests, including tests for instant apps, can be synced with the
-'android-cts-9.0_r2' tag in the open-source tree.</p>
+'android-cts-9.0_r3' tag in the open-source tree.</p>
<ul>
<li><a
-href="https://dl.google.com/dl/android/cts/android-cts-9.0_r2-linux_x86-arm.zip">Android
-9.0 R2 Compatibility Test Suite (CTS) - ARM</a></li>
+href="https://dl.google.com/dl/android/cts/android-cts-9.0_r3-linux_x86-arm.zip">Android
+9.0 R3 Compatibility Test Suite (CTS) - ARM</a></li>
<li><a
-href="https://dl.google.com/dl/android/cts/android-cts-9.0_r2-linux_x86-x86.zip">Android
-9.0 R2 Compatibility Test Suite (CTS) - x86</a></li>
+href="https://dl.google.com/dl/android/cts/android-cts-9.0_r3-linux_x86-x86.zip">Android
+9.0 R3 Compatibility Test Suite (CTS) - x86</a></li>
<li><a
-href="https://dl.google.com/dl/android/cts/android-cts-verifier-9.0_r2-linux_x86-arm.zip">Android
-9.0 R2 CTS Verifier - ARM</a></li>
+href="https://dl.google.com/dl/android/cts/android-cts-verifier-9.0_r3-linux_x86-arm.zip">Android
+9.0 R3 CTS Verifier - ARM</a></li>
<li><a
-href="https://dl.google.com/dl/android/cts/android-cts-verifier-9.0_r2-linux_x86-x86.zip">Android
-9.0 R2 CTS Verifier - x86</a></li>
+href="https://dl.google.com/dl/android/cts/android-cts-verifier-9.0_r3-linux_x86-x86.zip">Android
+9.0 R3 CTS Verifier - x86</a></li>
<li><a
-href="https://dl.google.com/dl/android/cts/android-cts_instant-9.0_r2-linux_x86-arm.zip">Android
-9.0 R2 CTS for Instant Apps - ARM</a></li>
+href="https://dl.google.com/dl/android/cts/android-cts_instant-9.0_r3-linux_x86-arm.zip">Android
+9.0 R3 CTS for Instant Apps - ARM</a></li>
<li><a
-href="https://dl.google.com/dl/android/cts/android-cts_instant-9.0_r2-linux_x86-x86.zip">Android
-9.0 R2 CTS for Instant Apps - x86</a></li>
+href="https://dl.google.com/dl/android/cts/android-cts_instant-9.0_r3-linux_x86-x86.zip">Android
+9.0 R3 CTS for Instant Apps - x86</a></li>
</ul>
<h2 id="android-81">Android 8.1</h2>
<p>Android 8.1 is the release of the development milestone code-named Oreo-MR1.
The source code for the following tests can be synced with the
-'android-cts-8.1_r9' tag in the open-source tree.</p>
+'android-cts-8.1_r10' tag in the open-source tree.</p>
<ul>
<li><a
-href="https://dl.google.com/dl/android/cts/android-cts-8.1_r9-linux_x86-arm.zip">Android
-8.1 R9 Compatibility Test Suite (CTS) - ARM</a></li>
+href="https://dl.google.com/dl/android/cts/android-cts-8.1_r10-linux_x86-arm.zip">Android
+8.1 R10 Compatibility Test Suite (CTS) - ARM</a></li>
<li><a
-href="https://dl.google.com/dl/android/cts/android-cts-8.1_r9-linux_x86-x86.zip">Android
-8.1 R9 Compatibility Test Suite (CTS) - x86</a></li>
+href="https://dl.google.com/dl/android/cts/android-cts-8.1_r10-linux_x86-x86.zip">Android
+8.1 R10 Compatibility Test Suite (CTS) - x86</a></li>
<li><a
-href="https://dl.google.com/dl/android/cts/android-cts-verifier-8.1_r9-linux_x86-arm.zip">Android
-8.1 R9 CTS Verifier - ARM</a></li>
+href="https://dl.google.com/dl/android/cts/android-cts-verifier-8.1_r10-linux_x86-arm.zip">Android
+8.1 R10 CTS Verifier - ARM</a></li>
<li><a
-href="https://dl.google.com/dl/android/cts/android-cts-verifier-8.1_r9-linux_x86-x86.zip">Android
-8.1 R9 CTS Verifier - x86</a></li>
+href="https://dl.google.com/dl/android/cts/android-cts-verifier-8.1_r10-linux_x86-x86.zip">Android
+8.1 R10 CTS Verifier - x86</a></li>
</ul>
<h2 id="android-80">Android 8.0</h2>
<p>Android 8.0 is the release of the development milestone code-named Oreo.
The source code for the following tests can be synced with the
-'android-cts-8.0_r13' tag in the open-source tree.</p>
+'android-cts-8.0_r14' tag in the open-source tree.</p>
<ul>
<li><a
-href="https://dl.google.com/dl/android/cts/android-cts-8.0_r13-linux_x86-arm.zip">Android
-8.0 R13 Compatibility Test Suite (CTS) - ARM</a></li>
+href="https://dl.google.com/dl/android/cts/android-cts-8.0_r14-linux_x86-arm.zip">Android
+8.0 R14 Compatibility Test Suite (CTS) - ARM</a></li>
<li><a
-href="https://dl.google.com/dl/android/cts/android-cts-8.0_r13-linux_x86-x86.zip">Android
-8.0 R13 Compatibility Test Suite (CTS) - x86</a></li>
+href="https://dl.google.com/dl/android/cts/android-cts-8.0_r14-linux_x86-x86.zip">Android
+8.0 R14 Compatibility Test Suite (CTS) - x86</a></li>
<li><a
-href="https://dl.google.com/dl/android/cts/android-cts-verifier-8.0_r13-linux_x86-arm.zip">Android
-8.0 R13 CTS Verifier - ARM</a></li>
+href="https://dl.google.com/dl/android/cts/android-cts-verifier-8.0_r14-linux_x86-arm.zip">Android
+8.0 R14 CTS Verifier - ARM</a></li>
<li><a
-href="https://dl.google.com/dl/android/cts/android-cts-verifier-8.0_r13-linux_x86-x86.zip">Android
-8.0 R13 CTS Verifier - x86</a></li>
+href="https://dl.google.com/dl/android/cts/android-cts-verifier-8.0_r14-linux_x86-x86.zip">Android
+8.0 R14 CTS Verifier - x86</a></li>
</ul>
<h2 id="android-71">Android 7.1</h2>
<p>Android 7.1 is the release of the development milestone code-named Nougat-MR1.
The source code for the following tests can be synced with the
-'android-cts-7.1_r21' tag in the open-source tree.</p>
+'android-cts-7.1_r22' tag in the open-source tree.</p>
<ul>
<li><a
-href="https://dl.google.com/dl/android/cts/android-cts-7.1_r21-linux_x86-arm.zip">Android
-7.1 R21 Compatibility Test Suite (CTS) - ARM</a></li>
+href="https://dl.google.com/dl/android/cts/android-cts-7.1_r22-linux_x86-arm.zip">Android
+7.1 R22 Compatibility Test Suite (CTS) - ARM</a></li>
<li><a
-href="https://dl.google.com/dl/android/cts/android-cts-7.1_r21-linux_x86-x86.zip">Android
-7.1 R21 Compatibility Test Suite (CTS) - x86</a></li>
+href="https://dl.google.com/dl/android/cts/android-cts-7.1_r22-linux_x86-x86.zip">Android
+7.1 R22 Compatibility Test Suite (CTS) - x86</a></li>
<li><a
-href="https://dl.google.com/dl/android/cts/android-cts-verifier-7.1_r21-linux_x86-arm.zip">Android
-7.1 R21 CTS Verifier - ARM</a></li>
+href="https://dl.google.com/dl/android/cts/android-cts-verifier-7.1_r22-linux_x86-arm.zip">Android
+7.1 R22 CTS Verifier - ARM</a></li>
<li><a
-href="https://dl.google.com/dl/android/cts/android-cts-verifier-7.1_r21-linux_x86-x86.zip">Android
-7.1 R21 CTS Verifier - x86</a></li>
+href="https://dl.google.com/dl/android/cts/android-cts-verifier-7.1_r22-linux_x86-x86.zip">Android
+7.1 R22 CTS Verifier - x86</a></li>
</ul>
<h2 id="android-70">Android 7.0</h2>
<p>Android 7.0 is the release of the development milestone code-named Nougat.
The source code for the following tests can be synced with the
-'android-cts-7.0_r25' tag in the open-source tree.</p>
+'android-cts-7.0_r26' tag in the open-source tree.</p>
<ul>
<li><a
-href="https://dl.google.com/dl/android/cts/android-cts-7.0_r25-linux_x86-arm.zip">Android
-7.0 R25 Compatibility Test Suite (CTS) - ARM</a></li>
+href="https://dl.google.com/dl/android/cts/android-cts-7.0_r26-linux_x86-arm.zip">Android
+7.0 R26 Compatibility Test Suite (CTS) - ARM</a></li>
<li><a
-href="https://dl.google.com/dl/android/cts/android-cts-7.0_r25-linux_x86-x86.zip">Android
-7.0 R25 Compatibility Test Suite (CTS) - x86</a></li>
+href="https://dl.google.com/dl/android/cts/android-cts-7.0_r26-linux_x86-x86.zip">Android
+7.0 R26 Compatibility Test Suite (CTS) - x86</a></li>
<li><a
-href="https://dl.google.com/dl/android/cts/android-cts-verifier-7.0_r25-linux_x86-arm.zip">Android
-7.0 R25 CTS Verifier - ARM</a></li>
+href="https://dl.google.com/dl/android/cts/android-cts-verifier-7.0_r26-linux_x86-arm.zip">Android
+7.0 R26 CTS Verifier - ARM</a></li>
<li><a
-href="https://dl.google.com/dl/android/cts/android-cts-verifier-7.0_r25-linux_x86-x86.zip">Android
-7.0 R25 CTS Verifier - x86</a></li>
+href="https://dl.google.com/dl/android/cts/android-cts-verifier-7.0_r26-linux_x86-x86.zip">Android
+7.0 R26 CTS Verifier - x86</a></li>
</ul>
<h2 id="android-60">Android 6.0</h2>
diff --git a/en/compatibility/cts/images/sensor_fusion_assembly_abs_pieces.png b/en/compatibility/cts/images/sensor_fusion_assembly_abs_pieces.png
index f5687a07..168a48ec 100644
--- a/en/compatibility/cts/images/sensor_fusion_assembly_abs_pieces.png
+++ b/en/compatibility/cts/images/sensor_fusion_assembly_abs_pieces.png
Binary files differ
diff --git a/en/compatibility/cts/images/sensor_fusion_assembly_assembled_fixture.png b/en/compatibility/cts/images/sensor_fusion_assembly_assembled_fixture.png
index bec5fc00..4200aa7c 100644
--- a/en/compatibility/cts/images/sensor_fusion_assembly_assembled_fixture.png
+++ b/en/compatibility/cts/images/sensor_fusion_assembly_assembled_fixture.png
Binary files differ
diff --git a/en/compatibility/cts/images/sensor_fusion_assembly_checkerboard.png b/en/compatibility/cts/images/sensor_fusion_assembly_checkerboard.png
index b08e3784..b1aac4ae 100644
--- a/en/compatibility/cts/images/sensor_fusion_assembly_checkerboard.png
+++ b/en/compatibility/cts/images/sensor_fusion_assembly_checkerboard.png
Binary files differ
diff --git a/en/compatibility/cts/images/sensor_fusion_assembly_clamp.png b/en/compatibility/cts/images/sensor_fusion_assembly_clamp.png
index bfb213f3..90c1fe04 100644
--- a/en/compatibility/cts/images/sensor_fusion_assembly_clamp.png
+++ b/en/compatibility/cts/images/sensor_fusion_assembly_clamp.png
Binary files differ
diff --git a/en/compatibility/cts/images/sensor_fusion_assembly_clamp_attachment_drawing.png b/en/compatibility/cts/images/sensor_fusion_assembly_clamp_attachment_drawing.png
new file mode 100644
index 00000000..d09373be
--- /dev/null
+++ b/en/compatibility/cts/images/sensor_fusion_assembly_clamp_attachment_drawing.png
Binary files differ
diff --git a/en/compatibility/cts/images/sensor_fusion_assembly_exterior_bolts.png b/en/compatibility/cts/images/sensor_fusion_assembly_exterior_bolts.png
index 4564e868..8f85ebec 100644
--- a/en/compatibility/cts/images/sensor_fusion_assembly_exterior_bolts.png
+++ b/en/compatibility/cts/images/sensor_fusion_assembly_exterior_bolts.png
Binary files differ
diff --git a/en/compatibility/cts/images/sensor_fusion_assembly_handle_pieces.png b/en/compatibility/cts/images/sensor_fusion_assembly_handle_pieces.png
index c6a877ab..e23d5fb3 100644
--- a/en/compatibility/cts/images/sensor_fusion_assembly_handle_pieces.png
+++ b/en/compatibility/cts/images/sensor_fusion_assembly_handle_pieces.png
Binary files differ
diff --git a/en/compatibility/cts/images/sensor_fusion_assembly_interior_wall_lights.png b/en/compatibility/cts/images/sensor_fusion_assembly_interior_wall_lights.png
index b1f6d8eb..d73c6387 100644
--- a/en/compatibility/cts/images/sensor_fusion_assembly_interior_wall_lights.png
+++ b/en/compatibility/cts/images/sensor_fusion_assembly_interior_wall_lights.png
Binary files differ
diff --git a/en/compatibility/cts/images/sensor_fusion_assembly_light_strips_diffusers.png b/en/compatibility/cts/images/sensor_fusion_assembly_light_strips_diffusers.png
index 24ff8bfe..d5c011b2 100644
--- a/en/compatibility/cts/images/sensor_fusion_assembly_light_strips_diffusers.png
+++ b/en/compatibility/cts/images/sensor_fusion_assembly_light_strips_diffusers.png
Binary files differ
diff --git a/en/compatibility/cts/images/sensor_fusion_assembly_phone_fixture_holes.png b/en/compatibility/cts/images/sensor_fusion_assembly_phone_fixture_holes.png
new file mode 100644
index 00000000..cf88fac9
--- /dev/null
+++ b/en/compatibility/cts/images/sensor_fusion_assembly_phone_fixture_holes.png
Binary files differ
diff --git a/en/compatibility/cts/images/sensor_fusion_assembly_phone_mount_servo.png b/en/compatibility/cts/images/sensor_fusion_assembly_phone_mount_servo.png
new file mode 100644
index 00000000..416d47ce
--- /dev/null
+++ b/en/compatibility/cts/images/sensor_fusion_assembly_phone_mount_servo.png
Binary files differ
diff --git a/en/compatibility/cts/images/sensor_fusion_assembly_screws.png b/en/compatibility/cts/images/sensor_fusion_assembly_screws.png
new file mode 100644
index 00000000..4728979f
--- /dev/null
+++ b/en/compatibility/cts/images/sensor_fusion_assembly_screws.png
Binary files differ
diff --git a/en/compatibility/cts/images/sensor_fusion_assembly_servo_servo_plate.png b/en/compatibility/cts/images/sensor_fusion_assembly_servo_servo_plate.png
index 277dbc14..2b35215a 100644
--- a/en/compatibility/cts/images/sensor_fusion_assembly_servo_servo_plate.png
+++ b/en/compatibility/cts/images/sensor_fusion_assembly_servo_servo_plate.png
Binary files differ
diff --git a/en/compatibility/cts/images/sensor_fusion_assembly_servo_shaft.png b/en/compatibility/cts/images/sensor_fusion_assembly_servo_shaft.png
index 7bca41f1..327d961d 100644
--- a/en/compatibility/cts/images/sensor_fusion_assembly_servo_shaft.png
+++ b/en/compatibility/cts/images/sensor_fusion_assembly_servo_shaft.png
Binary files differ
diff --git a/en/compatibility/cts/images/sensor_fusion_assembly_strips_taped_back.png b/en/compatibility/cts/images/sensor_fusion_assembly_strips_taped_back.png
index 04ba3f16..09414699 100644
--- a/en/compatibility/cts/images/sensor_fusion_assembly_strips_taped_back.png
+++ b/en/compatibility/cts/images/sensor_fusion_assembly_strips_taped_back.png
Binary files differ
diff --git a/en/compatibility/cts/rfov_its_box_assembly_1_3.zip b/en/compatibility/cts/rfov_its_box_assembly_1_3.zip
new file mode 100644
index 00000000..3888460f
--- /dev/null
+++ b/en/compatibility/cts/rfov_its_box_assembly_1_3.zip
Binary files differ
diff --git a/en/compatibility/cts/sensor-fusion-box-assembly.md b/en/compatibility/cts/sensor-fusion-box-assembly.md
index c104f461..ba236e51 100644
--- a/en/compatibility/cts/sensor-fusion-box-assembly.md
+++ b/en/compatibility/cts/sensor-fusion-box-assembly.md
@@ -14,9 +14,9 @@ Book: /_book.yaml
limitations under the License.
-->
-# Sensor Fusion Box Assembly
+# Sensor Fusion Box Details
-This page provides step-by-step instructions for assembling a Sensor Fusion
+This page provides information on how to purchase or assemble a Sensor Fusion
Box. The Sensor Fusion Box is used in the CameraITS sensor_fusion test and
multi-camera sync test. It provides a consistent test environment for measuring
timestamp accuracy of camera and other sensors for Android phones. It consists
@@ -33,190 +33,190 @@ vendors.
* *Acu Spec, Inc.*
990 Richard Ave, Ste 103, Santa Clara, CA 95050
fred@acuspecinc.com
-* *MYWAY, Inc*
+* *MYWAY DESIGN*
4F., No. 163, Fu Ying Rd., New Taipei City, Taiwan
- sales@myway.tw
+ sales@myway.tw
+ http://www.myway.tw/
## Building a Sensor Fusion Box
This section includes step-by-step instructions for assembling a Sensor Fusion
-Box from laser-cut plastic components (shown in Figure 1):
+Box from laser-cut acrylonitrile butadiene styrene (ABS) components (shown in
+Figure 1):
-<img src="/compatibility/cts/images/sensor_fusion_assembly_box_cad_drawing.png" width="700" alt="CAD drawing of Sensor Fusion Box components">
-**Figure 1.** CAD drawing of Sensor Fusion Box components
+<img src="/compatibility/cts/images/sensor_fusion_assembly_box_cad_drawing.png" width="700" alt="CAD drawing of Sensor Fusion Box components" class="screenshot">
+**Figure 1.** Mechanical drawing of Sensor Fusion Box components
### Required tools
Before starting, ensure you have downloaded the technical drawings for the
Sensor Fusion Box (included in the
-[Sensor Fusion Box zip file](/compatibility/cts/sensor_fusion_1.4.zip)) and
+[Sensor Fusion Box zip file](/compatibility/cts/sensor_fusion_1.5.zip)) and
have the following tools available:
* Phillips head screwdriver
+* Hex keys
* Power drill set
* Exacto knife
* Tape
### Step 1: Apply vinyl stickers
-After creating the plastic components with a laser cutter, you can apply vinyl
-stickers to the plastic box components:
+After creating the ABS components with a laser
+cutter, apply vinyl stickers to the plastic box to get the proper color control
+on the interior of the test box:
-1. Apply vinyl on the smooth side of the ABS (acrylonitrile butadiene styrene)
- as shown in **Figure 2**. For helpful tips on applying vinyl, refer to
+1. Apply vinyl on the smooth side of the ABS
+ as shown in Figure 2. For helpful tips on applying vinyl, refer to
[wikiHow](https://www.wikihow.com/Install-a-Vinyl-Graphic){: .external}.
-1. Cut out the necessary holes on the vinyl.
+1. Cut out the necessary holes on the vinyl with the exacto knife.
<img src="/compatibility/cts/images/sensor_fusion_assembly_abs_pieces.png" width="350" alt="BS pieces">
**Figure 2.** ABS pieces with vinyl applied on the smooth side (interior of
the box)
-### Step 2: Attach servo
+### Step 2: Prepare phone mount and attach servo mount
-To attach the servo:
+To prepare the phone mount to attach to the servo:
-1. Tap three holes on the phone fixture with 录" - 20, and make countersink
- holes on the back of the phone fixture:
- <table class="columns">
- <tr>
- <td><img src="/compatibility/cts/images/sensor_fusion_assembly_phone_fixture_holes1.png" width="250" alt="Phone fixture tap holes"></td>
- <td><img src="/compatibility/cts/images/sensor_fusion_assembly_phone_fixture_holes2.png" width="250" alt="Phone fixture countersink holes"></td>
- </tr>
- </table>
- **Figure 3.** Phone fixture with tap and countersink holes shown
+1. Tap 16 holes on the phone fixture with 录" - 20 and make countersink
+ holes on the back of the phone fixture.
-1. With the large shaft that came with the servo, drill pilot holes with #43
- drill bit (2.26 mm) into the last holes from each side so 4-40 screws could
- grab onto them:
+ <img src="/compatibility/cts/images/sensor_fusion_assembly_phone_fixture_holes.png" width="350" alt="Phone fixture holes">
+ **Figure 3.** Phone fixture with tap and countersink holes
+
+1. With the large shaft that came with the servo, drill pilot holes with a #43
+ drill bit (2.26 mm) into the last holes from each side so 4-40 screws can be
+ inserted through the holes.
<img src="/compatibility/cts/images/sensor_fusion_assembly_servo_shaft.png" width="350" alt="Servo shaft">
**Figure 4.** Servo shaft with pilot holes at each end
-1. Apply the flat-head 4-40 screws on the front of the phone fixture and
- tighten the shaft:
+1. Insert and tighten the flat-head 4-40 screws as shown in figure 5 on the
+ front of the phone fixture and tighten the shaft as shown in figure 6.
- <img src="/compatibility/cts/images/sensor_fusion_assembly_shaft_screws.png" width="350" alt="Shaft and screws">
- **Figure 5.** Phone fixture front with shaft and screws shown
+ <img src="/compatibility/cts/images/sensor_fusion_assembly_screws.png" width="350" alt="Shaft and screws">
+ **Figure 5.** Flat-head 4-40 screws
<img src="/compatibility/cts/images/sensor_fusion_assembly_shaft.png" width="350" alt="Shaft">
**Figure 6.** Shaft on the back of fixture, tightened by screws applied
from the front
-### Step 3: Attach clamp & rails
+### Step 3: Attach phone clamps
-To attach the clamp and rails:
+To attach the phone clamps:
-1. Apply nylon thumb screws, rubber adhesive, and wire to the aluminum clamp:
+1. Apply nylon thumb screws, rubber adhesive, and wire spring to the aluminum
+ clamp.
<img src="/compatibility/cts/images/sensor_fusion_assembly_clamp.png" width="350" alt="Clamp with rubber adhesive">
- **Figure 7.** Clamp with rubber adhesive, thumb screws and wire
+ **Figure 7.** Clamp with rubber adhesive, thumb screws and wire spring
1. Screw the phone clamps' thumb screws into the tapped holes of the phone
- fixture.
+ fixture as shown in figure 8. You can adjust the location of the phone mounts
+ depending on the size of the phones as shown in figure 9.
- * CAD Drawing:
+ * Mechanical drawing:
- <img src="/compatibility/cts/images/sensor_fusion_assembly_clamp_attachment_cad_drawing.png" width="450" alt="CAD drawing of clamp attachment">
- **Figure 8.** CAD drawing of clamp attachment to phone fixture
+ <img src="/compatibility/cts/images/sensor_fusion_assembly_clamp_attachment_drawing.png" width="600" alt="CAD drawing of clamp attachment" class="screenshot">
+ **Figure 8.** Mechanical drawing of clamp attachment to phone fixture
- * Actual clamp attachment to phone fixture:
+ * Phone mounts attachment to phone fixture:
<img src="/compatibility/cts/images/sensor_fusion_assembly_assembled_fixture.png" width="350" alt="Assembled phone fixture">
**Figure 9.** Assembled phone fixture
-1. Fix rails on top and bottom of box towards the front. The figure below shows
- 6-32 screws on pre-tapped holes, but you can use self-tapping screws instead
- if desired.
+### Step 4: Assemble sliding door rail
+
+1. Fix sliding panel rails on the top and bottom of the box towards the front.
+ Figure 10 shows 6-32 screws on pre-tapped holes. Alternatively, you can use
+ self-tapping screws.
- <img src="/compatibility/cts/images/sensor_fusion_assembly_fixed_rail.png" width="350" alt="Fixed rail">
- **Figure 10.** Fixed rail on top and bottom of box
+ <img src="/compatibility/cts/images/sensor_fusion_assembly_fixed_rail.png" width="450" alt="Fixed rail">
+ **Figure 10.** Fixed sliding panel rail on top and bottom of box
-### Step 4: Attach lighting
+### Step 5: Attach lighting
To attach the light brackets and diffuser:
-1. Stack two handle pieces and connect using 6-32 screws (or use self-tapping
- screws):
+1. Stack two handle pieces on top of each other and assemble them using 6-32
+ screws (or use self-tapping screws).
<img src="/compatibility/cts/images/sensor_fusion_assembly_handle_pieces.png" width="450" alt="Handle pieces and assembly">
**Figure 11.** Sensor fusion box handle pieces and assembly
-1. Prepare four 4-40 screws and nuts to fix the mounting bracket from the
- lighting kit to the wall of the box:
+1. Prepare four 4-40 screws, nuts, and acorn nuts to fix the mounting bracket
+ from the lighting kit to the wall of the box.
<img src="/compatibility/cts/images/sensor_fusion_assembly_interior_wall_screws.png" width="350" alt="Screws and bracket on interior wall">
- **Figure 12.** Screws and light bracket on the interior wall of the box
+ **Figure 12.** 4-40 screws and light bracket on the interior wall of the box
<img src="/compatibility/cts/images/sensor_fusion_assembly_exterior_bolts.png" width="350" alt="Exterior with bolts applied">
- **Figure 13.** Bolts applied to the screws from the exterior of the box
-
-1. Snap the lights into the brackets (can be a tight fit):
-
- <img src="/compatibility/cts/images/sensor_fusion_assembly_interior_wall_lights.png" width="450" alt="Lights on interior wall">
- **Figure 14.** Lights fixed to the interior wall with brackets
+ **Figure 13.** Bolts and acorn bolts applied to the screws from the exterior
+ of the box
-1. Cut the light diffuser to an appropriate size to wrap the light strips:
+1. Cut the light diffuser to an appropriate size to wrap the light strips.
<img src="/compatibility/cts/images/sensor_fusion_assembly_light_strips_diffusers.png" width="350" alt="Light strips and diffusers">
- **Figure 15.** Light strips and light diffusers
+ **Figure 14.** Light strips and light diffusers
-1. Wrap the light diffuser around the strip and tape it at the back:
+1. Wrap the light diffuser around the strip and tape it at the back.
<img src="/compatibility/cts/images/sensor_fusion_assembly_strips_taped_back.png" width="350" alt="Strips and diffusers taped from back">
- **Figure 16.** Light strips and light diffusers taped from the back
+ **Figure 15.** Light strips and light diffusers taped from the back
-### Step 5: Attach phone fixture to servo plate
+1. Snap the lights into the brackets (can be a tight fit).
+
+ <img src="/compatibility/cts/images/sensor_fusion_assembly_interior_wall_lights.png" width="450" alt="Lights on interior wall">
+ **Figure 16.** Lights not mounted in brackets (left). Lights mounted in brackets (right).
+
+### Step 6: Attach phone fixture to servo plate
To attach the phone fixture to the servo plate:
-1. Prepare four 6-32 screws and servo plate to fix the servo onto the wall.
- The screws go from inside and fix themselves onto the servo plate that is
- on the exterior of the wall.
+1. Prepare four 6-32 screws and a servo plate to fix the servo onto the wall.
+ Fix the servo onto the interior wall and insert the screws from the inside
+ into the servo plate on the exterior wall.
<img src="/compatibility/cts/images/sensor_fusion_assembly_servo_servo_plate.png" width="450" alt="Servo and servo plate">
**Figure 17.** Servo and servo plate held in place with 6-32 screws
1. Secure phone fixture onto the servo with nylocks (pushing the center of the
- shaft into the servo's rotation center):
+ shaft into the servo's rotation center).
- <img src="/compatibility/cts/images/sensor_fusion_assembly_phone_fixture.png" width="450" alt="Phone fixture on servo">
- **Figure 18.** Phone fixture on servo
+ <img src="/compatibility/cts/images/sensor_fusion_assembly_phone_mount_servo.png" width="450" alt="Phone fixture on servo">
+ **Figure 18.** Phone mount fixed on servo shaft with nylocks
-1. Screw the phone fixture onto the servo with its servo screw:
+1. Screw the phone fixture onto the servo with its servo screw.
<img src="/compatibility/cts/images/sensor_fusion_assembly_servo_screw.png" width="350" alt="Phone fixture on servo with screw">
**Figure 19.** Securing phone fixture onto servo with servo screw
-### Step 6: Final assembly
+### Step 7: Final assembly
-To complete final assembly of the Sensor Fusion Box:
+To complete assembly of the Sensor Fusion Box:
1. Secure servo control box on the left of the servo with 4-40 screws from the
- outside and fastened from the inside with nuts:
+ outside and fasten from the inside with nuts.
<img src="/compatibility/cts/images/sensor_fusion_assembly_servo_on_wall.png" width="450" alt="Servo control box on wall">
**Figure 20.** Secure servo control box onto the wall
1. Tape the box together, then screw the parts together (you might need to
- pre-drill some holes in some parts).
-
- * CAD drawing:
-
- <img src="/compatibility/cts/images/sensor_fusion_assembly_complete_box_drawing.png" width="450" alt="Complete box CAD drawing">
- **Figure 21.** CAD drawing of complete Sensor Box
+ pre-drill holes in some parts).
- * Actual Sensor Fusion Box:
+ * Assembled Sensor Fusion Box:
<img src="/compatibility/cts/images/sensor_fusion_assembly_taped_box.png" width="450" alt="Taped box">
- **Figure 22.** Taped box with motor assembly and servo control box and
+ **Figure 21.** Taped box with motor assembly and servo control box and
screw detail
1. Print out a colored copy of the checkerboard (included in the [Sensor Fusion
- Box zip file](/compatibility/cts/sensor_fusion_1.4.zip)) on A3 (or 11 x 17
- inch paper), and tape it on the opposite wall of the phone fixture.
+ Box zip file](/compatibility/cts/sensor_fusion_1.5.zip)) on A3 (or 11 x 17
+ inch) paper, and tape it on the opposite wall of the phone fixture.
- Make sure the red dot in the center of the checkerboard is directly facing
- the camera when placed on the fixture, as shown below:
+ Make sure the red dot in the center of the checkerboard is directly facing
+ the camera when placed on the fixture, as shown below.
<img src="/compatibility/cts/images/sensor_fusion_assembly_checkerboard.png" width="350" alt="Checkerboard">
- **Figure 23.** Checkerboard printed and taped to the opposite wall of phone
+ **Figure 22.** Checkerboard printed and taped to the opposite wall of phone
fixture
diff --git a/en/compatibility/cts/sensor-fusion-quick-start.html b/en/compatibility/cts/sensor-fusion-quick-start.html
index e189d10c..6ade5513 100644
--- a/en/compatibility/cts/sensor-fusion-quick-start.html
+++ b/en/compatibility/cts/sensor-fusion-quick-start.html
@@ -109,7 +109,7 @@
<p> The upside-down thumb screw provides back support while the
other screw tightens the grip by turning right. For more help,
refer to the video on loading the phone (included in the
- <a href="/compatibility/cts/sensor_fusion_1.4.zip">Sensor
+ <a href="/compatibility/cts/sensor_fusion_1.5.zip">Sensor
Fusion Box zip file</a>). </p>
</li>
<li>Use a zip tie to hold the phone USB cord to the fixture plate and
@@ -193,7 +193,7 @@
</ol>
<p>
For more help, refer to the video of the sensor fusion box running (included
- in the <a href=/compatibility/cts/sensor_fusion_1.4.zip>Sensor Fusion Box
+ in the <a href=/compatibility/cts/sensor_fusion_1.5.zip>Sensor Fusion Box
zip file</a>).
</p>
</body>
diff --git a/en/compatibility/cts/sensor_fusion_1.4.zip b/en/compatibility/cts/sensor_fusion_1.5.zip
index ef140552..a35275b6 100644
--- a/en/compatibility/cts/sensor_fusion_1.4.zip
+++ b/en/compatibility/cts/sensor_fusion_1.5.zip
Binary files differ
diff --git a/en/compatibility/cts/setup.html b/en/compatibility/cts/setup.html
index 6efc82df..7961778a 100644
--- a/en/compatibility/cts/setup.html
+++ b/en/compatibility/cts/setup.html
@@ -171,18 +171,32 @@ property is the first API level the device was commercially launched with.</p>
this property, as shown in the following example: </p>
<pre class="devsite-click-to-copy">
-#ro.product.first_api_level indicates the first api level, device has been commercially launched on.
+#ro.product.first_api_level indicates the first api level that the device has
+been commercially launched on.
PRODUCT_PROPERTY_OVERRIDES +=\
ro.product.first_api_level=21
</pre>
-<aside class="note">
- <b>Note:</b> The property <code>ro.product.first_api_level</code> should be unset (removed)
- for the first build of a product, and set to the correct API level value for all subsequent
- builds. This way the property can correctly identify a new product, and we have lost no
- information about the first API level of the product. If the flag is unset, Android will assign
- <code>Build.VERSION.SDK_INT</code> to <code>ro.product.first_api_level</code>.
-</aside>
+<h4 id="android-9-higher">First API level for Android 9 and higher</h4>
+
+ <p>
+ For devices launched with Android 9 or higher, set the property
+ <code>ro.product.first_api_level</code> to a valid value found on
+ <a href="/setup/start/build-numbers">Codenames, Tags, and Build Numbers</a>.
+ </p>
+
+<h4 id="android-8x-lower">First API level for Android 8.x and lower</h4>
+
+ <p>
+ For devices launched on Android 8.x or lower, unset (remove) the property
+ <code>ro.product.first_api_level</code> for the first build of the
+ product. For all subsequent builds, set
+ <code>ro.product.first_api_level</code> to the correct API level value.
+ This allows the property to correctly identify a new product and preserves
+ information about the first API level of the product. If the flag is
+ unset, Android assigns <code>Build.VERSION.SDK_INT</code> to
+ <code>ro.product.first_api_level</code>.
+ </p>
<h3 id=cts-shim-apps>CTS Shim apps</h3>
diff --git a/en/devices/_toc-connectivity.yaml b/en/devices/_toc-connectivity.yaml
index aebb3dde..75374a79 100644
--- a/en/devices/_toc-connectivity.yaml
+++ b/en/devices/_toc-connectivity.yaml
@@ -77,5 +77,5 @@ toc:
path: /devices/tech/connect/wifi-aware
- title: Wi-Fi Round Trip Time (RTT)
path: /devices/tech/connect/wifi-rtt
- - title: Testing and Debugging
+ - title: Testing, Debugging, and Tuning Wi-Fi
path: /devices/tech/connect/wifi-debug
diff --git a/en/devices/accessories/index.html b/en/devices/accessories/index.html
index 787309c0..a8173ed1 100644
--- a/en/devices/accessories/index.html
+++ b/en/devices/accessories/index.html
@@ -29,7 +29,7 @@ that extend Android capabilities in a wide range of Android-powered devices.
<div class="layout-content-row">
<div class="layout-content-col span-6">
- <h4 id="audio-accessories">Audio accessories</h4>
+ <h2 id="audio-accessories">Audio accessories</h2>
<p>Android supports local on-device audio and remote off-device audio
over a wired 3.5 mm headset jack, USB connection, or Bluetooth.
Manufacturers should see the <a
@@ -37,16 +37,16 @@ that extend Android capabilities in a wide range of Android-powered devices.
specifications</a>, while users can learn how to <a
href="https://support.google.com/nexus/answer/6127700">record and play
back audio using USB host mode</a>.</p>
- <p><a href="audio.html">&raquo; Audio Accessories</a></p>
+ <p><a href="/devices/accessories/audio">&raquo; Audio Accessories</a></p>
</div>
<div class="layout-content-col span-6">
- <h4 id="custom-accessories">Custom accessories</h4>
+ <h2 id="custom-accessories">Custom accessories</h2>
<p>What do you want to connect to your Android device? Alarm clock?
Keyboard? Thermostat? Robot? Learn how to connect existing equipment or
your own unique hardware to Android using the Android Open Accessory
(AOA) protocol.</p>
- <p><a href="custom.html">&raquo; Custom Accessories</a></p>
+ <p><a href="/devices/accessories/custom">&raquo; Custom Accessories</a></p>
</div>
</div>
diff --git a/en/devices/architecture/vndk/linker-namespace.html b/en/devices/architecture/vndk/linker-namespace.html
index 040d8441..b0d82512 100644
--- a/en/devices/architecture/vndk/linker-namespace.html
+++ b/en/devices/architecture/vndk/linker-namespace.html
@@ -45,7 +45,7 @@ application programming interfaces that are public to other programs while
hiding their implementation details within their linker namespaces.</p>
<p>For example, <code>/system/lib[64]/libcutils.so</code> and
-<code>/system/lib[64]/vndk-sp-${VER}/libutils.so</code> are two shared
+<code>/system/lib[64]/vndk-sp-${VER}/libcutils.so</code> are two shared
libraries. These two libraries may have different symbols. They will be loaded
into different linker namespaces so that framework modules can depend on
<code>/system/lib[64]/libcutils.so</code> and SP-HAL shared libraries can
diff --git a/en/devices/audio/latency/loopback.html b/en/devices/audio/latency/loopback.html
index bef46c69..af1ca6d4 100644
--- a/en/devices/audio/latency/loopback.html
+++ b/en/devices/audio/latency/loopback.html
@@ -31,7 +31,7 @@ for the
that we call the "Dr. Rick O'Rang audio loopback dongle."
The Chrome hardware team designed this circuit and plug for functional testing;
however it has many other uses too. The Android audio team uses it to measure
-<a href="latency_measure.html#measuringRoundTrip">round-trip audio latency</a>,
+<a href="measure.html#measuringRoundTrip">round-trip audio latency</a>,
via the Larsen effect (feedback loop).
</p>
diff --git a/en/devices/audio/latency/measure.html b/en/devices/audio/latency/measure.html
index 44cba6c3..a9612ed7 100644
--- a/en/devices/audio/latency/measure.html
+++ b/en/devices/audio/latency/measure.html
@@ -102,6 +102,17 @@ If your production device does not have an LED, you can install the
by itself because of the nature of the test, but it can be useful for
calibrating other tests, and for establishing an upper bound.</p>
+ <p>This method does not break down the
+ component times, which is important when the output latency
+ and input latency are independent. So this method is not recommended for measuring
+ precise output latency or input latency values in isolation, but might be useful
+ for establishing rough estimates.</p>
+
+ <p>
+ Output latency to on-device speaker can be significantly larger than
+ output latency to headset connector. This is due to speaker correction and protection.
+ </p>
+
<p>To conduct this test:</p>
<ol>
<li>Run an app that captures audio from the microphone and immediately plays the
@@ -112,25 +123,25 @@ If your production device does not have an LED, you can install the
<li>Measure the time between feedback pulses to get the sum of the output latency, input latency, and application overhead.</li>
</ol>
- <p>This method does not break down the
- component times, which is important when the output latency
- and input latency are independent. So this method is not recommended for measuring
- precise output latency or input latency values in isolation, but might be useful
- for establishing rough estimates.</p>
-
- <p>
- Output latency to on-device speaker can be significantly larger than
- output latency to headset connector. This is due to speaker correction and protection.
- </p>
+<p>Here are some resources for getting an app for the Larsen test:</p>
-<p>
-We have published an example implementation at
+<ul>
+<li>
+The Dr. Rick O'Rang loopback app is an Android app for audio feedback testing. You can
+<a href="https://play.google.com/store/apps/details?id=org.drrickorang.loopback"> download the app from Google Play</a>
+or <a href="https://www.google.com/url?q=https://github.com/gkasten/drrickorang/tree/master/LoopbackApp&sa=D&usg=AFQjCNFT8D7QTkhLdkZSNyvhmoU5yt_zvg">
+get the source code from GitHub</a>.
+</li>
+<li>
+We also published an example implementation at
<a href="https://android.googlesource.com/platform/frameworks/wilhelm/+/master/tests/examples/slesTestFeedback.cpp">slesTestFeedback.cpp</a>.
This is a command-line app and is built using the platform build environment;
however it should be straightforward to adopt the code for other environments.
You will also need the <a href="avoiding_pi.html#nonBlockingAlgorithms">non-blocking</a> FIFO code
located in the <code>audio_utils</code> library.
-</p>
+</li>
+</ul>
+
<h3 id="loopback">Audio Loopback Dongle</h3>
diff --git a/en/devices/audio/warmup.html b/en/devices/audio/warmup.html
index 7c37cd66..a12841f8 100644
--- a/en/devices/audio/warmup.html
+++ b/en/devices/audio/warmup.html
@@ -32,7 +32,7 @@ the circuit.
<p>This document describes how to measure audio warmup time and possible ways to decrease
warmup time.</p>
-<h2 id="measuringOutput">Measuring Output Warmup</h2>
+<h2 id="measuringOutput">Measuring output warmup</h2>
<p>
AudioFlinger's FastMixer thread automatically measures output warmup
@@ -86,7 +86,7 @@ sampleRate=44100 frameCount=256 measuredWarmup=X ms, warmupCycles=X
</ol>
-<h2 id="measuringInput">Measuring Input Warmup</h2>
+<h2 id="measuringInput">Measuring input warmup</h2>
<p>
There are currently no tools provided for measuring audio input warmup.
@@ -96,7 +96,7 @@ sampleRate=44100 frameCount=256 measuredWarmup=X ms, warmupCycles=X
</p>
-<h2 id="reducing">Reducing Warmup Time</h2>
+<h2 id="reducing">Reducing warmup time</h2>
<p>
Warmup time can usually be reduced by a combination of:
diff --git a/en/devices/graphics/arch-vulkan.html b/en/devices/graphics/arch-vulkan.html
index 75baa7ad..47c553ce 100644
--- a/en/devices/graphics/arch-vulkan.html
+++ b/en/devices/graphics/arch-vulkan.html
@@ -113,7 +113,7 @@ Loader </a>(libvulkan.so) at <code>platform/frameworks/native/vulkan</code>.
Contains Android's Vulkan loader, as well as some Vulkan-related tools useful to
platform developers.</li>
-<li><a href="https://android.googlesource.com/platform/frameworks/native/+/master/vulkan/doc/implementors_guide/implementors_guide.html">Vulkan
+<li><a href="/devices/graphics/implement-vulkan.html">Vulkan
Implementor's Guide</a>. Intended for GPU IHVs writing Vulkan drivers for
Android and OEMs integrating those drivers for specific devices. It describes
how a Vulkan driver interacts with the system, how GPU-specific tools should be
diff --git a/en/devices/tech/admin/managed-profiles.html b/en/devices/tech/admin/managed-profiles.html
index 17df9a6e..eddf5364 100644
--- a/en/devices/tech/admin/managed-profiles.html
+++ b/en/devices/tech/admin/managed-profiles.html
@@ -197,7 +197,7 @@ a Work Policy Controller</a>.</p>
devices.
</p>
- <h3 id="ux-changes-app-try">UX changes for devices with an app try</h3>
+ <h3 id="ux-changes-app-tray">UX changes for devices with an app tray</h3>
<p>
The managed profile UX changes for Launcher 3 in Android
diff --git a/en/devices/tech/config/namespaces_libraries.html b/en/devices/tech/config/namespaces_libraries.html
index 5dae4b07..8670d00b 100644
--- a/en/devices/tech/config/namespaces_libraries.html
+++ b/en/devices/tech/config/namespaces_libraries.html
@@ -66,7 +66,7 @@ in .txt files.
for libraries from silicon vendors</li>
<li><code>/system/lib</code> (for 32-bit) and <code>/system/lib64</code> (for 64-bit)
for libraries from device manufacturers</li>
-<ul>
+</ul>
<p>The .txt files are:</p>
<ul>
diff --git a/en/devices/tech/connect/esim-euicc-api.md b/en/devices/tech/connect/esim-euicc-api.md
index 87dd7c86..e5bafcb7 100644
--- a/en/devices/tech/connect/esim-euicc-api.md
+++ b/en/devices/tech/connect/esim-euicc-api.md
@@ -86,7 +86,7 @@ and
Gets the instance of `EuiccManager` through `Context#getSystemService`.
```
-EuiccManager mgr = context.getSystemService(Context.EUICC_SERVICE);
+EuiccManager mgr = (EuiccManager) context.getSystemService(Context.EUICC_SERVICE);
```
#### Check enabled (public)
@@ -245,5 +245,5 @@ mgr.startResolutionActivity(getActivity(), 0 /* requestCode */, resultIntent, ca
### Constants
-To see a list of the the `public` constants in `EuiccManager`, see
+To see a list of the `public` constants in `EuiccManager`, see
[Constants](https://developer.android.com/reference/android/telephony/euicc/EuiccManager#constants){: .external}.
diff --git a/en/devices/tech/connect/esim-overview.md b/en/devices/tech/connect/esim-overview.md
index 8c24b168..0aa91fcc 100644
--- a/en/devices/tech/connect/esim-overview.md
+++ b/en/devices/tech/connect/esim-overview.md
@@ -86,7 +86,7 @@ To use the public APIs, a carrier app must first obtain the instance of
`EuiccManager` through `Context#getSystemService`:
```
-EuiccManager mgr = context.getSystemService(Context.EUICC_SERVICE);
+EuiccManager mgr = (EuiccManager) context.getSystemService(Context.EUICC_SERVICE);
```
You should check whether eSIM is supported on the device before performing any
@@ -419,7 +419,7 @@ first obtain the instance of `EuiccCardManager` through
`Context#getSystemService`:
```
-EuiccCardManager cardMgr = context.getSystemService(Context.EUICC_CARD_SERVICE);
+EuiccCardManager cardMgr = (EuiccCardManager) context.getSystemService(Context.EUICC_CARD_SERVICE);
```
Then, to get all the profiles on the eUICC:
diff --git a/en/devices/tech/connect/wifi-debug.md b/en/devices/tech/connect/wifi-debug.md
index eff986d0..c778fdca 100644
--- a/en/devices/tech/connect/wifi-debug.md
+++ b/en/devices/tech/connect/wifi-debug.md
@@ -19,9 +19,9 @@ Book: /_book.yaml
limitations under the License.
-->
-# Testing and Debugging
+# Testing, Debugging, and Tuning Wi-Fi
-This page describes how to test and debug the Wi-Fi implementation using the
+This page describes how to test, debug, and tune the Wi-Fi implementation using the
tools provided in AOSP.
## Testing
@@ -72,7 +72,7 @@ Wi-Fi framework. These are located in
device-under-test to be associated with an Access Point at the start of the test
run.
-## Enhanced logging options
+## Enhanced logging options for debugging
Android {{ androidPVersionNumber }} improves Wi-Fi logging to make it easier to
debug Wi-Fi issues. In Android {{ androidPVersionNumber }}, driver/firmware ring
@@ -110,3 +110,56 @@ Run this manual test to verify that old files in the
1. Inspect the bugreport zip file and verify that
`/lshal-debug/android.hardware.wifi@1.2__IWifi_default.txt` holds the
archived firmware logs.
+
+## Configuration tuning
+
+To control the signal strength at which a device associates to or
+disassociates from a network, the Wi-Fi framework uses the *entry* and *exit*
+RSSI thresholds.
+
+The *entry* and *exit* thresholds are stored as overloadable configuration
+parameters with the following names (where the `bad` parameter refers to the
+*exit* RSSI threshold):
+
+* `config_wifi_framework_wifi_score_bad_rssi_threshold_5GHz`
+* `config_wifi_framework_wifi_score_entry_rssi_threshold_5GHz`
+* `config_wifi_framework_wifi_score_bad_rssi_threshold_24GHz`
+* `config_wifi_framework_wifi_score_entry_rssi_threshold_24GHz`
+
+The parameters are stored in
+`<root>/frameworks/base/core/res/res/values/config.xml` and may be overloaded
+using the overlay file
+`<root>/device/<dev_dir>/overlay/frameworks/base/core/res/res/values/config.xml`.
+
+Note: The `bad` configuration parameters (for 2.4GHz and 5GHz bands) were
+introduced pre-Android 8.1. The `entry` configuration parameters were introduced
+in Android 8.1 with the default values equal to the corresponding bad
+parameters. These defaults result in pre-Android 8.1 behavior where no
+hysteresis is used in network selection. To take advantage of the hysteresis
+functionality introduced in Android 8.1, set the `entry` parameters to 3dB or
+more above the `bad` parameters using the overlay file specified above.
+
+You can test new thresholds by configuring the device using adb commands.
+(Alternatively, you can create a build with new overlays but using adb commands
+provide a faster testing turnaround.)
+
+```
+% adb shell settings put global wifi_score_params \
+ [rssi2|rssi5]=<bad>:<entry>:<low>:<good>
+```
+
+For example, the following command configures new threshold parameters (the
+values used in this sample command are the configured defaults in the AOSP
+codebase):
+
+```
+% adb shell settings put global wifi_score_params \
+ rssi2=-85:-85:-73:-60,rssi5=-82:-82:-70:-57
+```
+
+To restore the built-in parameter values (i.e. remove the overrides) use the
+following adb command:
+
+```
+% adb shell settings delete global wifi_score_params
+```
diff --git a/en/devices/tech/debug/intsan.html b/en/devices/tech/debug/intsan.html
index 98bc653f..55b53ae6 100644
--- a/en/devices/tech/debug/intsan.html
+++ b/en/devices/tech/debug/intsan.html
@@ -33,9 +33,10 @@ the media framework</a> in Android 7.0. In Android 9, we
UBSan to cover more components</a> and improved build system support for it.
</p>
<p>
-If a signed or unsigned integer overflows, overflow sanitization is designed to
-safely abort process execution by instrumenting arithmetic instructions which
-may overflow. These sanitizers can mitigate an entire class of memory corruption
+This is designed to add checks around arithmetic
+operations&hairsp;/&hairsp;instructions鈥攚hich might
+overflow鈥攖o safely abort a process if an overflow does happen.
+These sanitizers can mitigate an entire class of memory corruption
and information disclosure vulnerabilities where the root cause is an integer
overflow, such as the original Stagefright vulnerability.
</p>
@@ -200,8 +201,8 @@ href="https://android-review.googlesource.com/c/platform/frameworks/av/+/572808"
href="https://clang.llvm.org/docs/LanguageExtensions.html#checked-arithmetic-builtins">__builtin_*_overflow</a>
functions (<a
href="https://android-review.googlesource.com/c/platform/frameworks/av/+/588160">example</a>)
-<li>Disabling sanitization the function via an attribute (<a
-href="https://android-review.googlesource.com/c/platform/frameworks/base/+/531720">example</a>)
+<li>Disabling sanitization in the function by specifying the <code>no_sanitize</code> attribute
+(<a href="https://android-review.googlesource.com/c/platform/frameworks/base/+/531720">example</a>)
<li>Disabling sanitization of a function or source file via a blacklist file (<a
href="https://android-review.googlesource.com/c/platform/frameworks/base/+/574222">example</a>)</li></ul>
<p>
@@ -212,13 +213,14 @@ blacklisted.
</p>
<p>
Common patterns that may result in benign overflows include:
-</p><ul>
-<li>Implicit casts where an unsigned overflow occurs before being cast to a
-signed type (<a
+</p>
+<ul>
+<li><a href="http://www.cplusplus.com/doc/tutorial/typecasting/" class="external">Implicit
+casts</a> where an unsigned overflow occurs before being cast to a signed type (<a
href="https://android-review.googlesource.com/c/platform/frameworks/av/+/574011">example</a>)
<li>Linked list deletions which decrements the loop index on deletion (<a
href="https://android-review.googlesource.com/c/platform/frameworks/base/+/588158">example</a>)
-<li>Assigning an unsigned type to -1 as shorthand for the max value (<a
+<li>Assigning an unsigned type to -1 instead of specifying the actual max value (<a
href="https://android-review.googlesource.com/c/platform/frameworks/native/+/574088/1/services/surfaceflinger/Layer.cpp">example</a>)
<li>Loops which decrement an unsigned integer in the condition (<a
href="https://android-review.googlesource.com/c/platform/frameworks/native/+/573763/1/services/inputflinger/InputReader.cpp">example</a>,
diff --git a/en/devices/tech/power/platform_mgmt.html b/en/devices/tech/power/platform_mgmt.html
index 97ddd571..eb95be1b 100644
--- a/en/devices/tech/power/platform_mgmt.html
+++ b/en/devices/tech/power/platform_mgmt.html
@@ -201,7 +201,7 @@ optimization guidelines</a>. For details, see <a href="#test-apps">Testing and
optimizing applications</a>.
<p><strong>OR</strong></p>
<li>Are exempted from Doze and App Standby. For details, see
-<a href="#exempt-apps">Exempting applications</a>.</li>
+<a href="/devices/tech/power/mgmt#exempt-apps">Exempting applications</a>.</li>
</ul>
</li>
<li>Confirm the necessary services are exempted from Doze.</li>
diff --git a/en/license.html b/en/license.html
index d9eaad86..b6142ed9 100644
--- a/en/license.html
+++ b/en/license.html
@@ -5,6 +5,12 @@
<meta name="book_path" value="/_book.yaml" />
</head>
<body>
+ <style>
+ devsite-content-footer {
+ display: none;
+ }
+ </style>
+
<!--
Copyright 2017 The Android Open Source Project
diff --git a/en/security/bulletin/2018.html b/en/security/bulletin/2018.html
index b172b8e3..19d6791d 100644
--- a/en/security/bulletin/2018.html
+++ b/en/security/bulletin/2018.html
@@ -38,15 +38,13 @@ of all bulletins, see the <a href="/security/bulletin/index.html">Android Securi
</tr>
<tr>
<td><a href="/security/bulletin/2018-10-01.html">October 2018</a></td>
- <td>Coming soon
- <!--
+ <td>
<a href="/security/bulletin/2018-10-01.html">English</a>&nbsp;/
<a href="/security/bulletin/2018-10-01.html?hl=ja">鏃ユ湰瑾</a>&nbsp;/
<a href="/security/bulletin/2018-10-01.html?hl=ko">頃滉淡鞏</a>&nbsp;/
<a href="/security/bulletin/2018-10-01.html?hl=ru">褉褍虂褋褋泻懈泄</a>&nbsp;/
<a href="/security/bulletin/2018-10-01.html?hl=zh-cn">涓枃&nbsp;(涓浗)</a>&nbsp;/
<a href="/security/bulletin/2018-10-01.html?hl=zh-tw">涓枃&nbsp;(鍙扮仯)</a>
- -->
</td>
<td>October 1, 2018</td>
<td>2018-10-01<br>
diff --git a/en/security/bulletin/index.html b/en/security/bulletin/index.html
index 512e1e88..954084d3 100644
--- a/en/security/bulletin/index.html
+++ b/en/security/bulletin/index.html
@@ -70,15 +70,13 @@ Android Open Source Project (AOSP), the upstream Linux kernel, and system-on-chi
</tr>
<tr>
<td><a href="/security/bulletin/2018-10-01.html">October 2018</a></td>
- <td>Coming soon
- <!--
+ <td>
<a href="/security/bulletin/2018-10-01.html">English</a>&nbsp;/
<a href="/security/bulletin/2018-10-01.html?hl=ja">鏃ユ湰瑾</a>&nbsp;/
<a href="/security/bulletin/2018-10-01.html?hl=ko">頃滉淡鞏</a>&nbsp;/
<a href="/security/bulletin/2018-10-01.html?hl=ru">褉褍虂褋褋泻懈泄</a>&nbsp;/
<a href="/security/bulletin/2018-10-01.html?hl=zh-cn">涓枃&nbsp;(涓浗)</a>&nbsp;/
<a href="/security/bulletin/2018-10-01.html?hl=zh-tw">涓枃&nbsp;(鍙扮仯)</a>
- -->
</td>
<td>October 1, 2018</td>
<td>2018-10-01<br>
diff --git a/en/security/bulletin/pixel/2018.html b/en/security/bulletin/pixel/2018.html
index a9df99ca..c8975ba4 100644
--- a/en/security/bulletin/pixel/2018.html
+++ b/en/security/bulletin/pixel/2018.html
@@ -40,15 +40,13 @@ Bulletins</a> homepage.</p>
</tr>
<tr>
<td><a href="/security/bulletin/pixel/2018-10-01.html">October 2018</a></td>
- <td>Coming soon
- <!--
+ <td>
<a href="/security/bulletin/pixel/2018-10-01.html">English</a>&nbsp;/
<a href="/security/bulletin/pixel/2018-10-01.html?hl=ja">鏃ユ湰瑾</a>&nbsp;/
<a href="/security/bulletin/pixel/2018-10-01.html?hl=ko">頃滉淡鞏</a>&nbsp;/
<a href="/security/bulletin/pixel/2018-10-01.html?hl=ru">褉褍虂褋褋泻懈泄</a>&nbsp;/
<a href="/security/bulletin/pixel/2018-10-01.html?hl=zh-cn">涓枃&nbsp;(涓浗)</a>&nbsp;/
<a href="/security/bulletin/pixel/2018-10-01.html?hl=zh-tw">涓枃&nbsp;(鍙扮仯)</a>
- -->
</td>
<td>October 1, 2018</td>
<td>2018-10-05</td>
diff --git a/en/security/bulletin/pixel/index.html b/en/security/bulletin/pixel/index.html
index bc54cfbe..0d348f72 100644
--- a/en/security/bulletin/pixel/index.html
+++ b/en/security/bulletin/pixel/index.html
@@ -60,15 +60,13 @@ AOSP 24&ndash;48 hours after the Pixel&hairsp;/&hairsp;Nexus bulletin is release
</tr>
<tr>
<td><a href="/security/bulletin/pixel/2018-10-01.html">October 2018</a></td>
- <td>Coming soon
- <!--
+ <td>
<a href="/security/bulletin/pixel/2018-10-01.html">English</a>&nbsp;/
<a href="/security/bulletin/pixel/2018-10-01.html?hl=ja">鏃ユ湰瑾</a>&nbsp;/
<a href="/security/bulletin/pixel/2018-10-01.html?hl=ko">頃滉淡鞏</a>&nbsp;/
<a href="/security/bulletin/pixel/2018-10-01.html?hl=ru">褉褍虂褋褋泻懈泄</a>&nbsp;/
<a href="/security/bulletin/pixel/2018-10-01.html?hl=zh-cn">涓枃&nbsp;(涓浗)</a>&nbsp;/
<a href="/security/bulletin/pixel/2018-10-01.html?hl=zh-tw">涓枃&nbsp;(鍙扮仯)</a>
- -->
</td>
<td>October 1, 2018</td>
<td>2018-10-05</td>
diff --git a/en/security/images/enterprise-whitepaper-cover.png b/en/security/images/enterprise-whitepaper-cover.png
new file mode 100644
index 00000000..c00ddb73
--- /dev/null
+++ b/en/security/images/enterprise-whitepaper-cover.png
Binary files differ
diff --git a/en/security/images/gpp.png b/en/security/images/gpp.png
new file mode 100644
index 00000000..2918273b
--- /dev/null
+++ b/en/security/images/gpp.png
Binary files differ
diff --git a/en/security/overview/acknowledgements.html b/en/security/overview/acknowledgements.html
index 90a9adb9..cb24c0bf 100644
--- a/en/security/overview/acknowledgements.html
+++ b/en/security/overview/acknowledgements.html
@@ -766,6 +766,10 @@ CVE-2017-15814</td>
<td>CVE-2017-13269</td>
</tr>
<tr>
+ <td>Sang Shin Jung of Deja vu Security</td>
+ <td>CVE-2017-13270</td>
+ </tr>
+ <tr>
<td>Tamir Zahavi-Brunner
(<a href="https://twitter.com/tamir_zb">&#64;tamir_zb</a>) of Zimperium zLabs Team</td>
<td>CVE-2017-13253</td>
diff --git a/en/security/overview/reports.html b/en/security/overview/reports.html
index dfb5f7ab..b66ff7d4 100644
--- a/en/security/overview/reports.html
+++ b/en/security/overview/reports.html
@@ -20,11 +20,36 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<p>Sometimes the Android Security team publishes reports or whitepapers. Here are some of the most recent.</p>
+<p>Sometimes the Android Security team publishes reports or white papers.
+Here are some of the most recent.</p>
+
+<h2 id="enterprise-2018">Android Enterprise Security White Paper</h2>
+
+
+<p>This security white paper outlines the approach Android takes to mobile
+security for enterprise customers, and details the strengths of the Android
+platform, the range of management APIs available to enforce control, and the
+role of Google Play Protect in detecting threats.</p>
+<p>
+<a href="/security/reports/Google_Android_Enterprise_Security_Whitepaper_2018.pdf"
+ class="button"
+ class="gc-analytics-event"
+ data-category="AOSP"
+ data-label="Enterprise"
+ data-action="download"
+ >Download this white paper</a></p>
+
+<a href="/security/reports/Google_Android_Enterprise_Security_Whitepaper_2018.pdf"
+ class="gc-analytics-event"
+ data-category="AOSP"
+ data-label="Enterprise"
+ ><img src="/security/images/enterprise-whitepaper-cover.png" class="screenshot"></a>
+
+
<h2 id="yir-2017">Year in Review 2017</h2>
-<p>This covers everything that Google did for Android security in 2017.</p>
+<p>This report covers everything that Google did for Android security in 2017.</p>
<p>
<a href="/security/reports/Google_Android_Security_2017_Report_Final.pdf"
class="button"
@@ -42,7 +67,7 @@
<h2 id="yir-2016">Year in Review 2016</h2>
-<p>This covers everything that Google did for Android security in 2016.</p>
+<p>This report covers everything that Google did for Android security in 2016.</p>
<p><a href="/security/reports/Google_Android_Security_2016_Report_Final.pdf"
class="button"
class="gc-analytics-event"
@@ -60,7 +85,7 @@
<h2 id="yir-2015">Year in Review 2015</h2>
-<p>This covers everything that Google did for Android security in 2015.</p>
+<p>This report covers everything that Google did for Android security in 2015.</p>
<p><a href="/security/reports/Google_Android_Security_2015_Report_Final.pdf"
class="button"
class="gc-analytics-event"
@@ -78,7 +103,7 @@
<h2 id="yir-2014">Year in Review 2014</h2>
-<p>This covers everything that Google did for Android security in 2014.</p>
+<p>This report covers everything that Google did for Android security in 2014.</p>
<p><a href="/security/reports/Google_Android_Security_2014_Report_Final.pdf"
class="button"
class="gc-analytics-event"
@@ -94,9 +119,28 @@
><img src="/security/images/yir-2014.png" class="screenshot"></a>
+<h2 id="keeping-harmful-apps-out-of-play">Keeping Harmful Apps out of Google
+ Play</h2>
+
+<p>This white paper covers some of the ways the Android Security Team reviews and
+detects apps that pose a potential security risk to users or their data.</p>
+<p><a href="/security/reports/Android_WhitePaper_Final_02092016.pdf"
+ class="button"
+ class="gc-analytics-event"
+ data-category="AOSP"
+ data-label="GPP"
+ data-action="download"
+ >Download this white paper</a></p>
+
+<a href="/security/reports/Android_WhitePaper_Final_02092016.pdf"
+ class="gc-analytics-event"
+ data-category="AOSP"
+ data-label="GPP"
+ ><img src="/security/images/gpp.png" class="screenshot"></a>
+
<h2 id="PHA-classifications">Classifications for Potentially Harmful Applications</h2>
-<p>This covers the Android Security Team鈥檚 taxonomy for classifying apps that
+<p>This report covers the Android Security Team鈥檚 taxonomy for classifying apps that
pose a potential security risk to users or their data.</p>
<p><a href="/security/reports/Google_Android_Security_PHA_classifications.pdf"
class="button"
diff --git a/en/setup/build/building.html b/en/setup/build/building.html
index b2446ee2..4c4fa5b0 100644
--- a/en/setup/build/building.html
+++ b/en/setup/build/building.html
@@ -24,7 +24,7 @@
<p>The following instructions to build the Android source tree apply to all
-branches, except <code>master</code>. The basic sequence of build commands
+branches, including <code>master</code>. The basic sequence of build commands
is as follows.</p>
<h2 id="obtaining-proprietary-binaries">Obtain proprietary binaries</h2>
@@ -44,9 +44,11 @@ resources.</p>
AOSP release branches from <a
href="https://developers.google.com/android/drivers" class="external">Google's
drivers</a>. These binaries add access to additional hardware capabilities
-with non-open source code. When building the <code>master</code> branch for
-a device, the binaries are part of the Android source tree and will be in the
-<code>vendor/</code> hierarchy.</p>
+with non-open source code. To build the AOSP master branch, use the
+<a href="https://developers.google.com/android/blobs-preview" class="external">
+Binaries Preview</a> instead. When building the master branch for a device, use
+the binaries for the <a href="/setup/start/build-numbers.html">most recent
+numbered release</a> or with the most recent date.</p>
<h3 id="extracting-proprietary-binaries">Extract proprietary binaries</h3>
diff --git a/en/setup/build/requirements.html b/en/setup/build/requirements.html
index 36df7fed..9fd85811 100644
--- a/en/setup/build/requirements.html
+++ b/en/setup/build/requirements.html
@@ -37,8 +37,11 @@
higher versions, including the master branch. You can compile older versions
on 32-bit systems.
</li>
- <li>At least 100GB of free disk space to checkout the code and an extra 150GB
+ <li>At least 250GB of free disk space to checkout the code and an extra 150GB
to build it. If you conduct multiple builds, you will need even more space.
+ <aside class="note"><strong>Note:</strong> If you are checking out a mirror
+ you will need more space as full Android Open Source Project (AOSP) mirrors
+ contain all Git repositories that have ever been used.</aside>
</li>
<li>If you are running Linux in a virtual machine, you need at
least 16GB of RAM/swap.
diff --git a/en/setup/build/running.html b/en/setup/build/running.html
index d293e645..4650d2c6 100644
--- a/en/setup/build/running.html
+++ b/en/setup/build/running.html
@@ -48,6 +48,26 @@ During a cold boot of a device, use the following key combinations to boot into
</thead>
<tbody>
<tr>
+<td>Pixel 3 XL</td>
+<td>crosshatch</td>
+<td>Press and hold <em>Volume Down</em>, then press and hold <em>Power</em>.</td>
+</tr>
+<tr>
+<td>Pixel 3</td>
+<td>blueline</td>
+<td>Press and hold <em>Volume Down</em>, then press and hold <em>Power</em>.</td>
+</tr>
+<tr>
+<td>Pixel 2 XL</td>
+<td>taimen</td>
+<td>Press and hold <em>Volume Down</em>, then press and hold <em>Power</em>.</td>
+</tr>
+<tr>
+<td>Pixel 2</td>
+<td>walleye</td>
+<td>Press and hold <em>Volume Down</em>, then press and hold <em>Power</em>.</td>
+</tr>
+<tr>
<td>Pixel XL</td>
<td>marlin</td>
<td>Press and hold <em>Volume Down</em>, then press and hold <em>Power</em>.</td>
@@ -298,6 +318,26 @@ binaries</a>.
</thead>
<tbody>
<tr>
+<td>Pixel 3 XL</td>
+<td>crosshatch</td>
+<td>aosp_crosshatch-userdebug</td>
+</tr>
+<tr>
+<td>Pixel 3</td>
+<td>blueline</td>
+<td>aosp_blueline-userdebug</td>
+</tr>
+<tr>
+<td>Pixel 2 XL</td>
+<td>taimen</td>
+<td>aosp_taimen-userdebug</td>
+</tr>
+<tr>
+<td>Pixel 2</td>
+<td>walleye</td>
+<td>aosp_walleye-userdebug</td>
+</tr>
+<tr>
<td>Pixel XL</td>
<td>marlin</td>
<td>aosp_marlin-userdebug</td>
diff --git a/en/setup/contribute/report-bugs.html b/en/setup/contribute/report-bugs.html
index 2b31206f..2a2a3ead 100644
--- a/en/setup/contribute/report-bugs.html
+++ b/en/setup/contribute/report-bugs.html
@@ -221,6 +221,12 @@ Developer Tools issues</a>
<th>File a bug</th>
</tr>
<tr>
+ <td><a href="https://issuetracker.google.com/issues?q=componentid:192795">ADB</a></td>
+ <td></td>
+ <td><a href="https://issuetracker.google.com/issues/new?component=192795">
+ <i class="material-icons">bug_report</i></a></td>
+ </tr>
+ <tr>
<td><a href="https://issuetracker.google.com/issues?q=componentid:192633%2B">Android
Studio</a></td>
<td><a href="https://developer.android.com/studio/report-bugs.html#studio-bugs">Android
diff --git a/en/setup/images/Android_greenrobot.ai b/en/setup/images/Android_greenrobot.ai
new file mode 100644
index 00000000..eb5d9036
--- /dev/null
+++ b/en/setup/images/Android_greenrobot.ai
@@ -0,0 +1,587 @@
+%PDF-1.5 %忏嫌
+1 0 obj <</Metadata 2 0 R/OCProperties<</D<</ON[5 0 R 21 0 R]/Order 22 0 R/RBGroups[]>>/OCGs[5 0 R 21 0 R]>>/Pages 3 0 R/Type/Catalog>> endobj 2 0 obj <</Length 15312/Subtype/XML/Type/Metadata>>stream
+<?xpacket begin="锘" id="W5M0MpCehiHzreSzNTczkc9d"?>
+<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.6-c137 79.159768, 2016/08/11-13:24:42 ">
+ <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
+ <rdf:Description rdf:about=""
+ xmlns:xmp="http://ns.adobe.com/xap/1.0/"
+ xmlns:xmpGImg="http://ns.adobe.com/xap/1.0/g/img/"
+ xmlns:xmpTPg="http://ns.adobe.com/xap/1.0/t/pg/"
+ xmlns:stDim="http://ns.adobe.com/xap/1.0/sType/Dimensions#"
+ xmlns:xmpG="http://ns.adobe.com/xap/1.0/g/"
+ xmlns:illustrator="http://ns.adobe.com/illustrator/1.0/"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/"
+ xmlns:pdf="http://ns.adobe.com/pdf/1.3/">
+ <xmp:CreatorTool>Adobe Illustrator CC 22.0 (Macintosh)</xmp:CreatorTool>
+ <xmp:CreateDate>2018-02-13T17:13:18+01:00</xmp:CreateDate>
+ <xmp:ModifyDate>2018-02-14T01:09:06+01:00</xmp:ModifyDate>
+ <xmp:MetadataDate>2018-02-14T01:09:06+01:00</xmp:MetadataDate>
+ <xmp:Thumbnails>
+ <rdf:Alt>
+ <rdf:li rdf:parseType="Resource">
+ <xmpGImg:width>216</xmpGImg:width>
+ <xmpGImg:height>256</xmpGImg:height>
+ <xmpGImg:format>JPEG</xmpGImg:format>
+ <xmpGImg:image>/9j/4AAQSkZJRgABAgEASABIAAD/7QAsUGhvdG9zaG9wIDMuMAA4QklNA+0AAAAAABAASAAAAAEA&#xA;AQBIAAAAAQAB/+4ADkFkb2JlAGTAAAAAAf/bAIQABgQEBAUEBgUFBgkGBQYJCwgGBggLDAoKCwoK&#xA;DBAMDAwMDAwQDA4PEA8ODBMTFBQTExwbGxscHx8fHx8fHx8fHwEHBwcNDA0YEBAYGhURFRofHx8f&#xA;Hx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8f/8AAEQgBAADYAwER&#xA;AAIRAQMRAf/EAaIAAAAHAQEBAQEAAAAAAAAAAAQFAwIGAQAHCAkKCwEAAgIDAQEBAQEAAAAAAAAA&#xA;AQACAwQFBgcICQoLEAACAQMDAgQCBgcDBAIGAnMBAgMRBAAFIRIxQVEGE2EicYEUMpGhBxWxQiPB&#xA;UtHhMxZi8CRygvElQzRTkqKyY3PCNUQnk6OzNhdUZHTD0uIIJoMJChgZhJRFRqS0VtNVKBry4/PE&#xA;1OT0ZXWFlaW1xdXl9WZ2hpamtsbW5vY3R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo+Ck5SVlpeYmZ&#xA;qbnJ2en5KjpKWmp6ipqqusra6voRAAICAQIDBQUEBQYECAMDbQEAAhEDBCESMUEFURNhIgZxgZEy&#xA;obHwFMHR4SNCFVJicvEzJDRDghaSUyWiY7LCB3PSNeJEgxdUkwgJChgZJjZFGidkdFU38qOzwygp&#xA;0+PzhJSktMTU5PRldYWVpbXF1eX1RlZmdoaWprbG1ub2R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo&#xA;+DlJWWl5iZmpucnZ6fkqOkpaanqKmqq6ytrq+v/aAAwDAQACEQMRAD8A9U4q7FXYq7FXYq7FXYql&#xA;3mOwn1DRLu0t3KTSp8BG1SpDcf8AZUplGpxmeMxHNrzQMokBiP5b646SS6Jckg1L2wbqCPtpv9/3&#xA;5ruzc9Hwz8HD0eX+Es/zcOwdirsVdirsVdirsVdirsVYL+ZHmB4kj0i1ciSQc7oqaHifspt/N1P0&#xA;Zqu0tRXoHxcHWZa9IZL5V0+50/QbS1uWJmVSzqf2eRLcP9jWmZulxmGMA83JwQMYAFNcyG12KuxV&#xA;2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV5r560qbSdah1qy+BJnDkjos67n/g+v35o9diOOYyR6/e6z&#xA;VQMJcQZ7ouqwappsF7DsJV+Nf5XGzKfkc2+HKMkRIOwxzEo2EblrN2KoeXUtOhNJrqGM+DyKv6zk&#xA;DkiOZDEzA5lD/wCIdA/6udp/yPj/AOash+Yx/wA6PzDHxod4+avFqemzGkN3DIfBJEb9RyYyxPIh&#xA;kJxPIonJsnYqhdU1GDTdPnvZz+7hUtToWPRVHuTtleXIIRMj0YTmIiy888m6dPr3mGbV73444H9V&#xA;yejSn7Cj2WlfoGabR4zlyGcun3uv08DknxF6bm9dm7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq&#xA;7FUDrWlQ6rpk9jLsJV+B/wCVxurfQcqz4hkgYlhkgJxIeceVvMz+W7i9sr6N5Iqn90lCVmQ8TSpA&#xA;oe/yGaTS6nwCYy5fpdbgzeGSCq6l+ZWtXBK2aJZx9iB6j/8ABMOP/C5LJ2lM/T6Uz1kjy2Y5eavq&#xA;t4Sbq7mmB/Zd2K/QtaDMKeacuZJcaWSUuZQmVsHYq7FUVaarqdmQbW6lgp2R2A+kA0yyGWceRIZx&#xA;ySHIsi038ydctqLdql5GOpYcH/4JdvvXMzH2lkjz9TkQ1kxz3W+a/Np8wLaWdnE8UdQ0kbkVaUni&#xA;oqDSg/jjq9X41RiP7Vz6jxKAeh+XtHi0jSobNKF1HKZx+1I32j/Ae2bjT4RjgIuxw4+CNJjl7Y7F&#xA;XYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYqhtS1Oy021a6vJRFCu1T1J8FHc5XkyxgLkdmM5iIsvMv&#xA;MfnzUdSLQWhNpZHbip/eOP8AKYdPkPxzR6nXyntHaLq82qlLYbBi+YDiuxV2KuxV2KuxV2KuxV2K&#xA;sl8u+edT0orDOTd2I29Nj8aj/IY/qO2Z2n108ex3i5WHVShsdw9O0vVrDVLVbmylEkZ2YdGU+DDs&#xA;c3uLLHILi7OGQSFhF5YzdirsVdirsVdirsVdirsVdirsVdirsVQOs6xZ6TYveXTfCuyIPtOx6KuV&#xA;Zs0cceIteTIICy8g13Xr/Wbw3F01FFRDCPsop7D+Jzm8+eWWVl1GXKZmyl2UtTsVdirsVdirsVdi&#xA;rsVdirsVdiqP0XW77SLxbm0enQSRH7Dr4MMuw55Y5WGzHkMDYev6HrllrFit1bGn7MsR+0jeB/gc&#xA;6PBnjkjYdxiyiYsJhlzY7FXYq7FXYq7FXYq7FXYq7FXYqsmmihheaVgkUalnc9AoFScEiALKCaFv&#xA;HPNPmKbW9RaWpW1iqttEey/zH/KbvnNarUHLK+nR02fMZy8knzGaUXpOmz6nqMFjBQSTNTkegAFW&#xA;Y/ICuWYsZnIRHVnjgZSADP5fyv0o2nCK5mF0BtK3EoW90A6fTm4PZcK2Jt2B0Ua57vOru1mtbqa2&#xA;mFJYHaNx2qpoc0s4mJIPR10o0aKlkWLsVdirsVdiq+CGSeaOGIcpJWCIvizGgGGMSTQSBZp6Nbfl&#xA;fpgtAtzczNdkfFInEIG9lINR9ObqPZcOHcm3ZDRRrc7sE1vSZ9J1KaxmPJoiOLjYMpFVb7s1OfEc&#xA;cjEuBkxmEqKByprTTy5r1xouopcx1aFqLcRdnT+o6jMjTZzilY5dW3DlMJW9mtrmC6t47iBw8Mqh&#xA;43HcHOljISFjk7qJBFhUySXYq7FXYq7FXYq7FXYq7FXYqwf8y9cMVvHpMLUecepc07ID8K/7Iiv0&#xA;Zqu089DgHXm4Osy0OEPOc0rrXYqj9C1V9J1W3v1XmIieadOSsCrD7jl2DL4cxJsxZOCQL0uX8wfL&#xA;KWhnSdpJKVFuEYPXw3HH8c3h7QxVd/B2Z1cKu3lmoXkl7fXF3IAr3EjSMo6Dka0+jNBknxSMj1dV&#xA;OXESVDIMXYq7FXYq7FVW0uZLW6huY6epA6yJXpyQhh+rJQkYkEdGUTRt6pbfmD5bktBNLM0MoHx2&#xA;7IxavgCAQfvzfx7QxGNk07UauBFvOfMesfpfV5r0KUjaixIeoRRQV9z1zS6nN4kzJ1ubJxytLMoa&#xA;nYq9A/LPXGIl0eZq8QZbWvh+2v8Axt9+bjszPzgfg7DRZf4Sz7Nu7B2KuxV2KuxV2KuxV2KuxVxI&#xA;AqdgOpxV4hr2pNqWr3V6TVZXPpjwRdkH/AgZy2fLxzMnR5Z8UiUBlLW7FXYq7FXYq7FXYq7FXYq7&#xA;FXYq7FXYq7FXYqi9J1CTT9Str1OsDhiPFejD6VqMsxZOCQl3M8c+GQL3KN0kRZEPJHAZSO4O4zqg&#xA;bd6C3hV2KuxV2KuxV2KuxV2KpX5puzaeXr+cGjCFkU+Bk+Afi2Y+qnw45Hyas8qgS8VzmHSOxV2K&#xA;uxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KvZPJt2bryzYSE1ZI/SP8AzyYoPwXOl0c+LFEu608r&#xA;gE6zKbnYq7FXYq7FXYq7FXYqxr8xHK+WJgOjyRqflyr/AAzB7RP7o/BxtWf3bybOedQ7FXYq7FXY&#xA;q7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq9T/LSTl5dZa19O4dfl8Kt/wAbZv8Asw/uvi7XRn0fFleb&#xA;By3Yq7FXYqgtW1iw0q1NzeycE6Ko3Zm/lUdzlWXNHGLkwyZBAWWD335pXhkIsbONIwdjOWdiPkpS&#xA;n3nNVPtSV+kfNwZa49A3Y/mldCQC/s0aM/aaAlSP9i5av34cfah/iHyWOuPUM60zVLHU7VbqzlEk&#xA;TbHsVP8AKw7HNriyxmLiXOhMSFhbq2pWGnWZub48bcMFJ4l9z02AODLkjCNy5LkmIiykn+OfJ/8A&#xA;vz/ki3/NOYv57D+A0fmsbv8AHPk//fn/ACRb/mnH89h/AX81jd/jnyf/AL8/5It/zTj+ew/gL+ax&#xA;u/xz5P8A9+f8kW/5px/PYfwF/NY3f458n/78/wCSLf8ANOP57D+Av5rG7/HPk/8A35/yRb/mnH89&#xA;h/AX81jd/jnyf/vz/ki3/NOP57D+Av5rG7/HPk//AH5/yRb/AJpx/PYfwF/NY3f458n/AO/P+SLf&#xA;804/nsP4C/msbv8AHPk//fn/ACRb/mnH89h/AX81jd/jnyf/AL8/5It/zTj+ew/gL+axu/xz5P8A&#xA;9+f8kW/5px/PYfwF/NY3f458n/78/wCSLf8ANOP57D+Av5rG7/HPk/8A35/yRb/mnH89h/AX81jd&#xA;/jnyf/vz/ki3/NOP57D+Av5rG7/HPk//AH5/yRb/AJpx/PYfwF/NY3f458n/AO/P+SLf804/nsP4&#xA;C/msacaNqum6natPp7coVcxseJT4gATsQOzDMnDljMXHk3Y8kZCwr6hqNnp9q91eSiKFOrHqSegA&#xA;G5OTyZIwFy5MpzERZYLqH5pT+oV06zURg7PcEkn/AGKFaf8ABHNTk7UN+kfNwJ64/wAIUrP80r8S&#xA;D65ZxSR9/RLIR/wRfBDtSV+oBEdceoZzo+t6fq9r9Ys5OSjaRDs6HwYZtcOeOQXFzseQTFh5T5u1&#xA;uXVdZmk5Vt4WMVsvYIppX5t1zn9XnOSZPQcnVajJxy8klzFaHYqn/krW5dM1uFeX+jXTLDOnb4jR&#xA;W/2JP3ZmaLOYZB3FyNNk4ZeRZx+Y3/KNP/xlj/Xm07R/uvi52s+h5RnPupdirsVdirsVdirsVdir&#xA;sVdirsVdirsVdirsVdirsVen/lf/AMcC4/5i3/5Nx5vey/7s/wBb9AdpovoPvYr591uXUNaltgx+&#xA;q2TGKNOxcbOx+nbMDX5zPJXSLi6rJxSroGNZguK7FU18s61LpGrQ3IYiAkJcp2aMnf7uozI02Y45&#xA;g9OrbhycErSrMdqdirsVVLY0uIiOvNf15KPMJHN6n+Y3/KNP/wAZY/15vu0f7r4u11n0PKM591Ls&#xA;VdirsVdirsVdirsVdirsVdirsVdirsVdirsVdir0/wDK/wD44Fx/zFv/AMm483vZf92f636A7TRf&#xA;Qfe841IltRumJqTNISf9kc0uT6j73Wz+oofIMXYq7FXYq7FXYqqW/wDvRF/rr+vDHmEjm9T/ADG/&#xA;5Rp/+Msf683/AGj/AHXxdrrPoeUZz7qXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXp/5X&#xA;/wDHAuP+Yt/+Tceb3sv+7P8AW/QHaaL6D73nGof733P/ABlf/iRzS5PqPvdbPmUPkGLsVdirsVdi&#xA;rsVVLf8A3oi/11/XhjzCRzep/mN/yjT/APGWP9eb/tH+6+LtdZ9DyjOfdS7FXYq7FXYq7FXYq7FX&#xA;Yq7FXYq7FXYq7FXYq7FXYq9P/K//AI4Fx/zFv/ybjze9l/3Z/rfoDtNF9B97zjUP977n/jK//Ejm&#xA;lyfUfe62fMofIMXYq7FXYq7FXYqqW/8AvRF/rr+vDHmEjm9T/Mb/AJRp/wDjLH+vN/2j/dfF2us+&#xA;h5RnPupdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVen/lf/wAcC4/5i3/5Nx5vey/7s/1v&#xA;0B2mi+g+95xqH+99z/xlf/iRzS5PqPvdbPmUPkGLsVdirsVdirsVVLf/AHoi/wBdf14Y8wkc3qf5&#xA;jf8AKNP/AMZY/wBeb/tH+6+LtdZ9DyjOfdS7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq9&#xA;P/K//jgXH/MW/wDybjze9l/3Z/rfoDtNF9B97zjUP977n/jK/wDxI5pcn1H3utnzKHyDF2KuxV2K&#xA;uxV2Kqlv/vRF/rr+vDHmEjm9T/Mb/lGn/wCMsf683/aP918Xa6z6HlGc+6l2KuxV2KuxV2KuxV2K&#xA;uxV2KuxV2KuxV2KuxV2KuxV6f+V//HAuP+Yt/wDk3Hm97L/uz/W/QHaaL6D73nGof733P/GV/wDi&#xA;RzS5PqPvdbPmUPkGLsVdirsVdirsVVLf/eiL/XX9eGPMJHN6n+Y3/KNP/wAZY/15v+0f7r4u11n0&#xA;PKM591LsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdir0/wDK/wD44Fx/zFv/AMm483vZf92f&#xA;636A7TRfQfe841D/AHvuf+Mr/wDEjmlyfUfe62fMofIMXYq7FXYq7FXYqqW/+9EX+uv68MeYSOb1&#xA;P8xv+Uaf/jLH+vN/2j/dfF2us+h5RnPupdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVen/&#xA;AJX/APHAuP8AmLf/AJNx5vey/wC7P9b9AdpovoPvecah/vfc/wDGV/8AiRzS5PqPvdbPmUPkGLsV&#xA;dirsVdirsVVLYE3EQG5LrQfTko8wkc3qf5jf8o0//GWP9eb7tH+6+LtdZ9DyjOfdS7FXYq7FXYq7&#xA;FXYq7FXYq7FXYq7FXYq7FXYq7FXYq9P/ACv/AOOBcf8AMW//ACbjze9l/wB2f636A7TRfQfe841I&#xA;FdRulIoRNICP9kc0uT6j73Wz+oofIMXYq7FU7836JLpWszLxpbTsZbZ+3FjUr/sSaZlazAccz3Hk&#xA;36jFwS8kkzFaHYqyHyRokmpa3FIV/wBFtGE0z9qqaov+yI+7MzQ4DPID0DkabFxS8gzb8xv+Uaf/&#xA;AIyx/rzado/3Xxc7WfQ8ozn3UuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KvT/AMr/APjg&#xA;XH/MW/8Aybjze9l/3Z/rfoDtNF9B97FvP2hy2GsyXaKfql6xkV+wkO7qfeu+YGvwGE76ScXVYuGV&#xA;9CxnMFxXYqm3ljRJdX1aG3VawIQ9y/YRg7/S3QZkaXAckwOnVuwYuOVPXdU0qx1S1a1vYxJEdx2Z&#xA;T/Mp7HOjy4o5BUnbzxiQosHvfysnEhNleqYz0WZSGA+a1r9wzVT7LN+k/NwZaE9Cusfytk9QG+vV&#xA;9MHdIFJJH+s1KfccMOyzfqPyTHQ95Zxp2m2WnWq2tnEIoV3oOpPixO5ObTHijAVEbOdCAiKCQ/mN&#xA;/wAo0/8Axlj/AF5ido/3XxcfWfQ8ozn3UuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KvT/&#xA;AMr/APjgXH/MW/8Aybjze9l/3Z/rfoDtNF9B97KL6ws7+2e2u4hLA/VW8fEHsffM/JjjMVIWHKlA&#xA;SFFg+oflaTIW0+8AjPSOcGo/2S9f+BzVZOy9/Sfm4M9D3FTs/wArLkyA3l6ixA7iFSWI+bUp9xwQ&#xA;7LN+oojoT1LNtI0bT9Jtfq9lFwU7u53dz4s3fNphwxxioudjxiAoI3LWbsVdirsVYx+YwJ8syEDp&#xA;LGT99Mwe0f7r4uLrPoeUZzzqXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXqH5Yoy+X5ie&#xA;jXTlflwQfwzfdmD92ff+p2mi+j4suzYuY7FXYq7FXYq7FXYq7FUFrWmpqelXNixp6yUVj0DjdT9D&#xA;AZVnxccDHvYZIcUSHid1az2tzJbXCGOaJiroeoIzl5xMTR5uklEg0VLIsXYq7FXYq7FXYq7FXYq7&#xA;FXYq7FXYq7FXYq7FV8EE08yQwoZJZCFRF3JJ6DDGJJoJAJNB7V5e0oaVo9tZVBeNaysO7seTfic6&#xA;jT4vDgIu7w4+CICY5c2OxV2KuxV2KuxV2KuxV2KpJ5i8pabrah5aw3aiiXKAVp4MP2hmLqNJHLz2&#xA;Pe0ZtPGfvYXP+WOuJIRDNbyp2Ysyn6RxP681kuzMnQhwjop9KU/+VaeYv5rf/g2/5pyP8mZfJH5O&#xA;fkx3U9Pn06+lsrjiZoSA/A1XcA7HbxzCy4zCRieYcecDE0UNkGDsVdirItM8i63qNjFe27QiGYEp&#xA;zchtiRuOJ8MzcWhyTiJCqLkw0spCwif+VaeYv5rf/g2/5pyf8mZfJl+Tn5IfUPIWuWFlNeTtCYoV&#xA;5Pxck09hxGQyaDJCJkaoMZ6WcRZY5mE4zsVdiqI0+xmv72GzgoJZm4pyNBX3O+TxwM5CI5llCJka&#xA;DI/+VaeYv5rf/g2/5pzN/kzL5OT+Tn5KkP5Y660gEs1vGndgzMfoHEfrwx7MydSEjRT8mY+XfJ2m&#xA;aL+9WtxeEUNw4ApXrwX9n9ebPTaOOLfnLvczDp4w8yn2ZbkOxV2KuxV2KuxV2KuxV2KuxV2KuxV2&#xA;KvHPO3/KU3/+uv8AxBc5rW/3snTan+8KSZitDsVdir2PyT/yi1h/qN/ycbOl0X91F3Om/uwneZTe&#xA;lHm//lGdQ/4xH9YzG1n91L3NOo+gvGM5l0rsVdiqb+UP+Ul0/wD4yj9RzJ0f97H3t2n+sPZ86Z3T&#xA;sVdirsVdirsVdirsVdirsVdirsVdirsVdirsVeOedv8AlKb/AP11/wCILnNa3+9k6bU/3hSTMVod&#xA;irsVex+Sf+UWsP8AUb/k42dLov7qLudN/dhO8ym9KPN//KM6h/xiP6xmNrP7qXuadR9BeMZzLpXY&#xA;q7FU38of8pLp/wDxlH6jmTo/72PvbtP9Yez50zunYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXY&#xA;q8c87f8AKU3/APrr/wAQXOa1v97J02p/vCkmYrQ7FXYq9j8k/wDKLWH+o3/Jxs6XRf3UXc6b+7Cd&#xA;5lN6Ueb/APlGdQ/4xH9YzG1n91L3NOo+gvGM5l0rsVdiqb+UP+Ul0/8A4yj9RzJ0f97H3t2n+sPZ&#xA;86Z3TsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVeOedv+Upv/APXX/iC5zWt/vZOm1P8AeFJM&#xA;xWh2KuxV7H5J/wCUWsP9Rv8Ak42dLov7qLudN/dhO8ym9KPN/wDyjOof8Yj+sZjaz+6l7mnUfQXj&#xA;Gcy6V2KuxVN/KH/KS6f/AMZR+o5k6P8AvY+9u0/1h7PnTO6dirsVdirsVdirsVdirsVdirsVdirs&#xA;VdirsVdiryf8xLGS38xyTlaR3SJIh7VVQjD71znu0YVlvvdTq41O+9jOYLiuxV2KvbPLdk9loVjb&#xA;SCkiRAup7M3xEfQTnUaaHDjAPc7vDHhgAmWXtqC1qza90i8tUFXmhdUH+UVPH8cqzw4oEd4YZI8U&#xA;SHhzKVJVhRhsQeoOcq6J2KuxVkPkKxkuvMtsyj4LblNIfAAUH/DEZmaCBllHk5Oljcx5PXc6N27s&#xA;VdirsVdirsVdirsVdirsVdirsVdirsVdirsVSnzL5dttcsPQkPpzxktbzUqVbv8AQe+Y+p04yxo8&#xA;+jTmwiYp5Tq3l3WNKkZbu3YIOk6gtGR7MNvv3zn8unnjPqDqsmGUOYQEME88gjgjaWQ9ERSx+4ZT&#xA;GJOwawCeTOvKHkO4S4j1DVk4LGQ8Nod2LDoz+AHh9+bbR6A3xT+Tn6fSm7k9BzcOwdirsVYJ5x8i&#xA;zXE76jpShpJCWuLWtCW7slfHuM1Os0JJ4ofEOBqNKSeKLALi2ubeQx3ETwyDqkilT9xzUSiYmiKd&#xA;eYkc0Xpeg6tqcgSztndSaGUikY+bHbLMWCcz6QzhilLkHqvlby1BodkYwwlupaG4mpSpHRV/yRm/&#xA;0umGKPmXa4MIgPNOsym92KuxV2KuxV2KuxV2Kv8A/9k=</xmpGImg:image>
+ </rdf:li>
+ </rdf:Alt>
+ </xmp:Thumbnails>
+ <xmpTPg:NPages>1</xmpTPg:NPages>
+ <xmpTPg:HasVisibleTransparency>False</xmpTPg:HasVisibleTransparency>
+ <xmpTPg:HasVisibleOverprint>False</xmpTPg:HasVisibleOverprint>
+ <xmpTPg:MaxPageSize rdf:parseType="Resource">
+ <stDim:w>294.000000</stDim:w>
+ <stDim:h>345.000000</stDim:h>
+ <stDim:unit>Pixels</stDim:unit>
+ </xmpTPg:MaxPageSize>
+ <xmpTPg:PlateNames>
+ <rdf:Seq>
+ <rdf:li>Cyan</rdf:li>
+ <rdf:li>Yellow</rdf:li>
+ </rdf:Seq>
+ </xmpTPg:PlateNames>
+ <xmpTPg:SwatchGroups>
+ <rdf:Seq>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:groupName>Default Swatch Group</xmpG:groupName>
+ <xmpG:groupType>0</xmpG:groupType>
+ </rdf:li>
+ </rdf:Seq>
+ </xmpTPg:SwatchGroups>
+ <illustrator:Type>Document</illustrator:Type>
+ <dc:format>application/pdf</dc:format>
+ <dc:title>
+ <rdf:Alt>
+ <rdf:li xml:lang="x-default">Android_greenrobot</rdf:li>
+ </rdf:Alt>
+ </dc:title>
+ <xmpMM:RenditionClass>proof:pdf</xmpMM:RenditionClass>
+ <xmpMM:DocumentID>uuid:6736fde3-155d-1646-8e63-9398a20007bc</xmpMM:DocumentID>
+ <xmpMM:InstanceID>uuid:d397a9d2-21ac-4393-811e-472621122d7c</xmpMM:InstanceID>
+ <pdf:Producer>Adobe PDF library 15.00</pdf:Producer>
+ </rdf:Description>
+ </rdf:RDF>
+</x:xmpmeta>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<?xpacket end="w"?>
+endstream endobj 3 0 obj <</Count 1/Kids[7 0 R]/Type/Pages>> endobj 7 0 obj <</ArtBox[7.6001 7.59961 286.4 337.493]/BleedBox[0.0 0.0 294.0 345.0]/Contents 23 0 R/CropBox[0.0 0.0 294.0 345.0]/LastModified(D:20180214010906+02'00')/MediaBox[0.0 0.0 294.0 345.0]/Parent 3 0 R/PieceInfo<</Illustrator 24 0 R>>/Resources<</ExtGState<</GS0 25 0 R>>/Properties<</MC0 21 0 R>>>>/Thumb 26 0 R/TrimBox[0.0 0.0 294.0 345.0]/Type/Page>> endobj 23 0 obj <</Filter/FlateDecode/Length 634>>stream
+H壃U薾0 茧+fH絬矶)(F揀?小$跩嶦乃釖%z拒栳&翎銔軏
+1憃63^炕o糅 菕H竏3Dプg黟畜鰾p釵勺蘍$扺↓3=U偾F[cM圔5邡?v鍖馦g覄bq愚jⅪ匷懗师扤 ;'3Kz递齮?苡%V揜)o刓2V$$A+谙e85l懙g-厎犪亦顏氊[5蒎Z充鋹》屏\毪nzrws抴鸴翝
+兑戈t\3緝C呝S[M煳s諨^镅i梈q昆略储椔綿蕰[JFZKボT!lF腵,乱偂鏒圗3)熯z9YfJ]@ 潳鱪 kV靷燭M4Dm緋E$堔襌f:lGNU5k跔覧
+埽②4粚蚖k6 瞇{#怄T:.橆淵撬L睃34錭瑕 窿R侴-击4Ol瓌榔塭监矫+:萙胪6G鄛
+0
+endstream endobj 26 0 obj <</BitsPerComponent 8/ColorSpace 27 0 R/Filter[/ASCII85Decode/FlateDecode]/Height 43/Length 263/Width 36>>stream
+8;YQT;%<[O#Xf3GQQ1`1Eh0ci/(e9Iqc1aKUESt3),S!WCHVDN:La_j&sT.2T;B@D
++f6QQdZZWnbTQ.<6'.s8(9!C09TL`lM0BleM8o27)bbouHK7,;B(a7EXH7&.:D/@<
+0$KF[p14p*93+cloEij3`p+P#c8>RQTAc<_5LW'=-^B2JgDtCH[dm5L*u2o,IP,rQ
+%4\6#)e\%iGhN7`qWu+i6(t_)nc!O&;$YQpO48C$cTLJS#OJ$QFHa],f)RA!I/*~>
+endstream endobj 27 0 obj [/Indexed/DeviceRGB 255 28 0 R] endobj 28 0 obj <</Filter[/ASCII85Decode/FlateDecode]/Length 428>>stream
+8;X]O>EqN@%''O_@%e@?J;%+8(9e>X=MR6S?i^YgA3=].HDXF.R$lIL@"pJ+EP(%0
+b]6ajmNZn*!='OQZeQ^Y*,=]?C.B+\Ulg9dhD*"iC[;*=3`oP1[!S^)?1)IZ4dup`
+E1r!/,*0[*9.aFIR2&b-C#s<Xl5FH@[<=!#6V)uDBXnIr.F>oRZ7Dl%MLY\.?d>Mn
+6%Q2oYfNRF$$+ON<+]RUJmC0I<jlL.oXisZ;SYU[/7#<&37rclQKqeJe#,UF7Rgb1
+VNWFKf>nDZ4OTs0S!saG>GGKUlQ*Q?45:CI&4J'_2j<etJICj7e7nPMb=O6S7UOH<
+PO7r\I.Hu&e0d&E<.')fERr/l+*W,)q^D*ai5<uuLX.7g/>$XKrcYp0n+Xl_nU*O(
+l[$6Nn+Z_Nq0]s7hs]`XX1nZ8&94a\~>
+endstream endobj 21 0 obj <</Intent 29 0 R/Name(Layer 1)/Type/OCG/Usage 30 0 R>> endobj 29 0 obj [/View/Design] endobj 30 0 obj <</CreatorInfo<</Creator(Adobe Illustrator 21.1)/Subtype/Artwork>>>> endobj 25 0 obj <</AIS false/BM/Normal/CA 1.0/OP false/OPM 1/SA true/SMask/None/Type/ExtGState/ca 1.0/op false>> endobj 24 0 obj <</LastModified(D:20180214010906+02'00')/Private 31 0 R>> endobj 31 0 obj <</AIMetaData 32 0 R/AIPrivateData1 33 0 R/AIPrivateData2 34 0 R/ContainerVersion 11/CreatorVersion 21/NumBlock 2/RoundtripStreamType 1/RoundtripVersion 17>> endobj 32 0 obj <</Length 1245>>stream
+%!PS-Adobe-3.0
+%%Creator: Adobe Illustrator(R) 17.0
+%%AI8_CreatorVersion: 21.1.0
+%%For: (Jedy) ()
+%%Title: (Android_greenrobot.ai)
+%%CreationDate: 2/14/2018 1:09 AM
+%%Canvassize: 16383
+%%BoundingBox: 7 7 287 338
+%%HiResBoundingBox: 7.60009765625 7.599609375 286.400390625 337.493190482706
+%%DocumentProcessColors: Cyan Yellow
+%AI5_FileFormat 13.0
+%AI12_BuildNumber: 326
+%AI3_ColorUsage: Color
+%AI7_ImageSettings: 0
+%%RGBProcessColor: 0 0 0 ([Registration])
+%AI3_Cropmarks: 0 0 294 345
+%AI3_TemplateBox: 147.5 172.5 147.5 172.5
+%AI3_TileBox: -141 -183.5 435 550.5
+%AI3_DocumentPreview: None
+%AI5_ArtSize: 14400 14400
+%AI5_RulerUnits: 6
+%AI9_ColorModel: 1
+%AI5_ArtFlags: 0 0 0 1 0 0 1 0 0
+%AI5_TargetResolution: 800
+%AI5_NumLayers: 1
+%AI17_Begin_Content_if_version_gt:17 1
+%AI9_OpenToView: -356.5 444 2 1870 924 26 0 0 5 121 0 0 0 1 1 0 1 1 0 1
+%AI17_Alternate_Content
+%AI9_OpenToView: -356.5 444 2 1870 924 26 0 0 5 121 0 0 0 1 1 0 1 1 0 1
+%AI17_End_Versioned_Content
+%AI5_OpenViewLayers: 7
+%%PageOrigin:-138 -120
+%AI7_GridSettings: 72 8 72 8 1 0 0.800000011920929 0.800000011920929 0.800000011920929 0.899999976158142 0.899999976158142 0.899999976158142
+%AI9_Flatten: 1
+%AI12_CMSettings: 00.MS
+%%EndComments
+
+endstream endobj 33 0 obj <</Length 21125>>stream
+%%BoundingBox: 7 7 287 338
+%%HiResBoundingBox: 7.60009765625 7.599609375 286.400390625 337.493190482706
+%AI7_Thumbnail: 108 128 8
+%%BeginData: 20951 Hex Bytes
+%0000330000660000990000CC0033000033330033660033990033CC0033FF
+%0066000066330066660066990066CC0066FF009900009933009966009999
+%0099CC0099FF00CC0000CC3300CC6600CC9900CCCC00CCFF00FF3300FF66
+%00FF9900FFCC3300003300333300663300993300CC3300FF333300333333
+%3333663333993333CC3333FF3366003366333366663366993366CC3366FF
+%3399003399333399663399993399CC3399FF33CC0033CC3333CC6633CC99
+%33CCCC33CCFF33FF0033FF3333FF6633FF9933FFCC33FFFF660000660033
+%6600666600996600CC6600FF6633006633336633666633996633CC6633FF
+%6666006666336666666666996666CC6666FF669900669933669966669999
+%6699CC6699FF66CC0066CC3366CC6666CC9966CCCC66CCFF66FF0066FF33
+%66FF6666FF9966FFCC66FFFF9900009900339900669900999900CC9900FF
+%9933009933339933669933999933CC9933FF996600996633996666996699
+%9966CC9966FF9999009999339999669999999999CC9999FF99CC0099CC33
+%99CC6699CC9999CCCC99CCFF99FF0099FF3399FF6699FF9999FFCC99FFFF
+%CC0000CC0033CC0066CC0099CC00CCCC00FFCC3300CC3333CC3366CC3399
+%CC33CCCC33FFCC6600CC6633CC6666CC6699CC66CCCC66FFCC9900CC9933
+%CC9966CC9999CC99CCCC99FFCCCC00CCCC33CCCC66CCCC99CCCCCCCCCCFF
+%CCFF00CCFF33CCFF66CCFF99CCFFCCCCFFFFFF0033FF0066FF0099FF00CC
+%FF3300FF3333FF3366FF3399FF33CCFF33FFFF6600FF6633FF6666FF6699
+%FF66CCFF66FFFF9900FF9933FF9966FF9999FF99CCFF99FFFFCC00FFCC33
+%FFCC66FFCC99FFCCCCFFCCFFFFFF33FFFF66FFFF99FFFFCC110000001100
+%000011111111220000002200000022222222440000004400000044444444
+%550000005500000055555555770000007700000077777777880000008800
+%000088888888AA000000AA000000AAAAAAAABB000000BB000000BBBBBBBB
+%DD000000DD000000DDDDDDDDEE000000EE000000EEEEEEEE0000000000FF
+%00FF0000FFFFFF0000FF00FFFFFF00FFFFFF
+%524C45FD1FFF8282AEFD29FF8282FD3EFF825783FD28FF835D57FD3EFFA7
+%5E57CFFD26FFAE825DADFD3FFF5E5D58FD26FF835782AEFD3FFFAE5D82A8
+%FD24FFCF5D82A7FD41FF835782FD24FF825D5EFD42FFAE8257AEFD22FFA8
+%825DAEFD43FF825D57FD0BFFA8AEA7AE83AD83A783AEA8CFA8FD0AFF8257
+%82FD45FF5E8283FD06FFCF83835E825E825D825D5E5D825D825E8282ADA8
+%FD06FFAE5D82AEFD45FFA75782A8FFAEAE8282575E575E5782575E57825D
+%5E5782575E575E575E5783A7FFFFFF5E5D82FD47FF825783838257825E82
+%5D825E825D825E825D825E825D825E825D825E8257825EAD83825EFD48FF
+%835D575E575E5782575E5782575E5782575E5782575E5782575E5782575E
+%575E575E5783FD47FF83825E825E825E825E825E825E825E825E825E825E
+%825E825E825E825E825E825E825E825E83AEFD43FFAE575E575E57825D5E
+%57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E5782
+%575E83FD41FF895D825D825E825D825E825D825E825D825E825D825E825D
+%825E825D825E825D825E825D825E825D825E5E82FD3EFFA8825782575E57
+%82575E5782575E5782575E5782575E5782575E5782575E5782575E578257
+%5E5782575E5782575D57AEFD3BFFAE825D825E825E825E825E825E825E82
+%5E825E825E825E825E825E825E825E825E825E825E825E825E825E825E82
+%5E825DAEFD39FF835E575E57825D5E57825D5E57825D5E57825D5E57825D
+%5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E578257A7FD
+%37FFA75E5D825E825D825E825D825E825D825E825D825E825D825E825D82
+%5E825D825E825D825E825D825E825D825E825D825E825D825DADFD35FFA7
+%5E575E5782575E5782575E5782575E5782575E5782575E5782575E578257
+%5E5782575E5782575E5782575E5782575E5782575E575E57A7FD33FFAE82
+%5E825E825E825E825E825D825E825E825E825E825E825E825E825E825E82
+%5E825E825E825E825E825E825D825D825E825E825E825E825DAEFD32FF82
+%57825D5E57825D5E575E82AE8382575E57825D5E57825D5E57825D5E5782
+%5D5E57825D5E57825D5E57825EA7A7A7575E57825D5E57825D5E57FD31FF
+%AD5D825D825E825D825E5E83FFFFFFCF835D825D825E825D825E825D825E
+%825D825E825D825E825D825E825EFD04FFAE5D825D825E825D825E5E82FD
+%2FFFAE5782575E5782575E575E5EFD05FF835E575E5782575E5782575E57
+%82575E5782575E5782575E57825783FD05FF82575E5782575E5782575D83
+%FD2EFF5E825E825E825E825E825E82FD05FFCF5D825E825E825E825E825E
+%825E825E825E825E825E825E825E5EA7FD05FF83825E825E825E825E825D
+%82AEFD2CFF835D57825D5E57825D5E578257AEFD04FF825E5D5E57825D5E
+%57825D5E57825D5E57825D5E57825D5E57825782FD04FFA882575E57825D
+%5E57825D5E5783FD2BFFAE825E825D825E825D825E825D8282FFFFFFA782
+%5D825E825D825E825D825E825D825E825D825E825D825E825D825DADFFFF
+%CF8357825E825D825E825D825E8257FD2BFFA75782575E5782575E578257
+%5E575E5782585E575E5782575E5782575E5782575E5782575E5782575E57
+%82575E578257825E82575E5782575E5782575E5782575D82FD2AFF5E825E
+%825E825E825E825E825E825E825D825E825E825E825E825E825E825E825E
+%825E825E825E825E825E825E825E825D825E825E825E825E825E825E825E
+%825D82AEFD28FFA75D57825D5E57825D5E57825D5E57825D5E57825D5E57
+%825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D
+%5E57825D5E57825D5E57825D5E57ADFD28FF895D825D825E825D825E825D
+%825E825D825E825D825E825D825E825D825E825D825E825D825E825D825E
+%825D825E825D825E825D825E825D825E825D825E825D825E825EFD28FF57
+%5E575E5782575E5782575E5782575E5782575E5782575E5782575E578257
+%5E5782575E5782575E5782575E5782575E5782575E5782575E5782575E57
+%82575E5782575EA8FD26FFA8825E825E825E825E825E825E825E825E825E
+%825E825E825E825E825E825E825E825E825E825E825E825E825E825E825E
+%825E825E825E825E825E825E825E825E825E825DAEFD26FFA757825D5E57
+%825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D
+%5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57
+%825D5E82FD26FF825E5D825E825D825E825D825E825D825E825D825E825D
+%825E825D825E825D825E825D825E825D825E825D825E825D825E825D825E
+%825D825E825D825E825D825E825D825D82FD25FFA882575E5782575E5782
+%575E5782575E5782575E5782575E5782575E5782575E5782575E5782575E
+%5782575E5782575E5782575E5782575E5782575E5782575E5782575E575E
+%57FD26FF5E825E825E825E825E825E825E825E825E825E825E825E825E82
+%5E825E825E825E825E825E825E825E825E825E825E825E825E825E825E82
+%5E825E825E825E825E825E825E82AEFD24FFA882575E57825D5E57825D5E
+%57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E5782
+%5D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E578257AE
+%FD24FFCF57825E825D825E825D825E825D825E825D825E825D825E825D82
+%5E825D825E825D825E825D825E825D825E825D825E825D825E825D825E82
+%5D825E825D825E825D825E825D82A8FD24FFA85E5782575E5782575E5782
+%575E5782575E5782575E5782575E5782575E5782575E5782575E5782575E
+%5782575E5782575E5782575E5782575E5782575E5782575E5782575E57AE
+%FD25FFAEFFCFFFAEFFCFFFAEFFCFFFAEFFCFFFAEFFCFFFAEFFCFFFAEFFCF
+%FFAEFFCFFFAEFFCFFFAEFFCFFFAEFFCFFFAEFFCFFFAEFFCFFFAEFFCFFFAE
+%FFCFFFAEFFCFFFAEFFCFFFAEFD1AFFA7A783AEAEFD57FFA8A783AEA8FD08
+%FFAE835D825D5E578283FD07FFAEFFAEFFAEFFAEFFAEFFAEFFAEFFAEFFAE
+%FFAEFFAEFFAEFFAEFFAEFFAEFFAEFFAEFFAEFFAEFFAEFFAEFFAEFFAEFFAE
+%FFAEFFAEFFAEFFAEFFAEFFAEFFAEFFAEFFAEFFAEFFAEFFCFFD06FFAD5E82
+%5D5E578282AEFD05FF835E575E5782575E575E57AEFD04FFA85E575E5782
+%575E5782575E5782575E5782575E5782575E5782575E5782575E5782575E
+%5782575E5782575E5782575E5782575E5782575E5782575E5782575E5782
+%575E578257A7FD04FFA882575E5782575E575E57A7FFFFFFA8825E825E82
+%5E825E825E825DFD05FF5D825D825E825D825E825D825E825D825E825D82
+%5E825D825E825D825E825D825E825D825E825D825E825D825E825D825E82
+%5D825E825D825E825D825E825D825E825D825E5E83FD04FF825D825E825E
+%825E825E825DAEFFAE8257825D5E57825D5E57825D5E5EFFFFFFA882575E
+%57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E5782
+%5D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E
+%57825D5E578257A7FFFFFF8357825D5E57825D5E57825D5E57FFAE5D825D
+%825E825D825E825D825E5EA8FFFFCF5D825E825D825E825D825E825D825E
+%825D825E825D825E825D825E825D825E825D825E825D825E825D825E825D
+%825E825D825E825D825E825D825E825D825E825D825E825D5EA7FFFFFF5E
+%825D825E825D825E825D825E5E82585E575E5782575E5782575E57825783
+%FFFFA85E5782575E5782575E5782575E5782575E5782575E5782575E5782
+%575E5782575E5782575E5782575E5782575E5782575E5782575E5782575E
+%5782575E5782575E5782575E57ADFFFF835E575E5782575E5782575E5782
+%575E825E825E825E825E825E825E825E8282FFFFCF5D825E825E825E825E
+%825E825E825E825E825E825E825E825E825E825E825E825E825E825E825E
+%825E825E825E825E825E825E825E825E825E825E825E825E825E825E825E
+%82A7FFFFAD5D825E825E825E825E825E825E825D57825D5E57825D5E5782
+%5D5E57825782FFFFA85E57825D5E57825D5E57825D5E57825D5E57825D5E
+%57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E5782
+%5D5E57825D5E57825D5E57825D5E57825D5E57AEFFFF825E5D5E57825D5E
+%57825D5E57825D5E825D825E825D825E825D825E825D8282FFFFCF5E825D
+%825E825D825E825D825E825D825E825D825E825D825E825D825E825D825E
+%825D825E825D825E825D825E825D825E825D825E825D825E825D825E825D
+%825E825D825E5E83FFFF8357825E825D825E825D825E825D825E575E5782
+%575E5782575E5782575E5782FFFFA85E575E5782575E5782575E5782575E
+%5782575E5782575E5782575E5782575E5782575E5782575E5782575E5782
+%575E5782575E5782575E5782575E5782575E5782575E578257A7FFFF825E
+%5782575E5782575E5782575E5782825E825E825E825E825E825E825E8282
+%FFFFFF5E825E825E825E825E825E825E825E825E825E825E825E825E825E
+%825E825E825E825E825E825E825E825E825E825E825E825E825E825E825E
+%825E825E825E825E825E825E5EA7FFFF835D825E825E825E825E825E825E
+%825E5D5E57825D5E57825D5E57825D5E5782FFFFA882575E57825D5E5782
+%5D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E
+%57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E5782
+%57A7FFFF825E57825D5E57825D5E57825D5E5782825E825D825E825D825E
+%825D825E8282FFFFCF5D825E825D825E825D825E825D825E825D825E825D
+%825E825D825E825D825E825D825E825D825E825D825E825D825E825D825E
+%825D825E825D825E825D825E825D825E825D5EA7FFFF895D825D825E825D
+%825E825D825E825D5782575E5782575E5782575E57825782AEFFA85E5782
+%575E5782575E5782575E5782575E5782575E5782575E5782575E5782575E
+%5782575E5782575E5782575E5782575E5782575E5782575E5782575E5782
+%575E5782575E57ADFFFF825E575E5782575E5782575E5782575E825E825E
+%825E825E825E825E825E8282FFFFCF5D825E825E825E825E825E825E825E
+%825E825E825E825E825E825E825E825E825E825E825E825E825E825E825E
+%825E825E825E825E825E825E825E825E825E825E825E825E82A7FFFFAD5D
+%825E825E825E825E825E825E825E57825D5E57825D5E57825D5E57825782
+%FFFFA85E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E5782
+%5D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E
+%57825D5E57825D5E57825D5E57AEFFFF825E5D5E57825D5E57825D5E5782
+%5D5E825D825E825D825E825D825E825D8282FFFFCF5E825D825E825D825E
+%825D825E825D825E825D825E825D825E825D825E825D825E825D825E825D
+%825E825D825E825D825E825D825E825D825E825D825E825D825E825D825E
+%5E83FFFF8357825E825D825E825D825E825D825E575E5782575E5782575E
+%5782575E5782FFFFA85E575E5782575E5782575E5782575E5782575E5782
+%575E5782575E5782575E5782575E5782575E5782575E5782575E5782575E
+%5782575E5782575E5782575E5782575E578257A7FFFF825E5782575E5782
+%575E5782575E5782825E825E825E825E825E825E825E8282FFFFFF5E825E
+%825E825E825E825E825E825E825E825E825E825E825E825E825E825E825E
+%825E825E825E825E825E825E825E825E825E825E825E825E825E825E825E
+%825E825E825E5EA7FFFF835D825E825E825E825E825E825E825E5D5E5782
+%5D5E57825D5E57825D5E5782FFFFA882575E57825D5E57825D5E57825D5E
+%57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E5782
+%5D5E57825D5E57825D5E57825D5E57825D5E57825D5E578257A7FFFF825E
+%57825D5E57825D5E57825D5E5782825E825D825E825D825E825D825E8282
+%FFFFCF5D825E825D825E825D825E825D825E825D825E825D825E825D825E
+%825D825E825D825E825D825E825D825E825D825E825D825E825D825E825D
+%825E825D825E825D825E825D5EA7FFFF895D825D825E825D825E825D825E
+%825D5782575E5782575E5782575E57825782AEFFA85E5782575E5782575E
+%5782575E5782575E5782575E5782575E5782575E5782575E5782575E5782
+%575E5782575E5782575E5782575E5782575E5782575E5782575E5782575E
+%57ADFFFF825E575E5782575E5782575E5782575E825E825E825E825E825E
+%825E825E8282FFFFCF5D825E825E825E825E825E825E825E825E825E825E
+%825E825E825E825E825E825E825E825E825E825E825E825E825E825E825E
+%825E825E825E825E825E825E825E825E825E82A7FFFFAD5D825E825E825E
+%825E825E825E825E57825D5E57825D5E57825D5E57825782FFFFA85E5782
+%5D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E
+%57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E5782
+%5D5E57825D5E57AEFFFF825E5D5E57825D5E57825D5E57825D5E825D825E
+%825D825E825D825E825D8282FFFFCF5E825D825E825D825E825D825E825D
+%825E825D825E825D825E825D825E825D825E825D825E825D825E825D825E
+%825D825E825D825E825D825E825D825E825D825E825D825E5E83FFFF8357
+%825E825D825E825D825E825D825E575E5782575E5782575E5782575E5782
+%FFFFA85E575E5782575E5782575E5782575E5782575E5782575E5782575E
+%5782575E5782575E5782575E5782575E5782575E5782575E5782575E5782
+%575E5782575E5782575E578257A7FFFF825E5782575E5782575E5782575E
+%5782825E825E825E825E825E825E825E8282FFFFFF5E825E825E825E825E
+%825E825E825E825E825E825E825E825E825E825E825E825E825E825E825E
+%825E825E825E825E825E825E825E825E825E825E825E825E825E825E825E
+%5EA7FFFF835D825E825E825E825E825E825E825E5D5E57825D5E57825D5E
+%57825D5E5782FFFFA882575E57825D5E57825D5E57825D5E57825D5E5782
+%5D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E
+%57825D5E57825D5E57825D5E57825D5E578257A7FFFF825E57825D5E5782
+%5D5E57825D5E5782825E825D825E825D825E825D825E8282FFFFCF5D825E
+%825D825E825D825E825D825E825D825E825D825E825D825E825D825E825D
+%825E825D825E825D825E825D825E825D825E825D825E825D825E825D825E
+%825D825E825D5EA7FFFF895D825D825E825D825E825D825E825D5782575E
+%5782575E5782575E57825782AEFFA85E5782575E5782575E5782575E5782
+%575E5782575E5782575E5782575E5782575E5782575E5782575E5782575E
+%5782575E5782575E5782575E5782575E5782575E5782575E57ADFFFF825E
+%575E5782575E5782575E5782575E825E825E825E825E825E825E825E8282
+%FFFFCF5D825E825E825E825E825E825E825E825E825E825E825E825E825E
+%825E825E825E825E825E825E825E825E825E825E825E825E825E825E825E
+%825E825E825E825E825E825E82A7FFFFAD5D825E825E825E825E825E825E
+%825E57825D5E57825D5E57825D5E57825782FFFFA85E57825D5E57825D5E
+%57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E5782
+%5D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E
+%57AEFFFF825E5D5E57825D5E57825D5E57825D5E825D825E825D825E825D
+%825E825D8282FFFFCF5E825D825E825D825E825D825E825D825E825D825E
+%825D825E825D825E825D825E825D825E825D825E825D825E825D825E825D
+%825E825D825E825D825E825D825E825D825E5E83FFFF8357825E825D825E
+%825D825E825D825E575E5782575E5782575E5782575E5782FFFFA85E575E
+%5782575E5782575E5782575E5782575E5782575E5782575E5782575E5782
+%575E5782575E5782575E5782575E5782575E5782575E5782575E5782575E
+%5782575E578257A7FFFF825E5782575E5782575E5782575E5782825E825E
+%825E825E825E825E825E8282FFFFFF5E825E825E825E825E825E825E825E
+%825E825E825E825E825E825E825E825E825E825E825E825E825E825E825E
+%825E825E825E825E825E825E825E825E825E825E825E825E5EA7FFFF835D
+%825E825E825E825E825E825E825E5D5E57825D5E57825D5E57825D5E5782
+%FFFFA882575E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E
+%57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E5782
+%5D5E57825D5E57825D5E578257A7FFFF825E57825D5E57825D5E57825D5E
+%5782825E825D825E825D825E825D825E8282FFFFCF5D825E825D825E825D
+%825E825D825E825D825E825D825E825D825E825D825E825D825E825D825E
+%825D825E825D825E825D825E825D825E825D825E825D825E825D825E825D
+%5EA7FFFF895D825D825E825D825E825D825E825D5782575E5782575E5782
+%575E57825782AEFFA85E5782575E5782575E5782575E5782575E5782575E
+%5782575E5782575E5782575E5782575E5782575E5782575E5782575E5782
+%575E5782575E5782575E5782575E5782575E57ADFFFF825E575E5782575E
+%5782575E5782575E825E825E825E825E825E825E825E8282FFFFCF5D825E
+%825E825E825E825E825E825E825E825E825E825E825E825E825E825E825E
+%825E825E825E825E825E825E825E825E825E825E825E825E825E825E825E
+%825E825E825E82A7FFFFAD5D825E825E825E825E825E825E825E57825D5E
+%57825D5E57825D5E57825782FFFFA85E57825D5E57825D5E57825D5E5782
+%5D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E
+%57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57AEFFFF825E
+%5D5E57825D5E57825D5E57825D5E825D825E825D825E825D825E825D8282
+%FFFFCF5E825D825E825D825E825D825E825D825E825D825E825D825E825D
+%825E825D825E825D825E825D825E825D825E825D825E825D825E825D825E
+%825D825E825D825E825D825E5E83FFFF8357825E825D825E825D825E825D
+%825E575E5782575E5782575E5782575E5783FFFFA85E575E5782575E5782
+%575E5782575E5782575E5782575E5782575E5782575E5782575E5782575E
+%5782575E5782575E5782575E5782575E5782575E5782575E5782575E5782
+%57A7FFFF825D5782575E5782575E5782575E575E835D825E825E825E825E
+%825E825E8283FFFFFF5E825E825E825E825E825E825E825E825E825E825E
+%825E825E825E825E825E825E825E825E825E825E825E825E825E825E825E
+%825E825E825E825E825E825E825E825E825E5EA7FFFFAE5D825E825E825E
+%825E825E825E825E835D57825D5E57825D5E57825D5E57AEFFFFA882575E
+%57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E5782
+%5D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E
+%57825D5E578257A7FFFFAE5E57825D5E57825D5E57825D5E5783FF5E5E5D
+%825E825D825E825D825D83FFFFFFCF5D825E825D825E825D825E825D825E
+%825D825E825D825E825D825E825D825E825D825E825D825E825D825E825D
+%825E825D825E825D825E825D825E825D825E825D825E825D5EA7FFFFFF83
+%5E5D825E825D825E825D825D82AEFFAE575E5782575E5782575E5782A8FF
+%FFFFA85E5782575E5782575E5782575E5782575E5782575E5782575E5782
+%575E5782575E5782575E5782575E5782575E5782575E5782575E5782575E
+%5782575E5782575E5782575E57ADFD04FF5E5D5782575E5782575E575E83
+%FFFFFFAE5E825E825E825E825D82AEFD04FFCF5D825E825E825E825E825E
+%825E825E825E825E825E825E825E825E825E825E825E825E825E825E825E
+%825E825E825E825E825E825E825E825E825E825E825E825E825E825E82A7
+%FD05FF82825E825E825E825D82A7FD06FF8282575E575E5E83AEFD05FFA8
+%5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57
+%825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D
+%5E57825D5E57825D5E57AEFD06FF8382575E575E5D83A8FD08FFAEAEA8AE
+%A8FD08FFCF5E825D825E825D825E825D825E825D825E825D825E825D825E
+%825D825E825D825E825D825E825D825E825D825E825D825E825D825E825D
+%825E825D825E825D825E825D825E5E83FD09FFA8AEA8FD18FFA85E575E57
+%82575E5782575E5782575E5782575E5782575E5782575E5782575E578257
+%5E5782575E5782575E5782575E5782575E5782575E5782575E5782575E57
+%82575E578257A7FD25FF5E825E825E825E825E825E825E825E825E825E82
+%5E825E825E825E825E825E825E825E825E825E825E825E825E825E825E82
+%5E825E825E825E825E825E825E825E825E825E5EA7FD24FFA882575E5782
+%5D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E
+%57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E5782
+%5D5E578257A7FD24FFCF5D825E825D825E825D825E825D825E825D825E82
+%5D825E825D825E825D825E825D825E825D825E825D825E825D825E825D82
+%5E825D825E825D825E825D825E825D825E825D82A7FD24FFA85E5782575E
+%5782575E5782575E5782575E5782575E5782575E5782575E5782575E5782
+%575E5782575E5782575E5782575E5782575E5782575E5782575E5782575E
+%5782575E57AEFD25FF5E825E825E825E825E825E825E825E825E825E825E
+%825E825E825E825E825E825E825E825E825E825E825E825E825E825E825E
+%825E825E825E825E825E825E825E825E825D82CFFD25FF8357825D5E5782
+%5D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E
+%57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E57825D5E5782
+%5D5E82FD26FFCF8257825E825D825E825D825E825D825E825D825E825D82
+%5E825D825E825D825E825D825E825D825E825D825E825D825E825D825E82
+%5D825E825D825E825D825E825D825DCFFD27FFA75D5782575E5782575E57
+%82575E5782575E5782575E5782575E5782575E5782575E5782575E578257
+%5E5782575E5782575E5782575E5782575E5782575E5782575E57A7FD29FF
+%A7825D825E825E825E825E825E825E825E825E825E825E825E825E825E82
+%5E825E825E825E825E825E825E825E825E825E825E825E825E825E825E82
+%5E825E825DAEFD2BFFA883575D575E575D575E575E57825D5E57825D5E57
+%825D5E5782575D575E575D575E575D57825D5E57825D5E57825D5E57825D
+%5E575E575D575E575D575E5EAEFD2FFFA7AD83AD83AD83AD5E825D825E82
+%5D825E825D825E825D8283AD83AD83AD83AD83AD5E825E825D825E825D82
+%5E825D825E8282AD83AD83AD83ADA8FD38FFA882575E5782575E5782575E
+%5782575E5EFD0AFF835782575E5782575E5782575E575E57AEFD41FF5E82
+%5E825E825E825E825E825E825D83FD0AFF82825E825E825E825E825E825E
+%825E82AEFD40FFA882575E57825D5E57825D5E57825D5E5EFD0AFF835782
+%5D5E57825D5E57825D5E578257AEFD41FF5D825E825D825E825D825E825D
+%825D83FD0AFF835E5D825E825D825E825D825E825D82AEFD40FFA85E5782
+%575E5782575E5782575E575E5EFD0AFF83575E5782575E5782575E578257
+%5E57AEFD41FF5E825E825E825E825E825E825E825D83FD0AFF83825E825E
+%825E825E825E825E825D82AEFD40FFAE5E57825D5E57825D5E57825D5E57
+%5E82FD0AFF83575E57825D5E57825D5E57825D5E57CFFD41FF5E825D825E
+%825D825E825D825E825783FD0AFF82825E825D825E825D825E825D825E82
+%A8FD40FFA882575E5782575E5782575E5782575E5EFD0AFF835782575E57
+%82575E5782575E575E57AEFD41FF5E825E825E825E825E825E825E825D83
+%FD0AFF82825E825E825E825E825E825E825E82AEFD40FFA882575E57825D
+%5E57825D5E57825D5E5EFD0AFF8357825D5E57825D5E57825D5E578257AE
+%FD41FF5D825E825D825E825D825E825D825D83FD0AFF835E5D825E825D82
+%5E825D825E825D82AEFD40FFA85E5782575E5782575E5782575E575E5EFD
+%0AFF83575E5782575E5782575E5782575E57AEFD41FF5E825E825E825E82
+%5E825E825E825D83FD0AFF83825E825E825E825E825E825E825D82AEFD40
+%FFAE5E57825D5E57825D5E57825D5E575E82FD0AFF83575E57825D5E5782
+%5D5E57825D5E57CFFD41FF5E825D825E825D825E825D825E825783FD0AFF
+%82825E825D825E825D825E825D825E82A8FD40FFA882575E5782575E5782
+%575E5782575E5EFD0AFF835782575E5782575E5782575E575E57AEFD41FF
+%5E825E825E825E825E825E825E825D83FD0AFF83825E825E825E825E825E
+%825E825E82A8FD40FFCF82575E57825D5E57825D5E57825D5E82FD0AFFA7
+%57825D5E57825D5E57825D5E57825DCFFD41FF82825E825D825E825D825E
+%825D825DAEFD0AFFA85E5D825E825D825E825D825E825783FD42FFAE5782
+%575E5782575E5782575E5782A8FD0BFF5E5E5782575E5782575E5782575D
+%83FD43FF895D825E825E825E825E825E8283FD0CFFAE5D825E825E825E82
+%5E825E825EFD44FFAE82575E57825D5E5782575D82FD0EFFA757825D5E57
+%825D5E575E5DCFFD46FF895D5E5D825E82578283FD10FFAE5D825E825D82
+%5D5E82FD49FFAE825E575E5E83A8FD13FF8382575E5783A7FD24FFFF
+%%EndData
+
+endstream endobj 34 0 obj <</Length 21086>>stream
+%AI12_CompressedDatax溳絠{80z>蟯P dc隵龆触胼澆--酁篃绶/Y溑蘳鎪g產Jb$K杄I栰鮄*uu敂鸟嵝_腚%UiOG闢= 成T厪b楍皭鉿仃(咭Z*辘?n匛疔*鼄靀辇墖cq?(噘岚只(CuM箆?np薯)h(9-駼>,l駞疳)j⺪O& 劕敆嗝鈎6祯囷叛?[鳺嚏聮攪镪齂ebm纄y/洳櫖2匓/H 鳼枔y^*痧$8 ^螊9> G葙򈩴誕W橪JAH漧匥诿鸾2岨2璲
+筕發p 篆㘚7渲鹴K萯
+2"扲R& I楀9>\翢Y3Q0z'槦:旅罷Q噣:谣c {-m:*= q鑭華yj;W麁[)A蕛yM黬j縢J_N 珩
+泌毖*a2屴}嚍嫡檫# |=)mS!
+倫1椛鋜9尞\>浵
+匧k)灷o拹D1怂鐸!'藸Y>'g鸨0鸹CV稪稔纎青疧痨o喇餴鰾%@巣扑駐璇p@蟀
+8<*凮暽G=*jP孈/t煎'绯閤6觖痲檄嶖饈,洠1尣[~
+=U
+D誃Q&_入%r`O "Es$1椡Q歏ziNOS巅[謅捜hX' !Ck]R8魱t辅玢v驻>黤,P@j0譮2UG_-E庣菮)郷u6杳%H伔.鸪p)壑AK証C榴腭垾/'ia凩屣%卝猾,崀P#f&ī#"D圼&蟬8 Hm鍩﹊吗^=/弘锥棊掌揿汈 %`o~誱R:b!O蜸臭3cvuLy 勼,pN燮绎肗榸Ip褻|虋傡褣+禾聳v憰3 2瑲u1褚!oo判Lj薛WhT K2SK还Fv'x暜3㏒<
+t!~+h沋嶎s<=峸刟su[C9?;,淛现繄豬L_缆见o鄏~swo8$輵赟z.2>M-aA wΖ秢}h=-庎9揽B櫿0Y
+欥巁Yq 酛*823l鷓6搁烉Q)g咅pdN坧堜 :鑞B塰-Ai,i襵i揊襘呂!4T j鶱γ屷澺В焝珠礽濇L鱇k剗4N3
+蚴j⒒G瓴W(蔕骠慖洷拄绋胾6訯巵模Oq`}Wz77噓m堀7烳`.醀濎, *襮 q愆NB硟p}漙Q;]稭&蓊~s何額谬6vQLG+約ox/k硼Q
+賚J鋅俤!噍al嘑Et'縝Y儡}$<鴊虓戚慱媺 鑊遁'%\暭as添)酳褸釂豜&酯[鉾1t伃u晉
+@蠻p荴l %t抄徜]STe饬豃欄 R﨤Q橶蠩?P.穯>Ta篮誒&C獫3芻旵aV? UMd{唾
+72曕姭诣:楪o鲼垖 x#x靵蚼2G蹥鯗=e;>b4磍蛐{袨`;蒅/ 蕏4蹶.lj繚A浑edtX
+\墩僟猱w醃m徢~-Q辛0EsE
+H访凍芺酗馓 瑝;枒籥偭貑@Rf爓7} 縛2-衇?龀_,cu槌簺冦0嚜转 L牦磜,(诼>童=)<撶熔8詻^o睬n
+{謵雑j鸒"甆:{殏k凮櫣6評{!擋A蠘瞗行g 忠譊 =P瘍妩鷆鲚尔",镔3"3嬥烓C灒帲Tp4-(t祲攁 灌旍&,馓埅:>膰 *萸中qk棚螛#q膌戟`"~a!N9|闥
+ 佢嚶箑神鲟嫣隞禎瀚'Eih;官挣L>砄羫哜雓w递崋騫c
+ 牡孅-嵣鯈T動喍螋U礚灂$z悳@瑳7毑
+裛腉+硘憔泈舲>P闠'芟8I龙樴?pl苌=慯贞~膈Q垔蹶4{齤脢衕埶-Rp勤H璣鱖涆甔o_v'T15贫+恭詞憘祾鴘怶K甔捵/6崋鴖搴Q}黍享讋;殖淊字鶼胨薦 NO#e?鯪脄士Vewa錸zqdb5lぁ猿元喌#舖'Q噩Hk{eZ钞<[闘*褙c=邊w
+$獯Oy L幨蝭縰粅鉆5es犒噠緌/愚驆轎桍赌烣~逋6ι{tI鹹嬁*}M)o擖枕j捻-f#莀溒h?橡7锡鞱刉g憸鲋┎挈鞰d譧殅粕缾粆O碛6鴂k匔谯3⺈禦2呲欥劁Vs洗蛳w洈稯9-轹3愆揽躭K礋瓠l獲y跼n$Cy蹘 匴駭未为P躼┮轣 '+菙份憄%鲩L肱咞蠐 鳠g^喿;鞣猡壠彂濶琻c89宲鮾=芾砰 #嚎曘O颀傱9背齷3 7(6/=湻蓠:峒U灁"誽S諁a =崠{P娇.?Tv8饦瘱奬稵*鄺Wc項 #$P疛Q鋆cg鑖<x4昲4?鴑啒!爅遶 5葸砟罷\
+再暽萅妥尧a紷X e噕u+﹗齾#插鱲墼v
+>徏U乕\束i"D情 .3?V
+浥O礉%Y擔煓㎡O3⒏罾)=/似
+鎃郎盍/跮鱚=濣睳v6貯w緩3])
+:#鷏f9 S妚应g6櫢M粊g[t /坴籄c仇-08降[犩=6焩sYo %h飞棿 -
+鈀戮8禬?F娾傠/锱懷)刕"/@h媄&(sq4耶7a5>xYk瘻.aYP沕ZFr碢dOsq a戸:h)8t瘐q+柎'T僩v永:儸彔'廠,餫&*SYs鮖澻4gη%銯牞摐疤髺蔰[不=槚] -;KQ觲詷窞j艕g瞇F毙&29糣*眡w煵璗巇 遝姙製w锏R堡芛爋秨烓蒏墦芨9Wj/勂丛.v(黽嚩,汱籣幢1殧L_;e趙&^櫨佞浜伜Pk 垴閖苏曨頋讽Vy7玊 k/针絝,珞#襶+珞h朣午纉╁又浥所糼鵅℉v 鍇x健镇榱攨所糼鵅Z殁洛|nX蚙緪[殁<鍇薜|!龜慐所萹u詤p蹶忮|薜|!Xo羠>颶>G0e農>[諒w分h<K鼆[3镩臜?T/!P烶港'W黷腡玥 HY揼窜A芣遣6鯽晈,嘦f@姎攀*垅锾cC徕z1瑀2
+勡D 4S奰趇H廜躂c鞱!K鹍懺yS賚]鴇!隐M蝆剃埅矲Ne闅枍\+緦26m 4讻9K= i4"(蒤,!E駝%c N盕 f跃' 烓H匃蔊7dq撄欎顣y=娲絸晊!象訓V櫡宒X喪<禿貐+篝蹵[qt规[vF@sT婀o瑪朷櫑嘥m舮水坛Fn6*驜1鋌朵<K港^|0We炿瞇ZB韛答*;俲[T=p%FO嫷Z濥'o@h- )駴嘩廖'q鰟K@莖0o#@墆"-|GT@t镖烔㎏u>zp蘌莁領蟊虼穒煆暓7Y:p雒齲聩8郋7飑醒d潓-<嵟)t1R%2誥R:F鏅6(, 熔睘蝺
+y酿抱缤鑦"ㄋt诏绳Zj戩痚>,VXI-
+Z&き[#蛢e蝹"D*H\挆仪.譺婆 x|+瞴-D掑薩戜硭U$訇]G6仇/X洊"⿹V哋遾宕鮥w鬍vZ廜Y祟bW5蛹-諶
+#I/Z6l
+鏼
+l m溡g=乏巚绔
+K粫筝-釖襎澋局壟R0Q ~泴貝鱥p6愣柜mO螄A貝樄 y圃 晆莾埍酗:>嫐'榆鸾璬蛌矎kF譩纂古睓z=姘]3翰VQKф蝩碁{Ⅷ 71S蟵鬂7燧蚧c呣'K鴣酭=>5'跱!Sj鞡夫猊鳄苐朣冂V誫杉_NaqfZ乱
+X=龉b( X冂6T蚏 |搻V叿穆>锩L朧厍癏/0檄#=oa焄HF疿Yba[中聟}nQz"khY厎nU}!棾,靤映翰Yba焄焢爇﹨}tj﹨}ncH 蟔冂肹莙篕(靤t硺“ 抨\ぐ#?m 厎薭歄a/訓S冂q洋2 展>藩緪蹓c鰬嶕恎界\厎n
+鷦vq-n鈂>庵念#玛${R唿5}謐<┈72鸿誛羄唇很[c6K慌檄"蘿{跞颲O6V翛蛞t7q鰊陞1蚬老籓膠蠡畻昒鯵韋3彩鳉^徊耔Vv齣鯒さ耊:d樨29s沊By端鍹
+xh葵e=R 谬 膟_鎟-銏p燐XIW澗鯉骫櫈喳k!钘y4S#沐」味四j 塸_oN朧1>A8纱褂
+}k4&VOX蜧 a溋鸷>8$5葼\爄瞋秂玧9輎Xt澹鍀*碇R晁錈ゥZ!廯i¬鑨偱% 饇裏堯*靘V@l吘&攼[ 
+⿲ 瘌苳Ec湉-栈抻窎蔘櫰VHュ誖Ew;曰襒納;>r
+籣l訐酛;諦*叱2︾UH聡蝢T,}r 釃鄒寝-z鎎1阝i寀放晦&*魗/%n>粷謾,r)簎 B苍輛&瑮a21-XH隅峙麢O攭z锕谒饼雗A艂\+\r犔櫦9"云1QUq害U 頰濁58$很1,1,:C啌5c7l轧苍醛a]%'jq玚C挦]M稟- Tg0#居CWZ鈏謏弅+_};徊a:M繗N8nuiX{^W股陣暫"铨瑌7,*筲魖@泪]5|8.`怺鄆厛僬邓o駞V鑁R澣V赩圶K巨R盕昘顑V荣癹1釬攰U澻霦╔#烯k烁*縍 D _彈z咴粭禀蟹]v蹒wn#4蛗h咬-湴D玳衒庩褯胤c1T{孍9湛.跧廵s滚螼骦玆R碻娗e亴塠>i鍊塠魵B9.)S法A`篠鳻柛E>h闝Y到I蹙椙鵟襦`*d;-B驧c8?)E勋貛-蘰亟哄镗' 坛O9代#Vw
+Cl:膔cLe醩v'м-sET彘终& 珱\Y6複*X畮;-a皔鉯$1俐75W$.咍垘,9y胇锋缯T巛<榟l5氙俿s#;2iW楀Iw>;霢鲂a1谹]Xh/曩L1>=黚豬{_齘{Lr铎驓栚K3碤9s7娊.宴(哷昢 G1衞蟍袷Ug0-}鸂VX铟d狵椽 单v猈x UG纠b悬娞鹋泴衸/蜩-x※2靌睺盋筵 4+1停2蜵臠5眭坸綑$:佃鯃!3S$簺僭旞yK漥诮q8t袐莠
+Q7溷嵖濮ewJ萜鴩銶瞵滙//wo|隦汄]=峕íZI珦а:喎戡晱M⒐ h$\Na﹊4诊障雊叿冔鐕w搞惫眫譢薿婋瞳隈魄蔎!}[t讖渎苰珞畅%Ff杀|鰥V座55Gn簞T:櫪譌$U紬 2穵~m蓘⺷%g﹦峍$W庍%vよ_-[鳂瘽焳OV_XL铨T基矴>]mE`呬_雇敌龂|鶿I趂昮r3蓃涐k燠屢臋蓧镕$緎&GR殍-,.G质鵷$?;瘃q$q眗藖相积H關闑挧w跞嫦*牭龘譊/*&]6K聉┻N 惍至v#ⅱ猇挠<j,$哌靼@唼 鳠O璸桤襔醷鼠1.嵕B 誉鶷6/阸岎-鷵_谧璛
+~Mi_2
+炷Fp'/ 丳粔5臊, 脎B韂卫㖞_;H棌wF<
+SF瀜D鈈e#褡<軖├v>C=H0!撱狳K{vk+;鹢x覍6倚顺5iNYm~ ;_2愢称觻菇寈<粧P{挠47#乏デ覾\<O+V'6雧+P
++耻}}篏c1巉:T6䲟痺墌鰲2r诪矈16H鈪2-}錇F=鲹幸!3呖7V6囌肿`硓8h29 @IT'憓鍁佪$睇.2J_戏栋 :]hVg瘝芗:蛥`,iKdo倯闬 {腒d綌A狴 猪磪贈`6 {寽蛮Y W蒻~J3#纈蟴Q9差sh鮡/7-+忺c&g!('蜶5襌縜1芫 驓-<E貏蔹 袿,2峂
+C蕃!+J7〨锈粨:5璣1V笚L鷔汓zq桶苫娥俀L0勱]M0檐7敼痶6G閪rk9o綂,涹a翲<戹o螻, 2螘"R鈝犊/鮨|豹'邕湋肻 屚bte憅嵬媪>u綀泅刲纓H<R铧K/H 膴据=?厜+hO趘o拁%b斷
+甌P嬿弳h:k桹B{E類"垘辞LxAL校冭&+$@廐>狊揍形^$ ;慦 r赿煳%.K旨旷5D|i曇訑 玵┯<鶂3D砢1!"O7 鬡s獕x1~b稹瓅掼|郣Ta袔柭屲埭 K'孫% 冷+nS鎰xL <64翵b盢l艗聂F塊1
+圦谊賳癏' X旀3碓酱`括薙頵囪D鏴軬狨茓濛Db盢孮 鸅#襗衰穆k憜ez軠JL-ョ\Sb葀4藯䙡*視他壷JK(=VuO峅鑄{\th\K﹐龏∫驳釡+C璗轭+%蛾$J姿|
+-q瓪聭\⺗-秸"囩/譞蹏8百唝醊$帚笻阩f>瘌y|6G鹇i#=倊,'怨蚐1烗鋖w\钁蒃萎`8)袭H\侖'<粋徉
+D蛡gW0\佈,vv昧谵Qb9罩妌y罩0 別T[37ǘY罩纕炔 I酣笰5悂4s.榱礐[碪F[G6煫3ò锎D队_w癪6)奄Vj:P( 7zV['促6(駹蛷読彘鵴浐鮯5謿朗]窸,C~培B逇"旁裕纫3々N鄴惇髜膇钰A>脙螝I駓秙旑進9l爵揫 t衖昪%苅苃嬍&鹋峷妴M息y
+`覯 jLce痞笻笻o*Bj'H俅垍m戹慚S<儳磇嬼婕4:脯i嵎凪?`欂寭>嗳-|塍x鏨渍瑂5=b#肴鋺%h喿'鳊!演麑褔{ -6K殓嶊Ej~y8v醚e騾"枦ZLRXIb掟娂脋陾例c髞<弎O懰^,顶控$躨bw ID'崰BV9q+皓壢ヵ<H銬摠k ":I牣US鋯 ` 瘘k }'瑅毋錤a!蟽4僥蚏5习y斠佴婺7雱釆;(4/y◢m虎y囜0浯搖赘r?B 鐪[ 狇賊砡雂F活/蝇泆萚cy郸7籟ッ泹碜褿頳|x}8鼌稯嫃/X屻;愀趉t繈q.9葷F拡\饫\鐠耸S9j釳S栗玀黈馎:Q3BaF;ツ犷j霖譑1濑j婦t拡鼃剿票挌幋S 蜜z饑=,糲#>J棂&騮溊=熅K铏~-贊烀w}P~[焅祆呱鐂h晪槷l
+菱]:#P蟴辑髻$:拗鹟蹛儿彿Mx瀖嬘U杙辑髻秷汏幏翝QX ?[昦徿徸粒+e:&橵Qy?鶮y/聜嫏 鴴丱澬_1:,拿!aj読惯濚G枚'紖炤6n幨岘0﨧 黤;=鉡9xG洴-剡V/>|?铪啛@騖&椣 垈T`细\!'鴏
+99撳3瞾隍[3欣N2怖kb鼠\A?搪坤戲bA39 p袄邃l&1pIZY帡N蘫'@ .摐C嚥/塡 蝙傊3鳽(pI枍∫lL0搹Z逥蔂 (H煏鍖6俌蒯側壠h缽鹑莉
+鬧!煋x0~@
+y
+洹浪4#虌V];烝夔-@81P莄K嘴8m琿ch馵
+T崫.竱葎aF犫I钡"本$Y熱E%9!脣<Z斞hワ|犻缂Ct叚锚幣灭"釬Q箜珖 挱7埏实陬牜>iV马醦4mO1x~W暽t*嵘氰op汐】?=1
+endstream endobj 5 0 obj <</Intent 14 0 R/Name(Layer 1)/Type/OCG/Usage 15 0 R>> endobj 14 0 obj [/View/Design] endobj 15 0 obj <</CreatorInfo<</Creator(Adobe Illustrator 22.0)/Subtype/Artwork>>>> endobj 22 0 obj [21 0 R] endobj 35 0 obj <</CreationDate(D:20180213171318+01'00')/Creator(Adobe Illustrator CC 22.0 \(Macintosh\))/ModDate(D:20180214010906+01'00')/Producer(Adobe PDF library 15.00)/Title(Android_greenrobot)>> endobj xref
+0 36
+0000000004 65535 f
+0000000016 00000 n
+0000000159 00000 n
+0000015549 00000 n
+0000000000 00000 f
+0000061796 00000 n
+0000000000 00000 f
+0000015600 00000 n
+0000000000 00000 f
+0000000000 00000 f
+0000000000 00000 f
+0000000000 00000 f
+0000000000 00000 f
+0000000000 00000 f
+0000061866 00000 n
+0000061897 00000 n
+0000000000 00000 f
+0000000000 00000 f
+0000000000 00000 f
+0000000000 00000 f
+0000000000 00000 f
+0000017634 00000 n
+0000061982 00000 n
+0000015963 00000 n
+0000017934 00000 n
+0000017821 00000 n
+0000016667 00000 n
+0000017072 00000 n
+0000017120 00000 n
+0000017705 00000 n
+0000017736 00000 n
+0000018008 00000 n
+0000018182 00000 n
+0000019479 00000 n
+0000040657 00000 n
+0000062007 00000 n
+trailer
+<</Size 36/Root 1 0 R/Info 35 0 R/ID[<99A957C120DA4684A7E4F49ACB65CA0E><35EBABFA8970B84D877A4A7F453352A9>]>>
+startxref
+62208
+%%EOF
diff --git a/en/setup/images/Android_greenrobot.eps b/en/setup/images/Android_greenrobot.eps
new file mode 100644
index 00000000..36eca261
--- /dev/null
+++ b/en/setup/images/Android_greenrobot.eps
Binary files differ
diff --git a/en/setup/images/Android_greenrobot.png b/en/setup/images/Android_greenrobot.png
new file mode 100644
index 00000000..0cb9b00f
--- /dev/null
+++ b/en/setup/images/Android_greenrobot.png
Binary files differ
diff --git a/en/setup/images/Android_greenrobot.svg b/en/setup/images/Android_greenrobot.svg
new file mode 100644
index 00000000..8c71a309
--- /dev/null
+++ b/en/setup/images/Android_greenrobot.svg
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 21.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ viewBox="0 0 293.2 344.3" style="enable-background:new 0 0 293.2 344.3;" xml:space="preserve">
+<style type="text/css">
+ .st0{fill:#79C257;}
+</style>
+<title>Android_greenrobot</title>
+<path class="st0" d="M286.4,135c0-11.2-9.2-20.4-20.4-20.4s-20.4,9.2-20.4,20.4v85c0,11.2,9.2,20.4,20.4,20.4s20.4-9.2,20.4-20.4
+ V135z"/>
+<path class="st0" d="M48.4,135c0-11.2-9.2-20.4-20.4-20.4S7.6,123.8,7.6,135v85c0,11.2,9.2,20.4,20.4,20.4s20.4-9.2,20.4-20.4V135z"
+ />
+<g>
+ <path class="st0" d="M191.6,37.8l14.4-26c0.8-1.4,0.3-3.2-1.1-3.9c-0.4-0.2-0.9-0.4-1.4-0.4c-1,0-2,0.5-2.5,1.5l-14.6,26.3
+ C174.5,30,161.1,27,147,27c-14.1,0-27.5,3-39.4,8.3L93.1,9c-0.8-1.4-2.5-1.9-3.9-1.1c-1.4,0.8-1.9,2.5-1.1,3.9l14.4,26
+ C74.7,52.2,56,79.5,56,110.9h182C238,79.5,219.3,52.2,191.6,37.8z M105,77.6c-4.2,0-7.6-3.4-7.6-7.6s3.4-7.6,7.6-7.6
+ s7.6,3.4,7.6,7.6S109.2,77.6,105,77.6z M189,77.6c-4.2,0-7.6-3.4-7.6-7.6s3.4-7.6,7.6-7.6s7.6,3.4,7.6,7.6S193.2,77.6,189,77.6z"/>
+ <path class="st0" d="M56,118.1V250c0,12.2,9.8,22,22,22h14.6v45c0,11.2,9.2,20.4,20.4,20.4s20.4-9.2,20.4-20.4v-45h27.2v45
+ c0,11.2,9.2,20.4,20.4,20.4s20.4-9.2,20.4-20.4v-45H216c12.2,0,22-9.8,22-22V118.1H56z"/>
+</g>
+</svg>
diff --git a/en/setup/start/brands.html b/en/setup/start/brands.html
new file mode 100644
index 00000000..f6d9945e
--- /dev/null
+++ b/en/setup/start/brands.html
@@ -0,0 +1,164 @@
+<html devsite>
+ <head>
+ <title>Brand Guidelines</title>
+ <meta name="project_path" value="/_project.yaml" />
+ <meta name="book_path" value="/_book.yaml" />
+ </head>
+ <body>
+ <!--
+ Copyright 2017 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ -->
+
+
+
+<p>
+ The "Android" name, the Android logo, the "Google Play" brand, and other
+ Google trademarks are property of Google LLC and
+ not part of the assets available through the Android Open Source Project.
+</p>
+
+<p>If you are interested in using these brands to indicate their association
+with your device, adhere to the guidelines on this page. These guidelines
+correspond to and complement the
+<a href="https://developer.android.com/distribute/tools/promote/brand.html">Brand
+Guidelines for Android App Developers</a> and
+<a href="https://www.google.com/permissions/">Google Brand Permissions</a>.</p>
+
+<h2 id="brand-android">Android</h2>
+
+<p>
+ The use of "Android" on a hardware device and packaging or marketing
+ materials related to that hardware device is restricted to
+ <a href="/compatibility/index.html">Android compatible</a> devices only.
+</p>
+
+<ul>
+ <li>Android&trade; should have a trademark symbol the first time it appears in
+ a creative.</li>
+ <li>"Android" should always be capitalized and is never plural or possessive.
+ </li>
+ <li>鈥淎ndroid鈥 should never be used in the name of your product or as the
+ primary or dominant mark on your packaging or device.</li>
+ <li>"Android鈥 should be used only as a term to refer to the operating system
+ (OS) of your device. If you are unsure whether your use meets our guidelines,
+ follow this simple test: If you can replace "Android" with "the Android
+ platform" and the text still makes sense, then you may use this term.
+ <ul>
+ <li><span style="color:red">Incorrect</span>: "Android XBrand Phone"</li>
+ <li><span style="color:green">Correct</span>: "XBrand phone on Android"</li>
+ </ul>
+ </li>
+ <li>You may use 鈥渨ith Android鈥 in plain black text with your logo. If used
+ with your logo, "with Android" should be no larger than 90% of your logo鈥檚
+ size. The first or most prominent instance of this use should be followed by
+ a &trade; symbol.</li>
+ <li>Android may be used <em>only as a descriptor</em>, as long as it is
+ followed by a proper generic term. It cannot be framed as the product name or
+ brand of your device.
+ <ul>
+ <li><span style="color:red">Incorrect</span>: "Android XBrand Phone"</li>
+ <li><span style="color:green">Correct</span>: "Android mobile device"</li>
+ </ul>
+ </li>
+ <li>
+ Google reserves the right to require Android and/or Google branding on
+ compatible devices and any related materials, which includes but is not
+ limited to packaging, boot-up sequence, and marketing materials.
+ </li>
+ <li>
+ <p><strong>Any use of the Android name must include this attribution in your
+ communication</strong>:</p>
+ <blockquote><em>Android is a trademark of Google LLC.</em></blockquote></p>
+ </li>
+</ul>
+
+<h4>Acceptable examples</h4>
+<img src="../images/JB-TM-example.png" alt="Jelly Bean trademark example" />
+<img src="../images/8100-TM-example.png" alt="8100 series trademark example" />
+
+<h4>Unacceptable example</h4>
+<img src="../images/XBrand-TM-example.jpg" alt="XBrand trademark example" />
+
+<h3 id="logo-android">Android logo</h3>
+<p>Unless expressly authorized by Google through written agreement, the Android
+logo and custom typeface may not be used (with or without the Android robot).</p>
+<img alt="No Logo" src="../images/android_logo_new_crossed_out.png">
+<img alt="No Logo" src="https://developer.android.com/images/brand/android_logo_no.png">
+
+<h3 id="robot-android">Android robot</h3>
+
+<div class="wrap">
+<div class="col-4">
+ <img alt="android-robot" style="float:left;margin-right:10px" width="100" src="/setup/images/Android_greenrobot.png">
+ <p style="padding-top:20px">
+ <a href="/setup/images/Android_greenrobot.ai">.ai</a><br />
+ <a href="/setup/images/Android_greenrobot.eps">.eps</a><br />
+ <a href="/setup/images/Android_greenrobot.png">.png</a><br />
+ <a href="/setup/images/Android_greenrobot.svg">.svg</a>
+ </p>
+</div>
+<div class="col-8">
+<p style="padding-top:20px">The Android robot can be used, reproduced, and
+modified freely in marketing communications with proper attribution. For
+details, refer to
+<a href="https://developer.android.com/distribute/tools/promote/brand.html">App
+Developers Brand Guidelines</a> and the
+<a href="https://creativecommons.org/licenses/by/3.0/">Creative Commons
+license</a>.</p>
+</div>
+</div>
+
+<div class="wrap" style="padding-top:20px">
+<div class="col-4" style="align:center">
+<img alt="no-peace-robot" style="width:30%;height:30%" src="../images/No_PeaceBot_200.jpg">
+</div>
+<div class="col-8">
+<p style="padding-top:20px">The Android Peace Robot or any variation of the
+Android Peace Robot (such as the Android robot with a peace sign) may not be
+used in partner marketing.</p>
+</div>
+</div>
+
+<div style="clear:both"></div>
+<h2 id="brand-google_play">Google Play</h2>
+
+<p>Use of the 鈥淕oogle Play鈥 name and the Google Play Store icon on the
+packaging of the hardware, marketing materials of the hardware, or the hardware
+itself is allowed only on devices
+<a href="/setup/start/faqs.html#if-my-device-is-compatible-does-it-automatically-have-access-to-google-play-and-branding">licensed
+to access Google Play</a>. For a list of devices licensed to use Google Play,
+refer to
+<a href="https://support.google.com/googleplay/answer/1727131">Supported
+devices</a>.</p>
+
+
+<h2>Other brands</h2>
+<p><a href="https://www.android.com/auto/">Android Auto</a>,
+<a href="https://www.android.com/tv/">Android TV</a>, and
+<a href="https://wearos.google.com">Wear OS by Google</a> are brands owned by
+Google. These brands require Google proprietary software that runs on top of
+Android and is available only through a license with Google. For information on
+how to request a license, see
+<a href="/compatibility/contact-us.html">Contact Us</a>.
+
+<h2 id="Questions">Questions</h2>
+
+<p>For additional brand usage information, contact the Android Partner
+Marketing team by submitting the <a
+href="https://support.google.com/contact/partner_brand_approval">Partner
+Brand Inquiry Form</a>.</p>
+
+ </body>
+</html>
diff --git a/en/setup/start/build-numbers.html b/en/setup/start/build-numbers.html
index 7f1408ef..30ed8689 100644
--- a/en/setup/start/build-numbers.html
+++ b/en/setup/start/build-numbers.html
@@ -240,6 +240,18 @@ following table.
</thead>
<tbody>
<tr>
+ <td>PD1A.180720.031</td>
+ <td>android-9.0.0_r12</td>
+ <td>Pie</td>
+ <td>Pixel 3 XL, Pixel 3</td>
+ </tr>
+ <tr>
+ <td>PD1A.180720.030</td>
+ <td>android-9.0.0_r11</td>
+ <td>Pie</td>
+ <td>Pixel 3 XL, Pixel 3</td>
+ </tr>
+ <tr>
<td>PPR2.181005.003</td>
<td>android-9.0.0_r10</td>
<td>Pie</td>
diff --git a/en/whitelist/_book.yaml b/en/whitelist/_book.yaml
new file mode 100644
index 00000000..5c59d5d7
--- /dev/null
+++ b/en/whitelist/_book.yaml
@@ -0,0 +1,129 @@
+upper_tabs:
+- name: Set up
+ lower_tabs:
+ other:
+ - name: Overview
+ contents:
+ - title: Overview
+ path: /setup/
+ - name: Start
+ contents:
+ - include: /setup/_toc-start.yaml
+ - name: Download
+ contents:
+ - include: /setup/_toc-download.yaml
+ - name: Build
+ contents:
+ - include: /setup/_toc-build.yaml
+ - name: Create
+ contents:
+ - include: /setup/_toc-create.yaml
+ - name: Contribute
+ contents:
+ - include: /setup/_toc-contribute.yaml
+ - name: Contact
+ contents:
+ - include: /setup/_toc-contact.yaml
+- name: Design
+ lower_tabs:
+ other:
+ - name: Overview
+ contents:
+ - include: /compatibility/_toc-purpose.yaml
+ - name: Architecture
+ contents:
+ - include: /compatibility/_toc-architecture.yaml
+ - name: Compatibility
+ contents:
+ - include: /compatibility/_toc-compatibility.yaml
+ - name: Display
+ contents:
+ - include: /compatibility/_toc-display.yaml
+ - name: Settings
+ contents:
+ - include: /compatibility/_toc-settings.yaml
+ - name: Tests
+ contents:
+ - include: /compatibility/_toc-tests.yaml
+- name: Secure
+ lower_tabs:
+ other:
+ - name: Overview
+ contents:
+ - include: /security/_toc-overview.yaml
+ - name: Bulletins
+ contents:
+ - include: /security/_toc-bulletins.yaml
+ - name: Features
+ contents:
+ - include: /security/_toc-features.yaml
+ - name: Dynamic Analysis
+ contents:
+ - include: /security/_toc-fuzz.yaml
+- name: Develop
+ lower_tabs:
+ other:
+ - name: Audio
+ contents:
+ - include: /devices/_toc-audio.yaml
+ - name: Camera
+ contents:
+ - include: /devices/_toc-camera.yaml
+ - name: Connectivity
+ contents:
+ - include: /devices/_toc-connectivity.yaml
+ - name: Graphics
+ contents:
+ - include: /devices/_toc-graphics.yaml
+ - name: Interaction
+ contents:
+ - include: /devices/_toc-interaction.yaml
+ - name: Media
+ contents:
+ - include: /devices/_toc-media.yaml
+ - name: Storage
+ contents:
+ - include: /devices/_toc-storage.yaml
+- name: Configure
+ lower_tabs:
+ other:
+ - name: ART
+ contents:
+ - include: /devices/_toc-runtime.yaml
+ - name: Data
+ contents:
+ - include: /devices/_toc-data.yaml
+ - name: Enterprise
+ contents:
+ - include: /devices/_toc-enterprise.yaml
+ - name: Performance
+ contents:
+ - include: /devices/_toc-performance.yaml
+ - name: Permissions
+ contents:
+ - include: /devices/_toc-permissions.yaml
+ - name: Power
+ contents:
+ - include: /devices/_toc-power.yaml
+ - name: Updates
+ contents:
+ - include: /devices/_toc-update.yaml
+- name: Reference
+ lower_tabs:
+ other:
+ - name: Overview
+ contents:
+ - title: Overview
+ path: /reference/
+ - name: HIDL
+ contents:
+ - include: /reference/hidl/_toc.yaml
+ - name: HAL
+ contents:
+ - include: /reference/hal/_toc.yaml
+ - name: Trade Federation
+ contents:
+ - include: /reference/tradefed/_toc.yaml
+- name: Whitelist
+ whitelist: /whitelist/
+ path: /whitelist/
diff --git a/en/whitelist/_whitelist.yaml b/en/whitelist/_whitelist.yaml
new file mode 100644
index 00000000..25dc0876
--- /dev/null
+++ b/en/whitelist/_whitelist.yaml
@@ -0,0 +1,4 @@
+whitelist:
+- group: devsite-test-group@62144783.test.corp-partner.google.com
+- group: kunal_test@googlegroups.com
+- email: dlazin@gmail.com
diff --git a/en/whitelist/index.md b/en/whitelist/index.md
new file mode 100644
index 00000000..6c2dd500
--- /dev/null
+++ b/en/whitelist/index.md
@@ -0,0 +1,6 @@
+Project: /_project.yaml
+Book: /whitelist/_book.yaml
+
+# Test page
+
+I am a test page.