diff --git a/aconfig/settings_bluetooth_declarations.aconfig b/aconfig/settings_bluetooth_declarations.aconfig
index b8b9d9f..f6c271c 100644
--- a/aconfig/settings_bluetooth_declarations.aconfig
+++ b/aconfig/settings_bluetooth_declarations.aconfig
@@ -31,3 +31,13 @@
   description: "Gates whether to enable bluetooth device details polish"
   bug: "343317785"
 }
+
+flag {
+  name: "disable_bonding_cancellation_for_orientation_change"
+  namespace: "cross_device_experiences"
+  description: "Stop cancelling bonding process when there is an orientation change"
+  bug: "349542301"
+  metadata {
+      purpose: PURPOSE_BUGFIX
+  }
+}
diff --git a/res-product/values-ar/strings.xml b/res-product/values-ar/strings.xml
index b936938..2a5fce0 100644
--- a/res-product/values-ar/strings.xml
+++ b/res-product/values-ar/strings.xml
@@ -170,24 +170,24 @@
     <string name="lock_screen_pin_skip_fingerprint_message" product="default" msgid="3396830571282413409">"يجب ضبط رقم تعريف شخصي لإعداد ميزة \"فتح الجهاز ببصمة الإصبع\".\n\nيحمي رقم التعريف الشخصي الجهاز في حال فقدانه أو سرقته."</string>
     <string name="lock_screen_pattern_skip_fingerprint_message" product="default" msgid="2952431330433118050">"يجب ضبط نقش لإعداد ميزة \"فتح الجهاز ببصمة الإصبع\".\n\nيحمي النقش الهاتف في حال فقدانه أو سرقته."</string>
     <string name="lock_screen_password_skip_fingerprint_message" product="default" msgid="8499384469890032816">"يجب ضبط كلمة مرور لإعداد ميزة \"فتح الجهاز ببصمة الإصبع\".\n\nتحمي كلمة المرور الهاتف في حال فقدانه أو سرقته."</string>
-    <string name="lock_screen_pin_skip_face_message" product="tablet" msgid="657464034320090412">"يجب ضبط رقم تعريف شخصي لإعداد ميزة \"فتح الجهاز بالتعرف على الوجه\".\n\nيحمي رقم التعريف الشخصي الجهاز اللوحي في حال فقدانه أو سرقته."</string>
-    <string name="lock_screen_pattern_skip_face_message" product="tablet" msgid="1057921621902514520">"يجب ضبط نقش لإعداد ميزة \"فتح الجهاز بالتعرف على الوجه\".\n\nيحمي النقش الجهاز اللوحي في حال فقدانه أو سرقته."</string>
-    <string name="lock_screen_password_skip_face_message" product="tablet" msgid="7178731554533608255">"يجب ضبط كلمة مرور لإعداد ميزة \"فتح الجهاز بالتعرف على الوجه\".\n\nتحمي كلمة المرور الجهاز اللوحي في حال فقدانه أو سرقته."</string>
-    <string name="lock_screen_pin_skip_face_message" product="device" msgid="1932467886606343431">"يجب ضبط رقم تعريف شخصي لإعداد ميزة \"فتح الجهاز بالتعرف على الوجه\".\n\nيحمي رقم التعريف الشخصي الجهاز في حال فقدانه أو سرقته."</string>
-    <string name="lock_screen_pattern_skip_face_message" product="device" msgid="3670112640345602511">"يجب ضبط نقش لإعداد ميزة \"فتح الجهاز بالتعرف على الوجه\".\n\nيحمي النقش الجهاز في حال فقدانه أو سرقته."</string>
-    <string name="lock_screen_password_skip_face_message" product="device" msgid="256847653854178247">"يجب ضبط كلمة مرور لإعداد ميزة \"فتح الجهاز بالتعرف على الوجه\".\n\nتحمي كلمة المرور الجهاز في حال فقدانه أو سرقته."</string>
-    <string name="lock_screen_pin_skip_face_message" product="default" msgid="358903382559327157">"يجب ضبط رقم تعريف شخصي لإعداد ميزة \"فتح الجهاز بالتعرف على الوجه\".\n\nيحمي رقم التعريف الشخصي الهاتف في حال فقدانه أو سرقته."</string>
-    <string name="lock_screen_pattern_skip_face_message" product="default" msgid="6400426500859622964">"يجب ضبط نقش لإعداد ميزة \"فتح الجهاز بالتعرف على الوجه\".\n\nيحمي النقش الهاتف في حال فقدانه أو سرقته."</string>
-    <string name="lock_screen_password_skip_face_message" product="default" msgid="1555954661782997039">"يجب ضبط كلمة مرور لإعداد ميزة \"فتح الجهاز بالتعرف على الوجه\".\n\nتحمي كلمة المرور الهاتف في حال فقدانه أو سرقته."</string>
-    <string name="lock_screen_pin_skip_biometrics_message" product="tablet" msgid="6016574209955764097">"يجب ضبط رقم تعريف شخصي لإعداد ميزتَي \"فتح الجهاز ببصمة الإصبع\" و\"فتح الجهاز بالتعرف على الوجه\".\n\nيحمي رقم التعريف الشخصي الجهاز اللوحي في حال فقدانه أو سرقته."</string>
-    <string name="lock_screen_pattern_skip_biometrics_message" product="tablet" msgid="5193008948766756870">"يجب ضبط نقش لإعداد ميزتَي \"فتح الجهاز ببصمة الإصبع\" و\"فتح الجهاز بالتعرف على الوجه\".\n\nيحمي النقش الجهاز اللوحي في حال فقدانه أو سرقته."</string>
-    <string name="lock_screen_password_skip_biometrics_message" product="tablet" msgid="2157871617774498976">"يجب ضبط كلمة مرور لإعداد ميزتَي \"فتح الجهاز ببصمة الإصبع\" و\"فتح الجهاز بالتعرف على الوجه\".\n\nتحمي كلمة المرور الجهاز اللوحي في حال فقدانه أو سرقته."</string>
-    <string name="lock_screen_pin_skip_biometrics_message" product="device" msgid="3023595865822720071">"يجب ضبط رقم تعريف شخصي لإعداد ميزتَي \"فتح الجهاز ببصمة الإصبع\" و\"فتح الجهاز بالتعرف على الوجه\".\n\nيحمي رقم التعريف الشخصي الجهاز في حال فقدانه أو سرقته."</string>
-    <string name="lock_screen_pattern_skip_biometrics_message" product="device" msgid="3039110875534893916">"يجب ضبط نقش لإعداد ميزتَي \"فتح الجهاز ببصمة الإصبع\" و\"فتح الجهاز بالتعرف على الوجه\".\n\nيحمي النقش الجهاز في حال فقدانه أو سرقته."</string>
-    <string name="lock_screen_password_skip_biometrics_message" product="device" msgid="6506194961404887073">"يجب ضبط كلمة مرور لإعداد ميزتَي \"فتح الجهاز ببصمة الإصبع\" و\"فتح الجهاز بالتعرف على الوجه\".\n\nتحمي كلمة المرور الجهاز في حال فقدانه أو سرقته."</string>
-    <string name="lock_screen_pin_skip_biometrics_message" product="default" msgid="6614355211073480369">"يجب ضبط رقم تعريف شخصي لإعداد ميزتَي \"فتح الجهاز ببصمة الإصبع\" و\"فتح الجهاز بالتعرف على الوجه\".\n\nيحمي رقم التعريف الشخصي الهاتف في حال فقدانه أو سرقته."</string>
-    <string name="lock_screen_pattern_skip_biometrics_message" product="default" msgid="969489650005656159">"يجب ضبط نقش لإعداد ميزتَي \"فتح الجهاز ببصمة الإصبع\" و\"فتح الجهاز بالتعرف على الوجه\".\n\nيحمي النقش الهاتف في حال فقدانه أو سرقته."</string>
-    <string name="lock_screen_password_skip_biometrics_message" product="default" msgid="2934343185175325368">"يجب ضبط كلمة مرور لإعداد ميزتَي \"فتح الجهاز ببصمة الإصبع\" و\"فتح الجهاز بالتعرف على الوجه\".\n\nتحمي كلمة المرور الهاتف في حال فقدانه أو سرقته."</string>
+    <string name="lock_screen_pin_skip_face_message" product="tablet" msgid="657464034320090412">"يجب ضبط رقم تعريف شخصي لإعداد ميزة \"فتح الجهاز ببصمة الوجه\".\n\nيحمي رقم التعريف الشخصي الجهاز اللوحي في حال فقدانه أو سرقته."</string>
+    <string name="lock_screen_pattern_skip_face_message" product="tablet" msgid="1057921621902514520">"يجب ضبط نقش لإعداد ميزة \"فتح الجهاز ببصمة الوجه\".\n\nيحمي النقش الجهاز اللوحي في حال فقدانه أو سرقته."</string>
+    <string name="lock_screen_password_skip_face_message" product="tablet" msgid="7178731554533608255">"يجب ضبط كلمة مرور لإعداد ميزة \"فتح الجهاز ببصمة الوجه\".\n\nتحمي كلمة المرور الجهاز اللوحي في حال فقدانه أو سرقته."</string>
+    <string name="lock_screen_pin_skip_face_message" product="device" msgid="1932467886606343431">"يجب ضبط رقم تعريف شخصي لإعداد ميزة \"فتح الجهاز ببصمة الوجه\".\n\nيحمي رقم التعريف الشخصي الجهاز في حال فقدانه أو سرقته."</string>
+    <string name="lock_screen_pattern_skip_face_message" product="device" msgid="3670112640345602511">"يجب ضبط نقش لإعداد ميزة \"فتح الجهاز ببصمة الوجه\".\n\nيحمي النقش الجهاز في حال فقدانه أو سرقته."</string>
+    <string name="lock_screen_password_skip_face_message" product="device" msgid="256847653854178247">"يجب ضبط كلمة مرور لإعداد ميزة \"فتح الجهاز ببصمة الوجه\".\n\nتحمي كلمة المرور الجهاز في حال فقدانه أو سرقته."</string>
+    <string name="lock_screen_pin_skip_face_message" product="default" msgid="358903382559327157">"يجب ضبط رقم تعريف شخصي لإعداد ميزة \"فتح الجهاز ببصمة الوجه\".\n\nيحمي رقم التعريف الشخصي الهاتف في حال فقدانه أو سرقته."</string>
+    <string name="lock_screen_pattern_skip_face_message" product="default" msgid="6400426500859622964">"يجب ضبط نقش لإعداد ميزة \"فتح الجهاز ببصمة الوجه\".\n\nيحمي النقش الهاتف في حال فقدانه أو سرقته."</string>
+    <string name="lock_screen_password_skip_face_message" product="default" msgid="1555954661782997039">"يجب ضبط كلمة مرور لإعداد ميزة \"فتح الجهاز ببصمة الوجه\".\n\nتحمي كلمة المرور الهاتف في حال فقدانه أو سرقته."</string>
+    <string name="lock_screen_pin_skip_biometrics_message" product="tablet" msgid="6016574209955764097">"يجب ضبط رقم تعريف شخصي لإعداد ميزتَي \"فتح الجهاز ببصمة الإصبع\" و\"فتح الجهاز ببصمة الوجه\".\n\nيحمي رقم التعريف الشخصي الجهاز اللوحي في حال فقدانه أو سرقته."</string>
+    <string name="lock_screen_pattern_skip_biometrics_message" product="tablet" msgid="5193008948766756870">"يجب ضبط نقش لإعداد ميزتَي \"فتح الجهاز ببصمة الإصبع\" و\"فتح الجهاز ببصمة الوجه\".\n\nيحمي النقش الجهاز اللوحي في حال فقدانه أو سرقته."</string>
+    <string name="lock_screen_password_skip_biometrics_message" product="tablet" msgid="2157871617774498976">"يجب ضبط كلمة مرور لإعداد ميزتَي \"فتح الجهاز ببصمة الإصبع\" و\"فتح الجهاز ببصمة الوجه\".\n\nتحمي كلمة المرور الجهاز اللوحي في حال فقدانه أو سرقته."</string>
+    <string name="lock_screen_pin_skip_biometrics_message" product="device" msgid="3023595865822720071">"يجب ضبط رقم تعريف شخصي لإعداد ميزتَي \"فتح الجهاز ببصمة الإصبع\" و\"فتح الجهاز ببصمة الوجه\".\n\nيحمي رقم التعريف الشخصي الجهاز في حال فقدانه أو سرقته."</string>
+    <string name="lock_screen_pattern_skip_biometrics_message" product="device" msgid="3039110875534893916">"يجب ضبط نقش لإعداد ميزتَي \"فتح الجهاز ببصمة الإصبع\" و\"فتح الجهاز ببصمة الوجه\".\n\nيحمي النقش الجهاز في حال فقدانه أو سرقته."</string>
+    <string name="lock_screen_password_skip_biometrics_message" product="device" msgid="6506194961404887073">"يجب ضبط كلمة مرور لإعداد ميزتَي \"فتح الجهاز ببصمة الإصبع\" و\"فتح الجهاز ببصمة الوجه\".\n\nتحمي كلمة المرور الجهاز في حال فقدانه أو سرقته."</string>
+    <string name="lock_screen_pin_skip_biometrics_message" product="default" msgid="6614355211073480369">"يجب ضبط رقم تعريف شخصي لإعداد ميزتَي \"فتح الجهاز ببصمة الإصبع\" و\"فتح الجهاز ببصمة الوجه\".\n\nيحمي رقم التعريف الشخصي الهاتف في حال فقدانه أو سرقته."</string>
+    <string name="lock_screen_pattern_skip_biometrics_message" product="default" msgid="969489650005656159">"يجب ضبط نقش لإعداد ميزتَي \"فتح الجهاز ببصمة الإصبع\" و\"فتح الجهاز بببصمة الوجه\".\n\nيحمي النقش الهاتف في حال فقدانه أو سرقته."</string>
+    <string name="lock_screen_password_skip_biometrics_message" product="default" msgid="2934343185175325368">"يجب ضبط كلمة مرور لإعداد ميزتَي \"فتح الجهاز ببصمة الإصبع\" و\"فتح الجهاز ببصمة الوجه\".\n\nتحمي كلمة المرور الهاتف في حال فقدانه أو سرقته."</string>
     <string name="fingerprint_v2_delete_message" product="default" msgid="8723083814238510088">"يؤدي هذا الإجراء إلى حذف النموذج والصور المرتبطة ببصمة الإصبع \"<xliff:g id="FINGERPRINT_ID">%1$s</xliff:g>\"، والتي تم تخزينها على هاتفك"</string>
     <string name="fingerprint_v2_delete_message" product="tablet" msgid="527375244730792698">"يؤدي هذا الإجراء إلى حذف النموذج والصور المرتبطة ببصمة الإصبع \"<xliff:g id="FINGERPRINT_ID">%1$s</xliff:g>\"، والتي تم تخزينها على جهازك اللوحي"</string>
     <string name="fingerprint_v2_delete_message" product="device" msgid="4549780655045100171">"يؤدي هذا الإجراء إلى حذف النموذج والصور المرتبطة ببصمة الإصبع \"<xliff:g id="FINGERPRINT_ID">%1$s</xliff:g>\"، والتي تم تخزينها على جهازك"</string>
diff --git a/res-product/values-bs/strings.xml b/res-product/values-bs/strings.xml
index 69460e5..c2690d1 100644
--- a/res-product/values-bs/strings.xml
+++ b/res-product/values-bs/strings.xml
@@ -100,13 +100,13 @@
     <string name="security_settings_face_settings_footer_attention_not_supported" product="default" msgid="8266896471278294942">"Koristite lice da otključate telefon ili izvršite autentifikaciju u aplikacijama, npr. kada se prijavljujete ili odobravate kupovinu.\n\nImajte na umu:\nu datom trenutku možete imati postavljeno samo jedno lice. Da dodate drugo lice, izbrišite postojeće.\n\nTelefon možete otključati ako pogledate u njega čak i ako vam to nije bila namjera.\n\nTelefon može otključati i neko drugi ako ga prinese vašem licu, čak i dok su vam oči zatvorene.\n\nTelefon može otključati osoba koja mnogo liči na vas, npr. identični blizanac."</string>
     <string name="security_settings_face_settings_footer_attention_not_supported" product="tablet" msgid="6932278790700490818">"Koristite lice da otključate tablet ili izvršite autentifikaciju u aplikacijama, npr. kada se prijavljujete ili odobravate kupovinu.\n\nImajte na umu:\nu datom trenutku možete imati postavljeno samo jedno lice. Da dodate drugo lice, izbrišite postojeće.\n\nTablet možete otključati ako pogledate u njega čak i ako vam to nije bila namjera.\n\nTablet može otključati i neko drugi ako ga prinese vašem licu, čak i dok su vam oči zatvorene.\n\nTablet može otključati osoba koja mnogo liči na vas, npr. identični blizanac."</string>
     <string name="security_settings_face_settings_footer_attention_not_supported" product="device" msgid="2559602951942339212">"Koristite lice da otključate uređaj ili izvršite autentifikaciju u aplikacijama, npr. kada se prijavljujete ili odobravate kupovinu.\n\nImajte na umu:\nu datom trenutku možete imati postavljeno samo jedno lice. Da dodate drugo lice, izbrišite postojeće.\n\nUređaj možete otključati ako pogledate u njega čak i ako vam to nije bila namjera.\n\nUređaj može otključati i neko drugi ako ga prinese vašem licu, čak i dok su vam oči zatvorene.\n\nUređaj može otključati osoba koja mnogo liči na vas, npr. identični blizanac."</string>
-    <string name="security_settings_face_settings_footer_class3" product="default" msgid="7050076350282827484">"Koristite lice da otključate telefon ili potvrdite identitet, npr. kada se prijavljujete u aplikacije ili odobravate kupovinu.\n\nImajte na umu:\nu datom trenutku možete imati postavljeno samo jedno lice. Da dodate drugo lice, izbrišite postojeće.\n\nTelefon možete otključati ako pogledate u njega čak i ako vam to nije bila namjera.\n\nTelefon može otključati i neko drugi ako ga prinese vašem licu.\n\nTelefon može otključati osoba koja mnogo liči na vas, npr. identični blizanac."</string>
-    <string name="security_settings_face_settings_footer_class3" product="tablet" msgid="8013245173915280810">"Koristite lice da otključate tablet ili potvrdite identitet, npr. kada se prijavljujete u aplikacije ili odobravate kupovinu.\n\nImajte na umu:\nu datom trenutku možete imati postavljeno samo jedno lice. Da dodate drugo lice, izbrišite postojeće.\n\nTablet možete otključati ako pogledate u njega čak i ako vam to nije bila namjera.\n\nTablet može otključati i neko drugi ako ga prinese vašem licu.\n\nTablet može otključati osoba koja mnogo liči na vas, npr. identični blizanac."</string>
-    <string name="security_settings_face_settings_footer_class3" product="device" msgid="4411845832787210264">"Koristite lice da otključate uređaj ili potvrdite identitet, npr. kada se prijavljujete u aplikacije ili odobravate kupovinu.\n\nImajte na umu:\nu datom trenutku možete imati postavljeno samo jedno lice. Da dodate drugo lice, izbrišite postojeće.\n\nUređaj možete otključati ako pogledate u njega čak i ako vam to nije bila namjera.\n\nUređaj može otključati i neko drugi ako ga prinese vašem licu.\n\nUređaj može otključati osoba koja mnogo liči na vas, npr. identični blizanac."</string>
-    <string name="security_settings_face_settings_footer_class3_attention_not_supported" product="default" msgid="5512898803063743303">"Koristite lice da otključate telefon ili potvrdite identitet, npr. kada se prijavljujete u aplikacije ili odobravate kupovinu.\n\nImajte na umu:\nu datom trenutku možete imati postavljeno samo jedno lice. Da dodate drugo lice, izbrišite postojeće.\n\nTelefon možete otključati ako pogledate u njega čak i ako vam to nije bila namjera.\n\nTelefon može otključati i neko drugi ako ga prinese vašem licu, čak i dok su vam oči zatvorene.\n\nTelefon može otključati osoba koja mnogo liči na vas, npr. identični blizanac."</string>
-    <string name="security_settings_face_settings_footer_class3_attention_not_supported" product="tablet" msgid="6790505667764631343">"Koristite lice da otključate tablet ili potvrdite identitet, npr. kada se prijavljujete u aplikacije ili odobravate kupovinu.\n\nImajte na umu:\nu datom trenutku možete imati postavljeno samo jedno lice. Da dodate drugo lice, izbrišite postojeće.\n\nTablet možete otključati ako pogledate u njega čak i ako vam to nije bila namjera.\n\nTablet može otključati i neko drugi ako ga prinese vašem licu, čak i dok su vam oči zatvorene.\n\nTablet može otključati osoba koja mnogo liči na vas, npr. identični blizanac."</string>
-    <string name="security_settings_face_settings_footer_class3_attention_not_supported" product="device" msgid="7858917821957779752">"Koristite lice da otključate uređaj ili potvrdite identitet, npr. kada se prijavljujete u aplikacije ili odobravate kupovinu.\n\nImajte na umu:\nu datom trenutku možete imati postavljeno samo jedno lice. Da dodate drugo lice, izbrišite postojeće.\n\nUređaj možete otključati ako pogledate u njega čak i ako vam to nije bila namjera.\n\nUređaj može otključati i neko drugi ako ga prinese vašem licu, čak i dok su vam oči zatvorene.\n\nUređaj može otključati osoba koja mnogo liči na vas, npr. identični blizanac."</string>
-    <string name="security_settings_fingerprint_enroll_introduction_v3_message" msgid="2145273491174234191">"Pomoću otiska prsta otključajte uređaj <xliff:g id="DEVICENAME">%s</xliff:g> ili potvrdite svoj identitet, naprimjer kada se prijavljujete u aplikacije ili odobravate kupovinu"</string>
+    <string name="security_settings_face_settings_footer_class3" product="default" msgid="7050076350282827484">"Koristite lice da otključate telefon ili potvrdite identitet, npr. prilikom prijave u aplikacije ili odobravanje kupovine.\n\nImajte na umu:\nu datom trenutku možete imati postavljeno samo jedno lice. Da dodate drugo lice, izbrišite postojeće.\n\nTelefon možete otključati ako pogledate u njega čak i ako vam to nije bila namjera.\n\nTelefon može otključati i neko drugi ako ga prinese vašem licu.\n\nTelefon može otključati osoba koja mnogo liči na vas, npr. identični blizanac."</string>
+    <string name="security_settings_face_settings_footer_class3" product="tablet" msgid="8013245173915280810">"Koristite lice da otključate tablet ili potvrdite identitet, npr. prilikom prijave u aplikacije ili odobravanje kupovine.\n\nImajte na umu:\nu datom trenutku možete imati postavljeno samo jedno lice. Da dodate drugo lice, izbrišite postojeće.\n\nTablet možete otključati ako pogledate u njega čak i ako vam to nije bila namjera.\n\nTablet može otključati i neko drugi ako ga prinese vašem licu.\n\nTablet može otključati osoba koja mnogo liči na vas, npr. identični blizanac."</string>
+    <string name="security_settings_face_settings_footer_class3" product="device" msgid="4411845832787210264">"Koristite lice da otključate uređaj ili potvrdite identitet, npr. prilikom prijave u aplikacije ili odobravanje kupovine.\n\nImajte na umu:\nu datom trenutku možete imati postavljeno samo jedno lice. Da dodate drugo lice, izbrišite postojeće.\n\nUređaj možete otključati ako pogledate u njega čak i ako vam to nije bila namjera.\n\nUređaj može otključati i neko drugi ako ga prinese vašem licu.\n\nUređaj može otključati osoba koja mnogo liči na vas, npr. identični blizanac."</string>
+    <string name="security_settings_face_settings_footer_class3_attention_not_supported" product="default" msgid="5512898803063743303">"Koristite lice da otključate telefon ili potvrdite identitet, npr. prilikom prijave u aplikacije ili odobravanje kupovine.\n\nImajte na umu:\nu datom trenutku možete imati postavljeno samo jedno lice. Da dodate drugo lice, izbrišite postojeće.\n\nTelefon možete otključati ako pogledate u njega čak i ako vam to nije bila namjera.\n\nTelefon može otključati i neko drugi ako ga prinese vašem licu, čak i dok su vam oči zatvorene.\n\nTelefon može otključati osoba koja mnogo liči na vas, npr. identični blizanac."</string>
+    <string name="security_settings_face_settings_footer_class3_attention_not_supported" product="tablet" msgid="6790505667764631343">"Koristite lice da otključate tablet ili potvrdite identitet, npr. prilikom prijave u aplikacije ili odobravanje kupovine.\n\nImajte na umu:\nu datom trenutku možete imati postavljeno samo jedno lice. Da dodate drugo lice, izbrišite postojeće.\n\nTablet možete otključati ako pogledate u njega čak i ako vam to nije bila namjera.\n\nTablet može otključati i neko drugi ako ga prinese vašem licu, čak i dok su vam oči zatvorene.\n\nTablet može otključati osoba koja mnogo liči na vas, npr. identični blizanac."</string>
+    <string name="security_settings_face_settings_footer_class3_attention_not_supported" product="device" msgid="7858917821957779752">"Koristite lice da otključate uređaj ili potvrdite identitet, npr. prilikom prijave u aplikacije ili odobravanje kupovine.\n\nImajte na umu:\nu datom trenutku možete imati postavljeno samo jedno lice. Da dodate drugo lice, izbrišite postojeće.\n\nUređaj možete otključati ako pogledate u njega čak i ako vam to nije bila namjera.\n\nUređaj može otključati i neko drugi ako ga prinese vašem licu, čak i dok su vam oči zatvorene.\n\nUređaj može otključati osoba koja mnogo liči na vas, npr. identični blizanac."</string>
+    <string name="security_settings_fingerprint_enroll_introduction_v3_message" msgid="2145273491174234191">"Pomoću otiska prsta otključajte uređaj <xliff:g id="DEVICENAME">%s</xliff:g> ili potvrdite svoj identitet, npr. prilikom prijave u aplikacije ili odobravanje kupovine"</string>
     <string name="security_settings_fingerprint_enroll_introduction_consent_message" product="default" msgid="5101253231118659496">"Dozvolite djetetu da koristi otisak prsta da otključa telefon ili potvrdi identitet. To će se dešavati prilikom prijava u aplikacije, odobravanja kupovina i drugih radnji."</string>
     <string name="security_settings_fingerprint_enroll_introduction_consent_message" product="tablet" msgid="3063978167545799342">"Dozvolite djetetu da koristi otisak prsta da otključa tablet ili potvrdi identitet. To će se dešavati prilikom prijava u aplikacije, odobravanja kupovina i drugih radnji."</string>
     <string name="security_settings_fingerprint_enroll_introduction_consent_message" product="device" msgid="4399560001732497632">"Dozvolite djetetu da koristi otisak prsta da otključa uređaj ili potvrdi identitet. To će se dešavati prilikom prijava u aplikacije, odobravanja kupovina i drugih radnji."</string>
@@ -131,9 +131,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" product="default" msgid="6556725426776167791">"Telefon vašeg djeteta se može otključati kada to djetetu nije namjera, npr. kada ga neko prinese prstu djeteta."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" product="tablet" msgid="5156581794964551571">"Tablet vašeg djeteta se može otključati kada to djetetu nije namjera, npr. kada ga neko prinese prstu djeteta."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" product="device" msgid="8309101436391515400">"Uređaj vašeg djeteta se može otključati kada to djetetu nije namjera, npr. kada ga neko prinese prstu djeteta."</string>
-    <string name="security_settings_fingerprint_v2_home_screen_text" product="tablet" msgid="5074447304036758639">"Otiskom prsta otključajte tablet ili potvrdite identitet, npr. kada se prijavljujete u aplikacije"</string>
-    <string name="security_settings_fingerprint_v2_home_screen_text" product="device" msgid="7398339851724524558">"Otiskom prsta otključajte uređaj ili potvrdite identitet, npr. kada se prijavljujete u aplikacije"</string>
-    <string name="security_settings_fingerprint_v2_home_screen_text" product="default" msgid="5376408603508393038">"Otiskom prsta otključajte telefon ili potvrdite identitet, npr. kada se prijavljujete u aplikacije"</string>
+    <string name="security_settings_fingerprint_v2_home_screen_text" product="tablet" msgid="5074447304036758639">"Otiskom prsta otključajte tablet ili potvrdite identitet, npr. prilikom prijave u aplikacije"</string>
+    <string name="security_settings_fingerprint_v2_home_screen_text" product="device" msgid="7398339851724524558">"Otiskom prsta otključajte uređaj ili potvrdite identitet, npr. prilikom prijave u aplikacije"</string>
+    <string name="security_settings_fingerprint_v2_home_screen_text" product="default" msgid="5376408603508393038">"Otiskom prsta otključajte telefon ili potvrdite identitet, npr. prilikom prijave u aplikacije"</string>
     <string name="biometric_settings_hand_back_to_guardian" product="tablet" msgid="9034560319613439593">"Vrati tablet roditelju"</string>
     <string name="biometric_settings_hand_back_to_guardian" product="device" msgid="2149647165743006307">"Vrati telefon roditelju"</string>
     <string name="biometric_settings_hand_back_to_guardian" product="default" msgid="2060265104488529949">"Vrati telefon roditelju"</string>
@@ -146,9 +146,9 @@
     <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="2006739081527422127">"Senzor za otisak prsta je na dugmetu za uključivanje. To je ravno dugme pored izdignutog dugmeta za jačinu zvuka na rubu tableta."</string>
     <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="1209233633252372907">"Senzor za otisak prsta je na dugmetu za uključivanje. To je ravno dugme pored izdignutog dugmeta za jačinu zvuka na rubu uređaja."</string>
     <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="6862493139500275821">"Senzor za otisak prsta je na dugmetu za uključivanje. To je ravno dugme pored izdignutog dugmeta za jačinu zvuka na rubu telefona."</string>
-    <string name="security_settings_fingerprint_enroll_finish_v2_message" product="tablet" msgid="2012126789397819713">"Sada pomoću otiska prsta možete otključati tablet ili potvrditi svoj identitet, naprimjer kada se prijavljujete u aplikacije ili odobravate kupovinu"</string>
-    <string name="security_settings_fingerprint_enroll_finish_v2_message" product="device" msgid="7119860465479161782">"Sada pomoću otiska prsta možete otključati uređaj ili potvrditi svoj identitet, naprimjer kada se prijavljujete u aplikacije ili odobravate kupovinu"</string>
-    <string name="security_settings_fingerprint_enroll_finish_v2_message" product="default" msgid="8255422287180693200">"Sada pomoću otiska prsta možete otključati telefon ili potvrditi svoj identitet, naprimjer kada se prijavljujete u aplikacije ili odobravate kupovinu"</string>
+    <string name="security_settings_fingerprint_enroll_finish_v2_message" product="tablet" msgid="2012126789397819713">"Sada pomoću otiska prsta možete otključati tablet ili potvrditi svoj identitet, npr. prilikom prijave u aplikacije ili odobravanje kupovine"</string>
+    <string name="security_settings_fingerprint_enroll_finish_v2_message" product="device" msgid="7119860465479161782">"Sada pomoću otiska prsta možete otključati uređaj ili potvrditi svoj identitet, npr. prilikom prijave u aplikacije ili odobravanje kupovine"</string>
+    <string name="security_settings_fingerprint_enroll_finish_v2_message" product="default" msgid="8255422287180693200">"Sada pomoću otiska prsta možete otključati telefon ili potvrditi svoj identitet, npr. prilikom prijave u aplikacije ili odobravanja kupovine"</string>
     <string name="security_settings_fingerprint_enroll_finish_v2_add_fingerprint_message" product="tablet" msgid="7814892482046294464">"Sada pomoću otiska prsta možete otključati tablet ili potvrditi identitet, naprimjer prilikom prijave u aplikacije ili odobravanja kupovine. \n\nDodajte drugi otisak prsta da vam je lakše otključati tablet kada ga držite na drugi način."</string>
     <string name="security_settings_fingerprint_enroll_finish_v2_add_fingerprint_message" product="device" msgid="8418220207105495988">"Sada pomoću otiska prsta možete otključati uređaj ili potvrditi identitet, naprimjer prilikom prijave u aplikacije ili odobravanja kupovine.\n\nDodajte drugi otisak prsta da vam je lakše otključati uređaj kada ga držite na drugi način."</string>
     <string name="security_settings_fingerprint_enroll_finish_v2_add_fingerprint_message" product="default" msgid="3545300825124248359">"Sada pomoću otiska prsta možete otključati telefon ili potvrditi identitet, naprimjer prilikom prijave u aplikacije ili odobravanja kupovine.\n\nDodajte drugi otisak prsta da vam je lakše otključati telefon kada ga držite na drugi način."</string>
diff --git a/res-product/values-de/strings.xml b/res-product/values-de/strings.xml
index 22613bf..01f0e51 100644
--- a/res-product/values-de/strings.xml
+++ b/res-product/values-de/strings.xml
@@ -128,15 +128,15 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="6272159089589340181">"Es kann passieren, dass dein Smartphone unbeabsichtigt entsperrt wird, wenn es z. B. von jemandem gegen deinen Finger gehalten wird."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="2420109998272019149">"Es kann passieren, dass dein Tablet entsperrt wird, wenn du es nicht möchtest, z. B. wenn es von jemandem gegen deinen Finger gehalten wird."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="5915844445830045866">"Es kann passieren, dass dein Gerät entsperrt wird, wenn du es nicht möchtest, z. B. wenn es von jemandem gegen deinen Finger gehalten wird."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" product="default" msgid="6556725426776167791">"Das Smartphone deines Kindes kann entsperrt werden, selbst wenn es das nicht beabsichtigt. Dazu kann es z. B. an seinen Finger gehalten werden."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" product="tablet" msgid="5156581794964551571">"Das Tablet deines Kindes kann auch unbeabsichtigt entsperrt werden, z. B. wenn jemand es an seinen Finger hält."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" product="default" msgid="6556725426776167791">"Das Smartphone deines Kindes kann auch entsperrt werden, ohne dass dein Kind das möchte, z. B. wenn jemand das Smartphone an den Finger deines Kindes hält."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" product="tablet" msgid="5156581794964551571">"Das Tablet deines Kindes kann auch entsperrt werden, ohne dass dein Kind das möchte, z. B. wenn jemand das Tablet an den Finger deines Kindes hält."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" product="device" msgid="8309101436391515400">"Das Gerät deines Kindes kann auch unbeabsichtigt entsperrt werden, z. B. wenn jemand es an seinen Finger hält."</string>
     <string name="security_settings_fingerprint_v2_home_screen_text" product="tablet" msgid="5074447304036758639">"Du kannst deinen Fingerabdruck verwenden, um dein Tablet zu entsperren oder dich zu authentifizieren, beispielsweise um dich in Apps anzumelden"</string>
     <string name="security_settings_fingerprint_v2_home_screen_text" product="device" msgid="7398339851724524558">"Du kannst deinen Fingerabdruck verwenden, um dein Gerät zu entsperren oder dich zu authentifizieren, beispielsweise um dich in Apps anzumelden"</string>
     <string name="security_settings_fingerprint_v2_home_screen_text" product="default" msgid="5376408603508393038">"Du kannst deinen Fingerabdruck verwenden, um dein Smartphone zu entsperren oder dich zu authentifizieren, beispielsweise um dich in Apps anzumelden"</string>
     <string name="biometric_settings_hand_back_to_guardian" product="tablet" msgid="9034560319613439593">"Gib das Tablet an dein Elternteil zurück"</string>
-    <string name="biometric_settings_hand_back_to_guardian" product="device" msgid="2149647165743006307">"Gib das Gerät an dein Elternteil zurück"</string>
-    <string name="biometric_settings_hand_back_to_guardian" product="default" msgid="2060265104488529949">"Gib das Telefon an dein Elternteil zurück"</string>
+    <string name="biometric_settings_hand_back_to_guardian" product="device" msgid="2149647165743006307">"Gib das Gerät an deinen Elternteil zurück"</string>
+    <string name="biometric_settings_hand_back_to_guardian" product="default" msgid="2060265104488529949">"Gib das Smartphone an deinen Elternteil zurück"</string>
     <string name="lock_screen_intro_skip_dialog_text_frp" product="tablet" msgid="7526137517192538870">"Die Schutzfunktionen für dein Mobilgerät werden nicht aktiviert. Du kannst dann nicht verhindern, dass andere Personen dieses Tablet verwenden, falls es verloren geht, gestohlen oder zurückgesetzt wird."</string>
     <string name="lock_screen_intro_skip_dialog_text_frp" product="device" msgid="1350434793163709209">"Die Schutzfunktionen für dein Mobilgerät werden nicht aktiviert. Du kannst dann nicht verhindern, dass andere Personen dieses Gerät verwenden, falls es verloren geht, gestohlen oder zurückgesetzt wird."</string>
     <string name="lock_screen_intro_skip_dialog_text_frp" product="default" msgid="8367731653387033354">"Die Schutzfunktionen für dein Mobilgerät werden nicht aktiviert. Du kannst dann nicht verhindern, dass andere Personen dieses Smartphone verwenden, falls es verloren geht, gestohlen oder zurückgesetzt wird."</string>
@@ -312,7 +312,7 @@
     <string name="user_settings_footer_text" product="tablet" msgid="4749331578207116797">"Wenn auch andere Nutzer dein Tablet verwenden dürfen, kannst du ihm neue Nutzer hinzufügen. Jeder Nutzer erhält auf deinem Tablet sein privates Profil für benutzerdefinierte Startbildschirme, Konten, Apps, Einstellungen usw."</string>
     <string name="user_settings_footer_text" product="default" msgid="5440172971747221370">"Wenn du dein Smartphone mit anderen teilen möchtest, kannst du neue Nutzer hinzufügen. Jeder Nutzer erhält auf deinem Smartphone ein privates Profil für eigene Startbildschirme, Konten, Apps, Einstellungen usw."</string>
     <string name="user_cannot_manage_message" product="tablet" msgid="5566619500245432179">"Nur der Eigentümer des Tablets kann Nutzer verwalten."</string>
-    <string name="user_cannot_manage_message" product="default" msgid="8596259161937605316">"Nur der Eigentümer des Telefons kann Nutzer verwalten."</string>
+    <string name="user_cannot_manage_message" product="default" msgid="8596259161937605316">"Nur der Eigentümer des Smartphones kann Nutzer verwalten."</string>
     <string name="user_confirm_remove_self_message" product="tablet" msgid="6880861846664267876">"Dein Profil und deine Daten werden vom Tablet entfernt. Du kannst diese Aktion nicht rückgängig machen."</string>
     <string name="user_confirm_remove_self_message" product="default" msgid="3209762447055039706">"Dein Profil und deine Daten werden vom Telefon entfernt. Du kannst diese Aktion nicht rückgängig machen."</string>
     <string name="support_summary" product="default" msgid="2044721479256103419">"Hilfeartikel, Telefon- &amp; Chatsupport"</string>
diff --git a/res-product/values-es-feminine/strings.xml b/res-product/values-es-feminine/strings.xml
new file mode 100644
index 0000000..61a55da
--- /dev/null
+++ b/res-product/values-es-feminine/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2022 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.
+ -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="security_settings_face_settings_footer_class3_attention_not_supported" product="default" msgid="5512898803063743303">"Usa la cara para desbloquear tu teléfono o verificar que eres tú (por ejemplo, al iniciar sesión en aplicaciones o para aprobar compras).\n\nTen en cuenta lo siguiente:\nSolo puedes tener registrada una cara. Si quieres añadir otra, debes eliminar la que ya está registrada.\n\nEs posible que el teléfono se desbloquee si lo miras, aunque no sea tu intención.\n\nOtra persona puede desbloquear el teléfono si lo pone frente a tu cara, incluso si tienes los ojos cerrados.\n\nEs posible que una persona que se parezca mucho a ti (como una gemela) pueda desbloquear el teléfono."</string>
+</resources>
diff --git a/res-product/values-es-masculine/strings.xml b/res-product/values-es-masculine/strings.xml
new file mode 100644
index 0000000..54f55d6
--- /dev/null
+++ b/res-product/values-es-masculine/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2022 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.
+ -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="security_settings_face_settings_footer_class3_attention_not_supported" product="default" msgid="5512898803063743303">"Usa la cara para desbloquear tu teléfono o verificar que eres tú (por ejemplo, al iniciar sesión en aplicaciones o para aprobar compras).\n\nTen en cuenta lo siguiente:\nSolo puedes tener registrada una cara. Si quieres añadir otra, debes eliminar la que ya está registrada.\n\nEs posible que el teléfono se desbloquee si lo miras, aunque no sea tu intención.\n\nOtra persona puede desbloquear el teléfono si lo pone frente a tu cara, incluso si tienes los ojos cerrados.\n\nEs posible que una persona que se parezca mucho a ti (como un gemelo) pueda desbloquear el teléfono."</string>
+</resources>
diff --git a/res-product/values-es-neuter/strings.xml b/res-product/values-es-neuter/strings.xml
new file mode 100644
index 0000000..54f55d6
--- /dev/null
+++ b/res-product/values-es-neuter/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2022 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.
+ -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="security_settings_face_settings_footer_class3_attention_not_supported" product="default" msgid="5512898803063743303">"Usa la cara para desbloquear tu teléfono o verificar que eres tú (por ejemplo, al iniciar sesión en aplicaciones o para aprobar compras).\n\nTen en cuenta lo siguiente:\nSolo puedes tener registrada una cara. Si quieres añadir otra, debes eliminar la que ya está registrada.\n\nEs posible que el teléfono se desbloquee si lo miras, aunque no sea tu intención.\n\nOtra persona puede desbloquear el teléfono si lo pone frente a tu cara, incluso si tienes los ojos cerrados.\n\nEs posible que una persona que se parezca mucho a ti (como un gemelo) pueda desbloquear el teléfono."</string>
+</resources>
diff --git a/res-product/values-es-rUS/strings.xml b/res-product/values-es-rUS/strings.xml
index 41adf52..27961e6 100644
--- a/res-product/values-es-rUS/strings.xml
+++ b/res-product/values-es-rUS/strings.xml
@@ -55,12 +55,12 @@
     <string name="security_settings_face_enroll_introduction_message_class3" product="default" msgid="8492576130109033451">"Usa tu rostro para desbloquear el teléfono o autenticarte en apps, como cuando accedes o apruebas compras"</string>
     <string name="security_settings_face_enroll_introduction_message_class3" product="tablet" msgid="8736497842795690098">"Usa tu rostro para desbloquear la tablet o autenticarte en apps, como cuando accedes o apruebas compras"</string>
     <string name="security_settings_face_enroll_introduction_message_class3" product="device" msgid="2558057312718921078">"Usa tu rostro para desbloquear el dispositivo o autenticarte en apps, como cuando accedes o apruebas compras"</string>
-    <string name="security_settings_face_enroll_introduction_consent_message_0" product="default" msgid="9086377203303858619">"Permite que tu hijo desbloquee su teléfono con el rostro"</string>
-    <string name="security_settings_face_enroll_introduction_consent_message_0" product="tablet" msgid="4560949471246282574">"Permite que tu hijo desbloquee su tablet con el rostro"</string>
-    <string name="security_settings_face_enroll_introduction_consent_message_0" product="device" msgid="1156063265854416046">"Permite que tu hijo desbloquee su dispositivo con el rostro"</string>
+    <string name="security_settings_face_enroll_introduction_consent_message_0" product="default" msgid="9086377203303858619">"Permite que tu hijo o hija desbloquee su teléfono con el rostro"</string>
+    <string name="security_settings_face_enroll_introduction_consent_message_0" product="tablet" msgid="4560949471246282574">"Permite que tu hijo o hija desbloquee su tablet con el rostro"</string>
+    <string name="security_settings_face_enroll_introduction_consent_message_0" product="device" msgid="1156063265854416046">"Permite que tu hijo o hija desbloquee su dispositivo con el rostro"</string>
     <string name="security_settings_face_enroll_introduction_consent_message_0_class3" product="default" msgid="5082581184108528408">"Permite que tu hijo o hija use su rostro para desbloquear el teléfono o verificar su identidad. Permitirá el acceso a apps, aprobar compras y mucho más."</string>
     <string name="security_settings_face_enroll_introduction_consent_message_0_class3" product="tablet" msgid="5932555218164668532">"Permite que tu hijo o hija use su rostro para desbloquear la tablet o verificar su identidad. Permitirá el acceso a apps, aprobar compras y mucho más."</string>
-    <string name="security_settings_face_enroll_introduction_consent_message_0_class3" product="device" msgid="8943878265098867810">"Permite que tu hijo o hija use su rostro para desbloquear el dispositivo o verificar su identidad. Permitirá el acceso a apps, aprobar compras y mucho más."</string>
+    <string name="security_settings_face_enroll_introduction_consent_message_0_class3" product="device" msgid="8943878265098867810">"Permite que tu hijo o hija use su rostro para desbloquear el dispositivo o verificar su identidad. Permitirá acceder a apps, aprobar compras y mucho más."</string>
     <string name="security_settings_face_enroll_introduction_consent_message" product="default" msgid="3698558920963989416">"Usar el desbloqueo facial para que tu hijo acceda a su teléfono puede ser menos seguro que usar un buen patrón o un PIN."</string>
     <string name="security_settings_face_enroll_introduction_consent_message" product="tablet" msgid="2689983368730833505">"Usar el desbloqueo facial para que tu hijo acceda a su tablet puede ser menos seguro que usar un buen patrón o un PIN."</string>
     <string name="security_settings_face_enroll_introduction_consent_message" product="device" msgid="5768077532130409820">"Usar el desbloqueo facial para que tu hijo acceda a su dispositivo puede ser menos seguro que usar un buen patrón o un PIN."</string>
@@ -107,9 +107,9 @@
     <string name="security_settings_face_settings_footer_class3_attention_not_supported" product="tablet" msgid="6790505667764631343">"Usa tu rostro para desbloquear la tablet o verificar tu identidad, por ejemplo, cuando accedes a apps o apruebas compras.\n\nTen en cuenta lo siguiente:\nSolo puedes configurar un rostro por vez. Para agregar otro rostro, borra el actual.\n\nPuedes desbloquear la tablet aunque no lo desees cuando la miras.\n\nUn tercero puede desbloquear la tablet si la sostiene frente a tu rostro, incluso aunque tengas los ojos cerrados.\n\nTambién puede desbloquearla cualquier persona que se parezca a ti, como un hermano gemelo."</string>
     <string name="security_settings_face_settings_footer_class3_attention_not_supported" product="device" msgid="7858917821957779752">"Usa tu rostro para desbloquear el dispositivo o verificar tu identidad, por ejemplo, cuando accedes a apps o apruebas compras.\n\nTen en cuenta lo siguiente:\nSolo puedes configurar un rostro por vez. Para agregar otro rostro, borra el actual.\n\nPuedes desbloquear el dispositivo aunque no lo desees cuando lo miras.\n\nUn tercero puede desbloquear el dispositivo si lo sostiene frente a tu rostro, incluso aunque tengas los ojos cerrados.\n\nTambién puede desbloquearlo cualquier persona que se parezca a ti, como un hermano gemelo."</string>
     <string name="security_settings_fingerprint_enroll_introduction_v3_message" msgid="2145273491174234191">"Usa tu huella dactilar para desbloquear el dispositivo <xliff:g id="DEVICENAME">%s</xliff:g> o verificar tu identidad, como cuando accedes a apps o apruebas compras."</string>
-    <string name="security_settings_fingerprint_enroll_introduction_consent_message" product="default" msgid="5101253231118659496">"Permite que tu hijo use su huella dactilar para desbloquear el teléfono o verificar su identidad. Eso le permitirá acceder a apps, aprobar compras y mucho más."</string>
-    <string name="security_settings_fingerprint_enroll_introduction_consent_message" product="tablet" msgid="3063978167545799342">"Permite que tu hijo use su huella dactilar para desbloquear la tablet o verificar su identidad. Eso le permitirá acceder a apps, aprobar compras y mucho más."</string>
-    <string name="security_settings_fingerprint_enroll_introduction_consent_message" product="device" msgid="4399560001732497632">"Permite que tu hijo use su huella dactilar para desbloquear el dispositivo o verificar su identidad. Eso le permitirá acceder a apps, aprobar compras y mucho más."</string>
+    <string name="security_settings_fingerprint_enroll_introduction_consent_message" product="default" msgid="5101253231118659496">"Permite que tu hijo o hija use su huella dactilar para desbloquear el teléfono o verificar su identidad. Eso le permitirá acceder a apps, aprobar compras y mucho más."</string>
+    <string name="security_settings_fingerprint_enroll_introduction_consent_message" product="tablet" msgid="3063978167545799342">"Permite que tu hijo o hija use su huella dactilar para desbloquear la tablet o verificar su identidad. Eso le permitirá acceder a apps, aprobar compras y mucho más."</string>
+    <string name="security_settings_fingerprint_enroll_introduction_consent_message" product="device" msgid="4399560001732497632">"Permite que tu hijo o hija use su huella dactilar para desbloquear el dispositivo o verificar su identidad. Eso le permitirá acceder a apps, aprobar compras y mucho más."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_1" product="default" msgid="8488497844109768268">"Es posible que el desbloqueo con huella dactilar sea menos seguro que un patrón o un PIN eficaz"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_1" product="tablet" msgid="5688664190282817312">"El uso de la huella dactilar para desbloquear la tablet puede ser menos seguro que un patrón o PIN confiables"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_1" product="device" msgid="2814616139536479018">"El uso de la huella dactilar para desbloquear el dispositivo puede ser menos seguro que un patrón o PIN confiables"</string>
@@ -128,9 +128,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="6272159089589340181">"Tu teléfono se puede desbloquear aunque no lo desees, por ejemplo, si alguien lo acerca a tu dedo."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="2420109998272019149">"Tu tablet se puede desbloquear aunque no lo desees, por ejemplo, cuando alguien la sostiene frente a tu dedo."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="5915844445830045866">"Tu dispositivo se puede desbloquear aunque no lo desees, por ejemplo, cuando alguien lo sostiene frente a tu dedo."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" product="default" msgid="6556725426776167791">"El teléfono de tu hijo puede desbloquearse sin que así lo quisiera, por ejemplo, porque alguien se lo acercó al dedo."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" product="default" msgid="6556725426776167791">"El teléfono de tu hijo o hija puede desbloquearse de manera no intencional, por ejemplo, si alguien se lo acerca al dedo."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" product="tablet" msgid="5156581794964551571">"La tablet de tu hijo puede desbloquearse de manera no intencional, por ejemplo, si alguien se la acerca al dedo."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" product="device" msgid="8309101436391515400">"El dispositivo de tu hijo puede desbloquearse de manera no intencional, por ejemplo, si alguien se lo acerca al dedo."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" product="device" msgid="8309101436391515400">"El dispositivo de tu hijo o hija puede desbloquearse de manera no intencional, por ejemplo, si alguien se lo acerca al dedo."</string>
     <string name="security_settings_fingerprint_v2_home_screen_text" product="tablet" msgid="5074447304036758639">"Usa tu huella dactilar para desbloquear la tablet o verificar tu identidad, por ejemplo, cuando accedes a apps."</string>
     <string name="security_settings_fingerprint_v2_home_screen_text" product="device" msgid="7398339851724524558">"Usa tu huella dactilar para desbloquear el dispositivo o verificar tu identidad, por ejemplo, cuando accedes a apps"</string>
     <string name="security_settings_fingerprint_v2_home_screen_text" product="default" msgid="5376408603508393038">"Usa tu huella dactilar para desbloquear el teléfono o verificar tu identidad, como cuando accedes a apps"</string>
@@ -243,7 +243,7 @@
     <string name="storage_wizard_init_v2_internal_title" product="default" msgid="2049551739429034707">"Formatear tarjeta SD como almacenamiento interno"</string>
     <string name="storage_wizard_init_v2_internal_summary" product="default" msgid="4395040788668914783">"Almacenar apps y contenido multimedia para usar solo en este teléfono. &lt;a href=https://support.google.com/android/answer/12153449&gt;Más información para configurar una tarjeta SD&lt;/a&gt;."</string>
     <string name="storage_wizard_init_v2_internal_action" product="default" msgid="560506072518373839">"Formatear"</string>
-    <string name="storage_wizard_migrate_v2_body" product="tablet" msgid="7539293889421540797">"Puedes transferir archivos, contenido multimedia y determinadas apps a este <xliff:g id="NAME">^1</xliff:g>. \n\nSi lo haces, podrás liberar hasta <xliff:g id="SIZE">^2</xliff:g> de almacenamiento en tu tablet. El proceso llevará aproximadamente <xliff:g id="DURATION">^3</xliff:g>."</string>
+    <string name="storage_wizard_migrate_v2_body" product="tablet" msgid="7539293889421540797">"Puedes transferir archivos, contenido multimedia y determinadas apps a \"<xliff:g id="NAME">^1</xliff:g>\". \n\nSi lo haces, podrás liberar hasta <xliff:g id="SIZE">^2</xliff:g> de almacenamiento en tu tablet. El proceso tardará aproximadamente <xliff:g id="DURATION">^3</xliff:g>."</string>
     <string name="storage_wizard_migrate_v2_body" product="default" msgid="3807501187945770401">"Puedes transferir archivos, contenido multimedia y algunas apps a este <xliff:g id="NAME">^1</xliff:g>. \n\nSi lo haces, podrás liberar hasta <xliff:g id="SIZE">^2</xliff:g> de almacenamiento en tu teléfono. El proceso llevará aproximadamente <xliff:g id="DURATION">^3</xliff:g>."</string>
     <string name="storage_wizard_migrate_v2_checklist_battery" product="tablet" msgid="5326017162943304749">"Mantén la tablet cargada"</string>
     <string name="storage_wizard_migrate_v2_checklist_battery" product="default" msgid="8041162611685970218">"Mantén el teléfono cargado"</string>
@@ -272,9 +272,9 @@
     <string name="install_all_warning" product="tablet" msgid="1732116924846572063">"Tu tablet y tus datos personales son más vulnerables a los ataques de apps desconocidas. Si instalas apps de esta fuente, serás responsable de los daños que sufra tu tablet y la pérdida de datos debido al uso de estas apps."</string>
     <string name="install_all_warning" product="default" msgid="4597256179485325694">"Tu teléfono y tus datos personales son más vulnerables a los ataques de apps desconocidas. Si instalas apps de esta fuente, serás responsable de los daños que sufra tu teléfono y la pérdida de datos que pueda derivar de su uso."</string>
     <string name="install_all_warning" product="device" msgid="6293002353591632851">"Tu dispositivo y tus datos personales son más vulnerables a los ataques de apps desconocidas. Si instalas apps de esta fuente, serás responsable de los daños que sufra el dispositivo o de la pérdida de datos que se pueda derivar de su uso."</string>
-    <string name="runningservicedetails_stop_dlg_text" product="tablet" msgid="6321057186549848774">"Si detienes este servicio, algunas funciones de la tablet podrían dejar de ejecutarse correctamente hasta que lo apagues y enciendas nuevamente."</string>
+    <string name="runningservicedetails_stop_dlg_text" product="tablet" msgid="6321057186549848774">"Si detienes este servicio, algunas funciones de la tablet podrían dejar de ejecutarse correctamente hasta que la reinicies."</string>
     <string name="runningservicedetails_stop_dlg_text" product="default" msgid="6869998550403667737">"Si detienes este servicio, algunas funciones del dispositivo podrían dejar de ejecutarse correctamente hasta que lo apagues y enciendas nuevamente."</string>
-    <string name="testing_phone_info" product="tablet" msgid="8267746802132630741">"Información del tablet"</string>
+    <string name="testing_phone_info" product="tablet" msgid="8267746802132630741">"Información de la tablet"</string>
     <string name="testing_phone_info" product="default" msgid="7507506297352160191">"Información del dispositivo"</string>
     <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="1773409172676594981">"Se restablecerán las preferencias de tamaño de visualización y texto de la pantalla a las de la configuración original del teléfono"</string>
     <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="2547948891207211388">"Se restablecerán las preferencias de tamaño de visualización y texto de la pantalla a las de la configuración original de la tablet."</string>
@@ -312,7 +312,7 @@
     <string name="user_settings_footer_text" product="tablet" msgid="4749331578207116797">"Agrega nuevos usuarios para compartir tu tablet. Cada usuario tendrá un espacio propio en la tablet con pantalla principal, cuentas, apps y opciones de configuración personalizadas, y mucho más."</string>
     <string name="user_settings_footer_text" product="default" msgid="5440172971747221370">"Agrega nuevos usuarios para compartir tu teléfono. Cada usuario tendrá un espacio propio en el teléfono con pantalla principal, cuentas, apps y opciones de configuración personalizadas, y mucho más."</string>
     <string name="user_cannot_manage_message" product="tablet" msgid="5566619500245432179">"Solo los propietarios de la tablet pueden administrar los usuarios."</string>
-    <string name="user_cannot_manage_message" product="default" msgid="8596259161937605316">"Solo los propietarios del dispositivo pueden administrar los usuarios."</string>
+    <string name="user_cannot_manage_message" product="default" msgid="8596259161937605316">"Solo el propietario del teléfono puede administrar usuarios."</string>
     <string name="user_confirm_remove_self_message" product="tablet" msgid="6880861846664267876">"Perderás tu espacio y tus datos en esta tablet. No puedes deshacer esta acción."</string>
     <string name="user_confirm_remove_self_message" product="default" msgid="3209762447055039706">"Perderás tu espacio y tus datos en este dispositivo. No puedes deshacer esta acción."</string>
     <string name="support_summary" product="default" msgid="2044721479256103419">"Artículos de ayuda, teléfono y chat"</string>
diff --git a/res-product/values-es/strings.xml b/res-product/values-es/strings.xml
index 1633891..ac2b31b 100644
--- a/res-product/values-es/strings.xml
+++ b/res-product/values-es/strings.xml
@@ -56,8 +56,8 @@
     <string name="security_settings_face_enroll_introduction_message_class3" product="tablet" msgid="8736497842795690098">"Usa la cara para desbloquear tu tablet o autenticarte en aplicaciones, como al iniciar sesión o aprobar compras"</string>
     <string name="security_settings_face_enroll_introduction_message_class3" product="device" msgid="2558057312718921078">"Usa la cara para desbloquear tu dispositivo o autenticarte en aplicaciones, como al iniciar sesión o aprobar compras"</string>
     <string name="security_settings_face_enroll_introduction_consent_message_0" product="default" msgid="9086377203303858619">"Permitir que tu hijo/a use el reconocimiento facial para desbloquear su teléfono"</string>
-    <string name="security_settings_face_enroll_introduction_consent_message_0" product="tablet" msgid="4560949471246282574">"Permitir que tu hijo/a use el reconocimiento facial para desbloquear su tablet"</string>
-    <string name="security_settings_face_enroll_introduction_consent_message_0" product="device" msgid="1156063265854416046">"Permitir que tu hijo/a use el reconocimiento facial para desbloquear su dispositivo"</string>
+    <string name="security_settings_face_enroll_introduction_consent_message_0" product="tablet" msgid="4560949471246282574">"Permite que tu hijo/a use el reconocimiento facial para desbloquear su tablet"</string>
+    <string name="security_settings_face_enroll_introduction_consent_message_0" product="device" msgid="1156063265854416046">"Permite que tu hijo/a use el reconocimiento facial para desbloquear su dispositivo"</string>
     <string name="security_settings_face_enroll_introduction_consent_message_0_class3" product="default" msgid="5082581184108528408">"Permite que tu hijo/a pueda desbloquear su teléfono o verificar su identidad mediante su cara, por ejemplo, para iniciar sesión en aplicaciones, aprobar compras, etc."</string>
     <string name="security_settings_face_enroll_introduction_consent_message_0_class3" product="tablet" msgid="5932555218164668532">"Permite que tu hijo/a pueda desbloquear su tablet o verificar su identidad mediante su cara, por ejemplo, para iniciar sesión en aplicaciones, aprobar compras, etc."</string>
     <string name="security_settings_face_enroll_introduction_consent_message_0_class3" product="device" msgid="8943878265098867810">"Permite que tu hijo/a pueda desbloquear su dispositivo o verificar su identidad mediante su cara, por ejemplo, para iniciar sesión en aplicaciones, aprobar compras, etc."</string>
@@ -94,27 +94,27 @@
     <string name="security_settings_face_enroll_introduction_control_consent_message" product="default" msgid="6983939010814873996"></string>
     <string name="security_settings_face_enroll_introduction_control_consent_message" product="tablet" msgid="6983939010814873996"></string>
     <string name="security_settings_face_enroll_introduction_control_consent_message" product="device" msgid="6983939010814873996"></string>
-    <string name="security_settings_face_settings_footer" product="default" msgid="3036403896485044957">"Usa la cara para desbloquear tu teléfono o autenticarte en aplicaciones (por ejemplo, para iniciar sesión o autorizar compras).\n\nTen en cuenta lo siguiente:\nSolo puedes tener registrada una cara. Si quieres añadir otra, debes eliminar la que ya esté registrada.\n\nEs posible que el teléfono se desbloquee si lo miras, aunque no sea tu intención.\n\nOtra persona puede desbloquear el teléfono si lo pone frente a tu cara.\n\nEs posible que una persona que se parezca mucho a ti (como un gemelo) pueda desbloquear el teléfono."</string>
-    <string name="security_settings_face_settings_footer" product="tablet" msgid="3467711032275909082">"Usa la cara para desbloquear tu tablet o autenticarte en aplicaciones (por ejemplo, para iniciar sesión o autorizar compras).\n\nTen en cuenta lo siguiente:\nSolo puedes tener registrada una cara. Si quieres añadir otra, debes eliminar la que ya esté registrada.\n\nEs posible que la tablet se desbloquee si la miras, aunque no sea tu intención.\n\nOtra persona puede desbloquear la tablet si la pone frente a tu cara.\n\nEs posible que una persona que se parezca mucho a ti (como un gemelo) pueda desbloquear la tablet."</string>
+    <string name="security_settings_face_settings_footer" product="default" msgid="3036403896485044957">"Usa la cara para desbloquear tu teléfono o autenticarte en aplicaciones (por ejemplo, para iniciar sesión o autorizar compras).\n\nTen en cuenta lo siguiente:\nSolo puedes tener registrada una cara. Si quieres añadir otra, debes eliminar la que ya está registrada.\n\nEs posible que el teléfono se desbloquee si lo miras, aunque no sea tu intención.\n\nOtra persona puede desbloquear el teléfono si lo pone frente a tu cara.\n\nEs posible que una persona que se parezca mucho a ti (como un gemelo) pueda desbloquear el teléfono."</string>
+    <string name="security_settings_face_settings_footer" product="tablet" msgid="3467711032275909082">"Usa la cara para desbloquear tu tablet o autenticarte en aplicaciones (por ejemplo, para iniciar sesión o autorizar compras).\n\nTen en cuenta lo siguiente:\nSolo puedes tener registrada una cara. Si quieres añadir otra, debes eliminar la que ya está registrada.\n\nEs posible que la tablet se desbloquee si la miras, aunque no sea tu intención.\n\nOtra persona puede desbloquear la tablet si la pone frente a tu cara.\n\nEs posible que una persona que se parezca mucho a ti (como un gemelo) pueda desbloquear la tablet."</string>
     <string name="security_settings_face_settings_footer" product="device" msgid="6237815625247917310">"Usa la cara para desbloquear tu dispositivo o autenticarte en aplicaciones (por ejemplo, para iniciar sesión o autorizar compras).\n\nTen en cuenta lo siguiente:\nSolo puedes tener registrada una cara. Si quieres añadir otra, debes eliminar la que ya está registrada.\n\nEs posible que el dispositivo se desbloquee si lo miras, aunque no sea tu intención.\n\nOtra persona puede desbloquear el dispositivo si lo pone frente a tu cara.\n\nEs posible que una persona que se parezca mucho a ti (como un gemelo) pueda desbloquear el dispositivo."</string>
-    <string name="security_settings_face_settings_footer_attention_not_supported" product="default" msgid="8266896471278294942">"Usa la cara para desbloquear tu teléfono o autenticarte en aplicaciones (por ejemplo, para iniciar sesión o autorizar compras).\n\nTen en cuenta lo siguiente:\nSolo puedes tener registrada una cara. Si quieres añadir otra, debes eliminar la que ya esté registrada.\n\nEs posible que el teléfono se desbloquee si lo miras, aunque no sea tu intención.\n\nOtra persona puede desbloquear el teléfono si lo pone frente a tu cara, incluso si tienes los ojos cerrados.\n\nEs posible que una persona que se parezca mucho a ti (como un gemelo) pueda desbloquear el teléfono."</string>
-    <string name="security_settings_face_settings_footer_attention_not_supported" product="tablet" msgid="6932278790700490818">"Usa la cara para desbloquear tu tablet o autenticarte en aplicaciones (por ejemplo, para iniciar sesión o autorizar compras).\n\nTen en cuenta lo siguiente:\nSolo puedes tener registrada una cara. Si quieres añadir otra, debes eliminar la que ya esté registrada.\n\nEs posible que la tablet se desbloquee si la miras, aunque no sea tu intención.\n\nOtra persona puede desbloquear la tablet si la pone frente a tu cara, incluso si tienes los ojos cerrados.\n\nEs posible que una persona que se parezca mucho a ti (como un gemelo) pueda desbloquear la tablet."</string>
-    <string name="security_settings_face_settings_footer_attention_not_supported" product="device" msgid="2559602951942339212">"Usa la cara para desbloquear tu dispositivo o autenticarte en aplicaciones (por ejemplo, para iniciar sesión o autorizar compras).\n\nTen en cuenta lo siguiente:\nSolo puedes tener registrada una cara. Si quieres añadir otra, debes eliminar la que ya esté registrada.\n\nEs posible que el dispositivo se desbloquee si lo miras, aunque no sea tu intención.\n\nOtra persona puede desbloquear el dispositivo si lo pone frente a tu cara, incluso si tienes los ojos cerrados.\n\nEs posible que una persona que se parezca mucho a ti (como un gemelo) pueda desbloquear el dispositivo."</string>
+    <string name="security_settings_face_settings_footer_attention_not_supported" product="default" msgid="8266896471278294942">"Usa la cara para desbloquear tu teléfono o autenticarte en aplicaciones (por ejemplo, para iniciar sesión o autorizar compras).\n\nTen en cuenta lo siguiente:\nSolo puedes tener registrada una cara. Si quieres añadir otra, debes eliminar la que ya está registrada.\n\nEs posible que el teléfono se desbloquee si lo miras, aunque no sea tu intención.\n\nOtra persona puede desbloquear el teléfono si lo pone frente a tu cara, incluso si tienes los ojos cerrados.\n\nEs posible que una persona que se parezca mucho a ti (como un gemelo) pueda desbloquear el teléfono."</string>
+    <string name="security_settings_face_settings_footer_attention_not_supported" product="tablet" msgid="6932278790700490818">"Usa la cara para desbloquear tu tablet o autenticarte en aplicaciones (por ejemplo, para iniciar sesión o autorizar compras).\n\nTen en cuenta lo siguiente:\nSolo puedes tener registrada una cara. Si quieres añadir otra, debes eliminar la que ya está registrada.\n\nEs posible que la tablet se desbloquee si la miras, aunque no sea tu intención.\n\nOtra persona puede desbloquear la tablet si la pone frente a tu cara, incluso si tienes los ojos cerrados.\n\nEs posible que una persona que se parezca mucho a ti (como un gemelo) pueda desbloquear la tablet."</string>
+    <string name="security_settings_face_settings_footer_attention_not_supported" product="device" msgid="2559602951942339212">"Usa la cara para desbloquear tu dispositivo o autenticarte en aplicaciones (por ejemplo, para iniciar sesión o autorizar compras).\n\nTen en cuenta lo siguiente:\nSolo puedes tener registrada una cara. Si quieres añadir otra, debes eliminar la que ya está registrada.\n\nEs posible que el dispositivo se desbloquee si lo miras, aunque no sea tu intención.\n\nOtra persona puede desbloquear el dispositivo si lo pone frente a tu cara, incluso si tienes los ojos cerrados.\n\nEs posible que una persona que se parezca mucho a ti (como un gemelo) pueda desbloquear el dispositivo."</string>
     <string name="security_settings_face_settings_footer_class3" product="default" msgid="7050076350282827484">"Usa la cara para desbloquear tu teléfono o verificar que eres tú (por ejemplo, al iniciar sesión en aplicaciones o para aprobar compras).\n\nTen en cuenta lo siguiente:\nSolo puedes tener registrada una cara. Si quieres añadir otra, debes eliminar la que ya está registrada.\n\nEs posible que el teléfono se desbloquee si lo miras, aunque no sea tu intención.\n\nOtra persona puede desbloquear el teléfono si lo pone frente a tu cara.\n\nEs posible que una persona que se parezca mucho a ti (como un gemelo) pueda desbloquear el teléfono."</string>
-    <string name="security_settings_face_settings_footer_class3" product="tablet" msgid="8013245173915280810">"Usa la cara para desbloquear tu tablet o verificar que eres tú (por ejemplo, al iniciar sesión en aplicaciones o para aprobar compras).\n\nTen en cuenta lo siguiente:\nSolo puedes tener registrada una cara. Si quieres añadir otra, debes eliminar la que ya esté registrada.\n\nEs posible que la tablet se desbloquee si la miras, aunque no sea tu intención.\n\nOtra persona puede desbloquear la tablet si la pone frente a tu cara.\n\nEs posible que una persona que se parezca mucho a ti (como un gemelo) pueda desbloquear la tablet."</string>
-    <string name="security_settings_face_settings_footer_class3" product="device" msgid="4411845832787210264">"Usa la cara para desbloquear tu dispositivo o verificar que eres tú (por ejemplo, al iniciar sesión en aplicaciones o para aprobar compras).\n\nTen en cuenta lo siguiente:\nSolo puedes tener registrada una cara. Si quieres añadir otra, debes eliminar la que ya esté registrada.\n\nEs posible que el dispositivo se desbloquee si lo miras, aunque no sea tu intención.\n\nOtra persona puede desbloquear el dispositivo si lo pone frente a tu cara.\n\nEs posible que una persona que se parezca mucho a ti (como un gemelo) pueda desbloquear el dispositivo."</string>
-    <string name="security_settings_face_settings_footer_class3_attention_not_supported" product="default" msgid="5512898803063743303">"Usa la cara para desbloquear tu teléfono o verificar que eres tú (por ejemplo, al iniciar sesión en aplicaciones o para aprobar compras).\n\nTen en cuenta lo siguiente:\nSolo puedes tener registrada una cara. Si quieres añadir otra, debes eliminar la que ya esté registrada.\n\nEs posible que el teléfono se desbloquee si lo miras, aunque no sea tu intención.\n\nOtra persona puede desbloquear el teléfono si lo pone frente a tu cara, incluso si tienes los ojos cerrados.\n\nEs posible que una persona que se parezca mucho a ti (como un gemelo) pueda desbloquear el teléfono."</string>
-    <string name="security_settings_face_settings_footer_class3_attention_not_supported" product="tablet" msgid="6790505667764631343">"Usa la cara para desbloquear tu tablet o verificar que eres tú (por ejemplo, al iniciar sesión en aplicaciones o para aprobar compras).\n\nTen en cuenta lo siguiente:\nSolo puedes tener registrada una cara. Si quieres añadir otra, debes eliminar la que ya esté registrada.\n\nEs posible que la tablet se desbloquee si la miras, aunque no sea tu intención.\n\nOtra persona puede desbloquear la tablet si la pone frente a tu cara, incluso si tienes los ojos cerrados.\n\nEs posible que una persona que se parezca mucho a ti (como un gemelo) pueda desbloquear la tablet."</string>
-    <string name="security_settings_face_settings_footer_class3_attention_not_supported" product="device" msgid="7858917821957779752">"Usa la cara para desbloquear tu dispositivo o verificar que eres tú (por ejemplo, al iniciar sesión en aplicaciones o para aprobar compras).\n\nTen en cuenta lo siguiente:\nSolo puedes tener registrada una cara. Si quieres añadir otra, debes eliminar la que ya esté registrada.\n\nEs posible que el dispositivo se desbloquee si lo miras, aunque no sea tu intención.\n\nOtra persona puede desbloquear el dispositivo si lo pone frente a tu cara, incluso si tienes los ojos cerrados.\n\nEs posible que una persona que se parezca mucho a ti (como un gemelo) pueda desbloquear el dispositivo."</string>
+    <string name="security_settings_face_settings_footer_class3" product="tablet" msgid="8013245173915280810">"Usa la cara para desbloquear tu tablet o verificar que eres tú (por ejemplo, al iniciar sesión en aplicaciones o para aprobar compras).\n\nTen en cuenta lo siguiente:\nSolo puedes tener registrada una cara. Si quieres añadir otra, debes eliminar la que ya está registrada.\n\nEs posible que la tablet se desbloquee si la miras, aunque no sea tu intención.\n\nOtra persona puede desbloquear la tablet si la pone frente a tu cara.\n\nEs posible que una persona que se parezca mucho a ti (como un gemelo) pueda desbloquear la tablet."</string>
+    <string name="security_settings_face_settings_footer_class3" product="device" msgid="4411845832787210264">"Usa la cara para desbloquear tu dispositivo o verificar que eres tú (por ejemplo, al iniciar sesión en aplicaciones o para aprobar compras).\n\nTen en cuenta lo siguiente:\nSolo puedes tener registrada una cara. Si quieres añadir otra, debes eliminar la que ya está registrada.\n\nEs posible que el dispositivo se desbloquee si lo miras, aunque no sea tu intención.\n\nOtra persona puede desbloquear el dispositivo si lo pone frente a tu cara.\n\nEs posible que una persona que se parezca mucho a ti (como un gemelo) pueda desbloquear el dispositivo."</string>
+    <string name="security_settings_face_settings_footer_class3_attention_not_supported" product="default" msgid="5512898803063743303">"Usa la cara para desbloquear tu teléfono o verificar que eres tú (por ejemplo, al iniciar sesión en aplicaciones o para aprobar compras).\n\nTen en cuenta lo siguiente:\nSolo puedes tener registrada una cara. Si quieres añadir otra, debes eliminar la que ya está registrada.\n\nEs posible que el teléfono se desbloquee si lo miras, aunque no sea tu intención.\n\nOtra persona puede desbloquear el teléfono si lo pone frente a tu cara, incluso si tienes los ojos cerrados.\n\nEs posible que una persona que se parezca mucho a ti (como un gemelo) pueda desbloquear el teléfono."</string>
+    <string name="security_settings_face_settings_footer_class3_attention_not_supported" product="tablet" msgid="6790505667764631343">"Usa la cara para desbloquear tu tablet o verificar que eres tú (por ejemplo, al iniciar sesión en aplicaciones o para aprobar compras).\n\nTen en cuenta lo siguiente:\nSolo puedes tener registrada una cara. Si quieres añadir otra, debes eliminar la que ya está registrada.\n\nEs posible que la tablet se desbloquee si la miras, aunque no sea tu intención.\n\nOtra persona puede desbloquear la tablet si la pone frente a tu cara, incluso si tienes los ojos cerrados.\n\nEs posible que una persona que se parezca mucho a ti (como un gemelo) pueda desbloquear la tablet."</string>
+    <string name="security_settings_face_settings_footer_class3_attention_not_supported" product="device" msgid="7858917821957779752">"Usa la cara para desbloquear tu dispositivo o verificar que eres tú (por ejemplo, al iniciar sesión en aplicaciones o para aprobar compras).\n\nTen en cuenta lo siguiente:\nSolo puedes tener registrada una cara. Si quieres añadir otra, debes eliminar la que ya está registrada.\n\nEs posible que el dispositivo se desbloquee si lo miras, aunque no sea tu intención.\n\nOtra persona puede desbloquear el dispositivo si lo pone frente a tu cara, incluso si tienes los ojos cerrados.\n\nEs posible que una persona que se parezca mucho a ti (como un gemelo) pueda desbloquear el dispositivo."</string>
     <string name="security_settings_fingerprint_enroll_introduction_v3_message" msgid="2145273491174234191">"Usa tu huella digital para desbloquear tu <xliff:g id="DEVICENAME">%s</xliff:g> o verificar que eres tú (por ejemplo, al iniciar sesión en aplicaciones o para aprobar compras)"</string>
     <string name="security_settings_fingerprint_enroll_introduction_consent_message" product="default" msgid="5101253231118659496">"Permítele a tu hijo/a que, con su huella digital, pueda desbloquear el teléfono o verificar su identidad para iniciar sesión en aplicaciones, aprobar compras, etc."</string>
-    <string name="security_settings_fingerprint_enroll_introduction_consent_message" product="tablet" msgid="3063978167545799342">"Permite que tu hijo/a pueda desbloquear su tablet o verificar su identidad mediante su huella digital, por ejemplo, para iniciar sesión en aplicaciones, aprobar compras, etc."</string>
-    <string name="security_settings_fingerprint_enroll_introduction_consent_message" product="device" msgid="4399560001732497632">"Permite que tu hijo/a pueda desbloquear su dispositivo o verificar su identidad mediante su huella digital, por ejemplo, para iniciar sesión en aplicaciones, aprobar compras, etc."</string>
+    <string name="security_settings_fingerprint_enroll_introduction_consent_message" product="tablet" msgid="3063978167545799342">"Permite que tu hijo/a pueda desbloquear su tablet o verificar su identidad mediante su huella digital (por ejemplo, para iniciar sesión en aplicaciones o aprobar compras)."</string>
+    <string name="security_settings_fingerprint_enroll_introduction_consent_message" product="device" msgid="4399560001732497632">"Permite que tu hijo/a pueda desbloquear su dispositivo o verificar su identidad mediante su huella digital (por ejemplo, para iniciar sesión en aplicaciones o aprobar compras)."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_1" product="default" msgid="8488497844109768268">"Es posible que usar la huella digital para desbloquear el teléfono sea menos seguro que un buen patrón o PIN"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_1" product="tablet" msgid="5688664190282817312">"Usar la huella digital para desbloquear el tablet puede ser menos seguro que un buen patrón o PIN"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_1" product="device" msgid="2814616139536479018">"Usar la huella digital para desbloquear el dispositivo puede ser menos seguro que un buen patrón o PIN"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_3" product="default" msgid="3334689370761542152">"Cuando usas Pixel Imprint, se utilizan imágenes para actualizar el modelo de tu huella digital. Las imágenes usadas para crear el modelo no se guardan nunca, pero el modelo en sí se almacena de manera segura en tu teléfono y nunca sale de él. Todos los procesos se llevan a cabo de forma segura en el teléfono."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_3" product="tablet" msgid="6142978289780449828">"Cuando usas Pixel Imprint, se usan imágenes para actualizar el modelo de tu huella digital. Las imágenes usadas para crear el modelo no se guardan nunca, pero el modelo sí se almacena de manera segura en tu tablet y nunca sale de él. Todos los procesos se llevan a cabo de forma segura en el tablet."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_3" product="tablet" msgid="6142978289780449828">"Cuando usas Pixel Imprint, se usan imágenes para actualizar el modelo de tu huella digital. Las imágenes usadas para crear el modelo no se guardan nunca, pero el modelo sí se almacena de manera segura en tu tablet y nunca sale de ella. Todos los procesos se llevan a cabo de forma segura en la tablet."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_3" product="device" msgid="9221017777932077429">"Cuando usas Pixel Imprint, se usan imágenes para actualizar el modelo de tu huella digital. Las imágenes usadas para crear el modelo no se guardan nunca, pero el modelo sí se almacena de manera segura en tu dispositivo y nunca sale de él. Todos los procesos se llevan a cabo de forma segura en el dispositivo."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" product="default" msgid="6804981319922169283">"Cuando usa Pixel Imprint, se utilizan imágenes para actualizar el modelo de su huella digital. Las imágenes usadas para crear el modelo de huella digital de tu hijo/a nunca se guardan, pero el modelo en sí se almacena de manera segura en el teléfono y nunca sale de él. Todos los procesos se llevan a cabo de forma segura en el teléfono."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" product="tablet" msgid="1426913673720862863">"Cuando usa Pixel Imprint, se usan imágenes para actualizar el modelo de su huella digital. Las imágenes usadas para crear el modelo de huella digital de tu hijo/a nunca se guardan, pero el modelo sí se almacena de manera segura en el tablet y nunca sale de él. Todos los procesos se llevan a cabo de forma segura en el tablet."</string>
@@ -123,26 +123,26 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" product="tablet" msgid="8207309581266022275">"Puedes eliminar las imágenes y el modelo de tu huella, así como desactivar Desbloqueo con huella digital cuando quieras desde Ajustes. Las imágenes y los modelos de huellas digitales se almacenan en el tablet hasta que los eliminas."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" product="device" msgid="2498580070051496133">"Puedes eliminar las imágenes y el modelo de tu huella, así como desactivar Desbloqueo con huella digital cuando quieras desde Ajustes. Las imágenes y los modelos de huellas digitales se almacenan en el dispositivo hasta que los eliminas."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" product="default" msgid="5003753461032107715">"Tú y tu hijo/a podéis eliminar el modelo y las imágenes de su huella digital, así como desactivar Desbloqueo con huella digital en cualquier momento desde Ajustes. Los modelos y las imágenes de la huella digital se almacenan en el teléfono hasta que se eliminan."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" product="tablet" msgid="8772005555323461143">"Tú y tu hijo/a podéis eliminar el modelo y las imágenes de su huella digital, así como desactivar Desbloqueo con huella digital en cualquier momento desde Ajustes. Los modelos y las imágenes de la huella digital se almacenan en el tablet hasta que se eliminan."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" product="tablet" msgid="8772005555323461143">"Tú y tu hijo/a podéis eliminar el modelo y las imágenes de su huella digital, así como desactivar Desbloqueo con huella digital en cualquier momento desde Ajustes. Los modelos y las imágenes de la huella digital se almacenan en la tablet hasta que se eliminan."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" product="device" msgid="7254955922685507093">"Tú y tu hijo/a podéis eliminar el modelo y las imágenes de su huella digital, así como desactivar Desbloqueo con huella digital en cualquier momento desde Ajustes. Los modelos y las imágenes de la huella digital se almacenan en el dispositivo hasta que se eliminan."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="6272159089589340181">"Tu teléfono puede desbloquearse aunque no sea tu intención (por ejemplo, si alguien lo acerca a tu dedo)."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="2420109998272019149">"Tu tablet puede desbloquearse aunque no sea tu intención (por ejemplo, si alguien la acerca a tu dedo)."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="5915844445830045866">"Tu dispositivo puede desbloquearse aunque no sea tu intención (por ejemplo, si alguien lo acerca a tu dedo)."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" product="default" msgid="6556725426776167791">"El teléfono de tu hijo/a puede desbloquearse sin que quiera, por ejemplo, porque alguien se lo ha acercado al dedo."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" product="tablet" msgid="5156581794964551571">"El tablet de tu hijo/a puede desbloquearse sin que quiera, por ejemplo, porque alguien se lo ha acercado al dedo."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" product="device" msgid="8309101436391515400">"El dispositivo de tu hijo/a puede desbloquearse sin que quiera, por ejemplo, porque alguien se lo ha acercado al dedo."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" product="default" msgid="6556725426776167791">"El teléfono de tu hijo/a puede desbloquearse sin que quiera (por ejemplo, porque alguien se lo ha acercado al dedo)."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" product="tablet" msgid="5156581794964551571">"La tablet de tu hijo/a puede desbloquearse sin que quiera, por ejemplo, porque alguien se la ha acercado al dedo."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" product="device" msgid="8309101436391515400">"El dispositivo de tu hijo/a puede desbloquearse sin que quiera (por ejemplo, porque alguien se lo ha acercado al dedo)."</string>
     <string name="security_settings_fingerprint_v2_home_screen_text" product="tablet" msgid="5074447304036758639">"Usa tu huella digital para desbloquear tu tablet o verificar que eres tú (por ejemplo, al iniciar sesión en aplicaciones)"</string>
     <string name="security_settings_fingerprint_v2_home_screen_text" product="device" msgid="7398339851724524558">"Usa tu huella digital para desbloquear tu dispositivo o verificar que eres tú (por ejemplo, al iniciar sesión en aplicaciones)"</string>
     <string name="security_settings_fingerprint_v2_home_screen_text" product="default" msgid="5376408603508393038">"Usa tu huella digital para desbloquear tu teléfono o verificar que eres tú (por ejemplo, al iniciar sesión en aplicaciones)"</string>
-    <string name="biometric_settings_hand_back_to_guardian" product="tablet" msgid="9034560319613439593">"Pásale el tablet a tu padre o a tu madre"</string>
-    <string name="biometric_settings_hand_back_to_guardian" product="device" msgid="2149647165743006307">"Pásale el dispositivo a tu padre o a tu madre"</string>
-    <string name="biometric_settings_hand_back_to_guardian" product="default" msgid="2060265104488529949">"Pásale el teléfono a tu padre o a tu madre"</string>
-    <string name="lock_screen_intro_skip_dialog_text_frp" product="tablet" msgid="7526137517192538870">"No se activarán las funciones de protección del dispositivo. No podrás evitar que otros usuarios utilicen esta tablet si la pierdes, te la roban o se restablece su estado de fábrica."</string>
-    <string name="lock_screen_intro_skip_dialog_text_frp" product="device" msgid="1350434793163709209">"No se activarán las funciones de protección del dispositivo. No podrás evitar que otros usuarios lo utilicen si lo pierdes, te lo roban o se restablecen su estado de fábrica."</string>
-    <string name="lock_screen_intro_skip_dialog_text_frp" product="default" msgid="8367731653387033354">"No se activarán las funciones de protección del dispositivo. No podrás evitar que otros usuarios utilicen este teléfono si lo pierdes, te lo roban o se restablecen su estado de fábrica."</string>
-    <string name="lock_screen_intro_skip_dialog_text" product="tablet" msgid="1957425614489669582">"No se activarán las funciones de protección del dispositivo. No podrás evitar que otros usuarios utilicen esta tablet si lo pierdes o te lo roban."</string>
+    <string name="biometric_settings_hand_back_to_guardian" product="tablet" msgid="9034560319613439593">"Pásale la tablet a tu padre o a tu madre"</string>
+    <string name="biometric_settings_hand_back_to_guardian" product="device" msgid="2149647165743006307">"Pásale el dispositivo a tu padre o madre"</string>
+    <string name="biometric_settings_hand_back_to_guardian" product="default" msgid="2060265104488529949">"Pásale el teléfono a tu padre o madre"</string>
+    <string name="lock_screen_intro_skip_dialog_text_frp" product="tablet" msgid="7526137517192538870">"No se activarán las funciones de protección del dispositivo. No podrás evitar que otros usuarios utilicen esta tablet si la pierdes, te la roban o la restablecen."</string>
+    <string name="lock_screen_intro_skip_dialog_text_frp" product="device" msgid="1350434793163709209">"No se activarán las funciones de protección del dispositivo. No podrás evitar que otros usuarios lo utilicen si lo pierdes, te lo roban o se restablece su estado de fábrica."</string>
+    <string name="lock_screen_intro_skip_dialog_text_frp" product="default" msgid="8367731653387033354">"No se activarán las funciones de protección del dispositivo. No podrás evitar que otras personas utilicen este teléfono si lo pierdes, te lo roban o restablecen su estado de fábrica."</string>
+    <string name="lock_screen_intro_skip_dialog_text" product="tablet" msgid="1957425614489669582">"No se activarán las funciones de protección del dispositivo. No podrás evitar que otros usuarios utilicen esta tablet si la pierdes o te la roban."</string>
     <string name="lock_screen_intro_skip_dialog_text" product="device" msgid="7427748422888413977">"No se activarán las funciones de protección del dispositivo. No podrás evitar que otros usuarios lo utilicen si lo pierdes o te lo roban."</string>
-    <string name="lock_screen_intro_skip_dialog_text" product="default" msgid="8970036878014302990">"No se activarán las funciones de protección del dispositivo. No podrás evitar que otros usuarios utilicen este teléfono si lo pierdes o te lo roban."</string>
+    <string name="lock_screen_intro_skip_dialog_text" product="default" msgid="8970036878014302990">"No se activarán las funciones de protección del dispositivo. No podrás evitar que otras personas utilicen este teléfono si lo pierdes o te lo roban."</string>
     <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="2006739081527422127">"El sensor de huellas digitales está en el botón de encendido. Es el botón plano situado junto al botón de volumen con relieve en el lateral de la tablet."</string>
     <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="1209233633252372907">"El sensor de huellas digitales está en el botón de encendido. Es el botón plano situado junto al botón de volumen con relieve en el lateral del dispositivo."</string>
     <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="6862493139500275821">"El sensor de huellas digitales está en el botón de encendido. Es el botón plano situado junto al botón de volumen con relieve en el lateral del teléfono."</string>
@@ -152,8 +152,8 @@
     <string name="security_settings_fingerprint_enroll_finish_v2_add_fingerprint_message" product="tablet" msgid="7814892482046294464">"Ahora puedes usar tu huella digital para desbloquear tu tablet o verificar que eres tú (por ejemplo, al iniciar sesión en aplicaciones o para aprobar compras). \n\nAñade otra huella digital para que sea más fácil desbloquear la tablet cuando la sujetas de diferentes formas."</string>
     <string name="security_settings_fingerprint_enroll_finish_v2_add_fingerprint_message" product="device" msgid="8418220207105495988">"Ahora puedes usar tu huella digital para desbloquear tu dispositivo o verificar que eres tú (por ejemplo, al iniciar sesión en aplicaciones o para aprobar compras).\n\nAñade otra huella digital para que sea más fácil desbloquear el dispositivo cuando lo sujetas de diferentes formas."</string>
     <string name="security_settings_fingerprint_enroll_finish_v2_add_fingerprint_message" product="default" msgid="3545300825124248359">"Ahora puedes usar tu huella digital para desbloquear tu teléfono o verificar que eres tú (por ejemplo, al iniciar sesión en aplicaciones o para aprobar compras).\n\nAñade otra huella digital para que sea más fácil desbloquear el teléfono cuando lo sujetas de diferentes formas."</string>
-    <string name="lock_screen_pin_skip_message" product="tablet" msgid="2125894016330764666">"El PIN protege tu tablet si lo pierdes o te lo roban"</string>
-    <string name="lock_screen_pattern_skip_message" product="tablet" msgid="7022124791463099454">"El patrón protege tu tablet si lo pierdes o te lo roban"</string>
+    <string name="lock_screen_pin_skip_message" product="tablet" msgid="2125894016330764666">"El PIN protege tu tablet si la pierdes o te la roban"</string>
+    <string name="lock_screen_pattern_skip_message" product="tablet" msgid="7022124791463099454">"El patrón protege tu tablet si la pierdes o te la roban"</string>
     <string name="lock_screen_password_skip_message" product="tablet" msgid="7117050321575989041">"La contraseña protege tu tablet si la pierdes o te la roban"</string>
     <string name="lock_screen_pin_skip_message" product="device" msgid="6028521833666812314">"El PIN protege tu dispositivo si lo pierdes o te lo roban"</string>
     <string name="lock_screen_pattern_skip_message" product="device" msgid="8959252397804630340">"El patrón protege tu dispositivo si lo pierdes o te lo roban"</string>
@@ -161,7 +161,7 @@
     <string name="lock_screen_pin_skip_message" product="default" msgid="1488786078805713892">"El PIN protege tu teléfono si lo pierdes o te lo roban"</string>
     <string name="lock_screen_pattern_skip_message" product="default" msgid="827145253475892869">"El patrón protege tu teléfono si lo pierdes o te lo roban"</string>
     <string name="lock_screen_password_skip_message" product="default" msgid="8112387870039469467">"La contraseña protege tu teléfono si lo pierdes o te lo roban"</string>
-    <string name="lock_screen_pin_skip_fingerprint_message" product="tablet" msgid="2645508906847445498">"Se necesita un PIN para configurar Desbloqueo con huella digital.\n\nEl PIN protege tu tablet si lo pierdes o te lo roban."</string>
+    <string name="lock_screen_pin_skip_fingerprint_message" product="tablet" msgid="2645508906847445498">"Se necesita un PIN para configurar Desbloqueo con huella digital.\n\nEl PIN protege tu tablet si la pierdes o te la roban."</string>
     <string name="lock_screen_pattern_skip_fingerprint_message" product="tablet" msgid="2792582623472935881">"Se necesita un patrón para configurar Desbloqueo con huella digital.\n\nEl patrón protege tu tablet si lo pierdes o te lo roban."</string>
     <string name="lock_screen_password_skip_fingerprint_message" product="tablet" msgid="1541137095940752409">"Se necesita una contraseña para configurar Desbloqueo con huella digital.\n\nLa contraseña protege tu tablet si la pierdes o te la roban."</string>
     <string name="lock_screen_pin_skip_fingerprint_message" product="device" msgid="7716542198483220546">"Se necesita un PIN para configurar Desbloqueo con huella digital.\n\nEl PIN protege tu dispositivo si lo pierdes o te lo roban."</string>
@@ -170,7 +170,7 @@
     <string name="lock_screen_pin_skip_fingerprint_message" product="default" msgid="3396830571282413409">"Se necesita un PIN para configurar Desbloqueo con huella digital.\n\nEl PIN protege tu teléfono si lo pierdes o te lo roban."</string>
     <string name="lock_screen_pattern_skip_fingerprint_message" product="default" msgid="2952431330433118050">"Se necesita un patrón para configurar Desbloqueo con huella digital.\n\nEl patrón protege tu teléfono si lo pierdes o te lo roban."</string>
     <string name="lock_screen_password_skip_fingerprint_message" product="default" msgid="8499384469890032816">"Se necesita una contraseña para configurar Desbloqueo con huella digital.\n\nLa contraseña protege tu teléfono si lo pierdes o te lo roban."</string>
-    <string name="lock_screen_pin_skip_face_message" product="tablet" msgid="657464034320090412">"Se necesita un PIN para configurar Desbloqueo facial.\n\nEl PIN protege tu tablet si lo pierdes o te lo roban."</string>
+    <string name="lock_screen_pin_skip_face_message" product="tablet" msgid="657464034320090412">"Se necesita un PIN para configurar Desbloqueo facial.\n\nEl PIN protege tu tablet si la pierdes o te la roban."</string>
     <string name="lock_screen_pattern_skip_face_message" product="tablet" msgid="1057921621902514520">"Se necesita un patrón para configurar Desbloqueo facial.\n\nEl patrón protege tu tablet si lo pierdes o te lo roban."</string>
     <string name="lock_screen_password_skip_face_message" product="tablet" msgid="7178731554533608255">"Se necesita una contraseña para configurar Desbloqueo facial.\n\nLa contraseña protege tu tablet si la pierdes o te la roban."</string>
     <string name="lock_screen_pin_skip_face_message" product="device" msgid="1932467886606343431">"Se necesita un PIN para configurar Desbloqueo facial.\n\nEl PIN protege tu dispositivo si lo pierdes o te lo roban."</string>
@@ -205,7 +205,7 @@
     <string name="biometrics_unlock_title" product="device" msgid="3342994085226864170">"Puedes desbloquear el dispositivo con tu cara o con tu huella digital. Por motivos de seguridad, para utilizar esta opción necesitas un método de bloqueo de pantalla alternativo."</string>
     <string name="encrypt_title" product="tablet" msgid="8915795247786124547">"Cifrar tablet"</string>
     <string name="encrypt_title" product="default" msgid="511146128799853404">"Cifrar teléfono"</string>
-    <string name="suggested_lock_settings_summary" product="tablet" msgid="8821254377043173267">"Añade bloqueo de pantalla para proteger el tablet"</string>
+    <string name="suggested_lock_settings_summary" product="tablet" msgid="8821254377043173267">"Añade un bloqueo de pantalla para proteger la tablet"</string>
     <string name="suggested_lock_settings_summary" product="device" msgid="4863929838844014122">"Añade bloqueo de pantalla para proteger el dispositivo"</string>
     <string name="suggested_lock_settings_summary" product="default" msgid="8050809409337082738">"Añade bloqueo de pantalla para proteger el teléfono"</string>
     <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="8565330205932332157"></string>
@@ -227,9 +227,9 @@
     <string name="wifi_add_app_networks_summary" product="tablet" msgid="6433255556506891439">"<xliff:g id="APPNAME">%1$s</xliff:g> quiere guardar estas redes en tu tablet"</string>
     <string name="auto_rotate_screen_summary" product="default" msgid="5562937346878935483">"Ajusta automáticamente la orientación de la pantalla cuando cambias tu teléfono de vertical a horizontal"</string>
     <string name="auto_rotate_screen_summary" product="tablet" msgid="3163709742477804994">"Ajusta automáticamente la orientación de la pantalla cuando cambias tu tablet de vertical a horizontal"</string>
-    <string name="sim_lock_on" product="tablet" msgid="227481196121403470">"Solicitar PIN para utilizar el tablet"</string>
+    <string name="sim_lock_on" product="tablet" msgid="227481196121403470">"Solicitar PIN para usar la tablet"</string>
     <string name="sim_lock_on" product="default" msgid="6896034657274595838">"Pide el PIN para usar el teléfono"</string>
-    <string name="sim_lock_off" product="tablet" msgid="4619320846576958981">"Solicitar PIN para utilizar el tablet"</string>
+    <string name="sim_lock_off" product="tablet" msgid="4619320846576958981">"Solicitar PIN para utilizar la tablet"</string>
     <string name="sim_lock_off" product="default" msgid="2064502270875375541">"Pide el PIN para usar el teléfono"</string>
     <string name="status_number" product="tablet" msgid="6746773328312218158">"MDN"</string>
     <string name="status_number" product="default" msgid="2333455505912871374">"Número de teléfono"</string>
@@ -245,7 +245,7 @@
     <string name="storage_wizard_init_v2_internal_action" product="default" msgid="560506072518373839">"Formatear"</string>
     <string name="storage_wizard_migrate_v2_body" product="tablet" msgid="7539293889421540797">"Puedes mover archivos, contenido multimedia y determinadas aplicaciones a tu <xliff:g id="NAME">^1</xliff:g>. \n\nAl hacerlo, se liberarán <xliff:g id="SIZE">^2</xliff:g> del almacenamiento de tu teléfono. El proceso tardará <xliff:g id="DURATION">^3</xliff:g>, aproximadamente."</string>
     <string name="storage_wizard_migrate_v2_body" product="default" msgid="3807501187945770401">"Puedes mover archivos, contenido multimedia y determinadas aplicaciones a tu <xliff:g id="NAME">^1</xliff:g>. \n\nAl hacerlo, se liberarán <xliff:g id="SIZE">^2</xliff:g> del almacenamiento de tu teléfono. El proceso tardará <xliff:g id="DURATION">^3</xliff:g>, aproximadamente."</string>
-    <string name="storage_wizard_migrate_v2_checklist_battery" product="tablet" msgid="5326017162943304749">"El tablet tiene que estar cargado"</string>
+    <string name="storage_wizard_migrate_v2_checklist_battery" product="tablet" msgid="5326017162943304749">"La tablet tiene que estar cargada"</string>
     <string name="storage_wizard_migrate_v2_checklist_battery" product="default" msgid="8041162611685970218">"El teléfono tiene que estar cargado"</string>
     <string name="main_clear_desc" product="tablet" msgid="5778614597513856716">"Se borrarán todos los datos del "<b>"almacenamiento interno"</b>" de tu tablet, como:\n\n"<li>"Tu cuenta de Google"</li>\n<li>"Los ajustes y los datos de aplicaciones y del sistema"</li>\n<li>"Las aplicaciones descargadas"</li></string>
     <string name="main_clear_desc" product="default" msgid="1888412491866186706">"Se borrarán todos los datos del "<b>"almacenamiento interno"</b>" de tu teléfono, como:\n\n"<li>"Tu cuenta de Google"</li>\n<li>"Los ajustes y los datos de aplicaciones y del sistema"</li>\n<li>"Las aplicaciones descargadas"</li></string>
@@ -274,7 +274,7 @@
     <string name="install_all_warning" product="device" msgid="6293002353591632851">"Tu dispositivo y tus datos personales son más vulnerables a los ataques de aplicaciones desconocidas. Al instalar aplicaciones de esta fuente, aceptas ser responsable de cualquier daño que sufra tu dispositivo o de la pérdida de datos que se pueda derivar de su uso."</string>
     <string name="runningservicedetails_stop_dlg_text" product="tablet" msgid="6321057186549848774">"Si detienes este servicio, es posible que algunas funciones del tablet dejen de funcionar correctamente hasta que reinicies el dispositivo."</string>
     <string name="runningservicedetails_stop_dlg_text" product="default" msgid="6869998550403667737">"Si detienes este servicio, es posible que algunas funciones del teléfono dejen de funcionar correctamente hasta que reinicies el dispositivo."</string>
-    <string name="testing_phone_info" product="tablet" msgid="8267746802132630741">"Información del tablet"</string>
+    <string name="testing_phone_info" product="tablet" msgid="8267746802132630741">"Información de la tablet"</string>
     <string name="testing_phone_info" product="default" msgid="7507506297352160191">"Información sobre el teléfono"</string>
     <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="1773409172676594981">"Tus preferencias de tamaño de visualización y del texto se restablecerán a las de la configuración original del teléfono"</string>
     <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="2547948891207211388">"Tus preferencias de tamaño de visualización y del texto se restablecerán a las de la configuración original de la tablet"</string>
@@ -306,20 +306,20 @@
     <string name="really_remove_account_message" product="device" msgid="1482438683708606820">"Si quitas esta cuenta, se eliminarán todos sus mensajes, contactos y otros datos del dispositivo."</string>
     <string name="data_usage_auto_sync_on_dialog" product="tablet" msgid="7137933271689383781">"Los cambios que hagas en tus cuentas en la Web se copiarán automáticamente en la tablet.\n\nEs posible que algunas cuentas copien los cambios que hagas en la tablet también en la Web. Las cuentas de Google funcionan así."</string>
     <string name="data_usage_auto_sync_on_dialog" product="default" msgid="7207326473052484970">"Los cambios que hagas en tus cuentas en la Web se copiarán automáticamente en el teléfono.\n\nEs posible que algunas cuentas copien los cambios que hagas en el teléfono también en la Web. Las cuentas de Google funcionan así."</string>
-    <string name="data_usage_limit_dialog_mobile" product="tablet" msgid="5609616352941038118">"El tablet desactivará los datos móviles cuando se alcance el límite que configures.\n\nComo el uso de datos lo calcula el tablet y es posible que tu operador lo mida de forma diferente, se recomienda establecer un límite conservador."</string>
+    <string name="data_usage_limit_dialog_mobile" product="tablet" msgid="5609616352941038118">"Tu tablet desactivará los datos móviles cuando se alcance el límite que configures.\n\nComo el uso de datos lo calcula la tablet y es posible que tu operador lo mida de forma diferente, se recomienda establecer un límite conservador."</string>
     <string name="data_usage_limit_dialog_mobile" product="default" msgid="4552449053646826676">"Tu teléfono desactivará los datos móviles cuando se alcance el límite que configures.\n\nComo el uso de datos lo calcula el teléfono y es posible que tu operador lo mida de forma diferente, se recomienda establecer un límite conservador."</string>
     <string name="user_settings_footer_text" product="device" msgid="8543171604218174424">"Comparte tu dispositivo añadiendo usuarios. Cada uno tiene su propio espacio personal en el dispositivo con opciones de configuración, aplicaciones, cuentas y pantallas de inicio personalizadas, entre otras cosas."</string>
     <string name="user_settings_footer_text" product="tablet" msgid="4749331578207116797">"Comparte tu tablet añadiendo usuarios. Cada uno tiene su propio espacio personal en la tablet con opciones de configuración, aplicaciones, cuentas y pantallas de inicio personalizadas, entre otras cosas."</string>
     <string name="user_settings_footer_text" product="default" msgid="5440172971747221370">"Comparte tu teléfono añadiendo usuarios. Cada uno tiene su propio espacio personal en el teléfono para personalizar las pantallas de inicio, las cuentas, las aplicaciones, los ajustes y más."</string>
-    <string name="user_cannot_manage_message" product="tablet" msgid="5566619500245432179">"Solo el propietario del tablet puede administrar los usuarios."</string>
-    <string name="user_cannot_manage_message" product="default" msgid="8596259161937605316">"Solo el propietario del teléfono puede administrar los usuarios."</string>
+    <string name="user_cannot_manage_message" product="tablet" msgid="5566619500245432179">"Solo el propietario de la tablet puede gestionar usuarios."</string>
+    <string name="user_cannot_manage_message" product="default" msgid="8596259161937605316">"Solo el propietario del teléfono puede gestionar usuarios."</string>
     <string name="user_confirm_remove_self_message" product="tablet" msgid="6880861846664267876">"Perderás tu espacio y tus datos en esta tablet. Esta acción no se puede deshacer."</string>
     <string name="user_confirm_remove_self_message" product="default" msgid="3209762447055039706">"Perderás tu espacio y tus datos en este teléfono. Esta acción no se puede deshacer."</string>
     <string name="support_summary" product="default" msgid="2044721479256103419">"Artículos de ayuda, asistencia por teléfono y chat"</string>
     <string name="support_summary" product="tablet" msgid="2588832599234347108">"Artículos de ayuda, tablet y chat"</string>
     <string name="support_summary" product="device" msgid="6821511162132497205">"Artículos de ayuda, dispositivo y chat"</string>
     <string name="ambient_display_title" product="default" msgid="8027137727044125809">"Doble toque para consultar el teléfono"</string>
-    <string name="ambient_display_title" product="tablet" msgid="2347746118188465334">"Doble toque para consultar el tablet"</string>
+    <string name="ambient_display_title" product="tablet" msgid="2347746118188465334">"Doble toque para consultar la tablet"</string>
     <string name="ambient_display_title" product="device" msgid="6306105102175823199">"Doble toque para consultar el dispositivo"</string>
     <string name="ambient_display_pickup_title" product="default" msgid="6753194901596847876">"Levantar teléfono para consultarlo"</string>
     <string name="ambient_display_pickup_title" product="tablet" msgid="1166999144900082897">"Levantar para consultar la tablet"</string>
diff --git a/res-product/values-fr-rCA-feminine/strings.xml b/res-product/values-fr-rCA-feminine/strings.xml
new file mode 100644
index 0000000..3b065d8
--- /dev/null
+++ b/res-product/values-fr-rCA-feminine/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2022 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.
+ -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_clear_accounts" product="default" msgid="3604029744509330786">\n\n"Vous êtes actuellement connectée aux comptes suivants :\n"</string>
+</resources>
diff --git a/res-product/values-fr-rCA-masculine/strings.xml b/res-product/values-fr-rCA-masculine/strings.xml
new file mode 100644
index 0000000..ed2e2ca
--- /dev/null
+++ b/res-product/values-fr-rCA-masculine/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2022 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.
+ -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_clear_accounts" product="default" msgid="3604029744509330786">\n\n"Vous êtes actuellement connecté aux comptes suivants :\n"</string>
+</resources>
diff --git a/res-product/values-fr-rCA-neuter/strings.xml b/res-product/values-fr-rCA-neuter/strings.xml
new file mode 100644
index 0000000..6b27fad
--- /dev/null
+++ b/res-product/values-fr-rCA-neuter/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2022 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.
+ -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_clear_accounts" product="default" msgid="3604029744509330786">\n\n"Votre connexion aux comptes suivants est actuellement active :\n"</string>
+</resources>
diff --git a/res-product/values-fr-rCA/strings.xml b/res-product/values-fr-rCA/strings.xml
index 8ae77c6..680c2f7 100644
--- a/res-product/values-fr-rCA/strings.xml
+++ b/res-product/values-fr-rCA/strings.xml
@@ -56,13 +56,13 @@
     <string name="security_settings_face_enroll_introduction_message_class3" product="tablet" msgid="8736497842795690098">"Utilisez votre visage pour déverrouiller votre tablette ou pour confirmer votre identité dans les applis, par exemple lorsque vous vous connectez ou que vous approuvez un achat"</string>
     <string name="security_settings_face_enroll_introduction_message_class3" product="device" msgid="2558057312718921078">"Utilisez votre visage pour déverrouiller votre appareil ou pour confirmer votre identité dans les applis, par exemple lorsque vous vous connectez ou que vous approuvez un achat"</string>
     <string name="security_settings_face_enroll_introduction_consent_message_0" product="default" msgid="9086377203303858619">"Autoriser votre enfant à utiliser son visage pour déverrouiller son téléphone"</string>
-    <string name="security_settings_face_enroll_introduction_consent_message_0" product="tablet" msgid="4560949471246282574">"Autoriser votre enfant à utiliser son visage pour déverrouiller sa tablette"</string>
+    <string name="security_settings_face_enroll_introduction_consent_message_0" product="tablet" msgid="4560949471246282574">"Autorisez votre enfant à utiliser son visage pour déverrouiller sa tablette"</string>
     <string name="security_settings_face_enroll_introduction_consent_message_0" product="device" msgid="1156063265854416046">"Autoriser votre enfant à utiliser son visage pour déverrouiller son appareil"</string>
-    <string name="security_settings_face_enroll_introduction_consent_message_0_class3" product="default" msgid="5082581184108528408">"Autorisez votre enfant à utiliser son visage pour déverrouiller son téléphone ou vérifier qu\'il s\'agit bien de lui. Cette situation se produit lorsqu\'il se connecte à des applis, approuve un achat et plus."</string>
+    <string name="security_settings_face_enroll_introduction_consent_message_0_class3" product="default" msgid="5082581184108528408">"Autorisez votre enfant à utiliser son visage pour déverrouiller son téléphone ou confirmer qu\'il s\'agit bien de votre enfant. Cette situation se produit lorsque votre enfant se connecte à des applis, approuve un achat et plus."</string>
     <string name="security_settings_face_enroll_introduction_consent_message_0_class3" product="tablet" msgid="5932555218164668532">"Autorisez votre enfant à utiliser son visage pour déverrouiller sa tablette ou vérifier qu\'il s\'agit bien de lui. Cette situation se produit lorsqu\'il se connecte à des applis, approuve un achat et plus."</string>
-    <string name="security_settings_face_enroll_introduction_consent_message_0_class3" product="device" msgid="8943878265098867810">"Autorisez votre enfant à utiliser son visage pour déverrouiller son appareil ou vérifier qu\'il s\'agit bien de lui. Cette situation se produit lorsqu\'il se connecte à des applis, approuve un achat et plus."</string>
-    <string name="security_settings_face_enroll_introduction_consent_message" product="default" msgid="3698558920963989416">"L\'utilisation du visage de votre enfant pour déverrouiller son téléphone peut être moins sûre qu\'un schéma ou un NIP robustes."</string>
-    <string name="security_settings_face_enroll_introduction_consent_message" product="tablet" msgid="2689983368730833505">"L\'utilisation du visage de votre enfant pour déverrouiller sa tablette peut être moins sûre qu\'un schéma ou un NIP robustes."</string>
+    <string name="security_settings_face_enroll_introduction_consent_message_0_class3" product="device" msgid="8943878265098867810">"Autorisez votre enfant à utiliser son visage pour déverrouiller son appareil ou confirmer qu\'il s\'agit bien de lui. Cette situation se produit lorsqu\'il se connecte à des applications, approuve un achat et plus."</string>
+    <string name="security_settings_face_enroll_introduction_consent_message" product="default" msgid="3698558920963989416">"L\'utilisation du visage de votre enfant pour déverrouiller son téléphone peut être moins sûre qu\'un schéma ou un NIP robuste."</string>
+    <string name="security_settings_face_enroll_introduction_consent_message" product="tablet" msgid="2689983368730833505">"L\'utilisation du visage de votre enfant pour déverrouiller sa tablette peut être moins sûre qu\'un schéma ou un NIP robuste."</string>
     <string name="security_settings_face_enroll_introduction_consent_message" product="device" msgid="5768077532130409820">"L\'utilisation du visage de votre enfant pour déverrouiller son appareil peut être moins sûre qu\'un schéma ou un NIP robustes."</string>
     <string name="security_settings_face_enroll_introduction_info_looking" product="default" msgid="6532489273492650716"></string>
     <string name="security_settings_face_enroll_introduction_info_looking" product="tablet" msgid="6532489273492650716"></string>
@@ -96,16 +96,16 @@
     <string name="security_settings_face_enroll_introduction_control_consent_message" product="device" msgid="6983939010814873996"></string>
     <string name="security_settings_face_settings_footer" product="default" msgid="3036403896485044957">"Utilisez votre visage pour déverrouiller votre téléphone ou pour vous authentifier dans les applis, par exemple lorsque vous vous connectez ou approuvez un achat.\n\nGardez à l\'esprit :\nUn seul visage peut être configuré à la fois. Pour ajouter un autre visage, supprimez le visage actuel.\n\nVous pourriez déverrouiller le téléphone en le regardant, même si vous ne cherchiez pas à le faire.\n\nUne autre personne pourrait déverrouiller votre téléphone en le tenant devant votre visage.\n\nVotre téléphone pourrait être déverrouillé par une personne qui vous ressemble beaucoup, comme un jumeau identique."</string>
     <string name="security_settings_face_settings_footer" product="tablet" msgid="3467711032275909082">"Utilisez votre visage pour déverrouiller votre tablette ou pour vous authentifier dans les applis, par exemple lorsque vous vous connectez ou approuvez un achat.\n\nGardez à l\'esprit :\nUn seul visage peut être configuré à la fois. Pour ajouter un autre visage, supprimez le visage actuel.\n\nVous pourriez déverrouiller la tablette en la regardant, même si vous ne cherchiez pas à le faire.\n\nUne autre personne pourrait déverrouiller votre tablette en la tenant devant votre visage.\n\nVotre tablette pourrait être déverrouillée par une personne qui vous ressemble beaucoup, comme un jumeau identique."</string>
-    <string name="security_settings_face_settings_footer" product="device" msgid="6237815625247917310">"Utilisez votre visage pour déverrouiller votre appareil ou pour vous authentifier dans les applis, par exemple lorsque vous vous connectez ou approuvez un achat.\n\nGardez à l\'esprit :\nUn seul visage peut être configuré à la fois. Pour ajouter un autre visage, supprimez le visage actuel.\n\nVous pourriez déverrouiller l\'appareil en le regardant, même si vous ne cherchiez pas à le faire.\n\nUne autre personne pourrait déverrouiller votre appareil en le tenant devant votre visage.\n\nVotre appareil pourrait être déverrouillé par une personne qui vous ressemble beaucoup, comme un jumeau identique."</string>
-    <string name="security_settings_face_settings_footer_attention_not_supported" product="default" msgid="8266896471278294942">"Utilisez votre visage pour déverrouiller votre téléphone ou pour vous authentifier dans les applis, par exemple lorsque vous vous connectez ou approuvez un achat.\n\nGardez à l\'esprit :\nUn seul visage peut être configuré à la fois. Pour ajouter un autre visage, supprimez le visage actuel.\n\nVous pourriez déverrouiller le téléphone en le regardant, même si vous ne cherchiez pas à le faire.\n\nUne autre personne pourrait déverrouiller votre téléphone en le tenant devant votre visage, même si vos yeux sont fermés.\n\nVotre téléphone pourrait être déverrouillé par une personne qui vous ressemble beaucoup, comme un jumeau identique."</string>
-    <string name="security_settings_face_settings_footer_attention_not_supported" product="tablet" msgid="6932278790700490818">"Utilisez votre visage pour déverrouiller votre tablette ou pour vous authentifier dans les applis, par exemple lorsque vous vous connectez ou approuvez un achat.\n\nGardez à l\'esprit :\nUn seul visage peut être configuré à la fois. Pour ajouter un autre visage, supprimez le visage actuel.\n\nVous pourriez déverrouiller la tablette en la regardant, même si vous ne cherchiez pas à le faire.\n\nUne autre personne pourrait déverrouiller votre tablette en la tenant devant votre visage, même si vos yeux sont fermés.\n\nVotre tablette pourrait être déverrouillée par une personne qui vous ressemble beaucoup, comme un jumeau identique."</string>
+    <string name="security_settings_face_settings_footer" product="device" msgid="6237815625247917310">"Utilisez votre visage pour déverrouiller votre appareil ou pour vous authentifier dans les applis, par exemple lorsque vous vous connectez ou approuvez un achat.\n\nGardez à l\'esprit :\nUn seul visage peut être configuré à la fois. Pour ajouter un autre visage, supprimez le visage actuel.\n\nVous pourriez déverrouiller l\'appareil en le regardant, même si vous ne cherchiez pas à le faire.\n\nUne autre personne pourrait déverrouiller votre appareil en le tenant devant votre visage.\n\nVotre appareil pourrait être déverrouillé par une personne qui vous ressemble beaucoup, comme votre jumeau ou jumelle identique."</string>
+    <string name="security_settings_face_settings_footer_attention_not_supported" product="default" msgid="8266896471278294942">"Utilisez votre visage pour déverrouiller votre téléphone ou pour vous authentifier dans les applications, par exemple lorsque vous vous connectez ou approuvez un achat.\n\nGardez à l\'esprit :\nUn seul visage peut être configuré à la fois. Pour ajouter un autre visage, supprimez le visage actuel.\n\nVous pourriez déverrouiller le téléphone en le regardant, même si vous ne cherchiez pas à le faire.\n\nUne autre personne pourrait déverrouiller votre téléphone en le tenant devant votre visage, même si vos yeux sont fermés.\n\nVotre téléphone pourrait être déverrouillé par une personne qui vous ressemble beaucoup, comme un jumeau identique."</string>
+    <string name="security_settings_face_settings_footer_attention_not_supported" product="tablet" msgid="6932278790700490818">"Utilisez votre visage pour déverrouiller votre tablette ou pour vous authentifier dans les applications, par exemple lorsque vous vous connectez ou approuvez un achat.\n\nGardez à l\'esprit :\nUn seul visage peut être configuré à la fois. Pour ajouter un autre visage, supprimez le visage actuel.\n\nVous pourriez déverrouiller la tablette en la regardant, même si vous ne cherchiez pas à le faire.\n\nUne autre personne pourrait déverrouiller votre tablette en la tenant devant votre visage, même si vos yeux sont fermés.\n\nVotre tablette pourrait être déverrouillée par une personne qui vous ressemble beaucoup, comme un jumeau identique."</string>
     <string name="security_settings_face_settings_footer_attention_not_supported" product="device" msgid="2559602951942339212">"Utilisez votre visage pour déverrouiller votre appareil ou pour vous authentifier dans les applis, par exemple lorsque vous vous connectez ou approuvez un achat.\n\nGardez à l\'esprit :\nUn seul visage peut être configuré à la fois. Pour ajouter un autre visage, supprimez le visage actuel.\n\nVous pourriez déverrouiller l\'appareil en le regardant, même si vous ne cherchiez pas à le faire.\n\nUne autre personne pourrait déverrouiller votre appareil en le tenant devant votre visage, même si vos yeux sont fermés.\n\nVotre appareil pourrait être déverrouillé par une personne qui vous ressemble beaucoup, comme un jumeau identique."</string>
     <string name="security_settings_face_settings_footer_class3" product="default" msgid="7050076350282827484">"Utilisez votre visage pour déverrouiller votre téléphone ou vérifier qu\'il s\'agit bien de vous, par exemple pour vous connecter à des applis ou approuver un achat.\n\nGardez à l\'esprit :\nUn seul visage peut être configuré à la fois. Pour ajouter un autre visage, supprimez le visage actuel.\n\nVous pourriez déverrouiller le téléphone en le regardant, même si vous ne cherchiez pas à le faire.\n\nUne autre personne pourrait déverrouiller votre téléphone en le tenant devant votre visage.\n\nVotre téléphone pourrait être déverrouillé par une personne qui vous ressemble beaucoup, comme un jumeau identique."</string>
-    <string name="security_settings_face_settings_footer_class3" product="tablet" msgid="8013245173915280810">"Utilisez votre visage pour déverrouiller votre tablette ou vérifier qu\'il s\'agit bien de vous, par exemple pour vous connecter à des applis ou approuver un achat.\n\nGardez à l\'esprit :\nUn seul visage peut être configuré à la fois. Pour ajouter un autre visage, supprimez le visage actuel.\n\nVous pourriez déverrouiller la tablette en la regardant, même si vous ne cherchiez pas à le faire.\n\nUne autre personne pourrait déverrouiller votre tablette en la tenant devant votre visage.\n\nVotre tablette pourrait être déverrouillée par une personne qui vous ressemble beaucoup, comme un jumeau identique."</string>
-    <string name="security_settings_face_settings_footer_class3" product="device" msgid="4411845832787210264">"Utilisez votre visage pour déverrouiller votre appareil ou vérifier qu\'il s\'agit bien de vous, par exemple pour vous connecter à des applis ou approuver un achat.\n\nGardez à l\'esprit :\nUn seul visage peut être configuré à la fois. Pour ajouter un autre visage, supprimez le visage actuel.\n\nVous pourriez déverrouiller l\'appareil en le regardant, même si vous ne cherchiez pas à le faire.\n\nUne autre personne pourrait déverrouiller votre appareil en le tenant devant votre visage.\n\nVotre appareil pourrait être déverrouillé par une personne qui vous ressemble beaucoup, comme un jumeau identique."</string>
-    <string name="security_settings_face_settings_footer_class3_attention_not_supported" product="default" msgid="5512898803063743303">"Utilisez votre visage pour déverrouiller votre téléphone ou vérifier qu\'il s\'agit bien de vous, par exemple pour vous connecter à des applis ou approuver un achat.\n\nGardez à l\'esprit :\nUn seul visage peut être configuré à la fois. Pour ajouter un autre visage, supprimez le visage actuel.\n\nVous pourriez déverrouiller le téléphone en le regardant, même si vous ne cherchiez pas à le faire.\n\nUne autre personne pourrait déverrouiller votre téléphone en le tenant devant votre visage, même si vos yeux sont fermés.\n\nVotre téléphone pourrait être déverrouillé par une personne qui vous ressemble beaucoup, comme un jumeau identique."</string>
-    <string name="security_settings_face_settings_footer_class3_attention_not_supported" product="tablet" msgid="6790505667764631343">"Utilisez votre visage pour déverrouiller votre tablette ou vérifier qu\'il s\'agit bien de vous, par exemple pour vous connecter à des applis ou approuver un achat.\n\nGardez à l\'esprit :\nUn seul visage peut être configuré à la fois. Pour ajouter un autre visage, supprimez le visage actuel.\n\nVous pourriez déverrouiller la tablette en la regardant, même si vous ne cherchiez pas à le faire.\n\nUne autre personne pourrait déverrouiller votre tablette en la tenant devant votre visage, même si vos yeux sont fermés.\n\nVotre tablette pourrait être déverrouillée par une personne qui vous ressemble beaucoup, comme un jumeau identique."</string>
-    <string name="security_settings_face_settings_footer_class3_attention_not_supported" product="device" msgid="7858917821957779752">"Utilisez votre visage pour déverrouiller votre appareil ou vérifier qu\'il s\'agit bien de vous, par exemple pour vous connecter à des applis ou approuver un achat.\n\nGardez à l\'esprit :\nUn seul visage peut être configuré à la fois. Pour ajouter un autre visage, supprimez le visage actuel.\n\nVous pourriez déverrouiller l\'appareil en le regardant, même si vous ne cherchiez pas à le faire.\n\nUne autre personne pourrait déverrouiller votre appareil en le tenant devant votre visage, même si vos yeux sont fermés.\n\nVotre appareil pourrait être déverrouillé par une personne qui vous ressemble beaucoup, comme un jumeau identique."</string>
+    <string name="security_settings_face_settings_footer_class3" product="tablet" msgid="8013245173915280810">"Utilisez votre visage pour déverrouiller votre tablette ou vérifier qu\'il s\'agit bien de vous, par exemple pour vous connecter à des applications ou approuver un achat.\n\nGardez à l\'esprit :\nUn seul visage peut être configuré à la fois. Pour ajouter un autre visage, supprimez le visage actuel.\n\nVous pourriez déverrouiller la tablette en la regardant, même si vous ne cherchiez pas à le faire.\n\nUne autre personne pourrait déverrouiller votre tablette en la tenant devant votre visage.\n\nVotre tablette pourrait être déverrouillée par une personne qui vous ressemble beaucoup, comme un jumeau identique."</string>
+    <string name="security_settings_face_settings_footer_class3" product="device" msgid="4411845832787210264">"Utilisez votre visage pour déverrouiller votre appareil ou confirmer qu\'il s\'agit bien de vous, par exemple pour vous connecter à des applis ou approuver un achat.\n\nGardez à l\'esprit :\nUn seul visage peut être configuré à la fois. Pour ajouter un autre visage, supprimez le visage actuel.\n\nVous pourriez déverrouiller l\'appareil en le regardant, même si vous ne cherchiez pas à le faire.\n\nUne autre personne pourrait déverrouiller votre appareil en le tenant devant votre visage.\n\nVotre appareil pourrait être déverrouillé par une personne qui vous ressemble beaucoup, comme votre jumeau ou jumelle identique."</string>
+    <string name="security_settings_face_settings_footer_class3_attention_not_supported" product="default" msgid="5512898803063743303">"Utilisez votre visage pour déverrouiller votre téléphone ou confirmer qu\'il s\'agit bien de vous, par exemple pour vous connecter à des applis ou approuver un achat.\n\nGardez à l\'esprit :\nUn seul visage peut être configuré à la fois. Pour ajouter un autre visage, supprimez le visage actuel.\n\nVous pourriez déverrouiller le téléphone en le regardant, même si vous ne cherchiez pas à le faire.\n\nUne autre personne pourrait déverrouiller votre téléphone en le tenant devant votre visage, même si vos yeux sont fermés.\n\nVotre téléphone pourrait être déverrouillé par une personne qui vous ressemble beaucoup, comme votre jumeau ou jumelle identique."</string>
+    <string name="security_settings_face_settings_footer_class3_attention_not_supported" product="tablet" msgid="6790505667764631343">"Utilisez votre visage pour déverrouiller votre tablette ou vérifier qu\'il s\'agit bien de vous, par exemple pour vous connecter à des applications ou approuver un achat.\n\nGardez à l\'esprit :\nUn seul visage peut être configuré à la fois. Pour ajouter un autre visage, supprimez le visage actuel.\n\nVous pourriez déverrouiller la tablette en la regardant, même si vous ne cherchiez pas à le faire.\n\nUne autre personne pourrait déverrouiller votre tablette en la tenant devant votre visage, même si vos yeux sont fermés.\n\nVotre tablette pourrait être déverrouillée par une personne qui vous ressemble beaucoup, comme un jumeau identique."</string>
+    <string name="security_settings_face_settings_footer_class3_attention_not_supported" product="device" msgid="7858917821957779752">"Utilisez votre visage pour déverrouiller votre appareil ou vérifier qu\'il s\'agit bien de vous, par exemple pour vous connecter à des applications ou approuver un achat.\n\nGardez à l\'esprit :\nUn seul visage peut être configuré à la fois. Pour ajouter un autre visage, supprimez le visage actuel.\n\nVous pourriez déverrouiller l\'appareil en le regardant, même si vous ne cherchiez pas à le faire.\n\nUne autre personne pourrait déverrouiller votre appareil en le tenant devant votre visage, même si vos yeux sont fermés.\n\nVotre appareil pourrait être déverrouillé par une personne qui vous ressemble beaucoup, comme un jumeau identique."</string>
     <string name="security_settings_fingerprint_enroll_introduction_v3_message" msgid="2145273491174234191">"Utilisez votre empreinte digitale pour déverrouiller votre <xliff:g id="DEVICENAME">%s</xliff:g> ou vérifier qu\'il s\'agit bien de vous, par exemple pour vous connecter à des applis ou approuver un achat"</string>
     <string name="security_settings_fingerprint_enroll_introduction_consent_message" product="default" msgid="5101253231118659496">"Autorisez votre enfant à utiliser son empreinte digitale pour déverrouiller son téléphone ou vérifier qu\'il s\'agit bien de lui. Cette situation se produit lorsqu\'il se connecte à des applis, approuve un achat et plus."</string>
     <string name="security_settings_fingerprint_enroll_introduction_consent_message" product="tablet" msgid="3063978167545799342">"Autorisez votre enfant à utiliser son empreinte digitale pour déverrouiller sa tablette ou vérifier qu\'il s\'agit bien de lui. Cette situation se produit lorsqu\'il se connecte à des applis, approuve un achat et plus."</string>
@@ -312,7 +312,7 @@
     <string name="user_settings_footer_text" product="tablet" msgid="4749331578207116797">"Partagez votre tablette en ajoutant des utilisateurs. Chaque utilisateur dispose d\'un espace personnel sur votre tablette pour ses écrans d\'accueil personnalisés, ses comptes, ses applis, ses paramètres et plus encore."</string>
     <string name="user_settings_footer_text" product="default" msgid="5440172971747221370">"Partagez votre téléphone en ajoutant des utilisateurs. Chaque utilisateur dispose d\'un espace personnel sur votre téléphone pour ses écrans d\'accueil personnalisés, ses comptes, ses applis, ses paramètres et plus encore."</string>
     <string name="user_cannot_manage_message" product="tablet" msgid="5566619500245432179">"Seul le propriétaire de la tablette peut gérer les utilisateurs."</string>
-    <string name="user_cannot_manage_message" product="default" msgid="8596259161937605316">"Seul le propriétaire de la tablette peut gérer les utilisateurs."</string>
+    <string name="user_cannot_manage_message" product="default" msgid="8596259161937605316">"Seule la personne propriétaire de la tablette peut gérer les utilisateurs."</string>
     <string name="user_confirm_remove_self_message" product="tablet" msgid="6880861846664267876">"Votre espace et vos données vont disparaître de cette tablette. Cette action est irréversible."</string>
     <string name="user_confirm_remove_self_message" product="default" msgid="3209762447055039706">"Votre espace et vos données vont être supprimés de ce téléphone. Cette action est irréversible."</string>
     <string name="support_summary" product="default" msgid="2044721479256103419">"Articles d\'aide, téléphone et clavardage"</string>
@@ -344,7 +344,7 @@
     <string name="lockpassword_confirm_your_pin_details_frp" product="default" msgid="2027547169650312092">"Téléphone réinitialisé aux paramètres par défaut Pour l\'utiliser, entrez votre ancien NIP."</string>
     <string name="lockpassword_confirm_your_pin_details_frp" product="tablet" msgid="8264086895022779707">"Tablette réinitialisée aux paramètres par défaut. Pour l\'utiliser, entrez votre ancien NIP."</string>
     <string name="lockpassword_confirm_your_pin_details_frp" product="device" msgid="1654340132011802578">"Appareil réinitialisé aux paramètres par défaut. Pour l\'utiliser, entrez votre ancien NIP."</string>
-    <string name="lockpassword_confirm_your_password_details_frp" product="default" msgid="1465326741724776281">"Téléphone réinitialisé aux paramètres par défaut Pour l\'utiliser, entrez votre ancien mot de passe."</string>
+    <string name="lockpassword_confirm_your_password_details_frp" product="default" msgid="1465326741724776281">"Téléphone réinitialisé aux paramètres par défaut. Pour l\'utiliser, entrez votre ancien mot de passe."</string>
     <string name="lockpassword_confirm_your_password_details_frp" product="tablet" msgid="1333164951750797865">"Tablette réinitialisée aux paramètres par défaut. Pour l\'utiliser, entrez votre ancien mot de passe."</string>
     <string name="lockpassword_confirm_your_password_details_frp" product="device" msgid="116667646012224967">"Appareil réinitialisé aux paramètres par défaut. Pour l\'utiliser, entrez votre ancien mot de passe."</string>
     <string name="battery_tip_incompatible_charging_message" product="default" msgid="5097154279720383707">"Votre téléphone pourrait se recharger lentement ou ne pas se recharger. Pour une recharge plus rapide, utilisez un adaptateur et un câble recommandés."</string>
diff --git a/res-product/values-fr/strings.xml b/res-product/values-fr/strings.xml
index 4f4032b..5555136 100644
--- a/res-product/values-fr/strings.xml
+++ b/res-product/values-fr/strings.xml
@@ -309,8 +309,8 @@
     <string name="data_usage_limit_dialog_mobile" product="tablet" msgid="5609616352941038118">"Les données mobiles sont désactivées sur votre tablette lorsque la limite de consommation des données que vous avez définie est atteinte.\n\nLa consommation mesurée par votre tablette pouvant différer de celle mesurée par votre opérateur, nous vous recommandons de définir une limite stricte."</string>
     <string name="data_usage_limit_dialog_mobile" product="default" msgid="4552449053646826676">"Votre téléphone désactivera les données mobiles lorsqu\'elles auront atteint la limite définie.\n\nLa consommation mesurée par votre téléphone pouvant différer de celle mesurée par votre opérateur, nous vous recommandons de définir une limite prudente."</string>
     <string name="user_settings_footer_text" product="device" msgid="8543171604218174424">"Partagez votre appareil en ajoutant des utilisateurs. Chacun dispose ainsi de son propre espace sur l\'appareil pour les écrans d\'accueil personnalisés, les comptes, les applications, les paramètres et autres."</string>
-    <string name="user_settings_footer_text" product="tablet" msgid="4749331578207116797">"Partagez votre tablette en ajoutant des utilisateurs. Chacun dispose ainsi de son propre espace sur l\'appareil pour les écrans d\'accueil personnalisés, les comptes, les applications, les paramètres et autres."</string>
-    <string name="user_settings_footer_text" product="default" msgid="5440172971747221370">"Partagez votre téléphone en ajoutant des utilisateurs. Chacun dispose de son propre espace sur votre téléphone pour ses réglages (écran d\'accueil, comptes, applis, paramètres, etc.)."</string>
+    <string name="user_settings_footer_text" product="tablet" msgid="4749331578207116797">"Partagez votre tablette en ajoutant des utilisateurs. Chacun dispose ainsi de son propre espace sur l\'appareil pour ses réglages (écran d\'accueil, comptes, applis, paramètres, etc.)."</string>
+    <string name="user_settings_footer_text" product="default" msgid="5440172971747221370">"Partagez votre téléphone en ajoutant des utilisateurs. Chacun dispose ainsi de son propre espace sur l\'appareil pour ses réglages (écran d\'accueil, comptes, applis, paramètres, etc.)."</string>
     <string name="user_cannot_manage_message" product="tablet" msgid="5566619500245432179">"Seul le propriétaire de la tablette peut gérer les utilisateurs."</string>
     <string name="user_cannot_manage_message" product="default" msgid="8596259161937605316">"Seul le propriétaire du téléphone peut gérer les utilisateurs."</string>
     <string name="user_confirm_remove_self_message" product="tablet" msgid="6880861846664267876">"Votre espace et vos données vont être supprimés de cette tablette. Cette action est irréversible."</string>
diff --git a/res-product/values-hi/strings.xml b/res-product/values-hi/strings.xml
index 9acaddc..d4977f3 100644
--- a/res-product/values-hi/strings.xml
+++ b/res-product/values-hi/strings.xml
@@ -310,7 +310,7 @@
     <string name="data_usage_limit_dialog_mobile" product="default" msgid="4552449053646826676">"जैसे ही आपका मोबाइल डेटा आपकी सेट की हुई सीमा पर पहुंचेगा, आपका फ़ोन उसे बंद कर देगा.\n\nडेटा खर्च आपके फ़ोन से मापा जाता है और आपकी मोबाइल और इंटरनेट सेवा देने वाली कंपनी, इस्तेमाल किए गए डेटा का हिसाब अलग तरीके से लगा सकती है. इसलिए, सीमा को कम पर सेट करें."</string>
     <string name="user_settings_footer_text" product="device" msgid="8543171604218174424">"अपना डिवाइस शेयर करने के लिए नए उपयोगकर्ता जोड़ें. आपके डिवाइस पर हर उपयोगकर्ता की एक निजी जगह होगी जिसमें वे अपने मुताबिक होम स्क्रीन, खाते, ऐप्लिकेशन और सेटिंग के साथ-साथ कई चीज़ें रख सकते हैं."</string>
     <string name="user_settings_footer_text" product="tablet" msgid="4749331578207116797">"अपना टैबलेट शेयर करने के लिए नए उपयोगकर्ता जोड़ें. आपके टैबलेट पर हर उपयोगकर्ता की एक निजी जगह होगी जिसमें वे अपने मुताबिक होम स्क्रीन, खाते, ऐप्लिकेशन और सेटिंग के साथ-साथ कई चीज़ें रख सकते हैं."</string>
-    <string name="user_settings_footer_text" product="default" msgid="5440172971747221370">"नए उपयोगकर्ता जोड़कर अपना फ़ोन शेयर करें. आपके फ़ोन पर हर उपयोगकर्ता की अपनी एक निजी जगह होगी, जिसमें वह अपनी ज़रूरत के मुताबिक होम स्क्रीन, खाते, ऐप्लिकेशन, सेटिंग वगैरह रख सकता है."</string>
+    <string name="user_settings_footer_text" product="default" msgid="5440172971747221370">"नए उपयोगकर्ता जोड़कर अपना फ़ोन शेयर करें. आपके फ़ोन पर हर उपयोगकर्ता की एक निजी प्रोफ़ाइल होगी, जिसमें वह अपनी ज़रूरत के मुताबिक होम स्क्रीन, खाते, ऐप्लिकेशन, सेटिंग वगैरह रख सकता है."</string>
     <string name="user_cannot_manage_message" product="tablet" msgid="5566619500245432179">"केवल टैबलेट का स्वामी उपयोगकर्ताओं को प्रबंधित कर सकता है."</string>
     <string name="user_cannot_manage_message" product="default" msgid="8596259161937605316">"केवल फ़ोन का स्वामी उपयोगकर्ताओं को प्रबंधित कर सकता है."</string>
     <string name="user_confirm_remove_self_message" product="tablet" msgid="6880861846664267876">"आप इस टैबलेट पर जगह और डेटा को खो देंगे. आप इस कार्रवाई को पहले जैसा नहीं कर सकते."</string>
diff --git a/res-product/values-it-feminine/strings.xml b/res-product/values-it-feminine/strings.xml
new file mode 100644
index 0000000..d7f3aa0
--- /dev/null
+++ b/res-product/values-it-feminine/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2022 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.
+ -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_clear_other_users_present" product="default" msgid="7750368595882863399">\n\n"Sono presenti altre utenti su questo dispositivo.\n"</string>
+</resources>
diff --git a/res-product/values-it-masculine/strings.xml b/res-product/values-it-masculine/strings.xml
new file mode 100644
index 0000000..d4e98e4
--- /dev/null
+++ b/res-product/values-it-masculine/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2022 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.
+ -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_clear_other_users_present" product="default" msgid="7750368595882863399">\n\n"Sono presenti altri utenti su questo dispositivo.\n"</string>
+</resources>
diff --git a/res-product/values-it-neuter/strings.xml b/res-product/values-it-neuter/strings.xml
new file mode 100644
index 0000000..160a6d9
--- /dev/null
+++ b/res-product/values-it-neuter/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2022 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.
+ -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_clear_other_users_present" product="default" msgid="7750368595882863399">\n\n"Sono presenti altrɜ utenti su questo dispositivo.\n"</string>
+</resources>
diff --git a/res-product/values-it/strings.xml b/res-product/values-it/strings.xml
index af01cae..ed3fa64 100644
--- a/res-product/values-it/strings.xml
+++ b/res-product/values-it/strings.xml
@@ -55,10 +55,10 @@
     <string name="security_settings_face_enroll_introduction_message_class3" product="default" msgid="8492576130109033451">"Usa il tuo volto per sbloccare lo smartphone o per l\'autenticazione nelle app, ad esempio per accedere alle app o approvare un acquisto"</string>
     <string name="security_settings_face_enroll_introduction_message_class3" product="tablet" msgid="8736497842795690098">"Usa il tuo volto per sbloccare il tablet o per l\'autenticazione nelle app, ad esempio per accedere alle app o approvare un acquisto"</string>
     <string name="security_settings_face_enroll_introduction_message_class3" product="device" msgid="2558057312718921078">"Usa il tuo volto per sbloccare il dispositivo o per l\'autenticazione nelle app, ad esempio per accedere alle app o approvare un acquisto"</string>
-    <string name="security_settings_face_enroll_introduction_consent_message_0" product="default" msgid="9086377203303858619">"Consenti a tuo figlio di usare il suo volto per sbloccare il suo telefono"</string>
+    <string name="security_settings_face_enroll_introduction_consent_message_0" product="default" msgid="9086377203303858619">"Consenti a tuo figlio di usare il suo volto per sbloccare lo smartphone"</string>
     <string name="security_settings_face_enroll_introduction_consent_message_0" product="tablet" msgid="4560949471246282574">"Consenti a tuo figlio di usare il suo volto per sbloccare il suo tablet"</string>
     <string name="security_settings_face_enroll_introduction_consent_message_0" product="device" msgid="1156063265854416046">"Consenti a tuo figlio di usare il suo volto per sbloccare il suo dispositivo"</string>
-    <string name="security_settings_face_enroll_introduction_consent_message_0_class3" product="default" msgid="5082581184108528408">"Consenti a tuo figlio di usare il volto per sbloccare il suo telefono o verificare la sua identità. Questo si verifica quando accede alle app, approva un acquisto e altro ancora."</string>
+    <string name="security_settings_face_enroll_introduction_consent_message_0_class3" product="default" msgid="5082581184108528408">"Consenti a tuo figlio di usare il volto per sbloccare il suo smartphone o verificare la sua identità. Questo si verifica quando accede alle app, approva un acquisto e altro ancora."</string>
     <string name="security_settings_face_enroll_introduction_consent_message_0_class3" product="tablet" msgid="5932555218164668532">"Consenti a tuo figlio di usare il volto per sbloccare il suo tablet o verificare la sua identità. Questo si verifica quando accede alle app, approva un acquisto e altro ancora."</string>
     <string name="security_settings_face_enroll_introduction_consent_message_0_class3" product="device" msgid="8943878265098867810">"Consenti a tuo figlio di usare il volto per sbloccare il suo dispositivo o verificare la sua identità. Questo si verifica quando accede alle app, approva un acquisto e altro ancora."</string>
     <string name="security_settings_face_enroll_introduction_consent_message" product="default" msgid="3698558920963989416">"L\'uso del volto di tuo figlio per sbloccare il suo telefono potrebbe essere meno sicuro di una sequenza o un PIN efficaci."</string>
@@ -107,7 +107,7 @@
     <string name="security_settings_face_settings_footer_class3_attention_not_supported" product="tablet" msgid="6790505667764631343">"Usa il tuo volto per sbloccare il tablet o verificare la tua identità, ad esempio quando vuoi accedere alle app o approvare un acquisto.\n\nTieni presente che:\nPuoi configurare un solo volto alla volta. Per aggiungere un altro volto devi eliminare quello attuale.\n\nSe guardi direttamente il tablet, potresti sbloccarlo anche senza volerlo.\n\nIl tuo tablet può essere sbloccato da un\'altra persona se viene rivolto verso il tuo viso, anche se hai gli occhi chiusi.\n\nIl tuo tablet può essere sbloccato da qualcuno che ti assomiglia molto, ad esempio un gemello o una gemella."</string>
     <string name="security_settings_face_settings_footer_class3_attention_not_supported" product="device" msgid="7858917821957779752">"Usa il tuo volto per sbloccare il dispositivo o verificare la tua identità, ad esempio quando vuoi accedere alle app o approvare un acquisto.\n\nTieni presente che:\nPuoi configurare un solo volto alla volta. Per aggiungere un altro volto devi eliminare quello attuale.\n\nSe guardi direttamente il dispositivo, potresti sbloccarlo anche senza volerlo.\n\nIl tuo dispositivo può essere sbloccato da un\'altra persona se viene rivolto verso il tuo viso, anche se hai gli occhi chiusi.\n\nIl tuo dispositivo può essere sbloccato da qualcuno che ti assomiglia molto, ad esempio un gemello o una gemella."</string>
     <string name="security_settings_fingerprint_enroll_introduction_v3_message" msgid="2145273491174234191">"Usa l\'impronta per sbloccare <xliff:g id="DEVICENAME">%s</xliff:g> o per verificare la tua identità, ad esempio per accedere alle app o approvare un acquisto"</string>
-    <string name="security_settings_fingerprint_enroll_introduction_consent_message" product="default" msgid="5101253231118659496">"Consenti a tuo figlio di usare l\'impronta per sbloccare il suo telefono o verificare la sua identità. Questo si verifica quando accedono alle app, approvano un acquisto e altro ancora."</string>
+    <string name="security_settings_fingerprint_enroll_introduction_consent_message" product="default" msgid="5101253231118659496">"Consenti a tuo figlio di usare l\'impronta per sbloccare il suo smartphone o verificare la sua identità. Questo si verifica quando accede alle app, approva un acquisto e altro ancora."</string>
     <string name="security_settings_fingerprint_enroll_introduction_consent_message" product="tablet" msgid="3063978167545799342">"Consenti a tuo figlio di usare l\'impronta per sbloccare il suo tablet o verificare la sua identità. Questo si verifica quando accede alle app, approva un acquisto e altro ancora."</string>
     <string name="security_settings_fingerprint_enroll_introduction_consent_message" product="device" msgid="4399560001732497632">"Consenti a tuo figlio di usare l\'impronta per sbloccare il suo dispositivo o verificare la sua identità. Questo si verifica quando accede alle app, approva un acquisto e altro ancora."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_1" product="default" msgid="8488497844109768268">"L\'uso dell\'impronta per sbloccare il telefono potrebbe essere meno sicuro dell\'uso di una sequenza o un PIN efficaci"</string>
@@ -122,13 +122,13 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" product="default" msgid="1354488801088258040">"Puoi eliminare le immagini e il modello dell\'impronta o disattivare lo Sblocco con l\'Impronta in qualsiasi momento nelle Impostazioni. Le immagini e i modelli delle impronte rimangono memorizzati sullo smartphone finché non li elimini."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" product="tablet" msgid="8207309581266022275">"Puoi eliminare le immagini e il modello dell\'impronta o disattivare lo Sblocco con l\'Impronta in qualsiasi momento nelle Impostazioni. Le immagini e i modelli delle impronte rimangono memorizzati sul tablet finché non li elimini."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" product="device" msgid="2498580070051496133">"Puoi eliminare le immagini e il modello dell\'impronta o disattivare lo Sblocco con l\'Impronta in qualsiasi momento nelle Impostazioni. Le immagini e i modelli delle impronte rimangono memorizzati sul dispositivo finché non li elimini."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" product="default" msgid="5003753461032107715">"Tu e tuo figlio potete eliminare le immagini e il modello dell\'impronta o disattivare lo Sblocco con l\'Impronta in qualsiasi momento nelle Impostazioni. Le immagini e i modelli delle impronte rimangono memorizzati sul telefono finché non vengono eliminati."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" product="default" msgid="5003753461032107715">"Tu e tuo figlio potete eliminare le immagini e il modello dell\'impronta o disattivare lo Sblocco con l\'Impronta in qualsiasi momento nelle Impostazioni. Le immagini e i modelli delle impronte rimangono memorizzati sullo smartphone finché non vengono eliminati."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" product="tablet" msgid="8772005555323461143">"Tu e tuo figlio potete eliminare le immagini e il modello dell\'impronta o disattivare lo Sblocco con l\'Impronta in qualsiasi momento nelle Impostazioni. Le immagini e i modelli delle impronte rimangono memorizzati sul tablet finché non vengono eliminati."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" product="device" msgid="7254955922685507093">"Tu e tuo figlio potete eliminare le immagini e il modello dell\'impronta o disattivare lo Sblocco con l\'Impronta in qualsiasi momento nelle Impostazioni. Le immagini e i modelli delle impronte rimangono memorizzati sul dispositivo finché non vengono eliminati."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="6272159089589340181">"Il tuo smartphone può essere sbloccato anche quando non hai intenzione di farlo, ad esempio se qualcuno te lo avvicina al dito."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="2420109998272019149">"Il tuo tablet può essere sbloccato anche quando non hai intenzione di farlo, ad esempio se qualcuno lo avvicina al tuo dito."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="5915844445830045866">"Il tuo dispositivo può essere sbloccato anche quando non hai intenzione di farlo, ad esempio se qualcuno lo avvicina al tuo dito."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" product="default" msgid="6556725426776167791">"Il telefono di tuo figlio può essere sbloccato anche quando non vuole farlo intenzionalmente, ad esempio se qualcuno lo rivolge verso il suo dito."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" product="default" msgid="6556725426776167791">"Lo smartphone di tuo figlio può essere sbloccato anche quando non vuole farlo intenzionalmente, ad esempio se qualcuno lo rivolge verso il suo dito."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" product="tablet" msgid="5156581794964551571">"Il tablet di tuo figlio può essere sbloccato anche quando non vuole farlo intenzionalmente, ad esempio se qualcuno lo rivolge verso il suo dito."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" product="device" msgid="8309101436391515400">"Il dispositivo di tuo figlio può essere sbloccato anche quando non vuole farlo intenzionalmente, ad esempio se qualcuno lo rivolge verso il suo dito."</string>
     <string name="security_settings_fingerprint_v2_home_screen_text" product="tablet" msgid="5074447304036758639">"Usa l\'impronta per sbloccare il tablet o verificare la tua identità, ad esempio per accedere alle app"</string>
@@ -312,7 +312,7 @@
     <string name="user_settings_footer_text" product="tablet" msgid="4749331578207116797">"Condividi il tuo tablet aggiungendo nuovi utenti. Ogni utente dispone di uno spazio personale sul tablet per impostare schermate Home personalizzate, account, app, impostazioni e altro ancora."</string>
     <string name="user_settings_footer_text" product="default" msgid="5440172971747221370">"Condividi il tuo smartphone aggiungendo nuovi utenti. Ogni utente dispone di uno spazio personale sullo smartphone per impostare schermate Home personalizzate, account, app, impostazioni e altro ancora."</string>
     <string name="user_cannot_manage_message" product="tablet" msgid="5566619500245432179">"Solo il proprietario del tablet può gestire gli utenti."</string>
-    <string name="user_cannot_manage_message" product="default" msgid="8596259161937605316">"Solo il proprietario del telefono può gestire gli utenti."</string>
+    <string name="user_cannot_manage_message" product="default" msgid="8596259161937605316">"Solo il proprietario dello smartphone può gestire gli utenti."</string>
     <string name="user_confirm_remove_self_message" product="tablet" msgid="6880861846664267876">"Perderai il tuo spazio e i tuoi dati sul tablet. Non è possibile annullare l\'azione."</string>
     <string name="user_confirm_remove_self_message" product="default" msgid="3209762447055039706">"Perderai il tuo spazio e i tuoi dati sul telefono. Non è possibile annullare l\'azione."</string>
     <string name="support_summary" product="default" msgid="2044721479256103419">"Articoli del Centro assistenza, telefono e chat"</string>
diff --git a/res-product/values-kn/strings.xml b/res-product/values-kn/strings.xml
index 03d3fe8..01fbbb6 100644
--- a/res-product/values-kn/strings.xml
+++ b/res-product/values-kn/strings.xml
@@ -52,7 +52,7 @@
     <string name="security_settings_face_enroll_introduction_message" product="default" msgid="847716059867943459">"ನಿಮ್ಮ ಫೋನ್ ಅನ್‌ಲಾಕ್ ಮಾಡಲು, ಖರೀದಿಗಳನ್ನು ದೃಢೀಕರಿಸಲು ಅಥವಾ ಅಪ್ಲಿಕೇಶನ್‌ಗಳಿಗೆ ಸೈನ್ ಇನ್ ಮಾಡಲು ನಿಮ್ಮ ಮುಖವನ್ನು ಬಳಸಿ."</string>
     <string name="security_settings_face_enroll_introduction_message" product="tablet" msgid="3976493376026067375">"ನಿಮ್ಮ ಟ್ಯಾಬ್ಲೆಟ್‌‌ ಅನ್ನು ಅನ್‌ಲಾಕ್ ಮಾಡಲು, ಖರೀದಿಗಳನ್ನು ದೃಢೀಕರಿಸಲು ಅಥವಾ ಆ್ಯಪ್‌ಗಳಿಗೆ ಸೈನ್ ಇನ್ ಮಾಡಲು ನಿಮ್ಮ ಮುಖವನ್ನು ಬಳಸಿ."</string>
     <string name="security_settings_face_enroll_introduction_message" product="device" msgid="6432265830098806034">"ನಿಮ್ಮ ಸಾಧನವನ್ನು ಅನ್‌ಲಾಕ್ ಮಾಡಲು, ಖರೀದಿಗಳನ್ನು ದೃಢೀಕರಿಸಲು ಅಥವಾ ಆ್ಯಪ್‌ಗಳಿಗೆ ಸೈನ್ ಇನ್ ಮಾಡಲು ನಿಮ್ಮ ಮುಖವನ್ನು ಬಳಸಿ."</string>
-    <string name="security_settings_face_enroll_introduction_message_class3" product="default" msgid="8492576130109033451">"ನಿಮ್ಮ ಫೋನ್ ಅನ್ನು ಅನ್‌ಲಾಕ್ ಮಾಡಲು ಅಥವಾ ಆ್ಯಪ್‌ಗಳಲ್ಲಿ ದೃಢೀಕರಣಕ್ಕಾಗಿ ನಿಮ್ಮ ಮುಖವನ್ನು ಬಳಸಿ, ಅಂದರೆ, ನೀವು ಆ್ಯಪ್‌ಗಳಿಗೆ ಸೈನ್ ಇನ್ ಮಾಡುವಾಗ ಅಥವಾ ಖರೀದಿಯನ್ನು ಅನುಮೋದಿಸುವಾಗ"</string>
+    <string name="security_settings_face_enroll_introduction_message_class3" product="default" msgid="8492576130109033451">"ನಿಮ್ಮ ಫೋನ್ ಅನ್ನು ಅನ್‌ಲಾಕ್ ಮಾಡಲು ಅಥವಾ ನೀವು ಆ್ಯಪ್‌ಗಳಿಗೆ ಸೈನ್ ಇನ್ ಮಾಡುವ ಅಥವಾ ಖರೀದಿಯನ್ನು ಅನುಮೋದಿಸುವ ಸಂದರ್ಭಗಳಲ್ಲಿ ಆ್ಯಪ್‌ಗಳಲ್ಲಿ ದೃಢೀಕರಣಕ್ಕಾಗಿ ನಿಮ್ಮ ಮುಖವನ್ನು ಬಳಸಿ"</string>
     <string name="security_settings_face_enroll_introduction_message_class3" product="tablet" msgid="8736497842795690098">"ನಿಮ್ಮ ಟ್ಯಾಬ್ಲೆಟ್ ಅನ್ನು ಅನ್‌ಲಾಕ್ ಮಾಡಲು ಅಥವಾ ಆ್ಯಪ್‌ಗಳಲ್ಲಿ ದೃಢೀಕರಣಕ್ಕಾಗಿ ನಿಮ್ಮ ಮುಖವನ್ನು ಬಳಸಿ, ಅಂದರೆ, ನೀವು ಆ್ಯಪ್‌ಗಳಿಗೆ ಸೈನ್ ಇನ್ ಮಾಡುವಾಗ ಅಥವಾ ಖರೀದಿಯನ್ನು ಅನುಮೋದಿಸುವಾಗ"</string>
     <string name="security_settings_face_enroll_introduction_message_class3" product="device" msgid="2558057312718921078">"ನಿಮ್ಮ ಸಾಧನವನ್ನು ಅನ್‌ಲಾಕ್ ಮಾಡಲು ಅಥವಾ ಆ್ಯಪ್‌ಗಳಲ್ಲಿ ದೃಢೀಕರಣಕ್ಕಾಗಿ ನಿಮ್ಮ ಮುಖವನ್ನು ಬಳಸಿ, ಅಂದರೆ, ನೀವು ಆ್ಯಪ್‌ಗಳಿಗೆ ಸೈನ್ ಇನ್ ಮಾಡುವಾಗ ಅಥವಾ ಖರೀದಿಯನ್ನು ಅನುಮೋದಿಸುವಾಗ"</string>
     <string name="security_settings_face_enroll_introduction_consent_message_0" product="default" msgid="9086377203303858619">"ನಿಮ್ಮ ಮಗುವಿಗೆ ತಮ್ಮ ಫೋನ್ ಅನ್ನು ಅನ್‌ಲಾಕ್ ಮಾಡಲು ಅವರ ಮುಖವನ್ನು ಬಳಸಲು ಅನುಮತಿಸಿ"</string>
diff --git a/res-product/values-ko/strings.xml b/res-product/values-ko/strings.xml
index 15da50b939..69d6e25 100644
--- a/res-product/values-ko/strings.xml
+++ b/res-product/values-ko/strings.xml
@@ -52,7 +52,7 @@
     <string name="security_settings_face_enroll_introduction_message" product="default" msgid="847716059867943459">"얼굴로 휴대전화를 잠금 해제하거나 구매를 승인하거나 앱에 로그인하세요."</string>
     <string name="security_settings_face_enroll_introduction_message" product="tablet" msgid="3976493376026067375">"태블릿을 잠금 해제하거나 구매를 승인하거나 앱에 로그인할 때 얼굴 인식을 사용합니다."</string>
     <string name="security_settings_face_enroll_introduction_message" product="device" msgid="6432265830098806034">"기기를 잠금 해제하거나 구매를 승인하거나 앱에 로그인할 때 얼굴 인식을 사용합니다."</string>
-    <string name="security_settings_face_enroll_introduction_message_class3" product="default" msgid="8492576130109033451">"휴대전화를 잠금 해제하거나 앱에서 인증할 때(예: 앱 로그인 또는 구매 승인 시) 얼굴 인식을 사용하세요"</string>
+    <string name="security_settings_face_enroll_introduction_message_class3" product="default" msgid="8492576130109033451">"휴대전화를 잠금 해제하거나 앱 로그인 및 구매 승인 등 앱에서 인증이 필요할 때 얼굴 인식을 사용하세요."</string>
     <string name="security_settings_face_enroll_introduction_message_class3" product="tablet" msgid="8736497842795690098">"태블릿을 잠금 해제하거나 앱에서 인증할 때(예: 앱 로그인 또는 구매 승인 시) 얼굴 인식을 사용하세요"</string>
     <string name="security_settings_face_enroll_introduction_message_class3" product="device" msgid="2558057312718921078">"기기를 잠금 해제하거나 앱에서 인증할 때(예: 앱 로그인 또는 구매 승인 시) 얼굴 인식을 사용하세요"</string>
     <string name="security_settings_face_enroll_introduction_consent_message_0" product="default" msgid="9086377203303858619">"자녀가 얼굴 인식을 사용하여 휴대전화를 잠금 해제할 수 있도록 허용합니다."</string>
@@ -310,7 +310,7 @@
     <string name="data_usage_limit_dialog_mobile" product="default" msgid="4552449053646826676">"설정한 모바일 데이터 한도에 도달하면 휴대전화에서 모바일 데이터를 사용 중지합니다.\n\n데이터 사용량은 휴대전화에서 측정되며 이동통신사에서 사용량을 다르게 계산할 수 있으므로 한도를 낮게 설정해 보세요."</string>
     <string name="user_settings_footer_text" product="device" msgid="8543171604218174424">"새 사용자를 추가하여 기기를 공유합니다. 사용자마다 기기에서 맞춤 홈 화면, 계정, 앱, 설정 등을 이용할 수 있는 자신만의 공간을 갖게 됩니다."</string>
     <string name="user_settings_footer_text" product="tablet" msgid="4749331578207116797">"새 사용자를 추가하여 태블릿을 공유합니다. 사용자마다 태블릿에서 맞춤 홈 화면, 계정, 앱, 설정 등을 이용할 수 있는 자신만의 공간을 갖게 됩니다."</string>
-    <string name="user_settings_footer_text" product="default" msgid="5440172971747221370">"새 사용자를 추가하여 휴대전화를 공유합니다. 사용자마다 휴대전화에서 맞춤 홈 화면, 계정, 앱, 설정 등을 이용할 수 있는 자신만의 공간을 갖게 됩니다."</string>
+    <string name="user_settings_footer_text" product="default" msgid="5440172971747221370">"새 사용자를 추가하여 휴대전화를 공유합니다. 사용자마다 휴대전화에서 맞춤 홈 화면, 계정, 앱, 설정 등을 이용할 수 있는 개인 프로필을 갖게 됩니다."</string>
     <string name="user_cannot_manage_message" product="tablet" msgid="5566619500245432179">"태블릿의 소유자만 사용자를 관리할 수 있습니다."</string>
     <string name="user_cannot_manage_message" product="default" msgid="8596259161937605316">"휴대전화의 소유자만 사용자를 관리할 수 있습니다."</string>
     <string name="user_confirm_remove_self_message" product="tablet" msgid="6880861846664267876">"이 태블릿에 있는 내 저장 공간 및 데이터가 삭제됩니다. 이 작업은 실행취소할 수 없습니다."</string>
diff --git a/res-product/values-ky/strings.xml b/res-product/values-ky/strings.xml
index 7eb25de..0b0b7c6 100644
--- a/res-product/values-ky/strings.xml
+++ b/res-product/values-ky/strings.xml
@@ -308,9 +308,9 @@
     <string name="data_usage_auto_sync_on_dialog" product="default" msgid="7207326473052484970">"Вебсайтта аккаунттарга киргизилген өзгөрүүлөр автоматтык түрдө телефонуңузга көчүрүлүп турат.\n\nАйрым учурларда, тескерисинче, телефонуңуздан вебсайтка көчүрүлөт. Кыскасы, Google аккаунту ушинтип иштейт."</string>
     <string name="data_usage_limit_dialog_mobile" product="tablet" msgid="5609616352941038118">"Белгиленген чекке жеткенде, планшетиңиз мобилдик Интернетти өчүрөт.\n\nПланшетиңиздин статистикасы менен байланыш операторунун статистикасы аздыр-көптүр айырмалангандыктан, чекти кабелтең коюңуз."</string>
     <string name="data_usage_limit_dialog_mobile" product="default" msgid="4552449053646826676">"Белгиленген чекке жеткенде, телефонуңуз мобилдик Интернетти өчүрөт.\n\nТелефонуңуздун статистикасы менен байланыш операторунун статистикасы аздыр-көптүр айырмалангандыктан, чекти кабелтең коюңуз."</string>
-    <string name="user_settings_footer_text" product="device" msgid="8543171604218174424">"Телефонуңузду бир нече адам менен чогуу пайдалансаңыз болот. Ал үчүн алардын ар бирине профиль түзүп бериңиз. Ар бир колдонуучу өз профилин өзү каалагандай тууралап алышат (башкы экранын өзгөртүп, аккаунттарын жана колдонмолорун кошуп)."</string>
-    <string name="user_settings_footer_text" product="tablet" msgid="4749331578207116797">"Телефонуңузду бир нече адам менен чогуу пайдалансаңыз болот. Ал үчүн алардын ар бирине профиль түзүп бериңиз. Ар бир колдонуучу өз профилин өзү каалагандай тууралап алышат (башкы экранын өзгөртүп, аккаунттарын жана колдонмолорун кошуп)."</string>
-    <string name="user_settings_footer_text" product="default" msgid="5440172971747221370">"Телефонуңузду бир нече адам менен чогуу пайдалансаңыз болот. Ал үчүн алардын ар бирине профиль түзүп бериңиз. Ар бир колдонуучу өз профилин өзү каалагандай тууралап алышат (башкы экранын өзгөртүп, аккаунттарын жана колдонмолорун кошуп)."</string>
+    <string name="user_settings_footer_text" product="device" msgid="8543171604218174424">"Телефонуңузду бир нече адам менен пайдалансаңыз болот. Ал үчүн алардын ар бирине профиль түзүп беришиңиз керек. Ар бир колдонуучу өз профилин өзү каалагандай тууралап алат (башкы экранын өзгөртүп, аккаунттарын жана колдонмолорун кошуп)."</string>
+    <string name="user_settings_footer_text" product="tablet" msgid="4749331578207116797">"Телефонуңузду бир нече адам менен пайдалансаңыз болот. Ал үчүн алардын ар бирине профиль түзүп беришиңиз керек. Ар бир колдонуучу өз профилин өзү каалагандай тууралап алат (башкы экранын өзгөртүп, аккаунттарын жана колдонмолорун кошуп)."</string>
+    <string name="user_settings_footer_text" product="default" msgid="5440172971747221370">"Телефонуңузду бир нече адам менен пайдалансаңыз болот. Ал үчүн алардын ар бирине профиль түзүп беришиңиз керек. Ар бир колдонуучу өз профилин өзү каалагандай тууралап алат (башкы экранын өзгөртүп, аккаунттарын жана колдонмолорун кошуп)."</string>
     <string name="user_cannot_manage_message" product="tablet" msgid="5566619500245432179">"Планшеттин ээси гана колдонуучуларды башкара алат."</string>
     <string name="user_cannot_manage_message" product="default" msgid="8596259161937605316">"Телефондун ээси гана колдонуучуларды башкара алат."</string>
     <string name="user_confirm_remove_self_message" product="tablet" msgid="6880861846664267876">"Сиз бул планшеттеги мейкиндигиңизди жана берилиштериңизди жоготосуз. Сиз муну артка кайтара албайсыз."</string>
diff --git a/res-product/values-pt-rBR/strings.xml b/res-product/values-pt-rBR/strings.xml
index 79b14c4..f5cecc7 100644
--- a/res-product/values-pt-rBR/strings.xml
+++ b/res-product/values-pt-rBR/strings.xml
@@ -310,7 +310,7 @@
     <string name="data_usage_limit_dialog_mobile" product="default" msgid="4552449053646826676">"Seu smartphone desativará os dados móveis quando o limite especificado for atingido.\n\nComo o uso de dados é calculado pelo seu smartphone, e sua operadora pode entender o uso de forma diferente, defina um limite moderado."</string>
     <string name="user_settings_footer_text" product="device" msgid="8543171604218174424">"Para compartilhar seu dispositivo, adicione novos usuários. Cada usuário tem um espaço pessoal no dispositivo para telas iniciais personalizadas, contas, apps, configurações e muito mais."</string>
     <string name="user_settings_footer_text" product="tablet" msgid="4749331578207116797">"Para compartilhar seu tablet, adicione novos usuários. Cada usuário tem um espaço pessoal no tablet para telas iniciais personalizadas, contas, apps, configurações e muito mais."</string>
-    <string name="user_settings_footer_text" product="default" msgid="5440172971747221370">"Para compartilhar seu smartphone, adicione novos usuários. Cada usuário tem um espaço pessoal no smartphone para telas iniciais personalizadas, contas, apps, configurações e muito mais."</string>
+    <string name="user_settings_footer_text" product="default" msgid="5440172971747221370">"Para compartilhar seu smartphone, adicione outros usuários. Cada pessoa vai ter um espaço separado e pode personalizar a tela inicial, conta, configurações, apps e muito mais."</string>
     <string name="user_cannot_manage_message" product="tablet" msgid="5566619500245432179">"Somente o proprietário do tablet pode gerenciar os usuários."</string>
     <string name="user_cannot_manage_message" product="default" msgid="8596259161937605316">"Somente o proprietário do telefone pode gerenciar os usuários."</string>
     <string name="user_confirm_remove_self_message" product="tablet" msgid="6880861846664267876">"Você perderá seu espaço e seus dados no tablet. Não é possível desfazer esta ação."</string>
diff --git a/res-product/values-pt/strings.xml b/res-product/values-pt/strings.xml
index 79b14c4..f5cecc7 100644
--- a/res-product/values-pt/strings.xml
+++ b/res-product/values-pt/strings.xml
@@ -310,7 +310,7 @@
     <string name="data_usage_limit_dialog_mobile" product="default" msgid="4552449053646826676">"Seu smartphone desativará os dados móveis quando o limite especificado for atingido.\n\nComo o uso de dados é calculado pelo seu smartphone, e sua operadora pode entender o uso de forma diferente, defina um limite moderado."</string>
     <string name="user_settings_footer_text" product="device" msgid="8543171604218174424">"Para compartilhar seu dispositivo, adicione novos usuários. Cada usuário tem um espaço pessoal no dispositivo para telas iniciais personalizadas, contas, apps, configurações e muito mais."</string>
     <string name="user_settings_footer_text" product="tablet" msgid="4749331578207116797">"Para compartilhar seu tablet, adicione novos usuários. Cada usuário tem um espaço pessoal no tablet para telas iniciais personalizadas, contas, apps, configurações e muito mais."</string>
-    <string name="user_settings_footer_text" product="default" msgid="5440172971747221370">"Para compartilhar seu smartphone, adicione novos usuários. Cada usuário tem um espaço pessoal no smartphone para telas iniciais personalizadas, contas, apps, configurações e muito mais."</string>
+    <string name="user_settings_footer_text" product="default" msgid="5440172971747221370">"Para compartilhar seu smartphone, adicione outros usuários. Cada pessoa vai ter um espaço separado e pode personalizar a tela inicial, conta, configurações, apps e muito mais."</string>
     <string name="user_cannot_manage_message" product="tablet" msgid="5566619500245432179">"Somente o proprietário do tablet pode gerenciar os usuários."</string>
     <string name="user_cannot_manage_message" product="default" msgid="8596259161937605316">"Somente o proprietário do telefone pode gerenciar os usuários."</string>
     <string name="user_confirm_remove_self_message" product="tablet" msgid="6880861846664267876">"Você perderá seu espaço e seus dados no tablet. Não é possível desfazer esta ação."</string>
diff --git a/res-product/values-sl/strings.xml b/res-product/values-sl/strings.xml
index e51fa9b..2cc05fd 100644
--- a/res-product/values-sl/strings.xml
+++ b/res-product/values-sl/strings.xml
@@ -52,7 +52,7 @@
     <string name="security_settings_face_enroll_introduction_message" product="default" msgid="847716059867943459">"Uporabljajte obraz za odklepanje telefona, odobritev nakupov ali prijavo v aplikacije."</string>
     <string name="security_settings_face_enroll_introduction_message" product="tablet" msgid="3976493376026067375">"Uporabljajte obraz za odklepanje tabličnega računalnika, odobritev nakupov ali prijavo v aplikacije."</string>
     <string name="security_settings_face_enroll_introduction_message" product="device" msgid="6432265830098806034">"Uporabljajte obraz za odklepanje naprave, odobritev nakupov ali prijavo v aplikacije."</string>
-    <string name="security_settings_face_enroll_introduction_message_class3" product="default" msgid="8492576130109033451">"Z obrazom odklepajte telefon ali preverjajte pristnost v aplikacijah, na primer ob prijavi v aplikacije ali za odobritev nakupa"</string>
+    <string name="security_settings_face_enroll_introduction_message_class3" product="default" msgid="8492576130109033451">"Z obrazom odklenite telefon ali preverite pristnost v aplikacijah, na primer ob prijavi v aplikacije ali za odobritev nakupa."</string>
     <string name="security_settings_face_enroll_introduction_message_class3" product="tablet" msgid="8736497842795690098">"Z obrazom odklepajte tablični računalnik ali preverjajte pristnost v aplikacijah, na primer ob prijavi v aplikacije ali za odobritev nakupa"</string>
     <string name="security_settings_face_enroll_introduction_message_class3" product="device" msgid="2558057312718921078">"Z obrazom odklepajte napravo ali preverjajte pristnost v aplikacijah, na primer ob prijavi v aplikacije ali za odobritev nakupa"</string>
     <string name="security_settings_face_enroll_introduction_consent_message_0" product="default" msgid="9086377203303858619">"Otroku dovolite odklepanje telefona z obrazom."</string>
diff --git a/res-product/values-sw/strings.xml b/res-product/values-sw/strings.xml
index ab5d352..0f689de 100644
--- a/res-product/values-sw/strings.xml
+++ b/res-product/values-sw/strings.xml
@@ -310,7 +310,7 @@
     <string name="data_usage_limit_dialog_mobile" product="default" msgid="4552449053646826676">"Simu yako itazima data ya mtandao wa simu pindi itakapofikia kikomo cha matumizi ya data ulichoweka. \n\nKwa kuwa simu yako ndiyo huwa inapima matumizi ya data, na kampuni inayokupa huduma za mtandao huenda ikahesabu matumizi kwa njia tofauti, unashauriwa kuweka kikomo cha wastani."</string>
     <string name="user_settings_footer_text" product="device" msgid="8543171604218174424">"Shiriki kifaa chako kwa kuongeza watumiaji wapya. Kila mtumiaji ana nafasi ya binafsi kwenye kifaa chako kwa ajili ya Skrini ya kwanza, akaunti, programu, mipangilio na vipengee vingine maalum."</string>
     <string name="user_settings_footer_text" product="tablet" msgid="4749331578207116797">"Shiriki kompyuta yako kibao kwa kuongeza watumiaji wapya. Kila mtumiaji ana nafasi ya binafsi kwenye kompyuta yako kibao kwa ajili ya Skrini ya kwanza, akaunti, programu, mipangilio na vipengee vingine maalum"</string>
-    <string name="user_settings_footer_text" product="default" msgid="5440172971747221370">"Shiriki simu yako kwa kuongeza watumiaji wapya. Kila mtumiaji ana nafasi ya binafsi kwenye simu yako ya kuweka Skrini ya Kwanza, akaunti, programu, mipangilio na vipengee vingine maalum kwake."</string>
+    <string name="user_settings_footer_text" product="default" msgid="5440172971747221370">"Tumia simu yako na wengine kwa kuongeza watumiaji wapya. Kila mtumiaji ana nafasi ya binafsi kwenye simu yako ya kuweka Skrini ya Kwanza, akaunti, programu, mipangilio na vipengee vingine maalum kwake."</string>
     <string name="user_cannot_manage_message" product="tablet" msgid="5566619500245432179">"Mmiliki wa kompyuta kibao pekee ndiye anayeweza kudhibiti watumiaji."</string>
     <string name="user_cannot_manage_message" product="default" msgid="8596259161937605316">"Mmiliki wa simu pekee ndiye anayeweza kudhibiti watumiaji."</string>
     <string name="user_confirm_remove_self_message" product="tablet" msgid="6880861846664267876">"Utapoteza nafasi na data yako kwenye kompyuta hii ndogo. Huwezi kutendua kitendo hiki."</string>
diff --git a/res-product/values-zh-rTW/strings.xml b/res-product/values-zh-rTW/strings.xml
index a79e172..c010c88 100644
--- a/res-product/values-zh-rTW/strings.xml
+++ b/res-product/values-zh-rTW/strings.xml
@@ -226,7 +226,7 @@
     <string name="wifi_add_app_networks_summary" product="default" msgid="7014504084783236696">"「<xliff:g id="APPNAME">%1$s</xliff:g>」想在你的手機中新增這些網路"</string>
     <string name="wifi_add_app_networks_summary" product="tablet" msgid="6433255556506891439">"「<xliff:g id="APPNAME">%1$s</xliff:g>」想在你的平板電腦中新增這些網路"</string>
     <string name="auto_rotate_screen_summary" product="default" msgid="5562937346878935483">"將手機從直向/橫向轉為另一個方向時，系統會自動調整螢幕方向"</string>
-    <string name="auto_rotate_screen_summary" product="tablet" msgid="3163709742477804994">"在你以直向或橫向模式使用平板電腦時，自動調整螢幕方向"</string>
+    <string name="auto_rotate_screen_summary" product="tablet" msgid="3163709742477804994">"隨著平板電腦轉為直向或橫向，自動調整螢幕方向"</string>
     <string name="sim_lock_on" product="tablet" msgid="227481196121403470">"需要 PIN 才能使用平板電腦"</string>
     <string name="sim_lock_on" product="default" msgid="6896034657274595838">"需要輸入 PIN 碼才能使用手機"</string>
     <string name="sim_lock_off" product="tablet" msgid="4619320846576958981">"需要 PIN 才能使用平板電腦"</string>
diff --git a/res-product/values/config.xml b/res-product/values/config.xml
index ba49418..86af614 100755
--- a/res-product/values/config.xml
+++ b/res-product/values/config.xml
@@ -19,9 +19,6 @@
     <item name="a11y_timeout_banner" type="raw" product="default">@raw/accessibility_timeout_banner</item>
     <item name="a11y_timeout_banner" type="raw" product="tablet">@raw/accessibility_timeout_banner_tablet</item>
 
-    <item name="a11y_shortcut_type_triple_tap" type="raw" product="default">@raw/accessibility_shortcut_type_triple_tap</item>
-    <item name="a11y_shortcut_type_triple_tap" type="raw" product="tablet">@raw/accessibility_shortcut_type_triple_tap_tablet</item>
-
     <item name="a11y_color_inversion_banner" type="raw" product="default">@raw/accessibility_color_inversion_banner</item>
     <item name="a11y_color_inversion_banner" type="raw" product="tablet">@raw/accessibility_color_inversion_banner_tablet</item>
 
diff --git a/res-product/values/drawables.xml b/res-product/values/drawables.xml
index 68b2115..01fbc32 100644
--- a/res-product/values/drawables.xml
+++ b/res-product/values/drawables.xml
@@ -14,45 +14,9 @@
      limitations under the License.
 -->
 <resources>
-    <drawable name="a11y_button_preview_large_floating_menu" product="default">@drawable/accessibility_button_preview_large_floating_menu</drawable>
-    <drawable name="a11y_button_preview_large_floating_menu" product="tablet">@drawable/accessibility_button_preview_large_floating_menu_tablet</drawable>
-
-    <drawable name="a11y_button_preview_small_floating_menu" product="default">@drawable/accessibility_button_preview_small_floating_menu</drawable>
-    <drawable name="a11y_button_preview_small_floating_menu" product="tablet">@drawable/accessibility_button_preview_small_floating_menu_tablet</drawable>
-
-    <drawable name="a11y_button_navigation" product="default">@drawable/accessibility_button_navigation</drawable>
-    <drawable name="a11y_button_navigation" product="tablet">@drawable/accessibility_button_navigation_tablet</drawable>
-
     <drawable name="a11y_captioning_banner" product="default">@drawable/accessibility_captioning_banner</drawable>
     <drawable name="a11y_captioning_banner" product="tablet">@drawable/accessibility_captioning_banner_tablet</drawable>
 
-    <drawable name="a11y_shortcut_type_hardware" product="default">@drawable/accessibility_shortcut_type_hardware</drawable>
-    <drawable name="a11y_shortcut_type_hardware" product="tablet">@drawable/accessibility_shortcut_type_hardware_tablet</drawable>
-
-    <drawable name="a11y_shortcut_type_software" product="default">@drawable/accessibility_shortcut_type_software</drawable>
-    <drawable name="a11y_shortcut_type_software" product="tablet">@drawable/accessibility_shortcut_type_software_tablet</drawable>
-
-    <drawable name="a11y_shortcut_type_software_floating" product="default">@drawable/accessibility_shortcut_type_software_floating</drawable>
-    <drawable name="a11y_shortcut_type_software_floating" product="tablet">@drawable/accessibility_shortcut_type_software_floating_tablet</drawable>
-
-    <drawable name="a11y_shortcut_type_software_gesture" product="default">@drawable/accessibility_shortcut_type_software_gesture</drawable>
-    <drawable name="a11y_shortcut_type_software_gesture" product="tablet">@drawable/accessibility_shortcut_type_software_gesture_tablet</drawable>
-
-    <drawable name="a11y_shortcut_type_software_gesture_talkback" product="default">@drawable/accessibility_shortcut_type_software_gesture_talkback</drawable>
-    <drawable name="a11y_shortcut_type_software_gesture_talkback" product="tablet">@drawable/accessibility_shortcut_type_software_gesture_talkback_tablet</drawable>
-
-    <drawable name="a11y_gesture_navigation_two_finger_preview" product="default">@drawable/accessibility_gesture_navigation_two_finger_preview</drawable>
-    <drawable name="a11y_gesture_navigation_two_finger_preview" product="tablet">@drawable/accessibility_gesture_navigation_two_finger_preview_tablet</drawable>
-
-    <drawable name="a11y_gesture_navigation_three_finger_preview" product="default">@drawable/accessibility_gesture_navigation_three_finger_preview</drawable>
-    <drawable name="a11y_gesture_navigation_three_finger_preview" product="tablet">@drawable/accessibility_gesture_navigation_three_finger_preview_tablet</drawable>
-
-    <drawable name="a11y_button_preview_two_finger" product="default">@drawable/accessibility_button_preview_two_finger</drawable>
-    <drawable name="a11y_button_preview_two_finger" product="tablet">@drawable/accessibility_button_preview_two_finger_tablet</drawable>
-
-    <drawable name="a11y_button_preview_three_finger" product="default">@drawable/accessibility_button_preview_three_finger</drawable>
-    <drawable name="a11y_button_preview_three_finger" product="tablet">@drawable/accessibility_button_preview_three_finger_tablet</drawable>
-
     <drawable name="a11y_magnification_mode_fullscreen" product="default">@drawable/accessibility_magnification_mode_fullscreen</drawable>
     <drawable name="a11y_magnification_mode_fullscreen" product="tablet">@drawable/accessibility_magnification_mode_fullscreen_tablet</drawable>
 
diff --git a/res/color/modes_icon_picker_item_background.xml b/res/color/modes_icon_selectable_background.xml
similarity index 100%
rename from res/color/modes_icon_picker_item_background.xml
rename to res/color/modes_icon_selectable_background.xml
diff --git a/res/color/modes_icon_picker_item_icon.xml b/res/color/modes_icon_selectable_icon.xml
similarity index 100%
rename from res/color/modes_icon_picker_item_icon.xml
rename to res/color/modes_icon_selectable_icon.xml
diff --git a/res/drawable-night/accessibility_button_navigation.xml b/res/drawable-night/accessibility_button_navigation.xml
deleted file mode 100644
index d6fd485..0000000
--- a/res/drawable-night/accessibility_button_navigation.xml
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2021 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.
--->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <path
-      android:fillColor="#FF000000"
-      android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5v-243C0,12.8 12.5,0 27.8,0h356.5C399.5,0 412,12.8 412,28.5v243.2C412,287.2 399.5,300 384.2,300z"/>
-  <path
-      android:pathData="M325.2,231.9c0,9.8 -7.9,17.7 -17.7,17.7H103.9c-9.8,0 -17.7,-7.9 -17.7,-17.7v-42.2h239V231.9z"
-      android:fillColor="#3D4043"/>
-  <path
-      android:pathData="M269.7,205.2c1.5,0 2.7,1.2 2.7,2.7s-1.2,2.7 -2.7,2.7c-1.5,0 -2.7,-1.2 -2.7,-2.7S268.2,205.2 269.7,205.2zM273.8,214.7v17.6H271v-8.1h-2.7v8.1h-2.7v-17.6c-2.7,-0.2 -5.6,-0.7 -8.1,-1.4l0.7,-2.7c3.5,0.9 7.7,1.4 11.5,1.4c3.8,0 8,-0.4 11.5,-1.4l0.7,2.7C279.4,214 276.5,214.5 273.8,214.7z"
-      android:fillColor="#FFFFFF"/>
-  <path
-      android:pathData="M205.7,219.7m-9.4,0a9.4,9.4 0,1 1,18.8 0a9.4,9.4 0,1 1,-18.8 0"
-      android:fillColor="#808589"/>
-  <path
-      android:pathData="M132.1,219.7l16,9.2l0,-18.5z"
-      android:fillColor="#808589"/>
-  <path
-      android:pathData="M325.4,231.9c0,9.8 -7.9,17.7 -17.7,17.7H103.9c-9.8,0 -17.7,-7.9 -17.7,-17.7V0h-4.4v231.9c0,12.2 9.9,22.2 22.1,22.2h203.8c12.2,0 22.1,-9.9 22.1,-22.2V14.8c2.4,0 4.4,-2 4.4,-4.4V0h-8.9V231.9z"
-      android:fillColor="#808589"/>
-  <path
-      android:pathData="M269.7,255.3c-19.6,0 -35.6,-16 -35.6,-35.6s16,-35.6 35.6,-35.6s35.6,16 35.6,35.6S289.3,255.3 269.7,255.3zM269.7,187.1c-17.9,0 -32.5,14.6 -32.5,32.5c0,17.9 14.6,32.5 32.5,32.5s32.5,-14.6 32.5,-32.5C302.2,201.7 287.6,187.1 269.7,187.1z"
-      android:fillColor="#729CEE"/>
-</vector>
diff --git a/res/drawable-night/accessibility_button_navigation_tablet.xml b/res/drawable-night/accessibility_button_navigation_tablet.xml
deleted file mode 100644
index d92b144..0000000
--- a/res/drawable-night/accessibility_button_navigation_tablet.xml
+++ /dev/null
@@ -1,54 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2023 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.
--->
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <path
-      android:pathData="M28,0L384,0A28,28 0,0 1,412 28L412,272A28,28 0,0 1,384 300L28,300A28,28 0,0 1,0 272L0,28A28,28 0,0 1,28 0z"
-      android:fillColor="#000000"/>
-  <group>
-    <clip-path
-        android:pathData="M62.23,50.19L349.77,50.19A16,16 0,0 1,365.77 66.19L365.77,236.14A16,16 0,0 1,349.77 252.14L62.23,252.14A16,16 0,0 1,46.23 236.14L46.23,66.19A16,16 0,0 1,62.23 50.19z"/>
-    <path
-        android:pathData="M46.23,204.14h320v48h-320z"
-        android:fillColor="#3D4043"/>
-    <path
-        android:pathData="M268.93,214.14C270.43,214.14 271.63,215.34 271.63,216.84C271.63,218.34 270.43,219.54 268.93,219.54C267.43,219.54 266.23,218.34 266.23,216.84C266.23,215.34 267.43,214.14 268.93,214.14ZM273.03,223.64V241.24H270.23V233.14H267.53V241.24H264.83V223.64C262.13,223.44 259.23,222.94 256.73,222.24L257.43,219.54C260.93,220.44 265.13,220.94 268.93,220.94C272.73,220.94 276.93,220.54 280.43,219.54L281.13,222.24C278.63,222.94 275.73,223.44 273.03,223.64Z"
-        android:fillColor="#ffffff"/>
-    <path
-        android:pathData="M206.23,238.04C211.42,238.04 215.63,233.83 215.63,228.64C215.63,223.45 211.42,219.24 206.23,219.24C201.04,219.24 196.83,223.45 196.83,228.64C196.83,233.83 201.04,238.04 206.23,238.04Z"
-        android:fillColor="#808589"/>
-    <path
-        android:pathData="M131.33,228.64L147.33,237.84V219.34L131.33,228.64Z"
-        android:fillColor="#808589"/>
-  </group>
-  <path
-      android:pathData="M62.23,51.69L349.77,51.69A14.5,14.5 0,0 1,364.27 66.19L364.27,236.14A14.5,14.5 0,0 1,349.77 250.64L62.23,250.64A14.5,14.5 0,0 1,47.73 236.14L47.73,66.19A14.5,14.5 0,0 1,62.23 51.69z"
-      android:strokeWidth="3"
-      android:fillColor="#00000000"
-      android:strokeColor="#80868B"/>
-  <path
-      android:pathData="M311.45,50.35C311.45,48.98 312.56,47.87 313.92,47.87L322.84,47.87C324.2,47.87 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
-      android:fillColor="#80868B"/>
-  <path
-      android:pathData="M263.59,50.35C263.59,48.98 264.7,47.87 266.06,47.87L287.85,47.87C289.22,47.87 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
-      android:fillColor="#80868B"/>
-  <path
-      android:pathData="M268.93,259.69C251.31,259.69 236.93,245.3 236.93,227.69C236.93,210.07 251.31,195.69 268.93,195.69C286.55,195.69 300.93,210.07 300.93,227.69C300.93,245.3 286.55,259.69 268.93,259.69ZM268.93,198.38C252.84,198.38 239.72,211.51 239.72,227.6C239.72,243.69 252.84,256.81 268.93,256.81C285.02,256.81 298.14,243.69 298.14,227.6C298.14,211.51 285.02,198.38 268.93,198.38Z"
-      android:fillColor="#729CEE"/>
-</vector>
\ No newline at end of file
diff --git a/res/drawable-night/accessibility_button_preview_large_floating_menu.xml b/res/drawable-night/accessibility_button_preview_large_floating_menu.xml
deleted file mode 100644
index 74ecbfc..0000000
--- a/res/drawable-night/accessibility_button_preview_large_floating_menu.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2021 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.
--->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-    <path
-        android:pathData="M325.4,198.2h-40.9c-22.1,0 -40,-18 -40,-40s18,-40 40,-40h40.9v2.6h-40.9c-20.7,0 -37.5,16.8 -37.5,37.5s16.8,37.5 37.5,37.5h40.9V198.2z"
-        android:fillColor="#808589"/>
-    <path
-        android:pathData="M284.3,128.4c-16.5,0 -29.8,13.4 -29.8,29.8c0,16.5 13.4,29.8 29.8,29.8s29.8,-13.4 29.8,-29.8C314.2,141.7 300.9,128.4 284.3,128.4zM284.3,142.7c1.7,0 3.1,1.4 3.1,3.1c0,1.7 -1.4,3.1 -3.1,3.1s-3.1,-1.4 -3.1,-3.1C281.2,144.1 282.7,142.7 284.3,142.7zM289.1,153.7V174H286v-9.4h-3.1v9.4h-3.2v-20.3c-3.1,-0.3 -6.5,-0.8 -9.4,-1.5l0.8,-3.1c4.1,1 8.9,1.5 13.3,1.5s9.2,-0.5 13.3,-1.5l0.8,3.1C295.6,152.9 292.2,153.4 289.1,153.7z"
-        android:fillColor="#D9DBDF"/>
-</vector>
diff --git a/res/drawable-night/accessibility_button_preview_large_floating_menu_tablet.xml b/res/drawable-night/accessibility_button_preview_large_floating_menu_tablet.xml
deleted file mode 100644
index 426403f..0000000
--- a/res/drawable-night/accessibility_button_preview_large_floating_menu_tablet.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <path
-      android:pathData="M365.76,226.17h-27.68c-14.95,0 -27.07,-12.18 -27.07,-27.07s12.18,-27.07 27.07,-27.07h27.68v1.76h-27.68c-14.01,0 -25.37,11.37 -25.37,25.37s11.37,25.37 25.37,25.37h27.68v1.62Z"
-      android:fillColor="#80868b"/>
-  <path
-      android:pathData="M337.95,178.94c-11.16,0 -20.16,9.07 -20.16,20.16 0,11.16 9.07,20.16 20.16,20.16s20.16,-9.07 20.16,-20.16c0.07,-11.16 -8.93,-20.16 -20.16,-20.16ZM337.95,188.62c1.15,0 2.1,0.95 2.1,2.1 0,1.15 -0.95,2.1 -2.1,2.1s-2.1,-0.95 -2.1,-2.1c0,-1.15 1.02,-2.1 2.1,-2.1ZM341.2,196.06v13.74h-2.1v-6.36h-2.1v6.36h-2.17v-13.74c-2.1,-0.2 -4.4,-0.54 -6.36,-1.01l0.54,-2.1c2.77,0.68 6.02,1.01 9,1.01s6.23,-0.34 9,-1.01l0.54,2.1c-1.96,0.47 -4.26,0.81 -6.36,1.01Z"
-      android:fillColor="#d9dbdf"/>
-</vector>
diff --git a/res/drawable-night/accessibility_button_preview_small_floating_menu.xml b/res/drawable-night/accessibility_button_preview_small_floating_menu.xml
deleted file mode 100644
index 4226086..0000000
--- a/res/drawable-night/accessibility_button_preview_small_floating_menu.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2021 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.
--->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-    <path
-        android:pathData="M325.4,189.2h-31.7c-17.1,0 -31,-13.9 -31,-31s13.9,-31 31,-31h31.7v2h-31.7c-16,0 -29,13 -29,29s13,29 29,29h31.7V189.2z"
-        android:fillColor="#808589"/>
-    <path
-        android:pathData="M293.6,135.1c-12.8,0 -23.1,10.4 -23.1,23.1c0,12.8 10.4,23.1 23.1,23.1s23.1,-10.4 23.1,-23.1C316.7,145.4 306.4,135.1 293.6,135.1zM293.6,146.2c1.3,0 2.4,1.1 2.4,2.4s-1.1,2.4 -2.4,2.4s-2.4,-1.1 -2.4,-2.4S292.3,146.2 293.6,146.2zM297.3,154.7v15.7h-2.4v-7.3h-2.4v7.3H290v-15.7c-2.4,-0.2 -5,-0.6 -7.3,-1.2l0.6,-2.4c3.2,0.8 6.9,1.2 10.3,1.2s7.1,-0.4 10.3,-1.2l0.6,2.4C302.3,154.1 299.7,154.5 297.3,154.7z"
-        android:fillColor="#D9DBDF"/>
-</vector>
diff --git a/res/drawable-night/accessibility_button_preview_small_floating_menu_tablet.xml b/res/drawable-night/accessibility_button_preview_small_floating_menu_tablet.xml
deleted file mode 100644
index b738d8f..0000000
--- a/res/drawable-night/accessibility_button_preview_small_floating_menu_tablet.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <path
-      android:pathData="M365.88,219.24h-20.7c-5.38,0 -10.43,-2.09 -14.23,-5.9s-5.9,-8.86 -5.9,-14.23c0,-5.38 2.09,-10.43 5.9,-14.24 3.8,-3.8 8.86,-5.9 14.23,-5.9h20.7v1h-20.7c-5.11,0 -9.91,1.99 -13.53,5.6s-5.6,8.42 -5.6,13.53c0,5.11 1.99,9.91 5.6,13.53s8.42,5.6 13.53,5.6h20.7v1Z"
-      android:fillColor="#80868b"/>
-  <path
-      android:pathData="M345.19,184c-2.99,-0 -5.91,0.88 -8.4,2.54 -2.49,1.66 -4.43,4.02 -5.57,6.78s-1.45,5.8 -0.86,8.73c0.58,2.93 2.02,5.63 4.13,7.74 2.11,2.11 4.81,3.55 7.74,4.14 2.93,0.58 5.97,0.29 8.73,-0.86 2.76,-1.14 5.12,-3.08 6.78,-5.57 1.66,-2.49 2.55,-5.41 2.55,-8.4 0,-4.01 -1.59,-7.85 -4.42,-10.68 -2.83,-2.83 -6.67,-4.43 -10.68,-4.43ZM345.19,191.28c0.4,0.03 0.77,0.21 1.04,0.51 0.27,0.29 0.42,0.68 0.42,1.08 0,0.4 -0.15,0.79 -0.42,1.08 -0.27,0.29 -0.64,0.47 -1.04,0.51 -0.22,0.02 -0.44,-0.01 -0.65,-0.08 -0.21,-0.07 -0.4,-0.19 -0.56,-0.33 -0.16,-0.15 -0.29,-0.33 -0.38,-0.53 -0.09,-0.2 -0.13,-0.42 -0.13,-0.64 0,-0.22 0.05,-0.44 0.13,-0.64 0.09,-0.2 0.22,-0.38 0.38,-0.53 0.16,-0.15 0.35,-0.26 0.56,-0.33 0.21,-0.07 0.43,-0.1 0.65,-0.08ZM347.56,196.82v10.29h-1.58v-4.76h-1.59v4.75h-1.58v-10.28c-1.6,-0.12 -3.19,-0.39 -4.75,-0.79l0.4,-1.58c4.42,1.05 9.04,1.05 13.46,0l0.39,1.58c-1.57,0.41 -3.17,0.67 -4.79,0.79h0.04Z"
-      android:fillColor="#dadce0"/>
-</vector>
diff --git a/res/drawable-night/accessibility_button_preview_three_finger.xml b/res/drawable-night/accessibility_button_preview_three_finger.xml
deleted file mode 100644
index 7afb0f7..0000000
--- a/res/drawable-night/accessibility_button_preview_three_finger.xml
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2021 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.
--->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <path
-      android:fillColor="#FF000000"
-      android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5v-243C0,12.8 12.5,0 27.8,0h356.5C399.5,0 412,12.8 412,28.5v243.2C412,287.2 399.5,300 384.2,300z"/>
-  <path
-      android:pathData="M242.5,226.9h-73.3c-1.7,0 -3.1,1.4 -3.1,3.1s1.4,3.1 3.1,3.1h73.3c1.7,0 3.1,-1.4 3.1,-3.1S244.2,226.9 242.5,226.9z"
-      android:fillColor="#80868B"/>
-  <path
-      android:pathData="M182.7,222.6v-17.5h7.5l-10.6,-18.7l-10.6,18.7h7.5v17.5c-2.9,1.2 -4.9,4 -4.9,7.4c0,4.4 3.5,8 8,8c4.4,0 8,-3.5 8,-8C187.6,226.7 185.6,223.8 182.7,222.6z"
-      android:fillColor="#669DF6"/>
-  <path
-      android:pathData="M209,222.6v-17.5h7.5l-10.6,-18.7l-10.6,18.7h7.5v17.5c-2.9,1.2 -4.9,4 -4.9,7.4c0,4.4 3.5,8 8,8c4.4,0 8,-3.5 8,-8C213.9,226.7 211.9,223.8 209,222.6z"
-      android:fillColor="#669DF6"/>
-  <path
-      android:pathData="M235.2,222.6v-17.5h7.5l-10.6,-18.7l-10.6,18.7h7.5v17.5c-2.9,1.2 -4.9,4 -4.9,7.4c0,4.4 3.5,8 8,8c4.4,0 8,-3.5 8,-8C240,226.7 238,223.8 235.2,222.6z"
-      android:fillColor="#669DF6"/>
-  <path
-      android:pathData="M325.4,231.9c0,9.8 -7.9,17.7 -17.7,17.7H103.9c-9.8,0 -17.7,-7.9 -17.7,-17.7V0h-4.4v231.9c0,12.2 9.9,22.2 22.1,22.2h203.8c12.2,0 22.1,-9.9 22.1,-22.2V14.8c2.4,0 4.4,-2 4.4,-4.4V0h-8.9V231.9z"
-      android:fillColor="#80868B"/>
-</vector>
diff --git a/res/drawable-night/accessibility_button_preview_three_finger_tablet.xml b/res/drawable-night/accessibility_button_preview_three_finger_tablet.xml
deleted file mode 100644
index 5a0925c..0000000
--- a/res/drawable-night/accessibility_button_preview_three_finger_tablet.xml
+++ /dev/null
@@ -1,33 +0,0 @@
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <group>
-    <clip-path
-        android:pathData="M0,0h412v300h-412z"/>
-    <path
-        android:pathData="M263.59,50.35C263.59,48.98 264.7,47.86 266.06,47.86L287.85,47.86C289.22,47.86 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
-        android:fillColor="#80868B"/>
-    <path
-        android:pathData="M364.52,66.19L364.52,236.14A14.75,14.75 0,0 1,349.77 250.89L62.23,250.89A14.75,14.75 0,0 1,47.48 236.14L47.48,66.19A14.75,14.75 0,0 1,62.23 51.44L349.77,51.44A14.75,14.75 0,0 1,364.52 66.19z"
-        android:strokeWidth="2.5"
-        android:fillColor="#000000"
-        android:strokeColor="#80868B"/>
-    <path
-        android:pathData="M311.45,50.35C311.45,48.98 312.56,47.86 313.92,47.86L322.84,47.86C324.2,47.86 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
-        android:fillColor="#80868B"/>
-    <path
-        android:pathData="M170.9,232.14L241.9,232.14A2,2 0,0 1,243.9 234.14L243.9,234.14A2,2 0,0 1,241.9 236.14L170.9,236.14A2,2 0,0 1,168.9 234.14L168.9,234.14A2,2 0,0 1,170.9 232.14z"
-        android:fillColor="#80868B"/>
-    <path
-        android:pathData="M188.7,229.14V217.74H193.6L186.7,205.54L179.8,217.74H184.7V229.14C182.8,229.94 181.5,231.74 181.5,233.94C181.5,236.84 183.8,239.14 186.7,239.14C189.6,239.14 191.9,236.84 191.9,233.94C191.9,231.84 190.5,229.94 188.7,229.14Z"
-        android:fillColor="#669DF6"/>
-    <path
-        android:pathData="M208,229.14V217.74H212.9L206,205.54L199.1,217.74H204V229.14C202.1,229.94 200.8,231.74 200.8,233.94C200.8,236.84 203.1,239.14 206,239.14C208.9,239.14 211.2,236.84 211.2,233.94C211.2,231.84 209.9,229.94 208,229.14Z"
-        android:fillColor="#669DF6"/>
-    <path
-        android:pathData="M227.29,229.14V217.74H232.2L225.29,205.54L218.4,217.74H223.29V229.14C221.4,229.94 220.1,231.74 220.1,233.94C220.1,236.84 222.4,239.14 225.29,239.14C228.2,239.14 230.49,236.84 230.49,233.94C230.49,231.84 229.2,229.94 227.29,229.14Z"
-        android:fillColor="#669DF6"/>
-  </group>
-</vector>
diff --git a/res/drawable-night/accessibility_button_preview_two_finger.xml b/res/drawable-night/accessibility_button_preview_two_finger.xml
deleted file mode 100644
index 05871d9..0000000
--- a/res/drawable-night/accessibility_button_preview_two_finger.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2021 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.
--->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <path
-      android:fillColor="#FF000000"
-      android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5v-243C0,12.8 12.5,0 27.8,0h356.5C399.5,0 412,12.8 412,28.5v243.2C412,287.2 399.5,300 384.2,300z"/>
-  <path
-      android:pathData="M325.4,231.9c0,9.8 -7.9,17.7 -17.7,17.7H103.9c-9.8,0 -17.7,-7.9 -17.7,-17.7V0h-4.4v231.9c0,12.2 9.9,22.2 22.1,22.2h203.8c12.2,0 22.1,-9.9 22.1,-22.2V14.8c2.4,0 4.4,-2 4.4,-4.4V0h-8.9V231.9z"
-      android:fillColor="#80868B"/>
-  <path
-      android:pathData="M242.4,226.9h-9.3h-5.6h-43.4h-4.7h-10.2c-1.7,0 -3.1,1.4 -3.1,3.1s1.4,3.1 3.1,3.1h10.2h3.9h45h4.8h9.3c1.7,0 3.1,-1.4 3.1,-3.1S244.1,226.9 242.4,226.9z"
-      android:fillColor="#80868B"/>
-  <path
-      android:pathData="M194,223.5v-17.5h7.5l-10.6,-18.7l-10.6,18.7h7.5v17.5c-1.6,0.7 -2.9,1.9 -3.8,3.4c-0.7,1.2 -1.1,2.5 -1.1,4c0,0.7 0.1,1.5 0.3,2.2c0.9,3.3 4,5.8 7.7,5.8c3.6,0 6.7,-2.5 7.7,-5.8c0.2,-0.7 0.3,-1.4 0.3,-2.2c0,-1.5 -0.4,-2.8 -1.1,-4C197,225.4 195.6,224.2 194,223.5z"
-      android:fillColor="#669DF6"/>
-  <path
-      android:pathData="M223.7,223.5v-17.5h7.5l-10.6,-18.7l-10.6,18.7h7.5v17.5c-1.6,0.7 -2.9,1.9 -3.8,3.4c-0.7,1.2 -1.1,2.5 -1.1,4c0,0.7 0.1,1.5 0.3,2.2c0.9,3.3 4,5.8 7.7,5.8c3.6,0 6.7,-2.5 7.7,-5.8c0.2,-0.7 0.3,-1.4 0.3,-2.2c0,-1.5 -0.4,-2.8 -1.1,-4C226.6,225.4 225.3,224.2 223.7,223.5z"
-      android:fillColor="#669DF6"/>
-</vector>
diff --git a/res/drawable-night/accessibility_button_preview_two_finger_tablet.xml b/res/drawable-night/accessibility_button_preview_two_finger_tablet.xml
deleted file mode 100644
index ba9c771..0000000
--- a/res/drawable-night/accessibility_button_preview_two_finger_tablet.xml
+++ /dev/null
@@ -1,30 +0,0 @@
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <group>
-    <clip-path
-        android:pathData="M0,0h412v300h-412z"/>
-    <path
-        android:pathData="M263.59,50.35C263.59,48.98 264.7,47.86 266.06,47.86L287.85,47.86C289.22,47.86 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
-        android:fillColor="#80868B"/>
-    <path
-        android:pathData="M364.52,66.19L364.52,236.14A14.75,14.75 0,0 1,349.77 250.89L62.23,250.89A14.75,14.75 0,0 1,47.48 236.14L47.48,66.19A14.75,14.75 0,0 1,62.23 51.44L349.77,51.44A14.75,14.75 0,0 1,364.52 66.19z"
-        android:strokeWidth="2.5"
-        android:fillColor="#000000"
-        android:strokeColor="#80868B"/>
-    <path
-        android:pathData="M311.45,50.35C311.45,48.98 312.56,47.86 313.92,47.86L322.84,47.86C324.2,47.86 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
-        android:fillColor="#80868B"/>
-    <path
-        android:pathData="M170.9,232.14L241.9,232.14A2,2 0,0 1,243.9 234.14L243.9,234.14A2,2 0,0 1,241.9 236.14L170.9,236.14A2,2 0,0 1,168.9 234.14L168.9,234.14A2,2 0,0 1,170.9 232.14z"
-        android:fillColor="#80868B"/>
-    <path
-        android:pathData="M198.35,229.14V217.74H203.25L196.35,205.54L189.45,217.74H194.35V229.14C192.45,229.94 191.15,231.74 191.15,233.94C191.15,236.84 193.45,239.14 196.35,239.14C199.25,239.14 201.55,236.84 201.55,233.94C201.55,231.84 200.15,229.94 198.35,229.14Z"
-        android:fillColor="#669DF6"/>
-    <path
-        android:pathData="M217.65,229.14V217.74H222.55L215.65,205.54L208.75,217.74H213.65V229.14C211.75,229.94 210.45,231.74 210.45,233.94C210.45,236.84 212.75,239.14 215.65,239.14C218.55,239.14 220.85,236.84 220.85,233.94C220.85,231.84 219.55,229.94 217.65,229.14Z"
-        android:fillColor="#669DF6"/>
-  </group>
-</vector>
diff --git a/res/drawable-night/accessibility_gesture_navigation_three_finger_preview.xml b/res/drawable-night/accessibility_gesture_navigation_three_finger_preview.xml
deleted file mode 100644
index 593c3af..0000000
--- a/res/drawable-night/accessibility_gesture_navigation_three_finger_preview.xml
+++ /dev/null
@@ -1,71 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2021 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.
--->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:aapt="http://schemas.android.com/aapt"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <path
-      android:fillColor="#FF000000"
-      android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5v-243C0,12.8 12.5,0 27.8,0h356.5C399.5,0 412,12.8 412,28.5v243.2C412,287.2 399.5,300 384.2,300z"/>
-  <path
-      android:pathData="M274.9,97.7v-9.5c0,-1.3 -1.1,-2.4 -2.4,-2.4V35.9c0,-6.6 -5.3,-11.9 -11.9,-11.9H151.3c-6.6,0 -11.9,5.3 -11.9,11.9v228.2c0,6.6 5.3,11.9 11.9,11.9h109.4c6.6,0 11.9,-5.3 11.9,-11.9V147.6c1.3,0 2.4,-1.1 2.4,-2.4v-23.8c0,-1.3 -1.1,-2.4 -2.4,-2.4v-19C273.9,100.1 274.9,99 274.9,97.7zM270.2,264.1c0,5.2 -4.3,9.5 -9.5,9.5H151.3c-5.2,0 -9.5,-4.3 -9.5,-9.5V35.9c0,-5.2 4.3,-9.5 9.5,-9.5h109.4c5.2,0 9.5,4.3 9.5,9.5V264.1z"
-      android:fillColor="#80868B"/>
-  <path
-      android:pathData="M176.7,209.6c-3.7,0 -6.6,3 -6.6,6.6v24.6h13.3v-24.6C183.4,212.6 180.4,209.6 176.7,209.6z">
-    <aapt:attr name="android:fillColor">
-      <gradient
-          android:startY="240.8954"
-          android:startX="176.75"
-          android:endY="209.6335"
-          android:endX="176.75"
-          android:type="linear">
-        <item android:offset="0" android:color="#00669DF6"/>
-        <item android:offset="0.695" android:color="#FF669DF6"/>
-      </gradient>
-    </aapt:attr>
-  </path>
-  <path
-      android:pathData="M206,209.6c-3.7,0 -6.6,3 -6.6,6.6v24.6h13.3v-24.6C212.6,212.6 209.7,209.6 206,209.6z">
-    <aapt:attr name="android:fillColor">
-      <gradient
-          android:startY="240.8954"
-          android:startX="206.05"
-          android:endY="209.6335"
-          android:endX="206.05"
-          android:type="linear">
-        <item android:offset="0" android:color="#00669DF6"/>
-        <item android:offset="0.695" android:color="#FF669DF6"/>
-      </gradient>
-    </aapt:attr>
-  </path>
-  <path
-      android:pathData="M235.3,209.6c-3.7,0 -6.6,3 -6.6,6.6v24.6H242v-24.6C241.9,212.6 239,209.6 235.3,209.6z">
-    <aapt:attr name="android:fillColor">
-      <gradient
-          android:startY="240.8954"
-          android:startX="235.35"
-          android:endY="209.6335"
-          android:endX="235.35"
-          android:type="linear">
-        <item android:offset="0" android:color="#00669DF6"/>
-        <item android:offset="0.695" android:color="#FF669DF6"/>
-      </gradient>
-    </aapt:attr>
-  </path>
-</vector>
diff --git a/res/drawable-night/accessibility_gesture_navigation_three_finger_preview_tablet.xml b/res/drawable-night/accessibility_gesture_navigation_three_finger_preview_tablet.xml
deleted file mode 100644
index 1710fa4..0000000
--- a/res/drawable-night/accessibility_gesture_navigation_three_finger_preview_tablet.xml
+++ /dev/null
@@ -1,80 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2023 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.
--->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:aapt="http://schemas.android.com/aapt"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <group>
-    <clip-path
-        android:pathData="M0,0h412v300h-412z"/>
-    <path
-        android:pathData="M263.59,50.35C263.59,48.98 264.7,47.86 266.06,47.86L287.85,47.86C289.22,47.86 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
-        android:fillColor="#80868B"/>
-    <path
-        android:pathData="M364.52,66.19L364.52,236.14A14.75,14.75 0,0 1,349.77 250.89L62.23,250.89A14.75,14.75 0,0 1,47.48 236.14L47.48,66.19A14.75,14.75 0,0 1,62.23 51.44L349.77,51.44A14.75,14.75 0,0 1,364.52 66.19z"
-        android:strokeWidth="2.5"
-        android:fillColor="#000000"
-        android:strokeColor="#80868B"/>
-    <path
-        android:pathData="M311.45,50.35C311.45,48.98 312.56,47.86 313.92,47.86L322.84,47.86C324.2,47.86 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
-        android:fillColor="#80868B"/>
-    <path
-        android:pathData="M176.84,188.94C173.14,188.94 170.24,191.94 170.24,195.54V220.14H183.54V195.54C183.54,191.94 180.54,188.94 176.84,188.94Z">
-      <aapt:attr name="android:fillColor">
-        <gradient
-            android:startX="176.89"
-            android:startY="220.23"
-            android:endX="176.89"
-            android:endY="188.97"
-            android:type="linear">
-          <item android:offset="0" android:color="#00669DF6"/>
-          <item android:offset="0.69" android:color="#FF669DF6"/>
-        </gradient>
-      </aapt:attr>
-    </path>
-    <path
-        android:pathData="M206.14,188.94C202.44,188.94 199.54,191.94 199.54,195.54V220.14H212.84V195.54C212.74,191.94 209.84,188.94 206.14,188.94Z">
-      <aapt:attr name="android:fillColor">
-        <gradient
-            android:startX="206.19"
-            android:startY="220.23"
-            android:endX="206.19"
-            android:endY="188.97"
-            android:type="linear">
-          <item android:offset="0" android:color="#00669DF6"/>
-          <item android:offset="0.69" android:color="#FF669DF6"/>
-        </gradient>
-      </aapt:attr>
-    </path>
-    <path
-        android:pathData="M235.44,188.94C231.74,188.94 228.84,191.94 228.84,195.54V220.14H242.14V195.54C242.04,191.94 239.14,188.94 235.44,188.94Z">
-      <aapt:attr name="android:fillColor">
-        <gradient
-            android:startX="235.49"
-            android:startY="220.23"
-            android:endX="235.49"
-            android:endY="188.97"
-            android:type="linear">
-          <item android:offset="0" android:color="#00669DF6"/>
-          <item android:offset="0.69" android:color="#FF669DF6"/>
-        </gradient>
-      </aapt:attr>
-    </path>
-  </group>
-</vector>
diff --git a/res/drawable-night/accessibility_gesture_navigation_two_finger_preview.xml b/res/drawable-night/accessibility_gesture_navigation_two_finger_preview.xml
deleted file mode 100644
index c95523b..0000000
--- a/res/drawable-night/accessibility_gesture_navigation_two_finger_preview.xml
+++ /dev/null
@@ -1,57 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2021 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.
--->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:aapt="http://schemas.android.com/aapt"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <path
-      android:fillColor="#FF000000"
-      android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5v-243C0,12.8 12.5,0 27.8,0h356.5C399.5,0 412,12.8 412,28.5v243.2C412,287.2 399.5,300 384.2,300z"/>
-  <path
-      android:pathData="M274.9,97.7v-9.5c0,-1.3 -1.1,-2.4 -2.4,-2.4V35.9c0,-6.6 -5.3,-11.9 -11.9,-11.9H151.3c-6.6,0 -11.9,5.3 -11.9,11.9v228.2c0,6.6 5.3,11.9 11.9,11.9h109.4c6.6,0 11.9,-5.3 11.9,-11.9V147.6c1.3,0 2.4,-1.1 2.4,-2.4v-23.8c0,-1.3 -1.1,-2.4 -2.4,-2.4v-19C273.9,100.1 274.9,99 274.9,97.7zM270.2,264.1c0,5.2 -4.3,9.5 -9.5,9.5H151.3c-5.2,0 -9.5,-4.3 -9.5,-9.5V35.9c0,-5.2 4.3,-9.5 9.5,-9.5h109.4c5.2,0 9.5,4.3 9.5,9.5V264.1z"
-      android:fillColor="#80868B"/>
-  <path
-      android:pathData="M188.6,209.6c-3.7,0 -6.6,3 -6.6,6.6v24.6h13.3v-24.6C195.3,212.6 192.3,209.6 188.6,209.6z">
-    <aapt:attr name="android:fillColor">
-      <gradient
-          android:startY="240.8954"
-          android:startX="188.65"
-          android:endY="209.6335"
-          android:endX="188.65"
-          android:type="linear">
-        <item android:offset="0" android:color="#00669DF6"/>
-        <item android:offset="0.695" android:color="#FF669DF6"/>
-      </gradient>
-    </aapt:attr>
-  </path>
-  <path
-      android:pathData="M223.4,209.6c-3.7,0 -6.6,3 -6.6,6.6v24.6H230v-24.6C230,212.6 227.1,209.6 223.4,209.6z">
-    <aapt:attr name="android:fillColor">
-      <gradient
-          android:startY="240.8954"
-          android:startX="223.4"
-          android:endY="209.6335"
-          android:endX="223.4"
-          android:type="linear">
-        <item android:offset="0" android:color="#00669DF6"/>
-        <item android:offset="0.695" android:color="#FF669DF6"/>
-      </gradient>
-    </aapt:attr>
-  </path>
-</vector>
diff --git a/res/drawable-night/accessibility_gesture_navigation_two_finger_preview_tablet.xml b/res/drawable-night/accessibility_gesture_navigation_two_finger_preview_tablet.xml
deleted file mode 100644
index 7a5cc48..0000000
--- a/res/drawable-night/accessibility_gesture_navigation_two_finger_preview_tablet.xml
+++ /dev/null
@@ -1,66 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2023 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.
--->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:aapt="http://schemas.android.com/aapt"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <group>
-    <clip-path
-        android:pathData="M0,0h412v300h-412z"/>
-    <path
-        android:pathData="M263.59,50.35C263.59,48.98 264.7,47.86 266.06,47.86L287.85,47.86C289.22,47.86 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
-        android:fillColor="#80868B"/>
-    <path
-        android:pathData="M364.52,66.19L364.52,236.14A14.75,14.75 0,0 1,349.77 250.89L62.23,250.89A14.75,14.75 0,0 1,47.48 236.14L47.48,66.19A14.75,14.75 0,0 1,62.23 51.44L349.77,51.44A14.75,14.75 0,0 1,364.52 66.19z"
-        android:strokeWidth="2.5"
-        android:fillColor="#000000"
-        android:strokeColor="#80868B"/>
-    <path
-        android:pathData="M311.45,50.35C311.45,48.98 312.56,47.86 313.92,47.86L322.84,47.86C324.2,47.86 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
-        android:fillColor="#80868B"/>
-    <path
-        android:pathData="M188.15,188.94C184.45,188.94 181.55,191.94 181.55,195.54V220.14H194.85V195.54C194.85,191.94 191.85,188.94 188.15,188.94Z">
-      <aapt:attr name="android:fillColor">
-        <gradient
-            android:startX="188.2"
-            android:startY="220.23"
-            android:endX="188.2"
-            android:endY="188.97"
-            android:type="linear">
-          <item android:offset="0" android:color="#00669DF6"/>
-          <item android:offset="0.69" android:color="#FF669DF6"/>
-        </gradient>
-      </aapt:attr>
-    </path>
-    <path
-        android:pathData="M222.95,188.94C219.25,188.94 216.35,191.94 216.35,195.54V220.14H229.55V195.54C229.55,191.94 226.65,188.94 222.95,188.94Z">
-      <aapt:attr name="android:fillColor">
-        <gradient
-            android:startX="222.95"
-            android:startY="220.23"
-            android:endX="222.95"
-            android:endY="188.97"
-            android:type="linear">
-          <item android:offset="0" android:color="#00669DF6"/>
-          <item android:offset="0.69" android:color="#FF669DF6"/>
-        </gradient>
-      </aapt:attr>
-    </path>
-  </group>
-</vector>
diff --git a/res/drawable-night/accessibility_shortcut_type_hardware.xml b/res/drawable-night/accessibility_shortcut_type_hardware.xml
deleted file mode 100644
index 9ef3664..0000000
--- a/res/drawable-night/accessibility_shortcut_type_hardware.xml
+++ /dev/null
@@ -1,46 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2021 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.
--->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <path
-      android:fillColor="#FF000000"
-      android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5v-243C0,12.8 12.5,0 27.8,0h356.5C399.5,0 412,12.8 412,28.5v243.2C412,287.2 399.5,300 384.2,300z"/>
-  <path
-      android:pathData="M206.1,19.1c35,0 67.9,13.6 92.6,38.4C323.4,82.1 337,115 337,150s-13.6,67.9 -38.4,92.6C273.9,267.3 241,281 206,281s-67.9,-13.6 -92.6,-38.4C88.8,217.9 75.1,185 75.1,150s13.6,-67.9 38.4,-92.6S171.1,19.1 206.1,19.1M206.1,17.1c-73.4,0 -133,59.5 -133,132.9S132.6,282.9 206,282.9s133,-59.5 133,-132.9S279.5,17.1 206.1,17.1L206.1,17.1z"
-      android:fillColor="#3C4043"/>
-  <path
-      android:pathData="M287,187.8v-1.5h2.9v-13.7c0,-1.6 -1.3,-2.9 -2.9,-2.9v-23.2c1.6,0 2.9,-1.3 2.9,-2.9V132c0,-1.6 -1.3,-2.9 -2.9,-2.9V68.4c0,-8 -6.5,-14.5 -14.5,-14.5H139.4c-8,0 -14.5,6.5 -14.5,14.5v185.3c1,0.7 1.9,1.4 2.9,2.1V68.4c0,-6.4 5.2,-11.6 11.6,-11.6h133.1c6.4,0 11.6,5.2 11.6,11.6v188.7c1,-0.7 1.9,-1.4 2.9,-2.2v-50.5c1.6,0 2.9,-1.3 2.9,-2.9v-13.7H287z"
-      android:fillColor="#80868B"/>
-  <path
-      android:pathData="M287,204.4c1.6,0 2.9,-1.3 2.9,-2.9v-14H287v-0.9h2.9v-14c0,-1.6 -1.3,-2.9 -2.9,-2.9"
-      android:fillColor="#669DF6"/>
-  <path
-      android:pathData="M825.7,300H469.3c-15.3,0 -27.8,-12.8 -27.8,-28.5v-243C441.5,12.8 454,0 469.3,0h356.5c15.2,0 27.7,12.8 27.7,28.5v243.2C853.5,287.2 841,300 825.7,300z"
-      android:fillColor="#FFFFFF"/>
-  <path
-      android:pathData="M728.5,187.8v-1.5h2.9v-13.7c0,-1.6 -1.3,-2.9 -2.9,-2.9v-23.2c1.6,0 2.9,-1.3 2.9,-2.9V132c0,-1.6 -1.3,-2.9 -2.9,-2.9V68.4c0,-8 -6.5,-14.5 -14.5,-14.5H580.9c-8,0 -14.5,6.5 -14.5,14.5v185.3c1,0.7 1.9,1.4 2.9,2.1V68.4c0,-6.4 5.2,-11.6 11.6,-11.6H714c6.4,0 11.6,5.2 11.6,11.6v188.7c1,-0.7 1.9,-1.4 2.9,-2.2v-50.5c1.6,0 2.9,-1.3 2.9,-2.9v-13.7H728.5z"
-      android:fillColor="#DADCE0"/>
-  <path
-      android:pathData="M728.5,204.4c1.6,0 2.9,-1.3 2.9,-2.9v-14h-2.9v-0.9h2.9v-14c0,-1.6 -1.3,-2.9 -2.9,-2.9"
-      android:fillColor="#1A73E8"/>
-  <path
-      android:pathData="M648.2,19.1c35,0 67.9,13.6 92.6,38.4c24.7,24.6 38.3,57.5 38.3,92.5s-13.6,67.9 -38.4,92.6C716,267.3 683.1,281 648.1,281s-67.9,-13.6 -92.6,-38.4c-24.6,-24.7 -38.3,-57.6 -38.3,-92.6s13.6,-67.9 38.4,-92.6C580.4,32.7 613.2,19.1 648.2,19.1M648.2,17.1c-73.4,0 -133,59.5 -133,132.9s59.5,132.9 132.9,132.9s133,-59.5 133,-132.9S721.6,17.1 648.2,17.1L648.2,17.1z"
-      android:fillColor="#E8EAED"/>
-</vector>
diff --git a/res/drawable-night/accessibility_shortcut_type_hardware_tablet.xml b/res/drawable-night/accessibility_shortcut_type_hardware_tablet.xml
deleted file mode 100644
index 1040d05..0000000
--- a/res/drawable-night/accessibility_shortcut_type_hardware_tablet.xml
+++ /dev/null
@@ -1,44 +0,0 @@
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <group>
-    <clip-path
-        android:pathData="M0,0h412v300h-412z"/>
-    <path
-        android:pathData="M255.38,94.3C255.38,93.14 256.32,92.21 257.47,92.21L275.86,92.21C277.01,92.21 277.95,93.14 277.95,94.3L267.08,95.14L255.38,94.3Z"
-        android:fillColor="#669DF6"/>
-    <path
-        android:pathData="M340.09,110.17L340.09,248.55A14.5,14.5 0,0 1,325.59 263.05L88,263.05A14.5,14.5 0,0 1,73.5 248.55L73.5,110.17A14.5,14.5 0,0 1,88 95.67L325.59,95.67A14.5,14.5 0,0 1,340.09 110.17z"
-        android:strokeWidth="3"
-        android:fillColor="#000000"
-        android:strokeColor="#80868B"/>
-    <path
-        android:pathData="M295.77,94.3C295.77,93.14 296.7,92.21 297.86,92.21L305.38,92.21C306.53,92.21 307.46,93.14 307.46,94.3L302.45,95.14L295.77,94.3Z"
-        android:fillColor="#80868B"/>
-    <group>
-      <clip-path
-          android:pathData="M274,30L274,30A93,93 0,0 1,367 123L367,123A93,93 0,0 1,274 216L274,216A93,93 0,0 1,181 123L181,123A93,93 0,0 1,274 30z"/>
-      <path
-          android:pathData="M274,30L274,30A93,93 0,0 1,367 123L367,123A93,93 0,0 1,274 216L274,216A93,93 0,0 1,181 123L181,123A93,93 0,0 1,274 30z"
-          android:fillColor="#000000"/>
-      <path
-          android:pathData="M206.07,85.49C206.07,83.45 207.72,81.79 209.75,81.79L242.17,81.79C244.21,81.79 245.86,83.45 245.86,85.49L226.7,86.97L206.07,85.49Z"
-          android:fillColor="#669DF6"/>
-      <path
-          android:pathData="M345.84,101.25L345.84,369.73A14.25,14.25 0,0 1,331.59 383.98L-111.85,383.98A14.25,14.25 0,0 1,-126.1 369.73L-126.1,101.25A14.25,14.25 0,0 1,-111.85 87L331.59,87A14.25,14.25 0,0 1,345.84 101.25z"
-          android:strokeWidth="3.5"
-          android:fillColor="#000000"
-          android:strokeColor="#80868B"/>
-      <path
-          android:pathData="M266.77,85.49C266.77,83.45 268.42,81.79 270.46,81.79L283.72,81.79C285.75,81.79 287.4,83.45 287.4,85.49L278.56,86.97L266.77,85.49Z"
-          android:fillColor="#80868B"/>
-    </group>
-    <path
-        android:strokeWidth="1"
-        android:pathData="M274,30.5L274,30.5A92.5,92.5 0,0 1,366.5 123L366.5,123A92.5,92.5 0,0 1,274 215.5L274,215.5A92.5,92.5 0,0 1,181.5 123L181.5,123A92.5,92.5 0,0 1,274 30.5z"
-        android:fillColor="#00000000"
-        android:strokeColor="#80868B"/>
-  </group>
-</vector>
diff --git a/res/drawable-night/accessibility_shortcut_type_software.xml b/res/drawable-night/accessibility_shortcut_type_software.xml
deleted file mode 100644
index 8d55ae9..0000000
--- a/res/drawable-night/accessibility_shortcut_type_software.xml
+++ /dev/null
@@ -1,48 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2021 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.
--->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <path
-      android:fillColor="#FF000000"
-      android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5V28.5C0,12.8 12.5,0 27.8,0H384.3C399.5,0 412,12.8 412,28.5V271.7C412,287.2 399.5,300 384.2,300Z"/>
-  <path
-      android:pathData="M142,225.3H275.1a14.51,14.51 0,0 0,14.5 -14.5V69a2.9,2.9 0,0 0,2.9 -2.9v-17c-1.9,-1.6 -3.8,-3.2 -5.8,-4.7V210.8a11.61,11.61 0,0 1,-11.6 11.6H142a11.61,11.61 0,0 1,-11.6 -11.6V42.7c-1,0.7 -1.9,1.4 -2.9,2.1V210.9A14.62,14.62 0,0 0,142 225.3Z"
-      android:fillColor="#80868b"/>
-  <path
-      android:pathData="M286.7,210.83a11.59,11.59 0,0 1,-11.58 11.58H142a11.59,11.59 0,0 1,-11.58 -11.58V183.26H286.7Z"
-      android:fillColor="#3c4043"/>
-  <path
-      android:pathData="M250.41,193.38a1.77,1.77 0,1 1,-1.78 1.77A1.77,1.77 0,0 1,250.41 193.38ZM253.07,199.58v11.53h-1.78v-5.32h-1.77v5.32h-1.77L247.75,199.58a30.78,30.78 0,0 1,-5.32 -0.89l0.44,-1.77a32.34,32.34 0,0 0,15.07 0l0.45,1.77A30.78,30.78 0,0 1,253.07 199.58Z"
-      android:fillColor="#fff"/>
-  <path
-      android:pathData="M208.55,202.84m-6.13,0a6.13,6.13 0,1 1,12.26 0a6.13,6.13 0,1 1,-12.26 0"
-      android:fillColor="#80868b"/>
-  <path
-      android:pathData="M250.41,202.84m-22.28,0a22.28,22.28 0,1 1,44.56 0a22.28,22.28 0,1 1,-44.56 0"
-      android:strokeWidth="2"
-      android:fillColor="#00000000"
-      android:strokeColor="#669df6"/>
-  <path
-      android:pathData="M160.45,202.84l10.43,6.02l0,-12.05l-10.43,6.03z"
-      android:fillColor="#80868b"/>
-  <path
-      android:pathData="M207.4,19.1a131.11,131.11 0,0 1,131 131,131 131,0 0,1 -262,-0.1 130.94,130.94 0,0 1,131 -130.9m0,-2A132.9,132.9 0,1 0,340.3 150,133 133,0 0,0 207.4,17.1Z"
-      android:fillColor="#3c4043"/>
-</vector>
diff --git a/res/drawable-night/accessibility_shortcut_type_software_floating.xml b/res/drawable-night/accessibility_shortcut_type_software_floating.xml
deleted file mode 100644
index 25d53ca..0000000
--- a/res/drawable-night/accessibility_shortcut_type_software_floating.xml
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2021 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.
--->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <path
-      android:fillColor="#FF000000"
-      android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5V28.5C0,12.8 12.5,0 27.8,0H384.3C399.5,0 412,12.8 412,28.5V271.7C412,287.2 399.5,300 384.2,300Z"/>
-  <path
-      android:pathData="M142,225.3H275.1a14.51,14.51 0,0 0,14.5 -14.5V69a2.9,2.9 0,0 0,2.9 -2.9v-17c-1.9,-1.6 -3.8,-3.2 -5.8,-4.7V210.8a11.61,11.61 0,0 1,-11.6 11.6H142a11.61,11.61 0,0 1,-11.6 -11.6V42.7c-1,0.7 -1.9,1.4 -2.9,2.1V210.9A14.62,14.62 0,0 0,142 225.3Z"
-      android:fillColor="#80868b"/>
-  <path
-      android:strokeWidth="1"
-      android:pathData="M286.7,144.13H266a19.63,19.63 0,1 0,0 39.26H286.7"
-      android:fillColor="#00000000"
-      android:strokeColor="#80868b"/>
-  <path
-      android:pathData="M266,148.65a15.11,15.11 0,1 0,15.1 15.11A15.11,15.11 0,0 0,266 148.65ZM266,155.93a1.59,1.59 0,0 1,0 3.17,1.59 1.59,0 1,1 0,-3.17ZM268.37,161.47v10.29h-1.58L266.79,167h-1.59v4.75h-1.58L263.62,161.47a27.23,27.23 0,0 1,-4.75 -0.79l0.4,-1.58a29.06,29.06 0,0 0,13.46 0l0.39,1.58A27.23,27.23 0,0 1,268.33 161.47Z"
-      android:fillColor="#dadce0"/>
-  <path
-      android:pathData="M207.4,19.1a131.11,131.11 0,0 1,131 131,131 131,0 0,1 -262,-0.1 130.94,130.94 0,0 1,131 -130.9m0,-2A132.9,132.9 0,1 0,340.3 150,133 133,0 0,0 207.4,17.1Z"
-      android:fillColor="#3c4043"/>
-</vector>
diff --git a/res/drawable-night/accessibility_shortcut_type_software_floating_tablet.xml b/res/drawable-night/accessibility_shortcut_type_software_floating_tablet.xml
deleted file mode 100644
index c0b562e..0000000
--- a/res/drawable-night/accessibility_shortcut_type_software_floating_tablet.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <group>
-    <clip-path
-        android:pathData="M0,0h412v300h-412z"/>
-    <path
-        android:pathData="M263.59,50.35C263.59,48.98 264.7,47.86 266.06,47.86L287.85,47.86C289.22,47.86 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
-        android:fillColor="#80868B"/>
-    <path
-        android:pathData="M364.52,66.19L364.52,236.14A14.75,14.75 0,0 1,349.77 250.89L62.23,250.89A14.75,14.75 0,0 1,47.48 236.14L47.48,66.19A14.75,14.75 0,0 1,62.23 51.44L349.77,51.44A14.75,14.75 0,0 1,364.52 66.19z"
-        android:strokeWidth="2.5"
-        android:fillColor="#000000"
-        android:strokeColor="#80868B"/>
-    <path
-        android:pathData="M311.45,50.35C311.45,48.98 312.56,47.86 313.92,47.86L322.84,47.86C324.2,47.86 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
-        android:fillColor="#80868B"/>
-  </group>
-  <path
-      android:strokeWidth="1"
-      android:pathData="M365.64,179.48H344.94C339.74,179.48 334.74,181.54 331.06,185.23C327.38,188.91 325.31,193.9 325.31,199.11C325.31,204.31 327.38,209.3 331.06,212.99C334.74,216.67 339.74,218.74 344.94,218.74H365.64"
-      android:fillColor="#00000000"
-      android:strokeColor="#80868B"/>
-  <path
-      android:pathData="M344.95,184C341.96,183.99 339.04,184.88 336.55,186.54C334.06,188.2 332.12,190.56 330.98,193.32C329.83,196.08 329.53,199.12 330.11,202.05C330.7,204.98 332.14,207.67 334.25,209.79C336.36,211.9 339.05,213.34 341.98,213.93C344.92,214.51 347.95,214.21 350.72,213.07C353.48,211.92 355.84,209.99 357.5,207.5C359.16,205.02 360.05,202.1 360.05,199.11C360.05,195.1 358.46,191.26 355.62,188.43C352.79,185.59 348.95,184 344.95,184ZM344.95,191.28C345.35,191.31 345.72,191.49 345.99,191.78C346.26,192.08 346.41,192.46 346.41,192.86C346.41,193.26 346.26,193.65 345.99,193.94C345.72,194.23 345.35,194.41 344.95,194.45C344.73,194.46 344.51,194.43 344.3,194.36C344.09,194.29 343.9,194.18 343.74,194.03C343.58,193.88 343.45,193.7 343.36,193.5C343.28,193.3 343.23,193.08 343.23,192.86C343.23,192.64 343.28,192.43 343.36,192.22C343.45,192.02 343.58,191.84 343.74,191.69C343.9,191.54 344.09,191.43 344.3,191.36C344.51,191.29 344.73,191.26 344.95,191.28ZM347.32,196.82V207.11H345.74V202.35H344.15V207.1H342.57V196.82C340.96,196.69 339.37,196.43 337.82,196.03L338.22,194.45C342.64,195.5 347.25,195.5 351.68,194.45L352.07,196.03C350.5,196.43 348.89,196.7 347.28,196.82H347.32Z"
-      android:fillColor="#DADCE0"/>
-</vector>
diff --git a/res/drawable-night/accessibility_shortcut_type_software_gesture.xml b/res/drawable-night/accessibility_shortcut_type_software_gesture.xml
deleted file mode 100644
index ea19f74..0000000
--- a/res/drawable-night/accessibility_shortcut_type_software_gesture.xml
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2021 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.
--->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-    <path
-        android:fillColor="#FF000000"
-        android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5v-243C0,12.8 12.5,0 27.8,0h356.5C399.5,0 412,12.8 412,28.5v243.2C412,287.2 399.5,300 384.2,300z"/>
-    <path
-        android:pathData="M139.5,225.3h133.1c8,0 14.5,-6.5 14.5,-14.5V69c1.6,0 2.9,-1.3 2.9,-2.9v-17c-1.9,-1.6 -3.8,-3.2 -5.8,-4.7v166.4c0,6.4 -5.2,11.6 -11.6,11.6H139.5c-6.4,0 -11.6,-5.2 -11.6,-11.6V42.7c-1,0.7 -1.9,1.4 -2.9,2.1v166.1C125.1,218.8 131.6,225.3 139.5,225.3z"
-        android:fillColor="#80868B"/>
-    <path
-        android:pathData="M229.9,207.9h-47.8c-1.1,0 -2,0.9 -2,2s0.9,2 2,2h47.8c1.1,0 2,-0.9 2,-2S231,207.9 229.9,207.9z"
-        android:fillColor="#80868B"/>
-    <path
-        android:pathData="M198.4,205.7v-11.4h4.9l-6.9,-12.2l-6.9,12.2h4.9v11.4c-1.9,0.8 -3.2,2.6 -3.2,4.8c0,2.9 2.3,5.2 5.2,5.2s5.2,-2.3 5.2,-5.2C201.6,208.4 200.2,206.5 198.4,205.7z"
-        android:fillColor="#669DF6"/>
-    <path
-        android:pathData="M217.7,205.7v-11.4h4.9l-6.9,-12.2l-6.9,12.2h4.9v11.4c-1.9,0.8 -3.2,2.6 -3.2,4.8c0,2.9 2.3,5.2 5.2,5.2s5.2,-2.3 5.2,-5.2C220.9,208.4 219.6,206.5 217.7,205.7z"
-        android:fillColor="#669DF6"/>
-    <path
-        android:pathData="M206.1,19.1c35,0 67.9,13.6 92.6,38.4c24.7,24.7 38.4,57.6 38.4,92.6s-13.6,67.9 -38.4,92.6c-24.7,24.7 -57.6,38.4 -92.6,38.4s-67.9,-13.6 -92.6,-38.4C88.8,217.9 75.1,185 75.1,150s13.6,-67.9 38.4,-92.6C138.2,32.7 171.1,19.1 206.1,19.1M206.1,17.1c-73.4,0 -133,59.5 -133,132.9S132.6,282.9 206,282.9S339,223.4 339,150S279.5,17.1 206.1,17.1L206.1,17.1z"
-        android:fillColor="#3C4043"/>
-</vector>
\ No newline at end of file
diff --git a/res/drawable-night/accessibility_shortcut_type_software_gesture_tablet.xml b/res/drawable-night/accessibility_shortcut_type_software_gesture_tablet.xml
deleted file mode 100644
index 129f13d..0000000
--- a/res/drawable-night/accessibility_shortcut_type_software_gesture_tablet.xml
+++ /dev/null
@@ -1,46 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2023 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.
--->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-    <group>
-        <clip-path
-            android:pathData="M0,0h412v300h-412z"/>
-        <path
-            android:pathData="M263.59,50.35C263.59,48.98 264.7,47.86 266.06,47.86L287.85,47.86C289.22,47.86 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
-            android:fillColor="#80868B"/>
-        <path
-            android:pathData="M364.52,66.19L364.52,236.14A14.75,14.75 0,0 1,349.77 250.89L62.23,250.89A14.75,14.75 0,0 1,47.48 236.14L47.48,66.19A14.75,14.75 0,0 1,62.23 51.44L349.77,51.44A14.75,14.75 0,0 1,364.52 66.19z"
-            android:strokeWidth="2.5"
-            android:fillColor="#000000"
-            android:strokeColor="#80868B"/>
-        <path
-            android:pathData="M311.45,50.35C311.45,48.98 312.56,47.86 313.92,47.86L322.84,47.86C324.2,47.86 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
-            android:fillColor="#80868B"/>
-        <path
-            android:pathData="M170.9,232.14L241.9,232.14A2,2 0,0 1,243.9 234.14L243.9,234.14A2,2 0,0 1,241.9 236.14L170.9,236.14A2,2 0,0 1,168.9 234.14L168.9,234.14A2,2 0,0 1,170.9 232.14z"
-            android:fillColor="#80868B"/>
-        <path
-            android:pathData="M198.35,229.14V217.74H203.25L196.35,205.54L189.45,217.74H194.35V229.14C192.45,229.94 191.15,231.74 191.15,233.94C191.15,236.84 193.45,239.14 196.35,239.14C199.25,239.14 201.55,236.84 201.55,233.94C201.55,231.84 200.15,229.94 198.35,229.14Z"
-            android:fillColor="#669DF6"/>
-        <path
-            android:pathData="M217.65,229.14V217.74H222.55L215.65,205.54L208.75,217.74H213.65V229.14C211.75,229.94 210.45,231.74 210.45,233.94C210.45,236.84 212.75,239.14 215.65,239.14C218.55,239.14 220.85,236.84 220.85,233.94C220.85,231.84 219.55,229.94 217.65,229.14Z"
-            android:fillColor="#669DF6"/>
-    </group>
-</vector>
diff --git a/res/drawable-night/accessibility_shortcut_type_software_gesture_talkback.xml b/res/drawable-night/accessibility_shortcut_type_software_gesture_talkback.xml
deleted file mode 100644
index bd9bf19..0000000
--- a/res/drawable-night/accessibility_shortcut_type_software_gesture_talkback.xml
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2021 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.
--->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-    <path
-        android:fillColor="#FF000000"
-        android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5v-243C0,12.8 12.5,0 27.8,0h356.5C399.5,0 412,12.8 412,28.5v243.2C412,287.2 399.5,300 384.2,300z"/>
-    <path
-        android:pathData="M138,225.3h133.1c8,0 14.5,-6.5 14.5,-14.5V69c1.6,0 2.9,-1.3 2.9,-2.9V45.7c-1.9,-1.5 -3.8,-2.9 -5.8,-4.3v169.4c0,6.4 -5.2,11.6 -11.6,11.6H138c-6.4,0 -11.6,-5.2 -11.6,-11.6V43.5c-1,0.7 -1.9,1.5 -2.9,2.2v165C123.5,218.8 130,225.3 138,225.3z"
-        android:fillColor="#80868B"/>
-    <path
-        android:pathData="M206,283.9c-73.9,0 -133.9,-60.1 -133.9,-133.9S132.1,16.1 206,16.1c73.9,0 133.9,60.1 133.9,133.9S279.9,283.9 206,283.9zM206,18.1C133.2,18.1 74.1,77.2 74.1,150S133.2,281.9 206,281.9S337.9,222.8 337.9,150S278.8,18.1 206,18.1z"
-        android:fillColor="#3C4043"/>
-    <path
-        android:pathData="M229.9,207.9h-47.8c-1.1,0 -2,0.9 -2,2s0.9,2 2,2h47.8c1.1,0 2,-0.9 2,-2S231,207.9 229.9,207.9z"
-        android:fillColor="#80868B"/>
-    <path
-        android:pathData="M190.9,205.7v-11.4h4.9l-6.9,-12.2l-6.9,12.2h4.9v11.4c-1.9,0.8 -3.2,2.6 -3.2,4.8c0,2.9 2.3,5.2 5.2,5.2c2.9,0 5.2,-2.3 5.2,-5.2C194.1,208.4 192.8,206.5 190.9,205.7z"
-        android:fillColor="#669DF6"/>
-    <path
-        android:pathData="M208,205.7v-11.4h4.9l-6.9,-12.2l-6.9,12.2h4.9v11.4c-1.9,0.8 -3.2,2.6 -3.2,4.8c0,2.9 2.3,5.2 5.2,5.2c2.9,0 5.2,-2.3 5.2,-5.2C211.2,208.4 209.9,206.5 208,205.7z"
-        android:fillColor="#669DF6"/>
-    <path
-        android:pathData="M225.1,205.7v-11.4h4.9l-6.9,-12.2l-6.9,12.2h4.9v11.4c-1.9,0.8 -3.2,2.6 -3.2,4.8c0,2.9 2.3,5.2 5.2,5.2c2.9,0 5.2,-2.3 5.2,-5.2C228.2,208.4 226.9,206.5 225.1,205.7z"
-        android:fillColor="#669DF6"/>
-</vector>
\ No newline at end of file
diff --git a/res/drawable-night/accessibility_shortcut_type_software_gesture_talkback_tablet.xml b/res/drawable-night/accessibility_shortcut_type_software_gesture_talkback_tablet.xml
deleted file mode 100644
index d113fff..0000000
--- a/res/drawable-night/accessibility_shortcut_type_software_gesture_talkback_tablet.xml
+++ /dev/null
@@ -1,49 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2023 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.
--->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-    <group>
-        <clip-path
-            android:pathData="M0,0h412v300h-412z"/>
-        <path
-            android:pathData="M263.59,50.35C263.59,48.98 264.7,47.86 266.06,47.86L287.85,47.86C289.22,47.86 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
-            android:fillColor="#80868B"/>
-        <path
-            android:pathData="M364.52,66.19L364.52,236.14A14.75,14.75 0,0 1,349.77 250.89L62.23,250.89A14.75,14.75 0,0 1,47.48 236.14L47.48,66.19A14.75,14.75 0,0 1,62.23 51.44L349.77,51.44A14.75,14.75 0,0 1,364.52 66.19z"
-            android:strokeWidth="2.5"
-            android:fillColor="#000000"
-            android:strokeColor="#80868B"/>
-        <path
-            android:pathData="M311.45,50.35C311.45,48.98 312.56,47.86 313.92,47.86L322.84,47.86C324.2,47.86 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
-            android:fillColor="#80868B"/>
-        <path
-            android:pathData="M170.9,232.14L241.9,232.14A2,2 0,0 1,243.9 234.14L243.9,234.14A2,2 0,0 1,241.9 236.14L170.9,236.14A2,2 0,0 1,168.9 234.14L168.9,234.14A2,2 0,0 1,170.9 232.14z"
-            android:fillColor="#80868B"/>
-        <path
-            android:pathData="M188.7,229.14V217.74H193.6L186.7,205.54L179.8,217.74H184.7V229.14C182.8,229.94 181.5,231.74 181.5,233.94C181.5,236.84 183.8,239.14 186.7,239.14C189.6,239.14 191.9,236.84 191.9,233.94C191.9,231.84 190.5,229.94 188.7,229.14Z"
-            android:fillColor="#669DF6"/>
-        <path
-            android:pathData="M208,229.14V217.74H212.9L206,205.54L199.1,217.74H204V229.14C202.1,229.94 200.8,231.74 200.8,233.94C200.8,236.84 203.1,239.14 206,239.14C208.9,239.14 211.2,236.84 211.2,233.94C211.2,231.84 209.9,229.94 208,229.14Z"
-            android:fillColor="#669DF6"/>
-        <path
-            android:pathData="M227.29,229.14V217.74H232.2L225.29,205.54L218.4,217.74H223.29V229.14C221.4,229.94 220.1,231.74 220.1,233.94C220.1,236.84 222.4,239.14 225.29,239.14C228.2,239.14 230.49,236.84 230.49,233.94C230.49,231.84 229.2,229.94 227.29,229.14Z"
-            android:fillColor="#669DF6"/>
-    </group>
-</vector>
diff --git a/res/drawable-night/accessibility_shortcut_type_software_tablet.xml b/res/drawable-night/accessibility_shortcut_type_software_tablet.xml
deleted file mode 100644
index 49a2661..0000000
--- a/res/drawable-night/accessibility_shortcut_type_software_tablet.xml
+++ /dev/null
@@ -1,36 +0,0 @@
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <group>
-    <clip-path
-        android:pathData="M62.23,50.19L349.77,50.19A16,16 0,0 1,365.77 66.19L365.77,236.14A16,16 0,0 1,349.77 252.14L62.23,252.14A16,16 0,0 1,46.23 236.14L46.23,66.19A16,16 0,0 1,62.23 50.19z"/>
-    <path
-        android:pathData="M46.23,204.14h320v48h-320z"
-        android:fillColor="#3D4043"/>
-    <path
-        android:pathData="M268.93,214.14C270.43,214.14 271.63,215.34 271.63,216.84C271.63,218.34 270.43,219.54 268.93,219.54C267.43,219.54 266.23,218.34 266.23,216.84C266.23,215.34 267.43,214.14 268.93,214.14ZM273.03,223.64V241.24H270.23V233.14H267.53V241.24H264.83V223.64C262.13,223.44 259.23,222.94 256.73,222.24L257.43,219.54C260.93,220.44 265.13,220.94 268.93,220.94C272.73,220.94 276.93,220.54 280.43,219.54L281.13,222.24C278.63,222.94 275.73,223.44 273.03,223.64Z"
-        android:fillColor="#ffffff"/>
-    <path
-        android:pathData="M206.23,238.04C211.42,238.04 215.63,233.83 215.63,228.64C215.63,223.45 211.42,219.24 206.23,219.24C201.04,219.24 196.83,223.45 196.83,228.64C196.83,233.83 201.04,238.04 206.23,238.04Z"
-        android:fillColor="#808589"/>
-    <path
-        android:pathData="M131.33,228.64L147.33,237.84V219.34L131.33,228.64Z"
-        android:fillColor="#808589"/>
-  </group>
-  <path
-      android:pathData="M62.23,51.69L349.77,51.69A14.5,14.5 0,0 1,364.27 66.19L364.27,236.14A14.5,14.5 0,0 1,349.77 250.64L62.23,250.64A14.5,14.5 0,0 1,47.73 236.14L47.73,66.19A14.5,14.5 0,0 1,62.23 51.69z"
-      android:strokeWidth="3"
-      android:fillColor="#00000000"
-      android:strokeColor="#80868B"/>
-  <path
-      android:pathData="M311.45,50.35C311.45,48.98 312.56,47.87 313.92,47.87L322.84,47.87C324.2,47.87 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
-      android:fillColor="#80868B"/>
-  <path
-      android:pathData="M263.59,50.35C263.59,48.98 264.7,47.87 266.06,47.87L287.85,47.87C289.22,47.87 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
-      android:fillColor="#80868B"/>
-  <path
-      android:pathData="M268.93,259.69C251.31,259.69 236.93,245.3 236.93,227.69C236.93,210.07 251.31,195.69 268.93,195.69C286.55,195.69 300.93,210.07 300.93,227.69C300.93,245.3 286.55,259.69 268.93,259.69ZM268.93,198.38C252.84,198.38 239.72,211.51 239.72,227.6C239.72,243.69 252.84,256.81 268.93,256.81C285.02,256.81 298.14,243.69 298.14,227.6C298.14,211.51 285.02,198.38 268.93,198.38Z"
-      android:fillColor="#729CEE"/>
-</vector>
diff --git a/res/drawable/accessibility_button_navigation.xml b/res/drawable/accessibility_button_navigation.xml
deleted file mode 100644
index 8fdb627..0000000
--- a/res/drawable/accessibility_button_navigation.xml
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2021 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.
--->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <path
-      android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5v-243C0,12.8 12.5,0 27.8,0h356.5C399.5,0 412,12.8 412,28.5v243.2C412,287.2 399.5,300 384.2,300z"
-      android:fillColor="#FFFFFF"/>
-  <path
-      android:fillColor="#FF000000"
-      android:pathData="M325.2,231.9c0,9.8 -7.9,17.7 -17.7,17.7H103.9c-9.8,0 -17.7,-7.9 -17.7,-17.7v-42.2h239V231.9z"/>
-  <path
-      android:pathData="M269.7,205.2c1.5,0 2.7,1.2 2.7,2.7s-1.2,2.7 -2.7,2.7c-1.5,0 -2.7,-1.2 -2.7,-2.7S268.2,205.2 269.7,205.2zM273.8,214.7v17.6H271v-8.1h-2.7v8.1h-2.7v-17.6c-2.7,-0.2 -5.6,-0.7 -8.1,-1.4l0.7,-2.7c3.5,0.9 7.7,1.4 11.5,1.4c3.8,0 8,-0.4 11.5,-1.4l0.7,2.7C279.4,214 276.5,214.5 273.8,214.7z"
-      android:fillColor="#FFFFFF"/>
-  <path
-      android:pathData="M205.7,219.7m-9.4,0a9.4,9.4 0,1 1,18.8 0a9.4,9.4 0,1 1,-18.8 0"
-      android:fillColor="#BDC0C4"/>
-  <path
-      android:pathData="M132.1,219.7l16,9.2l0,-18.5z"
-      android:fillColor="#BDC0C4"/>
-  <path
-      android:pathData="M325.4,231.9c0,9.8 -7.9,17.7 -17.7,17.7H103.9c-9.8,0 -17.7,-7.9 -17.7,-17.7V0h-4.4v231.9c0,12.2 9.9,22.2 22.1,22.2h203.8c12.2,0 22.1,-9.9 22.1,-22.2V14.8c2.4,0 4.4,-2 4.4,-4.4V0h-8.9V231.9z"
-      android:fillColor="#DADCE0"/>
-  <path
-      android:pathData="M269.7,255.3c-19.6,0 -35.6,-16 -35.6,-35.6s16,-35.6 35.6,-35.6s35.6,16 35.6,35.6S289.3,255.3 269.7,255.3zM269.7,187.1c-17.9,0 -32.5,14.6 -32.5,32.5c0,17.9 14.6,32.5 32.5,32.5s32.5,-14.6 32.5,-32.5C302.2,201.7 287.6,187.1 269.7,187.1z"
-      android:fillColor="#3773DF"/>
-</vector>
diff --git a/res/drawable/accessibility_button_navigation_tablet.xml b/res/drawable/accessibility_button_navigation_tablet.xml
deleted file mode 100644
index d8ae503..0000000
--- a/res/drawable/accessibility_button_navigation_tablet.xml
+++ /dev/null
@@ -1,54 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2023 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.
--->
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <path
-      android:pathData="M28,0L384,0A28,28 0,0 1,412 28L412,272A28,28 0,0 1,384 300L28,300A28,28 0,0 1,0 272L0,28A28,28 0,0 1,28 0z"
-      android:fillColor="#ffffff"/>
-  <group>
-    <clip-path
-        android:pathData="M62.23,50.19L349.77,50.19A16,16 0,0 1,365.77 66.19L365.77,236.14A16,16 0,0 1,349.77 252.14L62.23,252.14A16,16 0,0 1,46.23 236.14L46.23,66.19A16,16 0,0 1,62.23 50.19z"/>
-    <path
-        android:pathData="M46.23,204.14h320v48h-320z"
-        android:fillColor="#000000"/>
-    <path
-        android:pathData="M268.93,214.14C270.43,214.14 271.63,215.34 271.63,216.84C271.63,218.34 270.43,219.54 268.93,219.54C267.43,219.54 266.23,218.34 266.23,216.84C266.23,215.34 267.43,214.14 268.93,214.14ZM273.03,223.64V241.24H270.23V233.14H267.53V241.24H264.83V223.64C262.13,223.44 259.23,222.94 256.73,222.24L257.43,219.54C260.93,220.44 265.13,220.94 268.93,220.94C272.73,220.94 276.93,220.54 280.43,219.54L281.13,222.24C278.63,222.94 275.73,223.44 273.03,223.64Z"
-        android:fillColor="#ffffff"/>
-    <path
-        android:pathData="M206.23,238.04C211.42,238.04 215.63,233.83 215.63,228.64C215.63,223.45 211.42,219.24 206.23,219.24C201.04,219.24 196.83,223.45 196.83,228.64C196.83,233.83 201.04,238.04 206.23,238.04Z"
-        android:fillColor="#BDC0C4"/>
-    <path
-        android:pathData="M131.33,228.64L147.33,237.84V219.34L131.33,228.64Z"
-        android:fillColor="#BDC0C4"/>
-  </group>
-  <path
-      android:pathData="M62.23,51.69L349.77,51.69A14.5,14.5 0,0 1,364.27 66.19L364.27,236.14A14.5,14.5 0,0 1,349.77 250.64L62.23,250.64A14.5,14.5 0,0 1,47.73 236.14L47.73,66.19A14.5,14.5 0,0 1,62.23 51.69z"
-      android:strokeWidth="3"
-      android:fillColor="#00000000"
-      android:strokeColor="#DADCE0"/>
-  <path
-      android:pathData="M311.45,50.35C311.45,48.98 312.56,47.87 313.92,47.87L322.84,47.87C324.2,47.87 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
-      android:fillColor="#DADCE0"/>
-  <path
-      android:pathData="M263.59,50.35C263.59,48.98 264.7,47.87 266.06,47.87L287.85,47.87C289.22,47.87 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
-      android:fillColor="#DADCE0"/>
-  <path
-      android:pathData="M268.93,259.69C251.31,259.69 236.93,245.3 236.93,227.69C236.93,210.07 251.31,195.69 268.93,195.69C286.55,195.69 300.93,210.07 300.93,227.69C300.93,245.3 286.55,259.69 268.93,259.69ZM268.93,198.38C252.84,198.38 239.72,211.51 239.72,227.6C239.72,243.69 252.84,256.81 268.93,256.81C285.02,256.81 298.14,243.69 298.14,227.6C298.14,211.51 285.02,198.38 268.93,198.38Z"
-      android:fillColor="#729CEE"/>
-</vector>
diff --git a/res/drawable/accessibility_button_preview_large_floating_menu.xml b/res/drawable/accessibility_button_preview_large_floating_menu.xml
deleted file mode 100644
index 794f3ca..0000000
--- a/res/drawable/accessibility_button_preview_large_floating_menu.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2021 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.
--->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-    <path
-        android:pathData="M325.4,198.2h-40.9c-22.1,0 -40,-18 -40,-40s18,-40 40,-40h40.9v2.6h-40.9c-20.7,0 -37.5,16.8 -37.5,37.5s16.8,37.5 37.5,37.5h40.9V198.2z"
-        android:fillColor="#DADCE0"/>
-    <path
-        android:pathData="M284.3,128.4c-16.5,0 -29.8,13.4 -29.8,29.8c0,16.5 13.4,29.8 29.8,29.8s29.8,-13.4 29.8,-29.8C314.2,141.7 300.9,128.4 284.3,128.4zM284.3,142.7c1.7,0 3.1,1.4 3.1,3.1c0,1.7 -1.4,3.1 -3.1,3.1s-3.1,-1.4 -3.1,-3.1C281.2,144.1 282.7,142.7 284.3,142.7zM289.1,153.7V174H286v-9.4h-3.1v9.4h-3.2v-20.3c-3.1,-0.3 -6.5,-0.8 -9.4,-1.5l0.8,-3.1c4.1,1 8.9,1.5 13.3,1.5s9.2,-0.5 13.3,-1.5l0.8,3.1C295.6,152.9 292.2,153.4 289.1,153.7z"
-        android:fillColor="#606368"/>
-</vector>
diff --git a/res/drawable/accessibility_button_preview_large_floating_menu_tablet.xml b/res/drawable/accessibility_button_preview_large_floating_menu_tablet.xml
deleted file mode 100644
index 99798d5..0000000
--- a/res/drawable/accessibility_button_preview_large_floating_menu_tablet.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <path
-      android:pathData="M365.76,226.17h-27.68c-14.95,0 -27.07,-12.18 -27.07,-27.07s12.18,-27.07 27.07,-27.07h27.68v1.76h-27.68c-14.01,0 -25.37,11.37 -25.37,25.37s11.37,25.37 25.37,25.37h27.68v1.62Z"
-      android:fillColor="#dadce0"/>
-  <path
-      android:pathData="M337.95,178.94c-11.16,0 -20.16,9.07 -20.16,20.16 0,11.16 9.07,20.16 20.16,20.16s20.16,-9.07 20.16,-20.16c0.07,-11.16 -8.93,-20.16 -20.16,-20.16ZM337.95,188.62c1.15,0 2.1,0.95 2.1,2.1 0,1.15 -0.95,2.1 -2.1,2.1s-2.1,-0.95 -2.1,-2.1c0,-1.15 1.02,-2.1 2.1,-2.1ZM341.2,196.06v13.74h-2.1v-6.36h-2.1v6.36h-2.17v-13.74c-2.1,-0.2 -4.4,-0.54 -6.36,-1.01l0.54,-2.1c2.77,0.68 6.02,1.01 9,1.01s6.23,-0.34 9,-1.01l0.54,2.1c-1.96,0.47 -4.26,0.81 -6.36,1.01Z"
-      android:fillColor="#5f6368"/>
-</vector>
diff --git a/res/drawable/accessibility_button_preview_small_floating_menu.xml b/res/drawable/accessibility_button_preview_small_floating_menu.xml
deleted file mode 100644
index 670a516..0000000
--- a/res/drawable/accessibility_button_preview_small_floating_menu.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2021 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.
--->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-    <path
-        android:pathData="M325.4,189.2h-31.7c-17.1,0 -31,-13.9 -31,-31s13.9,-31 31,-31h31.7v2h-31.7c-16,0 -29,13 -29,29s13,29 29,29h31.7V189.2z"
-        android:fillColor="#DADCE0"/>
-    <path
-        android:pathData="M293.6,135.1c-12.8,0 -23.1,10.4 -23.1,23.1c0,12.8 10.4,23.1 23.1,23.1s23.1,-10.4 23.1,-23.1C316.7,145.4 306.4,135.1 293.6,135.1zM293.6,146.2c1.3,0 2.4,1.1 2.4,2.4s-1.1,2.4 -2.4,2.4s-2.4,-1.1 -2.4,-2.4S292.3,146.2 293.6,146.2zM297.3,154.7v15.7h-2.4v-7.3h-2.4v7.3H290v-15.7c-2.4,-0.2 -5,-0.6 -7.3,-1.2l0.6,-2.4c3.2,0.8 6.9,1.2 10.3,1.2s7.1,-0.4 10.3,-1.2l0.6,2.4C302.3,154.1 299.7,154.5 297.3,154.7z"
-        android:fillColor="#606368"/>
-</vector>
diff --git a/res/drawable/accessibility_button_preview_small_floating_menu_tablet.xml b/res/drawable/accessibility_button_preview_small_floating_menu_tablet.xml
deleted file mode 100644
index e31265c..0000000
--- a/res/drawable/accessibility_button_preview_small_floating_menu_tablet.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <path
-      android:pathData="M365.88,219.24h-20.7c-5.38,0 -10.43,-2.09 -14.23,-5.9s-5.9,-8.86 -5.9,-14.23c0,-5.38 2.09,-10.43 5.9,-14.24 3.8,-3.8 8.86,-5.9 14.23,-5.9h20.7v1h-20.7c-5.11,0 -9.91,1.99 -13.53,5.6s-5.6,8.42 -5.6,13.53c0,5.11 1.99,9.91 5.6,13.53s8.42,5.6 13.53,5.6h20.7v1Z"
-      android:fillColor="#dadce0"/>
-  <path
-      android:pathData="M345.19,184c-2.99,-0 -5.91,0.88 -8.4,2.54 -2.49,1.66 -4.43,4.02 -5.57,6.78s-1.45,5.8 -0.86,8.73c0.58,2.93 2.02,5.63 4.13,7.74 2.11,2.11 4.81,3.55 7.74,4.14 2.93,0.58 5.97,0.29 8.73,-0.86 2.76,-1.14 5.12,-3.08 6.78,-5.57 1.66,-2.49 2.55,-5.41 2.55,-8.4 0,-4.01 -1.59,-7.85 -4.42,-10.68 -2.83,-2.83 -6.67,-4.43 -10.68,-4.43ZM345.19,191.28c0.4,0.03 0.77,0.21 1.04,0.51 0.27,0.29 0.42,0.68 0.42,1.08 0,0.4 -0.15,0.79 -0.42,1.08 -0.27,0.29 -0.64,0.47 -1.04,0.51 -0.22,0.02 -0.44,-0.01 -0.65,-0.08 -0.21,-0.07 -0.4,-0.19 -0.56,-0.33 -0.16,-0.15 -0.29,-0.33 -0.38,-0.53 -0.09,-0.2 -0.13,-0.42 -0.13,-0.64 0,-0.22 0.05,-0.44 0.13,-0.64 0.09,-0.2 0.22,-0.38 0.38,-0.53 0.16,-0.15 0.35,-0.26 0.56,-0.33 0.21,-0.07 0.43,-0.1 0.65,-0.08ZM347.56,196.82v10.29h-1.58v-4.76h-1.59v4.75h-1.58v-10.28c-1.6,-0.12 -3.19,-0.39 -4.75,-0.79l0.4,-1.58c4.42,1.05 9.04,1.05 13.46,0l0.39,1.58c-1.57,0.41 -3.17,0.67 -4.79,0.79h0.04Z"
-      android:fillColor="#5f6368"/>
-</vector>
diff --git a/res/drawable/accessibility_button_preview_three_finger.xml b/res/drawable/accessibility_button_preview_three_finger.xml
deleted file mode 100644
index d18ce60..0000000
--- a/res/drawable/accessibility_button_preview_three_finger.xml
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2021 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.
--->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <path
-      android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5v-243C0,12.8 12.5,0 27.8,0h356.5C399.5,0 412,12.8 412,28.5v243.2C412,287.2 399.5,300 384.2,300z"
-      android:fillColor="#FFFFFF"/>
-  <path
-      android:pathData="M242.5,226.9h-73.3c-1.7,0 -3.1,1.4 -3.1,3.1s1.4,3.1 3.1,3.1h73.3c1.7,0 3.1,-1.4 3.1,-3.1S244.2,226.9 242.5,226.9z"
-      android:fillColor="#DADCE0"/>
-  <path
-      android:pathData="M182.7,222.6v-17.5h7.5l-10.6,-18.7l-10.6,18.7h7.5v17.5c-2.9,1.2 -4.9,4 -4.9,7.4c0,4.4 3.5,8 8,8c4.4,0 8,-3.5 8,-8C187.6,226.7 185.6,223.8 182.7,222.6z"
-      android:fillColor="#1A73E8"/>
-  <path
-      android:pathData="M209,222.6v-17.5h7.5l-10.6,-18.7l-10.6,18.7h7.5v17.5c-2.9,1.2 -4.9,4 -4.9,7.4c0,4.4 3.5,8 8,8c4.4,0 8,-3.5 8,-8C213.9,226.7 211.9,223.8 209,222.6z"
-      android:fillColor="#1A73E8"/>
-  <path
-      android:pathData="M235.2,222.6v-17.5h7.5l-10.6,-18.7l-10.6,18.7h7.5v17.5c-2.9,1.2 -4.9,4 -4.9,7.4c0,4.4 3.5,8 8,8c4.4,0 8,-3.5 8,-8C240,226.7 238,223.8 235.2,222.6z"
-      android:fillColor="#1A73E8"/>
-  <path
-      android:pathData="M325.4,231.9c0,9.8 -7.9,17.7 -17.7,17.7H103.9c-9.8,0 -17.7,-7.9 -17.7,-17.7V0h-4.4v231.9c0,12.2 9.9,22.2 22.1,22.2h203.8c12.2,0 22.1,-9.9 22.1,-22.2V14.8c2.4,0 4.4,-2 4.4,-4.4V0h-8.9V231.9z"
-      android:fillColor="#DADCE0"/>
-</vector>
diff --git a/res/drawable/accessibility_button_preview_three_finger_tablet.xml b/res/drawable/accessibility_button_preview_three_finger_tablet.xml
deleted file mode 100644
index a5590c4..0000000
--- a/res/drawable/accessibility_button_preview_three_finger_tablet.xml
+++ /dev/null
@@ -1,33 +0,0 @@
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <group>
-    <clip-path
-        android:pathData="M0,0h412v300h-412z"/>
-    <path
-        android:pathData="M263.59,50.35C263.59,48.98 264.7,47.86 266.06,47.86L287.85,47.86C289.22,47.86 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
-        android:fillColor="#DADCE0"/>
-    <path
-        android:pathData="M364.52,66.19L364.52,236.14A14.75,14.75 0,0 1,349.77 250.89L62.23,250.89A14.75,14.75 0,0 1,47.48 236.14L47.48,66.19A14.75,14.75 0,0 1,62.23 51.44L349.77,51.44A14.75,14.75 0,0 1,364.52 66.19z"
-        android:strokeWidth="2.5"
-        android:fillColor="#ffffff"
-        android:strokeColor="#DADCE0"/>
-    <path
-        android:pathData="M311.45,50.35C311.45,48.98 312.56,47.86 313.92,47.86L322.84,47.86C324.2,47.86 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
-        android:fillColor="#DADCE0"/>
-    <path
-        android:pathData="M170.9,232.14L241.9,232.14A2,2 0,0 1,243.9 234.14L243.9,234.14A2,2 0,0 1,241.9 236.14L170.9,236.14A2,2 0,0 1,168.9 234.14L168.9,234.14A2,2 0,0 1,170.9 232.14z"
-        android:fillColor="#DADCE0"/>
-    <path
-        android:pathData="M188.7,229.14V217.74H193.6L186.7,205.54L179.8,217.74H184.7V229.14C182.8,229.94 181.5,231.74 181.5,233.94C181.5,236.84 183.8,239.14 186.7,239.14C189.6,239.14 191.9,236.84 191.9,233.94C191.9,231.84 190.5,229.94 188.7,229.14Z"
-        android:fillColor="#1A73E8"/>
-    <path
-        android:pathData="M208,229.14V217.74H212.9L206,205.54L199.1,217.74H204V229.14C202.1,229.94 200.8,231.74 200.8,233.94C200.8,236.84 203.1,239.14 206,239.14C208.9,239.14 211.2,236.84 211.2,233.94C211.2,231.84 209.9,229.94 208,229.14Z"
-        android:fillColor="#1A73E8"/>
-    <path
-        android:pathData="M227.29,229.14V217.74H232.2L225.29,205.54L218.4,217.74H223.29V229.14C221.4,229.94 220.1,231.74 220.1,233.94C220.1,236.84 222.4,239.14 225.29,239.14C228.2,239.14 230.49,236.84 230.49,233.94C230.49,231.84 229.2,229.94 227.29,229.14Z"
-        android:fillColor="#1A73E8"/>
-  </group>
-</vector>
diff --git a/res/drawable/accessibility_button_preview_two_finger.xml b/res/drawable/accessibility_button_preview_two_finger.xml
deleted file mode 100644
index bec95af..0000000
--- a/res/drawable/accessibility_button_preview_two_finger.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2021 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.
--->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <path
-      android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5v-243C0,12.8 12.5,0 27.8,0h356.5C399.5,0 412,12.8 412,28.5v243.2C412,287.2 399.5,300 384.2,300z"
-      android:fillColor="#FFFFFF"/>
-  <path
-      android:pathData="M325.4,231.9c0,9.8 -7.9,17.7 -17.7,17.7H103.9c-9.8,0 -17.7,-7.9 -17.7,-17.7V0h-4.4v231.9c0,12.2 9.9,22.2 22.1,22.2h203.8c12.2,0 22.1,-9.9 22.1,-22.2V14.8c2.4,0 4.4,-2 4.4,-4.4V0h-8.9V231.9z"
-      android:fillColor="#DADCE0"/>
-  <path
-      android:pathData="M242.4,226.9h-9.3h-5.6h-43.4h-4.7h-10.2c-1.7,0 -3.1,1.4 -3.1,3.1s1.4,3.1 3.1,3.1h10.2h3.9h45h4.8h9.3c1.7,0 3.1,-1.4 3.1,-3.1S244.1,226.9 242.4,226.9z"
-      android:fillColor="#DADCE0"/>
-  <path
-      android:pathData="M194,223.5v-17.5h7.5l-10.6,-18.7l-10.6,18.7h7.5v17.5c-1.6,0.7 -2.9,1.9 -3.8,3.4c-0.7,1.2 -1.1,2.5 -1.1,4c0,0.7 0.1,1.5 0.3,2.2c0.9,3.3 4,5.8 7.7,5.8c3.6,0 6.7,-2.5 7.7,-5.8c0.2,-0.7 0.3,-1.4 0.3,-2.2c0,-1.5 -0.4,-2.8 -1.1,-4C197,225.4 195.6,224.2 194,223.5z"
-      android:fillColor="#1A73E8"/>
-  <path
-      android:pathData="M223.7,223.5v-17.5h7.5l-10.6,-18.7l-10.6,18.7h7.5v17.5c-1.6,0.7 -2.9,1.9 -3.8,3.4c-0.7,1.2 -1.1,2.5 -1.1,4c0,0.7 0.1,1.5 0.3,2.2c0.9,3.3 4,5.8 7.7,5.8c3.6,0 6.7,-2.5 7.7,-5.8c0.2,-0.7 0.3,-1.4 0.3,-2.2c0,-1.5 -0.4,-2.8 -1.1,-4C226.6,225.4 225.3,224.2 223.7,223.5z"
-      android:fillColor="#1A73E8"/>
-</vector>
diff --git a/res/drawable/accessibility_button_preview_two_finger_tablet.xml b/res/drawable/accessibility_button_preview_two_finger_tablet.xml
deleted file mode 100644
index dbc5ad4..0000000
--- a/res/drawable/accessibility_button_preview_two_finger_tablet.xml
+++ /dev/null
@@ -1,30 +0,0 @@
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <group>
-    <clip-path
-        android:pathData="M0,0h412v300h-412z"/>
-    <path
-        android:pathData="M263.59,50.35C263.59,48.98 264.7,47.86 266.06,47.86L287.85,47.86C289.22,47.86 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
-        android:fillColor="#DADCE0"/>
-    <path
-        android:pathData="M364.52,66.19L364.52,236.14A14.75,14.75 0,0 1,349.77 250.89L62.23,250.89A14.75,14.75 0,0 1,47.48 236.14L47.48,66.19A14.75,14.75 0,0 1,62.23 51.44L349.77,51.44A14.75,14.75 0,0 1,364.52 66.19z"
-        android:strokeWidth="2.5"
-        android:fillColor="#ffffff"
-        android:strokeColor="#DADCE0"/>
-    <path
-        android:pathData="M311.45,50.35C311.45,48.98 312.56,47.86 313.92,47.86L322.84,47.86C324.2,47.86 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
-        android:fillColor="#DADCE0"/>
-    <path
-        android:pathData="M170.9,232.14L241.9,232.14A2,2 0,0 1,243.9 234.14L243.9,234.14A2,2 0,0 1,241.9 236.14L170.9,236.14A2,2 0,0 1,168.9 234.14L168.9,234.14A2,2 0,0 1,170.9 232.14z"
-        android:fillColor="#DADCE0"/>
-    <path
-        android:pathData="M198.35,229.14V217.74H203.25L196.35,205.54L189.45,217.74H194.35V229.14C192.45,229.94 191.15,231.74 191.15,233.94C191.15,236.84 193.45,239.14 196.35,239.14C199.25,239.14 201.55,236.84 201.55,233.94C201.55,231.84 200.15,229.94 198.35,229.14Z"
-        android:fillColor="#1A73E8"/>
-    <path
-        android:pathData="M217.65,229.14V217.74H222.55L215.65,205.54L208.75,217.74H213.65V229.14C211.75,229.94 210.45,231.74 210.45,233.94C210.45,236.84 212.75,239.14 215.65,239.14C218.55,239.14 220.85,236.84 220.85,233.94C220.85,231.84 219.55,229.94 217.65,229.14Z"
-        android:fillColor="#1A73E8"/>
-  </group>
-</vector>
diff --git a/res/drawable/accessibility_gesture_navigation_three_finger_preview.xml b/res/drawable/accessibility_gesture_navigation_three_finger_preview.xml
deleted file mode 100644
index c14d744..0000000
--- a/res/drawable/accessibility_gesture_navigation_three_finger_preview.xml
+++ /dev/null
@@ -1,71 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2021 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.
--->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:aapt="http://schemas.android.com/aapt"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <path
-      android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5v-243C0,12.8 12.5,0 27.8,0h356.5C399.5,0 412,12.8 412,28.5v243.2C412,287.2 399.5,300 384.2,300z"
-      android:fillColor="#FFFFFF"/>
-  <path
-      android:pathData="M274.9,97.7v-9.5c0,-1.3 -1.1,-2.4 -2.4,-2.4V35.9c0,-6.6 -5.3,-11.9 -11.9,-11.9H151.3c-6.6,0 -11.9,5.3 -11.9,11.9v228.2c0,6.6 5.3,11.9 11.9,11.9h109.4c6.6,0 11.9,-5.3 11.9,-11.9V147.6c1.3,0 2.4,-1.1 2.4,-2.4v-23.8c0,-1.3 -1.1,-2.4 -2.4,-2.4v-19C273.9,100.1 274.9,99 274.9,97.7zM270.2,264.1c0,5.2 -4.3,9.5 -9.5,9.5H151.3c-5.2,0 -9.5,-4.3 -9.5,-9.5V35.9c0,-5.2 4.3,-9.5 9.5,-9.5h109.4c5.2,0 9.5,4.3 9.5,9.5V264.1z"
-      android:fillColor="#DADCE0"/>
-  <path
-      android:pathData="M176.7,209.6c-3.7,0 -6.6,3 -6.6,6.6v24.6h13.3v-24.6C183.4,212.6 180.4,209.6 176.7,209.6z">
-    <aapt:attr name="android:fillColor">
-      <gradient
-          android:startY="240.8954"
-          android:startX="176.7163"
-          android:endY="209.6335"
-          android:endX="176.7163"
-          android:type="linear">
-        <item android:offset="0" android:color="#00669DF6"/>
-        <item android:offset="0.695" android:color="#FF669DF6"/>
-      </gradient>
-    </aapt:attr>
-  </path>
-  <path
-      android:pathData="M206,209.6c-3.7,0 -6.6,3 -6.6,6.6v24.6h13.3v-24.6C212.6,212.6 209.7,209.6 206,209.6z">
-    <aapt:attr name="android:fillColor">
-      <gradient
-          android:startY="240.8954"
-          android:startX="206"
-          android:endY="209.6335"
-          android:endX="206"
-          android:type="linear">
-        <item android:offset="0" android:color="#00669DF6"/>
-        <item android:offset="0.695" android:color="#FF669DF6"/>
-      </gradient>
-    </aapt:attr>
-  </path>
-  <path
-      android:pathData="M235.3,209.6c-3.7,0 -6.6,3 -6.6,6.6v24.6h13.3v-24.6C241.9,212.6 239,209.6 235.3,209.6z">
-    <aapt:attr name="android:fillColor">
-      <gradient
-          android:startY="240.8954"
-          android:startX="235.2837"
-          android:endY="209.6335"
-          android:endX="235.2837"
-          android:type="linear">
-        <item android:offset="0" android:color="#00669DF6"/>
-        <item android:offset="0.695" android:color="#FF669DF6"/>
-      </gradient>
-    </aapt:attr>
-  </path>
-</vector>
diff --git a/res/drawable/accessibility_gesture_navigation_three_finger_preview_tablet.xml b/res/drawable/accessibility_gesture_navigation_three_finger_preview_tablet.xml
deleted file mode 100644
index fab0853..0000000
--- a/res/drawable/accessibility_gesture_navigation_three_finger_preview_tablet.xml
+++ /dev/null
@@ -1,80 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2023 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.
--->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:aapt="http://schemas.android.com/aapt"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <group>
-    <clip-path
-        android:pathData="M0,0h412v300h-412z"/>
-    <path
-        android:pathData="M263.59,50.35C263.59,48.98 264.7,47.86 266.06,47.86L287.85,47.86C289.22,47.86 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
-        android:fillColor="#DADCE0"/>
-    <path
-        android:pathData="M364.52,66.19L364.52,236.14A14.75,14.75 0,0 1,349.77 250.89L62.23,250.89A14.75,14.75 0,0 1,47.48 236.14L47.48,66.19A14.75,14.75 0,0 1,62.23 51.44L349.77,51.44A14.75,14.75 0,0 1,364.52 66.19z"
-        android:strokeWidth="2.5"
-        android:fillColor="#ffffff"
-        android:strokeColor="#DADCE0"/>
-    <path
-        android:pathData="M311.45,50.35C311.45,48.98 312.56,47.86 313.92,47.86L322.84,47.86C324.2,47.86 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
-        android:fillColor="#DADCE0"/>
-    <path
-        android:pathData="M176.84,188.94C173.14,188.94 170.24,191.94 170.24,195.54V220.14H183.54V195.54C183.54,191.94 180.54,188.94 176.84,188.94Z">
-      <aapt:attr name="android:fillColor">
-        <gradient
-            android:startX="176.89"
-            android:startY="220.23"
-            android:endX="176.89"
-            android:endY="188.97"
-            android:type="linear">
-          <item android:offset="0" android:color="#001A73E8"/>
-          <item android:offset="0.69" android:color="#FF1A73E8"/>
-        </gradient>
-      </aapt:attr>
-    </path>
-    <path
-        android:pathData="M206.14,188.94C202.44,188.94 199.54,191.94 199.54,195.54V220.14H212.84V195.54C212.74,191.94 209.84,188.94 206.14,188.94Z">
-      <aapt:attr name="android:fillColor">
-        <gradient
-            android:startX="206.19"
-            android:startY="220.23"
-            android:endX="206.19"
-            android:endY="188.97"
-            android:type="linear">
-          <item android:offset="0" android:color="#001A73E8"/>
-          <item android:offset="0.69" android:color="#FF1A73E8"/>
-        </gradient>
-      </aapt:attr>
-    </path>
-    <path
-        android:pathData="M235.44,188.94C231.74,188.94 228.84,191.94 228.84,195.54V220.14H242.14V195.54C242.04,191.94 239.14,188.94 235.44,188.94Z">
-      <aapt:attr name="android:fillColor">
-        <gradient
-            android:startX="235.49"
-            android:startY="220.23"
-            android:endX="235.49"
-            android:endY="188.97"
-            android:type="linear">
-          <item android:offset="0" android:color="#001A73E8"/>
-          <item android:offset="0.69" android:color="#FF1A73E8"/>
-        </gradient>
-      </aapt:attr>
-    </path>
-  </group>
-</vector>
diff --git a/res/drawable/accessibility_gesture_navigation_two_finger_preview.xml b/res/drawable/accessibility_gesture_navigation_two_finger_preview.xml
deleted file mode 100644
index 3ef4fd1..0000000
--- a/res/drawable/accessibility_gesture_navigation_two_finger_preview.xml
+++ /dev/null
@@ -1,57 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2021 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.
--->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:aapt="http://schemas.android.com/aapt"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <path
-      android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5v-243C0,12.8 12.5,0 27.8,0h356.5C399.5,0 412,12.8 412,28.5v243.2C412,287.2 399.5,300 384.2,300z"
-      android:fillColor="#FFFFFF"/>
-  <path
-      android:pathData="M274.9,97.7v-9.5c0,-1.3 -1.1,-2.4 -2.4,-2.4V35.9c0,-6.6 -5.3,-11.9 -11.9,-11.9H151.3c-6.6,0 -11.9,5.3 -11.9,11.9v228.2c0,6.6 5.3,11.9 11.9,11.9h109.4c6.6,0 11.9,-5.3 11.9,-11.9V147.6c1.3,0 2.4,-1.1 2.4,-2.4v-23.8c0,-1.3 -1.1,-2.4 -2.4,-2.4v-19C273.9,100.1 274.9,99 274.9,97.7zM270.2,264.1c0,5.2 -4.3,9.5 -9.5,9.5H151.3c-5.2,0 -9.5,-4.3 -9.5,-9.5V35.9c0,-5.2 4.3,-9.5 9.5,-9.5h109.4c5.2,0 9.5,4.3 9.5,9.5V264.1z"
-      android:fillColor="#DADCE0"/>
-  <path
-      android:pathData="M188.6,209.6c-3.7,0 -6.6,3 -6.6,6.6v24.6h13.3v-24.6C195.3,212.6 192.3,209.6 188.6,209.6z">
-    <aapt:attr name="android:fillColor">
-      <gradient
-          android:startY="240.8954"
-          android:startX="188.65"
-          android:endY="209.6335"
-          android:endX="188.65"
-          android:type="linear">
-        <item android:offset="0" android:color="#00669DF6"/>
-        <item android:offset="0.695" android:color="#FF669DF6"/>
-      </gradient>
-    </aapt:attr>
-  </path>
-  <path
-      android:pathData="M223.4,209.6c-3.7,0 -6.6,3 -6.6,6.6v24.6H230v-24.6C230,212.6 227.1,209.6 223.4,209.6z">
-    <aapt:attr name="android:fillColor">
-      <gradient
-          android:startY="240.8954"
-          android:startX="223.4"
-          android:endY="209.6335"
-          android:endX="223.4"
-          android:type="linear">
-        <item android:offset="0" android:color="#00669DF6"/>
-        <item android:offset="0.695" android:color="#FF669DF6"/>
-      </gradient>
-    </aapt:attr>
-  </path>
-</vector>
diff --git a/res/drawable/accessibility_gesture_navigation_two_finger_preview_tablet.xml b/res/drawable/accessibility_gesture_navigation_two_finger_preview_tablet.xml
deleted file mode 100644
index f976f02..0000000
--- a/res/drawable/accessibility_gesture_navigation_two_finger_preview_tablet.xml
+++ /dev/null
@@ -1,66 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2023 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.
--->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:aapt="http://schemas.android.com/aapt"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <group>
-    <clip-path
-        android:pathData="M0,0h412v300h-412z"/>
-    <path
-        android:pathData="M263.59,50.35C263.59,48.98 264.7,47.86 266.06,47.86L287.85,47.86C289.22,47.86 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
-        android:fillColor="#DADCE0"/>
-    <path
-        android:pathData="M364.52,66.19L364.52,236.14A14.75,14.75 0,0 1,349.77 250.89L62.23,250.89A14.75,14.75 0,0 1,47.48 236.14L47.48,66.19A14.75,14.75 0,0 1,62.23 51.44L349.77,51.44A14.75,14.75 0,0 1,364.52 66.19z"
-        android:strokeWidth="2.5"
-        android:fillColor="#ffffff"
-        android:strokeColor="#DADCE0"/>
-    <path
-        android:pathData="M311.45,50.35C311.45,48.98 312.56,47.86 313.92,47.86L322.84,47.86C324.2,47.86 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
-        android:fillColor="#DADCE0"/>
-    <path
-        android:pathData="M188.15,188.94C184.45,188.94 181.55,191.94 181.55,195.54V220.14H194.85V195.54C194.85,191.94 191.85,188.94 188.15,188.94Z">
-      <aapt:attr name="android:fillColor">
-        <gradient
-            android:startX="188.2"
-            android:startY="220.23"
-            android:endX="188.2"
-            android:endY="188.97"
-            android:type="linear">
-          <item android:offset="0" android:color="#001A73E8"/>
-          <item android:offset="0.69" android:color="#FF1A73E8"/>
-        </gradient>
-      </aapt:attr>
-    </path>
-    <path
-        android:pathData="M222.95,188.94C219.25,188.94 216.35,191.94 216.35,195.54V220.14H229.55V195.54C229.55,191.94 226.65,188.94 222.95,188.94Z">
-      <aapt:attr name="android:fillColor">
-        <gradient
-            android:startX="222.95"
-            android:startY="220.23"
-            android:endX="222.95"
-            android:endY="188.97"
-            android:type="linear">
-          <item android:offset="0" android:color="#001A73E8"/>
-          <item android:offset="0.69" android:color="#FF1A73E8"/>
-        </gradient>
-      </aapt:attr>
-    </path>
-  </group>
-</vector>
diff --git a/res/drawable/accessibility_shortcut_type_hardware.xml b/res/drawable/accessibility_shortcut_type_hardware.xml
deleted file mode 100644
index b6b227b..0000000
--- a/res/drawable/accessibility_shortcut_type_hardware.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2021 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.
--->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <path
-      android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5v-243C0,12.8 12.5,0 27.8,0h356.5C399.5,0 412,12.8 412,28.5v243.2C412,287.2 399.5,300 384.2,300z"
-      android:fillColor="#FFFFFF"/>
-  <path
-      android:pathData="M287,187.8v-1.5h2.9v-13.7c0,-1.6 -1.3,-2.9 -2.9,-2.9v-23.2c1.6,0 2.9,-1.3 2.9,-2.9V132c0,-1.6 -1.3,-2.9 -2.9,-2.9V68.4c0,-8 -6.5,-14.5 -14.5,-14.5H139.4c-8,0 -14.5,6.5 -14.5,14.5v185.3c1,0.7 1.9,1.4 2.9,2.1V68.4c0,-6.4 5.2,-11.6 11.6,-11.6h133.1c6.4,0 11.6,5.2 11.6,11.6v188.7c1,-0.7 1.9,-1.4 2.9,-2.2v-50.5c1.6,0 2.9,-1.3 2.9,-2.9v-13.7L287,187.8L287,187.8z"
-      android:fillColor="#DADCE0"/>
-  <path
-      android:pathData="M287,204.4c1.6,0 2.9,-1.3 2.9,-2.9v-14H287v-0.9h2.9v-14c0,-1.6 -1.3,-2.9 -2.9,-2.9"
-      android:fillColor="#1A73E8"/>
-  <path
-      android:pathData="M206.7,19.1c35,0 67.9,13.6 92.6,38.4C324,82.1 337.6,115 337.6,150s-13.6,67.9 -38.4,92.6c-24.7,24.7 -57.6,38.4 -92.6,38.4s-67.9,-13.6 -92.6,-38.4C89.4,217.9 75.7,185 75.7,150s13.6,-67.9 38.4,-92.6C138.9,32.7 171.7,19.1 206.7,19.1M206.7,17.1c-73.4,0 -133,59.5 -133,132.9s59.5,132.9 132.9,132.9s133,-59.5 133,-132.9S280.1,17.1 206.7,17.1L206.7,17.1z"
-      android:fillColor="#E8EAED"/>
-</vector>
diff --git a/res/drawable/accessibility_shortcut_type_hardware_tablet.xml b/res/drawable/accessibility_shortcut_type_hardware_tablet.xml
deleted file mode 100644
index db0906e..0000000
--- a/res/drawable/accessibility_shortcut_type_hardware_tablet.xml
+++ /dev/null
@@ -1,44 +0,0 @@
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <group>
-    <clip-path
-        android:pathData="M0,0h412v300h-412z"/>
-    <path
-        android:pathData="M255.38,94.3C255.38,93.14 256.32,92.21 257.47,92.21L275.86,92.21C277.01,92.21 277.95,93.14 277.95,94.3L267.08,95.14L255.38,94.3Z"
-        android:fillColor="#669DF6"/>
-    <path
-        android:pathData="M340.09,110.17L340.09,248.55A14.5,14.5 0,0 1,325.59 263.05L88,263.05A14.5,14.5 0,0 1,73.5 248.55L73.5,110.17A14.5,14.5 0,0 1,88 95.67L325.59,95.67A14.5,14.5 0,0 1,340.09 110.17z"
-        android:strokeWidth="3"
-        android:fillColor="#ffffff"
-        android:strokeColor="#DADCE0"/>
-    <path
-        android:pathData="M295.77,94.3C295.77,93.14 296.7,92.21 297.86,92.21L305.38,92.21C306.53,92.21 307.46,93.14 307.46,94.3L302.45,95.14L295.77,94.3Z"
-        android:fillColor="#DADCE0"/>
-    <group>
-      <clip-path
-          android:pathData="M274,30L274,30A93,93 0,0 1,367 123L367,123A93,93 0,0 1,274 216L274,216A93,93 0,0 1,181 123L181,123A93,93 0,0 1,274 30z"/>
-      <path
-          android:pathData="M274,30L274,30A93,93 0,0 1,367 123L367,123A93,93 0,0 1,274 216L274,216A93,93 0,0 1,181 123L181,123A93,93 0,0 1,274 30z"
-          android:fillColor="#ffffff"/>
-      <path
-          android:pathData="M206.07,85.49C206.07,83.45 207.72,81.79 209.75,81.79L242.17,81.79C244.21,81.79 245.86,83.45 245.86,85.49L226.7,86.97L206.07,85.49Z"
-          android:fillColor="#669DF6"/>
-      <path
-          android:pathData="M331.59,87C339.46,87 345.84,93.38 345.84,101.25L345.84,369.73C345.84,377.6 339.46,383.98 331.59,383.98L-111.85,383.98C-119.72,383.98 -126.1,377.6 -126.1,369.73L-126.1,101.25C-126.1,93.38 -119.72,87 -111.85,87L331.59,87Z"
-          android:strokeWidth="3.5"
-          android:fillColor="#ffffff"
-          android:strokeColor="#DADCE0"/>
-      <path
-          android:pathData="M266.77,85.49C266.77,83.45 268.42,81.79 270.46,81.79L283.72,81.79C285.75,81.79 287.4,83.45 287.4,85.49L278.56,86.97L266.77,85.49Z"
-          android:fillColor="#DADCE0"/>
-    </group>
-    <path
-        android:strokeWidth="1"
-        android:pathData="M274,30.5L274,30.5A92.5,92.5 0,0 1,366.5 123L366.5,123A92.5,92.5 0,0 1,274 215.5L274,215.5A92.5,92.5 0,0 1,181.5 123L181.5,123A92.5,92.5 0,0 1,274 30.5z"
-        android:fillColor="#00000000"
-        android:strokeColor="#DADCE0"/>
-  </group>
-</vector>
diff --git a/res/drawable/accessibility_shortcut_type_software.xml b/res/drawable/accessibility_shortcut_type_software.xml
deleted file mode 100644
index d0573aa..0000000
--- a/res/drawable/accessibility_shortcut_type_software.xml
+++ /dev/null
@@ -1,48 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2021 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.
--->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <path
-      android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5V28.5C0,12.8 12.5,0 27.8,0H384.3C399.5,0 412,12.8 412,28.5V271.7C412,287.2 399.5,300 384.2,300Z"
-      android:fillColor="#fff"/>
-  <path
-      android:pathData="M142,225.3H275.1a14.51,14.51 0,0 0,14.5 -14.5V69a2.9,2.9 0,0 0,2.9 -2.9v-17c-1.9,-1.6 -3.8,-3.2 -5.8,-4.7V210.8a11.61,11.61 0,0 1,-11.6 11.6H142a11.61,11.61 0,0 1,-11.6 -11.6V42.7c-1,0.7 -1.9,1.4 -2.9,2.1V210.9A14.62,14.62 0,0 0,142 225.3Z"
-      android:fillColor="#dadce0"/>
-  <path
-      android:pathData="M207.4,19.1a131.11,131.11 0,0 1,131 131,131 131,0 0,1 -262,-0.1 130.94,130.94 0,0 1,131 -130.9m0,-2A132.9,132.9 0,1 0,340.3 150,133 133,0 0,0 207.4,17.1Z"
-      android:fillColor="#e8eaed"/>
-  <path
-      android:fillColor="#FF000000"
-      android:pathData="M286.7,210.83a11.59,11.59 0,0 1,-11.58 11.58H142a11.59,11.59 0,0 1,-11.58 -11.58V183.26H286.7Z"/>
-  <path
-      android:pathData="M250.41,193.38a1.77,1.77 0,1 1,-1.78 1.77A1.77,1.77 0,0 1,250.41 193.38ZM253.07,199.58v11.53h-1.78v-5.32h-1.77v5.32h-1.77L247.75,199.58a30.78,30.78 0,0 1,-5.32 -0.89l0.44,-1.77a32.34,32.34 0,0 0,15.07 0l0.45,1.77A30.78,30.78 0,0 1,253.07 199.58Z"
-      android:fillColor="#fff"/>
-  <path
-      android:pathData="M208.55,202.84m-6.13,0a6.13,6.13 0,1 1,12.26 0a6.13,6.13 0,1 1,-12.26 0"
-      android:fillColor="#bdc1c6"/>
-  <path
-      android:pathData="M250.41,202.84m-22.28,0a22.28,22.28 0,1 1,44.56 0a22.28,22.28 0,1 1,-44.56 0"
-      android:strokeWidth="2"
-      android:fillColor="#00000000"
-      android:strokeColor="#1a73e8"/>
-  <path
-      android:pathData="M160.45,202.84l10.43,6.02l0,-12.05l-10.43,6.03z"
-      android:fillColor="#bdc1c6"/>
-</vector>
diff --git a/res/drawable/accessibility_shortcut_type_software_floating.xml b/res/drawable/accessibility_shortcut_type_software_floating.xml
deleted file mode 100644
index 88ce42d..0000000
--- a/res/drawable/accessibility_shortcut_type_software_floating.xml
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2021 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.
--->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <path
-      android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5V28.5C0,12.8 12.5,0 27.8,0H384.3C399.5,0 412,12.8 412,28.5V271.7C412,287.2 399.5,300 384.2,300Z"
-      android:fillColor="#fff"/>
-  <path
-      android:pathData="M142,225.3H275.1a14.51,14.51 0,0 0,14.5 -14.5V69a2.9,2.9 0,0 0,2.9 -2.9v-17c-1.9,-1.6 -3.8,-3.2 -5.8,-4.7V210.8a11.61,11.61 0,0 1,-11.6 11.6H142a11.61,11.61 0,0 1,-11.6 -11.6V42.7c-1,0.7 -1.9,1.4 -2.9,2.1V210.9A14.62,14.62 0,0 0,142 225.3Z"
-      android:fillColor="#dadce0"/>
-  <path
-      android:strokeWidth="1"
-      android:pathData="M286.7,144.13H266a19.63,19.63 0,1 0,0 39.26H286.7"
-      android:fillColor="#00000000"
-      android:strokeColor="#dadce0"/>
-  <path
-      android:pathData="M266,148.65a15.11,15.11 0,1 0,15.1 15.11A15.11,15.11 0,0 0,266 148.65ZM266,155.93a1.59,1.59 0,0 1,0 3.17,1.59 1.59,0 1,1 0,-3.17ZM268.37,161.47v10.29h-1.58L266.79,167h-1.59v4.75h-1.58L263.62,161.47a27.23,27.23 0,0 1,-4.75 -0.79l0.4,-1.58a29.06,29.06 0,0 0,13.46 0l0.39,1.58A27.23,27.23 0,0 1,268.33 161.47Z"
-      android:fillColor="#5f6368"/>
-  <path
-      android:pathData="M207.4,19.1a131.11,131.11 0,0 1,131 131,131 131,0 0,1 -262,-0.1 130.94,130.94 0,0 1,131 -130.9m0,-2A132.9,132.9 0,1 0,340.3 150,133 133,0 0,0 207.4,17.1Z"
-      android:fillColor="#e8eaed"/>
-</vector>
diff --git a/res/drawable/accessibility_shortcut_type_software_floating_tablet.xml b/res/drawable/accessibility_shortcut_type_software_floating_tablet.xml
deleted file mode 100644
index 4b04704..0000000
--- a/res/drawable/accessibility_shortcut_type_software_floating_tablet.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <group>
-    <clip-path
-        android:pathData="M0,0h412v300h-412z"/>
-    <path
-        android:pathData="M263.59,50.35C263.59,48.98 264.7,47.86 266.06,47.86L287.85,47.86C289.22,47.86 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
-        android:fillColor="#DADCE0"/>
-    <path
-        android:pathData="M364.52,66.19L364.52,236.14A14.75,14.75 0,0 1,349.77 250.89L62.23,250.89A14.75,14.75 0,0 1,47.48 236.14L47.48,66.19A14.75,14.75 0,0 1,62.23 51.44L349.77,51.44A14.75,14.75 0,0 1,364.52 66.19z"
-        android:strokeWidth="2.5"
-        android:fillColor="#ffffff"
-        android:strokeColor="#DADCE0"/>
-    <path
-        android:pathData="M311.45,50.35C311.45,48.98 312.56,47.86 313.92,47.86L322.84,47.86C324.2,47.86 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
-        android:fillColor="#DADCE0"/>
-  </group>
-  <path
-      android:strokeWidth="1"
-      android:pathData="M365.64,179.48H344.94C339.74,179.48 334.74,181.54 331.06,185.23C327.38,188.91 325.31,193.9 325.31,199.11C325.31,204.31 327.38,209.3 331.06,212.99C334.74,216.67 339.74,218.74 344.94,218.74H365.64"
-      android:fillColor="#00000000"
-      android:strokeColor="#DADCE0"/>
-  <path
-      android:pathData="M344.95,184C341.96,183.99 339.04,184.88 336.55,186.54C334.06,188.2 332.12,190.56 330.98,193.32C329.83,196.08 329.53,199.12 330.11,202.05C330.7,204.98 332.14,207.67 334.25,209.79C336.36,211.9 339.05,213.34 341.98,213.93C344.92,214.51 347.95,214.21 350.72,213.07C353.48,211.92 355.84,209.99 357.5,207.5C359.16,205.02 360.05,202.1 360.05,199.11C360.05,195.1 358.46,191.26 355.62,188.43C352.79,185.59 348.95,184 344.95,184ZM344.95,191.28C345.35,191.31 345.72,191.49 345.99,191.78C346.26,192.08 346.41,192.46 346.41,192.86C346.41,193.26 346.26,193.65 345.99,193.94C345.72,194.23 345.35,194.41 344.95,194.45C344.73,194.46 344.51,194.43 344.3,194.36C344.09,194.29 343.9,194.18 343.74,194.03C343.58,193.88 343.45,193.7 343.36,193.5C343.28,193.3 343.23,193.08 343.23,192.86C343.23,192.64 343.28,192.43 343.36,192.22C343.45,192.02 343.58,191.84 343.74,191.69C343.9,191.54 344.09,191.43 344.3,191.36C344.51,191.29 344.73,191.26 344.95,191.28ZM347.32,196.82V207.11H345.74V202.35H344.15V207.1H342.57V196.82C340.96,196.69 339.37,196.43 337.82,196.03L338.22,194.45C342.64,195.5 347.25,195.5 351.68,194.45L352.07,196.03C350.5,196.43 348.89,196.7 347.28,196.82H347.32Z"
-      android:fillColor="#5F6368"/>
-</vector>
diff --git a/res/drawable/accessibility_shortcut_type_software_gesture.xml b/res/drawable/accessibility_shortcut_type_software_gesture.xml
deleted file mode 100644
index 2ded59f..0000000
--- a/res/drawable/accessibility_shortcut_type_software_gesture.xml
+++ /dev/null
@@ -1,58 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2021 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.
--->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-    <path
-        android:fillColor="#FF000000"
-        android:pathData="M842.3,299.9H485.9c-15.3,0 -27.8,-12.8 -27.8,-28.5v-243c0,-15.7 12.5,-28.5 27.8,-28.5h356.5c15.2,0 27.7,12.8 27.7,28.5v243.2C870.1,287.1 857.6,299.9 842.3,299.9z"/>
-    <path
-        android:pathData="M597.6,225.2h133.1c8,0 14.5,-6.5 14.5,-14.5V68.9c1.6,0 2.9,-1.3 2.9,-2.9V49c-1.9,-1.6 -3.8,-3.2 -5.8,-4.7v166.4c0,6.4 -5.2,11.6 -11.6,11.6H597.6c-6.4,0 -11.6,-5.2 -11.6,-11.6V42.6c-1,0.7 -1.9,1.4 -2.9,2.1v166.1C583.2,218.7 589.7,225.2 597.6,225.2z"
-        android:fillColor="#80868B"/>
-    <path
-        android:pathData="M688,207.8h-47.8c-1.1,0 -2,0.9 -2,2s0.9,2 2,2H688c1.1,0 2,-0.9 2,-2S689.1,207.8 688,207.8z"
-        android:fillColor="#80868B"/>
-    <path
-        android:pathData="M656.5,205.6v-11.4h4.9l-6.9,-12.2l-6.9,12.2h4.9v11.4c-1.9,0.8 -3.2,2.6 -3.2,4.8c0,2.9 2.3,5.2 5.2,5.2c2.9,0 5.2,-2.3 5.2,-5.2C659.7,208.3 658.3,206.4 656.5,205.6z"
-        android:fillColor="#669DF6"/>
-    <path
-        android:pathData="M675.8,205.6v-11.4h4.9l-6.9,-12.2l-6.9,12.2h4.9v11.4c-1.9,0.8 -3.2,2.6 -3.2,4.8c0,2.9 2.3,5.2 5.2,5.2c2.9,0 5.2,-2.3 5.2,-5.2C679,208.3 677.7,206.4 675.8,205.6z"
-        android:fillColor="#669DF6"/>
-    <path
-        android:pathData="M664.2,19c35,0 67.9,13.6 92.6,38.4c24.7,24.7 38.4,57.6 38.4,92.6s-13.6,67.9 -38.4,92.6c-24.7,24.7 -57.6,38.4 -92.6,38.4s-67.9,-13.6 -92.6,-38.4c-24.7,-24.8 -38.4,-57.7 -38.4,-92.7s13.6,-67.9 38.4,-92.6C596.3,32.6 629.2,19 664.2,19M664.2,17c-73.4,0 -133,59.5 -133,132.9s59.5,132.9 132.9,132.9s133,-59.5 133,-132.9S737.6,17 664.2,17L664.2,17z"
-        android:fillColor="#3C4043"/>
-    <path
-        android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5v-243C0,12.8 12.5,0 27.8,0h356.5C399.5,0 412,12.8 412,28.5v243.2C412,287.2 399.5,300 384.2,300z"
-        android:fillColor="#FFFFFF"/>
-    <path
-        android:pathData="M139.4,225.3h133.1c8,0 14.5,-6.5 14.5,-14.5V69c1.6,0 2.9,-1.3 2.9,-2.9v-17c-1.9,-1.6 -3.8,-3.2 -5.8,-4.7v166.4c0,6.4 -5.2,11.6 -11.6,11.6H139.4c-6.4,0 -11.6,-5.2 -11.6,-11.6V42.7c-1,0.7 -1.9,1.4 -2.9,2.1v166.1C125,218.8 131.5,225.3 139.4,225.3z"
-        android:fillColor="#DADCE0"/>
-    <path
-        android:pathData="M229.9,207.9h-47.8c-1.1,0 -2,0.9 -2,2s0.9,2 2,2h47.8c1.1,0 2,-0.9 2,-2S231,207.9 229.9,207.9z"
-        android:fillColor="#DADCE0"/>
-    <path
-        android:pathData="M198.4,205.7v-11.4h4.9l-6.9,-12.2l-6.9,12.2h4.9v11.4c-1.9,0.8 -3.2,2.6 -3.2,4.8c0,2.9 2.3,5.2 5.2,5.2s5.2,-2.3 5.2,-5.2C201.5,208.4 200.1,206.5 198.4,205.7z"
-        android:fillColor="#1A73E8"/>
-    <path
-        android:pathData="M217.6,205.7v-11.4h4.9l-6.9,-12.2l-6.9,12.2h4.9v11.4c-1.9,0.8 -3.2,2.6 -3.2,4.8c0,2.9 2.3,5.2 5.2,5.2s5.2,-2.3 5.2,-5.2C220.9,208.4 219.5,206.5 217.6,205.7z"
-        android:fillColor="#1A73E8"/>
-    <path
-        android:pathData="M206.1,19.1c35,0 67.9,13.6 92.6,38.4c24.7,24.7 38.4,57.6 38.4,92.6s-13.6,67.9 -38.4,92.6c-24.7,24.7 -57.6,38.4 -92.6,38.4s-67.9,-13.6 -92.6,-38.4S75.1,185 75.1,150s13.6,-67.9 38.4,-92.6C138.2,32.7 171.1,19.1 206.1,19.1M206.1,17.1c-73.4,0 -133,59.5 -133,132.9S132.6,282.9 206,282.9S339,223.4 339,150S279.5,17.1 206.1,17.1L206.1,17.1z"
-        android:fillColor="#E8EAED"/>
-</vector>
diff --git a/res/drawable/accessibility_shortcut_type_software_gesture_tablet.xml b/res/drawable/accessibility_shortcut_type_software_gesture_tablet.xml
deleted file mode 100644
index 2dccf2a..0000000
--- a/res/drawable/accessibility_shortcut_type_software_gesture_tablet.xml
+++ /dev/null
@@ -1,46 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2023 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.
--->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-    <group>
-        <clip-path
-            android:pathData="M0,0h412v300h-412z"/>
-        <path
-            android:pathData="M263.59,50.35C263.59,48.98 264.7,47.86 266.06,47.86L287.85,47.86C289.22,47.86 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
-            android:fillColor="#DADCE0"/>
-        <path
-            android:pathData="M364.52,66.19L364.52,236.14A14.75,14.75 0,0 1,349.77 250.89L62.23,250.89A14.75,14.75 0,0 1,47.48 236.14L47.48,66.19A14.75,14.75 0,0 1,62.23 51.44L349.77,51.44A14.75,14.75 0,0 1,364.52 66.19z"
-            android:strokeWidth="2.5"
-            android:fillColor="#ffffff"
-            android:strokeColor="#DADCE0"/>
-        <path
-            android:pathData="M311.45,50.35C311.45,48.98 312.56,47.86 313.92,47.86L322.84,47.86C324.2,47.86 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
-            android:fillColor="#DADCE0"/>
-        <path
-            android:pathData="M170.9,232.14L241.9,232.14A2,2 0,0 1,243.9 234.14L243.9,234.14A2,2 0,0 1,241.9 236.14L170.9,236.14A2,2 0,0 1,168.9 234.14L168.9,234.14A2,2 0,0 1,170.9 232.14z"
-            android:fillColor="#DADCE0"/>
-        <path
-            android:pathData="M198.35,229.14V217.74H203.25L196.35,205.54L189.45,217.74H194.35V229.14C192.45,229.94 191.15,231.74 191.15,233.94C191.15,236.84 193.45,239.14 196.35,239.14C199.25,239.14 201.55,236.84 201.55,233.94C201.55,231.84 200.15,229.94 198.35,229.14Z"
-            android:fillColor="#1A73E8"/>
-        <path
-            android:pathData="M217.65,229.14V217.74H222.55L215.65,205.54L208.75,217.74H213.65V229.14C211.75,229.94 210.45,231.74 210.45,233.94C210.45,236.84 212.75,239.14 215.65,239.14C218.55,239.14 220.85,236.84 220.85,233.94C220.85,231.84 219.55,229.94 217.65,229.14Z"
-            android:fillColor="#1A73E8"/>
-    </group>
-</vector>
diff --git a/res/drawable/accessibility_shortcut_type_software_gesture_talkback.xml b/res/drawable/accessibility_shortcut_type_software_gesture_talkback.xml
deleted file mode 100644
index 2de804c..0000000
--- a/res/drawable/accessibility_shortcut_type_software_gesture_talkback.xml
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2021 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.
--->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-    <path
-        android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5v-243C0,12.8 12.5,0 27.8,0h356.5C399.5,0 412,12.8 412,28.5v243.2C412,287.2 399.5,300 384.2,300z"
-        android:fillColor="#FFFFFF"/>
-    <path
-        android:pathData="M138,225.3h133.1c8,0 14.5,-6.5 14.5,-14.5V69c1.6,0 2.9,-1.3 2.9,-2.9V45.7c-1.9,-1.5 -3.8,-2.9 -5.8,-4.3v169.4c0,6.4 -5.2,11.6 -11.6,11.6H138c-6.4,0 -11.6,-5.2 -11.6,-11.6V43.5c-1,0.7 -1.9,1.5 -2.9,2.2v165C123.5,218.8 130,225.3 138,225.3z"
-        android:fillColor="#DADCE0"/>
-    <path
-        android:pathData="M206,283.9c-73.9,0 -133.9,-60.1 -133.9,-133.9S132.1,16.1 206,16.1c73.9,0 133.9,60.1 133.9,133.9S279.9,283.9 206,283.9zM206,18.1C133.2,18.1 74.1,77.2 74.1,150S133.2,281.9 206,281.9S337.9,222.8 337.9,150S278.8,18.1 206,18.1z"
-        android:fillColor="#E8EAED"/>
-    <path
-        android:pathData="M229.9,207.9h-47.8c-1.1,0 -2,0.9 -2,2s0.9,2 2,2h47.8c1.1,0 2,-0.9 2,-2S231,207.9 229.9,207.9z"
-        android:fillColor="#DADCE0"/>
-    <path
-        android:pathData="M190.9,205.7v-11.4h4.9l-6.9,-12.2l-6.9,12.2h4.9v11.4c-1.9,0.8 -3.2,2.6 -3.2,4.8c0,2.9 2.3,5.2 5.2,5.2c2.9,0 5.2,-2.3 5.2,-5.2C194.1,208.4 192.8,206.5 190.9,205.7z"
-        android:fillColor="#1A73E8"/>
-    <path
-        android:pathData="M208,205.7v-11.4h4.9l-6.9,-12.2l-6.9,12.2h4.9v11.4c-1.9,0.8 -3.2,2.6 -3.2,4.8c0,2.9 2.3,5.2 5.2,5.2c2.9,0 5.2,-2.3 5.2,-5.2C211.2,208.4 209.9,206.5 208,205.7z"
-        android:fillColor="#1A73E8"/>
-    <path
-        android:pathData="M225.1,205.7v-11.4h4.9l-6.9,-12.2l-6.9,12.2h4.9v11.4c-1.9,0.8 -3.2,2.6 -3.2,4.8c0,2.9 2.3,5.2 5.2,5.2c2.9,0 5.2,-2.3 5.2,-5.2C228.2,208.4 226.9,206.5 225.1,205.7z"
-        android:fillColor="#1A73E8"/>
-</vector>
\ No newline at end of file
diff --git a/res/drawable/accessibility_shortcut_type_software_gesture_talkback_tablet.xml b/res/drawable/accessibility_shortcut_type_software_gesture_talkback_tablet.xml
deleted file mode 100644
index e122ae1..0000000
--- a/res/drawable/accessibility_shortcut_type_software_gesture_talkback_tablet.xml
+++ /dev/null
@@ -1,49 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2023 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.
--->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-    <group>
-        <clip-path
-            android:pathData="M0,0h412v300h-412z"/>
-        <path
-            android:pathData="M263.59,50.35C263.59,48.98 264.7,47.86 266.06,47.86L287.85,47.86C289.22,47.86 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
-            android:fillColor="#DADCE0"/>
-        <path
-            android:pathData="M364.52,66.19L364.52,236.14A14.75,14.75 0,0 1,349.77 250.89L62.23,250.89A14.75,14.75 0,0 1,47.48 236.14L47.48,66.19A14.75,14.75 0,0 1,62.23 51.44L349.77,51.44A14.75,14.75 0,0 1,364.52 66.19z"
-            android:strokeWidth="2.5"
-            android:fillColor="#ffffff"
-            android:strokeColor="#DADCE0"/>
-        <path
-            android:pathData="M311.45,50.35C311.45,48.98 312.56,47.86 313.92,47.86L322.84,47.86C324.2,47.86 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
-            android:fillColor="#DADCE0"/>
-        <path
-            android:pathData="M170.9,232.14L241.9,232.14A2,2 0,0 1,243.9 234.14L243.9,234.14A2,2 0,0 1,241.9 236.14L170.9,236.14A2,2 0,0 1,168.9 234.14L168.9,234.14A2,2 0,0 1,170.9 232.14z"
-            android:fillColor="#DADCE0"/>
-        <path
-            android:pathData="M188.7,229.14V217.74H193.6L186.7,205.54L179.8,217.74H184.7V229.14C182.8,229.94 181.5,231.74 181.5,233.94C181.5,236.84 183.8,239.14 186.7,239.14C189.6,239.14 191.9,236.84 191.9,233.94C191.9,231.84 190.5,229.94 188.7,229.14Z"
-            android:fillColor="#1A73E8"/>
-        <path
-            android:pathData="M208,229.14V217.74H212.9L206,205.54L199.1,217.74H204V229.14C202.1,229.94 200.8,231.74 200.8,233.94C200.8,236.84 203.1,239.14 206,239.14C208.9,239.14 211.2,236.84 211.2,233.94C211.2,231.84 209.9,229.94 208,229.14Z"
-            android:fillColor="#1A73E8"/>
-        <path
-            android:pathData="M227.29,229.14V217.74H232.2L225.29,205.54L218.4,217.74H223.29V229.14C221.4,229.94 220.1,231.74 220.1,233.94C220.1,236.84 222.4,239.14 225.29,239.14C228.2,239.14 230.49,236.84 230.49,233.94C230.49,231.84 229.2,229.94 227.29,229.14Z"
-            android:fillColor="#1A73E8"/>
-    </group>
-</vector>
diff --git a/res/drawable/accessibility_shortcut_type_software_tablet.xml b/res/drawable/accessibility_shortcut_type_software_tablet.xml
deleted file mode 100644
index 334344d..0000000
--- a/res/drawable/accessibility_shortcut_type_software_tablet.xml
+++ /dev/null
@@ -1,36 +0,0 @@
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="412dp"
-    android:height="300dp"
-    android:viewportWidth="412"
-    android:viewportHeight="300">
-  <group>
-    <clip-path
-        android:pathData="M62.23,50.19L349.77,50.19A16,16 0,0 1,365.77 66.19L365.77,236.14A16,16 0,0 1,349.77 252.14L62.23,252.14A16,16 0,0 1,46.23 236.14L46.23,66.19A16,16 0,0 1,62.23 50.19z"/>
-    <path
-        android:pathData="M46.23,204.14h320v48h-320z"
-        android:fillColor="#000000"/>
-    <path
-        android:pathData="M268.93,214.14C270.43,214.14 271.63,215.34 271.63,216.84C271.63,218.34 270.43,219.54 268.93,219.54C267.43,219.54 266.23,218.34 266.23,216.84C266.23,215.34 267.43,214.14 268.93,214.14ZM273.03,223.64V241.24H270.23V233.14H267.53V241.24H264.83V223.64C262.13,223.44 259.23,222.94 256.73,222.24L257.43,219.54C260.93,220.44 265.13,220.94 268.93,220.94C272.73,220.94 276.93,220.54 280.43,219.54L281.13,222.24C278.63,222.94 275.73,223.44 273.03,223.64Z"
-        android:fillColor="#ffffff"/>
-    <path
-        android:pathData="M206.23,238.04C211.42,238.04 215.63,233.83 215.63,228.64C215.63,223.45 211.42,219.24 206.23,219.24C201.04,219.24 196.83,223.45 196.83,228.64C196.83,233.83 201.04,238.04 206.23,238.04Z"
-        android:fillColor="#BDC0C4"/>
-    <path
-        android:pathData="M131.33,228.64L147.33,237.84V219.34L131.33,228.64Z"
-        android:fillColor="#BDC0C4"/>
-  </group>
-  <path
-      android:pathData="M62.23,51.69L349.77,51.69A14.5,14.5 0,0 1,364.27 66.19L364.27,236.14A14.5,14.5 0,0 1,349.77 250.64L62.23,250.64A14.5,14.5 0,0 1,47.73 236.14L47.73,66.19A14.5,14.5 0,0 1,62.23 51.69z"
-      android:strokeWidth="3"
-      android:fillColor="#00000000"
-      android:strokeColor="#DADCE0"/>
-  <path
-      android:pathData="M311.45,50.35C311.45,48.98 312.56,47.87 313.92,47.87L322.84,47.87C324.2,47.87 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
-      android:fillColor="#DADCE0"/>
-  <path
-      android:pathData="M263.59,50.35C263.59,48.98 264.7,47.87 266.06,47.87L287.85,47.87C289.22,47.87 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
-      android:fillColor="#DADCE0"/>
-  <path
-      android:pathData="M268.93,259.69C251.31,259.69 236.93,245.3 236.93,227.69C236.93,210.07 251.31,195.69 268.93,195.69C286.55,195.69 300.93,210.07 300.93,227.69C300.93,245.3 286.55,259.69 268.93,259.69ZM268.93,198.38C252.84,198.38 239.72,211.51 239.72,227.6C239.72,243.69 252.84,256.81 268.93,256.81C285.02,256.81 298.14,243.69 298.14,227.6C298.14,211.51 285.02,198.38 268.93,198.38Z"
-      android:fillColor="#729CEE"/>
-</vector>
diff --git a/res/drawable/audio_sharing_rounded_bg.xml b/res/drawable/audio_sharing_rounded_bg.xml
index db1e1bb..35517ea 100644
--- a/res/drawable/audio_sharing_rounded_bg.xml
+++ b/res/drawable/audio_sharing_rounded_bg.xml
@@ -15,8 +15,10 @@
   ~ limitations under the License.
   -->
 
-<shape xmlns:android="http://schemas.android.com/apk/res/android"
+<shape
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"
     android:shape="rectangle">
-    <solid android:color="?android:colorButtonNormal" />
+    <solid android:color="?androidprv:attr/colorAccentPrimary" />
     <corners android:radius="12dp" />
 </shape>
\ No newline at end of file
diff --git a/res/drawable/ic_pan_tool_18dp.xml b/res/drawable/ic_pan_tool_18dp.xml
deleted file mode 100644
index e3b21fa..0000000
--- a/res/drawable/ic_pan_tool_18dp.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  Copyright (C) 2019 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.
-  -->
-
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-        android:width="18dp"
-        android:height="18dp"
-        android:viewportWidth="48"
-        android:viewportHeight="48"
-        android:tint="?android:attr/colorControlNormal">
-  <group>
-    <clip-path
-        android:pathData="M0,0h48v48H0z M 0,0"/>
-    <path
-        android:pathData="M46,11v29c0,4.4 -3.6,8 -8,8H23.4c-2.16,0 -4.2,-0.86 -5.7,-2.38L2,29.66s2.52,-2.46 2.6,-2.5c0.44,-0.38 0.98,-0.58 1.58,-0.58 0.44,0 0.84,0.12 1.2,0.32 0.08,0.02 8.62,4.92 8.62,4.92V8c0,-1.66 1.34,-3 3,-3s3,1.34 3,3v14h2V3c0,-1.66 1.34,-3 3,-3s3,1.34 3,3v19h2V5c0,-1.66 1.34,-3 3,-3s3,1.34 3,3v17h2V11c0,-1.66 1.34,-3 3,-3s3,1.34 3,3z"
-        android:fillColor="#FFFFFF"/>
-  </group>
-</vector>
diff --git a/res/drawable/ic_zen_mode_category_apps.xml b/res/drawable/ic_zen_mode_category_apps.xml
new file mode 100644
index 0000000..f21fc6a
--- /dev/null
+++ b/res/drawable/ic_zen_mode_category_apps.xml
@@ -0,0 +1,25 @@
+<!--
+Copyright (C) 2024 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.
+-->
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:tint="?android:attr/colorControlNormal"
+    android:viewportHeight="960"
+    android:viewportWidth="960">
+    <path
+        android:fillColor="@android:color/white"
+        android:pathData="M240,800Q207,800 183.5,776.5Q160,753 160,720Q160,687 183.5,663.5Q207,640 240,640Q273,640 296.5,663.5Q320,687 320,720Q320,753 296.5,776.5Q273,800 240,800ZM480,800Q447,800 423.5,776.5Q400,753 400,720Q400,687 423.5,663.5Q447,640 480,640Q513,640 536.5,663.5Q560,687 560,720Q560,753 536.5,776.5Q513,800 480,800ZM720,800Q687,800 663.5,776.5Q640,753 640,720Q640,687 663.5,663.5Q687,640 720,640Q753,640 776.5,663.5Q800,687 800,720Q800,753 776.5,776.5Q753,800 720,800ZM240,560Q207,560 183.5,536.5Q160,513 160,480Q160,447 183.5,423.5Q207,400 240,400Q273,400 296.5,423.5Q320,447 320,480Q320,513 296.5,536.5Q273,560 240,560ZM480,560Q447,560 423.5,536.5Q400,513 400,480Q400,447 423.5,423.5Q447,400 480,400Q513,400 536.5,423.5Q560,447 560,480Q560,513 536.5,536.5Q513,560 480,560ZM720,560Q687,560 663.5,536.5Q640,513 640,480Q640,447 663.5,423.5Q687,400 720,400Q753,400 776.5,423.5Q800,447 800,480Q800,513 776.5,536.5Q753,560 720,560ZM240,320Q207,320 183.5,296.5Q160,273 160,240Q160,207 183.5,183.5Q207,160 240,160Q273,160 296.5,183.5Q320,207 320,240Q320,273 296.5,296.5Q273,320 240,320ZM480,320Q447,320 423.5,296.5Q400,273 400,240Q400,207 423.5,183.5Q447,160 480,160Q513,160 536.5,183.5Q560,207 560,240Q560,273 536.5,296.5Q513,320 480,320ZM720,320Q687,320 663.5,296.5Q640,273 640,240Q640,207 663.5,183.5Q687,160 720,160Q753,160 776.5,183.5Q800,207 800,240Q800,273 776.5,296.5Q753,320 720,320Z" />
+</vector>
\ No newline at end of file
diff --git a/res/drawable/ic_zen_mode_category_display.xml b/res/drawable/ic_zen_mode_category_display.xml
new file mode 100644
index 0000000..4771951
--- /dev/null
+++ b/res/drawable/ic_zen_mode_category_display.xml
@@ -0,0 +1,25 @@
+<!--
+Copyright (C) 2024 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.
+-->
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:tint="?android:attr/colorControlNormal"
+    android:viewportHeight="960"
+    android:viewportWidth="960">
+    <path
+        android:fillColor="@android:color/white"
+        android:pathData="M360,580L360,520L600,520L600,580L360,580ZM320,460L320,400L640,400L640,460L320,460ZM280,920Q247,920 223.5,896.5Q200,873 200,840L200,120Q200,87 223.5,63.5Q247,40 280,40L680,40Q713,40 736.5,63.5Q760,87 760,120L760,840Q760,873 736.5,896.5Q713,920 680,920L280,920ZM280,800L280,840Q280,840 280,840Q280,840 280,840L680,840Q680,840 680,840Q680,840 680,840L680,800L280,800ZM280,720L680,720L680,240L280,240L280,720ZM280,160L680,160L680,120Q680,120 680,120Q680,120 680,120L280,120Q280,120 280,120Q280,120 280,120L280,160ZM280,160L280,120Q280,120 280,120Q280,120 280,120L280,120Q280,120 280,120Q280,120 280,120L280,160ZM280,800L280,800L280,840Q280,840 280,840Q280,840 280,840L280,840Q280,840 280,840Q280,840 280,840L280,800Z" />
+</vector>
\ No newline at end of file
diff --git a/res/drawable/ic_zen_mode_category_duration.xml b/res/drawable/ic_zen_mode_category_duration.xml
new file mode 100644
index 0000000..56d9c4a
--- /dev/null
+++ b/res/drawable/ic_zen_mode_category_duration.xml
@@ -0,0 +1,25 @@
+<!--
+Copyright (C) 2024 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.
+-->
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:tint="?android:attr/colorControlNormal"
+    android:viewportHeight="960"
+    android:viewportWidth="960">
+    <path
+        android:fillColor="@android:color/white"
+        android:pathData="M360,120L360,40L600,40L600,120L360,120ZM440,560L520,560L520,320L440,320L440,560ZM480,880Q406,880 340.5,851.5Q275,823 226,774Q177,725 148.5,659.5Q120,594 120,520Q120,446 148.5,380.5Q177,315 226,266Q275,217 340.5,188.5Q406,160 480,160Q542,160 599,180Q656,200 706,238L762,182L818,238L762,294Q800,344 820,401Q840,458 840,520Q840,594 811.5,659.5Q783,725 734,774Q685,823 619.5,851.5Q554,880 480,880ZM480,800Q596,800 678,718Q760,636 760,520Q760,404 678,322Q596,240 480,240Q364,240 282,322Q200,404 200,520Q200,636 282,718Q364,800 480,800ZM480,520Q480,520 480,520Q480,520 480,520Q480,520 480,520Q480,520 480,520Q480,520 480,520Q480,520 480,520Q480,520 480,520Q480,520 480,520Z" />
+</vector>
\ No newline at end of file
diff --git a/res/drawable/ic_zen_mode_category_other.xml b/res/drawable/ic_zen_mode_category_other.xml
new file mode 100644
index 0000000..9a47523
--- /dev/null
+++ b/res/drawable/ic_zen_mode_category_other.xml
@@ -0,0 +1,25 @@
+<!--
+Copyright (C) 2024 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.
+-->
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:tint="?android:attr/colorControlNormal"
+    android:viewportHeight="960"
+    android:viewportWidth="960">
+    <path
+        android:fillColor="@android:color/white"
+        android:pathData="M560,829L560,747Q650,721 705,647Q760,573 760,479Q760,385 705,311Q650,237 560,211L560,129Q684,157 762,254.5Q840,352 840,479Q840,606 762,703.5Q684,801 560,829ZM120,600L120,360L280,360L480,160L480,800L280,600L120,600ZM560,640L560,318Q607,340 633.5,384Q660,428 660,480Q660,531 633.5,574.5Q607,618 560,640ZM400,354L314,440L200,440L200,520L314,520L400,606L400,354ZM300,480L300,480L300,480L300,480L300,480L300,480Z" />
+</vector>
\ No newline at end of file
diff --git a/res/drawable/ic_zen_mode_category_people.xml b/res/drawable/ic_zen_mode_category_people.xml
new file mode 100644
index 0000000..e763c45
--- /dev/null
+++ b/res/drawable/ic_zen_mode_category_people.xml
@@ -0,0 +1,25 @@
+<!--
+Copyright (C) 2024 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.
+-->
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:tint="?android:attr/colorControlNormal"
+    android:viewportHeight="960"
+    android:viewportWidth="960">
+    <path
+        android:fillColor="@android:color/white"
+        android:pathData="M40,800L40,688Q40,654 57.5,625.5Q75,597 104,582Q166,551 230,535.5Q294,520 360,520Q426,520 490,535.5Q554,551 616,582Q645,597 662.5,625.5Q680,654 680,688L680,800L40,800ZM760,800L760,680Q760,636 735.5,595.5Q711,555 666,526Q717,532 762,546.5Q807,561 846,582Q882,602 901,626.5Q920,651 920,680L920,800L760,800ZM360,480Q294,480 247,433Q200,386 200,320Q200,254 247,207Q294,160 360,160Q426,160 473,207Q520,254 520,320Q520,386 473,433Q426,480 360,480ZM760,320Q760,386 713,433Q666,480 600,480Q589,480 572,477.5Q555,475 544,472Q571,440 585.5,401Q600,362 600,320Q600,278 585.5,239Q571,200 544,168Q558,163 572,161.5Q586,160 600,160Q666,160 713,207Q760,254 760,320ZM120,720L600,720L600,688Q600,677 594.5,668Q589,659 580,654Q526,627 471,613.5Q416,600 360,600Q304,600 249,613.5Q194,627 140,654Q131,659 125.5,668Q120,677 120,688L120,720ZM360,400Q393,400 416.5,376.5Q440,353 440,320Q440,287 416.5,263.5Q393,240 360,240Q327,240 303.5,263.5Q280,287 280,320Q280,353 303.5,376.5Q327,400 360,400ZM360,720L360,720L360,720Q360,720 360,720Q360,720 360,720Q360,720 360,720Q360,720 360,720Q360,720 360,720Q360,720 360,720Q360,720 360,720Q360,720 360,720ZM360,320Q360,320 360,320Q360,320 360,320Q360,320 360,320Q360,320 360,320Q360,320 360,320Q360,320 360,320Q360,320 360,320Q360,320 360,320Z" />
+</vector>
\ No newline at end of file
diff --git a/res/drawable/ic_zen_mode_display_aod.xml b/res/drawable/ic_zen_mode_display_aod.xml
new file mode 100644
index 0000000..9d60fb1
--- /dev/null
+++ b/res/drawable/ic_zen_mode_display_aod.xml
@@ -0,0 +1,25 @@
+<!--
+Copyright (C) 2024 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.
+-->
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:tint="?android:attr/colorControlNormal"
+    android:viewportHeight="960"
+    android:viewportWidth="960">
+    <path
+        android:fillColor="@android:color/white"
+        android:pathData="M820,932L28,140L84,84L876,876L820,932ZM200,257L280,337L280,720L664,720L760,816L760,840Q760,873 736.5,896.5Q713,920 680,920L280,920Q247,920 223.5,896.5Q200,873 200,840L200,257ZM280,800L280,840Q280,840 280,840Q280,840 280,840L680,840Q680,840 680,840Q680,840 680,840L680,800L280,800ZM353,240L274,160L680,160L680,120Q680,120 680,120Q680,120 680,120L234,120L234,120L206,92Q216,69 235.5,54.5Q255,40 280,40L680,40Q713,40 736.5,63.5Q760,87 760,120L760,646L680,566L680,240L353,240ZM480,800L480,800Q480,800 480,800Q480,800 480,800L480,800Q480,800 480,800Q480,800 480,800L480,800ZM457,160L457,160L457,160L457,160Q457,160 457,160Q457,160 457,160Z" />
+</vector>
\ No newline at end of file
diff --git a/res/drawable/ic_zen_mode_display_dark_theme.xml b/res/drawable/ic_zen_mode_display_dark_theme.xml
new file mode 100644
index 0000000..43bc682
--- /dev/null
+++ b/res/drawable/ic_zen_mode_display_dark_theme.xml
@@ -0,0 +1,25 @@
+<!--
+Copyright (C) 2024 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.
+-->
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:tint="?android:attr/colorControlNormal"
+    android:viewportHeight="960"
+    android:viewportWidth="960">
+    <path
+        android:fillColor="@android:color/white"
+        android:pathData="M480,840Q347,840 253.5,747.5Q160,655 160,524Q160,458 185,402Q210,346 254,302L480,80L706,302Q750,346 775,402Q800,458 800,524Q800,655 706.5,747.5Q613,840 480,840ZM480,760L480,192L310,360Q275,393 257.5,434.5Q240,476 240,524Q240,621 310,690.5Q380,760 480,760Z" />
+</vector>
\ No newline at end of file
diff --git a/res/drawable/ic_zen_mode_display_grayscale.xml b/res/drawable/ic_zen_mode_display_grayscale.xml
new file mode 100644
index 0000000..d7fe9ab
--- /dev/null
+++ b/res/drawable/ic_zen_mode_display_grayscale.xml
@@ -0,0 +1,25 @@
+<!--
+Copyright (C) 2024 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.
+-->
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:tint="?android:attr/colorControlNormal"
+    android:viewportHeight="960"
+    android:viewportWidth="960">
+    <path
+        android:fillColor="@android:color/white"
+        android:pathData="M480,880Q397,880 324,848.5Q251,817 197,763Q143,709 111.5,636Q80,563 80,480Q80,397 111.5,324Q143,251 197,197Q251,143 324,111.5Q397,80 480,80Q563,80 636,111.5Q709,143 763,197Q817,251 848.5,324Q880,397 880,480Q880,563 848.5,636Q817,709 763,763Q709,817 636,848.5Q563,880 480,880ZM480,800Q614,800 707,707Q800,614 800,480Q800,416 775.5,357.5Q751,299 706,254L254,706Q299,751 357.5,775.5Q416,800 480,800ZM480,640L480,580L680,580L680,640L480,640ZM320,460L380,460L380,380L460,380L460,320L380,320L380,240L320,240L320,320L240,320L240,380L320,380L320,460Z" />
+</vector>
\ No newline at end of file
diff --git a/res/drawable/ic_zen_mode_display_wallpaper.xml b/res/drawable/ic_zen_mode_display_wallpaper.xml
new file mode 100644
index 0000000..27d169c
--- /dev/null
+++ b/res/drawable/ic_zen_mode_display_wallpaper.xml
@@ -0,0 +1,25 @@
+<!--
+Copyright (C) 2024 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.
+-->
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:tint="?android:attr/colorControlNormal"
+    android:viewportHeight="960"
+    android:viewportWidth="960">
+    <path
+        android:fillColor="@android:color/white"
+        android:pathData="M480,680Q463,680 451.5,668.5Q440,657 440,640Q440,623 451.5,611.5Q463,600 480,600Q497,600 508.5,611.5Q520,623 520,640Q520,657 508.5,668.5Q497,680 480,680ZM440,520L440,280L520,280L520,520L440,520ZM280,920Q247,920 223.5,896.5Q200,873 200,840L200,120Q200,87 223.5,63.5Q247,40 280,40L680,40Q713,40 736.5,63.5Q760,87 760,120L760,840Q760,873 736.5,896.5Q713,920 680,920L280,920ZM280,800L280,840Q280,840 280,840Q280,840 280,840L680,840Q680,840 680,840Q680,840 680,840L680,800L280,800ZM280,720L680,720L680,240L280,240L280,720ZM280,160L680,160L680,120Q680,120 680,120Q680,120 680,120L280,120Q280,120 280,120Q280,120 280,120L280,160ZM280,160L280,120Q280,120 280,120Q280,120 280,120L280,120Q280,120 280,120Q280,120 280,120L280,160ZM280,800L280,800L280,840Q280,840 280,840Q280,840 280,840L280,840Q280,840 280,840Q280,840 280,840L280,800Z" />
+</vector>
\ No newline at end of file
diff --git a/res/drawable/ic_zen_mode_icon_cookie.xml b/res/drawable/ic_zen_mode_icon_cookie.xml
new file mode 100644
index 0000000..0e4bafb
--- /dev/null
+++ b/res/drawable/ic_zen_mode_icon_cookie.xml
@@ -0,0 +1,25 @@
+<!--
+Copyright (C) 2024 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.
+-->
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="136dp"
+    android:height="136dp"
+    android:tint="?android:attr/colorControlNormal"
+    android:viewportHeight="136"
+    android:viewportWidth="136">
+    <path
+        android:fillColor="@android:color/white"
+        android:pathData="M58.0961 4.18448C58.326 3.95917 58.441 3.84652 58.5407 3.75268C63.8544 -1.25089 72.1456 -1.25089 77.4593 3.75268C77.559 3.84652 77.674 3.95917 77.9039 4.18448C78.0419 4.31967 78.1109 4.38727 78.1765 4.44986C81.5767 7.69486 86.3948 8.98588 90.962 7.87573C91.0501 7.85432 91.1436 7.83027 91.3307 7.78218C91.6425 7.70204 91.7984 7.66196 91.9317 7.63052C99.0352 5.95417 106.216 10.0998 108.316 17.0898C108.355 17.2209 108.398 17.376 108.485 17.6861C108.537 17.8722 108.563 17.9652 108.588 18.0522C109.91 22.5626 113.437 26.0897 117.948 27.4118C118.035 27.4373 118.128 27.4633 118.314 27.5152C118.624 27.6017 118.779 27.6449 118.91 27.6843C125.9 29.7844 130.046 36.9648 128.369 44.0684C128.338 44.2016 128.298 44.3575 128.218 44.6693C128.17 44.8564 128.146 44.9499 128.124 45.038C127.014 49.6052 128.305 54.4233 131.55 57.8235C131.613 57.8891 131.68 57.9581 131.816 58.0961C132.041 58.326 132.153 58.441 132.247 58.5407C137.251 63.8544 137.251 72.1456 132.247 77.4593C132.153 77.559 132.041 77.674 131.816 77.9039C131.68 78.0419 131.613 78.1109 131.55 78.1765C128.305 81.5767 127.014 86.3948 128.124 90.962C128.146 91.0501 128.17 91.1436 128.218 91.3307C128.298 91.6425 128.338 91.7984 128.369 91.9316C130.046 99.0352 125.9 106.216 118.91 108.316C118.779 108.355 118.624 108.398 118.314 108.485C118.128 108.537 118.035 108.563 117.948 108.588C113.437 109.91 109.91 113.437 108.588 117.948C108.563 118.035 108.537 118.128 108.485 118.314C108.398 118.624 108.355 118.779 108.316 118.91C106.216 125.9 99.0352 130.046 91.9316 128.369C91.7984 128.338 91.6425 128.298 91.3307 128.218C91.1436 128.17 91.0501 128.146 90.962 128.124C86.3948 127.014 81.5767 128.305 78.1765 131.55C78.1109 131.613 78.0419 131.68 77.9039 131.816C77.674 132.041 77.559 132.153 77.4593 132.247C72.1456 137.251 63.8544 137.251 58.5407 132.247C58.441 132.153 58.326 132.041 58.0961 131.816C57.9581 131.68 57.8891 131.613 57.8235 131.55C54.4233 128.305 49.6052 127.014 45.038 128.124C44.9499 128.146 44.8564 128.17 44.6693 128.218C44.3575 128.298 44.2016 128.338 44.0684 128.369C36.9648 130.046 29.7844 125.9 27.6843 118.91C27.6449 118.779 27.6017 118.624 27.5152 118.314C27.4633 118.128 27.4373 118.035 27.4118 117.948C26.0897 113.437 22.5626 109.91 18.0522 108.588C17.9652 108.563 17.8722 108.537 17.6861 108.485C17.376 108.398 17.2209 108.355 17.0898 108.316C10.0998 106.216 5.95417 99.0352 7.63052 91.9317C7.66196 91.7984 7.70204 91.6425 7.78218 91.3307C7.83027 91.1436 7.85432 91.0501 7.87573 90.962C8.98588 86.3948 7.69486 81.5767 4.44986 78.1765C4.38727 78.1109 4.31967 78.0419 4.18448 77.9039C3.95917 77.674 3.84652 77.559 3.75268 77.4593C-1.25089 72.1456 -1.25089 63.8544 3.75268 58.5407C3.84652 58.441 3.95917 58.326 4.18448 58.0961C4.31967 57.9581 4.38727 57.8891 4.44986 57.8235C7.69486 54.4233 8.98588 49.6052 7.87573 45.038C7.85432 44.9499 7.83027 44.8564 7.78218 44.6693C7.70204 44.3575 7.66196 44.2016 7.63052 44.0683C5.95417 36.9648 10.0998 29.7844 17.0898 27.6843C17.2209 27.6449 17.376 27.6017 17.6861 27.5152C17.8722 27.4633 17.9652 27.4373 18.0522 27.4118C22.5626 26.0897 26.0897 22.5626 27.4118 18.0522C27.4373 17.9652 27.4633 17.8722 27.5152 17.6861C27.6017 17.376 27.6449 17.2209 27.6843 17.0898C29.7844 10.0998 36.9648 5.95417 44.0683 7.63052C44.2016 7.66196 44.3575 7.70204 44.6693 7.78218C44.8564 7.83027 44.9499 7.85432 45.038 7.87573C49.6052 8.98588 54.4233 7.69486 57.8235 4.44986C57.8891 4.38727 57.9581 4.31967 58.0961 4.18448Z" />
+</vector>
\ No newline at end of file
diff --git a/res/drawable/ic_zen_mode_people_calls.xml b/res/drawable/ic_zen_mode_people_calls.xml
new file mode 100644
index 0000000..6aacc03
--- /dev/null
+++ b/res/drawable/ic_zen_mode_people_calls.xml
@@ -0,0 +1,25 @@
+<!--
+Copyright (C) 2024 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.
+-->
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:tint="?android:attr/colorControlNormal"
+    android:viewportHeight="960"
+    android:viewportWidth="960">
+    <path
+        android:fillColor="@android:color/white"
+        android:pathData="M798,840Q673,840 551,785.5Q429,731 329,631Q229,531 174.5,409Q120,287 120,162Q120,144 132,132Q144,120 162,120L324,120Q338,120 349,129.5Q360,139 362,152L388,292Q390,308 387,319Q384,330 376,338L279,436Q299,473 326.5,507.5Q354,542 387,574Q418,605 452,631.5Q486,658 524,680L618,586Q627,577 641.5,572.5Q656,568 670,570L808,598Q822,602 831,612.5Q840,623 840,636L840,798Q840,816 828,828Q816,840 798,840ZM241,360L307,294Q307,294 307,294Q307,294 307,294L290,200Q290,200 290,200Q290,200 290,200L201,200Q201,200 201,200Q201,200 201,200Q206,241 215,281Q224,321 241,360ZM599,718Q638,735 678.5,745Q719,755 760,758Q760,758 760,758Q760,758 760,758L760,670Q760,670 760,670Q760,670 760,670L666,651Q666,651 666,651Q666,651 666,651L599,718ZM241,360Q241,360 241,360Q241,360 241,360Q241,360 241,360Q241,360 241,360L241,360Q241,360 241,360Q241,360 241,360L241,360Q241,360 241,360Q241,360 241,360ZM599,718L599,718Q599,718 599,718Q599,718 599,718L599,718Q599,718 599,718Q599,718 599,718L599,718Q599,718 599,718Q599,718 599,718Q599,718 599,718Q599,718 599,718Z" />
+</vector>
\ No newline at end of file
diff --git a/res/drawable/ic_zen_mode_people_messages.xml b/res/drawable/ic_zen_mode_people_messages.xml
new file mode 100644
index 0000000..21db1f4
--- /dev/null
+++ b/res/drawable/ic_zen_mode_people_messages.xml
@@ -0,0 +1,25 @@
+<!--
+Copyright (C) 2024 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.
+-->
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:tint="?android:attr/colorControlNormal"
+    android:viewportHeight="960"
+    android:viewportWidth="960">
+    <path
+        android:fillColor="@android:color/white"
+        android:pathData="M240,560L560,560L560,480L240,480L240,560ZM240,440L720,440L720,360L240,360L240,440ZM240,320L720,320L720,240L240,240L240,320ZM80,880L80,160Q80,127 103.5,103.5Q127,80 160,80L800,80Q833,80 856.5,103.5Q880,127 880,160L880,640Q880,673 856.5,696.5Q833,720 800,720L240,720L80,880ZM206,640L800,640Q800,640 800,640Q800,640 800,640L800,160Q800,160 800,160Q800,160 800,160L160,160Q160,160 160,160Q160,160 160,160L160,685L206,640ZM160,640L160,640L160,160Q160,160 160,160Q160,160 160,160L160,160Q160,160 160,160Q160,160 160,160L160,640Q160,640 160,640Q160,640 160,640Z" />
+</vector>
\ No newline at end of file
diff --git a/res/layout-land/bluetooth_audio_streams_qr_code.xml b/res/layout-land/bluetooth_audio_streams_qr_code.xml
index b35bc65..1715197 100644
--- a/res/layout-land/bluetooth_audio_streams_qr_code.xml
+++ b/res/layout-land/bluetooth_audio_streams_qr_code.xml
@@ -48,7 +48,7 @@
             android:id="@+id/qrcode_view"
             android:layout_width="@dimen/qrcode_size"
             android:layout_height="@dimen/qrcode_size"
-            android:contentDescription="@string/audio_streams_qr_code_page_image_label"
+            android:contentDescription="@string/qr_code_content_description"
             android:focusable="true" />
 
         <TextView
diff --git a/res/layout/accessibility_edit_shortcut.xml b/res/layout/accessibility_edit_shortcut.xml
deleted file mode 100644
index d0c925e..0000000
--- a/res/layout/accessibility_edit_shortcut.xml
+++ /dev/null
@@ -1,46 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  Copyright (C) 2019 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
-  -->
-
-<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:layout_height="wrap_content"
-    android:clipChildren="true">
-
-    <ScrollView
-        android:id="@+id/container_layout"
-        android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        android:scrollbarStyle="outsideOverlay">
-
-        <LinearLayout
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:orientation="vertical"
-            android:padding="24dp">
-
-            <include android:id="@+id/software_shortcut"
-                layout="@layout/accessibility_edit_shortcut_component"
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:layout_marginBottom="32dp" />
-
-            <include android:id="@+id/hardware_shortcut"
-                layout="@layout/accessibility_edit_shortcut_component" />
-
-        </LinearLayout>
-    </ScrollView>
-</FrameLayout>
\ No newline at end of file
diff --git a/res/layout/accessibility_edit_shortcut_component.xml b/res/layout/accessibility_edit_shortcut_component.xml
deleted file mode 100644
index d54fff6..0000000
--- a/res/layout/accessibility_edit_shortcut_component.xml
+++ /dev/null
@@ -1,61 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  Copyright (C) 2019 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
-  -->
-
-<LinearLayout
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:layout_height="wrap_content"
-    android:orientation="vertical">
-
-    <LinearLayout
-        android:id="@+id/container"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:background="?android:attr/selectableItemBackground"
-        android:orientation="vertical">
-
-        <CheckBox
-            android:id="@+id/checkbox"
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:minHeight="48dp"
-            android:background="@null"
-            android:clickable="false"
-            android:focusable="false"
-            android:focusableInTouchMode="false"
-            android:paddingStart="12dp"
-            android:saveEnabled="false"
-            android:textColor="?android:attr/textColorAlertDialogListItem"
-            android:textSize="16sp" />
-
-        <TextView
-            android:id="@+id/summary"
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:paddingBottom="8dp"
-            android:paddingStart="44dp"
-            android:textAppearance="?android:attr/textAppearanceListItemSecondary"
-            android:textColor="?android:attr/textColorSecondary" />
-
-    </LinearLayout>
-
-    <include layout="@layout/accessibility_lottie_animation_view"
-             android:layout_width="match_parent"
-             android:layout_height="wrap_content"
-             android:layout_marginStart="44dp"/>
-
-</LinearLayout>
diff --git a/res/layout/accessibility_edit_shortcut_magnification.xml b/res/layout/accessibility_edit_shortcut_magnification.xml
deleted file mode 100644
index 0f30a01..0000000
--- a/res/layout/accessibility_edit_shortcut_magnification.xml
+++ /dev/null
@@ -1,91 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  Copyright (C) 2019 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
-  -->
-
-<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:layout_height="wrap_content"
-    android:clipChildren="true">
-
-    <ScrollView
-        android:id="@+id/container_layout"
-        android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        android:scrollbarStyle="outsideOverlay">
-
-        <LinearLayout
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:orientation="vertical"
-            android:padding="24dp">
-
-            <include
-                android:id="@+id/software_shortcut"
-                layout="@layout/accessibility_edit_shortcut_component"
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:layout_marginBottom="32dp" />
-
-            <include
-                android:id="@+id/hardware_shortcut"
-                layout="@layout/accessibility_edit_shortcut_component"
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:layout_marginBottom="32dp" />
-
-            <include
-                android:id="@+id/two_finger_triple_tap_shortcut"
-                layout="@layout/accessibility_edit_shortcut_component"
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:layout_marginBottom="32dp"
-                android:visibility="gone" />
-
-            <LinearLayout
-                android:id="@+id/advanced_shortcut"
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:minHeight="?android:attr/listPreferredItemHeightSmall"
-                android:orientation="horizontal">
-
-                <ImageView
-                    android:layout_width="wrap_content"
-                    android:layout_height="wrap_content"
-                    android:layout_gravity="center"
-                    android:contentDescription="@null"
-                    android:scaleType="centerCrop"
-                    android:src="@drawable/ic_keyboard_arrow_down" />
-
-                <TextView
-                    android:layout_width="match_parent"
-                    android:layout_height="match_parent"
-                    android:gravity="center_vertical"
-                    android:paddingStart="12dp"
-                    android:text="@string/accessibility_shortcut_edit_dialog_title_advance"
-                    android:textAppearance="?android:attr/textAppearanceListItem"
-                    android:textColor="?android:attr/colorAccent"
-                    android:textSize="16sp" />
-
-            </LinearLayout>
-
-            <include
-                android:id="@+id/triple_tap_shortcut"
-                layout="@layout/accessibility_edit_shortcut_component"
-                android:visibility="gone" />
-
-        </LinearLayout>
-    </ScrollView>
-</FrameLayout>
\ No newline at end of file
diff --git a/res/layout/audio_sharing_device_item.xml b/res/layout/audio_sharing_device_item.xml
index 04ecdd7..c1720e8 100644
--- a/res/layout/audio_sharing_device_item.xml
+++ b/res/layout/audio_sharing_device_item.xml
@@ -17,6 +17,7 @@
 
 <FrameLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android:orientation="vertical">
@@ -27,6 +28,7 @@
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
         android:layout_marginTop="4dp"
+        android:textColor="?androidprv:attr/textColorOnAccent"
         android:background="@drawable/audio_sharing_rounded_bg_ripple"
         android:textAlignment="center" />
 
diff --git a/res/layout/bluetooth_audio_streams_qr_code.xml b/res/layout/bluetooth_audio_streams_qr_code.xml
index fd521fe..ae2d4e0 100644
--- a/res/layout/bluetooth_audio_streams_qr_code.xml
+++ b/res/layout/bluetooth_audio_streams_qr_code.xml
@@ -48,7 +48,7 @@
                 android:id="@+id/qrcode_view"
                 android:layout_width="@dimen/qrcode_size"
                 android:layout_height="@dimen/qrcode_size"
-                android:contentDescription="@string/audio_streams_qr_code_page_image_label"
+                android:contentDescription="@string/qr_code_content_description"
                 android:focusable="true"/>
 
             <TextView
diff --git a/res/layout/dialog_custom_body_audio_sharing.xml b/res/layout/dialog_custom_body_audio_sharing.xml
index 2e8c506..528bfbb 100644
--- a/res/layout/dialog_custom_body_audio_sharing.xml
+++ b/res/layout/dialog_custom_body_audio_sharing.xml
@@ -15,7 +15,9 @@
   ~ limitations under the License.
   -->
 
-<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
+<ScrollView
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android:scrollbars="none">
@@ -60,6 +62,7 @@
             android:layout_height="wrap_content"
             android:layout_gravity="center"
             android:layout_marginTop="4dp"
+            android:textColor="?androidprv:attr/textColorOnAccent"
             android:background="@drawable/audio_sharing_rounded_bg_ripple"
             android:visibility="gone" />
 
@@ -70,6 +73,7 @@
             android:layout_height="wrap_content"
             android:layout_gravity="center"
             android:layout_marginTop="4dp"
+            android:textColor="?androidprv:attr/textColorOnAccent"
             android:background="@drawable/audio_sharing_rounded_bg_ripple"
             android:visibility="gone" />
     </LinearLayout>
diff --git a/res/layout/enable_accessibility_service_dialog_content.xml b/res/layout/enable_accessibility_service_dialog_content.xml
deleted file mode 100644
index 96989bb..0000000
--- a/res/layout/enable_accessibility_service_dialog_content.xml
+++ /dev/null
@@ -1,137 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2013 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.
--->
-
-<ScrollView
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="fill_parent"
-    android:layout_height="fill_parent"
-    android:textDirection="locale"
-    android:scrollbarStyle="outsideOverlay"
-    android:gravity="top">
-
-    <LinearLayout
-        android:accessibilityDataSensitive="yes"
-        style="@style/AccessibilityDialog">
-
-        <LinearLayout
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:orientation="vertical"
-            android:gravity="center_horizontal"
-            android:paddingLeft="24dp"
-            android:paddingRight="24dp">
-
-            <ImageView
-                android:id="@+id/permissionDialog_icon"
-                style="@style/AccessibilityDialogServiceIcon" />
-
-            <TextView
-                android:id="@+id/permissionDialog_title"
-                style="@style/AccessibilityDialogTitle" />
-
-            <TextView
-                android:id="@+id/permissionDialog_description"
-                android:text="@string/accessibility_service_warning_description"
-                style="@style/AccessibilityDialogDescription" />
-
-            <LinearLayout
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:orientation="horizontal"
-                android:layout_marginBottom="24dp" >
-
-                <ImageView
-                    android:id="@+id/controlScreen_icon"
-                    android:src="@drawable/ic_visibility_18dp"
-                    style="@style/AccessibilityDialogIcon" />
-
-                <LinearLayout
-                    android:layout_width="match_parent"
-                    android:layout_height="wrap_content"
-                    android:orientation="vertical" >
-
-                    <TextView
-                        android:id="@+id/controlScreen_title"
-                        android:text="@string/accessibility_service_screen_control_title"
-                        style="@style/AccessibilityDialogPermissionTitle" />
-
-                    <TextView
-                        android:id="@+id/controlScreen_description"
-                        android:text="@string/accessibility_service_screen_control_description"
-                        style="@style/AccessibilityDialogPermissionDescription" />
-
-                </LinearLayout>
-
-            </LinearLayout>
-
-            <LinearLayout
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:orientation="horizontal"
-                android:layout_marginBottom="24dp" >
-
-                <ImageView
-                    android:id="@+id/performAction_icon"
-                    android:src="@drawable/ic_pan_tool_18dp"
-                    style="@style/AccessibilityDialogIcon" />
-
-                <LinearLayout
-                    android:layout_width="match_parent"
-                    android:layout_height="wrap_content"
-                    android:orientation="vertical" >
-
-                    <TextView
-                        android:id="@+id/performAction_title"
-                        android:text="@string/accessibility_service_action_perform_title"
-                        style="@style/AccessibilityDialogPermissionTitle" />
-
-                    <TextView
-                        android:id="@+id/performAction_description"
-                        android:text="@string/accessibility_service_action_perform_description"
-                        style="@style/AccessibilityDialogPermissionDescription" />
-
-                </LinearLayout>
-
-            </LinearLayout>
-
-        </LinearLayout>
-
-        <!-- Buttons on bottom of dialog -->
-        <LinearLayout
-            style="@style/AccessibilityDialogButtonList">
-
-            <Space
-                style="@style/AccessibilityDialogButtonBarSpace"/>
-
-            <Button
-                android:id="@+id/permission_enable_allow_button"
-                android:text="@string/accessibility_dialog_button_allow"
-                style="@style/AccessibilityDialogButton" />
-
-            <Button
-                android:id="@+id/permission_enable_deny_button"
-                android:text="@string/accessibility_dialog_button_deny"
-                style="@style/AccessibilityDialogButton" />
-
-            <Button
-                android:id="@+id/permission_enable_uninstall_button"
-                android:text="@string/uninstall_text"
-                android:visibility="gone"
-                style="@style/AccessibilityDialogButton" />
-        </LinearLayout>
-    </LinearLayout>
-
-</ScrollView>
diff --git a/res/layout/modes_activation_button.xml b/res/layout/modes_activation_button.xml
index e8ed824..1441844 100644
--- a/res/layout/modes_activation_button.xml
+++ b/res/layout/modes_activation_button.xml
@@ -18,7 +18,8 @@
 <FrameLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
-    android:layout_height="wrap_content">
+    android:layout_height="wrap_content"
+    android:paddingVertical="8dp">
 
     <Button
         android:id="@+id/activate_mode"
diff --git a/res/layout/modes_set_schedule_layout.xml b/res/layout/modes_set_schedule_layout.xml
index ebb349e..d53e2e4 100644
--- a/res/layout/modes_set_schedule_layout.xml
+++ b/res/layout/modes_set_schedule_layout.xml
@@ -48,7 +48,8 @@
             app:layout_constrainedWidth="true"
             app:layout_constraintHorizontal_bias="0"
             android:textAppearance="@*android:style/TextAppearance.DeviceDefault.Medium"
-            android:text="@string/zen_mode_start_time" />
+            android:text="@string/zen_mode_start_time"
+            android:importantForAccessibility="no" />
 
         <!-- Start time display + setter -->
         <TextView
@@ -85,7 +86,8 @@
             app:layout_constrainedWidth="true"
             app:layout_constraintHorizontal_bias="0"
             android:textAppearance="@*android:style/TextAppearance.DeviceDefault.Medium"
-            android:text="@string/zen_mode_end_time" />
+            android:text="@string/zen_mode_end_time"
+            android:importantForAccessibility="no" />
 
         <!-- End time setter; right-aligned -->
         <TextView
diff --git a/res/layout/search_bar_unified_version.xml b/res/layout/search_bar_unified_version.xml
index dbcf266..14f46ec 100644
--- a/res/layout/search_bar_unified_version.xml
+++ b/res/layout/search_bar_unified_version.xml
@@ -30,6 +30,7 @@
         android:orientation="horizontal"
         android:paddingStart="24dp"
         android:paddingEnd="24dp"
+        android:focusedByDefault="true"
         android:background="@drawable/search_bar_selected_background">
 
         <ImageView
diff --git a/res/raw/accessibility_shortcut_type_triple_tap.json b/res/raw/accessibility_shortcut_type_triple_tap.json
deleted file mode 100644
index 870e671..0000000
--- a/res/raw/accessibility_shortcut_type_triple_tap.json
+++ /dev/null
@@ -1,1959 +0,0 @@
-{
-  "v": "5.6.5",
-  "fr": 60,
-  "ip": 0,
-  "op": 180,
-  "w": 412,
-  "h": 300,
-  "nm": "Triple_Tap_Screen",
-  "ddd": 0,
-  "assets": [
-    {
-      "id": "comp_0",
-      "layers": [
-        {
-          "ddd": 0,
-          "ind": 1,
-          "ty": 4,
-          "nm": ".white",
-          "cl": "white",
-          "hd": true,
-          "sr": 1,
-          "ks": {
-            "o": {
-              "a": 0,
-              "k": 100,
-              "ix": 11
-            },
-            "r": {
-              "a": 0,
-              "k": 0,
-              "ix": 10
-            },
-            "p": {
-              "a": 0,
-              "k": [
-                206,
-                150,
-                0
-              ],
-              "ix": 2
-            },
-            "a": {
-              "a": 0,
-              "k": [
-                0,
-                0,
-                0
-              ],
-              "ix": 1
-            },
-            "s": {
-              "a": 0,
-              "k": [
-                100,
-                100,
-                100
-              ],
-              "ix": 6
-            }
-          },
-          "ao": 0,
-          "shapes": [
-            {
-              "ty": "gr",
-              "it": [
-                {
-                  "ind": 0,
-                  "ty": "sh",
-                  "ix": 1,
-                  "ks": {
-                    "a": 0,
-                    "k": {
-                      "i": [
-                        [
-                          15.4,
-                          0
-                        ],
-                        [
-                          0,
-                          0
-                        ],
-                        [
-                          0,
-                          15.4
-                        ],
-                        [
-                          0,
-                          0
-                        ],
-                        [
-                          -15.4,
-                          0
-                        ],
-                        [
-                          0,
-                          0
-                        ],
-                        [
-                          0,
-                          -15.4
-                        ],
-                        [
-                          0,
-                          0
-                        ]
-                      ],
-                      "o": [
-                        [
-                          0,
-                          0
-                        ],
-                        [
-                          -15.4,
-                          0
-                        ],
-                        [
-                          0,
-                          0
-                        ],
-                        [
-                          0,
-                          -15.4
-                        ],
-                        [
-                          0,
-                          0
-                        ],
-                        [
-                          15.4,
-                          0
-                        ],
-                        [
-                          0,
-                          0
-                        ],
-                        [
-                          0,
-                          15.4
-                        ]
-                      ],
-                      "v": [
-                        [
-                          178,
-                          150
-                        ],
-                        [
-                          -178,
-                          150
-                        ],
-                        [
-                          -206,
-                          122
-                        ],
-                        [
-                          -206,
-                          -122
-                        ],
-                        [
-                          -178,
-                          -150
-                        ],
-                        [
-                          178,
-                          -150
-                        ],
-                        [
-                          206,
-                          -122
-                        ],
-                        [
-                          206,
-                          122
-                        ]
-                      ],
-                      "c": true
-                    },
-                    "ix": 2
-                  },
-                  "nm": "Path 1",
-                  "mn": "ADBE Vector Shape - Group",
-                  "hd": false
-                },
-                {
-                  "ty": "fl",
-                  "c": {
-                    "a": 0,
-                    "k": [
-                      1,
-                      1,
-                      1,
-                      1
-                    ],
-                    "ix": 4
-                  },
-                  "o": {
-                    "a": 0,
-                    "k": 100,
-                    "ix": 5
-                  },
-                  "r": 1,
-                  "bm": 0,
-                  "nm": "Fill 1",
-                  "mn": "ADBE Vector Graphic - Fill",
-                  "hd": false
-                },
-                {
-                  "ty": "tr",
-                  "p": {
-                    "a": 0,
-                    "k": [
-                      0,
-                      0
-                    ],
-                    "ix": 2
-                  },
-                  "a": {
-                    "a": 0,
-                    "k": [
-                      0,
-                      0
-                    ],
-                    "ix": 1
-                  },
-                  "s": {
-                    "a": 0,
-                    "k": [
-                      100,
-                      100
-                    ],
-                    "ix": 3
-                  },
-                  "r": {
-                    "a": 0,
-                    "k": 0,
-                    "ix": 6
-                  },
-                  "o": {
-                    "a": 0,
-                    "k": 100,
-                    "ix": 7
-                  },
-                  "sk": {
-                    "a": 0,
-                    "k": 0,
-                    "ix": 4
-                  },
-                  "sa": {
-                    "a": 0,
-                    "k": 0,
-                    "ix": 5
-                  },
-                  "nm": "Transform"
-                }
-              ],
-              "nm": "Group 1",
-              "np": 2,
-              "cix": 2,
-              "bm": 0,
-              "ix": 1,
-              "mn": "ADBE Vector Group",
-              "hd": false
-            }
-          ],
-          "ip": 0,
-          "op": 1800,
-          "st": 0,
-          "bm": 0
-        }
-      ]
-    }
-  ],
-  "layers": [
-    {
-      "ddd": 0,
-      "ind": 1,
-      "ty": 4,
-      "nm": ".grey200",
-      "cl": "grey200",
-      "sr": 1,
-      "ks": {
-        "o": {
-          "a": 0,
-          "k": 100,
-          "ix": 11
-        },
-        "r": {
-          "a": 0,
-          "k": 0,
-          "ix": 10
-        },
-        "p": {
-          "a": 0,
-          "k": [
-            206,
-            150,
-            0
-          ],
-          "ix": 2
-        },
-        "a": {
-          "a": 0,
-          "k": [
-            1.35,
-            0,
-            0
-          ],
-          "ix": 1
-        },
-        "s": {
-          "a": 0,
-          "k": [
-            100,
-            100,
-            100
-          ],
-          "ix": 6
-        }
-      },
-      "ao": 0,
-      "shapes": [
-        {
-          "ty": "gr",
-          "it": [
-            {
-              "ind": 0,
-              "ty": "sh",
-              "ix": 1,
-              "ks": {
-                "a": 0,
-                "k": {
-                  "i": [
-                    [
-                      0,
-                      0
-                    ],
-                    [
-                      0,
-                      -73.4
-                    ],
-                    [
-                      -73.4,
-                      0
-                    ],
-                    [
-                      0,
-                      73.4
-                    ],
-                    [
-                      73.4,
-                      0
-                    ]
-                  ],
-                  "o": [
-                    [
-                      -73.4,
-                      0
-                    ],
-                    [
-                      0,
-                      73.4
-                    ],
-                    [
-                      73.4,
-                      0
-                    ],
-                    [
-                      0,
-                      -73.4
-                    ],
-                    [
-                      0,
-                      0
-                    ]
-                  ],
-                  "v": [
-                    [
-                      1.4,
-                      -132.9
-                    ],
-                    [
-                      -131.6,
-                      0
-                    ],
-                    [
-                      1.3,
-                      132.9
-                    ],
-                    [
-                      134.3,
-                      0
-                    ],
-                    [
-                      1.4,
-                      -132.9
-                    ]
-                  ],
-                  "c": true
-                },
-                "ix": 2
-              },
-              "nm": "Path 1",
-              "mn": "ADBE Vector Shape - Group",
-              "hd": false
-            },
-            {
-              "ind": 1,
-              "ty": "sh",
-              "ix": 2,
-              "ks": {
-                "a": 0,
-                "k": {
-                  "i": [
-                    [
-                      0,
-                      0
-                    ],
-                    [
-                      -24.7,
-                      -24.8
-                    ],
-                    [
-                      0,
-                      -35
-                    ],
-                    [
-                      24.8,
-                      -24.7
-                    ],
-                    [
-                      35,
-                      0
-                    ],
-                    [
-                      24.7,
-                      24.8
-                    ],
-                    [
-                      0,
-                      35
-                    ],
-                    [
-                      -24.8,
-                      24.7
-                    ],
-                    [
-                      -35,
-                      0
-                    ]
-                  ],
-                  "o": [
-                    [
-                      35,
-                      0
-                    ],
-                    [
-                      24.7,
-                      24.7
-                    ],
-                    [
-                      0,
-                      35
-                    ],
-                    [
-                      -24.7,
-                      24.7
-                    ],
-                    [
-                      -35,
-                      0
-                    ],
-                    [
-                      -24.7,
-                      -24.8
-                    ],
-                    [
-                      0,
-                      -35
-                    ],
-                    [
-                      24.7,
-                      -24.7
-                    ],
-                    [
-                      0,
-                      0
-                    ]
-                  ],
-                  "v": [
-                    [
-                      1.4,
-                      -130.9
-                    ],
-                    [
-                      94,
-                      -92.5
-                    ],
-                    [
-                      132.4,
-                      0.1
-                    ],
-                    [
-                      94,
-                      92.7
-                    ],
-                    [
-                      1.4,
-                      131.1
-                    ],
-                    [
-                      -91.2,
-                      92.7
-                    ],
-                    [
-                      -129.6,
-                      0
-                    ],
-                    [
-                      -91.2,
-                      -92.6
-                    ],
-                    [
-                      1.4,
-                      -130.9
-                    ]
-                  ],
-                  "c": false
-                },
-                "ix": 2
-              },
-              "nm": "Path 2",
-              "mn": "ADBE Vector Shape - Group",
-              "hd": false
-            },
-            {
-              "ty": "fl",
-              "c": {
-                "a": 0,
-                "k": [
-                  0.909803926945,
-                  0.917647063732,
-                  0.929411768913,
-                  1
-                ],
-                "ix": 4
-              },
-              "o": {
-                "a": 0,
-                "k": 100,
-                "ix": 5
-              },
-              "r": 1,
-              "bm": 0,
-              "nm": "Fill 1",
-              "mn": "ADBE Vector Graphic - Fill",
-              "hd": false
-            },
-            {
-              "ty": "tr",
-              "p": {
-                "a": 0,
-                "k": [
-                  0,
-                  0
-                ],
-                "ix": 2
-              },
-              "a": {
-                "a": 0,
-                "k": [
-                  0,
-                  0
-                ],
-                "ix": 1
-              },
-              "s": {
-                "a": 0,
-                "k": [
-                  100,
-                  100
-                ],
-                "ix": 3
-              },
-              "r": {
-                "a": 0,
-                "k": 0,
-                "ix": 6
-              },
-              "o": {
-                "a": 0,
-                "k": 100,
-                "ix": 7
-              },
-              "sk": {
-                "a": 0,
-                "k": 0,
-                "ix": 4
-              },
-              "sa": {
-                "a": 0,
-                "k": 0,
-                "ix": 5
-              },
-              "nm": "Transform"
-            }
-          ],
-          "nm": "Group 1",
-          "np": 3,
-          "cix": 2,
-          "bm": 0,
-          "ix": 1,
-          "mn": "ADBE Vector Group",
-          "hd": false
-        }
-      ],
-      "ip": 0,
-      "op": 300,
-      "st": 0,
-      "bm": 0
-    },
-    {
-      "ddd": 0,
-      "ind": 2,
-      "ty": 4,
-      "nm": ".grey300",
-      "cl": "grey300",
-      "sr": 1,
-      "ks": {
-        "o": {
-          "a": 0,
-          "k": 100,
-          "ix": 11
-        },
-        "r": {
-          "a": 0,
-          "k": 0,
-          "ix": 10
-        },
-        "p": {
-          "a": 0,
-          "k": [
-            205,
-            150,
-            0
-          ],
-          "ix": 2
-        },
-        "a": {
-          "a": 0,
-          "k": [
-            0,
-            0,
-            0
-          ],
-          "ix": 1
-        },
-        "s": {
-          "a": 0,
-          "k": [
-            100,
-            100,
-            100
-          ],
-          "ix": 6
-        }
-      },
-      "ao": 0,
-      "shapes": [
-        {
-          "ty": "gr",
-          "it": [
-            {
-              "ty": "gr",
-              "it": [
-                {
-                  "ind": 0,
-                  "ty": "sh",
-                  "ix": 1,
-                  "ks": {
-                    "a": 0,
-                    "k": {
-                      "i": [
-                        [
-                          -7.9,
-                          0
-                        ],
-                        [
-                          0,
-                          0
-                        ],
-                        [
-                          0,
-                          8
-                        ],
-                        [
-                          0,
-                          0
-                        ],
-                        [
-                          0,
-                          1.6
-                        ],
-                        [
-                          0,
-                          0
-                        ],
-                        [
-                          2,
-                          1.5
-                        ],
-                        [
-                          0,
-                          0
-                        ],
-                        [
-                          6.4,
-                          0
-                        ],
-                        [
-                          0,
-                          0
-                        ],
-                        [
-                          0,
-                          6.4
-                        ],
-                        [
-                          0,
-                          0
-                        ],
-                        [
-                          1,
-                          -0.7
-                        ],
-                        [
-                          0,
-                          0
-                        ]
-                      ],
-                      "o": [
-                        [
-                          0,
-                          0
-                        ],
-                        [
-                          8,
-                          0
-                        ],
-                        [
-                          0,
-                          0
-                        ],
-                        [
-                          1.6,
-                          0
-                        ],
-                        [
-                          0,
-                          0
-                        ],
-                        [
-                          -1.9,
-                          -1.6
-                        ],
-                        [
-                          0,
-                          0
-                        ],
-                        [
-                          0,
-                          6.4
-                        ],
-                        [
-                          0,
-                          0
-                        ],
-                        [
-                          -6.4,
-                          0
-                        ],
-                        [
-                          0,
-                          0
-                        ],
-                        [
-                          -1,
-                          0.7
-                        ],
-                        [
-                          0,
-                          0
-                        ],
-                        [
-                          0.1,
-                          7.9
-                        ]
-                      ],
-                      "v": [
-                        [
-                          -64,
-                          75.3
-                        ],
-                        [
-                          69.1,
-                          75.3
-                        ],
-                        [
-                          83.6,
-                          60.8
-                        ],
-                        [
-                          83.6,
-                          -81
-                        ],
-                        [
-                          86.5,
-                          -83.9
-                        ],
-                        [
-                          86.5,
-                          -100.9
-                        ],
-                        [
-                          80.7,
-                          -105.6
-                        ],
-                        [
-                          80.7,
-                          60.8
-                        ],
-                        [
-                          69.1,
-                          72.4
-                        ],
-                        [
-                          -64,
-                          72.4
-                        ],
-                        [
-                          -75.6,
-                          60.8
-                        ],
-                        [
-                          -75.6,
-                          -107.3
-                        ],
-                        [
-                          -78.5,
-                          -105.2
-                        ],
-                        [
-                          -78.5,
-                          60.9
-                        ]
-                      ],
-                      "c": true
-                    },
-                    "ix": 2
-                  },
-                  "nm": "Path 1",
-                  "mn": "ADBE Vector Shape - Group",
-                  "hd": false
-                },
-                {
-                  "ty": "fl",
-                  "c": {
-                    "a": 0,
-                    "k": [
-                      0.854901969433,
-                      0.86274510622,
-                      0.878431379795,
-                      1
-                    ],
-                    "ix": 4
-                  },
-                  "o": {
-                    "a": 0,
-                    "k": 100,
-                    "ix": 5
-                  },
-                  "r": 1,
-                  "bm": 0,
-                  "nm": "Fill 1",
-                  "mn": "ADBE Vector Graphic - Fill",
-                  "hd": false
-                },
-                {
-                  "ty": "tr",
-                  "p": {
-                    "a": 0,
-                    "k": [
-                      0,
-                      0
-                    ],
-                    "ix": 2
-                  },
-                  "a": {
-                    "a": 0,
-                    "k": [
-                      0,
-                      0
-                    ],
-                    "ix": 1
-                  },
-                  "s": {
-                    "a": 0,
-                    "k": [
-                      100,
-                      100
-                    ],
-                    "ix": 3
-                  },
-                  "r": {
-                    "a": 0,
-                    "k": 0,
-                    "ix": 6
-                  },
-                  "o": {
-                    "a": 0,
-                    "k": 100,
-                    "ix": 7
-                  },
-                  "sk": {
-                    "a": 0,
-                    "k": 0,
-                    "ix": 4
-                  },
-                  "sa": {
-                    "a": 0,
-                    "k": 0,
-                    "ix": 5
-                  },
-                  "nm": "Transform"
-                }
-              ],
-              "nm": "Group 1",
-              "np": 2,
-              "cix": 2,
-              "bm": 0,
-              "ix": 1,
-              "mn": "ADBE Vector Group",
-              "hd": false
-            },
-            {
-              "ty": "tr",
-              "p": {
-                "a": 0,
-                "k": [
-                  0,
-                  0
-                ],
-                "ix": 2
-              },
-              "a": {
-                "a": 0,
-                "k": [
-                  0,
-                  0
-                ],
-                "ix": 1
-              },
-              "s": {
-                "a": 0,
-                "k": [
-                  100,
-                  100
-                ],
-                "ix": 3
-              },
-              "r": {
-                "a": 0,
-                "k": 0,
-                "ix": 6
-              },
-              "o": {
-                "a": 0,
-                "k": 100,
-                "ix": 7
-              },
-              "sk": {
-                "a": 0,
-                "k": 0,
-                "ix": 4
-              },
-              "sa": {
-                "a": 0,
-                "k": 0,
-                "ix": 5
-              },
-              "nm": "Transform"
-            }
-          ],
-          "nm": "Group 1",
-          "np": 1,
-          "cix": 2,
-          "bm": 0,
-          "ix": 1,
-          "mn": "ADBE Vector Group",
-          "hd": false
-        }
-      ],
-      "ip": 0,
-      "op": 300,
-      "st": 0,
-      "bm": 0
-    },
-    {
-      "ddd": 0,
-      "ind": 3,
-      "ty": 4,
-      "nm": "cursor 5",
-      "sr": 1,
-      "ks": {
-        "o": {
-          "a": 1,
-          "k": [
-            {
-              "i": {
-                "x": [
-                  0.833
-                ],
-                "y": [
-                  0.833
-                ]
-              },
-              "o": {
-                "x": [
-                  0.167
-                ],
-                "y": [
-                  0.167
-                ]
-              },
-              "t": 36,
-              "s": [
-                0
-              ]
-            },
-            {
-              "i": {
-                "x": [
-                  0.833
-                ],
-                "y": [
-                  0.833
-                ]
-              },
-              "o": {
-                "x": [
-                  0.167
-                ],
-                "y": [
-                  0.167
-                ]
-              },
-              "t": 39.582,
-              "s": [
-                100
-              ]
-            },
-            {
-              "i": {
-                "x": [
-                  0.833
-                ],
-                "y": [
-                  0.833
-                ]
-              },
-              "o": {
-                "x": [
-                  0.167
-                ],
-                "y": [
-                  0.167
-                ]
-              },
-              "t": 44.953,
-              "s": [
-                100
-              ]
-            },
-            {
-              "t": 55.697265625,
-              "s": [
-                0
-              ]
-            }
-          ],
-          "ix": 11
-        },
-        "r": {
-          "a": 0,
-          "k": 0,
-          "ix": 10
-        },
-        "p": {
-          "a": 0,
-          "k": [
-            207.641,
-            154.48,
-            0
-          ],
-          "ix": 2
-        },
-        "a": {
-          "a": 0,
-          "k": [
-            -180.5,
-            -165.5,
-            0
-          ],
-          "ix": 1
-        },
-        "s": {
-          "a": 1,
-          "k": [
-            {
-              "i": {
-                "x": [
-                  0,
-                  0,
-                  0
-                ],
-                "y": [
-                  1,
-                  1,
-                  1
-                ]
-              },
-              "o": {
-                "x": [
-                  0.45,
-                  0.45,
-                  0.45
-                ],
-                "y": [
-                  0,
-                  0,
-                  0
-                ]
-              },
-              "t": 37.791,
-              "s": [
-                27.252,
-                27.252,
-                100
-              ]
-            },
-            {
-              "t": 59,
-              "s": [
-                56.661,
-                56.661,
-                100
-              ]
-            }
-          ],
-          "ix": 6
-        }
-      },
-      "ao": 0,
-      "shapes": [
-        {
-          "ty": "gr",
-          "it": [
-            {
-              "d": 1,
-              "ty": "el",
-              "s": {
-                "a": 0,
-                "k": [
-                  63.109,
-                  63.109
-                ],
-                "ix": 2
-              },
-              "p": {
-                "a": 0,
-                "k": [
-                  0,
-                  0
-                ],
-                "ix": 3
-              },
-              "nm": "Ellipse Path 1",
-              "mn": "ADBE Vector Shape - Ellipse",
-              "hd": false
-            },
-            {
-              "ty": "st",
-              "c": {
-                "a": 0,
-                "k": [
-                  1,
-                  0.182245725744,
-                  0.894323072246,
-                  1
-                ],
-                "ix": 3
-              },
-              "o": {
-                "a": 0,
-                "k": 100,
-                "ix": 4
-              },
-              "w": {
-                "a": 0,
-                "k": 3,
-                "ix": 5
-              },
-              "lc": 1,
-              "lj": 1,
-              "ml": 4,
-              "bm": 0,
-              "nm": "Stroke 1",
-              "mn": "ADBE Vector Graphic - Stroke",
-              "hd": false
-            },
-            {
-              "ty": "fl",
-              "c": {
-                "a": 0,
-                "k": [
-                  1,
-                  0.522196631338,
-                  0.9762855081,
-                  1
-                ],
-                "ix": 4
-              },
-              "o": {
-                "a": 0,
-                "k": 50,
-                "ix": 5
-              },
-              "r": 1,
-              "bm": 0,
-              "nm": "Fill 1",
-              "mn": "ADBE Vector Graphic - Fill",
-              "hd": false
-            },
-            {
-              "ty": "tr",
-              "p": {
-                "a": 0,
-                "k": [
-                  -180.5,
-                  -165.5
-                ],
-                "ix": 2
-              },
-              "a": {
-                "a": 0,
-                "k": [
-                  0,
-                  0
-                ],
-                "ix": 1
-              },
-              "s": {
-                "a": 0,
-                "k": [
-                  100,
-                  100
-                ],
-                "ix": 3
-              },
-              "r": {
-                "a": 0,
-                "k": 0,
-                "ix": 6
-              },
-              "o": {
-                "a": 0,
-                "k": 100,
-                "ix": 7
-              },
-              "sk": {
-                "a": 0,
-                "k": 0,
-                "ix": 4
-              },
-              "sa": {
-                "a": 0,
-                "k": 0,
-                "ix": 5
-              },
-              "nm": "Transform"
-            }
-          ],
-          "nm": "Ellipse 1",
-          "np": 3,
-          "cix": 2,
-          "bm": 0,
-          "ix": 1,
-          "mn": "ADBE Vector Group",
-          "hd": false
-        }
-      ],
-      "ip": 36,
-      "op": 59,
-      "st": -1,
-      "bm": 0
-    },
-    {
-      "ddd": 0,
-      "ind": 4,
-      "ty": 4,
-      "nm": "cursor 4",
-      "sr": 1,
-      "ks": {
-        "o": {
-          "a": 1,
-          "k": [
-            {
-              "i": {
-                "x": [
-                  0.833
-                ],
-                "y": [
-                  0.833
-                ]
-              },
-              "o": {
-                "x": [
-                  0.167
-                ],
-                "y": [
-                  0.167
-                ]
-              },
-              "t": 22,
-              "s": [
-                0
-              ]
-            },
-            {
-              "i": {
-                "x": [
-                  0.833
-                ],
-                "y": [
-                  0.833
-                ]
-              },
-              "o": {
-                "x": [
-                  0.167
-                ],
-                "y": [
-                  0.167
-                ]
-              },
-              "t": 25.58,
-              "s": [
-                100
-              ]
-            },
-            {
-              "i": {
-                "x": [
-                  0.833
-                ],
-                "y": [
-                  0.833
-                ]
-              },
-              "o": {
-                "x": [
-                  0.167
-                ],
-                "y": [
-                  0.167
-                ]
-              },
-              "t": 30.953,
-              "s": [
-                100
-              ]
-            },
-            {
-              "t": 41.697265625,
-              "s": [
-                0
-              ]
-            }
-          ],
-          "ix": 11
-        },
-        "r": {
-          "a": 0,
-          "k": 0,
-          "ix": 10
-        },
-        "p": {
-          "a": 0,
-          "k": [
-            207.641,
-            154.48,
-            0
-          ],
-          "ix": 2
-        },
-        "a": {
-          "a": 0,
-          "k": [
-            -180.5,
-            -165.5,
-            0
-          ],
-          "ix": 1
-        },
-        "s": {
-          "a": 1,
-          "k": [
-            {
-              "i": {
-                "x": [
-                  0,
-                  0,
-                  0
-                ],
-                "y": [
-                  1,
-                  1,
-                  1
-                ]
-              },
-              "o": {
-                "x": [
-                  0.45,
-                  0.45,
-                  0.45
-                ],
-                "y": [
-                  0,
-                  0,
-                  0
-                ]
-              },
-              "t": 23.789,
-              "s": [
-                27.252,
-                27.252,
-                100
-              ]
-            },
-            {
-              "t": 45,
-              "s": [
-                56.661,
-                56.661,
-                100
-              ]
-            }
-          ],
-          "ix": 6
-        }
-      },
-      "ao": 0,
-      "shapes": [
-        {
-          "ty": "gr",
-          "it": [
-            {
-              "d": 1,
-              "ty": "el",
-              "s": {
-                "a": 0,
-                "k": [
-                  63.109,
-                  63.109
-                ],
-                "ix": 2
-              },
-              "p": {
-                "a": 0,
-                "k": [
-                  0,
-                  0
-                ],
-                "ix": 3
-              },
-              "nm": "Ellipse Path 1",
-              "mn": "ADBE Vector Shape - Ellipse",
-              "hd": false
-            },
-            {
-              "ty": "st",
-              "c": {
-                "a": 0,
-                "k": [
-                  1,
-                  0.182245725744,
-                  0.894323072246,
-                  1
-                ],
-                "ix": 3
-              },
-              "o": {
-                "a": 0,
-                "k": 100,
-                "ix": 4
-              },
-              "w": {
-                "a": 0,
-                "k": 3,
-                "ix": 5
-              },
-              "lc": 1,
-              "lj": 1,
-              "ml": 4,
-              "bm": 0,
-              "nm": "Stroke 1",
-              "mn": "ADBE Vector Graphic - Stroke",
-              "hd": false
-            },
-            {
-              "ty": "fl",
-              "c": {
-                "a": 0,
-                "k": [
-                  1,
-                  0.522196631338,
-                  0.9762855081,
-                  1
-                ],
-                "ix": 4
-              },
-              "o": {
-                "a": 0,
-                "k": 50,
-                "ix": 5
-              },
-              "r": 1,
-              "bm": 0,
-              "nm": "Fill 1",
-              "mn": "ADBE Vector Graphic - Fill",
-              "hd": false
-            },
-            {
-              "ty": "tr",
-              "p": {
-                "a": 0,
-                "k": [
-                  -180.5,
-                  -165.5
-                ],
-                "ix": 2
-              },
-              "a": {
-                "a": 0,
-                "k": [
-                  0,
-                  0
-                ],
-                "ix": 1
-              },
-              "s": {
-                "a": 0,
-                "k": [
-                  100,
-                  100
-                ],
-                "ix": 3
-              },
-              "r": {
-                "a": 0,
-                "k": 0,
-                "ix": 6
-              },
-              "o": {
-                "a": 0,
-                "k": 100,
-                "ix": 7
-              },
-              "sk": {
-                "a": 0,
-                "k": 0,
-                "ix": 4
-              },
-              "sa": {
-                "a": 0,
-                "k": 0,
-                "ix": 5
-              },
-              "nm": "Transform"
-            }
-          ],
-          "nm": "Ellipse 1",
-          "np": 3,
-          "cix": 2,
-          "bm": 0,
-          "ix": 1,
-          "mn": "ADBE Vector Group",
-          "hd": false
-        }
-      ],
-      "ip": 22,
-      "op": 45,
-      "st": -3,
-      "bm": 0
-    },
-    {
-      "ddd": 0,
-      "ind": 5,
-      "ty": 4,
-      "nm": "cursor",
-      "sr": 1,
-      "ks": {
-        "o": {
-          "a": 1,
-          "k": [
-            {
-              "i": {
-                "x": [
-                  0.833
-                ],
-                "y": [
-                  0.833
-                ]
-              },
-              "o": {
-                "x": [
-                  0.167
-                ],
-                "y": [
-                  0.167
-                ]
-              },
-              "t": 8,
-              "s": [
-                0
-              ]
-            },
-            {
-              "i": {
-                "x": [
-                  0.833
-                ],
-                "y": [
-                  0.833
-                ]
-              },
-              "o": {
-                "x": [
-                  0.167
-                ],
-                "y": [
-                  0.167
-                ]
-              },
-              "t": 11.582,
-              "s": [
-                100
-              ]
-            },
-            {
-              "i": {
-                "x": [
-                  0.833
-                ],
-                "y": [
-                  0.833
-                ]
-              },
-              "o": {
-                "x": [
-                  0.167
-                ],
-                "y": [
-                  0.167
-                ]
-              },
-              "t": 16.953,
-              "s": [
-                100
-              ]
-            },
-            {
-              "t": 27.697265625,
-              "s": [
-                0
-              ]
-            }
-          ],
-          "ix": 11
-        },
-        "r": {
-          "a": 0,
-          "k": 0,
-          "ix": 10
-        },
-        "p": {
-          "a": 0,
-          "k": [
-            207.641,
-            154.48,
-            0
-          ],
-          "ix": 2
-        },
-        "a": {
-          "a": 0,
-          "k": [
-            -180.5,
-            -165.5,
-            0
-          ],
-          "ix": 1
-        },
-        "s": {
-          "a": 1,
-          "k": [
-            {
-              "i": {
-                "x": [
-                  0,
-                  0,
-                  0
-                ],
-                "y": [
-                  1,
-                  1,
-                  1
-                ]
-              },
-              "o": {
-                "x": [
-                  0.45,
-                  0.45,
-                  0.45
-                ],
-                "y": [
-                  0,
-                  0,
-                  0
-                ]
-              },
-              "t": 9.791,
-              "s": [
-                27.252,
-                27.252,
-                100
-              ]
-            },
-            {
-              "t": 31,
-              "s": [
-                56.661,
-                56.661,
-                100
-              ]
-            }
-          ],
-          "ix": 6
-        }
-      },
-      "ao": 0,
-      "shapes": [
-        {
-          "ty": "gr",
-          "it": [
-            {
-              "d": 1,
-              "ty": "el",
-              "s": {
-                "a": 0,
-                "k": [
-                  63.109,
-                  63.109
-                ],
-                "ix": 2
-              },
-              "p": {
-                "a": 0,
-                "k": [
-                  0,
-                  0
-                ],
-                "ix": 3
-              },
-              "nm": "Ellipse Path 1",
-              "mn": "ADBE Vector Shape - Ellipse",
-              "hd": false
-            },
-            {
-              "ty": "st",
-              "c": {
-                "a": 0,
-                "k": [
-                  1,
-                  0.182245725744,
-                  0.894323072246,
-                  1
-                ],
-                "ix": 3
-              },
-              "o": {
-                "a": 0,
-                "k": 100,
-                "ix": 4
-              },
-              "w": {
-                "a": 0,
-                "k": 3,
-                "ix": 5
-              },
-              "lc": 1,
-              "lj": 1,
-              "ml": 4,
-              "bm": 0,
-              "nm": "Stroke 1",
-              "mn": "ADBE Vector Graphic - Stroke",
-              "hd": false
-            },
-            {
-              "ty": "fl",
-              "c": {
-                "a": 0,
-                "k": [
-                  1,
-                  0.522196631338,
-                  0.9762855081,
-                  1
-                ],
-                "ix": 4
-              },
-              "o": {
-                "a": 0,
-                "k": 50,
-                "ix": 5
-              },
-              "r": 1,
-              "bm": 0,
-              "nm": "Fill 1",
-              "mn": "ADBE Vector Graphic - Fill",
-              "hd": false
-            },
-            {
-              "ty": "tr",
-              "p": {
-                "a": 0,
-                "k": [
-                  -180.5,
-                  -165.5
-                ],
-                "ix": 2
-              },
-              "a": {
-                "a": 0,
-                "k": [
-                  0,
-                  0
-                ],
-                "ix": 1
-              },
-              "s": {
-                "a": 0,
-                "k": [
-                  100,
-                  100
-                ],
-                "ix": 3
-              },
-              "r": {
-                "a": 0,
-                "k": 0,
-                "ix": 6
-              },
-              "o": {
-                "a": 0,
-                "k": 100,
-                "ix": 7
-              },
-              "sk": {
-                "a": 0,
-                "k": 0,
-                "ix": 4
-              },
-              "sa": {
-                "a": 0,
-                "k": 0,
-                "ix": 5
-              },
-              "nm": "Transform"
-            }
-          ],
-          "nm": "Ellipse 1",
-          "np": 3,
-          "cix": 2,
-          "bm": 0,
-          "ix": 1,
-          "mn": "ADBE Vector Group",
-          "hd": false
-        }
-      ],
-      "ip": 8,
-      "op": 31,
-      "st": -5,
-      "bm": 0
-    },
-    {
-      "ddd": 0,
-      "ind": 6,
-      "ty": 0,
-      "nm": "BG_White",
-      "refId": "comp_0",
-      "sr": 1,
-      "ks": {
-        "o": {
-          "a": 0,
-          "k": 100,
-          "ix": 11
-        },
-        "r": {
-          "a": 0,
-          "k": 0,
-          "ix": 10
-        },
-        "p": {
-          "a": 0,
-          "k": [
-            206,
-            150,
-            0
-          ],
-          "ix": 2
-        },
-        "a": {
-          "a": 0,
-          "k": [
-            206,
-            150,
-            0
-          ],
-          "ix": 1
-        },
-        "s": {
-          "a": 0,
-          "k": [
-            100,
-            100,
-            100
-          ],
-          "ix": 6
-        }
-      },
-      "ao": 0,
-      "w": 412,
-      "h": 300,
-      "ip": 0,
-      "op": 1800,
-      "st": 0,
-      "bm": 0
-    }
-  ],
-  "markers": []
-}
\ No newline at end of file
diff --git a/res/raw/accessibility_shortcut_type_triple_tap_tablet.json b/res/raw/accessibility_shortcut_type_triple_tap_tablet.json
deleted file mode 100644
index b6a9b14..0000000
--- a/res/raw/accessibility_shortcut_type_triple_tap_tablet.json
+++ /dev/null
@@ -1 +0,0 @@
-{"v":"5.10.0","fr":60,"ip":0,"op":180,"w":412,"h":300,"nm":"Triple_Tap_Screen_Tablet-DT","ddd":0,"assets":[],"layers":[{"ddd":0,"ind":1,"ty":4,"nm":".grey600","cl":"grey600","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[205.999,149.375,0],"ix":2,"l":2},"a":{"a":0,"k":[205.999,149.375,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-1.367,0],[0,0],[0,-1.372],[0,0]],"o":[[0,-1.372],[0,0],[1.366,0],[0,0],[0,0]],"v":[[-6.933,0.746],[-4.457,-1.74],[4.457,-1.74],[6.933,0.746],[0.99,1.74]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.501960784314,0.525490196078,0.545098039216,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"tr","p":{"a":0,"k":[318.382,49.604],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Layer 3","np":1,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-1.367,0],[0,0],[0,-1.372],[0,0]],"o":[[0,-1.372],[0,0],[1.367,0],[0,0],[0,0]],"v":[[-13.37,0.746],[-10.894,-1.74],[10.894,-1.74],[13.37,0.746],[0.495,1.74]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.501960784314,0.525490196078,0.545098039216,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"tr","p":{"a":0,"k":[276.958,49.604],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Layer 2","np":1,"cix":2,"bm":0,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,-8.146],[0,0],[8.146,0],[0,0],[0,8.146],[0,0],[-8.146,0],[0,0]],"o":[[0,0],[0,8.146],[0,0],[-8.146,0],[0,0],[0,-8.146],[0,0],[8.146,0]],"v":[[158.519,-84.974],[158.519,84.974],[143.769,99.724],[-143.769,99.724],[-158.519,84.974],[-158.519,-84.974],[-143.769,-99.724],[143.769,-99.724]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.501960784314,0.525490196078,0.545098039216,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":2.5,"ix":5},"lc":1,"lj":1,"ml":4,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"tr","p":{"a":0,"k":[205.999,151.162],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Layer 1","np":1,"cix":2,"bm":0,"ix":3,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":180,"st":0,"ct":1,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":".blue400","cl":"blue400","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":36,"s":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":39.582,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":44.953,"s":[100]},{"t":55.697265625,"s":[0]}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[207.641,154.48,0],"ix":2,"l":2},"a":{"a":0,"k":[-180.5,-165.5,0],"ix":1,"l":2},"s":{"a":1,"k":[{"i":{"x":[0,0,0],"y":[1,1,1]},"o":{"x":[0.45,0.45,0.45],"y":[0,0,0]},"t":37.791,"s":[27.252,27.252,100]},{"t":59,"s":[56.661,56.661,100]}],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[63.109,63.109],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.4,0.61568627451,0.964705882353,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":3,"ix":5},"lc":1,"lj":1,"ml":4,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[-180.5,-165.5],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":36,"op":59,"st":-1,"ct":1,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":".blue800","cl":"blue800","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":36,"s":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":39.582,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":44.953,"s":[100]},{"t":55.697265625,"s":[0]}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[207.641,154.48,0],"ix":2,"l":2},"a":{"a":0,"k":[-180.5,-165.5,0],"ix":1,"l":2},"s":{"a":1,"k":[{"i":{"x":[0,0,0],"y":[1,1,1]},"o":{"x":[0.45,0.45,0.45],"y":[0,0,0]},"t":37.791,"s":[27.252,27.252,100]},{"t":59,"s":[56.661,56.661,100]}],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[63.109,63.109],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"fl","c":{"a":0,"k":[0.094117647059,0.352941176471,0.737254901961,1],"ix":4},"o":{"a":0,"k":50,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-180.5,-165.5],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":36,"op":59,"st":-1,"ct":1,"bm":0},{"ddd":0,"ind":4,"ty":4,"nm":".blue400","cl":"blue400","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":22,"s":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":25.58,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":30.953,"s":[100]},{"t":41.697265625,"s":[0]}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[207.641,154.48,0],"ix":2,"l":2},"a":{"a":0,"k":[-180.5,-165.5,0],"ix":1,"l":2},"s":{"a":1,"k":[{"i":{"x":[0,0,0],"y":[1,1,1]},"o":{"x":[0.45,0.45,0.45],"y":[0,0,0]},"t":23.789,"s":[27.252,27.252,100]},{"t":45,"s":[56.661,56.661,100]}],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[63.109,63.109],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.4,0.61568627451,0.964705882353,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":3,"ix":5},"lc":1,"lj":1,"ml":4,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[-180.5,-165.5],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":22,"op":45,"st":-3,"ct":1,"bm":0},{"ddd":0,"ind":5,"ty":4,"nm":".blue800","cl":"blue800","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":22,"s":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":25.58,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":30.953,"s":[100]},{"t":41.697265625,"s":[0]}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[207.641,154.48,0],"ix":2,"l":2},"a":{"a":0,"k":[-180.5,-165.5,0],"ix":1,"l":2},"s":{"a":1,"k":[{"i":{"x":[0,0,0],"y":[1,1,1]},"o":{"x":[0.45,0.45,0.45],"y":[0,0,0]},"t":23.789,"s":[27.252,27.252,100]},{"t":45,"s":[56.661,56.661,100]}],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[63.109,63.109],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"fl","c":{"a":0,"k":[0.094117647059,0.352941176471,0.737254901961,1],"ix":4},"o":{"a":0,"k":50,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-180.5,-165.5],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":22,"op":45,"st":-3,"ct":1,"bm":0},{"ddd":0,"ind":6,"ty":4,"nm":".blue400","cl":"blue400","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":8,"s":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":11.582,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":16.953,"s":[100]},{"t":27.697265625,"s":[0]}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[207.641,154.48,0],"ix":2,"l":2},"a":{"a":0,"k":[-180.5,-165.5,0],"ix":1,"l":2},"s":{"a":1,"k":[{"i":{"x":[0,0,0],"y":[1,1,1]},"o":{"x":[0.45,0.45,0.45],"y":[0,0,0]},"t":9.791,"s":[27.252,27.252,100]},{"t":31,"s":[56.661,56.661,100]}],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[63.109,63.109],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.4,0.61568627451,0.964705882353,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":3,"ix":5},"lc":1,"lj":1,"ml":4,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[-180.5,-165.5],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":8,"op":31,"st":-5,"ct":1,"bm":0},{"ddd":0,"ind":7,"ty":4,"nm":".blue800","cl":"blue800","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":8,"s":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":11.582,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":16.953,"s":[100]},{"t":27.697265625,"s":[0]}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[207.641,154.48,0],"ix":2,"l":2},"a":{"a":0,"k":[-180.5,-165.5,0],"ix":1,"l":2},"s":{"a":1,"k":[{"i":{"x":[0,0,0],"y":[1,1,1]},"o":{"x":[0.45,0.45,0.45],"y":[0,0,0]},"t":9.791,"s":[27.252,27.252,100]},{"t":31,"s":[56.661,56.661,100]}],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[63.109,63.109],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"fl","c":{"a":0,"k":[0.094117647059,0.352941176471,0.737254901961,1],"ix":4},"o":{"a":0,"k":50,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-180.5,-165.5],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":8,"op":31,"st":-5,"ct":1,"bm":0},{"ddd":0,"ind":8,"ty":4,"nm":".black","cl":"black","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[206,150,0],"ix":2,"l":2},"a":{"a":0,"k":[0,0,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[15.4,0],[0,0],[0,15.4],[0,0],[-15.4,0],[0,0],[0,-15.4],[0,0]],"o":[[0,0],[-15.4,0],[0,0],[0,-15.4],[0,0],[15.4,0],[0,0],[0,15.4]],"v":[[178,150],[-178,150],[-206,122],[-206,-122],[-178,-150],[178,-150],[206,-122],[206,122]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0,0,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":1800,"st":0,"ct":1,"bm":0}],"markers":[]}
\ No newline at end of file
diff --git a/res/raw/lottie_notification_cooldown.json b/res/raw/lottie_notification_cooldown.json
new file mode 100644
index 0000000..67658a1
--- /dev/null
+++ b/res/raw/lottie_notification_cooldown.json
@@ -0,0 +1 @@
+{"v":"5.12.1","fr":60,"ip":0,"op":720,"w":824,"h":600,"nm":"Panel v3 Lottie","ddd":0,"assets":[],"layers":[{"ddd":0,"ind":1,"ty":4,"nm":".cream","cl":"cream","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0,"y":1},"o":{"x":0.05,"y":0},"t":270,"s":[60.438,75.468,0],"to":[0,0,0],"ti":[0,0,0]},{"t":300,"s":[58.188,65.718,0]}],"ix":2,"l":2},"a":{"a":0,"k":[30.219,37.734,0],"ix":1,"l":2},"s":{"a":1,"k":[{"i":{"x":[0,0,0],"y":[1,1,1]},"o":{"x":[0.05,0.05,0.05],"y":[0,0,0]},"t":270,"s":[200,200,100]},{"t":300,"s":[104.5,104.5,100]}],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-1.914,0],[-1.41,1.209],[-0.772,2.116],[0,2.62],[0.773,2.116],[1.444,1.209],[1.881,0],[1.41,-1.243],[0.773,-2.116],[0,-2.619],[-0.772,-2.116],[-1.411,-1.242]],"o":[[1.881,0],[1.444,-1.242],[0.773,-2.116],[0,-2.619],[-0.772,-2.116],[-1.41,-1.243],[-1.914,0],[-1.411,1.209],[-0.772,2.116],[0,2.62],[0.773,2.116],[1.41,1.209]],"v":[[0,13.955],[4.937,12.141],[8.262,7.104],[9.421,-0.001],[8.262,-7.104],[4.937,-12.09],[0,-13.955],[-4.987,-12.09],[-8.262,-7.104],[-9.42,-0.001],[-8.262,7.104],[-4.987,12.141]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[2.721,0],[2.116,1.578],[1.142,2.721],[0,3.359],[-1.109,2.72],[-2.082,1.579],[-2.754,0],[-2.082,-1.612],[-1.142,-2.754],[0,-3.358],[1.141,-2.754],[2.083,-1.612]],"o":[[-2.72,0],[-2.082,-1.612],[-1.109,-2.754],[0,-3.358],[1.142,-2.754],[2.082,-1.612],[2.721,0],[2.083,1.579],[1.141,2.72],[0,3.359],[-1.142,2.721],[-2.082,1.578]],"v":[[0,18.036],[-7.254,15.668],[-12.09,9.169],[-13.753,-0.001],[-12.09,-9.118],[-7.254,-15.618],[0,-18.036],[7.204,-15.618],[12.041,-9.118],[13.753,-0.001],[12.041,9.169],[7.204,15.668]],"c":true},"ix":2},"nm":"Path 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"mm","mm":1,"nm":"Merge Paths 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[111.033,55.77],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 5","np":4,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[2.116,0],[1.511,0.605],[1.242,1.276],[0.538,1.948],[0,0],[-1.277,-1.074],[-1.746,0],[-1.108,0.538],[-0.639,0.974],[0,1.209],[0.671,0.974],[1.142,0.537],[1.343,0],[0,0],[0,0],[0,0],[-1.242,1.041],[0,1.747],[1.209,0.974],[1.78,0],[1.008,-0.906],[0.437,-1.31],[0,0],[-1.713,1.444],[-2.72,0],[-1.612,-0.806],[-0.907,-1.444],[0,-1.78],[0.906,-1.242],[1.344,-0.705],[0,0],[-1.108,-1.478],[0,-1.982],[1.041,-1.612],[1.781,-0.907]],"o":[[-1.444,0],[-1.512,-0.604],[-1.209,-1.31],[0,0],[0.538,1.948],[1.309,1.075],[1.276,0],[1.108,-0.571],[0.671,-1.008],[0,-1.175],[-0.639,-0.974],[-1.108,-0.571],[0,0],[0,0],[0,0],[1.847,0],[1.243,-1.075],[0,-1.612],[-1.209,-0.974],[-1.746,0],[-0.974,0.907],[0,0],[0.604,-1.814],[1.746,-1.478],[2.015,0],[1.612,0.806],[0.941,1.444],[0,1.78],[-0.907,1.243],[0,0],[1.713,0.705],[1.108,1.444],[0,2.015],[-1.008,1.613],[-1.746,0.907]],"v":[[-0.176,18.035],[-4.609,17.128],[-8.74,14.307],[-11.36,9.42],[-7.481,7.808],[-4.76,12.342],[-0.176,13.954],[3.401,13.148],[6.021,10.831],[7.028,7.506],[6.021,4.282],[3.35,2.015],[-0.327,1.158],[-3.299,1.158],[-3.299,-2.821],[-0.629,-2.821],[4.005,-4.383],[5.869,-8.615],[4.056,-12.494],[-0.428,-13.955],[-4.559,-12.595],[-6.675,-9.27],[-10.604,-10.932],[-7.128,-15.819],[-0.428,-18.035],[5.013,-16.826],[8.791,-13.451],[10.202,-8.615],[8.842,-4.081],[5.466,-1.159],[5.466,-0.957],[9.698,2.317],[11.36,7.456],[9.799,12.896],[5.617,16.675]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[81.226,55.77],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 6","np":2,"cix":2,"bm":0,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.873,0],[0.638,0.605],[0,0.907],[-0.605,0.605],[-0.907,0],[-0.605,-0.638],[0,-0.873],[0.638,-0.638]],"o":[[-0.907,0],[-0.605,-0.638],[0,-0.873],[0.638,-0.638],[0.873,0],[0.638,0.605],[0,0.907],[-0.605,0.605]],"v":[[0.025,12.796],[-2.292,11.889],[-3.199,9.572],[-2.292,7.355],[0.025,6.398],[2.242,7.355],[3.199,9.572],[2.242,11.889]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0.873,0],[0.638,0.605],[0,0.907],[-0.605,0.605],[-0.907,0],[-0.605,-0.638],[0,-0.873],[0.638,-0.638]],"o":[[-0.907,0],[-0.605,-0.638],[0,-0.873],[0.638,-0.638],[0.873,0],[0.638,0.605],[0,0.907],[-0.605,0.605]],"v":[[0.025,-6.398],[-2.292,-7.305],[-3.199,-9.622],[-2.292,-11.839],[0.025,-12.796],[2.242,-11.839],[3.199,-9.622],[2.242,-7.305]],"c":true},"ix":2},"nm":"Path 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"mm","mm":1,"nm":"Merge Paths 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[61.915,60.505],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 7","np":4,"cix":2,"bm":0,"ix":3,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-1.343,0],[-1.142,0.638],[-0.672,1.108],[0,1.343],[0.671,1.108],[1.175,0.638],[1.343,0],[1.142,-0.672],[0.672,-1.142],[0,-1.377],[-0.672,-1.142],[-1.108,-0.672]],"o":[[1.343,0],[1.175,-0.672],[0.671,-1.142],[0,-1.377],[-0.672,-1.142],[-1.142,-0.672],[-1.343,0],[-1.108,0.638],[-0.672,1.108],[0,1.343],[0.672,1.108],[1.142,0.638]],"v":[[-0.051,0.806],[3.678,-0.151],[6.449,-2.821],[7.456,-6.549],[6.449,-10.277],[3.678,-12.947],[-0.051,-13.955],[-3.779,-12.947],[-6.449,-10.277],[-7.457,-6.549],[-6.449,-2.821],[-3.779,-0.151]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[1.814,0],[1.679,0.974],[1.074,1.679],[0,2.082],[-1.075,1.746],[-1.78,1.075],[-2.082,0],[-1.78,-1.108],[-0.974,-1.78],[0,-1.948],[0.772,-1.713],[1.41,-2.083],[0,0]],"o":[[0,0],[0,0],[-1.176,0.806],[-1.746,0],[-1.68,-0.974],[-1.041,-1.713],[0,-2.015],[1.075,-1.78],[1.814,-1.075],[2.317,0],[1.814,1.108],[1.008,1.746],[0,1.847],[-0.739,1.679],[0,0],[0,0]],"v":[[-5.089,15.667],[3.628,3.526],[3.527,3.426],[-0.958,4.635],[-6.096,3.174],[-10.227,-0.806],[-11.788,-6.499],[-10.176,-12.141],[-5.895,-16.423],[-0.051,-18.035],[6.096,-16.373],[10.277,-12.04],[11.788,-6.499],[10.63,-1.159],[7.406,4.484],[-1.663,18.035]],"c":true},"ix":2},"nm":"Path 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"mm","mm":1,"nm":"Merge Paths 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[42.007,55.77],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 8","np":4,"cix":2,"bm":0,"ix":4,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":720,"st":0,"ct":1,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":".cream","cl":"cream","parent":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"s":true,"x":{"a":0,"k":168.552,"ix":3},"y":{"a":0,"k":54.681,"ix":4}},"a":{"a":0,"k":[0,0,0],"ix":1,"l":2},"s":{"a":1,"k":[{"i":{"x":[0,0,0],"y":[1,1,1]},"o":{"x":[0.05,0.05,0.05],"y":[0,0,0]},"t":556,"s":[20,20,100]},{"t":586,"s":[50,50,100]}],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[6.428,-491.836],[14.758,-490.711],[22.933,-488.794],[30.879,-486.091],[38.523,-482.63],[45.798,-478.436],[52.619,-473.52],[58.782,-467.809],[64.461,-461.621],[69.338,-454.782],[73.871,-447.708],[78.192,-440.497],[82.517,-433.286],[86.839,-426.075],[91.16,-418.864],[95.482,-411.653],[99.804,-404.442],[104.126,-397.231],[108.483,-390.044],[113.214,-383.095],[118.623,-376.662],[124.659,-370.811],[131.256,-365.6],[138.343,-361.084],[145.852,-357.302],[153.702,-354.292],[161.813,-352.086],[170.105,-350.705],[178.493,-350.164],[186.896,-350.481],[195.21,-351.684],[203.407,-353.545],[211.562,-355.588],[219.718,-357.63],[227.872,-359.673],[236.027,-361.716],[244.181,-363.761],[252.338,-365.803],[260.492,-367.846],[268.646,-369.889],[276.914,-371.411],[285.269,-372.203],[293.657,-372.215],[302.017,-371.414],[310.252,-369.719],[318.231,-367.08],[325.908,-363.685],[333.216,-359.562],[340.096,-354.753],[346.486,-349.301],[352.314,-343.241],[357.412,-336.56],[361.837,-329.422],[365.549,-321.897],[368.509,-314.043],[370.689,-305.936],[372.039,-297.638],[372.361,-289.24],[372.004,-280.849],[370.621,-272.565],[368.824,-264.356],[366.781,-256.2],[364.736,-248.045],[362.693,-239.891],[360.651,-231.737],[358.608,-223.58],[356.565,-215.426],[354.522,-207.272],[352.518,-199.108],[350.948,-190.852],[350.222,-182.478],[350.352,-174.071],[351.328,-165.723],[353.146,-157.514],[355.778,-149.53],[359.199,-141.853],[363.374,-134.555],[368.261,-127.715],[373.81,-121.4],[379.976,-115.683],[386.704,-110.652],[393.816,-106.172],[401.027,-101.85],[408.238,-97.528],[415.449,-93.207],[422.657,-88.885],[429.868,-84.563],[437.079,-80.241],[444.29,-75.919],[451.501,-71.597],[458.424,-66.826],[464.892,-61.481],[470.836,-55.558],[476.182,-49.083],[480.806,-42.061],[484.584,-34.554],[487.613,-26.727],[489.868,-18.643],[491.334,-10.378],[492.001,-2.006],[491.837,6.399],[490.717,14.73],[488.802,22.906],[486.104,30.852],[482.645,38.498],[478.456,45.775],[473.541,52.596],[467.831,58.762],[461.649,64.443],[454.811,69.326],[447.737,73.86],[440.526,78.18],[433.315,82.501],[426.105,86.823],[418.894,91.145],[411.68,95.465],[404.469,99.786],[397.258,104.108],[390.069,108.463],[383.12,113.192],[376.687,118.601],[370.833,124.635],[365.62,131.228],[361.1,138.316],[357.315,145.823],[354.303,153.672],[352.094,161.784],[350.711,170.075],[350.167,178.464],[350.487,186.866],[351.683,195.181],[353.544,203.378],[355.589,211.532],[357.631,219.686],[359.674,227.843],[361.717,235.997],[363.762,244.151],[365.805,252.306],[367.847,260.462],[369.892,268.617],[371.413,276.884],[372.209,285.237],[372.224,293.628],[371.424,301.988],[369.729,310.223],[367.095,318.202],[363.7,325.879],[359.582,333.191],[354.775,340.071],[349.328,346.464],[343.269,352.292],[336.587,357.392],[329.452,361.82],[321.927,365.534],[314.075,368.499],[305.968,370.683],[297.67,372.031],[289.272,372.357],[280.883,372.005],[272.597,370.622],[264.388,368.83],[256.234,366.785],[248.077,364.742],[239.923,362.699],[231.769,360.657],[223.615,358.614],[215.458,356.571],[207.304,354.526],[199.14,352.521],[190.884,350.949],[182.51,350.221],[174.105,350.344],[165.754,351.32],[157.546,353.134],[149.562,355.763],[141.88,359.181],[134.582,363.354],[127.74,368.236],[121.423,373.785],[115.708,379.949],[110.672,386.673],[106.19,393.784],[101.868,400.995],[97.546,408.206],[93.224,415.417],[88.902,422.628],[84.581,429.839],[80.259,437.05],[75.937,444.261],[71.615,451.472],[66.846,458.394],[61.503,464.868],[55.583,470.811],[49.11,476.162],[42.088,480.786],[34.586,484.569],[26.758,487.6],[18.675,489.86],[10.412,491.328],[2.04,492],[-6.367,491.834],[-14.696,490.718],[-22.874,488.808],[-30.82,486.115],[-38.469,482.661],[-45.748,478.474],[-52.569,473.559],[-58.737,467.851],[-64.421,461.671],[-69.305,454.836],[-73.842,447.762],[-78.164,440.551],[-82.484,433.34],[-86.805,426.13],[-91.127,418.918],[-95.449,411.708],[-99.769,404.497],[-104.09,397.283],[-108.445,390.094],[-113.171,383.143],[-118.576,376.707],[-124.607,370.851],[-131.201,365.636],[-138.287,361.113],[-145.793,357.325],[-153.64,354.309],[-161.749,352.098],[-170.041,350.71],[-178.432,350.169],[-186.832,350.483],[-195.149,351.675],[-203.346,353.533],[-211.5,355.578],[-219.654,357.621],[-227.809,359.664],[-235.965,361.706],[-244.12,363.751],[-252.274,365.794],[-260.428,367.837],[-268.585,369.882],[-276.85,371.404],[-285.205,372.204],[-293.594,372.225],[-301.956,371.43],[-310.191,369.735],[-318.17,367.104],[-325.849,363.716],[-333.162,359.6],[-340.046,354.796],[-346.442,349.351],[-352.269,343.291],[-357.371,336.612],[-361.804,329.482],[-365.521,321.956],[-368.488,314.107],[-370.677,306],[-372.025,297.702],[-372.356,289.304],[-372.006,280.915],[-370.628,272.629],[-368.836,264.42],[-366.793,256.264],[-364.75,248.109],[-362.708,239.955],[-360.662,231.801],[-358.62,223.646],[-356.577,215.49],[-354.532,207.336],[-352.527,199.172],[-350.95,190.916],[-350.22,182.542],[-350.34,174.137],[-351.312,165.786],[-353.123,157.578],[-355.749,149.591],[-359.166,141.91],[-363.334,134.609],[-368.216,127.765],[-373.763,121.447],[-379.924,115.728],[-386.645,110.688],[-393.755,106.205],[-400.968,101.886],[-408.179,97.564],[-415.39,93.242],[-422.601,88.923],[-429.814,84.601],[-437.025,80.281],[-444.236,75.96],[-451.449,71.64],[-458.372,66.871],[-464.845,61.533],[-470.793,55.615],[-476.148,49.144],[-480.771,42.123],[-484.556,34.621],[-487.591,26.795],[-489.854,18.714],[-491.327,10.451],[-492.001,2.077],[-491.837,-6.328],[-490.724,-14.659],[-488.818,-22.835],[-486.128,-30.786],[-482.678,-38.434],[-478.496,-45.716],[-473.581,-52.537],[-467.878,-58.71],[-461.701,-64.396],[-454.868,-69.283],[-447.796,-73.822],[-440.586,-78.144],[-433.375,-82.463],[-426.161,-86.785],[-418.95,-91.107],[-411.739,-95.429],[-404.529,-99.751],[-397.318,-104.073],[-390.126,-108.425],[-383.172,-113.146],[-376.732,-118.549],[-370.874,-124.578],[-365.656,-131.167],[-361.128,-138.252],[-357.338,-145.757],[-354.319,-153.601],[-352.104,-161.71],[-350.714,-170.002],[-350.17,-178.393],[-350.482,-186.793],[-351.666,-195.11],[-353.525,-203.307],[-355.567,-211.461],[-357.61,-219.618],[-359.655,-227.772],[-361.698,-235.926],[-363.741,-244.081],[-365.783,-252.237],[-367.826,-260.391],[-369.871,-268.546],[-371.396,-276.813],[-372.202,-285.166],[-372.226,-293.555],[-371.436,-301.917],[-369.741,-310.152],[-367.117,-318.133],[-363.731,-325.815],[-359.617,-333.13],[-354.818,-340.017],[-349.378,-346.414],[-343.318,-352.242],[-336.642,-357.349],[-329.511,-361.784],[-321.991,-365.505],[-314.141,-368.475],[-306.037,-370.669],[-297.738,-372.017],[-289.34,-372.35],[-280.952,-372.005],[-272.665,-370.629],[-264.454,-368.839],[-256.3,-366.796],[-248.146,-364.754],[-239.989,-362.709],[-231.835,-360.666],[-223.681,-358.623],[-215.526,-356.581],[-207.372,-354.535],[-199.208,-352.528],[-190.953,-350.951],[-182.578,-350.216],[-174.174,-350.334],[-165.823,-351.306],[-157.612,-353.115],[-149.626,-355.736],[-141.942,-359.148],[-134.639,-363.314],[-127.794,-368.194],[-121.477,-373.74],[-115.753,-379.899],[-110.708,-386.616],[-106.225,-393.725],[-101.903,-400.936],[-97.582,-408.147],[-93.26,-415.36],[-88.94,-422.571],[-84.618,-429.782],[-80.297,-436.993],[-75.975,-444.204],[-71.584,-451.531],[-66.813,-458.453],[-61.463,-464.917],[-55.538,-470.858],[-49.058,-476.202],[-42.039,-480.826],[-34.53,-484.599],[-26.699,-487.623],[-18.616,-489.876],[-10.351,-491.337],[-1.977,-491.999]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[8.9,8.9],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Material shape","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":556,"op":720,"st":0,"ct":1,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":".cream","cl":"cream","parent":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"s":true,"x":{"a":1,"k":[{"i":{"x":[0],"y":[1]},"o":{"x":[0.05],"y":[0]},"t":550,"s":[168.552]},{"t":580,"s":[226.447]}],"ix":3},"y":{"a":0,"k":54.681,"ix":4}},"a":{"a":0,"k":[0,0,0],"ix":1,"l":2},"s":{"a":1,"k":[{"i":{"x":[0,0,0],"y":[1,1,1]},"o":{"x":[0.05,0.05,0.05],"y":[0,0,0]},"t":466,"s":[20,20,100]},{"t":496,"s":[50,50,100]}],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[1.906,-488.758],[9.421,-487.243],[16.936,-485.728],[24.451,-484.213],[31.966,-482.698],[39.333,-480.59],[46.677,-478.385],[54.02,-476.18],[61.363,-473.975],[68.706,-471.77],[75.88,-469.081],[82.983,-466.201],[90.087,-463.319],[97.193,-460.436],[104.297,-457.556],[111.241,-454.323],[118.039,-450.782],[124.84,-447.241],[131.641,-443.702],[138.442,-440.161],[145.129,-436.429],[151.56,-432.254],[157.991,-428.079],[164.422,-423.907],[170.853,-419.732],[177.281,-415.554],[183.356,-410.878],[189.431,-406.2],[195.508,-401.524],[201.409,-396.642],[207.087,-391.489],[212.765,-386.336],[218.443,-381.184],[224.118,-376.031],[229.796,-370.878],[235.22,-365.461],[240.642,-360.04],[246.063,-354.618],[251.485,-349.197],[256.906,-343.775],[262.328,-338.354],[267.749,-332.932],[273.171,-327.513],[278.592,-322.092],[284.011,-316.671],[289.433,-311.249],[294.854,-305.828],[300.276,-300.406],[305.697,-294.985],[311.118,-289.563],[316.54,-284.142],[321.961,-278.72],[327.383,-273.299],[332.804,-267.88],[338.226,-262.458],[343.645,-257.037],[349.066,-251.615],[354.488,-246.194],[359.909,-240.772],[365.331,-235.351],[370.752,-229.929],[375.907,-224.256],[381.06,-218.578],[386.213,-212.9],[391.366,-207.222],[396.516,-201.547],[401.359,-195.612],[405.938,-189.462],[410.515,-183.315],[415.094,-177.165],[419.674,-171.015],[424.132,-164.785],[428.099,-158.223],[432.066,-151.662],[436.03,-145.1],[439.997,-138.539],[443.964,-131.978],[447.335,-125.097],[450.658,-118.187],[453.981,-111.277],[457.304,-104.369],[460.628,-97.459],[463.476,-90.348],[466.136,-83.158],[468.794,-75.967],[471.451,-68.776],[474.109,-61.583],[476.396,-54.274],[478.371,-46.868],[480.348,-39.459],[482.323,-32.051],[484.301,-24.645],[485.992,-17.176],[487.277,-9.617],[488.56,-2.058],[489.845,5.5],[491.128,13.059],[492.207,20.644],[492.793,28.287],[493.377,35.933],[493.962,43.576],[494.546,51.222],[495.001,58.87],[494.882,66.535],[494.766,74.203],[494.65,81.868],[494.531,89.533],[494.354,97.196],[493.536,104.819],[492.718,112.441],[491.9,120.065],[491.082,127.689],[490.264,135.31],[488.766,142.828],[487.248,150.345],[485.733,157.86],[484.218,165.375],[482.703,172.89],[480.597,180.258],[478.392,187.601],[476.188,194.944],[473.983,202.287],[471.778,209.63],[469.094,216.804],[466.211,223.908],[463.331,231.014],[460.448,238.117],[457.566,245.223],[454.337,252.167],[450.796,258.966],[447.255,265.767],[443.714,272.568],[440.173,279.369],[436.444,286.059],[432.269,292.489],[428.096,298.92],[423.921,305.351],[419.749,311.781],[415.571,318.21],[410.895,324.285],[406.219,330.362],[401.541,336.437],[396.661,342.34],[391.509,348.018],[386.356,353.696],[381.203,359.372],[376.05,365.05],[370.815,370.817],[365.139,375.97],[359.461,381.123],[353.783,386.276],[348.105,391.429],[342.43,396.579],[336.49,401.415],[330.34,405.994],[324.19,410.573],[318.04,415.15],[311.893,419.729],[305.658,424.182],[299.097,428.147],[292.535,432.114],[285.974,436.078],[279.412,440.045],[272.851,444.012],[265.965,447.376],[259.055,450.699],[252.145,454.022],[245.238,457.345],[238.328,460.668],[231.215,463.51],[224.024,466.167],[216.831,468.827],[209.64,471.485],[202.449,474.142],[195.138,476.42],[187.729,478.397],[180.323,480.372],[172.915,482.349],[165.506,484.324],[158.035,486.011],[150.476,487.294],[142.917,488.577],[135.359,489.862],[127.8,491.145],[120.217,492.217],[112.572,492.8],[104.928,493.386],[97.283,493.972],[89.639,494.555],[81.989,495],[74.324,494.884],[66.659,494.766],[58.991,494.649],[51.326,494.533],[43.663,494.347],[36.042,493.529],[28.418,492.711],[20.796,491.893],[13.173,491.075],[5.549,490.257],[-1.966,488.749],[-9.484,487.234],[-16.999,485.718],[-24.514,484.203],[-32.029,482.686],[-39.396,480.575],[-46.737,478.371],[-54.08,476.166],[-61.423,473.961],[-68.767,471.754],[-75.938,469.062],[-83.042,466.18],[-90.148,463.299],[-97.251,460.417],[-104.357,457.534],[-111.296,454.296],[-118.097,450.757],[-124.898,447.216],[-131.697,443.676],[-138.498,440.135],[-145.183,436.398],[-151.613,432.223],[-158.044,428.05],[-164.477,423.875],[-170.908,419.702],[-177.332,415.518],[-183.406,410.842],[-189.484,406.166],[-195.559,401.49],[-201.457,396.601],[-207.135,391.45],[-212.813,386.298],[-218.489,381.145],[-224.167,375.992],[-229.845,370.839],[-235.266,365.42],[-240.688,359.999],[-246.109,354.577],[-251.531,349.156],[-256.952,343.734],[-262.374,338.313],[-267.795,332.894],[-273.216,327.472],[-278.638,322.051],[-284.057,316.629],[-289.478,311.208],[-294.9,305.786],[-300.321,300.365],[-305.743,294.943],[-311.164,289.522],[-316.586,284.101],[-322.007,278.679],[-327.429,273.26],[-332.85,267.839],[-338.272,262.417],[-343.691,256.996],[-349.112,251.574],[-354.534,246.153],[-359.955,240.731],[-365.377,235.31],[-370.798,229.888],[-375.951,224.213],[-381.104,218.535],[-386.257,212.857],[-391.409,207.181],[-396.56,201.503],[-401.398,195.566],[-405.977,189.416],[-410.554,183.266],[-415.133,177.116],[-419.712,170.969],[-424.166,164.734],[-428.132,158.175],[-432.099,151.613],[-436.064,145.052],[-440.031,138.49],[-443.998,131.929],[-447.364,125.043],[-450.687,118.134],[-454.01,111.226],[-457.333,104.316],[-460.656,97.406],[-463.5,90.295],[-466.158,83.102],[-468.818,75.911],[-471.475,68.721],[-474.133,61.53],[-476.413,54.218],[-478.39,46.81],[-480.365,39.404],[-482.342,31.995],[-484.317,24.587],[-486.007,17.118],[-487.289,9.559],[-488.572,2],[-489.857,-5.558],[-491.14,-13.117],[-492.215,-20.702],[-492.798,-28.348],[-493.384,-35.991],[-493.969,-43.637],[-494.553,-51.28],[-495,-58.928],[-494.884,-66.596],[-494.768,-74.261],[-494.65,-81.926],[-494.533,-89.593],[-494.352,-97.254],[-493.534,-104.877],[-492.716,-112.499],[-491.895,-120.123],[-491.077,-127.747],[-490.259,-135.368],[-488.756,-142.886],[-487.239,-150.401],[-485.723,-157.918],[-484.208,-165.433],[-482.693,-172.948],[-480.583,-180.316],[-478.378,-187.659],[-476.173,-195],[-473.968,-202.343],[-471.763,-209.686],[-469.072,-216.86],[-466.192,-223.963],[-463.309,-231.067],[-460.426,-238.173],[-457.546,-245.277],[-454.31,-252.218],[-450.77,-259.019],[-447.229,-265.82],[-443.688,-272.619],[-440.149,-279.42],[-436.412,-286.107],[-432.24,-292.538],[-428.065,-298.968],[-423.892,-305.399],[-419.717,-311.83],[-415.537,-318.256],[-410.859,-324.331],[-406.183,-330.408],[-401.507,-336.483],[-396.62,-342.384],[-391.47,-348.062],[-386.317,-353.737],[-381.164,-359.415],[-376.011,-365.093],[-370.859,-370.771],[-365.185,-375.927],[-359.51,-381.079],[-353.832,-386.232],[-348.154,-391.385],[-342.476,-396.535],[-336.541,-401.376],[-330.394,-405.955],[-324.244,-410.532],[-318.094,-415.111],[-311.944,-419.69],[-305.714,-424.146],[-299.152,-428.113],[-292.591,-432.08],[-286.03,-436.044],[-279.468,-440.011],[-272.907,-443.978],[-266.023,-447.347],[-259.113,-450.67],[-252.203,-453.993],[-245.296,-457.316],[-238.386,-460.639],[-231.275,-463.486],[-224.084,-466.146],[-216.891,-468.803],[-209.701,-471.461],[-202.51,-474.118],[-195.198,-476.403],[-187.792,-478.378],[-180.384,-480.355],[-172.975,-482.33],[-165.569,-484.308],[-158.097,-485.997],[-150.539,-487.282],[-142.98,-488.565],[-135.422,-489.85],[-127.863,-491.133],[-120.28,-492.21],[-112.635,-492.793],[-104.991,-493.379],[-97.346,-493.965],[-89.702,-494.548],[-82.054,-495.001],[-74.387,-494.882],[-66.721,-494.766],[-59.056,-494.647],[-51.389,-494.531],[-43.729,-494.352],[-36.105,-493.534],[-28.481,-492.716],[-20.859,-491.898],[-13.235,-491.079],[-5.614,-490.262]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[8.9,8.9],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Material shape","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":466,"op":720,"st":0,"ct":1,"bm":0},{"ddd":0,"ind":4,"ty":4,"nm":".cream","cl":"cream","parent":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":90,"ix":10},"p":{"s":true,"x":{"a":1,"k":[{"i":{"x":[0],"y":[1]},"o":{"x":[0.05],"y":[0]},"t":460,"s":[168.552]},{"i":{"x":[0],"y":[1]},"o":{"x":[0.167],"y":[0]},"t":490,"s":[228.36]},{"i":{"x":[0],"y":[1]},"o":{"x":[0.05],"y":[0]},"t":548,"s":[228.36]},{"t":578,"s":[286.255]}],"ix":3},"y":{"a":0,"k":56.117,"ix":4}},"a":{"a":0,"k":[0,0,0],"ix":1,"l":2},"s":{"a":1,"k":[{"i":{"x":[0,0,0],"y":[1,1,1]},"o":{"x":[0.05,0.05,0.05],"y":[0,0,0]},"t":376,"s":[20,20,100]},{"t":406,"s":[50,50,100]}],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-0.166,-494.001],[7.12,-493.774],[14.408,-493.545],[21.649,-492.74],[28.884,-491.832],[36.083,-490.728],[43.201,-489.145],[50.316,-487.56],[57.326,-485.578],[64.297,-483.437],[71.118,-480.865],[77.874,-478.138],[84.452,-474.996],[90.937,-471.679],[97.177,-467.909],[103.351,-464.041],[109.218,-459.713],[115.084,-455.382],[120.918,-451.015],[126.346,-446.147],[131.773,-441.278],[137.2,-436.408],[142.626,-431.541],[148.053,-426.671],[153.481,-421.804],[158.906,-416.935],[164.135,-411.855],[169.32,-406.728],[174.504,-401.604],[179.687,-396.478],[184.872,-391.352],[190.056,-386.225],[195.241,-381.101],[200.426,-375.975],[205.61,-370.849],[210.795,-365.722],[215.952,-360.568],[221.106,-355.413],[226.261,-350.259],[231.417,-345.102],[236.572,-339.948],[241.726,-334.793],[246.883,-329.637],[252.037,-324.482],[257.192,-319.328],[262.348,-314.171],[267.503,-309.017],[272.66,-303.86],[277.814,-298.706],[282.968,-293.551],[288.125,-288.395],[293.279,-283.24],[298.434,-278.086],[303.591,-272.929],[308.745,-267.775],[313.899,-262.62],[319.056,-257.464],[324.21,-252.309],[329.367,-247.155],[334.522,-241.998],[339.676,-236.844],[344.833,-231.687],[349.987,-226.533],[355.141,-221.378],[360.298,-216.222],[365.453,-211.067],[370.493,-205.798],[375.53,-200.53],[380.57,-195.261],[385.608,-189.99],[390.646,-184.721],[395.683,-179.452],[400.723,-174.181],[405.761,-168.912],[410.798,-163.644],[415.836,-158.372],[420.876,-153.104],[425.914,-147.835],[430.952,-142.564],[435.991,-137.295],[441.029,-132.026],[446.067,-126.755],[450.661,-121.106],[455.085,-115.312],[459.508,-109.516],[463.855,-103.668],[467.716,-97.482],[471.57,-91.295],[474.768,-84.743],[477.969,-78.192],[480.665,-71.43],[483.133,-64.569],[485.537,-57.689],[487.344,-50.625],[489.151,-43.564],[490.61,-36.427],[491.744,-29.226],[492.879,-22.024],[493.364,-14.752],[493.82,-7.476],[494.002,-0.195],[493.775,7.093],[493.546,14.379],[492.743,21.622],[491.835,28.854],[490.734,36.056],[489.151,43.171],[487.566,50.289],[485.586,57.299],[483.445,64.27],[480.873,71.091],[478.151,77.849],[475.007,84.427],[471.692,90.913],[467.924,97.152],[464.056,103.329],[459.728,109.196],[455.4,115.062],[451.034,120.898],[446.165,126.326],[441.295,131.751],[436.428,137.178],[431.558,142.606],[426.691,148.031],[421.822,153.458],[416.954,158.886],[411.875,164.115],[406.748,169.3],[401.624,174.482],[396.498,179.667],[391.371,184.852],[386.245,190.036],[381.119,195.221],[375.995,200.406],[370.868,205.591],[365.742,210.775],[360.587,215.932],[355.433,221.086],[350.279,226.241],[345.122,231.398],[339.968,236.552],[334.813,241.706],[329.657,246.863],[324.502,252.017],[319.348,257.172],[314.191,262.328],[309.037,267.483],[303.88,272.637],[298.726,277.794],[293.571,282.948],[288.414,288.105],[283.26,293.259],[278.106,298.414],[272.949,303.571],[267.795,308.725],[262.64,313.879],[257.483,319.036],[252.329,324.19],[247.172,329.345],[242.018,334.502],[236.864,339.656],[231.707,344.813],[226.553,349.967],[221.398,355.121],[216.241,360.278],[211.005,365.514],[205.734,370.554],[200.465,375.592],[195.197,380.63],[189.926,385.667],[184.657,390.707],[179.388,395.745],[174.117,400.783],[168.848,405.82],[163.577,410.86],[158.308,415.898],[153.04,420.936],[147.768,425.973],[142.5,431.013],[137.231,436.051],[131.96,441.089],[126.691,446.129],[121.035,450.713],[115.238,455.137],[109.444,459.561],[103.59,463.901],[97.406,467.759],[91.212,471.606],[84.662,474.805],[78.112,478.005],[71.344,480.692],[64.484,483.159],[57.602,485.559],[50.538,487.366],[43.476,489.173],[36.34,490.623],[29.138,491.759],[21.936,492.894],[14.662,493.37],[7.386,493.825],[0.105,494.001],[-7.183,493.772],[-14.469,493.545],[-21.71,492.733],[-28.944,491.825],[-36.144,490.716],[-43.259,489.133],[-50.377,487.548],[-57.387,485.562],[-64.355,483.421],[-71.176,480.846],[-77.93,478.115],[-84.508,474.973],[-90.991,471.648],[-97.231,467.881],[-103.403,464.006],[-109.269,459.678],[-115.136,455.35],[-120.967,450.977],[-126.392,446.108],[-131.82,441.24],[-137.247,436.373],[-142.675,431.504],[-148.1,426.636],[-153.527,421.767],[-158.955,416.899],[-164.179,411.817],[-169.364,406.691],[-174.549,401.565],[-179.733,396.441],[-184.918,391.314],[-190.103,386.188],[-195.288,381.062],[-200.472,375.937],[-205.657,370.811],[-210.842,365.685],[-215.996,360.53],[-221.153,355.376],[-226.307,350.219],[-231.462,345.065],[-236.619,339.908],[-241.773,334.754],[-246.927,329.599],[-252.084,324.443],[-257.238,319.288],[-262.393,314.132],[-267.547,308.977],[-272.704,303.823],[-277.858,298.666],[-283.013,293.512],[-288.169,288.355],[-293.324,283.201],[-298.478,278.044],[-303.635,272.889],[-308.789,267.735],[-313.944,262.578],[-319.098,257.424],[-324.255,252.267],[-329.409,247.113],[-334.564,241.956],[-339.72,236.802],[-344.875,231.647],[-350.029,226.491],[-355.186,221.336],[-360.34,216.18],[-365.495,211.025],[-370.535,205.756],[-375.572,200.488],[-380.61,195.216],[-385.65,189.948],[-390.688,184.679],[-395.725,179.408],[-400.765,174.139],[-405.803,168.87],[-410.84,163.599],[-415.88,158.331],[-420.918,153.062],[-425.956,147.793],[-430.993,142.522],[-436.033,137.253],[-441.071,131.984],[-446.109,126.713],[-450.698,121.059],[-455.122,115.265],[-459.546,109.469],[-463.888,103.616],[-467.747,97.433],[-471.596,91.242],[-474.794,84.689],[-477.992,78.139],[-480.684,71.371],[-483.151,64.513],[-485.551,57.631],[-487.358,50.567],[-489.167,43.505],[-490.619,36.369],[-491.754,29.167],[-492.888,21.966],[-493.369,14.692],[-493.824,7.415],[-494.002,0.134],[-493.773,-7.151],[-493.546,-14.44],[-492.739,-21.681],[-491.828,-28.915],[-490.722,-36.115],[-489.139,-43.23],[-487.554,-50.347],[-485.57,-57.358],[-483.431,-64.328],[-480.857,-71.147],[-478.128,-77.903],[-474.986,-84.484],[-471.666,-90.966],[-467.898,-97.206],[-464.028,-103.378],[-459.697,-109.245],[-455.369,-115.111],[-450.999,-120.945],[-446.13,-126.37],[-441.26,-131.798],[-436.393,-137.223],[-431.523,-142.65],[-426.654,-148.075],[-421.787,-153.503],[-416.917,-158.93],[-411.835,-164.157],[-406.711,-169.34],[-401.585,-174.524],[-396.458,-179.709],[-391.332,-184.894],[-386.205,-190.078],[-381.081,-195.263],[-375.955,-200.448],[-370.829,-205.63],[-365.702,-210.815],[-360.548,-215.972],[-355.393,-221.129],[-350.239,-226.283],[-345.082,-231.437],[-339.928,-236.594],[-334.774,-241.748],[-329.617,-246.905],[-324.462,-252.06],[-319.308,-257.214],[-314.154,-262.371],[-308.997,-267.525],[-303.843,-272.682],[-298.688,-277.836],[-293.532,-282.993],[-288.377,-288.147],[-283.223,-293.302],[-278.066,-298.458],[-272.912,-303.613],[-267.757,-308.769],[-262.603,-313.924],[-257.446,-319.081],[-252.292,-324.235],[-247.137,-329.389],[-241.981,-334.546],[-236.826,-339.7],[-231.672,-344.857],[-226.515,-350.011],[-221.361,-355.166],[-216.206,-360.323],[-211.052,-365.477],[-205.781,-370.517],[-200.512,-375.555],[-195.243,-380.592],[-189.972,-385.632],[-184.703,-390.67],[-179.435,-395.708],[-174.164,-400.745],[-168.895,-405.783],[-163.624,-410.823],[-158.355,-415.861],[-153.086,-420.898],[-147.815,-425.936],[-142.546,-430.976],[-137.275,-436.014],[-132.006,-441.051],[-126.738,-446.089],[-121.084,-450.681],[-115.29,-455.105],[-109.493,-459.528],[-103.643,-463.87],[-97.459,-467.731],[-91.269,-471.583],[-84.718,-474.781],[-78.168,-477.982],[-71.403,-480.676],[-64.542,-483.143],[-57.662,-485.545],[-50.598,-487.352],[-43.534,-489.159],[-36.4,-490.616],[-29.199,-491.75],[-21.997,-492.885],[-14.723,-493.368],[-7.447,-493.823]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[8.9,8.9],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Material shape","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":376,"op":720,"st":0,"ct":1,"bm":0},{"ddd":0,"ind":5,"ty":4,"nm":".cream","cl":"cream","parent":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[167,56,0],"ix":2,"l":2},"a":{"a":0,"k":[-83.117,-32.398,0],"ix":1,"l":2},"s":{"a":1,"k":[{"i":{"x":[0.18,0.18,0.667],"y":[1,1,1]},"o":{"x":[0.678,0.678,0.333],"y":[-0.009,-0.009,0]},"t":60,"s":[100,100,100]},{"i":{"x":[0.325,0.325,0.667],"y":[1,1,1]},"o":{"x":[0.678,0.678,0.333],"y":[0,0,0]},"t":70,"s":[105,105,100]},{"t":80,"s":[40,40,100]}],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[44,44],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"r":{"a":0,"k":22,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-83.117,-32.398],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":80,"st":0,"ct":1,"bm":0},{"ddd":0,"ind":6,"ty":4,"nm":".cream","cl":"cream","parent":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[167,56,0],"ix":2,"l":2},"a":{"a":0,"k":[-83.117,-32.398,0],"ix":1,"l":2},"s":{"a":1,"k":[{"i":{"x":[0.178,0.178,0.667],"y":[1,1,1]},"o":{"x":[0.562,0.562,0.333],"y":[0,0,0]},"t":82,"s":[40,40,100]},{"i":{"x":[0.351,0.351,0.667],"y":[1,1,1]},"o":{"x":[0.762,0.762,0.333],"y":[0,0,0]},"t":92,"s":[105,105,100]},{"t":102,"s":[100,100,100]}],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,-12.15],[12.15,0],[0,12.15],[-12.15,0]],"o":[[0,12.15],[-12.15,0],[0,-12.15],[12.15,0]],"v":[[22,0],[0,22],[-22,0],[0,-22]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-83.117,-32.398],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":82,"op":150,"st":-10,"ct":1,"bm":0},{"ddd":0,"ind":7,"ty":4,"nm":".cream","cl":"cream","parent":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0],"y":[1]},"o":{"x":[0.05],"y":[0]},"t":150,"s":[0]},{"t":180,"s":[90]}],"ix":10},"p":{"s":true,"x":{"a":1,"k":[{"i":{"x":[0],"y":[1]},"o":{"x":[0.05],"y":[0]},"t":270,"s":[167.116]},{"i":{"x":[0],"y":[1]},"o":{"x":[0.167],"y":[0]},"t":300,"s":[167.595]},{"i":{"x":[0],"y":[1]},"o":{"x":[0.05],"y":[0]},"t":370,"s":[167.595]},{"i":{"x":[0],"y":[1]},"o":{"x":[0.167],"y":[0]},"t":400,"s":[227.643]},{"i":{"x":[0],"y":[1]},"o":{"x":[0.05],"y":[0]},"t":458,"s":[227.643]},{"i":{"x":[0],"y":[1]},"o":{"x":[0.167],"y":[0]},"t":488,"s":[287.451]},{"i":{"x":[0],"y":[1]},"o":{"x":[0.05],"y":[0]},"t":546,"s":[287.451]},{"t":576,"s":[348.217]}],"ix":3},"y":{"a":0,"k":56.117,"ix":4}},"a":{"a":0,"k":[0,0,0],"ix":1,"l":2},"s":{"a":0,"k":[50,50,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0,"y":1},"o":{"x":0.05,"y":0},"t":150,"s":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[3.419,-496.632],[11.147,-496.256],[18.878,-495.883],[26.606,-495.507],[34.334,-495.132],[42.064,-494.758],[49.739,-493.839],[57.397,-492.716],[65.053,-491.594],[72.709,-490.474],[80.365,-489.352],[88.023,-488.232],[95.594,-486.684],[103.108,-484.832],[110.622,-482.977],[118.135,-481.125],[125.647,-479.273],[133.16,-477.422],[140.563,-475.196],[147.865,-472.639],[155.169,-470.079],[162.471,-467.521],[169.773,-464.961],[177.077,-462.401],[184.232,-459.48],[191.262,-456.243],[198.291,-453.009],[205.321,-449.772],[212.35,-446.538],[219.378,-443.302],[226.21,-439.684],[232.907,-435.807],[239.604,-431.932],[246.302,-428.055],[252.999,-424.178],[259.696,-420.303],[266.124,-416.009],[272.436,-411.53],[278.746,-407.053],[285.058,-402.573],[291.367,-398.097],[297.679,-393.617],[303.632,-388.683],[309.506,-383.645],[315.38,-378.607],[321.251,-373.569],[327.125,-368.531],[332.998,-363.493],[338.412,-357.966],[343.799,-352.41],[349.187,-346.857],[354.574,-341.301],[359.963,-335.747],[365.307,-330.155],[370.165,-324.13],[375.02,-318.107],[379.877,-312.082],[384.732,-306.056],[389.59,-300.033],[394.326,-293.921],[398.608,-287.474],[402.89,-281.03],[407.172,-274.585],[411.454,-268.138],[415.736,-261.694],[419.82,-255.129],[423.488,-248.316],[427.153,-241.501],[430.821,-234.688],[434.486,-227.873],[438.154,-221.057],[441.554,-214.117],[444.569,-206.989],[447.582,-199.863],[450.595,-192.734],[453.61,-185.608],[456.623,-178.48],[459.325,-171.238],[461.651,-163.859],[463.977,-156.478],[466.304,-149.099],[468.63,-141.718],[470.956,-134.339],[472.967,-126.876],[474.579,-119.307],[476.19,-111.738],[477.798,-104.169],[479.409,-96.6],[481.021,-89.033],[482.413,-81.425],[483.41,-73.753],[484.409,-66.078],[485.408,-58.405],[486.251,-50.718],[486.624,-42.99],[487,-35.26],[487.374,-27.532],[487.749,-19.801],[488.125,-12.073],[488.498,-4.345],[488.132,3.385],[487.759,11.113],[487.383,18.844],[487.01,26.572],[486.634,34.302],[486.258,42.03],[485.341,49.708],[484.221,57.363],[483.099,65.019],[481.979,72.675],[480.857,80.333],[479.735,87.989],[478.191,95.563],[476.339,103.074],[474.487,110.588],[472.633,118.102],[470.781,125.615],[468.929,133.129],[466.708,140.532],[464.148,147.834],[461.588,155.135],[459.031,162.44],[456.471,169.742],[453.913,177.046],[450.992,184.201],[447.758,191.23],[444.521,198.26],[441.287,205.29],[438.05,212.319],[434.816,219.349],[431.199,226.181],[427.324,232.878],[423.447,239.576],[419.57,246.273],[415.695,252.97],[411.817,259.667],[407.526,266.098],[403.049,272.407],[398.57,278.719],[394.093,285.029],[389.614,291.341],[385.137,297.65],[380.204,303.606],[375.167,309.479],[370.126,315.353],[365.088,321.227],[360.05,327.098],[355.012,332.972],[349.488,338.388],[343.934,343.775],[338.378,349.162],[332.825,354.55],[327.269,359.939],[321.679,365.286],[315.654,370.143],[309.631,374.998],[303.606,379.855],[297.58,384.71],[291.557,389.568],[285.445,394.307],[279.001,398.589],[272.556,402.871],[266.11,407.153],[259.665,411.435],[253.218,415.716],[246.656,419.803],[239.843,423.471],[233.028,427.136],[226.215,430.804],[219.399,434.469],[212.586,438.137],[205.646,441.54],[198.517,444.555],[191.392,447.568],[184.263,450.58],[177.137,453.596],[170.009,456.608],[162.77,459.313],[155.388,461.639],[148.01,463.965],[140.628,466.292],[133.25,468.62],[125.868,470.947],[118.405,472.958],[110.836,474.569],[103.269,476.18],[95.7,477.791],[88.131,479.402],[80.562,481.013],[72.957,482.405],[65.284,483.405],[57.609,484.402],[49.937,485.401],[42.25,486.246],[34.519,486.622],[26.791,486.995],[19.063,487.371],[11.333,487.744],[3.605,488.12],[-4.249,488.5],[-11.977,488.127],[-19.707,487.752],[-27.435,487.376],[-35.166,487.003],[-42.894,486.627],[-50.624,486.254],[-58.299,485.326],[-65.955,484.204],[-73.611,483.084],[-81.269,481.962],[-88.925,480.84],[-96.581,479.72],[-104.152,478.164],[-111.666,476.312],[-119.179,474.461],[-126.691,472.609],[-134.204,470.757],[-141.718,468.905],[-149.119,466.675],[-156.42,464.115],[-163.725,461.557],[-171.026,458.997],[-178.331,456.437],[-185.632,453.88],[-192.787,450.951],[-199.814,447.715],[-206.844,444.48],[-213.874,441.246],[-220.903,438.01],[-227.933,434.775],[-234.76,431.151],[-241.458,427.274],[-248.155,423.399],[-254.852,419.521],[-261.55,415.647],[-268.247,411.769],[-274.672,407.471],[-280.984,402.991],[-287.294,398.514],[-293.606,394.035],[-299.915,389.558],[-306.225,385.079],[-312.178,380.142],[-318.049,375.101],[-323.923,370.064],[-329.797,365.025],[-335.67,359.987],[-341.542,354.95],[-346.953,349.418],[-352.34,343.864],[-357.727,338.308],[-363.115,332.755],[-368.502,327.199],[-373.843,321.605],[-378.701,315.58],[-383.556,309.557],[-388.413,303.531],[-393.268,297.506],[-398.125,291.483],[-402.858,285.366],[-407.14,278.921],[-411.421,272.477],[-415.703,266.03],[-419.985,259.586],[-424.267,253.139],[-428.346,246.574],[-432.014,239.759],[-435.68,232.943],[-439.347,226.13],[-443.015,219.315],[-446.68,212.502],[-450.076,205.557],[-453.091,198.431],[-456.104,191.303],[-459.116,184.177],[-462.132,177.048],[-465.144,169.922],[-467.841,162.678],[-470.168,155.297],[-472.494,147.918],[-474.821,140.537],[-477.147,133.158],[-479.473,125.777],[-481.477,118.311],[-483.088,110.744],[-484.699,103.176],[-486.31,95.606],[-487.921,88.037],[-489.532,80.468],[-490.917,72.863],[-491.917,65.188],[-492.914,57.515],[-493.913,49.843],[-494.751,42.153],[-495.127,34.425],[-495.5,26.697],[-495.876,18.967],[-496.249,11.239],[-496.625,3.508],[-496.998,-4.22],[-496.627,-11.95],[-496.254,-19.678],[-495.878,-27.406],[-495.502,-35.137],[-495.129,-42.865],[-494.754,-50.595],[-493.831,-58.27],[-492.709,-65.926],[-491.589,-73.584],[-490.467,-81.24],[-489.345,-88.896],[-488.225,-96.552],[-486.674,-104.126],[-484.82,-111.637],[-482.968,-119.151],[-481.116,-126.664],[-479.264,-134.178],[-477.412,-141.692],[-475.184,-149.092],[-472.624,-156.394],[-470.067,-163.698],[-467.507,-171],[-464.949,-178.304],[-462.389,-185.606],[-459.463,-192.761],[-456.229,-199.79],[-452.992,-206.82],[-449.758,-213.847],[-446.524,-220.877],[-443.287,-227.906],[-439.665,-234.736],[-435.79,-241.434],[-431.913,-248.131],[-428.038,-254.828],[-424.161,-261.526],[-420.284,-268.223],[-415.987,-274.65],[-411.51,-280.96],[-407.031,-287.272],[-402.554,-293.582],[-398.075,-299.894],[-393.598,-306.203],[-388.661,-312.156],[-383.623,-318.03],[-378.585,-323.901],[-373.547,-329.775],[-368.507,-335.649],[-363.469,-341.522],[-357.942,-346.934],[-352.386,-352.321],[-346.832,-357.708],[-341.277,-363.095],[-335.723,-368.485],[-330.129,-373.826],[-324.103,-378.684],[-318.08,-383.539],[-312.055,-388.396],[-306.03,-393.251],[-300.007,-398.109],[-293.892,-402.843],[-287.448,-407.125],[-281.001,-411.407],[-274.556,-415.689],[-268.11,-419.971],[-261.665,-424.252],[-255.1,-428.334],[-248.285,-432.002],[-241.472,-435.667],[-234.657,-439.335],[-227.844,-443.003],[-221.029,-446.668],[-214.086,-450.066],[-206.96,-453.081],[-199.831,-456.094],[-192.705,-459.107],[-185.577,-462.122],[-178.451,-465.135],[-171.207,-467.834],[-163.828,-470.161],[-156.447,-472.487],[-149.068,-474.813],[-141.687,-477.14],[-134.308,-479.466],[-126.842,-481.472],[-119.273,-483.083],[-111.704,-484.694],[-104.138,-486.306],[-96.569,-487.917],[-88.999,-489.528],[-81.392,-490.917],[-73.719,-491.914],[-66.046,-492.914],[-58.371,-493.911],[-50.684,-494.751],[-42.956,-495.127],[-35.226,-495.5],[-27.498,-495.876],[-19.77,-496.251],[-12.039,-496.625],[-4.311,-497]],"c":true}]},{"t":180,"s":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-0.652,-437.366],[8.33,-437.659],[17.312,-437.953],[26.249,-438.778],[35.158,-439.948],[44.07,-441.114],[52.848,-442.998],[61.602,-445.033],[70.348,-447.09],[78.906,-449.835],[87.432,-452.668],[95.787,-455.975],[104.114,-459.352],[112.356,-462.932],[120.6,-466.51],[128.842,-470.088],[137.086,-473.668],[145.494,-476.842],[153.901,-480.013],[162.309,-483.184],[170.98,-485.538],[179.663,-487.853],[188.349,-490.149],[197.221,-491.579],[206.092,-493.009],[214.984,-494.276],[223.954,-494.806],[232.926,-495.333],[241.897,-495.501],[250.877,-495.127],[259.857,-494.753],[268.778,-493.782],[277.678,-492.525],[286.574,-491.265],[295.31,-489.158],[304.044,-487.043],[312.697,-484.654],[321.19,-481.719],[329.683,-478.781],[337.963,-475.306],[346.144,-471.59],[354.301,-467.824],[362.109,-463.379],[369.919,-458.93],[377.531,-454.173],[384.91,-449.042],[392.286,-443.909],[399.256,-438.244],[406.146,-432.478],[412.915,-426.575],[419.27,-420.22],[425.623,-413.867],[431.614,-407.178],[437.38,-400.286],[443.14,-393.391],[448.274,-386.013],[453.404,-378.636],[458.262,-371.087],[462.71,-363.279],[467.158,-355.469],[471.032,-347.367],[474.745,-339.186],[478.338,-330.954],[481.276,-322.461],[484.212,-313.968],[486.723,-305.35],[488.838,-296.616],[490.956,-287.883],[492.333,-279.009],[493.59,-270.109],[494.694,-261.198],[495.065,-252.221],[495.439,-243.241],[495.406,-234.267],[494.88,-225.295],[494.35,-216.325],[493.216,-207.421],[491.786,-198.549],[490.356,-189.678],[488.193,-180.962],[485.878,-172.278],[483.559,-163.597],[480.481,-155.159],[477.307,-146.752],[474.136,-138.342],[470.618,-130.075],[467.038,-121.833],[463.46,-113.589],[459.882,-105.347],[456.543,-97.007],[453.374,-88.597],[450.208,-80.187],[447.684,-71.571],[445.361,-62.891],[443.04,-54.21],[441.544,-45.348],[440.087,-36.481],[438.775,-27.597],[438.19,-18.63],[437.605,-9.663],[437.362,-0.691],[437.653,8.291],[437.947,17.273],[438.77,26.21],[439.939,35.121],[441.105,44.031],[442.987,52.812],[445.022,61.566],[447.074,70.312],[449.819,78.87],[452.649,87.395],[455.956,95.753],[459.333,104.08],[462.911,112.322],[466.488,120.566],[470.069,128.808],[473.646,137.052],[476.823,145.458],[479.994,153.865],[483.165,162.275],[485.521,170.943],[487.84,179.627],[490.138,188.313],[491.568,197.184],[492.998,206.056],[494.27,214.945],[494.799,223.917],[495.326,232.887],[495.497,241.861],[495.123,250.838],[494.752,259.818],[493.783,268.742],[492.524,277.641],[491.267,286.538],[489.162,295.274],[487.047,304.008],[484.661,312.664],[481.725,321.156],[478.787,329.649],[475.315,337.926],[471.599,346.11],[467.838,354.267],[463.39,362.077],[458.944,369.885],[454.19,377.502],[449.059,384.879],[443.925,392.255],[438.263,399.227],[432.497,406.117],[426.596,412.888],[420.241,419.241],[413.888,425.596],[407.202,431.588],[400.31,437.356],[393.415,443.119],[386.039,448.252],[378.663,453.383],[371.113,458.243],[363.305,462.691],[355.498,467.14],[347.396,471.016],[339.215,474.732],[330.985,478.327],[322.492,481.265],[314,484.2],[305.381,486.714],[296.648,488.832],[287.914,490.947],[279.04,492.327],[270.143,493.586],[261.231,494.693],[252.252,495.067],[243.275,495.44],[234.298,495.41],[225.328,494.883],[216.356,494.354],[207.452,493.225],[198.581,491.795],[189.709,490.365],[180.993,488.207],[172.309,485.889],[163.628,483.573],[155.188,480.495],[146.781,477.323],[138.373,474.152],[130.106,470.634],[121.862,467.057],[113.62,463.476],[105.376,459.899],[97.036,456.559],[88.626,453.39],[80.216,450.224],[71.603,447.695],[62.922,445.374],[54.241,443.054],[45.382,441.553],[36.515,440.095],[27.631,438.781],[18.664,438.196],[9.697,437.612],[0.723,437.363],[-8.259,437.654],[-17.239,437.948],[-26.178,438.768],[-35.088,439.935],[-43.999,441.104],[-52.781,442.981],[-61.534,445.016],[-70.283,447.065],[-78.839,449.81],[-87.367,452.638],[-95.721,455.945],[-104.048,459.319],[-112.293,462.897],[-120.535,466.477],[-128.779,470.055],[-137.021,473.633],[-145.429,476.811],[-153.836,479.983],[-162.243,483.154],[-170.912,485.515],[-179.595,487.831],[-188.281,490.134],[-197.153,491.564],[-206.025,492.994],[-214.914,494.269],[-223.883,494.798],[-232.855,495.325],[-241.827,495.501],[-250.807,495.127],[-259.786,494.753],[-268.711,493.789],[-277.607,492.53],[-286.507,491.273],[-295.243,489.173],[-303.976,487.056],[-312.632,484.674],[-321.125,481.737],[-329.618,478.801],[-337.897,475.331],[-346.079,471.615],[-354.241,467.854],[-362.048,463.409],[-369.856,458.96],[-377.473,454.211],[-384.85,449.078],[-392.229,443.947],[-399.201,438.287],[-406.093,432.518],[-412.865,426.62],[-419.22,420.265],[-425.572,413.912],[-431.566,407.228],[-437.334,400.336],[-443.1,393.444],[-448.231,386.068],[-453.364,378.689],[-458.226,371.145],[-462.675,363.334],[-467.123,355.526],[-471.002,347.428],[-474.718,339.246],[-478.316,331.017],[-481.254,322.524],[-484.192,314.031],[-486.708,305.415],[-488.823,296.682],[-490.941,287.948],[-492.323,279.074],[-493.582,270.177],[-494.694,261.265],[-495.068,252.286],[-495.439,243.309],[-495.417,234.332],[-494.887,225.362],[-494.36,216.39],[-493.234,207.486],[-491.804,198.614],[-490.374,189.743],[-488.218,181.024],[-485.9,172.343],[-483.584,163.66],[-480.511,155.22],[-477.34,146.812],[-474.168,138.405],[-470.651,130.138],[-467.07,121.896],[-463.49,113.652],[-459.91,105.41],[-456.568,97.072],[-453.402,88.66],[-450.235,80.25],[-447.704,71.637],[-445.383,62.956],[-443.062,54.275],[-441.562,45.416],[-440.104,36.549],[-438.785,27.665],[-438.2,18.698],[-437.618,9.731],[-437.365,0.759],[-437.658,-8.223],[-437.949,-17.205],[-438.767,-26.145],[-439.934,-35.054],[-441.103,-43.963],[-442.977,-52.747],[-445.012,-61.498],[-447.059,-70.249],[-449.804,-78.805],[-452.631,-87.333],[-455.936,-95.69],[-459.31,-104.017],[-462.891,-112.259],[-466.468,-120.503],[-470.046,-128.745],[-473.684,-137.12],[-476.855,-145.53],[-480.027,-153.938],[-483.198,-162.345],[-485.546,-171.019],[-487.865,-179.699],[-490.153,-188.388],[-491.583,-197.26],[-493.013,-206.131],[-494.277,-215.023],[-494.807,-223.993],[-495.334,-232.965],[-495.497,-241.936],[-495.123,-250.916],[-494.752,-259.896],[-493.776,-268.817],[-492.516,-277.717],[-491.259,-286.613],[-489.149,-295.349],[-487.032,-304.083],[-484.641,-312.734],[-481.703,-321.227],[-478.767,-329.722],[-475.287,-337.996],[-471.572,-346.181],[-467.803,-354.335],[-463.357,-362.143],[-458.909,-369.953],[-454.149,-377.565],[-449.019,-384.941],[-443.885,-392.318],[-438.218,-399.285],[-432.452,-406.177],[-426.546,-412.944],[-420.193,-419.296],[-413.838,-425.652],[-407.147,-431.638],[-400.257,-437.406],[-393.358,-443.164],[-385.981,-448.295],[-378.605,-453.428],[-371.053,-458.283],[-363.245,-462.731],[-355.435,-467.177],[-347.334,-471.048],[-339.149,-474.764],[-330.917,-478.354],[-322.425,-481.29],[-313.932,-484.228],[-305.314,-486.734],[-296.58,-488.852],[-287.846,-490.967],[-278.97,-492.342],[-270.073,-493.599],[-261.161,-494.7],[-252.182,-495.072],[-243.202,-495.445],[-234.228,-495.41],[-225.258,-494.883],[-216.286,-494.354],[-207.382,-493.217],[-198.51,-491.787],[-189.639,-490.357],[-180.925,-488.192],[-172.242,-485.874],[-163.558,-483.558],[-155.123,-480.475],[-146.716,-477.301],[-138.306,-474.129],[-130.041,-470.609],[-121.797,-467.029],[-113.555,-463.449],[-105.313,-459.871],[-96.971,-456.534],[-88.561,-453.368],[-80.151,-450.199],[-71.535,-447.678],[-62.854,-445.357],[-54.171,-443.036],[-45.312,-441.543],[-36.445,-440.086],[-27.561,-438.778],[-18.594,-438.194],[-9.624,-437.609]],"c":true}]}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[8.9,8.9],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Material shape","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":150,"op":720,"st":0,"ct":1,"bm":0},{"ddd":0,"ind":8,"ty":4,"nm":".cream","cl":"cream","parent":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[221,56,0],"ix":2,"l":2},"a":{"a":0,"k":[-83.117,-32.398,0],"ix":1,"l":2},"s":{"a":1,"k":[{"i":{"x":[0.18,0.18,0.667],"y":[1,1,1]},"o":{"x":[0.678,0.678,0.333],"y":[-0.009,-0.009,0]},"t":66,"s":[100,100,100]},{"i":{"x":[0.325,0.325,0.667],"y":[1,1,1]},"o":{"x":[0.678,0.678,0.333],"y":[0,0,0]},"t":76,"s":[105,105,100]},{"t":86,"s":[40,40,100]}],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[44,44],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"r":{"a":0,"k":22,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-83.117,-32.398],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":86,"st":0,"ct":1,"bm":0},{"ddd":0,"ind":9,"ty":4,"nm":".cream","cl":"cream","parent":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0],"y":[1]},"o":{"x":[0.05],"y":[0]},"t":156,"s":[0]},{"t":186,"s":[90]}],"ix":10},"p":{"s":true,"x":{"a":1,"k":[{"i":{"x":[0],"y":[1]},"o":{"x":[0.05],"y":[0]},"t":270,"s":[221]},{"i":{"x":[0],"y":[1]},"o":{"x":[0.167],"y":[0]},"t":300,"s":[225.785]},{"i":{"x":[0],"y":[1]},"o":{"x":[0.05],"y":[0]},"t":368,"s":[225.785]},{"i":{"x":[0],"y":[1]},"o":{"x":[0.167],"y":[0]},"t":398,"s":[288.943]},{"i":{"x":[0],"y":[1]},"o":{"x":[0.05],"y":[0]},"t":456,"s":[288.943]},{"t":486,"s":[349.708]}],"ix":3},"y":{"a":0,"k":56,"ix":4}},"a":{"a":0,"k":[-83.117,-32.398,0],"ix":1,"l":2},"s":{"a":1,"k":[{"i":{"x":[0.178,0.178,0.667],"y":[1,1,1]},"o":{"x":[0.562,0.562,0.333],"y":[0,0,0]},"t":88,"s":[40,40,100]},{"i":{"x":[0.351,0.351,0.667],"y":[1,1,1]},"o":{"x":[0.762,0.762,0.333],"y":[0,0,0]},"t":98,"s":[105,105,100]},{"i":{"x":[0.833,0.833,0.833],"y":[1,1,1]},"o":{"x":[0.167,0.167,0.167],"y":[0,0,0]},"t":108,"s":[100,100,100]},{"i":{"x":[0.8,0.8,0.8],"y":[0.15,0.15,1]},"o":{"x":[0.3,0.3,0.3],"y":[0,0,0]},"t":540,"s":[100,100,100]},{"t":552,"s":[20,20,100]}],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[44,44],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0],"y":[1]},"o":{"x":[0.05],"y":[0]},"t":156,"s":[22]},{"t":186,"s":[15]}],"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-83.117,-32.398],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":88,"op":552,"st":-10,"ct":1,"bm":0},{"ddd":0,"ind":10,"ty":4,"nm":".cream","cl":"cream","parent":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[275,56,0],"ix":2,"l":2},"a":{"a":0,"k":[-83.117,-32.398,0],"ix":1,"l":2},"s":{"a":1,"k":[{"i":{"x":[0.18,0.18,0.667],"y":[1,1,1]},"o":{"x":[0.678,0.678,0.333],"y":[-0.009,-0.009,0]},"t":72,"s":[100,100,100]},{"i":{"x":[0.325,0.325,0.667],"y":[1,1,1]},"o":{"x":[0.678,0.678,0.333],"y":[0,0,0]},"t":82,"s":[105,105,100]},{"t":92,"s":[40,40,100]}],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[44,44],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"r":{"a":0,"k":22,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-83.117,-32.398],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":92,"st":0,"ct":1,"bm":0},{"ddd":0,"ind":11,"ty":4,"nm":".cream","cl":"cream","parent":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[275,56,0],"ix":2,"l":2},"a":{"a":0,"k":[-83.117,-32.398,0],"ix":1,"l":2},"s":{"a":1,"k":[{"i":{"x":[0.178,0.178,0.667],"y":[1,1,1]},"o":{"x":[0.562,0.562,0.333],"y":[0,0,0]},"t":94,"s":[40,40,100]},{"i":{"x":[0.351,0.351,0.667],"y":[1,1,1]},"o":{"x":[0.762,0.762,0.333],"y":[0,0,0]},"t":104,"s":[105,105,100]},{"t":114,"s":[100,100,100]}],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[44,44],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"r":{"a":0,"k":22,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-83.117,-32.398],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":94,"op":162,"st":-10,"ct":1,"bm":0},{"ddd":0,"ind":12,"ty":4,"nm":".cream","cl":"cream","parent":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0],"y":[1]},"o":{"x":[0.05],"y":[0]},"t":162,"s":[0]},{"t":192,"s":[90]}],"ix":10},"p":{"s":true,"x":{"a":1,"k":[{"i":{"x":[0],"y":[1]},"o":{"x":[0.05],"y":[0]},"t":270,"s":[275.262]},{"i":{"x":[0],"y":[1]},"o":{"x":[0.167],"y":[0]},"t":300,"s":[286.267]},{"i":{"x":[0],"y":[1]},"o":{"x":[0.05],"y":[0]},"t":366,"s":[286.267]},{"t":396,"s":[349.664]}],"ix":3},"y":{"a":0,"k":56.117,"ix":4}},"a":{"a":0,"k":[0,0,0],"ix":1,"l":2},"s":{"a":1,"k":[{"i":{"x":[0.8,0.8,0.8],"y":[0.15,0.15,1]},"o":{"x":[0.3,0.3,0.3],"y":[0,0,0]},"t":450,"s":[50,50,100]},{"t":462,"s":[20,20,100]}],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0,"y":1},"o":{"x":0.05,"y":0},"t":162,"s":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[3.419,-496.632],[11.147,-496.256],[18.878,-495.883],[26.606,-495.507],[34.334,-495.132],[42.064,-494.758],[49.739,-493.839],[57.397,-492.716],[65.053,-491.594],[72.709,-490.474],[80.365,-489.352],[88.023,-488.232],[95.594,-486.684],[103.108,-484.832],[110.622,-482.977],[118.135,-481.125],[125.647,-479.273],[133.16,-477.422],[140.563,-475.196],[147.865,-472.639],[155.169,-470.079],[162.471,-467.521],[169.773,-464.961],[177.077,-462.401],[184.232,-459.48],[191.262,-456.243],[198.291,-453.009],[205.321,-449.772],[212.35,-446.538],[219.378,-443.302],[226.21,-439.684],[232.907,-435.807],[239.604,-431.932],[246.302,-428.055],[252.999,-424.178],[259.696,-420.303],[266.124,-416.009],[272.436,-411.53],[278.746,-407.053],[285.058,-402.573],[291.367,-398.097],[297.679,-393.617],[303.632,-388.683],[309.506,-383.645],[315.38,-378.607],[321.251,-373.569],[327.125,-368.531],[332.998,-363.493],[338.412,-357.966],[343.799,-352.41],[349.187,-346.857],[354.574,-341.301],[359.963,-335.747],[365.307,-330.155],[370.165,-324.13],[375.02,-318.107],[379.877,-312.082],[384.732,-306.056],[389.59,-300.033],[394.326,-293.921],[398.608,-287.474],[402.89,-281.03],[407.172,-274.585],[411.454,-268.138],[415.736,-261.694],[419.82,-255.129],[423.488,-248.316],[427.153,-241.501],[430.821,-234.688],[434.486,-227.873],[438.154,-221.057],[441.554,-214.117],[444.569,-206.989],[447.582,-199.863],[450.595,-192.734],[453.61,-185.608],[456.623,-178.48],[459.325,-171.238],[461.651,-163.859],[463.977,-156.478],[466.304,-149.099],[468.63,-141.718],[470.956,-134.339],[472.967,-126.876],[474.579,-119.307],[476.19,-111.738],[477.798,-104.169],[479.409,-96.6],[481.021,-89.033],[482.413,-81.425],[483.41,-73.753],[484.409,-66.078],[485.408,-58.405],[486.251,-50.718],[486.624,-42.99],[487,-35.26],[487.374,-27.532],[487.749,-19.801],[488.125,-12.073],[488.498,-4.345],[488.132,3.385],[487.759,11.113],[487.383,18.844],[487.01,26.572],[486.634,34.302],[486.258,42.03],[485.341,49.708],[484.221,57.363],[483.099,65.019],[481.979,72.675],[480.857,80.333],[479.735,87.989],[478.191,95.563],[476.339,103.074],[474.487,110.588],[472.633,118.102],[470.781,125.615],[468.929,133.129],[466.708,140.532],[464.148,147.834],[461.588,155.135],[459.031,162.44],[456.471,169.742],[453.913,177.046],[450.992,184.201],[447.758,191.23],[444.521,198.26],[441.287,205.29],[438.05,212.319],[434.816,219.349],[431.199,226.181],[427.324,232.878],[423.447,239.576],[419.57,246.273],[415.695,252.97],[411.817,259.667],[407.526,266.098],[403.049,272.407],[398.57,278.719],[394.093,285.029],[389.614,291.341],[385.137,297.65],[380.204,303.606],[375.167,309.479],[370.126,315.353],[365.088,321.227],[360.05,327.098],[355.012,332.972],[349.488,338.388],[343.934,343.775],[338.378,349.162],[332.825,354.55],[327.269,359.939],[321.679,365.286],[315.654,370.143],[309.631,374.998],[303.606,379.855],[297.58,384.71],[291.557,389.568],[285.445,394.307],[279.001,398.589],[272.556,402.871],[266.11,407.153],[259.665,411.435],[253.218,415.716],[246.656,419.803],[239.843,423.471],[233.028,427.136],[226.215,430.804],[219.399,434.469],[212.586,438.137],[205.646,441.54],[198.517,444.555],[191.392,447.568],[184.263,450.58],[177.137,453.596],[170.009,456.608],[162.77,459.313],[155.388,461.639],[148.01,463.965],[140.628,466.292],[133.25,468.62],[125.868,470.947],[118.405,472.958],[110.836,474.569],[103.269,476.18],[95.7,477.791],[88.131,479.402],[80.562,481.013],[72.957,482.405],[65.284,483.405],[57.609,484.402],[49.937,485.401],[42.25,486.246],[34.519,486.622],[26.791,486.995],[19.063,487.371],[11.333,487.744],[3.605,488.12],[-4.249,488.5],[-11.977,488.127],[-19.707,487.752],[-27.435,487.376],[-35.166,487.003],[-42.894,486.627],[-50.624,486.254],[-58.299,485.326],[-65.955,484.204],[-73.611,483.084],[-81.269,481.962],[-88.925,480.84],[-96.581,479.72],[-104.152,478.164],[-111.666,476.312],[-119.179,474.461],[-126.691,472.609],[-134.204,470.757],[-141.718,468.905],[-149.119,466.675],[-156.42,464.115],[-163.725,461.557],[-171.026,458.997],[-178.331,456.437],[-185.632,453.88],[-192.787,450.951],[-199.814,447.715],[-206.844,444.48],[-213.874,441.246],[-220.903,438.01],[-227.933,434.775],[-234.76,431.151],[-241.458,427.274],[-248.155,423.399],[-254.852,419.521],[-261.55,415.647],[-268.247,411.769],[-274.672,407.471],[-280.984,402.991],[-287.294,398.514],[-293.606,394.035],[-299.915,389.558],[-306.225,385.079],[-312.178,380.142],[-318.049,375.101],[-323.923,370.064],[-329.797,365.025],[-335.67,359.987],[-341.542,354.95],[-346.953,349.418],[-352.34,343.864],[-357.727,338.308],[-363.115,332.755],[-368.502,327.199],[-373.843,321.605],[-378.701,315.58],[-383.556,309.557],[-388.413,303.531],[-393.268,297.506],[-398.125,291.483],[-402.858,285.366],[-407.14,278.921],[-411.421,272.477],[-415.703,266.03],[-419.985,259.586],[-424.267,253.139],[-428.346,246.574],[-432.014,239.759],[-435.68,232.943],[-439.347,226.13],[-443.015,219.315],[-446.68,212.502],[-450.076,205.557],[-453.091,198.431],[-456.104,191.303],[-459.116,184.177],[-462.132,177.048],[-465.144,169.922],[-467.841,162.678],[-470.168,155.297],[-472.494,147.918],[-474.821,140.537],[-477.147,133.158],[-479.473,125.777],[-481.477,118.311],[-483.088,110.744],[-484.699,103.176],[-486.31,95.606],[-487.921,88.037],[-489.532,80.468],[-490.917,72.863],[-491.917,65.188],[-492.914,57.515],[-493.913,49.843],[-494.751,42.153],[-495.127,34.425],[-495.5,26.697],[-495.876,18.967],[-496.249,11.239],[-496.625,3.508],[-496.998,-4.22],[-496.627,-11.95],[-496.254,-19.678],[-495.878,-27.406],[-495.502,-35.137],[-495.129,-42.865],[-494.754,-50.595],[-493.831,-58.27],[-492.709,-65.926],[-491.589,-73.584],[-490.467,-81.24],[-489.345,-88.896],[-488.225,-96.552],[-486.674,-104.126],[-484.82,-111.637],[-482.968,-119.151],[-481.116,-126.664],[-479.264,-134.178],[-477.412,-141.692],[-475.184,-149.092],[-472.624,-156.394],[-470.067,-163.698],[-467.507,-171],[-464.949,-178.304],[-462.389,-185.606],[-459.463,-192.761],[-456.229,-199.79],[-452.992,-206.82],[-449.758,-213.847],[-446.524,-220.877],[-443.287,-227.906],[-439.665,-234.736],[-435.79,-241.434],[-431.913,-248.131],[-428.038,-254.828],[-424.161,-261.526],[-420.284,-268.223],[-415.987,-274.65],[-411.51,-280.96],[-407.031,-287.272],[-402.554,-293.582],[-398.075,-299.894],[-393.598,-306.203],[-388.661,-312.156],[-383.623,-318.03],[-378.585,-323.901],[-373.547,-329.775],[-368.507,-335.649],[-363.469,-341.522],[-357.942,-346.934],[-352.386,-352.321],[-346.832,-357.708],[-341.277,-363.095],[-335.723,-368.485],[-330.129,-373.826],[-324.103,-378.684],[-318.08,-383.539],[-312.055,-388.396],[-306.03,-393.251],[-300.007,-398.109],[-293.892,-402.843],[-287.448,-407.125],[-281.001,-411.407],[-274.556,-415.689],[-268.11,-419.971],[-261.665,-424.252],[-255.1,-428.334],[-248.285,-432.002],[-241.472,-435.667],[-234.657,-439.335],[-227.844,-443.003],[-221.029,-446.668],[-214.086,-450.066],[-206.96,-453.081],[-199.831,-456.094],[-192.705,-459.107],[-185.577,-462.122],[-178.451,-465.135],[-171.207,-467.834],[-163.828,-470.161],[-156.447,-472.487],[-149.068,-474.813],[-141.687,-477.14],[-134.308,-479.466],[-126.842,-481.472],[-119.273,-483.083],[-111.704,-484.694],[-104.138,-486.306],[-96.569,-487.917],[-88.999,-489.528],[-81.392,-490.917],[-73.719,-491.914],[-66.046,-492.914],[-58.371,-493.911],[-50.684,-494.751],[-42.956,-495.127],[-35.226,-495.5],[-27.498,-495.876],[-19.77,-496.251],[-12.039,-496.625],[-4.311,-497]],"c":true}]},{"t":192,"s":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[6.428,-491.836],[14.758,-490.711],[22.933,-488.794],[30.879,-486.091],[38.523,-482.63],[45.798,-478.436],[52.619,-473.52],[58.782,-467.809],[64.461,-461.621],[69.338,-454.782],[73.871,-447.708],[78.192,-440.497],[82.517,-433.286],[86.839,-426.075],[91.16,-418.864],[95.482,-411.653],[99.804,-404.442],[104.126,-397.231],[108.483,-390.044],[113.214,-383.095],[118.623,-376.662],[124.659,-370.811],[131.256,-365.6],[138.343,-361.084],[145.852,-357.302],[153.702,-354.292],[161.813,-352.086],[170.105,-350.705],[178.493,-350.164],[186.896,-350.481],[195.21,-351.684],[203.407,-353.545],[211.562,-355.588],[219.718,-357.63],[227.872,-359.673],[236.027,-361.716],[244.181,-363.761],[252.338,-365.803],[260.492,-367.846],[268.646,-369.889],[276.914,-371.411],[285.269,-372.203],[293.657,-372.215],[302.017,-371.414],[310.252,-369.719],[318.231,-367.08],[325.908,-363.685],[333.216,-359.562],[340.096,-354.753],[346.486,-349.301],[352.314,-343.241],[357.412,-336.56],[361.837,-329.422],[365.549,-321.897],[368.509,-314.043],[370.689,-305.936],[372.039,-297.638],[372.361,-289.24],[372.004,-280.849],[370.621,-272.565],[368.824,-264.356],[366.781,-256.2],[364.736,-248.045],[362.693,-239.891],[360.651,-231.737],[358.608,-223.58],[356.565,-215.426],[354.522,-207.272],[352.518,-199.108],[350.948,-190.852],[350.222,-182.478],[350.352,-174.071],[351.328,-165.723],[353.146,-157.514],[355.778,-149.53],[359.199,-141.853],[363.374,-134.555],[368.261,-127.715],[373.81,-121.4],[379.976,-115.683],[386.704,-110.652],[393.816,-106.172],[401.027,-101.85],[408.238,-97.528],[415.449,-93.207],[422.657,-88.885],[429.868,-84.563],[437.079,-80.241],[444.29,-75.919],[451.501,-71.597],[458.424,-66.826],[464.892,-61.481],[470.836,-55.558],[476.182,-49.083],[480.806,-42.061],[484.584,-34.554],[487.613,-26.727],[489.868,-18.643],[491.334,-10.378],[492.001,-2.006],[491.837,6.399],[490.717,14.73],[488.802,22.906],[486.104,30.852],[482.645,38.498],[478.456,45.775],[473.541,52.596],[467.831,58.762],[461.649,64.443],[454.811,69.326],[447.737,73.86],[440.526,78.18],[433.315,82.501],[426.105,86.823],[418.894,91.145],[411.68,95.465],[404.469,99.786],[397.258,104.108],[390.069,108.463],[383.12,113.192],[376.687,118.601],[370.833,124.635],[365.62,131.228],[361.1,138.316],[357.315,145.823],[354.303,153.672],[352.094,161.784],[350.711,170.075],[350.167,178.464],[350.487,186.866],[351.683,195.181],[353.544,203.378],[355.589,211.532],[357.631,219.686],[359.674,227.843],[361.717,235.997],[363.762,244.151],[365.805,252.306],[367.847,260.462],[369.892,268.617],[371.413,276.884],[372.209,285.237],[372.224,293.628],[371.424,301.988],[369.729,310.223],[367.095,318.202],[363.7,325.879],[359.582,333.191],[354.775,340.071],[349.328,346.464],[343.269,352.292],[336.587,357.392],[329.452,361.82],[321.927,365.534],[314.075,368.499],[305.968,370.683],[297.67,372.031],[289.272,372.357],[280.883,372.005],[272.597,370.622],[264.388,368.83],[256.234,366.785],[248.077,364.742],[239.923,362.699],[231.769,360.657],[223.615,358.614],[215.458,356.571],[207.304,354.526],[199.14,352.521],[190.884,350.949],[182.51,350.221],[174.105,350.344],[165.754,351.32],[157.546,353.134],[149.562,355.763],[141.88,359.181],[134.582,363.354],[127.74,368.236],[121.423,373.785],[115.708,379.949],[110.672,386.673],[106.19,393.784],[101.868,400.995],[97.546,408.206],[93.224,415.417],[88.902,422.628],[84.581,429.839],[80.259,437.05],[75.937,444.261],[71.615,451.472],[66.846,458.394],[61.503,464.868],[55.583,470.811],[49.11,476.162],[42.088,480.786],[34.586,484.569],[26.758,487.6],[18.675,489.86],[10.412,491.328],[2.04,492],[-6.367,491.834],[-14.696,490.718],[-22.874,488.808],[-30.82,486.115],[-38.469,482.661],[-45.748,478.474],[-52.569,473.559],[-58.737,467.851],[-64.421,461.671],[-69.305,454.836],[-73.842,447.762],[-78.164,440.551],[-82.484,433.34],[-86.805,426.13],[-91.127,418.918],[-95.449,411.708],[-99.769,404.497],[-104.09,397.283],[-108.445,390.094],[-113.171,383.143],[-118.576,376.707],[-124.607,370.851],[-131.201,365.636],[-138.287,361.113],[-145.793,357.325],[-153.64,354.309],[-161.749,352.098],[-170.041,350.71],[-178.432,350.169],[-186.832,350.483],[-195.149,351.675],[-203.346,353.533],[-211.5,355.578],[-219.654,357.621],[-227.809,359.664],[-235.965,361.706],[-244.12,363.751],[-252.274,365.794],[-260.428,367.837],[-268.585,369.882],[-276.85,371.404],[-285.205,372.204],[-293.594,372.225],[-301.956,371.43],[-310.191,369.735],[-318.17,367.104],[-325.849,363.716],[-333.162,359.6],[-340.046,354.796],[-346.442,349.351],[-352.269,343.291],[-357.371,336.612],[-361.804,329.482],[-365.521,321.956],[-368.488,314.107],[-370.677,306],[-372.025,297.702],[-372.356,289.304],[-372.006,280.915],[-370.628,272.629],[-368.836,264.42],[-366.793,256.264],[-364.75,248.109],[-362.708,239.955],[-360.662,231.801],[-358.62,223.646],[-356.577,215.49],[-354.532,207.336],[-352.527,199.172],[-350.95,190.916],[-350.22,182.542],[-350.34,174.137],[-351.312,165.786],[-353.123,157.578],[-355.749,149.591],[-359.166,141.91],[-363.334,134.609],[-368.216,127.765],[-373.763,121.447],[-379.924,115.728],[-386.645,110.688],[-393.755,106.205],[-400.968,101.886],[-408.179,97.564],[-415.39,93.242],[-422.601,88.923],[-429.814,84.601],[-437.025,80.281],[-444.236,75.96],[-451.449,71.64],[-458.372,66.871],[-464.845,61.533],[-470.793,55.615],[-476.148,49.144],[-480.771,42.123],[-484.556,34.621],[-487.591,26.795],[-489.854,18.714],[-491.327,10.451],[-492.001,2.077],[-491.837,-6.328],[-490.724,-14.659],[-488.818,-22.835],[-486.128,-30.786],[-482.678,-38.434],[-478.496,-45.716],[-473.581,-52.537],[-467.878,-58.71],[-461.701,-64.396],[-454.868,-69.283],[-447.796,-73.822],[-440.586,-78.144],[-433.375,-82.463],[-426.161,-86.785],[-418.95,-91.107],[-411.739,-95.429],[-404.529,-99.751],[-397.318,-104.073],[-390.126,-108.425],[-383.172,-113.146],[-376.732,-118.549],[-370.874,-124.578],[-365.656,-131.167],[-361.128,-138.252],[-357.338,-145.757],[-354.319,-153.601],[-352.104,-161.71],[-350.714,-170.002],[-350.17,-178.393],[-350.482,-186.793],[-351.666,-195.11],[-353.525,-203.307],[-355.567,-211.461],[-357.61,-219.618],[-359.655,-227.772],[-361.698,-235.926],[-363.741,-244.081],[-365.783,-252.237],[-367.826,-260.391],[-369.871,-268.546],[-371.396,-276.813],[-372.202,-285.166],[-372.226,-293.555],[-371.436,-301.917],[-369.741,-310.152],[-367.117,-318.133],[-363.731,-325.815],[-359.617,-333.13],[-354.818,-340.017],[-349.378,-346.414],[-343.318,-352.242],[-336.642,-357.349],[-329.511,-361.784],[-321.991,-365.505],[-314.141,-368.475],[-306.037,-370.669],[-297.738,-372.017],[-289.34,-372.35],[-280.952,-372.005],[-272.665,-370.629],[-264.454,-368.839],[-256.3,-366.796],[-248.146,-364.754],[-239.989,-362.709],[-231.835,-360.666],[-223.681,-358.623],[-215.526,-356.581],[-207.372,-354.535],[-199.208,-352.528],[-190.953,-350.951],[-182.578,-350.216],[-174.174,-350.334],[-165.823,-351.306],[-157.612,-353.115],[-149.626,-355.736],[-141.942,-359.148],[-134.639,-363.314],[-127.794,-368.194],[-121.477,-373.74],[-115.753,-379.899],[-110.708,-386.616],[-106.225,-393.725],[-101.903,-400.936],[-97.582,-408.147],[-93.26,-415.36],[-88.94,-422.571],[-84.618,-429.782],[-80.297,-436.993],[-75.975,-444.204],[-71.584,-451.531],[-66.813,-458.453],[-61.463,-464.917],[-55.538,-470.858],[-49.058,-476.202],[-42.039,-480.826],[-34.53,-484.599],[-26.699,-487.623],[-18.616,-489.876],[-10.351,-491.337],[-1.977,-491.999]],"c":true}]}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[8.9,8.9],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Material shape","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":162,"op":462,"st":0,"ct":1,"bm":0},{"ddd":0,"ind":13,"ty":4,"nm":".cream","cl":"cream","parent":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[329,56,0],"ix":2,"l":2},"a":{"a":0,"k":[-83.117,-32.398,0],"ix":1,"l":2},"s":{"a":1,"k":[{"i":{"x":[0.18,0.18,0.667],"y":[1,1,1]},"o":{"x":[0.678,0.678,0.333],"y":[-0.009,-0.009,0]},"t":78,"s":[100,100,100]},{"i":{"x":[0.325,0.325,0.667],"y":[1,1,1]},"o":{"x":[0.678,0.678,0.333],"y":[0,0,0]},"t":88,"s":[105,105,100]},{"t":98,"s":[40,40,100]}],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[44,44],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"r":{"a":0,"k":22,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-83.117,-32.398],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":98,"st":0,"ct":1,"bm":0},{"ddd":0,"ind":14,"ty":4,"nm":".cream","cl":"cream","parent":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[329,56,0],"ix":2,"l":2},"a":{"a":0,"k":[-83.117,-32.398,0],"ix":1,"l":2},"s":{"a":1,"k":[{"i":{"x":[0.178,0.178,0.667],"y":[1,1,1]},"o":{"x":[0.562,0.562,0.333],"y":[0,0,0]},"t":100,"s":[40,40,100]},{"i":{"x":[0.351,0.351,0.667],"y":[1,1,1]},"o":{"x":[0.762,0.762,0.333],"y":[0,0,0]},"t":110,"s":[105,105,100]},{"t":120,"s":[100,100,100]}],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[44,44],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"r":{"a":0,"k":22,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-83.117,-32.398],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":100,"op":168,"st":-10,"ct":1,"bm":0},{"ddd":0,"ind":15,"ty":4,"nm":".cream","cl":"cream","parent":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0],"y":[1]},"o":{"x":[0.05],"y":[0]},"t":168,"s":[0]},{"t":198,"s":[180]}],"ix":10},"p":{"s":true,"x":{"a":1,"k":[{"i":{"x":[0],"y":[1]},"o":{"x":[0.05],"y":[0]},"t":270,"s":[329.262]},{"t":300,"s":[348.401]}],"ix":3},"y":{"a":0,"k":56.117,"ix":4}},"a":{"a":0,"k":[0,0,0],"ix":1,"l":2},"s":{"a":1,"k":[{"i":{"x":[0.8,0.8,0.8],"y":[0.15,0.15,1]},"o":{"x":[0.3,0.3,0.3],"y":[0,0,0]},"t":360,"s":[50,50,100]},{"t":372,"s":[20,20,100]}],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0,"y":1},"o":{"x":0.05,"y":0},"t":168,"s":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[3.419,-496.632],[11.147,-496.256],[18.878,-495.883],[26.606,-495.507],[34.334,-495.132],[42.064,-494.758],[49.739,-493.839],[57.397,-492.716],[65.053,-491.594],[72.709,-490.474],[80.365,-489.352],[88.023,-488.232],[95.594,-486.684],[103.108,-484.832],[110.622,-482.977],[118.135,-481.125],[125.647,-479.273],[133.16,-477.422],[140.563,-475.196],[147.865,-472.639],[155.169,-470.079],[162.471,-467.521],[169.773,-464.961],[177.077,-462.401],[184.232,-459.48],[191.262,-456.243],[198.291,-453.009],[205.321,-449.772],[212.35,-446.538],[219.378,-443.302],[226.21,-439.684],[232.907,-435.807],[239.604,-431.932],[246.302,-428.055],[252.999,-424.178],[259.696,-420.303],[266.124,-416.009],[272.436,-411.53],[278.746,-407.053],[285.058,-402.573],[291.367,-398.097],[297.679,-393.617],[303.632,-388.683],[309.506,-383.645],[315.38,-378.607],[321.251,-373.569],[327.125,-368.531],[332.998,-363.493],[338.412,-357.966],[343.799,-352.41],[349.187,-346.857],[354.574,-341.301],[359.963,-335.747],[365.307,-330.155],[370.165,-324.13],[375.02,-318.107],[379.877,-312.082],[384.732,-306.056],[389.59,-300.033],[394.326,-293.921],[398.608,-287.474],[402.89,-281.03],[407.172,-274.585],[411.454,-268.138],[415.736,-261.694],[419.82,-255.129],[423.488,-248.316],[427.153,-241.501],[430.821,-234.688],[434.486,-227.873],[438.154,-221.057],[441.554,-214.117],[444.569,-206.989],[447.582,-199.863],[450.595,-192.734],[453.61,-185.608],[456.623,-178.48],[459.325,-171.238],[461.651,-163.859],[463.977,-156.478],[466.304,-149.099],[468.63,-141.718],[470.956,-134.339],[472.967,-126.876],[474.579,-119.307],[476.19,-111.738],[477.798,-104.169],[479.409,-96.6],[481.021,-89.033],[482.413,-81.425],[483.41,-73.753],[484.409,-66.078],[485.408,-58.405],[486.251,-50.718],[486.624,-42.99],[487,-35.26],[487.374,-27.532],[487.749,-19.801],[488.125,-12.073],[488.498,-4.345],[488.132,3.385],[487.759,11.113],[487.383,18.844],[487.01,26.572],[486.634,34.302],[486.258,42.03],[485.341,49.708],[484.221,57.363],[483.099,65.019],[481.979,72.675],[480.857,80.333],[479.735,87.989],[478.191,95.563],[476.339,103.074],[474.487,110.588],[472.633,118.102],[470.781,125.615],[468.929,133.129],[466.708,140.532],[464.148,147.834],[461.588,155.135],[459.031,162.44],[456.471,169.742],[453.913,177.046],[450.992,184.201],[447.758,191.23],[444.521,198.26],[441.287,205.29],[438.05,212.319],[434.816,219.349],[431.199,226.181],[427.324,232.878],[423.447,239.576],[419.57,246.273],[415.695,252.97],[411.817,259.667],[407.526,266.098],[403.049,272.407],[398.57,278.719],[394.093,285.029],[389.614,291.341],[385.137,297.65],[380.204,303.606],[375.167,309.479],[370.126,315.353],[365.088,321.227],[360.05,327.098],[355.012,332.972],[349.488,338.388],[343.934,343.775],[338.378,349.162],[332.825,354.55],[327.269,359.939],[321.679,365.286],[315.654,370.143],[309.631,374.998],[303.606,379.855],[297.58,384.71],[291.557,389.568],[285.445,394.307],[279.001,398.589],[272.556,402.871],[266.11,407.153],[259.665,411.435],[253.218,415.716],[246.656,419.803],[239.843,423.471],[233.028,427.136],[226.215,430.804],[219.399,434.469],[212.586,438.137],[205.646,441.54],[198.517,444.555],[191.392,447.568],[184.263,450.58],[177.137,453.596],[170.009,456.608],[162.77,459.313],[155.388,461.639],[148.01,463.965],[140.628,466.292],[133.25,468.62],[125.868,470.947],[118.405,472.958],[110.836,474.569],[103.269,476.18],[95.7,477.791],[88.131,479.402],[80.562,481.013],[72.957,482.405],[65.284,483.405],[57.609,484.402],[49.937,485.401],[42.25,486.246],[34.519,486.622],[26.791,486.995],[19.063,487.371],[11.333,487.744],[3.605,488.12],[-4.249,488.5],[-11.977,488.127],[-19.707,487.752],[-27.435,487.376],[-35.166,487.003],[-42.894,486.627],[-50.624,486.254],[-58.299,485.326],[-65.955,484.204],[-73.611,483.084],[-81.269,481.962],[-88.925,480.84],[-96.581,479.72],[-104.152,478.164],[-111.666,476.312],[-119.179,474.461],[-126.691,472.609],[-134.204,470.757],[-141.718,468.905],[-149.119,466.675],[-156.42,464.115],[-163.725,461.557],[-171.026,458.997],[-178.331,456.437],[-185.632,453.88],[-192.787,450.951],[-199.814,447.715],[-206.844,444.48],[-213.874,441.246],[-220.903,438.01],[-227.933,434.775],[-234.76,431.151],[-241.458,427.274],[-248.155,423.399],[-254.852,419.521],[-261.55,415.647],[-268.247,411.769],[-274.672,407.471],[-280.984,402.991],[-287.294,398.514],[-293.606,394.035],[-299.915,389.558],[-306.225,385.079],[-312.178,380.142],[-318.049,375.101],[-323.923,370.064],[-329.797,365.025],[-335.67,359.987],[-341.542,354.95],[-346.953,349.418],[-352.34,343.864],[-357.727,338.308],[-363.115,332.755],[-368.502,327.199],[-373.843,321.605],[-378.701,315.58],[-383.556,309.557],[-388.413,303.531],[-393.268,297.506],[-398.125,291.483],[-402.858,285.366],[-407.14,278.921],[-411.421,272.477],[-415.703,266.03],[-419.985,259.586],[-424.267,253.139],[-428.346,246.574],[-432.014,239.759],[-435.68,232.943],[-439.347,226.13],[-443.015,219.315],[-446.68,212.502],[-450.076,205.557],[-453.091,198.431],[-456.104,191.303],[-459.116,184.177],[-462.132,177.048],[-465.144,169.922],[-467.841,162.678],[-470.168,155.297],[-472.494,147.918],[-474.821,140.537],[-477.147,133.158],[-479.473,125.777],[-481.477,118.311],[-483.088,110.744],[-484.699,103.176],[-486.31,95.606],[-487.921,88.037],[-489.532,80.468],[-490.917,72.863],[-491.917,65.188],[-492.914,57.515],[-493.913,49.843],[-494.751,42.153],[-495.127,34.425],[-495.5,26.697],[-495.876,18.967],[-496.249,11.239],[-496.625,3.508],[-496.998,-4.22],[-496.627,-11.95],[-496.254,-19.678],[-495.878,-27.406],[-495.502,-35.137],[-495.129,-42.865],[-494.754,-50.595],[-493.831,-58.27],[-492.709,-65.926],[-491.589,-73.584],[-490.467,-81.24],[-489.345,-88.896],[-488.225,-96.552],[-486.674,-104.126],[-484.82,-111.637],[-482.968,-119.151],[-481.116,-126.664],[-479.264,-134.178],[-477.412,-141.692],[-475.184,-149.092],[-472.624,-156.394],[-470.067,-163.698],[-467.507,-171],[-464.949,-178.304],[-462.389,-185.606],[-459.463,-192.761],[-456.229,-199.79],[-452.992,-206.82],[-449.758,-213.847],[-446.524,-220.877],[-443.287,-227.906],[-439.665,-234.736],[-435.79,-241.434],[-431.913,-248.131],[-428.038,-254.828],[-424.161,-261.526],[-420.284,-268.223],[-415.987,-274.65],[-411.51,-280.96],[-407.031,-287.272],[-402.554,-293.582],[-398.075,-299.894],[-393.598,-306.203],[-388.661,-312.156],[-383.623,-318.03],[-378.585,-323.901],[-373.547,-329.775],[-368.507,-335.649],[-363.469,-341.522],[-357.942,-346.934],[-352.386,-352.321],[-346.832,-357.708],[-341.277,-363.095],[-335.723,-368.485],[-330.129,-373.826],[-324.103,-378.684],[-318.08,-383.539],[-312.055,-388.396],[-306.03,-393.251],[-300.007,-398.109],[-293.892,-402.843],[-287.448,-407.125],[-281.001,-411.407],[-274.556,-415.689],[-268.11,-419.971],[-261.665,-424.252],[-255.1,-428.334],[-248.285,-432.002],[-241.472,-435.667],[-234.657,-439.335],[-227.844,-443.003],[-221.029,-446.668],[-214.086,-450.066],[-206.96,-453.081],[-199.831,-456.094],[-192.705,-459.107],[-185.577,-462.122],[-178.451,-465.135],[-171.207,-467.834],[-163.828,-470.161],[-156.447,-472.487],[-149.068,-474.813],[-141.687,-477.14],[-134.308,-479.466],[-126.842,-481.472],[-119.273,-483.083],[-111.704,-484.694],[-104.138,-486.306],[-96.569,-487.917],[-88.999,-489.528],[-81.392,-490.917],[-73.719,-491.914],[-66.046,-492.914],[-58.371,-493.911],[-50.684,-494.751],[-42.956,-495.127],[-35.226,-495.5],[-27.498,-495.876],[-19.77,-496.251],[-12.039,-496.625],[-4.311,-497]],"c":true}]},{"t":198,"s":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[1.906,-488.758],[9.421,-487.243],[16.936,-485.728],[24.451,-484.213],[31.966,-482.698],[39.333,-480.59],[46.677,-478.385],[54.02,-476.18],[61.363,-473.975],[68.706,-471.77],[75.88,-469.081],[82.983,-466.201],[90.087,-463.319],[97.193,-460.436],[104.297,-457.556],[111.241,-454.323],[118.039,-450.782],[124.84,-447.241],[131.641,-443.702],[138.442,-440.161],[145.129,-436.429],[151.56,-432.254],[157.991,-428.079],[164.422,-423.907],[170.853,-419.732],[177.281,-415.554],[183.356,-410.878],[189.431,-406.2],[195.508,-401.524],[201.409,-396.642],[207.087,-391.489],[212.765,-386.336],[218.443,-381.184],[224.118,-376.031],[229.796,-370.878],[235.22,-365.461],[240.642,-360.04],[246.063,-354.618],[251.485,-349.197],[256.906,-343.775],[262.328,-338.354],[267.749,-332.932],[273.171,-327.513],[278.592,-322.092],[284.011,-316.671],[289.433,-311.249],[294.854,-305.828],[300.276,-300.406],[305.697,-294.985],[311.118,-289.563],[316.54,-284.142],[321.961,-278.72],[327.383,-273.299],[332.804,-267.88],[338.226,-262.458],[343.645,-257.037],[349.066,-251.615],[354.488,-246.194],[359.909,-240.772],[365.331,-235.351],[370.752,-229.929],[375.907,-224.256],[381.06,-218.578],[386.213,-212.9],[391.366,-207.222],[396.516,-201.547],[401.359,-195.612],[405.938,-189.462],[410.515,-183.315],[415.094,-177.165],[419.674,-171.015],[424.132,-164.785],[428.099,-158.223],[432.066,-151.662],[436.03,-145.1],[439.997,-138.539],[443.964,-131.978],[447.335,-125.097],[450.658,-118.187],[453.981,-111.277],[457.304,-104.369],[460.628,-97.459],[463.476,-90.348],[466.136,-83.158],[468.794,-75.967],[471.451,-68.776],[474.109,-61.583],[476.396,-54.274],[478.371,-46.868],[480.348,-39.459],[482.323,-32.051],[484.301,-24.645],[485.992,-17.176],[487.277,-9.617],[488.56,-2.058],[489.845,5.5],[491.128,13.059],[492.207,20.644],[492.793,28.287],[493.377,35.933],[493.962,43.576],[494.546,51.222],[495.001,58.87],[494.882,66.535],[494.766,74.203],[494.65,81.868],[494.531,89.533],[494.354,97.196],[493.536,104.819],[492.718,112.441],[491.9,120.065],[491.082,127.689],[490.264,135.31],[488.766,142.828],[487.248,150.345],[485.733,157.86],[484.218,165.375],[482.703,172.89],[480.597,180.258],[478.392,187.601],[476.188,194.944],[473.983,202.287],[471.778,209.63],[469.094,216.804],[466.211,223.908],[463.331,231.014],[460.448,238.117],[457.566,245.223],[454.337,252.167],[450.796,258.966],[447.255,265.767],[443.714,272.568],[440.173,279.369],[436.444,286.059],[432.269,292.489],[428.096,298.92],[423.921,305.351],[419.749,311.781],[415.571,318.21],[410.895,324.285],[406.219,330.362],[401.541,336.437],[396.661,342.34],[391.509,348.018],[386.356,353.696],[381.203,359.372],[376.05,365.05],[370.815,370.817],[365.139,375.97],[359.461,381.123],[353.783,386.276],[348.105,391.429],[342.43,396.579],[336.49,401.415],[330.34,405.994],[324.19,410.573],[318.04,415.15],[311.893,419.729],[305.658,424.182],[299.097,428.147],[292.535,432.114],[285.974,436.078],[279.412,440.045],[272.851,444.012],[265.965,447.376],[259.055,450.699],[252.145,454.022],[245.238,457.345],[238.328,460.668],[231.215,463.51],[224.024,466.167],[216.831,468.827],[209.64,471.485],[202.449,474.142],[195.138,476.42],[187.729,478.397],[180.323,480.372],[172.915,482.349],[165.506,484.324],[158.035,486.011],[150.476,487.294],[142.917,488.577],[135.359,489.862],[127.8,491.145],[120.217,492.217],[112.572,492.8],[104.928,493.386],[97.283,493.972],[89.639,494.555],[81.989,495],[74.324,494.884],[66.659,494.766],[58.991,494.649],[51.326,494.533],[43.663,494.347],[36.042,493.529],[28.418,492.711],[20.796,491.893],[13.173,491.075],[5.549,490.257],[-1.966,488.749],[-9.484,487.234],[-16.999,485.718],[-24.514,484.203],[-32.029,482.686],[-39.396,480.575],[-46.737,478.371],[-54.08,476.166],[-61.423,473.961],[-68.767,471.754],[-75.938,469.062],[-83.042,466.18],[-90.148,463.299],[-97.251,460.417],[-104.357,457.534],[-111.296,454.296],[-118.097,450.757],[-124.898,447.216],[-131.697,443.676],[-138.498,440.135],[-145.183,436.398],[-151.613,432.223],[-158.044,428.05],[-164.477,423.875],[-170.908,419.702],[-177.332,415.518],[-183.406,410.842],[-189.484,406.166],[-195.559,401.49],[-201.457,396.601],[-207.135,391.45],[-212.813,386.298],[-218.489,381.145],[-224.167,375.992],[-229.845,370.839],[-235.266,365.42],[-240.688,359.999],[-246.109,354.577],[-251.531,349.156],[-256.952,343.734],[-262.374,338.313],[-267.795,332.894],[-273.216,327.472],[-278.638,322.051],[-284.057,316.629],[-289.478,311.208],[-294.9,305.786],[-300.321,300.365],[-305.743,294.943],[-311.164,289.522],[-316.586,284.101],[-322.007,278.679],[-327.429,273.26],[-332.85,267.839],[-338.272,262.417],[-343.691,256.996],[-349.112,251.574],[-354.534,246.153],[-359.955,240.731],[-365.377,235.31],[-370.798,229.888],[-375.951,224.213],[-381.104,218.535],[-386.257,212.857],[-391.409,207.181],[-396.56,201.503],[-401.398,195.566],[-405.977,189.416],[-410.554,183.266],[-415.133,177.116],[-419.712,170.969],[-424.166,164.734],[-428.132,158.175],[-432.099,151.613],[-436.064,145.052],[-440.031,138.49],[-443.998,131.929],[-447.364,125.043],[-450.687,118.134],[-454.01,111.226],[-457.333,104.316],[-460.656,97.406],[-463.5,90.295],[-466.158,83.102],[-468.818,75.911],[-471.475,68.721],[-474.133,61.53],[-476.413,54.218],[-478.39,46.81],[-480.365,39.404],[-482.342,31.995],[-484.317,24.587],[-486.007,17.118],[-487.289,9.559],[-488.572,2],[-489.857,-5.558],[-491.14,-13.117],[-492.215,-20.702],[-492.798,-28.348],[-493.384,-35.991],[-493.969,-43.637],[-494.553,-51.28],[-495,-58.928],[-494.884,-66.596],[-494.768,-74.261],[-494.65,-81.926],[-494.533,-89.593],[-494.352,-97.254],[-493.534,-104.877],[-492.716,-112.499],[-491.895,-120.123],[-491.077,-127.747],[-490.259,-135.368],[-488.756,-142.886],[-487.239,-150.401],[-485.723,-157.918],[-484.208,-165.433],[-482.693,-172.948],[-480.583,-180.316],[-478.378,-187.659],[-476.173,-195],[-473.968,-202.343],[-471.763,-209.686],[-469.072,-216.86],[-466.192,-223.963],[-463.309,-231.067],[-460.426,-238.173],[-457.546,-245.277],[-454.31,-252.218],[-450.77,-259.019],[-447.229,-265.82],[-443.688,-272.619],[-440.149,-279.42],[-436.412,-286.107],[-432.24,-292.538],[-428.065,-298.968],[-423.892,-305.399],[-419.717,-311.83],[-415.537,-318.256],[-410.859,-324.331],[-406.183,-330.408],[-401.507,-336.483],[-396.62,-342.384],[-391.47,-348.062],[-386.317,-353.737],[-381.164,-359.415],[-376.011,-365.093],[-370.859,-370.771],[-365.185,-375.927],[-359.51,-381.079],[-353.832,-386.232],[-348.154,-391.385],[-342.476,-396.535],[-336.541,-401.376],[-330.394,-405.955],[-324.244,-410.532],[-318.094,-415.111],[-311.944,-419.69],[-305.714,-424.146],[-299.152,-428.113],[-292.591,-432.08],[-286.03,-436.044],[-279.468,-440.011],[-272.907,-443.978],[-266.023,-447.347],[-259.113,-450.67],[-252.203,-453.993],[-245.296,-457.316],[-238.386,-460.639],[-231.275,-463.486],[-224.084,-466.146],[-216.891,-468.803],[-209.701,-471.461],[-202.51,-474.118],[-195.198,-476.403],[-187.792,-478.378],[-180.384,-480.355],[-172.975,-482.33],[-165.569,-484.308],[-158.097,-485.997],[-150.539,-487.282],[-142.98,-488.565],[-135.422,-489.85],[-127.863,-491.133],[-120.28,-492.21],[-112.635,-492.793],[-104.991,-493.379],[-97.346,-493.965],[-89.702,-494.548],[-82.054,-495.001],[-74.387,-494.882],[-66.721,-494.766],[-59.056,-494.647],[-51.389,-494.531],[-43.729,-494.352],[-36.105,-493.534],[-28.481,-492.716],[-20.859,-491.898],[-13.235,-491.079],[-5.614,-490.262]],"c":true}]}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[8.9,8.9],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Material shape","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":168,"op":372,"st":0,"ct":1,"bm":0},{"ddd":0,"ind":16,"ty":4,"nm":".cream","cl":"cream","parent":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"s":true,"x":{"a":1,"k":[{"i":{"x":[0],"y":[1]},"o":{"x":[0.05],"y":[0]},"t":270,"s":[375]},{"t":300,"s":[396.531]}],"ix":3},"y":{"a":0,"k":56,"ix":4}},"a":{"a":0,"k":[196.283,-128.858,0],"ix":1,"l":2},"s":{"a":1,"k":[{"i":{"x":[0.113,0.113,0.667],"y":[1,1,1]},"o":{"x":[0.353,0.353,0.333],"y":[0,0,0]},"t":174,"s":[40,40,100]},{"i":{"x":[0.311,0.311,0.667],"y":[1,1,1]},"o":{"x":[0.813,0.813,0.333],"y":[0,0,0]},"t":189,"s":[105,105,100]},{"t":204,"s":[100,100,100]}],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[18,18],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"r":{"a":0,"k":20,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[196.283,-128.858],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":174,"op":720,"st":0,"ct":1,"bm":0},{"ddd":0,"ind":17,"ty":4,"nm":".blue400","cl":"blue400","parent":20,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[352,240,0],"ix":2,"l":2},"a":{"a":0,"k":[352,240,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,-1.317],[0.602,-1.186],[0.979,-0.753],[0.338,0.151],[0,0.376],[0,0],[-0.32,0.151],[-0.301,-0.188],[-0.603,-1.185]],"o":[[0,1.317],[-0.603,1.166],[-0.32,0.188],[-0.32,-0.188],[0,0],[0,-0.376],[0.338,-0.188],[0.979,0.79],[0.602,1.186]],"v":[[2.353,0.038],[1.449,3.801],[-0.904,6.661],[-1.882,6.717],[-2.352,5.871],[-2.352,-5.891],[-1.882,-6.681],[-0.904,-6.681],[1.449,-3.727]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.400000029919,0.61568627451,0.964705942191,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[353.047,240.118],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":285,"op":720,"st":0,"ct":1,"bm":0},{"ddd":0,"ind":18,"ty":4,"nm":".blue400","cl":"blue400","parent":20,"sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0],"y":[1]},"o":{"x":[0.05],"y":[0]},"t":548,"s":[100]},{"t":578,"s":[0]}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[352,240,0],"ix":2,"l":2},"a":{"a":0,"k":[352,240,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[1.374,2.145],[2.315,1.054],[0.226,0.452],[-0.15,0.47],[-0.471,0.226],[-0.508,-0.226],[-1.807,-2.785],[0,-3.387],[1.825,-2.785],[3.03,-1.336],[0.508,0.226],[0.169,0.489],[-0.226,0.452],[-0.47,0.226],[-1.373,2.126],[0,2.597]],"o":[[0,-2.597],[-1.373,-2.165],[-0.47,-0.226],[-0.226,-0.47],[0.188,-0.508],[0.508,-0.226],[3.049,1.355],[1.825,2.766],[0,3.387],[-1.826,2.767],[-0.508,0.226],[-0.471,-0.226],[-0.15,-0.47],[0.226,-0.47],[2.315,-1.072],[1.374,-2.164],[0,0]],"v":[[2.577,0.029],[0.507,-7.084],[-5.044,-11.921],[-6.079,-12.919],[-6.173,-14.329],[-5.194,-15.421],[-3.689,-15.421],[3.594,-9.212],[6.322,0.01],[3.594,9.268],[-3.689,15.421],[-5.194,15.421],[-6.173,14.348],[-6.079,12.975],[-5.044,11.939],[0.507,7.141],[2.577,-0.009]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.400000029919,0.61568627451,0.964705942191,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[357.528,240.098],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"2","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":285,"op":578,"st":0,"ct":1,"bm":0},{"ddd":0,"ind":19,"ty":4,"nm":".blue400","cl":"blue400","parent":20,"sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0],"y":[1]},"o":{"x":[0.05],"y":[0]},"t":368,"s":[100]},{"t":398,"s":[0]}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[352,240,0],"ix":2,"l":2},"a":{"a":0,"k":[352,240,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,5.231],[2.804,4.253],[4.685,2.088],[0.282,0],[0.282,-0.132],[0.226,-0.583],[-0.263,-0.546],[-0.564,-0.263],[-2.314,-3.613],[0,-4.347],[2.315,-3.613],[3.877,-1.769],[0.264,-0.546],[-0.169,-0.527],[-0.527,-0.244],[-0.264,0],[-0.282,0.131],[-2.804,4.253]],"o":[[2.804,-4.309],[0,-5.231],[-2.804,-4.309],[-0.282,-0.132],[-0.282,0],[-0.508,0.244],[-0.169,0.489],[0.245,0.489],[3.877,1.788],[2.296,3.557],[0,4.347],[-2.314,3.576],[-0.545,0.264],[-0.245,0.508],[0.207,0.546],[0.263,0.113],[0.263,0],[4.685,-2.089],[0,0]],"v":[[5.005,14.388],[9.239,0.011],[5.005,-14.291],[-6.304,-23.925],[-7.132,-24.114],[-7.96,-23.925],[-9.052,-22.721],[-8.92,-21.178],[-7.716,-20.049],[1.599,-11.92],[5.081,-0.008],[1.599,11.979],[-7.716,20.033],[-8.92,21.238],[-9.033,22.743],[-7.941,23.928],[-7.132,24.098],[-6.304,23.91],[5.005,14.35]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.400000029919,0.61568627451,0.964705942191,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[363.834,240.098],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"3","np":4,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":285,"op":398,"st":0,"ct":1,"bm":0},{"ddd":0,"ind":20,"ty":4,"nm":".blue400","cl":"blue400","parent":21,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"s":true,"x":{"a":1,"k":[{"i":{"x":[0],"y":[1]},"o":{"x":[0.05],"y":[0]},"t":368,"s":[352]},{"i":{"x":[0],"y":[1]},"o":{"x":[0.05],"y":[0]},"t":398,"s":[357]},{"i":{"x":[0],"y":[1]},"o":{"x":[0.05],"y":[0]},"t":548,"s":[357]},{"t":578,"s":[360.25]}],"ix":3},"y":{"a":0,"k":240,"ix":4}},"a":{"a":0,"k":[352,240,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.357,0.338],[0,0.546],[0,0],[-0.358,0.338],[-0.527,0],[0,0],[0,0],[-0.753,-0.339],[0,-0.847],[0,0],[0.771,-0.339],[0.583,0.583]],"o":[[0,0],[-0.527,0],[-0.339,-0.377],[0,0],[0,-0.527],[0.376,-0.377],[0,0],[0,0],[0.602,-0.602],[0.79,0.32],[0,0],[0,0.847],[-0.753,0.32],[0,0]],"v":[[-0.931,5.636],[-6.576,5.636],[-7.931,5.128],[-8.458,3.754],[-8.458,-3.773],[-7.931,-5.09],[-6.576,-5.655],[-0.931,-5.655],[5.279,-11.865],[7.293,-12.241],[8.459,-10.51],[8.459,10.472],[7.293,12.26],[5.279,11.846]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.400000029919,0.61568627451,0.964705942191,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[338.458,240.172],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"main","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":285,"op":720,"st":0,"ct":1,"bm":0},{"ddd":0,"ind":21,"ty":4,"nm":".blue100","cl":"blue100","parent":27,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[-88.83,14.117,0],"ix":2,"l":2},"a":{"a":0,"k":[352,240,0],"ix":1,"l":2},"s":{"a":1,"k":[{"i":{"x":[0,0,0],"y":[1,1,1]},"o":{"x":[0.05,0.05,0.05],"y":[0,0,0]},"t":285,"s":[40,40,100]},{"t":315,"s":[100,100,100]}],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,-10.693],[1.577,-4.275],[7.003,-2.584],[10.693,0],[4.275,1.577],[2.584,7.003],[0,10.693],[-1.577,4.275],[-7.003,2.584],[-10.693,0],[-4.275,-1.577],[-2.584,-7.003]],"o":[[0,10.693],[-2.584,7.003],[-4.275,1.577],[-10.693,0],[-7.003,-2.584],[-1.577,-4.275],[0,-10.693],[2.584,-7.003],[4.275,-1.577],[10.693,0],[7.003,2.584],[1.577,4.275]],"v":[[37,0],[35.423,20.315],[20.315,35.423],[0,37],[-20.315,35.423],[-35.423,20.315],[-37,0],[-35.423,-20.315],[-20.315,-35.423],[0,-37],[20.315,-35.423],[35.423,-20.315]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.823529471603,0.89019613827,0.988235353956,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[352,240],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"matte","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":285,"op":720,"st":0,"ct":1,"bm":0},{"ddd":0,"ind":22,"ty":4,"nm":".grey700","cl":"grey700","parent":27,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[-288.83,-95.383,0],"ix":2,"l":2},"a":{"a":0,"k":[2.19,-41.445,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[223,29],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"r":{"a":0,"k":20,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"fl","c":{"a":0,"k":[0.372549019608,0.388235294118,0.407843137255,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[113.69,-41.445],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":270,"op":720,"st":0,"ct":1,"bm":0},{"ddd":0,"ind":23,"ty":4,"nm":".grey700","cl":"grey700","parent":27,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[-288.83,-65.383,0],"ix":2,"l":2},"a":{"a":0,"k":[2.19,-41.445,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[290,20],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"r":{"a":0,"k":20,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"fl","c":{"a":0,"k":[0.372549019608,0.388235294118,0.407843137255,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[147.219,-37.89],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":270,"op":720,"st":0,"ct":1,"bm":0},{"ddd":0,"ind":24,"ty":4,"nm":".grey700","cl":"grey700","parent":27,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[-384.858,-4.438,0],"ix":2,"l":2},"a":{"a":0,"k":[2.19,-41.445,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[98,20],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"r":{"a":0,"k":20,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"fl","c":{"a":0,"k":[0.372549019608,0.388235294118,0.407843137255,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[147.219,-37.89],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":270,"op":720,"st":0,"ct":1,"bm":0},{"ddd":0,"ind":25,"ty":4,"nm":".grey800","cl":"grey800","parent":27,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0],"y":[1]},"o":{"x":[0.05],"y":[0]},"t":368,"s":[0]},{"i":{"x":[0],"y":[1]},"o":{"x":[0.05],"y":[0]},"t":398,"s":[90]},{"i":{"x":[0],"y":[1]},"o":{"x":[0.05],"y":[0]},"t":456,"s":[90]},{"i":{"x":[0],"y":[1]},"o":{"x":[0.05],"y":[0]},"t":486,"s":[180]},{"i":{"x":[0],"y":[1]},"o":{"x":[0.05],"y":[0]},"t":548,"s":[180]},{"t":578,"s":[270]}],"ix":10},"p":{"s":true,"x":{"a":0,"k":-349.354,"ix":3},"y":{"a":0,"k":-81.358,"ix":4}},"a":{"a":0,"k":[0,0,0],"ix":1,"l":2},"s":{"a":0,"k":[50.682,50.682,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0,"y":1},"o":{"x":0.05,"y":0},"t":368,"s":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-0.652,-437.366],[8.33,-437.659],[17.312,-437.953],[26.249,-438.778],[35.158,-439.948],[44.07,-441.114],[52.848,-442.998],[61.602,-445.033],[70.348,-447.09],[78.906,-449.835],[87.432,-452.668],[95.787,-455.975],[104.114,-459.352],[112.356,-462.932],[120.6,-466.51],[128.842,-470.088],[137.086,-473.668],[145.494,-476.842],[153.901,-480.013],[162.309,-483.184],[170.98,-485.538],[179.663,-487.853],[188.349,-490.149],[197.221,-491.579],[206.092,-493.009],[214.984,-494.276],[223.954,-494.806],[232.926,-495.333],[241.897,-495.501],[250.877,-495.127],[259.857,-494.753],[268.778,-493.782],[277.678,-492.525],[286.574,-491.265],[295.31,-489.158],[304.044,-487.043],[312.697,-484.654],[321.19,-481.719],[329.683,-478.781],[337.963,-475.306],[346.144,-471.59],[354.301,-467.824],[362.109,-463.379],[369.919,-458.93],[377.531,-454.173],[384.91,-449.042],[392.286,-443.909],[399.256,-438.244],[406.146,-432.478],[412.915,-426.575],[419.27,-420.22],[425.623,-413.867],[431.614,-407.178],[437.38,-400.286],[443.14,-393.391],[448.274,-386.013],[453.404,-378.636],[458.262,-371.087],[462.71,-363.279],[467.158,-355.469],[471.032,-347.367],[474.745,-339.186],[478.338,-330.954],[481.276,-322.461],[484.212,-313.968],[486.723,-305.35],[488.838,-296.616],[490.956,-287.883],[492.333,-279.009],[493.59,-270.109],[494.694,-261.198],[495.065,-252.221],[495.439,-243.241],[495.406,-234.267],[494.88,-225.295],[494.35,-216.325],[493.216,-207.421],[491.786,-198.549],[490.356,-189.678],[488.193,-180.962],[485.878,-172.278],[483.559,-163.597],[480.481,-155.159],[477.307,-146.752],[474.136,-138.342],[470.618,-130.075],[467.038,-121.833],[463.46,-113.589],[459.882,-105.347],[456.543,-97.007],[453.374,-88.597],[450.208,-80.187],[447.684,-71.571],[445.361,-62.891],[443.04,-54.21],[441.544,-45.348],[440.087,-36.481],[438.775,-27.597],[438.19,-18.63],[437.605,-9.663],[437.362,-0.691],[437.653,8.291],[437.947,17.273],[438.77,26.21],[439.939,35.121],[441.105,44.031],[442.987,52.812],[445.022,61.566],[447.074,70.312],[449.819,78.87],[452.649,87.395],[455.956,95.753],[459.333,104.08],[462.911,112.322],[466.488,120.566],[470.069,128.808],[473.646,137.052],[476.823,145.458],[479.994,153.865],[483.165,162.275],[485.521,170.943],[487.84,179.627],[490.138,188.313],[491.568,197.184],[492.998,206.056],[494.27,214.945],[494.799,223.917],[495.326,232.887],[495.497,241.861],[495.123,250.838],[494.752,259.818],[493.783,268.742],[492.524,277.641],[491.267,286.538],[489.162,295.274],[487.047,304.008],[484.661,312.664],[481.725,321.156],[478.787,329.649],[475.315,337.926],[471.599,346.11],[467.838,354.267],[463.39,362.077],[458.944,369.885],[454.19,377.502],[449.059,384.879],[443.925,392.255],[438.263,399.227],[432.497,406.117],[426.596,412.888],[420.241,419.241],[413.888,425.596],[407.202,431.588],[400.31,437.356],[393.415,443.119],[386.039,448.252],[378.663,453.383],[371.113,458.243],[363.305,462.691],[355.498,467.14],[347.396,471.016],[339.215,474.732],[330.985,478.327],[322.492,481.265],[314,484.2],[305.381,486.714],[296.648,488.832],[287.914,490.947],[279.04,492.327],[270.143,493.586],[261.231,494.693],[252.252,495.067],[243.275,495.44],[234.298,495.41],[225.328,494.883],[216.356,494.354],[207.452,493.225],[198.581,491.795],[189.709,490.365],[180.993,488.207],[172.309,485.889],[163.628,483.573],[155.188,480.495],[146.781,477.323],[138.373,474.152],[130.106,470.634],[121.862,467.057],[113.62,463.476],[105.376,459.899],[97.036,456.559],[88.626,453.39],[80.216,450.224],[71.603,447.695],[62.922,445.374],[54.241,443.054],[45.382,441.553],[36.515,440.095],[27.631,438.781],[18.664,438.196],[9.697,437.612],[0.723,437.363],[-8.259,437.654],[-17.239,437.948],[-26.178,438.768],[-35.088,439.935],[-43.999,441.104],[-52.781,442.981],[-61.534,445.016],[-70.283,447.065],[-78.839,449.81],[-87.367,452.638],[-95.721,455.945],[-104.048,459.319],[-112.293,462.897],[-120.535,466.477],[-128.779,470.055],[-137.021,473.633],[-145.429,476.811],[-153.836,479.983],[-162.243,483.154],[-170.912,485.515],[-179.595,487.831],[-188.281,490.134],[-197.153,491.564],[-206.025,492.994],[-214.914,494.269],[-223.883,494.798],[-232.855,495.325],[-241.827,495.501],[-250.807,495.127],[-259.786,494.753],[-268.711,493.789],[-277.607,492.53],[-286.507,491.273],[-295.243,489.173],[-303.976,487.056],[-312.632,484.674],[-321.125,481.737],[-329.618,478.801],[-337.897,475.331],[-346.079,471.615],[-354.241,467.854],[-362.048,463.409],[-369.856,458.96],[-377.473,454.211],[-384.85,449.078],[-392.229,443.947],[-399.201,438.287],[-406.093,432.518],[-412.865,426.62],[-419.22,420.265],[-425.572,413.912],[-431.566,407.228],[-437.334,400.336],[-443.1,393.444],[-448.231,386.068],[-453.364,378.689],[-458.226,371.145],[-462.675,363.334],[-467.123,355.526],[-471.002,347.428],[-474.718,339.246],[-478.316,331.017],[-481.254,322.524],[-484.192,314.031],[-486.708,305.415],[-488.823,296.682],[-490.941,287.948],[-492.323,279.074],[-493.582,270.177],[-494.694,261.265],[-495.068,252.286],[-495.439,243.309],[-495.417,234.332],[-494.887,225.362],[-494.36,216.39],[-493.234,207.486],[-491.804,198.614],[-490.374,189.743],[-488.218,181.024],[-485.9,172.343],[-483.584,163.66],[-480.511,155.22],[-477.34,146.812],[-474.168,138.405],[-470.651,130.138],[-467.07,121.896],[-463.49,113.652],[-459.91,105.41],[-456.568,97.072],[-453.402,88.66],[-450.235,80.25],[-447.704,71.637],[-445.383,62.956],[-443.062,54.275],[-441.562,45.416],[-440.104,36.549],[-438.785,27.665],[-438.2,18.698],[-437.618,9.731],[-437.365,0.759],[-437.658,-8.223],[-437.949,-17.205],[-438.767,-26.145],[-439.934,-35.054],[-441.103,-43.963],[-442.977,-52.747],[-445.012,-61.498],[-447.059,-70.249],[-449.804,-78.805],[-452.631,-87.333],[-455.936,-95.69],[-459.31,-104.017],[-462.891,-112.259],[-466.468,-120.503],[-470.046,-128.745],[-473.684,-137.12],[-476.855,-145.53],[-480.027,-153.938],[-483.198,-162.345],[-485.546,-171.019],[-487.865,-179.699],[-490.153,-188.388],[-491.583,-197.26],[-493.013,-206.131],[-494.277,-215.023],[-494.807,-223.993],[-495.334,-232.965],[-495.497,-241.936],[-495.123,-250.916],[-494.752,-259.896],[-493.776,-268.817],[-492.516,-277.717],[-491.259,-286.613],[-489.149,-295.349],[-487.032,-304.083],[-484.641,-312.734],[-481.703,-321.227],[-478.767,-329.722],[-475.287,-337.996],[-471.572,-346.181],[-467.803,-354.335],[-463.357,-362.143],[-458.909,-369.953],[-454.149,-377.565],[-449.019,-384.941],[-443.885,-392.318],[-438.218,-399.285],[-432.452,-406.177],[-426.546,-412.944],[-420.193,-419.296],[-413.838,-425.652],[-407.147,-431.638],[-400.257,-437.406],[-393.358,-443.164],[-385.981,-448.295],[-378.605,-453.428],[-371.053,-458.283],[-363.245,-462.731],[-355.435,-467.177],[-347.334,-471.048],[-339.149,-474.764],[-330.917,-478.354],[-322.425,-481.29],[-313.932,-484.228],[-305.314,-486.734],[-296.58,-488.852],[-287.846,-490.967],[-278.97,-492.342],[-270.073,-493.599],[-261.161,-494.7],[-252.182,-495.072],[-243.202,-495.445],[-234.228,-495.41],[-225.258,-494.883],[-216.286,-494.354],[-207.382,-493.217],[-198.51,-491.787],[-189.639,-490.357],[-180.925,-488.192],[-172.242,-485.874],[-163.558,-483.558],[-155.123,-480.475],[-146.716,-477.301],[-138.306,-474.129],[-130.041,-470.609],[-121.797,-467.029],[-113.555,-463.449],[-105.313,-459.871],[-96.971,-456.534],[-88.561,-453.368],[-80.151,-450.199],[-71.535,-447.678],[-62.854,-445.357],[-54.171,-443.036],[-45.312,-441.543],[-36.445,-440.086],[-27.561,-438.778],[-18.594,-438.194],[-9.624,-437.609]],"c":true}]},{"i":{"x":0,"y":1},"o":{"x":0.05,"y":0},"t":398,"s":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-0.166,-494.001],[7.12,-493.774],[14.408,-493.545],[21.649,-492.74],[28.884,-491.832],[36.083,-490.728],[43.201,-489.145],[50.316,-487.56],[57.326,-485.578],[64.297,-483.437],[71.118,-480.865],[77.874,-478.138],[84.452,-474.996],[90.937,-471.679],[97.177,-467.909],[103.351,-464.041],[109.218,-459.713],[115.084,-455.382],[120.918,-451.015],[126.346,-446.147],[131.773,-441.278],[137.2,-436.408],[142.626,-431.541],[148.053,-426.671],[153.481,-421.804],[158.906,-416.935],[164.135,-411.855],[169.32,-406.728],[174.504,-401.604],[179.687,-396.478],[184.872,-391.352],[190.056,-386.225],[195.241,-381.101],[200.426,-375.975],[205.61,-370.849],[210.795,-365.722],[215.952,-360.568],[221.106,-355.413],[226.261,-350.259],[231.417,-345.102],[236.572,-339.948],[241.726,-334.793],[246.883,-329.637],[252.037,-324.482],[257.192,-319.328],[262.348,-314.171],[267.503,-309.017],[272.66,-303.86],[277.814,-298.706],[282.968,-293.551],[288.125,-288.395],[293.279,-283.24],[298.434,-278.086],[303.591,-272.929],[308.745,-267.775],[313.899,-262.62],[319.056,-257.464],[324.21,-252.309],[329.367,-247.155],[334.522,-241.998],[339.676,-236.844],[344.833,-231.687],[349.987,-226.533],[355.141,-221.378],[360.298,-216.222],[365.453,-211.067],[370.493,-205.798],[375.53,-200.53],[380.57,-195.261],[385.608,-189.99],[390.646,-184.721],[395.683,-179.452],[400.723,-174.181],[405.761,-168.912],[410.798,-163.644],[415.836,-158.372],[420.876,-153.104],[425.914,-147.835],[430.952,-142.564],[435.991,-137.295],[441.029,-132.026],[446.067,-126.755],[450.661,-121.106],[455.085,-115.312],[459.508,-109.516],[463.855,-103.668],[467.716,-97.482],[471.57,-91.295],[474.768,-84.743],[477.969,-78.192],[480.665,-71.43],[483.133,-64.569],[485.537,-57.689],[487.344,-50.625],[489.151,-43.564],[490.61,-36.427],[491.744,-29.226],[492.879,-22.024],[493.364,-14.752],[493.82,-7.476],[494.002,-0.195],[493.775,7.093],[493.546,14.379],[492.743,21.622],[491.835,28.854],[490.734,36.056],[489.151,43.171],[487.566,50.289],[485.586,57.299],[483.445,64.27],[480.873,71.091],[478.151,77.849],[475.007,84.427],[471.692,90.913],[467.924,97.152],[464.056,103.329],[459.728,109.196],[455.4,115.062],[451.034,120.898],[446.165,126.326],[441.295,131.751],[436.428,137.178],[431.558,142.606],[426.691,148.031],[421.822,153.458],[416.954,158.886],[411.875,164.115],[406.748,169.3],[401.624,174.482],[396.498,179.667],[391.371,184.852],[386.245,190.036],[381.119,195.221],[375.995,200.406],[370.868,205.591],[365.742,210.775],[360.587,215.932],[355.433,221.086],[350.279,226.241],[345.122,231.398],[339.968,236.552],[334.813,241.706],[329.657,246.863],[324.502,252.017],[319.348,257.172],[314.191,262.328],[309.037,267.483],[303.88,272.637],[298.726,277.794],[293.571,282.948],[288.414,288.105],[283.26,293.259],[278.106,298.414],[272.949,303.571],[267.795,308.725],[262.64,313.879],[257.483,319.036],[252.329,324.19],[247.172,329.345],[242.018,334.502],[236.864,339.656],[231.707,344.813],[226.553,349.967],[221.398,355.121],[216.241,360.278],[211.005,365.514],[205.734,370.554],[200.465,375.592],[195.197,380.63],[189.926,385.667],[184.657,390.707],[179.388,395.745],[174.117,400.783],[168.848,405.82],[163.577,410.86],[158.308,415.898],[153.04,420.936],[147.768,425.973],[142.5,431.013],[137.231,436.051],[131.96,441.089],[126.691,446.129],[121.035,450.713],[115.238,455.137],[109.444,459.561],[103.59,463.901],[97.406,467.759],[91.212,471.606],[84.662,474.805],[78.112,478.005],[71.344,480.692],[64.484,483.159],[57.602,485.559],[50.538,487.366],[43.476,489.173],[36.34,490.623],[29.138,491.759],[21.936,492.894],[14.662,493.37],[7.386,493.825],[0.105,494.001],[-7.183,493.772],[-14.469,493.545],[-21.71,492.733],[-28.944,491.825],[-36.144,490.716],[-43.259,489.133],[-50.377,487.548],[-57.387,485.562],[-64.355,483.421],[-71.176,480.846],[-77.93,478.115],[-84.508,474.973],[-90.991,471.648],[-97.231,467.881],[-103.403,464.006],[-109.269,459.678],[-115.136,455.35],[-120.967,450.977],[-126.392,446.108],[-131.82,441.24],[-137.247,436.373],[-142.675,431.504],[-148.1,426.636],[-153.527,421.767],[-158.955,416.899],[-164.179,411.817],[-169.364,406.691],[-174.549,401.565],[-179.733,396.441],[-184.918,391.314],[-190.103,386.188],[-195.288,381.062],[-200.472,375.937],[-205.657,370.811],[-210.842,365.685],[-215.996,360.53],[-221.153,355.376],[-226.307,350.219],[-231.462,345.065],[-236.619,339.908],[-241.773,334.754],[-246.927,329.599],[-252.084,324.443],[-257.238,319.288],[-262.393,314.132],[-267.547,308.977],[-272.704,303.823],[-277.858,298.666],[-283.013,293.512],[-288.169,288.355],[-293.324,283.201],[-298.478,278.044],[-303.635,272.889],[-308.789,267.735],[-313.944,262.578],[-319.098,257.424],[-324.255,252.267],[-329.409,247.113],[-334.564,241.956],[-339.72,236.802],[-344.875,231.647],[-350.029,226.491],[-355.186,221.336],[-360.34,216.18],[-365.495,211.025],[-370.535,205.756],[-375.572,200.488],[-380.61,195.216],[-385.65,189.948],[-390.688,184.679],[-395.725,179.408],[-400.765,174.139],[-405.803,168.87],[-410.84,163.599],[-415.88,158.331],[-420.918,153.062],[-425.956,147.793],[-430.993,142.522],[-436.033,137.253],[-441.071,131.984],[-446.109,126.713],[-450.698,121.059],[-455.122,115.265],[-459.546,109.469],[-463.888,103.616],[-467.747,97.433],[-471.596,91.242],[-474.794,84.689],[-477.992,78.139],[-480.684,71.371],[-483.151,64.513],[-485.551,57.631],[-487.358,50.567],[-489.167,43.505],[-490.619,36.369],[-491.754,29.167],[-492.888,21.966],[-493.369,14.692],[-493.824,7.415],[-494.002,0.134],[-493.773,-7.151],[-493.546,-14.44],[-492.739,-21.681],[-491.828,-28.915],[-490.722,-36.115],[-489.139,-43.23],[-487.554,-50.347],[-485.57,-57.358],[-483.431,-64.328],[-480.857,-71.147],[-478.128,-77.903],[-474.986,-84.484],[-471.666,-90.966],[-467.898,-97.206],[-464.028,-103.378],[-459.697,-109.245],[-455.369,-115.111],[-450.999,-120.945],[-446.13,-126.37],[-441.26,-131.798],[-436.393,-137.223],[-431.523,-142.65],[-426.654,-148.075],[-421.787,-153.503],[-416.917,-158.93],[-411.835,-164.157],[-406.711,-169.34],[-401.585,-174.524],[-396.458,-179.709],[-391.332,-184.894],[-386.205,-190.078],[-381.081,-195.263],[-375.955,-200.448],[-370.829,-205.63],[-365.702,-210.815],[-360.548,-215.972],[-355.393,-221.129],[-350.239,-226.283],[-345.082,-231.437],[-339.928,-236.594],[-334.774,-241.748],[-329.617,-246.905],[-324.462,-252.06],[-319.308,-257.214],[-314.154,-262.371],[-308.997,-267.525],[-303.843,-272.682],[-298.688,-277.836],[-293.532,-282.993],[-288.377,-288.147],[-283.223,-293.302],[-278.066,-298.458],[-272.912,-303.613],[-267.757,-308.769],[-262.603,-313.924],[-257.446,-319.081],[-252.292,-324.235],[-247.137,-329.389],[-241.981,-334.546],[-236.826,-339.7],[-231.672,-344.857],[-226.515,-350.011],[-221.361,-355.166],[-216.206,-360.323],[-211.052,-365.477],[-205.781,-370.517],[-200.512,-375.555],[-195.243,-380.592],[-189.972,-385.632],[-184.703,-390.67],[-179.435,-395.708],[-174.164,-400.745],[-168.895,-405.783],[-163.624,-410.823],[-158.355,-415.861],[-153.086,-420.898],[-147.815,-425.936],[-142.546,-430.976],[-137.275,-436.014],[-132.006,-441.051],[-126.738,-446.089],[-121.084,-450.681],[-115.29,-455.105],[-109.493,-459.528],[-103.643,-463.87],[-97.459,-467.731],[-91.269,-471.583],[-84.718,-474.781],[-78.168,-477.982],[-71.403,-480.676],[-64.542,-483.143],[-57.662,-485.545],[-50.598,-487.352],[-43.534,-489.159],[-36.4,-490.616],[-29.199,-491.75],[-21.997,-492.885],[-14.723,-493.368],[-7.447,-493.823]],"c":true}]},{"i":{"x":0,"y":1},"o":{"x":0.05,"y":0},"t":456,"s":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-0.166,-494.001],[7.12,-493.774],[14.408,-493.545],[21.649,-492.74],[28.884,-491.832],[36.083,-490.728],[43.201,-489.145],[50.316,-487.56],[57.326,-485.578],[64.297,-483.437],[71.118,-480.865],[77.874,-478.138],[84.452,-474.996],[90.937,-471.679],[97.177,-467.909],[103.351,-464.041],[109.218,-459.713],[115.084,-455.382],[120.918,-451.015],[126.346,-446.147],[131.773,-441.278],[137.2,-436.408],[142.626,-431.541],[148.053,-426.671],[153.481,-421.804],[158.906,-416.935],[164.135,-411.855],[169.32,-406.728],[174.504,-401.604],[179.687,-396.478],[184.872,-391.352],[190.056,-386.225],[195.241,-381.101],[200.426,-375.975],[205.61,-370.849],[210.795,-365.722],[215.952,-360.568],[221.106,-355.413],[226.261,-350.259],[231.417,-345.102],[236.572,-339.948],[241.726,-334.793],[246.883,-329.637],[252.037,-324.482],[257.192,-319.328],[262.348,-314.171],[267.503,-309.017],[272.66,-303.86],[277.814,-298.706],[282.968,-293.551],[288.125,-288.395],[293.279,-283.24],[298.434,-278.086],[303.591,-272.929],[308.745,-267.775],[313.899,-262.62],[319.056,-257.464],[324.21,-252.309],[329.367,-247.155],[334.522,-241.998],[339.676,-236.844],[344.833,-231.687],[349.987,-226.533],[355.141,-221.378],[360.298,-216.222],[365.453,-211.067],[370.493,-205.798],[375.53,-200.53],[380.57,-195.261],[385.608,-189.99],[390.646,-184.721],[395.683,-179.452],[400.723,-174.181],[405.761,-168.912],[410.798,-163.644],[415.836,-158.372],[420.876,-153.104],[425.914,-147.835],[430.952,-142.564],[435.991,-137.295],[441.029,-132.026],[446.067,-126.755],[450.661,-121.106],[455.085,-115.312],[459.508,-109.516],[463.855,-103.668],[467.716,-97.482],[471.57,-91.295],[474.768,-84.743],[477.969,-78.192],[480.665,-71.43],[483.133,-64.569],[485.537,-57.689],[487.344,-50.625],[489.151,-43.564],[490.61,-36.427],[491.744,-29.226],[492.879,-22.024],[493.364,-14.752],[493.82,-7.476],[494.002,-0.195],[493.775,7.093],[493.546,14.379],[492.743,21.622],[491.835,28.854],[490.734,36.056],[489.151,43.171],[487.566,50.289],[485.586,57.299],[483.445,64.27],[480.873,71.091],[478.151,77.849],[475.007,84.427],[471.692,90.913],[467.924,97.152],[464.056,103.329],[459.728,109.196],[455.4,115.062],[451.034,120.898],[446.165,126.326],[441.295,131.751],[436.428,137.178],[431.558,142.606],[426.691,148.031],[421.822,153.458],[416.954,158.886],[411.875,164.115],[406.748,169.3],[401.624,174.482],[396.498,179.667],[391.371,184.852],[386.245,190.036],[381.119,195.221],[375.995,200.406],[370.868,205.591],[365.742,210.775],[360.587,215.932],[355.433,221.086],[350.279,226.241],[345.122,231.398],[339.968,236.552],[334.813,241.706],[329.657,246.863],[324.502,252.017],[319.348,257.172],[314.191,262.328],[309.037,267.483],[303.88,272.637],[298.726,277.794],[293.571,282.948],[288.414,288.105],[283.26,293.259],[278.106,298.414],[272.949,303.571],[267.795,308.725],[262.64,313.879],[257.483,319.036],[252.329,324.19],[247.172,329.345],[242.018,334.502],[236.864,339.656],[231.707,344.813],[226.553,349.967],[221.398,355.121],[216.241,360.278],[211.005,365.514],[205.734,370.554],[200.465,375.592],[195.197,380.63],[189.926,385.667],[184.657,390.707],[179.388,395.745],[174.117,400.783],[168.848,405.82],[163.577,410.86],[158.308,415.898],[153.04,420.936],[147.768,425.973],[142.5,431.013],[137.231,436.051],[131.96,441.089],[126.691,446.129],[121.035,450.713],[115.238,455.137],[109.444,459.561],[103.59,463.901],[97.406,467.759],[91.212,471.606],[84.662,474.805],[78.112,478.005],[71.344,480.692],[64.484,483.159],[57.602,485.559],[50.538,487.366],[43.476,489.173],[36.34,490.623],[29.138,491.759],[21.936,492.894],[14.662,493.37],[7.386,493.825],[0.105,494.001],[-7.183,493.772],[-14.469,493.545],[-21.71,492.733],[-28.944,491.825],[-36.144,490.716],[-43.259,489.133],[-50.377,487.548],[-57.387,485.562],[-64.355,483.421],[-71.176,480.846],[-77.93,478.115],[-84.508,474.973],[-90.991,471.648],[-97.231,467.881],[-103.403,464.006],[-109.269,459.678],[-115.136,455.35],[-120.967,450.977],[-126.392,446.108],[-131.82,441.24],[-137.247,436.373],[-142.675,431.504],[-148.1,426.636],[-153.527,421.767],[-158.955,416.899],[-164.179,411.817],[-169.364,406.691],[-174.549,401.565],[-179.733,396.441],[-184.918,391.314],[-190.103,386.188],[-195.288,381.062],[-200.472,375.937],[-205.657,370.811],[-210.842,365.685],[-215.996,360.53],[-221.153,355.376],[-226.307,350.219],[-231.462,345.065],[-236.619,339.908],[-241.773,334.754],[-246.927,329.599],[-252.084,324.443],[-257.238,319.288],[-262.393,314.132],[-267.547,308.977],[-272.704,303.823],[-277.858,298.666],[-283.013,293.512],[-288.169,288.355],[-293.324,283.201],[-298.478,278.044],[-303.635,272.889],[-308.789,267.735],[-313.944,262.578],[-319.098,257.424],[-324.255,252.267],[-329.409,247.113],[-334.564,241.956],[-339.72,236.802],[-344.875,231.647],[-350.029,226.491],[-355.186,221.336],[-360.34,216.18],[-365.495,211.025],[-370.535,205.756],[-375.572,200.488],[-380.61,195.216],[-385.65,189.948],[-390.688,184.679],[-395.725,179.408],[-400.765,174.139],[-405.803,168.87],[-410.84,163.599],[-415.88,158.331],[-420.918,153.062],[-425.956,147.793],[-430.993,142.522],[-436.033,137.253],[-441.071,131.984],[-446.109,126.713],[-450.698,121.059],[-455.122,115.265],[-459.546,109.469],[-463.888,103.616],[-467.747,97.433],[-471.596,91.242],[-474.794,84.689],[-477.992,78.139],[-480.684,71.371],[-483.151,64.513],[-485.551,57.631],[-487.358,50.567],[-489.167,43.505],[-490.619,36.369],[-491.754,29.167],[-492.888,21.966],[-493.369,14.692],[-493.824,7.415],[-494.002,0.134],[-493.773,-7.151],[-493.546,-14.44],[-492.739,-21.681],[-491.828,-28.915],[-490.722,-36.115],[-489.139,-43.23],[-487.554,-50.347],[-485.57,-57.358],[-483.431,-64.328],[-480.857,-71.147],[-478.128,-77.903],[-474.986,-84.484],[-471.666,-90.966],[-467.898,-97.206],[-464.028,-103.378],[-459.697,-109.245],[-455.369,-115.111],[-450.999,-120.945],[-446.13,-126.37],[-441.26,-131.798],[-436.393,-137.223],[-431.523,-142.65],[-426.654,-148.075],[-421.787,-153.503],[-416.917,-158.93],[-411.835,-164.157],[-406.711,-169.34],[-401.585,-174.524],[-396.458,-179.709],[-391.332,-184.894],[-386.205,-190.078],[-381.081,-195.263],[-375.955,-200.448],[-370.829,-205.63],[-365.702,-210.815],[-360.548,-215.972],[-355.393,-221.129],[-350.239,-226.283],[-345.082,-231.437],[-339.928,-236.594],[-334.774,-241.748],[-329.617,-246.905],[-324.462,-252.06],[-319.308,-257.214],[-314.154,-262.371],[-308.997,-267.525],[-303.843,-272.682],[-298.688,-277.836],[-293.532,-282.993],[-288.377,-288.147],[-283.223,-293.302],[-278.066,-298.458],[-272.912,-303.613],[-267.757,-308.769],[-262.603,-313.924],[-257.446,-319.081],[-252.292,-324.235],[-247.137,-329.389],[-241.981,-334.546],[-236.826,-339.7],[-231.672,-344.857],[-226.515,-350.011],[-221.361,-355.166],[-216.206,-360.323],[-211.052,-365.477],[-205.781,-370.517],[-200.512,-375.555],[-195.243,-380.592],[-189.972,-385.632],[-184.703,-390.67],[-179.435,-395.708],[-174.164,-400.745],[-168.895,-405.783],[-163.624,-410.823],[-158.355,-415.861],[-153.086,-420.898],[-147.815,-425.936],[-142.546,-430.976],[-137.275,-436.014],[-132.006,-441.051],[-126.738,-446.089],[-121.084,-450.681],[-115.29,-455.105],[-109.493,-459.528],[-103.643,-463.87],[-97.459,-467.731],[-91.269,-471.583],[-84.718,-474.781],[-78.168,-477.982],[-71.403,-480.676],[-64.542,-483.143],[-57.662,-485.545],[-50.598,-487.352],[-43.534,-489.159],[-36.4,-490.616],[-29.199,-491.75],[-21.997,-492.885],[-14.723,-493.368],[-7.447,-493.823]],"c":true}]},{"i":{"x":0,"y":1},"o":{"x":0.05,"y":0},"t":486,"s":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[1.906,-488.758],[9.421,-487.243],[16.936,-485.728],[24.451,-484.213],[31.966,-482.698],[39.333,-480.59],[46.677,-478.385],[54.02,-476.18],[61.363,-473.975],[68.706,-471.77],[75.88,-469.081],[82.983,-466.201],[90.087,-463.319],[97.193,-460.436],[104.297,-457.556],[111.241,-454.323],[118.039,-450.782],[124.84,-447.241],[131.641,-443.702],[138.442,-440.161],[145.129,-436.429],[151.56,-432.254],[157.991,-428.079],[164.422,-423.907],[170.853,-419.732],[177.281,-415.554],[183.356,-410.878],[189.431,-406.2],[195.508,-401.524],[201.409,-396.642],[207.087,-391.489],[212.765,-386.336],[218.443,-381.184],[224.118,-376.031],[229.796,-370.878],[235.22,-365.461],[240.642,-360.04],[246.063,-354.618],[251.485,-349.197],[256.906,-343.775],[262.328,-338.354],[267.749,-332.932],[273.171,-327.513],[278.592,-322.092],[284.011,-316.671],[289.433,-311.249],[294.854,-305.828],[300.276,-300.406],[305.697,-294.985],[311.118,-289.563],[316.54,-284.142],[321.961,-278.72],[327.383,-273.299],[332.804,-267.88],[338.226,-262.458],[343.645,-257.037],[349.066,-251.615],[354.488,-246.194],[359.909,-240.772],[365.331,-235.351],[370.752,-229.929],[375.907,-224.256],[381.06,-218.578],[386.213,-212.9],[391.366,-207.222],[396.516,-201.547],[401.359,-195.612],[405.938,-189.462],[410.515,-183.315],[415.094,-177.165],[419.674,-171.015],[424.132,-164.785],[428.099,-158.223],[432.066,-151.662],[436.03,-145.1],[439.997,-138.539],[443.964,-131.978],[447.335,-125.097],[450.658,-118.187],[453.981,-111.277],[457.304,-104.369],[460.628,-97.459],[463.476,-90.348],[466.136,-83.158],[468.794,-75.967],[471.451,-68.776],[474.109,-61.583],[476.396,-54.274],[478.371,-46.868],[480.348,-39.459],[482.323,-32.051],[484.301,-24.645],[485.992,-17.176],[487.277,-9.617],[488.56,-2.058],[489.845,5.5],[491.128,13.059],[492.207,20.644],[492.793,28.287],[493.377,35.933],[493.962,43.576],[494.546,51.222],[495.001,58.87],[494.882,66.535],[494.766,74.203],[494.65,81.868],[494.531,89.533],[494.354,97.196],[493.536,104.819],[492.718,112.441],[491.9,120.065],[491.082,127.689],[490.264,135.31],[488.766,142.828],[487.248,150.345],[485.733,157.86],[484.218,165.375],[482.703,172.89],[480.597,180.258],[478.392,187.601],[476.188,194.944],[473.983,202.287],[471.778,209.63],[469.094,216.804],[466.211,223.908],[463.331,231.014],[460.448,238.117],[457.566,245.223],[454.337,252.167],[450.796,258.966],[447.255,265.767],[443.714,272.568],[440.173,279.369],[436.444,286.059],[432.269,292.489],[428.096,298.92],[423.921,305.351],[419.749,311.781],[415.571,318.21],[410.895,324.285],[406.219,330.362],[401.541,336.437],[396.661,342.34],[391.509,348.018],[386.356,353.696],[381.203,359.372],[376.05,365.05],[370.815,370.817],[365.139,375.97],[359.461,381.123],[353.783,386.276],[348.105,391.429],[342.43,396.579],[336.49,401.415],[330.34,405.994],[324.19,410.573],[318.04,415.15],[311.893,419.729],[305.658,424.182],[299.097,428.147],[292.535,432.114],[285.974,436.078],[279.412,440.045],[272.851,444.012],[265.965,447.376],[259.055,450.699],[252.145,454.022],[245.238,457.345],[238.328,460.668],[231.215,463.51],[224.024,466.167],[216.831,468.827],[209.64,471.485],[202.449,474.142],[195.138,476.42],[187.729,478.397],[180.323,480.372],[172.915,482.349],[165.506,484.324],[158.035,486.011],[150.476,487.294],[142.917,488.577],[135.359,489.862],[127.8,491.145],[120.217,492.217],[112.572,492.8],[104.928,493.386],[97.283,493.972],[89.639,494.555],[81.989,495],[74.324,494.884],[66.659,494.766],[58.991,494.649],[51.326,494.533],[43.663,494.347],[36.042,493.529],[28.418,492.711],[20.796,491.893],[13.173,491.075],[5.549,490.257],[-1.966,488.749],[-9.484,487.234],[-16.999,485.718],[-24.514,484.203],[-32.029,482.686],[-39.396,480.575],[-46.737,478.371],[-54.08,476.166],[-61.423,473.961],[-68.767,471.754],[-75.938,469.062],[-83.042,466.18],[-90.148,463.299],[-97.251,460.417],[-104.357,457.534],[-111.296,454.296],[-118.097,450.757],[-124.898,447.216],[-131.697,443.676],[-138.498,440.135],[-145.183,436.398],[-151.613,432.223],[-158.044,428.05],[-164.477,423.875],[-170.908,419.702],[-177.332,415.518],[-183.406,410.842],[-189.484,406.166],[-195.559,401.49],[-201.457,396.601],[-207.135,391.45],[-212.813,386.298],[-218.489,381.145],[-224.167,375.992],[-229.845,370.839],[-235.266,365.42],[-240.688,359.999],[-246.109,354.577],[-251.531,349.156],[-256.952,343.734],[-262.374,338.313],[-267.795,332.894],[-273.216,327.472],[-278.638,322.051],[-284.057,316.629],[-289.478,311.208],[-294.9,305.786],[-300.321,300.365],[-305.743,294.943],[-311.164,289.522],[-316.586,284.101],[-322.007,278.679],[-327.429,273.26],[-332.85,267.839],[-338.272,262.417],[-343.691,256.996],[-349.112,251.574],[-354.534,246.153],[-359.955,240.731],[-365.377,235.31],[-370.798,229.888],[-375.951,224.213],[-381.104,218.535],[-386.257,212.857],[-391.409,207.181],[-396.56,201.503],[-401.398,195.566],[-405.977,189.416],[-410.554,183.266],[-415.133,177.116],[-419.712,170.969],[-424.166,164.734],[-428.132,158.175],[-432.099,151.613],[-436.064,145.052],[-440.031,138.49],[-443.998,131.929],[-447.364,125.043],[-450.687,118.134],[-454.01,111.226],[-457.333,104.316],[-460.656,97.406],[-463.5,90.295],[-466.158,83.102],[-468.818,75.911],[-471.475,68.721],[-474.133,61.53],[-476.413,54.218],[-478.39,46.81],[-480.365,39.404],[-482.342,31.995],[-484.317,24.587],[-486.007,17.118],[-487.289,9.559],[-488.572,2],[-489.857,-5.558],[-491.14,-13.117],[-492.215,-20.702],[-492.798,-28.348],[-493.384,-35.991],[-493.969,-43.637],[-494.553,-51.28],[-495,-58.928],[-494.884,-66.596],[-494.768,-74.261],[-494.65,-81.926],[-494.533,-89.593],[-494.352,-97.254],[-493.534,-104.877],[-492.716,-112.499],[-491.895,-120.123],[-491.077,-127.747],[-490.259,-135.368],[-488.756,-142.886],[-487.239,-150.401],[-485.723,-157.918],[-484.208,-165.433],[-482.693,-172.948],[-480.583,-180.316],[-478.378,-187.659],[-476.173,-195],[-473.968,-202.343],[-471.763,-209.686],[-469.072,-216.86],[-466.192,-223.963],[-463.309,-231.067],[-460.426,-238.173],[-457.546,-245.277],[-454.31,-252.218],[-450.77,-259.019],[-447.229,-265.82],[-443.688,-272.619],[-440.149,-279.42],[-436.412,-286.107],[-432.24,-292.538],[-428.065,-298.968],[-423.892,-305.399],[-419.717,-311.83],[-415.537,-318.256],[-410.859,-324.331],[-406.183,-330.408],[-401.507,-336.483],[-396.62,-342.384],[-391.47,-348.062],[-386.317,-353.737],[-381.164,-359.415],[-376.011,-365.093],[-370.859,-370.771],[-365.185,-375.927],[-359.51,-381.079],[-353.832,-386.232],[-348.154,-391.385],[-342.476,-396.535],[-336.541,-401.376],[-330.394,-405.955],[-324.244,-410.532],[-318.094,-415.111],[-311.944,-419.69],[-305.714,-424.146],[-299.152,-428.113],[-292.591,-432.08],[-286.03,-436.044],[-279.468,-440.011],[-272.907,-443.978],[-266.023,-447.347],[-259.113,-450.67],[-252.203,-453.993],[-245.296,-457.316],[-238.386,-460.639],[-231.275,-463.486],[-224.084,-466.146],[-216.891,-468.803],[-209.701,-471.461],[-202.51,-474.118],[-195.198,-476.403],[-187.792,-478.378],[-180.384,-480.355],[-172.975,-482.33],[-165.569,-484.308],[-158.097,-485.997],[-150.539,-487.282],[-142.98,-488.565],[-135.422,-489.85],[-127.863,-491.133],[-120.28,-492.21],[-112.635,-492.793],[-104.991,-493.379],[-97.346,-493.965],[-89.702,-494.548],[-82.054,-495.001],[-74.387,-494.882],[-66.721,-494.766],[-59.056,-494.647],[-51.389,-494.531],[-43.729,-494.352],[-36.105,-493.534],[-28.481,-492.716],[-20.859,-491.898],[-13.235,-491.079],[-5.614,-490.262]],"c":true}]},{"i":{"x":0,"y":1},"o":{"x":0.05,"y":0},"t":548,"s":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[1.906,-488.758],[9.421,-487.243],[16.936,-485.728],[24.451,-484.213],[31.966,-482.698],[39.333,-480.59],[46.677,-478.385],[54.02,-476.18],[61.363,-473.975],[68.706,-471.77],[75.88,-469.081],[82.983,-466.201],[90.087,-463.319],[97.193,-460.436],[104.297,-457.556],[111.241,-454.323],[118.039,-450.782],[124.84,-447.241],[131.641,-443.702],[138.442,-440.161],[145.129,-436.429],[151.56,-432.254],[157.991,-428.079],[164.422,-423.907],[170.853,-419.732],[177.281,-415.554],[183.356,-410.878],[189.431,-406.2],[195.508,-401.524],[201.409,-396.642],[207.087,-391.489],[212.765,-386.336],[218.443,-381.184],[224.118,-376.031],[229.796,-370.878],[235.22,-365.461],[240.642,-360.04],[246.063,-354.618],[251.485,-349.197],[256.906,-343.775],[262.328,-338.354],[267.749,-332.932],[273.171,-327.513],[278.592,-322.092],[284.011,-316.671],[289.433,-311.249],[294.854,-305.828],[300.276,-300.406],[305.697,-294.985],[311.118,-289.563],[316.54,-284.142],[321.961,-278.72],[327.383,-273.299],[332.804,-267.88],[338.226,-262.458],[343.645,-257.037],[349.066,-251.615],[354.488,-246.194],[359.909,-240.772],[365.331,-235.351],[370.752,-229.929],[375.907,-224.256],[381.06,-218.578],[386.213,-212.9],[391.366,-207.222],[396.516,-201.547],[401.359,-195.612],[405.938,-189.462],[410.515,-183.315],[415.094,-177.165],[419.674,-171.015],[424.132,-164.785],[428.099,-158.223],[432.066,-151.662],[436.03,-145.1],[439.997,-138.539],[443.964,-131.978],[447.335,-125.097],[450.658,-118.187],[453.981,-111.277],[457.304,-104.369],[460.628,-97.459],[463.476,-90.348],[466.136,-83.158],[468.794,-75.967],[471.451,-68.776],[474.109,-61.583],[476.396,-54.274],[478.371,-46.868],[480.348,-39.459],[482.323,-32.051],[484.301,-24.645],[485.992,-17.176],[487.277,-9.617],[488.56,-2.058],[489.845,5.5],[491.128,13.059],[492.207,20.644],[492.793,28.287],[493.377,35.933],[493.962,43.576],[494.546,51.222],[495.001,58.87],[494.882,66.535],[494.766,74.203],[494.65,81.868],[494.531,89.533],[494.354,97.196],[493.536,104.819],[492.718,112.441],[491.9,120.065],[491.082,127.689],[490.264,135.31],[488.766,142.828],[487.248,150.345],[485.733,157.86],[484.218,165.375],[482.703,172.89],[480.597,180.258],[478.392,187.601],[476.188,194.944],[473.983,202.287],[471.778,209.63],[469.094,216.804],[466.211,223.908],[463.331,231.014],[460.448,238.117],[457.566,245.223],[454.337,252.167],[450.796,258.966],[447.255,265.767],[443.714,272.568],[440.173,279.369],[436.444,286.059],[432.269,292.489],[428.096,298.92],[423.921,305.351],[419.749,311.781],[415.571,318.21],[410.895,324.285],[406.219,330.362],[401.541,336.437],[396.661,342.34],[391.509,348.018],[386.356,353.696],[381.203,359.372],[376.05,365.05],[370.815,370.817],[365.139,375.97],[359.461,381.123],[353.783,386.276],[348.105,391.429],[342.43,396.579],[336.49,401.415],[330.34,405.994],[324.19,410.573],[318.04,415.15],[311.893,419.729],[305.658,424.182],[299.097,428.147],[292.535,432.114],[285.974,436.078],[279.412,440.045],[272.851,444.012],[265.965,447.376],[259.055,450.699],[252.145,454.022],[245.238,457.345],[238.328,460.668],[231.215,463.51],[224.024,466.167],[216.831,468.827],[209.64,471.485],[202.449,474.142],[195.138,476.42],[187.729,478.397],[180.323,480.372],[172.915,482.349],[165.506,484.324],[158.035,486.011],[150.476,487.294],[142.917,488.577],[135.359,489.862],[127.8,491.145],[120.217,492.217],[112.572,492.8],[104.928,493.386],[97.283,493.972],[89.639,494.555],[81.989,495],[74.324,494.884],[66.659,494.766],[58.991,494.649],[51.326,494.533],[43.663,494.347],[36.042,493.529],[28.418,492.711],[20.796,491.893],[13.173,491.075],[5.549,490.257],[-1.966,488.749],[-9.484,487.234],[-16.999,485.718],[-24.514,484.203],[-32.029,482.686],[-39.396,480.575],[-46.737,478.371],[-54.08,476.166],[-61.423,473.961],[-68.767,471.754],[-75.938,469.062],[-83.042,466.18],[-90.148,463.299],[-97.251,460.417],[-104.357,457.534],[-111.296,454.296],[-118.097,450.757],[-124.898,447.216],[-131.697,443.676],[-138.498,440.135],[-145.183,436.398],[-151.613,432.223],[-158.044,428.05],[-164.477,423.875],[-170.908,419.702],[-177.332,415.518],[-183.406,410.842],[-189.484,406.166],[-195.559,401.49],[-201.457,396.601],[-207.135,391.45],[-212.813,386.298],[-218.489,381.145],[-224.167,375.992],[-229.845,370.839],[-235.266,365.42],[-240.688,359.999],[-246.109,354.577],[-251.531,349.156],[-256.952,343.734],[-262.374,338.313],[-267.795,332.894],[-273.216,327.472],[-278.638,322.051],[-284.057,316.629],[-289.478,311.208],[-294.9,305.786],[-300.321,300.365],[-305.743,294.943],[-311.164,289.522],[-316.586,284.101],[-322.007,278.679],[-327.429,273.26],[-332.85,267.839],[-338.272,262.417],[-343.691,256.996],[-349.112,251.574],[-354.534,246.153],[-359.955,240.731],[-365.377,235.31],[-370.798,229.888],[-375.951,224.213],[-381.104,218.535],[-386.257,212.857],[-391.409,207.181],[-396.56,201.503],[-401.398,195.566],[-405.977,189.416],[-410.554,183.266],[-415.133,177.116],[-419.712,170.969],[-424.166,164.734],[-428.132,158.175],[-432.099,151.613],[-436.064,145.052],[-440.031,138.49],[-443.998,131.929],[-447.364,125.043],[-450.687,118.134],[-454.01,111.226],[-457.333,104.316],[-460.656,97.406],[-463.5,90.295],[-466.158,83.102],[-468.818,75.911],[-471.475,68.721],[-474.133,61.53],[-476.413,54.218],[-478.39,46.81],[-480.365,39.404],[-482.342,31.995],[-484.317,24.587],[-486.007,17.118],[-487.289,9.559],[-488.572,2],[-489.857,-5.558],[-491.14,-13.117],[-492.215,-20.702],[-492.798,-28.348],[-493.384,-35.991],[-493.969,-43.637],[-494.553,-51.28],[-495,-58.928],[-494.884,-66.596],[-494.768,-74.261],[-494.65,-81.926],[-494.533,-89.593],[-494.352,-97.254],[-493.534,-104.877],[-492.716,-112.499],[-491.895,-120.123],[-491.077,-127.747],[-490.259,-135.368],[-488.756,-142.886],[-487.239,-150.401],[-485.723,-157.918],[-484.208,-165.433],[-482.693,-172.948],[-480.583,-180.316],[-478.378,-187.659],[-476.173,-195],[-473.968,-202.343],[-471.763,-209.686],[-469.072,-216.86],[-466.192,-223.963],[-463.309,-231.067],[-460.426,-238.173],[-457.546,-245.277],[-454.31,-252.218],[-450.77,-259.019],[-447.229,-265.82],[-443.688,-272.619],[-440.149,-279.42],[-436.412,-286.107],[-432.24,-292.538],[-428.065,-298.968],[-423.892,-305.399],[-419.717,-311.83],[-415.537,-318.256],[-410.859,-324.331],[-406.183,-330.408],[-401.507,-336.483],[-396.62,-342.384],[-391.47,-348.062],[-386.317,-353.737],[-381.164,-359.415],[-376.011,-365.093],[-370.859,-370.771],[-365.185,-375.927],[-359.51,-381.079],[-353.832,-386.232],[-348.154,-391.385],[-342.476,-396.535],[-336.541,-401.376],[-330.394,-405.955],[-324.244,-410.532],[-318.094,-415.111],[-311.944,-419.69],[-305.714,-424.146],[-299.152,-428.113],[-292.591,-432.08],[-286.03,-436.044],[-279.468,-440.011],[-272.907,-443.978],[-266.023,-447.347],[-259.113,-450.67],[-252.203,-453.993],[-245.296,-457.316],[-238.386,-460.639],[-231.275,-463.486],[-224.084,-466.146],[-216.891,-468.803],[-209.701,-471.461],[-202.51,-474.118],[-195.198,-476.403],[-187.792,-478.378],[-180.384,-480.355],[-172.975,-482.33],[-165.569,-484.308],[-158.097,-485.997],[-150.539,-487.282],[-142.98,-488.565],[-135.422,-489.85],[-127.863,-491.133],[-120.28,-492.21],[-112.635,-492.793],[-104.991,-493.379],[-97.346,-493.965],[-89.702,-494.548],[-82.054,-495.001],[-74.387,-494.882],[-66.721,-494.766],[-59.056,-494.647],[-51.389,-494.531],[-43.729,-494.352],[-36.105,-493.534],[-28.481,-492.716],[-20.859,-491.898],[-13.235,-491.079],[-5.614,-490.262]],"c":true}]},{"t":578,"s":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[6.428,-491.836],[14.758,-490.711],[22.933,-488.794],[30.879,-486.091],[38.523,-482.63],[45.798,-478.436],[52.619,-473.52],[58.782,-467.809],[64.461,-461.621],[69.338,-454.782],[73.871,-447.708],[78.192,-440.497],[82.517,-433.286],[86.839,-426.075],[91.16,-418.864],[95.482,-411.653],[99.804,-404.442],[104.126,-397.231],[108.483,-390.044],[113.214,-383.095],[118.623,-376.662],[124.659,-370.811],[131.256,-365.6],[138.343,-361.084],[145.852,-357.302],[153.702,-354.292],[161.813,-352.086],[170.105,-350.705],[178.493,-350.164],[186.896,-350.481],[195.21,-351.684],[203.407,-353.545],[211.562,-355.588],[219.718,-357.63],[227.872,-359.673],[236.027,-361.716],[244.181,-363.761],[252.338,-365.803],[260.492,-367.846],[268.646,-369.889],[276.914,-371.411],[285.269,-372.203],[293.657,-372.215],[302.017,-371.414],[310.252,-369.719],[318.231,-367.08],[325.908,-363.685],[333.216,-359.562],[340.096,-354.753],[346.486,-349.301],[352.314,-343.241],[357.412,-336.56],[361.837,-329.422],[365.549,-321.897],[368.509,-314.043],[370.689,-305.936],[372.039,-297.638],[372.361,-289.24],[372.004,-280.849],[370.621,-272.565],[368.824,-264.356],[366.781,-256.2],[364.736,-248.045],[362.693,-239.891],[360.651,-231.737],[358.608,-223.58],[356.565,-215.426],[354.522,-207.272],[352.518,-199.108],[350.948,-190.852],[350.222,-182.478],[350.352,-174.071],[351.328,-165.723],[353.146,-157.514],[355.778,-149.53],[359.199,-141.853],[363.374,-134.555],[368.261,-127.715],[373.81,-121.4],[379.976,-115.683],[386.704,-110.652],[393.816,-106.172],[401.027,-101.85],[408.238,-97.528],[415.449,-93.207],[422.657,-88.885],[429.868,-84.563],[437.079,-80.241],[444.29,-75.919],[451.501,-71.597],[458.424,-66.826],[464.892,-61.481],[470.836,-55.558],[476.182,-49.083],[480.806,-42.061],[484.584,-34.554],[487.613,-26.727],[489.868,-18.643],[491.334,-10.378],[492.001,-2.006],[491.837,6.399],[490.717,14.73],[488.802,22.906],[486.104,30.852],[482.645,38.498],[478.456,45.775],[473.541,52.596],[467.831,58.762],[461.649,64.443],[454.811,69.326],[447.737,73.86],[440.526,78.18],[433.315,82.501],[426.105,86.823],[418.894,91.145],[411.68,95.465],[404.469,99.786],[397.258,104.108],[390.069,108.463],[383.12,113.192],[376.687,118.601],[370.833,124.635],[365.62,131.228],[361.1,138.316],[357.315,145.823],[354.303,153.672],[352.094,161.784],[350.711,170.075],[350.167,178.464],[350.487,186.866],[351.683,195.181],[353.544,203.378],[355.589,211.532],[357.631,219.686],[359.674,227.843],[361.717,235.997],[363.762,244.151],[365.805,252.306],[367.847,260.462],[369.892,268.617],[371.413,276.884],[372.209,285.237],[372.224,293.628],[371.424,301.988],[369.729,310.223],[367.095,318.202],[363.7,325.879],[359.582,333.191],[354.775,340.071],[349.328,346.464],[343.269,352.292],[336.587,357.392],[329.452,361.82],[321.927,365.534],[314.075,368.499],[305.968,370.683],[297.67,372.031],[289.272,372.357],[280.883,372.005],[272.597,370.622],[264.388,368.83],[256.234,366.785],[248.077,364.742],[239.923,362.699],[231.769,360.657],[223.615,358.614],[215.458,356.571],[207.304,354.526],[199.14,352.521],[190.884,350.949],[182.51,350.221],[174.105,350.344],[165.754,351.32],[157.546,353.134],[149.562,355.763],[141.88,359.181],[134.582,363.354],[127.74,368.236],[121.423,373.785],[115.708,379.949],[110.672,386.673],[106.19,393.784],[101.868,400.995],[97.546,408.206],[93.224,415.417],[88.902,422.628],[84.581,429.839],[80.259,437.05],[75.937,444.261],[71.615,451.472],[66.846,458.394],[61.503,464.868],[55.583,470.811],[49.11,476.162],[42.088,480.786],[34.586,484.569],[26.758,487.6],[18.675,489.86],[10.412,491.328],[2.04,492],[-6.367,491.834],[-14.696,490.718],[-22.874,488.808],[-30.82,486.115],[-38.469,482.661],[-45.748,478.474],[-52.569,473.559],[-58.737,467.851],[-64.421,461.671],[-69.305,454.836],[-73.842,447.762],[-78.164,440.551],[-82.484,433.34],[-86.805,426.13],[-91.127,418.918],[-95.449,411.708],[-99.769,404.497],[-104.09,397.283],[-108.445,390.094],[-113.171,383.143],[-118.576,376.707],[-124.607,370.851],[-131.201,365.636],[-138.287,361.113],[-145.793,357.325],[-153.64,354.309],[-161.749,352.098],[-170.041,350.71],[-178.432,350.169],[-186.832,350.483],[-195.149,351.675],[-203.346,353.533],[-211.5,355.578],[-219.654,357.621],[-227.809,359.664],[-235.965,361.706],[-244.12,363.751],[-252.274,365.794],[-260.428,367.837],[-268.585,369.882],[-276.85,371.404],[-285.205,372.204],[-293.594,372.225],[-301.956,371.43],[-310.191,369.735],[-318.17,367.104],[-325.849,363.716],[-333.162,359.6],[-340.046,354.796],[-346.442,349.351],[-352.269,343.291],[-357.371,336.612],[-361.804,329.482],[-365.521,321.956],[-368.488,314.107],[-370.677,306],[-372.025,297.702],[-372.356,289.304],[-372.006,280.915],[-370.628,272.629],[-368.836,264.42],[-366.793,256.264],[-364.75,248.109],[-362.708,239.955],[-360.662,231.801],[-358.62,223.646],[-356.577,215.49],[-354.532,207.336],[-352.527,199.172],[-350.95,190.916],[-350.22,182.542],[-350.34,174.137],[-351.312,165.786],[-353.123,157.578],[-355.749,149.591],[-359.166,141.91],[-363.334,134.609],[-368.216,127.765],[-373.763,121.447],[-379.924,115.728],[-386.645,110.688],[-393.755,106.205],[-400.968,101.886],[-408.179,97.564],[-415.39,93.242],[-422.601,88.923],[-429.814,84.601],[-437.025,80.281],[-444.236,75.96],[-451.449,71.64],[-458.372,66.871],[-464.845,61.533],[-470.793,55.615],[-476.148,49.144],[-480.771,42.123],[-484.556,34.621],[-487.591,26.795],[-489.854,18.714],[-491.327,10.451],[-492.001,2.077],[-491.837,-6.328],[-490.724,-14.659],[-488.818,-22.835],[-486.128,-30.786],[-482.678,-38.434],[-478.496,-45.716],[-473.581,-52.537],[-467.878,-58.71],[-461.701,-64.396],[-454.868,-69.283],[-447.796,-73.822],[-440.586,-78.144],[-433.375,-82.463],[-426.161,-86.785],[-418.95,-91.107],[-411.739,-95.429],[-404.529,-99.751],[-397.318,-104.073],[-390.126,-108.425],[-383.172,-113.146],[-376.732,-118.549],[-370.874,-124.578],[-365.656,-131.167],[-361.128,-138.252],[-357.338,-145.757],[-354.319,-153.601],[-352.104,-161.71],[-350.714,-170.002],[-350.17,-178.393],[-350.482,-186.793],[-351.666,-195.11],[-353.525,-203.307],[-355.567,-211.461],[-357.61,-219.618],[-359.655,-227.772],[-361.698,-235.926],[-363.741,-244.081],[-365.783,-252.237],[-367.826,-260.391],[-369.871,-268.546],[-371.396,-276.813],[-372.202,-285.166],[-372.226,-293.555],[-371.436,-301.917],[-369.741,-310.152],[-367.117,-318.133],[-363.731,-325.815],[-359.617,-333.13],[-354.818,-340.017],[-349.378,-346.414],[-343.318,-352.242],[-336.642,-357.349],[-329.511,-361.784],[-321.991,-365.505],[-314.141,-368.475],[-306.037,-370.669],[-297.738,-372.017],[-289.34,-372.35],[-280.952,-372.005],[-272.665,-370.629],[-264.454,-368.839],[-256.3,-366.796],[-248.146,-364.754],[-239.989,-362.709],[-231.835,-360.666],[-223.681,-358.623],[-215.526,-356.581],[-207.372,-354.535],[-199.208,-352.528],[-190.953,-350.951],[-182.578,-350.216],[-174.174,-350.334],[-165.823,-351.306],[-157.612,-353.115],[-149.626,-355.736],[-141.942,-359.148],[-134.639,-363.314],[-127.794,-368.194],[-121.477,-373.74],[-115.753,-379.899],[-110.708,-386.616],[-106.225,-393.725],[-101.903,-400.936],[-97.582,-408.147],[-93.26,-415.36],[-88.94,-422.571],[-84.618,-429.782],[-80.297,-436.993],[-75.975,-444.204],[-71.584,-451.531],[-66.813,-458.453],[-61.463,-464.917],[-55.538,-470.858],[-49.058,-476.202],[-42.039,-480.826],[-34.53,-484.599],[-26.699,-487.623],[-18.616,-489.876],[-10.351,-491.337],[-1.977,-491.999]],"c":true}]}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.235294117647,0.250980392157,0.262745098039,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[8.9,8.9],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Material shape","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":270,"op":720,"st":0,"ct":1,"bm":0},{"ddd":0,"ind":26,"ty":4,"nm":".grey700","cl":"grey700","parent":27,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[-349.33,-81.383,0],"ix":2,"l":2},"a":{"a":0,"k":[-212.824,66.939,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[77,77],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"r":{"a":0,"k":772,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"fl","c":{"a":0,"k":[0.372549019608,0.388235294118,0.407843137255,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-212.824,66.939],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":270,"op":720,"st":0,"ct":1,"bm":0},{"ddd":0,"ind":27,"ty":4,"nm":".grey800","cl":"grey800","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"s":true,"x":{"a":1,"k":[{"i":{"x":[0],"y":[1]},"o":{"x":[0.05],"y":[0]},"t":270,"s":[1256]},{"t":300,"s":[476]}],"ix":3},"y":{"a":0,"k":342,"ix":4}},"a":{"a":0,"k":[-202.83,-54.883,0],"ix":1,"l":2},"s":{"a":0,"k":[200,200,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[420,190],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"r":{"a":0,"k":38,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"fl","c":{"a":0,"k":[0.235294117647,0.250980392157,0.262745098039,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-202.83,-54.883],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":270,"op":720,"st":0,"ct":1,"bm":0},{"ddd":0,"ind":28,"ty":4,"nm":".black","cl":"black","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[412,300,0],"ix":2,"l":2},"a":{"a":0,"k":[-46.322,-74.951,0],"ix":1,"l":2},"s":{"a":0,"k":[200,200,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[412,300],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"r":{"a":0,"k":28,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0,0,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-46.322,-74.951],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":720,"st":0,"ct":1,"bm":0}],"markers":[{"tm":360,"cm":"1","dr":0},{"tm":450,"cm":"2","dr":0},{"tm":540,"cm":"3","dr":0}],"props":{}}
\ No newline at end of file
diff --git a/res/values/dimens.xml b/res/values/dimens.xml
index 68eb99b..5158ed6 100755
--- a/res/values/dimens.xml
+++ b/res/values/dimens.xml
@@ -503,6 +503,9 @@
     <dimen name="audio_streams_qrcode_preview_radius">30dp</dimen>
 
     <!-- Zen Modes -->
+    <dimen name="zen_mode_header_size">136dp</dimen>
+    <dimen name="zen_mode_header_inner_icon_size">64dp</dimen>
+    <dimen name="zen_mode_blurb_text_size">16sp</dimen>
     <dimen name="zen_mode_icon_list_header_circle_diameter">90dp</dimen>
     <dimen name="zen_mode_icon_list_header_icon_size">48dp</dimen>
     <dimen name="zen_mode_icon_list_item_size">96dp</dimen>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 454ec61..311b56f 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -78,6 +78,8 @@
 
     <!-- Content description for preview pager. [CHAR LIMIT=NONE] -->
     <string name="preview_pager_content_description">Preview</string>
+    <!-- Content description for qrcode image. [CHAR LIMIT=none]-->
+    <string name="qr_code_content_description">QR code</string>
 
     <!-- Description for the button that makes interface elements smaller. [CHAR_LIMIT=NONE] -->
     <string name="font_size_make_smaller_desc">Make smaller</string>
@@ -5055,10 +5057,6 @@
     <string name="accessibility_shortcut_edit_dialog_title_software_by_gesture">Accessibility gesture</string>
     <!-- Summary for software shortcut in accessibility edit shortcut dialog. [CHAR LIMIT=NONE] -->
     <string name="accessibility_shortcut_edit_dialog_summary_software">Tap the accessibility button <xliff:g id="accessibility_icon" example="[Icon]">%s</xliff:g> at the bottom of your screen. To switch between features, touch &amp; hold the accessibility button.</string>
-    <!-- Summary for software shortcut in gesture mode in accessibility edit shortcut dialog while using gesture navigation is enabled. [CHAR LIMIT=NONE] -->
-    <string name="accessibility_shortcut_edit_dialog_summary_software_gesture">Swipe up from the bottom of the screen with 2 fingers.\n\nTo switch between features, swipe up with 2 fingers and hold.</string>
-    <!-- Summary for software shortcut in gesture mode in accessibility edit shortcut dialog while using gesture navigation and touch exploration are enabled [CHAR LIMIT=NONE] -->
-    <string name="accessibility_shortcut_edit_dialog_summary_software_gesture_talkback">Swipe up from the bottom of the screen with 3 fingers.\n\nTo switch between features, swipe up with 3 fingers and hold.</string>
     <!-- Summary for gesture shortcut option -->
     <string name="accessibility_shortcut_edit_dialog_summary_gesture">{count, plural,
       =1      {Swipe up from the bottom of your screen. To switch between features, swipe up and hold.}
@@ -5088,8 +5086,6 @@
     <string name="accessibility_shortcut_hardware_keyword">volume keys</string>
     <!-- Summary for hardware shortcut in accessibility edit shortcut dialog. [CHAR LIMIT=NONE] -->
     <string name="accessibility_shortcut_edit_dialog_summary_hardware">Press &amp; hold both volume keys</string>
-    <!-- Title for two finger double tap shortcut in accessibility edit shortcut dialog. [CHAR LIMIT=NONE] -->
-    <string name="accessibility_shortcut_edit_dialog_title_two_finger_double_tap">Two-finger double-tap screen</string>
     <!-- Title for 2-finger double tap shortcut in accessibility edit shortcut screen. [CHAR LIMIT=NONE] -->
     <string name="accessibility_shortcut_edit_screen_title_two_finger_double_tap">%1$d-finger double tap</string>
     <!-- Summary for 2-finger double tap shortcut in accessibility edit shortcut screen. [CHAR LIMIT=NONE] -->
@@ -5100,14 +5096,8 @@
     <string name="accessibility_shortcut_edit_screen_summary_triple_tap">Quickly tap the screen %1$d times. This may slow down your device.</string>
     <!-- 2-finger double tap is shown as part of list to compose user's accessibility shortcut list. [CHAR LIMIT=NONE] -->
     <string name="accessibility_shortcut_two_finger_double_tap_keyword">%1$d-finger double tap</string>
-    <!-- Summary for two finger double tap shortcut in accessibility edit shortcut dialog. [CHAR LIMIT=NONE] -->
-    <string name="accessibility_shortcut_edit_dialog_summary_two_finger_double_tap">Quickly tap screen {0,number,integer} times with two fingers</string>
-    <!-- Title for triple tap shortcut in accessibility edit shortcut dialog. [CHAR LIMIT=NONE] -->
-    <string name="accessibility_shortcut_edit_dialog_title_triple_tap">Triple-tap screen</string>
     <!-- Part of list to compose user's accessibility shortcut list. [CHAR LIMIT=NONE] -->
     <string name="accessibility_shortcut_triple_tap_keyword">triple tap</string>
-    <!-- Summary for triple tap shortcut in accessibility edit shortcut dialog. [CHAR LIMIT=NONE] -->
-    <string name="accessibility_shortcut_edit_dialog_summary_triple_tap">Quickly tap screen {0,number,integer} times. This shortcut may slow down your device</string>
     <!-- Title for the accessibility edit shortcut dialog to save the preference when user clicks it. [CHAR LIMIT=20] -->
     <string name="accessibility_shortcut_edit_dialog_title_advance">Advanced</string>
     <!-- Summary text appearing on the accessibility preference screen to enable screen magnification from the nav bar when the feature is enabled, but the accessibility button is not configured correctly for the feature to be used [CHAR LIMIT=none] -->
@@ -5597,12 +5587,6 @@
     <string name="color_magenta">Magenta</string>
     <!-- Label for custom colors, formats as a HTML color. -->
     <string name="color_custom" translatable="false">#%1$02X%2$02X%3$02X</string>
-
-    <!-- Title for a warning about security implications of enabling an accessibility
-         service. [CHAR LIMIT=NONE] -->
-    <string name="enable_service_title">Allow
-         <xliff:g id="service" example="TalkBack">%1$s</xliff:g> to have full control of your
-        device?</string>
     <!-- Title for the list of capabilities of an accessibility service. -->
     <string name="capabilities_list_title"><xliff:g id="service" example="TalkBack">%1$s</xliff:g>
         needs to:</string>
@@ -5612,35 +5596,6 @@
     <string name="touch_filtered_warning">Because an app is obscuring a permission request, Settings
         can’t verify your response.</string>
 
-    <!-- Warning that explains that accessibility services have a lot of access to user data [CHAR LIMIT=NONE] -->
-    <string name="accessibility_service_warning"><xliff:g id="service"
-        example="TalkBack">%1$s</xliff:g> is requesting full control of this device. The service
-        can read the screen and act on behalf of users with accessibility needs.
-        This level of control is not appropriate for most apps.
-    </string>
-
-    <!-- Warning description that explains that it's appropriate for accessibility
-         services to have full control to help users with accessibility needs. [CHAR LIMIT=NONE] -->
-    <string name="accessibility_service_warning_description">Full control is appropriate for apps
-        that help you with accessibility needs, but not for most apps.
-    </string>
-
-    <!-- Title for the screen control in accessibility dialog. [CHAR LIMIT=NONE] -->
-    <string name="accessibility_service_screen_control_title">View and control screen</string>
-
-    <!-- Description for the screen control in accessibility dialog. [CHAR LIMIT=NONE] -->
-    <string name="accessibility_service_screen_control_description">It can read all content on the
-        screen and display content over other apps.
-    </string>
-
-    <!-- Title for the action perform in accessibility dialog. [CHAR LIMIT=NONE] -->
-    <string name="accessibility_service_action_perform_title">View and perform actions</string>
-
-    <!-- Description for the action perform in accessibility dialog. [CHAR LIMIT=NONE] -->
-    <string name="accessibility_service_action_perform_description">It can track your interactions
-        with an app or a hardware sensor, and interact with apps on your behalf.
-    </string>
-
     <!-- String for the allow button in accessibility permission dialog. [CHAR LIMIT=10] -->
     <string name="accessibility_dialog_button_allow">Allow</string>
     <!-- String for the deny button in accessibility permission dialog. [CHAR LIMIT=10] -->
@@ -9509,6 +9464,23 @@
     <!-- Priority Modes: Button to disable a mode [CHAR LIMIT=20] -->
     <string name="zen_mode_action_enable">Enable</string>
 
+    <!-- Priority Modes: Blurb for a mode that activates during a fixed time schedule (e.g. 9:00-17:00). [CHAR LIMIT=NONE] -->
+    <string name="zen_mode_blurb_schedule_time">Set a mode that follows a regular schedule</string>
+    <!-- Priority Modes: Blurb for a mode that activates during calendar events. [CHAR LIMIT=NONE] -->
+    <string name="zen_mode_blurb_schedule_calendar">Set a mode to sync with calendar events and invite responses</string>
+    <!-- Priority Modes: Blurb for a mode of type BEDTIME. [CHAR LIMIT=NONE] -->
+    <string name="zen_mode_blurb_bedtime">Design a calming sleep routine. Set alarms, dim the screen, and block notifications.</string>
+    <!-- Priority Modes: Blurb for a mode of type DRIVING. [CHAR LIMIT=NONE] -->
+    <string name="zen_mode_blurb_driving">Prioritize safety on the road for a focused and distraction-free drive</string>
+    <!-- Priority Modes: Blurb for a mode of type IMMERSIVE. [CHAR LIMIT=NONE] -->
+    <string name="zen_mode_blurb_immersive">Block distractions or interruptions from your device to gain focus</string>
+    <!-- Priority Modes: Blurb for a mode of type THEATER. [CHAR LIMIT=NONE] -->
+    <string name="zen_mode_blurb_theater">Eliminate all distractions for a quiet environment</string>
+    <!-- Priority Modes: Blurb for a mode of type MANAGED. [CHAR LIMIT=NONE] -->
+    <string name="zen_mode_blurb_managed">Personalize device experiences and settings for different users</string>
+    <!-- Priority Modes: Blurb for modes that are not of a specific type (OTHER, UNKNOWN). [CHAR LIMIT=NONE] -->
+    <string name="zen_mode_blurb_generic">Minimize interruptions by only allowing important people and apps to reach you</string>
+
     <!-- Content description for help icon button [CHAR LIMIT=20] -->
     <string name="warning_button_text">Warning</string>
 
@@ -12266,11 +12238,11 @@
     <!-- Default title for the settings panel [CHAR LIMIT=NONE] -->
     <string name="settings_panel_title">Settings Panel</string>
 
-    <!-- Title for a toggle that enables freeform windowing experiences. Freeform windowing experiences are features involving apps running in resizable windows. [CHAR LIMIT=50] -->
-    <string name="enable_desktop_mode">Enable freeform windowing experiences</string>
+    <!-- Title for a toggle that enables freeform windows. Freeform windows enables users to freely arrange and resize overlapping apps. [CHAR LIMIT=50] -->
+    <string name="enable_desktop_mode">Enable freeform windows</string>
 
-    <!-- Title for a toggle that enables desktop mode on secondary display. [CHAR LIMIT=50] -->
-    <string name="enable_desktop_mode_on_secondary_display">Enable desktop mode on secondary display</string>
+    <!-- Title for a toggle that enables freeform windows on secondary display. Freeform windows enables users to freely arrange and resize overlapping apps. [CHAR LIMIT=50] -->
+    <string name="enable_desktop_mode_on_secondary_display">Enable freeform windows on secondary display</string>
 
     <!-- UI debug setting: enable non-resizables in multi window [CHAR LIMIT=60] -->
     <string name="enable_non_resizable_multi_window">Enable non-resizable in multi window</string>
@@ -13230,12 +13202,12 @@
     <!-- The content description for accessibility tools of the customize button. It specifies which screensaver the user is customizing [CHAR LIMIT=NONE] -->
     <string name="customize_button_description">Customize <xliff:g id="screensaver_name" example="Art Gallery">%1$s</xliff:g></string>
 
-    <!-- Dialog body text used to explain a reboot is required after enabling freeform window support for it to work. Freeform window is when an app runs in a resizable window. [CHAR LIMIT=none] -->
+    <!-- Dialog body text used to explain a reboot is required after enabling freeform window support for it to work. Freeform windows enables users to freely arrange and resize overlapping apps. [CHAR LIMIT=none] -->
     <string name="reboot_dialog_enable_freeform_support">A reboot is required to enable freeform window support.</string>
-    <!-- Dialog body text used to explain a reboot is required after updating availability of freeform windowing experiences. Freeform windowing experiences are features involving apps running in resizable windows. [CHAR LIMIT=none] -->
-    <string name="reboot_dialog_override_desktop_mode">A reboot is required to update availability of freeform windowing experiences.</string>
-    <!-- Dialog body text used to explain a reboot is required after enabling desktop mode on secondary displays. [CHAR LIMIT=none] -->
-    <string name="reboot_dialog_enable_desktop_mode_on_secondary_display">A reboot is required to enable desktop mode on secondary displays.</string>
+    <!-- Dialog body text used to explain a reboot is required after updating availability of freeform windows. Freeform windows enables users to freely arrange and resize overlapping apps. [CHAR LIMIT=none] -->
+    <string name="reboot_dialog_override_desktop_mode">A reboot is required to update availability of freeform windows.</string>
+    <!-- Dialog body text used to explain a reboot is required after enabling freeform windows on secondary displays. Freeform windows enables users to freely arrange and resize overlapping apps. [CHAR LIMIT=none] -->
+    <string name="reboot_dialog_enable_desktop_mode_on_secondary_display">A reboot is required to enable freeform windows on secondary displays.</string>
     <!-- Text on the dialog button to reboot the device now [CHAR LIMIT=50] -->
     <string name="reboot_dialog_reboot_now">Reboot now</string>
     <!-- Text on the dialog button to reboot the device later [CHAR LIMIT=50] -->
@@ -13760,8 +13732,6 @@
     <string name="audio_streams_main_page_qr_code_scanner_summary">Scan an audio stream QR code to listen with <xliff:g example="LE headset" id="device_name">%1$s</xliff:g></string>
     <!-- Le audio streams password dialog  [CHAR LIMIT=NONE] -->
     <string name="audio_streams_main_page_password_dialog_cannot_edit">Can\u0027t edit password while sharing. To change the password, first turn off audio sharing.</string>
-    <!-- Text for audio sharing qrcode image [CHAR LIMIT=none]-->
-    <string name="audio_streams_qr_code_page_image_label">QR code</string>
     <!-- Text for audio sharing qrcode scanner [CHAR LIMIT=none]-->
     <string name="audio_streams_qr_code_scanner_label">QR code scanner</string>
 
diff --git a/res/xml/bluetooth_audio_streams_dialog.xml b/res/xml/bluetooth_audio_streams_dialog.xml
index 8b20a14..d2b3933 100644
--- a/res/xml/bluetooth_audio_streams_dialog.xml
+++ b/res/xml/bluetooth_audio_streams_dialog.xml
@@ -45,6 +45,7 @@
             <TextView
                 android:id="@+id/dialog_title"
                 android:textAppearance="@android:style/TextAppearance.DeviceDefault.Headline"
+                android:textColor="?android:attr/textColorPrimary"
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:layout_marginTop="15dp"
@@ -54,6 +55,7 @@
             <TextView
                 android:id="@+id/dialog_subtitle"
                 android:textAppearance="@android:style/TextAppearance.DeviceDefault.Small"
+                android:textColor="?android:attr/textColorSecondary"
                 android:textStyle="bold"
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
@@ -65,6 +67,7 @@
             <TextView
                 android:id="@+id/dialog_subtitle_2"
                 android:textAppearance="@android:style/TextAppearance.DeviceDefault.Small"
+                android:textColor="?android:attr/textColorSecondary"
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:layout_marginTop="15dp"
diff --git a/res/xml/modes_display_settings.xml b/res/xml/modes_display_settings.xml
index 53268ec..98db7b8 100644
--- a/res/xml/modes_display_settings.xml
+++ b/res/xml/modes_display_settings.xml
@@ -24,22 +24,27 @@
         android:title="@string/mode_display_options_section">
         <Preference
                 android:key="notification_visibility"
-                android:title="@string/zen_mode_restrict_notifications_title" />
+                android:title="@string/zen_mode_restrict_notifications_title"
+                android:icon="@drawable/ic_zen_mode_category_display" />
         <SwitchPreferenceCompat
                 android:key="effect_greyscale"
                 android:title="@string/mode_grayscale_title"
-                android:summary="@string/mode_grayscale_summary"/>
+                android:summary="@string/mode_grayscale_summary"
+                android:icon="@drawable/ic_zen_mode_display_grayscale" />
         <SwitchPreferenceCompat
                 android:key="effect_aod"
                 android:title="@string/mode_aod_title"
-                android:summary="@string/mode_aod_summary"/>
+                android:summary="@string/mode_aod_summary"
+                android:icon="@drawable/ic_zen_mode_display_aod" />
         <SwitchPreferenceCompat
                 android:key="effect_wallpaper"
                 android:title="@string/mode_wallpaper_title"
-                android:summary="@string/mode_wallpaper_summary"/>
+                android:summary="@string/mode_wallpaper_summary"
+                android:icon="@drawable/ic_zen_mode_display_wallpaper" />
         <SwitchPreferenceCompat
                 android:key="effect_dark_theme"
                 android:title="@string/mode_dark_theme_title"
-                android:summary="@string/mode_dark_theme_summary"/>
+                android:summary="@string/mode_dark_theme_summary"
+                android:icon="@drawable/ic_zen_mode_display_dark_theme" />
     </PreferenceCategory>
 </PreferenceScreen>
diff --git a/res/xml/modes_people_settings.xml b/res/xml/modes_people_settings.xml
index 136a357..d58b2d7 100644
--- a/res/xml/modes_people_settings.xml
+++ b/res/xml/modes_people_settings.xml
@@ -26,10 +26,12 @@
 
       <Preference
           android:key="zen_mode_people_messages"
-          android:title="@string/zen_mode_messages_title"/>
+          android:title="@string/zen_mode_messages_title"
+          android:icon="@drawable/ic_zen_mode_people_messages" />
 
       <Preference
           android:key="zen_mode_people_calls"
-          android:title="@string/zen_mode_calls_title"/>
+          android:title="@string/zen_mode_calls_title"
+          android:icon="@drawable/ic_zen_mode_people_calls" />
    </PreferenceCategory>
 </PreferenceScreen>
diff --git a/res/xml/modes_rule_settings.xml b/res/xml/modes_rule_settings.xml
index 2464c25..d2f573c 100644
--- a/res/xml/modes_rule_settings.xml
+++ b/res/xml/modes_rule_settings.xml
@@ -23,11 +23,23 @@
             android:key="header"
             android:layout="@layout/settings_entity_header" />
 
+    <com.android.settings.applications.SpacePreference
+        android:layout_height="16dp" />
+
+    <com.android.settings.notification.modes.ZenModeBlurbPreference
+        android:key="mode_blurb" />
+
+    <com.android.settings.applications.SpacePreference
+        android:layout_height="8dp" />
+
     <com.android.settingslib.widget.LayoutPreference
             android:key="activate"
             android:selectable="false"
             android:layout="@layout/modes_activation_button"/>
 
+    <com.android.settings.applications.SpacePreference
+        android:layout_height="16dp" />
+
     <!-- automatic trigger section; preference changes programmatically depending on type -->
     <PreferenceCategory
         android:key="zen_automatic_trigger_category"
@@ -39,8 +51,7 @@
         <Preference
             android:key="zen_add_automatic_trigger"
             android:title="@string/zen_mode_select_schedule"
-            android:icon="@drawable/ic_add_24dp"
-            settings:isPreferenceVisible="false" />
+            android:icon="@drawable/ic_add_24dp" />
     </PreferenceCategory>
 
     <PreferenceCategory
@@ -53,15 +64,18 @@
 
         <com.android.settings.notification.modes.CircularIconsPreference
             android:key="zen_mode_people"
-            android:title="@string/zen_category_people" />
+            android:title="@string/zen_category_people"
+            android:icon="@drawable/ic_zen_mode_category_people" />
 
         <com.android.settings.notification.modes.CircularIconsPreference
             android:key="zen_mode_apps"
-            android:title="@string/zen_category_apps" />
+            android:title="@string/zen_category_apps"
+            android:icon="@drawable/ic_zen_mode_category_apps" />
 
         <com.android.settings.notification.modes.CircularIconsPreference
             android:key="zen_other_settings"
-            android:title="@string/zen_category_exceptions" />
+            android:title="@string/zen_category_exceptions"
+            android:icon="@drawable/ic_zen_mode_category_other" />
     </PreferenceCategory>
 
     <PreferenceCategory
@@ -69,10 +83,12 @@
             android:key="modes_additional_actions">
         <Preference
                 android:key="mode_display_settings"
-                android:title="@string/mode_display_settings_title" />
+                android:title="@string/mode_display_settings_title"
+                android:icon="@drawable/ic_zen_mode_category_display" />
 
         <Preference
                 android:key="mode_manual_duration"
-                android:title="@string/zen_category_duration" />
+                android:title="@string/zen_category_duration"
+                android:icon="@drawable/ic_zen_mode_category_duration" />
     </PreferenceCategory>
 </PreferenceScreen>
\ No newline at end of file
diff --git a/res/xml/polite_notifications_settings.xml b/res/xml/polite_notifications_settings.xml
index 3baf88f..c0b3980 100644
--- a/res/xml/polite_notifications_settings.xml
+++ b/res/xml/polite_notifications_settings.xml
@@ -17,20 +17,20 @@
 
 <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:settings="http://schemas.android.com/apk/res-auto"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
     android:title="@string/notification_polite_title">
 
     <com.android.settingslib.widget.TopIntroPreference
         android:key="polite_notification_desc"
         android:title="@string/notification_polite_description"/>
 
-<!--    TODO(b/330606963): add the illustration back when animation is ready-->
-<!--    <com.android.settingslib.widget.IllustrationPreference-->
-<!--        android:key="bubbles_illustration"-->
-<!--        settings:searchable="false"-->
-<!--        android:selectable="false"-->
-<!--        app:lottie_rawRes="@raw/lottie_bubbles"-->
-<!--        app:lottie_cacheComposition="false"-->
-<!--        settings:dynamicColor="true" />-->
+    <com.android.settingslib.widget.IllustrationPreference
+        android:key="notification_cooldown_illustration"
+        settings:searchable="false"
+        android:selectable="false"
+        app:lottie_rawRes="@raw/lottie_notification_cooldown"
+        app:lottie_cacheComposition="false"
+        settings:dynamicColor="true"/>
 
     <com.android.settingslib.widget.MainSwitchPreference
         android:key="polite_notification_global_pref"
diff --git a/src/com/android/settings/MainClear.java b/src/com/android/settings/MainClear.java
index 9dadcb9..ab7a714 100644
--- a/src/com/android/settings/MainClear.java
+++ b/src/com/android/settings/MainClear.java
@@ -188,7 +188,7 @@
                     false /* biometricsAuthenticationRequested */,
                     userId)) {
                 Utils.launchBiometricPromptForMandatoryBiometrics(this, BIOMETRICS_REQUEST,
-                        userId);
+                        userId, false /* hideBackground */);
                 return;
             }
         }
diff --git a/src/com/android/settings/MainClearConfirm.java b/src/com/android/settings/MainClearConfirm.java
index 042c5c2..a5fbebf 100644
--- a/src/com/android/settings/MainClearConfirm.java
+++ b/src/com/android/settings/MainClearConfirm.java
@@ -89,8 +89,7 @@
             final PersistentDataBlockManager pdbManager;
             // pre-flight check hardware support PersistentDataBlockManager
             if (!SystemProperties.get(PERSISTENT_DATA_BLOCK_PROP).equals("")) {
-                pdbManager = (PersistentDataBlockManager)
-                    getActivity().getSystemService(Context.PERSISTENT_DATA_BLOCK_SERVICE);
+                pdbManager = getActivity().getSystemService(PersistentDataBlockManager.class);
             } else {
                 pdbManager = null;
             }
@@ -152,6 +151,11 @@
             return false;
         }
 
+        // Do not try to erase factory reset protection data if the protection is alive.
+        if (pdbManager.isFactoryResetProtectionActive()) {
+            return false;
+        }
+
         // The persistent data block will persist if the device is still being provisioned.
         if (isDeviceStillBeingProvisioned()) {
             return false;
diff --git a/src/com/android/settings/Utils.java b/src/com/android/settings/Utils.java
index add5604..badcb63 100644
--- a/src/com/android/settings/Utils.java
+++ b/src/com/android/settings/Utils.java
@@ -25,6 +25,7 @@
 import static android.text.format.DateUtils.FORMAT_SHOW_DATE;
 
 import static com.android.settings.password.ConfirmDeviceCredentialActivity.BIOMETRIC_PROMPT_AUTHENTICATORS;
+import static com.android.settings.password.ConfirmDeviceCredentialActivity.BIOMETRIC_PROMPT_HIDE_BACKGROUND;
 import static com.android.settings.password.ConfirmDeviceCredentialActivity.BIOMETRIC_PROMPT_NEGATIVE_BUTTON_TEXT;
 
 import android.app.ActionBar;
@@ -1519,12 +1520,13 @@
      * to check if all requirements for mandatory biometrics is satisfied
      * before launching biometric prompt.
      *
-     * @param fragment    corresponding fragment of the surface
-     * @param requestCode for starting the new activity
-     * @param userId      user id for the authentication request
+     * @param fragment       corresponding fragment of the surface
+     * @param requestCode    for starting the new activity
+     * @param userId         user id for the authentication request
+     * @param hideBackground if the background activity screen needs to be hidden
      */
     public static void launchBiometricPromptForMandatoryBiometrics(@NonNull Fragment fragment,
-            int requestCode, int userId) {
+            int requestCode, int userId, boolean hideBackground) {
         final Intent intent = new Intent();
         intent.putExtra(BIOMETRIC_PROMPT_AUTHENTICATORS,
                 BiometricManager.Authenticators.MANDATORY_BIOMETRICS);
@@ -1534,6 +1536,7 @@
                 fragment.getString(R.string.mandatory_biometrics_prompt_description));
         intent.putExtra(ChooseLockSettingsHelper.EXTRA_KEY_ALLOW_ANY_USER, true);
         intent.putExtra(EXTRA_USER_ID, userId);
+        intent.putExtra(BIOMETRIC_PROMPT_HIDE_BACKGROUND, hideBackground);
         intent.setClassName(SETTINGS_PACKAGE_NAME,
                 ConfirmDeviceCredentialActivity.InternalActivity.class.getName());
         fragment.startActivityForResult(intent, requestCode);
diff --git a/src/com/android/settings/accessibility/AccessibilityDialogUtils.java b/src/com/android/settings/accessibility/AccessibilityDialogUtils.java
index ca3a7b1..a1f59c8 100644
--- a/src/com/android/settings/accessibility/AccessibilityDialogUtils.java
+++ b/src/com/android/settings/accessibility/AccessibilityDialogUtils.java
@@ -19,53 +19,22 @@
 import static com.android.settings.accessibility.ItemInfoArrayAdapter.ItemInfo;
 
 import android.app.Dialog;
-import android.app.settings.SettingsEnums;
 import android.content.Context;
 import android.content.DialogInterface;
-import android.content.res.TypedArray;
-import android.graphics.drawable.Drawable;
-import android.icu.text.MessageFormat;
-import android.text.Spannable;
-import android.text.SpannableString;
-import android.text.SpannableStringBuilder;
-import android.text.TextUtils;
-import android.text.method.LinkMovementMethod;
-import android.text.style.ImageSpan;
-import android.util.Log;
-import android.view.LayoutInflater;
 import android.view.View;
 import android.widget.AbsListView;
 import android.widget.AdapterView;
-import android.widget.CheckBox;
-import android.widget.ImageView;
-import android.widget.LinearLayout;
 import android.widget.ListView;
 import android.widget.ScrollView;
-import android.widget.TextView;
 
-import androidx.annotation.ColorInt;
-import androidx.annotation.DrawableRes;
-import androidx.annotation.IntDef;
 import androidx.annotation.NonNull;
 import androidx.annotation.Nullable;
-import androidx.annotation.RawRes;
 import androidx.appcompat.app.AlertDialog;
-import androidx.core.content.ContextCompat;
-
-import com.android.server.accessibility.Flags;
-import com.android.settings.R;
-import com.android.settings.core.SubSettingLauncher;
-import com.android.settings.utils.AnnotationSpan;
-import com.android.settingslib.widget.LottieColorUtils;
-
-import com.airbnb.lottie.LottieAnimationView;
-import com.airbnb.lottie.LottieDrawable;
 
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
 import java.util.List;
 
-
 /**
  * Utility class for creating the edit dialog.
  */
@@ -75,25 +44,20 @@
     /** Denotes the dialog emuns for show dialog. */
     @Retention(RetentionPolicy.SOURCE)
     public @interface DialogEnums {
-
-        /** OPEN: Settings > Accessibility > Any toggle service > Shortcut > Settings. */
-        int EDIT_SHORTCUT = 1;
-
-        /** OPEN: Settings > Accessibility > Magnification > Shortcut > Settings. */
-        int MAGNIFICATION_EDIT_SHORTCUT = 1001;
-
         /**
          * OPEN: Settings > Accessibility > Downloaded toggle service > Toggle use service to
          * enable service.
          */
         int ENABLE_WARNING_FROM_TOGGLE = 1002;
 
-        /** OPEN: Settings > Accessibility > Downloaded toggle service > Shortcut checkbox. */
+        /**
+         * OPEN: Settings > Accessibility > Downloaded toggle service > Shortcut options
+         * settings.
+         */
         int ENABLE_WARNING_FROM_SHORTCUT = 1003;
 
         /**
-         * OPEN: Settings > Accessibility > Downloaded toggle service > Shortcut checkbox
-         * toggle.
+         * OPEN: Settings > Accessibility > Downloaded toggle service > Shortcut toggle
          */
         int ENABLE_WARNING_FROM_SHORTCUT_TOGGLE = 1004;
 
@@ -128,83 +92,6 @@
     }
 
     /**
-     * IntDef enum for dialog type that indicates different dialog for user to choose the shortcut
-     * type.
-     */
-    @Retention(RetentionPolicy.SOURCE)
-    @IntDef({
-         DialogType.EDIT_SHORTCUT_GENERIC,
-         DialogType.EDIT_SHORTCUT_GENERIC_SUW,
-         DialogType.EDIT_SHORTCUT_MAGNIFICATION,
-         DialogType.EDIT_SHORTCUT_MAGNIFICATION_SUW,
-    })
-
-    public @interface DialogType {
-        int EDIT_SHORTCUT_GENERIC = 0;
-        int EDIT_SHORTCUT_GENERIC_SUW = 1;
-        int EDIT_SHORTCUT_MAGNIFICATION = 2;
-        int EDIT_SHORTCUT_MAGNIFICATION_SUW = 3;
-    }
-
-    /**
-     * Method to show the edit shortcut dialog.
-     *
-     * @param context A valid context
-     * @param dialogType The type of edit shortcut dialog
-     * @param dialogTitle The title of edit shortcut dialog
-     * @param listener The listener to determine the action of edit shortcut dialog
-     * @return A edit shortcut dialog for showing
-     */
-    public static AlertDialog showEditShortcutDialog(Context context, int dialogType,
-            CharSequence dialogTitle, DialogInterface.OnClickListener listener) {
-        final AlertDialog alertDialog = createDialog(context, dialogType, dialogTitle, listener);
-        alertDialog.show();
-        setScrollIndicators(alertDialog);
-        return alertDialog;
-    }
-
-    /**
-     * Updates the shortcut content in edit shortcut dialog.
-     *
-     * @param context A valid context
-     * @param editShortcutDialog Need to be a type of edit shortcut dialog
-     * @return True if the update is successful
-     */
-    public static boolean updateShortcutInDialog(Context context,
-            Dialog editShortcutDialog) {
-        final View container = editShortcutDialog.findViewById(R.id.container_layout);
-        if (container != null) {
-            initSoftwareShortcut(context, container);
-            initHardwareShortcut(context, container);
-            return true;
-        }
-        return false;
-    }
-
-    private static AlertDialog createDialog(Context context, int dialogType,
-            CharSequence dialogTitle, DialogInterface.OnClickListener listener) {
-
-        final AlertDialog alertDialog = new AlertDialog.Builder(context)
-                .setView(createEditDialogContentView(context, dialogType))
-                .setTitle(dialogTitle)
-                .setPositiveButton(R.string.save, listener)
-                .setNegativeButton(R.string.cancel,
-                        (DialogInterface dialog, int which) -> dialog.dismiss())
-                .create();
-
-        return alertDialog;
-    }
-
-    /**
-     * Sets the scroll indicators for dialog view. The indicators appears while content view is
-     * out of vision for vertical scrolling.
-     */
-    private static void setScrollIndicators(AlertDialog dialog) {
-        final ScrollView scrollView = dialog.findViewById(R.id.container_layout);
-        setScrollIndicators(scrollView);
-    }
-
-    /**
      * Sets the scroll indicators for dialog view. The indicators appear while content view is
      * out of vision for vertical scrolling.
      *
@@ -218,284 +105,6 @@
     }
 
     /**
-     * Get a content View for the edit shortcut dialog.
-     *
-     * @param context A valid context
-     * @param dialogType The type of edit shortcut dialog
-     * @return A content view suitable for viewing
-     */
-    private static View createEditDialogContentView(Context context, int dialogType) {
-        final LayoutInflater inflater = (LayoutInflater) context.getSystemService(
-                Context.LAYOUT_INFLATER_SERVICE);
-
-        View contentView = null;
-
-        switch (dialogType) {
-            case DialogType.EDIT_SHORTCUT_GENERIC:
-                contentView = inflater.inflate(
-                        R.layout.accessibility_edit_shortcut, null);
-                initSoftwareShortcut(context, contentView);
-                initHardwareShortcut(context, contentView);
-                break;
-            case DialogType.EDIT_SHORTCUT_GENERIC_SUW:
-                contentView = inflater.inflate(
-                        R.layout.accessibility_edit_shortcut, null);
-                initSoftwareShortcutForSUW(context, contentView);
-                initHardwareShortcut(context, contentView);
-                break;
-            case DialogType.EDIT_SHORTCUT_MAGNIFICATION:
-                contentView = inflater.inflate(
-                        R.layout.accessibility_edit_shortcut_magnification, null);
-                initSoftwareShortcut(context, contentView);
-                initHardwareShortcut(context, contentView);
-                if (Flags.enableMagnificationMultipleFingerMultipleTapGesture()) {
-                    initTwoFingerDoubleTapMagnificationShortcut(context, contentView);
-                }
-                initMagnifyShortcut(context, contentView);
-                initAdvancedWidget(contentView);
-                break;
-            case DialogType.EDIT_SHORTCUT_MAGNIFICATION_SUW:
-                contentView = inflater.inflate(
-                        R.layout.accessibility_edit_shortcut_magnification, null);
-                initSoftwareShortcutForSUW(context, contentView);
-                initHardwareShortcut(context, contentView);
-                if (Flags.enableMagnificationMultipleFingerMultipleTapGesture()) {
-                    initTwoFingerDoubleTapMagnificationShortcut(context, contentView);
-                }
-                initMagnifyShortcut(context, contentView);
-                initAdvancedWidget(contentView);
-                break;
-            default:
-                throw new IllegalArgumentException();
-        }
-
-        return contentView;
-    }
-
-    private static void setupShortcutWidget(View view, CharSequence titleText,
-            CharSequence summaryText, @DrawableRes int imageResId) {
-        setupShortcutWidgetWithTitleAndSummary(view, titleText, summaryText);
-        setupShortcutWidgetWithImageResource(view, imageResId);
-    }
-
-    private static void setupShortcutWidgetWithImageRawResource(Context context,
-            View view, CharSequence titleText,
-            CharSequence summaryText, @RawRes int imageRawResId) {
-        setupShortcutWidgetWithTitleAndSummary(view, titleText, summaryText);
-        setupShortcutWidgetWithImageRawResource(context, view, imageRawResId);
-    }
-
-    private static void setupShortcutWidgetWithTitleAndSummary(View view, CharSequence titleText,
-            CharSequence summaryText) {
-        final CheckBox checkBox = view.findViewById(R.id.checkbox);
-        checkBox.setText(titleText);
-
-        final TextView summary = view.findViewById(R.id.summary);
-        if (TextUtils.isEmpty(summaryText)) {
-            summary.setVisibility(View.GONE);
-        } else {
-            summary.setText(summaryText);
-            summary.setMovementMethod(LinkMovementMethod.getInstance());
-            summary.setFocusable(false);
-        }
-    }
-
-    private static void setupShortcutWidgetWithImageResource(View view,
-            @DrawableRes int imageResId) {
-        final ImageView imageView = view.findViewById(R.id.image);
-        imageView.setImageResource(imageResId);
-    }
-
-    private static void setupShortcutWidgetWithImageRawResource(Context context, View view,
-            @RawRes int imageRawResId) {
-        final LottieAnimationView lottieView = view.findViewById(R.id.image);
-        lottieView.setFailureListener(
-                result -> Log.w(TAG, "Invalid image raw resource id: " + imageRawResId,
-                        result));
-        lottieView.setAnimation(imageRawResId);
-        lottieView.setRepeatCount(LottieDrawable.INFINITE);
-        LottieColorUtils.applyDynamicColors(context, lottieView);
-        lottieView.playAnimation();
-    }
-
-    private static void initSoftwareShortcutForSUW(Context context, View view) {
-        final View dialogView = view.findViewById(R.id.software_shortcut);
-        final CharSequence title = context.getText(
-                R.string.accessibility_shortcut_edit_dialog_title_software);
-        final TextView summary = dialogView.findViewById(R.id.summary);
-        final int lineHeight = summary.getLineHeight();
-
-        setupShortcutWidget(dialogView, title,
-                retrieveSoftwareShortcutSummaryForSUW(context, lineHeight),
-                retrieveSoftwareShortcutImageResId(context));
-    }
-
-    private static void initSoftwareShortcut(Context context, View view) {
-        final View dialogView = view.findViewById(R.id.software_shortcut);
-        final TextView summary = dialogView.findViewById(R.id.summary);
-        final int lineHeight = summary.getLineHeight();
-
-        setupShortcutWidget(dialogView,
-                retrieveTitle(context),
-                retrieveSoftwareShortcutSummary(context, lineHeight),
-                retrieveSoftwareShortcutImageResId(context));
-    }
-
-    private static void initHardwareShortcut(Context context, View view) {
-        final View dialogView = view.findViewById(R.id.hardware_shortcut);
-        final CharSequence title = context.getText(
-                R.string.accessibility_shortcut_edit_dialog_title_hardware);
-        final CharSequence summary = context.getText(
-                R.string.accessibility_shortcut_edit_dialog_summary_hardware);
-        setupShortcutWidget(dialogView, title, summary,
-                R.drawable.a11y_shortcut_type_hardware);
-    }
-
-    private static void initMagnifyShortcut(Context context, View view) {
-        final View dialogView = view.findViewById(R.id.triple_tap_shortcut);
-        final CharSequence title = context.getText(
-                R.string.accessibility_shortcut_edit_dialog_title_triple_tap);
-        String summary = context.getString(
-                R.string.accessibility_shortcut_edit_dialog_summary_triple_tap);
-        // Format the number '3' in the summary.
-        final Object[] arguments = {3};
-        summary = MessageFormat.format(summary, arguments);
-
-        setupShortcutWidgetWithImageRawResource(context, dialogView, title, summary,
-                R.raw.a11y_shortcut_type_triple_tap);
-    }
-
-    private static void initTwoFingerDoubleTapMagnificationShortcut(Context context, View view) {
-        // TODO(b/306153204): Update shortcut string and image when UX provides them
-        final View dialogView = view.findViewById(R.id.two_finger_triple_tap_shortcut);
-        final CharSequence title = context.getText(
-                R.string.accessibility_shortcut_edit_dialog_title_two_finger_double_tap);
-        String summary = context.getString(
-                R.string.accessibility_shortcut_edit_dialog_summary_two_finger_double_tap);
-        // Format the number '2' in the summary.
-        final Object[] arguments = {2};
-        summary = MessageFormat.format(summary, arguments);
-
-        setupShortcutWidgetWithImageRawResource(context, dialogView, title, summary,
-                R.raw.a11y_shortcut_type_triple_tap);
-
-        dialogView.setVisibility(View.VISIBLE);
-    }
-
-    private static void initAdvancedWidget(View view) {
-        final LinearLayout advanced = view.findViewById(R.id.advanced_shortcut);
-        final View tripleTap = view.findViewById(R.id.triple_tap_shortcut);
-        advanced.setOnClickListener((View v) -> {
-            advanced.setVisibility(View.GONE);
-            tripleTap.setVisibility(View.VISIBLE);
-        });
-    }
-
-    private static CharSequence retrieveSoftwareShortcutSummaryForSUW(Context context,
-            int lineHeight) {
-        final SpannableStringBuilder sb = new SpannableStringBuilder();
-        if (!AccessibilityUtil.isFloatingMenuEnabled(context)) {
-            sb.append(getSummaryStringWithIcon(context, lineHeight));
-        }
-        return sb;
-    }
-
-    private static CharSequence retrieveTitle(Context context) {
-        int resId;
-        if (AccessibilityUtil.isFloatingMenuEnabled(context)) {
-            resId = R.string.accessibility_shortcut_edit_dialog_title_software;
-        } else if (AccessibilityUtil.isGestureNavigateEnabled(context)) {
-            resId = R.string.accessibility_shortcut_edit_dialog_title_software_by_gesture;
-        } else {
-            resId = R.string.accessibility_shortcut_edit_dialog_title_software;
-        }
-        return context.getText(resId);
-    }
-
-    private static CharSequence retrieveSoftwareShortcutSummary(Context context, int lineHeight) {
-        final SpannableStringBuilder sb = new SpannableStringBuilder();
-        if (AccessibilityUtil.isFloatingMenuEnabled(context)) {
-            sb.append(getCustomizeAccessibilityButtonLink(context));
-        } else if (AccessibilityUtil.isGestureNavigateEnabled(context)) {
-            final int resId = AccessibilityUtil.isTouchExploreEnabled(context)
-                    ? R.string.accessibility_shortcut_edit_dialog_summary_software_gesture_talkback
-                    : R.string.accessibility_shortcut_edit_dialog_summary_software_gesture;
-            sb.append(context.getText(resId));
-            sb.append("\n\n");
-            sb.append(getCustomizeAccessibilityButtonLink(context));
-        } else {
-            sb.append(getSummaryStringWithIcon(context, lineHeight));
-            sb.append("\n\n");
-            sb.append(getCustomizeAccessibilityButtonLink(context));
-        }
-        return sb;
-    }
-
-    private static int retrieveSoftwareShortcutImageResId(Context context) {
-        int resId;
-        if (AccessibilityUtil.isFloatingMenuEnabled(context)) {
-            resId = R.drawable.a11y_shortcut_type_software_floating;
-        } else if (AccessibilityUtil.isGestureNavigateEnabled(context)) {
-            resId = AccessibilityUtil.isTouchExploreEnabled(context)
-                    ? R.drawable.a11y_shortcut_type_software_gesture_talkback
-                    : R.drawable.a11y_shortcut_type_software_gesture;
-        } else {
-            resId = R.drawable.a11y_shortcut_type_software;
-        }
-        return resId;
-    }
-
-    private static CharSequence getCustomizeAccessibilityButtonLink(Context context) {
-        final View.OnClickListener linkListener = v -> new SubSettingLauncher(context)
-                .setDestination(AccessibilityButtonFragment.class.getName())
-                .setSourceMetricsCategory(
-                        SettingsEnums.SWITCH_SHORTCUT_DIALOG_ACCESSIBILITY_BUTTON_SETTINGS)
-                .launch();
-        final AnnotationSpan.LinkInfo linkInfo = new AnnotationSpan.LinkInfo(
-                AnnotationSpan.LinkInfo.DEFAULT_ANNOTATION, linkListener);
-        return AnnotationSpan.linkify(context.getText(
-                R.string.accessibility_shortcut_edit_dialog_summary_software_floating), linkInfo);
-    }
-
-    private static SpannableString getSummaryStringWithIcon(Context context, int lineHeight) {
-        final String summary = context
-                .getString(R.string.accessibility_shortcut_edit_dialog_summary_software);
-        final SpannableString spannableMessage = SpannableString.valueOf(summary);
-
-        // Icon
-        final int indexIconStart = summary.indexOf("%s");
-        final int indexIconEnd = indexIconStart + 2;
-        final Drawable icon = context.getDrawable(R.drawable.ic_accessibility_new);
-        final ImageSpan imageSpan = new ImageSpan(icon);
-        imageSpan.setContentDescription("");
-        icon.setBounds(0, 0, lineHeight, lineHeight);
-        spannableMessage.setSpan(
-                imageSpan, indexIconStart, indexIconEnd,
-                Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
-        return spannableMessage;
-    }
-
-    /**
-     * Returns the color associated with the specified attribute in the context's theme.
-     */
-    @ColorInt
-    private static int getThemeAttrColor(final Context context, final int attributeColor) {
-        final int colorResId = getAttrResourceId(context, attributeColor);
-        return ContextCompat.getColor(context, colorResId);
-    }
-
-    /**
-     * Returns the identifier of the resolved resource assigned to the given attribute.
-     */
-    private static int getAttrResourceId(final Context context, final int attributeColor) {
-        final int[] attrs = {attributeColor};
-        final TypedArray typedArray = context.obtainStyledAttributes(attrs);
-        final int colorResId = typedArray.getResourceId(0, 0);
-        typedArray.recycle();
-        return colorResId;
-    }
-
-    /**
      * Creates a dialog with the given view.
      *
      * @param context A valid context
diff --git a/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragment.java b/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragment.java
index 0f55a11..e92c86b 100644
--- a/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragment.java
+++ b/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragment.java
@@ -39,7 +39,6 @@
 import android.view.View;
 import android.view.ViewGroup;
 import android.view.accessibility.AccessibilityManager;
-import android.widget.CheckBox;
 
 import androidx.annotation.Nullable;
 import androidx.annotation.VisibleForTesting;
@@ -66,19 +65,13 @@
 public abstract class AccessibilityShortcutPreferenceFragment extends RestrictedDashboardFragment
         implements ShortcutPreference.OnClickCallback {
     private static final String KEY_SHORTCUT_PREFERENCE = "shortcut_preference";
-    protected static final String KEY_SAVED_USER_SHORTCUT_TYPE = "shortcut_type";
     protected static final String KEY_SAVED_QS_TOOLTIP_RESHOW = "qs_tooltip_reshow";
-    protected static final int NOT_SET = -1;
-    // Save user's shortcutType value when savedInstance has value (e.g. device rotated).
-    protected int mSavedCheckBoxValue = NOT_SET;
 
     protected ShortcutPreference mShortcutPreference;
     protected Dialog mDialog;
     private AccessibilityManager.TouchExplorationStateChangeListener
             mTouchExplorationStateChangeListener;
     private AccessibilitySettingsContentObserver mSettingsContentObserver;
-    private CheckBox mSoftwareTypeCheckBox;
-    private CheckBox mHardwareTypeCheckBox;
     private AccessibilityQuickSettingsTooltipWindow mTooltipWindow;
     private boolean mNeedsQSTooltipReshow = false;
     private int mNeedsQSTooltipType = QuickSettingsTooltipType.GUIDE_TO_EDIT;
@@ -105,10 +98,6 @@
 
         // Restore the user shortcut type and tooltip.
         if (savedInstanceState != null) {
-            if (savedInstanceState.containsKey(KEY_SAVED_USER_SHORTCUT_TYPE)) {
-                mSavedCheckBoxValue = savedInstanceState.getInt(KEY_SAVED_USER_SHORTCUT_TYPE,
-                        NOT_SET);
-            }
             if (savedInstanceState.containsKey(KEY_SAVED_QS_TOOLTIP_RESHOW)) {
                 mNeedsQSTooltipReshow = savedInstanceState.getBoolean(KEY_SAVED_QS_TOOLTIP_RESHOW);
             }
@@ -153,7 +142,6 @@
         getPreferenceScreen().addPreference(mShortcutPreference);
 
         mTouchExplorationStateChangeListener = isTouchExplorationEnabled -> {
-            removeDialog(DialogEnums.EDIT_SHORTCUT);
             mShortcutPreference.setSummary(getShortcutTypeSummary(getPrefContext()));
         };
 
@@ -185,8 +173,6 @@
         mSettingsContentObserver.register(getContentResolver());
         updateShortcutPreferenceData();
         updateShortcutPreference();
-
-        updateEditShortcutDialogIfNeeded();
     }
 
     @Override
@@ -200,10 +186,6 @@
 
     @Override
     public void onSaveInstanceState(Bundle outState) {
-        final int value = getShortcutTypeCheckBoxValue();
-        if (value != NOT_SET) {
-            outState.putInt(KEY_SAVED_USER_SHORTCUT_TYPE, value);
-        }
         final boolean isTooltipWindowShowing = mTooltipWindow != null && mTooltipWindow.isShowing();
         if (mNeedsQSTooltipReshow || isTooltipWindowShowing) {
             outState.putBoolean(KEY_SAVED_QS_TOOLTIP_RESHOW, /* value= */ true);
@@ -215,15 +197,6 @@
     @Override
     public Dialog onCreateDialog(int dialogId) {
         switch (dialogId) {
-            case DialogEnums.EDIT_SHORTCUT:
-                final int dialogType = WizardManagerHelper.isAnySetupWizard(getIntent())
-                        ? AccessibilityDialogUtils.DialogType.EDIT_SHORTCUT_GENERIC_SUW :
-                        AccessibilityDialogUtils.DialogType.EDIT_SHORTCUT_GENERIC;
-                mDialog = AccessibilityDialogUtils.showEditShortcutDialog(
-                        getPrefContext(), dialogType, getShortcutTitle(),
-                        this::callOnAlertDialogCheckboxClicked);
-                setupEditShortcutDialog(mDialog);
-                return mDialog;
             case DialogEnums.LAUNCH_ACCESSIBILITY_TUTORIAL:
                 if (WizardManagerHelper.isAnySetupWizard(getIntent())) {
                     mDialog = AccessibilityShortcutsTutorial
@@ -250,8 +223,6 @@
     @Override
     public int getDialogMetricsCategory(int dialogId) {
         switch (dialogId) {
-            case DialogEnums.EDIT_SHORTCUT:
-                return SettingsEnums.DIALOG_ACCESSIBILITY_SERVICE_EDIT_SHORTCUT;
             case DialogEnums.LAUNCH_ACCESSIBILITY_TUTORIAL:
                 return SettingsEnums.DIALOG_ACCESSIBILITY_TUTORIAL;
             default:
@@ -261,17 +232,13 @@
 
     @Override
     public void onSettingsClicked(ShortcutPreference preference) {
-        if (Flags.editShortcutsInFullScreen()) {
-            EditShortcutsPreferenceFragment.showEditShortcutScreen(
-                    getContext(),
-                    getMetricsCategory(),
-                    getShortcutTitle(),
-                    getComponentName(),
-                    getIntent()
-            );
-        } else {
-            showDialog(DialogEnums.EDIT_SHORTCUT);
-        }
+        EditShortcutsPreferenceFragment.showEditShortcutScreen(
+                getContext(),
+                getMetricsCategory(),
+                getShortcutTitle(),
+                getComponentName(),
+                getIntent()
+        );
     }
 
     @Override
@@ -301,38 +268,6 @@
         return KEY_SHORTCUT_PREFERENCE;
     }
 
-    @VisibleForTesting
-    void setupEditShortcutDialog(Dialog dialog) {
-        final View dialogSoftwareView = dialog.findViewById(R.id.software_shortcut);
-        mSoftwareTypeCheckBox = dialogSoftwareView.findViewById(R.id.checkbox);
-        setDialogTextAreaClickListener(dialogSoftwareView, mSoftwareTypeCheckBox);
-
-        final View dialogHardwareView = dialog.findViewById(R.id.hardware_shortcut);
-        mHardwareTypeCheckBox = dialogHardwareView.findViewById(R.id.checkbox);
-        setDialogTextAreaClickListener(dialogHardwareView, mHardwareTypeCheckBox);
-
-        updateEditShortcutDialogCheckBox();
-    }
-
-    /**
-     * Returns accumulated {@link UserShortcutType} checkbox value or
-     * {@code NOT_SET} if checkboxes did not exist.
-     */
-    protected int getShortcutTypeCheckBoxValue() {
-        if (mSoftwareTypeCheckBox == null || mHardwareTypeCheckBox == null) {
-            return NOT_SET;
-        }
-
-        int value = DEFAULT;
-        if (mSoftwareTypeCheckBox.isChecked()) {
-            value |= SOFTWARE;
-        }
-        if (mHardwareTypeCheckBox.isChecked()) {
-            value |= HARDWARE;
-        }
-        return value;
-    }
-
     /**
      * Returns the shortcut type list which has been checked by user.
      */
@@ -364,35 +299,6 @@
         showQuickSettingsTooltipIfNeeded();
     }
 
-    /**
-     * This method will be invoked when a button in the edit shortcut dialog is clicked.
-     *
-     * @param dialog The dialog that received the click
-     * @param which  The button that was clicked
-     */
-    protected void callOnAlertDialogCheckboxClicked(DialogInterface dialog, int which) {
-        if (getComponentName() == null) {
-            return;
-        }
-
-        final int value = getShortcutTypeCheckBoxValue();
-        saveNonEmptyUserShortcutType(value);
-        AccessibilityUtil.optInAllValuesToSettings(getPrefContext(), value, getComponentName());
-        AccessibilityUtil.optOutAllValuesFromSettings(getPrefContext(), ~value, getComponentName());
-        final boolean shortcutAssigned = value != DEFAULT;
-        mShortcutPreference.setChecked(shortcutAssigned);
-        mShortcutPreference.setSummary(getShortcutTypeSummary(getPrefContext()));
-
-        if (mHardwareTypeCheckBox.isChecked()) {
-            AccessibilityUtil.skipVolumeShortcutDialogTimeoutRestriction(getPrefContext());
-        }
-
-        // Show the quick setting tooltip if the shortcut assigned in the first time
-        if (shortcutAssigned) {
-            showQuickSettingsTooltipIfNeeded();
-        }
-    }
-
     @VisibleForTesting
     void initGeneralCategory() {
         final PreferenceCategory generalCategory = new PreferenceCategory(getPrefContext());
@@ -402,24 +308,6 @@
         getPreferenceScreen().addPreference(generalCategory);
     }
 
-    private void updateEditShortcutDialogIfNeeded() {
-        if (mDialog == null || !mDialog.isShowing()) {
-            return;
-        }
-        AccessibilityDialogUtils.updateShortcutInDialog(getContext(), mDialog);
-    }
-
-    @VisibleForTesting
-    void saveNonEmptyUserShortcutType(int type) {
-        if (type == DEFAULT) {
-            return;
-        }
-
-        final PreferredShortcut shortcut = new PreferredShortcut(
-                getComponentName().flattenToString(), type);
-        PreferredShortcuts.saveUserShortcutType(getPrefContext(), shortcut);
-    }
-
     /**
      * Overrides to return customized description for general category above shortcut
      *
@@ -442,11 +330,6 @@
         return false;
     }
 
-    private void setDialogTextAreaClickListener(View dialogView, CheckBox checkBox) {
-        final View dialogTextArea = dialogView.findViewById(R.id.container);
-        dialogTextArea.setOnClickListener(v -> checkBox.toggle());
-    }
-
     protected CharSequence getShortcutTypeSummary(Context context) {
         if (!mShortcutPreference.isSettingsEditable()) {
             return context.getText(R.string.accessibility_shortcut_edit_dialog_title_hardware);
@@ -486,28 +369,6 @@
                 null, LocaleUtils.getConcatenatedString(list));
     }
 
-    private void updateEditShortcutDialogCheckBox() {
-        // If it is during onConfigChanged process then restore the value, or get the saved value
-        // when shortcutPreference is checked.
-        int value = restoreOnConfigChangedValue();
-        if (value == NOT_SET) {
-            final int lastNonEmptyUserShortcutType = getUserPreferredShortcutTypes();
-            value = mShortcutPreference.isChecked() ? lastNonEmptyUserShortcutType
-                    : DEFAULT;
-        }
-
-        mSoftwareTypeCheckBox.setChecked(
-                hasShortcutType(value, SOFTWARE));
-        mHardwareTypeCheckBox.setChecked(
-                hasShortcutType(value, HARDWARE));
-    }
-
-    private int restoreOnConfigChangedValue() {
-        final int savedValue = mSavedCheckBoxValue;
-        mSavedCheckBoxValue = NOT_SET;
-        return savedValue;
-    }
-
     private boolean hasShortcutType(int value, @UserShortcutType int type) {
         return (value & type) == type;
     }
diff --git a/src/com/android/settings/accessibility/InvisibleToggleAccessibilityServicePreferenceFragment.java b/src/com/android/settings/accessibility/InvisibleToggleAccessibilityServicePreferenceFragment.java
index eb7b27d..9c8560b 100644
--- a/src/com/android/settings/accessibility/InvisibleToggleAccessibilityServicePreferenceFragment.java
+++ b/src/com/android/settings/accessibility/InvisibleToggleAccessibilityServicePreferenceFragment.java
@@ -17,7 +17,6 @@
 package com.android.settings.accessibility;
 
 import android.accessibilityservice.AccessibilityServiceInfo;
-import android.content.DialogInterface;
 
 import com.android.settingslib.accessibility.AccessibilityUtils;
 
@@ -63,17 +62,4 @@
         super.onAllowButtonFromShortcutToggleClicked();
         AccessibilityUtils.setAccessibilityServiceState(getContext(), mComponentName, true);
     }
-
-    /**
-     * {@inheritDoc}
-     *
-     * Enables accessibility service when shortcutPreference is checked.
-     */
-    @Override
-    protected void callOnAlertDialogCheckboxClicked(DialogInterface dialog, int which) {
-        super.callOnAlertDialogCheckboxClicked(dialog, which);
-
-        final boolean enabled = mShortcutPreference.isChecked();
-        AccessibilityUtils.setAccessibilityServiceState(getContext(), mComponentName, enabled);
-    }
 }
diff --git a/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java b/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java
index a79098b..e41d857 100644
--- a/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java
+++ b/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java
@@ -40,7 +40,6 @@
 import android.util.Log;
 import android.view.Menu;
 import android.view.MenuInflater;
-import android.view.View;
 import android.view.accessibility.AccessibilityManager;
 import android.widget.CompoundButton;
 
@@ -411,17 +410,6 @@
         }
     }
 
-    private void onDialogButtonFromEnableToggleClicked(View view) {
-        final int viewId = view.getId();
-        if (viewId == R.id.permission_enable_allow_button) {
-            onAllowButtonFromEnableToggleClicked();
-        } else if (viewId == R.id.permission_enable_deny_button) {
-            onDenyButtonFromEnableToggleClicked();
-        } else {
-            throw new IllegalArgumentException("Unexpected view id");
-        }
-    }
-
     private void onDialogButtonFromUninstallClicked() {
         mWarningDialog.dismiss();
         final Intent uninstallIntent = createUninstallPackageActivityIntent();
@@ -491,17 +479,6 @@
         mWarningDialog.dismiss();
     }
 
-    void onDialogButtonFromShortcutToggleClicked(View view) {
-        final int viewId = view.getId();
-        if (viewId == R.id.permission_enable_allow_button) {
-            onAllowButtonFromShortcutToggleClicked();
-        } else if (viewId == R.id.permission_enable_deny_button) {
-            onDenyButtonFromShortcutToggleClicked();
-        } else {
-            throw new IllegalArgumentException("Unexpected view id");
-        }
-    }
-
     void onAllowButtonFromShortcutToggleClicked() {
         mShortcutPreference.setChecked(true);
 
@@ -526,17 +503,13 @@
 
     private void onAllowButtonFromShortcutClicked() {
         mIsDialogShown.set(false);
-        if (Flags.editShortcutsInFullScreen()) {
-            EditShortcutsPreferenceFragment.showEditShortcutScreen(
-                    getContext(),
-                    getMetricsCategory(),
-                    getShortcutTitle(),
-                    mComponentName,
-                    getIntent()
-            );
-        } else {
-            showPopupDialog(DialogEnums.EDIT_SHORTCUT);
-        }
+        EditShortcutsPreferenceFragment.showEditShortcutScreen(
+                getContext(),
+                getMetricsCategory(),
+                getShortcutTitle(),
+                mComponentName,
+                getIntent()
+        );
 
         if (mWarningDialog != null) {
             mWarningDialog.dismiss();
diff --git a/src/com/android/settings/accessibility/ToggleFeaturePreferenceFragment.java b/src/com/android/settings/accessibility/ToggleFeaturePreferenceFragment.java
index 8bbc7a8..0ac29bc 100644
--- a/src/com/android/settings/accessibility/ToggleFeaturePreferenceFragment.java
+++ b/src/com/android/settings/accessibility/ToggleFeaturePreferenceFragment.java
@@ -47,7 +47,6 @@
 import android.view.ViewGroup;
 import android.view.accessibility.AccessibilityManager;
 import android.view.accessibility.AccessibilityManager.TouchExplorationStateChangeListener;
-import android.widget.CheckBox;
 import android.widget.CompoundButton;
 import android.widget.CompoundButton.OnCheckedChangeListener;
 import android.widget.ImageView;
@@ -62,7 +61,6 @@
 import com.android.internal.accessibility.common.ShortcutConstants.UserShortcutType;
 import com.android.settings.R;
 import com.android.settings.SettingsActivity;
-import com.android.settings.accessibility.AccessibilityDialogUtils.DialogType;
 import com.android.settings.accessibility.AccessibilityUtil.QuickSettingsTooltipType;
 import com.android.settings.accessibility.shortcuts.EditShortcutsPreferenceFragment;
 import com.android.settings.dashboard.DashboardFragment;
@@ -88,11 +86,9 @@
 
     public static final String KEY_GENERAL_CATEGORY = "general_categories";
     public static final String KEY_SHORTCUT_PREFERENCE = "shortcut_preference";
-    public static final int NOT_SET = -1;
     protected static final String KEY_TOP_INTRO_PREFERENCE = "top_intro";
     protected static final String KEY_USE_SERVICE_PREFERENCE = "use_service";
     protected static final String KEY_HTML_DESCRIPTION_PREFERENCE = "html_description";
-    protected static final String KEY_SAVED_USER_SHORTCUT_TYPE = "shortcut_type";
     protected static final String KEY_SAVED_QS_TOOLTIP_RESHOW = "qs_tooltip_reshow";
     protected static final String KEY_SAVED_QS_TOOLTIP_TYPE = "qs_tooltip_type";
     protected static final String KEY_ANIMATED_IMAGE = "animated_image";
@@ -117,15 +113,10 @@
     protected Uri mImageUri;
     protected CharSequence mHtmlDescription;
     protected CharSequence mTopIntroTitle;
-    // Save user's shortcutType value when savedInstance has value (e.g. device rotated).
-    protected int mSavedCheckBoxValue = NOT_SET;
     private CharSequence mDescription;
     private TouchExplorationStateChangeListener mTouchExplorationStateChangeListener;
     private AccessibilitySettingsContentObserver mSettingsContentObserver;
 
-    private CheckBox mSoftwareTypeCheckBox;
-    private CheckBox mHardwareTypeCheckBox;
-
     private AccessibilityQuickSettingsTooltipWindow mTooltipWindow;
     private boolean mNeedsQSTooltipReshow = false;
     private int mNeedsQSTooltipType = QuickSettingsTooltipType.GUIDE_TO_EDIT;
@@ -148,10 +139,6 @@
         onProcessArguments(getArguments());
         // Restore the user shortcut type and tooltip.
         if (savedInstanceState != null) {
-            if (savedInstanceState.containsKey(KEY_SAVED_USER_SHORTCUT_TYPE)) {
-                mSavedCheckBoxValue = savedInstanceState.getInt(KEY_SAVED_USER_SHORTCUT_TYPE,
-                        NOT_SET);
-            }
             if (savedInstanceState.containsKey(KEY_SAVED_QS_TOOLTIP_RESHOW)) {
                 mNeedsQSTooltipReshow = savedInstanceState.getBoolean(KEY_SAVED_QS_TOOLTIP_RESHOW);
             }
@@ -209,7 +196,6 @@
         updateToggleServiceTitle(mToggleServiceSwitchPreference);
 
         mTouchExplorationStateChangeListener = isTouchExplorationEnabled -> {
-            removeDialog(DialogEnums.EDIT_SHORTCUT);
             mShortcutPreference.setSummary(getShortcutTypeSummary(getPrefContext()));
         };
 
@@ -220,14 +206,6 @@
     @Override
     public Dialog onCreateDialog(int dialogId) {
         switch (dialogId) {
-            case DialogEnums.EDIT_SHORTCUT:
-                final int dialogType = isAnySetupWizard()
-                        ? DialogType.EDIT_SHORTCUT_GENERIC_SUW : DialogType.EDIT_SHORTCUT_GENERIC;
-                mDialog = AccessibilityDialogUtils.showEditShortcutDialog(
-                        getPrefContext(), dialogType, getShortcutTitle(),
-                        this::callOnAlertDialogCheckboxClicked);
-                setupEditShortcutDialog(mDialog);
-                return mDialog;
             case DialogEnums.LAUNCH_ACCESSIBILITY_TUTORIAL:
                 if (isAnySetupWizard()) {
                     mDialog = AccessibilityShortcutsTutorial
@@ -278,8 +256,6 @@
         mSettingsContentObserver.register(getContentResolver());
         updateShortcutPreferenceData();
         updateShortcutPreference();
-
-        updateEditShortcutDialogIfNeeded();
     }
 
     @Override
@@ -293,10 +269,6 @@
 
     @Override
     public void onSaveInstanceState(Bundle outState) {
-        final int value = getShortcutTypeCheckBoxValue();
-        if (value != NOT_SET) {
-            outState.putInt(KEY_SAVED_USER_SHORTCUT_TYPE, value);
-        }
         final boolean isTooltipWindowShowing = mTooltipWindow != null && mTooltipWindow.isShowing();
         if (mNeedsQSTooltipReshow || isTooltipWindowShowing) {
             outState.putBoolean(KEY_SAVED_QS_TOOLTIP_RESHOW, /* value= */ true);
@@ -318,8 +290,6 @@
     @Override
     public int getDialogMetricsCategory(int dialogId) {
         switch (dialogId) {
-            case DialogEnums.EDIT_SHORTCUT:
-                return SettingsEnums.DIALOG_ACCESSIBILITY_SERVICE_EDIT_SHORTCUT;
             case DialogEnums.LAUNCH_ACCESSIBILITY_TUTORIAL:
                 return SettingsEnums.DIALOG_ACCESSIBILITY_TUTORIAL;
             default:
@@ -656,69 +626,10 @@
         mFooterPreferenceController.displayPreference(screen);
     }
 
-    @VisibleForTesting
-    void setupEditShortcutDialog(Dialog dialog) {
-        final View dialogSoftwareView = dialog.findViewById(R.id.software_shortcut);
-        mSoftwareTypeCheckBox = dialogSoftwareView.findViewById(R.id.checkbox);
-        setDialogTextAreaClickListener(dialogSoftwareView, mSoftwareTypeCheckBox);
-
-        final View dialogHardwareView = dialog.findViewById(R.id.hardware_shortcut);
-        mHardwareTypeCheckBox = dialogHardwareView.findViewById(R.id.checkbox);
-        setDialogTextAreaClickListener(dialogHardwareView, mHardwareTypeCheckBox);
-
-        updateEditShortcutDialogCheckBox();
-    }
-
-    private void setDialogTextAreaClickListener(View dialogView, CheckBox checkBox) {
-        final View dialogTextArea = dialogView.findViewById(R.id.container);
-        dialogTextArea.setOnClickListener(v -> checkBox.toggle());
-    }
-
-    private void updateEditShortcutDialogCheckBox() {
-        // If it is during onConfigChanged process then restore the value, or get the saved value
-        // when shortcutPreference is checked.
-        int value = restoreOnConfigChangedValue();
-        if (value == NOT_SET) {
-            final int lastNonEmptyUserShortcutType = getUserPreferredShortcutTypes();
-            value = mShortcutPreference.isChecked() ? lastNonEmptyUserShortcutType
-                    : DEFAULT;
-        }
-
-        mSoftwareTypeCheckBox.setChecked(
-                hasShortcutType(value, SOFTWARE));
-        mHardwareTypeCheckBox.setChecked(
-                hasShortcutType(value, HARDWARE));
-    }
-
-    private int restoreOnConfigChangedValue() {
-        final int savedValue = mSavedCheckBoxValue;
-        mSavedCheckBoxValue = NOT_SET;
-        return savedValue;
-    }
-
     private boolean hasShortcutType(int value, @UserShortcutType int type) {
         return (value & type) == type;
     }
 
-    /**
-     * Returns accumulated {@link UserShortcutType} checkbox value or {@code NOT_SET} if checkboxes
-     * did not exist.
-     */
-    protected int getShortcutTypeCheckBoxValue() {
-        if (mSoftwareTypeCheckBox == null || mHardwareTypeCheckBox == null) {
-            return NOT_SET;
-        }
-
-        int value = DEFAULT;
-        if (mSoftwareTypeCheckBox.isChecked()) {
-            value |= SOFTWARE;
-        }
-        if (mHardwareTypeCheckBox.isChecked()) {
-            value |= HARDWARE;
-        }
-        return value;
-    }
-
     protected CharSequence getShortcutTypeSummary(Context context) {
         if (!mShortcutPreference.isSettingsEditable()) {
             return context.getText(R.string.accessibility_shortcut_edit_dialog_title_hardware);
@@ -782,35 +693,6 @@
         showQuickSettingsTooltipIfNeeded();
     }
 
-    /**
-     * This method will be invoked when a button in the edit shortcut dialog is clicked.
-     *
-     * @param dialog The dialog that received the click
-     * @param which  The button that was clicked
-     */
-    protected void callOnAlertDialogCheckboxClicked(DialogInterface dialog, int which) {
-        if (mComponentName == null) {
-            return;
-        }
-
-        final int value = getShortcutTypeCheckBoxValue();
-        saveNonEmptyUserShortcutType(value);
-        AccessibilityUtil.optInAllValuesToSettings(getPrefContext(), value, mComponentName);
-        AccessibilityUtil.optOutAllValuesFromSettings(getPrefContext(), ~value, mComponentName);
-        final boolean shortcutAssigned = value != DEFAULT;
-        mShortcutPreference.setChecked(shortcutAssigned);
-        mShortcutPreference.setSummary(getShortcutTypeSummary(getPrefContext()));
-
-        if (mHardwareTypeCheckBox.isChecked()) {
-            AccessibilityUtil.skipVolumeShortcutDialogTimeoutRestriction(getPrefContext());
-        }
-
-        // Show the quick setting tooltip if the shortcut assigned in the first time
-        if (shortcutAssigned) {
-            showQuickSettingsTooltipIfNeeded();
-        }
-    }
-
     protected void updateShortcutPreferenceData() {
         if (mComponentName == null) {
             return;
@@ -861,13 +743,9 @@
 
     @Override
     public void onSettingsClicked(ShortcutPreference preference) {
-        if (com.android.settings.accessibility.Flags.editShortcutsInFullScreen()) {
-            EditShortcutsPreferenceFragment.showEditShortcutScreen(
-                    requireContext(), getMetricsCategory(), getShortcutTitle(),
-                    mComponentName, getIntent());
-        } else {
-            showDialog(DialogEnums.EDIT_SHORTCUT);
-        }
+        EditShortcutsPreferenceFragment.showEditShortcutScreen(
+                requireContext(), getMetricsCategory(), getShortcutTitle(),
+                mComponentName, getIntent());
     }
 
     /**
@@ -904,24 +782,6 @@
         }
     }
 
-    private void updateEditShortcutDialogIfNeeded() {
-        if (mDialog == null || !mDialog.isShowing()) {
-            return;
-        }
-        AccessibilityDialogUtils.updateShortcutInDialog(getContext(), mDialog);
-    }
-
-    @VisibleForTesting
-    void saveNonEmptyUserShortcutType(int type) {
-        if (type == DEFAULT) {
-            return;
-        }
-
-        final PreferredShortcut shortcut = new PreferredShortcut(
-                mComponentName.flattenToString(), type);
-        PreferredShortcuts.saveUserShortcutType(getPrefContext(), shortcut);
-    }
-
     /**
      * Shows the quick settings tooltip if the quick settings feature is assigned. The tooltip only
      * shows once.
diff --git a/src/com/android/settings/accessibility/ToggleScreenMagnificationPreferenceFragment.java b/src/com/android/settings/accessibility/ToggleScreenMagnificationPreferenceFragment.java
index e339cb4..a030a0a 100644
--- a/src/com/android/settings/accessibility/ToggleScreenMagnificationPreferenceFragment.java
+++ b/src/com/android/settings/accessibility/ToggleScreenMagnificationPreferenceFragment.java
@@ -33,7 +33,6 @@
 import android.content.ComponentName;
 import android.content.ContentResolver;
 import android.content.Context;
-import android.content.DialogInterface;
 import android.content.pm.PackageManager;
 import android.icu.text.CaseMap;
 import android.icu.text.MessageFormat;
@@ -48,7 +47,6 @@
 import android.view.ViewGroup;
 import android.view.accessibility.AccessibilityManager;
 import android.view.accessibility.AccessibilityManager.TouchExplorationStateChangeListener;
-import android.widget.CheckBox;
 
 import androidx.annotation.Nullable;
 import androidx.annotation.StringRes;
@@ -62,7 +60,6 @@
 import com.android.server.accessibility.Flags;
 import com.android.settings.DialogCreatable;
 import com.android.settings.R;
-import com.android.settings.accessibility.AccessibilityDialogUtils.DialogType;
 import com.android.settings.accessibility.AccessibilityUtil.QuickSettingsTooltipType;
 import com.android.settings.accessibility.shortcuts.EditShortcutsPreferenceFragment;
 import com.android.settings.utils.LocaleUtils;
@@ -92,10 +89,6 @@
 
     // TODO(b/147021230): Move duplicated functions with android/internal/accessibility into util.
     private TouchExplorationStateChangeListener mTouchExplorationStateChangeListener;
-    private CheckBox mSoftwareTypeCheckBox;
-    private CheckBox mHardwareTypeCheckBox;
-    private CheckBox mTripleTapTypeCheckBox;
-    @Nullable private CheckBox mTwoFingerTripleTapTypeCheckBox;
     private DialogCreatable mDialogDelegate;
 
     @Nullable
@@ -119,7 +112,6 @@
                 .appendPath(String.valueOf(R.raw.a11y_magnification_banner))
                 .build();
         mTouchExplorationStateChangeListener = isTouchExplorationEnabled -> {
-            removeDialog(DialogEnums.EDIT_SHORTCUT);
             mShortcutPreference.setSummary(getShortcutTypeSummary(getPrefContext()));
         };
 
@@ -184,15 +176,6 @@
             case DialogEnums.GESTURE_NAVIGATION_TUTORIAL:
                 return AccessibilityShortcutsTutorial
                         .showAccessibilityGestureTutorialDialog(getPrefContext());
-            case DialogEnums.MAGNIFICATION_EDIT_SHORTCUT:
-                final CharSequence dialogTitle = getShortcutTitle();
-                final int dialogType = mInSetupWizard
-                        ? DialogType.EDIT_SHORTCUT_MAGNIFICATION_SUW
-                        : DialogType.EDIT_SHORTCUT_MAGNIFICATION;
-                mDialog = AccessibilityDialogUtils.showEditShortcutDialog(getPrefContext(),
-                        dialogType, dialogTitle, this::callOnAlertDialogCheckboxClicked);
-                setupMagnificationEditShortcutDialog(mDialog);
-                return mDialog;
             default:
                 return super.onCreateDialog(dialogId);
         }
@@ -365,95 +348,6 @@
         mDialogDelegate = delegate;
     }
 
-    @Override
-    protected int getShortcutTypeCheckBoxValue() {
-        if (mSoftwareTypeCheckBox == null || mHardwareTypeCheckBox == null) {
-            return NOT_SET;
-        }
-
-        int value = DEFAULT;
-        if (mSoftwareTypeCheckBox.isChecked()) {
-            value |= SOFTWARE;
-        }
-        if (mHardwareTypeCheckBox.isChecked()) {
-            value |= HARDWARE;
-        }
-        if (mTripleTapTypeCheckBox.isChecked()) {
-            value |= TRIPLETAP;
-        }
-        if (Flags.enableMagnificationMultipleFingerMultipleTapGesture()) {
-            if (mTwoFingerTripleTapTypeCheckBox.isChecked()) {
-                value |= TWOFINGER_DOUBLETAP;
-            }
-        }
-        return value;
-    }
-
-    @VisibleForTesting
-    void setupMagnificationEditShortcutDialog(Dialog dialog) {
-        final View dialogSoftwareView = dialog.findViewById(R.id.software_shortcut);
-        mSoftwareTypeCheckBox = dialogSoftwareView.findViewById(R.id.checkbox);
-        setDialogTextAreaClickListener(dialogSoftwareView, mSoftwareTypeCheckBox);
-
-        final View dialogHardwareView = dialog.findViewById(R.id.hardware_shortcut);
-        mHardwareTypeCheckBox = dialogHardwareView.findViewById(R.id.checkbox);
-        setDialogTextAreaClickListener(dialogHardwareView, mHardwareTypeCheckBox);
-
-        if (Flags.enableMagnificationMultipleFingerMultipleTapGesture()) {
-            final View dialogTwoFignerTripleTapView =
-                    dialog.findViewById(R.id.two_finger_triple_tap_shortcut);
-            mTwoFingerTripleTapTypeCheckBox = dialogTwoFignerTripleTapView.findViewById(
-                    R.id.checkbox);
-            setDialogTextAreaClickListener(
-                    dialogTwoFignerTripleTapView, mTwoFingerTripleTapTypeCheckBox);
-        }
-
-        final View dialogTripleTapView = dialog.findViewById(R.id.triple_tap_shortcut);
-        mTripleTapTypeCheckBox = dialogTripleTapView.findViewById(R.id.checkbox);
-        setDialogTextAreaClickListener(dialogTripleTapView, mTripleTapTypeCheckBox);
-
-        final View advancedView = dialog.findViewById(R.id.advanced_shortcut);
-        if (mTripleTapTypeCheckBox.isChecked()) {
-            advancedView.setVisibility(View.GONE);
-            dialogTripleTapView.setVisibility(View.VISIBLE);
-        }
-
-        updateMagnificationEditShortcutDialogCheckBox();
-    }
-
-    private void setDialogTextAreaClickListener(View dialogView, CheckBox checkBox) {
-        final View dialogTextArea = dialogView.findViewById(R.id.container);
-        dialogTextArea.setOnClickListener(v -> checkBox.toggle());
-    }
-
-    private void updateMagnificationEditShortcutDialogCheckBox() {
-        // If it is during onConfigChanged process then restore the value, or get the saved value
-        // when shortcutPreference is checked.
-        int value = restoreOnConfigChangedValue();
-        if (value == NOT_SET) {
-            final int lastNonEmptyUserShortcutType = getUserPreferredShortcutTypes();
-            value = mShortcutPreference.isChecked() ? lastNonEmptyUserShortcutType
-                    : DEFAULT;
-        }
-
-        mSoftwareTypeCheckBox.setChecked(
-                hasShortcutType(value, SOFTWARE));
-        mHardwareTypeCheckBox.setChecked(
-                hasShortcutType(value, HARDWARE));
-        mTripleTapTypeCheckBox.setChecked(
-                hasShortcutType(value, TRIPLETAP));
-        if (Flags.enableMagnificationMultipleFingerMultipleTapGesture()) {
-            mTwoFingerTripleTapTypeCheckBox.setChecked(
-                    hasShortcutType(value, TWOFINGER_DOUBLETAP));
-        }
-    }
-
-    private int restoreOnConfigChangedValue() {
-        final int savedValue = mSavedCheckBoxValue;
-        mSavedCheckBoxValue = NOT_SET;
-        return savedValue;
-    }
-
     private boolean hasShortcutType(int value, @UserShortcutType int type) {
         return (value & type) == type;
     }
@@ -573,22 +467,6 @@
     }
 
     @Override
-    protected void callOnAlertDialogCheckboxClicked(DialogInterface dialog, int which) {
-        final int value = getShortcutTypeCheckBoxValue();
-
-        saveNonEmptyUserShortcutType(value);
-        optInAllMagnificationValuesToSettings(getPrefContext(), value);
-        optOutAllMagnificationValuesFromSettings(getPrefContext(), ~value);
-        mShortcutPreference.setChecked(value != DEFAULT);
-        mShortcutPreference.setSummary(
-                getShortcutTypeSummary(getPrefContext()));
-
-        if (mHardwareTypeCheckBox.isChecked()) {
-            AccessibilityUtil.skipVolumeShortcutDialogTimeoutRestriction(getPrefContext());
-        }
-    }
-
-    @Override
     public int getHelpResource() {
         return R.string.help_url_magnification;
     }
@@ -613,8 +491,6 @@
                 return SettingsEnums.DIALOG_TOGGLE_SCREEN_MAGNIFICATION_GESTURE_NAVIGATION;
             case DialogEnums.ACCESSIBILITY_BUTTON_TUTORIAL:
                 return SettingsEnums.DIALOG_TOGGLE_SCREEN_MAGNIFICATION_ACCESSIBILITY_BUTTON;
-            case DialogEnums.MAGNIFICATION_EDIT_SHORTCUT:
-                return SettingsEnums.DIALOG_MAGNIFICATION_EDIT_SHORTCUT;
             default:
                 return super.getDialogMetricsCategory(dialogId);
         }
@@ -664,16 +540,12 @@
 
     @Override
     public void onSettingsClicked(ShortcutPreference preference) {
-        if (com.android.settings.accessibility.Flags.editShortcutsInFullScreen()) {
-            EditShortcutsPreferenceFragment.showEditShortcutScreen(
-                    requireContext(),
-                    getMetricsCategory(),
-                    getShortcutTitle(),
-                    MAGNIFICATION_COMPONENT_NAME,
-                    getIntent());
-        } else {
-            showDialog(DialogEnums.MAGNIFICATION_EDIT_SHORTCUT);
-        }
+        EditShortcutsPreferenceFragment.showEditShortcutScreen(
+                requireContext(),
+                getMetricsCategory(),
+                getShortcutTitle(),
+                MAGNIFICATION_COMPONENT_NAME,
+                getIntent());
     }
 
     @Override
@@ -713,17 +585,6 @@
     }
 
     @VisibleForTesting
-    void saveNonEmptyUserShortcutType(int type) {
-        if (type == DEFAULT) {
-            return;
-        }
-
-        final PreferredShortcut shortcut = new PreferredShortcut(
-                MAGNIFICATION_CONTROLLER_NAME, type);
-        PreferredShortcuts.saveUserShortcutType(getPrefContext(), shortcut);
-    }
-
-    @VisibleForTesting
     static void optInAllMagnificationValuesToSettings(Context context, int shortcutTypes) {
         if ((shortcutTypes & SOFTWARE) == SOFTWARE) {
             optInMagnificationValueToSettings(context, SOFTWARE);
diff --git a/src/com/android/settings/accessibility/shortcuts/EditShortcutsPreferenceFragment.java b/src/com/android/settings/accessibility/shortcuts/EditShortcutsPreferenceFragment.java
index 9e1290e..bdf7857 100644
--- a/src/com/android/settings/accessibility/shortcuts/EditShortcutsPreferenceFragment.java
+++ b/src/com/android/settings/accessibility/shortcuts/EditShortcutsPreferenceFragment.java
@@ -60,7 +60,6 @@
 import com.android.settings.R;
 import com.android.settings.SetupWizardUtils;
 import com.android.settings.accessibility.AccessibilitySetupWizardUtils;
-import com.android.settings.accessibility.Flags;
 import com.android.settings.accessibility.PreferredShortcuts;
 import com.android.settings.core.SubSettingLauncher;
 import com.android.settings.dashboard.DashboardFragment;
@@ -199,8 +198,7 @@
         Activity activity = getActivity();
 
         if (!activity.getIntent().getAction().equals(
-                Settings.ACTION_ACCESSIBILITY_SHORTCUT_SETTINGS)
-                || !Flags.editShortcutsInFullScreen()) {
+                Settings.ACTION_ACCESSIBILITY_SHORTCUT_SETTINGS)) {
             return;
         }
 
diff --git a/src/com/android/settings/backup/SettingsBackupHelper.java b/src/com/android/settings/backup/SettingsBackupHelper.java
index 556ab72..73760a4 100644
--- a/src/com/android/settings/backup/SettingsBackupHelper.java
+++ b/src/com/android/settings/backup/SettingsBackupHelper.java
@@ -28,19 +28,30 @@
 /** Backup agent for Settings APK */
 public class SettingsBackupHelper extends BackupAgentHelper {
     public static final String SOUND_BACKUP_HELPER = "SoundSettingsBackup";
+    public static final String ACCESSIBILITY_APPEARANCE_BACKUP_HELPER =
+            "AccessibilityAppearanceSettingsBackup";
 
     @Override
     public void onCreate() {
         super.onCreate();
         BackupRestoreStorageManager.getInstance(this).addBackupAgentHelpers(this);
+        OnboardingFeatureProvider onboardingFeatureProvider =
+                FeatureFactory.getFeatureFactory().getOnboardingFeatureProvider();
+
         if (Flags.enableSoundBackup()) {
-            OnboardingFeatureProvider onboardingFeatureProvider =
-                    FeatureFactory.getFeatureFactory().getOnboardingFeatureProvider();
             if (onboardingFeatureProvider != null) {
                 addHelper(SOUND_BACKUP_HELPER, onboardingFeatureProvider.
                         getSoundBackupHelper(this, this.getBackupRestoreEventLogger()));
             }
         }
+
+        if (Flags.accessibilityAppearanceSettingsBackupEnabled()) {
+            if (onboardingFeatureProvider != null) {
+                addHelper(ACCESSIBILITY_APPEARANCE_BACKUP_HELPER,
+                        onboardingFeatureProvider.getAccessibilityAppearanceBackupHelper(
+                            this, this.getBackupRestoreEventLogger()));
+            }
+        }
     }
 
     @Override
diff --git a/src/com/android/settings/biometrics/combination/BiometricsSettingsBase.java b/src/com/android/settings/biometrics/combination/BiometricsSettingsBase.java
index 835f3a8..11194ce 100644
--- a/src/com/android/settings/biometrics/combination/BiometricsSettingsBase.java
+++ b/src/com/android/settings/biometrics/combination/BiometricsSettingsBase.java
@@ -147,7 +147,7 @@
                 mBiometricsAuthenticationRequested, mUserId)) {
             mBiometricsAuthenticationRequested = true;
             Utils.launchBiometricPromptForMandatoryBiometrics(this, BIOMETRIC_AUTH_REQUEST,
-                    mUserId);
+                    mUserId, true /* hideBackground */);
         }
 
         updateUnlockPhonePreferenceSummary();
@@ -166,7 +166,7 @@
                 && mGkPwHandle != 0L) {
             mBiometricsAuthenticationRequested = true;
             Utils.launchBiometricPromptForMandatoryBiometrics(this, BIOMETRIC_AUTH_REQUEST,
-                    mUserId);
+                    mUserId, true /* hideBackground */);
         }
         if (!mConfirmCredential) {
             mDoNotFinishActivity = false;
diff --git a/src/com/android/settings/biometrics/face/FaceSettings.java b/src/com/android/settings/biometrics/face/FaceSettings.java
index 305d670..bcd5231 100644
--- a/src/com/android/settings/biometrics/face/FaceSettings.java
+++ b/src/com/android/settings/biometrics/face/FaceSettings.java
@@ -293,7 +293,7 @@
                 mUserId)) {
             mBiometricsAuthenticationRequested = true;
             Utils.launchBiometricPromptForMandatoryBiometrics(this, BIOMETRIC_AUTH_REQUEST,
-                    mUserId);
+                    mUserId, true /* hideBackground */);
         } else {
             mAttentionController.setToken(mToken);
             mEnrollController.setToken(mToken);
diff --git a/src/com/android/settings/biometrics/fingerprint/FingerprintSettings.java b/src/com/android/settings/biometrics/fingerprint/FingerprintSettings.java
index 815c08e..9cda327 100644
--- a/src/com/android/settings/biometrics/fingerprint/FingerprintSettings.java
+++ b/src/com/android/settings/biometrics/fingerprint/FingerprintSettings.java
@@ -489,7 +489,7 @@
                         mUserId)) {
                     mBiometricsAuthenticationRequested = true;
                     Utils.launchBiometricPromptForMandatoryBiometrics(this, BIOMETRIC_AUTH_REQUEST,
-                            mUserId);
+                            mUserId, true /* hideBackground */);
                 } else if (!mHasFirstEnrolled) {
                     mIsEnrolling = true;
                     addFirstFingerprint(null);
@@ -702,6 +702,7 @@
             if (isSfps()) {
                 updateFingerprintUnlockCategoryVisibility();
             }
+            updatePreferences();
         }
 
         private void updateAddPreference() {
@@ -783,7 +784,7 @@
                     mUserId)) {
                 mBiometricsAuthenticationRequested = true;
                 Utils.launchBiometricPromptForMandatoryBiometrics(this,
-                        BIOMETRIC_AUTH_REQUEST, mUserId);
+                        BIOMETRIC_AUTH_REQUEST, mUserId, true /* hideBackground */);
             }
         }
 
diff --git a/src/com/android/settings/bluetooth/BluetoothPairingDialogFragment.java b/src/com/android/settings/bluetooth/BluetoothPairingDialogFragment.java
index 33e6fc3..e6b197c 100644
--- a/src/com/android/settings/bluetooth/BluetoothPairingDialogFragment.java
+++ b/src/com/android/settings/bluetooth/BluetoothPairingDialogFragment.java
@@ -41,6 +41,7 @@
 
 import com.android.settings.R;
 import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
+import com.android.settings.flags.Flags;
 
 /**
  * A dialogFragment used by {@link BluetoothPairingDialog} to create an appropriately styled dialog
@@ -87,12 +88,15 @@
     @Override
     public void onDestroy() {
         super.onDestroy();
-        if (mPairingController.getDialogType()
-                != BluetoothPairingController.DISPLAY_PASSKEY_DIALOG) {
-            /* Cancel pairing unless explicitly accepted by user */
-            if (!mPositiveClicked) {
-                mPairingController.onCancel();
-            }
+        /* Cancel pairing unless 1) explicitly accepted by user 2) the event is triggered by
+         * orientation change. */
+        boolean shouldCancelPairing =
+                Flags.disableBondingCancellationForOrientationChange()
+                        ? !mPositiveClicked && !getActivity().isChangingConfigurations()
+                        : !mPositiveClicked;
+        if (mPairingController.getDialogType() != BluetoothPairingController.DISPLAY_PASSKEY_DIALOG
+                && shouldCancelPairing) {
+            mPairingController.onCancel();
         }
     }
 
diff --git a/src/com/android/settings/datausage/DataSaverSummary.kt b/src/com/android/settings/datausage/DataSaverSummary.kt
index cdd46f2..e118bd6 100644
--- a/src/com/android/settings/datausage/DataSaverSummary.kt
+++ b/src/com/android/settings/datausage/DataSaverSummary.kt
@@ -19,6 +19,7 @@
 import android.content.Context
 import android.os.Bundle
 import android.telephony.SubscriptionManager
+import android.view.View
 import com.android.settings.R
 import com.android.settings.SettingsActivity
 import com.android.settings.dashboard.DashboardFragment
@@ -45,8 +46,8 @@
         dataSaverBackend = DataSaverBackend(requireContext())
     }
 
-    override fun onActivityCreated(savedInstanceState: Bundle?) {
-        super.onActivityCreated(savedInstanceState)
+    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
+        super.onViewCreated(view, savedInstanceState)
         switchBar = (activity as SettingsActivity).switchBar.apply {
             setTitle(getString(R.string.data_saver_switch_title))
             show()
diff --git a/src/com/android/settings/development/AdbQrcodeScannerFragment.java b/src/com/android/settings/development/AdbQrcodeScannerFragment.java
index 1d38454..ca44747 100644
--- a/src/com/android/settings/development/AdbQrcodeScannerFragment.java
+++ b/src/com/android/settings/development/AdbQrcodeScannerFragment.java
@@ -16,7 +16,6 @@
 
 package com.android.settings.development;
 
-import android.annotation.Nullable;
 import android.app.Activity;
 import android.content.BroadcastReceiver;
 import android.content.Context;
@@ -27,7 +26,6 @@
 import android.graphics.Matrix;
 import android.graphics.Rect;
 import android.graphics.SurfaceTexture;
-import android.net.wifi.WifiConfiguration;
 import android.os.Bundle;
 import android.os.Handler;
 import android.os.Message;
@@ -49,6 +47,7 @@
 import com.android.settings.SetupWizardUtils;
 import com.android.settings.wifi.dpp.AdbQrCode;
 import com.android.settings.wifi.dpp.WifiDppQrCodeBaseFragment;
+import com.android.settings.wifi.dpp.WifiNetworkConfig;
 import com.android.settingslib.qrcode.QrCamera;
 import com.android.settingslib.qrcode.QrDecorateView;
 
@@ -82,8 +81,7 @@
 
     /** QR code data scanned by camera */
     private AdbQrCode mAdbQrCode;
-    @Nullable
-    private WifiConfiguration mAdbConfig;
+    private WifiNetworkConfig mAdbConfig;
 
     private IAdbManager mAdbManager;
 
@@ -289,16 +287,13 @@
         AdbQrCode.triggerVibrationForQrCodeRecognition(getContext());
         mVerifyingTextView.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED);
         try {
-            if (mAdbConfig != null) {
-                mAdbManager.enablePairingByQrCode(mAdbConfig.SSID,
-                        mAdbConfig.preSharedKey);
-                return;
-            }
+            mAdbManager.enablePairingByQrCode(mAdbConfig.getSsid(),
+                    mAdbConfig.getPreSharedKey());
         } catch (RemoteException e) {
-            Log.e(TAG, "Unable to enable QR code pairing" + e);
+            Log.e(TAG, "Unable to enable QR code pairing");
+            getActivity().setResult(Activity.RESULT_CANCELED);
+            getActivity().finish();
         }
-        getActivity().setResult(Activity.RESULT_CANCELED);
-        getActivity().finish();
     }
 
     @Override
diff --git a/src/com/android/settings/development/DesktopModeSecondaryDisplayPreferenceController.java b/src/com/android/settings/development/DesktopModeSecondaryDisplayPreferenceController.java
index 0d3d835..2bce9ad 100644
--- a/src/com/android/settings/development/DesktopModeSecondaryDisplayPreferenceController.java
+++ b/src/com/android/settings/development/DesktopModeSecondaryDisplayPreferenceController.java
@@ -67,6 +67,12 @@
         Settings.Global.putInt(mContext.getContentResolver(),
                 DEVELOPMENT_FORCE_DESKTOP_MODE_ON_EXTERNAL_DISPLAYS,
                 isEnabled ? SETTING_VALUE_ON : SETTING_VALUE_OFF);
+        // Update freeform window support on device.
+        // DEVELOPMENT_ENABLE_FREEFORM_WINDOWS_SUPPORT setting enables freeform support on device
+        // where it's not present by default.
+        Settings.Global.putInt(mContext.getContentResolver(),
+                Settings.Global.DEVELOPMENT_ENABLE_FREEFORM_WINDOWS_SUPPORT,
+                isEnabled ? SETTING_VALUE_ON : SETTING_VALUE_OFF);
         if (isEnabled && mFragment != null) {
             RebootConfirmationDialogFragment.show(
                     mFragment, R.string.reboot_dialog_enable_desktop_mode_on_secondary_display,
diff --git a/src/com/android/settings/development/Enable16kUtils.java b/src/com/android/settings/development/Enable16kUtils.java
index 00b7ee9..b37c1f3 100644
--- a/src/com/android/settings/development/Enable16kUtils.java
+++ b/src/com/android/settings/development/Enable16kUtils.java
@@ -78,7 +78,6 @@
         try (BufferedReader br = new BufferedReader(new FileReader("/proc/mounts"))) {
             String line;
             while ((line = br.readLine()) != null) {
-                Log.i(TAG, line);
                 final String[] fields = line.split(" ");
                 final String partition = fields[1];
                 final String fsType = fields[2];
diff --git a/src/com/android/settings/development/OWNERS b/src/com/android/settings/development/OWNERS
index cc573ea..081c44f 100644
--- a/src/com/android/settings/development/OWNERS
+++ b/src/com/android/settings/development/OWNERS
@@ -12,3 +12,7 @@
 
 # DesktopModePreferenceController
 per-file DesktopModePreferenceController.java=file:platform/frameworks/base:/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/OWNERS
+
+# ADB
+per-file Adb*=set noparent
+per-file Adb*=file:platform/packages/modules/adb:/OWNERS
diff --git a/src/com/android/settings/network/SimOnboardingService.kt b/src/com/android/settings/network/SimOnboardingService.kt
index ea0b5ac..59dc35e 100644
--- a/src/com/android/settings/network/SimOnboardingService.kt
+++ b/src/com/android/settings/network/SimOnboardingService.kt
@@ -237,6 +237,7 @@
 
     fun addItemForRenaming(subInfo: SubscriptionInfo, newName: String) {
         if (subInfo.displayName == newName) {
+            renameMutableMap.remove(subInfo.subscriptionId)
             return
         }
         renameMutableMap[subInfo.subscriptionId] = newName
diff --git a/src/com/android/settings/network/telephony/SatelliteSetting.java b/src/com/android/settings/network/telephony/SatelliteSetting.java
index 7e9e61d..df58048 100644
--- a/src/com/android/settings/network/telephony/SatelliteSetting.java
+++ b/src/com/android/settings/network/telephony/SatelliteSetting.java
@@ -150,7 +150,7 @@
             /* In case satellite is allowed by carrier's entitlement server, the page will show
                the check icon with guidance that satellite is included in user's mobile plan */
             preference.setTitle(R.string.title_have_satellite_plan);
-            icon = getResources().getDrawable(R.drawable.ic_check_circle_24px);
+            icon = getContext().getDrawable(R.drawable.ic_check_circle_24px);
         } else {
             /* Or, it will show the blocked icon with the guidance that satellite is not included
                in user's mobile plan */
diff --git a/src/com/android/settings/network/telephony/scan/NetworkScanRepository.kt b/src/com/android/settings/network/telephony/scan/NetworkScanRepository.kt
index 0e15033..caf8549 100644
--- a/src/com/android/settings/network/telephony/scan/NetworkScanRepository.kt
+++ b/src/com/android/settings/network/telephony/scan/NetworkScanRepository.kt
@@ -30,8 +30,8 @@
 import com.android.settings.network.telephony.CellInfoUtil.getNetworkTitle
 import com.android.settings.network.telephony.telephonyManager
 import com.android.settingslib.spa.framework.util.collectLatestWithLifecycle
+import java.util.concurrent.Executors
 import kotlinx.coroutines.Dispatchers
-import kotlinx.coroutines.asExecutor
 import kotlinx.coroutines.channels.awaitClose
 import kotlinx.coroutines.flow.Flow
 import kotlinx.coroutines.flow.callbackFlow
@@ -96,7 +96,9 @@
 
         val networkScan = telephonyManager.requestNetworkScan(
             createNetworkScan(),
-            Dispatchers.Default.asExecutor(),
+            // requestNetworkScan() could call callbacks concurrently, so we use a single thread
+            // to avoid racing conditions.
+            Executors.newSingleThreadExecutor(),
             callback,
         )
 
diff --git a/src/com/android/settings/notification/modes/AbstractZenModeHeaderController.java b/src/com/android/settings/notification/modes/AbstractZenModeHeaderController.java
new file mode 100644
index 0000000..06a30fa
--- /dev/null
+++ b/src/com/android/settings/notification/modes/AbstractZenModeHeaderController.java
@@ -0,0 +1,92 @@
+/*
+ * Copyright (C) 2024 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.
+ */
+package com.android.settings.notification.modes;
+
+import android.app.Flags;
+import android.content.Context;
+import android.graphics.drawable.Drawable;
+import android.view.ViewGroup;
+import android.widget.ImageView;
+
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.preference.Preference;
+
+import com.android.settings.R;
+import com.android.settings.dashboard.DashboardFragment;
+import com.android.settings.widget.EntityHeaderController;
+import com.android.settingslib.notification.modes.ZenIconLoader;
+import com.android.settingslib.notification.modes.ZenMode;
+import com.android.settingslib.widget.LayoutPreference;
+
+import java.util.function.Consumer;
+import java.util.function.Function;
+
+abstract class AbstractZenModeHeaderController extends AbstractZenModePreferenceController {
+
+    private final DashboardFragment mFragment;
+    private EntityHeaderController mHeaderController;
+
+    AbstractZenModeHeaderController(
+            @NonNull Context context,
+            @NonNull String key,
+            @NonNull DashboardFragment fragment) {
+        super(context, key);
+        mFragment = fragment;
+    }
+
+    @Override
+    public boolean isAvailable() {
+        return Flags.modesApi() && Flags.modesUi();
+    }
+
+    protected void updateIcon(Preference preference, @NonNull ZenMode zenMode, int iconSizePx,
+            Function<Drawable, Drawable> modeIconStylist,
+            @Nullable Consumer<ImageView> iconViewCustomizer) {
+        if (mFragment == null) {
+            return;
+        }
+        preference.setSelectable(false);
+
+        if (mHeaderController == null) {
+            final LayoutPreference pref = (LayoutPreference) preference;
+            mHeaderController = EntityHeaderController.newInstance(
+                    mFragment.getActivity(),
+                    mFragment,
+                    pref.findViewById(R.id.entity_header));
+        }
+
+        ImageView iconView = ((LayoutPreference) preference).findViewById(R.id.entity_header_icon);
+        if (iconView != null) {
+            if (iconViewCustomizer != null) {
+                iconViewCustomizer.accept(iconView);
+            }
+            ViewGroup.LayoutParams layoutParams = iconView.getLayoutParams();
+            if (layoutParams.width != iconSizePx || layoutParams.height != iconSizePx) {
+                layoutParams.width = iconSizePx;
+                layoutParams.height = iconSizePx;
+                iconView.setLayoutParams(layoutParams);
+            }
+        }
+
+        FutureUtil.whenDone(
+                zenMode.getIcon(mContext, ZenIconLoader.getInstance()),
+                icon -> mHeaderController
+                        .setIcon(modeIconStylist.apply(icon))
+                        .done(/* rebindActions= */ false),
+                mContext.getMainExecutor());
+    }
+}
diff --git a/src/com/android/settings/notification/modes/AbstractZenModePreferenceController.java b/src/com/android/settings/notification/modes/AbstractZenModePreferenceController.java
index c740847..c473456 100644
--- a/src/com/android/settings/notification/modes/AbstractZenModePreferenceController.java
+++ b/src/com/android/settings/notification/modes/AbstractZenModePreferenceController.java
@@ -25,8 +25,8 @@
 
 import androidx.annotation.NonNull;
 import androidx.annotation.Nullable;
+import androidx.annotation.VisibleForTesting;
 import androidx.preference.Preference;
-import androidx.preference.PreferenceScreen;
 
 import com.android.settingslib.core.AbstractPreferenceController;
 import com.android.settingslib.notification.modes.ZenMode;
@@ -92,29 +92,14 @@
         return true;
     }
 
-    // Called by parent Fragment onAttach, for any methods (such as isAvailable()) that need
-    // zen mode info before onStart. Most callers should use updateZenMode instead, which will
-    // do any further necessary propagation.
-    protected final void setZenMode(@NonNull ZenMode zenMode) {
+    /**
+     * Assigns the {@link ZenMode} of this controller, so that it can be used later from
+     * {@link #isAvailable()} and {@link #updateState(Preference)}.
+     */
+    final void setZenMode(@NonNull ZenMode zenMode) {
         mZenMode = zenMode;
     }
 
-    // Called by the parent Fragment onStart, which means it will happen before resume.
-    public void updateZenMode(@NonNull Preference preference, @NonNull ZenMode zenMode) {
-        mZenMode = zenMode;
-        updateState(preference);
-    }
-
-    @Override
-    public void displayPreference(PreferenceScreen screen) {
-        super.displayPreference(screen);
-        if (mZenMode != null) {
-            displayPreference(screen, mZenMode);
-        }
-    }
-
-    public void displayPreference(PreferenceScreen screen, @NonNull ZenMode zenMode) {}
-
     @Override
     public final void updateState(Preference preference) {
         super.updateState(preference);
@@ -167,4 +152,20 @@
             return mode;
         });
     }
+
+    @VisibleForTesting(otherwise = VisibleForTesting.NONE)
+    @Nullable
+    ZenMode getZenMode() {
+        return mZenMode;
+    }
+
+    /**
+     * Convenience method for tests. Assigns the {@link ZenMode} of this controller, and calls
+     * {@link #updateState(Preference)} immediately.
+     */
+    @VisibleForTesting(otherwise = VisibleForTesting.NONE)
+    final void updateZenMode(@NonNull Preference preference, @NonNull ZenMode zenMode) {
+        mZenMode = zenMode;
+        updateState(preference);
+    }
 }
diff --git a/src/com/android/settings/notification/modes/CircularIconsPreference.java b/src/com/android/settings/notification/modes/CircularIconsPreference.java
index e3cd948..0766ccd 100644
--- a/src/com/android/settings/notification/modes/CircularIconsPreference.java
+++ b/src/com/android/settings/notification/modes/CircularIconsPreference.java
@@ -17,13 +17,10 @@
 package com.android.settings.notification.modes;
 
 import static com.google.common.base.Preconditions.checkNotNull;
-import static com.google.common.base.Preconditions.checkState;
 
 import android.content.Context;
 import android.content.res.Resources;
 import android.graphics.drawable.Drawable;
-import android.graphics.drawable.ShapeDrawable;
-import android.graphics.drawable.shapes.OvalShape;
 import android.util.AttributeSet;
 import android.view.LayoutInflater;
 import android.view.View;
@@ -39,13 +36,12 @@
 
 import com.android.settings.R;
 import com.android.settingslib.RestrictedPreference;
-import com.android.settingslib.Utils;
 
 import com.google.common.base.Equivalence;
+import com.google.common.collect.ImmutableList;
 import com.google.common.util.concurrent.Futures;
 import com.google.common.util.concurrent.ListenableFuture;
 
-import java.util.ArrayList;
 import java.util.List;
 import java.util.concurrent.Executor;
 
@@ -53,12 +49,14 @@
 
     private static final float DISABLED_ITEM_ALPHA = 0.3f;
 
-    private Executor mUiExecutor;
-    @Nullable private LinearLayout mIconContainer;
+    record LoadedIcons(ImmutableList<Drawable> icons, int extraItems) { }
 
+    private Executor mUiExecutor;
+
+    // Chronologically, fields will be set top-to-bottom.
     @Nullable private CircularIconSet<?> mIconSet;
-    @Nullable private CircularIconSet<?> mPendingDisplayIconSet;
     @Nullable private ListenableFuture<List<Drawable>> mPendingLoadIconsFuture;
+    @Nullable private LoadedIcons mLoadedIcons;
 
     public CircularIconsPreference(Context context) {
         super(context);
@@ -92,30 +90,6 @@
         setLayoutResource(R.layout.preference_circular_icons);
     }
 
-    @Override
-    public void onBindViewHolder(PreferenceViewHolder holder) {
-        super.onBindViewHolder(holder);
-
-        mIconContainer = checkNotNull((LinearLayout) holder.findViewById(R.id.circles_container));
-        displayIconsIfPending();
-    }
-
-    @Override
-    public void setEnabled(boolean enabled) {
-        super.setEnabled(enabled);
-        if (mIconContainer != null) {
-            applyEnabledToIcons(mIconContainer, enabled);
-        }
-    }
-
-    private void displayIconsIfPending() {
-        CircularIconSet<?> pendingIconSet = mPendingDisplayIconSet;
-        if (pendingIconSet != null) {
-            mPendingDisplayIconSet = null;
-            displayIconsInternal(pendingIconSet);
-        }
-    }
-
     <T> void displayIcons(CircularIconSet<T> iconSet) {
         displayIcons(iconSet, null);
     }
@@ -125,38 +99,55 @@
             return;
         }
         mIconSet = iconSet;
-        displayIconsInternal(iconSet);
+
+        mLoadedIcons = null;
+        if (mPendingLoadIconsFuture != null) {
+            mPendingLoadIconsFuture.cancel(true);
+            mPendingLoadIconsFuture = null;
+        }
+
+        notifyChanged();
     }
 
-    void displayIconsInternal(CircularIconSet<?> iconSet) {
-        if (mIconContainer == null) {
-            // Too soon, wait for bind.
-            mPendingDisplayIconSet = iconSet;
-            return;
-        }
-        mIconContainer.setVisibility(iconSet.size() != 0 ? View.VISIBLE : View.GONE);
-        if (iconSet.size() == 0) {
-            return;
-        }
-        if (mIconContainer.getMeasuredWidth() == 0) {
-            // Too soon, wait for first measure to know width.
-            mPendingDisplayIconSet = iconSet;
-            mIconContainer.getViewTreeObserver().addOnGlobalLayoutListener(
-                    new ViewTreeObserver.OnGlobalLayoutListener() {
-                        @Override
-                        public void onGlobalLayout() {
-                            checkNotNull(mIconContainer).getViewTreeObserver()
-                                    .removeOnGlobalLayoutListener(this);
-                            displayIconsIfPending();
-                        }
-                    }
-            );
-            return;
-        }
+    @Override
+    public void onBindViewHolder(PreferenceViewHolder holder) {
+        super.onBindViewHolder(holder);
 
-        mIconContainer.setVisibility(View.VISIBLE);
+        LinearLayout iconContainer = checkNotNull(
+                (LinearLayout) holder.findViewById(R.id.circles_container));
+        bindIconContainer(iconContainer);
+    }
+
+    private void bindIconContainer(LinearLayout container) {
+        if (mLoadedIcons != null) {
+            // We have the icons ready to display already, show them.
+            setDrawables(container, mLoadedIcons);
+        } else if (mIconSet != null) {
+            // We know what icons we want, but haven't yet loaded them.
+            if (mIconSet.size() == 0) {
+                container.setVisibility(View.GONE);
+                return;
+            }
+            container.setVisibility(View.VISIBLE);
+            if (container.getMeasuredWidth() != 0) {
+                startLoadingIcons(container, mIconSet);
+            } else {
+                container.getViewTreeObserver().addOnGlobalLayoutListener(
+                        new ViewTreeObserver.OnGlobalLayoutListener() {
+                            @Override
+                            public void onGlobalLayout() {
+                                container.getViewTreeObserver().removeOnGlobalLayoutListener(this);
+                                startLoadingIcons(container, mIconSet);
+                            }
+                        }
+                );
+            }
+        }
+    }
+
+    private void startLoadingIcons(LinearLayout container, CircularIconSet<?> iconSet) {
         Resources res = getContext().getResources();
-        int availableSpace = mIconContainer.getMeasuredWidth();
+        int availableSpace = container.getMeasuredWidth();
         int iconHorizontalSpace = res.getDimensionPixelSize(R.dimen.zen_mode_circular_icon_diameter)
                 + res.getDimensionPixelSize(R.dimen.zen_mode_circular_icon_margin_between);
         int numIconsThatFit = availableSpace / iconHorizontalSpace;
@@ -177,79 +168,60 @@
             extraItems = 0;
         }
 
-        displayIconsWhenReady(iconFutures, extraItems);
-    }
-
-    private void displayIconsWhenReady(List<ListenableFuture<Drawable>> iconFutures,
-            int extraItems) {
-        checkState(mIconContainer != null);
-        if (mPendingLoadIconsFuture != null) {
-            mPendingLoadIconsFuture.cancel(true);
-        }
-
-        // Rearrange child views until we have <numImages> ImageViews...
-        LayoutInflater inflater = LayoutInflater.from(getContext());
-        int numImages = iconFutures.size();
-        int numImageViews = getChildCount(mIconContainer, ImageView.class);
-        if (numImages > numImageViews) {
-            for (int i = 0; i < numImages - numImageViews; i++) {
-                ImageView imageView = (ImageView) inflater.inflate(
-                        R.layout.preference_circular_icons_item, mIconContainer, false);
-                mIconContainer.addView(imageView, 0);
-            }
-        } else if (numImageViews > numImages) {
-            for (int i = 0; i < numImageViews - numImages; i++) {
-                mIconContainer.removeViewAt(0);
-            }
-        }
-        // ... plus 0/1 TextViews at the end.
-        if (extraItems > 0 && !(getLastChild(mIconContainer) instanceof TextView)) {
-            TextView plusView = (TextView) inflater.inflate(
-                    R.layout.preference_circular_icons_plus_item, mIconContainer, false);
-            mIconContainer.addView(plusView);
-        } else if (extraItems == 0 && (getLastChild(mIconContainer) instanceof TextView)) {
-            mIconContainer.removeViewAt(mIconContainer.getChildCount() - 1);
-        }
-
-        // Set up placeholders and extra items indicator.
-        for (int i = 0; i < numImages; i++) {
-            ImageView imageView = (ImageView) mIconContainer.getChildAt(i);
-            imageView.setImageDrawable(getPlaceholderImage(getContext()));
-        }
-        if (extraItems > 0) {
-            TextView textView = (TextView) checkNotNull(getLastChild(mIconContainer));
-            textView.setText(getContext().getString(R.string.zen_mode_plus_n_items, extraItems));
-        }
-
-        applyEnabledToIcons(mIconContainer, isEnabled());
-
         // Display icons when all are ready (more consistent than randomly loading).
         mPendingLoadIconsFuture = Futures.allAsList(iconFutures);
         FutureUtil.whenDone(
                 mPendingLoadIconsFuture,
                 icons -> {
-                    checkState(mIconContainer != null);
-                    for (int i = 0; i < icons.size(); i++) {
-                        ((ImageView) mIconContainer.getChildAt(i)).setImageDrawable(icons.get(i));
-                    }
+                    mLoadedIcons = new LoadedIcons(ImmutableList.copyOf(icons), extraItems);
+                    notifyChanged(); // So that view is rebound and icons actually shown.
                 },
                 mUiExecutor);
     }
 
-    private void applyEnabledToIcons(ViewGroup container, boolean enabled) {
+    private void setDrawables(LinearLayout container, LoadedIcons loadedIcons) {
+        // Rearrange child views until we have <numImages> ImageViews...
+        LayoutInflater inflater = LayoutInflater.from(getContext());
+        int numImages = loadedIcons.icons.size();
+        int numImageViews = getChildCount(container, ImageView.class);
+        if (numImages > numImageViews) {
+            for (int i = 0; i < numImages - numImageViews; i++) {
+                ImageView imageView = (ImageView) inflater.inflate(
+                        R.layout.preference_circular_icons_item, container, false);
+                container.addView(imageView, 0);
+            }
+        } else if (numImageViews > numImages) {
+            for (int i = 0; i < numImageViews - numImages; i++) {
+                container.removeViewAt(0);
+            }
+        }
+        // ... plus 0/1 TextViews at the end.
+        if (loadedIcons.extraItems > 0 && !(getLastChild(container) instanceof TextView)) {
+            TextView plusView = (TextView) inflater.inflate(
+                    R.layout.preference_circular_icons_plus_item, container, false);
+            container.addView(plusView);
+        } else if (loadedIcons.extraItems == 0 && (getLastChild(container) instanceof TextView)) {
+            container.removeViewAt(container.getChildCount() - 1);
+        }
+
+        // Show images (and +n if needed).
+        for (int i = 0; i < numImages; i++) {
+            ImageView imageView = (ImageView) container.getChildAt(i);
+            imageView.setImageDrawable(loadedIcons.icons.get(i));
+        }
+        if (loadedIcons.extraItems > 0) {
+            TextView textView = (TextView) checkNotNull(getLastChild(container));
+            textView.setText(getContext().getString(R.string.zen_mode_plus_n_items,
+                    loadedIcons.extraItems));
+        }
+
+        // Apply enabled/disabled style.
         for (int i = 0; i < container.getChildCount(); i++) {
             View child = container.getChildAt(i);
-            child.setAlpha(enabled ? 1.0f : DISABLED_ITEM_ALPHA);
+            child.setAlpha(isEnabled() ? 1.0f : DISABLED_ITEM_ALPHA);
         }
     }
 
-    private static Drawable getPlaceholderImage(Context context) {
-        ShapeDrawable placeholder = new ShapeDrawable(new OvalShape());
-        placeholder.setTintList(Utils.getColorAttr(context,
-                com.android.internal.R.attr.materialColorSecondaryContainer));
-        return placeholder;
-    }
-
     private static int getChildCount(ViewGroup parent, Class<? extends View> childClass) {
         int count = 0;
         for (int i = 0; i < parent.getChildCount(); i++) {
@@ -269,40 +241,8 @@
     }
 
     @VisibleForTesting(otherwise = VisibleForTesting.NONE)
-    List<View> getViews() {
-        if (mIconContainer == null) {
-            return List.of();
-        }
-        ArrayList<View> views = new ArrayList<>();
-        for (int i = 0; i < mIconContainer.getChildCount(); i++) {
-            views.add(mIconContainer.getChildAt(i));
-        }
-        return views;
-    }
-
-    @VisibleForTesting(otherwise = VisibleForTesting.NONE)
-    List<Drawable> getIcons() {
-        if (mIconContainer == null) {
-            return List.of();
-        }
-        ArrayList<Drawable> drawables = new ArrayList<>();
-        for (int i = 0; i < getChildCount(mIconContainer, ImageView.class); i++) {
-            drawables.add(((ImageView) mIconContainer.getChildAt(i)).getDrawable());
-        }
-        return drawables;
-    }
-
-    @VisibleForTesting(otherwise = VisibleForTesting.NONE)
     @Nullable
-    String getPlusText() {
-        if (mIconContainer == null) {
-            return null;
-        }
-        View lastChild = getLastChild(mIconContainer);
-        if (lastChild instanceof TextView tv) {
-            return tv.getText() != null ? tv.getText().toString() : null;
-        } else {
-            return null;
-        }
+    LoadedIcons getLoadedIcons() {
+        return mLoadedIcons;
     }
 }
diff --git a/src/com/android/settings/notification/modes/IconUtil.java b/src/com/android/settings/notification/modes/IconUtil.java
index e19da40..55abccf 100644
--- a/src/com/android/settings/notification/modes/IconUtil.java
+++ b/src/com/android/settings/notification/modes/IconUtil.java
@@ -64,8 +64,26 @@
     }
 
     /**
+     * Returns a variant of the supplied mode icon to be used as the header in the mode page. The
+     * inner icon is 64x64 dp and it's contained in a 12-sided-cookie of 136dp diameter. It's
+     * tinted with the "material secondary" color combination and the "selected" color variant
+     * should be used for modes currently active.
+     */
+    static Drawable makeModeHeader(@NonNull Context context, Drawable modeIcon) {
+        return composeIcons(
+                checkNotNull(context.getDrawable(R.drawable.ic_zen_mode_icon_cookie)),
+                context.getColorStateList(R.color.modes_icon_selectable_background),
+                context.getResources().getDimensionPixelSize(
+                        R.dimen.zen_mode_header_size),
+                modeIcon,
+                context.getColorStateList(R.color.modes_icon_selectable_icon),
+                context.getResources().getDimensionPixelSize(
+                        R.dimen.zen_mode_header_inner_icon_size));
+    }
+
+    /**
      * Returns a variant of the supplied {@code icon} to be used as the header in the icon picker.
-     * The inner icon is 48x48dp and it's contained into a circle of diameter 90dp.
+     * The inner icon is 48x48dp and it's contained in a circle of diameter 90dp.
      */
     static Drawable makeIconPickerHeader(@NonNull Context context, Drawable icon) {
         return composeIconCircle(
@@ -82,16 +100,16 @@
 
     /**
      * Returns a variant of the supplied {@code icon} to be used as an option in the icon picker.
-     * The inner icon is 36x36dp and it's contained into a circle of diameter 54dp. It's also set up
+     * The inner icon is 36x36dp and it's contained in a circle of diameter 54dp. It's also set up
      * so that selection and pressed states are represented in the color.
      */
     static Drawable makeIconPickerItem(@NonNull Context context, @DrawableRes int iconResId) {
         return composeIconCircle(
-                context.getColorStateList(R.color.modes_icon_picker_item_background),
+                context.getColorStateList(R.color.modes_icon_selectable_background),
                 context.getResources().getDimensionPixelSize(
                         R.dimen.zen_mode_icon_list_item_circle_diameter),
                 checkNotNull(context.getDrawable(iconResId)),
-                context.getColorStateList(R.color.modes_icon_picker_item_icon),
+                context.getColorStateList(R.color.modes_icon_selectable_icon),
                 context.getResources().getDimensionPixelSize(
                         R.dimen.zen_mode_icon_list_item_icon_size));
     }
@@ -164,18 +182,24 @@
 
     private static Drawable composeIconCircle(ColorStateList circleColor, @Px int circleDiameterPx,
             Drawable icon, ColorStateList iconColor, @Px int iconSizePx) {
-        ShapeDrawable background = new ShapeDrawable(new OvalShape());
-        background.setTintList(circleColor);
+        return composeIcons(new ShapeDrawable(new OvalShape()), circleColor, circleDiameterPx, icon,
+                iconColor, iconSizePx);
+    }
+
+    private static Drawable composeIcons(Drawable outer, ColorStateList outerColor,
+            @Px int outerSizePx, Drawable icon, ColorStateList iconColor, @Px int iconSizePx) {
+        Drawable background = checkNotNull(outer.getConstantState()).newDrawable().mutate();
+        background.setTintList(outerColor);
         Drawable foreground = checkNotNull(icon.getConstantState()).newDrawable().mutate();
         foreground.setTintList(iconColor);
 
         LayerDrawable layerDrawable = new LayerDrawable(new Drawable[] { background, foreground });
 
-        layerDrawable.setLayerSize(0, circleDiameterPx, circleDiameterPx);
+        layerDrawable.setLayerSize(0, outerSizePx, outerSizePx);
         layerDrawable.setLayerGravity(1, Gravity.CENTER);
         layerDrawable.setLayerSize(1, iconSizePx, iconSizePx);
 
-        layerDrawable.setBounds(0, 0, circleDiameterPx, circleDiameterPx);
+        layerDrawable.setBounds(0, 0, outerSizePx, outerSizePx);
         return layerDrawable;
     }
 }
diff --git a/src/com/android/settings/notification/modes/ManualDurationPreferenceController.java b/src/com/android/settings/notification/modes/ManualDurationPreferenceController.java
index 073f8ab..28aac63 100644
--- a/src/com/android/settings/notification/modes/ManualDurationPreferenceController.java
+++ b/src/com/android/settings/notification/modes/ManualDurationPreferenceController.java
@@ -18,6 +18,7 @@
 
 import android.content.Context;
 
+import androidx.annotation.NonNull;
 import androidx.fragment.app.Fragment;
 import androidx.preference.Preference;
 import androidx.preference.PreferenceScreen;
@@ -49,12 +50,12 @@
         return zenMode.isManualDnd();
     }
 
-    // Called by parent fragment onAttach().
+    // Called by parent fragment onStart().
     void registerSettingsObserver() {
         mSettingsObserver.register();
     }
 
-    // Called by parent fragment onDetach().
+    // Called by parent fragment onStop().
     void unregisterSettingsObserver() {
         mSettingsObserver.unregister();
     }
@@ -69,7 +70,7 @@
     }
 
     @Override
-    public void updateState(Preference preference, ZenMode unusedZenMode) {
+    public void updateState(Preference preference, @NonNull ZenMode unusedZenMode) {
         // This controller is a link between a Settings value (ZEN_DURATION) and the manual DND
         // mode. The status of the zen mode object itself doesn't affect the preference
         // value, as that comes from settings; that value from settings will determine the
diff --git a/src/com/android/settings/notification/modes/ZenModeBlurbPreference.java b/src/com/android/settings/notification/modes/ZenModeBlurbPreference.java
new file mode 100644
index 0000000..5850ae6
--- /dev/null
+++ b/src/com/android/settings/notification/modes/ZenModeBlurbPreference.java
@@ -0,0 +1,60 @@
+/*
+ * Copyright (C) 2024 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.
+ */
+
+package com.android.settings.notification.modes;
+
+import static android.view.ViewGroup.LayoutParams.MATCH_PARENT;
+
+import android.content.Context;
+import android.util.AttributeSet;
+import android.util.TypedValue;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.TextView;
+
+import androidx.preference.PreferenceViewHolder;
+
+import com.android.settings.R;
+import com.android.settingslib.widget.TopIntroPreference;
+
+public class ZenModeBlurbPreference extends TopIntroPreference {
+
+    public ZenModeBlurbPreference(Context context) {
+        super(context);
+    }
+
+    public ZenModeBlurbPreference(Context context, AttributeSet attrs) {
+        super(context, attrs);
+    }
+
+    @Override
+    public void onBindViewHolder(PreferenceViewHolder holder) {
+        super.onBindViewHolder(holder);
+        if (holder.findViewById(android.R.id.title) instanceof TextView textView) {
+            textView.setTextSize(TypedValue.COMPLEX_UNIT_PX,
+                    getContext().getResources().getDimensionPixelSize(
+                            R.dimen.zen_mode_blurb_text_size));
+
+            textView.setTextAlignment(View.TEXT_ALIGNMENT_CENTER);
+
+            ViewGroup.LayoutParams layoutParams = textView.getLayoutParams();
+            if (layoutParams.width != MATCH_PARENT) {
+                layoutParams.width = MATCH_PARENT;
+                textView.setLayoutParams(layoutParams);
+            }
+        }
+    }
+}
diff --git a/src/com/android/settings/notification/modes/ZenModeBlurbPreferenceController.java b/src/com/android/settings/notification/modes/ZenModeBlurbPreferenceController.java
new file mode 100644
index 0000000..097b40d
--- /dev/null
+++ b/src/com/android/settings/notification/modes/ZenModeBlurbPreferenceController.java
@@ -0,0 +1,68 @@
+/*
+ * Copyright (C) 2024 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.
+ */
+
+package com.android.settings.notification.modes;
+
+import static android.app.AutomaticZenRule.TYPE_BEDTIME;
+import static android.app.AutomaticZenRule.TYPE_DRIVING;
+import static android.app.AutomaticZenRule.TYPE_IMMERSIVE;
+import static android.app.AutomaticZenRule.TYPE_MANAGED;
+import static android.app.AutomaticZenRule.TYPE_SCHEDULE_CALENDAR;
+import static android.app.AutomaticZenRule.TYPE_SCHEDULE_TIME;
+import static android.app.AutomaticZenRule.TYPE_THEATER;
+
+import android.annotation.SuppressLint;
+import android.content.Context;
+
+import androidx.annotation.NonNull;
+import androidx.annotation.StringRes;
+import androidx.preference.Preference;
+
+import com.android.settings.R;
+import com.android.settingslib.notification.modes.ZenMode;
+
+class ZenModeBlurbPreferenceController extends AbstractZenModePreferenceController {
+
+    ZenModeBlurbPreferenceController(@NonNull Context context, @NonNull String key) {
+        super(context, key);
+    }
+
+    @Override
+    void updateState(Preference preference, @NonNull ZenMode zenMode) {
+        preference.setTitle(getModeBlurb(zenMode));
+    }
+
+    @StringRes
+    @SuppressLint("SwitchIntDef")
+    private static int getModeBlurb(ZenMode mode) {
+        if (mode.isSystemOwned()) {
+            return switch (mode.getType()) {
+                case TYPE_SCHEDULE_TIME -> R.string.zen_mode_blurb_schedule_time;
+                case TYPE_SCHEDULE_CALENDAR -> R.string.zen_mode_blurb_schedule_calendar;
+                default -> R.string.zen_mode_blurb_generic; // Custom Manual
+            };
+        } else {
+            return switch (mode.getType()) {
+                case TYPE_BEDTIME -> R.string.zen_mode_blurb_bedtime;
+                case TYPE_DRIVING -> R.string.zen_mode_blurb_driving;
+                case TYPE_IMMERSIVE -> R.string.zen_mode_blurb_immersive;
+                case TYPE_THEATER -> R.string.zen_mode_blurb_theater;
+                case TYPE_MANAGED -> R.string.zen_mode_blurb_managed;
+                default -> R.string.zen_mode_blurb_generic; // Including OTHER, UNKNOWN.
+            };
+        }
+    }
+}
diff --git a/src/com/android/settings/notification/modes/ZenModeButtonPreferenceController.java b/src/com/android/settings/notification/modes/ZenModeButtonPreferenceController.java
index 6b84414..998b596 100644
--- a/src/com/android/settings/notification/modes/ZenModeButtonPreferenceController.java
+++ b/src/com/android/settings/notification/modes/ZenModeButtonPreferenceController.java
@@ -16,6 +16,8 @@
 
 package com.android.settings.notification.modes;
 
+import static com.google.common.base.Preconditions.checkNotNull;
+
 import android.annotation.NonNull;
 import android.content.Context;
 import android.provider.Settings;
@@ -36,8 +38,8 @@
     private static final String TAG = "ZenModeButtonPrefController";
 
     private Button mZenButton;
-    private Fragment mParent;
-    private ManualDurationHelper mDurationHelper;
+    private final Fragment mParent;
+    private final ManualDurationHelper mDurationHelper;
 
     ZenModeButtonPreferenceController(Context context, String key, Fragment parent,
             ZenModesBackend backend) {
@@ -48,7 +50,8 @@
 
     @Override
     public boolean isAvailable(ZenMode zenMode) {
-        return zenMode.getRule().isManualInvocationAllowed() && zenMode.getRule().isEnabled();
+        return zenMode.isEnabled()
+                && (zenMode.isActive() || zenMode.getRule().isManualInvocationAllowed());
     }
 
     @Override
@@ -57,6 +60,7 @@
             mZenButton = ((LayoutPreference) preference).findViewById(R.id.activate_mode);
         }
         mZenButton.setOnClickListener(v -> {
+            checkNotNull(mBackend, "Backend not available!");
             if (zenMode.isActive()) {
                 mBackend.deactivateMode(zenMode);
             } else {
diff --git a/src/com/android/settings/notification/modes/ZenModeEditNameIconFragmentBase.java b/src/com/android/settings/notification/modes/ZenModeEditNameIconFragmentBase.java
index d666254..96cbf91 100644
--- a/src/com/android/settings/notification/modes/ZenModeEditNameIconFragmentBase.java
+++ b/src/com/android/settings/notification/modes/ZenModeEditNameIconFragmentBase.java
@@ -21,14 +21,11 @@
 
 import android.content.Context;
 import android.os.Bundle;
-import android.util.Log;
 
 import androidx.annotation.DrawableRes;
 import androidx.annotation.NonNull;
 import androidx.annotation.Nullable;
 import androidx.annotation.VisibleForTesting;
-import androidx.preference.Preference;
-import androidx.preference.PreferenceScreen;
 
 import com.android.settings.R;
 import com.android.settings.dashboard.DashboardFragment;
@@ -39,7 +36,6 @@
 import com.google.common.base.Strings;
 import com.google.common.collect.ImmutableList;
 
-import java.util.Collection;
 import java.util.List;
 
 /**
@@ -79,7 +75,11 @@
                 ? icicle.getParcelable(MODE_KEY, ZenMode.class)
                 : onCreateInstantiateZenMode();
 
-        if (mZenMode == null) {
+        if (mZenMode != null) {
+            for (var controller : getZenPreferenceControllers()) {
+                controller.setZenMode(mZenMode);
+            }
+        } else {
             finish();
         }
     }
@@ -110,58 +110,32 @@
         );
     }
 
+    private Iterable<AbstractZenModePreferenceController> getZenPreferenceControllers() {
+        return getPreferenceControllers().stream()
+                .flatMap(List::stream)
+                .filter(AbstractZenModePreferenceController.class::isInstance)
+                .map(AbstractZenModePreferenceController.class::cast)
+                .toList();
+    }
+
     @VisibleForTesting(otherwise = VisibleForTesting.NONE)
     @Nullable
     ZenMode getZenMode() {
         return mZenMode;
     }
 
-    @Override
-    public void onStart() {
-        super.onStart();
-        updateControllers();
-    }
-
     @VisibleForTesting
     final void setModeName(String name) {
         checkNotNull(mZenMode).getRule().setName(Strings.nullToEmpty(name));
-        updateControllers(); // Updates confirmation button.
+        forceUpdatePreferences(); // Updates confirmation button.
     }
 
     @VisibleForTesting
     final void setModeIcon(@DrawableRes int iconResId) {
         checkNotNull(mZenMode).getRule().setIconResId(iconResId);
-        updateControllers(); // Updates icon at the top.
+        forceUpdatePreferences();  // Updates icon at the top.
     }
 
-    protected void updateControllers() {
-        PreferenceScreen screen = getPreferenceScreen();
-        Collection<List<AbstractPreferenceController>> controllers = getPreferenceControllers();
-        if (mZenMode == null || screen == null || controllers == null) {
-            return;
-        }
-        for (List<AbstractPreferenceController> list : controllers) {
-            for (AbstractPreferenceController controller : list) {
-                try {
-                    final String key = controller.getPreferenceKey();
-                    final Preference preference = screen.findPreference(key);
-                    if (preference != null) {
-                        AbstractZenModePreferenceController zenController =
-                                (AbstractZenModePreferenceController) controller;
-                        zenController.updateZenMode(preference, mZenMode);
-                    } else {
-                        Log.d(getLogTag(),
-                                String.format("Cannot find preference with key %s in Controller %s",
-                                        key, controller.getClass().getSimpleName()));
-                    }
-                    controller.displayPreference(screen);
-                } catch (ClassCastException e) {
-                    // Skip any controllers that aren't AbstractZenModePreferenceController.
-                    Log.d(getLogTag(), "Could not cast: " + controller.getClass().getSimpleName());
-                }
-            }
-        }
-    }
 
     @VisibleForTesting
     final void saveMode() {
diff --git a/src/com/android/settings/notification/modes/ZenModeFragment.java b/src/com/android/settings/notification/modes/ZenModeFragment.java
index 0661284..1b7e344 100644
--- a/src/com/android/settings/notification/modes/ZenModeFragment.java
+++ b/src/com/android/settings/notification/modes/ZenModeFragment.java
@@ -51,6 +51,7 @@
     protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
         List<AbstractPreferenceController> prefControllers = new ArrayList<>();
         prefControllers.add(new ZenModeHeaderController(context, "header", this));
+        prefControllers.add(new ZenModeBlurbPreferenceController(context, "mode_blurb"));
         prefControllers.add(
                 new ZenModeButtonPreferenceController(context, "activate", this, mBackend));
         prefControllers.add(new ZenModePreferenceCategoryController(context, "modes_filters"));
@@ -64,8 +65,13 @@
                 new ZenModePreferenceCategoryController(context, "modes_additional_actions"));
         prefControllers.add(new ZenModeDisplayLinkPreferenceController(
                 context, "mode_display_settings", mBackend, mHelperBackend));
-        prefControllers.add(new ZenModeSetTriggerLinkPreferenceController(context,
-                "zen_automatic_trigger_category", this, mBackend));
+        prefControllers.add(new ZenModeTriggerCategoryPreferenceController(context,
+                "zen_automatic_trigger_category"));
+        prefControllers.add(new ZenModeTriggerUpdatePreferenceController(context,
+                "zen_automatic_trigger_settings", mBackend));
+        prefControllers.add(
+                new ZenModeTriggerAddPreferenceController(context, "zen_add_automatic_trigger",
+                        this, mBackend));
         prefControllers.add(new InterruptionFilterPreferenceController(
                 context, "allow_filtering", mBackend));
         prefControllers.add(new ManualDurationPreferenceController(
@@ -74,14 +80,6 @@
     }
 
     @Override
-    public void onAttach(@NonNull Context context) {
-        super.onAttach(context);
-
-        // allow duration preference controller to listen for settings changes
-        use(ManualDurationPreferenceController.class).registerSettingsObserver();
-    }
-
-    @Override
     public void onStart() {
         super.onStart();
 
@@ -93,6 +91,9 @@
             mModeMenuProvider = new ModeMenuProvider(mode);
             activity.addMenuProvider(mModeMenuProvider);
         }
+
+        // allow duration preference controller to listen for settings changes
+        use(ManualDurationPreferenceController.class).registerSettingsObserver();
     }
 
     @Override
@@ -100,13 +101,8 @@
         if (getActivity() != null) {
             getActivity().removeMenuProvider(mModeMenuProvider);
         }
-        super.onStop();
-    }
-
-    @Override
-    public void onDetach() {
         use(ManualDurationPreferenceController.class).unregisterSettingsObserver();
-        super.onDetach();
+        super.onStop();
     }
 
     @Override
@@ -116,13 +112,13 @@
     }
 
     @Override
-    protected void updateZenModeState() {
+    protected void onUpdatedZenModeState() {
         // Because this fragment may be asked to finish by the delete menu but not be done doing
         // so yet, ignore any attempts to update info in that case.
         if (getActivity() != null && getActivity().isFinishing()) {
             return;
         }
-        super.updateZenModeState();
+        super.onUpdatedZenModeState();
     }
 
     private class ModeMenuProvider implements MenuProvider {
diff --git a/src/com/android/settings/notification/modes/ZenModeFragmentBase.java b/src/com/android/settings/notification/modes/ZenModeFragmentBase.java
index f461fc3..c63b3a8 100644
--- a/src/com/android/settings/notification/modes/ZenModeFragmentBase.java
+++ b/src/com/android/settings/notification/modes/ZenModeFragmentBase.java
@@ -18,24 +18,18 @@
 
 import static android.provider.Settings.EXTRA_AUTOMATIC_ZEN_RULE_ID;
 
-import android.content.Context;
 import android.os.Bundle;
 import android.util.Log;
 import android.widget.Toast;
 
 import androidx.annotation.NonNull;
 import androidx.annotation.Nullable;
-import androidx.preference.Preference;
-import androidx.preference.PreferenceScreen;
+import androidx.lifecycle.Lifecycle;
 
 import com.android.settings.R;
-import com.android.settingslib.core.AbstractPreferenceController;
 import com.android.settingslib.notification.modes.ZenMode;
 
-import com.google.common.base.Preconditions;
-
 import java.util.List;
-import java.util.function.Consumer;
 
 /**
  * Base class for Settings pages used to configure individual modes.
@@ -43,13 +37,27 @@
 abstract class ZenModeFragmentBase extends ZenModesFragmentBase {
     static final String TAG = "ZenModeSettings";
 
-    @Nullable  // only until reloadMode() is called
-    private ZenMode mZenMode;
+    @Nullable private ZenMode mZenMode;
+    @Nullable private ZenMode mModeOnLastControllerUpdate;
 
     @Override
-    public void onAttach(@NonNull Context context) {
-        super.onAttach(context);
+    public void onCreate(Bundle icicle) {
+        mZenMode = loadModeFromArguments();
+        if (mZenMode != null) {
+            // Propagate mode info through to controllers. Must be done before super.onCreate(),
+            // because that one calls AbstractPreferenceController.isAvailable().
+            for (var controller : getZenPreferenceControllers()) {
+                controller.setZenMode(mZenMode);
+            }
+        } else {
+            toastAndFinish();
+        }
 
+        super.onCreate(icicle);
+    }
+
+    @Nullable
+    private ZenMode loadModeFromArguments() {
         String id = null;
         if (getActivity() != null && getActivity().getIntent() != null) {
             id = getActivity().getIntent().getStringExtra(EXTRA_AUTOMATIC_ZEN_RULE_ID);
@@ -60,93 +68,65 @@
         }
         if (id == null) {
             Log.d(TAG, "No id provided");
-            toastAndFinish();
-            return;
+            return null;
         }
-        if (!reloadMode(id)) {
-            Log.d(TAG, "Mode id " + id + " not found");
-            toastAndFinish();
-            return;
+
+        ZenMode mode = mBackend.getMode(id);
+        if (mode == null) {
+            Log.d(TAG, "Mode with id " + id + " not found");
+            return null;
         }
-        if (mZenMode != null) {
-            // Propagate mode info through to controllers.
-            for (List<AbstractPreferenceController> list : getPreferenceControllers()) {
-                try {
-                    for (AbstractPreferenceController controller : list) {
-                        // mZenMode guaranteed non-null from reloadMode() above
-                        ((AbstractZenModePreferenceController) controller).setZenMode(mZenMode);
-                    }
-                } catch (ClassCastException e) {
-                    // ignore controllers that aren't AbstractZenModePreferenceController
-                }
-            }
-        }
+        return mode;
     }
 
-    /**
-     * Refresh stored ZenMode data.
-     * @param id the mode ID
-     * @return whether we successfully got mode data from the backend.
-     */
-    private boolean reloadMode(String id) {
-        mZenMode = mBackend.getMode(id);
-        if (mZenMode == null) {
-            return false;
-        }
-        return true;
+    private Iterable<AbstractZenModePreferenceController> getZenPreferenceControllers() {
+        return getPreferenceControllers().stream()
+                .flatMap(List::stream)
+                .filter(AbstractZenModePreferenceController.class::isInstance)
+                .map(AbstractZenModePreferenceController.class::cast)
+                .toList();
     }
 
-    /**
-     * Refresh ZenMode data any time the system's zen mode state changes (either the zen mode value
-     * itself, or the config), and also (once updated) update the info for all controllers.
-     */
     @Override
-    protected void updateZenModeState() {
+    protected void onUpdatedZenModeState() {
         if (mZenMode == null) {
-            // This shouldn't happen, but guard against it in case
+            Log.wtf(TAG, "mZenMode is null in onUpdatedZenModeState");
             toastAndFinish();
             return;
         }
+
         String id = mZenMode.getId();
-        if (!reloadMode(id)) {
+        ZenMode mode = mBackend.getMode(id);
+        if (mode == null) {
             Log.d(TAG, "Mode id=" + id + " not found");
             toastAndFinish();
             return;
         }
-        updateControllers();
+
+        mZenMode = mode;
+        maybeUpdateControllersState(mode);
     }
 
-    private void updateControllers() {
-        if (getPreferenceControllers() == null || mZenMode == null) {
-            return;
+    /**
+     * Updates all {@link AbstractZenModePreferenceController} based on the loaded mode info.
+     * For each controller, {@link AbstractZenModePreferenceController#setZenMode} will be called.
+     * Then, {@link AbstractZenModePreferenceController#updateState} will be called as well, unless
+     * we determine it's not necessary (for example, if we know that {@code DashboardFragment} will
+     * do it soon).
+     */
+    private void maybeUpdateControllersState(@NonNull ZenMode zenMode) {
+        boolean needsFullUpdate =
+                getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.RESUMED)
+                && (mModeOnLastControllerUpdate == null
+                        || !mModeOnLastControllerUpdate.equals(zenMode));
+        mModeOnLastControllerUpdate = zenMode.copy();
+
+        for (var controller : getZenPreferenceControllers()) {
+            controller.setZenMode(zenMode);
         }
 
-        final PreferenceScreen screen = getPreferenceScreen();
-        if (screen == null) {
-            Log.d(TAG, "PreferenceScreen not found");
-            return;
-        }
-        for (List<AbstractPreferenceController> list : getPreferenceControllers()) {
-            for (AbstractPreferenceController controller : list) {
-                try {
-                    // Find preference associated with controller
-                    final String key = controller.getPreferenceKey();
-                    final Preference preference = screen.findPreference(key);
-                    if (preference != null) {
-                        AbstractZenModePreferenceController zenController =
-                                (AbstractZenModePreferenceController) controller;
-                        zenController.updateZenMode(preference, mZenMode);
-                    } else {
-                        Log.d(TAG,
-                                String.format("Cannot find preference with key %s in Controller %s",
-                                        key, controller.getClass().getSimpleName()));
-                    }
-                    controller.displayPreference(screen);
-                } catch (ClassCastException e) {
-                    // Skip any controllers that aren't AbstractZenModePreferenceController.
-                    Log.d(TAG, "Could not cast: " + controller.getClass().getSimpleName());
-                }
-            }
+        if (needsFullUpdate) {
+            forceUpdatePreferences();
         }
     }
 
@@ -163,16 +143,4 @@
     public ZenMode getMode() {
         return mZenMode;
     }
-
-    protected final boolean saveMode(Consumer<ZenMode> updater) {
-        Preconditions.checkState(mBackend != null);
-        ZenMode mode = mZenMode;
-        if (mode == null) {
-            Log.wtf(TAG, "Cannot save mode, it hasn't been loaded (" + getClass() + ")");
-            return false;
-        }
-        updater.accept(mode);
-        mBackend.updateMode(mode);
-        return true;
-    }
 }
diff --git a/src/com/android/settings/notification/modes/ZenModeHeaderController.java b/src/com/android/settings/notification/modes/ZenModeHeaderController.java
index 545abff..c4f3dd1 100644
--- a/src/com/android/settings/notification/modes/ZenModeHeaderController.java
+++ b/src/com/android/settings/notification/modes/ZenModeHeaderController.java
@@ -15,7 +15,6 @@
  */
 package com.android.settings.notification.modes;
 
-import android.app.Flags;
 import android.content.Context;
 
 import androidx.annotation.NonNull;
@@ -23,48 +22,22 @@
 
 import com.android.settings.R;
 import com.android.settings.dashboard.DashboardFragment;
-import com.android.settings.widget.EntityHeaderController;
-import com.android.settingslib.notification.modes.ZenIconLoader;
 import com.android.settingslib.notification.modes.ZenMode;
-import com.android.settingslib.widget.LayoutPreference;
 
-class ZenModeHeaderController extends AbstractZenModePreferenceController {
-
-    private final DashboardFragment mFragment;
-    private EntityHeaderController mHeaderController;
+class ZenModeHeaderController extends AbstractZenModeHeaderController {
 
     ZenModeHeaderController(
             @NonNull  Context context,
             @NonNull String key,
             @NonNull DashboardFragment fragment) {
-        super(context, key);
-        mFragment = fragment;
-    }
-
-    @Override
-    public boolean isAvailable() {
-        return Flags.modesApi();
+        super(context, key, fragment);
     }
 
     @Override
     public void updateState(Preference preference, @NonNull ZenMode zenMode) {
-        if (mFragment == null) {
-            return;
-        }
-        preference.setSelectable(false);
-
-        if (mHeaderController == null) {
-            final LayoutPreference pref = (LayoutPreference) preference;
-            mHeaderController = EntityHeaderController.newInstance(
-                    mFragment.getActivity(),
-                    mFragment,
-                    pref.findViewById(R.id.entity_header));
-        }
-
-        FutureUtil.whenDone(
-                zenMode.getIcon(mContext, ZenIconLoader.getInstance()),
-                icon -> mHeaderController.setIcon(IconUtil.applyNormalTint(mContext, icon))
-                        .done(/* rebindActions= */ false),
-                mContext.getMainExecutor());
+        updateIcon(preference, zenMode,
+                mContext.getResources().getDimensionPixelSize(R.dimen.zen_mode_header_size),
+                icon -> IconUtil.makeModeHeader(mContext, icon),
+                iconView -> iconView.setSelected(zenMode.isActive()));
     }
 }
diff --git a/src/com/android/settings/notification/modes/ZenModeIconPickerIconPreferenceController.java b/src/com/android/settings/notification/modes/ZenModeIconPickerIconPreferenceController.java
index 1b51cfa..a7adf6c 100644
--- a/src/com/android/settings/notification/modes/ZenModeIconPickerIconPreferenceController.java
+++ b/src/com/android/settings/notification/modes/ZenModeIconPickerIconPreferenceController.java
@@ -17,55 +17,28 @@
 package com.android.settings.notification.modes;
 
 import android.content.Context;
-import android.view.ViewGroup;
-import android.widget.ImageView;
 
 import androidx.annotation.NonNull;
 import androidx.preference.Preference;
 
 import com.android.settings.R;
 import com.android.settings.dashboard.DashboardFragment;
-import com.android.settings.widget.EntityHeaderController;
-import com.android.settingslib.notification.modes.ZenIconLoader;
 import com.android.settingslib.notification.modes.ZenMode;
-import com.android.settingslib.widget.LayoutPreference;
 
 /** Controller used for displaying the currently-chosen icon at the top of the icon picker. */
-class ZenModeIconPickerIconPreferenceController extends AbstractZenModePreferenceController {
-
-    private final DashboardFragment mFragment;
-    private EntityHeaderController mHeaderController;
+class ZenModeIconPickerIconPreferenceController extends AbstractZenModeHeaderController {
 
     ZenModeIconPickerIconPreferenceController(@NonNull Context context, @NonNull String key,
             @NonNull DashboardFragment fragment) {
-        super(context, key);
-        mFragment = fragment;
+        super(context, key, fragment);
     }
 
     @Override
     void updateState(Preference preference, @NonNull ZenMode zenMode) {
-        preference.setSelectable(false);
-
-        if (mHeaderController == null) {
-            final LayoutPreference pref = (LayoutPreference) preference;
-            mHeaderController = EntityHeaderController.newInstance(
-                            mFragment.getActivity(),
-                            mFragment,
-                            pref.findViewById(R.id.entity_header));
-
-            ImageView iconView = pref.findViewById(R.id.entity_header_icon);
-            ViewGroup.LayoutParams layoutParams = iconView.getLayoutParams();
-            int imageSizePx = iconView.getContext().getResources().getDimensionPixelSize(
-                    R.dimen.zen_mode_icon_list_header_circle_diameter);
-            layoutParams.width = imageSizePx;
-            layoutParams.height = imageSizePx;
-            iconView.setLayoutParams(layoutParams);
-        }
-
-        FutureUtil.whenDone(
-                zenMode.getIcon(mContext, ZenIconLoader.getInstance()),
-                icon -> mHeaderController.setIcon(IconUtil.makeIconPickerHeader(mContext, icon))
-                        .done(/* rebindActions= */ false),
-                mContext.getMainExecutor());
+        updateIcon(preference, zenMode,
+                mContext.getResources().getDimensionPixelSize(
+                        R.dimen.zen_mode_icon_list_header_circle_diameter),
+                icon -> IconUtil.makeIconPickerHeader(mContext, icon),
+                null);
     }
 }
diff --git a/src/com/android/settings/notification/modes/ZenModePeopleLinkPreferenceController.java b/src/com/android/settings/notification/modes/ZenModePeopleLinkPreferenceController.java
index b5938c6..0d3a721 100644
--- a/src/com/android/settings/notification/modes/ZenModePeopleLinkPreferenceController.java
+++ b/src/com/android/settings/notification/modes/ZenModePeopleLinkPreferenceController.java
@@ -46,9 +46,10 @@
 import com.android.settingslib.notification.ConversationIconFactory;
 import com.android.settingslib.notification.modes.ZenMode;
 
+import com.google.common.base.Equivalence;
 import com.google.common.collect.ImmutableList;
 
-import java.util.function.Function;
+import java.util.Objects;
 
 /**
  * Preference with a link and summary about what calls and messages can break through the mode,
@@ -94,29 +95,60 @@
 
         preference.setEnabled(zenMode.isEnabled());
         preference.setSummary(mSummaryHelper.getPeopleSummary(zenMode.getPolicy()));
-        ((CircularIconsPreference) preference).displayIcons(getPeopleIcons(zenMode.getPolicy()));
+        ((CircularIconsPreference) preference).displayIcons(getPeopleIcons(zenMode.getPolicy()),
+                PEOPLE_ITEM_EQUIVALENCE);
     }
 
-    // Represents "Either<Contact, ConversationChannelWrapper>".
-    record PeopleItem(@Nullable Contact contact,
-                      @Nullable ConversationChannelWrapper conversation) {
+    // Represents "Either<All, Contact, ConversationChannelWrapper>".
+    private record PeopleItem(boolean all,
+                              @Nullable Contact contact,
+                              @Nullable ConversationChannelWrapper conversation) {
+
+        private static final PeopleItem ALL = new PeopleItem(true, null, null);
 
         PeopleItem(@NonNull Contact contact) {
-            this(contact, null);
+            this(false, contact, null);
         }
 
         PeopleItem(@NonNull ConversationChannelWrapper conversation) {
-            this(null, conversation);
+            this(false, null, conversation);
         }
-
     }
 
-    private CircularIconSet<?> getPeopleIcons(ZenPolicy policy) {
+    private static final Equivalence<PeopleItem> PEOPLE_ITEM_EQUIVALENCE = new Equivalence<>() {
+        @Override
+        protected boolean doEquivalent(@NonNull PeopleItem a, @NonNull PeopleItem b) {
+            if (a.all && b.all) {
+                return true;
+            } else if (a.contact != null && b.contact != null) {
+                return a.contact.equals(b.contact);
+            } else if (a.conversation != null && b.conversation != null) {
+                ConversationChannelWrapper c1 = a.conversation;
+                ConversationChannelWrapper c2 = b.conversation;
+                // Skip comparing ShortcutInfo which doesn't implement equals(). We assume same
+                // conversation channel means same icon (which is not 100% correct but unlikely to
+                // change while on this screen).
+                return Objects.equals(c1.getNotificationChannel(), c2.getNotificationChannel())
+                        && Objects.equals(c1.getGroupLabel(), c2.getGroupLabel())
+                        && Objects.equals(c1.getParentChannelLabel(), c2.getParentChannelLabel())
+                        && Objects.equals(c1.getPkg(), c2.getPkg())
+                        && Objects.equals(c1.getUid(), c2.getUid());
+            } else {
+                return false;
+            }
+        }
+
+        @Override
+        protected int doHash(@NonNull PeopleItem item) {
+            return Objects.hash(item.all, item.contact, item.conversation);
+        }
+    };
+
+    private CircularIconSet<PeopleItem> getPeopleIcons(ZenPolicy policy) {
         if (getCallersOrMessagesAllowed(policy) == PEOPLE_TYPE_ANYONE) {
             return new CircularIconSet<>(
-                    ImmutableList.of(IconUtil.makeCircularIconPreferenceItem(mContext,
-                            R.drawable.ic_zen_mode_people_all)),
-                    Function.identity());
+                    ImmutableList.of(PeopleItem.ALL),
+                    this::loadPeopleIcon);
         }
 
         ImmutableList.Builder<PeopleItem> peopleItems = ImmutableList.builder();
@@ -181,7 +213,10 @@
 
     @WorkerThread
     private Drawable loadPeopleIcon(PeopleItem peopleItem) {
-        if (peopleItem.contact != null) {
+        if (peopleItem.all) {
+            return IconUtil.makeCircularIconPreferenceItem(mContext,
+                    R.drawable.ic_zen_mode_people_all);
+        } else if (peopleItem.contact != null) {
             return mHelperBackend.getContactPhoto(peopleItem.contact);
         } else if (peopleItem.conversation != null) {
             return mConversationIconFactory.getConversationDrawable(
@@ -190,7 +225,7 @@
                     peopleItem.conversation.getUid(),
                     /* important= */ true);
         } else {
-            throw new IllegalArgumentException("Neither contact nor conversation!");
+            throw new IllegalArgumentException("Neither all nor contact nor conversation!");
         }
     }
 }
diff --git a/src/com/android/settings/notification/modes/ZenModeSetSchedulePreferenceController.java b/src/com/android/settings/notification/modes/ZenModeSetSchedulePreferenceController.java
index 878a508..e4c3f32 100644
--- a/src/com/android/settings/notification/modes/ZenModeSetSchedulePreferenceController.java
+++ b/src/com/android/settings/notification/modes/ZenModeSetSchedulePreferenceController.java
@@ -67,12 +67,18 @@
         LayoutPreference layoutPref = (LayoutPreference) preference;
 
         TextView start = layoutPref.findViewById(R.id.start_time);
-        start.setText(timeString(mSchedule.startHour, mSchedule.startMinute));
+        String startTimeString = timeString(mSchedule.startHour, mSchedule.startMinute);
+        start.setText(startTimeString);
+        start.setContentDescription(
+                mContext.getString(R.string.zen_mode_start_time) + "\n" + startTimeString);
         start.setOnClickListener(
                 timePickerLauncher(mSchedule.startHour, mSchedule.startMinute, mStartSetter));
 
         TextView end = layoutPref.findViewById(R.id.end_time);
-        end.setText(timeString(mSchedule.endHour, mSchedule.endMinute));
+        String endTimeString = timeString(mSchedule.endHour, mSchedule.endMinute);
+        end.setText(endTimeString);
+        end.setContentDescription(
+                mContext.getString(R.string.zen_mode_end_time) + "\n" + endTimeString);
         end.setOnClickListener(
                 timePickerLauncher(mSchedule.endHour, mSchedule.endMinute, mEndSetter));
 
@@ -198,7 +204,10 @@
             // day label.
             dayToggle.setTextOn(mShortDayFormat.format(c.getTime()));
             dayToggle.setTextOff(mShortDayFormat.format(c.getTime()));
-            dayToggle.setContentDescription(mLongDayFormat.format(c.getTime()));
+            String state = dayEnabled
+                    ? mContext.getString(com.android.internal.R.string.capital_on)
+                    : mContext.getString(com.android.internal.R.string.capital_off);
+            dayToggle.setStateDescription(mLongDayFormat.format(c.getTime()) + ", " + state);
 
             dayToggle.setChecked(dayEnabled);
             dayToggle.setOnCheckedChangeListener((buttonView, isChecked) -> {
diff --git a/src/com/android/settings/notification/modes/ZenModeTriggerAddPreferenceController.java b/src/com/android/settings/notification/modes/ZenModeTriggerAddPreferenceController.java
new file mode 100644
index 0000000..68cc167
--- /dev/null
+++ b/src/com/android/settings/notification/modes/ZenModeTriggerAddPreferenceController.java
@@ -0,0 +1,63 @@
+/*
+ * Copyright (C) 2024 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.
+ */
+
+package com.android.settings.notification.modes;
+
+import android.content.Context;
+
+import androidx.annotation.NonNull;
+import androidx.annotation.VisibleForTesting;
+import androidx.preference.Preference;
+
+import com.android.settings.dashboard.DashboardFragment;
+import com.android.settingslib.notification.modes.ZenMode;
+import com.android.settingslib.notification.modes.ZenModesBackend;
+
+class ZenModeTriggerAddPreferenceController extends AbstractZenModePreferenceController {
+
+    private final DashboardFragment mFragment;
+
+    ZenModeTriggerAddPreferenceController(@NonNull Context context,
+            @NonNull String key, DashboardFragment fragment, ZenModesBackend backend) {
+        super(context, key, backend);
+        mFragment = fragment;
+    }
+
+    @Override
+    public boolean isAvailable(@NonNull ZenMode zenMode) {
+        return zenMode.isCustomManual();
+    }
+
+    @Override
+    void updateState(Preference preference, @NonNull ZenMode zenMode) {
+        if (!isAvailable(zenMode)) {
+            return;
+        }
+
+        preference.setOnPreferenceClickListener(unused -> {
+            ZenModeScheduleChooserDialog.show(mFragment, mOnScheduleOptionListener);
+            return true;
+        });
+    }
+
+    @VisibleForTesting
+    final ZenModeScheduleChooserDialog.OnScheduleOptionListener mOnScheduleOptionListener =
+            conditionId -> saveMode(mode -> {
+                mode.setCustomModeConditionId(mContext, conditionId);
+                return mode;
+                // TODO: b/342156843 - Maybe jump to the corresponding schedule editing screen?
+            });
+}
diff --git a/src/com/android/settings/notification/modes/ZenModeTriggerCategoryPreferenceController.java b/src/com/android/settings/notification/modes/ZenModeTriggerCategoryPreferenceController.java
new file mode 100644
index 0000000..5fc3fda
--- /dev/null
+++ b/src/com/android/settings/notification/modes/ZenModeTriggerCategoryPreferenceController.java
@@ -0,0 +1,44 @@
+/*
+ * Copyright (C) 2024 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.
+ */
+
+package com.android.settings.notification.modes;
+
+import android.content.Context;
+
+import androidx.annotation.NonNull;
+import androidx.preference.Preference;
+
+import com.android.settingslib.notification.modes.ZenMode;
+
+/**
+ * Preference controller for the "Turn on automatically" category
+ */
+class ZenModeTriggerCategoryPreferenceController extends AbstractZenModePreferenceController {
+
+    ZenModeTriggerCategoryPreferenceController(Context context, String key) {
+        super(context, key);
+    }
+
+    @Override
+    public boolean isAvailable(@NonNull ZenMode zenMode) {
+        return !zenMode.isManualDnd();
+    }
+
+    @Override
+    public void updateState(Preference preference, @NonNull ZenMode zenMode) {
+        // Nothing to update here (except visibility via isAvailable()).
+    }
+}
diff --git a/src/com/android/settings/notification/modes/ZenModeSetTriggerLinkPreferenceController.java b/src/com/android/settings/notification/modes/ZenModeTriggerUpdatePreferenceController.java
similarity index 71%
rename from src/com/android/settings/notification/modes/ZenModeSetTriggerLinkPreferenceController.java
rename to src/com/android/settings/notification/modes/ZenModeTriggerUpdatePreferenceController.java
index 24df931..3ee6d94 100644
--- a/src/com/android/settings/notification/modes/ZenModeSetTriggerLinkPreferenceController.java
+++ b/src/com/android/settings/notification/modes/ZenModeTriggerUpdatePreferenceController.java
@@ -22,8 +22,6 @@
 import static android.app.AutomaticZenRule.TYPE_SCHEDULE_TIME;
 import static android.service.notification.ZenModeConfig.tryParseScheduleConditionId;
 
-import static com.google.common.base.Preconditions.checkNotNull;
-
 import android.annotation.SuppressLint;
 import android.app.AlertDialog;
 import android.content.Context;
@@ -39,46 +37,35 @@
 import androidx.annotation.StringRes;
 import androidx.annotation.VisibleForTesting;
 import androidx.preference.Preference;
-import androidx.preference.PreferenceCategory;
-import androidx.preference.PreferenceScreen;
 
 import com.android.settings.R;
-import com.android.settings.dashboard.DashboardFragment;
 import com.android.settingslib.PrimarySwitchPreference;
 import com.android.settingslib.notification.modes.ZenMode;
 import com.android.settingslib.notification.modes.ZenModesBackend;
 
 import com.google.common.base.Strings;
 
-/**
- * Preference controller for the link to an individual mode's configuration page.
- */
-class ZenModeSetTriggerLinkPreferenceController extends AbstractZenModePreferenceController {
-    private static final String TAG = "ZenModeSetTriggerLink";
+class ZenModeTriggerUpdatePreferenceController extends AbstractZenModePreferenceController {
 
-    @VisibleForTesting
-    static final String AUTOMATIC_TRIGGER_KEY = "zen_automatic_trigger_settings";
-    static final String ADD_TRIGGER_KEY = "zen_add_automatic_trigger";
+    private static final String TAG = "ZenModeTriggerUpdate";
 
-    private final DashboardFragment mFragment;
     private final PackageManager mPackageManager;
     private final ConfigurationActivityHelper mConfigurationActivityHelper;
     private final ZenServiceListing mServiceListing;
 
-    ZenModeSetTriggerLinkPreferenceController(Context context, String key,
-            DashboardFragment fragment, ZenModesBackend backend) {
-        this(context, key, fragment, backend, context.getPackageManager(),
+    ZenModeTriggerUpdatePreferenceController(Context context, String key,
+            ZenModesBackend backend) {
+        this(context, key, backend, context.getPackageManager(),
                 new ConfigurationActivityHelper(context.getPackageManager()),
                 new ZenServiceListing(context));
     }
 
     @VisibleForTesting
-    ZenModeSetTriggerLinkPreferenceController(Context context, String key,
-            DashboardFragment fragment, ZenModesBackend backend, PackageManager packageManager,
+    ZenModeTriggerUpdatePreferenceController(Context context, String key,
+            ZenModesBackend backend, PackageManager packageManager,
             ConfigurationActivityHelper configurationActivityHelper,
             ZenServiceListing serviceListing) {
         super(context, key, backend);
-        mFragment = fragment;
         mPackageManager = packageManager;
         mConfigurationActivityHelper = configurationActivityHelper;
         mServiceListing = serviceListing;
@@ -86,50 +73,22 @@
 
     @Override
     public boolean isAvailable(@NonNull ZenMode zenMode) {
-        return !zenMode.isManualDnd();
+        return !zenMode.isCustomManual() && !zenMode.isManualDnd();
     }
 
     @Override
-    public void displayPreference(PreferenceScreen screen, @NonNull ZenMode zenMode) {
-        // Preload approved components, but only for the package that owns the rule (since it's the
-        // only package that can have a valid configurationActivity).
-        mServiceListing.loadApprovedComponents(zenMode.getRule().getPackageName());
-    }
-
-    @Override
-    public void updateState(Preference preference, @NonNull ZenMode zenMode) {
-        // This controller is expected to govern a preference category so that it controls the
-        // availability of the entire preference category if the mode doesn't have a way to
-        // automatically trigger (such as manual DND).
-        if (zenMode.isManualDnd()) {
+    void updateState(Preference preference, @NonNull ZenMode zenMode) {
+        if (!isAvailable(zenMode)) {
             return;
         }
-        PrimarySwitchPreference triggerPref = checkNotNull(
-                ((PreferenceCategory) preference).findPreference(AUTOMATIC_TRIGGER_KEY));
-        Preference addTriggerPref = checkNotNull(
-                ((PreferenceCategory) preference).findPreference(ADD_TRIGGER_KEY));
 
-        boolean isAddTrigger = zenMode.isSystemOwned() && zenMode.getType() != TYPE_SCHEDULE_TIME
-                && zenMode.getType() != TYPE_SCHEDULE_CALENDAR;
-
-        if (isAddTrigger) {
-            triggerPref.setVisible(false);
-            addTriggerPref.setVisible(true);
-            addTriggerPref.setOnPreferenceClickListener(unused -> {
-                ZenModeScheduleChooserDialog.show(mFragment, mOnScheduleOptionListener);
-                return true;
-            });
+        PrimarySwitchPreference triggerPref = (PrimarySwitchPreference) preference;
+        triggerPref.setChecked(zenMode.getRule().isEnabled());
+        triggerPref.setOnPreferenceChangeListener(mSwitchChangeListener);
+        if (zenMode.isSystemOwned()) {
+            setUpForSystemOwnedTrigger(triggerPref, zenMode);
         } else {
-            addTriggerPref.setVisible(false);
-            triggerPref.setVisible(true);
-            triggerPref.setChecked(zenMode.getRule().isEnabled());
-            triggerPref.setOnPreferenceChangeListener(mSwitchChangeListener);
-
-            if (zenMode.isSystemOwned()) {
-                setUpForSystemOwnedTrigger(triggerPref, zenMode);
-            } else {
-                setUpForAppTrigger(triggerPref, zenMode);
-            }
+            setUpForAppTrigger(triggerPref, zenMode);
         }
     }
 
@@ -170,6 +129,7 @@
     @SuppressLint("SwitchIntDef")
     private void setUpForAppTrigger(Preference preference, ZenMode mode) {
         // App-owned mode may have triggerDescription, configurationActivity, or both/neither.
+        mServiceListing.loadApprovedComponents(mode.getRule().getPackageName());
         Intent configurationIntent =
                 mConfigurationActivityHelper.getConfigurationActivityIntentForMode(
                         mode, mServiceListing::findService);
@@ -223,14 +183,6 @@
         preference.setIntent(configurationIntent);
     }
 
-    @VisibleForTesting
-    final ZenModeScheduleChooserDialog.OnScheduleOptionListener mOnScheduleOptionListener =
-            conditionId -> saveMode(mode -> {
-                mode.setCustomModeConditionId(mContext, conditionId);
-                return mode;
-                // TODO: b/342156843 - Maybe jump to the corresponding schedule editing screen?
-            });
-
     private final Preference.OnPreferenceChangeListener mSwitchChangeListener = (p, newValue) -> {
         confirmChangeEnabled(p, (boolean) newValue);
         return true;
diff --git a/src/com/android/settings/notification/modes/ZenModesFragmentBase.java b/src/com/android/settings/notification/modes/ZenModesFragmentBase.java
index 0bc0617..652415b 100644
--- a/src/com/android/settings/notification/modes/ZenModesFragmentBase.java
+++ b/src/com/android/settings/notification/modes/ZenModesFragmentBase.java
@@ -16,14 +16,11 @@
 
 package com.android.settings.notification.modes;
 
+import static com.google.common.base.Preconditions.checkNotNull;
+
 import android.annotation.NonNull;
-import android.annotation.Nullable;
 import android.content.Context;
-import android.database.ContentObserver;
-import android.net.Uri;
-import android.os.Handler;
 import android.os.UserManager;
-import android.provider.Settings.Global;
 import android.util.Log;
 
 import androidx.annotation.VisibleForTesting;
@@ -38,17 +35,10 @@
     protected static final String TAG = "ZenModesSettings";
     protected static final boolean DEBUG = Log.isLoggable(TAG, Log.DEBUG);
 
-    private final Handler mHandler = new Handler();
-    private final SettingsObserver mSettingsObserver = new SettingsObserver();
-
     protected Context mContext;
-
     protected ZenModesBackend mBackend;
     protected ZenHelperBackend mHelperBackend;
-
-    // Individual pages must implement this method based on what they should do when
-    // the device's zen mode state changes.
-    protected abstract void updateZenModeState();
+    private ZenSettingsObserver mSettingsObserver;
 
     ZenModesFragmentBase() {
         super(UserManager.DISALLOW_ADJUST_VOLUME);
@@ -69,8 +59,8 @@
         mContext = context;
         mBackend = ZenModesBackend.getInstance(context);
         mHelperBackend = ZenHelperBackend.getInstance(context);
+        mSettingsObserver = new ZenSettingsObserver(context, this::onUpdatedZenModeState);
         super.onAttach(context);
-        mSettingsObserver.register();
     }
 
     @Override
@@ -83,45 +73,20 @@
                 finish();
             }
         }
+
+        onUpdatedZenModeState(); // Maybe, while we weren't observing.
+        checkNotNull(mSettingsObserver).register();
     }
 
+    /**
+     * Called by this fragment when we know or suspect that Zen Modes data or state has changed.
+     * Individual pages must implement this method to refresh whatever they're displaying.
+     */
+    protected abstract void onUpdatedZenModeState();
+
     @Override
-    public void onResume() {
-        super.onResume();
-        updateZenModeState();
-    }
-
-    @Override
-    public void onDetach() {
-        super.onDetach();
-        mSettingsObserver.unregister();
-    }
-
-    private final class SettingsObserver extends ContentObserver {
-        private static final Uri ZEN_MODE_URI = Global.getUriFor(Global.ZEN_MODE);
-        private static final Uri ZEN_MODE_CONFIG_ETAG_URI = Global.getUriFor(
-                Global.ZEN_MODE_CONFIG_ETAG);
-
-        private SettingsObserver() {
-            super(mHandler);
-        }
-
-        public void register() {
-            getContentResolver().registerContentObserver(ZEN_MODE_URI, false, this);
-            getContentResolver().registerContentObserver(ZEN_MODE_CONFIG_ETAG_URI, false, this);
-        }
-
-        public void unregister() {
-            getContentResolver().unregisterContentObserver(this);
-        }
-
-        @Override
-        public void onChange(boolean selfChange, @Nullable Uri uri) {
-            super.onChange(selfChange, uri);
-            // Shouldn't have any other URIs trigger this method, but check just in case.
-            if (ZEN_MODE_URI.equals(uri) || ZEN_MODE_CONFIG_ETAG_URI.equals(uri)) {
-                updateZenModeState();
-            }
-        }
+    public void onStop() {
+        checkNotNull(mSettingsObserver).unregister();
+        super.onStop();
     }
 }
diff --git a/src/com/android/settings/notification/modes/ZenModesListFragment.java b/src/com/android/settings/notification/modes/ZenModesListFragment.java
index be458b3..a45ca17 100644
--- a/src/com/android/settings/notification/modes/ZenModesListFragment.java
+++ b/src/com/android/settings/notification/modes/ZenModesListFragment.java
@@ -65,7 +65,7 @@
     }
 
     @Override
-    protected void updateZenModeState() {
+    protected void onUpdatedZenModeState() {
         // TODO: b/322373473 -- update any overall description of modes state here if necessary.
         // Note the preferences linking to individual rules do not need to be updated, as
         // updateState() is called on all preference controllers whenever the page is resumed.
diff --git a/src/com/android/settings/notification/modes/ZenModesListPreferenceController.java b/src/com/android/settings/notification/modes/ZenModesListPreferenceController.java
index ba12b9a..12b7278 100644
--- a/src/com/android/settings/notification/modes/ZenModesListPreferenceController.java
+++ b/src/com/android/settings/notification/modes/ZenModesListPreferenceController.java
@@ -38,7 +38,8 @@
  * containing links to each individual mode. This is a central controller that populates and updates
  * all the preferences that then lead to a mode configuration page.
  */
-class ZenModesListPreferenceController extends BasePreferenceController {
+class ZenModesListPreferenceController extends BasePreferenceController
+        implements BasePreferenceController.UiBlocker {
     protected static final String KEY = "zen_modes_list";
 
     protected ZenModesBackend mBackend;
@@ -49,11 +50,6 @@
     }
 
     @Override
-    public String getPreferenceKey() {
-        return KEY;
-    }
-
-    @Override
     @AvailabilityStatus
     public int getAvailabilityStatus() {
         return Flags.modesUi() ? AVAILABLE_UNSEARCHABLE : UNSUPPORTED_ON_DEVICE;
@@ -97,6 +93,8 @@
         for (String key : originalPreferences.keySet()) {
             category.removePreferenceRecursively(key);
         }
+
+        setUiBlockerFinished(true);
     }
 
     // Provide search data for the modes, which will allow users to reach the modes page if they
diff --git a/src/com/android/settings/notification/modes/ZenSettingsObserver.java b/src/com/android/settings/notification/modes/ZenSettingsObserver.java
new file mode 100644
index 0000000..a853646
--- /dev/null
+++ b/src/com/android/settings/notification/modes/ZenSettingsObserver.java
@@ -0,0 +1,68 @@
+/*
+ * Copyright (C) 2024 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.
+ */
+
+package com.android.settings.notification.modes;
+
+import android.content.Context;
+import android.database.ContentObserver;
+import android.net.Uri;
+import android.provider.Settings;
+
+import androidx.annotation.Nullable;
+
+class ZenSettingsObserver extends ContentObserver {
+    private static final Uri ZEN_MODE_URI = Settings.Global.getUriFor(Settings.Global.ZEN_MODE);
+    private static final Uri ZEN_MODE_CONFIG_ETAG_URI = Settings.Global.getUriFor(
+            Settings.Global.ZEN_MODE_CONFIG_ETAG);
+
+    private final Context mContext;
+    @Nullable private Runnable mCallback;
+
+    ZenSettingsObserver(Context context) {
+        this(context, null);
+    }
+
+    ZenSettingsObserver(Context context, @Nullable Runnable callback) {
+        super(context.getMainExecutor(), 0);
+        mContext = context;
+        setOnChangeListener(callback);
+    }
+
+    void register() {
+        mContext.getContentResolver().registerContentObserver(ZEN_MODE_URI, false, this);
+        mContext.getContentResolver().registerContentObserver(ZEN_MODE_CONFIG_ETAG_URI, false,
+                this);
+    }
+
+    void unregister() {
+        mContext.getContentResolver().unregisterContentObserver(this);
+    }
+
+    void setOnChangeListener(@Nullable Runnable callback) {
+        mCallback = callback;
+    }
+
+    @Override
+    public void onChange(boolean selfChange, @Nullable Uri uri) {
+        super.onChange(selfChange, uri);
+        // Shouldn't have any other URIs trigger this method, but check just in case.
+        if (ZEN_MODE_URI.equals(uri) || ZEN_MODE_CONFIG_ETAG_URI.equals(uri)) {
+            if (mCallback != null) {
+                mCallback.run();
+            }
+        }
+    }
+}
diff --git a/src/com/android/settings/onboarding/OnboardingFeatureProvider.kt b/src/com/android/settings/onboarding/OnboardingFeatureProvider.kt
index f76e29a..58afb25 100644
--- a/src/com/android/settings/onboarding/OnboardingFeatureProvider.kt
+++ b/src/com/android/settings/onboarding/OnboardingFeatureProvider.kt
@@ -39,4 +39,12 @@
      * @param logger To log B&R stats.
      */
     fun getSoundBackupHelper(context: Context, logger: BackupRestoreEventLogger): BackupHelper
+
+    /**
+     * Return a BackupHelper for backup accessibility appearance related settings.
+     *
+     * @param context App context
+     * @param logger To log B&R stats.
+     */
+    fun getAccessibilityAppearanceBackupHelper(context: Context, logger: BackupRestoreEventLogger): BackupHelper
 }
\ No newline at end of file
diff --git a/src/com/android/settings/password/ChooseLockGeneric.java b/src/com/android/settings/password/ChooseLockGeneric.java
index d5d079e..34c0731 100644
--- a/src/com/android/settings/password/ChooseLockGeneric.java
+++ b/src/com/android/settings/password/ChooseLockGeneric.java
@@ -495,7 +495,7 @@
                         mBiometricsAuthSuccessful, mWaitingForConfirmation, mUserId)) {
                     mWaitingForConfirmation = true;
                     Utils.launchBiometricPromptForMandatoryBiometrics(this, BIOMETRIC_AUTH_REQUEST,
-                            mUserId);
+                            mUserId, true /* hideBackground */);
                 }
             } else if (requestCode == BIOMETRIC_AUTH_REQUEST) {
                 if (resultCode == Activity.RESULT_OK) {
diff --git a/src/com/android/settings/password/ConfirmDeviceCredentialActivity.java b/src/com/android/settings/password/ConfirmDeviceCredentialActivity.java
index c0b3093..4f35532 100644
--- a/src/com/android/settings/password/ConfirmDeviceCredentialActivity.java
+++ b/src/com/android/settings/password/ConfirmDeviceCredentialActivity.java
@@ -80,6 +80,8 @@
     public static final String BIOMETRIC_PROMPT_AUTHENTICATORS = "biometric_prompt_authenticators";
     public static final String BIOMETRIC_PROMPT_NEGATIVE_BUTTON_TEXT =
             "biometric_prompt_negative_button_text";
+    public static final String BIOMETRIC_PROMPT_HIDE_BACKGROUND =
+            "biometric_prompt_hide_background";
 
     public static class InternalActivity extends ConfirmDeviceCredentialActivity {
     }
@@ -165,15 +167,20 @@
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
 
-        getWindow().addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
-        getWindow().setStatusBarColor(Color.TRANSPARENT);
+        final Intent intent = getIntent();
+        if (intent.getBooleanExtra(BIOMETRIC_PROMPT_HIDE_BACKGROUND, false)) {
+            getWindow().addFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);
+            getWindow().setDimAmount(1);
+            intent.removeExtra(BIOMETRIC_PROMPT_HIDE_BACKGROUND);
+        } else {
+            getWindow().addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
+            getWindow().setStatusBarColor(Color.TRANSPARENT);
+        }
 
         mDevicePolicyManager = getSystemService(DevicePolicyManager.class);
         mUserManager = UserManager.get(this);
         mTrustManager = getSystemService(TrustManager.class);
         mLockPatternUtils = new LockPatternUtils(this);
-
-        Intent intent = getIntent();
         mContext = this;
         mCheckDevicePolicyManager = intent
                 .getBooleanExtra(KeyguardManager.EXTRA_DISALLOW_BIOMETRICS_IF_POLICY_EXISTS, false);
diff --git a/src/com/android/settings/widget/HighlightableTopLevelPreferenceAdapter.java b/src/com/android/settings/widget/HighlightableTopLevelPreferenceAdapter.java
index 9ddec5c..15e83de 100644
--- a/src/com/android/settings/widget/HighlightableTopLevelPreferenceAdapter.java
+++ b/src/com/android/settings/widget/HighlightableTopLevelPreferenceAdapter.java
@@ -17,6 +17,7 @@
 package com.android.settings.widget;
 
 import android.content.Context;
+import android.graphics.Rect;
 import android.graphics.drawable.Drawable;
 import android.text.TextUtils;
 import android.util.Log;
@@ -212,6 +213,14 @@
         // Scroll to the top to reset the position.
         mRecyclerView.nestedScrollBy(0, -mRecyclerView.getHeight());
 
+        // get the visible area of the recycler view
+        Rect rvRect = new Rect();
+        mRecyclerView.getGlobalVisibleRect(rvRect);
+        if (Flags.homepageRevamp() && view.getBottom() <= rvRect.height()) {
+            // the request position already fully visible in the visible area
+            return;
+        }
+
         final int scrollY = view.getTop();
         if (scrollY > 0) {
             mRecyclerView.nestedScrollBy(0, scrollY);
diff --git a/src/com/android/settings/wifi/WifiConfigController2.java b/src/com/android/settings/wifi/WifiConfigController2.java
index 70e08eb..1ea0103 100644
--- a/src/com/android/settings/wifi/WifiConfigController2.java
+++ b/src/com/android/settings/wifi/WifiConfigController2.java
@@ -344,7 +344,7 @@
 
                 if (mPrivacySettingsSpinner != null) {
                     final int prefMacValue = WifiPrivacyPreferenceController2
-                            .translateMacRandomizedValueToPrefValue(config.macRandomizationSetting);
+                            .translateWifiEntryPrivacyToPrefValue(mWifiEntry.getPrivacy());
                     mPrivacySettingsSpinner.setSelection(prefMacValue);
                 }
 
@@ -863,7 +863,7 @@
 
         if (mPrivacySettingsSpinner != null) {
             config.macRandomizationSetting = WifiPrivacyPreferenceController2
-                    .translatePrefValueToMacRandomizedValue(mPrivacySettingsSpinner
+                    .translatePrefValueToWifiConfigSetting(mPrivacySettingsSpinner
                             .getSelectedItemPosition());
         }
 
diff --git a/src/com/android/settings/wifi/details2/WifiPrivacyPreferenceController2.java b/src/com/android/settings/wifi/details2/WifiPrivacyPreferenceController2.java
index 5d393e5..0c67c04 100644
--- a/src/com/android/settings/wifi/details2/WifiPrivacyPreferenceController2.java
+++ b/src/com/android/settings/wifi/details2/WifiPrivacyPreferenceController2.java
@@ -17,6 +17,7 @@
 package com.android.settings.wifi.details2;
 
 import android.content.Context;
+import android.net.wifi.WifiConfiguration;
 import android.net.wifi.WifiManager;
 
 import androidx.annotation.NonNull;
@@ -98,30 +99,30 @@
     private static final int PREF_RANDOMIZATION_NONE = 1;
 
     /**
-     * Returns preference index value.
+     * Translates a WifiEntry.Privacy value to the matching preference index value.
      *
-     * @param macRandomized is mac randomized value
+     * @param privacy WifiEntry.Privacy value
      * @return index value of preference
      */
-    public static int translateMacRandomizedValueToPrefValue(int macRandomized) {
-        return (macRandomized == WifiEntry.PRIVACY_RANDOMIZED_MAC)
+    public static int translateWifiEntryPrivacyToPrefValue(@WifiEntry.Privacy int privacy) {
+        return (privacy == WifiEntry.PRIVACY_RANDOMIZED_MAC)
             ? PREF_RANDOMIZATION_PERSISTENT : PREF_RANDOMIZATION_NONE;
     }
 
     /**
-     * Returns mac randomized value.
+     * Translates the pref value to WifiConfiguration.MacRandomizationSetting value
      *
      * @param prefMacRandomized is preference index value
-     * @return mac randomized value
+     * @return WifiConfiguration.MacRandomizationSetting value
      */
-    public static int translatePrefValueToMacRandomizedValue(int prefMacRandomized) {
+    public static int translatePrefValueToWifiConfigSetting(int prefMacRandomized) {
         return (prefMacRandomized == PREF_RANDOMIZATION_PERSISTENT)
-            ? WifiEntry.PRIVACY_RANDOMIZED_MAC : WifiEntry.PRIVACY_DEVICE_MAC;
+            ? WifiConfiguration.RANDOMIZATION_AUTO : WifiConfiguration.RANDOMIZATION_NONE;
     }
 
     private void updateSummary(ListPreference preference, int macRandomized) {
         // Translates value here to set RANDOMIZATION_PERSISTENT as first item in UI for better UX.
-        final int prefMacRandomized = translateMacRandomizedValueToPrefValue(macRandomized);
+        final int prefMacRandomized = translateWifiEntryPrivacyToPrefValue(macRandomized);
         preference.setSummary(preference.getEntries()[prefMacRandomized]);
     }
 }
diff --git a/src/com/android/settings/wifi/dpp/AdbQrCode.java b/src/com/android/settings/wifi/dpp/AdbQrCode.java
index 2d830b2..8a578ea 100644
--- a/src/com/android/settings/wifi/dpp/AdbQrCode.java
+++ b/src/com/android/settings/wifi/dpp/AdbQrCode.java
@@ -16,11 +16,14 @@
 package com.android.settings.wifi.dpp;
 
 import android.content.Context;
-import android.net.wifi.UriParserResults;
 import android.net.wifi.WifiConfiguration;
 import android.text.TextUtils;
 
-import androidx.annotation.NonNull;
+import androidx.annotation.VisibleForTesting;
+
+import java.util.Arrays;
+import java.util.List;
+import java.util.regex.Pattern;
 
 /**
  * Extension of WifiQrCode to support ADB QR code format.
@@ -28,34 +31,74 @@
  *
  * WIFI:T:ADB;S:myname;P:mypassword;;
  */
-public class AdbQrCode extends WifiQrCode {
+public class AdbQrCode {
     static final String SECURITY_ADB = "ADB";
+    static final String SCHEME_DPP = "DPP";
+    static final String SCHEME_ZXING_WIFI_NETWORK_CONFIG = "WIFI";
+    static final String PREFIX_DPP = "DPP:";
+    static final String PREFIX_ZXING_WIFI_NETWORK_CONFIG = "WIFI:";
 
-    private WifiConfiguration mAdbConfig;
+    static final String PREFIX_DPP_PUBLIC_KEY = "K:";
+    static final String PREFIX_DPP_INFORMATION = "I:";
+
+    static final String PREFIX_ZXING_SECURITY = "T:";
+    static final String PREFIX_ZXING_SSID = "S:";
+    static final String PREFIX_ZXING_PASSWORD = "P:";
+    static final String PREFIX_ZXING_HIDDEN_SSID = "H:";
+    static final String DELIMITER_QR_CODE = ";";
+    // Ignores password if security is SECURITY_NO_PASSWORD or absent
+    static final String SECURITY_NO_PASSWORD = "nopass"; //open network or OWE
+    static final String SECURITY_WEP = "WEP";
+    static final String SECURITY_WPA_PSK = "WPA";
+    static final String SECURITY_SAE = "SAE";
+    private String mQrCode;
+    /**
+     * SCHEME_DPP for standard Wi-Fi device provision protocol; SCHEME_ZXING_WIFI_NETWORK_CONFIG
+     * for ZXing reader library' Wi-Fi Network config format
+     */
+    private String mScheme;
+    // Data from parsed Wi-Fi DPP QR code
+    private String mPublicKey;
+    private String mInformation;
+    // Data from parsed ZXing reader library's Wi-Fi Network config format
+    private WifiNetworkConfig mAdbConfig;
 
     public AdbQrCode(String qrCode) throws IllegalArgumentException {
-        super(qrCode);
+        if (TextUtils.isEmpty(qrCode)) {
+            throw new IllegalArgumentException("Empty QR code");
+        }
+
+        mQrCode = qrCode;
+        if (qrCode.startsWith(PREFIX_DPP)) {
+            mScheme = SCHEME_DPP;
+            parseWifiDppQrCode(qrCode);
+        } else if (qrCode.startsWith(PREFIX_ZXING_WIFI_NETWORK_CONFIG)) {
+            mScheme = SCHEME_ZXING_WIFI_NETWORK_CONFIG;
+            parseZxingWifiQrCode(qrCode);
+        } else {
+            throw new IllegalArgumentException("Invalid scheme");
+        }
 
         // Only accept the zxing format.
-        if (getScheme() != UriParserResults.URI_SCHEME_ZXING_WIFI_NETWORK_CONFIG) {
+        if (!SCHEME_ZXING_WIFI_NETWORK_CONFIG.equals(getScheme())) {
             throw new IllegalArgumentException("DPP format not supported for ADB QR code");
         }
-        mAdbConfig = getWifiConfiguration();
+        mAdbConfig = getWifiNetworkConfig();
 
-        if (mAdbConfig == null) {
-            throw new IllegalArgumentException("Null config when parsing ADB QR code");
+        if (!SECURITY_ADB.equals(mAdbConfig.getSecurity())) {
+            throw new IllegalArgumentException("Invalid security type");
         }
-        if (TextUtils.isEmpty(mAdbConfig.SSID)) {
+
+        if (TextUtils.isEmpty(mAdbConfig.getSsid())) {
             throw new IllegalArgumentException("Empty service name");
         }
 
-        if (TextUtils.isEmpty(mAdbConfig.preSharedKey)) {
+        if (TextUtils.isEmpty(mAdbConfig.getPreSharedKey())) {
             throw new IllegalArgumentException("Empty password");
         }
     }
 
-    @NonNull
-    public WifiConfiguration getAdbNetworkConfig() {
+    public WifiNetworkConfig getAdbNetworkConfig() {
         return mAdbConfig;
     }
 
@@ -67,4 +110,117 @@
     public static void triggerVibrationForQrCodeRecognition(Context context) {
         WifiDppUtils.triggerVibrationForQrCodeRecognition(context);
     }
+
+    /** Parses Wi-Fi DPP QR code string */
+    private void parseWifiDppQrCode(String qrCode) throws IllegalArgumentException {
+        List<String> keyValueList = getKeyValueList(qrCode, PREFIX_DPP, DELIMITER_QR_CODE);
+        String publicKey = getValueOrNull(keyValueList, PREFIX_DPP_PUBLIC_KEY);
+        if (TextUtils.isEmpty(publicKey)) {
+            throw new IllegalArgumentException("Invalid format");
+        }
+        mPublicKey = publicKey;
+        mInformation = getValueOrNull(keyValueList, PREFIX_DPP_INFORMATION);
+    }
+
+    /** Parses ZXing reader library's Wi-Fi Network config format */
+    private void parseZxingWifiQrCode(String qrCode) throws IllegalArgumentException {
+        List<String> keyValueList = getKeyValueList(qrCode, PREFIX_ZXING_WIFI_NETWORK_CONFIG,
+                DELIMITER_QR_CODE);
+        String security = getValueOrNull(keyValueList, PREFIX_ZXING_SECURITY);
+        String ssid = getValueOrNull(keyValueList, PREFIX_ZXING_SSID);
+        String password = getValueOrNull(keyValueList, PREFIX_ZXING_PASSWORD);
+        String hiddenSsidString = getValueOrNull(keyValueList, PREFIX_ZXING_HIDDEN_SSID);
+        boolean hiddenSsid = "true".equalsIgnoreCase(hiddenSsidString);
+        //"\", ";", "," and ":" are escaped with a backslash "\", should remove at first
+        security = removeBackSlash(security);
+        ssid = removeBackSlash(ssid);
+        password = removeBackSlash(password);
+        mAdbConfig = WifiNetworkConfig.getValidConfigOrNull(security, ssid, password,
+                hiddenSsid, WifiConfiguration.INVALID_NETWORK_ID, /* isHotspot */ false);
+        if (mAdbConfig == null) {
+            throw new IllegalArgumentException("Invalid format");
+        }
+    }
+
+    /**
+     * Splits key/value pairs from qrCode
+     *
+     * @param qrCode the QR code raw string
+     * @param prefixQrCode the string before all key/value pairs in qrCode
+     * @param delimiter the string to split key/value pairs, can't contain a backslash
+     * @return a list contains string of key/value (e.g. K:key1)
+     */
+    private List<String> getKeyValueList(String qrCode, String prefixQrCode,
+                String delimiter) {
+        String keyValueString = qrCode.substring(prefixQrCode.length());
+        // Should not treat \delimiter as a delimiter
+        String regex = "(?<!\\\\)" + Pattern.quote(delimiter);
+        return Arrays.asList(keyValueString.split(regex));
+    }
+
+    private String getValueOrNull(List<String> keyValueList, String prefix) {
+        for (String keyValue : keyValueList) {
+            String strippedKeyValue = keyValue.stripLeading();
+            if (strippedKeyValue.startsWith(prefix)) {
+                return strippedKeyValue.substring(prefix.length());
+            }
+        }
+        return null;
+    }
+
+    @VisibleForTesting
+    String removeBackSlash(String input) {
+        if (input == null) {
+            return null;
+        }
+        StringBuilder sb = new StringBuilder();
+        boolean backSlash = false;
+        for (char ch : input.toCharArray()) {
+            if (ch != '\\') {
+                sb.append(ch);
+                backSlash = false;
+            } else {
+                if (backSlash) {
+                    sb.append(ch);
+                    backSlash = false;
+                    continue;
+                }
+                backSlash = true;
+            }
+        }
+        return sb.toString();
+    }
+
+    String getQrCode() {
+        return mQrCode;
+    }
+
+    /**
+     * Uses to check type of QR code
+     *
+     * SCHEME_DPP for standard Wi-Fi device provision protocol; SCHEME_ZXING_WIFI_NETWORK_CONFIG
+     * for ZXing reader library' Wi-Fi Network config format
+     */
+    public String getScheme() {
+        return mScheme;
+    }
+
+    /** Available when {@code getScheme()} returns SCHEME_DPP */
+    @VisibleForTesting
+    String getPublicKey() {
+        return mPublicKey;
+    }
+
+    /** May be available when {@code getScheme()} returns SCHEME_DPP */
+    public String getInformation() {
+        return mInformation;
+    }
+
+    /** Available when {@code getScheme()} returns SCHEME_ZXING_WIFI_NETWORK_CONFIG */
+    WifiNetworkConfig getWifiNetworkConfig() {
+        if (mAdbConfig == null) {
+            return null;
+        }
+        return new WifiNetworkConfig(mAdbConfig);
+    }
 }
diff --git a/src/com/android/settings/wifi/dpp/OWNERS b/src/com/android/settings/wifi/dpp/OWNERS
new file mode 100644
index 0000000..b61221e
--- /dev/null
+++ b/src/com/android/settings/wifi/dpp/OWNERS
@@ -0,0 +1,2 @@
+per-file AdbQrCode.java=set noparent
+per-file AdbQrCode.java=file:platform/packages/modules/adb:/OWNERS
diff --git a/src/com/android/settings/wifi/dpp/WifiDppQrCodeGeneratorFragment.java b/src/com/android/settings/wifi/dpp/WifiDppQrCodeGeneratorFragment.java
index 42a74dd..40cf24d 100644
--- a/src/com/android/settings/wifi/dpp/WifiDppQrCodeGeneratorFragment.java
+++ b/src/com/android/settings/wifi/dpp/WifiDppQrCodeGeneratorFragment.java
@@ -114,6 +114,7 @@
         super.onViewCreated(view, savedInstanceState);
 
         mQrCodeView = view.findViewById(R.id.qrcode_view);
+        mQrCodeView.setContentDescription(getString(R.string.qr_code_content_description));
 
         final WifiNetworkConfig wifiNetworkConfig = getWifiNetworkConfigFromHostActivity();
         if (wifiNetworkConfig.isHotspot()) {
diff --git a/tests/robotests/res/xml/modes_fake_settings.xml b/tests/robotests/res/xml/modes_fake_settings.xml
new file mode 100644
index 0000000..a5602dc
--- /dev/null
+++ b/tests/robotests/res/xml/modes_fake_settings.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2024 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.
+  -->
+
+<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+    <Preference android:key="pref_id" />
+    <Preference android:key="pref_name" />
+    <Preference android:key="pref_enabled" />
+</PreferenceScreen>
\ No newline at end of file
diff --git a/tests/robotests/src/com/android/settings/MainClearConfirmTest.java b/tests/robotests/src/com/android/settings/MainClearConfirmTest.java
index 6d85368..f7711c8 100644
--- a/tests/robotests/src/com/android/settings/MainClearConfirmTest.java
+++ b/tests/robotests/src/com/android/settings/MainClearConfirmTest.java
@@ -77,6 +77,7 @@
 
         when(mMockActivity.getSystemService(Context.DEVICE_POLICY_SERVICE))
                 .thenReturn(mDevicePolicyManager);
+        when(mPersistentDataBlockManager.isFactoryResetProtectionActive()).thenReturn(false);
     }
 
     @Test
@@ -113,6 +114,13 @@
     }
 
     @Test
+    public void shouldWipePersistentDataBlock_frpIsAlive_shouldReturnFalse() {
+        when(mPersistentDataBlockManager.isFactoryResetProtectionActive()).thenReturn(true);
+        assertThat(mMainClearConfirm.shouldWipePersistentDataBlock(mPersistentDataBlockManager))
+                .isFalse();
+    }
+
+    @Test
     public void shouldWipePersistentDataBlock_deviceIsStillBeingProvisioned_shouldReturnFalse() {
         doReturn(true).when(mMainClearConfirm).isDeviceStillBeingProvisioned();
 
diff --git a/tests/robotests/src/com/android/settings/UtilsTest.java b/tests/robotests/src/com/android/settings/UtilsTest.java
index b36e9d6..2aeb906 100644
--- a/tests/robotests/src/com/android/settings/UtilsTest.java
+++ b/tests/robotests/src/com/android/settings/UtilsTest.java
@@ -22,6 +22,7 @@
 
 import static com.android.settings.Utils.SETTINGS_PACKAGE_NAME;
 import static com.android.settings.password.ConfirmDeviceCredentialActivity.BIOMETRIC_PROMPT_AUTHENTICATORS;
+import static com.android.settings.password.ConfirmDeviceCredentialActivity.BIOMETRIC_PROMPT_HIDE_BACKGROUND;
 import static com.android.settings.password.ConfirmDeviceCredentialActivity.BIOMETRIC_PROMPT_NEGATIVE_BUTTON_TEXT;
 
 import static com.google.common.truth.Truth.assertThat;
@@ -581,7 +582,8 @@
 
         final int requestCode = 1;
         final ArgumentCaptor<Intent> intentArgumentCaptor = ArgumentCaptor.forClass(Intent.class);
-        Utils.launchBiometricPromptForMandatoryBiometrics(mFragment, requestCode, USER_ID);
+        Utils.launchBiometricPromptForMandatoryBiometrics(mFragment, requestCode, USER_ID,
+                false /* hideBackground */);
 
         verify(mFragment).startActivityForResult(intentArgumentCaptor.capture(), eq(requestCode));
 
@@ -593,6 +595,8 @@
         assertThat(intent.getExtra(KeyguardManager.EXTRA_DESCRIPTION)).isNotNull();
         assertThat(intent.getBooleanExtra(ChooseLockSettingsHelper.EXTRA_KEY_ALLOW_ANY_USER, false))
                 .isTrue();
+        assertThat(intent.getBooleanExtra(BIOMETRIC_PROMPT_HIDE_BACKGROUND, true))
+                .isFalse();
         assertThat(intent.getIntExtra(Intent.EXTRA_USER_ID, 0)).isEqualTo(USER_ID);
         assertThat(intent.getComponent().getPackageName()).isEqualTo(SETTINGS_PACKAGE_NAME);
         assertThat(intent.getComponent().getClassName()).isEqualTo(
diff --git a/tests/robotests/src/com/android/settings/accessibility/AccessibilityDialogUtilsTest.java b/tests/robotests/src/com/android/settings/accessibility/AccessibilityDialogUtilsTest.java
index ad53ad6..547d0b6 100644
--- a/tests/robotests/src/com/android/settings/accessibility/AccessibilityDialogUtilsTest.java
+++ b/tests/robotests/src/com/android/settings/accessibility/AccessibilityDialogUtilsTest.java
@@ -21,7 +21,6 @@
 import android.app.Dialog;
 import android.content.Context;
 
-import androidx.appcompat.app.AlertDialog;
 import androidx.test.core.app.ApplicationProvider;
 
 import org.junit.Before;
@@ -41,24 +40,6 @@
     }
 
     @Test
-    public void updateShortcutInDialog_correctDialogType_success() {
-        final AlertDialog dialog = AccessibilityDialogUtils.showEditShortcutDialog(
-                mContext, AccessibilityDialogUtils.DialogType.EDIT_SHORTCUT_GENERIC, "Title",
-                null);
-
-        assertThat(
-                AccessibilityDialogUtils.updateShortcutInDialog(mContext, dialog)).isTrue();
-    }
-
-    @Test
-    public void updateShortcutInDialog_useNotSupportedDialog_fail() {
-        final AlertDialog dialog = new AlertDialog.Builder(mContext).setTitle("Title").show();
-
-        assertThat(AccessibilityDialogUtils.updateShortcutInDialog(mContext,
-                dialog)).isFalse();
-    }
-
-    @Test
     public void showDialog_createCustomDialog_isShowing() {
         final Dialog dialog = AccessibilityDialogUtils.createCustomDialog(mContext,
                 "Title", /* customView= */ null, "positiveButton", /* positiveListener= */ null,
diff --git a/tests/robotests/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragmentTest.java b/tests/robotests/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragmentTest.java
index b74f38e..9d18c44 100644
--- a/tests/robotests/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragmentTest.java
+++ b/tests/robotests/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragmentTest.java
@@ -16,12 +16,10 @@
 
 package com.android.settings.accessibility;
 
-import static com.android.internal.accessibility.common.ShortcutConstants.UserShortcutType.DEFAULT;
 import static com.android.internal.accessibility.common.ShortcutConstants.UserShortcutType.HARDWARE;
 import static com.android.internal.accessibility.common.ShortcutConstants.UserShortcutType.QUICK_SETTINGS;
 import static com.android.internal.accessibility.common.ShortcutConstants.UserShortcutType.SOFTWARE;
 import static com.android.settings.accessibility.AccessibilityShortcutPreferenceFragment.KEY_SAVED_QS_TOOLTIP_RESHOW;
-import static com.android.settings.accessibility.AccessibilityShortcutPreferenceFragment.KEY_SAVED_USER_SHORTCUT_TYPE;
 import static com.android.settings.accessibility.AccessibilityUtil.QuickSettingsTooltipType;
 
 import static com.google.common.truth.Truth.assertThat;
@@ -37,7 +35,6 @@
 import android.app.Application;
 import android.content.ComponentName;
 import android.content.Context;
-import android.content.DialogInterface;
 import android.content.Intent;
 import android.icu.text.CaseMap;
 import android.os.Bundle;
@@ -52,7 +49,6 @@
 import android.widget.PopupWindow;
 
 import androidx.annotation.Nullable;
-import androidx.appcompat.app.AlertDialog;
 import androidx.fragment.app.FragmentActivity;
 import androidx.preference.PreferenceManager;
 import androidx.preference.PreferenceScreen;
@@ -160,71 +156,6 @@
     }
 
     @Test
-    public void setupEditShortcutDialog_shortcutPreferenceOff_checkboxIsEmptyValue() {
-        mContext.setTheme(androidx.appcompat.R.style.Theme_AppCompat);
-        final AlertDialog dialog = AccessibilityDialogUtils.showEditShortcutDialog(
-                mContext, AccessibilityDialogUtils.DialogType.EDIT_SHORTCUT_GENERIC,
-                PLACEHOLDER_DIALOG_TITLE,
-                this::callEmptyOnClicked);
-        final ShortcutPreference shortcutPreference = new ShortcutPreference(mContext, /* attrs= */
-                null);
-        mFragment.mShortcutPreference = shortcutPreference;
-
-        mFragment.mShortcutPreference.setChecked(false);
-        mFragment.setupEditShortcutDialog(dialog);
-
-        final int checkboxValue = mFragment.getShortcutTypeCheckBoxValue();
-        assertThat(checkboxValue).isEqualTo(DEFAULT);
-    }
-
-    @Test
-    public void setupEditShortcutDialog_shortcutPreferenceOn_checkboxIsSavedValue() {
-        mContext.setTheme(androidx.appcompat.R.style.Theme_AppCompat);
-        final AlertDialog dialog = AccessibilityDialogUtils.showEditShortcutDialog(
-                mContext, AccessibilityDialogUtils.DialogType.EDIT_SHORTCUT_GENERIC,
-                PLACEHOLDER_DIALOG_TITLE,
-                this::callEmptyOnClicked);
-        final ShortcutPreference shortcutPreference = new ShortcutPreference(mContext, /* attrs= */
-                null);
-        final PreferredShortcut hardwareShortcut = new PreferredShortcut(
-                PLACEHOLDER_COMPONENT_NAME.flattenToString(), HARDWARE);
-        mFragment.mShortcutPreference = shortcutPreference;
-
-        PreferredShortcuts.saveUserShortcutType(mContext, hardwareShortcut);
-        mFragment.mShortcutPreference.setChecked(true);
-        mFragment.setupEditShortcutDialog(dialog);
-
-        final int checkboxValue = mFragment.getShortcutTypeCheckBoxValue();
-        assertThat(checkboxValue).isEqualTo(HARDWARE);
-    }
-
-    @Test
-    @Config(shadows = ShadowFragment.class)
-    public void restoreValueFromSavedInstanceState_assignShortcutTypeToVariable() {
-        mContext.setTheme(androidx.appcompat.R.style.Theme_AppCompat);
-        final AlertDialog dialog = AccessibilityDialogUtils.showEditShortcutDialog(
-                mContext, AccessibilityDialogUtils.DialogType.EDIT_SHORTCUT_GENERIC,
-                PLACEHOLDER_DIALOG_TITLE,
-                this::callEmptyOnClicked);
-        final Bundle savedInstanceState = new Bundle();
-        final ShortcutPreference shortcutPreference = new ShortcutPreference(mContext, /* attrs= */
-                null);
-        mFragment.mShortcutPreference = shortcutPreference;
-
-        savedInstanceState.putInt(KEY_SAVED_USER_SHORTCUT_TYPE,
-                SOFTWARE | HARDWARE);
-        mFragment.onAttach(mContext);
-        mFragment.onCreate(savedInstanceState);
-        mFragment.setupEditShortcutDialog(dialog);
-        final int value = mFragment.getShortcutTypeCheckBoxValue();
-        mFragment.saveNonEmptyUserShortcutType(value);
-
-        final int expectedType = PreferredShortcuts.retrieveUserShortcutType(mContext,
-                mFragment.getComponentName().flattenToString());
-        assertThat(expectedType).isEqualTo(SOFTWARE | HARDWARE);
-    }
-
-    @Test
     @DisableFlags(Flags.FLAG_A11Y_QS_SHORTCUT)
     @Config(shadows = ShadowFragment.class)
     public void restoreValueFromSavedInstanceState_showTooltipView() {
@@ -268,8 +199,7 @@
     }
 
     @Test
-    @EnableFlags(com.android.settings.accessibility.Flags.FLAG_EDIT_SHORTCUTS_IN_FULL_SCREEN)
-    public void onSettingsClicked_editShortcutsFullScreenFlagOn_showFullScreenEditShortcutScreen() {
+    public void onSettingsClicked_showFullScreenEditShortcutScreen() {
         Activity activity = Robolectric.setupActivity(FragmentActivity.class);
         when(mFragment.getContext()).thenReturn(activity);
         Context context = mFragment.getContext();
@@ -311,8 +241,6 @@
         assertThat(summary).isEqualTo(expected);
     }
 
-    private void callEmptyOnClicked(DialogInterface dialog, int which) {}
-
     private void putStringIntoSettings(String key, String componentName) {
         Settings.Secure.putString(mContext.getContentResolver(), key, componentName);
     }
diff --git a/tests/robotests/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragmentTest.java b/tests/robotests/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragmentTest.java
index 5522361..008f542 100644
--- a/tests/robotests/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragmentTest.java
+++ b/tests/robotests/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragmentTest.java
@@ -299,21 +299,6 @@
     }
 
     @Test
-    @DisableFlags(
-            com.android.settings.accessibility.Flags.FLAG_EDIT_SHORTCUTS_IN_FULL_SCREEN)
-    public void clickShortcutSettingsPreference_warningNotRequired_dontShowWarning_showDialog()
-            throws Throwable {
-        setupServiceWarningRequired(false);
-        mFragment.mShortcutPreference = new ShortcutPreference(mContext, /* attrs= */null);
-
-        mFragment.onSettingsClicked(mFragment.mShortcutPreference);
-
-        assertThat(mFragment.mLastShownDialogId).isEqualTo(
-                AccessibilityDialogUtils.DialogEnums.EDIT_SHORTCUT);
-    }
-
-    @Test
-    @EnableFlags(com.android.settings.accessibility.Flags.FLAG_EDIT_SHORTCUTS_IN_FULL_SCREEN)
     public void clickShortcutSettingsPreference_warningNotRequired_dontShowWarning_launchActivity()
             throws Throwable {
         setupServiceWarningRequired(false);
diff --git a/tests/robotests/src/com/android/settings/accessibility/ToggleFeaturePreferenceFragmentTest.java b/tests/robotests/src/com/android/settings/accessibility/ToggleFeaturePreferenceFragmentTest.java
index 04ff4fe..71855e0 100644
--- a/tests/robotests/src/com/android/settings/accessibility/ToggleFeaturePreferenceFragmentTest.java
+++ b/tests/robotests/src/com/android/settings/accessibility/ToggleFeaturePreferenceFragmentTest.java
@@ -16,11 +16,9 @@
 
 package com.android.settings.accessibility;
 
-import static com.android.internal.accessibility.common.ShortcutConstants.UserShortcutType.DEFAULT;
 import static com.android.internal.accessibility.common.ShortcutConstants.UserShortcutType.HARDWARE;
 import static com.android.internal.accessibility.common.ShortcutConstants.UserShortcutType.QUICK_SETTINGS;
 import static com.android.internal.accessibility.common.ShortcutConstants.UserShortcutType.SOFTWARE;
-import static com.android.settings.accessibility.ToggleFeaturePreferenceFragment.KEY_SAVED_USER_SHORTCUT_TYPE;
 
 import static com.google.common.truth.Truth.assertThat;
 
@@ -36,7 +34,6 @@
 import android.content.ComponentName;
 import android.content.ContentResolver;
 import android.content.Context;
-import android.content.DialogInterface;
 import android.content.Intent;
 import android.content.pm.PackageManager;
 import android.icu.text.CaseMap;
@@ -48,10 +45,8 @@
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
-import android.widget.CheckBox;
 import android.widget.PopupWindow;
 
-import androidx.appcompat.app.AlertDialog;
 import androidx.fragment.app.FragmentActivity;
 import androidx.preference.Preference;
 import androidx.preference.PreferenceManager;
@@ -59,7 +54,6 @@
 import androidx.test.core.app.ApplicationProvider;
 
 import com.android.settings.R;
-import com.android.settings.accessibility.AccessibilityDialogUtils.DialogType;
 import com.android.settings.accessibility.AccessibilityUtil.QuickSettingsTooltipType;
 import com.android.settings.flags.Flags;
 import com.android.settings.testutils.shadow.ShadowFragment;
@@ -79,7 +73,6 @@
 import org.robolectric.annotation.Config;
 import org.robolectric.shadow.api.Shadow;
 import org.robolectric.shadows.ShadowApplication;
-import org.robolectric.shadows.ShadowLooper;
 
 import java.util.Locale;
 
@@ -240,89 +233,6 @@
     }
 
     @Test
-    public void dialogCheckboxClicked_hardwareType_skipTimeoutRestriction() {
-        final ShortcutPreference shortcutPreference = new ShortcutPreference(mContext, /* attrs= */
-                null);
-        mFragment.mComponentName = PLACEHOLDER_COMPONENT_NAME;
-        mFragment.mShortcutPreference = shortcutPreference;
-        final AlertDialog dialog = AccessibilityDialogUtils.showEditShortcutDialog(
-                mContext, DialogType.EDIT_SHORTCUT_GENERIC, PLACEHOLDER_DIALOG_TITLE,
-                mFragment::callOnAlertDialogCheckboxClicked);
-        mFragment.setupEditShortcutDialog(dialog);
-
-        final View dialogHardwareView = dialog.findViewById(R.id.hardware_shortcut);
-        final CheckBox hardwareTypeCheckBox = dialogHardwareView.findViewById(R.id.checkbox);
-        hardwareTypeCheckBox.setChecked(true);
-        dialog.getButton(DialogInterface.BUTTON_POSITIVE).callOnClick();
-        ShadowLooper.idleMainLooper();
-        final boolean skipTimeoutRestriction = Settings.Secure.getInt(mContext.getContentResolver(),
-                Settings.Secure.SKIP_ACCESSIBILITY_SHORTCUT_DIALOG_TIMEOUT_RESTRICTION, 0) != 0;
-
-        assertThat(skipTimeoutRestriction).isTrue();
-    }
-
-    @Test
-    public void setupEditShortcutDialog_shortcutPreferenceOff_checkboxIsEmptyValue() {
-        final AlertDialog dialog = AccessibilityDialogUtils.showEditShortcutDialog(
-                mContext, DialogType.EDIT_SHORTCUT_GENERIC, PLACEHOLDER_DIALOG_TITLE,
-                this::callEmptyOnClicked);
-        final ShortcutPreference shortcutPreference = new ShortcutPreference(mContext, /* attrs= */
-                null);
-        mFragment.mComponentName = PLACEHOLDER_COMPONENT_NAME;
-        mFragment.mShortcutPreference = shortcutPreference;
-
-        mFragment.mShortcutPreference.setChecked(false);
-        mFragment.setupEditShortcutDialog(dialog);
-
-        final int checkboxValue = mFragment.getShortcutTypeCheckBoxValue();
-        assertThat(checkboxValue).isEqualTo(DEFAULT);
-    }
-
-    @Test
-    public void setupEditShortcutDialog_shortcutPreferenceOn_checkboxIsSavedValue() {
-        final AlertDialog dialog = AccessibilityDialogUtils.showEditShortcutDialog(
-                mContext, DialogType.EDIT_SHORTCUT_GENERIC, PLACEHOLDER_DIALOG_TITLE,
-                this::callEmptyOnClicked);
-        final ShortcutPreference shortcutPreference = new ShortcutPreference(mContext, /* attrs= */
-                null);
-        final PreferredShortcut hardwareShortcut = new PreferredShortcut(
-                PLACEHOLDER_COMPONENT_NAME.flattenToString(), HARDWARE);
-        mFragment.mComponentName = PLACEHOLDER_COMPONENT_NAME;
-        mFragment.mShortcutPreference = shortcutPreference;
-
-        PreferredShortcuts.saveUserShortcutType(mContext, hardwareShortcut);
-        mFragment.mShortcutPreference.setChecked(true);
-        mFragment.setupEditShortcutDialog(dialog);
-
-        final int checkboxValue = mFragment.getShortcutTypeCheckBoxValue();
-        assertThat(checkboxValue).isEqualTo(HARDWARE);
-    }
-
-    @Test
-    @Config(shadows = ShadowFragment.class)
-    public void restoreValueFromSavedInstanceState_assignShortcutTypeToVariable() {
-        final AlertDialog dialog = AccessibilityDialogUtils.showEditShortcutDialog(
-                mContext, DialogType.EDIT_SHORTCUT_GENERIC, PLACEHOLDER_DIALOG_TITLE,
-                this::callEmptyOnClicked);
-        final Bundle savedInstanceState = new Bundle();
-        final ShortcutPreference shortcutPreference = new ShortcutPreference(mContext, /* attrs= */
-                null);
-        mFragment.mComponentName = PLACEHOLDER_COMPONENT_NAME;
-        mFragment.mShortcutPreference = shortcutPreference;
-
-        savedInstanceState.putInt(KEY_SAVED_USER_SHORTCUT_TYPE,
-                SOFTWARE | HARDWARE);
-        mFragment.onCreate(savedInstanceState);
-        mFragment.setupEditShortcutDialog(dialog);
-        final int value = mFragment.getShortcutTypeCheckBoxValue();
-        mFragment.saveNonEmptyUserShortcutType(value);
-
-        final int expectedType = PreferredShortcuts.retrieveUserShortcutType(mContext,
-                mFragment.mComponentName.flattenToString());
-        assertThat(expectedType).isEqualTo(SOFTWARE | HARDWARE);
-    }
-
-    @Test
     @Config(shadows = ShadowFragment.class)
     public void onPreferenceToggledOnDisabledService_notShowTooltipView() {
         mFragment.onPreferenceToggled(
@@ -505,9 +415,6 @@
             PreferredShortcut shortcut) {
         PreferredShortcuts.saveUserShortcutType(context, shortcut);
     }
-
-    private void callEmptyOnClicked(DialogInterface dialog, int which) {}
-
     private static PopupWindow getLatestPopupWindow() {
         final ShadowApplication shadowApplication =
                 Shadow.extract(ApplicationProvider.getApplicationContext());
diff --git a/tests/robotests/src/com/android/settings/accessibility/ToggleScreenMagnificationPreferenceFragmentTest.java b/tests/robotests/src/com/android/settings/accessibility/ToggleScreenMagnificationPreferenceFragmentTest.java
index ea6504a..22bb266 100644
--- a/tests/robotests/src/com/android/settings/accessibility/ToggleScreenMagnificationPreferenceFragmentTest.java
+++ b/tests/robotests/src/com/android/settings/accessibility/ToggleScreenMagnificationPreferenceFragmentTest.java
@@ -16,7 +16,6 @@
 
 package com.android.settings.accessibility;
 
-import static com.android.internal.accessibility.common.ShortcutConstants.UserShortcutType.DEFAULT;
 import static com.android.internal.accessibility.common.ShortcutConstants.UserShortcutType.HARDWARE;
 import static com.android.internal.accessibility.common.ShortcutConstants.UserShortcutType.QUICK_SETTINGS;
 import static com.android.internal.accessibility.common.ShortcutConstants.UserShortcutType.SOFTWARE;
@@ -25,7 +24,6 @@
 import static com.android.settings.accessibility.AccessibilityUtil.State.OFF;
 import static com.android.settings.accessibility.AccessibilityUtil.State.ON;
 import static com.android.settings.accessibility.MagnificationCapabilities.MagnificationMode;
-import static com.android.settings.accessibility.ToggleFeaturePreferenceFragment.KEY_SAVED_USER_SHORTCUT_TYPE;
 
 import static com.google.common.truth.Truth.assertThat;
 
@@ -42,7 +40,6 @@
 import android.app.settings.SettingsEnums;
 import android.content.ComponentName;
 import android.content.Context;
-import android.content.DialogInterface;
 import android.content.pm.PackageManager;
 import android.content.res.Resources;
 import android.database.ContentObserver;
@@ -57,7 +54,6 @@
 import android.provider.Settings;
 import android.view.accessibility.AccessibilityManager;
 
-import androidx.appcompat.app.AlertDialog;
 import androidx.preference.Preference;
 import androidx.preference.TwoStatePreference;
 import androidx.test.core.app.ApplicationProvider;
@@ -66,7 +62,6 @@
 import com.android.settings.DialogCreatable;
 import com.android.settings.R;
 import com.android.settings.SettingsActivity;
-import com.android.settings.accessibility.AccessibilityDialogUtils.DialogType;
 import com.android.settings.testutils.AccessibilityTestUtils;
 import com.android.settings.testutils.shadow.ShadowDeviceConfig;
 import com.android.settings.testutils.shadow.ShadowStorageManager;
@@ -736,105 +731,6 @@
     }
 
     @Test
-    public void setupMagnificationEditShortcutDialog_shortcutPreferenceOff_checkboxIsEmptyValue() {
-        ToggleScreenMagnificationPreferenceFragment fragment =
-                mFragController.create(R.id.main_content, /* bundle= */
-                        null).start().resume().get();
-        fragment.mShortcutPreference = new ShortcutPreference(mContext, /* attrs= */ null);
-
-        fragment.mShortcutPreference.setChecked(false);
-        fragment.setupMagnificationEditShortcutDialog(
-                createEditShortcutDialog(fragment.getActivity()));
-
-        final int checkboxValue = fragment.getShortcutTypeCheckBoxValue();
-        assertThat(checkboxValue).isEqualTo(DEFAULT);
-    }
-
-    @Test
-    public void setupMagnificationEditShortcutDialog_shortcutPreferenceOn_checkboxIsSavedValue() {
-        ToggleScreenMagnificationPreferenceFragment fragment =
-                mFragController.create(R.id.main_content, /* bundle= */
-                        null).start().resume().get();
-        final ShortcutPreference shortcutPreference = new ShortcutPreference(mContext, /* attrs= */
-                null);
-        final PreferredShortcut tripletapShortcut = new PreferredShortcut(
-                MAGNIFICATION_CONTROLLER_NAME, TRIPLETAP);
-        fragment.mShortcutPreference = shortcutPreference;
-
-        PreferredShortcuts.saveUserShortcutType(mContext, tripletapShortcut);
-        fragment.mShortcutPreference.setChecked(true);
-        fragment.setupMagnificationEditShortcutDialog(
-                createEditShortcutDialog(fragment.getActivity()));
-
-        final int checkboxValue = fragment.getShortcutTypeCheckBoxValue();
-        assertThat(checkboxValue).isEqualTo(TRIPLETAP);
-    }
-
-    @Test
-    @EnableFlags(Flags.FLAG_ENABLE_MAGNIFICATION_MULTIPLE_FINGER_MULTIPLE_TAP_GESTURE)
-    public void setupMagnificationEditShortcutDialog_twoFingerTripleTapOn_checkboxIsSavedValue() {
-        ToggleScreenMagnificationPreferenceFragment fragment =
-                mFragController.create(R.id.main_content, /* bundle= */
-                        null).start().resume().get();
-        final ShortcutPreference shortcutPreference = new ShortcutPreference(mContext, /* attrs= */
-                null);
-        final PreferredShortcut twoFingerTripleTapShortcut = new PreferredShortcut(
-                MAGNIFICATION_CONTROLLER_NAME, TWOFINGER_DOUBLETAP);
-        fragment.mShortcutPreference = shortcutPreference;
-
-        PreferredShortcuts.saveUserShortcutType(mContext, twoFingerTripleTapShortcut);
-        fragment.mShortcutPreference.setChecked(true);
-        fragment.setupMagnificationEditShortcutDialog(
-                createEditShortcutDialog(fragment.getActivity()));
-
-        final int checkboxValue = fragment.getShortcutTypeCheckBoxValue();
-        assertThat(checkboxValue).isEqualTo(TWOFINGER_DOUBLETAP);
-    }
-
-    @Test
-    public void restoreValueFromSavedInstanceState_assignToVariable() {
-        final Bundle fragmentState = createFragmentSavedInstanceState(
-                HARDWARE | TRIPLETAP);
-        ToggleScreenMagnificationPreferenceFragment fragment = mFragController.get();
-        // Had to use reflection to pass the savedInstanceState when launching the fragment
-        ReflectionHelpers.setField(fragment, "mSavedFragmentState", fragmentState);
-
-        FragmentController.of(fragment, SettingsActivity.class).create(
-                R.id.main_content, /* bundle= */ null).start().resume().get();
-        fragment.setupMagnificationEditShortcutDialog(
-                createEditShortcutDialog(fragment.getActivity()));
-        final int value = fragment.getShortcutTypeCheckBoxValue();
-        fragment.saveNonEmptyUserShortcutType(value);
-
-        final int expectedType = PreferredShortcuts.retrieveUserShortcutType(mContext,
-                MAGNIFICATION_CONTROLLER_NAME);
-        assertThat(value).isEqualTo(6);
-        assertThat(expectedType).isEqualTo(HARDWARE | TRIPLETAP);
-    }
-
-    @Test
-    @EnableFlags(Flags.FLAG_ENABLE_MAGNIFICATION_MULTIPLE_FINGER_MULTIPLE_TAP_GESTURE)
-    public void restoreValueFromSavedInstanceState_twoFingerTripleTap_assignToVariable() {
-        final Bundle fragmentState =
-                createFragmentSavedInstanceState(TWOFINGER_DOUBLETAP);
-        ToggleScreenMagnificationPreferenceFragment fragment = mFragController.get();
-        // Had to use reflection to pass the savedInstanceState when launching the fragment
-        ReflectionHelpers.setField(fragment, "mSavedFragmentState", fragmentState);
-
-        FragmentController.of(fragment, SettingsActivity.class).create(
-                R.id.main_content, /* bundle= */ null).start().resume().get();
-        fragment.setupMagnificationEditShortcutDialog(
-                createEditShortcutDialog(fragment.getActivity()));
-        final int value = fragment.getShortcutTypeCheckBoxValue();
-        fragment.saveNonEmptyUserShortcutType(value);
-
-        final int expectedType = PreferredShortcuts.retrieveUserShortcutType(mContext,
-                MAGNIFICATION_CONTROLLER_NAME);
-        assertThat(value).isEqualTo(TWOFINGER_DOUBLETAP);
-        assertThat(expectedType).isEqualTo(TWOFINGER_DOUBLETAP);
-    }
-
-    @Test
     public void onCreateView_magnificationAreaNotSupported_settingsPreferenceIsNull() {
         setWindowMagnificationSupported(
                 /* magnificationAreaSupported= */ false,
@@ -1167,9 +1063,6 @@
                 == ON;
     }
 
-    private void callEmptyOnClicked(DialogInterface dialog, int which) {
-    }
-
     private void setWindowMagnificationSupported(boolean magnificationAreaSupported,
             boolean windowMagnificationSupported) {
         when(mSpyResources.getBoolean(
@@ -1179,24 +1072,6 @@
                 windowMagnificationSupported);
     }
 
-    private AlertDialog createEditShortcutDialog(Context context) {
-        context.setTheme(androidx.appcompat.R.style.Theme_AppCompat);
-        return AccessibilityDialogUtils.showEditShortcutDialog(
-                context,
-                DialogType.EDIT_SHORTCUT_MAGNIFICATION, PLACEHOLDER_DIALOG_TITLE,
-                this::callEmptyOnClicked);
-    }
-
-    private Bundle createFragmentSavedInstanceState(int userShortcutType) {
-        final Bundle savedInstanceState = new Bundle();
-        savedInstanceState.putInt(KEY_SAVED_USER_SHORTCUT_TYPE, userShortcutType);
-        final Bundle fragmentState = new Bundle();
-        fragmentState.putBundle(
-                /* FragmentStateManager.SAVED_INSTANCE_STATE_KEY */ "savedInstanceState",
-                savedInstanceState);
-        return fragmentState;
-    }
-
     /**
      * A test fragment that provides a way to change the context
      */
diff --git a/tests/robotests/src/com/android/settings/accessibility/shortcuts/ShortcutOptionPreferenceTest.java b/tests/robotests/src/com/android/settings/accessibility/shortcuts/ShortcutOptionPreferenceTest.java
index 954c72d..17d416f 100644
--- a/tests/robotests/src/com/android/settings/accessibility/shortcuts/ShortcutOptionPreferenceTest.java
+++ b/tests/robotests/src/com/android/settings/accessibility/shortcuts/ShortcutOptionPreferenceTest.java
@@ -62,7 +62,7 @@
     @Test
     public void bindViewHolder_imageResIdSet_shouldShowImageView() {
         mShortcutOptionPreference.setIntroImageResId(
-                R.drawable.accessibility_shortcut_type_hardware);
+                R.drawable.accessibility_shortcut_type_volume_keys);
 
         mShortcutOptionPreference.onBindViewHolder(mViewHolder);
 
diff --git a/tests/robotests/src/com/android/settings/development/DesktopModeSecondaryDisplayPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/development/DesktopModeSecondaryDisplayPreferenceControllerTest.java
index 5931004..3691d12 100644
--- a/tests/robotests/src/com/android/settings/development/DesktopModeSecondaryDisplayPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/development/DesktopModeSecondaryDisplayPreferenceControllerTest.java
@@ -16,6 +16,7 @@
 
 package com.android.settings.development;
 
+import static android.provider.Settings.Global.DEVELOPMENT_ENABLE_FREEFORM_WINDOWS_SUPPORT;
 import static android.provider.Settings.Global.DEVELOPMENT_FORCE_DESKTOP_MODE_ON_EXTERNAL_DISPLAYS;
 
 import static com.android.settings.development.DesktopModeSecondaryDisplayPreferenceController.SETTING_VALUE_OFF;
@@ -55,6 +56,7 @@
 
     private static final String ENG_BUILD_TYPE = "eng";
     private static final String USER_BUILD_TYPE = "user";
+    private static final int SETTING_VALUE_INVALID = -1;
 
     @Mock
     private SwitchPreference mPreference;
@@ -102,21 +104,41 @@
 
     @Test
     public void onPreferenceChange_switchEnabled_enablesDesktopModeOnSecondaryDisplay() {
-        mController.onPreferenceChange(mPreference, true /* new value */);
+        mController.onPreferenceChange(mPreference, /* newValue= */ true);
 
         final int mode = Settings.Global.getInt(mContext.getContentResolver(),
-                DEVELOPMENT_FORCE_DESKTOP_MODE_ON_EXTERNAL_DISPLAYS, -1 /* default */);
+                DEVELOPMENT_FORCE_DESKTOP_MODE_ON_EXTERNAL_DISPLAYS,
+                /* def= */ SETTING_VALUE_INVALID);
         assertThat(mode).isEqualTo(SETTING_VALUE_ON);
 
         verify(mTransaction).add(any(RebootConfirmationDialogFragment.class), any());
     }
 
     @Test
-    public void onPreferenceChange_switchDisabled_disablesDesktopModeOnSecondaryDisplay() {
-        mController.onPreferenceChange(mPreference, false /* new value */);
+    public void onPreferenceChange_switchEnabled_enablesFreeformSupport() {
+        mController.onPreferenceChange(mPreference, /* newValue= */ true);
 
         final int mode = Settings.Global.getInt(mContext.getContentResolver(),
-                DEVELOPMENT_FORCE_DESKTOP_MODE_ON_EXTERNAL_DISPLAYS, -1 /* default */);
+                DEVELOPMENT_ENABLE_FREEFORM_WINDOWS_SUPPORT, /* def= */ SETTING_VALUE_INVALID);
+        assertThat(mode).isEqualTo(SETTING_VALUE_ON);
+    }
+
+    @Test
+    public void onPreferenceChange_switchDisabled_disablesDesktopModeOnSecondaryDisplay() {
+        mController.onPreferenceChange(mPreference, /* newValue= */ false);
+
+        final int mode = Settings.Global.getInt(mContext.getContentResolver(),
+                DEVELOPMENT_FORCE_DESKTOP_MODE_ON_EXTERNAL_DISPLAYS,
+                /* def= */ SETTING_VALUE_INVALID);
+        assertThat(mode).isEqualTo(SETTING_VALUE_OFF);
+    }
+
+    @Test
+    public void onPreferenceChange_switchDisabled_disablesFreeformSupport() {
+        mController.onPreferenceChange(mPreference, /* newValue= */ false);
+
+        final int mode = Settings.Global.getInt(mContext.getContentResolver(),
+                DEVELOPMENT_ENABLE_FREEFORM_WINDOWS_SUPPORT, /* def= */ SETTING_VALUE_INVALID);
         assertThat(mode).isEqualTo(SETTING_VALUE_OFF);
     }
 
@@ -145,7 +167,8 @@
         mController.onDeveloperOptionsSwitchDisabled();
 
         final int mode = Settings.Global.getInt(mContext.getContentResolver(),
-                DEVELOPMENT_FORCE_DESKTOP_MODE_ON_EXTERNAL_DISPLAYS, -1 /* default */);
+                DEVELOPMENT_FORCE_DESKTOP_MODE_ON_EXTERNAL_DISPLAYS,
+                /* def= */ SETTING_VALUE_INVALID);
         assertThat(mode).isEqualTo(SETTING_VALUE_OFF);
         verify(mPreference).setEnabled(false);
     }
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/BatteryInfoTest.java b/tests/robotests/src/com/android/settings/fuelgauge/BatteryInfoTest.java
index 851dc79..8d6cc08 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/BatteryInfoTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/BatteryInfoTest.java
@@ -75,7 +75,8 @@
     private static final String STATUS_CHARGING_TIME = "50% - 0 min left until full";
     private static final String STATUS_NOT_CHARGING = "Not charging";
     private static final String STATUS_CHARGING_FUTURE_BYPASS = "50% - Charging";
-    private static final String STATUS_CHARGING_PAUSED = "50% - Charging optimized";
+    private static final String STATUS_CHARGING_PAUSED =
+            "50% - Charging on hold to protect battery";
     private static final long REMAINING_TIME_NULL = -1;
     private static final long REMAINING_TIME = 2;
     // Strings are defined in frameworks/base/packages/SettingsLib/res/values/strings.xml
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/BatteryOptimizeUtilsTest.java b/tests/robotests/src/com/android/settings/fuelgauge/BatteryOptimizeUtilsTest.java
index 84f549e..72b49e2 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/BatteryOptimizeUtilsTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/BatteryOptimizeUtilsTest.java
@@ -164,7 +164,7 @@
         TimeUnit.SECONDS.sleep(1);
 
         verifySetAppOptimizationMode(AppOpsManager.MODE_IGNORED, /* allowListed */ false);
-        verify(mObserver).onChanged(DataChangeReason.UPDATE);
+        verify(mObserver).onChanged(mBatterySettingsStorage, DataChangeReason.UPDATE);
     }
 
     @Test
@@ -178,7 +178,7 @@
         TimeUnit.SECONDS.sleep(1);
 
         verifySetAppOptimizationMode(AppOpsManager.MODE_ALLOWED, /* allowListed */ true);
-        verify(mObserver).onChanged(DataChangeReason.UPDATE);
+        verify(mObserver).onChanged(mBatterySettingsStorage, DataChangeReason.UPDATE);
     }
 
     @Test
@@ -192,7 +192,7 @@
         TimeUnit.SECONDS.sleep(1);
 
         verifySetAppOptimizationMode(AppOpsManager.MODE_ALLOWED, /* allowListed */ false);
-        verify(mObserver).onChanged(DataChangeReason.UPDATE);
+        verify(mObserver).onChanged(mBatterySettingsStorage, DataChangeReason.UPDATE);
     }
 
     @Test
@@ -301,7 +301,7 @@
         inOrder.verify(mMockBackend).isAllowlisted(PACKAGE_NAME, UID);
         inOrder.verify(mMockBackend).isSysAllowlisted(PACKAGE_NAME);
         verifyNoMoreInteractions(mMockBackend);
-        verify(mObserver).onChanged(DataChangeReason.DELETE);
+        verify(mObserver).onChanged(mBatterySettingsStorage, DataChangeReason.DELETE);
     }
 
     @Test
@@ -312,7 +312,7 @@
                 /* isSystemOrDefaultApp */ false);
 
         verifySetAppOptimizationMode(AppOpsManager.MODE_ALLOWED, /* allowListed */ false);
-        verify(mObserver).onChanged(DataChangeReason.DELETE);
+        verify(mObserver).onChanged(mBatterySettingsStorage, DataChangeReason.DELETE);
     }
 
     @Test
@@ -323,7 +323,7 @@
                 /* isSystemOrDefaultApp */ false);
 
         verifySetAppOptimizationMode(AppOpsManager.MODE_ALLOWED, /* allowListed */ false);
-        verify(mObserver).onChanged(DataChangeReason.DELETE);
+        verify(mObserver).onChanged(mBatterySettingsStorage, DataChangeReason.DELETE);
     }
 
     private void runTestForResetWithMode(
diff --git a/tests/robotests/src/com/android/settings/notification/modes/CharSequenceTruth.java b/tests/robotests/src/com/android/settings/notification/modes/CharSequenceTruth.java
new file mode 100644
index 0000000..94b932f
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/notification/modes/CharSequenceTruth.java
@@ -0,0 +1,35 @@
+/*
+ * Copyright (C) 2024 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.
+ */
+
+package com.android.settings.notification.modes;
+
+import androidx.annotation.Nullable;
+
+import com.google.common.truth.StringSubject;
+import com.google.common.truth.Truth;
+
+class CharSequenceTruth {
+    /**
+     * Shortcut version of {@link Truth#assertThat(String)} suitable for {@link CharSequence}.
+     * {@link CharSequence} doesn't necessarily provide a good {@code equals()} implementation;
+     * however we don't care about formatting in most cases, and we want to assert on the resulting
+     * string (without needing to worry that {@code assertThat(x.getText().toString())} can
+     * throw if the text is null).
+     */
+    static StringSubject assertThat(@Nullable CharSequence actual) {
+        return Truth.assertThat((String) (actual != null ? actual.toString() : null));
+    }
+}
diff --git a/tests/robotests/src/com/android/settings/notification/modes/CircularIconsPreferenceTest.java b/tests/robotests/src/com/android/settings/notification/modes/CircularIconsPreferenceTest.java
index ce23fc4..d145f25 100644
--- a/tests/robotests/src/com/android/settings/notification/modes/CircularIconsPreferenceTest.java
+++ b/tests/robotests/src/com/android/settings/notification/modes/CircularIconsPreferenceTest.java
@@ -27,9 +27,14 @@
 import android.content.Context;
 import android.content.res.Resources;
 import android.graphics.drawable.ColorDrawable;
+import android.graphics.drawable.Drawable;
 import android.view.LayoutInflater;
 import android.view.View;
+import android.view.ViewGroup;
+import android.widget.ImageView;
+import android.widget.TextView;
 
+import androidx.annotation.Nullable;
 import androidx.preference.PreferenceViewHolder;
 
 import com.android.settings.R;
@@ -46,6 +51,8 @@
 import org.robolectric.RobolectricTestRunner;
 import org.robolectric.RuntimeEnvironment;
 
+import java.util.ArrayList;
+import java.util.List;
 import java.util.stream.IntStream;
 
 @RunWith(RobolectricTestRunner.class)
@@ -55,7 +62,8 @@
 
     private Context mContext;
     private CircularIconsPreference mPreference;
-    private View mIconContainer;
+    private PreferenceViewHolder mViewHolder;
+    private ViewGroup mContainer;
 
     private int mOneIconWidth;
 
@@ -64,7 +72,7 @@
         MockitoAnnotations.initMocks(this);
         mContext = RuntimeEnvironment.application;
         CircularIconSet.sExecutorService = MoreExecutors.newDirectExecutorService();
-        mPreference = new CircularIconsPreference(mContext, MoreExecutors.directExecutor());
+        mPreference = new TestableCircularIconsPreference(mContext);
         // Tests should call bindAndMeasureViewHolder() so that icons can be added.
 
         Resources res = mContext.getResources();
@@ -80,16 +88,16 @@
     private void bindViewHolder() {
         View preferenceView = LayoutInflater.from(mContext).inflate(mPreference.getLayoutResource(),
                 null);
-        mIconContainer = checkNotNull(preferenceView.findViewById(R.id.circles_container));
-        PreferenceViewHolder holder = PreferenceViewHolder.createInstanceForTests(preferenceView);
-        mPreference.onBindViewHolder(holder);
+        mContainer = checkNotNull(preferenceView.findViewById(R.id.circles_container));
+        mViewHolder = PreferenceViewHolder.createInstanceForTests(preferenceView);
+        mPreference.onBindViewHolder(mViewHolder);
     }
 
     private void measureViewHolder(int viewWidth) {
-        checkState(mIconContainer != null, "Call bindViewHolder() first!");
-        mIconContainer.measure(makeMeasureSpec(viewWidth, View.MeasureSpec.EXACTLY),
+        checkState(mContainer != null, "Call bindViewHolder() first!");
+        mContainer.measure(makeMeasureSpec(viewWidth, View.MeasureSpec.EXACTLY),
                 makeMeasureSpec(1000, View.MeasureSpec.EXACTLY));
-        mIconContainer.getViewTreeObserver().dispatchOnGlobalLayout();
+        mContainer.getViewTreeObserver().dispatchOnGlobalLayout();
     }
 
     @Test
@@ -100,11 +108,10 @@
         bindAndMeasureViewHolder(VIEW_WIDTH);
         mPreference.displayIcons(iconSet);
 
-        assertThat(mPreference.getIcons()).hasSize(2);
-        assertThat(((ColorDrawable) mPreference.getIcons().get(0)).getColor()).isEqualTo(1);
-        assertThat(((ColorDrawable) mPreference.getIcons().get(1)).getColor()).isEqualTo(2);
-        assertThat(mPreference.getPlusText()).isNull();
-        assertThat(mIconContainer.getVisibility()).isEqualTo(View.VISIBLE);
+        assertThat(getIcons(mContainer)).hasSize(2);
+        assertThat(((ColorDrawable) getIcons(mContainer).get(0)).getColor()).isEqualTo(1);
+        assertThat(((ColorDrawable) getIcons(mContainer).get(1)).getColor()).isEqualTo(2);
+        assertThat(getPlusText(mContainer)).isNull();
     }
 
     @Test
@@ -115,7 +122,7 @@
         bindAndMeasureViewHolder(VIEW_WIDTH);
         mPreference.displayIcons(iconSet);
 
-        assertThat(mIconContainer.getVisibility()).isEqualTo(View.GONE);
+        assertThat(mContainer.getVisibility()).isEqualTo(View.GONE);
     }
 
     @Test
@@ -129,10 +136,10 @@
         bindAndMeasureViewHolder(width);
         mPreference.displayIcons(iconSet);
 
-        assertThat(mPreference.getIcons()).hasSize(fittingCircles);
-        assertThat(mPreference.getIcons()).containsExactlyElementsIn(
+        assertThat(getIcons(mContainer)).hasSize(fittingCircles);
+        assertThat(getIcons(mContainer)).containsExactlyElementsIn(
                 Futures.allAsList(iconSet.getIcons()).get()).inOrder();
-        assertThat(mPreference.getPlusText()).isNull();
+        assertThat(getPlusText(mContainer)).isNull();
 
     }
 
@@ -148,11 +155,11 @@
         mPreference.displayIcons(iconSet);
 
         // N-1 icons, plus (+6) text.
-        assertThat(mPreference.getIcons()).hasSize(fittingCircles - 1);
-        assertThat(mPreference.getIcons()).containsExactlyElementsIn(
+        assertThat(getIcons(mContainer)).hasSize(fittingCircles - 1);
+        assertThat(getIcons(mContainer)).containsExactlyElementsIn(
                         Futures.allAsList(iconSet.getIcons(fittingCircles - 1)).get())
                 .inOrder();
-        assertThat(mPreference.getPlusText()).isEqualTo("+6");
+        assertThat(getPlusText(mContainer)).isEqualTo("+6");
     }
 
     @Test
@@ -163,8 +170,8 @@
         bindAndMeasureViewHolder(1);
         mPreference.displayIcons(iconSet);
 
-        assertThat(mPreference.getIcons()).isEmpty();
-        assertThat(mPreference.getPlusText()).isEqualTo("+2");
+        assertThat(getIcons(mContainer)).isEmpty();
+        assertThat(getPlusText(mContainer)).isEqualTo("+2");
     }
 
     @Test
@@ -173,13 +180,14 @@
                 ColorDrawable::new);
 
         mPreference.displayIcons(iconSet);
-        assertThat(mPreference.getIcons()).isEmpty(); // Hold...
+        assertThat(mPreference.getLoadedIcons()).isNull(); // Hold...
 
         bindViewHolder();
-        assertThat(mPreference.getIcons()).isEmpty(); // Hooooold...
+        assertThat(mPreference.getLoadedIcons()).isNull(); // Hooooold...
 
         measureViewHolder(VIEW_WIDTH);
-        assertThat(mPreference.getIcons()).hasSize(3);
+        assertThat(mPreference.getLoadedIcons().icons()).hasSize(3);
+        assertThat(getIcons(mContainer)).hasSize(3);
     }
 
     @Test
@@ -189,10 +197,10 @@
         bindViewHolder();
 
         mPreference.displayIcons(iconSet);
-        assertThat(mPreference.getIcons()).isEmpty();
+        assertThat(mPreference.getLoadedIcons()).isNull();
 
         measureViewHolder(VIEW_WIDTH);
-        assertThat(mPreference.getIcons()).hasSize(3);
+        assertThat(getIcons(mContainer)).hasSize(3);
     }
 
     @Test
@@ -206,11 +214,16 @@
         bindAndMeasureViewHolder(VIEW_WIDTH);
 
         mPreference.displayIcons(threeIcons);
-        assertThat(mPreference.getIcons()).hasSize(3);
+        assertThat(mPreference.getLoadedIcons()).isNotNull();
+        assertThat(getIcons(mContainer)).hasSize(3);
+
         mPreference.displayIcons(twoIcons);
-        assertThat(mPreference.getIcons()).hasSize(2);
+        assertThat(mPreference.getLoadedIcons()).isNotNull();
+        assertThat(getIcons(mContainer)).hasSize(2);
+
         mPreference.displayIcons(fourIcons);
-        assertThat(mPreference.getIcons()).hasSize(4);
+        assertThat(mPreference.getLoadedIcons()).isNotNull();
+        assertThat(getIcons(mContainer)).hasSize(4);
     }
 
     @Test
@@ -224,22 +237,60 @@
         bindAndMeasureViewHolder(VIEW_WIDTH);
 
         mPreference.displayIcons(one);
+
         mPreference.displayIcons(same); // if no exception, wasn't called.
     }
 
     @Test
+    public void onBindViewHolder_withDifferentView_reloadsIconsCorrectly() {
+        View preferenceViewOne = LayoutInflater.from(mContext).inflate(
+                mPreference.getLayoutResource(), null);
+        ViewGroup containerOne = preferenceViewOne.findViewById(R.id.circles_container);
+        PreferenceViewHolder viewHolderOne = PreferenceViewHolder.createInstanceForTests(
+                preferenceViewOne);
+        containerOne.measure(makeMeasureSpec(1000, View.MeasureSpec.EXACTLY),
+                makeMeasureSpec(1000, View.MeasureSpec.EXACTLY));
+
+        View preferenceViewTwo = LayoutInflater.from(mContext).inflate(
+                mPreference.getLayoutResource(), null);
+        ViewGroup containerTwo = preferenceViewTwo.findViewById(R.id.circles_container);
+        PreferenceViewHolder viewHolderTwo = PreferenceViewHolder.createInstanceForTests(
+                preferenceViewTwo);
+        containerTwo.measure(makeMeasureSpec(1000, View.MeasureSpec.EXACTLY),
+                makeMeasureSpec(1000, View.MeasureSpec.EXACTLY));
+
+        CircularIconSet<Integer> iconSetOne = new CircularIconSet<>(ImmutableList.of(1, 2, 3),
+                ColorDrawable::new);
+        CircularIconSet<Integer> iconSetTwo = new CircularIconSet<>(ImmutableList.of(1, 2),
+                ColorDrawable::new);
+
+        mPreference.onBindViewHolder(viewHolderOne);
+        mPreference.displayIcons(iconSetOne);
+        assertThat(getIcons(containerOne)).hasSize(3);
+
+        mPreference.onBindViewHolder(viewHolderTwo);
+        assertThat(getIcons(containerTwo)).hasSize(3);
+
+        mPreference.displayIcons(iconSetTwo);
+
+        // The second view is updated and the first view is unaffected.
+        assertThat(getIcons(containerTwo)).hasSize(2);
+        assertThat(getIcons(containerOne)).hasSize(3);
+    }
+
+    @Test
     public void setEnabled_afterDisplayIcons_showsEnabledOrDisabledImages() {
         CircularIconSet<Integer> iconSet = new CircularIconSet<>(ImmutableList.of(1, 2),
                 ColorDrawable::new);
         bindAndMeasureViewHolder(VIEW_WIDTH);
         mPreference.displayIcons(iconSet);
-        assertThat(mPreference.getViews()).hasSize(2);
+        assertThat(getViews(mContainer)).hasSize(2);
 
         mPreference.setEnabled(false);
-        assertThat(mPreference.getViews().get(0).getAlpha()).isLessThan(1f);
+        assertThat(getViews(mContainer).get(0).getAlpha()).isLessThan(1f);
 
         mPreference.setEnabled(true);
-        assertThat(mPreference.getViews().get(0).getAlpha()).isEqualTo(1f);
+        assertThat(getViews(mContainer).get(0).getAlpha()).isEqualTo(1f);
     }
 
     @Test
@@ -251,7 +302,36 @@
         bindAndMeasureViewHolder(VIEW_WIDTH);
         mPreference.displayIcons(iconSet);
 
-        assertThat(mPreference.getViews()).hasSize(2);
-        assertThat(mPreference.getViews().get(0).getAlpha()).isLessThan(1f);
+        assertThat(getViews(mContainer)).hasSize(2);
+        assertThat(getViews(mContainer).get(0).getAlpha()).isLessThan(1f);
+    }
+
+    private static List<View> getViews(ViewGroup container) {
+        ArrayList<View> views = new ArrayList<>();
+        for (int i = 0; i < container.getChildCount(); i++) {
+            views.add(container.getChildAt(i));
+        }
+        return views;
+    }
+
+    private static List<Drawable> getIcons(ViewGroup container) {
+        ArrayList<Drawable> drawables = new ArrayList<>();
+        for (int i = 0; i < container.getChildCount(); i++) {
+            if (container.getChildAt(i) instanceof ImageView imageView) {
+                drawables.add(imageView.getDrawable());
+
+            }
+        }
+        return drawables;
+    }
+
+    @Nullable
+    private static String getPlusText(ViewGroup container) {
+        View lastChild = container.getChildAt(container.getChildCount() - 1);
+        if (lastChild instanceof TextView tv) {
+            return tv.getText() != null ? tv.getText().toString() : null;
+        } else {
+            return null;
+        }
     }
 }
diff --git a/tests/robotests/src/com/android/settings/notification/modes/TestableCircularIconsPreference.java b/tests/robotests/src/com/android/settings/notification/modes/TestableCircularIconsPreference.java
new file mode 100644
index 0000000..6fefcac
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/notification/modes/TestableCircularIconsPreference.java
@@ -0,0 +1,49 @@
+/*
+ * Copyright (C) 2024 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.
+ */
+
+package com.android.settings.notification.modes;
+
+import android.content.Context;
+
+import androidx.preference.PreferenceViewHolder;
+
+import com.google.common.util.concurrent.MoreExecutors;
+
+class TestableCircularIconsPreference extends CircularIconsPreference {
+
+    private PreferenceViewHolder mLastViewHolder;
+
+    TestableCircularIconsPreference(Context context) {
+        super(context, MoreExecutors.directExecutor());
+    }
+
+    @Override
+    public void onBindViewHolder(PreferenceViewHolder holder) {
+        super.onBindViewHolder(holder);
+        mLastViewHolder = holder;
+    }
+
+    @Override
+    protected void notifyChanged() {
+        // Calling androidx.preference.Preference.notifyChanged() will, through an internal
+        // listener added by PreferenceGroupAdapter, eventually rebind the Preference to its
+        // corresponding view in the RecyclerView. This will not happen to a Preference that is
+        // created without a proper PreferencesScreen/RecyclerView/etc, so we simulate it here.
+        if (mLastViewHolder != null) {
+            onBindViewHolder(mLastViewHolder);
+        }
+    }
+}
diff --git a/tests/robotests/src/com/android/settings/notification/modes/ZenModeAppsLinkPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/modes/ZenModeAppsLinkPreferenceControllerTest.java
index 301ff90..9263ffd 100644
--- a/tests/robotests/src/com/android/settings/notification/modes/ZenModeAppsLinkPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/notification/modes/ZenModeAppsLinkPreferenceControllerTest.java
@@ -101,7 +101,7 @@
         MockitoAnnotations.initMocks(this);
         mContext = RuntimeEnvironment.application;
         CircularIconSet.sExecutorService = MoreExecutors.newDirectExecutorService();
-        mPreference = new CircularIconsPreference(mContext, MoreExecutors.directExecutor());
+        mPreference = new TestableCircularIconsPreference(mContext);
 
         when(mApplicationsState.newSession(any(), any())).thenReturn(mSession);
         mController = new ZenModeAppsLinkPreferenceController(
@@ -270,7 +270,7 @@
         appEntries.add(createAppEntry("test2", mContext.getUserId()));
         mController.mAppSessionCallbacks.onRebuildComplete(appEntries);
 
-        assertThat(mPreference.getIcons()).hasSize(2);
+        assertThat(mPreference.getLoadedIcons().icons()).hasSize(2);
     }
 
     @Test
diff --git a/tests/robotests/src/com/android/settings/notification/modes/ZenModeButtonPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/modes/ZenModeButtonPreferenceControllerTest.java
index 368b923..47078b0 100644
--- a/tests/robotests/src/com/android/settings/notification/modes/ZenModeButtonPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/notification/modes/ZenModeButtonPreferenceControllerTest.java
@@ -90,6 +90,16 @@
     }
 
     @Test
+    public void isAvailable_ifModeActiveEvenIfAppOptsOut() {
+        ZenMode zenMode = new TestModeBuilder()
+                .setManualInvocationAllowed(false)
+                .setActive(true)
+                .build();
+        mController.setZenMode(zenMode);
+        assertThat(mController.isAvailable()).isTrue();
+    }
+
+    @Test
     public void isAvailable_notIfModeDisabled() {
         ZenMode zenMode = new TestModeBuilder()
                 .setManualInvocationAllowed(true)
@@ -119,7 +129,6 @@
         LayoutPreference pref = mock(LayoutPreference.class);
         when(pref.findViewById(anyInt())).thenReturn(button);
         ZenMode zenMode = new TestModeBuilder()
-                .setManualInvocationAllowed(true)
                 .setActive(true)
                 .build();
 
@@ -151,7 +160,6 @@
         LayoutPreference pref = mock(LayoutPreference.class);
         when(pref.findViewById(anyInt())).thenReturn(button);
         ZenMode zenMode = new TestModeBuilder()
-                .setManualInvocationAllowed(true)
                 .setActive(true)
                 .build();
 
diff --git a/tests/robotests/src/com/android/settings/notification/modes/ZenModeFragmentBaseTest.java b/tests/robotests/src/com/android/settings/notification/modes/ZenModeFragmentBaseTest.java
new file mode 100644
index 0000000..21f19ff
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/notification/modes/ZenModeFragmentBaseTest.java
@@ -0,0 +1,364 @@
+/*
+ * Copyright (C) 2024 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.
+ */
+
+package com.android.settings.notification.modes;
+
+import static android.provider.Settings.EXTRA_AUTOMATIC_ZEN_RULE_ID;
+
+import static com.android.settings.notification.modes.CharSequenceTruth.assertThat;
+
+import static com.google.common.base.Preconditions.checkNotNull;
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.eq;
+import static org.mockito.ArgumentMatchers.same;
+import static org.mockito.Mockito.never;
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.times;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+import static org.robolectric.Shadows.shadowOf;
+
+import android.app.Flags;
+import android.content.Context;
+import android.database.ContentObserver;
+import android.net.Uri;
+import android.os.Bundle;
+import android.platform.test.annotations.EnableFlags;
+import android.platform.test.flag.junit.SetFlagsRule;
+import android.provider.Settings;
+
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.fragment.app.Fragment;
+import androidx.fragment.app.testing.FragmentScenario;
+import androidx.lifecycle.Lifecycle.State;
+import androidx.preference.Preference;
+
+import com.android.settings.R;
+import com.android.settingslib.core.AbstractPreferenceController;
+import com.android.settingslib.notification.modes.TestModeBuilder;
+import com.android.settingslib.notification.modes.ZenMode;
+import com.android.settingslib.notification.modes.ZenModesBackend;
+
+import com.google.common.collect.ImmutableList;
+
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.robolectric.RobolectricTestRunner;
+import org.robolectric.shadows.ShadowContentResolver;
+import org.robolectric.shadows.ShadowLooper;
+
+import java.util.List;
+
+@RunWith(RobolectricTestRunner.class)
+@EnableFlags(Flags.FLAG_MODES_UI)
+public class ZenModeFragmentBaseTest {
+
+    private static final Uri SETTINGS_URI = Settings.Global.getUriFor(
+            Settings.Global.ZEN_MODE_CONFIG_ETAG);
+
+    @Rule public final SetFlagsRule mSetFlagsRule = new SetFlagsRule();
+
+    @Mock ZenModesBackend mBackend;
+
+    @Before
+    public void setUp() {
+        MockitoAnnotations.initMocks(this);
+    }
+
+    @Test
+    public void fragment_noArguments_finishes() {
+        when(mBackend.getMode(any())).thenReturn(TestModeBuilder.EXAMPLE);
+
+        FragmentScenario<TestableFragment> scenario = createScenario(null);
+
+        scenario.moveToState(State.RESUMED).onFragment(fragment -> {
+            assertThat(fragment.requireActivity().isFinishing()).isTrue();
+        });
+
+        scenario.close();
+    }
+
+    @Test
+    public void fragment_modeDoesNotExist_finishes() {
+        when(mBackend.getMode(any())).thenReturn(null);
+
+        FragmentScenario<TestableFragment> scenario = createScenario("mode_id");
+
+        scenario.moveToState(State.RESUMED).onFragment(fragment -> {
+            assertThat(fragment.requireActivity().isFinishing()).isTrue();
+        });
+
+        scenario.close();
+    }
+
+    @Test
+    public void fragment_validMode_updatesControllersOnce() {
+        ZenMode mode = new TestModeBuilder().setId("mode_id").build();
+        when(mBackend.getMode("mode_id")).thenReturn(mode);
+
+        FragmentScenario<TestableFragment> scenario = createScenario("mode_id");
+
+        scenario.moveToState(State.CREATED).onFragment(fragment -> {
+            assertThat(fragment.mShowsId.getZenMode()).isEqualTo(mode);
+            assertThat(fragment.mShowsId.isAvailable()).isTrue();
+            assertThat(fragment.mAvailableIfEnabled.getZenMode()).isEqualTo(mode);
+            assertThat(fragment.mAvailableIfEnabled.isAvailable()).isTrue();
+
+            verify(fragment.mShowsId, never()).updateState(any(), any());
+            verify(fragment.mAvailableIfEnabled, never()).updateState(any(), any());
+        });
+
+        scenario.moveToState(State.RESUMED).onFragment(fragment -> {
+            Preference preferenceOne = fragment.requirePreference("pref_id");
+            assertThat(preferenceOne.getSummary()).isEqualTo("Id is mode_id");
+
+            verify(fragment.mShowsId).updateState(any(), eq(mode));
+            verify(fragment.mAvailableIfEnabled).updateState(any(), eq(mode));
+        });
+
+        scenario.close();
+    }
+
+    @Test
+    public void fragment_onStartToOnStop_hasRegisteredContentObserver() {
+        when(mBackend.getMode(any())).thenReturn(TestModeBuilder.EXAMPLE);
+        FragmentScenario<TestableFragment> scenario = createScenario("id");
+
+        scenario.moveToState(State.CREATED).onFragment(fragment ->
+                assertThat(getSettingsContentObservers(fragment)).isEmpty());
+
+        scenario.moveToState(State.STARTED).onFragment(fragment ->
+                assertThat(getSettingsContentObservers(fragment)).hasSize(1));
+
+        scenario.moveToState(State.RESUMED).onFragment(fragment ->
+                assertThat(getSettingsContentObservers(fragment)).hasSize(1));
+
+        scenario.moveToState(State.STARTED).onFragment(fragment ->
+                assertThat(getSettingsContentObservers(fragment)).hasSize(1));
+
+        scenario.moveToState(State.CREATED).onFragment(fragment ->
+                assertThat(getSettingsContentObservers(fragment)).isEmpty());
+
+        scenario.close();
+    }
+
+    @Test
+    public void fragment_onModeUpdatedWithDifferences_updatesControllers() {
+        ZenMode originalMode = new TestModeBuilder().setId("id").setName("Original").build();
+        when(mBackend.getMode("id")).thenReturn(originalMode);
+
+        FragmentScenario<TestableFragment> scenario = createScenario("id");
+        scenario.moveToState(State.RESUMED).onFragment(fragment -> {
+            Preference preference = fragment.requirePreference("pref_name");
+            assertThat(preference.getSummary()).isEqualTo("Original");
+            verify(fragment.mShowsName, times(1)).updateState(any(), eq(originalMode));
+
+            // Now, we get a message saying something changed.
+            ZenMode updatedMode = new TestModeBuilder().setId("id").setName("Updated").build();
+            when(mBackend.getMode("id")).thenReturn(updatedMode);
+            getSettingsContentObservers(fragment).stream().findFirst().get()
+                    .dispatchChange(false, SETTINGS_URI);
+            ShadowLooper.idleMainLooper();
+
+            // The screen was updated, and only updated once.
+            assertThat(preference.getSummary()).isEqualTo("Updated");
+            verify(fragment.mShowsName, times(1)).updateState(any(), eq(updatedMode));
+        });
+
+        scenario.close();
+    }
+
+    @Test
+    public void fragment_onModeUpdatedWithoutDifferences_setsModeInControllersButNothingElse() {
+        ZenMode originalMode = new TestModeBuilder().setId("id").setName("Original").build();
+        when(mBackend.getMode("id")).thenReturn(originalMode);
+
+        FragmentScenario<TestableFragment> scenario = createScenario("id");
+        scenario.moveToState(State.RESUMED).onFragment(fragment -> {
+            Preference preference = fragment.requirePreference("pref_name");
+            assertThat(preference.getSummary()).isEqualTo("Original");
+            verify(fragment.mShowsName, times(1)).updateState(any(), eq(originalMode));
+
+            // Now, we get a message saying something changed, but it was for a different mode.
+            ZenMode notUpdatedMode = new TestModeBuilder(originalMode).build();
+            when(mBackend.getMode("id")).thenReturn(notUpdatedMode);
+            getSettingsContentObservers(fragment).stream().findFirst().get()
+                    .dispatchChange(false, SETTINGS_URI);
+            ShadowLooper.idleMainLooper();
+
+            // The mode instance was updated, but updateState() was not called.
+            assertThat(preference.getSummary()).isEqualTo("Original");
+            assertThat(fragment.mShowsName.getZenMode()).isSameInstanceAs(notUpdatedMode);
+            verify(fragment.mShowsName, never()).updateState(any(), same(notUpdatedMode));
+        });
+
+        scenario.close();
+    }
+
+    @Test
+    public void fragment_onFragmentRestart_reloadsMode() {
+        ZenMode originalMode = new TestModeBuilder().setId("id").setName("Original").build();
+        when(mBackend.getMode("id")).thenReturn(originalMode);
+
+        FragmentScenario<TestableFragment> scenario = createScenario("id");
+        scenario.moveToState(State.RESUMED).onFragment(fragment -> {
+            Preference preference = fragment.requirePreference("pref_name");
+            assertThat(preference.getSummary()).isEqualTo("Original");
+            verify(fragment.mShowsName, times(1)).updateState(any(), eq(originalMode));
+        });
+
+        ZenMode updatedMode = new TestModeBuilder().setId("id").setName("Updated").build();
+        when(mBackend.getMode("id")).thenReturn(updatedMode);
+
+        scenario.moveToState(State.CREATED).moveToState(State.RESUMED).onFragment(fragment -> {
+            Preference preference = fragment.requirePreference("pref_name");
+            assertThat(preference.getSummary()).isEqualTo("Updated");
+            assertThat(fragment.mShowsName.getZenMode()).isSameInstanceAs(updatedMode);
+        });
+
+        scenario.close();
+    }
+
+    @Test
+    public void fragment_onModeDeleted_finishes() {
+        ZenMode originalMode = new TestModeBuilder().setId("mode_id").build();
+        when(mBackend.getMode("mode_id")).thenReturn(originalMode);
+
+        FragmentScenario<TestableFragment> scenario = createScenario("mode_id");
+        scenario.moveToState(State.RESUMED).onFragment(fragment -> {
+            assertThat(fragment.requireActivity().isFinishing()).isFalse();
+
+            // Now it's no longer there...
+            when(mBackend.getMode(any())).thenReturn(null);
+            getSettingsContentObservers(fragment).stream().findFirst().get()
+                    .dispatchChange(false, SETTINGS_URI);
+            ShadowLooper.idleMainLooper();
+
+            assertThat(fragment.requireActivity().isFinishing()).isTrue();
+        });
+
+        scenario.close();
+    }
+
+    private FragmentScenario<TestableFragment> createScenario(@Nullable String modeId) {
+        Bundle fragmentArgs = null;
+        if (modeId != null) {
+            fragmentArgs = new Bundle();
+            fragmentArgs.putString(EXTRA_AUTOMATIC_ZEN_RULE_ID, modeId);
+        }
+
+        FragmentScenario<TestableFragment> scenario = FragmentScenario.launch(
+                TestableFragment.class, fragmentArgs, 0, State.INITIALIZED);
+
+        scenario.onFragment(fragment -> {
+            fragment.setBackend(mBackend); // Before onCreate().
+        });
+
+        return scenario;
+    }
+
+    public static class TestableFragment extends ZenModeFragmentBase {
+
+        private ShowsIdPreferenceController mShowsId;
+        private ShowsNamePreferenceController mShowsName;
+        private AvailableIfEnabledPreferenceController mAvailableIfEnabled;
+
+        @Override
+        protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
+            mShowsId = spy(new ShowsIdPreferenceController(context, "pref_id"));
+            mShowsName = spy(new ShowsNamePreferenceController(context, "pref_name"));
+            mAvailableIfEnabled = spy(
+                    new AvailableIfEnabledPreferenceController(context, "pref_enabled"));
+            return ImmutableList.of(mShowsId, mShowsName, mAvailableIfEnabled);
+        }
+
+        @NonNull
+        Preference requirePreference(String key) {
+            Preference preference = getPreferenceScreen().findPreference(key);
+            checkNotNull(preference, "Didn't find preference with key " + key);
+            return preference;
+        }
+
+        ShadowContentResolver getShadowContentResolver() {
+            return shadowOf(requireActivity().getContentResolver());
+        }
+
+        @Override
+        protected int getPreferenceScreenResId() {
+            return R.xml.modes_fake_settings;
+        }
+
+        @Override
+        public int getMetricsCategory() {
+            return 0;
+        }
+    }
+
+    private static class ShowsIdPreferenceController extends AbstractZenModePreferenceController {
+
+        ShowsIdPreferenceController(@NonNull Context context, @NonNull String key) {
+            super(context, key);
+        }
+
+        @Override
+        void updateState(Preference preference, @NonNull ZenMode zenMode) {
+            preference.setSummary("Id is " + zenMode.getId());
+        }
+    }
+
+    private static class ShowsNamePreferenceController extends AbstractZenModePreferenceController {
+
+        ShowsNamePreferenceController(@NonNull Context context, @NonNull String key) {
+            super(context, key);
+        }
+
+        @Override
+        void updateState(Preference preference, @NonNull ZenMode zenMode) {
+            preference.setSummary(zenMode.getName());
+        }
+    }
+
+    private static class AvailableIfEnabledPreferenceController extends
+            AbstractZenModePreferenceController {
+
+        AvailableIfEnabledPreferenceController(@NonNull Context context, @NonNull String key) {
+            super(context, key);
+        }
+
+        @Override
+        public boolean isAvailable(@NonNull ZenMode zenMode) {
+            return zenMode.isEnabled();
+        }
+
+        @Override
+        void updateState(Preference preference, @NonNull ZenMode zenMode) {
+            preference.setSummary("Enabled is " + zenMode.isEnabled());
+        }
+    }
+
+    private ImmutableList<ContentObserver> getSettingsContentObservers(Fragment fragment) {
+        return ImmutableList.copyOf(
+                shadowOf(fragment.requireActivity().getContentResolver())
+                        .getContentObservers(SETTINGS_URI));
+    }
+}
diff --git a/tests/robotests/src/com/android/settings/notification/modes/ZenModePeopleLinkPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/modes/ZenModePeopleLinkPreferenceControllerTest.java
index 63068fa..a4d141e 100644
--- a/tests/robotests/src/com/android/settings/notification/modes/ZenModePeopleLinkPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/notification/modes/ZenModePeopleLinkPreferenceControllerTest.java
@@ -89,7 +89,7 @@
         MockitoAnnotations.initMocks(this);
         mContext = RuntimeEnvironment.application;
         CircularIconSet.sExecutorService = MoreExecutors.newDirectExecutorService();
-        mPreference = new CircularIconsPreference(mContext, MoreExecutors.directExecutor());
+        mPreference = new TestableCircularIconsPreference(mContext);
 
         // Ensure the preference view is bound & measured (needed to add icons).
         View preferenceView = LayoutInflater.from(mContext).inflate(mPreference.getLayoutResource(),
@@ -142,8 +142,9 @@
 
         mController.updateState(mPreference, mode);
 
-        assertThat(mPreference.getIcons()).hasSize(2);
-        assertThat(mPreference.getIcons().stream()
+        assertThat(mPreference.getLoadedIcons()).isNotNull();
+        assertThat(mPreference.getLoadedIcons().icons()).hasSize(2);
+        assertThat(mPreference.getLoadedIcons().icons().stream()
                 .map(ColorDrawable.class::cast)
                 .map(d -> d.getColor()).toList())
                 .containsExactly(2, 3).inOrder();
@@ -161,8 +162,9 @@
 
         mController.updateState(mPreference, mode);
 
-        assertThat(mPreference.getIcons()).hasSize(4);
-        assertThat(mPreference.getIcons().stream()
+        assertThat(mPreference.getLoadedIcons()).isNotNull();
+        assertThat(mPreference.getLoadedIcons().icons()).hasSize(4);
+        assertThat(mPreference.getLoadedIcons().icons().stream()
                 .map(ColorDrawable.class::cast)
                 .map(d -> d.getColor()).toList())
                 .containsExactly(1, 2, 3, 4).inOrder();
@@ -180,7 +182,8 @@
 
         mController.updateState(mPreference, mode);
 
-        assertThat(mPreference.getIcons()).hasSize(1);
+        assertThat(mPreference.getLoadedIcons()).isNotNull();
+        assertThat(mPreference.getLoadedIcons().icons()).hasSize(1);
         verify(mHelperBackend, never()).getContactPhoto(any());
     }
 
@@ -198,7 +201,8 @@
 
         mController.updateState(mPreference, mode);
 
-        assertThat(mPreference.getIcons()).hasSize(3);
+        assertThat(mPreference.getLoadedIcons()).isNotNull();
+        assertThat(mPreference.getLoadedIcons().icons()).hasSize(3);
         verify(mConversationIconFactory, times(3)).getConversationDrawable((ShortcutInfo) any(),
                 any(), anyInt(), anyBoolean());
     }
diff --git a/tests/robotests/src/com/android/settings/notification/modes/ZenModeTriggerAddPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/modes/ZenModeTriggerAddPreferenceControllerTest.java
new file mode 100644
index 0000000..a56e723
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/notification/modes/ZenModeTriggerAddPreferenceControllerTest.java
@@ -0,0 +1,183 @@
+/*
+ * Copyright (C) 2024 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.
+ */
+
+package com.android.settings.notification.modes;
+
+import static android.app.AutomaticZenRule.TYPE_OTHER;
+import static android.app.AutomaticZenRule.TYPE_SCHEDULE_CALENDAR;
+import static android.app.AutomaticZenRule.TYPE_SCHEDULE_TIME;
+import static android.app.NotificationManager.INTERRUPTION_FILTER_PRIORITY;
+import static android.platform.test.flag.junit.SetFlagsRule.DefaultInitValueType.DEVICE_DEFAULT;
+
+import static com.android.settings.notification.modes.CharSequenceTruth.assertThat;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.Mockito.verify;
+
+import android.app.AutomaticZenRule;
+import android.app.Flags;
+import android.content.Context;
+import android.net.Uri;
+import android.platform.test.annotations.EnableFlags;
+import android.platform.test.flag.junit.SetFlagsRule;
+import android.service.notification.SystemZenRules;
+import android.service.notification.ZenModeConfig;
+
+import androidx.preference.Preference;
+import androidx.preference.PreferenceManager;
+import androidx.preference.PreferenceScreen;
+import androidx.test.core.app.ApplicationProvider;
+
+import com.android.settings.R;
+import com.android.settings.dashboard.DashboardFragment;
+import com.android.settingslib.notification.modes.TestModeBuilder;
+import com.android.settingslib.notification.modes.ZenMode;
+import com.android.settingslib.notification.modes.ZenModesBackend;
+
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.ArgumentCaptor;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.robolectric.RobolectricTestRunner;
+
+import java.util.Calendar;
+
+@RunWith(RobolectricTestRunner.class)
+@EnableFlags(Flags.FLAG_MODES_UI)
+public class ZenModeTriggerAddPreferenceControllerTest {
+
+    private static final ZenMode CUSTOM_MANUAL_MODE = new TestModeBuilder()
+            .setConditionId(ZenModeConfig.toCustomManualConditionId())
+            .setPackage(SystemZenRules.PACKAGE_ANDROID)
+            .setType(TYPE_OTHER)
+            .setTriggerDescription("Will not be shown")
+            .build();
+
+    @Rule
+    public final SetFlagsRule mSetFlagsRule = new SetFlagsRule(DEVICE_DEFAULT);
+
+    private ZenModeTriggerAddPreferenceController mController;
+
+    private Context mContext;
+    private Preference mPreference;
+    @Mock private ZenModesBackend mBackend;
+    @Mock private DashboardFragment mFragment;
+
+    @Before
+    public void setUp() throws Exception {
+        MockitoAnnotations.initMocks(this);
+        mContext = ApplicationProvider.getApplicationContext();
+
+        PreferenceManager preferenceManager = new PreferenceManager(mContext);
+        PreferenceScreen preferenceScreen = preferenceManager.inflateFromResource(mContext,
+                R.xml.modes_rule_settings, null);
+
+        mController = new ZenModeTriggerAddPreferenceController(mContext,
+                "zen_add_automatic_trigger", mFragment, mBackend);
+        mPreference = preferenceScreen.findPreference("zen_add_automatic_trigger");
+    }
+
+    @Test
+    public void isAvailable_customManualMode_true() {
+        mController.setZenMode(CUSTOM_MANUAL_MODE);
+
+        assertThat(mController.isAvailable()).isTrue();
+    }
+
+    @Test
+    public void isAvailable_systemMode_false() {
+        ZenMode mode = new TestModeBuilder()
+                .setPackage(SystemZenRules.PACKAGE_ANDROID)
+                .setType(TYPE_SCHEDULE_CALENDAR)
+                .build();
+        mController.setZenMode(mode);
+
+        assertThat(mController.isAvailable()).isFalse();
+    }
+
+    @Test
+    public void isAvailable_appProvidedMode_false() {
+        ZenMode mode = new TestModeBuilder()
+                .setPackage("com.some.package")
+                .setType(TYPE_OTHER)
+                .build();
+        mController.setZenMode(mode);
+
+        assertThat(mController.isAvailable()).isFalse();
+    }
+
+    @Test
+    public void isAvailable_manualDND_false() {
+        ZenMode manualMode = ZenMode.manualDndMode(new AutomaticZenRule.Builder("Do Not Disturb",
+                Uri.parse("manual"))
+                .setInterruptionFilter(INTERRUPTION_FILTER_PRIORITY)
+                .build(), /* isActive= */ false);
+
+        mController.setZenMode(manualMode);
+        assertThat(mController.isAvailable()).isFalse();
+    }
+
+    @Test
+    public void updateState_customManualRule() {
+        ZenMode mode = new TestModeBuilder()
+                .setConditionId(ZenModeConfig.toCustomManualConditionId())
+                .setPackage(SystemZenRules.PACKAGE_ANDROID)
+                .setType(TYPE_OTHER)
+                .setTriggerDescription("Will not be shown")
+                .build();
+
+        mController.updateState(mPreference, mode);
+
+        assertThat(mPreference.getTitle()).isEqualTo(
+                mContext.getString(R.string.zen_mode_select_schedule));
+        assertThat(mPreference.getSummary()).isNull();
+        // Sets up a click listener to open the dialog.
+        assertThat(mPreference.getOnPreferenceClickListener()).isNotNull();
+    }
+
+    @Test
+    public void onScheduleChosen_updatesMode() {
+        ZenMode originalMode = new TestModeBuilder()
+                .setConditionId(ZenModeConfig.toCustomManualConditionId())
+                .setPackage(SystemZenRules.PACKAGE_ANDROID)
+                .setType(TYPE_OTHER)
+                .setTriggerDescription("")
+                .build();
+        mController.updateZenMode(mPreference, originalMode);
+
+        ZenModeConfig.ScheduleInfo scheduleInfo = new ZenModeConfig.ScheduleInfo();
+        scheduleInfo.days = new int[] { Calendar.MONDAY };
+        scheduleInfo.startHour = 12;
+        scheduleInfo.endHour = 15;
+        Uri scheduleUri = ZenModeConfig.toScheduleConditionId(scheduleInfo);
+
+        mController.mOnScheduleOptionListener.onScheduleSelected(scheduleUri);
+
+        // verify the backend got asked to update the mode to be schedule-based.
+        ArgumentCaptor<ZenMode> captor = ArgumentCaptor.forClass(ZenMode.class);
+        verify(mBackend).updateMode(captor.capture());
+        ZenMode updatedMode = captor.getValue();
+        assertThat(updatedMode.getType()).isEqualTo(TYPE_SCHEDULE_TIME);
+        assertThat(updatedMode.getRule().getConditionId()).isEqualTo(scheduleUri);
+        assertThat(updatedMode.getRule().getTriggerDescription()).isNotEmpty();
+        assertThat(updatedMode.getRule().getOwner()).isEqualTo(
+                ZenModeConfig.getScheduleConditionProvider());
+    }
+}
diff --git a/tests/robotests/src/com/android/settings/notification/modes/ZenModeTriggerCategoryPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/modes/ZenModeTriggerCategoryPreferenceControllerTest.java
new file mode 100644
index 0000000..4510e20
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/notification/modes/ZenModeTriggerCategoryPreferenceControllerTest.java
@@ -0,0 +1,127 @@
+/*
+ * Copyright (C) 2024 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.
+ */
+
+package com.android.settings.notification.modes;
+
+import static android.app.AutomaticZenRule.TYPE_OTHER;
+import static android.app.AutomaticZenRule.TYPE_SCHEDULE_CALENDAR;
+import static android.app.NotificationManager.INTERRUPTION_FILTER_PRIORITY;
+import static android.platform.test.flag.junit.SetFlagsRule.DefaultInitValueType.DEVICE_DEFAULT;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import android.app.AutomaticZenRule;
+import android.app.Flags;
+import android.content.Context;
+import android.net.Uri;
+import android.platform.test.annotations.EnableFlags;
+import android.platform.test.flag.junit.SetFlagsRule;
+import android.service.notification.SystemZenRules;
+import android.service.notification.ZenModeConfig;
+
+import androidx.preference.Preference;
+import androidx.preference.PreferenceManager;
+import androidx.preference.PreferenceScreen;
+import androidx.test.core.app.ApplicationProvider;
+
+import com.android.settings.R;
+import com.android.settings.dashboard.DashboardFragment;
+import com.android.settingslib.notification.modes.TestModeBuilder;
+import com.android.settingslib.notification.modes.ZenMode;
+import com.android.settingslib.notification.modes.ZenModesBackend;
+
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.robolectric.RobolectricTestRunner;
+
+@RunWith(RobolectricTestRunner.class)
+@EnableFlags(Flags.FLAG_MODES_UI)
+public class ZenModeTriggerCategoryPreferenceControllerTest {
+
+    @Rule
+    public final SetFlagsRule mSetFlagsRule = new SetFlagsRule(DEVICE_DEFAULT);
+
+    private ZenModeTriggerCategoryPreferenceController mController;
+
+    private Context mContext;
+    private Preference mPreference;
+    @Mock private ZenModesBackend mBackend;
+    @Mock private DashboardFragment mFragment;
+
+    @Before
+    public void setUp() throws Exception {
+        MockitoAnnotations.initMocks(this);
+        mContext = ApplicationProvider.getApplicationContext();
+
+        PreferenceManager preferenceManager = new PreferenceManager(mContext);
+        PreferenceScreen preferenceScreen = preferenceManager.inflateFromResource(mContext,
+                R.xml.modes_rule_settings, null);
+
+        mController = new ZenModeTriggerCategoryPreferenceController(mContext,
+                "zen_automatic_trigger_category");
+        mPreference = preferenceScreen.findPreference("zen_automatic_trigger_category");
+    }
+
+    @Test
+    public void isAvailable_customManualMode_true() {
+        ZenMode mode = new TestModeBuilder()
+                .setConditionId(ZenModeConfig.toCustomManualConditionId())
+                .setPackage(SystemZenRules.PACKAGE_ANDROID)
+                .setType(TYPE_OTHER)
+                .setTriggerDescription("Will not be shown")
+                .build();
+        mController.setZenMode(mode);
+
+        assertThat(mController.isAvailable()).isTrue();
+    }
+
+    @Test
+    public void isAvailable_systemMode_true() {
+        ZenMode mode = new TestModeBuilder()
+                .setPackage(SystemZenRules.PACKAGE_ANDROID)
+                .setType(TYPE_SCHEDULE_CALENDAR)
+                .build();
+        mController.setZenMode(mode);
+
+        assertThat(mController.isAvailable()).isTrue();
+    }
+
+    @Test
+    public void isAvailable_appProvidedMode_true() {
+        ZenMode mode = new TestModeBuilder()
+                .setPackage("com.some.package")
+                .setType(TYPE_OTHER)
+                .build();
+        mController.setZenMode(mode);
+
+        assertThat(mController.isAvailable()).isTrue();
+    }
+
+    @Test
+    public void isAvailable_manualDND_false() {
+        ZenMode manualMode = ZenMode.manualDndMode(new AutomaticZenRule.Builder("Do Not Disturb",
+                Uri.parse("manual"))
+                .setInterruptionFilter(INTERRUPTION_FILTER_PRIORITY)
+                .build(), /* isActive= */ false);
+
+        mController.setZenMode(manualMode);
+        assertThat(mController.isAvailable()).isFalse();
+    }
+}
diff --git a/tests/robotests/src/com/android/settings/notification/modes/ZenModeSetTriggerLinkPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/modes/ZenModeTriggerUpdatePreferenceControllerTest.java
similarity index 60%
rename from tests/robotests/src/com/android/settings/notification/modes/ZenModeSetTriggerLinkPreferenceControllerTest.java
rename to tests/robotests/src/com/android/settings/notification/modes/ZenModeTriggerUpdatePreferenceControllerTest.java
index 93db4be..a3fe57e 100644
--- a/tests/robotests/src/com/android/settings/notification/modes/ZenModeSetTriggerLinkPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/notification/modes/ZenModeTriggerUpdatePreferenceControllerTest.java
@@ -22,11 +22,8 @@
 import static android.app.NotificationManager.INTERRUPTION_FILTER_PRIORITY;
 import static android.platform.test.flag.junit.SetFlagsRule.DefaultInitValueType.DEVICE_DEFAULT;
 
-import static com.android.settings.notification.modes.ZenModeSetTriggerLinkPreferenceController.ADD_TRIGGER_KEY;
-import static com.android.settings.notification.modes.ZenModeSetTriggerLinkPreferenceController.AUTOMATIC_TRIGGER_KEY;
-import static com.android.settings.notification.modes.ZenModeSetTriggerLinkPreferenceControllerTest.CharSequenceTruth.assertThat;
+import static com.android.settings.notification.modes.CharSequenceTruth.assertThat;
 
-import static com.google.common.base.Preconditions.checkNotNull;
 import static com.google.common.truth.Truth.assertThat;
 
 import static org.mockito.ArgumentMatchers.any;
@@ -51,24 +48,17 @@
 import android.service.notification.SystemZenRules;
 import android.service.notification.ZenModeConfig;
 
-import androidx.annotation.Nullable;
-import androidx.preference.Preference;
-import androidx.preference.PreferenceCategory;
 import androidx.preference.PreferenceManager;
 import androidx.preference.PreferenceScreen;
 import androidx.test.core.app.ApplicationProvider;
 
 import com.android.settings.R;
 import com.android.settings.SettingsActivity;
-import com.android.settings.dashboard.DashboardFragment;
 import com.android.settingslib.PrimarySwitchPreference;
 import com.android.settingslib.notification.modes.TestModeBuilder;
 import com.android.settingslib.notification.modes.ZenMode;
 import com.android.settingslib.notification.modes.ZenModesBackend;
 
-import com.google.common.truth.StringSubject;
-import com.google.common.truth.Truth;
-
 import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
@@ -84,44 +74,31 @@
 
 @RunWith(RobolectricTestRunner.class)
 @EnableFlags(Flags.FLAG_MODES_UI)
-public class ZenModeSetTriggerLinkPreferenceControllerTest {
+public class ZenModeTriggerUpdatePreferenceControllerTest {
     @Rule
     public final SetFlagsRule mSetFlagsRule = new SetFlagsRule(DEVICE_DEFAULT);
 
-    @Mock
-    private ZenModesBackend mBackend;
-    private Context mContext;
+    private ZenModeTriggerUpdatePreferenceController mController;
 
-    @Mock
-    private PackageManager mPm;
-    @Mock
-    private ConfigurationActivityHelper mConfigurationActivityHelper;
-
-    private PreferenceCategory mPrefCategory;
-    private PrimarySwitchPreference mConfigPreference;
-    private Preference mAddPreference;
-
-    @Mock
-    private DashboardFragment mFragment;
-
-    private ZenModeSetTriggerLinkPreferenceController mController;
+    private PrimarySwitchPreference mPreference;
+    @Mock private ZenModesBackend mBackend;
+    @Mock private PackageManager mPm;
+    @Mock private ConfigurationActivityHelper mConfigurationActivityHelper;
 
     @Before
     public void setUp() throws Exception {
         MockitoAnnotations.initMocks(this);
-        mContext = ApplicationProvider.getApplicationContext();
+        Context context = ApplicationProvider.getApplicationContext();
 
-        PreferenceManager preferenceManager = new PreferenceManager(mContext);
-        PreferenceScreen preferenceScreen = preferenceManager.inflateFromResource(mContext,
+        PreferenceManager preferenceManager = new PreferenceManager(context);
+        PreferenceScreen preferenceScreen = preferenceManager.inflateFromResource(context,
                 R.xml.modes_rule_settings, null);
 
-        mController = new ZenModeSetTriggerLinkPreferenceController(mContext,
-                "zen_automatic_trigger_category", mFragment, mBackend, mPm,
+        mController = new ZenModeTriggerUpdatePreferenceController(context,
+                "zen_automatic_trigger_settings", mBackend, mPm,
                 mConfigurationActivityHelper, mock(ZenServiceListing.class));
 
-        mPrefCategory = preferenceScreen.findPreference("zen_automatic_trigger_category");
-        mConfigPreference = checkNotNull(mPrefCategory).findPreference(AUTOMATIC_TRIGGER_KEY);
-        mAddPreference = checkNotNull(mPrefCategory).findPreference(ADD_TRIGGER_KEY);
+        mPreference = preferenceScreen.findPreference("zen_automatic_trigger_settings");
 
         when(mPm.getApplicationInfo(any(), anyInt())).then(
                 (Answer<ApplicationInfo>) invocationOnMock -> {
@@ -136,19 +113,48 @@
     }
 
     @Test
-    public void testIsAvailable() {
-        // should not be available for manual DND
+    public void isAvailable_systemModeNotCustomManual_true() {
+        ZenMode mode = new TestModeBuilder()
+                .setPackage(SystemZenRules.PACKAGE_ANDROID)
+                .setType(TYPE_SCHEDULE_CALENDAR)
+                .build();
+        mController.setZenMode(mode);
+
+        assertThat(mController.isAvailable()).isTrue();
+    }
+
+    @Test
+    public void isAvailable_appProvidedMode_true() {
+        ZenMode mode = new TestModeBuilder()
+                .setPackage("com.some.package")
+                .setType(TYPE_OTHER)
+                .build();
+        mController.setZenMode(mode);
+
+        assertThat(mController.isAvailable()).isTrue();
+    }
+
+    @Test
+    public void isAvailable_customManualMode_false() {
+        ZenMode mode = new TestModeBuilder()
+                .setConditionId(ZenModeConfig.toCustomManualConditionId())
+                .setPackage(SystemZenRules.PACKAGE_ANDROID)
+                .setType(TYPE_OTHER)
+                .build();
+        mController.setZenMode(mode);
+
+        assertThat(mController.isAvailable()).isFalse();
+    }
+
+    @Test
+    public void isAvailable_manualDND_false() {
         ZenMode manualMode = ZenMode.manualDndMode(new AutomaticZenRule.Builder("Do Not Disturb",
                 Uri.parse("manual"))
                 .setInterruptionFilter(INTERRUPTION_FILTER_PRIORITY)
-                .build(), true);
+                .build(), /* isActive= */ false);
 
-        mController.updateZenMode(mPrefCategory, manualMode);
+        mController.setZenMode(manualMode);
         assertThat(mController.isAvailable()).isFalse();
-
-        // should be available for other modes
-        mController.updateZenMode(mPrefCategory, TestModeBuilder.EXAMPLE);
-        assertThat(mController.isAvailable()).isTrue();
     }
 
     @Test
@@ -156,23 +162,23 @@
         ZenMode zenMode = new TestModeBuilder().setEnabled(false).build();
 
         // Update preference controller with a zen mode that is not enabled
-        mController.updateZenMode(mPrefCategory, zenMode);
-        assertThat(mConfigPreference.getCheckedState()).isFalse();
+        mController.updateZenMode(mPreference, zenMode);
+        assertThat(mPreference.getCheckedState()).isFalse();
 
         // Now with the rule enabled
         zenMode.getRule().setEnabled(true);
-        mController.updateZenMode(mPrefCategory, zenMode);
-        assertThat(mConfigPreference.getCheckedState()).isTrue();
+        mController.updateZenMode(mPreference, zenMode);
+        assertThat(mPreference.getCheckedState()).isTrue();
     }
 
     @Test
     public void onPreferenceChange_toggleOn_enablesModeAfterConfirmation() {
         // Start with a disabled mode
         ZenMode zenMode = new TestModeBuilder().setEnabled(false).build();
-        mController.updateZenMode(mPrefCategory, zenMode);
+        mController.updateZenMode(mPreference, zenMode);
 
         // Flip the switch
-        mConfigPreference.callChangeListener(true);
+        mPreference.callChangeListener(true);
         verify(mBackend, never()).updateMode(any());
 
         // Oh wait, I forgot to confirm! Let's do that
@@ -193,10 +199,10 @@
     public void onPreferenceChange_toggleOff_disablesModeAfterConfirmation() {
         // Start with an enabled mode
         ZenMode zenMode = new TestModeBuilder().setEnabled(true).build();
-        mController.updateZenMode(mPrefCategory, zenMode);
+        mController.updateZenMode(mPreference, zenMode);
 
         // Flip the switch
-        mConfigPreference.callChangeListener(false);
+        mPreference.callChangeListener(false);
         verify(mBackend, never()).updateMode(any());
 
         // Oh wait, I forgot to confirm! Let's do that
@@ -217,17 +223,17 @@
     public void onPreferenceChange_ifPressCancelButton_doesNotUpdateMode() {
         // Start with a disabled mode
         ZenMode zenMode = new TestModeBuilder().setEnabled(false).build();
-        mController.updateZenMode(mPrefCategory, zenMode);
+        mController.updateZenMode(mPreference, zenMode);
 
         // Flip the switch, then have second thoughts about it
-        mConfigPreference.callChangeListener(true);
+        mPreference.callChangeListener(true);
         ShadowAlertDialog.getLatestAlertDialog()
                 .getButton(AlertDialog.BUTTON_NEGATIVE).performClick();
         shadowOf(Looper.getMainLooper()).idle();
 
         // Verify nothing changed, and the switch shows the correct (pre-change) value.
         verify(mBackend, never()).updateMode(any());
-        assertThat(mConfigPreference.isChecked()).isFalse();
+        assertThat(mPreference.isChecked()).isFalse();
         assertThat(ShadowAlertDialog.getLatestAlertDialog().isShowing()).isFalse();
     }
 
@@ -235,16 +241,16 @@
     public void onPreferenceChange_ifExitingDialog_doesNotUpdateMode() {
         // Start with a disabled mode
         ZenMode zenMode = new TestModeBuilder().setEnabled(false).build();
-        mController.updateZenMode(mPrefCategory, zenMode);
+        mController.updateZenMode(mPreference, zenMode);
 
         // Flip the switch, but close the dialog without selecting either button.
-        mConfigPreference.callChangeListener(true);
+        mPreference.callChangeListener(true);
         ShadowAlertDialog.getLatestAlertDialog().dismiss();
         shadowOf(Looper.getMainLooper()).idle();
 
         // Verify nothing changed, and the switch shows the correct (pre-change) value.
         verify(mBackend, never()).updateMode(any());
-        assertThat(mConfigPreference.isChecked()).isFalse();
+        assertThat(mPreference.isChecked()).isFalse();
         assertThat(ShadowAlertDialog.getLatestAlertDialog().isShowing()).isFalse();
     }
 
@@ -260,15 +266,14 @@
                 .setTriggerDescription("My events")
                 .build();
 
-        mController.updateState(mPrefCategory, mode);
+        mController.updateState(mPreference, mode);
 
-        assertThat(mAddPreference.isVisible()).isFalse();
-        assertThat(mConfigPreference.isVisible()).isTrue();
-        assertThat(mConfigPreference.getTitle()).isEqualTo("Calendar events");
-        assertThat(mConfigPreference.getSummary()).isEqualTo("My events");
+        assertThat(mPreference.isVisible()).isTrue();
+        assertThat(mPreference.getTitle()).isEqualTo("Calendar events");
+        assertThat(mPreference.getSummary()).isEqualTo("My events");
         // Destination as written into the intent by SubSettingLauncher
         assertThat(
-                mConfigPreference.getIntent().getStringExtra(SettingsActivity.EXTRA_SHOW_FRAGMENT))
+                mPreference.getIntent().getStringExtra(SettingsActivity.EXTRA_SHOW_FRAGMENT))
                 .isEqualTo(ZenModeSetCalendarFragment.class.getName());
     }
 
@@ -285,39 +290,18 @@
                 .setTriggerDescription("some schedule")
                 .build();
 
-        mController.updateState(mPrefCategory, mode);
+        mController.updateState(mPreference, mode);
 
-        assertThat(mAddPreference.isVisible()).isFalse();
-        assertThat(mConfigPreference.isVisible()).isTrue();
-        assertThat(mConfigPreference.getTitle()).isEqualTo("1:00 AM - 3:00 PM");
-        assertThat(mConfigPreference.getSummary()).isEqualTo("Mon - Tue, Thu");
+        assertThat(mPreference.isVisible()).isTrue();
+        assertThat(mPreference.getTitle()).isEqualTo("1:00 AM - 3:00 PM");
+        assertThat(mPreference.getSummary()).isEqualTo("Mon - Tue, Thu");
         // Destination as written into the intent by SubSettingLauncher
         assertThat(
-                mConfigPreference.getIntent().getStringExtra(SettingsActivity.EXTRA_SHOW_FRAGMENT))
+                mPreference.getIntent().getStringExtra(SettingsActivity.EXTRA_SHOW_FRAGMENT))
                 .isEqualTo(ZenModeSetScheduleFragment.class.getName());
     }
 
     @Test
-    public void updateState_customManualRule() {
-        ZenMode mode = new TestModeBuilder()
-                .setConditionId(ZenModeConfig.toCustomManualConditionId())
-                .setPackage(SystemZenRules.PACKAGE_ANDROID)
-                .setType(TYPE_OTHER)
-                .setTriggerDescription("Will not be shown")
-                .build();
-
-        mController.updateState(mPrefCategory, mode);
-
-        assertThat(mConfigPreference.isVisible()).isFalse();
-        assertThat(mAddPreference.isVisible()).isTrue();
-        assertThat(mAddPreference.getTitle()).isEqualTo(
-                mContext.getString(R.string.zen_mode_select_schedule));
-        assertThat(mAddPreference.getSummary()).isNull();
-        // Sets up a click listener to open the dialog.
-        assertThat(mAddPreference.getOnPreferenceClickListener()).isNotNull();
-    }
-
-    @Test
     public void updateState_appWithConfigActivity_showsLinkToConfigActivity() {
         ZenMode mode = new TestModeBuilder()
                 .setPackage("some.package")
@@ -327,12 +311,12 @@
         when(mConfigurationActivityHelper.getConfigurationActivityIntentForMode(any(), any()))
                 .thenReturn(configurationIntent);
 
-        mController.updateState(mPrefCategory, mode);
+        mController.updateState(mPreference, mode);
 
-        assertThat(mConfigPreference.isVisible()).isTrue();
-        assertThat(mConfigPreference.getTitle()).isEqualTo("Linked to app");
-        assertThat(mConfigPreference.getSummary()).isEqualTo("When The Music's Over");
-        assertThat(mConfigPreference.getIntent()).isEqualTo(configurationIntent);
+        assertThat(mPreference.isVisible()).isTrue();
+        assertThat(mPreference.getTitle()).isEqualTo("Linked to app");
+        assertThat(mPreference.getSummary()).isEqualTo("When The Music's Over");
+        assertThat(mPreference.getIntent()).isEqualTo(configurationIntent);
     }
 
     @Test
@@ -344,12 +328,12 @@
         when(mConfigurationActivityHelper.getConfigurationActivityIntentForMode(any(), any()))
                 .thenReturn(null);
 
-        mController.updateState(mPrefCategory, mode);
+        mController.updateState(mPreference, mode);
 
-        assertThat(mConfigPreference.isVisible()).isTrue();
-        assertThat(mConfigPreference.getTitle()).isEqualTo("Linked to app");
-        assertThat(mConfigPreference.getSummary()).isEqualTo("When the saints go marching in");
-        assertThat(mConfigPreference.getIntent()).isNull();
+        assertThat(mPreference.isVisible()).isTrue();
+        assertThat(mPreference.getTitle()).isEqualTo("Linked to app");
+        assertThat(mPreference.getSummary()).isEqualTo("When the saints go marching in");
+        assertThat(mPreference.getIntent()).isNull();
     }
 
     @Test
@@ -362,11 +346,11 @@
                 .thenReturn(configurationIntent);
         when(mPm.getText(any(), anyInt(), any())).thenReturn("The App Name");
 
-        mController.updateState(mPrefCategory, mode);
+        mController.updateState(mPreference, mode);
 
-        assertThat(mConfigPreference.isVisible()).isTrue();
-        assertThat(mConfigPreference.getTitle()).isEqualTo("Linked to app");
-        assertThat(mConfigPreference.getSummary()).isEqualTo("Info and settings in The App Name");
+        assertThat(mPreference.isVisible()).isTrue();
+        assertThat(mPreference.getTitle()).isEqualTo("Linked to app");
+        assertThat(mPreference.getSummary()).isEqualTo("Info and settings in The App Name");
     }
 
     @Test
@@ -378,52 +362,10 @@
                 .thenReturn(null);
         when(mPm.getText(any(), anyInt(), any())).thenReturn("The App Name");
 
-        mController.updateState(mPrefCategory, mode);
+        mController.updateState(mPreference, mode);
 
-        assertThat(mConfigPreference.isVisible()).isTrue();
-        assertThat(mConfigPreference.getTitle()).isEqualTo("Linked to app");
-        assertThat(mConfigPreference.getSummary()).isEqualTo("Managed by The App Name");
-    }
-
-    @Test
-    public void onScheduleChosen_updatesMode() {
-        ZenMode originalMode = new TestModeBuilder()
-                .setConditionId(ZenModeConfig.toCustomManualConditionId())
-                .setPackage(SystemZenRules.PACKAGE_ANDROID)
-                .setType(TYPE_OTHER)
-                .setTriggerDescription("")
-                .build();
-        mController.updateZenMode(mPrefCategory, originalMode);
-
-        ZenModeConfig.ScheduleInfo scheduleInfo = new ZenModeConfig.ScheduleInfo();
-        scheduleInfo.days = new int[] { Calendar.MONDAY };
-        scheduleInfo.startHour = 12;
-        scheduleInfo.endHour = 15;
-        Uri scheduleUri = ZenModeConfig.toScheduleConditionId(scheduleInfo);
-
-        mController.mOnScheduleOptionListener.onScheduleSelected(scheduleUri);
-
-        // verify the backend got asked to update the mode to be schedule-based.
-        ArgumentCaptor<ZenMode> captor = ArgumentCaptor.forClass(ZenMode.class);
-        verify(mBackend).updateMode(captor.capture());
-        ZenMode updatedMode = captor.getValue();
-        assertThat(updatedMode.getType()).isEqualTo(TYPE_SCHEDULE_TIME);
-        assertThat(updatedMode.getRule().getConditionId()).isEqualTo(scheduleUri);
-        assertThat(updatedMode.getRule().getTriggerDescription()).isNotEmpty();
-        assertThat(updatedMode.getRule().getOwner()).isEqualTo(
-                ZenModeConfig.getScheduleConditionProvider());
-    }
-
-    static class CharSequenceTruth {
-        /**
-         * Shortcut version of {@link Truth#assertThat(String)} suitable for {@link CharSequence}.
-         * {@link CharSequence} doesn't necessarily provide a good {@code equals()} implementation;
-         * however we don't care about formatting here, so we want to assert on the resulting
-         * string (without needing to worry that {@code assertThat(x.getText().toString())} can
-         * throw if the text is null).
-         */
-        static StringSubject assertThat(@Nullable CharSequence actual) {
-            return Truth.assertThat((String) (actual != null ? actual.toString() : null));
-        }
+        assertThat(mPreference.isVisible()).isTrue();
+        assertThat(mPreference.getTitle()).isEqualTo("Linked to app");
+        assertThat(mPreference.getSummary()).isEqualTo("Managed by The App Name");
     }
 }
diff --git a/tests/robotests/src/com/android/settings/wifi/WifiConfigController2Test.java b/tests/robotests/src/com/android/settings/wifi/WifiConfigController2Test.java
index 7d96496..d985ee5 100644
--- a/tests/robotests/src/com/android/settings/wifi/WifiConfigController2Test.java
+++ b/tests/robotests/src/com/android/settings/wifi/WifiConfigController2Test.java
@@ -459,46 +459,45 @@
     public void loadMacRandomizedValue_shouldPersistentAsDefault() {
         final Spinner privacySetting = mView.findViewById(R.id.privacy_settings);
         final int prefPersist =
-                WifiPrivacyPreferenceController2.translateMacRandomizedValueToPrefValue(
-                        WifiConfiguration.RANDOMIZATION_PERSISTENT);
+                WifiPrivacyPreferenceController2.translateWifiEntryPrivacyToPrefValue(
+                        WifiEntry.PRIVACY_RANDOMIZED_MAC);
 
         assertThat(privacySetting.getVisibility()).isEqualTo(View.VISIBLE);
         assertThat(privacySetting.getSelectedItemPosition()).isEqualTo(prefPersist);
     }
 
     @Test
-    public void loadSavedMacRandomizedPersistentValue_shouldCorrectMacValue() {
-        checkSavedMacRandomizedValue(WifiConfiguration.RANDOMIZATION_PERSISTENT);
+    public void loadSavedPrivacyRandomizedMacValue_shouldCorrectMacValue() {
+        checkSavedMacRandomizedValue(WifiEntry.PRIVACY_RANDOMIZED_MAC);
     }
 
     @Test
-    public void loadSavedMacRandomizedNoneValue_shouldCorrectMacValue() {
-        checkSavedMacRandomizedValue(WifiConfiguration.RANDOMIZATION_NONE);
+    public void loadSavedPrivacyDeviceMacValue_shouldCorrectMacValue() {
+        checkSavedMacRandomizedValue(WifiEntry.PRIVACY_DEVICE_MAC);
     }
 
-    private void checkSavedMacRandomizedValue(int macRandomizedValue) {
+    private void checkSavedMacRandomizedValue(@WifiEntry.Privacy int privacy) {
         when(mWifiEntry.isSaved()).thenReturn(true);
         final WifiConfiguration mockWifiConfig = spy(new WifiConfiguration());
         when(mockWifiConfig.getIpConfiguration()).thenReturn(mock(IpConfiguration.class));
         when(mWifiEntry.getWifiConfiguration()).thenReturn(mockWifiConfig);
-        mockWifiConfig.macRandomizationSetting = macRandomizedValue;
+        when(mWifiEntry.getPrivacy()).thenReturn(privacy);
         createController(mWifiEntry, WifiConfigUiBase2.MODE_CONNECT, false);
 
         final Spinner privacySetting = mView.findViewById(R.id.privacy_settings);
         final int expectedPrefValue =
-                WifiPrivacyPreferenceController2.translateMacRandomizedValueToPrefValue(
-                        macRandomizedValue);
+                WifiPrivacyPreferenceController2.translateWifiEntryPrivacyToPrefValue(privacy);
 
         assertThat(privacySetting.getVisibility()).isEqualTo(View.VISIBLE);
         assertThat(privacySetting.getSelectedItemPosition()).isEqualTo(expectedPrefValue);
     }
 
     @Test
-    public void saveMacRandomizedValue_noChanged_shouldPersistentAsDefault() {
+    public void saveMacRandomizedValue_noChanged_shouldAutoAsDefault() {
         createController(mWifiEntry, WifiConfigUiBase2.MODE_CONNECT, false);
         WifiConfiguration config = mController.getConfig();
         assertThat(config.macRandomizationSetting).isEqualTo(
-                WifiConfiguration.RANDOMIZATION_PERSISTENT);
+                WifiConfiguration.RANDOMIZATION_AUTO);
     }
 
     @Test
@@ -506,7 +505,7 @@
         createController(mWifiEntry, WifiConfigUiBase2.MODE_CONNECT, false);
         final Spinner privacySetting = mView.findViewById(R.id.privacy_settings);
         final int prefMacNone =
-                WifiPrivacyPreferenceController2.translateMacRandomizedValueToPrefValue(
+                WifiPrivacyPreferenceController2.translateWifiEntryPrivacyToPrefValue(
                         WifiConfiguration.RANDOMIZATION_NONE);
         privacySetting.setSelection(prefMacNone);
 
diff --git a/tests/spa_unit/src/com/android/settings/network/SimOnboardingServiceTest.kt b/tests/spa_unit/src/com/android/settings/network/SimOnboardingServiceTest.kt
new file mode 100644
index 0000000..6f9029e
--- /dev/null
+++ b/tests/spa_unit/src/com/android/settings/network/SimOnboardingServiceTest.kt
@@ -0,0 +1,70 @@
+/*
+ * Copyright (C) 2024 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.
+ */
+
+package com.android.settings.network
+
+import android.telephony.SubscriptionInfo
+import androidx.test.ext.junit.runners.AndroidJUnit4
+import com.google.common.truth.Truth.assertThat
+import org.junit.Rule
+import org.junit.Test
+import org.junit.runner.RunWith
+
+@RunWith(AndroidJUnit4::class)
+class SimOnboardingServiceTest {
+
+    @Test
+    fun addItemForRenaming_addItemWithNewName_findItem() {
+        val simOnboardingService = SimOnboardingService()
+        val newName = "NewName"
+
+        simOnboardingService.addItemForRenaming(SUB_INFO_1, newName)
+
+        assertThat(simOnboardingService.renameMutableMap)
+            .containsEntry(SUB_INFO_1.subscriptionId, newName)
+    }
+
+    @Test
+    fun addItemForRenaming_sameNameAndItemNotInList_removeItem() {
+        val simOnboardingService = SimOnboardingService()
+
+        simOnboardingService.addItemForRenaming(SUB_INFO_1, DISPLAY_NAME_1)
+
+        assertThat(simOnboardingService.renameMutableMap)
+            .doesNotContainKey(SUB_INFO_1.subscriptionId)
+    }
+
+    @Test
+    fun addItemForRenaming_sameNameAndItemInList_removeItem() {
+        val simOnboardingService = SimOnboardingService()
+        simOnboardingService.renameMutableMap[SUB_INFO_1.subscriptionId] = "NewName"
+
+        simOnboardingService.addItemForRenaming(SUB_INFO_1, DISPLAY_NAME_1)
+
+        assertThat(simOnboardingService.renameMutableMap)
+            .doesNotContainKey(SUB_INFO_1.subscriptionId)
+    }
+
+    private companion object {
+        const val SUB_ID_1 = 1
+        const val DISPLAY_NAME_1 = "Sub 1"
+
+        val SUB_INFO_1: SubscriptionInfo = SubscriptionInfo.Builder().apply {
+            setId(SUB_ID_1)
+            setDisplayName(DISPLAY_NAME_1)
+        }.build()
+    }
+}
\ No newline at end of file
diff --git a/tests/spa_unit/src/com/android/settings/wifi/details2/WifiPrivacyPreferenceController2Test.kt b/tests/spa_unit/src/com/android/settings/wifi/details2/WifiPrivacyPreferenceController2Test.kt
index cb1f997..9260409 100644
--- a/tests/spa_unit/src/com/android/settings/wifi/details2/WifiPrivacyPreferenceController2Test.kt
+++ b/tests/spa_unit/src/com/android/settings/wifi/details2/WifiPrivacyPreferenceController2Test.kt
@@ -59,7 +59,7 @@
 
         controller.updateState(preference)
 
-        val prefValue = WifiPrivacyPreferenceController2.translateMacRandomizedValueToPrefValue(
+        val prefValue = WifiPrivacyPreferenceController2.translateWifiEntryPrivacyToPrefValue(
             WifiEntry.PRIVACY_DEVICE_MAC
         )
         assertThat(preference.entry).isEqualTo(preferenceStrings[prefValue])
@@ -73,7 +73,7 @@
 
         controller.updateState(preference)
 
-        val prefValue = WifiPrivacyPreferenceController2.translateMacRandomizedValueToPrefValue(
+        val prefValue = WifiPrivacyPreferenceController2.translateWifiEntryPrivacyToPrefValue(
             WifiEntry.PRIVACY_RANDOMIZED_MAC
         )
         assertThat(preference.entry).isEqualTo(preferenceStrings[prefValue])
diff --git a/tests/unit/src/com/android/settings/wifi/dpp/AdbQrCodeTest.java b/tests/unit/src/com/android/settings/wifi/dpp/AdbQrCodeTest.java
new file mode 100644
index 0000000..44f6c56
--- /dev/null
+++ b/tests/unit/src/com/android/settings/wifi/dpp/AdbQrCodeTest.java
@@ -0,0 +1,65 @@
+/*
+ * Copyright (C) 2024 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.
+ */
+package com.android.settings.wifi.dpp;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import androidx.test.ext.junit.runners.AndroidJUnit4;
+
+import org.junit.Test;
+import org.junit.runner.RunWith;
+
+@RunWith(AndroidJUnit4.class)
+public class AdbQrCodeTest {
+    @Test
+    public void testZxParsing_validCode() {
+        WifiNetworkConfig config = new AdbQrCode(
+                "WIFI:S:reallyLONGone;T:ADB;P:somepasswo#%^**123rd").getWifiNetworkConfig();
+        assertThat(config.getSsid()).isEqualTo("reallyLONGone");
+        assertThat(config.getSecurity()).isEqualTo("ADB");
+        assertThat(config.getPreSharedKey()).isEqualTo("somepasswo#%^**123rd");
+
+        config = new AdbQrCode("WIFI:S:anotherone;T:ADB;P:3#=3j9asicla").getWifiNetworkConfig();
+        assertThat(config.getSsid()).isEqualTo("anotherone");
+        assertThat(config.getSecurity()).isEqualTo("ADB");
+        assertThat(config.getPreSharedKey()).isEqualTo("3#=3j9asicla");
+
+        config = new AdbQrCode("WIFI:S:xx;T:ADB;P:a").getWifiNetworkConfig();
+        assertThat(config.getSsid()).isEqualTo("xx");
+        assertThat(config.getSecurity()).isEqualTo("ADB");
+        assertThat(config.getPreSharedKey()).isEqualTo("a");
+    }
+
+    @Test
+    public void testZxParsing_invalidCodeButShouldWork() {
+        WifiNetworkConfig config = new AdbQrCode(
+                "WIFI:S:reallyLONGone;T:ADB; P:somepassword").getWifiNetworkConfig();
+        assertThat(config.getSsid()).isEqualTo("reallyLONGone");
+        assertThat(config.getSecurity()).isEqualTo("ADB");
+        assertThat(config.getPreSharedKey()).isEqualTo("somepassword");
+
+        config = new AdbQrCode("WIFI: S:anotherone;T:ADB;P:abcdefghihklmn").getWifiNetworkConfig();
+        assertThat(config.getSsid()).isEqualTo("anotherone");
+        assertThat(config.getSecurity()).isEqualTo("ADB");
+        assertThat(config.getPreSharedKey()).isEqualTo("abcdefghihklmn");
+
+        config = new AdbQrCode("WIFI: S:xx; T:ADB;   P:a").getWifiNetworkConfig();
+        assertThat(config.getSsid()).isEqualTo("xx");
+        assertThat(config.getSecurity()).isEqualTo("ADB");
+        assertThat(config.getPreSharedKey()).isEqualTo("a");
+    }
+}
+
diff --git a/tests/unit/src/com/android/settings/wifi/dpp/OWNERS b/tests/unit/src/com/android/settings/wifi/dpp/OWNERS
new file mode 100644
index 0000000..84ec8a1
--- /dev/null
+++ b/tests/unit/src/com/android/settings/wifi/dpp/OWNERS
@@ -0,0 +1,2 @@
+per-file AdbQrCodeTest.java=set noparent
+per-file AdbQrCodeTest.java=file:platform/packages/modules/adb:/OWNERS
