From 857296e8fb529078c9a9475eed361017f2fa2716 Mon Sep 17 00:00:00 2001 From: william Date: Wed, 27 Jan 2021 00:50:40 -0700 Subject: [PATCH] Adding uncompressed vendor and disclosure info --- ...oid Release Security Acknowledgements.html | 2299 +++ .../analytics-iframe.html | 14 + .../analytics_library.js | 67 + .../analytics-iframe_data/gtm.js | 839 + .../app.css | 1 + .../app_loader.js | 126 + .../css.css | 559 + .../devsite_app_module.js | 859 + .../devsite_devsite_a11y_announce_module.js | 2 + .../devsite_devsite_analytics_module.js | 341 + .../devsite_devsite_book_nav_module.js | 14 + .../devsite_devsite_content_module.js | 9 + .../devsite_devsite_expandable_nav_module.js | 6 + ...devsite_devsite_footer_linkboxes_module.js | 1 + .../devsite_devsite_footer_promos_module.js | 1 + .../devsite_devsite_footer_utility_module.js | 1 + .../devsite_devsite_header_module.js | 18 + .../devsite_devsite_heading_link_module.js | 3 + ...evsite_devsite_language_selector_module.js | 8 + .../devsite_devsite_page_rating_module.js | 15 + .../devsite_devsite_progress_module.js | 2 + .../devsite_devsite_search_module.js | 39 + .../devsite_devsite_select_module.js | 15 + .../devsite_devsite_sitemask_module.js | 3 + .../devsite_devsite_snackbar_module.js | 13 + .../devsite_devsite_spinner_module.js | 2 + .../devsite_devsite_tabs_module.js | 18 + .../devsite_devsite_toc_module.js | 15 + .../devsite_devsite_tooltip_module.js | 6 + .../devsite_devsite_user_module.js | 76 + .../lockup.svg | 4 + .../webcomponents-lite.js | 353 + ...tember 2019 Android Open Source Project.html | 2602 ++++ .../analytics-iframe.html | 14 + .../analytics-iframe_data/analytics_library.js | 67 + .../analytics-iframe_data/gtm.js | 839 + .../app.css | 1 + .../app_loader.js | 126 + .../css.css | 559 + .../devsite_app_module.js | 859 + .../devsite_devsite_a11y_announce_module.js | 2 + .../devsite_devsite_analytics_module.js | 341 + .../devsite_devsite_book_nav_module.js | 14 + .../devsite_devsite_content_module.js | 9 + .../devsite_devsite_expandable_nav_module.js | 6 + .../devsite_devsite_footer_linkboxes_module.js | 1 + .../devsite_devsite_footer_promos_module.js | 1 + .../devsite_devsite_footer_utility_module.js | 1 + .../devsite_devsite_header_module.js | 18 + .../devsite_devsite_heading_link_module.js | 3 + .../devsite_devsite_language_selector_module.js | 8 + .../devsite_devsite_page_rating_module.js | 15 + .../devsite_devsite_progress_module.js | 2 + .../devsite_devsite_search_module.js | 39 + .../devsite_devsite_select_module.js | 15 + .../devsite_devsite_sitemask_module.js | 3 + .../devsite_devsite_snackbar_module.js | 13 + .../devsite_devsite_spinner_module.js | 2 + .../devsite_devsite_tabs_module.js | 18 + .../devsite_devsite_toc_module.js | 15 + .../devsite_devsite_tooltip_module.js | 6 + .../devsite_devsite_user_module.js | 76 + .../lockup.svg | 4 + .../webcomponents-lite.js | 353 + ... 13.6 and iPadOS 13.6 - Apple Support.html | 1073 ++ .../FujiStitchPath.js | 1 + .../ac-globalfooter.css | 1 + .../ac-globalnav.css | 1 + .../ac-globalnav.js | 5 + .../accs-offer.css | 89 + .../accsoffer.js | 529 + .../app-ht-route.js | 1 + .../app-ht.css | 1 + .../divider.png | Bin 0 -> 87 bytes .../fonts.css | 221 + .../launch.js | 14 + .../nn.js | 3 + ... 14.0 and iPadOS 14.0 - Apple Support.html | 1108 ++ .../FujiStitchPath.js | 1 + .../ac-globalfooter.css | 1 + .../ac-globalnav.css | 1 + .../ac-globalnav.js | 5 + .../accs-offer.css | 89 + .../accsoffer.js | 529 + .../app-ht-route.js | 1 + .../app-ht.css | 1 + .../divider.png | Bin 0 -> 87 bytes .../fonts.css | 221 + .../launch.js | 14 + .../nn.js | 3 + ... macOS Big Sur 11.0.1 - Apple Support.html | 1483 ++ .../FujiStitchPath.js | 1 + .../ac-globalfooter.css | 1 + .../ac-globalnav.css | 1 + .../ac-globalnav.js | 5 + .../accs-offer.css | 89 + .../accsoffer.js | 529 + .../app-ht-route.js | 1 + .../app-ht.css | 1 + .../divider.png | Bin 0 -> 87 bytes .../fonts.css | 221 + .../launch.js | 14 + .../nn.js | 3 + ... 2020-004 High Sierra - Apple Support.html | 1150 ++ .../FujiStitchPath.js | 1 + .../ac-globalfooter.css | 1 + .../ac-globalnav.css | 1 + .../ac-globalnav.js | 5 + .../accs-offer.css | 89 + .../accsoffer.js | 529 + .../app-ht-route.js | 1 + .../app-ht.css | 1 + .../divider.png | Bin 0 -> 87 bytes .../fonts.css | 221 + .../launch.js | 14 + .../nn.js | 3 + ...ontent of tvOS 13.4.8 - Apple Support.html | 1005 ++ .../FujiStitchPath.js | 1 + .../ac-globalfooter.css | 1 + .../ac-globalnav.css | 1 + .../ac-globalnav.js | 5 + .../accs-offer.css | 89 + .../accsoffer.js | 529 + .../app-ht-route.js | 1 + .../app-ht.css | 1 + .../divider.png | Bin 0 -> 87 bytes .../fonts.css | 221 + .../launch.js | 14 + .../nn.js | 3 + ...l IP · mullvad_mullvadvpn-app@ef58862.html | 2637 ++++ .../15262083.png | Bin 0 -> 1535 bytes .../15262083_002.png | Bin 0 -> 1535 bytes .../15262083_003.png | Bin 0 -> 1535 bytes .../332294.jpg | Bin 0 -> 1834 bytes .../behaviors-08016a51.js | 19 + ...aviors-152400ab410cb387f3b645589da1bab5.css | 7 + .../chunk-frameworks-39ff961b.js | 2 + .../chunk-vendor-ec6bcae2.js | 163 + .../diffs-021875bc.js | 2 + .../environment-f0adafbf.js | 2 + ...eworks-93d34cfdadb1618eb00917161bb7f744.css | 15 + ...github-003c4118ffbf123b9fde175f5edd433c.css | 7 + .../search-key-slash.svg | 5 + ...behavior got changed slightly' - MARC.html | 56 + .../style.css | 2 + ...aws found in OpenVPN software OpenVPN.html | 822 + .../a.html | 2 + .../a11y.js | 2 + .../all.css | 5 + .../anchor.html | 184 + .../anchor_data/a.html | 2 + ...IdM78Rqudzm1I6f88QVtMwaC_X1WJ6BAe-DmqXo.js | 1 + .../anchor_data/styles__ltr.css | 1 + .../api.js | 1 + .../autocomplete.js | 11 + .../bootstrap.js | 7 + .../core.js | 11 + .../custom-vinny.js | 184 + .../detect-ie.js | 30 + .../dom-ready.js | 2 + .../fonts.css | 486 + .../frontend.js | 1 + .../frontend_002.js | 501 + .../frontend_003.js | 89 + .../frontend_004.js | 76 + .../gtm.js | 43 + .../i18n.js | 2 + .../jquery.js | 4 + .../jquery_002.js | 14 + .../jquery_003.js | 65 + .../jquery_004.js | 6 + .../js.js | 8 + .../menu.js | 11 + .../popper.js | 5 + .../position.js | 11 + .../recaptcha__en.js | 684 + .../script.js | 53 + .../scripts.js | 527 + .../site.css | 12888 ++++++++++++++++ .../site.js | 128 + .../style.css | 11 + .../styles.css | 111 + .../vinnyfollow.js | 447 + .../widget.js | 11 + .../wp-embed.js | 2 + .../wp-emoji-release.js | 5 + .../wp-polyfill.js | 1 + ...spite CVE-2019-14899 - ProtonVPN Blog.html | 1021 ++ .../anti-spam-5.js | 73 + .../bootstrap.js | 2 + .../comment-reply.js | 2 + .../fongit-logo.png | Bin 0 -> 1950 bytes .../font-awesome.css | 4 + .../frontend.js | 10 + .../functions.js | 152 + .../ie10-viewport-bug-workaround.js | 8 + .../jquery-migrate.js | 2 + .../jquery.js | 6 + .../protonmail-sign-white.png | Bin 0 -> 503 bytes .../protonmail-white-transparent.svg | 1 + .../protonvpn-white-transparent.svg | 1 + .../style.css | 20 + .../style_002.css | 11 + .../vpn-icon.png | Bin 0 -> 3141 bytes .../wp-embed.js | 2 + .../wp-emoji-release.js | 5 + .../wpum.css | 5 + ...QubesOS_qubes-core-agent-linux@74f5fb5.html | 2119 +++ .../15262083.png | Bin 0 -> 1535 bytes .../15262083_002.png | Bin 0 -> 1535 bytes .../15262083_003.png | Bin 0 -> 1535 bytes .../6395399.jpg | Bin 0 -> 1738 bytes .../6395399_002.jpg | Bin 0 -> 1765 bytes .../726704.jpg | Bin 0 -> 1874 bytes .../behaviors-08016a51.js | 19 + ...aviors-152400ab410cb387f3b645589da1bab5.css | 7 + .../chunk-frameworks-39ff961b.js | 2 + .../chunk-vendor-ec6bcae2.js | 163 + .../diffs-021875bc.js | 2 + .../environment-f0adafbf.js | 2 + ...eworks-93d34cfdadb1618eb00917161bb7f744.css | 15 + ...github-003c4118ffbf123b9fde175f5edd433c.css | 7 + .../search-key-slash.svg | 5 + ...E-2019-14899- Red Hat Customer Portal.html | 1374 ++ .../app.css | 1 + .../app.js | 2 + .../avatars.js | 2 + .../bootstrap-grid.css | 1 + .../bootstrap.css | 4 + .../chosen.css | 509 + .../chunk-vendors.js | 18 + .../components.css | 1 + .../cp-search-autocomplete.js | 261 + .../custom-elements-es5-adapter.js | 15 + .../data-action.js | 2 + .../datetime-moment.js | 74 + .../drupal-admin-drawer.js | 2 + .../dtm.js | 13 + .../get.svg | 1 + .../get_002.svg | 3 + .../handlebars.js | 27 + .../ieSVGfix.js | 2 + .../introjs.js | 2 + .../jquery.js | 181 + .../main.css | 1 + .../moment.js | 4506 ++++++ .../notice | 66 + .../notice_002 | 71 + .../pages.css | 1 + .../pfe-accordion.js | 2 + .../pfe-autocomplete.js | 725 + .../pfe-datetime.js | 2 + .../pfe-markdown.js | 2 + .../pfe-progress-indicator.js | 2 + .../pfe-tabs.js | 2 + .../pfe.js | 2 + .../pfelement.js | 635 + .../require.js | 2 + .../require_002.js | 2 + .../rh-summit-red-a.svg | 535 + .../rh.js | 13 + .../rhn-modal.js | 2 + .../status-widget.js | 2 + .../templates.js | 185 + .../tour.js | 2 + .../trustarc.js | 126 + .../v1.7-193 | 135 + .../wc.js | 2 + .../webcomponents-bundle.js | 321 + ...TCP connections' - Jason A. Donenfeld.html | 125 + .../216dark.css | 51 + .../216light.css | 50 + 272 files changed, 56013 insertions(+) create mode 100644 vendor-patches/Android/Android Release Security Acknowledgements.html create mode 100644 vendor-patches/Android/Android Release Security Acknowledgements_files/analytics-iframe.html create mode 100644 vendor-patches/Android/Android Release Security Acknowledgements_files/analytics-iframe_data/analytics_library.js create mode 100644 vendor-patches/Android/Android Release Security Acknowledgements_files/analytics-iframe_data/gtm.js create mode 100644 vendor-patches/Android/Android Release Security Acknowledgements_files/app.css create mode 100644 vendor-patches/Android/Android Release Security Acknowledgements_files/app_loader.js create mode 100644 vendor-patches/Android/Android Release Security Acknowledgements_files/css.css create mode 100644 vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_app_module.js create mode 100644 vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_a11y_announce_module.js create mode 100644 vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_analytics_module.js create mode 100644 vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_book_nav_module.js create mode 100644 vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_content_module.js create mode 100644 vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_expandable_nav_module.js create mode 100644 vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_footer_linkboxes_module.js create mode 100644 vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_footer_promos_module.js create mode 100644 vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_footer_utility_module.js create mode 100644 vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_header_module.js create mode 100644 vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_heading_link_module.js create mode 100644 vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_language_selector_module.js create mode 100644 vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_page_rating_module.js create mode 100644 vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_progress_module.js create mode 100644 vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_search_module.js create mode 100644 vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_select_module.js create mode 100644 vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_sitemask_module.js create mode 100644 vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_snackbar_module.js create mode 100644 vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_spinner_module.js create mode 100644 vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_tabs_module.js create mode 100644 vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_toc_module.js create mode 100644 vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_tooltip_module.js create mode 100644 vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_user_module.js create mode 100644 vendor-patches/Android/Android Release Security Acknowledgements_files/lockup.svg create mode 100644 vendor-patches/Android/Android Release Security Acknowledgements_files/webcomponents-lite.js create mode 100644 vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project.html create mode 100644 vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/analytics-iframe.html create mode 100644 vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/analytics-iframe_data/analytics_library.js create mode 100644 vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/analytics-iframe_data/gtm.js create mode 100644 vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/app.css create mode 100644 vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/app_loader.js create mode 100644 vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/css.css create mode 100644 vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_app_module.js create mode 100644 vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_a11y_announce_module.js create mode 100644 vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_analytics_module.js create mode 100644 vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_book_nav_module.js create mode 100644 vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_content_module.js create mode 100644 vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_expandable_nav_module.js create mode 100644 vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_footer_linkboxes_module.js create mode 100644 vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_footer_promos_module.js create mode 100644 vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_footer_utility_module.js create mode 100644 vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_header_module.js create mode 100644 vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_heading_link_module.js create mode 100644 vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_language_selector_module.js create mode 100644 vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_page_rating_module.js create mode 100644 vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_progress_module.js create mode 100644 vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_search_module.js create mode 100644 vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_select_module.js create mode 100644 vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_sitemask_module.js create mode 100644 vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_snackbar_module.js create mode 100644 vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_spinner_module.js create mode 100644 vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_tabs_module.js create mode 100644 vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_toc_module.js create mode 100644 vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_tooltip_module.js create mode 100644 vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_user_module.js create mode 100644 vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/lockup.svg create mode 100644 vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/webcomponents-lite.js create mode 100644 vendor-patches/Apple/About the security content of iOS 13.6 and iPadOS 13.6 - Apple Support.html create mode 100644 vendor-patches/Apple/About the security content of iOS 13.6 and iPadOS 13.6 - Apple Support_files/FujiStitchPath.js create mode 100644 vendor-patches/Apple/About the security content of iOS 13.6 and iPadOS 13.6 - Apple Support_files/ac-globalfooter.css create mode 100644 vendor-patches/Apple/About the security content of iOS 13.6 and iPadOS 13.6 - Apple Support_files/ac-globalnav.css create mode 100644 vendor-patches/Apple/About the security content of iOS 13.6 and iPadOS 13.6 - Apple Support_files/ac-globalnav.js create mode 100644 vendor-patches/Apple/About the security content of iOS 13.6 and iPadOS 13.6 - Apple Support_files/accs-offer.css create mode 100644 vendor-patches/Apple/About the security content of iOS 13.6 and iPadOS 13.6 - Apple Support_files/accsoffer.js create mode 100644 vendor-patches/Apple/About the security content of iOS 13.6 and iPadOS 13.6 - Apple Support_files/app-ht-route.js create mode 100644 vendor-patches/Apple/About the security content of iOS 13.6 and iPadOS 13.6 - Apple Support_files/app-ht.css create mode 100644 vendor-patches/Apple/About the security content of iOS 13.6 and iPadOS 13.6 - Apple Support_files/divider.png create mode 100644 vendor-patches/Apple/About the security content of iOS 13.6 and iPadOS 13.6 - Apple Support_files/fonts.css create mode 100644 vendor-patches/Apple/About the security content of iOS 13.6 and iPadOS 13.6 - Apple Support_files/launch.js create mode 100644 vendor-patches/Apple/About the security content of iOS 13.6 and iPadOS 13.6 - Apple Support_files/nn.js create mode 100644 vendor-patches/Apple/About the security content of iOS 14.0 and iPadOS 14.0 - Apple Support.html create mode 100644 vendor-patches/Apple/About the security content of iOS 14.0 and iPadOS 14.0 - Apple Support_files/FujiStitchPath.js create mode 100644 vendor-patches/Apple/About the security content of iOS 14.0 and iPadOS 14.0 - Apple Support_files/ac-globalfooter.css create mode 100644 vendor-patches/Apple/About the security content of iOS 14.0 and iPadOS 14.0 - Apple Support_files/ac-globalnav.css create mode 100644 vendor-patches/Apple/About the security content of iOS 14.0 and iPadOS 14.0 - Apple Support_files/ac-globalnav.js create mode 100644 vendor-patches/Apple/About the security content of iOS 14.0 and iPadOS 14.0 - Apple Support_files/accs-offer.css create mode 100644 vendor-patches/Apple/About the security content of iOS 14.0 and iPadOS 14.0 - Apple Support_files/accsoffer.js create mode 100644 vendor-patches/Apple/About the security content of iOS 14.0 and iPadOS 14.0 - Apple Support_files/app-ht-route.js create mode 100644 vendor-patches/Apple/About the security content of iOS 14.0 and iPadOS 14.0 - Apple Support_files/app-ht.css create mode 100644 vendor-patches/Apple/About the security content of iOS 14.0 and iPadOS 14.0 - Apple Support_files/divider.png create mode 100644 vendor-patches/Apple/About the security content of iOS 14.0 and iPadOS 14.0 - Apple Support_files/fonts.css create mode 100644 vendor-patches/Apple/About the security content of iOS 14.0 and iPadOS 14.0 - Apple Support_files/launch.js create mode 100644 vendor-patches/Apple/About the security content of iOS 14.0 and iPadOS 14.0 - Apple Support_files/nn.js create mode 100644 vendor-patches/Apple/About the security content of macOS Big Sur 11.0.1 - Apple Support.html create mode 100644 vendor-patches/Apple/About the security content of macOS Big Sur 11.0.1 - Apple Support_files/FujiStitchPath.js create mode 100644 vendor-patches/Apple/About the security content of macOS Big Sur 11.0.1 - Apple Support_files/ac-globalfooter.css create mode 100644 vendor-patches/Apple/About the security content of macOS Big Sur 11.0.1 - Apple Support_files/ac-globalnav.css create mode 100644 vendor-patches/Apple/About the security content of macOS Big Sur 11.0.1 - Apple Support_files/ac-globalnav.js create mode 100644 vendor-patches/Apple/About the security content of macOS Big Sur 11.0.1 - Apple Support_files/accs-offer.css create mode 100644 vendor-patches/Apple/About the security content of macOS Big Sur 11.0.1 - Apple Support_files/accsoffer.js create mode 100644 vendor-patches/Apple/About the security content of macOS Big Sur 11.0.1 - Apple Support_files/app-ht-route.js create mode 100644 vendor-patches/Apple/About the security content of macOS Big Sur 11.0.1 - Apple Support_files/app-ht.css create mode 100644 vendor-patches/Apple/About the security content of macOS Big Sur 11.0.1 - Apple Support_files/divider.png create mode 100644 vendor-patches/Apple/About the security content of macOS Big Sur 11.0.1 - Apple Support_files/fonts.css create mode 100644 vendor-patches/Apple/About the security content of macOS Big Sur 11.0.1 - Apple Support_files/launch.js create mode 100644 vendor-patches/Apple/About the security content of macOS Big Sur 11.0.1 - Apple Support_files/nn.js create mode 100644 vendor-patches/Apple/About the security content of macOS Catalina 10.15.6, Security Update 2020-004 Mojave, Security Update 2020-004 High Sierra - Apple Support.html create mode 100644 vendor-patches/Apple/About the security content of macOS Catalina 10.15.6, Security Update 2020-004 Mojave, Security Update 2020-004 High Sierra - Apple Support_files/FujiStitchPath.js create mode 100644 vendor-patches/Apple/About the security content of macOS Catalina 10.15.6, Security Update 2020-004 Mojave, Security Update 2020-004 High Sierra - Apple Support_files/ac-globalfooter.css create mode 100644 vendor-patches/Apple/About the security content of macOS Catalina 10.15.6, Security Update 2020-004 Mojave, Security Update 2020-004 High Sierra - Apple Support_files/ac-globalnav.css create mode 100644 vendor-patches/Apple/About the security content of macOS Catalina 10.15.6, Security Update 2020-004 Mojave, Security Update 2020-004 High Sierra - Apple Support_files/ac-globalnav.js create mode 100644 vendor-patches/Apple/About the security content of macOS Catalina 10.15.6, Security Update 2020-004 Mojave, Security Update 2020-004 High Sierra - Apple Support_files/accs-offer.css create mode 100644 vendor-patches/Apple/About the security content of macOS Catalina 10.15.6, Security Update 2020-004 Mojave, Security Update 2020-004 High Sierra - Apple Support_files/accsoffer.js create mode 100644 vendor-patches/Apple/About the security content of macOS Catalina 10.15.6, Security Update 2020-004 Mojave, Security Update 2020-004 High Sierra - Apple Support_files/app-ht-route.js create mode 100644 vendor-patches/Apple/About the security content of macOS Catalina 10.15.6, Security Update 2020-004 Mojave, Security Update 2020-004 High Sierra - Apple Support_files/app-ht.css create mode 100644 vendor-patches/Apple/About the security content of macOS Catalina 10.15.6, Security Update 2020-004 Mojave, Security Update 2020-004 High Sierra - Apple Support_files/divider.png create mode 100644 vendor-patches/Apple/About the security content of macOS Catalina 10.15.6, Security Update 2020-004 Mojave, Security Update 2020-004 High Sierra - Apple Support_files/fonts.css create mode 100644 vendor-patches/Apple/About the security content of macOS Catalina 10.15.6, Security Update 2020-004 Mojave, Security Update 2020-004 High Sierra - Apple Support_files/launch.js create mode 100644 vendor-patches/Apple/About the security content of macOS Catalina 10.15.6, Security Update 2020-004 Mojave, Security Update 2020-004 High Sierra - Apple Support_files/nn.js create mode 100644 vendor-patches/Apple/About the security content of tvOS 13.4.8 - Apple Support.html create mode 100644 vendor-patches/Apple/About the security content of tvOS 13.4.8 - Apple Support_files/FujiStitchPath.js create mode 100644 vendor-patches/Apple/About the security content of tvOS 13.4.8 - Apple Support_files/ac-globalfooter.css create mode 100644 vendor-patches/Apple/About the security content of tvOS 13.4.8 - Apple Support_files/ac-globalnav.css create mode 100644 vendor-patches/Apple/About the security content of tvOS 13.4.8 - Apple Support_files/ac-globalnav.js create mode 100644 vendor-patches/Apple/About the security content of tvOS 13.4.8 - Apple Support_files/accs-offer.css create mode 100644 vendor-patches/Apple/About the security content of tvOS 13.4.8 - Apple Support_files/accsoffer.js create mode 100644 vendor-patches/Apple/About the security content of tvOS 13.4.8 - Apple Support_files/app-ht-route.js create mode 100644 vendor-patches/Apple/About the security content of tvOS 13.4.8 - Apple Support_files/app-ht.css create mode 100644 vendor-patches/Apple/About the security content of tvOS 13.4.8 - Apple Support_files/divider.png create mode 100644 vendor-patches/Apple/About the security content of tvOS 13.4.8 - Apple Support_files/fonts.css create mode 100644 vendor-patches/Apple/About the security content of tvOS 13.4.8 - Apple Support_files/launch.js create mode 100644 vendor-patches/Apple/About the security content of tvOS 13.4.8 - Apple Support_files/nn.js create mode 100644 vendor-patches/Mullvad/Stop CVE-2019-14899 by dropping packets to tunnel IP · mullvad_mullvadvpn-app@ef58862.html create mode 100644 vendor-patches/Mullvad/Stop CVE-2019-14899 by dropping packets to tunnel IP · mullvad_mullvadvpn-app@ef58862_files/15262083.png create mode 100644 vendor-patches/Mullvad/Stop CVE-2019-14899 by dropping packets to tunnel IP · mullvad_mullvadvpn-app@ef58862_files/15262083_002.png create mode 100644 vendor-patches/Mullvad/Stop CVE-2019-14899 by dropping packets to tunnel IP · mullvad_mullvadvpn-app@ef58862_files/15262083_003.png create mode 100644 vendor-patches/Mullvad/Stop CVE-2019-14899 by dropping packets to tunnel IP · mullvad_mullvadvpn-app@ef58862_files/332294.jpg create mode 100644 vendor-patches/Mullvad/Stop CVE-2019-14899 by dropping packets to tunnel IP · mullvad_mullvadvpn-app@ef58862_files/behaviors-08016a51.js create mode 100644 vendor-patches/Mullvad/Stop CVE-2019-14899 by dropping packets to tunnel IP · mullvad_mullvadvpn-app@ef58862_files/behaviors-152400ab410cb387f3b645589da1bab5.css create mode 100644 vendor-patches/Mullvad/Stop CVE-2019-14899 by dropping packets to tunnel IP · mullvad_mullvadvpn-app@ef58862_files/chunk-frameworks-39ff961b.js create mode 100644 vendor-patches/Mullvad/Stop CVE-2019-14899 by dropping packets to tunnel IP · mullvad_mullvadvpn-app@ef58862_files/chunk-vendor-ec6bcae2.js create mode 100644 vendor-patches/Mullvad/Stop CVE-2019-14899 by dropping packets to tunnel IP · mullvad_mullvadvpn-app@ef58862_files/diffs-021875bc.js create mode 100644 vendor-patches/Mullvad/Stop CVE-2019-14899 by dropping packets to tunnel IP · mullvad_mullvadvpn-app@ef58862_files/environment-f0adafbf.js create mode 100644 vendor-patches/Mullvad/Stop CVE-2019-14899 by dropping packets to tunnel IP · mullvad_mullvadvpn-app@ef58862_files/frameworks-93d34cfdadb1618eb00917161bb7f744.css create mode 100644 vendor-patches/Mullvad/Stop CVE-2019-14899 by dropping packets to tunnel IP · mullvad_mullvadvpn-app@ef58862_files/github-003c4118ffbf123b9fde175f5edd433c.css create mode 100644 vendor-patches/Mullvad/Stop CVE-2019-14899 by dropping packets to tunnel IP · mullvad_mullvadvpn-app@ef58862_files/search-key-slash.svg create mode 100644 vendor-patches/OpenBSD/'attention please host's IP stack behavior got changed slightly' - MARC.html create mode 100644 vendor-patches/OpenBSD/'attention please host's IP stack behavior got changed slightly' - MARC_files/style.css create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN.html create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/a.html create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/a11y.js create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/all.css create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/anchor.html create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/anchor_data/a.html create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/anchor_data/pOKpIdM78Rqudzm1I6f88QVtMwaC_X1WJ6BAe-DmqXo.js create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/anchor_data/styles__ltr.css create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/api.js create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/autocomplete.js create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/bootstrap.js create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/core.js create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/custom-vinny.js create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/detect-ie.js create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/dom-ready.js create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/fonts.css create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/frontend.js create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/frontend_002.js create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/frontend_003.js create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/frontend_004.js create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/gtm.js create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/i18n.js create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/jquery.js create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/jquery_002.js create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/jquery_003.js create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/jquery_004.js create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/js.js create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/menu.js create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/popper.js create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/position.js create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/recaptcha__en.js create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/script.js create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/scripts.js create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/site.css create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/site.js create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/style.css create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/styles.css create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/vinnyfollow.js create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/widget.js create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/wp-embed.js create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/wp-emoji-release.js create mode 100644 vendor-patches/OpenVPN/No flaws found in OpenVPN software OpenVPN_files/wp-polyfill.js create mode 100644 vendor-patches/ProtonVPN/Stay safe on ProtonVPN despite CVE-2019-14899 - ProtonVPN Blog.html create mode 100644 vendor-patches/ProtonVPN/Stay safe on ProtonVPN despite CVE-2019-14899 - ProtonVPN Blog_files/anti-spam-5.js create mode 100644 vendor-patches/ProtonVPN/Stay safe on ProtonVPN despite CVE-2019-14899 - ProtonVPN Blog_files/bootstrap.js create mode 100644 vendor-patches/ProtonVPN/Stay safe on ProtonVPN despite CVE-2019-14899 - ProtonVPN Blog_files/comment-reply.js create mode 100644 vendor-patches/ProtonVPN/Stay safe on ProtonVPN despite CVE-2019-14899 - ProtonVPN Blog_files/fongit-logo.png create mode 100644 vendor-patches/ProtonVPN/Stay safe on ProtonVPN despite CVE-2019-14899 - ProtonVPN Blog_files/font-awesome.css create mode 100644 vendor-patches/ProtonVPN/Stay safe on ProtonVPN despite CVE-2019-14899 - ProtonVPN Blog_files/frontend.js create mode 100644 vendor-patches/ProtonVPN/Stay safe on ProtonVPN despite CVE-2019-14899 - ProtonVPN Blog_files/functions.js create mode 100644 vendor-patches/ProtonVPN/Stay safe on ProtonVPN despite CVE-2019-14899 - ProtonVPN Blog_files/ie10-viewport-bug-workaround.js create mode 100644 vendor-patches/ProtonVPN/Stay safe on ProtonVPN despite CVE-2019-14899 - ProtonVPN Blog_files/jquery-migrate.js create mode 100644 vendor-patches/ProtonVPN/Stay safe on ProtonVPN despite CVE-2019-14899 - ProtonVPN Blog_files/jquery.js create mode 100644 vendor-patches/ProtonVPN/Stay safe on ProtonVPN despite CVE-2019-14899 - ProtonVPN Blog_files/protonmail-sign-white.png create mode 100644 vendor-patches/ProtonVPN/Stay safe on ProtonVPN despite CVE-2019-14899 - ProtonVPN Blog_files/protonmail-white-transparent.svg create mode 100644 vendor-patches/ProtonVPN/Stay safe on ProtonVPN despite CVE-2019-14899 - ProtonVPN Blog_files/protonvpn-white-transparent.svg create mode 100644 vendor-patches/ProtonVPN/Stay safe on ProtonVPN despite CVE-2019-14899 - ProtonVPN Blog_files/style.css create mode 100644 vendor-patches/ProtonVPN/Stay safe on ProtonVPN despite CVE-2019-14899 - ProtonVPN Blog_files/style_002.css create mode 100644 vendor-patches/ProtonVPN/Stay safe on ProtonVPN despite CVE-2019-14899 - ProtonVPN Blog_files/vpn-icon.png create mode 100644 vendor-patches/ProtonVPN/Stay safe on ProtonVPN despite CVE-2019-14899 - ProtonVPN Blog_files/wp-embed.js create mode 100644 vendor-patches/ProtonVPN/Stay safe on ProtonVPN despite CVE-2019-14899 - ProtonVPN Blog_files/wp-emoji-release.js create mode 100644 vendor-patches/ProtonVPN/Stay safe on ProtonVPN despite CVE-2019-14899 - ProtonVPN Blog_files/wpum.css create mode 100644 vendor-patches/QubesOS/network prevent IP spoofing on upstream (eth0) interface · QubesOS_qubes-core-agent-linux@74f5fb5.html create mode 100644 vendor-patches/QubesOS/network prevent IP spoofing on upstream (eth0) interface · QubesOS_qubes-core-agent-linux@74f5fb5_files/15262083.png create mode 100644 vendor-patches/QubesOS/network prevent IP spoofing on upstream (eth0) interface · QubesOS_qubes-core-agent-linux@74f5fb5_files/15262083_002.png create mode 100644 vendor-patches/QubesOS/network prevent IP spoofing on upstream (eth0) interface · QubesOS_qubes-core-agent-linux@74f5fb5_files/15262083_003.png create mode 100644 vendor-patches/QubesOS/network prevent IP spoofing on upstream (eth0) interface · QubesOS_qubes-core-agent-linux@74f5fb5_files/6395399.jpg create mode 100644 vendor-patches/QubesOS/network prevent IP spoofing on upstream (eth0) interface · QubesOS_qubes-core-agent-linux@74f5fb5_files/6395399_002.jpg create mode 100644 vendor-patches/QubesOS/network prevent IP spoofing on upstream (eth0) interface · QubesOS_qubes-core-agent-linux@74f5fb5_files/726704.jpg create mode 100644 vendor-patches/QubesOS/network prevent IP spoofing on upstream (eth0) interface · QubesOS_qubes-core-agent-linux@74f5fb5_files/behaviors-08016a51.js create mode 100644 vendor-patches/QubesOS/network prevent IP spoofing on upstream (eth0) interface · QubesOS_qubes-core-agent-linux@74f5fb5_files/behaviors-152400ab410cb387f3b645589da1bab5.css create mode 100644 vendor-patches/QubesOS/network prevent IP spoofing on upstream (eth0) interface · QubesOS_qubes-core-agent-linux@74f5fb5_files/chunk-frameworks-39ff961b.js create mode 100644 vendor-patches/QubesOS/network prevent IP spoofing on upstream (eth0) interface · QubesOS_qubes-core-agent-linux@74f5fb5_files/chunk-vendor-ec6bcae2.js create mode 100644 vendor-patches/QubesOS/network prevent IP spoofing on upstream (eth0) interface · QubesOS_qubes-core-agent-linux@74f5fb5_files/diffs-021875bc.js create mode 100644 vendor-patches/QubesOS/network prevent IP spoofing on upstream (eth0) interface · QubesOS_qubes-core-agent-linux@74f5fb5_files/environment-f0adafbf.js create mode 100644 vendor-patches/QubesOS/network prevent IP spoofing on upstream (eth0) interface · QubesOS_qubes-core-agent-linux@74f5fb5_files/frameworks-93d34cfdadb1618eb00917161bb7f744.css create mode 100644 vendor-patches/QubesOS/network prevent IP spoofing on upstream (eth0) interface · QubesOS_qubes-core-agent-linux@74f5fb5_files/github-003c4118ffbf123b9fde175f5edd433c.css create mode 100644 vendor-patches/QubesOS/network prevent IP spoofing on upstream (eth0) interface · QubesOS_qubes-core-agent-linux@74f5fb5_files/search-key-slash.svg create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal.html create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/app.css create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/app.js create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/avatars.js create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/bootstrap-grid.css create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/bootstrap.css create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/chosen.css create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/chunk-vendors.js create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/components.css create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/cp-search-autocomplete.js create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/custom-elements-es5-adapter.js create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/data-action.js create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/datetime-moment.js create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/drupal-admin-drawer.js create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/dtm.js create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/get.svg create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/get_002.svg create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/handlebars.js create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/ieSVGfix.js create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/introjs.js create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/jquery.js create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/main.css create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/moment.js create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/notice create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/notice_002 create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/pages.css create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/pfe-accordion.js create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/pfe-autocomplete.js create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/pfe-datetime.js create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/pfe-markdown.js create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/pfe-progress-indicator.js create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/pfe-tabs.js create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/pfe.js create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/pfelement.js create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/require.js create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/require_002.js create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/rh-summit-red-a.svg create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/rh.js create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/rhn-modal.js create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/status-widget.js create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/templates.js create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/tour.js create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/trustarc.js create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/v1.7-193 create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/wc.js create mode 100644 vendor-patches/Red Hat/CVE-2019-14899- Red Hat Customer Portal_files/webcomponents-bundle.js create mode 100644 vendor-patches/WireGuard/Regarding 'Inferring and hijacking VPN-tunneled TCP connections' - Jason A. Donenfeld.html create mode 100644 vendor-patches/WireGuard/Regarding 'Inferring and hijacking VPN-tunneled TCP connections' - Jason A. Donenfeld_files/216dark.css create mode 100644 vendor-patches/WireGuard/Regarding 'Inferring and hijacking VPN-tunneled TCP connections' - Jason A. Donenfeld_files/216light.css diff --git a/vendor-patches/Android/Android Release Security Acknowledgements.html b/vendor-patches/Android/Android Release Security Acknowledgements.html new file mode 100644 index 0000000..edc944a --- /dev/null +++ b/vendor-patches/Android/Android Release Security Acknowledgements.html @@ -0,0 +1,2299 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Android Release Security Acknowledgements + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+
+ Google is committed to advancing racial equity for Black communities. See how. + +
+
+
+ + + + + + +

Android Release Security Acknowledgements

+ + + + +
+ + + + + +

Android 11 + Security Release Notes

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ResearchersCVEs
A.V. Flox and Yonatan ZungerCVE-2020-0286
Alexandru Bogdan GeanaCVE-2020-0369
Andrea Possemato of IDEMIACVE-2020-0317, CVE-2020-0327, CVE-2020-0343, CVE-2020-0372
Android Security Red TeamCVE-2020-0281, CVE-2020-0300, CVE-2020-0319, CVE-2020-0325, CVE-2020-0326, +CVE-2020-0334, CVE-2020-0350
Bruce Chen of GoogleCVE-2020-0365
Calum Hutton (Perspective Risk)CVE-2020-0352
Gengjia Chen (@chengjia4574) of IceSword +Lab, Qihoo 360 Technology Co. Ltd.CVE-2020-0335, CVE-2020-0348, CVE-2020-0349
Chi Zhang and Guang Gong (@oldfresher) of 360 Alpha Lab +working with 360 BugCloud (https://bugcloud.360.cn/)CVE-2020-0341, CVE-2020-0354
Chong Wang (王冲) (weibo.com/csddl) from Chengdu +Security Response Center of Qihoo 360 Technology Co. Ltd.CVE-2020-0264, CVE-2020-0322, CVE-2020-0323
Cusas @ L.O. TeamCVE-2020-0266, CVE-2020-0301, CVE-2020-0320, CVE-2020-0332, CVE-2020-0351, +CVE-2020-0353 CVE-2020-0362
Cyrille Chatras of Orange LabsCVE-2020-0130
Dai of L.O. +TeamCVE-2020-0287
Daoyuan Wu of The Chinese University of Hong KongCVE-2020-0308, CVE-2020-0374
Dzmitry +LukyanenkaCVE-2020-0337, CVE-2020-0338
Edward Cunningham of GoogleCVE-2020-0263, CVE-2020-0275, CVE-2020-0294, CVE-2020-0313, +CVE-2020-0426
En He of OPPO ZIWU Cyber +Security LabCVE-2020-0331, CVE-2020-0405
Evgenii Stepanov of GoogleCVE-2020-0268, CVE-2020-0330
Hamzeh Zawawy of GoogleCVE-2020-0291
Hao Liu and Jianqiang Zhao of IceSword Lab, Qihoo 360CVE-2020-0282
Hongli Han (@hexb1n) and +Guang Gong (@oldfresher) of 360 Alpha Lab +working with 360 BugCloud (https://bugcloud.360.cn/)CVE-2020-0273, CVE-2020-0357, CVE-2020-0358
Ilja van Sprundel of IOActiveCVE-2020-0328
Jeff Vander Stoep of GoogleCVE-2020-0293
Joshua SteinerCVE-2020-0366
Kostya Serebryany of Google using libFuzzer and AddressSanitizerCVE-2020-0279
Lorne Laliberte (mailto:lorne.laliberte@gmail.com, @creativekind)CVE-2020-0333
Matthew DaleyCVE-2020-0265, CVE-2020-0277, CVE-2020-0288, CVE-2020-0289, CVE-2020-0290, +CVE-2020-0298, CVE-2020-0299, CVE-2020-0360
Miao Hu and Yufei Liu of KeenLab (@keen_lab), TencentCVE-2020-0276, CVE-2020-0284, CVE-2020-0285, CVE-2020-0314, CVE-2020-0316, + CVE-2020-0375
Michal Bednarski (https://github.com/michalbednarski)CVE-2020-0344, CVE-2020-0345, CVE-2020-27097, CVE-2020-27098
Mingjian Zhou (周明建) (@Mingjian_Zhou) of C0RE TeamCVE-2020-0329
Niky(kittymore83@gmail.com) of China MobileCVE-2019-8842
Pedro Umbelino, Security Researcher at CheckmarxCVE-2020-0089
Qi Zhao (@JHyrathon) and +Guang Gong (@oldfresher) of Alpha Lab, +Qihoo 360 Technology Co. Ltd.CVE-2020-0272
Qilin Wang(王麒麟),Jiawei Qin(秦佳伟) of Gtensor Team, Cyber Security Center, +State Key Laboratory of Network and Switching Technology, Beijing +University of Posts and Telecommunications(北京邮电大学网络与交换技术国家重点实验室) and +Tengfei Tu(涂腾飞) of Zhongshi Ruian Beijing Network Technology Co., +Ltd (中时瑞安(北京)网络科技有限责任公司)CVE-2020-0363
Stephan Zeisberg of Security Research LabsCVE-2020-3898
tomzCVE-2020-0271
V.E.O. (@VYSEa) (一〇) of Ant +FinancialCVE-2020-0292
Will Coster of GoogleCVE-2020-0356
Xiaobo Xiang and Guang Gong of Alpha Lab, Qihoo 360 Technology Co. LtdCVE-2020-0309, CVE-2020-0347, CVE-2020-0359
Yong Wang (王勇) (@ThomasKing2014) of +Alibaba SecurityCVE-2020-0274
Yury Shabalin (@Mr_R1p), +Evgeniy Blashko (@jd7drw) of Stingray LLC (https://stingray-mobile.ru/)CVE-2020-0267
Zinuo Han (weibo.com/ele7enxxh) of +Alibaba Cloud Security TeamCVE-2020-0125, CVE-2020-0303, CVE-2020-0324, CVE-2020-0336, CVE-2020-0346, +CVE-2020-0364, CVE-2020-0370, CVE-2020-0373
+ +

Android 10 Security Release Notes

+ +
+++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ResearchersCVEs
Aditya Narkar, Joydeep Mitra, and Venkatesh-Prasad Ranganath as part +of Ghera project at Kansas State University, USACVE-2019-9463
Adrian Roos of GoogleCVE-2019-9280
Aman Pandey, Student of Maulana Azad National Institute of Technology +Bhopal, M.P, IndiaCVE-2019-9407
Andrea Possemato (@_pox_) of +IDEMIA / EURECOM and Yanick Fratantonio ( @reyammer) of EURECOMCVE-2019-9292
Baozeng Ding (@sploving) +CVE-2019-10528
Baozheng Liu (@iromise) + of Tsinghua University, research intern at Alpha Lab and Guang Gong + (@oldfresher) of Alpha Lab, + Qihoo 360 Technology Co. Ltd.CVE-2019-2088
Chi Zhang and Mingjian +Zhou (周明建) (@Mingjian_Zhou) of C0RE TeamCVE-2019-9237, CVE-2019-9241, CVE-2019-9363
Chirayu Desai of The Calyx InstituteCVE-2019-9436
Chong Wang (王冲) (weibo.com/csddl) from +Chengdu Security Response Center of Qihoo 360 Technology Co. Ltd.CVE-2019-2060, +CVE-2019-2146, +CVE-2019-2156, +CVE-2019-2162, +CVE-2019-9234, +CVE-2019-9243, +CVE-2019-9249, +CVE-2019-9250, +CVE-2019-9289, +CVE-2019-9312, +CVE-2019-9329, +CVE-2019-9409
Chong Wang (王冲) (weibo.com/csddl) and +Zhe Jin (金哲) from Chengdu Security Response Center of Qihoo 360 +Technology Co. Ltd.CVE-2019-2140, +CVE-2019-2141, +CVE-2019-2147, +CVE-2019-2159, +CVE-2019-2163, +CVE-2019-2166, +CVE-2019-9251, +CVE-2019-9287, +CVE-2019-9293, +CVE-2019-9318, +CVE-2019-9332, +CVE-2019-9334, +CVE-2019-9355, +CVE-2019-9356, +CVE-2019-9359, +CVE-2019-9366, +CVE-2019-9368, +CVE-2019-9462, +CVE-2019-9383, +CVE-2019-9406, +CVE-2019-9415, +CVE-2019-9416, +CVE-2019-9427, +CVE-2019-9432, +CVE-2019-9434
Christopher Dombroski of Deja vu SecurityCVE-2019-9268
Christopher Tate of GoogleCVE-2019-9373
C0RE TeamCVE-2018-11893, +CVE-2019-2341
crixerCVE-2019-9444
Cusas @ L.O. TeamCVE-2019-9346, +CVE-2019-9348, +CVE-2019-9349, +CVE-2019-9352, +CVE-2019-9379, +CVE-2020-0088
D2.Y.PCVE-2019-2061, +CVE-2019-2080, +CVE-2019-2087, +CVE-2019-2138, +CVE-2019-2144, +CVE-2019-2145, +CVE-2019-2153, +CVE-2019-2154, +CVE-2019-2155, +CVE-2019-2157, +CVE-2019-2160, +CVE-2019-2161, +CVE-2019-2165, +CVE-2019-2171, +CVE-2019-2172, +CVE-2019-9233, +CVE-2019-9314, +CVE-2019-9335, +CVE-2019-9403, +CVE-2019-9408
Dacheng Shao and +Mingjian Zhou (周明建) (@Mingjian_Zhou) of C0RE TeamCVE-2018-11929, CVE-2019-9445
Daxing Guo of Tencent Security Xuanwu LabCVE-2019-10497
derrek (@derrekr6)CVE-2018-3573, +CVE-2018-5861, +CVE-2018-11985
Di Shen (@returnsme) of +KeenLab (@keen_lab), +TencentCVE-2019-2298
Dokyung Song, Dipanjan Das, and Felicitas HetzeltCVE-2018-11947
Dzmitry +LukyanenkaCVE-2019-9440
Efthimios Alepis and Constantinos Patsakis, Department of +Informatics, University of Piraeus, GreeceCVE-2019-9323
Elphet and Guang Gong of Alpha Team, Qihoo 360 Technology Co. Ltd. +CVE-2019-2063, +CVE-2019-2064, +CVE-2019-2065, +CVE-2019-2066, +CVE-2019-2067, +CVE-2019-2068, +CVE-2019-2069, +CVE-2019-2070, +CVE-2019-2071, +CVE-2019-2072, +CVE-2019-2073, +CVE-2019-2074, +CVE-2019-2075, +CVE-2019-2076, +CVE-2019-2077, +CVE-2019-2078, +CVE-2019-2079, +CVE-2019-2086, +CVE-2019-9288
En He (@heeeeen4x) of +OPPO ZIWU Cyber Security LabCVE-2019-9311
Evgenii Stepanov of GoogleCVE-2019-9350
Felix Kirchengast and Raphael Spreitzer of Graz University of +TechnologyCVE-2019-9277
Gengjia Chen (@chengjia4574) of IceSword +Lab, Qihoo 360 Technology Co. Ltd.CVE-2018-11825, +CVE-2018-13890, +CVE-2019-2299, +CVE-2019-2302, +CVE-2019-2312, +CVE-2019-2314, +CVE-2019-2314, +CVE-2019-9248, +CVE-2019-9386, +CVE-2019-9448, +CVE-2019-9449, +CVE-2019-9450, +CVE-2019-9451, +CVE-2019-9452, +CVE-2019-10506
Gengjia Chen (@chengjia4574), pjf (weibo.com/jfpan) of IceSword Lab, Qihoo 360 +Technology Co. Ltd.CVE-2017-14888, +CVE-2018-11302, +CVE-2019-10542
Greg Hartman of GoogleCVE-2019-9429
Gulshan SinghCVE-2019-2281
Hamzeh Zawawy of GoogleCVE-2019-9454
Hanxiang Wen and Mingjian +Zhou (周明建) (@Mingjian_Zhou) +of C0RE TeamCVE-2019-9245
Hao Chen (@flankersky) +and Guang Gong (@oldfresher) of Alpha Team, +Qihoo 360 Technology Co. Ltd.CVE-2018-3574, +CVE-2018-11939, +CVE-2019-2263, +CVE-2019-2277, +CVE-2019-2345 +
Hao Liu and Jianqiang Zhao of IceSword Lab, Qihoo 360CVE-2019-9375
heidadaCVE-2019-2248
Hongli Han (@hexb1n) and +Mingjian Zhou (周明建) (@Mingjian_Zhou) of C0RE TeamCVE-2019-9347
Huinian Yang (杨卉年) (@vmth6) + and Chong Wang (王冲) (weibo.com/csddl) of Chengdu Security Response + Center, Qihoo 360 Technology Co. Ltd.CVE-2019-2058
Ivan Lozano of GoogleCVE-2019-9420
Janis Danisevskis of GoogleCVE-2019-9253
Jeff Davidson of GoogleCVE-2019-9263, +CVE-2018-9425
Jianjun Dai (@jioun_dai) and Guang Gong +(@oldfresher) of 360 Alpha TeamCVE-2019-9402, + CVE-2019-9401, + CVE-2019-9398, + CVE-2019-9396, + CVE-2019-9397, + CVE-2019-9473
Jianqiang Zhao (@jianqiangzhao) +and pjf (weibo.com/jfpan) of IceSword +Lab, Qihoo 360CVE-2018-11823, +CVE-2018-11832, +CVE-2018-11987, +CVE-2018-11988, +CVE-2019-2333, +CVE-2019-9271, +CVE-2019-9443, +CVE-2019-9446, +CVE-2019-9447, +CVE-2019-9456, +CVE-2019-10507
João Lucas Melo Brasio of Elytron Security S.A.CVE-2019-9428
Julien Thomas (@Julien_Thomas)CVE-2019-9269
Kah Hin Lai of University of MinnesotaCVE-2019-9380
kimyok of Tongdun TechnologyCVE-2019-9281
Kostya Serebryany of Google, using libFuzzer+AddressSanitizerCVE-2019-2108
Krystian Kieczka et al. of Samsung Poland Mobile SecurityCVE-2019-9376
Martijn BogaardCVE-2019-2343
Martin Brabham of GoogleCVE-2019-9265
Masashi Honma, +Hiroyuki Harada (@pirosap), and +Hideaki GotoCVE-2019-9279
Mike DavisCVE-2019-9270
Mingjian Zhou (周明建) (@Mingjian_Zhou) of C0RE TeamCVE-2019-2306
Mitch Phillips of GoogleCVE-2019-9370
Moony Li and Todd Han of TrendMicro Research working +with Trend Micro´s Zero Day InitiativeCVE-2019-9353
Nightwatch Cybersecurity ResearchCVE-2018-9489, +CVE-2019-9581
Niky1235 (@jiych_guru)CVE-2019-9290, +CVE-2019-9294, +CVE-2019-9459
Paul BandhaCVE-2019-9453
Pedro Umbelino, Security Researcher at CheckmarxCVE-2019-9295
Pengfei Ding (丁鹏飞) of HuaweiCVE-2019-2284, +CVE-2019-9327, +CVE-2019-9328, +CVE-2019-9331, +CVE-2019-9343, +CVE-2019-9367, +CVE-2019-9442, +CVE-2019-9455, +CVE-2019-9458, +CVE-2019-10502
Pengfei Ding (丁鹏飞), Chenfu Bao (包沉浮), and Lenx Wei +(韦韬) of Baidu X-Lab (百度安全实验室)CVE-2018-11818
Peter Pi of Tencent Blade TeamCVE-2018-12006, +CVE-2018-12011, CVE-2019-9275
Qi Zhao (@JHyrathon) and +Guang Gong (@oldfresher) of Alpha Team, +Qihoo 360 Technology Co. Ltd.CVE-2019-9358
Ray Essick of GoogleCVE-2019-9385
Raymond WangCVE-2019-9381
Roman Kümmel aka .cCuMiNn. (www.soom.cz)CVE-2019-2089
Rong Fan (fanrong1992) and Simon Huang (@HuangShaomang) of +IceSword Lab, Qihoo 360CVE-2019-2139
Ryan Haining of GoogleCVE-2019-9266
Scott BauerCVE-2019-9296
Sigmund Albert Gorski III, Benjamin Andow, and William Enck of North +Carolina State University; Sunil Manandhar and Adwait Nadkarni of William & +MaryCVE-2019-9351, +CVE-2019-9377, +CVE-2019-9438
Stephan Zeisberg of Security Research LabsCVE-2019-9418
Steven Moreland of GoogleCVE-2020-0086
William J. Tolley and Jedidiah R. Crandall, Breakpointing BadCVE-2019-9461
Xiangyu Fan of Huawei Terminal Security Test TeamCVE-2019-9426
Xuan Xing of GoogleCVE-2017-15844, +CVE-2018-11943, +CVE-2019-9238, +CVE-2019-9239, +CVE-2019-9240, +CVE-2019-9244
Yang DaiCVE-2019-9273, +CVE-2018-13912
Yang Dai and Xiao HuangCVE-2019-9276
YanFeng Wang +and Mingjian Zhou (周明建) (@Mingjian_Zhou) +of C0RE TeamCVE-2019-2182
Yonggang Guo (@guoygang) of IceSword Lab, Qihoo 360 +Technology Co. Ltd.CVE-2019-9441
Yongke Wang (王永科) (@Rudykewang) and Xiangqian +Zhang (张向前) (@h3rb0x) of +Tencent Security Xuanwu LabCVE-2019-9284, + CVE-2019-9285, + CVE-2019-9286, + CVE-2019-9291, + CVE-2019-9309, + CVE-2019-9326, + CVE-2019-9330, + CVE-2019-9341, + CVE-2019-9342, + CVE-2019-9354, + CVE-2019-9413, + CVE-2019-9417, + CVE-2019-9419, +CVE-2019-9422
Yue Zhang and Qinglin LiuCVE-2019-9274
Zhixin Li of NSFocusCVE-2019-2158
Zhou Lingling of Xuebao Team, Tencent Mobile Security LabCVE-2018-11919, + CVE-2018-11983, + CVE-2018-11984, + CVE-2018-13893
Zinuo Han (weibo.com/ele7enxxh)CVE-2018-11899, + CVE-2019-2055, + CVE-2019-2059, + CVE-2019-2062, + CVE-2019-2081, + CVE-2019-2082, + CVE-2019-2083, + CVE-2019-2084, + CVE-2019-2085, + CVE-2019-2142, + CVE-2019-2143, + CVE-2019-2148, + CVE-2019-2149, + CVE-2019-2150, + CVE-2019-2151, + CVE-2019-2152, + CVE-2019-2164, + CVE-2019-2167, + CVE-2019-2168, + CVE-2019-2169, + CVE-2019-2170, + CVE-2019-9242, + CVE-2019-9246, + CVE-2019-9247, + CVE-2019-9313, + CVE-2019-9315, + CVE-2019-9316, + CVE-2019-9317, + CVE-2019-9319, + CVE-2019-9320, + CVE-2019-9321, + CVE-2019-9322, + CVE-2019-9333, + CVE-2019-9336, + CVE-2019-9337, + CVE-2019-9338, + CVE-2019-9344, + CVE-2019-9361, + CVE-2019-9362, + CVE-2019-9365, + CVE-2019-9369, + CVE-2019-9400, + CVE-2019-9404, + CVE-2019-9410, + CVE-2019-9411, + CVE-2019-9412, + CVE-2019-9421, + CVE-2019-9430, + CVE-2019-9431, + CVE-2019-9435, + CVE-2019-9474
+ + + + + +
+ + + + + + + +
Was this page helpful?
+ + + + + + + + +
+ + + + + + + +
+
+ + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/vendor-patches/Android/Android Release Security Acknowledgements_files/analytics-iframe.html b/vendor-patches/Android/Android Release Security Acknowledgements_files/analytics-iframe.html new file mode 100644 index 0000000..5b7d34e --- /dev/null +++ b/vendor-patches/Android/Android Release Security Acknowledgements_files/analytics-iframe.html @@ -0,0 +1,14 @@ + + + + + + + + + \ No newline at end of file diff --git a/vendor-patches/Android/Android Release Security Acknowledgements_files/analytics-iframe_data/analytics_library.js b/vendor-patches/Android/Android Release Security Acknowledgements_files/analytics-iframe_data/analytics_library.js new file mode 100644 index 0000000..08c760c --- /dev/null +++ b/vendor-patches/Android/Android Release Security Acknowledgements_files/analytics-iframe_data/analytics_library.js @@ -0,0 +1,67 @@ +(function(){/* + + Copyright The Closure Library Authors. + SPDX-License-Identifier: Apache-2.0 +*/ +'use strict';var f;function aa(a){var b=0;return function(){return b=arguments.length?Array.prototype.slice.call(a,b):Array.prototype.slice.call(a,b,c)};function pa(a){if(8192>=a.length)return String.fromCharCode.apply(null,a);for(var b="",c=0;ca.length?"&":"")+encodeURIComponent(d)+"="+encodeURIComponent(String(l)))}}return b};var Aa=String.prototype.trim?function(a){return a.trim()}:function(a){return/^[\s\xa0]*([\s\S]*?)[\s\xa0]*$/.exec(a)[1]};var m=0,n=0;function Ba(a){var b=a>>>0;a=Math.floor((a-b)/4294967296)>>>0;m=b;n=a}function p(a){var b=0>a;a=Math.abs(a);var c=a>>>0;a=Math.floor((a-c)/4294967296);a>>>=0;b&&(a=~a>>>0,c=(~c>>>0)+1,4294967295a;a=2*Math.abs(a);Ba(a);a=m;var c=n;b&&(0==a?0==c?c=a=4294967295:(c--,a=4294967295):a--);m=a;n=c} +function Da(a){var b=0>a?1:0;a=b?-a:a;if(0===a)0<1/a?m=n=0:(n=0,m=2147483648);else if(isNaN(a))n=0,m=2147483647;else if(3.4028234663852886E38>>0;else if(1.1754943508222875E-38>a)a=Math.round(a/Math.pow(2,-149)),n=0,m=(b<<31|a)>>>0;else{var c=Math.floor(Math.log(a)/Math.LN2);a*=Math.pow(2,-c);a=Math.round(8388608*a)&8388607;n=0;m=(b<<31|c+127<<23|a)>>>0}} +function Ea(a){var b=a.charCodeAt(4),c=a.charCodeAt(5),d=a.charCodeAt(6),e=a.charCodeAt(7);m=a.charCodeAt(0)+(a.charCodeAt(1)<<8)+(a.charCodeAt(2)<<16)+(a.charCodeAt(3)<<24)>>>0;n=b+(c<<8)+(d<<16)+(e<<24)>>>0}function Fa(a,b,c){var d=b>>31;c(a<<1^d,(b<<1|a>>>31)^d)} +function Ga(a){function b(l,r){for(var F=0;8>F&&(1!==l||0>>=8}function c(){for(var l=0;8>l;l++)e[l]=~e[l]&255}var d=!1;"-"===a[0]&&(d=!0,a=a.slice(1));for(var e=[0,0,0,0,0,0,0,0],g=0;g>>1|(a.h&1)<<31)>>>0,a.h>>>1>>>0)}function Ia(a){return new q(a.g<<1>>>0,(a.h<<1|a.g>>>31)>>>0)}f=q.prototype;f.Da=function(){return!!(this.g&1)};f.add=function(a){return new q((this.g+a.g&4294967295)>>>0>>>0,((this.h+a.h&4294967295)>>>0)+(4294967296<=this.g+a.g?1:0)>>>0)};f.sub=function(a){return new q((this.g-a.g&4294967295)>>>0>>>0,((this.h-a.h&4294967295)>>>0)-(0>this.g-a.g?1:0)>>>0)}; +function Ja(a){var b=a&65535,c=a>>>16;a=10*b+65536*(0*b&65535)+65536*(10*c&65535);for(b=0*c+(0*b>>>16)+(10*c>>>16);4294967296<=a;)a-=4294967296,b+=1;return new q(a>>>0,b>>>0)}f.toString=function(){for(var a="",b=this;0!=b.g||0!=b.h;){var c=new q(0,0);b=new q(b.g,b.h);for(var d=new q(10,0),e=new q(1,0);!(d.h&2147483648);)d=Ia(d),e=Ia(e);for(;0!=e.g||0!=e.h;)0>=(d.ha[d]||"9">>0>>>0,((this.h+a.h&4294967295)>>>0)+(4294967296<=this.g+a.g?1:0)>>>0)}; +t.prototype.sub=function(a){return new t((this.g-a.g&4294967295)>>>0>>>0,((this.h-a.h&4294967295)>>>0)-(0>this.g-a.g?1:0)>>>0)};t.prototype.j=function(){return new t(this.g,this.h)};t.prototype.toString=function(){var a=0!=(this.h&2147483648),b=new q(this.g,this.h);a&&(b=(new q(0,0)).sub(b));return(a?"-":"")+b.toString()};function La(a){var b=0>>7|c<<25)>>>0,c>>>=7;a.g.push(b)}function v(a,b,c){w(a,b);w(a,c)}function Oa(a,b,c){Fa(b,c,function(d,e){u(a,d>>>0,e>>>0)})}function x(a,b){for(;127>>=7;a.g.push(b)}function y(a,b){if(0<=b)x(a,b);else{for(var c=0;9>c;c++)a.g.push(b&127|128),b>>=7;a.g.push(1)}} +function Pa(a,b){x(a,(b<<1^b>>31)>>>0)}function Qa(a,b){Ea(Ga(b));Fa(m,n,function(c,d){u(a,c>>>0,d>>>0)})}f.yd=function(a){this.g.push(a>>>0&255)};f.xd=function(a){this.g.push(a>>>0&255);this.g.push(a>>>8&255)};function w(a,b){a.g.push(b>>>0&255);a.g.push(b>>>8&255);a.g.push(b>>>16&255);a.g.push(b>>>24&255)}function Ra(a,b){Ba(b);w(a,m);w(a,n)}f.vc=function(a){this.g.push(a>>>0&255)};f.uc=function(a){this.g.push(a>>>0&255);this.g.push(a>>>8&255)}; +function Sa(a,b){a.g.push(b>>>0&255);a.g.push(b>>>8&255);a.g.push(b>>>16&255);a.g.push(b>>>24&255)} +function Ta(a,b){var c=b;c=(b=0>c?1:0)?-c:c;if(0===c)n=0<1/c?0:2147483648,m=0;else if(isNaN(c))n=2147483647,m=4294967295;else if(1.7976931348623157E308>>0,m=0;else if(2.2250738585072014E-308>c)c/=Math.pow(2,-1074),n=(b<<31|c/4294967296)>>>0,m=c>>>0;else{var d=c,e=0;if(2<=d)for(;2<=d&&1023>e;)e++,d/=2;else for(;1>d&&-1022>>0;m=4503599627370496*c>>>0}w(a,m);w(a,n)} +f.Ha=function(a){this.g.push.apply(this.g,a)};var Ua={},Va=null;function Wa(a,b){void 0===b&&(b=0);Xa();b=Ua[b];for(var c=[],d=0;d>2;e=(e&3)<<4|l>>4;l=(l&15)<<2|F>>6;F&=63;r||(F=64,g||(l=64));c.push(b[ha],b[e],b[l]||"",b[F]||"")}return c.join("")}function Ya(a){var b=a.length,c=3*b/4;c%3?c=Math.floor(c):-1!="=.".indexOf(a[b-1])&&(c=-1!="=.".indexOf(a[b-2])?c-2:c-1);var d=new Uint8Array(c),e=0;Za(a,function(g){d[e++]=g});return d.subarray(0,e)} +function Za(a,b){function c(F){for(;d>4);64!=l&&(b(g<<4&240|l>>2),64!=r&&b(l<<6&192|r))}} +function Xa(){if(!Va){Va={};for(var a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),b=["+/=","+/","-_=","-_.","-_"],c=0;5>c;c++){var d=a.concat(b[c].split(""));Ua[c]=d;for(var e=0;e>>=7,a.h++;b.push(c);a.h++}f=z.prototype;f.Ga=function(a,b,c){null!=a&&null!=b&&null!=c&&$a(this,a.subarray(b,c))};f.Ia=function(){this.j=[];Na(this.g);this.h=0;this.l=[]}; +function D(a){for(var b=new Uint8Array(a.h+a.g.length()),c=a.j,d=c.length,e=0,g=0;gg)d.g.push(g);else if(2048>g)d.g.push(g>>6|192),d.g.push(g&63|128);else if(65536>g)if(55296<=g&&56319>=g&&e+1=l&&(g=1024*(g-55296)+l-56320+65536,d.g.push(g>>18|240),d.g.push(g>>12&63|128),d.g.push(g>>6&63|128),d.g.push(g&63|128),e++)}else d.g.push(g>>12|224),d.g.push(g>>6&63|128),d.g.push(g&63|128)}C(a,b)}} +function ab(a,b,c){null!=c&&(c=c.constructor===Uint8Array?c:c.constructor===ArrayBuffer?new Uint8Array(c):c.constructor===Array?new Uint8Array(c):c.constructor===String?Ya(c):new Uint8Array(0),B(a,b,2),x(a.g,c.length),$a(a,c))}function eb(a,b,c,d){null!=c&&(b=A(a,b),d(c,a),C(a,b))}f.wc=function(a,b,c){null!=b&&(B(this,1,3),B(this,2,0),y(this.g,a),a=A(this,3),c(b,this),C(this,a),B(this,1,4))};f.tc=function(a,b,c){null!=b&&(B(this,a,3),c(b,this),B(this,a,4))}; +f.dd=function(a,b){if(null!=b)for(var c=0;c>>0,l>>>0)}};f.gd=function(a,b){if(null!=b)for(var c=0;cr?"":0==r?";expires="+(new Date(1970,1,1)).toUTCString():";expires="+(new Date(Date.now()+1E3*r)).toUTCString())+(d?";secure":"")+(null!=e?";samesite="+e:"")}; +f.get=function(a,b){for(var c=a+"=",d=(this.g.cookie||"").split(";"),e=0,g;eb)a=0,b=2147483647;return Math.floor(Math.random()*(b-a+1)+a)},Ja=function(a,b){for(var c=new Ia,d=0;dc.length&&d&&b.push(c)});return b.join(",")};/* + jQuery v1.9.1 (c) 2005, 2012 jQuery Foundation, Inc. jquery.org/license. */ +var gb=/\[object (Boolean|Number|String|Function|Array|Date|RegExp)\]/,hb=function(a){if(null==a)return String(a);var b=gb.exec(Object.prototype.toString.call(Object(a)));return b?b[1].toLowerCase():"object"},ib=function(a,b){return Object.prototype.hasOwnProperty.call(Object(a),b)},kb=function(a){if(!a||"object"!=hb(a)||a.nodeType||a==a.window)return!1;try{if(a.constructor&&!ib(a,"constructor")&&!ib(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}for(var b in a);return void 0=== +b||ib(a,b)},m=function(a,b){var c=b||("array"==hb(a)?[]:{}),d;for(d in a)if(ib(a,d)){var e=a[d];"array"==hb(e)?("array"!=hb(c[d])&&(c[d]=[]),c[d]=m(e,c[d])):kb(e)?(kb(c[d])||(c[d]={}),c[d]=m(e,c[d])):c[d]=e}return c};var lb=function(a){if(void 0===a||Da(a)||kb(a))return!0;switch(typeof a){case "boolean":case "number":case "string":case "function":return!0}return!1};var Jb; +var Kb=[],Lb=[],Mb=[],Nb=[],Ob=[],Pb={},Sb,Tb,Ub,Vb=function(a,b){var c=a["function"];if(!c)throw Error("Error: No function name given for function call.");var d=Pb[c],e={},f;for(f in a)a.hasOwnProperty(f)&&0===f.indexOf("vtp_")&&(d&&b&&b.Ze&&b.Ze(a[f]),e[void 0!==d?f:f.substr(4)]=a[f]);return void 0!==d?d(e):Jb(c,e,b)},Xb=function(a,b,c){c=c||[];var d={},e;for(e in a)a.hasOwnProperty(e)&&(d[e]=Wb(a[e],b,c));return d},Wb=function(a,b,c){if(Da(a)){var d;switch(a[0]){case "function_id":return a[1]; +case "list":d=[];for(var e=1;e"}else r=void 0===d?"undefined":null===d?"null":typeof d;Nc("Argument is not a %s (or a non-Element, non-Location mock); got: %s", +"HTMLScriptElement",r)}var t;e instanceof Tc&&e.constructor===Tc?t=e.m:(Nc("expected object of type TrustedResourceUrl, got '"+e+"' of type "+va(e)),t="type_error:TrustedResourceUrl");d.src=t;var p=ta(d.ownerDocument&&d.ownerDocument.defaultView);p&&d.setAttribute("nonce",p);kd(d,b);c&&(d.onerror=c);var u=ta();u&&d.setAttribute("nonce",u);var v=H.getElementsByTagName("script")[0]||H.body||H.head;v.parentNode.insertBefore(d,v);return d},md=function(){if(id){var a=id.toLowerCase();if(0===a.indexOf("https://"))return 2; +if(0===a.indexOf("http://"))return 3}return 1},nd=function(a,b){var c=H.createElement("iframe");c.height="0";c.width="0";c.style.display="none";c.style.visibility="hidden";var d=H.body&&H.body.lastChild||H.body||H.head;d.parentNode.insertBefore(c,d);kd(c,b);void 0!==a&&(c.src=a);return c},od=function(a,b,c){var d=new Image(1,1);d.onload=function(){d.onload=null;b&&b()};d.onerror=function(){d.onerror=null;c&&c()};d.src=a;return d},pd=function(a,b,c,d){a.addEventListener?a.addEventListener(b,c,!!d): +a.attachEvent&&a.attachEvent("on"+b,c)},qd=function(a,b,c){a.removeEventListener?a.removeEventListener(b,c,!1):a.detachEvent&&a.detachEvent("on"+b,c)},I=function(a){G.setTimeout(a,0)},rd=function(a,b){return a&&b&&a.attributes&&a.attributes[b]?a.attributes[b].value:null},sd=function(a){var b=a.innerText||a.textContent||"";b&&" "!=b&&(b=b.replace(/^[\s\xa0]+|[\s\xa0]+$/g,""));b&&(b=b.replace(/(\xa0+|\s{2,}|\n|\r\t)/g," "));return b},td=function(a){var b=H.createElement("div");fd(b,gd("A
"+a+"
")); +b=b.lastChild;for(var c=[];b.firstChild;)c.push(b.removeChild(b.firstChild));return c},ud=function(a,b,c){c=c||100;for(var d={},e=0;e=f)return!0;(d=d.parentElement)&&(e=G.getComputedStyle(d, +null))}return!1}; +var ae=function(){var a=H.body,b=H.documentElement||a&&a.parentElement,c,d;if(H.compatMode&&"BackCompat"!==H.compatMode)c=b?b.clientHeight:0,d=b?b.clientWidth:0;else{var e=function(f,h){return f&&h?Math.min(f,h):Math.max(f,h)};E(7);c=e(b?b.clientHeight:0,a?a.clientHeight:0);d=e(b?b.clientWidth:0,a?a.clientWidth:0)}return{width:d,height:c}},be=function(a){var b=ae(),c=b.height,d=b.width,e=a.getBoundingClientRect(),f=e.bottom-e.top,h=e.right-e.left;return f&&h?(1-Math.min((Math.max(0-e.left,0)+Math.max(e.right- +d,0))/h,1))*(1-Math.min((Math.max(0-e.top,0)+Math.max(e.bottom-c,0))/f,1)):0};var ie=/:[0-9]+$/,je=function(a,b,c){for(var d=a.split("&"),e=0;ec?a.href:a.href.substr(0,c)}return b},oe=function(a){var b=H.createElement("a");a&&(b.href=a);var c=b.pathname;"/"!==c[0]&&(a||Gc("TAGGING",1),c="/"+c);var d=b.hostname.replace(ie,"");return{href:b.href,protocol:b.protocol,host:b.host,hostname:d,pathname:c,search:b.search,hash:b.hash,port:b.port}},pe=function(a){function b(q){var r=q.split("=")[0];return 0>d.indexOf(r)?q:r+"=0"}function c(q){return q.split("&").map(b).filter(function(r){return void 0!=r}).join("&")}var d="gclid dclid gclaw gcldc gclgp gclha gclgf _gl".split(" "), +e=oe(a),f=a.split(/[?#]/)[0],h=e.search,k=e.hash;"?"===h[0]&&(h=h.substring(1));"#"===k[0]&&(k=k.substring(1));h=c(h);k=c(k);""!==h&&(h="?"+h);""!==k&&(k="#"+k);var l=""+f+h+k;"/"===l[l.length-1]&&(l=l.substring(0,l.length-1));return l};var qe=new RegExp(/[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}/i),re=new RegExp(/support|noreply/i),se=["SCRIPT","IMG","SVG","PATH","BR"],te=["BR"];function ue(a){var b;if(a===H.body)b="body";else{var c;if(a.id)c="#"+a.id;else{var d;if(a.parentElement){var e;a:{var f=a.parentElement;if(f){for(var h=0;h:nth-child("+e+")"}else d="";c=d}b=c}return b} +var xe=function(){var a=!0;var b=a,c;var d=[],e=H.body;if(e){for(var f=e.querySelectorAll("*"),h=0;hh;h++){var k=f[h];if(!(0<=se.indexOf(k.tagName.toUpperCase()))){for(var l=!1,q=0;qq;q++)if(!(0<=te.indexOf(k.children[q].tagName.toUpperCase()))){l=!0;break}l||d.push(k)}}c={elements:d,status:1E4F;F++){var K=t[F].element,P=t[F].Mc,T=!1;B.push({Mc:P,querySelector:ue(K),tagName:K.tagName,isVisible:!$d(K),type:1,zc:!!T})}return{elements:B,status:D}};var Le={},L=null,Me=Math.random();Le.D="GTM-PBZPJDG";Le.kc="1d0";Le.oi="";Le.Jf="";var Ne={__cl:!0,__ecl:!0,__ehl:!0,__evl:!0,__fal:!0,__fil:!0,__fsl:!0,__hl:!0,__jel:!0,__lcl:!0,__sdl:!0,__tl:!0,__ytl:!0},Oe={__paused:!0,__tg:!0},Pe;for(Pe in Ne)Ne.hasOwnProperty(Pe)&&(Oe[Pe]=!0);var Qe="www.googletagmanager.com/gtm.js"; +var Re=Qe,Se=Sa(""),Te=null,Ue=null,Ve="//www.googletagmanager.com/a?id="+Le.D+"&cv=18",We={},Xe={},Ye=function(){var a=L.sequence||1;L.sequence=a+1;return a};var Ze={},$e=new Ia,af={},bf={},ef={name:"dataLayer",set:function(a,b){m(eb(a,b),af);cf()},get:function(a){return df(a,2)},reset:function(){$e=new Ia;af={};cf()}},df=function(a,b){return 2!=b?$e.get(a):ff(a)},ff=function(a){var b,c=a.split(".");b=b||[];for(var d=af,e=0;e>21:b;return b};function sf(a,b,c){for(var d=[],e=b.split(";"),f=0;f>4);64!=h&&(c+=String.fromCharCode(f<<4&240|h>>2),64!=k&&(c+=String.fromCharCode(h<<6&192|k)))}};var Yf;var bg=function(){var a=Zf,b=$f,c=ag(),d=function(h){a(h.target||h.srcElement||{})},e=function(h){b(h.target||h.srcElement||{})};if(!c.init){pd(H,"mousedown",d);pd(H,"keyup",d);pd(H,"submit",e);var f=HTMLFormElement.prototype.submit;HTMLFormElement.prototype.submit=function(){b(this);f.call(this)};c.init=!0}},cg=function(a,b,c,d,e){var f={callback:a,domains:b,fragment:2===c,placement:c,forms:d,sameHost:e};ag().decorators.push(f)},dg=function(a,b,c){for(var d=ag().decorators,e={},f=0;f>2,w=(t&3)<<4|p>>4,y=(p&15)<<2|u>>6,x=u&63;n||(x=64,r||(y=64));l.push(Uf[v],Uf[w],Uf[y],Uf[x])}h=l.join("");f.call(e,h)}}var z=b.join("*");return["1",jg(z), +z].join("*")},jg=function(a,b){var c=[window.navigator.userAgent,(new Date).getTimezoneOffset(),window.navigator.userLanguage||window.navigator.language,Math.floor((new Date).getTime()/60/1E3)-(void 0===b?0:b),a].join("*"),d;if(!(d=Yf)){for(var e=Array(256),f=0;256>f;f++){for(var h=f,k=0;8>k;k++)h=h&1?h>>>1^3988292384:h>>>1;e[f]=h}d=e}Yf=d;for(var l=4294967295,q=0;q>>8^Yf[(l^c.charCodeAt(q))&255];return((l^-1)>>>0).toString(36)},mg=function(){return function(a){var b=oe(G.location.href), +c=b.search.replace("?",""),d=je(c,"_gl",!0)||"";a.query=lg(d)||{};var e=me(b,"fragment").match(ig("_gl"));a.fragment=lg(e&&e[3]||"")||{}}},ng=function(a){var b=mg(),c=ag();c.data||(c.data={query:{},fragment:{}},b(c.data));var d={},e=c.data;e&&(bb(d,e.query),a&&bb(d,e.fragment));return d},lg=function(a){var b;b=void 0===b?3:b;try{if(a){var c;a:{for(var d=a,e=0;3>e;++e){var f=eg.exec(d);if(f){c=f;break a}d=decodeURIComponent(d)}c=void 0}var h=c;if(h&&"1"===h[1]){var k=h[3],l;a:{for(var q=h[2],r=0;r< +b;++r)if(q===jg(k,r)){l=!0;break a}l=!1}if(l){for(var n={},t=k?k.split("*"):[],p=0;pr){q=!0;break b}q=!1}if(!q){var p=Lf(b,l,!0);p.va="ad_storage";Df(h,k,p)}}}}Jg(Gg(c.gclid,c.gclsrc),b)})},Lg=function(a,b){var c=zg[a];if(void 0!==c)return b+c},Mg=function(a){var b=a.split(".");return 3!==b.length||"GCL"!==b[0]?0:1E3*(Number(b[1])|| +0)};function Cg(a){var b=a.split(".");if(3==b.length&&"GCL"==b[0]&&b[1])return b[2]} +var Og=function(a,b,c,d,e){if(Da(b)){var f=Fg(e),h=function(){for(var k={},l=0;lb)){var c=a.substring(0,b);if(ah.test(c)){for(var d=a.substring(b+1).split("/"),e=0;ek;k++){var l=h[k].src;if(l){l=l.toLowerCase();if(0===l.indexOf(e)){b=3;break a}1===f&&0===l.indexOf(d)&&(f=2)}}b=f}else b=a;return b}; +var vh=function(a){return Pd(C.B)?a:a.replace(/&url=([^&#]+)/,function(b,c){var d=pe(decodeURIComponent(c));return"&url="+encodeURIComponent(d)})},wh=function(){var a;if(!(a=Se)){var b;if(!0===G._gtmdgs)b=!0;else{var c=hd&&hd.userAgent||"";b=0>c.indexOf("Safari")||/Chrome|Coast|Opera|Edg|Silk|Android/.test(c)||11>((/Version\/([\d]+)/.exec(c)||[])[1]||"")?!1:!0}a=!b}if(a)return-1;var d=Na("1");return qf(1,100)Ea(c,k))if(l&&0Ea(c,l[n])){E(11);r=!1;break a}}else{r=!1;break a}r=!0}q=r}var t=!1;if(d){var p=0<=Ea(e,k);if(p)t=p;else{var u=Ja(e,l||[]);u&&E(10);t=u}}var v=!q||t;v||!(0<=Ea(l,"sandboxedScripts"))||c&&-1!==Ea(c,"sandboxedScripts")||(v=Ja(e,Bh));return f[k]=v}}, +Ch=function(){return yh.test(G.location&&G.location.hostname)};var Eh={active:!0,isAllowed:function(){return!0}},Fh=function(a){var b=L.zones;return b?b.checkState(Le.D,a):Eh},Gh=function(a){var b=L.zones;!b&&a&&(b=L.zones=a());return b};var Lh=function(){},Mh=function(){};var Nh=!1,Oh=0,Ph=[];function Qh(a){if(!Nh){var b=H.createEventObject,c="complete"==H.readyState,d="interactive"==H.readyState;if(!a||"readystatechange"!=a.type||c||!b&&d){Nh=!0;for(var e=0;eOh){Oh++;try{H.documentElement.doScroll("left"),Qh()}catch(a){G.setTimeout(Rh,50)}}}var Sh=function(a){Nh?a():Ph.push(a)};var Th={},Uh={},Vh=function(a,b,c,d){if(!Uh[a]||Oe[b]||"__zone"===b)return-1;var e={};kb(d)&&(e=m(d,e));e.id=c;e.status="timeout";return Uh[a].tags.push(e)-1},Wh=function(a,b,c,d){if(Uh[a]){var e=Uh[a].tags[b];e&&(e.status=c,e.executionTime=d)}};function Xh(a){for(var b=Th[a]||[],c=0;c=c&&Xh(a)})},Ng:function(){d=!0;b>=c&&Xh(a)}}};var ai=function(){function a(d){return!Ca(d)||0>d?0:d}if(!L._li&&G.performance&&G.performance.timing){var b=G.performance.timing.navigationStart,c=Ca(ef.get("gtm.start"))?ef.get("gtm.start"):0;L._li={cst:a(c-b),cbt:a(Ue-b)}}};var ei={},fi=function(){return G.GoogleAnalyticsObject&&G[G.GoogleAnalyticsObject]},gi=!1; +var hi=function(a){G.GoogleAnalyticsObject||(G.GoogleAnalyticsObject=a||"ga");var b=G.GoogleAnalyticsObject;if(G[b])G.hasOwnProperty(b)||E(12);else{var c=function(){c.q=c.q||[];c.q.push(arguments)};c.l=Number(new Date);G[b]=c}ai();return G[b]},ii=function(a,b,c,d){b=String(b).replace(/\s+/g,"").split(",");var e=fi();e(a+"require","linker");e(a+"linker:autoLink",b,c,d)},ji=function(a){}; +var li=function(a){},ki=function(){return G.GoogleAnalyticsObject||"ga"},mi=function(a,b){return function(){var c=fi(),d=c&&c.getByName&&c.getByName(a);if(d){var e=d.get("sendHitTask");d.set("sendHitTask",function(f){var h=f.get("hitPayload"),k=f.get("hitCallback"),l=0>h.indexOf("&tid="+b);l&&(f.set("hitPayload",h.replace(/&tid=UA-[0-9]+-[0-9]+/,"&tid="+ +b),!0),f.set("hitCallback",void 0,!0));e(f);l&&(f.set("hitPayload",h,!0),f.set("hitCallback",k,!0),f.set("_x_19",void 0,!0),e(f))})}}}; +var ri=function(){return"&tc="+Nb.filter(function(a){return a}).length},ui=function(){2022<=si().length&&ti()},wi=function(){vi||(vi=G.setTimeout(ti,500))},ti=function(){vi&&(G.clearTimeout(vi),vi=void 0);void 0===xi||yi[xi]&&!zi&&!Ai||(Bi[xi]||Ci.Ah()||0>=Di--?(E(1),Bi[xi]=!0):(Ci.Wh(),od(si()),yi[xi]=!0,Ei=Fi=Gi=Ai=zi=""))},si=function(){var a=xi;if(void 0===a)return"";var b=Hc("GTM"),c=Hc("TAGGING");return[Hi,yi[a]?"":"&es=1",Ii[a],b?"&u="+b:"",c?"&ut="+c:"",ri(),zi,Ai,Gi?Gi:"",Fi,Ei,"&z=0"].join("")}, +Ji=function(){return[Ve,"&v=3&t=t","&pid="+Ga(),"&rv="+Le.kc].join("")},Ki="0.005000">Math.random(),Hi=Ji(),Li=function(){Hi=Ji()},yi={},zi="",Ai="",Ei="",Fi="",Gi="",xi=void 0,Ii={},Bi={},vi=void 0,Ci=function(a,b){var c=0,d=0;return{Ah:function(){if(c=b&&(c=0);return c>=a},Wh:function(){Va()-d>=b&&(c=0);c++;d=Va()}}}(2,1E3),Di=1E3,Mi=function(a,b,c){if(Ki&&!Bi[a]&&b){a!==xi&&(ti(),xi=a);var d,e=String(b[$b.Na]||"").replace(/_/g,"");0===e.indexOf("cvt")&&(e="cvt"); +d=e;var f=c+d;zi=zi?zi+"."+f:"&tr="+f;var h=b["function"];if(!h)throw Error("Error: No function name given for function call.");var k=(Pb[h]?"1":"2")+d;Ei=Ei?Ei+"."+k:"&ti="+k;wi();ui()}},Ni=function(a,b,c){if(Ki&&!Bi[a]){a!==xi&&(ti(),xi=a);var d=c+b;Ai=Ai?Ai+"."+d:"&epr="+d;wi();ui()}},Oi=function(a,b,c){}; +function Pi(a,b,c,d){var e=Nb[a],f=Qi(a,b,c,d);if(!f)return null;var h=Wb(e[$b.Te],c,[]);if(h&&h.length){var k=h[0];f=Pi(k.index,{K:f,J:1===k.df?b.terminate:f,terminate:b.terminate},c,d)}return f} +function Qi(a,b,c,d){function e(){if(f[$b.wg])k();else{var w=Xb(f,c,[]);var z=Vh(c.id,String(f[$b.Na]),Number(f[$b.Ue]),w[$b.xg]),A=!1;w.vtp_gtmOnSuccess=function(){if(!A){A=!0;var F=Va()-D;Mi(c.id,Nb[a],"5");Wh(c.id,z,"success", +F);h()}};w.vtp_gtmOnFailure=function(){if(!A){A=!0;var F=Va()-D;Mi(c.id,Nb[a],"6");Wh(c.id,z,"failure",F);k()}};w.vtp_gtmTagId=f.tag_id;w.vtp_gtmEventId=c.id;Mi(c.id,f,"1");var B=function(){var F=Va()-D;Mi(c.id,f,"7");Wh(c.id,z,"exception",F);A||(A=!0,k())};var D=Va();try{Vb(w,c)}catch(F){B(F)}}}var f=Nb[a],h=b.K,k=b.J,l=b.terminate;if(c.xd(f))return null;var q=Wb(f[$b.Ve],c,[]);if(q&&q.length){var r=q[0],n=Pi(r.index,{K:h,J:k,terminate:l},c,d);if(!n)return null;h=n;k=2===r.df?l:n}if(f[$b.Pe]||f[$b.zg]){var t=f[$b.Pe]?Ob:c.ei,p=h,u=k;if(!t[a]){e=Ya(e); +var v=Ri(a,t,e);h=v.K;k=v.J}return function(){t[a](p,u)}}return e}function Ri(a,b,c){var d=[],e=[];b[a]=Si(d,e,c);return{K:function(){b[a]=Ti;for(var f=0;fe?1:dk?1:hd;++d){var e;try{e=!(!c.frames||!c.frames[b])}catch(k){e=!1}if(e)return c;var f;a:{try{var h=c.parent;if(h&&h!=c){f=h;break a}}catch(k){}f=null}if(!(c=f))break}return null};var zj=function(){};var Aj=function(a){void 0!==a.addtlConsent&&"string"!==typeof a.addtlConsent&&(a.addtlConsent=void 0);void 0!==a.gdprApplies&&"boolean"!==typeof a.gdprApplies&&(a.gdprApplies=void 0);return void 0!==a.tcString&&"string"!==typeof a.tcString||void 0!==a.listenerId&&"number"!==typeof a.listenerId?2:a.cmpStatus&&"error"!==a.cmpStatus?0:3},Bj=function(a,b){this.o=a;this.m=null;this.M={};this.wa=0;this.la=void 0===b?500:b;this.C=null};pa(Bj,zj); +var Dj=function(a){return"function"===typeof a.o.__tcfapi||null!=Cj(a)}; +Bj.prototype.addEventListener=function(a){var b={},c=Pc(function(){return a(b)}),d=0;-1!==this.la&&(d=setTimeout(function(){b.tcString="tcunavailable";b.internalErrorState=1;c()},this.la));var e=function(f,h){clearTimeout(d);f?(b=f,b.internalErrorState=Aj(b),h&&0===b.internalErrorState||(b.tcString="tcunavailable",h||(b.internalErrorState=3))):(b.tcString="tcunavailable",b.internalErrorState=3);a(b)};try{Ej(this,"addEventListener",e)}catch(f){b.tcString="tcunavailable",b.internalErrorState=3,d&&(clearTimeout(d), +d=0),c()}};Bj.prototype.removeEventListener=function(a){a&&a.listenerId&&Ej(this,"removeEventListener",null,a.listenerId)}; +var Gj=function(a,b,c){var d;d=void 0===d?"755":d;var e;a:{if(a.publisher&&a.publisher.restrictions){var f=a.publisher.restrictions[b];if(void 0!==f){e=f[void 0===d?"755":d];break a}}e=void 0}var h=e;if(0===h)return!1;var k=c;2===c?(k=0,2===h&&(k=1)):3===c&&(k=1,1===h&&(k=0));var l;if(0===k)if(a.purpose&&a.vendor){var q=Fj(a.vendor.consents,void 0===d?"755":d);l=q&&"1"===b&&a.purposeOneTreatment&&"DE"===a.publisherCC?!0:q&&Fj(a.purpose.consents,b)}else l=!0;else l=1===k?a.purpose&&a.vendor?Fj(a.purpose.legitimateInterests, +b)&&Fj(a.vendor.legitimateInterests,void 0===d?"755":d):!0:!0;return l},Fj=function(a,b){return!(!a||!a[b])},Ej=function(a,b,c,d){c||(c=function(){});if("function"===typeof a.o.__tcfapi){var e=a.o.__tcfapi;e(b,2,c,d)}else if(Cj(a)){Hj(a);var f=++a.wa;a.M[f]=c;if(a.m){var h={};a.m.postMessage((h.__tcfapiCall={command:b,version:2,callId:f,parameter:d},h),"*")}}else c({},!1)},Cj=function(a){if(a.m)return a.m;a.m=yj(a.o,"__tcfapiLocator");return a.m},Hj=function(a){a.C||(a.C=function(b){try{var c;c=("string"=== +typeof b.data?JSON.parse(b.data):b.data).__tcfapiReturn;a.M[c.callId](c.returnValue,c.success)}catch(d){}},vj(a.o,a.C))};var Ij={1:0,3:0,4:0,7:3,9:3,10:3};function Jj(a,b){if(""===a)return b;var c=Number(a);return isNaN(c)?b:c}var Kj=Jj("",550),Lj=Jj("",500);function Mj(){var a=L.tcf||{};return L.tcf=a} +var Nj=function(a,b){this.C=a;this.m=b;this.o=Va();},Oj=function(a){},Pj=function(a){},Vj=function(){var a=Mj(),b=new Bj(G,3E3),c=new Nj(b,a);if((Qj()?!0===G.gtag_enable_tcf_support:!1!==G.gtag_enable_tcf_support)&&!a.active&&("function"===typeof G.__tcfapi||Dj(b))){a.active=!0;a.Nb={};Rj();var d=setTimeout(function(){Sj(a);Tj(a);d=null},Lj);try{b.addEventListener(function(e){d&&(clearTimeout(d),d=null);if(0!==e.internalErrorState)Sj(a),Tj(a),Oj(c);else{var f;if(!1===e.gdprApplies)f=Uj(),b.removeEventListener(e); +else if("tcloaded"===e.eventStatus||"useractioncomplete"===e.eventStatus||"cmpuishown"===e.eventStatus){var h={},k;for(k in Ij)if(Ij.hasOwnProperty(k))if("1"===k){var l=e,q=!0;q=void 0===q?!1:q;var r;var n=l;!1===n.gdprApplies?r=!0:(void 0===n.internalErrorState&&(n.internalErrorState=Aj(n)),r="error"===n.cmpStatus||0!==n.internalErrorState||"loaded"===n.cmpStatus&&("tcloaded"===n.eventStatus||"useractioncomplete"===n.eventStatus)?!0:!1);h["1"]=r?!1===l.gdprApplies||"tcunavailable"===l.tcString|| +void 0===l.gdprApplies&&!q||"string"!==typeof l.tcString||!l.tcString.length?!0:Gj(l,"1",0):!1}else h[k]=Gj(e,k,Ij[k]);f=h}f&&(a.tcString=e.tcString||"tcempty",a.Nb=f,Tj(a),Oj(c))}}),Pj(c)}catch(e){d&&(clearTimeout(d),d=null),Sj(a),Tj(a)}}};function Sj(a){a.type="e";a.tcString="tcunavailable";a.Nb=Uj()}function Rj(){var a={};Nd((a.ad_storage="denied",a.wait_for_update=Kj,a))} +var Qj=function(){var a=!1;a=!0;return a};function Uj(){var a={},b;for(b in Ij)Ij.hasOwnProperty(b)&&(a[b]=!0);return a}function Tj(a){var b={};Od((b.ad_storage=a.Nb["1"]?"granted":"denied",b))} +var Wj=function(){var a=Mj();if(a.active&&void 0!==a.loadTime)return Number(a.loadTime)},Xj=function(){var a=Mj();return a.active?a.tcString||"":""},Yj=function(a){if(!Ij.hasOwnProperty(String(a)))return!0;var b=Mj();return b.active&&b.Nb?!!b.Nb[String(a)]:!0};var Zj=!1;function ak(a){var b=String(G.location).split(/[?#]/)[0],c=Le.Jf||G._CONSENT_MODE_SALT;return a?c?String(rf(b+a+c)):"0":""} +function bk(a,b,c,d,e){function f(t){var p;L.reported_gclid||(L.reported_gclid={});p=L.reported_gclid;var u;u=Zj&&e&&(!Id()||Pd(C.B))?k+"."+(d.prefix||"_gcl")+(t?"gcu":"gcs"):k+(t?"gcu":"gcs");if(!p[u]){p[u]=!0;var v=[],w=function(B,D){D&&v.push(B+"="+encodeURIComponent(D))},y="https://www.google.com";if(Id()){var x=Pd(C.B);w("gcs",Qd());t&&w("gcu","1");L.dedupe_gclid||(L.dedupe_gclid=""+Gf());w("rnd",L.dedupe_gclid); +if((!k||l&&"aw.ds"!==l)&&Pd(C.B)){var z=Eg("_gcl_aw");w("gclaw",z.join("."))}w("url",String(G.location).split(/[?#]/)[0]);w("dclid",ck(b,q));!x&&b&&(y="https://pagead2.googlesyndication.com")}w("gdpr_consent",Xj());"1"===ng(!1)._up&&w("gtm_up","1");w("gclid",ck(b,k));w("gclsrc",l);w("gtm",uj(!c));Zj&&e&&Pd(C.B)&&(Sf(d||{}),w("auid",Nf[Of(d.prefix)]||""));var A=y+"/pagead/landing?"+v.join("&");vd(A)}}d=void 0===d?{}: +d;e=void 0===e?!0:e;var h=Hg(),k=h.gclid||"",l=h.gclsrc,q=h.dclid||"",r=!a&&(!k||l&&"aw.ds"!==l?!1:!0),n=Id();if(r||n)n?Rd(function(){f();Pd(C.B)||Ld(function(t){return f(!0,t.$e)},C.B)},[C.B]):f()}function ck(a,b){var c=a&&!Pd(C.B);return b&&c?"0":b}var Mk=function(){var a=!0;Yj(7)&&Yj(9)&&Yj(10)||(a=!1);var b=!0;b=!1;b&&!Lk()&&(a=!1);return a},Lk=function(){var a=!0;Yj(3)&&Yj(4)||(a=!1);return a};var hl=!1;function il(){var a=L;return a.gcq=a.gcq||new jl} +var kl=function(a,b,c){il().register(a,b,c)},ll=function(a,b,c,d){il().push("event",[b,a],c,d)},ml=function(a,b){il().push("config",[a],b)},nl=function(a,b,c,d){il().push("get",[a,b],c,d)},ol={},pl=function(){this.status=1;this.containerConfig={};this.targetConfig={};this.o={};this.C=null;this.m=!1},ql=function(a,b,c,d,e){this.type=a;this.C=b;this.U=c||"";this.m=d;this.o=e},jl=function(){this.M={};this.o={};this.m=[];this.C={AW:!1,UA:!1}},rl=function(a,b){var c=ch(b);return a.M[c.containerId]=a.M[c.containerId]|| +new pl},sl=function(a,b,c){if(b){var d=ch(b);if(d&&1===rl(a,b).status){rl(a,b).status=2;var e={};Ki&&(e.timeoutId=G.setTimeout(function(){E(38);wi()},3E3));a.push("require",[e],d.containerId);ol[d.containerId]=Va();if(fh()){}else{var h= +"/gtag/js?id="+encodeURIComponent(d.containerId)+"&l=dataLayer&cx=c",k=("http:"!=G.location.protocol?"https:":"http:")+("//www.googletagmanager.com"+h),l=ej(c,h)||k;ld(l)}}}},tl=function(a,b,c,d){if(d.U){var e=rl(a,d.U),f=e.C;if(f){var h=m(c),k=m(e.targetConfig[d.U]),l=m(e.containerConfig),q=m(e.o),r=m(a.o),n=df("gtm.uniqueEventId"),t=ch(d.U).prefix,p=oj(nj(pj(mj(lj(kj(jj(ij(hj(h),k),l),q),r),function(){Ni(n,t,"2");}),function(){ +Ni(n,t,"3");}),function(u,v){a.C[u]=v}),function(u){return a.C[u]});try{Ni(n,t,"1");f(d.U,b,d.C,p)}catch(u){Ni(n,t,"4");}}}};aa=jl.prototype; +aa.register=function(a,b,c){var d=rl(this,a);if(3!==d.status){d.C=b;d.status=3;if(c){d.o=c}var e=ch(a),f=ol[e.containerId];if(void 0!==f){var h=L[e.containerId].bootstrap,k=e.prefix.toUpperCase();L[e.containerId]._spx&&(k=k.toLowerCase());var l=df("gtm.uniqueEventId"),q=k,r=Va()-h;if(Ki&&!Bi[l]){l!==xi&&(ti(),xi=l);var n=q+"."+Math.floor(h-f)+"."+Math.floor(r);Fi= +Fi?Fi+","+n:"&cl="+n}delete ol[e.containerId]}this.flush()}};aa.push=function(a,b,c,d){var e=Math.floor(Va()/1E3);sl(this,c,b[0][C.Ma]||this.o[C.Ma]);hl&&c&&rl(this,c).m&&(d=!1);this.m.push(new ql(a,e,c,b,d));d||this.flush()};aa.insert=function(a,b,c){var d=Math.floor(Va()/1E3);0a.length)&&g(b)){var c;if(2=r?0:Math.round(n/r*100),p=H.hidden?!1:.5<=be(c);d();var u=ul(c,"gtm.video",[b]);u["gtm.videoProvider"]="youtube";u["gtm.videoStatus"]=h;u["gtm.videoUrl"]=q.url;u["gtm.videoTitle"]=q.title;u["gtm.videoDuration"]=Math.round(r);u["gtm.videoCurrentTime"]= +Math.round(n);u["gtm.videoElapsedTime"]=Math.round(f);u["gtm.videoPercent"]=t;u["gtm.videoVisible"]=p;return u},Zh:function(){e=Va()},md:function(){d()}}};var Qm=G.clearTimeout,Rm=G.setTimeout,N=function(a,b,c){if(fh()){b&&I(b)}else return ld(a,b,c)},Sm=function(){return new Date},Tm=function(){return G.location.href},Um=function(a){return me(oe(a),"fragment")},Vm=function(a){return ne(oe(a))},Wm=function(a,b){return df(a,b||2)},Xm=function(a,b,c){var d;b?(a.eventCallback=b,c&&(a.eventTimeout=c),d=mm(a)):d=mm(a);return d},Ym=function(a,b){G[a]=b},U=function(a,b,c){b&& +(void 0===G[a]||c&&!G[a])&&(G[a]=b);return G[a]},Zm=function(a,b,c){return uf(a,b,void 0===c?!0:!!c)},$m=function(a,b,c){return 0===Df(a,b,c)},an=function(a,b){if(fh()){b&&I(b)}else nd(a,b)},bn=function(a){return!!yl(a,"init",!1)},cn=function(a){wl(a,"init",!0)},dn=function(a,b){var c=(void 0===b?0:b)?"www.googletagmanager.com/gtag/js":Re;c+="?id="+encodeURIComponent(a)+"&l=dataLayer";N(hh("https://","http://",c))},en=function(a, +b){var c=a[b];return c},fn=function(a,b,c){Ki&&(lb(a)||Oi(c,b,a))}; +var gn=um.Jh;function En(a,b){a=String(a);b=String(b);var c=a.length-b.length;return 0<=c&&a.indexOf(b,c)==c}var Fn=new Ia;function Gn(a,b){function c(h){var k=oe(h),l=me(k,"protocol"),q=me(k,"host",!0),r=me(k,"port"),n=me(k,"path").toLowerCase().replace(/\/$/,"");if(void 0===l||"http"==l&&"80"==r||"https"==l&&"443"==r)l="web",r="default";return[l,q,r,n]}for(var d=c(String(a)),e=c(String(b)),f=0;f=Number(c);case "_gt":return Number(b)>Number(c);case "_lc":var l;l=String(b).split(",");return 0<=Ea(l,String(c));case "_le":return Number(b)<=Number(c);case "_lt":return Number(b)u.getDuration())return;ja=(Q.Pa-u.getCurrentTime())/X;if(0>ja&&(ia.shift(),0===ia.length))return}while(0>ja);w=function(){y=0;w=K;0z||y.push(z/100)}y.sort(function(A,B){return A-B});return y}function k(u){for(var v=u.split(","),w=v.length,y=[],x=0;xz||y.push(z)}y.sort(function(A,B){return A-B});return y}function l(u,v,w){var y=u.map(function(A){return{Pa:A, +wf:A,sf:void 0}});if(!v.length)return y;var x=v.map(function(A){return{Pa:A*w,wf:void 0,sf:A}});if(!y.length)return x;var z=y.concat(x);z.sort(function(A,B){return A.Pa-B.Pa});return z}function q(u){var v=!!u.vtp_captureStart,w=!!u.vtp_captureComplete,y=!!u.vtp_capturePause,x=h(u.vtp_progressThresholdsPercent+""),z=k(u.vtp_progressThresholdsTimeInSeconds+""),A=!!u.vtp_fixMissingApi;if(v||w||y||x.length||z.length){var B={Yg:v,Wg:w,Xg:y,Rh:x,Sh:z,hf:A,Rd:void 0===u.vtp_uniqueTriggerId?"":u.vtp_uniqueTriggerId}, +D=U("YT"),F=function(){e(B)};I(u.vtp_gtmOnSuccess);if(D)D.ready&&D.ready(F);else{var K=U("onYouTubeIframeAPIReady");Ym("onYouTubeIframeAPIReady",function(){K&&K();F()});I(function(){for(var P=U("document"),T=P.getElementsByTagName("script"),V=T.length,ia=0;ia=f)f=2E3;var h=c.vtp_uniqueTriggerId||"0";if(d){var k=function(q){return Math.max(f,q)};xl("lcl","mwt",k,0);e||xl("lcl","nv.mwt",k,0)}var l=function(q){q.push(h);return q};xl("lcl","ids",l,[]);e||xl("lcl","nv.ids",l,[]);bn("lcl")||(a(),cn("lcl"));I(c.vtp_gtmOnSuccess)})}(); + + +var tq={};tq.macro=function(a){if(um.jd.hasOwnProperty(a))return um.jd[a]},tq.onHtmlSuccess=um.bf(!0),tq.onHtmlFailure=um.bf(!1);tq.dataLayer=ef;tq.callback=function(a){We.hasOwnProperty(a)&&Aa(We[a])&&We[a]();delete We[a]};tq.bootstrap=0;tq._spx=!1;function uq(){L[Le.D]=tq;bb(Xe,Z.g);Tb=Tb||um;Ub=ec} +function vq(){xd.gtag_cs_api=!0;L=G.google_tag_manager=G.google_tag_manager||{};Vj();if(L[Le.D]){var a=L.zones;a&&a.unregisterChild(Le.D);}else{for(var b=data.resource||{},c=b.macros||[],d=0;d:first-child,.caution>:first-child,.dogfood>:first-child,.key-point>:first-child,.key-term>:first-child,.note>:first-child,.objective>:first-child,.quickstart-left>:first-child,.quickstart-wide>:first-child,.special>:first-child,.success>:first-child,.warning>:first-child,aside>:first-child,blockquote>:first-child,dd>:first-child,li>p:first-child,td>.devsite-table-wrapper:first-child>table,td>.expandable:first-child>:nth-child(2),td>:first-child,td>:first-child>li:first-child{margin-top:0}.beta>:last-child,.caution>:last-child,.dogfood>:last-child,.key-point>:last-child,.key-term>:last-child,.note>:last-child,.objective>:last-child,.quickstart-left>:last-child,.quickstart-wide>:last-child,.special>:last-child,.success>:last-child,.warning>:last-child,aside>:last-child,blockquote>:last-child,dd>:last-child,li>p:last-child,td>.devsite-table-wrapper:last-child>table,td>.expandable:last-child>:last-child,td>:last-child,td>:last-child>li:last-child{margin-bottom:0}html{-moz-box-sizing:border-box;box-sizing:border-box}*,:after,:before{-moz-box-sizing:inherit;box-sizing:inherit}.clearfix:after,.quickstart-step:after{clear:both;content:"";display:table;height:0;visibility:hidden}:root{--devsite-item-gap:24px}@media screen and (max-width:600px){:root{--devsite-item-gap:16px;--devsite-display-font:300 24px/32px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;--devsite-h1-font:300 24px/32px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif}}body,html{color:#202124;color:var(--devsite-text-primary-color,#202124);font:400 16px/24px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;height:100%;margin:0;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%}body[dark-theme]{background-color:#fff;background-color:var(--devsite-default-background,#fff)}.devsite-book-nav-bg:after,body[layout=docs]{background-color:#e8eaed;background-color:var(--devsite-body-background,#e8eaed)}body[sitemask--active]{overflow:hidden}p{margin:16px 0;padding:0}img,video{border:0;height:auto;max-width:100%}table img{max-width:272px}:link,:visited{color:#1a73e8;outline:0;text-decoration:none;word-break:break-word}table :link,table :visited{word-break:normal}a:focus{text-decoration:underline}a:focus img{-webkit-filter:brightness(75%);filter:brightness(75%)}.devsite-toast-content :link,.devsite-toast-content :visited{color:#fff;text-decoration:underline}.devsite-toast-content a:focus{background:hsla(0,0%,100%,.3);border-radius:2px;margin:-4px;padding:4px;text-decoration:none}sup{line-height:1}dd,ol,ul{margin:0;padding-left:40px}td>dl>dd,td>ol,td>ul{padding-left:20px}ol{list-style:decimal outside}ol ol{list-style-type:lower-alpha}ol ol ol{list-style-type:lower-roman}ol.upper-alpha{list-style-type:upper-alpha}ul{list-style:disc outside}li,li p{margin:12px 0;padding:0}dt{font:700 16px/24px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif}blockquote,dd,dt{margin:16px 0}blockquote{background:#f1f3f4;padding:8px;quotes:none}hr{background:#dadce0;border:0;height:1px;margin:16px 0;width:100%}.devsite-article-body>hr.full-width{margin:16px -40px;width:calc(100% + 80px)}@media screen and (max-width:840px){.devsite-article-body>hr.full-width{margin:16px -24px;width:calc(100% + 48px)}}@media screen and (max-width:600px){.devsite-article-body>hr.full-width{margin:16px -16px;width:calc(100% + 32px)}}abbr,acronym{border-bottom:1px dotted #5f6368;cursor:help}address,cite,dfn,em{font-style:italic}strong{font-weight:700}[visually-hidden]{opacity:0!important;pointer-events:none!important;visibility:hidden!important}.hidden,[hidden]{display:none!important}[render-hidden]{display:inline!important;position:absolute!important;visibility:hidden!important}[no-scroll]{overflow:hidden}#app-progress{left:0;position:fixed;right:0;top:0;z-index:1011}#app-progress .devsite-progress--indeterminate .devsite-progress--indeterminate-1,#app-progress .devsite-progress--indeterminate .devsite-progress--indeterminate-3{background-color:#5f6368;background-color:var(--devsite-progress-background-color,var(--devsite-primary-color,#5f6368))}.devsite-article .material-icons{vertical-align:bottom}.devsite-article-body .material-icons:not(:link),[type=landing] .devsite-article .material-icons:not(:link){cursor:default}.footnotes ol{padding-left:16px}.footnotes li{font:400 13px/20px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif}#qv-wrapper,#table-of-contents,#tb-wrapper,.inline-toc,div.toc:not(.class):not(.group):not(.type):not(.interface),h2#contents,h2.toc,h3#contents,h3.toc,ol.toc,section.toc,ul.toc{display:none}@media screen and (max-width:840px){#app-progress{z-index:1014}}.no-feedback devsite-feedback{display:none!important}.preserve-case{text-transform:none}a.external:after,a[href*=man7\.org]:after,a[href*=oracle\.com]:after{font:normal normal normal 24px/1 Material Icons;-webkit-font-feature-settings:"liga";-moz-font-feature-settings:"liga";font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal;content:"open_in_new";font-size:18px;margin:0;vertical-align:text-bottom}[dir=ltr] a.external:after,[dir=ltr] a[href*=man7\.org]:after,[dir=ltr] a[href*=oracle\.com]:after{margin-left:4px}[dir=rtl] a.external:after,[dir=rtl] a[href*=man7\.org]:after,[dir=rtl] a[href*=oracle\.com]:after{margin-right:4px;-webkit-transform:scaleX(-1);transform:scaleX(-1)}a.download:before{font:normal normal normal 24px/1 Material Icons;-webkit-font-feature-settings:"liga";-moz-font-feature-settings:"liga";font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal;content:"file_download";display:inline-block;font-size:18px;margin:0;vertical-align:text-bottom}[dir=ltr] a.download:before{margin-right:4px}[dir=rtl] a.download:before{margin-left:4px}devsite-content{counter-reset:numbered}h2.numbered{line-height:48px;margin-top:60px;padding-bottom:19px}h2.numbered:before{background:#bdc1c6;border-radius:50%;color:#fff;content:counter(numbered);counter-increment:numbered;display:inline-block;height:48px;line-height:48px;margin:0 20px 0 0;text-align:center;width:48px}[dir=rtl] h2.numbered:before{margin:0 0 0 20px}.compare-better,.compare-no,.compare-worse,.compare-yes{font-weight:700}.compare-better:before,.compare-blank:before,.compare-no:before,.compare-worse:before,.compare-yes:before{content:"";display:inline-block;font:normal normal normal 24px/1 Material Icons;-webkit-font-feature-settings:"liga";-moz-font-feature-settings:"liga";font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;word-wrap:normal;margin:-4px 4px 0 0;text-transform:none;vertical-align:middle;width:24px}[dir=rtl] .compare-better:before,[dir=rtl] .compare-blank:before,[dir=rtl] .compare-no:before,[dir=rtl] .compare-worse:before,[dir=rtl] .compare-yes:before{margin:-4px 0 0 4px}.compare-better:before{color:#34a853;content:"thumb_up"}.compare-no:before{color:#dd2c00;content:"not_interested"}.compare-worse:before{color:#dd2c00;content:"thumb_down"}.compare-yes:before{color:#34a853;content:"check"}.align-center{text-align:center}.align-right{text-align:right}.hanging-indent,.members.function td:first-child{padding-left:25px;text-indent:-17px}[dir=rtl] .hanging-indent,[dir=rtl] .members.function td:first-child{padding-left:0;padding-right:25px}.bad-table{table-layout:fixed}.bad-table td,.bad-table tr{word-wrap:break-word}.bad-table pre{word-wrap:normal}.screenshot{border:1px solid #e8eaed;padding:3px}.columns td,.columns th,.columns tr{background:0;border:0;font:16px/24px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;padding:0}[dir=ltr] .columns td,[dir=ltr] .columns th{padding-right:20px}[dir=rtl] .columns td,[dir=rtl] .columns th{padding-left:20px}.columns th{color:#202124;font-weight:500}.columns code,.columns pre{background:#f1f3f4}.inline:not(.expandable){display:inline}.inline-block{display:inline-block}.block{display:block}img.inline-icon{height:1.2em;vertical-align:sub}.no-select{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.attempt-left,.attempt-right,aside.attempt-left,aside.attempt-right{max-width:calc((100% - 40px)/2)}.attempt-left,.video-wrapper-left,aside.attempt-left{float:left;margin:0 40px 40px 0}.attempt-right,.video-wrapper,[dir=rtl] .attempt-left,[dir=rtl] .video-wrapper-left,[dir=rtl] aside.attempt-left,aside.attempt-right{float:right;margin:0 0 40px 40px}[dir=rtl] .attempt-right,[dir=rtl] .video-wrapper,[dir=rtl] aside.attempt-right{float:left;margin:0 40px 40px 0}.clear{clear:both}.attempt-left+.attempt-right,.attempt-left+.video-wrapper,.video-wrapper-left+.attempt-right,.video-wrapper-left+.video-wrapper,[dir=rtl] .attempt-left+.attempt-right,[dir=rtl] .attempt-left+.video-wrapper,[dir=rtl] .video-wrapper-left+.attempt-right,[dir=rtl] .video-wrapper-left+.video-wrapper{margin:0 0 40px}.video-wrapper,.video-wrapper-full-width{overflow:hidden;position:relative}.video-wrapper,.video-wrapper-left{width:calc((100% - 40px)/2)}.video-wrapper-full-width{margin:16px 0;width:100%}.video-wrapper-full-width embed,.video-wrapper-full-width iframe,.video-wrapper-full-width object,.video-wrapper-left embed,.video-wrapper-left iframe,.video-wrapper-left object,.video-wrapper embed,.video-wrapper iframe,.video-wrapper object{height:101%;left:-.5%;position:absolute;top:-.5%;width:101%}@media screen and (max-width:840px){.attempt-left,.attempt-right,aside.attempt-left,aside.attempt-right{display:block;max-width:100%}.attempt-left,.attempt-right,.video-wrapper,.video-wrapper-left,aside.attempt-left,aside.attempt-right{float:none;margin:16px 0;width:100%}}body[pending] #gc-wrapper{margin-top:0!important}body[ready] #gc-wrapper{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-webkit-flex:1 0;-moz-box-flex:1;-ms-flex:1 0;flex:1 0;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.devsite-wrapper{min-height:100vh}body[ready] .devsite-wrapper{min-height:100%;overflow:hidden}@supports ((display:-webkit-flex) or (display:flex)){body[ready] .devsite-wrapper{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}.full-bleed{margin:0;padding:0}.devsite-book-nav-bg,devsite-book-nav{width:268px}body[pending] devsite-book-nav{position:absolute}@media screen and (max-width:840px){body[devsite-book-nav--open]{overflow:hidden}body[devsite-book-nav--open] devsite-book-nav[fixed]{-webkit-transform:translateZ(0)!important;transform:translateZ(0)!important}}body devsite-toc.devsite-toc{-ms-grid-column:5;grid-column:3;-ms-grid-row:1;grid-row:1;margin:24px 24px 0 0;min-width:0;width:auto}[dir=rtl] body devsite-toc.devsite-toc{margin:24px 0 0 24px}body devsite-toc>.devsite-nav-list{width:auto}.devsite-main-content{margin:0 auto;position:relative;width:100%;z-index:1003}#contain-402{z-index:1004!important}body[pending] .devsite-main-content{min-height:calc(100vh - 456px)}body[ready] .devsite-main-content{-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1;min-height:auto}body[layout=full] .devsite-main-content{max-width:1600px;padding:40px 80px}body[layout=full][type=error] .devsite-main-content{max-width:1600px;padding:0 80px}body[layout=full][type=landing] .devsite-main-content{max-width:none;padding:0}body[layout=docs] .devsite-main-content{display:-ms-grid;display:grid;grid-gap:24px;-ms-grid-columns:1fr 24px minmax(752px,936px) 24px 1fr;grid-template-columns:1fr minmax(752px,936px) 1fr;-ms-grid-rows:1fr;grid-template-rows:1fr}body[layout=docs] .devsite-main-content[has-toc]{-ms-grid-columns:1fr 24px minmax(752px,936px) 24px minmax(160px,1fr);grid-template-columns:1fr minmax(752px,936px) minmax(160px,1fr)}body[layout=docs] .devsite-main-content[has-book-nav]{-ms-grid-columns:minmax(268px,1fr) 24px minmax(752px,936px) 24px 1fr;grid-template-columns:minmax(268px,1fr) minmax(752px,936px) 1fr}body[layout=docs] .devsite-main-content[has-book-nav][has-toc]{-ms-grid-columns:minmax(268px,1fr) 24px minmax(752px,936px) 24px minmax(160px,1fr);grid-template-columns:minmax(268px,1fr) minmax(752px,936px) minmax(160px,1fr)}.devsite-main-content[has-book-nav]~.devsite-footer,.devsite-main-content[has-book-nav]~devsite-footer-promos,.devsite-main-content[has-book-nav]~devsite-footer-utility{margin:0 0 0 268px}[dir=rtl] .devsite-main-content[has-book-nav]~.devsite-footer,[dir=rtl] .devsite-main-content[has-book-nav]~devsite-footer-promos,[dir=rtl] .devsite-main-content[has-book-nav]~devsite-footer-utility{margin:0 268px 0 0}@media screen and (max-width:840px){.devsite-main-content[has-book-nav]~.devsite-footer,.devsite-main-content[has-book-nav]~devsite-footer-promos,.devsite-main-content[has-book-nav]~devsite-footer-utility{margin-left:0}[dir=rtl] .devsite-main-content[has-book-nav]~.devsite-footer,[dir=rtl] .devsite-main-content[has-book-nav]~devsite-footer-promos,[dir=rtl] .devsite-main-content[has-book-nav]~devsite-footer-utility{margin-right:0}}@media screen and (max-width:1252px){body[layout=docs] .devsite-main-content[has-toc]{-ms-grid-columns:1fr 24px minmax(752px,936px) 24px 1fr;grid-template-columns:1fr minmax(752px,936px) 1fr}body[layout=docs] .devsite-main-content[has-book-nav],body[layout=docs] .devsite-main-content[has-book-nav][has-toc]{-ms-grid-columns:268px 24px 1fr 24px;grid-template-columns:268px 1fr 0}}@media screen and (max-width:840px){body[layout=full] .devsite-main-content{padding:24px}body[layout=full][type=error] .devsite-main-content{padding:0 24px}body[layout=docs] .devsite-main-content{display:block;min-width:100%}devsite-content-footer{padding:0 24px}}@media screen and (max-width:600px){body[layout=full] .devsite-main-content{padding:16px}body[layout=full][type=error] .devsite-main-content,devsite-content-footer{padding:0 16px}}.devsite-icon:before{font:normal normal normal 24px/1 Material Icons;-webkit-font-feature-settings:"liga";-moz-font-feature-settings:"liga";font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal}.devsite-icon-arrow-drop-down:before{content:"arrow_drop_down"}.devsite-icon-close:before{content:"close"}.devsite-icon-code:before{content:"code"}.devsite-icon-code-dark:before,.devsite-icon-code-light:before{content:"brightness_medium"}.devsite-icon-copy:before{content:"content_copy"}.devsite-icon-edit:before{content:"edit"}aside{display:block;font-size:14px;margin:16px 0;padding:16px 24px}[dir=ltr] aside{padding-left:60px}[dir=rtl] aside{padding-right:60px}body[layout=full]:not([type=landing]) aside{margin:16px calc(50% - 50vw);padding:16px calc(50vw - 50%)}[dir=ltr] body[layout=full]:not([type=landing]) aside{padding-left:calc(50vw - 50% + 36px)}[dir=rtl] body[layout=full]:not([type=landing]) aside{padding-right:calc(50vw - 50% + 36px)}aside:before{font:normal normal normal 24px/1 Material Icons;-webkit-font-feature-settings:"liga";-moz-font-feature-settings:"liga";font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal;margin:0}[dir=ltr] aside:before{float:left;margin-left:-36px}[dir=rtl] aside:before{float:right;margin-right:-36px}aside :link,aside :visited{text-decoration:underline}aside a:focus,aside a:hover{background:hsla(0,0%,100%,.7);border-radius:2px;margin:-4px;padding:4px;text-decoration:none}aside pre{background:hsla(0,0%,100%,.75)}aside code{font-weight:700;padding:0}.beta{display:block;font-size:14px;margin:16px 0;padding:16px 24px}[dir=ltr] .beta{padding-left:60px}[dir=rtl] .beta{padding-right:60px}body[layout=full]:not([type=landing]) .beta{margin:16px calc(50% - 50vw);padding:16px calc(50vw - 50%)}[dir=ltr] body[layout=full]:not([type=landing]) .beta{padding-left:calc(50vw - 50% + 36px)}[dir=rtl] body[layout=full]:not([type=landing]) .beta{padding-right:calc(50vw - 50% + 36px)}.beta:before{font:normal normal normal 24px/1 Material Icons;-webkit-font-feature-settings:"liga";-moz-font-feature-settings:"liga";font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal;margin:0}[dir=ltr] .beta:before{float:left;margin-left:-36px}[dir=rtl] .beta:before{float:right;margin-right:-36px}.beta :link,.beta :visited{text-decoration:underline}.beta a:focus,.beta a:hover{background:hsla(0,0%,100%,.7);border-radius:2px;margin:-4px;padding:4px;text-decoration:none}.beta pre{background:hsla(0,0%,100%,.75)}.beta code{font-weight:700;padding:0}.caution{display:block;font-size:14px;margin:16px 0;padding:16px 24px}[dir=ltr] .caution{padding-left:60px}[dir=rtl] .caution{padding-right:60px}body[layout=full]:not([type=landing]) .caution{margin:16px calc(50% - 50vw);padding:16px calc(50vw - 50%)}[dir=ltr] body[layout=full]:not([type=landing]) .caution{padding-left:calc(50vw - 50% + 36px)}[dir=rtl] body[layout=full]:not([type=landing]) .caution{padding-right:calc(50vw - 50% + 36px)}.caution:before{font:normal normal normal 24px/1 Material Icons;-webkit-font-feature-settings:"liga";-moz-font-feature-settings:"liga";font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal;margin:0}[dir=ltr] .caution:before{float:left;margin-left:-36px}[dir=rtl] .caution:before{float:right;margin-right:-36px}.caution :link,.caution :visited{text-decoration:underline}.caution a:focus,.caution a:hover{background:hsla(0,0%,100%,.7);border-radius:2px;margin:-4px;padding:4px;text-decoration:none}.caution pre{background:hsla(0,0%,100%,.75)}.caution code{font-weight:700;padding:0}.dogfood{display:block;font-size:14px;margin:16px 0;padding:16px 24px}[dir=ltr] .dogfood{padding-left:60px}[dir=rtl] .dogfood{padding-right:60px}body[layout=full]:not([type=landing]) .dogfood{margin:16px calc(50% - 50vw);padding:16px calc(50vw - 50%)}[dir=ltr] body[layout=full]:not([type=landing]) .dogfood{padding-left:calc(50vw - 50% + 36px)}[dir=rtl] body[layout=full]:not([type=landing]) .dogfood{padding-right:calc(50vw - 50% + 36px)}.dogfood:before{font:normal normal normal 24px/1 Material Icons;-webkit-font-feature-settings:"liga";-moz-font-feature-settings:"liga";font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal;margin:0}[dir=ltr] .dogfood:before{float:left;margin-left:-36px}[dir=rtl] .dogfood:before{float:right;margin-right:-36px}.dogfood :link,.dogfood :visited{text-decoration:underline}.dogfood a:focus,.dogfood a:hover{background:hsla(0,0%,100%,.7);border-radius:2px;margin:-4px;padding:4px;text-decoration:none}.dogfood pre{background:hsla(0,0%,100%,.75)}.dogfood code{font-weight:700;padding:0}.key-point{display:block;font-size:14px;margin:16px 0;padding:16px 24px}[dir=ltr] .key-point{padding-left:60px}[dir=rtl] .key-point{padding-right:60px}body[layout=full]:not([type=landing]) .key-point{margin:16px calc(50% - 50vw);padding:16px calc(50vw - 50%)}[dir=ltr] body[layout=full]:not([type=landing]) .key-point{padding-left:calc(50vw - 50% + 36px)}[dir=rtl] body[layout=full]:not([type=landing]) .key-point{padding-right:calc(50vw - 50% + 36px)}.key-point:before{font:normal normal normal 24px/1 Material Icons;-webkit-font-feature-settings:"liga";-moz-font-feature-settings:"liga";font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal;margin:0}[dir=ltr] .key-point:before{float:left;margin-left:-36px}[dir=rtl] .key-point:before{float:right;margin-right:-36px}.key-point :link,.key-point :visited{text-decoration:underline}.key-point a:focus,.key-point a:hover{background:hsla(0,0%,100%,.7);border-radius:2px;margin:-4px;padding:4px;text-decoration:none}.key-point pre{background:hsla(0,0%,100%,.75)}.key-point code{font-weight:700;padding:0}.key-term{display:block;font-size:14px;margin:16px 0;padding:16px 24px}[dir=ltr] .key-term{padding-left:60px}[dir=rtl] .key-term{padding-right:60px}body[layout=full]:not([type=landing]) .key-term{margin:16px calc(50% - 50vw);padding:16px calc(50vw - 50%)}[dir=ltr] body[layout=full]:not([type=landing]) .key-term{padding-left:calc(50vw - 50% + 36px)}[dir=rtl] body[layout=full]:not([type=landing]) .key-term{padding-right:calc(50vw - 50% + 36px)}.key-term:before{font:normal normal normal 24px/1 Material Icons;-webkit-font-feature-settings:"liga";-moz-font-feature-settings:"liga";font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal;margin:0}[dir=ltr] .key-term:before{float:left;margin-left:-36px}[dir=rtl] .key-term:before{float:right;margin-right:-36px}.key-term :link,.key-term :visited{text-decoration:underline}.key-term a:focus,.key-term a:hover{background:hsla(0,0%,100%,.7);border-radius:2px;margin:-4px;padding:4px;text-decoration:none}.key-term pre{background:hsla(0,0%,100%,.75)}.key-term code{font-weight:700;padding:0}.note{display:block;font-size:14px;margin:16px 0;padding:16px 24px}[dir=ltr] .note{padding-left:60px}[dir=rtl] .note{padding-right:60px}body[layout=full]:not([type=landing]) .note{margin:16px calc(50% - 50vw);padding:16px calc(50vw - 50%)}[dir=ltr] body[layout=full]:not([type=landing]) .note{padding-left:calc(50vw - 50% + 36px)}[dir=rtl] body[layout=full]:not([type=landing]) .note{padding-right:calc(50vw - 50% + 36px)}.note:before{font:normal normal normal 24px/1 Material Icons;-webkit-font-feature-settings:"liga";-moz-font-feature-settings:"liga";font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal;margin:0}[dir=ltr] .note:before{float:left;margin-left:-36px}[dir=rtl] .note:before{float:right;margin-right:-36px}.note :link,.note :visited{text-decoration:underline}.note a:focus,.note a:hover{background:hsla(0,0%,100%,.7);border-radius:2px;margin:-4px;padding:4px;text-decoration:none}.note pre{background:hsla(0,0%,100%,.75)}.note code{font-weight:700;padding:0}.objective{display:block;font-size:14px;margin:16px 0;padding:16px 24px}[dir=ltr] .objective{padding-left:60px}[dir=rtl] .objective{padding-right:60px}body[layout=full]:not([type=landing]) .objective{margin:16px calc(50% - 50vw);padding:16px calc(50vw - 50%)}[dir=ltr] body[layout=full]:not([type=landing]) .objective{padding-left:calc(50vw - 50% + 36px)}[dir=rtl] body[layout=full]:not([type=landing]) .objective{padding-right:calc(50vw - 50% + 36px)}.objective:before{font:normal normal normal 24px/1 Material Icons;-webkit-font-feature-settings:"liga";-moz-font-feature-settings:"liga";font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal;margin:0}[dir=ltr] .objective:before{float:left;margin-left:-36px}[dir=rtl] .objective:before{float:right;margin-right:-36px}.objective :link,.objective :visited{text-decoration:underline}.objective a:focus,.objective a:hover{background:hsla(0,0%,100%,.7);border-radius:2px;margin:-4px;padding:4px;text-decoration:none}.objective pre{background:hsla(0,0%,100%,.75)}.objective code{font-weight:700;padding:0}.special{display:block;font-size:14px;margin:16px 0;padding:16px 24px}[dir=ltr] .special{padding-left:60px}[dir=rtl] .special{padding-right:60px}body[layout=full]:not([type=landing]) .special{margin:16px calc(50% - 50vw);padding:16px calc(50vw - 50%)}[dir=ltr] body[layout=full]:not([type=landing]) .special{padding-left:calc(50vw - 50% + 36px)}[dir=rtl] body[layout=full]:not([type=landing]) .special{padding-right:calc(50vw - 50% + 36px)}.special:before{font:normal normal normal 24px/1 Material Icons;-webkit-font-feature-settings:"liga";-moz-font-feature-settings:"liga";font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal;margin:0}[dir=ltr] .special:before{float:left;margin-left:-36px}[dir=rtl] .special:before{float:right;margin-right:-36px}.special :link,.special :visited{text-decoration:underline}.special a:focus,.special a:hover{background:hsla(0,0%,100%,.7);border-radius:2px;margin:-4px;padding:4px;text-decoration:none}.special pre{background:hsla(0,0%,100%,.75)}.special code{font-weight:700;padding:0}.success{display:block;font-size:14px;margin:16px 0;padding:16px 24px}[dir=ltr] .success{padding-left:60px}[dir=rtl] .success{padding-right:60px}body[layout=full]:not([type=landing]) .success{margin:16px calc(50% - 50vw);padding:16px calc(50vw - 50%)}[dir=ltr] body[layout=full]:not([type=landing]) .success{padding-left:calc(50vw - 50% + 36px)}[dir=rtl] body[layout=full]:not([type=landing]) .success{padding-right:calc(50vw - 50% + 36px)}.success:before{font:normal normal normal 24px/1 Material Icons;-webkit-font-feature-settings:"liga";-moz-font-feature-settings:"liga";font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal;margin:0}[dir=ltr] .success:before{float:left;margin-left:-36px}[dir=rtl] .success:before{float:right;margin-right:-36px}.success :link,.success :visited{text-decoration:underline}.success a:focus,.success a:hover{background:hsla(0,0%,100%,.7);border-radius:2px;margin:-4px;padding:4px;text-decoration:none}.success pre{background:hsla(0,0%,100%,.75)}.success code{font-weight:700;padding:0}.warning{display:block;font-size:14px;margin:16px 0;padding:16px 24px}[dir=ltr] .warning{padding-left:60px}[dir=rtl] .warning{padding-right:60px}body[layout=full]:not([type=landing]) .warning{margin:16px calc(50% - 50vw);padding:16px calc(50vw - 50%)}[dir=ltr] body[layout=full]:not([type=landing]) .warning{padding-left:calc(50vw - 50% + 36px)}[dir=rtl] body[layout=full]:not([type=landing]) .warning{padding-right:calc(50vw - 50% + 36px)}.warning:before{font:normal normal normal 24px/1 Material Icons;-webkit-font-feature-settings:"liga";-moz-font-feature-settings:"liga";font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal;margin:0}[dir=ltr] .warning:before{float:left;margin-left:-36px}[dir=rtl] .warning:before{float:right;margin-right:-36px}.warning :link,.warning :visited{text-decoration:underline}.warning a:focus,.warning a:hover{background:hsla(0,0%,100%,.7);border-radius:2px;margin:-4px;padding:4px;text-decoration:none}.warning pre{background:hsla(0,0%,100%,.75)}.warning code{font-weight:700;padding:0}@media screen and (max-width:600px){body[layout=full] aside{margin:16px -40px;padding:16px 40px}[dir=ltr] body[layout=full] aside{padding-left:76px}[dir=rtl] body[layout=full] aside{padding-right:76px}body[layout=full] .beta{margin:16px -40px;padding:16px 40px}[dir=ltr] body[layout=full] .beta{padding-left:76px}[dir=rtl] body[layout=full] .beta{padding-right:76px}body[layout=full] .caution{margin:16px -40px;padding:16px 40px}[dir=ltr] body[layout=full] .caution{padding-left:76px}[dir=rtl] body[layout=full] .caution{padding-right:76px}body[layout=full] .dogfood{margin:16px -40px;padding:16px 40px}[dir=ltr] body[layout=full] .dogfood{padding-left:76px}[dir=rtl] body[layout=full] .dogfood{padding-right:76px}body[layout=full] .key-point{margin:16px -40px;padding:16px 40px}[dir=ltr] body[layout=full] .key-point{padding-left:76px}[dir=rtl] body[layout=full] .key-point{padding-right:76px}body[layout=full] .key-term{margin:16px -40px;padding:16px 40px}[dir=ltr] body[layout=full] .key-term{padding-left:76px}[dir=rtl] body[layout=full] .key-term{padding-right:76px}body[layout=full] .note{margin:16px -40px;padding:16px 40px}[dir=ltr] body[layout=full] .note{padding-left:76px}[dir=rtl] body[layout=full] .note{padding-right:76px}body[layout=full] .objective{margin:16px -40px;padding:16px 40px}[dir=ltr] body[layout=full] .objective{padding-left:76px}[dir=rtl] body[layout=full] .objective{padding-right:76px}body[layout=full] .special{margin:16px -40px;padding:16px 40px}[dir=ltr] body[layout=full] .special{padding-left:76px}[dir=rtl] body[layout=full] .special{padding-right:76px}body[layout=full] .success{margin:16px -40px;padding:16px 40px}[dir=ltr] body[layout=full] .success{padding-left:76px}[dir=rtl] body[layout=full] .success{padding-right:76px}body[layout=full] .warning{margin:16px -40px;padding:16px 40px}[dir=ltr] body[layout=full] .warning{padding-left:76px}[dir=rtl] body[layout=full] .warning{padding-right:76px}}aside var{background:inherit;font-weight:700;padding:0}.beta,.beta :link,.beta :visited,.beta code,.note,.note :link,.note :visited,.note code,.special,.special :link,.special :visited,.special code,aside,aside :link,aside :visited,aside code{background:#e1f5fe;color:#01579b}.note:before,.special:before,aside:before{content:"star"}.beta:before{content:url("data:image/svg+xml;utf8,")}.caution,.caution :link,.caution :visited,.caution code{background:#feefe3;color:#bf360c}.caution:before{content:"error"}.dogfood,.dogfood :link,.dogfood :visited,.dogfood code{background:#eceff1;color:#546e7a}.dogfood:before{content:"pets"}.key-point,.key-point :link,.key-point :visited,.key-point code{background:#e8eaf6;color:#3f51b5}.key-point:before{content:"lightbulb_outline"}.key-term,.key-term :link,.key-term :visited,.key-term code{background:#f3e8fd;color:#9334e6}.key-term:before{content:"font_download"}.objective,.objective :link,.objective :visited,.objective code,.success,.success :link,.success :visited,.success code{background:#e0f2f1;color:#00796b}.objective:before{content:"school"}.success:before{content:"check_circle"}.warning,.warning :link,.warning :visited,.warning code{background:#fce8e6;color:#d50000}.warning:before{content:"warning"}.caution :focus code,.caution :hover code,.dogfood :focus code,.dogfood :hover code,.key-point :focus code,.key-point :hover code,.key-term :focus code,.key-term :hover code,.note :focus code,.note :hover code,.objective :focus code,.objective :hover code,.special :focus code,.special :hover code,.success :focus code,.success :hover code,.warning :focus code,.warning :hover code,aside :focus code,aside :hover code{background:transparent}.devsite-no-page-title>.beta:first-child,.devsite-no-page-title>.caution:first-child,.devsite-no-page-title>.dogfood:first-child,.devsite-no-page-title>.key-point:first-child,.devsite-no-page-title>.key-term:first-child,.devsite-no-page-title>.note:first-child,.devsite-no-page-title>.objective:first-child,.devsite-no-page-title>.special:first-child,.devsite-no-page-title>.success:first-child,.devsite-no-page-title>.warning:first-child,.devsite-no-page-title>aside:first-child{clear:right}.devsite-banner{font-size:14px}.devsite-banner :link,.devsite-banner :visited{text-decoration:underline}body[layout=full] .devsite-banner{margin:-40px calc(50% - 50vw) 40px}body[type=landing][layout] .devsite-banner{margin:0}body[layout=docs] .devsite-banner{margin:-40px -40px 40px}.devsite-banner-message{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;margin:0 auto;max-width:1488px;padding:20px 40px}body[layout=full] .devsite-banner-message,body[type=landing] .devsite-banner-message{padding:20px 24px}body[type=landing][layout=docs] .devsite-banner-message{padding:20px 40px}[dir=ltr] .devsite-banner-message-text{margin-right:auto}[dir=rtl] .devsite-banner-message-text{margin-left:auto}.devsite-banner[background] a:not(.button):focus,.devsite-banner a:not(.button):focus{background:hsla(0,0%,100%,.7);border-radius:2px;margin:-4px;padding:4px;text-decoration:none}.devsite-banner[background=white]{border-bottom:1px solid #dadce0}.devsite-banner-announcement,.devsite-banner-announcement :link,.devsite-banner-announcement :visited{background:#e1f5fe}body[layout=docs] .devsite-banner-announcement{border-radius:0}.devsite-banner-announcement[background] :link,.devsite-banner-announcement[background] :visited{background:0}.devsite-banner-confidential{background:#feefe3;color:#bf360c}.devsite-banner-confidential .devsite-banner-message:before{content:"warning";font:normal normal normal 24px/1 Material Icons;-webkit-font-feature-settings:"liga";-moz-font-feature-settings:"liga";font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal}[dir=ltr] .devsite-banner-confidential .devsite-banner-message:before{margin-right:16px}[dir=rtl] .devsite-banner-confidential .devsite-banner-message:before{margin-left:16px}.devsite-banner-translated{background:#f1f3f4;color:rgba(0,0,0,.65)}.devsite-banner-translated :link{text-decoration:none}.devsite-banner .button,.devsite-banner button{-webkit-box-flex:0;-webkit-flex:0 0 auto;-moz-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;margin:-6px 0;text-decoration:none}[dir=ltr] .devsite-banner .button,[dir=ltr] .devsite-banner button{margin-left:16px}[dir=rtl] .devsite-banner .button,[dir=rtl] .devsite-banner button{margin-right:16px}.devsite-banner .material-icons{margin:-2px 0;vertical-align:middle}.devsite-banner-translated-image{margin:4px 0 -4px;width:122px}[dir=ltr] .devsite-banner-translated-image{margin-right:24px}[dir=rtl] .devsite-banner-translated-image{margin-left:24px}.devsite-banner-heading{font-weight:700}@media screen and (max-width:1252px){.devsite-banner-translated .devsite-banner-translated-text{display:block}}@media screen and (max-width:840px){body[layout=docs] .devsite-banner,body[layout=full] .devsite-banner{margin:-24px -24px 24px}body[layout=docs] .devsite-banner-announcement{border-radius:0}.devsite-banner-message,body[layout] .devsite-banner-message,body[layout][type] .devsite-banner-message,body[type] .devsite-banner-message{padding:20px 24px}body[layout=full] .devsite-banner{margin-bottom:40px}}@media screen and (max-width:600px){body[layout=docs] .devsite-banner,body[layout=full] .devsite-banner{margin:-16px -16px 16px}body[layout=full] .devsite-banner{margin-bottom:40px}.devsite-banner-message,body[layout] .devsite-banner-message,body[layout][type] .devsite-banner-message,body[type] .devsite-banner-message{display:block;padding:16px}[dir] .devsite-banner .button,[dir] .devsite-banner button{margin:12px 0 0}}.devsite-card-group{display:grid;grid-gap:var(--devsite-item-gap,24px);grid-template-columns:repeat(var(--devsite-columns,3),1fr)}[ie-11] .devsite-card-group{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}[ie-11] [items-across=\31] .devsite-card-group{display:block}.devsite-card-wrapper{min-width:0}[ie-11] .devsite-card-wrapper{-webkit-box-flex:1;-webkit-flex:1 0 30%;-moz-box-flex:1;-ms-flex:1 0 30%;flex:1 0 30%;max-width:calc((100% - 48px)/3)}[dir=ltr] [ie-11] .devsite-card-wrapper{margin-left:24px}[dir=rtl] [ie-11] .devsite-card-wrapper{margin-right:24px}[dir=ltr] [ie-11] .devsite-card-wrapper:nth-of-type(3n+1){margin-left:0}[dir=rtl] [ie-11] .devsite-card-wrapper:nth-of-type(3n+1){margin-right:0}[ie-11] .devsite-card-wrapper:nth-of-type(n+4){margin-top:24px}[ie-11] [items-across=\34] .devsite-card-wrapper:nth-of-type(n+4){margin-top:0}[ie-11] [items-across=\31] .devsite-card-wrapper{margin:0;max-width:none}[ie-11] [items-across=\32] .devsite-card-wrapper{-webkit-flex-basis:45%;-ms-flex-preferred-size:45%;flex-basis:45%;max-width:calc((100% - 24px)/2)}[ie-11] [items-across=\33] .devsite-card-wrapper{-webkit-flex-basis:30%;-ms-flex-preferred-size:30%;flex-basis:30%;max-width:calc((100% - 48px)/3)}[ie-11] [items-across=\34] .devsite-card-wrapper{-webkit-flex-basis:20%;-ms-flex-preferred-size:20%;flex-basis:20%;max-width:calc((100% - 72px)/4)}[dir=ltr] [ie-11] [items-across] .devsite-card-wrapper{margin-left:24px}[dir=rtl] [ie-11] [items-across] .devsite-card-wrapper{margin-right:24px}[dir=ltr] [ie-11] [items-across=\31] .devsite-card-wrapper:nth-of-type(n),[dir=ltr] [ie-11] [items-across=\32] .devsite-card-wrapper:nth-of-type(odd),[dir=ltr] [ie-11] [items-across=\33] .devsite-card-wrapper:nth-of-type(3n+1),[dir=ltr] [ie-11] [items-across=\34] .devsite-card-wrapper:nth-of-type(4n+1){margin-left:0}[dir=rtl] [ie-11] [items-across=\31] .devsite-card-wrapper:nth-of-type(n),[dir=rtl] [ie-11] [items-across=\32] .devsite-card-wrapper:nth-of-type(odd),[dir=rtl] [ie-11] [items-across=\33] .devsite-card-wrapper:nth-of-type(3n+1),[dir=rtl] [ie-11] [items-across=\34] .devsite-card-wrapper:nth-of-type(4n+1){margin-right:0}[ie-11] [items-across=\31] .devsite-card-wrapper:nth-of-type(n+2),[ie-11] [items-across=\32] .devsite-card-wrapper:nth-of-type(n+3),[ie-11] [items-across=\33] .devsite-card-wrapper:nth-of-type(n+4),[ie-11] [items-across=\34] .devsite-card-wrapper:nth-of-type(n+5){margin-top:24px}.devsite-card-wrapper[hidden]{display:none}.devsite-card-list-link,.devsite-card h3{font:300 24px/32px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font:var(--devsite-h2-font,300 24px/32px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif);letter-spacing:-.01em;letter-spacing:var(--devsite-h2-letter-spacing,-.01em)}.devsite-card h3{margin:0 0 10px}.devsite-card{background:#fff;background:var(--devsite-card-background,#fff);border:0;border:var(--devsite-card-border,0);border-radius:2px;border-radius:var(--devsite-card-border-radius,2px);box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15);box-shadow:var(--devsite-card-box-shadow,0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15));display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;height:100%;overflow:hidden;position:relative}.devsite-card-image{height:100%;object-fit:cover;position:absolute;width:100%}[ie-11] .devsite-card-image{height:auto;left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.devsite-card-image-container{background-position:50%;background-repeat:no-repeat;background-size:cover;padding:0 0 56.25%}.devsite-card-image-no-background{background-image:none!important;overflow:hidden;position:relative}.devsite-card-content-wrapper{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-webkit-flex:1 0;-moz-box-flex:1;-ms-flex:1 0;flex:1 0;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.devsite-card-attribution,.devsite-card-buttons,.devsite-card-content{padding:16px;padding:var(--devsite-card-content-padding,16px)}.devsite-card-content{-webkit-box-flex:1;-webkit-flex:1 0;-moz-box-flex:1;-ms-flex:1 0;flex:1 0;word-break:break-word}.devsite-card-category{color:inherit;color:var(--devsite-label-color,inherit);font:700 12px/22px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font:var(--devsite-label-font,700 12px/22px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif);letter-spacing:.3px;letter-spacing:var(--devsite-label-letter-spacing,.3px);margin:0 0 16px;margin:var(--devsite-label-margin,0 0 16px);text-transform:uppercase}.devsite-card-summary{-webkit-box-orient:vertical;-webkit-line-clamp:4;display:-webkit-box;font:400 16px/24px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;margin:16px 0 0;max-height:96px;overflow:hidden}.devsite-card-attribution{border-top:1px solid #dadce0;-moz-box-sizing:content-box;box-sizing:content-box;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;font-size:12px;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;line-height:16px;min-height:40px;position:relative}.devsite-card-attribution-author,.devsite-card-attribution-date,.devsite-card-attribution-name,.devsite-card-duration{margin:0}.devsite-card-attribution-author+.devsite-card-attribution-date,.devsite-card-attribution-name+.devsite-card-attribution-author{margin-top:8px}.devsite-card-section{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.devsite-card-attribution+.devsite-card-buttons,.devsite-card-content+.devsite-card-buttons,.devsite-card-content+.devsite-card-section .activity-card-icons,.devsite-card-content+.devsite-card-section .devsite-card-buttons{padding-top:0}.devsite-card-buttons{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-moz-box-orient:horizontal;-moz-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;margin:auto 0 0}[dynamic-card-style=activity] .devsite-card h3{margin-bottom:4px}[dynamic-card-style=activity] .devsite-card-attribution-date,[dynamic-card-style=activity] .devsite-card-duration{font:400 12px/16px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;letter-spacing:.3px;color:#5f6368}[dynamic-card-style=activity] .codelab-card-icons{padding:0 8px}[dynamic-card-style=activity] .codelab-card-icon{height:32px;margin:8px;width:32px}.devsite-card-list{border:0;border:var(--devsite-card-border,0);border-radius:0;border-radius:var(--devsite-card-border-radius,0);overflow:visible;overflow:var(--devsite-card-list-overflow,visible);list-style:none;padding:0}.devsite-card-list-item{border-radius:2px;border-radius:var(--devsite-card-list-item-border-radius,2px);box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15);box-shadow:var(--devsite-card-box-shadow,0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15));margin:0 0 20px;margin:var(--devsite-card-list-item-margin,0 0 20px)}.devsite-card-list-item:not(:last-child){border-bottom:0;border-bottom:var(--devsite-card-border,0)}.devsite-card-list-item:last-child{border-bottom:0;margin:0}.devsite-card-list-link{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;color:#1a73e8;display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;padding:16px 20px;-webkit-transition:background .2s,color .2s;transition:background .2s,color .2s;width:100%}.devsite-card-list-link:focus,.devsite-card-list-link:hover{background:#e4eefc;background:var(--devsite-link-background-hover,#e4eefc)}.devsite-card-list-link:focus{text-decoration:none}.devsite-card-list-link:after{font:normal normal normal 24px/1 Material Icons;-webkit-font-feature-settings:"liga";-moz-font-feature-settings:"liga";font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal;content:"arrow_forward";margin-left:auto;opacity:0;-webkit-transform:translateX(-20px);transform:translateX(-20px);-webkit-transition:opacity .2s,-webkit-transform .2s;transition:opacity .2s,-webkit-transform .2s;transition:opacity .2s,transform .2s;transition:opacity .2s,transform .2s,-webkit-transform .2s}.devsite-card-list-link:focus:after,.devsite-card-list-link:hover:after{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}@media screen and (max-width:840px){.devsite-card-group{--devsite-columns:2}[ie-11] .devsite-card-wrapper:nth-of-type(n){-webkit-flex-basis:45%;-ms-flex-preferred-size:45%;flex-basis:45%;margin:0;max-width:calc((100% - 24px)/2)}[ie-11] [items-across=\31] .devsite-card-wrapper:nth-of-type(n){max-width:none}[dir=ltr] [ie-11] .devsite-card-wrapper:nth-of-type(2n),[dir=ltr] [ie-11] [items-across] .devsite-card-wrapper:nth-of-type(2n){margin-left:24px}[dir=rtl] [ie-11] .devsite-card-wrapper:nth-of-type(2n),[dir=rtl] [ie-11] [items-across] .devsite-card-wrapper:nth-of-type(2n){margin-right:24px}[dir=ltr] [ie-11] [items-across=\31] .devsite-card-wrapper:nth-of-type(n),[dir=ltr] [ie-11] [items-across=\33] .devsite-card-wrapper:nth-of-type(odd),[dir=ltr] [ie-11] [items-across=\34] .devsite-card-wrapper:nth-of-type(odd){margin-left:0}[dir=rtl] [ie-11] [items-across=\31] .devsite-card-wrapper:nth-of-type(n),[dir=rtl] [ie-11] [items-across=\33] .devsite-card-wrapper:nth-of-type(odd),[dir=rtl] [ie-11] [items-across=\34] .devsite-card-wrapper:nth-of-type(odd){margin-right:0}[ie-11] .devsite-card-wrapper:nth-of-type(n+3),[ie-11] [items-across=\31] .devsite-card-wrapper:nth-of-type(n+2),[ie-11] [items-across=\33] .devsite-card-wrapper:nth-of-type(n+3),[ie-11] [items-across=\34] .devsite-card-wrapper:nth-of-type(n+3){margin-top:24px}}@media screen and (max-width:600px){.devsite-card-group{display:block}[ie-11] .devsite-card-wrapper:nth-of-type(n),[ie-11] [items-across] .devsite-card-wrapper:nth-of-type(n){-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%;margin:0;max-width:none}[dir=ltr] [ie-11] .devsite-card-wrapper:nth-of-type(n),[dir=ltr] [ie-11] [items-across] .devsite-card-wrapper:nth-of-type(n){margin-left:0}[dir=rtl] [ie-11] .devsite-card-wrapper:nth-of-type(n),[dir=rtl] [ie-11] [items-across] .devsite-card-wrapper:nth-of-type(n){margin-right:0}.devsite-card-wrapper:not(:first-of-type),[ie-11] .devsite-card-wrapper:nth-of-type(n+2),[ie-11] [items-across] .devsite-card-wrapper:nth-of-type(n+2){margin-top:16px}.devsite-card-summary{font-size:14px;line-height:20px;max-height:80px}}.pre-style,code,pre{background:#f1f3f4;color:#37474f;direction:ltr!important;font:400 100%/1 Roboto Mono,monospace;padding:1px 4px;text-align:left!important}code{font:500 90%/1 Roboto Mono,monospace;word-break:break-word}.pre-style code,pre code,table code{font-weight:400;word-break:normal}.pre-style,pre{font:14px/20px Roboto Mono,monospace;margin:16px 0;overflow-x:auto;padding:24px;position:relative}.pre-style code,pre code{background:0;font-size:14px;padding:0}b code,strong code{font-weight:700}pre.devsite-code-highlight>code>span,pre.devsite-code-highlight>span{opacity:.54}td>pre:only-child{padding:0}td>devsite-code:only-child pre,td>devsite-code pre.inline-code{padding:0 64px 0 0}td>devsite-code:not([dark-code]):only-child pre,td>devsite-code pre.inline-code{background:0}td>devsite-code:only-child pre~.devsite-code-buttons-container,td>devsite-code pre.inline-code~.devsite-code-buttons-container{top:-6px}h1 code,h2 code,h3 code,h4 code,h5 code,h6 code{background:0;color:#212121;padding:0}h1 code{color:#757575}a code,td a code{color:#185abc}body[layout] .devsite-main-content var span,var,var code{color:#ec407a;-moz-osx-font-smoothing:auto;-webkit-font-smoothing:auto;font-weight:700}pre.clear-for-copy{all:initial;left:-99999px;position:absolute;top:-99999px;white-space:pre}pre.clear-for-copy *{all:unset;font-family:Roboto Mono,monospace;white-space:pre}fieldset{border:0;margin:0;padding:0}label{color:#5f6368;display:block;font-size:12px}input+label{color:#202124;display:inline;font-size:16px}label[for]{cursor:pointer}input[type=checkbox],input[type=radio]{-webkit-appearance:none;background:#fff;border-radius:2px;cursor:pointer;font:normal normal normal 24px/1 Material Icons;-webkit-font-feature-settings:"liga";-moz-font-feature-settings:"liga";font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal;height:18px;margin:-2px 8px 2px 0;outline:0;position:relative;-webkit-transition:color .2s;transition:color .2s;vertical-align:middle;width:18px}[dir=rtl] input[type=checkbox],[dir=rtl] input[type=radio]{margin:-2px 0 2px 8px}input[type=checkbox]{color:#5f6368}input[type=radio]{border-radius:50%;color:#5f6368;-webkit-transition:none;transition:none}input[type=checkbox]:focus:before,input[type=radio]:focus:before{background:#e8eaed}input[type=checkbox]:checked,input[type=checkbox]:indeterminate,input[type=radio]:checked{color:#1a73e8}input[type=checkbox]:checked:focus:before,input[type=checkbox]:indeterminate:focus:before,input[type=radio]:focus:before{background:#d2e3fc;background:var(--devsite-input-background-focus,#d2e3fc)}input[type=checkbox]:after,input[type=radio]:after{content:"check_box_outline_blank";position:relative;right:3px;top:-3px;z-index:1}[dir=rtl] input[type=checkbox]:after,[dir=rtl] input[type=radio]:after{left:3px;right:auto}input[type=checkbox]:checked:after{content:"check_box"}input[type=checkbox]:indeterminate:after{content:"indeterminate_check_box"}input[type=radio]:after{content:"radio_button_unchecked"}input[type=radio]:checked:after{content:"radio_button_checked"}input[type=checkbox]:before,input[type=radio]:before{border-radius:50%;content:"";display:block;height:36px;position:absolute;top:-9px;-webkit-transition:background .2s;transition:background .2s;width:36px}[dir=ltr] input[type=checkbox]:before,[dir=ltr] input[type=radio]:before{left:-9px}[dir=rtl] input[type=checkbox]:before,[dir=rtl] input[type=radio]:before{right:-9px}input:disabled+label,input[type=checkbox]:disabled,input[type=radio]:disabled{color:#bdc1c6;color:var(--devsite-input-color-disabled,#bdc1c6);cursor:default}input[type=date],input[type=datetime-local],input[type=datetime],input[type=email],input[type=month],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week],select[multiple],select[size],textarea{border:1px solid #e8eaed;border:var(--devsite-input-border,1px solid #e8eaed);border-radius:2px;color:#202124;font:16px/20px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;margin:0;max-width:100%;outline:0;padding:7px;-webkit-transition:border-color .2s;transition:border-color .2s;vertical-align:middle}input[type=date]:focus,input[type=datetime-local]:focus,input[type=datetime]:focus,input[type=email]:focus,input[type=month]:focus,input[type=number]:focus,input[type=password]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=time]:focus,input[type=url]:focus,input[type=week]:focus,select[multiple]:focus,select[size]:focus,textarea:focus{border-bottom:2px solid #1a73e8;padding-bottom:6px}input[type=date]:disabled,input[type=datetime-local]:disabled,input[type=datetime]:disabled,input[type=email]:disabled,input[type=month]:disabled,input[type=number]:disabled,input[type=password]:disabled,input[type=search]:disabled,input[type=tel]:disabled,input[type=text]:disabled,input[type=time]:disabled,input[type=url]:disabled,input[type=week]:disabled,select[multiple]:disabled,select[size]:disabled,textarea:disabled{background:#f1f3f4}body input[type=file]{padding:8px 16px;padding:var(--devsite-input-file-padding,8px 16px);height:auto;line-height:1}select{-moz-appearance:none;-webkit-appearance:none;border:1px solid #e8eaed;border:var(--devsite-select-border,1px solid #e8eaed);border-radius:2px;border-radius:var(--devsite-select-border-radius,2px);box-shadow:none;color:#202124;cursor:pointer;display:inline-block;font:500 14px/36px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font:var(--devsite-select-font,500 14px/36px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif);height:36px;line-height:34px;max-width:340px;min-width:72px;outline:0;overflow:hidden;padding:0 27px 0 7px;padding:var(--devsite-select-padding,0 27px 0 7px);text-align:left;text-indent:.01px;text-overflow:ellipsis;-webkit-transition:background-color .2s;transition:background-color .2s;vertical-align:middle;white-space:nowrap;background:url('data:image/svg+xml;utf8,') #fff no-repeat 100%}select:focus,select:hover{background-color:#f1f3f4}select:active{background-color:#e8eaed}select:disabled{background-color:#f1f3f4;border-color:transparent;color:#bdc1c6;cursor:default;background-image:url('data:image/svg+xml;utf8,')}@media screen and (-ms-high-contrast:active){select{background-image:url('data:image/svg+xml;utf8,')}}@media screen and (-ms-high-contrast:black-on-white){select{background-image:url('data:image/svg+xml;utf8,')}}select::-ms-expand{display:none}devsite-book-nav .devsite-breadcrumb-list,devsite-content .devsite-breadcrumb-list,devsite-header .devsite-breadcrumb-list{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;padding:0;white-space:nowrap}.devsite-search-project .devsite-breadcrumb-list,devsite-book-nav .devsite-breadcrumb-list,devsite-header .devsite-breadcrumb-list{font-family:Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font-family:var(--devsite-font-family,Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif);display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}devsite-header .devsite-breadcrumb-list{letter-spacing:0;letter-spacing:var(--devsite-header-lower-breadcrumb-letter-spacing,0);text-transform:none;text-transform:var(--devsite-header-lower-breadcrumb-text-transform,none)}devsite-content .devsite-breadcrumb-list{display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;-ms-flex:1;flex:1;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;font-size:13px}body[layout=full] devsite-content .devsite-breadcrumb-list,body[type=landing] devsite-content .devsite-breadcrumb-list{display:none}devsite-book-nav .devsite-breadcrumb-item,devsite-content .devsite-breadcrumb-item,devsite-header .devsite-breadcrumb-item{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;margin:0}devsite-book-nav .devsite-breadcrumb-guillemet,devsite-book-nav .devsite-breadcrumb-link,devsite-header .devsite-breadcrumb-guillemet,devsite-header .devsite-breadcrumb-link{color:rgba(0,0,0,.65);fill:rgba(0,0,0,.65)}devsite-book-nav .devsite-breadcrumb-guillemet:focus,devsite-book-nav .devsite-breadcrumb-guillemet:hover,devsite-book-nav .devsite-breadcrumb-link:focus,devsite-book-nav .devsite-breadcrumb-link:hover,devsite-header .devsite-breadcrumb-guillemet:focus,devsite-header .devsite-breadcrumb-guillemet:hover,devsite-header .devsite-breadcrumb-link:focus,devsite-header .devsite-breadcrumb-link:hover{color:rgba(0,0,0,.87)}devsite-book-nav .devsite-breadcrumb-guillemet:focus .devsite-google-wordmark-svg-path,devsite-book-nav .devsite-breadcrumb-guillemet:hover .devsite-google-wordmark-svg-path,devsite-book-nav .devsite-breadcrumb-link:focus .devsite-google-wordmark-svg-path,devsite-book-nav .devsite-breadcrumb-link:hover .devsite-google-wordmark-svg-path,devsite-header .devsite-breadcrumb-guillemet:focus .devsite-google-wordmark-svg-path,devsite-header .devsite-breadcrumb-guillemet:hover .devsite-google-wordmark-svg-path,devsite-header .devsite-breadcrumb-link:focus .devsite-google-wordmark-svg-path,devsite-header .devsite-breadcrumb-link:hover .devsite-google-wordmark-svg-path{fill:rgba(0,0,0,.87)}devsite-book-nav .devsite-breadcrumb-guillemet,devsite-header .devsite-breadcrumb-guillemet{font-size:24px;margin:0 4px;width:24px}devsite-content .devsite-breadcrumb-guillemet{color:#5f6368;font-size:18px;margin:0 4px;width:18px}devsite-book-nav .devsite-breadcrumb-guillemet:before,devsite-content .devsite-breadcrumb-guillemet:before,devsite-header .devsite-breadcrumb-guillemet:before{content:"chevron_right"}[dir=rtl] devsite-book-nav .devsite-breadcrumb-guillemet:before,[dir=rtl] devsite-content .devsite-breadcrumb-guillemet:before,[dir=rtl] devsite-header .devsite-breadcrumb-guillemet:before{content:"chevron_left"}devsite-book-nav .devsite-breadcrumb-link,devsite-content .devsite-breadcrumb-link,devsite-header .devsite-breadcrumb-link{display:inline-block;-webkit-transition:color .2s;transition:color .2s}devsite-header .devsite-doc-set-nav-row .devsite-breadcrumb-link,devsite-header .devsite-product-description-row .devsite-breadcrumb-guillemet,devsite-header .devsite-product-description-row .devsite-breadcrumb-link{color:#fff;color:var(--devsite-header-foreground-lower-hover,#fff);fill:#fff;fill:var(--devsite-header-foreground-lower-hover,#fff)}devsite-header .devsite-doc-set-nav-row .devsite-breadcrumb-link:focus,devsite-header .devsite-doc-set-nav-row .devsite-breadcrumb-link:hover,devsite-header .devsite-product-description-row .devsite-breadcrumb-guillemet:focus,devsite-header .devsite-product-description-row .devsite-breadcrumb-guillemet:hover,devsite-header .devsite-product-description-row .devsite-breadcrumb-link:focus,devsite-header .devsite-product-description-row .devsite-breadcrumb-link:hover{color:hsla(0,0%,100%,.7);color:var(--devsite-header-foreground-lower,hsla(0,0%,100%,.7));fill:hsla(0,0%,100%,.7);fill:var(--devsite-header-foreground-lower,hsla(0,0%,100%,.7))}devsite-book-nav .devsite-breadcrumb-link:focus,devsite-book-nav .devsite-breadcrumb-link:hover,devsite-header .devsite-breadcrumb-link:focus,devsite-header .devsite-breadcrumb-link:hover{text-decoration:none}devsite-content .devsite-breadcrumb-link{color:#5f6368}devsite-content .devsite-breadcrumb-link:focus,devsite-content .devsite-breadcrumb-link:hover{color:#1a73e8;text-decoration:none}.devsite-nav{font-size:13px}.devsite-nav-list,.devsite-nav-responsive-tabs,.devsite-nav-section{list-style-type:none;padding:0}.devsite-nav-item{line-height:16px;margin:0}.devsite-nav-title{color:#202124;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;padding:4px 0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.devsite-nav-title[href]:focus,.devsite-nav-title[href]:hover{color:#1a73e8;text-decoration:none}.devsite-nav-heading>.devsite-nav-title{color:rgba(0,0,0,.65);font-weight:700}.devsite-nav-active{font-weight:500}@media screen and (-ms-high-contrast:active){.devsite-nav-active{font-weight:700;text-decoration:underline}}.devsite-nav-active,.devsite-nav-active.devsite-nav-title,.devsite-nav-active.devsite-nav-title>.devsite-nav-icon:before,.devsite-nav-deprecated .devsite-nav-active.devsite-nav-title{color:#1a73e8;color:var(--devsite-link-color-active,#1a73e8)}.devsite-nav-text{overflow:hidden;text-overflow:ellipsis}.devsite-nav-accordion>devsite-expandable-nav>.devsite-nav-title-no-path:focus,.devsite-nav-title-no-path:focus{color:#1a73e8}.devsite-nav-icon{cursor:default;font-size:18px;margin:-1px 0 -1px 4px}[dir=rtl] .devsite-nav-icon{margin:-1px 4px -1px 0}.devsite-nav-icon:before{color:#5f6368;content:"info"}.devsite-nav-icon[data-icon=alpha]:before,.devsite-nav-icon[data-icon=beta]:before,.devsite-nav-icon[data-icon=experimental]:before,.devsite-nav-icon[data-icon=preview]:before{content:url("data:image/svg+xml;utf8,")}.devsite-nav-deprecated.devsite-nav-accordion .devsite-nav-title,.devsite-nav-deprecated .devsite-nav-title,.devsite-nav-icon[data-icon=deprecated]:before{color:#bdc1c6}.devsite-nav-icon[data-icon=deprecated]:before{content:"not_interested"}.devsite-nav-icon[data-icon=external]:before{content:"open_in_new"}[dir=rtl] .devsite-nav-icon[data-icon=external]:before{display:inline-block;-webkit-transform:scaleX(-1);transform:scaleX(-1)}.devsite-nav-icon[data-icon=forward]:before{content:"arrow_forward";cursor:pointer}[dir=rtl] .devsite-nav-icon[data-icon=forward]:before{content:"arrow_back"}.devsite-nav-icon[data-icon=limited]:before{content:"verified_user"}.devsite-nav-icon[data-icon=new]:before{content:"new_releases"}.devsite-nav-icon[data-icon=nightly]:before{content:"nights_stay"}.button,.devsite-footer-utility-button>a,button,input[type=button],input[type=file],input[type=image],input[type=reset],input[type=submit]{background:#fff;background:var(--devsite-button-background,#fff);border:0;border:var(--devsite-button-border,0);border-radius:2px;border-radius:var(--devsite-button-border-radius,2px);box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15);box-shadow:var(--devsite-button-box-shadow,0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15));color:#1a73e8;color:var(--devsite-button-color,#1a73e8);font:500 14px/36px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font:var(--devsite-button-font,500 14px/36px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif);height:36px;height:var(--devsite-button-height,36px);letter-spacing:0;letter-spacing:var(--devsite-button-letter-spacing,0);line-height:36px;line-height:var(--devsite-button-line-height,36px);padding:0 16px;padding:var(--devsite-button-padding,0 16px);text-transform:uppercase;text-transform:var(--devsite-button-text-transform,uppercase);-moz-appearance:none;-webkit-appearance:none;-moz-box-sizing:border-box;box-sizing:border-box;cursor:pointer;display:inline-block;margin:0;min-width:36px;outline:0;overflow:hidden;text-decoration:none;text-overflow:ellipsis;-webkit-transition:background-color .2s,border .2s,box-shadow .2s;transition:background-color .2s,border .2s,box-shadow .2s;vertical-align:middle;white-space:nowrap}.button:focus,.button:hover,.devsite-footer-utility-button>a:focus,.devsite-footer-utility-button>a:hover,button:focus,button:hover,input[type=button]:focus,input[type=button]:hover,input[type=file]:focus,input[type=file]:hover,input[type=image]:focus,input[type=image]:hover,input[type=reset]:focus,input[type=reset]:hover,input[type=submit]:focus,input[type=submit]:hover{background:#e4eefc;background:var(--devsite-button-background-hover,#e4eefc);border:0;border:var(--devsite-button-border-hover,0);color:#1a73e8;color:var(--devsite-button-color-hover,#1a73e8);font-weight:500}.button:focus,.devsite-footer-utility-button>a:focus,button:focus,input[type=button]:focus,input[type=file]:focus,input[type=image]:focus,input[type=reset]:focus,input[type=submit]:focus{box-shadow:none;box-shadow:var(--devsite-button-box-shadow-focus,none);text-decoration:none}.button:active,.devsite-footer-utility-button>a:active,button:active,input[type=button]:active,input[type=file]:active,input[type=image]:active,input[type=reset]:active,input[type=submit]:active{background:#c8ddf9;background:var(--devsite-button-background-active,#c8ddf9);border:0;border:var(--devsite-button-border-active,0);box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 2px 6px 2px rgba(60,64,67,.15);box-shadow:var(--devsite-button-box-shadow-active,0 1px 2px 0 rgba(60,64,67,.3),0 2px 6px 2px rgba(60,64,67,.15));-webkit-transform:none;transform:none;-webkit-transform:var(--devsite-button-transform-active,none);transform:var(--devsite-button-transform-active,none)}[foreground] .button{border-color:transparent;border-color:var(--devsite-foreground-button-border-color,transparent)}[foreground] .button,[foreground] .button:active,[foreground] .button:focus,[foreground] .button:hover{color:#1a73e8;color:var(--devsite-foreground-button-color,var(--devsite-foreground-color,var(--devsite-primary-color,#1a73e8)))}[foreground] .button:active,[foreground] .button:focus,[foreground] .button:hover{background:#d2e3fc;background:var(--devsite-foreground-button-background-hover,#d2e3fc);border-color:transparent;border-color:var(--devsite-foreground-button-border-color-hover,transparent);color:#1a73e8;color:var(--devsite-foreground-button-color-hover,var(--devsite-foreground-color,var(--devsite-primary-color,#1a73e8)));border:0!important}[foreground] .button:active{border-color:transparent;border-color:var(--devsite-foreground-button-border-color-active,transparent)}[background]:not([background=grey]):not(.devsite-landing-row-cards) .button{background:#fff;background:var(--devsite-background-button-background,#fff);border-color:transparent;border-color:var(--devsite-background-button-border-color,transparent);color:#1a73e8;color:var(--devsite-background-button-color,#1a73e8)}[background]:not([background=grey]):not(.devsite-landing-row-cards) .button:active,[background]:not([background=grey]):not(.devsite-landing-row-cards) .button:focus,[background]:not([background=grey]):not(.devsite-landing-row-cards) .button:hover{background:#e4eefc;background:var(--devsite-background-button-background-hover,#e4eefc);border-color:transparent;border-color:var(--devsite-background-button-border-color-hover,transparent);color:#1a73e8;color:var(--devsite-background-button-color-hover,#1a73e8)}[background]:not([background=grey]):not(.devsite-landing-row-cards) .button:active{border-color:transparent;border-color:var(--devsite-background-button-border-color-active,transparent)}.button.button-disabled,.button.button-disabled:active,.button.button-disabled:focus,.button.button-disabled:hover,[background] .button.button-disabled,[background] .button.button-disabled:active,[background] .button.button-disabled:focus,[background] .button.button-disabled:hover,[foreground] .button.button-disabled,[foreground] .button.button-disabled:active,[foreground] .button.button-disabled:focus,[foreground] .button.button-disabled:hover,body[theme] [background] .button.button-disabled,body[theme] [background] .button.button-disabled:active,body[theme] [background] .button.button-disabled:focus,body[theme] [background] .button.button-disabled:hover,body[theme] [foreground] .button.button-disabled,body[theme] [foreground] .button.button-disabled:active,body[theme] [foreground] .button.button-disabled:focus,body[theme] [foreground] .button.button-disabled:hover,button[disabled],button[disabled]:active,button[disabled]:focus,button[disabled]:hover,input[type=button][disabled],input[type=button][disabled]:active,input[type=button][disabled]:focus,input[type=button][disabled]:hover,input[type=file][disabled],input[type=file][disabled]:active,input[type=file][disabled]:focus,input[type=file][disabled]:hover,input[type=image][disabled],input[type=image][disabled]:active,input[type=image][disabled]:focus,input[type=image][disabled]:hover,input[type=reset][disabled],input[type=reset][disabled]:active,input[type=reset][disabled]:focus,input[type=reset][disabled]:hover,input[type=submit][disabled],input[type=submit][disabled]:active,input[type=submit][disabled]:focus,input[type=submit][disabled]:hover{background:#ddd;background:var(--devsite-button-disabled-background,#ddd);border:0;border:var(--devsite-button-disabled-border,0);color:rgba(0,0,0,.26);color:var(--devsite-button-disabled-color,rgba(0,0,0,.26));line-height:36px;line-height:var(--devsite-button-disabled-line-height,36px);box-shadow:none;cursor:default;pointer-events:none}.button-blue,.button-green,.button-primary,.button-red,body devsite-footer-utility .devsite-footer-utility-button>a{background:#1a73e8;background:var(--devsite-button-primary-background,#1a73e8);color:#fff;color:var(--devsite-button-primary-color,#fff);line-height:36px;line-height:var(--devsite-button-primary-line-height,36px)}.button-blue,.button-blue:active,.button-blue:focus,.button-blue:hover,.button-green,.button-green:active,.button-green:focus,.button-green:hover,.button-primary,.button-primary:active,.button-primary:focus,.button-primary:hover,.button-red,.button-red:active,.button-red:focus,.button-red:hover,body devsite-footer-utility .devsite-footer-utility-button>a,body devsite-footer-utility .devsite-footer-utility-button>a:active,body devsite-footer-utility .devsite-footer-utility-button>a:focus,body devsite-footer-utility .devsite-footer-utility-button>a:hover{border:0}.button-blue:hover,.button-green:hover,.button-primary:hover,.button-red:hover,body devsite-footer-utility .devsite-footer-utility-button>a:hover{box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15);box-shadow:var(--devsite-button-primary-box-shadow-hover,0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15))}.button-blue:focus,.button-blue:hover,.button-green:focus,.button-green:hover,.button-primary:focus,.button-primary:hover,.button-red:focus,.button-red:hover,body devsite-footer-utility .devsite-footer-utility-button>a:focus,body devsite-footer-utility .devsite-footer-utility-button>a:hover{background:#1765cc;background:var(--devsite-button-primary-background-hover,#1765cc);border:#1765cc;border:var(--devsite-button-primary-border-hover,#1765cc);color:#fff;color:var(--devsite-button-primary-color-hover,#fff)}.button-blue:active,.button-green:active,.button-primary:active,.button-red:active,body devsite-footer-utility .devsite-footer-utility-button>a:active{background:#0277bd;background:var(--devsite-button-primary-background-active,#0277bd);box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 2px 6px 2px rgba(60,64,67,.15);box-shadow:var(--devsite-button-primary-box-shadow-active,0 1px 2px 0 rgba(60,64,67,.3),0 2px 6px 2px rgba(60,64,67,.15));color:#fff;color:var(--devsite-button-primary-color-active,#fff)}[foreground] .button-primary{background:#1a73e8;background:var(--devsite-foreground-button-primary-background,var(--devsite-foreground-color,var(--devsite-primary-color,#1a73e8)));color:#fff;color:var(--devsite-foreground-button-primary-color,var(--devsite-text-color,#fff))}[foreground] .button-primary:active,[foreground] .button-primary:focus,[foreground] .button-primary:hover{background:#d2e3fc;background:var(--devsite-foreground-button-primary-background-hover,var(--devsite-secondary-color,#d2e3fc));color:#fff;color:var(--devsite-foreground-button-primary-color-hover,var(--devsite-text-color,#fff))}[background]:not([background=grey]):not(.devsite-landing-row-cards) .button-primary{background:#fff;background:var(--devsite-background-button-primary-background,#fff);color:#1a73e8;color:var(--devsite-background-button-primary-color,#1a73e8)}[background]:not([background=grey]):not(.devsite-landing-row-cards) .button-primary:active,[background]:not([background=grey]):not(.devsite-landing-row-cards) .button-primary:focus,[background]:not([background=grey]):not(.devsite-landing-row-cards) .button-primary:hover{color:#1a73e8;color:var(--devsite-background-button-primary-color-hover,#1a73e8)}[background]:not([background=grey]):not(.devsite-landing-row-cards) .button-primary:focus,[background]:not([background=grey]):not(.devsite-landing-row-cards) .button-primary:hover{background:#e4eefc;background:var(--devsite-background-button-primary-background-hover,#e4eefc)}[background]:not([background=grey]):not(.devsite-landing-row-cards) .button-primary:active{background:#c8ddf9;background:var(--devsite-background-button-primary-background-hover,#c8ddf9)}.button-white{line-height:36px;line-height:var(--devsite-button-white-line-height,36px);padding:0 8px;padding:var(--devsite-button-white-padding,0 8px);background:0}.button-white,.button-white:active,.button-white:focus,.button-white:hover{color:#1a73e8;color:var(--devsite-button-white-color,#1a73e8);border:0}.button-white,.button-white:hover{box-shadow:none;box-shadow:var(--devsite-button-white-box-shadow-hover,none)}.button-white:active,.button-white:focus,.button-white:hover{text-decoration:none;-webkit-text-decoration:var(--devsite-button-white-text-decoration-hover,none);-moz-text-decoration:var(--devsite-button-white-text-decoration-hover,none);text-decoration:var(--devsite-button-white-text-decoration-hover,none)}.button-white:focus,.button-white:hover{background:#e4eefc;background:var(--devsite-button-white-background-hover,#e4eefc)}.button-white:focus{box-shadow:none;box-shadow:var(--devsite-button-white-box-shadow-focus,none)}.button-white:active{background:#c8ddf9;background:var(--devsite-button-white-background-active,#c8ddf9);box-shadow:none;box-shadow:var(--devsite-button-white-box-shadow-active,none)}[foreground] .button-white,[foreground] .button-white:active,[foreground] .button-white:focus,[foreground] .button-white:hover{color:#1a73e8;color:var(--devsite-foreground-button-white-color,var(--devsite-foreground-button-color,#1a73e8))}[foreground] .button-white:active,[foreground] .button-white:focus,[foreground] .button-white:hover{background:#d2e3fc;background:var(--devsite-foreground-button-white-background-hover,var(--devsite-foreground-button-background-hover,#d2e3fc))}[background]:not([background=grey]):not(.devsite-landing-row-cards) .button-white{background:transparent}[background]:not([background=grey]):not(.devsite-landing-row-cards) .button-white,[background]:not([background=grey]):not(.devsite-landing-row-cards) .button-white:active,[background]:not([background=grey]):not(.devsite-landing-row-cards) .button-white:focus,[background]:not([background=grey]):not(.devsite-landing-row-cards) .button-white:hover{color:#fff;color:var(--devsite-background-button-white-color,var(--devsite-text-color,#fff))}[background]:not([background=grey]):not(.devsite-landing-row-cards) .button-white:hover{background:rgba(154,160,166,.3);background:var(--devsite-background-button-white-background-hover,rgba(154,160,166,.3))}[background]:not([background=grey]):not(.devsite-landing-row-cards) .button-white:focus{background:rgba(154,160,166,.5);background:var(--devsite-background-button-white-background-focus,rgba(154,160,166,.5))}[background=theme]:not(.devsite-landing-row-cards) .button-white{color:#fff;color:var(--devsite-text-color,#fff)}.button-white.button-disabled,.button-white[disabled]{background:0}.button-raised{line-height:36px;line-height:var(--devsite-button-raised-line-height,36px);box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15);background:#fff}.button-raised,.button-raised:active,.button-raised:focus,.button-raised:hover{color:#1a73e8;color:var(--devsite-button-raised-color,#1a73e8);border:0}.button-raised:focus,.button-raised:hover{background:#e4eefc;background:var(--devsite-button-raised-background-hover,#e4eefc);box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 2px 6px 2px rgba(60,64,67,.15)}.button-raised:active{background:#c8ddf9;background:var(--devsite-button-raised-background-active,#c8ddf9);box-shadow:0 1px 3px 0 rgba(60,64,67,.3),0 4px 8px 3px rgba(60,64,67,.15)}[background]:not([background=grey]):not(.devsite-landing-row-cards) .button-raised{background:#fff}.button+.button,button+button,input[type=button]+input[type=button],input[type=file]+input[type=file],input[type=image]+input[type=image],input[type=reset]+input[type=reset],input[type=submit]+input[type=submit]{margin-left:16px}[dir=rtl] .button+.button,[dir=rtl] button+button,[dir=rtl] input[type=button]+input[type=button],[dir=rtl] input[type=file]+input[type=file],[dir=rtl] input[type=image]+input[type=image],[dir=rtl] input[type=reset]+input[type=reset],[dir=rtl] input[type=submit]+input[type=submit]{margin-left:0;margin-right:16px}.button-flat+.button-flat,.button-white+.button-white,button+.button{margin-left:8px}[dir=rtl] .button-flat+.button-flat,[dir=rtl] .button-white+.button-white,[dir=rtl] button+.button{margin-left:0;margin-right:8px}.button-flat{padding:0 8px}.button-flat,.button-flat:active,.button-flat:focus,.button-flat:hover{background:0;border:0;box-shadow:none}.button-flat:disabled{background-color:transparent}[foreground] .button-primary:active,[foreground] .button-primary:focus,[foreground] .button-primary:hover,[foreground] .button-raised:active,[foreground] .button-raised:focus,[foreground] .button-raised:hover,[foreground] .button-white:active,[foreground] .button-white:focus,[foreground] .button-white:hover{border:0}.button-transparent{padding:0 8px}.button-transparent,.button-transparent:focus,.button-transparent:hover{background-color:transparent;border:0;box-shadow:none}.button-text-white{color:#fff}.button-text-blue{color:#1a73e8}.button-lowercase{text-transform:none}[dir=ltr] .button-unindented{margin-left:-8px;margin-left:var(--devsite-button-unindented-margin-x,-8px)}[dir=rtl] .button-unindented{margin-right:-8px;margin-right:var(--devsite-button-unindented-margin-x,-8px)}.button-icon,.button>.material-icons,button>.material-icons{font-size:18px;height:18px;width:18px}.button.button-with-icon,.button.external{padding:0 16px;padding:var(--devsite-button-with-icon-padding,0 16px)}.button-primary.button-with-icon,.button-primary.external,.button-raised.button-with-icon,.button-raised.external{padding:0 16px;padding:var(--devsite-button-primary-with-icon-padding,0 16px)}.button-white.button-with-icon,.button-white.external{padding:0 16px;padding:var(--devsite-button-white-with-icon-padding,0 16px)}.button>.material-icons,button>.material-icons{margin:0 8px;position:relative;top:-2px;vertical-align:middle}.button>.button-icon,button>.button-icon{margin:0 8px}.button-with-icon>.button-icon,.button-with-icon>.material-icons{margin:0 8px 0 -4px}.button-with-icon>.icon-after,.button.external:not(.button-with-icon):after,[dir=rtl] .button-with-icon>.button-icon,[dir=rtl] .button-with-icon>.material-icons,button.external:not(.button-with-icon):after{margin:0 -4px 0 8px}[dir=rtl] .button-with-icon>.icon-after,[dir=rtl] .button.external:not(.button-with-icon):after,[dir=rtl] button.external:not(.button-with-icon):after{margin:0 8px 0 -4px}[dir=ltr] .button:not(.button-with-icon)>.material-icons:not(.icon-after){margin-left:-4px;margin-left:var(--devsite-button-material-icon-margin-x,-4px)}[dir=ltr] .button:not(.button-with-icon)>.icon-after,[dir=rtl] .button:not(.button-with-icon)>.material-icons:not(.icon-after){margin-right:-4px;margin-right:var(--devsite-button-material-icon-margin-x,-4px)}[dir=rtl] .button:not(.button-with-icon)>.icon-after{margin-left:-4px;margin-left:var(--devsite-button-material-icon-margin-x,-4px)}[dir=ltr] .button-white:not(.button-with-icon)>.material-icons:not(.icon-after){margin-left:4px;margin-left:var(--devsite-button-white-material-icon-margin-x,4px)}[dir=ltr] .button-white:not(.button-with-icon)>.icon-after,[dir=rtl] .button-white:not(.button-with-icon)>.material-icons:not(.icon-after){margin-right:4px;margin-right:var(--devsite-button-white-material-icon-margin-x,4px)}[dir=rtl] .button-white:not(.button-with-icon)>.icon-after{margin-left:4px;margin-left:var(--devsite-button-white-material-icon-margin-x,4px)}.devsite-landing-row-item[foreground=grey] .button,[foreground=grey] .button{background:#5f6368}.devsite-landing-row-item[foreground=grey] .button:active,.devsite-landing-row-item[foreground=grey] .button:focus,.devsite-landing-row-item[foreground=grey] .button:hover,[foreground=grey] .button:active,[foreground=grey] .button:focus,[foreground=grey] .button:hover{background:#3c4043}devsite-header .button,devsite-header .button:active,devsite-header .button:focus,devsite-header .button:hover{box-shadow:none}h1,h2,h3,h4,h5,h6{outline:0}[layout=docs] h1,[layout=docs] h2,[layout=docs] h3,[layout=docs] h4,[layout=docs] h5,[layout=docs] h6{overflow:hidden;text-overflow:ellipsis}.devsite-article h1:first-of-type{margin-top:0;position:relative;top:-4px}.devsite-landing-row-large-headings .devsite-landing-row-item-description h3,.devsite-landing-row h2,h1{color:#5f6368;color:var(--devsite-heading-color,#5f6368);font:300 34px/40px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font:var(--devsite-h1-font,300 34px/40px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif);letter-spacing:-.01em;letter-spacing:var(--devsite-h1-letter-spacing,-.01em);margin:40px 0 20px;margin:var(--devsite-h1-margin,40px 0 20px)}.devsite-landing-row-1-up.devsite-landing-row-hero .devsite-landing-row-item-description h3,.devsite-landing-row-large-headings h2{font:300 48px/56px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font:var(--devsite-display-font,300 48px/56px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif)}.devsite-landing-row .devsite-catalog-alphabet-letter-heading h2{margin:20px 0}[layout=docs] h2{border-bottom:1px solid #e8eaed;border-bottom:var(--devsite-h2-border,1px solid #e8eaed);padding:0 0 3px;padding:var(--devsite-h2-padding,0 0 3px)}.devsite-landing-row h3,h2{font:300 24px/32px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font:var(--devsite-h2-font,300 24px/32px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif);letter-spacing:-.01em;letter-spacing:var(--devsite-h2-letter-spacing,-.01em);margin:40px 0 20px;margin:var(--devsite-h2-margin,40px 0 20px)}h3{letter-spacing:normal;letter-spacing:var(--devsite-h3-letter-spacing,normal);margin:32px 0 16px;margin:var(--devsite-h3-margin,32px 0 16px)}.devsite-landing-row-item-no-media h3,.devsite-landing-row h4,h3{font:400 20px/32px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font:var(--devsite-h3-font,400 20px/32px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif)}.devsite-landing-row-item-no-media h3,.devsite-landing-row h4{margin:32px 0 12px;margin:var(--devsite-h3-margin,32px 0 12px);padding:0}.devsite-landing-row-large-headings .devsite-landing-row-item-list h4{font:400 20px/32px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;letter-spacing:-.01em}h4,h5,h6{margin:32px 0 16px}h4{font:500 16px/24px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif}h5{font:700 14px/24px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif}h6{font:500 14px/24px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif}h1+dl>dt:first-child,h1+h1,h1+h2,h1+h3,h1+h4,h1+h5,h1+h6,h2+dl>dt:first-child,h2+h1,h2+h2,h2+h3,h2+h4,h2+h5,h2+h6,h3+dl>dt:first-child,h3+h1,h3+h2,h3+h3,h3+h4,h3+h5,h3+h6,h4+dl>dt:first-child,h4+h1,h4+h2,h4+h3,h4+h4,h4+h5,h4+h6,h5+dl>dt:first-child,h5+h1,h5+h2,h5+h3,h5+h4,h5+h5,h5+h6,h6+dl>dt:first-child,h6+h1,h6+h2,h6+h3,h6+h4,h6+h5,h6+h6{margin-top:0}table{border:0;border-collapse:collapse;border-spacing:0;font:14px/20px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;margin:16px 0 15px;width:100%}caption{background:#f1f3f4;font-weight:500;padding:12px 8px;text-align:center}tr{border:0;border-bottom:1px solid #dadce0}tr:first-child{border-top:1px solid #dadce0}td,th{border:0;margin:0;text-align:left}[dir=rtl] td,[dir=rtl] th{text-align:right}th{height:48px;padding:8px;vertical-align:middle}th,th>h2,th>h3{font:500 16px/24px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font:var(--devsite-table-heading-font,500 16px/24px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif)}th>h2,th>h3{border:0;margin:0!important;padding:0!important}td>.expandable>h2.showalways,td>.expandable>h3.showalways,td>h2:only-child,td>h3:only-child{border:0;font:500 14px/20px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;margin:0;padding-bottom:0}td>.expandable>h2.showalways,td>.expandable>h3.showalways{line-height:24px}table h4,table h5,table h6{margin-left:0!important;margin-right:0!important;padding-left:0!important;padding-right:0!important}td b,td strong,th b,th strong{font-weight:500}td,td code{padding:7px 8px 8px}td code,th code{background:0;font:500 100%/1 Roboto Mono,monospace;-moz-osx-font-smoothing:auto;-webkit-font-smoothing:auto;padding:0}td pre code{color:#37474f;font-weight:400;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}table.responsive td,table.responsive th{min-width:214px}table.responsive table:not(.responsive) td,table.responsive table:not(.responsive) th{min-width:120px}table.responsive td code,table.responsive th code{word-break:break-all;word-break:break-word}table.responsive td tr:not(.alt) td:first-child,table.responsive tr:not(.alt) td td:first-child,td{background:hsla(0,0%,100%,.95);vertical-align:top}table.fixed{table-layout:fixed}table.fixed td,table.fixed td code,table.fixed th,table.fixed th code{word-break:break-word}.devsite-table-wrapper{margin:16px 0;overflow:auto}.devsite-table-wrapper .devsite-table-wrapper{margin:0;overflow:visible}.devsite-table-wrapper table{margin:0}.devsite-table-wrapper .devsite-table-wrapper table{margin:16px 0}table.responsive table.responsive{margin:0}table.responsive td tr:first-child td{padding-top:0}table.responsive td tr:last-child td{padding-bottom:0}[dir=ltr] table.responsive td td:first-child{padding-left:0}[dir=rtl] table.responsive td td:first-child{padding-right:0}table.responsive>*>tr>th:not(:first-child),table.responsive>tr>th:not(:first-child){display:none}table.columns tr{border:0}table table tr:first-child{border-top:0}devsite-selector .devsite-table-wrapper:last-child tr:last-child,table table tr:last-child{border-bottom:0}th,th code{background:#e8eaed;color:#202124}table.vertical-rules tr>td:not(:last-child),table.vertical-rules tr>th:not(:last-child){border-right:1px solid #dadce0}.alt td,td.alt{background:rgba(241,243,244,.75)}table.responsive>*>tr:not(.alt) td:first-child,table.responsive>tr:not(.alt) td:first-child{background:#f1f3f4}table.blue tr{background:#e8eaf6;border-bottom-color:#c5cae9}table.cyan tr{background:#e4f7fb;border-bottom-color:#a1e4f2}table.green tr{background:#e0f2f1;border-bottom-color:#b2dfdb}table.orange tr{background:#feefe3;border-bottom-color:#fedfc8}table.pink tr{background:#fde7f3;border-bottom-color:#fdcfe8}table.purple tr{background:#f3e8fd;border-bottom-color:#e9d2fd}table.blue tr:first-child{border-top-color:#c5cae9}table.cyan tr:first-child{border-top-color:#a1e4f2}table.green tr:first-child{border-top-color:#b2dfdb}table.orange tr:first-child{border-top-color:#fedfc8}table.pink tr:first-child{border-top-color:#fdcfe8}table.purple tr:first-child{border-top-color:#e9d2fd}table.blue th,table.cyan th,table.green th,table.orange th,table.pink th,table.purple th{background:inherit}table.blue tr.alt td,table.responsive.blue tr:not(.alt) td:first-child{background:#f6f7fb}table.responsive.blue table td:first-child{background:#fff}table.cyan tr.alt td,table.responsive.cyan tr:not(.alt) td:first-child{background:#f4fcfd}table.responsive.cyan table td:first-child{background:#fff}table.green tr.alt td,table.responsive.green tr:not(.alt) td:first-child{background:#f3faf9}table.responsive.green table td:first-child{background:#fff}table.orange tr.alt td,table.responsive.orange tr:not(.alt) td:first-child{background:#fff9f4}table.responsive.orange table td:first-child{background:#fff}table.pink tr.alt td,table.responsive.pink tr:not(.alt) td:first-child{background:#fef5fa}table.responsive.pink table td:first-child{background:#fff}table.purple tr.alt td,table.responsive.purple tr:not(.alt) td:first-child{background:#faf6fe}table.responsive.purple table td:first-child{background:#fff}table.vertical-rules.blue tr>td:not(:last-child),table.vertical-rules.blue tr>th:not(:last-child){border-right:1px solid #c5cae9}table.vertical-rules.cyan tr>td:not(:last-child),table.vertical-rules.cyan tr>th:not(:last-child){border-right:1px solid #a1e4f2}table.vertical-rules.green tr>td:not(:last-child),table.vertical-rules.green tr>th:not(:last-child){border-right:1px solid #b2dfdb}table.vertical-rules.orange tr>td:not(:last-child),table.vertical-rules.orange tr>th:not(:last-child){border-right:1px solid #fedfc8}table.vertical-rules.pink tr>td:not(:last-child),table.vertical-rules.pink tr>th:not(:last-child){border-right:1px solid #fdcfe8}table.vertical-rules.purple tr>td:not(:last-child),table.vertical-rules.purple tr>th:not(:last-child){border-right:1px solid #e9d2fd}.devsite-article-body>.devsite-full-width-table,.devsite-article-body>table.full-width{margin:16px -40px}@media screen and (max-width:840px){.devsite-article-body>.devsite-full-width-table,.devsite-article-body>table.full-width{margin:16px -24px}}@media screen and (max-width:600px){.devsite-article-body>.devsite-full-width-table,.devsite-article-body>table.full-width{margin:16px -16px}}.devsite-article-body>.devsite-full-width-table td:first-child,.devsite-article-body>.devsite-full-width-table th:first-child,.devsite-article-body>table.full-width td:first-child,.devsite-article-body>table.full-width th:first-child{padding-left:40px}@media screen and (max-width:840px){.devsite-article-body>.devsite-full-width-table td:first-child,.devsite-article-body>.devsite-full-width-table th:first-child,.devsite-article-body>table.full-width td:first-child,.devsite-article-body>table.full-width th:first-child{padding-left:24px}}@media screen and (max-width:600px){.devsite-article-body>.devsite-full-width-table td:first-child,.devsite-article-body>.devsite-full-width-table th:first-child,.devsite-article-body>table.full-width td:first-child,.devsite-article-body>table.full-width th:first-child{padding-left:16px}}.devsite-article-body>.devsite-full-width-table td:last-child,.devsite-article-body>.devsite-full-width-table th:last-child,.devsite-article-body>table.full-width td:last-child,.devsite-article-body>table.full-width th:last-child{padding-right:40px}@media screen and (max-width:840px){.devsite-article-body>.devsite-full-width-table td:last-child,.devsite-article-body>.devsite-full-width-table th:last-child,.devsite-article-body>table.full-width td:last-child,.devsite-article-body>table.full-width th:last-child{padding-right:24px}}@media screen and (max-width:600px){.devsite-article-body>.devsite-full-width-table td:last-child,.devsite-article-body>.devsite-full-width-table th:last-child,.devsite-article-body>table.full-width td:last-child,.devsite-article-body>table.full-width th:last-child{padding-right:16px}}.devsite-full-width-table table table td:first-child,.devsite-full-width-table table table th:first-child{padding-left:0}@media screen and (max-width:840px){.devsite-full-width-table table table td:first-child,.devsite-full-width-table table table th:first-child{padding-right:0}}.devsite-full-width-table table table td:last-child,.devsite-full-width-table table table th:last-child{padding-right:0}@media screen and (max-width:840px){.devsite-full-width-table table table td:last-child,.devsite-full-width-table table table th:last-child{padding-left:0}}@media screen and (max-width:840px){table.responsive td,table.responsive th,table.responsive tr{display:block}table.responsive table:not(.responsive) tr{display:table-row}table.responsive table:not(.responsive) td,table.responsive table:not(.responsive) th{display:table-cell}table.responsive>*>th,table.responsive>th{height:auto;padding:14px 8px}table.fixed.responsive col{display:contents}}.devsite-book-nav::-webkit-scrollbar,.devsite-dialog::-webkit-scrollbar,.devsite-popout::-webkit-scrollbar,.devsite-table-wrapper::-webkit-scrollbar,.devsite-tabs-overflow-menu::-webkit-scrollbar,.devsite-toc::-webkit-scrollbar,[scrollbars]::-webkit-scrollbar,pre::-webkit-scrollbar{height:8px;width:8px}.devsite-book-nav::-webkit-scrollbar-thumb,.devsite-dialog::-webkit-scrollbar-thumb,.devsite-popout::-webkit-scrollbar-thumb,.devsite-table-wrapper::-webkit-scrollbar-thumb,.devsite-tabs-overflow-menu::-webkit-scrollbar-thumb,.devsite-toc::-webkit-scrollbar-thumb,[scrollbars]::-webkit-scrollbar-thumb,pre::-webkit-scrollbar-thumb{background:rgba(128,134,139,.26);border-radius:8px}.devsite-doc-set-nav-row::-webkit-scrollbar,.devsite-header-upper-tabs::-webkit-scrollbar,[no-horizontal-scrollbars]::-webkit-scrollbar{height:0;width:0}.devsite-table-wrapper::-webkit-scrollbar-corner,[scrollbars]::-webkit-scrollbar-corner,pre::-webkit-scrollbar-corner{background:0}.devsite-cse-confidential-results{background:rgba(254,239,227,.5);margin:16px -40px;padding:0 40px 16px}.devsite-cse-confidential-results+aside{margin-top:-16px!important}.devsite-search-results-stats{margin-bottom:8px}.devsite-search-results .gs-title{font-weight:500}.devsite-search-results .gs-title:link,.devsite-search-results .gs-title:visited{color:#1a73e8}.devsite-search-results .gs-webResult .gs-visibleUrl{color:#1e8e3e;font-size:14px}.devsite-search-results .gs-snippet{margin-top:0}.devsite-result-item-link .devsite-result-item-confidential,.devsite-search-results .gs-title-label{background:#feefe3;border-radius:4px;color:#bf360c;display:inline-block;font:500 11px/16px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;letter-spacing:.8px;margin:0 8px;padding:5px 8px 3px;text-transform:uppercase}body[type=search] .gsc-webResult .gsc-result{border:none;margin:24px 0;padding:0}.devsite-search-page-controls{margin-top:8px}.devsite-search-project{border-bottom:1px solid #dadce0;margin-bottom:24px;padding-bottom:23px}.devsite-search-project .devsite-project-scoped-results-title{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-bottom:8px}.devsite-search-project .devsite-project-scoped-results-title,.devsite-search-project .devsite-project-scoped-results-title .devsite-product-name-wrapper{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.devsite-search-project .devsite-project-scoped-results-title .devsite-product-name-wrapper{-webkit-box-flex:0;-webkit-flex:0 0 auto;-moz-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;height:36px;margin:6px 0}.devsite-search-project .devsite-project-scoped-results-title .devsite-product-name-link,.devsite-search-project .devsite-project-scoped-results-title .devsite-site-logo-link{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;opacity:1;-webkit-transition:opacity .2s;transition:opacity .2s}.devsite-search-project .devsite-project-scoped-results-title .devsite-product-name-link:focus,.devsite-search-project .devsite-project-scoped-results-title .devsite-product-name-link:hover,.devsite-search-project .devsite-project-scoped-results-title .devsite-site-logo-link:focus{opacity:.7;text-decoration:none}.devsite-search-project .devsite-project-scoped-results-title .devsite-site-logo{height:32px}.devsite-search-project .devsite-project-scoped-results-title .devsite-has-google-wordmark>.devsite-breadcrumb-link,.devsite-search-project .devsite-project-scoped-results-title .devsite-has-google-wordmark>.devsite-product-name{direction:ltr}.devsite-search-project .devsite-project-scoped-results-title .devsite-google-wordmark{height:24px;margin:0 4px 0 0;position:relative;top:5px;width:74px}.devsite-search-project .devsite-project-scoped-results-title .devsite-google-wordmark-svg-path{-webkit-transition:fill .2s;transition:fill .2s}.devsite-search-project .devsite-project-scoped-results-title .devsite-site-logo-link canvas{height:auto!important}.devsite-search-project .devsite-project-scoped-results-title .devsite-product-logo-container{color:#202124;color:var(--devsite-primary-color,#202124);-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;border-radius:50%;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;width:36px}[dir=ltr] .devsite-search-project .devsite-project-scoped-results-title .devsite-product-logo-container{margin-right:4px}[dir=rtl] .devsite-search-project .devsite-project-scoped-results-title .devsite-product-logo-container{margin-left:4px}.devsite-search-project .devsite-project-scoped-results-title .devsite-product-logo-container[background]{background:#202124;background:var(--devsite-primary-color,#202124);color:#fff}.devsite-search-project .devsite-project-scoped-results-title .devsite-product-logo{color:inherit;font-size:32px;height:32px;max-width:32px;min-width:32px;overflow:hidden;white-space:nowrap}.devsite-search-project .devsite-project-scoped-results-title .devsite-product-logo-container[background] .devsite-product-logo{font-size:28px;height:28px;max-width:28px;min-width:28px}.devsite-search-project .devsite-project-scoped-results-title .devsite-product-name{font:400 20px/32px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font:var(--devsite-wordmark-font,400 20px/32px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif);letter-spacing:0;margin:0;max-height:32px;overflow:hidden;text-overflow:ellipsis;-webkit-transition:color .2s;transition:color .2s;white-space:nowrap}.devsite-search-project .devsite-project-scoped-results-title .devsite-site-logo:not([src*=\.svg]){height:auto;max-height:32px}.devsite-search-project .devsite-project-scoped-results-title .devsite-breadcrumb-link>.devsite-product-name{color:inherit}@media screen and (max-width:840px){.devsite-search-project .devsite-project-scoped-results-title .devsite-product-name-wrapper{-webkit-box-flex:0;-webkit-flex:0 1 auto;-moz-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto;min-width:0}.devsite-search-project .devsite-project-scoped-results-title .devsite-product-name-wrapper .devsite-breadcrumb-item:not(:first-of-type),.devsite-search-project .devsite-project-scoped-results-title .devsite-product-name-wrapper .devsite-site-logo-link+.devsite-product-name{display:none}.devsite-search-project .devsite-project-scoped-results-title .devsite-product-name-wrapper .devsite-breadcrumb-item,.devsite-search-project .devsite-project-scoped-results-title .devsite-product-name-wrapper .devsite-breadcrumb-link,.devsite-search-project .devsite-project-scoped-results-title .devsite-product-name-wrapper .devsite-breadcrumb-list,.devsite-search-project .devsite-project-scoped-results-title .devsite-product-name-wrapper .devsite-product-name{width:100%}.devsite-search-project .devsite-project-scoped-results-title .devsite-product-name-wrapper .devsite-breadcrumb-link{overflow:hidden;text-overflow:ellipsis}}.devsite-search-project .devsite-project-scoped-results-title .devsite-product-name-wrapper{position:relative;margin-left:.3em}.devsite-search-project .devsite-breadcrumb-list,.devsite-search-project .devsite-project-scoped-results-title{font:400 20px/32px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font:var(--devsite-wordmark-font,400 20px/32px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif)}.devsite-search-project .devsite-breadcrumb-link,.devsite-search-project .devsite-breadcrumb-link:hover{color:#202124}.devsite-search-project .devsite-product-logo-container{color:#202124;color:var(--devsite-primary-color,#202124)}.devsite-search-project .devsite-product-logo-container[background]{background:#202124;background:var(--devsite-primary-color,#202124);color:#fff}.devsite-search-project .devsite-breadcrumb-link .devsite-google-wordmark{fill:currentColor}.devsite-search-title{margin:0;padding:0}.devsite-search-title .devsite-search-term{color:#202124;color:var(--devsite-search-term-color,#202124);font-weight:500;font-weight:var(--devsite-search-term-weight,500)}.devsite-steps{padding:24px 0 40px;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.devsite-steps,.devsite-steps .steps-direction{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.devsite-steps .steps-direction{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1;font-weight:500;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;position:relative}.devsite-steps .steps-previous{margin-left:40px}.devsite-steps .steps-next{margin-right:40px;text-align:right}.devsite-steps .steps-link:focus{text-decoration:none}.devsite-steps .steps-link-direction{color:#1a73e8;display:block;font-size:14px}.devsite-steps .steps-link-title{color:#174ea6;font-size:18px}.devsite-steps .steps-link:focus .steps-link-title{border-bottom:1px solid #174ea6}.devsite-steps .steps-link-arrow{color:#1a73e8;position:absolute}.devsite-steps .steps-link-arrow-left{left:-40px}.devsite-steps .steps-link-arrow-right{right:-40px}@media screen and (max-width:840px){.devsite-steps .steps-link-title{font-size:14px}.devsite-steps .steps-previous{margin-left:24px}.devsite-steps .steps-next{margin-right:24px}.devsite-steps .steps-link-arrow-left{left:-24px}.devsite-steps .steps-link-arrow-right{right:-24px}.devsite-steps .steps-link-arrow{bottom:4px;font-size:16px}}@media screen and (max-width:600px){.devsite-steps{padding:8px 0 16px}.devsite-steps .steps-next,.devsite-steps .steps-previous{margin:0}.devsite-steps .steps-link-arrow{display:none}}.devsite-jsfiddle-hide,html[cached] .devsite-wrapper{display:none}.devsite-dialog:not([is-upgraded]),iframe.devsite-embedded-youtube-video:not([is-upgraded]){pointer-events:none;visibility:hidden}.code-sample,.data-sample,.ds-selector-dropdown,.ds-selector-tabs,.expandable,.kd-tabbed-horz,.kd-tabbed-vert{display:none}devsite-selector{pointer-events:none;visibility:hidden}devsite-search .devsite-searchbox{background:#f1f3f4;border-radius:2px}devsite-page-rating[position=header]{-webkit-box-flex:0;-webkit-flex:0 0 120px;-moz-box-flex:0;-ms-flex:0 0 120px;flex:0 0 120px;margin:0 0 0 16px;width:120px}[dir=rtl] devsite-page-rating[position=header]{margin:0 16px 0 0}iframe.framebox,iframe.inherit-locale{display:block;width:100%}[background=blue-grey]{--devsite-background-color:#607d8b}[foreground=blue-grey],[theme=blue-grey] [foreground=theme]{--devsite-foreground-color:#607d8b;--devsite-foreground-button-background-hover:#eff2f3;--devsite-foreground-button-border-color:#dadce0;--devsite-foreground-button-border-color-hover:#d7dfe2;--devsite-foreground-button-border-color-active:#eff2f3;--devsite-foreground-button-color:#607d8b;--devsite-foreground-button-primary-background-hover:#455a64}[background=blue-grey-dark]{--devsite-background-color:#455a64}[foreground=blue-grey-dark],[theme=blue-grey-dark] [foreground=theme]{--devsite-foreground-color:#455a64;--devsite-foreground-button-background-hover:#eceff0;--devsite-foreground-button-border-color:#dadce0;--devsite-foreground-button-border-color-hover:#d1d6d8;--devsite-foreground-button-border-color-active:#eceff0;--devsite-foreground-button-color:#455a64;--devsite-foreground-button-primary-background-hover:#37474f}[background=cyan]{--devsite-background-color:#12b5cb}[foreground=cyan],[theme=cyan] [foreground=theme]{--devsite-foreground-color:#12b5cb;--devsite-foreground-button-background-hover:#e7f8fa;--devsite-foreground-button-border-color:#dadce0;--devsite-foreground-button-border-color-hover:#c4edf2;--devsite-foreground-button-border-color-active:#e7f8fa;--devsite-foreground-button-color:#12b5cb;--devsite-foreground-button-primary-background-hover:#098591}[background=deep-orange]{--devsite-background-color:#ff5722}[foreground=deep-orange],[theme=deep-orange] [foreground=theme]{--devsite-foreground-color:#ff5722;--devsite-foreground-button-background-hover:#ffeee9;--devsite-foreground-button-border-color:#dadce0;--devsite-foreground-button-border-color-hover:#ffd5c8;--devsite-foreground-button-border-color-active:#ffeee9;--devsite-foreground-button-color:#ff5722;--devsite-foreground-button-primary-background-hover:#e64a19}[background=deep-purple]{--devsite-background-color:#673ab7}[foreground=deep-purple],[theme=deep-purple] [foreground=theme]{--devsite-foreground-color:#673ab7;--devsite-foreground-button-background-hover:#f0ebf8;--devsite-foreground-button-border-color:#dadce0;--devsite-foreground-button-border-color-hover:#d9ceed;--devsite-foreground-button-border-color-active:#f0ebf8;--devsite-foreground-button-color:#673ab7;--devsite-foreground-button-primary-background-hover:#512da8}[background=google-blue]{--devsite-background-color:#1a73e8}[foreground=google-blue],[theme=google-blue] [foreground=theme]{--devsite-foreground-color:#1a73e8;--devsite-foreground-button-background-hover:#e8f1fd;--devsite-foreground-button-border-color:#dadce0;--devsite-foreground-button-border-color-hover:#c6dcf9;--devsite-foreground-button-border-color-active:#e8f1fd;--devsite-foreground-button-color:#1a73e8;--devsite-foreground-button-primary-background-hover:#185abc}[background=google-green]{--devsite-background-color:#1e8e3e}[foreground=google-green],[theme=google-green] [foreground=theme]{--devsite-foreground-color:#1e8e3e;--devsite-foreground-button-background-hover:#e9f4ec;--devsite-foreground-button-border-color:#dadce0;--devsite-foreground-button-border-color-hover:#c7e3cf;--devsite-foreground-button-border-color-active:#e9f4ec;--devsite-foreground-button-color:#1e8e3e;--devsite-foreground-button-primary-background-hover:#137333}[background=google-red]{--devsite-background-color:#d93025}[foreground=google-red],[theme=google-red] [foreground=theme]{--devsite-foreground-color:#d93025;--devsite-foreground-button-background-hover:#fbeae9;--devsite-foreground-button-border-color:#dadce0;--devsite-foreground-button-border-color-hover:#f6cbc9;--devsite-foreground-button-border-color-active:#fbeae9;--devsite-foreground-button-color:#d93025;--devsite-foreground-button-primary-background-hover:#b31412}[background=google-yellow]{--devsite-background-color:#f9ab00}[foreground=google-yellow],[theme=google-yellow] [foreground=theme]{--devsite-foreground-color:#f9ab00;--devsite-foreground-button-background-hover:#fef7e6;--devsite-foreground-button-border-color:#dadce0;--devsite-foreground-button-border-color-hover:#feeabf;--devsite-foreground-button-border-color-active:#fef7e6;--devsite-foreground-button-color:#f9ab00;--devsite-foreground-button-primary-background-hover:#ea8600}[background=indigo]{--devsite-background-color:#3f51b5}[foreground=indigo],[theme=indigo] [foreground=theme]{--devsite-foreground-color:#3f51b5;--devsite-foreground-button-background-hover:#eceef8;--devsite-foreground-button-border-color:#dadce0;--devsite-foreground-button-border-color-hover:#cfd4ed;--devsite-foreground-button-border-color-active:#eceef8;--devsite-foreground-button-color:#3f51b5;--devsite-foreground-button-primary-background-hover:#303f9f}[background=orange]{--devsite-background-color:#e8710a}[foreground=orange],[theme=orange] [foreground=theme]{--devsite-foreground-color:#e8710a;--devsite-foreground-button-background-hover:#fdf1e7;--devsite-foreground-button-border-color:#dadce0;--devsite-foreground-button-border-color-hover:#f9dcc2;--devsite-foreground-button-border-color-active:#fdf1e7;--devsite-foreground-button-color:#e8710a;--devsite-foreground-button-primary-background-hover:#c26401}[background=pink]{--devsite-background-color:#e52592}[foreground=pink],[theme=pink] [foreground=theme]{--devsite-foreground-color:#e52592;--devsite-foreground-button-background-hover:#fce9f4;--devsite-foreground-button-border-color:#dadce0;--devsite-foreground-button-border-color-hover:#f9c9e4;--devsite-foreground-button-border-color-active:#fce9f4;--devsite-foreground-button-color:#e52592;--devsite-foreground-button-primary-background-hover:#b80672}[background=purple]{--devsite-background-color:#9334e6}[foreground=purple],[theme=purple] [foreground=theme]{--devsite-foreground-color:#9334e6;--devsite-foreground-button-background-hover:#f4ebfd;--devsite-foreground-button-border-color:#dadce0;--devsite-foreground-button-border-color-hover:#e4ccf9;--devsite-foreground-button-border-color-active:#f4ebfd;--devsite-foreground-button-color:#9334e6;--devsite-foreground-button-primary-background-hover:#7627bb}[background=teal]{--devsite-background-color:#009688}[foreground=teal],[theme=teal] [foreground=theme]{--devsite-foreground-color:#009688;--devsite-foreground-button-background-hover:#e6f5f3;--devsite-foreground-button-border-color:#dadce0;--devsite-foreground-button-border-color-hover:#bfe5e1;--devsite-foreground-button-border-color-active:#e6f5f3;--devsite-foreground-button-color:#009688;--devsite-foreground-button-primary-background-hover:#00796b}[background=blue]{--devsite-background-color:#1a73e8}[foreground=blue],[theme=blue] [foreground=theme]{--devsite-foreground-color:#1a73e8;--devsite-foreground-button-background-hover:#e8f1fd;--devsite-foreground-button-border-color:#dadce0;--devsite-foreground-button-border-color-hover:#c6dcf9;--devsite-foreground-button-border-color-active:#e8f1fd;--devsite-foreground-button-color:#1a73e8;--devsite-foreground-button-primary-background-hover:#185abc}[background=green]{--devsite-background-color:#1e8e3e}[foreground=green],[theme=green] [foreground=theme]{--devsite-foreground-color:#1e8e3e;--devsite-foreground-button-background-hover:#e9f4ec;--devsite-foreground-button-border-color:#dadce0;--devsite-foreground-button-border-color-hover:#c7e3cf;--devsite-foreground-button-border-color-active:#e9f4ec;--devsite-foreground-button-color:#1e8e3e;--devsite-foreground-button-primary-background-hover:#137333}[background=light-blue]{--devsite-background-color:#0288d1}[foreground=light-blue],[theme=light-blue] [foreground=theme]{--devsite-foreground-color:#0288d1;--devsite-foreground-button-background-hover:#e6f3fa;--devsite-foreground-button-border-color:#dadce0;--devsite-foreground-button-border-color-hover:#c0e1f4;--devsite-foreground-button-border-color-active:#e6f3fa;--devsite-foreground-button-color:#0288d1;--devsite-foreground-button-primary-background-hover:#01579b}[background=light-green]{--devsite-background-color:#8bc34a}[foreground=light-green],[theme=light-green] [foreground=theme]{--devsite-foreground-color:#8bc34a;--devsite-foreground-button-background-hover:#f3f9ed;--devsite-foreground-button-border-color:#dadce0;--devsite-foreground-button-border-color-hover:#e2f0d2;--devsite-foreground-button-border-color-active:#f3f9ed;--devsite-foreground-button-color:#8bc34a;--devsite-foreground-button-primary-background-hover:#689f38}[background=navy]{--devsite-background-color:#3f51b5}[foreground=navy],[theme=navy] [foreground=theme]{--devsite-foreground-color:#3f51b5;--devsite-foreground-button-background-hover:#eceef8;--devsite-foreground-button-border-color:#dadce0;--devsite-foreground-button-border-color-hover:#cfd4ed;--devsite-foreground-button-border-color-active:#eceef8;--devsite-foreground-button-color:#3f51b5;--devsite-foreground-button-primary-background-hover:#303f9f}[background=cyan]{--devsite-background-color:#43cde6}[background=google-yellow]{--devsite-background-color:#fcc934}[background=grey]:not([foreground]){--devsite-text-color:#202124;--devsite-text-color-hover:rgba(154,160,166,0.5)}[background=light-green]{--devsite-background-color:#aed581}[background=orange]{--devsite-background-color:#fcad70}[background=cyan],[background=google-yellow],[background=orange]{--devsite-icon-color:#202124;--devsite-icon-color-hover:rgba(154,160,166,0.5)}[background=cyan],[background=google-yellow],[background=orange],[background=white]:not([foreground]){--devsite-text-color:#202124;--devsite-text-color-hover:rgba(154,160,166,0.5)}[foreground=cyan] .button-primary,[foreground=google-yellow] .button-primary,[foreground=orange] .button-primary{--devsite-text-color:#202124}.devsite-landing-row-item-labels [background]:not([foreground]){--devsite-text-color:#fff}.devsite-landing-row-item-labels [background=cyan]:not([foreground]),.devsite-landing-row-item-labels [background=google-yellow]:not([foreground]),.devsite-landing-row-item-labels [background=orange]:not([foreground]){--devsite-text-color:#202124}[background=light-green]{--devsite-icon-color:#202124;--devsite-icon-color-hover:rgba(154,160,166,0.5);--devsite-text-color:#202124;--devsite-text-color-hover:rgba(154,160,166,0.5)}.devsite-landing-row-item-labels [background=light-green]:not([foreground]),[foreground=light-green] .button-primary{--devsite-text-color:#202124}[background]{background-color:#202124;background-color:var(--devsite-background-color,var(--devsite-primary-color,#202124))}[background] :link:not(.button),[background]:not([background=grey]):not(.devsite-landing-row-cards),[background]:not([background=grey]):not(.devsite-landing-row-cards) h3,[background]:not([background=grey]):not([foreground]):not(.devsite-landing-row-cards),[background]:not([background=grey]) h2,[background] :visited:not(.button){color:#fff;color:var(--devsite-text-color,#fff)}[background=white]{background-color:#fff}[background=grey]{background-color:#f1f3f4;background-color:var(--devsite-background-color,#f1f3f4)}[background=grey] h2{color:#5f6368;color:var(--devsite-heading-color,#5f6368)}[background=grey]:not(.devsite-landing-row-cards),[background=grey]:not(.devsite-landing-row-cards) [background] h3,[background=grey]:not(.devsite-landing-row-cards) h3{color:inherit;color:var(--devsite-text-color,inherit)}[background=grey] :link:not(.button),[background=grey] :visited:not(.button),[background].devsite-landing-row-cards :link:not(.button),[background].devsite-landing-row-cards :visited:not(.button){color:#1a73e8;color:var(--devsite-foreground-color,#1a73e8)}[background]:not([background=grey]) :focus>:not(.material-icons),[background]:not([background=grey]) :link>:not(.material-icons):hover,[background]:not([background=grey]) p>a:not(.button){text-decoration:underline}[background]:not([background=grey]) p>a:focus{background:hsla(0,0%,100%,.7);border-radius:2px;margin:-4px;padding:4px;text-decoration:none}[foreground] :focus>:not(.material-icons),[foreground] :link>:not(.material-icons):hover{color:#1a73e8;color:var(--devsite-foreground-color,var(--devsite-primary-color,#1a73e8));text-decoration:underline}.devsite-landing-row-item[foreground] h2 a:not(.button),.devsite-landing-row-item[foreground] h3 a:not(.button),[foreground] h2 a:not(.button),[foreground] h3 a:not(.button){color:#1a73e8;color:var(--devsite-foreground-color,var(--devsite-primary-color,#1a73e8))}.devsite-landing-row-header-icon-container[background][foreground],.devsite-landing-row-header-icon-container[foreground],.devsite-landing-row-item-icon-container[background][foreground],.devsite-landing-row-item-icon-container[foreground],.devsite-landing-row-item-list-item-icon-container[background][foreground],.devsite-landing-row-item-list-item-icon-container[foreground]{color:#202124;color:var(--devsite-foreground-color,var(--devsite-primary-color,#202124))}body[theme=white] devsite-user div.devsite-user-dialog-signin .devsite-user-dialog-letter,body[theme=white] devsite-user div.devsite-user-dialog .devsite-user-dialog-photo{background-color:#1a73e8;color:#fff}body[theme=cloud-theme] .devsite-feedback-item-icon-container.devsite-feedback-item-icon-color,body[theme=white] .devsite-feedback-item-icon-container.devsite-feedback-item-icon-color{background-color:#1a73e8}devsite-tabs.upper-tabs>.devsite-tabs-wrapper>tab>a:focus,devsite-tabs.upper-tabs>.devsite-tabs-wrapper>tab>a:hover{color:#202124;color:var(--devsite-upper-tab-active,#202124)}devsite-header .devsite-top-button{color:hsla(0,0%,100%,.7);color:var(--devsite-header-foreground-lower,hsla(0,0%,100%,.7))}devsite-header .devsite-top-button:active,devsite-header .devsite-top-button:focus,devsite-header .devsite-top-button:hover{color:#fff;color:var(--devsite-header-foreground-lower-hover,#fff)}devsite-header .devsite-top-button:focus,devsite-header .devsite-top-button:hover{background-color:hsla(0,0%,80%,.15)}devsite-header .devsite-top-button:active{background-color:hsla(0,0%,80%,.3)}devsite-header .devsite-top-logo-row .devsite-top-button,devsite-header devsite-user #devsite-signin-btn{background:transparent;background:var(--devsite-header-link-background,transparent);color:rgba(0,0,0,.65);color:var(--devsite-header-link-color,rgba(0,0,0,.65))}devsite-header .devsite-top-logo-row .devsite-top-button:active,devsite-header .devsite-top-logo-row .devsite-top-button:focus,devsite-header .devsite-top-logo-row .devsite-top-button:hover,devsite-header devsite-user #devsite-signin-btn:active,devsite-header devsite-user #devsite-signin-btn:focus,devsite-header devsite-user #devsite-signin-btn:hover{background:#f1f3f4;background:var(--devsite-header-link-background-active,#f1f3f4);color:rgba(0,0,0,.87);color:var(--devsite-header-link-color-active,rgba(0,0,0,.87));border:0;box-shadow:none}devsite-header .devsite-header-link,devsite-header .devsite-header-link:visited{color:rgba(0,0,0,.65);color:var(--devsite-header-link-color,rgba(0,0,0,.65))}devsite-header .devsite-header-link:focus,devsite-header .devsite-header-link:hover{color:rgba(0,0,0,.87);color:var(--devsite-header-link-color-active,rgba(0,0,0,.87))}devsite-content{display:block;position:relative}body[layout=docs] devsite-content{align-self:start;-ms-grid-column:3;grid-column:2;-ms-grid-row:1;grid-row:1;margin:24px 0;max-width:936px;min-width:0}body[layout=docs] .devsite-article{background-color:#fff;background-color:var(--devsite-default-background,#fff);border:0;border:var(--devsite-page-border,0);border-radius:2px;border-radius:var(--devsite-page-border-radius,2px);box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15);box-shadow:var(--devsite-page-box-shadow,0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15));padding:40px}body[layout=docs][type=landing] .devsite-article{padding:0}.devsite-article-meta{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin:0 0 20px}.devsite-banner+.devsite-article-meta{margin-top:-16px}body[layout=full] .devsite-article-meta,body[type=landing] .devsite-article-meta{margin:0}devsite-feedback[position=header]{display:block;position:relative;top:-4px}[dir=ltr] devsite-feedback[position=header]{float:right;margin-left:24px}[dir=rtl] devsite-feedback[position=header]{float:left;margin-right:24px}body[layout=full] devsite-feedback[position=header],body[type=landing] devsite-feedback[position=header]{display:none}@media screen and (max-width:840px){body[layout=docs] devsite-content{margin:0}body[layout=docs] .devsite-article{border:0;border-radius:0;box-shadow:none;padding:24px}.devsite-banner+.devsite-article-meta{margin-top:0}}@media screen and (max-width:600px){body[layout=docs] .devsite-article{padding:16px}.devsite-article-meta{display:block;margin:0 0 12px}[dir] devsite-feedback[position=header]{float:none;margin:0 0 12px;position:static}}#devsite-support-form{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;margin:0 0 0 -40px}#devsite-support-form>*{-webkit-box-flex:0;-webkit-flex:0 0 100%;-moz-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;padding:0 0 0 40px}.devsite-support-form-error{color:#dd2c00}.devsite-support-form-hidden{display:none}.devsite-support-form-field{margin:0 0 8px}.devsite-support-form-field input:not([type=checkbox]):not([type=radio]),.devsite-support-form-field select,.devsite-support-form-field textarea{width:100%}.devsite-support-form-cc{color:#5f6368;display:block;font-size:13px}#devsite-support-form>.devsite-support-form-half{-webkit-box-flex:0;-webkit-flex:0 0 50%;-moz-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%}.devsite-support-quota{font:italic 400 12px/20px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;margin-bottom:8px}.devsite-support-quota-help{font-size:18px;margin-left:4px;vertical-align:top}.devsite-support-quota-help:after{content:"help";color:#bdc1c6}@media screen and (max-width:600px){#devsite-support-form{display:block}}.devsite-404-wrapper,.devsite-offline-wrapper{margin:0 auto;max-width:804px;position:relative;text-align:center}.devsite-404-header,.devsite-offline-header{margin:120px 24px 20px;position:relative;z-index:2}.devsite-404-search,.devsite-offline-reload,.devsite-offline-suggestions{margin:0 0 160px;position:relative;z-index:1}.devsite-404-search devsite-search .devsite-popout-result{max-height:304px}.devsite-offline-reload{text-align:center}.devsite-404-header h3,.devsite-offline-header h3{color:#202124;color:var(--devsite-offline-heading-color,var(--devsite-secondary-color,#202124))}.devsite-404-header h3{font:400 64px/64px Roboto Mono,monospace}.devsite-offline-header h3{font:400 32px/48px Roboto Mono,monospace}.devsite-404-wrapper devsite-search,.devsite-404-wrapper devsite-search .devsite-searchbox,[dir=rtl] .devsite-404-wrapper devsite-search,[dir=rtl] .devsite-404-wrapper devsite-search .devsite-searchbox{margin:0;width:100%}.devsite-404-wrapper devsite-search .devsite-search-button{display:none}.devsite-offline-wrapper .devsite-offline-suggestions{text-align:left}[dir=rtl] .devsite-offline-wrapper .devsite-offline-suggestions{text-align:right}.devsite-offline-wrapper .devsite-offline-suggestions h3,.devsite-offline-wrapper .devsite-offline-suggestions ul{margin:0}.devsite-404-wrapper .devsite-404-links{border-top:1px solid #dadce0;margin:0 calc(50% - 50vw) 40px;padding:0 calc(50vw - 50%);text-align:left}[dir=rtl] .devsite-404-wrapper .devsite-404-links{text-align:right}.devsite-404-wrapper .devsite-404-links ul{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;list-style:none;padding:0}.devsite-404-wrapper .devsite-404-links li{-webkit-box-flex:0;-webkit-flex:0 0 calc((100% - 72px)/4);-moz-box-flex:0;-ms-flex:0 0 calc((100% - 72px)/4);flex:0 0 calc((100% - 72px)/4);margin-left:24px}[dir=rtl] .devsite-404-wrapper .devsite-404-links li{margin-left:0;margin-right:24px}.devsite-404-wrapper .devsite-404-links li:nth-of-type(4n+1){margin-left:0}[dir=rtl] .devsite-404-wrapper .devsite-404-links li:nth-of-type(4n+1){margin-right:0}@media screen and (max-width:840px){.devsite-404-header,.devsite-offline-header{margin-top:40px}.devsite-404-search,.devsite-offline-reload,.devsite-offline-suggestions{margin-bottom:80px}.devsite-404-wrapper .devsite-404-links li{-webkit-box-flex:0;-webkit-flex:0 0 calc((100% - 24px)/2);-moz-box-flex:0;-ms-flex:0 0 calc((100% - 24px)/2);flex:0 0 calc((100% - 24px)/2)}.devsite-404-wrapper .devsite-404-links li:nth-of-type(odd){margin-left:0}[dir=rtl] .devsite-404-wrapper .devsite-404-links li:nth-of-type(odd){margin-right:0}}@media screen and (max-width:600px){.devsite-404-search,.devsite-offline-reload,.devsite-offline-suggestions{margin-bottom:40px}}devsite-dynamic-content .devsite-card-image-container{background-image:url(../images/dynamic-content-card-default.png)}devsite-dynamic-content[items-across=\31]{--devsite-columns:1}devsite-dynamic-content[items-across=\32]{--devsite-columns:2}devsite-dynamic-content[items-across=\33]{--devsite-columns:3}devsite-dynamic-content[items-across=\34]{--devsite-columns:4}@media screen and (max-width:840px){devsite-dynamic-content[items-across=\33] devsite-dynamic-content[items-across=\34]{--devsite-columns:2}}@media print{.beta,.beta a,.caution,.caution a,.devsite-banner,.devsite-banner a,.dogfood,.dogfood a,.key-point,.key-point a,.key-term,.key-term a,.note,.note a,.objective,.objective a,.prettyprint a,.special,.special a,.success,.success a,.warning,.warning a,:link,:visited,a .atn,a .atv,a .com,a .dec,a .kwd,a .lit,a .pln,a .pun,a .str,a .tag,a .typ,a code,aside,aside :link,aside :visited,body,code,h1,h1 code,h2,h2 code,h3,h3 code,h4,h4 code,h5,h5 code,h6,h6 code,html,pre,pre .atn,pre .atv,pre .com,pre .dec,pre .kwd,pre .lit,pre .pln,pre .pun,pre .str,pre .tag,pre .typ,td,td code,th,th :link,th :visited,th code,var{color:#000!important;padding-left:0!important;padding-right:0!important}#gc-wrapper{margin:0!important}devsite-code{margin-left:0!important;margin-right:0!important;padding-left:0!important;padding-right:0!important}devsite-expandable>:not(.showalways):not(.exw-control):not(.exw-expanded-content):not(.expand-control){display:block!important}:link,:visited{text-decoration:underline}.devsite-article-meta,.devsite-banner-confidential .button,.devsite-banner-translated .button,.devsite-book-nav-bg,.devsite-code-buttons-container,devsite-book-nav,devsite-feedback,devsite-footer-linkboxes,devsite-footer-promos,devsite-footer-utility,devsite-googler-buttons,devsite-header,devsite-page-rating,devsite-recommendations,devsite-thumb-rating,devsite-toc{display:none!important}.devsite-article,.devsite-main-content,devsite-content{background:0!important;border:0!important;box-shadow:none!important;display:block!important;margin:0!important;max-width:none!important;padding:0!important;width:auto!important}.devsite-banner{margin-top:0}.attempt-left,.attempt-right,.video-wrapper{float:none;margin:16px 0}img,video{display:block!important;page-break-inside:avoid!important}.devsite-main-content a[href]:after{content:" (" attr(href) ")";display:inline-block;font:14px/20px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;max-width:100%;word-wrap:break-word}}@page{margin:.75in}.devsite-product-platform-row{margin:8px 0;padding:0 24px}.devsite-header-no-lower-tabs .devsite-product-platform-row{margin-top:-12px;padding-bottom:24px}.devsite-platform-container{display:inline-block}.devsite-platform-container+.devsite-platform-container{margin-left:16px}.devsite-platform-icon-container{background:#fff;border-radius:50%;height:40px;margin:0 auto;width:40px}.devsite-platform-icon{color:#5f6368;font-size:24px;height:24px;margin:8px;width:24px}@media screen and (max-width:1000px){div.devsite-collapsible-section,div.devsite-header-background{background-image:none}}@media screen and (max-width:600px){.devsite-product-platform-row{padding:0 16px}}.devsite-landing-row-header{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;margin:0 auto}.devsite-landing-row[header-position=left] .devsite-landing-row-header,.devsite-landing-row[header-position=right] .devsite-landing-row-header{display:block;-ms-grid-row:1;margin:0}.devsite-landing-row[header-position=left] .devsite-landing-row-header{grid-column:var(--devsite-landing-row-header-grid-column,1);-ms-grid-column:1}.devsite-landing-row[header-position=right] .devsite-landing-row-header{grid-column:var(--devsite-landing-row-header-grid-column,3);-ms-grid-column:5;-webkit-box-ordinal-group:3;-webkit-order:2;-moz-box-ordinal-group:3;-ms-flex-order:2;order:2}.devsite-landing-row[header-position=top] .devsite-landing-row-header+.devsite-landing-row-group{margin-top:32px}.devsite-landing-row-header-text{-webkit-box-flex:1;-webkit-flex:1 1 auto;-moz-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.devsite-landing-row-header-text>h2{margin:0}.devsite-landing-row-description{font-size:18px;font-size:var(--devsite-font-size,18px);font-family:Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;line-height:24px;max-width:856px}[background] .devsite-landing-row-description{color:#fff;color:var(--devsite-text-color,#fff)}[background=grey] .devsite-landing-row-description,[background=white] .devsite-landing-row-description{color:#202124;color:var(--devsite-text-color,#202124)}.devsite-landing-row:not([background]):not([foreground]) .devsite-landing-row-description{color:#5f6368;color:var(--devsite-text-color,var(--devsite-heading-color,#5f6368))}h2+.devsite-landing-row-description{margin-top:16px}.devsite-landing-row-header-buttons{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-webkit-flex:0 1 auto;-moz-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto;margin:0}[dir=ltr] .devsite-landing-row-header-buttons{margin-left:auto}[dir=rtl] .devsite-landing-row-header-buttons{margin-right:auto}.devsite-landing-row-header-centered .devsite-landing-row-header,.devsite-landing-row-header[icon-position=top]{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column}[dir] .devsite-landing-row-header-centered .devsite-landing-row-header-buttons,[dir] .devsite-landing-row-header[icon-position=top] .devsite-landing-row-header-buttons{margin-left:0;margin-right:0}.devsite-landing-row-header-centered .devsite-landing-row-header{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;text-align:center}.devsite-landing-row-header-centered .devsite-landing-row-description{margin-left:auto;margin-right:auto}.devsite-landing-row-header-centered .devsite-landing-row-header-buttons{-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center}.devsite-landing-row-header-centered .devsite-landing-row-header-buttons,.devsite-landing-row-header[icon-position=top] .devsite-landing-row-header-buttons,.devsite-landing-row[header-position=left] .devsite-landing-row-header-buttons,.devsite-landing-row[header-position=right] .devsite-landing-row-header-buttons{margin:24px 0 0;margin:var(--devsite-buttons-margin,24px 0 0)}@media screen and (max-width:840px){.devsite-landing-row-header+.devsite-landing-row-group{margin-top:32px}.devsite-landing-row-header{display:block}}@media screen and (max-width:840px){.devsite-landing-row-header-text+.devsite-landing-row-header-buttons{display:block;margin:24px 0 0}}@media screen and (max-width:600px){.devsite-landing-row-header-text+.devsite-landing-row-header-buttons{margin:16px 0 0}}.devsite-landing-row-1-up .devsite-landing-row-item-description[icon-position=left],.devsite-landing-row-item-description[icon-position]{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-moz-box-orient:horizontal;-moz-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.devsite-landing-row-item-description[icon-position=top]{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.devsite-landing-row-item-description[icon-position^=bottom]{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-webkit-flex-direction:column-reverse;-moz-box-orient:vertical;-moz-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}.devsite-landing-row-header-icon-container,.devsite-landing-row-item-icon-container{color:#5f6368;-webkit-box-flex:0;-webkit-flex:0 0 auto;-moz-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;margin:0 0 8px;-webkit-transition:background .2s,box-shadow .2s,color .2s;transition:background .2s,box-shadow .2s,color .2s}[dir=ltr] .devsite-landing-row-header-icon-container,[dir=ltr] .devsite-landing-row-item-icon-container{margin-right:20px}[dir=rtl] .devsite-landing-row-header-icon-container,[dir=rtl] .devsite-landing-row-item-icon-container{margin-left:20px}.devsite-landing-row-header-icon-container[size=small],.devsite-landing-row-item-icon-container[size=small]{height:28px;width:28px}.devsite-landing-row-header-icon-container[size=medium],.devsite-landing-row-item-icon-container[size=medium]{height:56px;width:56px}.devsite-landing-row-header-icon-container[size=large],.devsite-landing-row-item-icon-container[size=large]{height:112px;width:112px}.devsite-landing-row-header-icon-container[size=xlarge],.devsite-landing-row-item-icon-container[size=xlarge]{height:168px;width:168px}.devsite-landing-row-item-description[icon-position=bottom-right] .devsite-landing-row-item-icon-container,.devsite-landing-row-item-description[icon-position=bottom] .devsite-landing-row-item-icon-container{margin:0}.devsite-landing-row-header[icon-position=top] .devsite-landing-row-header-icon-container{margin:0 0 20px}.devsite-landing-row-header-centered .devsite-landing-row-header-icon-container,.devsite-landing-row-header-centered .devsite-landing-row-header[icon-position=top] .devsite-landing-row-header-icon-container{margin:0 auto 20px}[dir=ltr] .devsite-landing-row-item-description[icon-position=bottom-right] .devsite-landing-row-item-icon-container{margin-left:20px;margin-left:var(--devsite-icon-margin-x,20px)}[dir=rtl] .devsite-landing-row-item-description[icon-position=bottom-right] .devsite-landing-row-item-icon-container{margin-right:20px;margin-right:var(--devsite-icon-margin-x,20px)}.devsite-landing-row-item-description[icon-position^=bottom] .devsite-landing-row-item-icon-container{margin-bottom:0;margin-bottom:var(--devsite-icon-margin-bottom,0);margin-top:8px;margin-top:var(--devsite-icon-margin-top,8px)}.devsite-landing-row-item-description[icon-position=bottom] .devsite-landing-row-item-icon-container,.devsite-landing-row-item-description[icon-position=bottom]>a{-webkit-align-self:center;-ms-flex-item-align:center;align-self:center}.devsite-landing-row-item-description[icon-position=bottom-right] .devsite-landing-row-item-icon-container,.devsite-landing-row-item-description[icon-position=bottom-right]>a{-webkit-align-self:flex-end;-ms-flex-item-align:end;align-self:flex-end}.devsite-landing-row-header-icon-container[background],.devsite-landing-row-item-icon-container[background]{background:#202124;background:var(--devsite-background-color,var(--devsite-primary-color,#202124))}.devsite-landing-row-header-icon-container[background][foreground=theme],.devsite-landing-row-header-icon-container[foreground=theme],.devsite-landing-row-item-icon-container[background][foreground=theme],.devsite-landing-row-item-icon-container[foreground=theme],.devsite-landing-row :focus .devsite-landing-row-header-icon-container[background][foreground=theme],.devsite-landing-row :focus .devsite-landing-row-item-icon-container[background][foreground=theme],.devsite-landing-row :link .devsite-landing-row-header-icon-container[background][foreground=theme]:hover,.devsite-landing-row :link .devsite-landing-row-item-icon-container[background][foreground=theme]:hover{color:#202124;color:var(--devsite-primary-color,#202124)}.devsite-landing-row-header-icon,.devsite-landing-row-item-icon{margin:0}[dir=ltr] .devsite-landing-row-item-icon{margin-left:4px}[dir=rtl] .devsite-landing-row-item-icon{margin-right:4px}.devsite-landing-row-header-icon-container[size=small] .devsite-landing-row-header-icon,.devsite-landing-row-item-icon-container[size=small] .devsite-landing-row-item-icon{font-size:24px;height:24px;width:24px}.devsite-landing-row-header-icon-container[size=medium] .devsite-landing-row-header-icon,.devsite-landing-row-item-icon-container[size=medium] .devsite-landing-row-item-icon{font-size:48px;height:48px;width:48px}.devsite-landing-row-header-icon-container[size=large] .devsite-landing-row-header-icon,.devsite-landing-row-item-icon-container[size=large] .devsite-landing-row-item-icon{font-size:96px;height:96px;width:96px}.devsite-landing-row-header-icon-container[size=xlarge] .devsite-landing-row-header-icon,.devsite-landing-row-item-icon-container[size=xlarge] .devsite-landing-row-item-icon{font-size:144px;height:144px;width:144px}.devsite-landing-row-item-description[icon-position=bottom-right] .devsite-landing-row-item-icon,.devsite-landing-row-item-description[icon-position=bottom] .devsite-landing-row-item-icon{margin:0}[dir=ltr] .devsite-landing-row-item-description[icon-position=bottom-right] .devsite-landing-row-item-icon{margin-right:4px}[dir=rtl] .devsite-landing-row-item-description[icon-position=bottom-right] .devsite-landing-row-item-icon{margin-left:4px}.devsite-landing-row-item-centered .devsite-landing-row-item-description[icon-position=top] .devsite-landing-row-item-icon-container{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;margin-left:auto;margin-right:auto}.devsite-landing-row-item-centered .devsite-landing-row-item-description[icon-position=top] .devsite-landing-row-item-icon{margin:0}.devsite-landing-row-header-icon-container[background],.devsite-landing-row-item-icon-container[background]{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;border-radius:50%;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center}.devsite-landing-row-item-icon-container[background]{margin-bottom:20px}.devsite-landing-row-item-icon-container[background] .devsite-landing-row-item-icon{margin:0}.devsite-landing-row-header-icon-container[background][size=small] .devsite-landing-row-header-icon,.devsite-landing-row-item-icon-container[background][size=small] .devsite-landing-row-item-icon{font-size:18px;height:18px;width:18px}.devsite-landing-row-header-icon-container[background][size=medium] .devsite-landing-row-header-icon,.devsite-landing-row-item-icon-container[background][size=medium] .devsite-landing-row-item-icon{font-size:36px;height:36px;width:36px}.devsite-landing-row-header-icon-container[background][size=large] .devsite-landing-row-header-icon,.devsite-landing-row-item-icon-container[background][size=large] .devsite-landing-row-item-icon{font-size:72px;height:72px;width:72px}.devsite-landing-row-header-icon-container[background][size=xlarge] .devsite-landing-row-header-icon,.devsite-landing-row-item-icon-container[background][size=xlarge] .devsite-landing-row-item-icon{font-size:108px;height:108px;width:108px}[background] .devsite-landing-row-header-icon-container:not([foreground]),[background] .devsite-landing-row-item-icon-container:not([foreground]){color:#fff;color:var(--devsite-icon-color,#fff)}[background=grey] .devsite-landing-row-header-icon-container:not([foreground]):not([background]),[background=grey] .devsite-landing-row-item-icon-container:not([foreground]):not([background]){color:#5f6368;color:var(--devsite-icon-color,#5f6368)}:focus .devsite-landing-row-header-icon-container,:focus .devsite-landing-row-item-icon-container,:link .devsite-landing-row-header-icon-container:hover,:link .devsite-landing-row-item-icon-container:hover{color:#1a73e8}[foreground] .devsite-landing-row-item :focus .devsite-landing-row-item-icon-container,[foreground] .devsite-landing-row-item :link .devsite-landing-row-item-icon-container:hover,[foreground] :focus .devsite-landing-row-header-icon-container,[foreground] :link .devsite-landing-row-header-icon-container:hover{color:rgba(154,160,166,.5)}[background] .devsite-landing-row-item :focus .devsite-landing-row-item-icon-container,[background] .devsite-landing-row-item :link .devsite-landing-row-item-icon-container:hover,[background] :focus .devsite-landing-row-header-icon-container,[background] :link .devsite-landing-row-header-icon-container:hover{color:hsla(0,0%,100%,.7);color:var(--devsite-icon-color-hover,hsla(0,0%,100%,.7))}.devsite-landing-row-header-icon-container[background=grey]:not([foreground]),.devsite-landing-row-header-icon-container[background=white]:not([foreground]),.devsite-landing-row-header-icon-container[foreground=grey],.devsite-landing-row-item-icon-container[background=grey]:not([foreground]),.devsite-landing-row-item-icon-container[background=white]:not([foreground]),.devsite-landing-row-item-icon-container[foreground=grey]{color:#5f6368;color:var(--devsite-icon-color,#5f6368)}.devsite-landing-row-header-icon-container[background=grey],.devsite-landing-row-item-icon-container[background=grey]{background:#f1f3f4;background:var(--devsite-background-color,#f1f3f4)}.devsite-landing-row-header-icon-container[background=white],.devsite-landing-row-item-icon-container[background=white]{background:#fff}.devsite-landing-row-header-icon-container[background][foreground=white],.devsite-landing-row-header-icon-container[foreground=white],.devsite-landing-row-item-icon-container[background][foreground=white],.devsite-landing-row-item-icon-container[foreground=white]{color:#fff}:focus .devsite-landing-row-header-icon-container[background][foreground=grey],:focus .devsite-landing-row-item-icon-container[background][foreground=grey],:link .devsite-landing-row-header-icon-container[background][foreground=grey]:hover,:link .devsite-landing-row-item-icon-container[background][foreground=grey]:hover{color:#5f6368;color:var(--devsite-icon-color,#5f6368)}:focus .devsite-landing-row-header-icon-container[background][foreground=white],:focus .devsite-landing-row-item-icon-container[background][foreground=white],:link .devsite-landing-row-header-icon-container[background][foreground=white]:hover,:link .devsite-landing-row-item-icon-container[background][foreground=white]:hover{color:#fff}:focus .devsite-landing-row-header-icon-container[background],:focus .devsite-landing-row-item-icon-container[background],:link .devsite-landing-row-header-icon-container[background]:hover,:link .devsite-landing-row-item-icon-container[background]:hover{box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 2px 6px 2px rgba(60,64,67,.15)}[background] :focus .devsite-landing-row-header-icon-container[background],[background] :focus .devsite-landing-row-item-icon-container[background],[background] :link .devsite-landing-row-header-icon-container[background]:hover,[background] :link .devsite-landing-row-item-icon-container[background]:hover{color:#fff;color:var(--devsite-icon-color,#fff)}[background=grey] :focus .devsite-landing-row-header-icon-container[background],[background=grey] :focus .devsite-landing-row-item-icon-container[background],[background=grey] :link .devsite-landing-row-header-icon-container[background]:hover,[background=grey] :link .devsite-landing-row-item-icon-container[background]:hover{color:#5f6368;color:var(--devsite-icon-color-hover,#5f6368)}@media screen and (max-width:840px){.devsite-landing-row-item-description[icon-position^=bottom]{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-moz-box-orient:horizontal;-moz-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.devsite-landing-row-item-description[icon-position^=bottom] .devsite-landing-row-item-icon,.devsite-landing-row-item-description[icon-position^=bottom] .devsite-landing-row-item-icon-container,.devsite-landing-row-item-description[icon-position^=bottom]>a{-webkit-align-self:center;-ms-flex-item-align:center;align-self:center;margin:0}[dir=ltr] .devsite-landing-row-item-description[icon-position=bottom-left] .devsite-landing-row-item-icon-container,[dir=ltr] .devsite-landing-row-item-description[icon-position=bottom] .devsite-landing-row-item-icon-container{margin-left:20px}[dir=rtl] .devsite-landing-row-item-description[icon-position=bottom-left] .devsite-landing-row-item-icon-container,[dir=rtl] .devsite-landing-row-item-description[icon-position=bottom] .devsite-landing-row-item-icon-container{margin-right:20px}[dir=ltr] .devsite-landing-row-item-description[icon-position=bottom-left] .devsite-landing-row-item-icon,[dir=ltr] .devsite-landing-row-item-description[icon-position=bottom] .devsite-landing-row-item-icon{margin-right:4px}[dir=rtl] .devsite-landing-row-item-description[icon-position=bottom-left] .devsite-landing-row-item-icon,[dir=rtl] .devsite-landing-row-item-description[icon-position=bottom] .devsite-landing-row-item-icon{margin-left:4px}}.devsite-landing-row-item-buttons{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-left:-12px;padding-top:8px}.devsite-landing-row-1-up.devsite-landing-row-hero .devsite-landing-row-item-buttons{padding-top:32px}.devsite-landing-row-item-buttons .button{margin:4px 4px 4px 12px}.devsite-landing-row-item-buttons .button>.material-icons{top:-1px}.devsite-landing-row-item-buttons .button-white:not(.button-raised),.devsite-landing-row-item-buttons .button-white:not(.button-raised)+.button-white:not(.button-raised){margin:0 4px}.devsite-landing-row-cta .devsite-landing-row-item-buttons{-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;margin:24px 0 0}p+.devsite-landing-row-item-buttons{margin-top:-8px}.devsite-landing-row-item-custom-image{padding:0 0 56.25%;position:relative}.devsite-landing-row-item-custom-image:not([background]){background-color:#202124;background-color:var(--devsite-background-color,var(--devsite-primary-color,#202124))}.devsite-landing-row-item-image.devsite-landing-row-item-custom-image:not([background]){background:#455a64}.devsite-landing-row-item-custom-image[background=grey]{background:#f1f3f4;background:var(--devsite-background-color,#f1f3f4)}.devsite-landing-row-item-custom-image[background=white]{background:#fff}.devsite-landing-row-no-image-background .devsite-landing-row-item-custom-image:not([background]){background:0}.devsite-landing-row-item-custom-image-icon-wrapper{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;height:100%;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;position:absolute;width:100%}.devsite-landing-row-item-custom-image-icon-container[background]{background:0}.devsite-landing-row-item-custom-image-icon{color:#fff}.devsite-landing-row-item-custom-image[background=grey]:not([foreground]) .devsite-landing-row-item-custom-image-icon,.devsite-landing-row-item-custom-image[background=white]:not([foreground]) .devsite-landing-row-item-custom-image-icon{color:#5f6368;color:var(--devsite-icon-color,#5f6368)}.devsite-landing-row-item-custom-image-icon.material-icons{opacity:.8}.devsite-landing-row-1-up .devsite-landing-row-item-custom-image-icon{font-size:256px;max-height:256px;width:256px}.devsite-landing-row-2-up .devsite-landing-row-item-custom-image-icon,.devsite-landing-row-50 .devsite-landing-row-item-custom-image-icon{font-size:192px;max-height:192px;width:192px}.devsite-landing-row-3-up .devsite-landing-row-item-custom-image-icon,.devsite-landing-row-67 .devsite-landing-row-item-custom-image-icon,[layout=docs] .devsite-landing-row-2-up .devsite-landing-row-item-custom-image-icon{font-size:128px;max-height:128px;width:128px}.devsite-landing-row-4-up .devsite-landing-row-item-custom-image-icon,.devsite-landing-row-75 .devsite-landing-row-item-custom-image-icon,[layout=docs] .devsite-landing-row-2-up .devsite-landing-row-item-custom-image-icon{font-size:96px;max-height:96px;width:96px}@media screen and (max-width:840px){.devsite-landing-row-1-up .devsite-landing-row-item-custom-image-icon,.devsite-landing-row-2-up .devsite-landing-row-item-custom-image-icon,.devsite-landing-row-3-up .devsite-landing-row-item-custom-image-icon,.devsite-landing-row-4-up .devsite-landing-row-item-custom-image-icon{font-size:128px;max-height:128px;width:128px}}.devsite-landing-row-item-description-callout{font-weight:700}.devsite-landing-row-item-description-feature{margin-top:16px;position:relative}.devsite-landing-row-item-description-feature+.devsite-landing-row-item-description-feature{margin:0}.devsite-landing-row-item-description-feature-link{border-bottom:1px solid #e8eaed;font-weight:500;padding:12px 0 11px}.devsite-landing-row-item-description-feature-tooltip{background:#455a64;color:hsla(0,0%,100%,.7);box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 2px 6px 2px rgba(60,64,67,.15);font:14px/20px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;min-width:200px;opacity:0;padding:24px;position:absolute;-webkit-transition:opacity .2s,visibility .2s;transition:opacity .2s,visibility .2s;visibility:hidden;width:67%;z-index:1020}.no-touch .devsite-landing-row-item-description-feature-link:hover+.devsite-landing-row-item-description-feature-tooltip{opacity:1;visibility:visible}.devsite-landing-row-item-description-feature-tooltip:before{border-bottom:8px solid #455a64;border-left:8px solid transparent;border-right:8px solid transparent;content:"";position:absolute;top:-8px}.devsite-landing-row-item-description-feature-tooltip h3,.devsite-landing-row-large-headings .devsite-landing-row-item-description-feature-tooltip h3{color:#fff;font:14px/20px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;margin-bottom:8px;padding:0}.devsite-landing-row-item-image{-webkit-align-self:flex-start;-ms-flex-item-align:start;align-self:flex-start}.devsite-landing-row-item-image:not([background]){background:#e8eaed}.devsite-landing-row-item-image img{width:100%;width:var(--devsite-item-image-width,100%);vertical-align:middle}.devsite-landing-row-item-image a{display:block}.devsite-landing-row-no-image-background .devsite-landing-row-item-image:not([background]){background:0}.devsite-landing-row-item-list{padding:0}.devsite-landing-row-item-description-content+.devsite-landing-row-item-list{margin-top:32px}.devsite-landing-row-item-list-item{list-style:none}.devsite-landing-row-item-list-item-content{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.devsite-landing-row-item-list-item-content[icon-position=top]{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.devsite-landing-row-item-list-item-icon-container{color:#5f6368;color:var(--devsite-icon-color,#5f6368);-webkit-box-flex:0;-webkit-flex:0 0 auto;-moz-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;height:40px;margin:0 20px 0 0;-webkit-transition:background .2s,box-shadow .2s,color .2s;transition:background .2s,box-shadow .2s,color .2s;width:40px}[dir=rtl] .devsite-landing-row-item-list-item-icon-container{margin:0 0 0 20px}.devsite-landing-row-item-list-item-icon-container[background]{background:#202124;background:var(--devsite-background-color,var(--devsite-primary-color,#202124))}.devsite-landing-row-item-list-item-icon{font-size:32px;height:32px;width:32px}.devsite-landing-row-item-list-item-icon-container[background]{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;border-radius:50%;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center}.devsite-landing-row-item-list-item-icon-container[background] .devsite-landing-row-item-list-item-icon{font-size:24px;height:24px;width:24px}.devsite-landing-row-item-list h4{font:400 16px/20px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif}.devsite-landing-row .devsite-landing-row-item-list h4{margin:0 0 4px}.devsite-landing-row-item-list-item-description{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;-ms-flex:1;flex:1;font:400 14px/20px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;max-width:calc(100% - 40px)}@media screen and (max-width:840px){.devsite-landing-row-item-list-item-description{max-width:none}}.devsite-landing-row-item-list-item:not(:last-child) .devsite-landing-row-item-list-item-description-content{margin-bottom:24px}[background] .devsite-landing-row-item-list-item-icon-container:not([foreground]),[background][background=grey] .devsite-landing-row-item-list-item-icon-container:not([foreground]){color:#fff;color:var(--devsite-icon-color,#fff)}.devsite-landing-row-item-list-item-icon-container[background=grey]:not([foreground]),.devsite-landing-row-item-list-item-icon-container[background=white]:not([foreground]),.devsite-landing-row-item-list-item-icon-container[background][foreground=grey],.devsite-landing-row-item-list-item-icon-container[foreground=grey]{color:#5f6368;color:var(--devsite-icon-color,#5f6368)}.devsite-landing-row-item-list-item-icon-container[background=grey]{background:#f1f3f4;background:var(--devsite-background-color,#f1f3f4)}.devsite-landing-row-item-list-item-icon-container[background=white]{background:#fff}.devsite-landing-row-item-list-item-content .devsite-landing-row-item-list-item-icon-container[foreground=theme]{color:#202124;color:var(--devsite-primary-color,#202124)}.devsite-landing-row-item-list-item-content .devsite-landing-row-item-list-item-icon-container[foreground=white]{color:#fff}:focus .devsite-landing-row-item-list-item-content .devsite-landing-row-item-list-item-icon-container[foreground=grey],:link .devsite-landing-row-item-list-item-icon-container[foreground=grey]:hover{color:rgba(154,160,166,.5)}:focus .devsite-landing-row-item-list-item-content .devsite-landing-row-item-list-item-icon-container[foreground=white],:link .devsite-landing-row-item-list-item-icon-container[foreground=white]:hover{color:hsla(0,0%,100%,.7)}:focus .devsite-landing-row-item-list-item-content .devsite-landing-row-item-list-item-icon-container[background][foreground=theme],:link .devsite-landing-row-item-list-item-icon-container[background][foreground=theme]:hover{color:#202124;color:var(--devsite-primary-color,#202124)}:focus .devsite-landing-row-item-list-item-content .devsite-landing-row-item-list-item-icon-container[background][foreground=grey],:link .devsite-landing-row-item-list-item-icon-container[background][foreground=grey]:hover{color:#5f6368}:focus .devsite-landing-row-item-list-item-content .devsite-landing-row-item-list-item-icon-container[background][foreground=white],:link .devsite-landing-row-item-list-item-icon-container[background][foreground=white]:hover{color:#fff}:link>.devsite-landing-row-item-list-item-content:not(.material-icons):hover,[background] :link>.devsite-landing-row-item-list-item-content:not(.material-icons):hover{text-decoration:none}:focus .devsite-landing-row-item-list-item-content .devsite-landing-row-item-list-item-icon-container[foreground=theme],:link .devsite-landing-row-item-list-item-icon-container[foreground=theme]:hover{color:hsla(0,0%,100%,.7);color:var(--devsite-icon-color-hover,var(--devsite-primary-color,hsla(0,0%,100%,.7)))}[foreground] :focus .devsite-landing-row-item-list-item-content .devsite-landing-row-item-list-item-icon-container,[foreground] :link .devsite-landing-row-item-list-item-content:hover .devsite-landing-row-item-list-item-icon-container{color:rgba(154,160,166,.5)}[background] :focus .devsite-landing-row-item-list-item-content .devsite-landing-row-item-list-item-icon-container,[background] :link .devsite-landing-row-item-list-item-content:hover .devsite-landing-row-item-list-item-icon-container{color:hsla(0,0%,100%,.7);color:var(--devsite-icon-color-hover,hsla(0,0%,100%,.7))}:link .devsite-landing-row-item-list-item-description h4+p{color:#202124;text-decoration:none}[background] :link .devsite-landing-row-item-list-item-description h4+p{color:#fff;color:var(--devsite-text-color,#fff)}:focus .devsite-landing-row-item-list-item-content .devsite-landing-row-item-list-item-icon-container[background],:link .devsite-landing-row-item-list-item-content:hover .devsite-landing-row-item-list-item-icon-container[background]{background:hsla(0,0%,100%,.7);box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 2px 6px 2px rgba(60,64,67,.15)}.devsite-landing-row :focus .devsite-landing-row-item-list-item-description>:first-child,[background] :link .devsite-landing-row-item-list-item-description>:first-child{text-decoration:underline}.devsite-landing-row-item-labels>a,.devsite-landing-row-item-labels>span{color:inherit;color:var(--devsite-label-color,inherit);font:500 11px/16px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font:var(--devsite-label-font,500 11px/16px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif);letter-spacing:.8px;letter-spacing:var(--devsite-label-letter-spacing,.8px);margin:0 0 8px;margin:var(--devsite-label-margin,0 0 8px);display:inline-block;text-transform:uppercase}.devsite-landing-row-item-labels>a+a,.devsite-landing-row-item-labels>a+span,.devsite-landing-row-item-labels>span+a,.devsite-landing-row-item-labels>span+span{margin-left:8px}.devsite-landing-row-item-labels>a[background],.devsite-landing-row-item-labels>span[background]{border-radius:4px;margin-bottom:16px;padding:4px 8px}.devsite-landing-row{--devsite-landing-group-padding:0 24px;--devsite-landing-row-padding:40px 0}[layout=docs] .devsite-landing-row{--devsite-landing-group-padding:0 40px}.devsite-landing-row-padding-small{--devsite-landing-row-padding:32px 0}.devsite-landing-row-padding-medium{--devsite-landing-row-padding:64px 0}.devsite-landing-row-padding-large{--devsite-landing-row-padding:96px 0}.devsite-landing-row-padding-xlarge{--devsite-landing-row-padding:128px 0}@media screen and (max-width:840px){.devsite-landing-row,[class^=devsite-landing-row-padding-]{--devsite-landing-row-padding:24px 0}[layout=docs] .devsite-landing-row{--devsite-landing-group-padding:0 24px}}@media screen and (max-width:600px){.devsite-landing-row,[class^=devsite-landing-row-padding-]{--devsite-landing-group-padding:0 16px;--devsite-landing-row-padding:16px 0}[layout=docs] .devsite-landing-row{--devsite-landing-group-padding:0 16px}}.devsite-landing-row{padding:var(--devsite-landing-row-padding)}.devsite-landing-row:not([background]){background-color:#fff}body[layout=docs] .devsite-landing-row:first-child{border-radius:2px 2px 0 0;border-radius:var(--devsite-first-row-border-radius,2px 2px 0 0)}body[layout=docs] .devsite-landing-row:last-child{border-radius:0 0 2px 2px;border-radius:var(--devsite-last-row-border-radius,0 0 2px 2px)}.devsite-landing-row:not([background])+:not([background]):not([class^=devsite-landing-row-padding-]),.devsite-landing-row[background=blue-grey-dark]+[background=blue-grey-dark]:not([class^=devsite-landing-row-padding-]),.devsite-landing-row[background=blue-grey]+[background=blue-grey]:not([class^=devsite-landing-row-padding-]),.devsite-landing-row[background=blue]+[background=blue]:not([class^=devsite-landing-row-padding-]),.devsite-landing-row[background=cyan]+[background=cyan]:not([class^=devsite-landing-row-padding-]),.devsite-landing-row[background=deep-orange]+[background=deep-orange]:not([class^=devsite-landing-row-padding-]),.devsite-landing-row[background=deep-purple]+[background=deep-purple]:not([class^=devsite-landing-row-padding-]),.devsite-landing-row[background=google-blue]+[background=google-blue]:not([class^=devsite-landing-row-padding-]),.devsite-landing-row[background=google-green]+[background=google-green]:not([class^=devsite-landing-row-padding-]),.devsite-landing-row[background=google-red]+[background=google-red]:not([class^=devsite-landing-row-padding-]),.devsite-landing-row[background=google-yellow]+[background=google-yellow]:not([class^=devsite-landing-row-padding-]),.devsite-landing-row[background=green]+[background=green]:not([class^=devsite-landing-row-padding-]),.devsite-landing-row[background=grey]+[background=grey]:not([class^=devsite-landing-row-padding-]),.devsite-landing-row[background=indigo]+[background=indigo]:not([class^=devsite-landing-row-padding-]),.devsite-landing-row[background=light-blue]+[background=light-blue]:not([class^=devsite-landing-row-padding-]),.devsite-landing-row[background=light-green]+[background=light-green]:not([class^=devsite-landing-row-padding-]),.devsite-landing-row[background=navy]+[background=navy]:not([class^=devsite-landing-row-padding-]),.devsite-landing-row[background=orange]+[background=orange]:not([class^=devsite-landing-row-padding-]),.devsite-landing-row[background=pink]+[background=pink]:not([class^=devsite-landing-row-padding-]),.devsite-landing-row[background=purple]+[background=purple]:not([class^=devsite-landing-row-padding-]),.devsite-landing-row[background=teal]+[background=teal]:not([class^=devsite-landing-row-padding-]),.devsite-landing-row[background=theme]+[background=theme]:not([class^=devsite-landing-row-padding-]){padding-top:0}.devsite-landing-row:not([background])+.devsite-landing-row-cta:not([class^=devsite-landing-row-padding-]){padding-top:40px}.devsite-landing-row:not([background])+.devsite-landing-row-cta.devsite-landing-row-padding-small{padding-top:32px}.devsite-landing-row:not([background])+.devsite-landing-row-cta.devsite-landing-row-padding-medium{padding-top:64px}.devsite-landing-row:not([background])+.devsite-landing-row-cta.devsite-landing-row-padding-large{padding-top:96px}.devsite-landing-row:not([background])+.devsite-landing-row-cta.devsite-landing-row-padding-xlarge{padding-top:128px}.devsite-landing-row-inner{max-width:1488px;max-width:var(--devsite-landing-row-max-width,1488px);margin:0 auto;padding:var(--devsite-landing-group-padding)}.devsite-landing-row-group,.devsite-landing-row-html{margin:0 auto}.devsite-landing-row-group{display:grid;grid-gap:var(--devsite-item-gap)}.devsite-landing-row-1-up .devsite-landing-row-group{display:block}.devsite-landing-row-2-up .devsite-landing-row-group{grid-template-columns:repeat(2,1fr)}.devsite-landing-row-3-up .devsite-landing-row-group{grid-template-columns:repeat(3,1fr)}.devsite-landing-row-4-up .devsite-landing-row-group{grid-template-columns:repeat(4,1fr)}.devsite-landing-row[header-position=left] .devsite-landing-row-inner,.devsite-landing-row[header-position=right] .devsite-landing-row-inner{display:grid;grid-gap:var(--devsite-item-gap);grid-template-columns:var(--devsite-landing-row-inner-grid-template-columns,repeat(3,1fr))}[ie-11] .devsite-landing-row[header-position=left] .devsite-landing-row-inner,[ie-11] .devsite-landing-row[header-position=right] .devsite-landing-row-inner{display:-ms-grid;-ms-grid-columns:1fr (24px 1fr)[2];-ms-grid-rows:1fr}.devsite-landing-row[header-position=left] .devsite-landing-row-group,.devsite-landing-row[header-position=right] .devsite-landing-row-group{grid-template-columns:repeat(2,1fr)}[ie-11] .devsite-landing-row[header-position=left] .devsite-landing-row-group,[ie-11] .devsite-landing-row[header-position=right] .devsite-landing-row-group{-ms-grid-columns:1fr 24px 1fr;-ms-grid-rows:1fr}.devsite-landing-row[header-position=left] .devsite-landing-row-group{grid-column:var(--devsite-landing-row-group-grid-column,2/span 2)}[ie-11] .devsite-landing-row[header-position=left] .devsite-landing-row-group{-ms-grid-column:3;-ms-grid-column-span:3}.devsite-landing-row[header-position=right] .devsite-landing-row-group{grid-column:var(--devsite-landing-row-group-grid-column,1/span 2);-webkit-box-ordinal-group:2;-webkit-order:1;-moz-box-ordinal-group:2;-ms-flex-order:1;order:1}[ie-11] .devsite-landing-row[header-position=right] .devsite-landing-row-group{-ms-grid-column:1;-ms-grid-column-span:3}@media screen and (max-width:840px){.devsite-landing-row[header-position] .devsite-landing-row-inner{display:block}.devsite-landing-row-3-up .devsite-landing-row-group,.devsite-landing-row-4-up .devsite-landing-row-group{grid-template-columns:repeat(2,1fr)}.devsite-landing-row:not([background])+.devsite-landing-row-cta.devsite-landing-row-padding-large,.devsite-landing-row:not([background])+.devsite-landing-row-cta.devsite-landing-row-padding-medium,.devsite-landing-row:not([background])+.devsite-landing-row-cta.devsite-landing-row-padding-small,.devsite-landing-row:not([background])+.devsite-landing-row-cta.devsite-landing-row-padding-xlarge,.devsite-landing-row:not([background])+.devsite-landing-row-cta:not([class^=devsite-landing-row-padding-]){padding-top:24px}}@media screen and (max-width:600px){.devsite-landing-row-2-up .devsite-landing-row-group,.devsite-landing-row-3-up .devsite-landing-row-group,.devsite-landing-row-4-up .devsite-landing-row-group,.devsite-landing-row[header-position] .devsite-landing-row-group{grid-template-columns:1fr}.devsite-landing-row:not([background])+.devsite-landing-row-cta.devsite-landing-row-padding-large,.devsite-landing-row:not([background])+.devsite-landing-row-cta.devsite-landing-row-padding-medium,.devsite-landing-row:not([background])+.devsite-landing-row-cta.devsite-landing-row-padding-small,.devsite-landing-row:not([background])+.devsite-landing-row-cta.devsite-landing-row-padding-xlarge,.devsite-landing-row:not([background])+.devsite-landing-row-cta:not([class^=devsite-landing-row-padding-]){padding-top:16px}}[ie-11] .devsite-landing-row{padding:40px 0}[ie-11] .devsite-landing-row-inner{padding:0 24px}[ie-11][layout=docs] .devsite-landing-row-inner{padding:0 40px}[ie-11] .devsite-landing-row-2-up .devsite-landing-row-group,[ie-11] .devsite-landing-row-3-up .devsite-landing-row-group,[ie-11] .devsite-landing-row-4-up .devsite-landing-row-group,[ie-11] .devsite-landing-row[header-position=left] .devsite-landing-row-group,[ie-11] .devsite-landing-row[header-position=right] .devsite-landing-row-group{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}[ie-11] .devsite-landing-row-2-up .devsite-landing-row-column,[ie-11] .devsite-landing-row-2-up .devsite-landing-row-item,[ie-11] .devsite-landing-row-3-up .devsite-landing-row-column,[ie-11] .devsite-landing-row-3-up .devsite-landing-row-item,[ie-11] .devsite-landing-row-4-up .devsite-landing-row-column,[ie-11] .devsite-landing-row-4-up .devsite-landing-row-item{-webkit-box-flex:1;-webkit-flex:1 0;-moz-box-flex:1;-ms-flex:1 0;flex:1 0}[ie-11] .devsite-landing-row-2-up .devsite-landing-row-column,[ie-11] .devsite-landing-row-2-up .devsite-landing-row-item,[ie-11] .devsite-landing-row[header-position=left] .devsite-landing-row-column,[ie-11] .devsite-landing-row[header-position=left] .devsite-landing-row-item,[ie-11] .devsite-landing-row[header-position=right] .devsite-landing-row-column,[ie-11] .devsite-landing-row[header-position=right] .devsite-landing-row-item{-webkit-flex-basis:45%;-ms-flex-preferred-size:45%;flex-basis:45%;max-width:calc((100% - 24px)/2)}[ie-11] .devsite-landing-row-3-up .devsite-landing-row-column,[ie-11] .devsite-landing-row-3-up .devsite-landing-row-item{-webkit-flex-basis:30%;-ms-flex-preferred-size:30%;flex-basis:30%;max-width:calc((100% - 48px)/3)}[ie-11] .devsite-landing-row-4-up .devsite-landing-row-column,[ie-11] .devsite-landing-row-4-up .devsite-landing-row-item{-webkit-flex-basis:20%;-ms-flex-preferred-size:20%;flex-basis:20%;max-width:calc((100% - 72px)/4)}[dir=ltr] [ie-11] .devsite-landing-row-2-up .devsite-landing-row-column,[dir=ltr] [ie-11] .devsite-landing-row-2-up .devsite-landing-row-item,[dir=ltr] [ie-11] .devsite-landing-row-3-up .devsite-landing-row-column,[dir=ltr] [ie-11] .devsite-landing-row-3-up .devsite-landing-row-item,[dir=ltr] [ie-11] .devsite-landing-row-4-up .devsite-landing-row-column,[dir=ltr] [ie-11] .devsite-landing-row-4-up .devsite-landing-row-item,[dir=ltr] [ie-11] .devsite-landing-row[header-position=left] .devsite-landing-row-column,[dir=ltr] [ie-11] .devsite-landing-row[header-position=left] .devsite-landing-row-item,[dir=ltr] [ie-11] .devsite-landing-row[header-position=right] .devsite-landing-row-column,[dir=ltr] [ie-11] .devsite-landing-row[header-position=right] .devsite-landing-row-item{margin-left:24px}[dir=rtl] [ie-11] .devsite-landing-row-2-up .devsite-landing-row-column,[dir=rtl] [ie-11] .devsite-landing-row-2-up .devsite-landing-row-item,[dir=rtl] [ie-11] .devsite-landing-row-3-up .devsite-landing-row-column,[dir=rtl] [ie-11] .devsite-landing-row-3-up .devsite-landing-row-item,[dir=rtl] [ie-11] .devsite-landing-row-4-up .devsite-landing-row-column,[dir=rtl] [ie-11] .devsite-landing-row-4-up .devsite-landing-row-item,[dir=rtl] [ie-11] .devsite-landing-row[header-position=left] .devsite-landing-row-column,[dir=rtl] [ie-11] .devsite-landing-row[header-position=left] .devsite-landing-row-item,[dir=rtl] [ie-11] .devsite-landing-row[header-position=right] .devsite-landing-row-column,[dir=rtl] [ie-11] .devsite-landing-row[header-position=right] .devsite-landing-row-item{margin-right:24px}[dir=ltr] [ie-11] .devsite-landing-row-2-up .devsite-landing-row-column:nth-of-type(odd),[dir=ltr] [ie-11] .devsite-landing-row-2-up .devsite-landing-row-item:nth-of-type(odd),[dir=ltr] [ie-11] .devsite-landing-row-3-up .devsite-landing-row-column:nth-of-type(3n+1),[dir=ltr] [ie-11] .devsite-landing-row-3-up .devsite-landing-row-item:nth-of-type(3n+1),[dir=ltr] [ie-11] .devsite-landing-row-4-up .devsite-landing-row-column:nth-of-type(4n+1),[dir=ltr] [ie-11] .devsite-landing-row-4-up .devsite-landing-row-item:nth-of-type(4n+1),[dir=ltr] [ie-11] .devsite-landing-row[header-position=left] .devsite-landing-row-column:nth-of-type(odd),[dir=ltr] [ie-11] .devsite-landing-row[header-position=left] .devsite-landing-row-item:nth-of-type(odd),[dir=ltr] [ie-11] .devsite-landing-row[header-position=right] .devsite-landing-row-column:nth-of-type(odd),[dir=ltr] [ie-11] .devsite-landing-row[header-position=right] .devsite-landing-row-item:nth-of-type(odd){margin-left:0}[dir=rtl] [ie-11] .devsite-landing-row-2-up .devsite-landing-row-column:nth-of-type(odd),[dir=rtl] [ie-11] .devsite-landing-row-2-up .devsite-landing-row-item:nth-of-type(odd),[dir=rtl] [ie-11] .devsite-landing-row-3-up .devsite-landing-row-column:nth-of-type(3n+1),[dir=rtl] [ie-11] .devsite-landing-row-3-up .devsite-landing-row-item:nth-of-type(3n+1),[dir=rtl] [ie-11] .devsite-landing-row-4-up .devsite-landing-row-column:nth-of-type(4n+1),[dir=rtl] [ie-11] .devsite-landing-row-4-up .devsite-landing-row-item:nth-of-type(4n+1),[dir=rtl] [ie-11] .devsite-landing-row[header-position=left] .devsite-landing-row-column:nth-of-type(odd),[dir=rtl] [ie-11] .devsite-landing-row[header-position=left] .devsite-landing-row-item:nth-of-type(odd),[dir=rtl] [ie-11] .devsite-landing-row[header-position=right] .devsite-landing-row-column:nth-of-type(odd),[dir=rtl] [ie-11] .devsite-landing-row[header-position=right] .devsite-landing-row-item:nth-of-type(odd){margin-right:0}[ie-11] .devsite-landing-row-2-up .devsite-landing-row-column:nth-of-type(n+3),[ie-11] .devsite-landing-row-2-up .devsite-landing-row-item:nth-of-type(n+3),[ie-11] .devsite-landing-row-3-up .devsite-landing-row-column:nth-of-type(n+4),[ie-11] .devsite-landing-row-3-up .devsite-landing-row-item:nth-of-type(n+4),[ie-11] .devsite-landing-row-4-up .devsite-landing-row-column:nth-of-type(n+5),[ie-11] .devsite-landing-row-4-up .devsite-landing-row-item:nth-of-type(n+5),[ie-11] .devsite-landing-row[header-position=left] .devsite-landing-row-column:nth-of-type(n+3),[ie-11] .devsite-landing-row[header-position=left] .devsite-landing-row-item:nth-of-type(n+3),[ie-11] .devsite-landing-row[header-position=right] .devsite-landing-row-column:nth-of-type(n+3),[ie-11] .devsite-landing-row[header-position=right] .devsite-landing-row-item:nth-of-type(n+3){margin-top:24px}[ie-11] .devsite-landing-row .devsite-landing-row-column>.devsite-landing-row-item{-webkit-flex-basis:95%;-ms-flex-preferred-size:95%;flex-basis:95%;margin:24px 0 0;max-width:100%}[ie-11] .devsite-landing-row .devsite-landing-row-column>.devsite-landing-row-item:first-child{margin-top:0}.devsite-landing-row-cta{text-align:center}.devsite-landing-row-cta:not([background]){background-color:#202124;background-color:var(--devsite-primary-color,#202124);color:#fff;color:var(--devsite-text-color,#fff)}.devsite-landing-row.devsite-landing-row-cta .devsite-landing-row-item{display:block}.devsite-landing-row.devsite-landing-row-cta .devsite-landing-row-item-description{margin:0 auto;max-width:856px}.devsite-landing-row-cta.devsite-landing-row-large-headings .devsite-landing-row-item-description h3,.devsite-landing-row-cta.devsite-landing-row h2{color:#fff;color:var(--devsite-text-color,#fff)}.devsite-landing-row-cta h3{font:400 34px/40px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font:var(--devsite-h1-font,400 34px/40px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif);letter-spacing:-.01em;letter-spacing:var(--devsite-h1-letter-spacing,-.01em);margin-bottom:16px;text-decoration:inherit}.devsite-landing-row-cta h3 a:not(.button){color:#fff;color:var(--devsite-text-color,#fff)}.devsite-landing-row-cta h3+.devsite-landing-row-item-buttons{margin-top:8px}@media screen and (max-width:600px){.devsite-landing-row-cta .devsite-landing-row-item-description{font:400 16px/24px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif}}.devsite-landing-row-cards .devsite-landing-row-item{border:0;border:var(--devsite-card-border,0);border-radius:2px;border-radius:var(--devsite-card-border-radius,2px);box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15);box-shadow:var(--devsite-card-box-shadow,0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15));overflow:hidden;position:relative}.devsite-landing-row-cards .devsite-landing-row-item:not([background]){background-color:#fff;background-color:var(--devsite-card-background,#fff)}body[theme] .devsite-landing-row-cards[background=theme] :link:not(.button),body[theme] .devsite-landing-row-cards[background=theme] :visited:not(.button){color:#1a73e8}.devsite-landing-row-cards .devsite-landing-row-column .devsite-landing-row-item{display:block}.devsite-landing-row-cards .devsite-landing-row-item-media+.devsite-landing-row-item-description{margin:0}.devsite-landing-row-cards .devsite-landing-row-item-description{padding:16px}.devsite-landing-row-cards .devsite-landing-row-item-buttons{padding-top:16px}.devsite-landing-row-cards[background=theme] .devsite-landing-row-item-icon{color:#5f6368}.devsite-landing-row-cards .devsite-landing-row-item-no-media h3{font:300 24px/32px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font:var(--devsite-h2-font,300 24px/32px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif);margin:0 0 20px}.devsite-landing-row-cards.devsite-landing-row-1-up .devsite-landing-row-item-media{-webkit-box-flex:1;-webkit-flex:1 0;-moz-box-flex:1;-ms-flex:1 0;flex:1 0;margin:0}@media screen and (max-width:840px){.devsite-landing-row-cards.devsite-landing-row-1-up .devsite-landing-row-item{display:block}}@media screen and (max-width:600px){.devsite-landing-row-cards.devsite-landing-row-1-up .devsite-landing-row-item-media+.devsite-landing-row-item-description{margin:0;padding:16px}}.devsite-landing-row-column>.devsite-landing-row-item:nth-of-type(n+2){margin:32px 0 0}.devsite-landing-row-item{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-width:100%}.devsite-landing-row-item[description-position=left],.devsite-landing-row-item[description-position=right]{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-moz-box-orient:horizontal;-moz-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.devsite-landing-row-column,.devsite-landing-row-item{-webkit-box-flex:1;-webkit-flex:1 0;-moz-box-flex:1;-ms-flex:1 0;flex:1 0;min-width:0}.devsite-landing-row-column>.devsite-landing-row-item{display:block}.devsite-landing-row-item-hidden{visibility:hidden}@media screen and (max-width:840px){.devsite-landing-row-item[description-position]{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:start;-webkit-justify-content:flex-start;-moz-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}}@media screen and (max-width:600px){.devsite-landing-row-1-up .devsite-landing-row-item,.devsite-landing-row-2-up .devsite-landing-row-item,.devsite-landing-row-3-up .devsite-landing-row-item{display:block}}.devsite-landing-row-1-up .devsite-landing-row-item{display:grid;grid-gap:var(--devsite-item-gap);grid-template-columns:repeat(12,1fr)}[ie-11] .devsite-landing-row-1-up .devsite-landing-row-item{display:-ms-grid;-ms-grid-columns:1fr (24px 1fr)[11];-ms-grid-rows:1fr}.devsite-landing-row-1-up.devsite-landing-row-hero .devsite-landing-row-item{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-align:var(--devsite-hero-align-items,center);-webkit-align-items:var(--devsite-hero-align-items,center);-moz-box-align:var(--devsite-hero-align-items,center);-ms-flex-align:var(--devsite-hero-align-items,center);align-items:var(--devsite-hero-align-items,center)}.devsite-landing-row-1-up .devsite-landing-row-item-description,.devsite-landing-row-1-up .devsite-landing-row-item-media-left{-webkit-box-ordinal-group:2;-webkit-order:1;-moz-box-ordinal-group:2;-ms-flex-order:1;order:1}.devsite-landing-row-1-up .devsite-landing-row-item-media,.devsite-landing-row-1-up .devsite-landing-row-item-media-left+.devsite-landing-row-item-description{-webkit-box-ordinal-group:3;-webkit-order:2;-moz-box-ordinal-group:3;-ms-flex-order:2;order:2}.devsite-landing-row-1-up .devsite-landing-row-item-description{display:block;grid-column:1/span 4}[ie-11] .devsite-landing-row-1-up .devsite-landing-row-item-description{-ms-grid-column:1;-ms-grid-column-span:7}.devsite-landing-row-1-up .devsite-landing-row-item-media{grid-column:var(--devsite-media-grid-column,5/span 8);margin:0}[ie-11] .devsite-landing-row-1-up .devsite-landing-row-item-media{-ms-grid-column:9;-ms-grid-column-span:15}.devsite-landing-row-1-up .devsite-landing-row-item-media-left{grid-column:var(--devsite-media-left-grid-column,1/span 8)}[ie-11] .devsite-landing-row-1-up .devsite-landing-row-item-media-left{-ms-grid-column:1;-ms-grid-column-span:15}.devsite-landing-row-1-up .devsite-landing-row-item-media-left+.devsite-landing-row-item-description{grid-column:9/span 4}[ie-11] .devsite-landing-row-1-up .devsite-landing-row-item-media-left+.devsite-landing-row-item-description{-ms-grid-column:17;-ms-grid-column-span:7}.devsite-landing-row.devsite-landing-row-1-up .devsite-landing-row-item-description{margin-top:0}.devsite-landing-row-1-up .devsite-landing-row-item-no-media .devsite-landing-row-item-description{grid-column:1/span 8}[ie-11] .devsite-landing-row-1-up .devsite-landing-row-item-no-media .devsite-landing-row-item-description{-ms-grid-column:1;-ms-grid-column-span:15}.devsite-landing-row-50 .devsite-landing-row-item-description{grid-column:1/span 6}[ie-11] .devsite-landing-row-50 .devsite-landing-row-item-description{-ms-grid-column:1;-ms-grid-column-span:11}.devsite-landing-row-50 .devsite-landing-row-item-media{grid-column:var(--devsite-row-50-media-grid-column,7/span 6)}[ie-11] .devsite-landing-row-50 .devsite-landing-row-item-media{-ms-grid-column:13;-ms-grid-column-span:11}.devsite-landing-row-50 .devsite-landing-row-item-media-left{grid-column:var(--devsite-row-50-media-left-grid-column,1/span 6)}[ie-11] .devsite-landing-row-50 .devsite-landing-row-item-media-left{-ms-grid-column:1;-ms-grid-column-span:11}.devsite-landing-row-50 .devsite-landing-row-item-media-left+.devsite-landing-row-item-description{grid-column:7/span 6}[ie-11] .devsite-landing-row-50 .devsite-landing-row-item-media-left+.devsite-landing-row-item-description{-ms-grid-column:13;-ms-grid-column-span:11}.devsite-landing-row-67 .devsite-landing-row-item-description{grid-column:1/span 8}[ie-11] .devsite-landing-row-67 .devsite-landing-row-item-description{-ms-grid-column:1;-ms-grid-column-span:15}.devsite-landing-row-67 .devsite-landing-row-item-media{grid-column:var(--devsite-row-67-media-grid-column,9/span 4)}[ie-11] .devsite-landing-row-67 .devsite-landing-row-item-media{-ms-grid-column:17;-ms-grid-column-span:7}.devsite-landing-row-67 .devsite-landing-row-item-media-left{grid-column:var(--devsite-row-67-media-left-grid-column,1/span 4)}[ie-11] .devsite-landing-row-67 .devsite-landing-row-item-media-left{-ms-grid-column:1;-ms-grid-column-span:7}.devsite-landing-row-67 .devsite-landing-row-item-media-left+.devsite-landing-row-item-description{grid-column:5/span 8}[ie-11] .devsite-landing-row-67 .devsite-landing-row-item-media-left+.devsite-landing-row-item-description{-ms-grid-column:9;-ms-grid-column-span:15}.devsite-landing-row-75 .devsite-landing-row-item-description{grid-column:1/span 9}[ie-11] .devsite-landing-row-75 .devsite-landing-row-item-description{-ms-grid-column:1;-ms-grid-column-span:17}.devsite-landing-row-75 .devsite-landing-row-item-media{grid-column:var(--devsite-row-75-media-grid-column,10/span 3)}[ie-11] .devsite-landing-row-75 .devsite-landing-row-item-media{-ms-grid-column:19;-ms-grid-column-span:5}.devsite-landing-row-75 .devsite-landing-row-item-media-left{grid-column:var(--devsite-row-75-media-left-grid-column,1/span 3)}[ie-11] .devsite-landing-row-75 .devsite-landing-row-item-media-left{-ms-grid-column:1;-ms-grid-column-span:5}.devsite-landing-row-75 .devsite-landing-row-item-media-left+.devsite-landing-row-item-description{grid-column:4/span 9}[ie-11] .devsite-landing-row-75 .devsite-landing-row-item-media-left+.devsite-landing-row-item-description{-ms-grid-column:7;-ms-grid-column-span:17}.devsite-landing-row-100 .devsite-landing-row-item{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.devsite-landing-row-100 .devsite-landing-row-item-media+.devsite-landing-row-item-description{margin-bottom:32px}@media screen and (max-width:840px){.devsite-landing-row-1-up .devsite-landing-row-item{grid-template-columns:repeat(2,1fr)}.devsite-landing-row-1-up .devsite-landing-row-item-description,.devsite-landing-row-1-up .devsite-landing-row-item-media-left{grid-column:1;grid-row:1;-webkit-box-ordinal-group:2;-webkit-order:1;-moz-box-ordinal-group:2;-ms-flex-order:1;order:1}.devsite-landing-row-1-up .devsite-landing-row-item-media-left+.devsite-landing-row-item-description,.devsite-landing-row-1-up .devsite-landing-row-item-media:not(.devsite-landing-row-item-media-left){grid-column:2}.devsite-landing-row-1-up .devsite-landing-row-item-no-media .devsite-landing-row-item-description{grid-column:1/span 2}}@media screen and (max-width:600px){.devsite-landing-row-1-up .devsite-landing-row-item{display:block}}.devsite-landing-row-item-media{padding:0;padding:var(--devsite-item-media-padding,0);-webkit-box-flex:0;-webkit-flex:0 0 auto;-moz-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;min-width:0}.devsite-landing-row-item-code devsite-code{margin:0}.devsite-landing-row-item-video{display:block}.devsite-landing-row-item-media+.devsite-landing-row-item-description{margin:32px 0 0}.devsite-landing-row-item[description-position=left] .devsite-landing-row-item-description,.devsite-landing-row-item[description-position=left] .devsite-landing-row-item-media,.devsite-landing-row-item[description-position=right] .devsite-landing-row-item-description,.devsite-landing-row-item[description-position=right] .devsite-landing-row-item-media{max-width:calc((100% - 24px)/2);max-width:var(--devsite-item-max-width,calc((100% - 24px)/2));-webkit-box-flex:1;-webkit-flex:1 0 45%;-moz-box-flex:1;-ms-flex:1 0 45%;flex:1 0 45%;margin:0}.devsite-landing-row-item[description-position=left] .devsite-landing-row-item-media{-webkit-box-ordinal-group:3;-webkit-order:2;-moz-box-ordinal-group:3;-ms-flex-order:2;order:2}.devsite-landing-row-item[description-position=left] .devsite-landing-row-item-description{-webkit-box-ordinal-group:2;-webkit-order:1;-moz-box-ordinal-group:2;-ms-flex-order:1;order:1}.devsite-landing-row-item[background] .devsite-landing-row-item-description,.devsite-landing-row-item[background][description-position=left] .devsite-landing-row-item-description,.devsite-landing-row-item[background][description-position=right] .devsite-landing-row-item-description{padding:16px;padding:var(--devsite-item-description-padding,16px)}[dir=ltr] .devsite-landing-row-cards .devsite-landing-row-item[description-position=left] .devsite-landing-row-item-description,[dir=ltr] .devsite-landing-row-item[background][description-position=left] .devsite-landing-row-item-description{padding-right:0}[dir=ltr] .devsite-landing-row-cards .devsite-landing-row-item[description-position=right] .devsite-landing-row-item-description,[dir=ltr] .devsite-landing-row-item[background][description-position=right] .devsite-landing-row-item-description,[dir=rtl] .devsite-landing-row-cards .devsite-landing-row-item[description-position=left] .devsite-landing-row-item-description,[dir=rtl] .devsite-landing-row-item[background][description-position=left] .devsite-landing-row-item-description{padding-left:0}[dir=rtl] .devsite-landing-row-cards .devsite-landing-row-item[description-position=right] .devsite-landing-row-item-description,[dir=rtl] .devsite-landing-row-item[background][description-position=right] .devsite-landing-row-item-description{padding-right:0}.devsite-landing-row-item-body,.devsite-landing-row-item-description{height:auto;height:var(--devsite-item-description-height,auto);display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-webkit-flex:1 1 auto;-moz-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;min-width:0;width:100%}.devsite-landing-row-item-buttons{margin:auto 0 -8px;margin:var(--devsite-buttons-margin,auto 0 -8px);padding:8px 0 0;padding:var(--devsite-buttons-padding,8px 0 0)}[dir=ltr] .devsite-landing-row-item-buttons{margin-left:-12px}[dir=rtl] .devsite-landing-row-item-buttons{margin-right:-12px}.devsite-landing-row-item-description h2,.devsite-landing-row-large-headings h3,.devsite-landing-row h3:first-child,.devsite-landing-row h3:first-of-type,.devsite-landing-row h4+p,.devsite-landing-row h4:first-child,.devsite-landing-row h5:first-child,.devsite-landing-row h6:first-child,.devsite-landing-row p:first-child{margin-top:0}.devsite-landing-row-item-description-content{font:inherit;font:var(--devsite-description-content-font,inherit)}.devsite-landing-row-item-description-content>:last-child{margin-bottom:0}.devsite-landing-row-item-centered .devsite-landing-row-item-description-content,.devsite-landing-row-item-centered h3{text-align:center}.devsite-landing-row-item-centered .devsite-landing-row-item-buttons{-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center}@media screen and (max-width:840px){.devsite-landing-row-item[description-position] .devsite-landing-row-item-description,.devsite-landing-row-item[description-position] .devsite-landing-row-item-media{max-width:none}.devsite-landing-row-item[description-position] .devsite-landing-row-item-media{-webkit-box-flex:0;-webkit-flex:0 0 auto;-moz-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;-webkit-box-ordinal-group:2;-webkit-order:1;-moz-box-ordinal-group:2;-ms-flex-order:1;order:1}.devsite-landing-row-item[description-position] .devsite-landing-row-item-description{-webkit-box-ordinal-group:3;-webkit-order:2;-moz-box-ordinal-group:3;-ms-flex-order:2;order:2}[dir] .devsite-landing-row-cards .devsite-landing-row-item[description-position] .devsite-landing-row-item-description,[dir] .devsite-landing-row-item[background][description-position] .devsite-landing-row-item-description{padding:16px;padding:var(--devsite-item-description-padding,16px)}}@media screen and (max-width:600px){.devsite-landing-row-1-up .devsite-landing-row-item-media+.devsite-landing-row-item-description{margin:32px 0 0;padding:0}}.devsite-landing-row-logos .devsite-landing-row-item-custom-image{padding-bottom:96px}body[theme] .devsite-landing-row-logos .devsite-landing-row-item-custom-image:not([background]){background:0}.devsite-landing-row-logos .devsite-landing-row-item-custom-image-icon{opacity:1;width:96px}.devsite-landing-row-logos .devsite-landing-row-item-description{margin:0;text-align:center}@media screen and (max-width:840px){.devsite-landing-row-logos.devsite-landing-row-3-up .devsite-landing-row-group{grid-template-columns:repeat(3,1fr)}.devsite-landing-row-logos.devsite-landing-row-4-up .devsite-landing-row-group{grid-template-columns:repeat(4,1fr)}}@media screen and (max-width:600px){.devsite-landing-row-logos.devsite-landing-row-2-up .devsite-landing-row-group,.devsite-landing-row-logos.devsite-landing-row-4-up .devsite-landing-row-group{grid-template-columns:repeat(2,1fr)}}.devsite-landing-row-1-up.devsite-landing-row-marquee,.devsite-landing-row-1-up.devsite-landing-row-marquee[background]{padding:0}.devsite-landing-row-1-up.devsite-landing-row-marquee .devsite-landing-row-header{margin:0;padding:40px 0 0}.devsite-landing-row-1-up.devsite-landing-row-marquee .devsite-landing-row-item-description,.devsite-landing-row-1-up.devsite-landing-row-marquee .devsite-landing-row-item-media{-webkit-align-self:center;-ms-flex-item-align:center;align-self:center}[ie-11] .devsite-landing-row-1-up.devsite-landing-row-marquee .devsite-landing-row-item-description,[ie-11] .devsite-landing-row-1-up.devsite-landing-row-marquee .devsite-landing-row-item-media{-ms-grid-row-align:center}.devsite-landing-row-1-up.devsite-landing-row-marquee .devsite-landing-row-item-media{margin:0}.devsite-landing-row-1-up.devsite-landing-row-marquee .devsite-landing-row-item-image{background:0}.devsite-landing-row-1-up.devsite-landing-row-marquee .devsite-landing-row-item-description{padding:40px 0}@media screen and (max-width:840px){.devsite-landing-row-1-up.devsite-landing-row-marquee .devsite-landing-row-item{display:block}.devsite-landing-row-1-up.devsite-landing-row-marquee .devsite-landing-row-item-description,.devsite-landing-row-1-up.devsite-landing-row-marquee .devsite-landing-row-item-media{width:100%}.devsite-landing-row-1-up.devsite-landing-row-marquee .devsite-landing-row-item-description,.devsite-landing-row-1-up.devsite-landing-row-marquee .devsite-landing-row-item-media-left+.devsite-landing-row-item-description{margin:0}}devsite-a11y-announce{background:transparent;color:transparent;display:block;left:-500vw;position:absolute;top:-500vh;z-index:-1}devsite-analytics>iframe{display:none}devsite-anselm{display:block;-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1}devsite-anselm .anselm-loading{display:none}devsite-anselm .anselm-loading devsite-spinner{margin:0 auto}devsite-anselm[loading] .anselm-loading{display:block}devsite-anselm[type=playlist] .anselm-results{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:start;-webkit-justify-content:flex-start;-moz-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;margin:0 -12px}devsite-anselm h3:first-child{margin-bottom:4px}devsite-anselm[active] .anselm-suggest-container input{box-shadow:0 1px 3px 0 rgba(60,64,67,.3),0 4px 8px 3px rgba(60,64,67,.15)}devsite-anselm[pending-suggestions] .anselm-suggest-container .anselm-suggest-search-icon{opacity:0}devsite-anselm[pending-suggestions] .anselm-suggest-container .anselm-suggest-spinner{opacity:1}devsite-anselm[has-query] .anselm-suggest-container .anselm-suggest-close-icon{opacity:1;pointer-events:all}devsite-anselm[has-suggestions][active] .anselm-suggest-container input{border-radius:2px 2px 0}devsite-anselm .anselm-suggest-container{max-width:492px;margin-bottom:36px}devsite-anselm .anselm-suggest-container form{position:relative}devsite-anselm .anselm-suggest-container input{border:0!important;border-radius:4px;box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15);color:#3c4043;line-height:26px;padding:8px 46px;width:100%}devsite-anselm .anselm-suggest-container input:hover{box-shadow:0 1px 3px 0 rgba(60,64,67,.3),0 4px 8px 3px rgba(60,64,67,.15)}devsite-anselm .anselm-suggest-container input:focus{border:0!important;padding-bottom:8px}devsite-anselm .anselm-suggest-container .anselm-suggestions{background:#fff;border-top:1px solid #ccc;border-radius:0 0 4px 4px;box-shadow:0 2px 3px 0 rgba(60,64,67,.3),0 6px 10px 4px rgba(60,64,67,.15);position:absolute;width:100%;z-index:100}devsite-anselm .anselm-suggest-container .anselm-suggestions:empty{box-shadow:none}devsite-anselm .anselm-suggest-container .anselm-suggest-result{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;line-height:56px;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}devsite-anselm .anselm-suggest-container .anselm-suggest-result a{color:#3c4043;-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1;padding:0 16px}devsite-anselm .anselm-suggest-container .anselm-suggest-result.highlight a,devsite-anselm .anselm-suggest-container .anselm-suggest-result a:focus,devsite-anselm .anselm-suggest-container .anselm-suggest-result a:hover{text-decoration:none;background:#f1f3f4}devsite-anselm .anselm-suggest-input-container{position:relative}devsite-anselm .anselm-suggest-input-container .anselm-suggest-close-icon,devsite-anselm .anselm-suggest-input-container .anselm-suggest-search-icon,devsite-anselm .anselm-suggest-input-container .anselm-suggest-spinner{color:#5f6368;opacity:0;pointer-events:none;position:absolute;-webkit-transition:opacity .3s cubic-bezier(0,.795,0,1);transition:opacity .3s cubic-bezier(0,.795,0,1)}devsite-anselm .anselm-suggest-input-container .anselm-suggest-close-icon,devsite-anselm .anselm-suggest-input-container .anselm-suggest-close-icon:focus{text-decoration:none}devsite-anselm .anselm-suggest-input-container .anselm-suggest-search-icon{opacity:1}devsite-anselm .anselm-suggest-input-container .anselm-suggest-search-icon,devsite-anselm .anselm-suggest-input-container .anselm-suggest-spinner{top:8px;left:16px}devsite-anselm .anselm-suggest-input-container .anselm-suggest-close-icon{top:8px;right:16px}devsite-anselm .anselm-more{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:20px 0 32px}devsite-anselm .anselm-cell{opacity:0;-webkit-transition:opacity .3s cubic-bezier(.4,0,1,1);transition:opacity .3s cubic-bezier(.4,0,1,1)}devsite-anselm .anselm-cell[show]{opacity:1}devsite-anselm .anselm-cell .bull{padding:0 4px}devsite-anselm .anselm-cell .anselm-meta{color:#6a6e74}devsite-anselm .anselm-cell .anselm--tags span,devsite-anselm .anselm-cell .anselm-meta{font-family:Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font-size:12px;letter-spacing:.3px;text-align:left;line-height:16px}devsite-anselm .anselm-cell .anselm--tags span{display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;color:#5f6368;border:1px solid #dadce0;border-radius:16px;height:30px;padding:12px;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}devsite-anselm .anselm-cell--list p{font-family:Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font-size:14px;color:#3c4043;letter-spacing:.2px;line-height:20px;margin:8px 0;text-align:left}devsite-anselm .anselm-card{background:#fff;background:var(--devsite-card-background,#fff);border:0;border:var(--devsite-card-border,0);border-radius:2px;border-radius:var(--devsite-card-border-radius,2px);box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15);box-shadow:var(--devsite-card-box-shadow,0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15));-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;height:100%}devsite-anselm .anselm-card,devsite-anselm .anselm-card .anselm-card--top{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}devsite-anselm .anselm-card .anselm-card--top{border-radius:1px 1px 0 0;border-radius:var(--devsite-card-content-border-radius,1px 1px 0 0);height:158px;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;position:relative}devsite-anselm .anselm-card .anselm-card--top .badge-icon{width:110px;height:110px;position:relative;z-index:2;opacity:0;-webkit-transform:scale(0);transform:scale(0)}@-webkit-keyframes bounce{0%{opacity:0;-webkit-transform:scale(.2);transform:scale(.2)}50%{opacity:1;-webkit-transform:scale(1.3);transform:scale(1.3)}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}devsite-anselm .anselm-card .anselm-card--top .badge-icon.bounce{-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;-webkit-animation-name:bounce;animation-name:bounce;opacity:1;-webkit-transform:scale(1);transform:scale(1)}devsite-anselm .anselm-card devsite-progress .devsite-progress--indeterminate .devsite-progress--indeterminate-2,devsite-anselm .anselm-card devsite-progress .devsite-progress--indeterminate .devsite-progress--indeterminate-4{background:#dadce0}devsite-anselm .anselm-card .anselm-card--progress{overflow:hidden;height:2px;background:#dadce0}devsite-anselm .anselm-card .anselm-card--progress .anselm-card--progress--bar{background:#fbbc04;height:2px;-webkit-transform:translateX(-101%);transform:translateX(-101%);-webkit-transition:background .213s cubic-bezier(0,0,.2,1),-webkit-transform .213s cubic-bezier(0,0,.2,1);transition:background .213s cubic-bezier(0,0,.2,1),-webkit-transform .213s cubic-bezier(0,0,.2,1);transition:transform .213s cubic-bezier(0,0,.2,1),background .213s cubic-bezier(0,0,.2,1);transition:transform .213s cubic-bezier(0,0,.2,1),background .213s cubic-bezier(0,0,.2,1),-webkit-transform .213s cubic-bezier(0,0,.2,1)}devsite-anselm .anselm-card .anselm-card--progress .anselm-card--progress--bar.completed{background:#34a853}devsite-anselm .anselm-card .anselm-card--progress--info:empty:before{content:" "}devsite-anselm .anselm-card .anselm-card--progress--info{font-size:12px;font-weight:700;color:#45494c;padding:0 16px;opacity:0;-webkit-transform:translateY(12px);transform:translateY(12px);-webkit-transition:opacity .213s cubic-bezier(.4,0,1,1),-webkit-transform .213s cubic-bezier(.4,0,1,1);transition:opacity .213s cubic-bezier(.4,0,1,1),-webkit-transform .213s cubic-bezier(.4,0,1,1);transition:transform .213s cubic-bezier(.4,0,1,1),opacity .213s cubic-bezier(.4,0,1,1);transition:transform .213s cubic-bezier(.4,0,1,1),opacity .213s cubic-bezier(.4,0,1,1),-webkit-transform .213s cubic-bezier(.4,0,1,1)}devsite-anselm .anselm-card .anselm-card--progress--info.show{opacity:1;-webkit-transform:translateY(0);transform:translateY(0);-webkit-transition:opacity .213s cubic-bezier(0,0,.2,1),-webkit-transform .213s cubic-bezier(0,0,.2,1);transition:opacity .213s cubic-bezier(0,0,.2,1),-webkit-transform .213s cubic-bezier(0,0,.2,1);transition:transform .213s cubic-bezier(0,0,.2,1),opacity .213s cubic-bezier(0,0,.2,1);transition:transform .213s cubic-bezier(0,0,.2,1),opacity .213s cubic-bezier(0,0,.2,1),-webkit-transform .213s cubic-bezier(0,0,.2,1)}devsite-anselm .anselm-card .anselm-card--body{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;-ms-flex:1;flex:1;padding:0 16px}devsite-anselm .anselm-card .anselm--tags:not(:empty){border-bottom:1px solid #dadce0;margin:0 16px;padding:0 0 16px}devsite-anselm .anselm-card .anselm-card--bottom{margin:16px}devsite-anselm .anselm-card .anselm-card--summary{font-family:Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font-size:12px;color:#6a6e74;letter-spacing:.3px;text-align:left;line-height:16px}devsite-anselm .anselm-card .anselm-card--actions{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-webkit-justify-content:flex-end;-moz-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}devsite-anselm .anselm-cell--card{-webkit-flex-basis:calc(33.33% - 24px);-ms-flex-preferred-size:calc(33.33% - 24px);flex-basis:calc(33.33% - 24px);margin:12px}devsite-anselm .anselm-cell--list{margin-bottom:32px}devsite-anselm .anselm-cell--list a{color:#346cf2}devsite-anselm .anselm-no-results-found{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;width:100%;margin-top:36px}devsite-anselm .anselm-no-results-found .no-results-text{-webkit-flex-basis:50%;-ms-flex-preferred-size:50%;flex-basis:50%;padding:0 12px}devsite-anselm .anselm-no-results-found .no-results-text h3{font-size:28px;color:#3c4043;line-height:36px;margin:0}devsite-anselm .anselm-no-results-found .no-results-text p{margin:0;padding:8px 0 0;font-size:14px;color:#5f6368;line-height:20px}devsite-anselm .anselm-no-results-found .no-results-img{margin:0 12px;padding:0 12px;-webkit-flex-basis:50%;-ms-flex-preferred-size:50%;flex-basis:50%;background-image:url(../../images/not-found.svg);-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1;background-repeat:no-repeat;background-size:contain;background-position:50% 50%;height:206px}devsite-anselm .anselm-results-container{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}devsite-anselm .anselm-results-container .anselm-featured-cell,devsite-anselm .anselm-results-container .anselm-results-cell{-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1}devsite-anselm .anselm-results-container .anselm-featured-cell{display:none;max-width:292px;padding-left:18px}devsite-anselm .anselm-results-container .anselm-featured-cell h4{font-size:10px;font-weight:500;color:#666;line-height:16px;text-transform:uppercase}devsite-anselm.has-featured .anselm-no-results-found{display:block}devsite-anselm.has-featured .anselm-no-results-found .no-results-img{margin:48px 12px;height:295px}devsite-anselm.has-featured .anselm-no-results-found .no-results-text{text-align:center}devsite-anselm.has-featured .anselm-results-container .anselm-results-cell{max-width:491px}devsite-anselm.has-featured .anselm-results-container .anselm-featured-cell{display:block}devsite-anselm .anselm--featured{border:0;border:var(--devsite-card-border,0);border-radius:2px;border-radius:var(--devsite-card-border-radius,2px);box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15);box-shadow:var(--devsite-card-box-shadow,0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15));margin-bottom:12px;padding:16px}devsite-anselm .anselm--featured .topic__meta{border-top:1px solid #d8d8d8;color:#3c4043;font-size:12px;line-height:16px;margin:16px 0 8px;padding:16px 0 0}devsite-anselm .anselm--featured .topic__updated{padding-top:4px}@media screen and (max-width:840px){devsite-anselm .anselm-cell--card{-webkit-flex-basis:calc(50% - 24px);-ms-flex-preferred-size:calc(50% - 24px);flex-basis:calc(50% - 24px)}devsite-anselm.has-featured .anselm-results-container .anselm-featured-cell{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}devsite-anselm .anselm-results-container{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-webkit-flex-direction:column-reverse;-moz-box-orient:vertical;-moz-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}devsite-anselm .anselm-results-container .anselm-featured-cell{-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;overflow-x:auto;min-width:100%;margin:0 0 24px;padding:24px 0 0;position:relative}devsite-anselm .anselm-results-container .anselm-featured-cell h4{position:absolute;top:0;left:0}devsite-anselm .anselm-results-container .anselm--featured{min-width:200px;margin-right:8px;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;max-width:300px}devsite-anselm .anselm-results-container .anselm--featured .devsite-landing-row-item-description{position:relative}devsite-anselm .anselm-results-container .anselm--featured a{position:absolute;right:8px;top:8px;padding:0;height:30px;width:30px}devsite-anselm .anselm-results-container .anselm--featured a .devsite-landing-row-item-icon-container{width:30px;height:30px}devsite-anselm .anselm-results-container .anselm--featured a .devsite-landing-row-item-icon-container img{width:30px;height:30px;margin:0}devsite-anselm .anselm-results-container .anselm--featured h3{margin:0}devsite-anselm .anselm-results-container .anselm--featured .devsite-landing-row-item-body a{position:static;text-overflow:ellipsis;margin:12px 54px 12px 12px;width:auto;height:auto}devsite-anselm .anselm-results-container .anselm--featured .devsite-landing-row-item-body .topic__meta{margin-top:0}devsite-anselm .anselm-results-container .anselm--featured .devsite-landing-row-item-body .devsite-landing-row-item-buttons,devsite-anselm .anselm-results-container .anselm--featured .devsite-landing-row-item-body p{display:none}}@media screen and (max-width:600px){devsite-anselm .anselm-cell--card{-webkit-flex-basis:calc(100% - 24px);-ms-flex-preferred-size:calc(100% - 24px);flex-basis:calc(100% - 24px)}devsite-anselm .anselm-no-results-found{margin-top:12px;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}devsite-anselm .anselm-no-results-found .no-results-img,devsite-anselm .anselm-no-results-found .no-results-text{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%}devsite-anselm .anselm-no-results-found .no-results-img{margin-top:32px;height:163px}}devsite-dialog[open].devsite-henhouse-dialog{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;padding:0}.devsite-henhouse-inner{background:#fff;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin-top:2px;overflow:hidden}.devsite-henhouse-inner,.devsite-henhouse-spinner-container{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1}.devsite-henhouse-spinner-container{min-height:240px}.devsite-credentials-spinner-region,.devsite-henhouse-spinner-container{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center}.devsite-credentials-spinner-region,.devsite-henhouse-cross-container{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.devsite-henhouse-cross-container{height:160px;-webkit-box-align:start;-webkit-align-items:start;-moz-box-align:start;-ms-flex-align:start;align-items:start;-webkit-box-pack:end;-webkit-justify-content:flex-end;-moz-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.devsite-henhouse-cross{margin:16px;float:right;cursor:pointer}.devsite-apix-error{padding:32px}.devsite-apix-controls{position:absolute;right:8px;z-index:1001}.devsite-apix-controls .button-flat{cursor:pointer!important}.devsite-apix-controls .devsite-dock-apix:before,.devsite-apix-controls .devsite-fullscreen-apix:before,.devsite-apix-controls .devsite-hide-apix:before{color:#202124}.devsite-apix-controls .devsite-hide-apix:before{content:"close"}.devsite-apix-controls .devsite-fullscreen-apix:before{content:"fullscreen"}.devsite-apix-controls .devsite-dock-apix:before{content:"fullscreen_exit"}.apis-explorer,.devsite-apix{background:#f1f3f4}.devsite-apix{-webkit-transform:translateZ(0);transform:translateZ(0);will-change:height,transform}.devsite-apix:not(.dialog) .devsite-apix-controls{top:24px}.devsite-apix:not(.dialog) .devsite-apix-controls .devsite-dock-apix{display:none}.devsite-apix.dialog{border-radius:2px;box-shadow:0 17px 17px rgba(0,0,0,.15),0 27px 55px rgba(0,0,0,.3);font:14px/20px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;max-width:calc(100% - 48px);overflow:auto;padding:8px;position:fixed;z-index:10012;max-height:none!important}.devsite-apix.dialog .apis-explorer{height:100%;min-height:100%}.devsite-apix.dialog .devsite-fullscreen-apix,.devsite-apix.dialog .devsite-hide-apix{display:none}.devsite-has-apix .devsite-main-content{z-index:auto}@media screen and (min-width:1201px){.devsite-apix:not(.dialog){box-shadow:0 0 4px rgba(0,0,0,.14),0 4px 8px rgba(0,0,0,.28);display:none;max-height:100vh;overflow:auto;position:fixed;right:0;top:96px;width:400px;z-index:1001}.devsite-apix.dialog{bottom:20px;left:calc((100% - 1200px)/2 + 24px);margin:0;top:50px;width:1152px}.devsite-has-apix .devsite-apix{display:block}}@media screen and (max-width:1200px){.devsite-apix{display:block}.devsite-apix:not(.dialog){margin-top:32px;max-height:none!important;position:relative;-webkit-transform:none!important;transform:none!important;top:auto!important;height:auto!important}.devsite-apix.dialog{bottom:20px;left:24px;margin:0;top:50px;width:calc(100% - 48px)}.devsite-hide-apix{display:none}}devsite-badger{display:none}.devsite-badger-award{bottom:0;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;left:0;pointer-events:none;position:fixed;right:0;-webkit-transform:translateY(150%);transform:translateY(150%);-webkit-transition:-webkit-transform .2s cubic-bezier(.4,0,1,1);transition:-webkit-transform .2s cubic-bezier(.4,0,1,1);transition:transform .2s cubic-bezier(.4,0,1,1);transition:transform .2s cubic-bezier(.4,0,1,1),-webkit-transform .2s cubic-bezier(.4,0,1,1);z-index:99999}.devsite-badger-award[show]{-webkit-transform:translateY(0);transform:translateY(0);-webkit-transition:-webkit-transform .2s cubic-bezier(0,0,.2,1);transition:-webkit-transform .2s cubic-bezier(0,0,.2,1);transition:transform .2s cubic-bezier(0,0,.2,1);transition:transform .2s cubic-bezier(0,0,.2,1),-webkit-transform .2s cubic-bezier(0,0,.2,1)}.devsite-badger-award[show] .devsite-badger-award-actions,.devsite-badger-award[show] .devsite-badger-award-details{opacity:1}.devsite-badger-award .devsite-badger-award-inner{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:600px;margin:0 16px 16px;pointer-events:all}.devsite-badger-award .devsite-badger-award-actions{-webkit-box-align:end;-webkit-align-items:flex-end;-moz-box-align:end;-ms-flex-align:end;align-items:flex-end;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;opacity:0;-webkit-transition:opacity .3s cubic-bezier(.4,0,.2,1);transition:opacity .3s cubic-bezier(.4,0,.2,1);border-top:1px solid #d8d8d8;padding:8px}.devsite-claim-badge-dialog.devsite-claim-badge-dialog,devsite-badge-awarded.devsite-claim-badge-dialog{padding:0}.devsite-claim-badge-dialog .card,devsite-badge-awarded .card{box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15);border-radius:5px;background:#fff;display:block;max-width:856px;border-top:5px solid #1a73e8;position:relative}.devsite-claim-badge-dialog .card .card-content,devsite-badge-awarded .card .card-content{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-height:calc(100vh - 32px);overflow:auto}.devsite-claim-badge-dialog .card .illustration-container,.devsite-claim-badge-dialog .card .text-container,devsite-badge-awarded .card .illustration-container,devsite-badge-awarded .card .text-container{width:50%}@media screen and (max-width:600px){.devsite-claim-badge-dialog .card .illustration-container,.devsite-claim-badge-dialog .card .text-container,devsite-badge-awarded .card .illustration-container,devsite-badge-awarded .card .text-container{width:100%}}.devsite-claim-badge-dialog .card .profile-creation-container,devsite-badge-awarded .card .profile-creation-container{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;-ms-flex:1;flex:1;overflow:auto;max-height:50vh;border-top:1px solid #e8eaed;padding:16px 24px}.devsite-claim-badge-dialog .card .profile-creation-container p,devsite-badge-awarded .card .profile-creation-container p{margin:8px 0;color:#3c4043;font-size:14px;line-height:22px}.devsite-claim-badge-dialog .card .profile-creation-container-email-options,devsite-badge-awarded .card .profile-creation-container-email-options{margin-top:8px}.devsite-claim-badge-dialog .card .profile-creation-container-email-options .profile-creation-container-email-option,devsite-badge-awarded .card .profile-creation-container-email-options .profile-creation-container-email-option{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}.devsite-claim-badge-dialog .card .profile-creation-container-email-options .profile-creation-container-email-option input,devsite-badge-awarded .card .profile-creation-container-email-options .profile-creation-container-email-option input{margin-top:0}.devsite-claim-badge-dialog .card .profile-creation-container-email-options .profile-creation-container-email-option label,devsite-badge-awarded .card .profile-creation-container-email-options .profile-creation-container-email-option label{font-size:14px}.devsite-claim-badge-dialog .spinner-container,devsite-badge-awarded .spinner-container{position:absolute;width:100%;height:100%;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;background:hsla(0,0%,100%,.8);z-index:10;pointer-events:none;opacity:0;-webkit-transition:opacity .3s cubic-bezier(.4,0,.2,1);transition:opacity .3s cubic-bezier(.4,0,.2,1)}.devsite-claim-badge-dialog[loading] .spinner-container,devsite-badge-awarded[loading] .spinner-container{opacity:1}.devsite-claim-badge-dialog .qr-code-container,devsite-badge-awarded .qr-code-container{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;height:225px;background-image:url(../images/claim-badge-dialog-background.png);-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;background-position:50%;background-size:700px}.devsite-claim-badge-dialog .qr-code-container canvas,devsite-badge-awarded .qr-code-container canvas{display:none}.devsite-claim-badge-dialog .qr-code-container img,devsite-badge-awarded .qr-code-container img{height:150px;width:150px;padding:10px;background:#fff}.devsite-claim-badge-dialog .redeem-code-section,devsite-badge-awarded .redeem-code-section{padding:18px 24px 0;margin-bottom:-15px}.devsite-claim-badge-dialog .redeem-code-title,devsite-badge-awarded .redeem-code-title{text-transform:uppercase;font-size:10.5px;font-weight:600;color:#80868b;margin-bottom:3px}.devsite-claim-badge-dialog .redeem-code,devsite-badge-awarded .redeem-code{display:inline-block;font-size:18px;font-weight:500;letter-spacing:12px;color:#000;padding:8px 2px 8px 12px;border:2px solid #1a73e8;border-radius:4px;background-color:rgba(227,242,253,.6)}.devsite-claim-badge-dialog .content-container,devsite-badge-awarded .content-container{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}@media screen and (max-width:600px){.devsite-claim-badge-dialog .content-container,devsite-badge-awarded .content-container{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}.devsite-claim-badge-dialog .text-container,devsite-badge-awarded .text-container{padding:36px 24px;-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1}.devsite-claim-badge-dialog .illustration-container,devsite-badge-awarded .illustration-container{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;min-height:164px;min-width:303px;height:164px;width:303px!important;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;position:relative;background-image:url(../images/badge-award-background.svg);background-size:100% calc(100% + 2px);background-position:1px -1px;background-repeat:no-repeat}.devsite-claim-badge-dialog .illustration-container .badge-icon,devsite-badge-awarded .illustration-container .badge-icon{width:124px;height:124px;-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-name:bounce;animation-name:bounce;-webkit-animation-play-state:paused;animation-play-state:paused;z-index:1000}@keyframes bounce{0%{opacity:0;-webkit-transform:scale(.2);transform:scale(.2)}50%{opacity:1;-webkit-transform:scale(1.3);transform:scale(1.3)}to{-webkit-transform:scale(1);transform:scale(1)}}.devsite-claim-badge-dialog .illustration-container .badge-animation,devsite-badge-awarded .illustration-container .badge-animation{position:absolute;width:195px;height:170px;background-image:url(../images/badge-award-animation.gif);background-size:100% 100%}.devsite-claim-badge-dialog .badge-earned-title,devsite-badge-awarded .badge-earned-title{font-size:24px;margin-bottom:8px;line-height:30px;color:#000;font-family:Google Sans,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif}.devsite-claim-badge-dialog .badge-name,devsite-badge-awarded .badge-name{font-weight:700}.devsite-claim-badge-dialog .badge-added-text,.devsite-claim-badge-dialog .claim-badge-text,.devsite-claim-badge-dialog .create-profile-text,.devsite-claim-badge-dialog .not-eligible-text,.devsite-claim-badge-dialog .sign-in-text,devsite-badge-awarded .badge-added-text,devsite-badge-awarded .claim-badge-text,devsite-badge-awarded .create-profile-text,devsite-badge-awarded .not-eligible-text,devsite-badge-awarded .sign-in-text{font-size:14px}.devsite-claim-badge-dialog .buttons-container,devsite-badge-awarded .buttons-container{border-top:1px solid #e8eaed;padding:8px;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}@media screen and (max-width:600px){.devsite-claim-badge-dialog .buttons-container,devsite-badge-awarded .buttons-container{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-webkit-flex-direction:column-reverse;-moz-box-orient:vertical;-moz-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse;padding-top:0;text-align:center;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}.devsite-claim-badge-dialog .buttons-container .button,devsite-badge-awarded .buttons-container .button{margin:10px auto 0;width:190px}.devsite-claim-badge-dialog .buttons-container .buttons,devsite-badge-awarded .buttons-container .buttons{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.devsite-claim-badge-dialog .buttons-container .sharing,devsite-badge-awarded .buttons-container .sharing{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-moz-box-orient:horizontal;-moz-box-direction:normal;-ms-flex-direction:row;flex-direction:row;padding:8px 0 0}}.devsite-claim-badge-dialog .buttons-container .sharing,devsite-badge-awarded .buttons-container .sharing{font-size:14px;color:#3c4043;padding-left:16px;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}.devsite-claim-badge-dialog .buttons-container .sharing span,devsite-badge-awarded .buttons-container .sharing span{margin:0 8px}.devsite-claim-badge-dialog .buttons-container .sharing button,devsite-badge-awarded .buttons-container .sharing button{box-shadow:none;margin:0 8px;padding:0;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;border:0;height:auto;min-width:0}.devsite-claim-badge-dialog .buttons-container .sharing button:focus,.devsite-claim-badge-dialog .buttons-container .sharing button:hover,devsite-badge-awarded .buttons-container .sharing button:focus,devsite-badge-awarded .buttons-container .sharing button:hover{background:none}.devsite-claim-badge-dialog .buttons-container .sharing button:active,devsite-badge-awarded .buttons-container .sharing button:active{box-shadow:none}.devsite-claim-badge-dialog .error,devsite-badge-awarded .error{padding:20px}.devsite-claim-badge-dialog .error .material-icons,devsite-badge-awarded .error .material-icons{margin-right:10px}devsite-badge-redeemer{display:block;opacity:1;-webkit-transition:opacity .7s ease-in;transition:opacity .7s ease-in}devsite-badge-redeemer .redeem-code-page-subtitle{margin-bottom:50px;margin-top:-28px;font-size:18px;color:#202124;font-family:Google Sans,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif}devsite-badge-redeemer devsite-badge-awarded{display:block}devsite-badge-redeemer.redeem-success{opacity:0}devsite-badge-redeemer .waiting-container{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column}devsite-badge-redeemer .waiting-container devsite-spinner{margin-top:15px;-webkit-align-self:center;-ms-flex-item-align:center;align-self:center}devsite-badge-redeemer .change-account-button,devsite-badge-redeemer .create-profile-button,devsite-badge-redeemer .sign-in-button{margin-top:10px}devsite-badge-redeemer .enter-button{margin-top:15px}devsite-badge-redeemer .redeem-code-title{text-transform:uppercase;font-size:10.5px;font-weight:600;color:#80868b;letter-spacing:1px}devsite-badge-redeemer .redeem-code-error-icon,devsite-badge-redeemer .redeem-code-error-message,devsite-badge-redeemer .redeem-code-success-icon{display:none}devsite-badge-redeemer.redeem-success .redeem-code-input{border-color:#1e8e3e!important;color:default!important}devsite-badge-redeemer.redeem-success .redeem-code-success-icon{display:inline;font-size:25px;color:#1e8e3e;margin-left:10px;line-height:44px}devsite-badge-redeemer.redeem-error .redeem-code-input{border-color:#d93025}devsite-badge-redeemer.redeem-error .redeem-code-error-message{display:block;font-size:12px;color:#80868b;font-style:italic;font-weight:600}devsite-badge-redeemer.redeem-error .redeem-code-error-icon{display:inline;font-size:25px;color:#d93025;margin-left:10px;line-height:44px}devsite-badge-redeemer .redeem-code-spinner{display:inline-block;margin-left:10px;top:6px}devsite-badge-redeemer .redeem-code-input{display:inline-block;font-size:18px;font-weight:500;letter-spacing:12px;color:#000;padding:8px 2px 8px 12px;border:2px solid #1a73e8;border-radius:4px;background-color:rgba(227,242,253,.6);width:450px;height:45px}devsite-badge-redeemer .redeem-code-input:disabled{border-color:#80868b;color:#80868b}devsite-book-nav{max-height:100vh;overflow-x:hidden;overflow-y:auto;position:relative;z-index:1004}body[pending] devsite-book-nav{background:#fff;box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15);height:100vh}body[ready] devsite-book-nav[fixed]{box-shadow:none;contain:content;max-height:100%;position:fixed;-webkit-transform:translateZ(0);transform:translateZ(0);will-change:top,max-height,transform}.devsite-book-nav-bg{background:#fff;box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15)}body[ready] .devsite-book-nav-bg[fixed]{bottom:0;display:block;position:fixed;top:0;z-index:1}.devsite-book-nav-bg:after{bottom:-10px;content:"";display:block;height:10px;position:fixed;width:278px}[dir=ltr] .devsite-book-nav-bg:after{left:0}[dir=rtl] .devsite-book-nav-bg:after{right:0}devsite-book-nav .devsite-nav{-webkit-transform:translateZ(0);transform:translateZ(0)}devsite-book-nav .devsite-nav-list{padding-bottom:36px}devsite-book-nav .devsite-nav-list>.devsite-nav-item:not(.devsite-nav-accordion):not(.devsite-nav-divider):first-child{border-top:0;margin-top:20px;padding-top:0}[dir=ltr] devsite-book-nav li .devsite-nav-title{padding-left:24px}[dir=rtl] devsite-book-nav li .devsite-nav-title{padding-left:8px;padding-right:24px}[dir=ltr] devsite-book-nav devsite-expandable-nav li .devsite-nav-title{padding-left:40px}[dir=rtl] devsite-book-nav devsite-expandable-nav li .devsite-nav-title{padding-right:40px}[dir=ltr] devsite-book-nav devsite-expandable-nav li li .devsite-nav-title{padding-left:56px}[dir=rtl] devsite-book-nav devsite-expandable-nav li li .devsite-nav-title{padding-right:56px}[dir=ltr] devsite-book-nav devsite-expandable-nav li li li .devsite-nav-title{padding-left:72px}[dir=rtl] devsite-book-nav devsite-expandable-nav li li li .devsite-nav-title{padding-right:72px}[dir=ltr] devsite-book-nav devsite-expandable-nav li li li li .devsite-nav-title{padding-left:88px}[dir=rtl] devsite-book-nav devsite-expandable-nav li li li li .devsite-nav-title{padding-right:88px}[dir=ltr] devsite-book-nav devsite-expandable-nav li li li li li .devsite-nav-title{padding-left:104px}[dir=rtl] devsite-book-nav devsite-expandable-nav li li li li li .devsite-nav-title{padding-right:104px}[dir=ltr] devsite-book-nav devsite-expandable-nav li li li li li li .devsite-nav-title{padding-left:120px}[dir=rtl] devsite-book-nav devsite-expandable-nav li li li li li li .devsite-nav-title{padding-right:120px}[dir=ltr] devsite-book-nav li.devsite-nav-divider .devsite-nav-title{padding-left:0}[dir=rtl] devsite-book-nav li.devsite-nav-divider .devsite-nav-title{padding-right:0}[dir=ltr] devsite-book-nav .devsite-nav-title{margin-right:0;margin-right:var(--devsite-nav-title-margin-x,0);padding-right:8px}[dir=rtl] devsite-book-nav .devsite-nav-title{margin-left:0;margin-left:var(--devsite-nav-title-margin-x,0);padding-left:8px}devsite-book-nav .devsite-nav-title.devsite-nav-active{background:0;background:var(--devsite-nav-title-background-active,0)}[dir=ltr] devsite-book-nav .devsite-nav-title.devsite-nav-active{border-radius:0 12px 12px 0}[dir=rtl] devsite-book-nav .devsite-nav-title.devsite-nav-active{border-radius:12px 0 0 12px}[dir=ltr] devsite-book-nav .devsite-nav-item:not(.devsite-nav-accordion):not(.devsite-nav-heading)>.devsite-nav-title:not(.devsite-nav-active),[dir=ltr] devsite-book-nav .devsite-nav-item:not(.devsite-nav-accordion)>devsite-expandable-nav>.devsite-nav-title-no-path{border-radius:0 12px 12px 0}[dir=rtl] devsite-book-nav .devsite-nav-item:not(.devsite-nav-accordion):not(.devsite-nav-heading)>.devsite-nav-title:not(.devsite-nav-active),[dir=rtl] devsite-book-nav .devsite-nav-item:not(.devsite-nav-accordion)>devsite-expandable-nav>.devsite-nav-title-no-path{border-radius:12px 0 0 12px}devsite-book-nav .devsite-nav-item:not(.devsite-nav-accordion):not(.devsite-nav-heading)>.devsite-nav-title:not(.devsite-nav-active):focus,devsite-book-nav .devsite-nav-item:not(.devsite-nav-accordion):not(.devsite-nav-heading)>.devsite-nav-title:not(.devsite-nav-active):hover,devsite-book-nav .devsite-nav-item:not(.devsite-nav-accordion)>devsite-expandable-nav>.devsite-nav-title-no-path:focus,devsite-book-nav .devsite-nav-item:not(.devsite-nav-accordion)>devsite-expandable-nav>.devsite-nav-title-no-path:hover{background:0;background:var(--devsite-nav-title-background-hover,0)}devsite-book-nav .devsite-nav-item:not(.devsite-nav-accordion):not(.devsite-nav-heading)>.devsite-nav-title:not(.devsite-nav-active):focus,devsite-book-nav .devsite-nav-item:not(.devsite-nav-accordion):not(.devsite-nav-heading)>.devsite-nav-title:not(.devsite-nav-active):hover{color:#1a73e8;color:var(--devsite-nav-title-color-hover,#1a73e8)}devsite-book-nav .devsite-nav-list>.devsite-nav-heading:not(.devsite-nav-divider){border-top:1px solid #dadce0;padding-top:11px}devsite-book-nav .devsite-nav-heading:not(.devsite-nav-divider){margin-top:12px}[dir=ltr] devsite-book-nav .devsite-nav-heading:not(.devsite-nav-divider) .devsite-nav-title-no-path{padding-left:24px}[dir=rtl] devsite-book-nav .devsite-nav-heading:not(.devsite-nav-divider) .devsite-nav-title-no-path{padding-right:24px}[dir=ltr] devsite-book-nav devsite-expandable-nav .devsite-nav-heading:not(.devsite-nav-divider) .devsite-nav-title-no-path{padding-left:40px}[dir=rtl] devsite-book-nav devsite-expandable-nav .devsite-nav-heading:not(.devsite-nav-divider) .devsite-nav-title-no-path{padding-right:40px}[dir=ltr] devsite-book-nav devsite-expandable-nav li .devsite-nav-heading:not(.devsite-nav-divider) .devsite-nav-title-no-path{padding-left:56px}[dir=rtl] devsite-book-nav devsite-expandable-nav li .devsite-nav-heading:not(.devsite-nav-divider) .devsite-nav-title-no-path{padding-right:56px}[dir=ltr] devsite-book-nav devsite-expandable-nav li li .devsite-nav-heading:not(.devsite-nav-divider) .devsite-nav-title-no-path{padding-left:72px}[dir=rtl] devsite-book-nav devsite-expandable-nav li li .devsite-nav-heading:not(.devsite-nav-divider) .devsite-nav-title-no-path{padding-right:72px}[dir=ltr] devsite-book-nav devsite-expandable-nav li li li .devsite-nav-heading:not(.devsite-nav-divider) .devsite-nav-title-no-path{padding-left:88px}[dir=rtl] devsite-book-nav devsite-expandable-nav li li li .devsite-nav-heading:not(.devsite-nav-divider) .devsite-nav-title-no-path{padding-right:88px}[dir=ltr] devsite-book-nav devsite-expandable-nav li li li li .devsite-nav-heading:not(.devsite-nav-divider) .devsite-nav-title-no-path{padding-left:104px}[dir=rtl] devsite-book-nav devsite-expandable-nav li li li li .devsite-nav-heading:not(.devsite-nav-divider) .devsite-nav-title-no-path{padding-right:104px}[dir=ltr] devsite-book-nav devsite-expandable-nav li li li li li .devsite-nav-heading:not(.devsite-nav-divider) .devsite-nav-title-no-path{padding-left:120px}[dir=rtl] devsite-book-nav devsite-expandable-nav li li li li li .devsite-nav-heading:not(.devsite-nav-divider) .devsite-nav-title-no-path{padding-right:120px}[dir=ltr] devsite-book-nav .devsite-nav-accordion>devsite-expandable-nav>.devsite-nav-title-no-path{margin-right:0}[dir=rtl] devsite-book-nav .devsite-nav-accordion>devsite-expandable-nav>.devsite-nav-title-no-path{margin-left:0}devsite-book-nav .devsite-nav-heading.devsite-nav-divider{background:#eceff1;background:var(--devsite-nav-divider-background,#eceff1);border-bottom:1px solid #dadce0;border-top:1px solid #dadce0;padding:4px 24px 2px}devsite-book-nav .devsite-nav-heading.devsite-nav-divider:first-child{padding-top:4px}devsite-book-nav .devsite-nav-divider>.devsite-nav-title{font:500 11px/16px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;letter-spacing:.8px;text-transform:uppercase}devsite-book-nav .devsite-nav-accordion+.devsite-nav-accordion,devsite-book-nav .devsite-nav-divider+.devsite-nav-accordion{border-top:0;padding-top:12px}devsite-book-nav .devsite-nav-accordion+.devsite-nav-divider{border-top:0;padding-top:4px}devsite-book-nav .devsite-nav-item:not(.devsite-nav-accordion) .devsite-nav-heading>.devsite-nav-title-no-path{border-radius:0;cursor:default}devsite-book-nav .devsite-nav-item:not(.devsite-nav-accordion) .devsite-nav-heading>.devsite-nav-title-no-path:focus,devsite-book-nav .devsite-nav-item:not(.devsite-nav-accordion) .devsite-nav-heading>.devsite-nav-title-no-path:hover{background:0}devsite-book-nav .devsite-nav-item.devsite-nav-deprecated:not(.devsite-nav-accordion) .devsite-nav-heading>.devsite-nav-title-no-path:focus,devsite-book-nav .devsite-nav-item.devsite-nav-deprecated:not(.devsite-nav-accordion) .devsite-nav-heading>.devsite-nav-title-no-path:hover{color:#1a73e8;color:var(--devsite-nav-title-no-path-color-hover,#1a73e8)}devsite-book-nav .devsite-nav-accordion+.devsite-nav-item:not(.devsite-nav-accordion):not(.devsite-nav-divider),devsite-book-nav .devsite-nav-divider+.devsite-nav-item:not(.devsite-nav-accordion):not(.devsite-nav-divider),devsite-book-nav .devsite-nav-item:not(.devsite-nav-accordion):not(.devsite-nav-divider)+.devsite-nav-accordion,devsite-book-nav .devsite-nav-item:not(.devsite-nav-accordion):not(.devsite-nav-divider)+.devsite-nav-divider{margin-top:12px}devsite-book-nav .devsite-nav-break{height:24px}#devsite-hamburger-menu,#devsite-hamburger-menu[visually-hidden],devsite-book-nav .devsite-mobile-header,devsite-book-nav .devsite-mobile-nav-top{display:none}devsite-book-nav .devsite-mobile-header{background:#fff;background:var(--devsite-header-color-upper,#fff);border-bottom:1px solid #dadce0;border-bottom:var(--devsite-header-border,1px solid #dadce0)}#devsite-hamburger-menu:before,devsite-book-nav #devsite-close-nav:before{border-radius:50%;padding:8px;-webkit-transition:background .2s;transition:background .2s}#devsite-hamburger-menu:focus:before,#devsite-hamburger-menu:hover:before,devsite-book-nav #devsite-close-nav:focus:before,devsite-book-nav #devsite-close-nav:hover:before{background:#f1f3f4}#devsite-hamburger-menu:before{content:"menu"}[dir=ltr] devsite-book-nav #devsite-close-nav:before{content:"arrow_back"}[dir=rtl] devsite-book-nav #devsite-close-nav:before{content:"arrow_forward"}devsite-book-nav[top-level-nav] #devsite-close-nav:before{content:"close"}@media screen and (max-width:840px){devsite-book-nav{display:none;height:100vh;max-height:100vh!important;top:0!important;-webkit-transition:-webkit-transform .2s cubic-bezier(.4,0,.2,1);transition:-webkit-transform .2s cubic-bezier(.4,0,.2,1);transition:transform .2s cubic-bezier(.4,0,.2,1);transition:transform .2s cubic-bezier(.4,0,.2,1),-webkit-transform .2s cubic-bezier(.4,0,.2,1);z-index:1013}[dir=ltr] devsite-book-nav{-webkit-transform:translate3d(-280px,0,0)!important;transform:translate3d(-280px,0,0)!important}[dir=rtl] devsite-book-nav{-webkit-transform:translate3d(280px,0,0)!important;transform:translate3d(280px,0,0)!important}devsite-book-nav:not([animatable]){-webkit-transition:-webkit-transform 1ms;transition:-webkit-transform 1ms;transition:transform 1ms;transition:transform 1ms,-webkit-transform 1ms}body[ready] .devsite-book-nav-bg[fixed]{display:none}body[ready] devsite-book-nav[fixed]{background:#fff;display:block!important;box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 2px 6px 2px rgba(60,64,67,.15)}devsite-book-nav[visually-hidden]{opacity:1!important;pointer-events:auto!important;visibility:visible!important}#devsite-hamburger-menu,devsite-book-nav #devsite-close-nav{height:100%;position:relative;width:auto;z-index:20}#devsite-hamburger-menu{display:inline-block}[dir=ltr] #devsite-hamburger-menu{margin:0 8px 0 -4px}[dir=rtl] #devsite-hamburger-menu{margin:0 -4px 0 8px}devsite-book-nav #devsite-close-nav{color:#5f6368;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}[dir=ltr] devsite-book-nav #devsite-close-nav{margin:0 0 0 -12px}[dir=rtl] devsite-book-nav #devsite-close-nav{margin:0 -12px 0 0}devsite-book-nav .devsite-mobile-nav-top{display:block}devsite-book-nav .devsite-book-nav-wrapper{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-transition:-webkit-transform .2s cubic-bezier(.4,0,.2,1);transition:-webkit-transform .2s cubic-bezier(.4,0,.2,1);transition:transform .2s cubic-bezier(.4,0,.2,1);transition:transform .2s cubic-bezier(.4,0,.2,1),-webkit-transform .2s cubic-bezier(.4,0,.2,1)}[dir=ltr] devsite-book-nav .devsite-book-nav-wrapper{-webkit-transform:translate3d(-268px,0,0)!important;transform:translate3d(-268px,0,0)!important}[dir=rtl] devsite-book-nav .devsite-book-nav-wrapper{-webkit-transform:translate3d(268px,0,0)!important;transform:translate3d(268px,0,0)!important}devsite-book-nav:not([animatable]) .devsite-book-nav-wrapper{-webkit-transition:-webkit-transform 1ms;transition:-webkit-transform 1ms;transition:transform 1ms;transition:transform 1ms,-webkit-transform 1ms}devsite-book-nav .devsite-nav-list{padding-bottom:120px}devsite-book-nav .devsite-nav-list>.devsite-nav-item:not(.devsite-nav-accordion):not(.devsite-nav-divider):first-child{margin-top:0}devsite-book-nav .devsite-mobile-nav-bottom .devsite-nav-list>.devsite-nav-item:not(.devsite-nav-accordion):not(.devsite-nav-divider):first-child{margin-top:13px}devsite-book-nav .devsite-mobile-nav-top .devsite-nav-text{-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1}devsite-book-nav[top-level-nav] .devsite-book-nav-wrapper{-webkit-transform:translateZ(0)!important;transform:translateZ(0)!important}devsite-book-nav:not([top-level-nav]) .devsite-mobile-nav-top,devsite-book-nav[top-level-nav] .devsite-mobile-nav-bottom{height:calc(100vh - 64px);overflow:hidden}devsite-book-nav .devsite-mobile-nav-top>.devsite-nav-list>.devsite-nav-item{border-bottom:1px solid #dadce0}devsite-book-nav .devsite-mobile-nav-top>.devsite-nav-list>.devsite-nav-item>.devsite-nav-title{font-weight:700;padding-bottom:15px;padding-top:16px}devsite-book-nav .devsite-mobile-nav-top>.devsite-nav-list>.devsite-nav-item>.devsite-nav-active{background:0}devsite-book-nav .devsite-mobile-nav-top>.devsite-nav-list>.devsite-nav-item>.devsite-nav-title:not(.devsite-nav-active){color:#5f6368}devsite-book-nav .devsite-mobile-nav-top>.devsite-nav-list>.devsite-nav-item:not(.devsite-nav-accordion):not(.devsite-nav-heading)>.devsite-nav-title{border-radius:0}devsite-book-nav .devsite-mobile-nav-top>.devsite-nav-list>.devsite-nav-item:not(.devsite-nav-accordion):not(.devsite-nav-heading)>.devsite-nav-title:focus,devsite-book-nav .devsite-mobile-nav-top>.devsite-nav-list>.devsite-nav-item:not(.devsite-nav-accordion):not(.devsite-nav-heading)>.devsite-nav-title:hover{background:0}devsite-book-nav .devsite-mobile-nav-bottom,devsite-book-nav .devsite-mobile-nav-top{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;width:268px}devsite-book-nav .devsite-mobile-header{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;height:48px;padding:0 16px;position:relative}devsite-book-nav .devsite-mobile-header .devsite-nav-active{font-weight:400}devsite-book-nav .devsite-nav-responsive-tabs{margin-bottom:12px;margin-top:-11px}devsite-book-nav .devsite-lower-tab-item{margin:0}devsite-book-nav .devsite-nav-responsive-tabs>.devsite-nav-item:last-child{margin-bottom:8px}}@media screen and (max-width:600px){#devsite-hamburger-menu,devsite-book-nav #devsite-close-nav{margin:0 4px 0 -12px}}devsite-book-nav .devsite-product-id-row{padding:20px 24px 2px;padding:var(--devsite-product-id-row-padding,20px 24px 2px);-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;min-height:60px}devsite-book-nav .devsite-header-no-lower-tabs .devsite-product-id-row{padding:20px 24px;padding:var(--devsite-product-id-row-padding,20px 24px);min-height:72px}devsite-book-nav .devsite-product-description-row{color:#fff;color:var(--devsite-header-foreground-lower-description,var(--devsite-header-foreground-lower-hover,#fff));font:400 20px/32px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font:var(--devsite-header-lower-description-font,400 20px/32px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif)}devsite-book-nav .devsite-breadcrumb-list+.devsite-product-description:not(:empty){margin-top:8px}devsite-book-nav .devsite-product-description{font:16px/24px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;margin:0 180px 0 0}[dir=rtl] devsite-book-nav .devsite-product-description{margin:0 0 0 180px}devsite-book-nav .devsite-product-button-row{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;margin:0 0 0 24px;z-index:1}[dir=rtl] devsite-book-nav .devsite-product-button-row{margin:0 24px 0 0}@media screen and (max-width:840px){devsite-book-nav .devsite-product-id-row{padding:20px 24px;padding:var(--devsite-product-id-row-padding,20px 24px);min-height:72px}[dir=rtl] devsite-book-nav .devsite-product-description,devsite-book-nav .devsite-product-description{margin:0}}@media screen and (max-width:600px){devsite-book-nav .devsite-header-no-lower-tabs .devsite-product-id-row,devsite-book-nav .devsite-product-id-row{padding:20px 16px;padding:var(--devsite-product-id-row-padding,20px 16px);-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}devsite-book-nav .devsite-product-button-row{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%;margin:16px 0 0}}devsite-book-nav .devsite-product-name-wrapper{-ms-flex-align:center;-webkit-box-flex:0;-webkit-flex:0 0 auto;-moz-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;height:36px;margin:6px 0}devsite-book-nav .devsite-product-name-link,devsite-book-nav .devsite-product-name-wrapper,devsite-book-nav .devsite-site-logo-link{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}devsite-book-nav .devsite-product-name-link,devsite-book-nav .devsite-site-logo-link{-ms-flex-align:center;opacity:1;-webkit-transition:opacity .2s;transition:opacity .2s}devsite-book-nav .devsite-product-name-link:focus,devsite-book-nav .devsite-product-name-link:hover,devsite-book-nav .devsite-site-logo-link:focus{opacity:.7;text-decoration:none}devsite-book-nav .devsite-site-logo{height:32px}devsite-book-nav .devsite-has-google-wordmark>.devsite-breadcrumb-link,devsite-book-nav .devsite-has-google-wordmark>.devsite-product-name{direction:ltr}devsite-book-nav .devsite-google-wordmark{height:24px;margin:0 4px 0 0;position:relative;top:5px;width:74px}devsite-book-nav .devsite-google-wordmark-svg-path{-webkit-transition:fill .2s;transition:fill .2s}devsite-book-nav .devsite-site-logo-link canvas{height:auto!important}devsite-book-nav .devsite-product-logo-container{color:#202124;color:var(--devsite-primary-color,#202124);-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;border-radius:50%;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;width:36px}[dir=ltr] devsite-book-nav .devsite-product-logo-container{margin-right:4px}[dir=rtl] devsite-book-nav .devsite-product-logo-container{margin-left:4px}devsite-book-nav .devsite-product-logo-container[background]{background:#202124;background:var(--devsite-primary-color,#202124);color:#fff}devsite-book-nav .devsite-product-logo{color:inherit;font-size:32px;height:32px;max-width:32px;min-width:32px;overflow:hidden;white-space:nowrap}devsite-book-nav .devsite-product-logo-container[background] .devsite-product-logo{font-size:28px;height:28px;max-width:28px;min-width:28px}devsite-book-nav .devsite-product-name{font:400 20px/32px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font:var(--devsite-wordmark-font,400 20px/32px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif);letter-spacing:0;margin:0;max-height:32px;overflow:hidden;text-overflow:ellipsis;-webkit-transition:color .2s;transition:color .2s;white-space:nowrap}devsite-book-nav .devsite-site-logo:not([src*=\.svg]){height:auto;max-height:32px}devsite-book-nav .devsite-breadcrumb-link>.devsite-product-name{color:inherit}@media screen and (max-width:840px){devsite-book-nav .devsite-product-name-wrapper{-webkit-box-flex:0;-webkit-flex:0 1 auto;-moz-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto;min-width:0}devsite-book-nav .devsite-product-name-wrapper .devsite-breadcrumb-item:not(:first-of-type),devsite-book-nav .devsite-product-name-wrapper .devsite-site-logo-link+.devsite-product-name{display:none}devsite-book-nav .devsite-product-name-wrapper .devsite-breadcrumb-item,devsite-book-nav .devsite-product-name-wrapper .devsite-breadcrumb-link,devsite-book-nav .devsite-product-name-wrapper .devsite-breadcrumb-list,devsite-book-nav .devsite-product-name-wrapper .devsite-product-name{width:100%}devsite-book-nav .devsite-product-name-wrapper .devsite-breadcrumb-link{overflow:hidden;text-overflow:ellipsis}}devsite-code{margin:16px 0;margin:var(--devsite-code-margin,16px 0);clear:both;direction:ltr!important;display:block;overflow:hidden;position:relative}devsite-code .devsite-code-buttons-container{right:0;right:var(--devsite-code-buttons-container-right,0);position:absolute;top:0;z-index:1}devsite-code .devsite-code-buttons-container button{height:24px;height:var(--devsite-code-button-size,24px);width:24px;width:var(--devsite-code-button-size,24px);-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;background:0;border:0;border-radius:0;box-shadow:none;color:#202124;display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-size:18px;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;margin:0;min-width:auto;padding:0;-webkit-transition:color .2s;transition:color .2s}devsite-code .devsite-code-buttons-container button:focus,devsite-code .devsite-code-buttons-container button:hover{color:#5f6368}devsite-code .devsite-code-buttons-container button.material-icons,devsite-code .devsite-code-buttons-container button.material-icons:hover{cursor:pointer}devsite-code[dark-code] .devsite-code-buttons-container button{color:hsla(0,0%,100%,.7)}devsite-code[dark-code] .devsite-code-buttons-container button:focus,devsite-code[dark-code] .devsite-code-buttons-container button:hover{color:#fff}devsite-code .devsite-code-buttons-container .devsite-toggle-dark,devsite-code[dark-code] .devsite-code-buttons-container .devsite-toggle-light{display:inline}devsite-code:not([dark-code]) .devsite-code-buttons-container .devsite-toggle-light,devsite-code[dark-code] .devsite-code-buttons-container .devsite-toggle-dark{display:none}devsite-code[dark-code] .pre-style,devsite-code[dark-code] pre,devsite-code[dark-code] pre code{background:#283142;color:#eceff1}devsite-code pre{margin:0;padding:24px;padding:var(--devsite-code-padding,24px)}devsite-code pre .com{color:#d81b60}devsite-code[dark-code] pre .com{color:#f06292}devsite-code pre .dec,devsite-code pre .lit{color:#c53929}devsite-code[dark-code] pre .dec,devsite-code[dark-code] pre .lit{color:#fbc02d}devsite-code pre .kwd,devsite-code pre .tag{color:#3b78e7}devsite-code[dark-code] pre .kwd,devsite-code[dark-code] pre .tag{color:#4dd0e1}devsite-code pre .atv,devsite-code pre .str{color:#0d904f}devsite-code[dark-code] pre .atv,devsite-code[dark-code] pre .str{color:#9ccc65}devsite-code pre .atn,devsite-code pre .typ{color:#9c27b0}devsite-code[dark-code] pre .atn,devsite-code[dark-code] pre .typ{color:#ce93d8}devsite-code .prettyprint :not(.devsite-github-link)>a:not(.devsite-github-link),devsite-code a,devsite-code a .atn,devsite-code a .atv,devsite-code a .com,devsite-code a .dec,devsite-code a .kwd,devsite-code a .lit,devsite-code a .pln,devsite-code a .pun,devsite-code a .str,devsite-code a .tag,devsite-code a .typ{color:#1a73e8;-moz-osx-font-smoothing:auto;-webkit-font-smoothing:auto;font-weight:700}devsite-code[dark-code] .prettyprint :not(.devsite-github-link)>a:not(.devsite-github-link),devsite-code[dark-code] a,devsite-code[dark-code] a .atn,devsite-code[dark-code] a .atv,devsite-code[dark-code] a .com,devsite-code[dark-code] a .dec,devsite-code[dark-code] a .kwd,devsite-code[dark-code] a .lit,devsite-code[dark-code] a .pln,devsite-code[dark-code] a .pun,devsite-code[dark-code] a .str,devsite-code[dark-code] a .tag,devsite-code[dark-code] a .typ{color:#669df6}devsite-code .prettyprint a:focus,devsite-code .prettyprint a:hover,devsite-code a:focus .atn,devsite-code a:focus .atv,devsite-code a:focus .com,devsite-code a:focus .dec,devsite-code a:focus .kwd,devsite-code a:focus .lit,devsite-code a:focus .pln,devsite-code a:focus .pun,devsite-code a:focus .str,devsite-code a:focus .tag,devsite-code a:focus .typ,devsite-code a:hover .atn,devsite-code a:hover .atv,devsite-code a:hover .com,devsite-code a:hover .dec,devsite-code a:hover .kwd,devsite-code a:hover .lit,devsite-code a:hover .pln,devsite-code a:hover .pun,devsite-code a:hover .str,devsite-code a:hover .tag,devsite-code a:hover .typ{text-decoration:underline}devsite-code .devsite-terminal:before{color:#bdbdbd;content:"$";padding-right:8px}devsite-code .devsite-terminal[data-terminal-prefix]:before{content:attr(data-terminal-prefix)}devsite-code .devsite-github-link{display:block;text-align:right}devsite-code a.devsite-github-link:focus,devsite-code a.devsite-github-link:hover{text-decoration:none}devsite-code .devsite-github-link:after{color:#1a73e8;content:"open_in_new";font:normal normal normal 24px/1 Material Icons;-webkit-font-feature-settings:"liga";-moz-font-feature-settings:"liga";font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal;font-size:18px;margin-left:8px;vertical-align:middle}devsite-code[dark-code] .devsite-github-link:after,devsite-code[dark-code] .devsite-github-link>a{color:#669df6}devsite-code[highlight] .prettyprint>span{opacity:.54}devsite-code[dark-code] pre::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.7)}devsite-code devsite-selector pre{margin:0}body[layout=full] devsite-code{overflow:visible}body[layout=full] devsite-code:after{background:#f1f3f4;content:"";display:block;height:100%;left:calc(50% - 50vw);position:absolute;top:0;width:100vw;z-index:-1}body[layout=full] devsite-code[dark-code]:after{background:#283142}devsite-catalog .devsite-catalog-alphabet{border-bottom:1px solid #dadce0;border-top:1px solid #dadce0;color:#bdc1c6;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;font-size:20px;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:16px 0}devsite-catalog .devsite-catalog-alphabet-link,devsite-catalog .devsite-catalog-alphabet-link-disabled{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-webkit-flex:1 1 auto;-moz-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;padding:10px 0}devsite-catalog .devsite-catalog-alphabet-letter:not(:last-child){border-bottom:1px solid #dadce0}devsite-catalog .devsite-catalog-alphabet-letter-heading{margin:20px 0}devsite-catalog .devsite-catalog-alphabet-letter-list{-webkit-column-count:3;-moz-column-count:3;column-count:3;-webkit-column-gap:40px;-moz-column-gap:40px;column-gap:40px;list-style:none;margin:0 0 40px;padding:0}devsite-catalog .devsite-catalog-alphabet-letter-list-item{-webkit-column-break-inside:avoid;break-inside:avoid;margin:0 0 16px}devsite-catalog .devsite-catalog-alphabet-letter-link{display:block;padding:8px 0}devsite-catalog .devsite-catalog-item-name{margin:0}devsite-catalog devsite-filter:not(:first-of-type){border-top:1px solid #dadce0}devsite-catalog .devsite-filter-input+.devsite-catalog-alphabet{margin-top:32px}devsite-catalog .devsite-filter-input:valid+.devsite-catalog-alphabet{display:none}@media screen and (max-width:840px){devsite-catalog .devsite-catalog-alphabet{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:start;-webkit-justify-content:flex-start;-moz-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}devsite-catalog .devsite-catalog-alphabet-letter-list{-webkit-column-count:2;-moz-column-count:2;column-count:2}devsite-catalog .devsite-catalog-alphabet-link,devsite-catalog .devsite-catalog-alphabet-link-disabled{display:block;-webkit-box-flex:0;-webkit-flex:0 0 44px;-moz-box-flex:0;-ms-flex:0 0 44px;flex:0 0 44px;text-align:center}}@media screen and (max-width:600px){devsite-catalog .devsite-catalog-alphabet{padding:0 0 20px}devsite-catalog .devsite-catalog-alphabet-letter-list{-webkit-column-count:1;-moz-column-count:1;column-count:1}}devsite-codelab-catalog .controls{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}devsite-codelab-catalog .catalog-selector,devsite-codelab-catalog .category-selector,devsite-codelab-catalog .sort-controls{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;-ms-flex:1;flex:1}devsite-codelab-catalog .controls{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}devsite-codelab-catalog .catalog-selector,devsite-codelab-catalog .category-selector,devsite-codelab-catalog .controls{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}devsite-codelab-catalog .catalog-selector{-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;margin:0;width:auto}devsite-codelab-catalog .category-selector{-webkit-box-pack:end;-webkit-justify-content:flex-end;-moz-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}devsite-codelab-catalog[sortorder=-timestamp] .button[sortorder=-timestamp],devsite-codelab-catalog[sortorder=displaytitle] .button[sortorder=displaytitle],devsite-codelab-catalog[sortorder=durationminutes] .button[sortorder=durationminutes]{border-bottom:2px solid;border-radius:4px 4px 0 0}@media screen and (max-width:840px){devsite-codelab-catalog .sort-controls{-webkit-box-flex:0;-webkit-flex:0 1 auto;-moz-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto;padding-bottom:16px;width:100%}devsite-codelab-catalog .catalog-selector{-webkit-box-pack:start;-webkit-justify-content:flex-start;-moz-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}}@media screen and (max-width:600px){devsite-codelab-catalog .catalog-selector{padding-bottom:16px}devsite-codelab-catalog .category-selector{-webkit-box-pack:start;-webkit-justify-content:flex-start;-moz-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}}devsite-content-footer{clear:both;color:rgba(0,0,0,.65);display:block;font:13px/20px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif}devsite-credentials-dialog{border:1px dashed #e91e63;cursor:pointer;padding:2px}.devsite-credentials-dialog .devsite-credentials-dialog-credentials,.devsite-credentials-dialog .devsite-credentials-dialog-oauth-message,.devsite-credentials-dialog .devsite-credentials-dialog-projects{margin-top:16px}.devsite-credentials-dialog devsite-spinner{margin:auto}.devsite-credentials-dialog .devsite-credentials-dialog-selector{width:100%}devsite-cse{display:block}devsite-cse table{border-collapse:inherit;margin:0}devsite-cse tr{background:#fff;border:0}devsite-cse td{padding:0}devsite-cse .gsc-control-cse,devsite-cse .gsc-control-cse .gsc-table-result{background:0;border:0;font:400 16px/24px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;padding:0}devsite-cse .gsc-above-wrapper-area{display:none}devsite-cse .gsc-results{width:100%}devsite-cse .gsc-results .gsc-imageResult,devsite-cse .gsc-webResult.gsc-result,devsite-cse .gsc-webResult.gsc-result:hover{background:0}devsite-cse .gsc-results .gsc-cursor-box{margin:8px 0}devsite-cse .gsc-table-result,devsite-cse .gsc-thumbnail-inside,devsite-cse .gsc-url-top{padding-left:0;padding-right:0}devsite-cse .gs-error-result .gs-snippet,devsite-cse .gs-no-results-result .gs-snippet{background:0;border:0;color:#202124;margin:0;padding:0}devsite-cse .gcsc-find-more-on-google{margin:0}devsite-cse .gcsc-find-more-on-google,devsite-cse .gsc-control-cse .gs-imageResult a.gs-title:link,devsite-cse .gsc-control-cse .gs-imageResult a.gs-title:link b,devsite-cse .gsc-control-cse .gs-imageResult a.gs-title:visited,devsite-cse .gsc-control-cse .gs-imageResult a.gs-title:visited b,devsite-cse .gsc-control-cse .gs-result .gs-title,devsite-cse .gsc-control-cse .gs-result .gs-title *,devsite-cse .gsc-control-cse .gs-webResult.gs-result a.gs-title:link,devsite-cse .gsc-control-cse .gs-webResult.gs-result a.gs-title:link b,devsite-cse .gsc-control-cse .gs-webResult.gs-result a.gs-title:visited,devsite-cse .gsc-control-cse .gs-webResult.gs-result a.gs-title:visited b{color:#1a73e8;font:500 16px/24px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;height:auto;text-decoration:none}devsite-cse .gcsc-find-more-on-google-magnifier{fill:#1a73e8}devsite-cse .gsc-results .gsc-cursor-box .gsc-cursor-page{color:#1a73e8}devsite-cse .gsc-control-cse .gs-imageResult a.gs-title:focus,devsite-cse .gsc-control-cse .gs-result .gs-title:focus,devsite-cse .gsc-control-cse .gs-webResult.gs-result a.gs-title:focus{text-decoration:underline}devsite-cse .gsc-control-cse .gs-result .gs-title b{font-weight:700}devsite-cse .gs-imageResult div.gs-visibleUrl,devsite-cse .gs-webResult div.gs-visibleUrl{color:#1e8e3e;font-size:14px}devsite-cse .gcsc-branding{display:none}devsite-device{display:block}devsite-device>.devsite-device-options{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;margin:0 0 24px}[dir=ltr] devsite-device .devsite-device-button:nth-child(n+2){margin-left:12px}[dir=rtl] devsite-device .devsite-device-button:nth-child(n+2){margin-right:12px}devsite-device .devsite-device-input{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;margin:0 0 24px}devsite-device .devsite-device-input>input{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;-ms-flex:1;flex:1}[dir=ltr] devsite-device .devsite-device-input>input{margin-right:16px}[dir=rtl] devsite-device .devsite-device-input>input{margin-left:16px}devsite-device [type=radio],devsite-device [type=radio]:after,devsite-device [type=radio]:before{display:none}devsite-device [type=radio]+label{border:1px solid #dadce0;box-shadow:none;font:500 14px/36px Google Sans,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;border-radius:16px;color:#1a73e8;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;height:32px;padding:0 16px;-webkit-transition:background .2s,border .2s,box-shadow .2s,color .2s;transition:background .2s,border .2s,box-shadow .2s,color .2s}devsite-device [type=radio]+label:focus,devsite-device [type=radio]+label:hover{background:#e8f0fe}devsite-device [type=radio]:checked+label{background:#1a73e8;border-color:#1a73e8;color:#fff}devsite-device>.devsite-device{overflow:hidden;position:relative}devsite-device[device=desktop]>.devsite-device{max-width:100%;padding-bottom:62.5%}devsite-device[device=tablet]>.devsite-device{max-width:60%;padding-bottom:80%}devsite-device[device=mobile]>.devsite-device{max-width:32.109375%;padding-bottom:57.109375%}devsite-device iframe{background:#fff;border:solid #ddd;height:166.6666666667%;position:absolute;-webkit-transform:scale(.6);transform:scale(.6);width:166.6666666667%}[dir=ltr] devsite-device iframe{-webkit-transform-origin:0 0;transform-origin:0 0}[dir=rtl] devsite-device iframe{-webkit-transform-origin:100% 0;transform-origin:100% 0}devsite-device[device=desktop] iframe{border-radius:16px;border-width:32px 16px}devsite-device[device=tablet] iframe{border-radius:24px;border-width:60px 16px}devsite-device[device=mobile] iframe{border-radius:36px;border-width:60px 12px}devsite-dynamic-content{margin:20px 0;margin:var(--devsite-dynamic-content-margin,20px 0);display:block;width:100%}devsite-dynamic-content devsite-pagination{margin-top:20px}devsite-expandable{display:block;min-height:24px}devsite-expandable:not([expanded])>:not(.showalways):not(.expand-control):not(.exw-control){display:none}devsite-expandable .exw-control>h2.showalways{margin:40px 0 20px;padding-bottom:7px}devsite-expandable .exw-control>h3.showalways{margin:34px 0 20px}devsite-expandable .exw-control>h4.showalways{margin:36px 0 20px}devsite-expandable .expand-control:not(button):not(.button){color:#1a73e8;cursor:pointer}devsite-expandable a.exw-control:active,devsite-expandable a.exw-control:focus,devsite-expandable a.exw-control:hover{color:#1a73e8;cursor:pointer;outline:0;text-decoration:none}devsite-expandable a.exw-control>.showalways:before{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;color:#5f6368;content:"add_circle";display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;font:normal normal normal 24px/1 Material Icons;-webkit-font-feature-settings:"liga";-moz-font-feature-settings:"liga";font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal;height:20px;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-transform:translate3d(0,-1px,0);transform:translate3d(0,-1px,0);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;vertical-align:middle;width:20px}[dir=ltr] devsite-expandable a.exw-control>.showalways:before{margin-right:12px}[dir=rtl] devsite-expandable a.exw-control>.showalways:before{margin-left:12px}devsite-expandable .exw-control>h2.showalways:before{-webkit-transform:translate3d(0,-2px,0);transform:translate3d(0,-2px,0)}devsite-expandable[expanded]>a.exw-control>.showalways:before{content:"remove_circle"}devsite-expandable a.exw-control:focus>.showalways:before,devsite-expandable a.exw-control:hover>.showalways:before{color:#1a73e8}devsite-content devsite-expandable devsite-expandable{margin-left:40px}devsite-expandable-nav{cursor:pointer;display:block;position:relative}devsite-expandable-nav>.devsite-nav-section{max-width:100%;overflow-y:hidden;-webkit-transition:height .2s;transition:height .2s;width:100%;will-change:height}devsite-expandable-nav:not([animatable])>.devsite-nav-section{-webkit-transition:height 1ms;transition:height 1ms}devsite-expandable-nav>.devsite-nav-section .devsite-nav-heading:not(.devsite-nav-divider):first-child{margin-top:0}devsite-expandable-nav[collapsed]:not([animating])>.devsite-nav-section{display:none}devsite-expandable-nav[collapsed]:not([connected])>.devsite-nav-section{height:0}devsite-expandable-nav>.devsite-nav-title-no-path{cursor:pointer;outline:0}[dir=ltr] devsite-expandable-nav>.devsite-nav-title{padding-left:24px}[dir=rtl] devsite-expandable-nav>.devsite-nav-title{padding-right:24px}[dir=ltr] devsite-expandable-nav devsite-expandable-nav>.devsite-nav-title{padding-left:40px}[dir=rtl] devsite-expandable-nav devsite-expandable-nav>.devsite-nav-title{padding-right:40px}[dir=ltr] devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav>.devsite-nav-title{padding-left:56px}[dir=rtl] devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav>.devsite-nav-title{padding-right:56px}[dir=ltr] devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav>.devsite-nav-title{padding-left:72px}[dir=rtl] devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav>.devsite-nav-title{padding-right:72px}[dir=ltr] devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav>.devsite-nav-title{padding-left:88px}[dir=rtl] devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav>.devsite-nav-title{padding-right:88px}[dir=ltr] devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav>.devsite-nav-title{padding-left:104px}[dir=rtl] devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav>.devsite-nav-title{padding-right:104px}[dir=ltr] devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav>.devsite-nav-title{padding-left:120px}[dir=rtl] devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav>.devsite-nav-title{padding-right:120px}devsite-expandable-nav>.devsite-nav-toggle{cursor:pointer;font:normal normal normal 24px/1 Material Icons;-webkit-font-feature-settings:"liga";-moz-font-feature-settings:"liga";font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal}.devsite-nav-item:not(.devsite-nav-accordion)>devsite-expandable-nav>.devsite-nav-toggle{font-size:18px;position:absolute;top:2px;-webkit-transform:rotate(0);transform:rotate(0);-webkit-transition:-webkit-transform .2s ease;transition:-webkit-transform .2s ease;transition:transform .2s ease;transition:transform .2s ease,-webkit-transform .2s ease;will-change:transform}.devsite-nav-item:not(.devsite-nav-accordion)>devsite-expandable-nav:not([animatable])>.devsite-nav-toggle{-webkit-transition:-webkit-transform 1ms;transition:-webkit-transform 1ms;transition:transform 1ms;transition:transform 1ms,-webkit-transform 1ms}[dir=ltr] devsite-expandable-nav>.devsite-nav-toggle{left:4px}[dir=rtl] devsite-expandable-nav>.devsite-nav-toggle{left:auto;right:4px}[dir=ltr] devsite-expandable-nav devsite-expandable-nav>.devsite-nav-toggle{left:20px}[dir=rtl] devsite-expandable-nav devsite-expandable-nav>.devsite-nav-toggle{right:20px}[dir=ltr] devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav>.devsite-nav-toggle{left:36px}[dir=rtl] devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav>.devsite-nav-toggle{right:36px}[dir=ltr] devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav>.devsite-nav-toggle{left:52px}[dir=rtl] devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav>.devsite-nav-toggle{right:52px}[dir=ltr] devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav>.devsite-nav-toggle{left:68px}[dir=rtl] devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav>.devsite-nav-toggle{right:68px}[dir=ltr] devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav>.devsite-nav-toggle{left:84px}[dir=rtl] devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav>.devsite-nav-toggle{right:84px}[dir=ltr] devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav>.devsite-nav-toggle{left:100px}[dir=rtl] devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav devsite-expandable-nav>.devsite-nav-toggle{right:100px}.devsite-nav-item:not(.devsite-nav-accordion)>devsite-expandable-nav[collapsed]>.devsite-nav-toggle{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}[dir=rtl] .devsite-nav-item:not(.devsite-nav-accordion)>devsite-expandable-nav[collapsed]>.devsite-nav-toggle{-webkit-transform:rotate(90deg);transform:rotate(90deg)}devsite-expandable-nav>.devsite-nav-toggle:before{content:"arrow_drop_down"}.devsite-nav-accordion{border-bottom:1px solid #dadce0;border-top:1px solid #dadce0;padding:11px 0}.devsite-nav-accordion>devsite-expandable-nav{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.devsite-nav-accordion>devsite-expandable-nav,.devsite-nav-accordion>devsite-expandable-nav>.devsite-nav-title{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.devsite-nav-accordion>devsite-expandable-nav>.devsite-nav-title{color:rgba(0,0,0,.65);-webkit-box-flex:1;-webkit-flex:1 0 196px;-moz-box-flex:1;-ms-flex:1 0 196px;flex:1 0 196px;font-weight:700;overflow:hidden}.devsite-nav-accordion>devsite-expandable-nav>.devsite-nav-toggle{font-size:24px;margin:0 8px 0 0;-webkit-box-ordinal-group:2;-webkit-order:1;-moz-box-ordinal-group:2;-ms-flex-order:1;order:1;-webkit-transform:rotateX(0deg);transform:rotateX(0deg);-webkit-transition:-webkit-transform .5s;transition:-webkit-transform .5s;transition:transform .5s;transition:transform .5s,-webkit-transform .5s}[dir=rtl] .devsite-nav-accordion>devsite-expandable-nav>.devsite-nav-toggle{margin:0 0 0 8px}.devsite-nav-accordion>devsite-expandable-nav:not([animatable])>.devsite-nav-toggle{-webkit-transition:-webkit-transform 1ms;transition:-webkit-transform 1ms;transition:transform 1ms;transition:transform 1ms,-webkit-transform 1ms}.devsite-nav-accordion>devsite-expandable-nav[collapsed]>.devsite-nav-toggle{-webkit-transform:rotateX(180deg);transform:rotateX(180deg)}.devsite-nav-accordion>devsite-expandable-nav>.devsite-nav-toggle:before{content:"expand_less"}.devsite-nav-accordion>devsite-expandable-nav>.devsite-nav-section{-webkit-box-ordinal-group:3;-webkit-order:2;-moz-box-ordinal-group:3;-ms-flex-order:2;order:2}devsite-extradory,devsite-extradory .devsite-extra-dory-iframe{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}devsite-extradory .devsite-extra-dory-iframe{width:100%;height:100%}devsite-extradory .devsite-extra-dory-iframe iframe{width:100%;height:100%;border:0}devsite-extradory h2{font-size:24px;color:#424242;text-align:center;line-height:32px;margin:0}devsite-extradory .devsite-extradory-create-profile,devsite-extradory h2{-webkit-align-self:center;-ms-flex-item-align:center;align-self:center}devsite-extradory .devsite-extradory-step1,devsite-extradory .devsite-extradory-step2,devsite-extradory .devsite-extradory-wrapper{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-webkit-align-items:start;-moz-box-align:start;-ms-flex-align:start;align-items:start;width:100%;padding:20px}devsite-extradory .devsite-extradory-create-profile{margin-top:26px}devsite-extradory p{font-size:16px;color:#424242;line-height:24px}devsite-extradory .devsite-extradory-cta label,devsite-extradory .devsite-extradory-cta p{font-size:14px;color:#424242;line-height:29px;margin:0}devsite-extradory .devsite-extradory-buttons,devsite-extradory .devsite-extradory-join-group,devsite-extradory .devsite-extradory-try-again-buttons{margin-top:36px}devsite-extradory .devsite-extradory-spinner{padding:64px}devsite-extradory .devsite-extradory-spinner,devsite-extradory .devsite-extradory-try-again-buttons{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;width:100%}devsite-extradory .devsite-extradory-authorize,devsite-extradory .devsite-extradory-change-account,devsite-extradory .devsite-extradory-join-group,devsite-extradory .devsite-extradory-not-eligible,devsite-extradory .devsite-extradory-sign-in,devsite-extradory .devsite-extradory-try-again{-webkit-align-self:center;-ms-flex-item-align:center;align-self:center}devsite-dialog.devsite-feedback .devsite-dialog-contents{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding:0}devsite-dialog.devsite-feedback h3{margin:0 0 20px;padding:16px 16px 0}devsite-dialog.devsite-feedback .devsite-feedback-items{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;padding:0 6px}devsite-dialog.devsite-feedback .devsite-feedback-item{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;color:#5f6368;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-webkit-flex:1 0 0%;-moz-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;text-decoration:none}devsite-dialog.devsite-feedback .devsite-feedback-item-type{color:#1a73e8}devsite-dialog.devsite-feedback .devsite-feedback-item:focus>.devsite-feedback-item-type{text-decoration:underline}devsite-dialog.devsite-feedback .devsite-feedback-item-icon-container{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;height:48px;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;margin:8px 0;width:48px}devsite-dialog.devsite-feedback .devsite-feedback-item-icon-color{background-color:#202124;background-color:var(--devsite-primary-color,#202124);border-radius:50%;color:#fff}devsite-dialog.devsite-feedback .devsite-feedback-item-icon{font-size:32px}devsite-dialog.devsite-feedback .devsite-feedback-item-icon-container img{max-width:100%}devsite-dialog.devsite-feedback .devsite-feedback-notice,devsite-dialog.devsite-feedback .devsite-feedback-support{padding:16px 16px 0;text-align:center}devsite-dialog.devsite-feedback .devsite-feedback-support-icon{font-size:18px;margin-right:4px;vertical-align:middle}devsite-dialog.devsite-feedback .devsite-feedback-support-icon+span{vertical-align:middle}devsite-dialog.devsite-feedback .devsite-feedback-buttons{padding:16px 0 0;padding:var(--devsite-feedback-buttons-padding,16px 0 0);display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-webkit-justify-content:flex-end;-moz-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}devsite-filter{display:block}.devsite-filter-input,devsite-filter input[type=text]{width:100%}devsite-filter>.devsite-table-wrapper:first-child>table{margin-top:0}devsite-filter[sortable] th:hover{cursor:pointer}devsite-filter th[sort-ascending],devsite-filter th[sort-descending]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}devsite-filter th[sort-ascending]:after,devsite-filter th[sort-descending]:after{content:"arrow_drop_down";display:inline-block;font:normal normal normal 24px/1 Material Icons;-webkit-font-feature-settings:"liga";-moz-font-feature-settings:"liga";font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal;margin:-2px 0 0;position:absolute;-webkit-transform:rotate(0deg);transform:rotate(0deg);-webkit-transition:-webkit-transform .2s;transition:-webkit-transform .2s;transition:transform .2s;transition:transform .2s,-webkit-transform .2s;vertical-align:middle}devsite-filter th[sort-descending]:after{-webkit-transform:rotate(-180deg);transform:rotate(-180deg)}devsite-filter[hide-if-empty][empty]{display:none}devsite-filter[highlight] mark{background-color:#ffe168}devsite-filter[highlight] mark:after,devsite-filter[highlight] mark:before{-webkit-clip-path:inset(100%);clip-path:inset(100%);clip:rect(1px,1px,1px,1px);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}devsite-filter[highlight] mark:before{content:" [highlight start] "}devsite-filter[highlight] mark:after{content:" [highlight end] "}devsite-footer-linkboxes{background:#fff;background:var(--devsite-footer-background,#fff);color:inherit;color:var(--devsite-link-color,inherit);display:block;font:400 14px/16px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;padding:0 24px}devsite-footer-linkboxes .devsite-footer-linkboxes-list{border-bottom:1px solid #dadce0;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;list-style:none;padding:0}devsite-footer-linkboxes .devsite-footer-linkbox{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;-ms-flex:1;flex:1;margin:24px 0}devsite-footer-linkboxes .devsite-footer-linkbox:not(:first-child){margin-left:24px}devsite-footer-linkboxes .devsite-footer-linkbox-heading{font:500 14px/16px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font:var(--devsite-heading-font,500 14px/16px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif);margin:0 0 8px;margin:var(--devsite-heading-margin,0 0 8px)}devsite-footer-linkboxes .devsite-footer-linkbox-list .devsite-footer-linkbox-heading{margin:40px 0 0;margin:var(--devsite-list-heading-margin,40px 0 0)}devsite-footer-linkboxes .devsite-footer-linkbox-list{list-style-type:none;padding:0}devsite-footer-linkboxes .devsite-footer-linkbox-item{margin:0}devsite-footer-linkboxes .devsite-footer-linkbox-link{color:#202124;color:var(--devsite-link-color,#202124);display:block;padding:8px 0}devsite-footer-linkboxes .devsite-footer-linkbox-link:focus,devsite-footer-linkboxes .devsite-footer-linkbox-link:hover{color:#1a73e8;color:var(--devsite-link-hover,#1a73e8);font-weight:inherit;font-weight:var(--devsite-link-font-weight-hover,inherit);text-decoration:none}@media screen and (max-width:1252px){.devsite-main-content[has-book-nav]~devsite-footer-linkboxes .devsite-footer-linkbox{-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1}}@media screen and (max-width:600px){devsite-footer-linkboxes{padding:0 16px}devsite-footer-linkboxes .devsite-footer-linkboxes-list{display:block}devsite-footer-linkboxes .devsite-footer-linkbox{-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1}devsite-footer-linkboxes .devsite-footer-linkbox:not(:first-child){margin-left:0}}devsite-footer-promos{background:#fff;background:var(--devsite-footer-background,#fff);border-top:1px solid #dadce0;border-top:var(--devsite-footer-border-top,1px solid #dadce0);color:inherit;color:var(--devsite-text-color,inherit);display:block;font:14px/20px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;padding:0 24px}devsite-footer-promos .devsite-footer-promos-list{border-bottom:1px solid #dadce0;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;list-style:none;-webkit-justify-content:space-around;-ms-flex-pack:distribute;justify-content:space-around;padding:18px 0}devsite-footer-promos .devsite-footer-promo{-webkit-box-flex:0;-webkit-flex:0 1 192px;-moz-box-flex:0;-ms-flex:0 1 192px;flex:0 1 192px;margin:20px 0;text-align:center}devsite-footer-promos .devsite-footer-promo:not(:first-child){margin-left:24px}devsite-footer-promos .devsite-footer-promo-icon{color:rgba(0,0,0,.87);color:var(--devsite-text-color,rgba(0,0,0,.87));display:block;font-size:48px;height:48px;margin:0 auto 8px;width:48px}devsite-footer-promos .devsite-footer-promo-title{color:rgba(0,0,0,.87);color:var(--devsite-heading-color,rgba(0,0,0,.87));font:inherit;font:var(--devsite-heading-font,inherit);font-weight:500;font-weight:var(--devsite-heading-font-weight,500);display:block}devsite-footer-promos .devsite-footer-promo-title:focus,devsite-footer-promos .devsite-footer-promo-title:hover{color:#1a73e8;color:var(--devsite-link-hover,#1a73e8);font-weight:inherit;font-weight:var(--devsite-link-font-weight-hover,inherit);text-decoration:none}@media screen and (max-width:1252px){.devsite-main-content[has-book-nav]~devsite-footer-promos .devsite-footer-promos-list{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:start;-webkit-justify-content:flex-start;-moz-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.devsite-main-content[has-book-nav]~devsite-footer-promos .devsite-footer-promo{-webkit-box-flex:0;-webkit-flex:0 0 50%;-moz-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;padding:0 20px}.devsite-main-content[has-book-nav]~devsite-footer-promos .devsite-footer-promo:not(:first-child){margin-left:0}}@media screen and (max-width:840px){.devsite-main-content[has-book-nav]~devsite-footer-promos .devsite-footer-promos-list,devsite-footer-promos .devsite-footer-promos-list{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:start;-webkit-justify-content:flex-start;-moz-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;padding:12px 0}.devsite-main-content[has-book-nav]~devsite-footer-promos .devsite-footer-promo,devsite-footer-promos .devsite-footer-promo{-webkit-box-flex:0;-webkit-flex:0 0 50%;-moz-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;margin:0;padding:8px 8px 8px 0;text-align:left}[dir=rtl] .devsite-main-content[has-book-nav]~devsite-footer-promos .devsite-footer-promo,[dir=rtl] devsite-footer-promos .devsite-footer-promo{text-align:right}devsite-footer-promos .devsite-footer-promo:not(:first-child){margin-left:0}devsite-footer-promos .devsite-footer-promo-icon{height:32px;margin:0 8px 0 0;width:32px}devsite-footer-promos .devsite-footer-promo-title{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;font-weight:400}devsite-footer-promos .devsite-footer-promo-description{display:none}}@media screen and (max-width:600px){devsite-footer-promos{padding:0 16px}devsite-footer-promos .devsite-footer-promos-list{display:block}}devsite-footer-utility{background:#fff;background:var(--devsite-footer-background,#fff);color:inherit;color:var(--devsite-text-color,inherit);display:block;font:400 14px/16px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;padding:0 24px}devsite-footer-utility nav{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;padding:24px 0}devsite-footer-utility .devsite-footer-sites,devsite-footer-utility nav{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}devsite-footer-utility .devsite-footer-sites{border-bottom:1px solid #dadce0;padding:24px 0 23px}devsite-footer-utility .devsite-footer-sites-list{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;list-style:none;padding:0}devsite-footer-utility .devsite-footer-sites-item{margin:0 0 0 40px}[dir=rtl] devsite-footer-utility .devsite-footer-sites-item{margin:0 40px 0 0}devsite-footer-utility .devsite-footer-sites-link{color:#202124;display:block;padding:8px 0}devsite-footer-utility .devsite-footer-sites-link:focus,devsite-footer-utility .devsite-footer-sites-link:hover{color:#1a73e8;text-decoration:none}devsite-footer-utility .devsite-footer-sites-logo-link{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}devsite-footer-utility .devsite-footer-sites-logo{height:32px;margin-top:-4px;width:185px}devsite-footer-utility .devsite-footer-utility-list{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;-ms-flex:1;flex:1;list-style:none;min-height:36px;padding:0}devsite-footer-utility .devsite-footer-utility-link{color:#202124;color:var(--devsite-text-color,#202124)}devsite-footer-utility .devsite-footer-utility-link:focus,devsite-footer-utility .devsite-footer-utility-link:hover{color:#1a73e8;color:var(--devsite-link-hover,#1a73e8)}devsite-footer-utility a:focus,devsite-footer-utility a:hover{font-weight:inherit;font-weight:var(--devsite-link-font-weight-hover,inherit)}devsite-footer-utility .devsite-footer-utility-item{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;margin:0 8px 0 0}[dir=rtl] devsite-footer-utility .devsite-footer-utility-item{margin:0 0 0 8px}devsite-footer-utility .devsite-footer-utility-item:last-child{margin-right:0}[dir=rtl] devsite-footer-utility .devsite-footer-utility-item:last-child{margin-left:0}devsite-footer-utility .devsite-footer-utility-item:not(:first-child):before{content:"|";margin:0 8px 0 0}[dir=rtl] devsite-footer-utility .devsite-footer-utility-item:not(:first-child):before{margin:0 0 0 8px}devsite-footer-utility .devsite-footer-utility-item.devsite-footer-utility-button:before{content:"";margin:0}devsite-footer-utility .devsite-footer-utility-button{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;line-height:20px;margin-left:auto;padding-left:16px}devsite-footer-utility .devsite-footer-utility-button>a{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;margin:0 0 0 16px}[dir=rtl] devsite-footer-utility .devsite-footer-utility-button>a{margin:0 16px 0 0}devsite-footer-utility .devsite-footer-utility-button>a:focus{text-decoration:none}devsite-footer-utility devsite-language-selector{color:#202124;margin:0 0 0 16px}[dir=rtl] devsite-footer-utility devsite-language-selector{margin:0 16px 0 0}@media screen and (max-width:1252px){.devsite-main-content[has-book-nav]~devsite-footer-utility .devsite-footer-sites{display:block}.devsite-main-content[has-book-nav]~devsite-footer-utility .devsite-footer-sites-item{margin:0 40px 0 0}[dir=rtl] .devsite-main-content[has-book-nav]~devsite-footer-utility .devsite-footer-sites-item{margin:0 0 0 40px}.devsite-main-content[has-book-nav]~devsite-footer-utility .devsite-footer-sites-logo{margin-bottom:16px}}@media screen and (max-width:840px){devsite-footer-utility .devsite-footer-sites{display:block}devsite-footer-utility .devsite-footer-sites-item{margin:0 40px 0 0}[dir=rtl] devsite-footer-utility .devsite-footer-sites-item{margin:0 0 0 40px}devsite-footer-utility .devsite-footer-sites-logo{margin-bottom:16px;margin-top:0}}@media screen and (max-width:600px){devsite-footer-utility{padding:0 16px}devsite-footer-utility .devsite-footer-sites,devsite-footer-utility .devsite-footer-sites-list,devsite-footer-utility nav{display:block}.devsite-main-content[has-book-nav]~devsite-footer-utility .devsite-footer-sites-item,devsite-footer-utility .devsite-footer-sites-item{margin:0}devsite-footer-utility devsite-language-selector{display:block;margin:16px 0 0}devsite-footer-utility .devsite-footer-utility-list{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}devsite-footer-utility .devsite-footer-utility-button{-webkit-box-flex:0;-webkit-flex:0 0 100%;-moz-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;margin:16px 0 0;padding:0}devsite-footer-utility .devsite-footer-utility-button>a{-webkit-box-flex:0;-webkit-flex:0 0 auto;-moz-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}}devsite-googler-buttons{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;bottom:24px;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;font:normal normal normal 24px/1 Material Icons;-webkit-font-feature-settings:"liga";-moz-font-feature-settings:"liga";font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;position:fixed;right:24px;z-index:1009}[dir=rtl] devsite-googler-buttons{left:24px;right:auto}devsite-googler-buttons>a:focus{text-decoration:none}devsite-googler-buttons .devsite-googler-button{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;background:#fff;border-radius:50%;cursor:pointer;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;height:40px;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;margin:-48px auto;outline:0;position:relative;-webkit-transition:background .2s,box-shadow .2s,margin .2s;transition:background .2s,box-shadow .2s,margin .2s;width:40px}devsite-googler-buttons[active] .devsite-googler-button{box-shadow:0 1px 3px 0 rgba(60,64,67,.3),0 4px 8px 3px rgba(60,64,67,.15);margin:4px auto}devsite-googler-buttons .devsite-googler-button:focus,devsite-googler-buttons .devsite-googler-button:hover,devsite-googler-buttons a:focus>.devsite-googler-button{background:#e3f2fd}devsite-googler-buttons .devsite-googler-button:active,devsite-googler-buttons a:active>.devsite-googler-button{background:#bbdefb}devsite-googler-buttons .devsite-googler-admin:before{color:#80868b;content:"storage"}devsite-googler-buttons .devsite-googler-analytics:before{color:#e8710a;content:"timeline"}devsite-googler-buttons .devsite-googler-bug:before{color:#e52592;content:"bug_report"}devsite-googler-buttons .devsite-googler-cache{background:#689f38}devsite-googler-buttons .devsite-googler-cache:hover{background:#7cb342}devsite-googler-buttons .devsite-googler-cache:active,devsite-googler-buttons .devsite-googler-cache:focus{background:#8bc34a}devsite-googler-buttons .devsite-googler-cache[active]{background:#d93025}devsite-googler-buttons .devsite-googler-cache[active]:hover{background:#ea4335}devsite-googler-buttons .devsite-googler-cache[active]:active,devsite-googler-buttons .devsite-googler-cache[active]:focus{background:#ee675c}devsite-googler-buttons .devsite-googler-cache:before{color:#fff;content:"cached"}devsite-googler-buttons .devsite-googler-cache[active]:after{background:#fff;border-bottom:2px solid #d93025;content:"";display:block;height:4px;position:absolute;-webkit-transform:rotate(45deg) translateY(1px);transform:rotate(45deg) translateY(1px);width:28px}devsite-googler-buttons .devsite-googler-cache[active]:active:after,devsite-googler-buttons .devsite-googler-cache[active]:focus:after{border-color:#ee675c}devsite-googler-buttons .devsite-googler-devrel:before{color:#607d8b;content:"build"}devsite-googler-buttons .devsite-googler-edit:before{color:#689f38;content:"edit"}devsite-googler-buttons .devsite-googler-env:before{color:#1e88e5;content:"swap_horiz"}devsite-googler-buttons .devsite-googler-speed-dial{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;box-shadow:0 1px 3px 0 rgba(60,64,67,.3),0 4px 8px 3px rgba(60,64,67,.15);height:56px;margin:0;width:56px}devsite-googler-buttons[active] .devsite-googler-speed-dial{margin:16px 0 0}devsite-googler-buttons .devsite-googler-speed-dial:before{content:url(../../images/fab.svg);-webkit-transition:-webkit-transform .2s;transition:-webkit-transform .2s;transition:transform .2s;transition:transform .2s,-webkit-transform .2s}devsite-googler-buttons[active] .devsite-googler-speed-dial:before{content:"close";-webkit-transform:rotate(90deg);transform:rotate(90deg)}devsite-header{display:block;position:relative;z-index:1006}body[ready] devsite-header[fixed]{contain:layout;pointer-events:none;position:fixed;top:0;width:100%}devsite-header .devsite-top-logo-row-wrapper-wrapper{border-bottom:0;border-bottom:var(--devsite-header-border,0);position:relative;z-index:1}devsite-header .devsite-top-logo-row-wrapper-wrapper,devsite-header .devsite-top-logo-row-wrapper-wrapper:before{background:#fff;background:var(--devsite-header-color-upper,#fff)}body[ready] devsite-header[fixed] .devsite-top-logo-row-wrapper-wrapper:before{content:"";height:400px;position:absolute;-webkit-transform:translateY(-400px);transform:translateY(-400px);width:100%}devsite-header[fixed] .devsite-top-logo-row-wrapper-wrapper{pointer-events:all}devsite-header .devsite-collapsible-section{position:relative}devsite-header .devsite-collapsible-section,devsite-header[no-lower-row][fixed]{box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 2px 6px 2px rgba(60,64,67,.15);box-shadow:var(--devsite-header-lower-box-shadow,0 1px 2px 0 rgba(60,64,67,.3),0 2px 6px 2px rgba(60,64,67,.15))}devsite-header[fixed] .devsite-collapsible-section{contain:style;pointer-events:all;-webkit-transform:translateZ(0);transform:translateZ(0);will-change:transform}devsite-header .devsite-top-logo-row{background:#fff;background:var(--devsite-header-color-upper,#fff);-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;height:48px;padding:0 24px;position:relative;-webkit-transform:translateZ(0);transform:translateZ(0)}devsite-header .devsite-top-button{background:0;padding:0 8px;-webkit-transition:background .2s,box-shadow .2s,color .2s;transition:background .2s,box-shadow .2s,color .2s}devsite-header .devsite-top-button,devsite-header .devsite-top-button:active,devsite-header .devsite-top-button:focus,devsite-header .devsite-top-button:hover{border:0}devsite-header .devsite-header-icon-button{color:rgba(0,0,0,.65);color:var(--devsite-header-icon-color,rgba(0,0,0,.65));display:none;-webkit-box-flex:0;-webkit-flex:0 0 auto;-moz-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;height:24px;min-width:24px;padding:0;-webkit-transition:color .2s;transition:color .2s;width:24px}devsite-header .devsite-header-icon-button:active,devsite-header .devsite-header-icon-button:focus,devsite-header .devsite-header-icon-button:hover{color:rgba(0,0,0,.87);color:var(--devsite-header-icon-color-active,rgba(0,0,0,.87))}devsite-header .devsite-top-logo-row-middle{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1;position:relative}devsite-header .devsite-collapsible-section{background-color:#5f6368;background-color:var(--devsite-header-color-lower,var(--devsite-primary-color,#5f6368))}@media screen and (max-width:840px){devsite-header{-webkit-transform:translateZ(0);transform:translateZ(0)}devsite-header .devsite-top-logo-row{padding:0 16px}devsite-header .devsite-header-upper-tabs devsite-tabs{margin:0 0 0 16px}[dir=rtl] devsite-header .devsite-header-upper-tabs devsite-tabs{margin:0 16px 0 0}devsite-header .devsite-header-upper-tabs .devsite-doc-set-nav{display:none}}devsite-header .devsite-header-billboard{background-color:#fff;background-color:var(--devsite-header-color-lower,var(--devsite-primary-color,#fff));-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:40px 24px 20px;position:relative;z-index:100}devsite-header .devsite-header-billboard h1{font:300 24px/32px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font:var(--devsite-h1-font,300 24px/32px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif);letter-spacing:0;letter-spacing:var(--devsite-h1-letter-spacing,0);line-height:1;line-height:var(--devsite-h1-line-height,1);margin:14px 0;margin:var(--devsite-h1-margin,14px 0);overflow:visible;padding:0}devsite-header .devsite-header-billboard-logo{max-height:64px}devsite-header .devsite-header-billboard-search{margin:0 auto;max-width:816px;padding-bottom:48px}devsite-header .devsite-header-billboard-search devsite-search{width:100%}devsite-header .devsite-header-billboard-search devsite-search .devsite-popout-result{max-height:50vh}devsite-header .devsite-header-billboard-search .devsite-search-background,devsite-header .devsite-header-billboard-search devsite-search .devsite-searchbox:before{background:#fff;background:var(--devsite-header-color-lower,var(--devsite-primary-color,#fff))}@media screen and (max-width:840px){devsite-header .devsite-header-billboard-search{margin:0 24px}}devsite-header .devsite-doc-set-nav-row{border-bottom:none;border-bottom:var(--devsite-header-lower-tabs-border-bottom,none);-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;min-height:48px;padding:0 24px 0 0}[dir=rtl] devsite-header .devsite-doc-set-nav-row{padding:0 0 0 24px}[dir=ltr] devsite-header .devsite-doc-set-nav-row .devsite-breadcrumb-list{padding-left:24px}[dir=rtl] devsite-header .devsite-doc-set-nav-row .devsite-breadcrumb-list{padding-right:24px}@media screen and (max-width:840px){devsite-header .devsite-doc-set-nav-row{display:none}}devsite-header devsite-language-selector{margin:0 0 0 16px}[dir=rtl] devsite-header devsite-language-selector{margin:0 16px 0 0}@media screen and (max-width:840px){devsite-header devsite-language-selector{margin:0 0 0 8px}[dir=rtl] devsite-header devsite-language-selector{margin:0 8px 0 0}}@media screen and (max-width:600px){devsite-header devsite-language-selector{display:none}}devsite-header .devsite-header-link{margin:0 -8px 0 16px;-webkit-transition:background .2s,box-shadow .2s,color .2s;transition:background .2s,box-shadow .2s,color .2s}[dir=rtl] devsite-header .devsite-header-link{margin:0 16px 0 -8px}@media screen and (max-width:840px){devsite-header .devsite-header-link{display:none}}devsite-header .devsite-product-name-wrapper{-ms-flex-align:center;-webkit-box-flex:0;-webkit-flex:0 0 auto;-moz-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;height:36px;margin:6px 0}devsite-header .devsite-product-name-link,devsite-header .devsite-product-name-wrapper,devsite-header .devsite-site-logo-link{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}devsite-header .devsite-product-name-link,devsite-header .devsite-site-logo-link{-ms-flex-align:center;opacity:1;-webkit-transition:opacity .2s;transition:opacity .2s}devsite-header .devsite-product-name-link:focus,devsite-header .devsite-product-name-link:hover,devsite-header .devsite-site-logo-link:focus{opacity:.7;text-decoration:none}devsite-header .devsite-site-logo{height:32px}devsite-header .devsite-has-google-wordmark>.devsite-breadcrumb-link,devsite-header .devsite-has-google-wordmark>.devsite-product-name{direction:ltr}devsite-header .devsite-google-wordmark{height:24px;margin:0 4px 0 0;position:relative;top:5px;width:74px}devsite-header .devsite-google-wordmark-svg-path{-webkit-transition:fill .2s;transition:fill .2s}devsite-header .devsite-site-logo-link canvas{height:auto!important}devsite-header .devsite-product-logo-container{color:#202124;color:var(--devsite-primary-color,#202124);-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;border-radius:50%;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;width:36px}[dir=ltr] devsite-header .devsite-product-logo-container{margin-right:4px}[dir=rtl] devsite-header .devsite-product-logo-container{margin-left:4px}devsite-header .devsite-product-logo-container[background]{background:#202124;background:var(--devsite-primary-color,#202124);color:#fff}devsite-header .devsite-product-logo{color:inherit;font-size:32px;height:32px;max-width:32px;min-width:32px;overflow:hidden;white-space:nowrap}devsite-header .devsite-product-logo-container[background] .devsite-product-logo{font-size:28px;height:28px;max-width:28px;min-width:28px}devsite-header .devsite-product-name{font:400 20px/32px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font:var(--devsite-wordmark-font,400 20px/32px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif);letter-spacing:0;margin:0;max-height:32px;overflow:hidden;text-overflow:ellipsis;-webkit-transition:color .2s;transition:color .2s;white-space:nowrap}devsite-header .devsite-site-logo:not([src*=\.svg]){height:auto;max-height:32px}devsite-header .devsite-breadcrumb-link>.devsite-product-name{color:inherit}@media screen and (max-width:840px){devsite-header .devsite-product-name-wrapper{-webkit-box-flex:0;-webkit-flex:0 1 auto;-moz-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto;min-width:0}devsite-header .devsite-product-name-wrapper .devsite-breadcrumb-item:not(:first-of-type),devsite-header .devsite-product-name-wrapper .devsite-site-logo-link+.devsite-product-name{display:none}devsite-header .devsite-product-name-wrapper .devsite-breadcrumb-item,devsite-header .devsite-product-name-wrapper .devsite-breadcrumb-link,devsite-header .devsite-product-name-wrapper .devsite-breadcrumb-list,devsite-header .devsite-product-name-wrapper .devsite-product-name{width:100%}devsite-header .devsite-product-name-wrapper .devsite-breadcrumb-link{overflow:hidden;text-overflow:ellipsis}}devsite-header .devsite-product-id-row{padding:20px 24px 2px;padding:var(--devsite-product-id-row-padding,20px 24px 2px);-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;min-height:60px}devsite-header .devsite-header-no-lower-tabs .devsite-product-id-row{padding:20px 24px;padding:var(--devsite-product-id-row-padding,20px 24px);min-height:72px}devsite-header .devsite-product-description-row{color:#fff;color:var(--devsite-header-foreground-lower-description,var(--devsite-header-foreground-lower-hover,#fff));font:400 20px/32px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font:var(--devsite-header-lower-description-font,400 20px/32px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif)}devsite-header .devsite-breadcrumb-list+.devsite-product-description:not(:empty){margin-top:8px}devsite-header .devsite-product-description{font:16px/24px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;margin:0 180px 0 0}[dir=rtl] devsite-header .devsite-product-description{margin:0 0 0 180px}devsite-header .devsite-product-button-row{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;margin:0 0 0 24px;z-index:1}[dir=rtl] devsite-header .devsite-product-button-row{margin:0 24px 0 0}@media screen and (max-width:840px){devsite-header .devsite-product-id-row{padding:20px 24px;padding:var(--devsite-product-id-row-padding,20px 24px);min-height:72px}[dir=rtl] devsite-header .devsite-product-description,devsite-header .devsite-product-description{margin:0}}@media screen and (max-width:600px){devsite-header .devsite-header-no-lower-tabs .devsite-product-id-row,devsite-header .devsite-product-id-row{padding:20px 16px;padding:var(--devsite-product-id-row-padding,20px 16px);-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}devsite-header .devsite-product-button-row{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%;margin:16px 0 0}}devsite-header[search-expanded] .devsite-header-upper-tabs{opacity:0;position:absolute}devsite-header[search-expanded] devsite-search{-webkit-box-flex:1;-webkit-flex:1 0;-moz-box-flex:1;-ms-flex:1 0;flex:1 0}devsite-header [transition]{-webkit-transition:-webkit-transform .2s;transition:-webkit-transform .2s;transition:transform .2s;transition:transform .2s,-webkit-transform .2s}devsite-header[search-active] .devsite-search-background:after{background:#f1f3f4;background:var(--devsite-searchbox-active,#f1f3f4)}devsite-header devsite-search[search-active] .devsite-search-field::-webkit-input-placeholder{color:var(--devsite-searchbox-placeholder-active,#5f6368)}devsite-header devsite-search[search-active] .devsite-search-field::-moz-placeholder{color:var(--devsite-searchbox-placeholder-active,#5f6368)}devsite-header devsite-search[search-active] .devsite-search-field:-ms-input-placeholder{color:var(--devsite-searchbox-placeholder-active,#5f6368)}devsite-header devsite-search[search-active] .devsite-search-field::-ms-input-placeholder{color:var(--devsite-searchbox-placeholder-active,#5f6368)}devsite-header devsite-search[search-active] .devsite-search-field::placeholder{color:var(--devsite-searchbox-placeholder-active,#5f6368)}[ie-11] devsite-header devsite-search[search-active] .devsite-search-field:-ms-input-placeholder{color:#5f6368}devsite-header devsite-search[search-active] .devsite-search-field,devsite-header devsite-search[search-active] .devsite-search-field:hover{background:#f1f3f4;background:var(--devsite-searchbox-active,#f1f3f4);color:#202124;color:var(--devsite-searchbox-text-active,#202124)}devsite-header devsite-search[search-active] .devsite-search-image{color:#5f6368;color:var(--devsite-searchbox-placeholder,#5f6368)}@media screen and (max-width:840px){devsite-header[search-active] .devsite-product-name-wrapper,devsite-header[search-active] devsite-language-selector,devsite-header[search-active] devsite-user{display:none}devsite-header[search-active] devsite-search{-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1;-webkit-transform:none!important;transform:none!important}devsite-header[search-active] .devsite-header-upper-tabs{-webkit-box-flex:0;-webkit-flex:0 1;-moz-box-flex:0;-ms-flex:0 1;flex:0 1;overflow:hidden}devsite-header[search-active] .devsite-top-logo-row devsite-search{margin:6px 0}devsite-header .devsite-top-logo-row devsite-search[search-active] .devsite-searchbox{width:100%}devsite-header devsite-search[search-active] .devsite-search-form{border-radius:0;border-radius:var(--devsite-search-border-radius,0);box-shadow:none;box-shadow:var(--devsite-search-active-box-shadow,none);overflow:visible;overflow:var(--devsite-search-active-overflow,visible);position:relative;position:var(--devsite-search-form-position,relative);left:0;top:0}[dir=ltr] devsite-header devsite-search[search-active] .devsite-search-form{right:auto;right:var(--devsite-search-form-position-end,auto)}[dir=rtl] devsite-header devsite-search[search-active] .devsite-search-form{left:auto;left:var(--devsite-search-form-position-end,auto)}devsite-header devsite-search[search-active] .devsite-search-field,devsite-header devsite-search[search-active] .devsite-search-field:hover{background:#f1f3f4;background:var(--devsite-search-form-background-active,#f1f3f4);color:#202124;color:var(--devsite-search-form-text-active,#202124)}[dir=ltr] devsite-header .devsite-header-billboard-search devsite-search[search-active] .devsite-search-form{right:auto;right:var(--devsite-search-form-position-start,auto)}[dir=rtl] devsite-header .devsite-header-billboard-search devsite-search[search-active] .devsite-search-form{left:auto;left:var(--devsite-search-form-position-start,auto)}devsite-header .devsite-top-logo-row devsite-search[search-active] .devsite-searchbox .devsite-search-image{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}devsite-header .devsite-top-logo-row devsite-search .devsite-searchbox:before,devsite-header .devsite-top-logo-row devsite-search[search-active] .devsite-popout{width:calc(100vw + 16px);width:var(--devsite-popout-width,calc(100vw + 16px))}[dir=ltr] devsite-header .devsite-top-logo-row devsite-search .devsite-searchbox:before,[dir=ltr] devsite-header .devsite-top-logo-row devsite-search[search-active] .devsite-popout{left:-60px;left:var(--devsite-popout-position-start,-60px)}[dir=rtl] devsite-header .devsite-top-logo-row devsite-search .devsite-searchbox:before,[dir=rtl] devsite-header .devsite-top-logo-row devsite-search[search-active] .devsite-popout{right:-60px;right:var(--devsite-popout-position-start,-60px)}devsite-header .devsite-top-logo-row devsite-search[search-active] .devsite-search-button{margin:0}[dir=ltr] devsite-header .devsite-top-logo-row devsite-search[search-active] .devsite-search-button{margin-left:16px;margin-left:var(--devsite-search-button-margin-before,16px)}[dir=rtl] devsite-header .devsite-top-logo-row devsite-search[search-active] .devsite-search-button{margin-right:16px;margin-right:var(--devsite-search-button-margin-before,16px)}devsite-header .devsite-top-logo-row devsite-search[search-active] .devsite-search-button[search-open]{display:none}devsite-header .devsite-top-logo-row devsite-search[search-active] .devsite-search-button[search-close]{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}devsite-header [transition]{-webkit-transition:none;transition:none}}devsite-header .devsite-search-background{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-moz-box-sizing:content-box;box-sizing:content-box;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:stretch;-webkit-justify-content:stretch;-moz-box-pack:stretch;-ms-flex-pack:stretch;justify-content:stretch;margin:0;padding:6px 0;pointer-events:none;position:absolute;-webkit-transition:-webkit-transform .2s;transition:-webkit-transform .2s;transition:transform .2s;transition:transform .2s,-webkit-transform .2s;will-change:transition;z-index:9}[dir=ltr] devsite-header .devsite-search-background{margin-left:24px;right:0;-webkit-transform-origin:right center;transform-origin:right center}[dir=rtl] devsite-header .devsite-search-background{left:0;margin-right:24px;-webkit-transform-origin:left center;transform-origin:left center}devsite-header .devsite-search-background,devsite-header .devsite-searchbox:before{background:#fff;background:var(--devsite-header-color-upper,#fff)}devsite-header .devsite-search-background:after{content:"";-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1;height:100%;-webkit-transition:background .2s;transition:background .2s}devsite-header .devsite-search-background:after,devsite-header devsite-search input.devsite-search-field{background:#f1f3f4;background:var(--devsite-searchbox-inactive,#f1f3f4)}devsite-header devsite-search input.devsite-search-field::-webkit-input-placeholder{color:var(--devsite-searchbox-placeholder,#5f6368)}devsite-header devsite-search input.devsite-search-field::-moz-placeholder{color:var(--devsite-searchbox-placeholder,#5f6368)}devsite-header devsite-search input.devsite-search-field:-ms-input-placeholder{color:var(--devsite-searchbox-placeholder,#5f6368)}devsite-header devsite-search input.devsite-search-field::-ms-input-placeholder{color:var(--devsite-searchbox-placeholder,#5f6368)}devsite-header devsite-search input.devsite-search-field::placeholder{color:var(--devsite-searchbox-placeholder,#5f6368)}[ie-11] devsite-header devsite-search input.devsite-search-field:-ms-input-placeholder{color:#5f6368}devsite-header devsite-search input.devsite-search-field:hover{background:#e8eaed;background:var(--devsite-searchbox-hover,#e8eaed)}devsite-header devsite-search .devsite-search-image,devsite-header devsite-search input.devsite-search-field{color:#5f6368;color:var(--devsite-searchbox-placeholder,#5f6368)}devsite-header[billboard] .devsite-search-background{display:none}devsite-header[billboard][bottom-row--hidden] .devsite-search-background{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}devsite-header[billboard] .devsite-top-logo-row devsite-search .devsite-search-form{opacity:1;-webkit-transition:opacity .2s,-webkit-transform .2s;transition:opacity .2s,-webkit-transform .2s;transition:opacity .2s,transform .2s;transition:opacity .2s,transform .2s,-webkit-transform .2s}devsite-header[billboard][bottom-row--hidden] .devsite-top-logo-row devsite-search .devsite-search-form{-webkit-transform:translateZ(0);transform:translateZ(0)}body[type=error] devsite-header .devsite-top-logo-row .devsite-search-form,devsite-header[billboard]:not([bottom-row--hidden]) .devsite-top-logo-row devsite-search .devsite-search-form{opacity:0;pointer-events:none}[dir=ltr] body[type=error] devsite-header .devsite-top-logo-row .devsite-search-form,[dir=ltr] devsite-header[billboard]:not([bottom-row--hidden]) .devsite-top-logo-row devsite-search .devsite-search-form{-webkit-transform:translate3d(200px,0,0);transform:translate3d(200px,0,0)}[dir=rtl] body[type=error] devsite-header .devsite-top-logo-row .devsite-search-form,[dir=rtl] devsite-header[billboard]:not([bottom-row--hidden]) .devsite-top-logo-row devsite-search .devsite-search-form{-webkit-transform:translate3d(-200px,0,0);transform:translate3d(-200px,0,0)}devsite-header[billboard][bottom-row--hidden] .devsite-header-billboard-search devsite-search{opacity:0}devsite-header[billboard] .devsite-header-billboard-search devsite-search{margin-left:0}[dir=rtl] devsite-header[billboard] .devsite-header-billboard-search devsite-search{margin-right:0}devsite-header[billboard] .devsite-header-billboard-search devsite-search .devsite-popout{max-height:calc(100vh - 255px)}@media screen and (max-width:840px){devsite-header .devsite-top-logo-row devsite-search{width:auto}devsite-header .devsite-top-logo-row devsite-search .devsite-searchbox{width:0}devsite-header .devsite-search-background,devsite-header .devsite-search-background:after,devsite-header[search-active] .devsite-search-background:after,devsite-header devsite-search .devsite-search-field,devsite-header devsite-search .devsite-search-field:hover{background:0}devsite-header .devsite-top-logo-row devsite-search .devsite-searchbox .devsite-search-image{display:none}devsite-header .devsite-top-logo-row devsite-search .devsite-search-button{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;color:#5f6368;z-index:1}devsite-header .devsite-top-logo-row devsite-search .devsite-search-button,devsite-header .devsite-top-logo-row devsite-search .devsite-search-button[search-open]{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}devsite-header .devsite-top-logo-row devsite-search .devsite-search-button[search-close]{display:none}devsite-header .devsite-top-logo-row devsite-search .devsite-search-button[search-open]:before{content:"search"}devsite-header .devsite-top-logo-row devsite-search .devsite-search-button[search-close]:before{content:"cancel"}[dir=ltr] devsite-header .devsite-top-logo-row devsite-search .devsite-result-item a,[dir=ltr] devsite-header .devsite-top-logo-row devsite-search .devsite-result-label,[dir=ltr] devsite-header .devsite-top-logo-row devsite-search .devsite-suggest-footer,[dir=ltr] devsite-header .devsite-top-logo-row devsite-search .devsite-suggest-header{padding-left:60px;padding-left:var(--devsite-search-content-padding-start,60px);padding-right:8px}[dir=rtl] devsite-header .devsite-top-logo-row devsite-search .devsite-result-item a,[dir=rtl] devsite-header .devsite-top-logo-row devsite-search .devsite-result-label,[dir=rtl] devsite-header .devsite-top-logo-row devsite-search .devsite-suggest-footer,[dir=rtl] devsite-header .devsite-top-logo-row devsite-search .devsite-suggest-header{padding-left:8px;padding-right:60px;padding-right:var(--devsite-search-content-padding-start,60px)}}devsite-header .devsite-header-upper-tabs{-webkit-box-flex:1;-webkit-flex:1 1 0%;-moz-box-flex:1;-ms-flex:1 1 0%;flex:1 1 0%;margin:0;opacity:1;position:relative;z-index:8}[dir=ltr] devsite-header .devsite-header-upper-tabs{margin-left:48px}[dir=rtl] devsite-header .devsite-header-upper-tabs{margin-right:48px}devsite-header devsite-tabs tab a:focus,devsite-header devsite-tabs tab a:hover{text-decoration:none}devsite-header cloudx-tabs-nav.upper-tabs .devsite-tabs-wrapper,devsite-header devsite-tabs.upper-tabs .devsite-tabs-wrapper,devsite-header devsite-tabs.upper-tabs tab[overflow-tab]:after{background:#fff;background:var(--devsite-header-color-upper,#fff)}devsite-header cloudx-tabs-nav.lower-tabs a,devsite-header devsite-tabs.lower-tabs a{color:#fff;color:var(--devsite-header-foreground-lower,#fff);letter-spacing:0;letter-spacing:var(--devsite-header-lower-tabs-letter-spacing,0)}devsite-header cloudx-tabs-nav.lower-tabs a:focus,devsite-header cloudx-tabs-nav.lower-tabs a:hover,devsite-header devsite-tabs.lower-tabs a:focus,devsite-header devsite-tabs.lower-tabs a:hover{color:hsla(0,0%,100%,.7);color:var(--devsite-header-foreground-lower-hover,var(--devsite-header-foreground-lower,hsla(0,0%,100%,.7)))}devsite-header cloudx-tabs-nav.lower-tabs tab[active]>a,devsite-header devsite-tabs.lower-tabs tab[active]>a{color:#fff;color:var(--devsite-header-foreground-lower-active,#fff)}@media screen and (-ms-high-contrast:active){devsite-header cloudx-tabs-nav.lower-tabs tab[active]>a,devsite-header devsite-tabs.lower-tabs tab[active]>a{font-weight:700;text-decoration:underline}}devsite-header cloudx-tabs-nav.lower-tabs tab[active]>a:focus,devsite-header devsite-tabs.lower-tabs tab[active]>a:focus{color:hsla(0,0%,100%,.7);color:var(--devsite-header-foreground-lower-active-focus,var(--devsite-header-foreground-lower,hsla(0,0%,100%,.7)))}devsite-header cloudx-tabs-nav.lower-tabs>.devsite-tabs-wrapper>tab>a:after,devsite-header devsite-tabs.lower-tabs>.devsite-tabs-wrapper>tab>a:after{border-radius:0;border-radius:var(--devsite-header-lower-tabs-marker-border-radius,var(--devsite-tab-marker-border-radius,0))}devsite-header cloudx-tabs-nav.lower-tabs>.devsite-tabs-wrapper>tab[active]>a:after,devsite-header devsite-tabs.lower-tabs>.devsite-tabs-wrapper>tab[active]>a:after{background:#fff;background:var(--devsite-header-foreground-lower-border-active,var(--devsite-header-foreground-lower-active,#fff))}devsite-header cloudx-tabs-nav tab[overflow-tab]>a:after,devsite-header devsite-tabs tab[overflow-tab]>a:after{display:none}devsite-header cloudx-tabs-nav.upper-tabs .devsite-tabs-overflow-menu,devsite-header devsite-tabs.upper-tabs .devsite-tabs-overflow-menu{border-top:0;border-top:var(--devsite-header-border,0)}@media screen and (max-width:840px){[dir=ltr] devsite-header .devsite-header-upper-tabs{margin-left:0}[dir=rtl] devsite-header .devsite-header-upper-tabs{margin-right:0}devsite-header devsite-tabs.lower-tabs,devsite-header devsite-tabs.upper-tabs{display:none}}[dir=ltr] [layout=docs] h2:not(.no-link),[dir=ltr] [layout=docs] h3:not(.no-link),[dir=ltr] [layout=docs] h4:not(.no-link),[dir=ltr] [layout=docs] h5:not(.no-link),[dir=ltr] [layout=docs] h6:not(.no-link),[dir=ltr] h1.add-link{margin-right:-40px;padding-right:40px}[dir=rtl] [layout=docs] h2:not(.no-link),[dir=rtl] [layout=docs] h3:not(.no-link),[dir=rtl] [layout=docs] h4:not(.no-link),[dir=rtl] [layout=docs] h5:not(.no-link),[dir=rtl] [layout=docs] h6:not(.no-link),[dir=rtl] h1.add-link{margin-left:-40px;padding-left:40px}.devsite-heading-link.material-icons{color:#5f6368;height:24px;margin:0 -40px 0 0;opacity:0;vertical-align:middle}[dir=rtl] .devsite-heading-link.material-icons{margin:0 0 0 -40px}.devsite-heading-link.material-icons:focus,.devsite-heading-link.material-icons:hover{color:#1a73e8;cursor:pointer!important}[ie-11] .devsite-heading-link{display:none!important}h4>.devsite-heading-link.material-icons,h5>.devsite-heading-link.material-icons,h6>.devsite-heading-link.material-icons{vertical-align:bottom}.devsite-landing-row-item-list h4>.devsite-heading-link.material-icons,th>h2>.devsite-heading-link.material-icons,th>h3>.devsite-heading-link.material-icons{margin:-4px 0;vertical-align:middle}.devsite-heading-link.material-icons:focus,.devsite-heading-link.material-icons:hover,:focus>.devsite-heading-link.material-icons,:hover>.devsite-heading-link.material-icons{opacity:1}.devsite-heading-link:after{content:"link"}devsite-iframe{display:block;width:100%}devsite-iframe+*{position:relative}devsite-iframe+devsite-iframe{margin-top:20px}devsite-iframe iframe{height:100%;width:100%}devsite-iframe iframe[src*=\.frame]{height:calc(100% + 40px);margin:-20px;width:calc(100% + 40px)}devsite-jump-to{display:block;margin:40px 0 0!important;opacity:0;padding-bottom:96px;pointer-events:none;position:relative;-webkit-transition:opacity .5s;transition:opacity .5s}devsite-jump-to[visible]{opacity:1;pointer-events:auto}devsite-jump-to .devsite-jump-to-link{background:#1a73e8!important;background:var(--devsite-link-background,#1a73e8)!important;color:#fff!important;color:var(--devsite-link-color,#fff)!important;box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15);-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;border-radius:50%;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;font-size:24px;height:56px;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;overflow:hidden;position:absolute;-webkit-transition:background .2s,box-shadow .2s,color .2s;transition:background .2s,box-shadow .2s,color .2s;width:56px}devsite-jump-to .devsite-jump-to-link:focus,devsite-jump-to .devsite-jump-to-link:hover{background:#fff!important;background:var(--devsite-link-background-hover,#fff)!important;color:#1a73e8!important;color:var(--devsite-link-color,#1a73e8)!important;text-decoration:none}devsite-jump-to .devsite-jump-to-link:active{box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 2px 6px 2px rgba(60,64,67,.15)}[dir=ltr] devsite-jump-to .devsite-jump-to-link{right:0}[dir=rtl] devsite-jump-to .devsite-jump-to-link{left:0}devsite-jump-to[pinned] .devsite-jump-to-link{bottom:40px;box-shadow:0 1px 3px 0 rgba(60,64,67,.3),0 4px 8px 3px rgba(60,64,67,.15);position:fixed}devsite-jump-to[pinned] .devsite-jump-to-link:active{box-shadow:0 2px 3px 0 rgba(60,64,67,.3),0 6px 10px 4px rgba(60,64,67,.15)}devsite-jump-to .devsite-jump-to-link:before{content:"arrow_upward";font:normal normal normal 24px/1 Material Icons;-webkit-font-feature-settings:"liga";-moz-font-feature-settings:"liga";font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal}@media screen and (max-width:840px){devsite-jump-to{margin:40px 0 0!important;padding-bottom:80px}devsite-jump-to[pinned] .devsite-jump-to-link{bottom:24px}}devsite-language-selector>devsite-select .devsite-select-toggle{color:#3c4043;max-width:124px;padding:0 31px 0 15px}.devsite-dialog-wrapper{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;bottom:0;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;left:0;pointer-events:none;position:fixed;right:0;top:0;z-index:1014}devsite-dialog{border-radius:2px;border-radius:var(--devsite-border-radius,2px);background:#fff;color:#5f6368;box-shadow:0 1px 3px 0 rgba(60,64,67,.3),0 4px 8px 3px rgba(60,64,67,.15);font-size:14px;line-height:20px;max-height:calc(100vh - 48px);max-width:calc(100vw - 48px);pointer-events:all;overflow:auto;padding:8px;width:480px}@media screen and (max-width:840px){devsite-dialog{max-height:calc(100vh - 32px);max-width:calc(100vw - 32px)}}devsite-dialog:not([open]){display:none}devsite-dialog .devsite-dialog-contents{color:#5f6368;overflow:hidden;padding:16px}devsite-dialog .devsite-dialog-close{cursor:pointer}devsite-dialog .devsite-dialog-contents>p:first-child:last-child{margin:0}devsite-dialog h3{color:inherit;color:var(--devsite-heading-color,inherit);font:400 20px/32px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font:var(--devsite-heading-font,400 20px/32px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif);text-align:inherit;text-align:var(--devsite-heading-text-align,inherit);margin:0 0 20px;outline:0}devsite-dialog .devsite-dialog-buttons{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-webkit-justify-content:flex-end;-moz-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}devsite-lightbox{pointer-events:all}devsite-lightbox:not([open]){display:none}devsite-lightbox .devsite-dialog-contents{padding:0}devsite-lightbox .devsite-lightbox-icon-close{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;background:rgba(0,0,0,.5);border:0;border-radius:0;cursor:pointer;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;height:40px;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;outline:0;padding:0;position:absolute;top:0;width:40px}[dir=ltr] devsite-lightbox .devsite-lightbox-icon-close{right:0}[dir=rtl] devsite-lightbox .devsite-lightbox-icon-close{left:0}devsite-lightbox .devsite-lightbox-icon-close:hover{background:hsla(0,0%,100%,.3)}devsite-lightbox .devsite-lightbox-icon-close:active{box-shadow:none}devsite-lightbox .devsite-lightbox-icon-close:after{font:normal normal normal 24px/1 Material Icons;-webkit-font-feature-settings:"liga";-moz-font-feature-settings:"liga";font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal;color:#f1f1f1;content:"close";-webkit-transition:color .3s ease-in-out;transition:color .3s ease-in-out}devsite-lightbox .devsite-lightbox-icon-close:focus:after,devsite-lightbox .devsite-lightbox-icon-close:hover:after{color:#fff}.devsite-lightbox-image{cursor:pointer;outline:0}.devsite-lightbox-image:focus{-webkit-filter:brightness(75%);filter:brightness(75%)}.MathJax_SVG_Display{overflow-x:auto}@media screen and (max-width:600px){.MathJax_SVG_Display{margin:1em -16px!important;padding:0 16px 16px;width:calc(100% + 32px)!important}}devsite-multiple-choice{background-color:#f8f9fa;background-color:var(--devsite-background-color,#f8f9fa);border:0;border:var(--devsite-border,0);border-radius:0;border-radius:var(--devsite-border-radius,0);overflow:visible;overflow:var(--devsite-overflow,visible);display:block;margin:16px 0;visibility:hidden!important}devsite-multiple-choice[ready]{visibility:visible!important}devsite-multiple-choice .devsite-multiple-choice-question{background-color:#5f6368;background-color:var(--devsite-question-background-color,#5f6368);color:#fff;color:var(--devsite-question-color,#fff);font:500 16px/24px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font:var(--devsite-table-heading-font,500 16px/24px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif);padding:16px 24px}devsite-multiple-choice .devsite-multiple-choice-answer{border-bottom:1px solid #dadce0;border-bottom:var(--devsite-answer-border-bottom,1px solid #dadce0);border-top:0;border-top:var(--devsite-answer-border-top,0)}devsite-multiple-choice .devsite-multiple-choice-answer,devsite-multiple-choice .devsite-multiple-choice-answer:focus,devsite-multiple-choice .devsite-multiple-choice-answer:hover{outline:0}devsite-multiple-choice .devsite-multiple-choice-answer:not([clicked]):focus,devsite-multiple-choice .devsite-multiple-choice-answer:not([clicked]):hover{color:#1a73e8;cursor:pointer}devsite-multiple-choice .devsite-multiple-choice-option{padding:16px 72px 16px 24px;position:relative}devsite-multiple-choice .devsite-multiple-choice-option:after{content:"expand_more";font:normal normal normal 24px/1 Material Icons;-webkit-font-feature-settings:"liga";-moz-font-feature-settings:"liga";font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal;height:100%;position:absolute;right:24px;top:calc(50% - 12px)}devsite-multiple-choice [correct]{background-color:#f8fbf9}devsite-multiple-choice [incorrect]{background-color:#fef9f9}devsite-multiple-choice [correct] .devsite-multiple-choice-option:after{color:#137333;content:"check"}devsite-multiple-choice [incorrect] .devsite-multiple-choice-option:after{color:#d32f2f;content:"not_interested"}devsite-multiple-choice .devsite-multiple-choice-explanation{font-size:14px;padding:0 24px 16px}devsite-multiple-choice .devsite-multiple-choice-explanation-correctness{font-weight:500;margin-top:16px}devsite-multiple-choice [correct] .devsite-multiple-choice-explanation-correctness{color:#137333}devsite-multiple-choice [incorrect] .devsite-multiple-choice-explanation-correctness{color:#d32f2f}devsite-nav-buttons{display:block}devsite-nav-buttons button{border:1px solid #bdc1c6;border:var(--devsite-button-border,1px solid #bdc1c6);font-weight:400;font-weight:var(--devsite-button-font-weight,400);-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;box-shadow:none;display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;text-transform:none}devsite-nav-buttons button,devsite-nav-buttons button:focus,devsite-nav-buttons button:hover{color:#202124;color:var(--devsite-button-color,#202124)}devsite-nav-buttons button:focus,devsite-nav-buttons button:hover{background:#f1f3f4;background:var(--devsite-button-background-hover,#f1f3f4);border:1px solid #bdc1c6;border:var(--devsite-button-border-hover,1px solid #bdc1c6)}devsite-nav-buttons button,devsite-nav-buttons button[class^=button-]{padding:0 12px;padding:var(--devsite-button-padding,0 12px);border-radius:16px;height:32px;line-height:30px}devsite-nav-buttons button[class^=button-][selected],devsite-nav-buttons button[selected]{border:1px solid #bdc1c6;border:var(--devsite-button-border-selected,1px solid #bdc1c6);font-weight:500;padding-left:8px}devsite-nav-buttons button[class^=button-],devsite-nav-buttons button[class^=button-][selected]{border:0}devsite-nav-buttons button[selected]{background:#f1f3f4;background:var(--devsite-button-background-selected,#f1f3f4);color:inherit;color:var(--devsite-button-color-selected,inherit)}devsite-nav-buttons button[class^=button-][selected]{background:#1a73e8;color:#fff}devsite-nav-buttons button.button-primary[selected]{background:#174ea6}devsite-nav-buttons button[selected]:before{font:normal normal normal 24px/1 Material Icons;-webkit-font-feature-settings:"liga";-moz-font-feature-settings:"liga";font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal;content:"checked";margin-right:8px;width:24px}devsite-playlist:defined{display:block;margin-bottom:48px}devsite-playlist .devsite-playlist--inner{max-width:936px;padding:0 40px;margin:0 auto}devsite-playlist .devsite-playlist--header{background-color:#133041}devsite-playlist .devsite-playlist--header .devsite-playlist--inner{padding-bottom:24px}devsite-playlist .devsite-playlist--header .devsite-playlist--header-details{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info,devsite-playlist .devsite-playlist--header .devsite-playlist--header-details-info{padding-top:40px;width:calc(50% - 20px)}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info{position:relative;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-moz-box-orient:horizontal;-moz-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info .devsite-playlist--header-badge-info--bg{content:"";position:absolute;background-image:url(../images/playlist_header.svg);background-size:cover;width:510px;height:213px;background-repeat:no-repeat;background-position:0 -20px;top:0;left:0}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info .devsite-playlist--header-badge-info--container{position:relative;-webkit-align-self:center;-ms-flex-item-align:center;align-self:center;justify-self:center}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info .devsite-playlist-badge-details-icon,devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info .devsite-playlist-badge-details-icon-container{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info .devsite-playlist-badge-details-icon-container{position:relative;z-index:1;margin-bottom:-48px}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info .devsite-playlist-badge-details-icon{width:135px;height:135px;border-radius:50%;position:relative;-webkit-transform:translate3d(0,-44px,0);transform:translate3d(0,-44px,0);-webkit-transition:-webkit-transform .16s cubic-bezier(0,0,.2,1);transition:-webkit-transform .16s cubic-bezier(0,0,.2,1);transition:transform .16s cubic-bezier(0,0,.2,1);transition:transform .16s cubic-bezier(0,0,.2,1),-webkit-transform .16s cubic-bezier(0,0,.2,1);padding:7px;background:#fff}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info .devsite-playlist--progress-bar--outer,devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info .devsite-playlist--progress-text,devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info .devsite-playlist-badge-details-action,devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info .devsite-playlist-badge-details-icon img,devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info .devsite-playlist-badge-details-subtext{position:relative;z-index:2;opacity:1;-webkit-transition:opacity .16s cubic-bezier(.4,0,1,1),-webkit-transform .16s cubic-bezier(.4,0,1,1);transition:opacity .16s cubic-bezier(.4,0,1,1),-webkit-transform .16s cubic-bezier(.4,0,1,1);transition:transform .16s cubic-bezier(.4,0,1,1),opacity .16s cubic-bezier(.4,0,1,1);transition:transform .16s cubic-bezier(.4,0,1,1),opacity .16s cubic-bezier(.4,0,1,1),-webkit-transform .16s cubic-bezier(.4,0,1,1)}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info .devsite-playlist-badge-sharing{margin:12px -16px -16px;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;border-top:1px solid #dadce0;padding:8px 0 8px 12px}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info .devsite-playlist-badge-sharing .devsite-playlist-share-buttons{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info .devsite-playlist-badge-sharing span{font-size:14px;line-height:14px;color:#5f6368}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info .devsite-playlist-badge-sharing img{width:18px}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info .devsite-playlist-badge-sharing button{border:0;padding:4px;height:auto;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;min-width:0;box-shadow:none}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info .devsite-playlist-badge-sharing button:focus,devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info .devsite-playlist-badge-sharing button:hover{background:none}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info .devsite-playlist-badge-sharing button+button{margin:0 8px}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info .devsite-playlist-badge-details-icon img{position:static}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info .devsite-playlist-badge-details-icon devsite-spinner{position:absolute;opacity:0;-webkit-transition:opacity .16s cubic-bezier(.4,0,1,1);transition:opacity .16s cubic-bezier(.4,0,1,1)}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info .devsite-playlist--progress-text{font-size:16px;font-weight:500;line-height:20px;text-align:center;color:#202124}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info .devsite-playlist--progress-bar{-webkit-transition:opacity .16s cubic-bezier(.4,0,1,1);transition:opacity .16s cubic-bezier(.4,0,1,1)}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info .devsite-playlist--progress-bar.hide{opacity:0}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info .devsite-playlist--progress-bar--outer{margin:14px 0 0;height:10px;border-radius:24px;background:#e8f0fe;position:relative}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info .devsite-playlist--progress-bar--outer .devsite-playlist--progress-bar--inner{height:100%;border-radius:24px;width:0;display:inline-block;white-space:nowrap;-webkit-transition:width .3s cubic-bezier(0,0,.2,1);transition:width .3s cubic-bezier(0,0,.2,1);background:#006eff;position:absolute}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info .devsite-playlist-badge-details-subtext{font-size:14px;line-height:16px;text-align:center;color:#3c4043;padding:28px 0 0}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info .devsite-playlist-badge-details-action{padding:4px 0 0;text-align:center;font-size:14px;line-height:16px;font-weight:700}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info.no-badge .devsite-playlist-badge-details-icon-container{display:none}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info.badge-earned .devsite-playlist-badge-details-subtext{padding:0 0 12px}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info.not-eligible .devsite-playlist--progress-bar,devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info.not-eligible .devsite-playlist--progress-text{display:none}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info.not-eligible.no-badge .devsite-playlist-badge-details-subtext{padding-top:0}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info.loading{pointer-events:none}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info.loading .devsite-playlist-badge-details-icon-container{position:absolute;top:0;right:0;left:0;bottom:0;margin-bottom:0}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info.loading .devsite-playlist-badge-details-icon{-webkit-transform:translateZ(0);transform:translateZ(0);background:transparent}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info.loading .devsite-playlist--progress-bar--outer,devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info.loading .devsite-playlist--progress-text,devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info.loading .devsite-playlist-badge-details-action,devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info.loading .devsite-playlist-badge-details-subtext{opacity:0}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info.loading .devsite-playlist-badge-details-icon img{opacity:0;position:absolute}devsite-playlist .devsite-playlist--header .devsite-playlist--header-badge-info.loading .devsite-playlist-badge-details-icon devsite-spinner{opacity:1}devsite-playlist .devsite-playlist--header h1:first-of-type{margin:0;top:0;color:#fff;font-family:Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font-style:normal;font-weight:300;font-size:34px;line-height:34px}devsite-playlist .devsite-playlist--header .devsite-playlist-details{font-size:12px;color:#3c4043;line-height:16px}devsite-playlist .devsite-playlist--header p{margin:22px 0;padding:0;font-size:16px;line-height:24px;font-family:Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;color:#dadce0}devsite-playlist .devsite-playlist--header .devsite-playlist-return-button{margin-top:24px}devsite-playlist .devsite-playlist--header .devsite-playlist-summary{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;font-family:Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font-style:normal;font-weight:700;font-size:12px;line-height:24px;color:#fff}devsite-playlist .devsite-playlist--header .devsite-playlist-badge-details{width:100%;max-width:213px;height:auto;background:#fff;border-radius:8px;padding:16px}devsite-playlist .profile-notification{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center}devsite-playlist .profile-notification .profile-notification--inner{color:#5f6368;margin:0 auto;padding:16px;box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 2px 6px 2px rgba(60,64,67,.15);border-radius:4px}devsite-playlist .devsite-playlist--section{padding:24px 0;position:relative}devsite-playlist .devsite-playlist--section .arrow--up,devsite-playlist[not-signed-in] .devsite-playlist--item--meta em,devsite-playlist[not-signed-in] .devsite-playlist--section .playlist-skip{display:none}devsite-playlist .devsite-playlist--item-top{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}devsite-playlist .devsite-playlist--item-top:before{position:absolute;width:1px;height:0;background:#dadce0;content:"";display:block;margin-left:15px;margin-top:2px;top:54px;z-index:1;-webkit-transition:height .16s cubic-bezier(.4,0,1,1),opacity .16s cubic-bezier(.4,0,1,1);transition:height .16s cubic-bezier(.4,0,1,1),opacity .16s cubic-bezier(.4,0,1,1)}devsite-playlist .devsite-playlist--item-top .devsite-playlist--item-top-index{-webkit-box-flex:0;-webkit-flex-grow:0;-moz-box-flex:0;-ms-flex-positive:0;flex-grow:0;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;width:30px;position:relative}devsite-playlist .devsite-playlist--item-top .devsite-playlist--item-top-index span{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:#202124;color:#fff;margin-top:2px;opacity:1}devsite-playlist .devsite-playlist--item-top .devsite-playlist--item-top-index i{opacity:0;-webkit-transform:rotate(45deg);transform:rotate(45deg);color:#009231;width:36px;height:36px;font-size:36px;position:absolute;left:-3px;top:-1px}devsite-playlist .devsite-playlist--item-top .devsite-playlist--item-top-index devsite-spinner{position:absolute;top:2px;opacity:0}devsite-playlist .devsite-playlist--item-top .devsite-playlist--item-top-index devsite-spinner,devsite-playlist .devsite-playlist--item-top .devsite-playlist--item-top-index i,devsite-playlist .devsite-playlist--item-top .devsite-playlist--item-top-index span{-webkit-transition:opacity .16s cubic-bezier(.4,0,1,1),background 60ms cubic-bezier(.4,0,1,1);transition:opacity .16s cubic-bezier(.4,0,1,1),background 60ms cubic-bezier(.4,0,1,1)}devsite-playlist .devsite-playlist--item-top .devsite-playlist--item-top-controls{width:32px}devsite-playlist .devsite-playlist--item-top .devsite-playlist--item-top-controls button{box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 2px 6px 2px rgba(60,64,67,.15);border-radius:50%;padding:0;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;width:32px;height:32px;min-width:0;color:#202124}devsite-playlist .devsite-playlist--item-top .devsite-playlist--item-top-controls button .material-icons{top:auto;position:static;margin:0;width:24px;height:24px;font-size:24px;cursor:pointer}devsite-playlist .devsite-playlist--item-top .devsite-playlist--item-top-title{-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1;padding:0 18px;cursor:pointer}devsite-playlist .devsite-playlist--item-top .devsite-playlist--item-top-title h2{margin:0;padding:0;font-size:28px;color:#202124;line-height:36px}devsite-playlist .devsite-playlist--item--content,devsite-playlist .devsite-playlist--item--meta{padding:0 48px}devsite-playlist .devsite-playlist--item--meta{font-size:12px;color:#3c4043;line-height:16px;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;margin:4px 0}devsite-playlist .devsite-playlist--item--meta em{padding-left:16px}devsite-playlist .devsite-playlist--item--meta .material-icons{font-size:18px;width:18px;height:18px;margin-right:4px}devsite-playlist .devsite-playlist--item--actions,devsite-playlist .devsite-playlist--item--content{display:none}devsite-playlist .devsite-playlist--item--actions{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:end;-webkit-justify-content:flex-end;-moz-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;padding:8px 0 32px 48px}devsite-playlist .devsite-playlist--section[ready] .devsite-playlist--item-top:before{height:calc(100% - 30px)}devsite-playlist .devsite-playlist--section[expanded]{background:#f5f5f7 url(../images/playlist_active.svg) repeat-x top}devsite-playlist .devsite-playlist--section[expanded] .arrow--down{display:none}devsite-playlist .devsite-playlist--section[expanded] .arrow--up{display:block}devsite-playlist .devsite-playlist--section[expanded] .devsite-playlist--item-top-index span{background:#0070f0}devsite-playlist .devsite-playlist--section[expanded] .devsite-playlist--item--content{display:block}devsite-playlist .devsite-playlist--section[expanded] .devsite-playlist--item--actions{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}devsite-playlist .devsite-playlist--section[type=game] .devsite-playlist--item--content,devsite-playlist .devsite-playlist--section[type=video] .devsite-playlist--item--content{padding:12px 48px}devsite-playlist .devsite-playlist--section[completing] .devsite-playlist--item-top-index devsite-spinner{opacity:1}devsite-playlist .devsite-playlist--section[completed] .devsite-playlist--item-top-index span{opacity:0}devsite-playlist .devsite-playlist--section[completed] .devsite-playlist--item-top-index i{opacity:1;-webkit-transform:rotate(0);transform:rotate(0)}devsite-playlist .devsite-playlist--section[completed] .playlist-skip{display:none}devsite-playlist .devsite-playlist--section[completed][expanded] .devsite-playlist--item-top-index i{background-color:rgba(230,240,255,.24)}devsite-playlist .devsite-playlist--section[last] .devsite-playlist--item-top:before{display:none}devsite-playlist .devsite-playlist--section-quiz{padding:24px;border-radius:4px;border:1px solid #dadce0}devsite-playlist .devsite-playlist--section-quiz h2{margin:0;padding:0}devsite-playlist .devsite-playlist--section-quiz .devsite-playlist--item--actions{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.devsite-playlist-dialog{position:relative;background:#fff;box-shadow:0 1px 3px 0 rgba(60,64,67,.3),0 4px 8px 3px rgba(60,64,67,.15);border-radius:8px;padding:24px}.devsite-playlist-dialog .devsite-playlist-dialog-spinner{position:absolute;top:0;left:0;right:0;bottom:0;display:none;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;background:hsla(0,0%,100%,.8);z-index:100}.devsite-playlist-dialog.loading .devsite-playlist-dialog-spinner{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.devsite-playlist-dialog .devsite-playlist-dialog-inner{position:relative;color:#3c4043}.devsite-playlist-dialog .devsite-playlist-dialog-inner h4{margin:0 0 16px;font-family:Google Sans,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font-size:16px;line-height:24px}.devsite-playlist-dialog .devsite-playlist-dialog-inner label{font-size:14px;line-height:22px}.devsite-playlist-dialog .devsite-playlist-dialog-inner p{font-size:12px;line-height:16px;color:#4c5155}@media screen and (max-width:840px){devsite-playlist .devsite-playlist--inner{max-width:768px;padding:0 40px}}@media screen and (max-width:600px){devsite-playlist .devsite-playlist--inner{max-width:100%;padding:0 24px}devsite-playlist .devsite-playlist--header .devsite-playlist--header-details{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}devsite-playlist .devsite-playlist--header .devsite-playlist--header-details .devsite-playlist--header-badge-info,devsite-playlist .devsite-playlist--header .devsite-playlist--header-details .devsite-playlist--header-details-info{width:100%}devsite-playlist .devsite-playlist--header .devsite-playlist--header-details .devsite-playlist--header-badge-info .devsite-playlist--header-badge-info--bg,devsite-playlist .devsite-playlist--header .devsite-playlist--header-details .devsite-playlist--header-details-info .devsite-playlist--header-badge-info--bg{top:84px;background-position:0 0}}devsite-page-rating{display:block}devsite-page-rating[position=footer]{border-top:1px solid #dadce0;margin:16px -40px -40px;padding:31px 40px 40px;text-align:center}body[layout=full] devsite-page-rating[position=footer]{margin:16px calc(50% - 50vw);padding:31px calc(50vw - 50%)}devsite-page-rating[position=footer]+devsite-feedback{display:block;margin-top:20px;text-align:center}.devsite-rating-stars:focus{outline:0}.devsite-rating-star{cursor:pointer;display:inline-block;height:24px;width:24px}.devsite-rating-caption{font:400 20px/32px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font:var(--devsite-heading-font,400 20px/32px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif);margin-bottom:16px}.devsite-rating-position-bottom .devsite-rating-description{left:0;right:auto}.devsite-rating-star-full:focus,.devsite-rating-star-outline:focus{outline:0}.devsite-rating-star-full:focus:before,.devsite-rating-star-outline:before{color:#5f6368;content:"star_border"}.devsite-rating-star-full:before,.devsite-rating-star-outline:focus:before{color:#d56e0c;content:"star"}@media screen and (max-width:600px){devsite-page-rating[position=header]{margin:8px 0 0}devsite-page-rating[position=footer]+devsite-feedback{margin-bottom:16px}}devsite-pagination{display:block}devsite-pagination[buttons],devsite-pagination[initial-results]{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center}devsite-pagination button{margin:0 10px}devsite-pagination button[hidden]{display:none}devsite-pagination a{margin:0 2px}devsite-pagination a[selected]{text-decoration:underline}devsite-progress{pointer-events:none;-webkit-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform:scaleY(0);transform:scaleY(0);-webkit-transition:-webkit-transform .2s ease;transition:-webkit-transform .2s ease;transition:transform .2s ease;transition:transform .2s ease,-webkit-transform .2s ease}devsite-progress[type=indeterminate]{-webkit-transform:scaleY(1);transform:scaleY(1)}devsite-progress .devsite-progress--indeterminate{position:relative;height:2px}devsite-progress .devsite-progress--indeterminate .devsite-progress--indeterminate-1,devsite-progress .devsite-progress--indeterminate .devsite-progress--indeterminate-2,devsite-progress .devsite-progress--indeterminate .devsite-progress--indeterminate-3,devsite-progress .devsite-progress--indeterminate .devsite-progress--indeterminate-4{background:#fff;bottom:0;left:0;position:absolute;right:0;top:0;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:scaleX(0);transform:scaleX(0)}devsite-progress .devsite-progress--indeterminate .devsite-progress--indeterminate-1{-webkit-animation:progress-indeterminate-1 2.5s linear infinite;animation:progress-indeterminate-1 2.5s linear infinite;z-index:1}devsite-progress .devsite-progress--indeterminate .devsite-progress--indeterminate-2{-webkit-animation:progress-indeterminate-2 2.5s ease-in infinite;animation:progress-indeterminate-2 2.5s ease-in infinite;z-index:2}devsite-progress .devsite-progress--indeterminate .devsite-progress--indeterminate-3{-webkit-animation:progress-indeterminate-3 2.5s ease-out infinite;animation:progress-indeterminate-3 2.5s ease-out infinite;z-index:3}devsite-progress .devsite-progress--indeterminate .devsite-progress--indeterminate-4{-webkit-animation:progress-indeterminate-4 2.5s ease-out infinite;animation:progress-indeterminate-4 2.5s ease-out infinite;z-index:4}@-webkit-keyframes progress-indeterminate-1{0%{-webkit-transform:scaleX(0);transform:scaleX(0)}50%,to{-webkit-transform:scaleX(1);transform:scaleX(1)}}@keyframes progress-indeterminate-1{0%{-webkit-transform:scaleX(0);transform:scaleX(0)}50%,to{-webkit-transform:scaleX(1);transform:scaleX(1)}}@-webkit-keyframes progress-indeterminate-2{0%,20%{-webkit-transform:scaleX(0);transform:scaleX(0)}70%,to{-webkit-transform:scaleX(1);transform:scaleX(1)}}@keyframes progress-indeterminate-2{0%,20%{-webkit-transform:scaleX(0);transform:scaleX(0)}70%,to{-webkit-transform:scaleX(1);transform:scaleX(1)}}@-webkit-keyframes progress-indeterminate-3{0%,60%{-webkit-transform:scaleX(0);transform:scaleX(0)}90%,to{-webkit-transform:scaleX(1);transform:scaleX(1)}}@keyframes progress-indeterminate-3{0%,60%{-webkit-transform:scaleX(0);transform:scaleX(0)}90%,to{-webkit-transform:scaleX(1);transform:scaleX(1)}}@-webkit-keyframes progress-indeterminate-4{0%,75%{-webkit-transform:scaleX(0);transform:scaleX(0)}to{-webkit-transform:scaleX(1);transform:scaleX(1)}}@keyframes progress-indeterminate-4{0%,75%{-webkit-transform:scaleX(0);transform:scaleX(0)}to{-webkit-transform:scaleX(1);transform:scaleX(1)}}devsite-quiz{font-size:14px;font-family:Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif}devsite-quiz:defined{display:block}devsite-quiz input[type=checkbox],devsite-quiz input[type=radio]{margin-top:0;position:relative;top:3px}devsite-quiz input+label{color:#3c4043;font-size:14px;vertical-align:middle}devsite-quiz devsite-select .devsite-select-toggle{color:#3c4043;min-width:200px}devsite-quiz form[answered] input[type=checkbox].variant-success:checked,devsite-quiz form[answered] input[type=radio].variant-success:checked{color:#1e8e3e}devsite-quiz form[answered] input[type=checkbox].variant-success:checked:focus:before,devsite-quiz form[answered] input[type=radio].variant-success:focus:before{background:#e6f4ea}devsite-quiz form[answered] input[type=text].variant-success{background-color:#e6f4ea;border-color:#e6f4ea}devsite-quiz form[answered] input[type=text]:focus.variant-success{border-bottom-color:#1e8e3e}devsite-quiz form[answered] input[type=checkbox].variant-error:checked,devsite-quiz form[answered] input[type=radio].variant-error:checked{color:#d93025}devsite-quiz form[answered] input[type=checkbox].variant-error:checked:focus:before,devsite-quiz form[answered] input[type=radio].variant-error:focus:before{background:#fce8e6}devsite-quiz form[answered] input[type=text].variant-error{background-color:#fce8e6;border-color:#fce8e6}devsite-quiz form[answered] input[type=text]:focus.variant-error{border-bottom-color:#d93025}devsite-quiz .devsite-quiz-header{background:#f8f9fa;border-bottom:1px solid #dadce0;font-family:Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif}@media screen and (max-width:600px){devsite-quiz .devsite-quiz-header{text-align:center}}devsite-quiz .devsite-quiz-header .devsite-quiz-header-content{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin:0 auto;padding:48px 16px}devsite-quiz .devsite-quiz-header .devsite-quiz-header-text .devsite-quiz-title{margin:0 0 8px;padding:0}devsite-quiz .devsite-quiz-header .devsite-quiz-header-text .devsite-quiz-tagline{color:#5f6368;font-weight:400;font-size:14px;line-height:20px;margin:0}devsite-quiz .devsite-quiz-header .devsite-quiz-header-text .devsite-quiz-return-button{margin-top:15px}devsite-quiz .devsite-quiz-header .devsite-quiz-badge{display:none}devsite-quiz .devsite-quiz-header .devsite-quiz-partially-correct-indicator{background-color:orange}devsite-quiz .devsite-quiz-body{margin:0 auto;padding:48px 16px 0}devsite-quiz .devsite-quiz-body[answered] .devsite-quiz-feedback{opacity:1;-webkit-transform:translateX(0);transform:translateX(0);-webkit-transition:opacity .213s cubic-bezier(0,0,.2,1),-webkit-transform .13s cubic-bezier(0,0,.2,1);transition:opacity .213s cubic-bezier(0,0,.2,1),-webkit-transform .13s cubic-bezier(0,0,.2,1);transition:transform .13s cubic-bezier(0,0,.2,1),opacity .213s cubic-bezier(0,0,.2,1);transition:transform .13s cubic-bezier(0,0,.2,1),opacity .213s cubic-bezier(0,0,.2,1),-webkit-transform .13s cubic-bezier(0,0,.2,1)}devsite-quiz .devsite-quiz-submit-error{border-radius:4px;padding:6px 12px;background:#fce8e6;font-size:16px;font-weight:500;line-height:30px}devsite-quiz .devsite-quiz-submit-error i{color:#d93025;margin-right:8px;line-height:30px}devsite-quiz .devsite-quiz-submit-button{margin-top:64px}devsite-quiz .devsite-quiz-submit-button devsite-spinner{display:inline-block;top:5px;margin-left:15px}devsite-quiz .devsite-quiz-question-list{font:400 18px/30px Google Sans,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font-weight:500;list-style-position:inside}[dir=ltr] devsite-quiz .devsite-quiz-question-list{padding-left:0}[dir=rtl] devsite-quiz .devsite-quiz-question-list{padding-right:0}devsite-quiz .devsite-quiz-question-list>.devsite-quiz-question{color:#202124;margin:0 0 64px}devsite-quiz .devsite-quiz-question-list>.devsite-quiz-question:last-child{margin-bottom:0}@media screen and (max-width:600px){devsite-quiz .devsite-quiz-question-list>.devsite-quiz-question{margin-bottom:36px}}devsite-quiz .devsite-quiz-question .devsite-quiz-question-header{font:400 18px/30px Google Sans,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;color:#202124;font-weight:500;margin:0}devsite-quiz .devsite-quiz-question .devsite-quiz-question-sub-header{color:#5f6368;font-size:12px;font-style:italic;line-height:16px;margin:0}devsite-quiz .devsite-quiz-question .devsite-quiz-answer{margin:16px 0;position:relative;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-webkit-align-items:flex-start;-moz-box-align:start;-ms-flex-align:start;align-items:flex-start}devsite-quiz .devsite-quiz-question .devsite-quiz-answer label{line-height:24px;margin-right:15px;font-family:Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font-weight:400}devsite-quiz .devsite-quiz-question .devsite-quiz-match-question{border-top:1px solid #dadce0;margin:24px 0 0}devsite-quiz .devsite-quiz-question .devsite-quiz-match-question .devsite-quiz-match-question-row{border-bottom:1px solid #dadce0;display:block}devsite-quiz .devsite-quiz-question .devsite-quiz-match-question .devsite-quiz-match-question-row>.devsite-quiz-feedback,devsite-quiz .devsite-quiz-question .devsite-quiz-match-question .devsite-quiz-match-question-row>.devsite-quiz-match-question-row-element{margin:24px 0}@media screen and (max-width:600px){devsite-quiz .devsite-quiz-question .devsite-quiz-match-question .devsite-quiz-match-question-row>.devsite-quiz-feedback,devsite-quiz .devsite-quiz-question .devsite-quiz-match-question .devsite-quiz-match-question-row>.devsite-quiz-match-question-row-element{margin:12px 0}}@media screen and (max-width:600px){devsite-quiz .devsite-quiz-question .devsite-quiz-match-question .devsite-quiz-match-question-row>.devsite-quiz-feedback{margin:0 0 12px;top:0}}devsite-quiz .devsite-quiz-question .devsite-quiz-match-question .devsite-quiz-problem-item{font-size:14px;line-height:20px;margin:0}devsite-quiz .devsite-quiz-question .devsite-quiz-fill-in-the-blank-container{color:#3c4043;font-size:14px;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin:8px 0 0}devsite-quiz .devsite-quiz-question .devsite-quiz-fill-in-the-blank-container .devsite-quiz-fill-in-the-blank-question{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;display:block;margin-bottom:0;line-height:32px}devsite-quiz .devsite-quiz-question .devsite-quiz-fill-in-the-blank-container .devsite-quiz-fill-in-the-blank-question+.devsite-quiz-feedback{margin-top:8px}devsite-quiz .devsite-quiz-question .devsite-quiz-fill-in-the-blank-container .devsite-quiz-text-input{margin-left:0;font-family:Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font-weight:400;font-size:14px;padding:3px 7px}devsite-quiz .devsite-quiz-question .devsite-quiz-fill-in-the-blank-container .devsite-quiz-text-input::-webkit-input-placeholder{font-size:14px;line-height:20px;font-style:italic}devsite-quiz .devsite-quiz-question .devsite-quiz-fill-in-the-blank-container .devsite-quiz-text-input::-moz-placeholder{font-size:14px;line-height:20px;font-style:italic}devsite-quiz .devsite-quiz-question .devsite-quiz-fill-in-the-blank-container .devsite-quiz-text-input:-ms-input-placeholder{font-size:14px;line-height:20px;font-style:italic}devsite-quiz .devsite-quiz-question .devsite-quiz-fill-in-the-blank-container .devsite-quiz-text-input::-ms-input-placeholder{font-size:14px;line-height:20px;font-style:italic}devsite-quiz .devsite-quiz-question .devsite-quiz-fill-in-the-blank-container .devsite-quiz-text-input::placeholder{font-size:14px;line-height:20px;font-style:italic}devsite-quiz .devsite-quiz-question .devsite-quiz-fill-in-the-blank-container .devsite-quiz-feedback{position:relative;margin:0}devsite-quiz .devsite-quiz-footer{min-height:48px;background:transparent;-webkit-transition:background .13s cubic-bezier(0,0,.2,1);transition:background .13s cubic-bezier(0,0,.2,1)}devsite-quiz .devsite-quiz-footer devsite-badge-awarded{min-height:200px;display:block}devsite-quiz .devsite-quiz-footer[show]{background:#f8f9fa;-webkit-transition:background .13s cubic-bezier(0,0,.2,1);transition:background .13s cubic-bezier(0,0,.2,1)}devsite-quiz .devsite-quiz-footer[show] .devsite-quiz-footer-content{opacity:1;-webkit-transform:translateY(0);transform:translateY(0);-webkit-transition:opacity .13s cubic-bezier(0,0,.2,1),-webkit-transform .13s cubic-bezier(0,0,.2,1);transition:opacity .13s cubic-bezier(0,0,.2,1),-webkit-transform .13s cubic-bezier(0,0,.2,1);transition:transform .13s cubic-bezier(0,0,.2,1),opacity .13s cubic-bezier(0,0,.2,1);transition:transform .13s cubic-bezier(0,0,.2,1),opacity .13s cubic-bezier(0,0,.2,1),-webkit-transform .13s cubic-bezier(0,0,.2,1)}devsite-quiz .devsite-quiz-footer .devsite-quiz-footer-content{padding:48px 16px;opacity:0;-webkit-transform:translateY(24px);transform:translateY(24px);-webkit-transition:opacity .13s cubic-bezier(.4,0,1,1),-webkit-transform .13s cubic-bezier(.4,0,1,1);transition:opacity .13s cubic-bezier(.4,0,1,1),-webkit-transform .13s cubic-bezier(.4,0,1,1);transition:transform .13s cubic-bezier(.4,0,1,1),opacity .13s cubic-bezier(.4,0,1,1);transition:transform .13s cubic-bezier(.4,0,1,1),opacity .13s cubic-bezier(.4,0,1,1),-webkit-transform .13s cubic-bezier(.4,0,1,1)}devsite-quiz .devsite-quiz-footer .devsite-quiz-footer-content .devsite-quiz-results-container{width:100%}devsite-quiz .devsite-quiz-footer .devsite-quiz-footer-content .devsite-quiz-footer-header{font:400 32px/40px Google Sans,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font-family:Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif}devsite-quiz .devsite-quiz-footer .devsite-quiz-footer-content .devsite-quiz-score-copy{font:400 24px/32px Google Sans,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;margin-bottom:8px}devsite-quiz .devsite-quiz-footer .devsite-quiz-footer-content .devsite-quiz-score-copy.devsite-quiz-score-success{margin-bottom:20px;font-size:20px}devsite-quiz .devsite-quiz-footer .devsite-quiz-footer-content .devsite-quiz-score-fail .devsite-quiz-score{color:#d93025;font-weight:500}devsite-quiz .devsite-quiz-footer .devsite-quiz-footer-content .devsite-quiz-score-success .devsite-quiz-score{color:#1e8e3e;font-weight:500}devsite-quiz .devsite-quiz-footer .devsite-quiz-footer-content .devsite-quiz-score-subtext{color:#3c4043;margin-top:8px}devsite-quiz .devsite-quiz-footer .devsite-quiz-footer-content .devsite-quiz-action-buttons{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}devsite-quiz .devsite-quiz-feedback{color:#3c4043;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;position:relative;opacity:0;-webkit-transform:translateX(-24px);transform:translateX(-24px);-webkit-transition:opacity .13s cubic-bezier(.4,0,1,1),-webkit-transform .13s cubic-bezier(.4,0,1,1);transition:opacity .13s cubic-bezier(.4,0,1,1),-webkit-transform .13s cubic-bezier(.4,0,1,1);transition:transform .13s cubic-bezier(.4,0,1,1),opacity .13s cubic-bezier(.4,0,1,1);transition:transform .13s cubic-bezier(.4,0,1,1),opacity .13s cubic-bezier(.4,0,1,1),-webkit-transform .13s cubic-bezier(.4,0,1,1)}devsite-quiz .devsite-quiz-feedback,devsite-quiz .devsite-quiz-feedback .devsite-quiz-feedback-container{display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex}devsite-quiz .devsite-quiz-feedback .devsite-quiz-feedback-container{border-radius:4px;padding:4px 12px;margin:-9px 0}devsite-quiz .devsite-quiz-feedback .devsite-quiz-feedback-container.correct{background:#e6f4ea}devsite-quiz .devsite-quiz-feedback .devsite-quiz-feedback-container.correct:before{color:#1e8e3e;content:"check_circle_outline"}devsite-quiz .devsite-quiz-feedback .devsite-quiz-feedback-container.partially-correct{background:#feefe3;margin:15px 0 0}devsite-quiz .devsite-quiz-feedback .devsite-quiz-feedback-container.partially-correct:before{color:#e8710a;content:"remove_circle_outline"}devsite-quiz .devsite-quiz-feedback .devsite-quiz-feedback-container.incorrect{background:#fce8e6}devsite-quiz .devsite-quiz-feedback .devsite-quiz-feedback-container.incorrect:before{color:#d93025;content:"not_interested"}devsite-quiz .devsite-quiz-feedback .devsite-quiz-feedback-container:before{font:normal normal normal 24px/1 Material Icons;-webkit-font-feature-settings:"liga";-moz-font-feature-settings:"liga";font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal;line-height:inherit;margin-right:8px}devsite-quiz .devsite-quiz-feedback .devsite-quiz-feedback-container .devsite-quiz-feedback-text{font-size:14px;font-family:Google Sans,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;line-height:20px;margin:5px 0}devsite-quiz .devsite-quiz-feedback .devsite-quiz-feedback-container .devsite-quiz-feedback-title{font-size:16px;font-weight:500;font-family:Google Sans,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif}devsite-quiz .devsite-quiz-feedback .devsite-quiz-feedback-container .devsite-quiz-feedback-message{font-family:Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif}[dir=ltr] devsite-quiz .devsite-quiz-feedback .devsite-quiz-feedback-container .devsite-quiz-feedback-message{margin-left:8px}[dir=rtl] devsite-quiz .devsite-quiz-feedback .devsite-quiz-feedback-container .devsite-quiz-feedback-message{margin-right:8px}@media screen and (min-width:601px){devsite-quiz .devsite-quiz-body,devsite-quiz .devsite-quiz-footer .devsite-quiz-footer-content,devsite-quiz .devsite-quiz-header .devsite-quiz-header-content{padding-left:24px;padding-right:24px}devsite-quiz .devsite-quiz-header .devsite-quiz-badge{display:block;height:122px;min-width:122px;width:122px;opacity:0}devsite-quiz .devsite-quiz-header .devsite-quiz-badge.show{-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-name:bounce;animation-name:bounce;opacity:1}@-webkit-keyframes bounce{0%{opacity:0;-webkit-transform:scale(.2);transform:scale(.2)}50%{opacity:1;-webkit-transform:scale(1.3);transform:scale(1.3)}to{-webkit-transform:scale(1);transform:scale(1)}}@keyframes bounce{0%{opacity:0;-webkit-transform:scale(.2);transform:scale(.2)}50%{opacity:1;-webkit-transform:scale(1.3);transform:scale(1.3)}to{-webkit-transform:scale(1);transform:scale(1)}}[dir=ltr] devsite-quiz .devsite-quiz-header .devsite-quiz-badge{margin-left:48px}[dir=rtl] devsite-quiz .devsite-quiz-header .devsite-quiz-badge{margin-right:48px}devsite-quiz .devsite-quiz-question .devsite-quiz-match-question{border:0;display:table;max-width:600px;width:100%}devsite-quiz .devsite-quiz-question .devsite-quiz-match-question .devsite-quiz-match-question-row{border:0;display:table-row}devsite-quiz .devsite-quiz-question .devsite-quiz-match-question .devsite-quiz-match-question-row>.devsite-quiz-feedback,devsite-quiz .devsite-quiz-question .devsite-quiz-match-question .devsite-quiz-match-question-row>.devsite-quiz-match-question-row-element{display:table-cell;margin:0;padding:24px;vertical-align:middle;position:relative;top:0}devsite-quiz .devsite-quiz-question .devsite-quiz-match-question .devsite-quiz-match-question-row>.devsite-quiz-match-question-row-element{border-top:1px solid #dadce0}devsite-quiz .devsite-quiz-question .devsite-quiz-match-question .devsite-quiz-match-question-row:last-child>.devsite-quiz-match-question-row-element{border-bottom:1px solid #dadce0}devsite-quiz .devsite-quiz-question .devsite-quiz-match-question .devsite-quiz-problem{-moz-box-sizing:border-box;box-sizing:border-box;color:#3c4043;width:100%}[dir=ltr] devsite-quiz .devsite-quiz-question .devsite-quiz-match-question .devsite-quiz-problem{padding-left:0}[dir=rtl] devsite-quiz .devsite-quiz-question .devsite-quiz-match-question .devsite-quiz-problem{padding-right:0}[dir=ltr] devsite-quiz .devsite-quiz-question .devsite-quiz-match-question .devsite-quiz-answer{padding-right:0;text-align:right}[dir=rtl] devsite-quiz .devsite-quiz-question .devsite-quiz-match-question .devsite-quiz-answer{padding-left:0;text-align:left}devsite-quiz .devsite-quiz-question .devsite-quiz-match-question .devsite-quiz-feedback-container{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}}@media screen and (min-width:841px){devsite-quiz .devsite-quiz-body,devsite-quiz .devsite-quiz-footer .devsite-quiz-footer-content,devsite-quiz .devsite-quiz-header .devsite-quiz-header-content{max-width:768px}devsite-quiz .devsite-quiz-header .devsite-quiz-header-text{max-width:488px}devsite-quiz .devsite-quiz-footer{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center}devsite-quiz .devsite-quiz-footer .devsite-quiz-footer-content{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;width:100%}devsite-quiz .devsite-quiz-footer .devsite-quiz-footer-content+.devsite-quiz-footer-content{margin-top:0}devsite-quiz .devsite-quiz-footer .devsite-quiz-footer-content:nth-last-child(2),devsite-quiz .devsite-quiz-footer .devsite-quiz-footer-content:nth-last-child(2)+.devsite-quiz-footer-content{max-width:384px}devsite-quiz .devsite-quiz-footer .devsite-quiz-footer-content:nth-last-child(2){-webkit-box-pack:end;-webkit-justify-content:flex-end;-moz-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}}devsite-recommendations{border-top:1px solid #dadce0;display:block;-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;-ms-flex:1;flex:1;margin:40px -40px -40px;padding:20px 40px 40px}body[layout=full] devsite-recommendations{padding:12px 0}body[layout=docs][type=landing] devsite-recommendations{margin:0;padding:12px 40px}devsite-recommendations .significatio-overview{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;position:relative}body[layout=full] devsite-recommendations .significatio-overview{margin:0 auto}body[layout=full] devsite-recommendations .significatio-body,body[layout=full] devsite-recommendations .significatio-overview{max-width:1488px;padding:0 24px}devsite-recommendations .significatio-heading{font:700 14px/24px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;border:0;color:#01579b;margin:0}devsite-recommendations .significatio-body,devsite-recommendations .significatio-heading{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}devsite-recommendations .significatio-body{-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin:12px 0 0;width:100%}body[layout=full] devsite-recommendations .significatio-body{margin:12px auto 0}devsite-recommendations .significatio-heading-icon{fill:currentColor;width:24px}[dir=ltr] devsite-recommendations .significatio-heading-icon{margin-right:4px}[dir=rtl] devsite-recommendations .significatio-heading-icon{margin-left:4px}devsite-recommendations .significatio-buttons{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-moz-box-orient:horizontal;-moz-box-direction:normal;-ms-flex-direction:row;flex-direction:row}devsite-recommendations .significatio-buttons button{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;border-radius:50%;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;font-size:20px;height:40px;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:0;-webkit-transition:background .2s;transition:background .2s;width:40px}devsite-recommendations .significatio-buttons button:focus,devsite-recommendations .significatio-buttons button:hover{background-color:#aecbfa}devsite-recommendations .significatio-buttons .material-icons{top:auto}devsite-recommendations .significatio-buttons .material-icons:not(:link){pointer-events:none}devsite-recommendations .significatio-loading{display:none}devsite-recommendations[loading] .significatio-loading{display:block;-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;-ms-flex:1;flex:1}devsite-recommendations .significatio-loading devsite-spinner{margin:0 auto}devsite-recommendations .significatio-recommendations{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}devsite-recommendations:not([loading]) .significatio-recommendations{width:100%}devsite-recommendations .significatio-card{background:#fff;background:var(--devsite-card-background,#fff);border:0;border:var(--devsite-card-border,0);border-radius:2px;border-radius:var(--devsite-card-border-radius,2px);box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15);box-shadow:var(--devsite-card-box-shadow,0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15));color:#202124;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-webkit-flex:1 1;-moz-box-flex:1;-ms-flex:1 1;flex:1 1;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-width:calc(33.3333333333% - 16px);min-width:0;opacity:0;padding:20px;-webkit-transition:opacity .2s cubic-bezier(.4,0,1,1);transition:opacity .2s cubic-bezier(.4,0,1,1)}devsite-recommendations .significatio-card.error{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center}devsite-recommendations .significatio-card[show]{opacity:1}[dir=ltr] devsite-recommendations .significatio-card:not(:first-child){margin-left:24px}[dir=rtl] devsite-recommendations .significatio-card:not(:first-child){margin-right:24px}devsite-recommendations .significatio-card-heading{font:700 14px/24px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;margin:0 0 8px}devsite-recommendations .significatio-card-description{-webkit-box-orient:vertical;display:-webkit-box;font-size:14px;-webkit-line-clamp:2;margin:0 0 20px;max-height:48px;overflow:hidden}devsite-recommendations .significatio-card.error .significatio-card-description{font:400 12px/16px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;letter-spacing:.3px;color:#80868b;letter-spacing:0;-webkit-line-clamp:3;margin:12px 0;text-align:center}devsite-recommendations .significatio-card.error .significatio-card-description+.significatio-card-description{margin-top:0}devsite-recommendations .significatio-card-meta{font:400 14px/16px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;color:#5f6368;margin:auto 0 0}devsite-recommendations .significatio-popout-container{-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1;position:relative}devsite-recommendations .significatio-popout-toggle{color:#5f6368}devsite-recommendations .significatio-popout-toggle:focus,devsite-recommendations .significatio-popout-toggle:hover{color:#1a73e8}devsite-recommendations .significatio-error-icon,devsite-recommendations .significatio-icon-info{fill:currentColor;vertical-align:text-bottom;width:20px}devsite-recommendations .significatio-popout{box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15);background:#fff;max-width:400px;opacity:0;padding:20px 24px;position:absolute;top:calc(100% + 8px);-webkit-transform:translateY(-12px);transform:translateY(-12px);-webkit-transition:opacity .2s,-webkit-transform .2s;transition:opacity .2s,-webkit-transform .2s;transition:opacity .2s,transform .2s;transition:opacity .2s,transform .2s,-webkit-transform .2s}[dir=ltr] devsite-recommendations .significatio-popout{left:-12px}[dir=rtl] devsite-recommendations .significatio-popout{right:-12px}devsite-recommendations .significatio-popout-heading{margin-top:0}[dir=ltr] body[layout=full] devsite-recommendations .significatio-popout{right:32px}[dir=rtl] body[layout=full] devsite-recommendations .significatio-popout{left:32px}devsite-recommendations .significatio-popout[active]{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}devsite-recommendations .significatio-popout p{margin-top:0}devsite-recommendations .significatio-interaction-container{height:36px}@media screen and (max-width:1252px){body[layout] devsite-recommendations .significatio-recommendations{display:block}body[layout] devsite-recommendations .significatio-card{max-width:none}[dir] body[layout] devsite-recommendations .significatio-card:not(:first-child){margin:24px 0 0}}@media screen and (max-width:840px){body[layout][type] devsite-recommendations{margin:24px -24px -24px;padding:24px}body[layout=full] devsite-recommendations .significatio-body,body[layout=full] devsite-recommendations .significatio-overview{padding:0}[dir=ltr] body[layout=full] devsite-recommendations .significatio-popout{right:-8px}[dir=rtl] body[layout=full] devsite-recommendations .significatio-popout{left:-8px}}@media screen and (max-width:600px){body[layout][type] devsite-recommendations{margin:32px -16px -16px;padding:16px}[dir] body[layout] devsite-recommendations .significatio-card:not(:first-child){margin:16px 0 0}}devsite-reference-results{background:#fff;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15);max-height:305px;padding:20px 10px 20px 28px;margin:16px 0}devsite-reference-results:empty{display:none}devsite-reference-results .devsite-reference-results{height:auto;width:100%}devsite-reference-results .devsite-reference-results h3{margin-top:0}devsite-reference-results .devsite-reference-results-list{-webkit-column-count:2;-moz-column-count:2;column-count:2;padding-left:0}devsite-reference-results .devsite-reference-results-list-item{-webkit-column-break-inside:avoid;break-inside:avoid;margin:0 0 0 -8px;outline:0;overflow:hidden;padding:10px 8px;text-decoration:none;text-overflow:ellipsis;-webkit-transition:background .2s;transition:background .2s;white-space:nowrap}devsite-reference-results .devsite-reference-results-list-item:focus,devsite-reference-results .devsite-reference-results-list-item:hover{background:#f1f3f4}devsite-reference-results .devsite-reference-results-list-link{color:#202124;font:13px/20px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif}@media screen and (max-width:600px){devsite-reference-results{overflow-y:scroll}devsite-reference-results .devsite-reference-results-list{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding-bottom:20px}devsite-reference-results .devsite-reference-results{width:auto}}devsite-search{border-radius:2px;border-radius:var(--devsite-search-border-radius,2px);display:inline-block;-webkit-box-flex:0;-webkit-flex:0 0 auto;-moz-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;height:36px;margin:6px 0 6px 24px;overflow:hidden;position:relative;text-align:left;-webkit-transform:translateZ(0);transform:translateZ(0);vertical-align:top;width:200px;will-change:transition;z-index:10}[dir=rtl] devsite-search{margin:6px 24px 6px 0;text-align:right}body[pending] devsite-search{visibility:hidden!important}devsite-search .devsite-search-image{color:#5f6368;position:absolute;top:6px;-webkit-transition:color .2s;transition:color .2s}[dir=ltr] devsite-search .devsite-search-image{left:8px}[dir=rtl] devsite-search .devsite-search-image{right:8px}devsite-search .devsite-search-image:before{content:"search"}devsite-search .devsite-search-container{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}devsite-search .devsite-suggest-results-container{border-top:1px solid #dadce0}devsite-search input.devsite-search-field{background:none;border:0;color:#5f6368;height:36px;outline:0;padding:8px;-webkit-transition:background .2s,color .2s;transition:background .2s,color .2s;width:100%}[dir=ltr] devsite-search input.devsite-search-field{padding-left:40px}[dir=rtl] devsite-search input.devsite-search-field{padding-right:40px}devsite-search input.devsite-search-field::-webkit-input-placeholder{color:#5f6368;-webkit-transition:color .2s;transition:color .2s}devsite-search input.devsite-search-field::-moz-placeholder{color:#5f6368;-webkit-transition:color .2s;transition:color .2s}devsite-search input.devsite-search-field:-ms-input-placeholder{color:#5f6368;-webkit-transition:color .2s;transition:color .2s}devsite-search input.devsite-search-field::-ms-input-placeholder{color:#5f6368;-webkit-transition:color .2s;transition:color .2s}devsite-search input.devsite-search-field::placeholder{color:#5f6368;-webkit-transition:color .2s;transition:color .2s}devsite-search input.devsite-search-field:focus{border:0;padding-bottom:8px}devsite-search .devsite-searchbox{width:100%}devsite-search .devsite-searchbox:before{display:block;display:var(--devsite-searchbox-before-display,block);background:#fff;content:"";height:500px;opacity:0;pointer-events:none;position:absolute;top:-458px;-webkit-transition:opacity 1ms .2s;transition:opacity 1ms .2s;width:calc(100% + 12px);will-change:opacity;z-index:-1}[dir=ltr] devsite-search .devsite-searchbox:before{left:-6px}[dir=rtl] devsite-search .devsite-searchbox:before{right:-6px}devsite-search[search-active]{overflow:visible}devsite-search[search-active] .devsite-searchbox:before{opacity:1}devsite-search[search-active] .devsite-searchbox:hover{background:#f1f3f4}.devsite-header-billboard-search devsite-search[search-active] .devsite-search-form,body[type=error] devsite-search[search-active] .devsite-search-form,devsite-header[search-expanded] .devsite-search-form{border-radius:0;border-radius:var(--devsite-search-border-radius,0);box-shadow:none;box-shadow:var(--devsite-search-active-box-shadow,none);overflow:visible;overflow:var(--devsite-search-active-overflow,visible)}.devsite-header-billboard-search devsite-search[search-active] .devsite-popout,body[type=error] devsite-search[search-active] .devsite-popout,devsite-header[search-expanded] devsite-search .devsite-popout{display:block;display:var(--devsite-popout-active-display,block)}.devsite-header-billboard-search devsite-search[search-active] .devsite-search-field,.devsite-header-billboard-search devsite-search[search-active] .devsite-search-field:hover,body[type=error] devsite-search[search-active] .devsite-search-field,body[type=error] devsite-search[search-active] .devsite-search-field:hover,devsite-header[search-expanded] devsite-search[search-active] .devsite-search-field,devsite-header[search-expanded] devsite-search[search-active] .devsite-search-field:hover{background:#f1f3f4;background:var(--devsite-search-form-background-active,#f1f3f4);color:#202124;color:var(--devsite-search-form-text-active,#202124)}devsite-search[search-active] .devsite-search-field{color:#202124}devsite-search[search-active] .devsite-search-field::-webkit-input-placeholder{color:#5f6368}devsite-search[search-active] .devsite-search-field::-moz-placeholder{color:#5f6368}devsite-search[search-active] .devsite-search-field:-ms-input-placeholder{color:#5f6368}devsite-search[search-active] .devsite-search-field::-ms-input-placeholder{color:#5f6368}devsite-search[search-active] .devsite-search-field::placeholder{color:#5f6368}devsite-search[search-active] .devsite-search-image{color:#5f6368}devsite-search .devsite-popout,devsite-search[search-active] .devsite-popout{display:block;display:var(--devsite-popout-display,block)}devsite-search .devsite-popout{margin-top:6px;margin-top:var(--devsite-popout-margin-top,6px);position:absolute;position:var(--devsite-popout-position,absolute);-webkit-transform:translateY(-100vh);transform:translateY(-100vh);-webkit-transform:var(--devsite-popout-transform,translateY(-100vh));transform:var(--devsite-popout-transform,translateY(-100vh));-webkit-transition:-webkit-transform .2s;transition:-webkit-transform .2s;transition:transform .2s;transition:transform .2s,-webkit-transform .2s;-webkit-transition:var(--devsite-popout-transition,transform .2s);transition:var(--devsite-popout-transition,transform .2s);z-index:-2;z-index:var(--devsite-popout-z-index,-2);visibility:hidden;width:100%}devsite-search[search-active] .devsite-popout{-webkit-transform:translateY(0);transform:translateY(0);-webkit-transition-delay:.2s;transition-delay:.2s;visibility:visible;will-change:transform}devsite-search .devsite-popout-result{box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 2px 6px 2px rgba(60,64,67,.15);box-shadow:var(--devsite-popout-box-shadow,0 1px 2px 0 rgba(60,64,67,.3),0 2px 6px 2px rgba(60,64,67,.15));background:#fff;max-height:calc(100vh - 56px);overflow-y:auto}devsite-search .devsite-popout-result:empty,devsite-search[search-active][no-suggest] .devsite-popout{display:none}devsite-search .devsite-suggest-wrapper{padding:16px 0 0;font-size:14px}devsite-search .devsite-result-item,devsite-search .devsite-result-label{font:13px/20px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;margin:0}devsite-search .devsite-result-label{padding-left:40px}[dir=rtl] devsite-search .devsite-result-label{padding-left:0;padding-right:40px}devsite-search .devsite-result-item a{color:#202124;display:block;outline:0;padding:8px;text-decoration:none;-webkit-transition:background .2s;transition:background .2s;will-change:transition}[dir=ltr] devsite-search .devsite-result-item a{padding-left:40px}[dir=rtl] devsite-search .devsite-result-item a{padding-right:40px}devsite-search .devsite-result-item.highlight a,devsite-search .devsite-result-item a:focus,devsite-search .devsite-result-item a:hover{background:#f1f3f4}devsite-search .devsite-result-item b{font-weight:500}devsite-search .devsite-suggest-footer{border-top:1px solid #dadce0;margin:8px 0 0;padding:7px 0 8px 40px}[dir=rtl] devsite-search .devsite-suggest-footer{padding:7px 40px 8px 0}devsite-search .devsite-suggest-footer>.button{display:inline-block;margin:6px 0;max-width:calc(100% - 16px)}[dir=ltr] devsite-search .devsite-suggest-footer>.button{margin-right:16px}[dir=rtl] devsite-search .devsite-suggest-footer>.button{margin-left:16px}devsite-search .devsite-suggest-footer>.button-white{max-width:100%}[dir=ltr] devsite-search .devsite-suggest-footer>.button-white{margin-left:-8px}[dir=rtl] devsite-search .devsite-suggest-footer>.button-white{margin-right:-8px}devsite-search .devsite-suggest-header{font:500 11px/16px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;letter-spacing:.8px;margin:12px 0;padding-left:40px;text-transform:uppercase}[dir=rtl] devsite-search .devsite-suggest-header{padding-left:0;padding-right:40px}devsite-search hr+.devsite-suggest-sub-section>.devsite-suggest-header{margin-top:24px}devsite-search .devsite-suggest-header .devsite-suggest-project:before{content:"|";margin:0 8px}devsite-search hr{background:#ddd;margin:8px 0}devsite-search .devsite-suggestion-fragment+.devsite-suggestion-fragment:before{content:"|";margin:0 8px}devsite-search .devsite-search-disabled{padding-bottom:16px}devsite-search[compact]{width:auto}devsite-search[compact] .devsite-search-field,devsite-search[compact] .devsite-searchbox{background-color:transparent}devsite-search[compact] input.devsite-search-field{width:0}devsite-search[compact] .devsite-search-image{left:calc(50% - 12px);pointer-events:none}[dir=ltr] devsite-search[compact][search-active] .devsite-search-image{left:8px;right:auto}[dir=rtl] devsite-search[compact][search-active] .devsite-search-image{right:8px;left:auto}devsite-search[compact][search-active] input.devsite-search-field{width:100%}@media screen and (max-width:840px){devsite-search input.devsite-search-field{padding-left:40px}[dir=rtl] devsite-search input.devsite-search-field{padding-left:0;padding-right:40px}.devsite-search-background,.devsite-search-background:after,[search-active] .devsite-search-background:after,devsite-search .devsite-search-field,devsite-search .devsite-search-field:hover{-webkit-transition:none;transition:none}devsite-search .devsite-search-image{left:8px}[dir=rtl] devsite-search .devsite-search-image{left:auto;right:8px}devsite-header devsite-search{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;margin-left:8px;overflow:visible}[dir=rtl] devsite-header devsite-search{margin-left:0;margin-right:8px}devsite-header devsite-search .devsite-search-form{-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1}devsite-header .devsite-top-logo-row devsite-search:not([search-active]) input.devsite-search-field{padding:0}}devsite-select{display:inline-block;position:relative}devsite-select+devsite-select{margin:0 0 0 16px}devsite-select select{display:none!important;pointer-events:none!important;position:absolute;z-index:-1}devsite-select .devsite-select{position:relative}devsite-select .devsite-select-toggle{-moz-appearance:none;-webkit-appearance:none;border:1px solid #e8eaed;border:var(--devsite-select-border,1px solid #e8eaed);border-radius:2px;border-radius:var(--devsite-select-border-radius,2px);box-shadow:none;color:#202124;cursor:pointer;display:inline-block;font:500 14px/36px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font:var(--devsite-select-font,500 14px/36px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif);height:36px;line-height:34px;max-width:340px;min-width:72px;outline:0;overflow:hidden;padding:0 27px 0 7px;padding:var(--devsite-select-padding,0 27px 0 7px);text-align:left;text-indent:.01px;text-overflow:ellipsis;-webkit-transition:background-color .2s;transition:background-color .2s;vertical-align:middle;white-space:nowrap}devsite-select .devsite-select-toggle:focus,devsite-select .devsite-select-toggle:hover{background-color:#f1f3f4}devsite-select .devsite-select-toggle:active{background-color:#e8eaed}devsite-select .devsite-select-toggle:disabled{background-color:#f1f3f4;border-color:transparent;color:#bdc1c6;cursor:default}devsite-select .devsite-select-toggle-icon{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;height:100%;position:absolute;top:0}[dir=ltr] devsite-select .devsite-select-toggle-icon{right:8px}[dir=rtl] devsite-select .devsite-select-toggle-icon{left:8px}devsite-select .devsite-select-toggle-icon:before{font-size:18px}devsite-select .devsite-select-list{border:1px solid #e8eaed;border:var(--devsite-list-border,1px solid #e8eaed);border-radius:2px;border-radius:var(--devsite-list-border-radius,2px);background:#fff;display:none;box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 2px 6px 2px rgba(60,64,67,.15);font:400 14px/20px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;max-height:304px;opacity:0;outline:0;overflow-y:auto;padding:8px 0;pointer-events:none;position:absolute;-webkit-transition:opacity .2s,visibility .2s;transition:opacity .2s,visibility .2s;z-index:1015}devsite-select[menu--open] .devsite-select-list{display:block;pointer-events:auto}devsite-select[menu--show] .devsite-select-list{opacity:1}devsite-select[menu-position=above] .devsite-select-list{bottom:36px}devsite-select[menu-position=below] .devsite-select-list{top:36px}devsite-select .devsite-select-item{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;margin:0;min-height:48px;min-width:100%;padding:8px 16px;white-space:nowrap}devsite-select .devsite-select-item.devsite-focused,devsite-select .devsite-select-item:focus,devsite-select .devsite-select-item:hover{background-color:#f1f3f4;cursor:pointer}devsite-select .devsite-select-item[data-selected]{background-color:#f1f3f4;background-color:var(--devsite-item-background-selected,#f1f3f4);font-weight:500;font-weight:var(--devsite-item-font-weight-selected,500)}@media screen and (-ms-high-contrast:active){devsite-select .devsite-select-item[data-selected]{font-weight:700;text-decoration:underline}}devsite-select.devsite-select--multiple .devsite-select-item{padding-left:48px;position:relative}devsite-select.devsite-select--multiple .devsite-select-item:before{font:normal normal normal 24px/1 Material Icons;-webkit-font-feature-settings:"liga";-moz-font-feature-settings:"liga";font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal;color:#80868b;content:"check_box_outline_blank";display:block;font-size:24px;left:16px;position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}devsite-select.devsite-select--multiple .devsite-select-item[data-selected]:before{color:#1976d2;content:"check_box"}@media screen and (max-width:600px){devsite-select{display:block}devsite-select+devsite-select{margin:16px 0 0}}devsite-selector{border:1px solid #e8eaed;border:var(--devsite-border,1px solid #e8eaed);border-radius:0;border-radius:var(--devsite-border-radius,0);background:#fff;display:block;font:14px/20px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;margin:16px 0}devsite-selector devsite-tabs{display:none}devsite-selector devsite-tabs[connected]{border-bottom:1px solid #e8eaed;border-bottom:var(--devsite-border,1px solid #e8eaed);display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}devsite-selector devsite-tabs tab a{cursor:pointer;display:inline-block;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;line-height:48px;margin:0;max-width:200px;overflow:hidden;text-align:center;text-overflow:ellipsis;-webkit-transition:color .2s;transition:color .2s;white-space:nowrap}devsite-selector devsite-tabs tab a,devsite-selector devsite-tabs tab a:link,devsite-selector devsite-tabs tab a:visited{color:#5f6368}devsite-selector devsite-tabs tab a:focus,devsite-selector devsite-tabs tab a:hover{color:#1a73e8;color:var(--devsite-link-hover,#1a73e8)}@media screen and (-ms-high-contrast:active){devsite-selector devsite-tabs tab[active] a{font-weight:700;text-decoration:underline}}devsite-selector devsite-tabs tab[active] a:link,devsite-selector devsite-tabs tab[active] a:visited{color:#1a73e8}devsite-selector devsite-tabs>div>tab[tab] a:focus:after,devsite-selector devsite-tabs>div>tab[tab] a:hover:after{background:0;background:var(--devsite-marker-background,0)}devsite-selector devsite-tabs>div>tab[active] a:after,devsite-selector devsite-tabs>div>tab[active] a:focus:after,devsite-selector devsite-tabs>div>tab[active] a:hover:after{background:#1a73e8}devsite-selector devsite-tabs tab[two-line] a{line-height:20px;padding-top:4px;white-space:normal}devsite-selector tab[two-line] [tab-label]:after{content:attr(tab-label);display:block;font-size:12px}body devsite-selector devsite-tabs tab[overflow-tab] .devsite-tabs-overflow-menu tab a{height:auto;min-height:48px;width:100%}devsite-selector devsite-tabs[overflow-menu--open] tab[overflow-tab]{background:0;background:var(--devsite-overflow-tab-background,0);border-radius:0;border-radius:var(--devsite-overflow-tab-border-radius,0)}body devsite-selector devsite-tabs tab[overflow-tab] .devsite-tabs-overflow-menu tab a:focus,body devsite-selector devsite-tabs tab[overflow-tab] .devsite-tabs-overflow-menu tab a:hover{background:#f1f3f4;background:var(--devsite-overflow-link-background-hover,#f1f3f4)}devsite-selector>section{display:none;outline:0}devsite-selector>section[active]{display:block;padding:0 23px}devsite-selector>section .devsite-table-wrapper:first-child tbody tr:first-child,devsite-selector>section .devsite-table-wrapper:first-child thead tr{border-top:0}devsite-selector>section>.devsite-table-wrapper,devsite-selector>section>.github-docwidget-gitinclude-code>devsite-code,devsite-selector>section>.github-docwidget-include,devsite-selector>section>aside.beta,devsite-selector>section>aside.caution,devsite-selector>section>aside.dogfood,devsite-selector>section>aside.key-objective,devsite-selector>section>aside.key-point,devsite-selector>section>aside.key-term,devsite-selector>section>aside.note,devsite-selector>section>aside.success,devsite-selector>section>aside.warning,devsite-selector>section>devsite-code,devsite-selector>section>table{margin:0 -23px}devsite-selector>section>:first-child:not(aside):not(devsite-code):not(table):not(.devsite-table-wrapper):not([class^=github-]){margin-top:15px}devsite-selector>section>:last-child:not(aside):not(devsite-code):not(table):not(.devsite-table-wrapper):not([class^=github-]){margin-bottom:15px}devsite-selector .devsite-table-wrapper:last-child,devsite-selector>section>.github-docwidget-gitinclude-code>devsite-code:last-child>pre,devsite-selector>section>aside:last-child,devsite-selector>section>devsite-code:last-child>pre{border-radius:0;border-radius:var(--devsite-content-border-radius,0)}devsite-selector .devsite-table-wrapper+.devsite-table-wrapper{margin-top:16px}devsite-selector>section table devsite-code{margin:16px 0}devsite-selector>section>devsite-code pre{padding-left:23px}.devsite-article devsite-selector .material-icons{font-size:18px;vertical-align:text-bottom}devsite-selector[ready]{pointer-events:auto;visibility:visible}devsite-shell-activate-button{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;height:100%;-webkit-justify-content:space-around;-ms-flex-pack:distribute;justify-content:space-around}devsite-shell-activate-button button{border:none;color:#5f6368;height:auto;margin:0 0 0 11px;min-width:0;padding:9px 13px;width:auto}devsite-shell-activate-button button:active{background:#e8eaed;border:none}devsite-shell-activate-button button:focus{background:none;border:none;color:#5f6368}devsite-shell-activate-button button:hover{background:#e8eaed;border:none;color:#5f6368}devsite-shell-activate-button button[disabled]{border:none}devsite-shell-activate-button button svg{display:block;margin:auto}devsite-sitemask{background:rgba(0,0,0,.4);bottom:-200px;cursor:pointer;left:-200px;opacity:0;pointer-events:none;position:fixed;right:-200px;top:-200px;-webkit-transition:opacity .2s cubic-bezier(.4,0,.2,1),visibility .2s linear;transition:opacity .2s cubic-bezier(.4,0,.2,1),visibility .2s linear;visibility:hidden;z-index:1012;-webkit-tap-highlight-color:transparent}devsite-sitemask[visible]{opacity:1;pointer-events:auto;-webkit-transition:opacity .2s ease;transition:opacity .2s ease;visibility:visible}devsite-snackbar{bottom:0;left:0;margin-right:24px;min-width:288px;position:fixed;right:0;z-index:99999}devsite-snackbar .devsite-snackbar-snack{max-width:none;max-width:var(--devsite-snack-max-width,none);min-width:auto;min-width:var(--devsite-snack-min-width,auto);width:auto;width:var(--devsite-snack-width,auto);bottom:0;-moz-box-sizing:border-box;box-sizing:border-box;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding:0 0 24px 24px;position:absolute;-webkit-transform:translateY(100px);transform:translateY(100px);-webkit-transition:-webkit-transform .2s cubic-bezier(.4,0,1,1);transition:-webkit-transform .2s cubic-bezier(.4,0,1,1);transition:transform .2s cubic-bezier(.4,0,1,1);transition:transform .2s cubic-bezier(.4,0,1,1),-webkit-transform .2s cubic-bezier(.4,0,1,1)}devsite-snackbar [show].devsite-snackbar-snack{-webkit-transform:translateY(0);transform:translateY(0)}devsite-snackbar .devsite-snackbar-inner{background:#3c4043;background:var(--devsite-snackbar-inner-background,#3c4043);border-radius:2px;border-radius:var(--devsite-snackbar-inner-border-radius,2px);color:#fff;color:var(--devsite-snackbar-inner-color,#fff);-webkit-flex-wrap:none;-ms-flex-wrap:none;flex-wrap:none;-webkit-flex-wrap:var(--devsite-snackbar-inner-flex-wrap,none);-ms-flex-wrap:var(--devsite-snackbar-inner-flex-wrap,none);flex-wrap:var(--devsite-snackbar-inner-flex-wrap,none);box-shadow:0 1px 3px 0 rgba(60,64,67,.3),0 4px 8px 3px rgba(60,64,67,.15);-webkit-align-content:center;-ms-flex-line-pack:center;align-content:center;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-moz-box-orient:horizontal;-moz-box-direction:normal;-ms-flex-direction:row;flex-direction:row;font-size:14px;min-height:48px;padding:0}devsite-snackbar .devsite-snackbar-message{-webkit-box-flex:1;-webkit-flex:1 1;-moz-box-flex:1;-ms-flex:1 1;flex:1 1;-webkit-box-flex:var(--devsite-snackbar-message-flex,1 1);-webkit-flex:var(--devsite-snackbar-message-flex,1 1);-moz-box-flex:var(--devsite-snackbar-message-flex,1 1);-ms-flex:var(--devsite-snackbar-message-flex,1 1);flex:var(--devsite-snackbar-message-flex,1 1);padding:24px;padding:var(--devsite-snackbar-message-padding,24px);line-height:normal;overflow:hidden;text-overflow:ellipsis;word-break:break-word}devsite-snackbar .devsite-snackbar-message a{color:#669df6;color:var(--devsite-snackbar-link-color,#669df6)}devsite-snackbar .devsite-snackbar-action,devsite-snackbar .devsite-snackbar-link{color:#eeff41;color:var(--devsite-snackbar-link-color,#eeff41);font:inherit;font:var(--devsite-snackbar-action-font,inherit);margin-right:0;margin-right:var(--devsite-snackbar-action-margin-right,0);padding:14px 24px;padding:var(--devsite-snackbar-action-padding,14px 24px);-webkit-align-self:center;-ms-flex-item-align:center;align-self:center;cursor:pointer;display:inline-block;-webkit-box-flex:0;-webkit-flex-grow:0;-moz-box-flex:0;-ms-flex-positive:0;flex-grow:0;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;float:right;font-weight:500;height:auto;outline:none;position:relative}devsite-snackbar .devsite-snackbar-action,devsite-snackbar .devsite-snackbar-action:active,devsite-snackbar .devsite-snackbar-action:focus,devsite-snackbar .devsite-snackbar-action:hover,devsite-snackbar .devsite-snackbar-link,devsite-snackbar .devsite-snackbar-link:active,devsite-snackbar .devsite-snackbar-link:focus,devsite-snackbar .devsite-snackbar-link:hover{background:0;border:0;box-shadow:none}devsite-snackbar .devsite-snackbar-link:focus{text-decoration:none}devsite-snackbar [type=cookie-notification] .devsite-snackbar-link,devsite-snackbar [type^=notification-] .devsite-snackbar-action{margin-left:0;margin-left:var(--devsite-snackbar-action-margin-left,0)}@media screen and (max-width:840px){devsite-snackbar{margin-right:0;max-width:100%}devsite-snackbar [type=cookie-notification] .devsite-snackbar-inner,devsite-snackbar [type^=notification-] .devsite-snackbar-inner{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}devsite-snackbar [type=cookie-notification] .devsite-snackbar-message,devsite-snackbar [type^=notification-] .devsite-snackbar-message{padding:24px 24px 0;padding:var(--devsite-snackbar-message-padding,24px 24px 0);-webkit-box-flex:0;-webkit-flex:0 0 100%;-moz-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%}devsite-snackbar .devsite-snackbar-inner{border-radius:0}devsite-snackbar .devsite-snackbar-snack{left:0;padding:24px 0 0;right:0}}devsite-spinner{-webkit-animation:devsite-spinner__container-rotate 1.56823529412s linear infinite;animation:devsite-spinner__container-rotate 1.56823529412s linear infinite;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;height:28px;position:relative;width:28px}devsite-spinner[centered]{margin:0 auto}@-webkit-keyframes devsite-spinner__container-rotate{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes devsite-spinner__container-rotate{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}devsite-spinner .devsite-spinner__layer{height:100%;opacity:0;position:absolute;width:100%}devsite-spinner .devsite-spinner__layer-1{-webkit-animation:devsite-spinner__fill-unfill-rotate 5332ms cubic-bezier(.4,0,.2,1) infinite both,devsite-spinner__layer-1-fade-in-out 5332ms cubic-bezier(.4,0,.2,1) infinite both;animation:devsite-spinner__fill-unfill-rotate 5332ms cubic-bezier(.4,0,.2,1) infinite both,devsite-spinner__layer-1-fade-in-out 5332ms cubic-bezier(.4,0,.2,1) infinite both;border-color:#42a5f5}devsite-spinner[single-color] .devsite-spinner__layer-1{border-color:#3f51b5}devsite-spinner .devsite-spinner__layer-2{-webkit-animation:devsite-spinner__fill-unfill-rotate 5332ms cubic-bezier(.4,0,.2,1) infinite both,devsite-spinner__layer-2-fade-in-out 5332ms cubic-bezier(.4,0,.2,1) infinite both;animation:devsite-spinner__fill-unfill-rotate 5332ms cubic-bezier(.4,0,.2,1) infinite both,devsite-spinner__layer-2-fade-in-out 5332ms cubic-bezier(.4,0,.2,1) infinite both;border-color:#f44336}devsite-spinner[single-color] .devsite-spinner__layer-2{border-color:#3f51b5}devsite-spinner .devsite-spinner__layer-3{-webkit-animation:devsite-spinner__fill-unfill-rotate 5332ms cubic-bezier(.4,0,.2,1) infinite both,devsite-spinner__layer-3-fade-in-out 5332ms cubic-bezier(.4,0,.2,1) infinite both;animation:devsite-spinner__fill-unfill-rotate 5332ms cubic-bezier(.4,0,.2,1) infinite both,devsite-spinner__layer-3-fade-in-out 5332ms cubic-bezier(.4,0,.2,1) infinite both;border-color:#fdd835}devsite-spinner[single-color] .devsite-spinner__layer-3{border-color:#3f51b5}devsite-spinner .devsite-spinner__layer-4{-webkit-animation:devsite-spinner__fill-unfill-rotate 5332ms cubic-bezier(.4,0,.2,1) infinite both,devsite-spinner__layer-4-fade-in-out 5332ms cubic-bezier(.4,0,.2,1) infinite both;animation:devsite-spinner__fill-unfill-rotate 5332ms cubic-bezier(.4,0,.2,1) infinite both,devsite-spinner__layer-4-fade-in-out 5332ms cubic-bezier(.4,0,.2,1) infinite both;border-color:#4caf50}devsite-spinner[single-color] .devsite-spinner__layer-4{border-color:#3f51b5}@-webkit-keyframes devsite-spinner__fill-unfill-rotate{12.5%{-webkit-transform:rotate(135deg);transform:rotate(135deg)}25%{-webkit-transform:rotate(270deg);transform:rotate(270deg)}37.5%{-webkit-transform:rotate(405deg);transform:rotate(405deg)}50%{-webkit-transform:rotate(540deg);transform:rotate(540deg)}62.5%{-webkit-transform:rotate(675deg);transform:rotate(675deg)}75%{-webkit-transform:rotate(810deg);transform:rotate(810deg)}87.5%{-webkit-transform:rotate(945deg);transform:rotate(945deg)}to{-webkit-transform:rotate(3turn);transform:rotate(3turn)}}@keyframes devsite-spinner__fill-unfill-rotate{12.5%{-webkit-transform:rotate(135deg);transform:rotate(135deg)}25%{-webkit-transform:rotate(270deg);transform:rotate(270deg)}37.5%{-webkit-transform:rotate(405deg);transform:rotate(405deg)}50%{-webkit-transform:rotate(540deg);transform:rotate(540deg)}62.5%{-webkit-transform:rotate(675deg);transform:rotate(675deg)}75%{-webkit-transform:rotate(810deg);transform:rotate(810deg)}87.5%{-webkit-transform:rotate(945deg);transform:rotate(945deg)}to{-webkit-transform:rotate(3turn);transform:rotate(3turn)}}@-webkit-keyframes devsite-spinner__layer-1-fade-in-out{0%,25%,90%,to{opacity:.99}26%,89%{opacity:0}}@keyframes devsite-spinner__layer-1-fade-in-out{0%,25%,90%,to{opacity:.99}26%,89%{opacity:0}}@-webkit-keyframes devsite-spinner__layer-2-fade-in-out{0%,15%,51%{opacity:0}25%,50%{opacity:.99}}@keyframes devsite-spinner__layer-2-fade-in-out{0%,15%,51%{opacity:0}25%,50%{opacity:.99}}@-webkit-keyframes devsite-spinner__layer-3-fade-in-out{0%,40%,76%{opacity:0}50%,75%{opacity:.99}}@keyframes devsite-spinner__layer-3-fade-in-out{0%,40%,76%{opacity:0}50%,75%{opacity:.99}}@-webkit-keyframes devsite-spinner__layer-4-fade-in-out{0%,65%,to{opacity:0}75%,90%{opacity:.99}}@keyframes devsite-spinner__layer-4-fade-in-out{0%,65%,to{opacity:0}75%,90%{opacity:.99}}devsite-spinner .devsite-spinner__gap-patch{border-color:inherit;-moz-box-sizing:border-box;box-sizing:border-box;height:100%;left:45%;overflow:hidden;position:absolute;top:0;width:10%}devsite-spinner .devsite-spinner__gap-patch .devsite-spinner__circle{left:-450%;width:1000%}devsite-spinner .devsite-spinner__circle-clipper{border-color:inherit;display:inline-block;height:100%;overflow:hidden;position:relative;width:50%}devsite-spinner .devsite-spinner__circle-clipper.devsite-spinner__left{float:left}devsite-spinner .devsite-spinner__circle-clipper.devsite-spinner__right{float:right}devsite-spinner .devsite-spinner__circle-clipper .devsite-spinner__circle{width:200%}devsite-spinner .devsite-spinner__circle{-webkit-animation:none;animation:none;border:3px solid;border-color:inherit;border-bottom-color:transparent!important;border-radius:50%;bottom:0;-moz-box-sizing:border-box;box-sizing:border-box;height:100%;left:0;position:absolute;right:0;top:0}devsite-spinner .devsite-spinner__left .devsite-spinner__circle{-webkit-animation:devsite-spinner__left-spin 1333ms cubic-bezier(.4,0,.2,1) infinite both;animation:devsite-spinner__left-spin 1333ms cubic-bezier(.4,0,.2,1) infinite both;border-right-color:transparent!important;-webkit-transform:rotate(129deg);transform:rotate(129deg)}devsite-spinner .devsite-spinner__right .devsite-spinner__circle{-webkit-animation:devsite-spinner__right-spin 1333ms cubic-bezier(.4,0,.2,1) infinite both;animation:devsite-spinner__right-spin 1333ms cubic-bezier(.4,0,.2,1) infinite both;border-left-color:transparent!important;left:-100%;-webkit-transform:rotate(-129deg);transform:rotate(-129deg)}@-webkit-keyframes devsite-spinner__left-spin{0%,to{-webkit-transform:rotate(130deg);transform:rotate(130deg)}50%{-webkit-transform:rotate(-5deg);transform:rotate(-5deg)}}@keyframes devsite-spinner__left-spin{0%,to{-webkit-transform:rotate(130deg);transform:rotate(130deg)}50%{-webkit-transform:rotate(-5deg);transform:rotate(-5deg)}}@-webkit-keyframes devsite-spinner__right-spin{0%,to{-webkit-transform:rotate(-130deg);transform:rotate(-130deg)}50%{-webkit-transform:rotate(5deg);transform:rotate(5deg)}}@keyframes devsite-spinner__right-spin{0%,to{-webkit-transform:rotate(-130deg);transform:rotate(-130deg)}50%{-webkit-transform:rotate(5deg);transform:rotate(5deg)}}devsite-spinner.devsite-send-spinner{margin-left:78px}#devsite-support-form-button-wrapper{height:36px}.devsite-support-projects{position:relative}.devsite-support-projects .devsite-support-projects-placeholder{height:36px;position:absolute}devsite-tabs{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1;height:48px;max-width:calc(100% - 208px);position:relative}devsite-tabs[connected]{max-width:none}devsite-tabs .devsite-tabs-wrapper{bottom:0;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;left:0;overflow:hidden;position:absolute;right:0;top:0}[dir=ltr] devsite-tabs.lower-tabs .devsite-tabs-wrapper{left:0;left:var(--devsite-tabs-wrapper-x,0)}[dir=rtl] devsite-tabs.lower-tabs .devsite-tabs-wrapper{right:0;right:var(--devsite-tabs-wrapper-x,0)}devsite-tabs[no-overflow] .devsite-tabs-wrapper{overflow:auto}devsite-tabs[dropdown--open] .devsite-tabs-wrapper,devsite-tabs[overflow-menu--open] .devsite-tabs-wrapper{overflow:visible}devsite-tabs tab{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;position:relative}devsite-tabs tab,devsite-tabs tab>a{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}devsite-tabs tab>a{font:500 14px/20px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font:var(--devsite-link-font,500 14px/20px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif);letter-spacing:normal;letter-spacing:var(--devsite-link-letter-spacing,normal);padding:0 24px;padding:var(--devsite-link-padding,0 24px);text-transform:uppercase;text-transform:var(--devsite-link-text-transform,uppercase);-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;margin:0;-webkit-transition:color .2s;transition:color .2s;white-space:nowrap}devsite-tabs tab>a,devsite-tabs tab>a:focus,devsite-tabs tab>a:hover{text-decoration:none}devsite-tabs.upper-tabs tab a{font-weight:400;font-weight:var(--devsite-upper-tab-font-weight,400);text-transform:none}devsite-tabs.upper-tabs tab>a{color:#5f6368;color:var(--devsite-upper-tab-inactive,#5f6368)}devsite-tabs.upper-tabs tab[active]>a{font-weight:500}@media screen and (-ms-high-contrast:active){devsite-tabs.upper-tabs tab[active]>a{font-weight:700;text-decoration:underline}}devsite-tabs.upper-tabs>.devsite-tabs-wrapper>tab[active]>a{color:#202124;color:var(--devsite-upper-tab-active,#202124)}devsite-tabs.upper-tabs>.devsite-tabs-wrapper>tab[active]>a:focus{color:#5f6368;color:var(--devsite-upper-tab-active-focus,#5f6368)}devsite-tabs.upper-tabs>.devsite-tabs-wrapper>tab[active]>a:after{background:#202124;background:var(--devsite-upper-tab-border,var(--devsite-secondary-color,#202124))}devsite-tabs tab>a:focus:after,devsite-tabs tab>a:hover:after,devsite-tabs tab[active]>a:after{border-radius:0;border-radius:var(--devsite-tab-marker-border-radius,0);height:2px;height:var(--devsite-tab-marker-height,2px);left:0;left:var(--devsite-tab-marker-position-x,0);right:0;right:var(--devsite-tab-marker-position-x,0);bottom:0;content:"";display:block;position:absolute}devsite-tabs tab[dropdown]>a{padding:0;position:relative;z-index:2}[dir=ltr] devsite-tabs tab[dropdown]>a{padding-left:24px;padding-left:var(--devsite-dropdown-tab-padding-x,24px)}[dir=rtl] devsite-tabs tab[dropdown]>a{padding-right:24px;padding-right:var(--devsite-dropdown-tab-padding-x,24px)}[dir=ltr] devsite-tabs tab[active][dropdown] a:not(.devsite-tabs-dropdown-toggle):after,[dir=ltr] devsite-tabs tab[dropdown] a:not(.devsite-tabs-dropdown-toggle):focus:after,[dir=ltr] devsite-tabs tab[dropdown] a:not(.devsite-tabs-dropdown-toggle):hover:after{right:0;right:var(--devsite-tab-marker-inset-x,0)}[dir=rtl] devsite-tabs tab[active][dropdown] a:not(.devsite-tabs-dropdown-toggle):after,[dir=rtl] devsite-tabs tab[dropdown] a:not(.devsite-tabs-dropdown-toggle):focus:after,[dir=rtl] devsite-tabs tab[dropdown] a:not(.devsite-tabs-dropdown-toggle):hover:after{left:0;left:var(--devsite-tab-marker-inset-x,0)}devsite-tabs.upper-tabs tab[dropdown] .devsite-tabs-dropdown a,devsite-tabs.upper-tabs tab[dropdown] .devsite-tabs-dropdown a:visited{color:#202124;color:var(--devsite-upper-tab-dropdown-link,#202124)}devsite-tabs.upper-tabs tab[dropdown] .devsite-tabs-dropdown a:focus,devsite-tabs.upper-tabs tab[dropdown] .devsite-tabs-dropdown a:hover{color:#5f6368;color:var(--devsite-upper-tab-dropdown-link-hover,#5f6368)}devsite-tabs.upper-tabs tab[dropdown] .devsite-tabs-dropdown a:focus .devsite-nav-item-title,devsite-tabs.upper-tabs tab[dropdown] .devsite-tabs-dropdown a:hover .devsite-nav-item-title{text-decoration:none;-webkit-text-decoration:var(--devsite-nav-item-title-text-decoration-hover,none);-moz-text-decoration:var(--devsite-nav-item-title-text-decoration-hover,none);text-decoration:var(--devsite-nav-item-title-text-decoration-hover,none)}devsite-tabs .devsite-tabs-dropdown-content{border-top:0;border-top:var(--devsite-header-border,0)}devsite-tabs.upper-tabs tab[dropdown] .devsite-tabs-dropdown-content,devsite-tabs.upper-tabs tab[overflow-tab] .devsite-tabs-overflow-menu{border-radius:0;border-radius:var(--devsite-upper-tab-dropdown-corner-radius,0)}devsite-tabs.upper-tabs tab[dropdown] .devsite-tabs-dropdown-toggle:before,devsite-tabs.upper-tabs tab[overflow-tab] .devsite-icon-arrow-drop-down:before{color:#5f6368;color:var(--devsite-upper-tab-dropdown-inactive,var(--devsite-upper-tab-inactive,#5f6368))}devsite-tabs.upper-tabs tab[active][dropdown] .devsite-tabs-dropdown-toggle:before{color:#202124;color:var(--devsite-upper-tab-dropdown-active,var(--devsite-upper-tab-active,#202124))}devsite-tabs.upper-tabs tab[dropdown] .devsite-nav-item-description{color:#5f6368;color:var(--devsite-upper-tab-dropdown-description,#5f6368)}devsite-tabs tab[dropdown] .devsite-tabs-dropdown-toggle{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;cursor:pointer;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}[dir] devsite-tabs tab[dropdown] .devsite-tabs-dropdown-toggle{padding:0}[dir=ltr] devsite-tabs tab[dropdown] .devsite-tabs-dropdown-toggle{padding-right:0;padding-right:var(--devsite-dropdown-toggle-padding-x,0)}[dir=rtl] devsite-tabs tab[dropdown] .devsite-tabs-dropdown-toggle{padding-left:0;padding-left:var(--devsite-dropdown-toggle-padding-x,0)}devsite-tabs.upper-tabs .devsite-icon-arrow-drop-down:before,devsite-tabs tab[dropdown] .devsite-tabs-dropdown-toggle:before{-webkit-transform:rotate(0deg);transform:rotate(0deg);-webkit-transition:color .2s,-webkit-transform .2s;transition:color .2s,-webkit-transform .2s;transition:color .2s,transform .2s;transition:color .2s,transform .2s,-webkit-transform .2s}devsite-tabs.upper-tabs[overflow-menu--open] tab:hover .devsite-icon-arrow-drop-down:before,devsite-tabs tab[dropdown--open] .devsite-tabs-dropdown-toggle:before{-webkit-transform:rotate(-180deg);transform:rotate(-180deg)}devsite-tabs tab[overflow-tab]{-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1;position:relative}devsite-tabs tab[overflow-tab][collapsed]{-webkit-box-flex:0;-webkit-flex-grow:0;-moz-box-flex:0;-ms-flex-positive:0;flex-grow:0}devsite-tabs.upper-tabs tab[overflow-tab]:after{content:"";height:48px;position:absolute;z-index:-1}[dir=ltr] devsite-tabs.upper-tabs tab[overflow-tab]:after{left:-6px;right:-100%}[dir=rtl] devsite-tabs.upper-tabs tab[overflow-tab]:after{left:-100%;right:-6px}devsite-tabs tab[overflow-tab] tab>a{padding:0 24px;padding:var(--devsite-overflow-tab-padding,0 24px)}devsite-tabs tab[overflow-tab] a{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-moz-box-orient:horizontal;-moz-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;position:relative}devsite-tabs tab[overflow-tab] tab .devsite-tabs-dropdown,devsite-tabs tab[overflow-tab] tab .devsite-tabs-dropdown-toggle{display:none}devsite-tabs tab[overflow-tab] .devsite-tabs-overflow-menu{box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 2px 6px 2px rgba(60,64,67,.15);border-radius:2px;border-radius:var(--devsite-overflow-menu-border-radius,2px);top:-16px;top:var(--devsite-overflow-menu-top,-16px);background:#fff;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-height:320px;overflow-y:auto;padding:16px 0;position:absolute;z-index:1005}devsite-tabs.upper-tabs tab[overflow-tab] .devsite-tabs-overflow-menu{border-radius:0 0 2px 2px;box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 2px 6px 2px rgba(60,64,67,.15),inset 0 4px 6px -4px rgba(154,160,166,.5);top:48px;-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-transition:-webkit-transform .2s;transition:-webkit-transform .2s;transition:transform .2s;transition:transform .2s,-webkit-transform .2s;z-index:-1}devsite-tabs.upper-tabs .devsite-tabs-overflow-menu .devsite-tabs-dropdown-toggle{display:none!important}devsite-tabs.upper-tabs tab[overflow-tab] .devsite-tabs-overflow-menu[hidden]{display:block!important;pointer-events:none;-webkit-transform:translate3d(0,-150%,0);transform:translate3d(0,-150%,0)}body devsite-tabs tab[overflow-tab] .devsite-tabs-overflow-menu tab a{background:#fff;color:#5f6368;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-moz-box-orient:horizontal;-moz-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1;height:48px}body devsite-tabs tab[overflow-tab] .devsite-tabs-overflow-menu tab a:focus,body devsite-tabs tab[overflow-tab] .devsite-tabs-overflow-menu tab a:hover{background:#f1f3f4;color:#202124}devsite-tabs .devsite-tabs-dropdown{display:block;font-size:13px;left:-6px;min-width:calc(100% + 12px);outline:0;overflow:hidden;padding:0 6px 6px;pointer-events:none;position:absolute;top:100%;z-index:-1}[dir=rtl] devsite-tabs .devsite-tabs-dropdown{right:-6px;left:auto}devsite-tabs [dropdown-full] .devsite-tabs-dropdown{left:0;padding:0 0 6px;width:100vw}devsite-tabs .devsite-tabs-dropdown-content{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;display:var(--devsite-dropdown-content-display,flex);grid-template-columns:none;grid-template-columns:var(--devsite-dropdown-content-grid-template-columns,none);grid-template-rows:none;grid-template-rows:var(--devsite-dropdown-content-grid-template-rows,none);padding:0 12px;padding:var(--devsite-dropdown-content-padding,0 12px);background-color:#fff;box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 2px 6px 2px rgba(60,64,67,.15),inset 0 4px 6px -4px rgba(154,160,166,.5);overflow:auto;max-height:600px;max-width:100vw;pointer-events:none;-webkit-transform:translate3d(0,-150%,0);transform:translate3d(0,-150%,0);-webkit-transition:-webkit-transform 0s;transition:-webkit-transform 0s;transition:transform 0s;transition:transform 0s,-webkit-transform 0s;white-space:nowrap}devsite-tabs .devsite-tabs-dropdown[dropdown-transition] .devsite-tabs-dropdown-content{-webkit-transition:-webkit-transform .5s;transition:-webkit-transform .5s;transition:transform .5s;transition:transform .5s,-webkit-transform .5s}devsite-tabs tab[dropdown--open] .devsite-tabs-dropdown-content{pointer-events:all;-webkit-transform:translateZ(0);transform:translateZ(0)}devsite-tabs .devsite-tabs-dropdown-column{background:none;background:var(--devsite-dropdown-column-background,none);-moz-box-sizing:inherit;box-sizing:inherit;-moz-box-sizing:var(--devsite-dropdown-column-box-sizing,inherit);box-sizing:var(--devsite-dropdown-column-box-sizing,inherit);border-top:0;border-top:var(--devsite-dropdown-column-border-top,0);margin:0;margin:var(--devsite-dropdown-column-margin,0);max-width:none;max-width:var(--devsite-dropdown-column-max-width,none);padding:0;padding:var(--devsite-dropdown-column-padding,0)}devsite-tabs [dropdown-full] .devsite-tabs-dropdown-column{grid-row:auto;grid-row:var(--devsite-dropdown-column-grid-row,auto);-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;-ms-flex:1;flex:1;min-width:0}devsite-tabs .devsite-tabs-dropdown-section{margin:0;margin:var(--devsite-dropdown-section-margin,0);padding:0 12px;padding:var(--devsite-dropdown-section-padding,0 12px);list-style:none}devsite-tabs .devsite-tabs-dropdown-section:first-child{margin:18px 0 0;margin:var(--devsite-dropdown-first-section-margin,18px 0 0)}devsite-tabs .devsite-tabs-dropdown-section:not(:first-child){margin-top:54px}devsite-tabs tab[dropdown] .devsite-nav-item,devsite-tabs tab[dropdown] .devsite-nav-title{margin:0 0 18px;margin:var(--devsite-nav-text-margin,0 0 18px);line-height:18px}devsite-tabs tab[dropdown] .devsite-nav-title{border-bottom:0;border-bottom:var(--devsite-nav-title-border-bottom,0);color:#5f6368;color:var(--devsite-nav-title-color,#5f6368);font:inherit;font:var(--devsite-nav-title-font,inherit);font-weight:700;font-weight:var(--devsite-nav-title-font-weight,700);padding:0;padding:var(--devsite-nav-title-padding,0);text-transform:none;text-transform:var(--devsite-nav-title-transform,none);outline:none}devsite-tabs tab[dropdown] .devsite-nav-item-title{display:block;display:var(--devsite-nav-item-title-display,block);font:inherit;font:var(--devsite-nav-item-title-font,inherit);letter-spacing:normal;letter-spacing:var(--devsite-nav-item-title-letter-spacing,normal);line-height:inherit;line-height:var(--devsite-nav-item-title-line-height,inherit);margin:0;margin:var(--devsite-nav-item-title-margin,0)}devsite-tabs [dropdown-full] .devsite-nav-item>a,devsite-tabs [dropdown-full] .devsite-nav-title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:normal}devsite-tabs tab[dropdown] .devsite-nav-description,devsite-tabs tab[dropdown] .devsite-nav-item-description{font-size:inherit;font-size:var(--devsite-nav-description-font-size,inherit);line-height:inherit;line-height:var(--devsite-nav-description-line-height,inherit)}devsite-tabs tab[dropdown] .devsite-nav-description{color:inherit;color:var(--devsite-nav-description-color,inherit);margin:12px 0;margin:var(--devsite-nav-description-margin,12px 0);white-space:inherit;white-space:var(--devsite-nav-description-white-space,inherit)}devsite-tabs tab[dropdown] .devsite-nav-item-description{padding:0;padding:var(--devsite-padding,0);color:#5f6368;white-space:normal}body[theme] devsite-tabs .devsite-tabs-dropdown a,body[theme] devsite-tabs .devsite-tabs-dropdown a:visited{display:block;display:var(--devsite-dropdown-link-display,block);color:#202124;font-weight:400}body[theme] devsite-tabs .devsite-tabs-dropdown a:focus,body[theme] devsite-tabs .devsite-tabs-dropdown a:hover{color:#1a73e8}devsite-tabs[render-hidden]{width:100%}devsite-tabs[render-hidden] tab[overflow-tab],devsite-tabs tab[overflow-tab][render-hidden]{-webkit-box-flex:0;-webkit-flex:none;-moz-box-flex:0;-ms-flex:none;flex:none}devsite-tabs tab[dropdown] .devsite-tabs-close-button{color:#202124;cursor:pointer;position:absolute;right:24px;top:24px;visibility:hidden;z-index:1}devsite-tabs tab[dropdown] .devsite-tabs-close-button:focus,devsite-tabs tab[dropdown] .devsite-tabs-close-button:hover{color:#1a73e8}devsite-tabs tab[dropdown--open] .devsite-tabs-close-button{visibility:visible}devsite-thumb-rating{display:block}devsite-thumb-rating[position=header] .devsite-thumb-rating{margin:-14px 0 -12px}devsite-thumb-rating[position=footer]{text-align:center}devsite-thumb-rating .devsite-thumb-rating{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;border-radius:4px;display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;padding:3px}devsite-thumb-rating .devsite-thumb-rating[tabindex]{border:1px solid #dadce0}devsite-thumb-rating .devsite-thumb{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;border:0;border-radius:50%;box-shadow:none;cursor:pointer;display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;fill:#5f6368;height:40px;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;min-width:40px;padding:0;width:40px}devsite-thumb-rating .devsite-thumb:focus,devsite-thumb-rating .devsite-thumb:hover{background:#f1f3f4}devsite-thumb-rating .devsite-thumb+.devsite-thumb{margin:0}[dir=ltr] devsite-thumb-rating .devsite-thumb+.devsite-thumb{margin-left:8px}[dir=rtl] devsite-thumb-rating .devsite-thumb+.devsite-thumb{margin-right:8px}devsite-thumb-rating[rating=down] .devsite-thumb-down,devsite-thumb-rating[rating=up] .devsite-thumb-up{fill:#1a73e8}devsite-thumb-rating[rating=down] .devsite-thumb-down:focus,devsite-thumb-rating[rating=down] .devsite-thumb-down:hover,devsite-thumb-rating[rating=up] .devsite-thumb-up:focus,devsite-thumb-rating[rating=up] .devsite-thumb-up:hover{background:#e8f0fe}devsite-thumb-rating .devsite-thumb-icon{-webkit-box-flex:0;-webkit-flex:none;-moz-box-flex:0;-ms-flex:none;flex:none;height:24px;pointer-events:none;width:24px}devsite-thumb-rating .devsite-thumb-label{font-size:13px}[dir=ltr] devsite-thumb-rating .devsite-thumb-label{padding:0 12px 0 8px}[dir=rtl] devsite-thumb-rating .devsite-thumb-label{padding:0 8px 0 12px}devsite-thumb-rating[position=footer] .devsite-thumb-rating{margin-top:24px}devsite-dialog .devsite-thumb-rating-categories{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column}devsite-dialog .devsite-thumb-rating-category{padding-bottom:12px}[dir=ltr] .devsite-thumb-rating-dialog h3{text-align:left}[dir=rtl] .devsite-thumb-rating-dialog h3{text-align:right}.devsite-thumb-rating-dialog h3:only-child{margin-bottom:8px}.devsite-thumb-rating-dialog .devsite-dialog-buttons{-webkit-box-pack:start;-webkit-justify-content:flex-start;-moz-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;padding:0 16px 16px}.devsite-thumb-rating-dialog .devsite-feedback-icon{fill:currentColor;top:0}[dir=ltr] .button+devsite-feedback[position=thumb-rating]{margin-left:16px}[dir=rtl] .button+devsite-feedback[position=thumb-rating]{margin-right:16px}devsite-feedback[feedback-type=thumb-rating][position=header]{margin-top:4px}devsite-feedback[feedback-type=thumb-rating][position=footer]{display:block;margin-top:8px;text-align:center}@media screen and (max-width:600px){devsite-thumb-rating[position=header] .devsite-thumb-rating{margin:16px 0 8px}devsite-thumb-rating[position=footer] .devsite-thumb-rating{margin-bottom:24px}}devsite-toc.devsite-toc{float:right;width:160px}[dir=rtl] devsite-toc.devsite-toc{float:left}devsite-toc>.devsite-nav-list{width:160px}[dir=ltr] devsite-toc>.devsite-nav-list{border-left:4px solid #5f6368;border-left-color:var(--devsite-toc-border,var(--devsite-primary-color,#5f6368))}[dir=rtl] devsite-toc>.devsite-nav-list{border-right:4px solid #5f6368;border-right-color:var(--devsite-toc-border,var(--devsite-primary-color,#5f6368))}devsite-toc[fixed]>.devsite-nav-list{contain:content;overflow-x:hidden;overflow-y:auto;position:fixed;-webkit-transform:translateZ(0);transform:translateZ(0);will-change:max-height,transform}[dir=ltr] devsite-toc[fixed]>.devsite-nav-list{padding-right:8px}[dir=rtl] devsite-toc[fixed]>.devsite-nav-list{padding-left:8px}devsite-toc>.devsite-nav-list>:first-child>.devsite-nav-title{padding-top:0}devsite-toc>.devsite-nav-list>:last-child>.devsite-nav-list>:last-child>.devsite-nav-title:last-child,devsite-toc>.devsite-nav-list>:last-child>.devsite-nav-title:only-child{padding-bottom:0}devsite-toc.devsite-toc-embedded{display:none}devsite-toc.devsite-toc-embedded>.devsite-nav-list{width:auto}devsite-toc.devsite-toc-embedded .devsite-nav-item{display:none}devsite-toc.devsite-toc-embedded .devsite-nav-item[visible],devsite-toc.devsite-toc-embedded[expanded] .devsite-nav-item{display:block}devsite-toc.devsite-toc-embedded .devsite-nav-item.devsite-toc-toggle,devsite-toc.devsite-toc-embedded[expanded] .devsite-nav-item.devsite-toc-toggle{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}[dir=ltr] devsite-toc .devsite-nav-list{padding-left:12px}[dir=rtl] devsite-toc .devsite-nav-list{padding-right:12px}devsite-toc .devsite-nav-more-items,devsite-toc .devsite-nav-show-all{display:none}devsite-toc[expandable] .devsite-nav-more-items,devsite-toc[expandable] .devsite-nav-show-all{color:#5f6368;display:block;height:24px;padding:0}devsite-toc .devsite-nav-show-all{margin:-4px 0 0 4px;min-width:20px}devsite-toc .devsite-nav-show-all:before{content:"expand_more"}devsite-toc .devsite-nav-more-items{margin-bottom:-8px;min-width:0}devsite-toc .devsite-nav-more-items:before{content:"more_horiz"}devsite-toc[expanded] .devsite-nav-more-items:before,devsite-toc[expanded] .devsite-nav-show-all:before{content:"expand_less"}devsite-toc .devsite-toc-toggle{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;margin:0}devsite-toc .devsite-show-apix{margin-top:12px}@media screen and (max-width:1252px){devsite-toc.devsite-toc,devsite-toc[visible].devsite-toc{display:none}devsite-toc.devsite-toc-embedded:not(:empty){display:block;margin:20px 0 24px}body[type=landing] devsite-toc.devsite-toc-embedded:not(:empty){margin:20px 40px 24px}}@media screen and (max-width:840px){body[type=landing] devsite-toc.devsite-toc-embedded:not(:empty){margin:20px 24px 24px}}@media screen and (max-width:600px){body[type=landing] devsite-toc.devsite-toc-embedded:not(:empty){margin:20px 16px 24px}}.devsite-tooltip-msg{border-radius:2px;background:rgba(95,99,104,.9);color:#fff;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;font:500 10px/10px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;margin-top:8px;max-width:300px;opacity:1;padding:6px 8px;pointer-events:none;position:absolute;-webkit-transition:opacity .2s;transition:opacity .2s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:1020}devsite-topic{display:block}devsite-topic .devsite-topic--inner{max-width:936px;padding:0 40px;margin:0 auto}devsite-topic .devsite-topic--header{background-color:#fff;background-image:url(../images/devsite_topics_header.svg);background-repeat:no-repeat;background-position:top;background-size:1440px auto;margin-bottom:40px}devsite-topic .devsite-topic--header .devsite-topic--inner{padding-top:168px}devsite-topic .devsite-topic--header h1{top:auto;font-size:36px;line-height:44px}devsite-topic .devsite-topic--header h1,devsite-topic .devsite-topic--header p{margin:0;color:#202124;font-family:Google Sans,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif}devsite-topic .devsite-topic--header p{padding:0;font-size:18px;line-height:24px}devsite-topic .devsite-topic--header .jump-links{border-bottom:1px solid #ddd;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;font-family:Google Sans;font-weight:500;-ms-flex-pack:distribute;-webkit-justify-content:space-around;justify-content:space-around;list-style:none;padding:26px 0 0;width:100%}devsite-topic .devsite-topic--header .jump-links a:after{content:"arrow_downward";font:normal normal normal 18px/1 Material Icons;margin-left:8px;vertical-align:text-bottom}devsite-topic .devsite-topic--header .jump-links a{text-decoration:none!important}devsite-topic .devsite-topic--header .jump-links a:link,devsite-topic .devsite-topic--header .jump-links a:visited{color:#5f6368!important}devsite-topic .devsite-topic--header .jump-links a:focus,devsite-topic .devsite-topic--header .jump-links a:hover{color:#1a73e8!important}devsite-topic .devsite-topic--section{padding:40px 0}devsite-topic .devsite-topic--section:nth-child(odd){background:#f8f9fa}devsite-topic .devsite-topic--section:first-child(){background:none}devsite-topic .devsite-topic--section h2{margin:0;padding:0;font-size:32px;color:#202124;line-height:40px;font-family:Google Sans,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif}devsite-topic .devsite-topic--section .devsite-topic-section-description{margin:0;padding:0;font-size:16px;color:#3c4043;line-height:24px;font-family:Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;max-width:calc((200% - 40px)/3)}devsite-topic .devsite-topic-section--row{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;margin:0 -12px;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}devsite-topic .devsite-topic-section--row .devsite-topic-section--card{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;min-width:0;max-width:100%;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin:0 12px 24px}devsite-topic .devsite-topic-section--row .devsite-topic-section--card .devsite-topic-section-card--title{font-size:24px;color:#202124;line-height:32px;font-family:Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif}devsite-topic .devsite-topic-section--row .devsite-topic-section--card .devsite-topic-section-card--title a{color:#202124}devsite-topic .devsite-topic-section--row .devsite-topic-section--card .devsite-topic-section-card--description{font-size:16px;color:#3c4043;letter-spacing:.1px;line-height:24px;-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1}devsite-topic .devsite-topic-section-card--label{padding:16px}devsite-topic .devsite-topic-section-card--label span{border-radius:4px;padding:2px 8px;font-family:Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font-size:12px;color:rgba(0,0,0,.87);text-transform:uppercase}devsite-topic .devsite-topic-section--hero{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-moz-box-orient:horizontal;-moz-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}devsite-topic .devsite-topic-section--hero-media{margin-left:12px}devsite-topic .devsite-topic-section--hero-media .devsite-landing-row-item-image{background:none}devsite-topic .devsite-topic-section--hero-description{margin-right:12px}devsite-topic .devsite-topic-section--hero-description p.devsite-topic-section-description{max-width:100%}devsite-topic .devsite-topic-section--hero-description,devsite-topic .devsite-topic-section--hero-media{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;width:calc(50% - 12px)}devsite-topic .devsite-topic-section--cards{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;padding-top:24px;margin:0 -12px;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}devsite-topic .devsite-topic-section--cards .devsite-topic-section--card{box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 2px 6px 2px rgba(60,64,67,.15);background:#fff;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;min-width:0;max-width:100%;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;border-radius:4px;margin:0 12px 24px;width:calc(50% - 24px)}devsite-topic .devsite-topic-section--cards .devsite-topic-section--card .devsite-topic-section-card--title{padding:0 16px}devsite-topic .devsite-topic-section--cards .devsite-topic-section--card .devsite-topic-section-card--title a{font-family:Google Sans,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;font-size:24px;color:#202124;line-height:32px}devsite-topic .devsite-topic-section--cards .devsite-topic-section--card .devsite-topic-section-card--description{padding:8px 16px 24px;border-bottom:1px solid #ddd;-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1}devsite-topic .devsite-topic-section--cards .devsite-topic-section--card .devsite-topic-section-card--description p{font-size:16px;color:#3c4043;line-height:24px}devsite-topic .devsite-topic-section--cards .devsite-topic-section--card .devsite-topic-section-card--meta{padding:16px 16px 12px;font-size:12px;line-height:16px}devsite-topic .devsite-topic-section--cards .devsite-topic-section--card .devsite-topic-section-card--meta-byline{color:#202124}devsite-topic .devsite-topic-section--cards .devsite-topic-section--card .devsite-topic-section-card--meta-date{color:#3c4043}devsite-topic .devsite-topic-section--cards .devsite-topic-section--card .devsite-topic-section-card--buttons{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:end;-webkit-justify-content:flex-end;-moz-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;padding:12px 8px 8px}devsite-topic .devsite-topic-section--1-up .devsite-topic-section--card{width:calc(100% - 24px);margin-bottom:0}devsite-topic .devsite-topic-section--2-up .devsite-topic-section--card{margin-bottom:0}devsite-topic .devsite-topic-section--3-up .devsite-topic-section--card{width:calc(33% - 24px)}devsite-topic .devsite-dynamic-content-message.caution{padding-left:60px;padding-right:0;margin-left:0;margin-right:0}@media screen and (max-width:840px){devsite-topic .devsite-topic--inner{max-width:768px;padding:0 40px}}@media screen and (max-width:600px){devsite-topic .devsite-topic--inner{max-width:100%;padding:0 24px}devsite-topic .devsite-topic--section{padding:24px 0}devsite-topic .devsite-topic--section .devsite-topic-section--card{width:calc(100% - 24px)}devsite-topic .devsite-topic-section--hero{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column}devsite-topic .devsite-topic-section--hero-description,devsite-topic .devsite-topic-section--hero-media{margin:0;width:100%}devsite-topic .devsite-topic-section--hero-media{margin-bottom:24px}}devsite-tracking-question{background-color:#f1f3f4;display:block;padding:8px}devsite-tracking-question .devsite-tracking-question-text{font-weight:700}devsite-tracking-question .devsite-tracking-question-hidden{display:none}devsite-tracking-question .devsite-tracking-question-choice-button{background:#fff;border-radius:2px;box-shadow:0 2px 5px 0 rgba(0,0,0,.26);color:#202124;cursor:pointer;line-height:50px;margin:8px 0;padding:0 20px;-webkit-transition:background .2s,box-shadow .2s;transition:background .2s,box-shadow .2s}devsite-tracking-question .devsite-tracking-question-choice-button:focus,devsite-tracking-question .devsite-tracking-question-choice-button:hover{background:#bdc1c6;box-shadow:0 4px 8px 0 rgba(154,160,166,.5)}devsite-user{display:block;-webkit-box-flex:0;-webkit-flex:0 0 auto;-moz-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}devsite-user:not(:empty){margin:0 -8px 0 0;min-width:60px}[dir=rtl] devsite-user:not(:empty){margin:0 0 0 -8px}devsite-user #devsite-signin-btn{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;font:500 14px/36px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif}devsite-user devsite-spinner{margin:4px 8px 4px 20px}devsite-user devsite-spinner.hide{opacity:0;-webkit-transition:opacity .45s ease;transition:opacity .45s ease;-webkit-animation-delay:.45s;animation-delay:.45s}devsite-user .ogb-wrapper{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;opacity:1;-webkit-transition:opacity .2s cubic-bezier(.4,0,.2,1);transition:opacity .2s cubic-bezier(.4,0,.2,1)}devsite-user .ogb-pending{opacity:0}devsite-user .ogb-si{margin:0 0 0 16px}[dir=rtl] devsite-user .ogb-si{margin:0 16px 0 0}devsite-user .ogb-so{margin:0 0 0 12px}[dir=rtl] devsite-user .ogb-so{margin:0 12px 0 0}devsite-user .gb_Rb>.gb_Qb,devsite-user .gb_Sb>.gb_Rb{-moz-box-sizing:content-box;box-sizing:content-box}devsite-user button.devsite-user-change-account,devsite-user button.devsite-user-signout{height:auto;color:#3c4043}devsite-user button.devsite-user-change-account .material-icons,devsite-user button.devsite-user-signout .material-icons{margin:0;height:auto;width:auto;top:auto}devsite-user button.devsite-user-change-account{border:0}@media (-webkit-min-device-pixel-ratio:1.25),(min-resolution:1.25dppx),not all{[dir=rtl] devsite-user .gb_xa:before{-webkit-transform-origin:right 0;transform-origin:right 0}}devsite-user .devsite-user-dialog{display:none}devsite-user .devsite-user-dialog a:link,devsite-user .devsite-user-dialog a:visited{text-decoration:none}devsite-user[dialog--open] .devsite-user-dialog{background:#fff;border:1px solid rgba(0,0,0,.2);border-radius:8px;box-shadow:0 2px 10px rgba(0,0,0,.2);color:#000;display:block;max-height:calc(100vh - 86px);outline:none;overflow:auto;position:absolute;right:24px;top:62px;width:354px}[dir=rtl] devsite-user[dialog--open] .devsite-user-dialog{left:24px;right:auto}devsite-user .devsite-user-dialog-photo,devsite-user .devsite-user-dialog-toggle,devsite-user .devsite-user-dialog-toggle .devsite-user-dialog-letter{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;border-radius:50%;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;margin:0;overflow:hidden;padding:0}devsite-user .devsite-user-dialog-signin .devsite-user-dialog-letter,devsite-user .devsite-user-dialog .devsite-user-dialog-photo{background:#202124;background:var(--devsite-background-color,var(--devsite-primary-color,#202124));color:#fff;color:var(--devsite-text-color,#fff)}devsite-user .devsite-user-dialog-toggle{border:4px solid transparent;-moz-box-sizing:content-box;box-sizing:content-box;height:32px;margin:0 4px 0 0;overflow:hidden;text-decoration:none;width:32px}[dir=rtl] devsite-user .devsite-user-dialog-toggle{margin:0 0 0 4px}devsite-user .devsite-user-dialog-toggle:focus{border-color:rgba(0,0,0,.2)}devsite-user .devsite-user-dialog-photo-thumbnail{height:32px;width:32px}devsite-user[js-signin] button{box-shadow:none}devsite-user[js-signin] .devsite-user-dialog-toggle{opacity:0;-webkit-transition:opacity .45s ease;transition:opacity .45s ease}devsite-user[js-signin] .devsite-user-dialog-toggle.show{opacity:1}devsite-user .devsite-user-dialog-toggle .devsite-user-dialog-letter{-webkit-box-flex:0;-webkit-flex:0 0 32px;-moz-box-flex:0;-ms-flex:0 0 32px;flex:0 0 32px;font-size:17px;height:32px}devsite-user .devsite-user-dialog-learn-more{background-color:#e8f0fe;border-radius:4px;color:#5f6368;font:12px/16px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;margin:4px 4px 0;padding:4px 29px;text-align:center}devsite-user .devsite-user-dialog-learn-more a,devsite-user .devsite-user-dialog-learn-more span{font-weight:500}devsite-user .devsite-user-dialog-learn-more a{color:#185abc}devsite-user .devsite-user-dialog-learn-more a:focus,devsite-user .devsite-user-dialog-learn-more a:hover{text-decoration:underline}devsite-user .devsite-user-dialog-user{padding:20px 33px 23px;text-align:center}devsite-user .devsite-user-dialog-photo{margin:0 auto 16px;position:relative;left:-2px}devsite-user .devsite-user-dialog-photo,devsite-user .devsite-user-dialog-photo-portrait{height:80px;width:80px}devsite-user .devsite-user-dialog-letter{text-transform:uppercase}devsite-user .devsite-user-dialog-photo .devsite-user-dialog-letter{font-size:52px}devsite-user .devsite-user-dialog-email,devsite-user .devsite-user-dialog-name{text-overflow:ellipsis;overflow:hidden}devsite-user .devsite-user-dialog-name{color:#202124;font:500 16px/22px Google Sans,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;letter-spacing:.29px}devsite-user .devsite-user-dialog-email{color:#5f6368;font:400 14px/19px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif}devsite-user .devsite-user-manage{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;background:0;border:1px solid #dadce0;border-radius:17px;display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;font:500 14px/20px Google Sans,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;height:34px;letter-spacing:.25px;margin:16px 0 0;padding:0 16px;white-space:nowrap}devsite-user .devsite-user-manage:link,devsite-user .devsite-user-manage:visited{color:#3c4043}devsite-user .devsite-user-manage:focus,devsite-user .devsite-user-manage:hover{background-color:#f8f9fa}devsite-user .devsite-user-manage:active{box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 2px 6px 2px rgba(60,64,67,.15);background-color:#e8eaed;border-color:transparent}devsite-user .devsite-user-dialog-buttons{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column}devsite-user .devsite-user-dialog .developer-profile:link,devsite-user .devsite-user-dialog .developer-profile:visited,devsite-user .devsite-user-dialog .devsite-user-developer-profile:link,devsite-user .devsite-user-dialog .devsite-user-developer-profile:visited,devsite-user .devsite-user-dialog .devsite-user-signin:link,devsite-user .devsite-user-dialog .devsite-user-signin:visited,devsite-user .devsite-user-signout:link,devsite-user .devsite-user-signout:visited{color:#3c4043}devsite-user .devsite-user-dialog .developer-profile:focus,devsite-user .devsite-user-dialog .developer-profile:hover,devsite-user .devsite-user-dialog .devsite-user-developer-profile:focus,devsite-user .devsite-user-dialog .devsite-user-developer-profile:hover,devsite-user .devsite-user-dialog .devsite-user-signin:focus,devsite-user .devsite-user-dialog .devsite-user-signin:hover,devsite-user .devsite-user-signout:focus,devsite-user .devsite-user-signout:hover{background-color:#f8f9fa}devsite-user .devsite-user-dialog .developer-profile:active,devsite-user .devsite-user-dialog .devsite-user-developer-profile:active,devsite-user .devsite-user-dialog .devsite-user-signin:active,devsite-user .devsite-user-signout:active{background-color:#e8eaed}devsite-user .devsite-user-dialog .devsite-user-developer-profile,devsite-user .devsite-user-dialog .devsite-user-signin{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;font:500 14px/16px Google Sans,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;letter-spacing:.25px;padding:15px 39px 16px;width:100%}devsite-user .devsite-user-dialog-buttons>:first-child{border-top:1px solid #e8eaed}devsite-user .devsite-user-dialog .devsite-user-signin{border-bottom:1px solid #e8eaed}devsite-user .devsite-user-dialog .new-notification{background:#1967d2;border-radius:10px;color:#fff;font-weight:700;font-size:12px;letter-spacing:.3px;padding:2px 8px}[dir=ltr] devsite-user .devsite-user-dialog .new-notification{margin-left:12px}[dir=ltr] devsite-user .devsite-user-signin .devsite-switch-account-icon,[dir=rtl] devsite-user .devsite-user-dialog .new-notification{margin-right:12px}[dir=rtl] devsite-user .devsite-user-signin .devsite-switch-account-icon{margin-left:12px}devsite-user .devsite-user-developer-profile .google-dev-icon{width:28px;position:relative}[dir=ltr] devsite-user .devsite-user-developer-profile .google-dev-icon{margin-left:-4px;margin-right:8px}[dir=rtl] devsite-user .devsite-user-developer-profile .google-dev-icon{margin-left:8px;margin-right:-4px}devsite-user .devsite-user-signout{border:1px solid #dadce0;border-radius:4px;display:inline-block;font:500 14px/16px Google Sans,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;letter-spacing:.15px;margin:16px auto;padding:10px 24px}devsite-user .devsite-user-signout:active{box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 2px 6px 2px rgba(60,64,67,.15);background-color:#e8eaed;border-color:transparent}devsite-user .devsite-user-dialog-footer{border-top:1px solid #e8eaed;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:14px 20px}devsite-user .devsite-user-dialog-footer-link{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;margin:0}devsite-user .devsite-user-dialog-footer-link:not(:first-child):before{color:#5f6368;content:"•";font-size:13px}devsite-user .devsite-user-dialog-footer-link>a{border-radius:4px;display:inline-block;font:400 12px/16px Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;padding:4px 8px}devsite-user .devsite-user-dialog-footer-link>a:link,devsite-user .devsite-user-dialog-footer-link>a:visited{color:#5f6368}devsite-user .devsite-user-dialog-footer-link>a:focus,devsite-user .devsite-user-dialog-footer-link>a:hover{background-color:#f8f9fa}devsite-user .devsite-user-dialog-footer-link>a:active{background-color:#e8eaed}devsite-user .devsite-devprofile-wrapper{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;margin-right:4px;margin-left:1px;position:relative;opacity:0}devsite-user .devsite-devprofile-wrapper.show{opacity:1;-webkit-transition:all .15s cubic-bezier(.4,0,.2,1) 0s;transition:all .15s cubic-bezier(.4,0,.2,1) 0s}devsite-user .devsite-devprofile-wrapper devsite-spinner{margin:0 0 0 12px}devsite-user .devsite-devprofile-wrapper .devsite-devprofile-button{margin:0;padding:0;border:0;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;--devsite-button-background-hover:#e8eaed;--devsite-button-border-hover:none;--devsite-button-box-shadow-active:none;--devsite-button-background-active:#e8eaed;--devsite-button-border-radius:50%;--devsite-button-box-shadow:none}devsite-user .devsite-devprofile-wrapper.open .devsite-devprofile-button{background:#e8eaed}devsite-user .devsite-devprofile-wrapper .devsite-devprofile-callout .devsite-devprofile-notch{width:20px;height:10px;position:absolute;right:13px;top:-12px}devsite-user .devsite-devprofile-wrapper .devsite-devprofile-callout .devsite-devprofile-notch:before{content:"";position:absolute;height:3px;background:#fff;top:12px;width:22px;right:-5px}devsite-user .devsite-devprofile-wrapper .devsite-devprofile-popout{position:absolute;background:#fff;box-shadow:0 1px 2px rgba(60,64,67,.3),0 2px 6px 2px rgba(60,64,67,.15);border-radius:4px;padding:8px 0;margin-top:-1px;top:100%;right:0;white-space:nowrap;opacity:0;-webkit-transform-origin:top right;transform-origin:top right;-webkit-transform:scale(.8);transform:scale(.8);-webkit-transition:all .15s cubic-bezier(.4,0,.2,1) 0s;transition:all .15s cubic-bezier(.4,0,.2,1) 0s;pointer-events:none;display:none}devsite-user .devsite-devprofile-wrapper .devsite-devprofile-popout.show{opacity:1;-webkit-transform:scale(1);transform:scale(1);pointer-events:all}devsite-user .devsite-devprofile-wrapper .devsite-devprofile-popout.visible{display:block}devsite-user .devsite-devprofile-wrapper .devsite-devprofile-popout ul{margin:0;padding:0}devsite-user .devsite-devprofile-wrapper .devsite-devprofile-popout ul li{margin:0;padding:0;list-style:none}devsite-user .devsite-devprofile-wrapper .devsite-devprofile-popout ul li a{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;padding:14px 16px;color:#3c4043;font-size:16px;line-height:18px;text-decoration:none}devsite-user .devsite-devprofile-wrapper .devsite-devprofile-popout ul li a:hover{background:#f1f3f4}devsite-user .devsite-devprofile-wrapper .devsite-devprofile-popout ul li a svg{margin-right:16px}devsite-user .devsite-devprofile-wrapper .devsite-devprofile-popout[popup-type=view-pages]{background:#1a73e8;color:#fff;padding:16px 24px}devsite-user .devsite-devprofile-wrapper .devsite-devprofile-popout[popup-type=view-pages] .buttons{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-webkit-justify-content:flex-end;-moz-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;margin-top:16px}devsite-user .devsite-devprofile-wrapper .devsite-devprofile-popout[popup-type=view-pages] .button-white{color:#fff}devsite-user .devsite-devprofile-wrapper .devsite-devprofile-popout[popup-type=view-pages] .button-white:focus,devsite-user .devsite-devprofile-wrapper .devsite-devprofile-popout[popup-type=view-pages] .button-white:hover{background:#1a73e8;color:#e4eefc}devsite-user .devsite-devprofile-wrapper .devsite-devprofile-callout{position:absolute;background:#fff;box-shadow:0 1px 2px rgba(60,64,67,.3),0 2px 6px 2px rgba(60,64,67,.15);border-radius:8px;margin-top:-1px;top:100%;right:-1px;padding:16px;max-width:378px;width:100vh;opacity:1;-webkit-transform:scale(1);transform:scale(1);-webkit-transition:all .15s cubic-bezier(.4,0,.2,1) 0s;transition:all .15s cubic-bezier(.4,0,.2,1) 0s}devsite-user .devsite-devprofile-wrapper .devsite-devprofile-callout.hide{opacity:0;-webkit-transform-origin:top right;transform-origin:top right;-webkit-transform:scale(.8);transform:scale(.8)}devsite-user .devsite-devprofile-wrapper .devsite-devprofile-callout .devsite-devprofile-callout-error,devsite-user .devsite-devprofile-wrapper .devsite-devprofile-callout .devsite-devprofile-callout-step1,devsite-user .devsite-devprofile-wrapper .devsite-devprofile-callout .devsite-devprofile-callout-step2,devsite-user .devsite-devprofile-wrapper .devsite-devprofile-callout .devsite-devprofile-callout-step3,devsite-user .devsite-devprofile-wrapper .devsite-devprofile-callout .devsite-devprofile-callout-step4{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column}devsite-user .devsite-devprofile-wrapper .devsite-devprofile-callout .devsite-devprofile-callout-step3{padding:24px 0}devsite-user .devsite-devprofile-wrapper .devsite-devprofile-callout .devsite-devprofile-logo{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center}devsite-user .devsite-devprofile-wrapper .devsite-devprofile-callout .devsite-devprofile-logo svg{width:74px}devsite-user .devsite-devprofile-wrapper .devsite-devprofile-callout h4{margin:20px 0 8px;padding:0;font-size:16px;line-height:24px;letter-spacing:.1px;color:#3c4043;text-align:left}devsite-user .devsite-devprofile-wrapper .devsite-devprofile-callout p{margin:0;padding:0;font-size:14px;line-height:20px;letter-spacing:.25px;color:#3c4043}devsite-user .devsite-devprofile-wrapper .devsite-devprofile-callout .account-note{font-size:12px;line-height:16px;letter-spacing:.3px;color:#4c5155}devsite-user .devsite-devprofile-wrapper .devsite-devprofile-callout .devsite-devprofile-callout-newsletter{width:100%;margin-bottom:16px}devsite-user .devsite-devprofile-wrapper .devsite-devprofile-callout .devsite-devprofile-callout-newsletter label{font-size:14px;letter-spacing:.25px;color:#3c4043;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;line-height:16px}devsite-user .devsite-devprofile-wrapper .devsite-devprofile-callout .devsite-devprofile-callout-buttons{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;width:100%;-webkit-box-pack:end;-webkit-justify-content:flex-end;-moz-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;margin-top:24px}devsite-user .devsite-devprofile-wrapper .devsite-devprofile-callout .devsite-devprofile-callout-buttons .button-dismiss{--devsite-button-border:0;--devsite-button-border-hover:0;--devsite-button-background-hover:#fff;--devsite-button-background-active:#fff;--devsite-button-border-active:0;--devsite-button-box-shadow-active:none}@media screen and (max-width:840px){devsite-user .ogb-si{margin:0 0 0 4px}[dir=rtl] devsite-user .ogb-si{margin:0 4px 0 0}devsite-user[dialog--open] .devsite-user-dialog{right:16px}[dir=rtl] devsite-user[dialog--open] .devsite-user-dialog{left:16px;right:auto}}devsite-var{position:relative;white-space:nowrap}devsite-var .devsite-var-input-wrapper{bottom:-2px;-moz-box-sizing:content-box;box-sizing:content-box;display:none;left:-4px;position:absolute;width:100%}devsite-var[active] .devsite-var-input-wrapper{display:inline-block}devsite-selector devsite-var .devsite-var-input-wrapper,table devsite-var .devsite-var-input-wrapper{bottom:-3px}devsite-code devsite-var .devsite-var-input-wrapper{bottom:-2px}devsite-var .devsite-var-input-wrapper+var{border-bottom:1px dotted #ec407a;cursor:pointer}devsite-var input.devsite-var-input{border:1px solid #80868b;font-family:inherit;font-size:inherit;padding:1px 3px 0;width:inherit}devsite-var input.devsite-var-input:focus{border-bottom:1px solid #80868b;padding-bottom:0}devsite-var .devsite-icon-edit{color:#ec407a;margin:0 0 2px 5px}devsite-var .material-icons.devsite-icon-edit{vertical-align:middle}devsite-var .devsite-icon-close{bottom:0;color:#212121;position:absolute;right:-4px;top:0}devsite-var .devsite-icon-close:hover{color:#212121}devsite-var .devsite-var-wrapper .material-icons{background:none;border:none;font-size:inherit;height:inherit;min-width:inherit;padding:0}devsite-var .devsite-var-wrapper .material-icons:active{box-shadow:none}devsite-var .devsite-var-wrapper .material-icons:hover{cursor:pointer}devsite-version-selector{display:block;padding:0 24px}devsite-version-selector .devsite-version-selector-select{width:100%}.devsite-future-version,.devsite-future-version *{color:rgba(0,0,0,.26);text-decoration:none}devsite-visibility-analytics[counterfactual]{display:block;height:1px;opacity:0}devsite-visibility-analytics[counterfactual] *{display:none}devsite-vplus .devsite-vplus-content-container{border:1px solid #000;height:0;padding-bottom:56.25%;position:relative;visibility:hidden}devsite-vplus .devsite-vplus-slide-frame{height:100%;left:0;overflow:auto;position:absolute;top:0;width:100%}devsite-vplus .devsite-vplus-video{bottom:0;height:26%;position:absolute;right:0;-webkit-transition:width 1.3s ease,height 1.3s ease,position 1.3s ease;transition:width 1.3s ease,height 1.3s ease,position 1.3s ease;width:26%;z-index:1}devsite-vplus .devsite-vplus-video.devsite-vplus-large{height:100%;width:100%}devsite-vplus .devsite-vplus-video-container{bottom:0;cursor:pointer;height:26%;position:absolute;right:0;-webkit-transition:width 1.3s ease,height 1.3s ease,position 1.3s ease;transition:width 1.3s ease,height 1.3s ease,position 1.3s ease;width:26%;z-index:1}devsite-vplus .devsite-vplus-video-container.devsite-vplus-large{height:100%;width:100%}devsite-vplus .devsite-vplus-video-container>video{width:100%}@media (max-width:1049px){#video-caption-container span{font-size:1.9vw}}@media (min-width:1050px){#video-caption-container span{font-size:1.1vw}}devsite-vplus .devsite-vplus-controls{background-color:#fff;border-radius:6px;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;height:100%;margin:0 auto;max-width:490px;padding:6px;text-align:center}devsite-vplus .devsite-vplus-controls-text{font-size:16px;font-style:normal;font-weight:700}devsite-vplus .devsite-vplus-slide-status{margin:auto}devsite-vplus .devsite-vplus-slide-status span{font-size:18px}devsite-vplus .devsite-vplus-slide-status span:not(:first-of-type){padding-left:5px}devsite-vplus .devsite-vplus-player-controls{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;margin:8px 16px}devsite-vplus .devsite-vplus-control-button{cursor:pointer;box-shadow:none;height:43px;padding-top:0;width:50px}devsite-vplus .devsite-vplus-control-button:hover{box-shadow:0 2px 4px #aaa;border-radius:4px}devsite-vplus .devsite-vplus-video-controls-container{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}devsite-vplus .devsite-vplus-pause-icon,devsite-vplus .devsite-vplus-play-icon{margin-left:0}devsite-vplus .devsite-vplus-next-button,devsite-vplus .devsite-vplus-play-button{padding-left:0;margin-left:16px;width:50px}devsite-vplus .devsite-vplus-triangle{border-style:solid;height:0;margin:auto;position:relative;width:0}devsite-vplus .devsite-vplus-back{border-color:transparent #24508d transparent transparent;border-width:8px 16px 8px 0}devsite-vplus .devsite-vplus-back-triangle-1{left:-8px;top:15px}devsite-vplus .devsite-vplus-back-triangle-2{left:8px;top:-1px}devsite-vplus .devsite-vplus-forward-single{border-color:transparent transparent transparent #24508d;border-width:16px 0 16px 25px;top:5px}devsite-vplus .devsite-vplus-forward{border-color:transparent transparent transparent #24508d;border-width:8px 0 8px 16px;top:5px}devsite-vplus .devsite-vplus-forward-triangle-1{left:-8px;top:15px}devsite-vplus .devsite-vplus-forward-triangle-2{left:8px;top:-1px}devsite-vplus .devsite-vplus-pause{background-color:#24508d;height:30px;width:9px}devsite-vplus .devsite-vplus-rect-1{left:12px;position:relative;top:6px}devsite-vplus .devsite-vplus-rect-2{left:29px;position:relative;top:-24px}devsite-vplus .devsite-vplus-playbackrate select:hover{box-shadow:0 2px 4px #aaa}devsite-vplus .devsite-vplus-playbackrate .material-icons{margin-top:10px}devsite-vplus .devsite-vplus-playbackrate select{border-color:transparent;font-size:18px;height:46px;padding-bottom:2px;padding-top:2px;-moz-text-align-last:center;text-align-last:center;text-transform:none}devsite-vplus .devsite-vplus-caption-control-container{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;margin-top:8px}devsite-vplus .devsite-vplus-caption-control{background-color:#24508d;border:0;border-radius:16px;color:#fff;display:inline-block;height:35px;line-height:39px;margin-right:10px;margin-top:1px;padding:0;text-align:center;text-decoration:none;text-indent:0;vertical-align:10%;width:50px}devsite-vplus .devsite-vplus-captions-off{background-color:#fff;color:#24508d}devsite-vplus .devsite-vplus-controls .devsite-vplus-control-button.disabled{background-color:transparent}devsite-vplus .devsite-vplus-prev-button.disabled .devsite-vplus-triangle{border-right-color:#94969a}devsite-vplus .devsite-vplus-next-button:hover:not(.disabled) .devsite-vplus-triangle,devsite-vplus .devsite-vplus-prev-button:hover:not(.disabled) .devsite-vplus-triangle{border-right-color:#18345c}devsite-vplus .devsite-vplus-next-button.disabled .devsite-vplus-triangle{border-left-color:#94969a}.next-button:hover:not(.disabled) .devsite-vplus-triangle,devsite-vplus .devsite-vplus-play-button:hover:not(.disabled) .devsite-vplus-triangle{border-left-color:#18345c}devsite-vplus .devsite-vplus-navigation-button-container{margin:0 auto;text-align:center}devsite-vplus .devsite-vplus-navigation-button-link{text-decoration:none}devsite-vplus .devsite-vplus-navigation-button{background-color:#24508d;box-shadow:0 1px 3px rgba(0,0,0,.12),0 1px 2px rgba(0,0,0,.24);color:#fff;display:inline-block;font-size:16px;margin:12px 36px;padding:12px 36px}devsite-vplus .devsite-vplus-addendums{border:1px solid #000;cursor:pointer}devsite-vplus .devsite-vplus-addendums-header{background-color:#dadce0;outline:none;padding:8px 8px 8px 0;width:100%}devsite-vplus .devsite-vplus-addendums-control{cursor:pointer;display:table-cell;vertical-align:middle}devsite-vplus .devsite-vplus-addendums-control .material-icons.devsite-vplus-caption-button{cursor:pointer}devsite-vplus .devsite-vplus-addendums-control>div{white-space:nowrap;margin-left:8px;margin-right:8px}devsite-vplus .devsite-vplus select{outline:2px}devsite-vplus .devsite-vplus-notes-control>div>div:hover,devsite-vplus .devsite-vplus-transcript-control>div>div:hover,devsite-vplus .devsite-vplus select:hover{box-shadow:0 2px 4px #aaa;background-color:#e1f3fc}devsite-vplus .devsite-vplus select:focus{background-color:#e1f3fc}devsite-vplus .devsite-vplus-addendums-control.devsite-vplus-search-widget>div{margin-left:0;margin-right:0}devsite-vplus .devsite-vplus-addendums-label{white-space:nowrap}devsite-vplus .devsite-vplus-addendums-control .devsite-hidden,devsite-vplus .devsite-vplus-notes-control .devsite-vplus-addendums-closed,devsite-vplus .devsite-vplus-notes-control .devsite-vplus-addendums-opened,devsite-vplus .devsite-vplus-transcript-control .devsite-vplus-addendums-closed,devsite-vplus .devsite-vplus-transcript-control .devsite-vplus-addendums-opened{display:none}devsite-vplus .devsite-vplus-notes-control.goog-zippy-collapsed .devsite-vplus-addendums-closed,devsite-vplus .devsite-vplus-notes-control.goog-zippy-expanded .devsite-vplus-addendums-opened,devsite-vplus .devsite-vplus-transcript-control.goog-zippy-collapsed .devsite-vplus-addendums-closed,devsite-vplus .devsite-vplus-transcript-control.goog-zippy-expanded .devsite-vplus-addendums-opened{display:inline}devsite-vplus .devsite-vplus-search-widget{background:#f1f3f4;padding:2px 4px;position:relative;width:100%}devsite-vplus .devsite-vplus-search-widget>div{width:100%}devsite-vplus .devsite-vplus-search-input{background-color:transparent;border-width:0;font-size:14px;width:100%}devsite-vplus .devsite-vplus-search-input:hover{box-shadow:0 2px 4px #aaa}devsite-vplus .devsite-vplus-search-autocomplete{position:relative;white-space:normal;width:100%;z-index:1}devsite-vplus .devsite-vplus-search-autocomplete .ac-renderer{background:#fff;border:1px solid #5f6368;box-shadow:2px 2px 2px hsla(0,0%,40%,.4);font:normal 13px Arial,sans-serif;position:absolute;width:100%}devsite-vplus .devsite-vplus-search-autocomplete .ac-row{cursor:pointer;padding:6px}devsite-vplus .devsite-vplus-search-autocomplete .ac-highlighted{font-weight:700}devsite-vplus .devsite-vplus-search-autocomplete .ac-active{background-color:#bdc1c6}devsite-vplus .devsite-vplus-addendums-control div.devsite-vplus-captions-language-selector-wrapper,devsite-vplus .devsite-vplus-addendums-control div.devsite-vplus-video-language-selector-wrapper{display:inline-block;height:auto;margin-right:2px;padding:0;vertical-align:bottom}devsite-vplus .devsite-vplus-captions-language-selector-wrapper .material-icons,devsite-vplus .devsite-vplus-video-language-selector-wrapper .material-icons{vertical-align:middle}devsite-vplus .devsite-vplus-captions-language-selector-wrapper:focus-within .material-icons,devsite-vplus .devsite-vplus-video-language-selector-wrapper:focus-within .material-icons{display:none}devsite-vplus .devsite-vplus-captions-language-selector-wrapper select,devsite-vplus .devsite-vplus-video-language-selector-wrapper select{background-color:#dadce0;min-width:0;padding-right:16px;width:0}devsite-vplus .devsite-vplus-captions-language-selector-wrapper select:focus,devsite-vplus .devsite-vplus-video-language-selector-wrapper select:focus{outline:5px auto -webkit-focus-ring-color;padding-right:27px;width:auto}devsite-vplus .devsite-vplus-captions-language-selector-wrapper select.kd-select,devsite-vplus .devsite-vplus-video-language-selector-wrapper select.kd-select{border-color:transparent;font-size:small;height:auto;padding-bottom:2px;padding-top:2px;-moz-text-align-last:right;text-align-last:right}devsite-vplus .devsite-vplus-addendums-opened .material-icons{width:1em}devsite-vplus .devsite-vplus-addendums-closed .material-icons{background-color:#bdc1c6;color:#fff;width:1em}devsite-vplus .devsite-vplus-notes{height:100px;padding:16px}devsite-vplus .devsite-vplus-notes,devsite-vplus .devsite-vplus-transcript-captions{border-top:1 solid #000;margin:0;overflow:auto;position:relative;resize:vertical;width:100%}devsite-vplus .devsite-vplus-transcript-captions{height:4.5em;padding:0}devsite-vplus .devsite-vplus-transcript-captions table{border-collapse:separate;margin:0}devsite-vplus .devsite-vplus-transcript-caption{padding:.15em 1em;width:100%}devsite-vplus .devsite-vplus-transcript-slide-separator{font-weight:700;font-style:italic}devsite-vplus .devsite-vplus-transcript-slide-separator hr{padding:1px 0}devsite-vplus .devsite-vplus-transcript-caption:focus{outline-offset:-3px}devsite-vplus .devsite-vplus-transcript-caption td{background-color:#fff;border-color:#fff;padding:0 .25em;text-shadow:0 0 0 currentColor}devsite-vplus .devsite-vplus-transcript-caption:hover td{text-shadow:.5px 0 .1px #5f6368,-.5px 0 .1px #5f6368}devsite-vplus .devsite-vplus-transcript-caption:hover .devsite-vplus-transcript-caption-bullet{visibility:visible}devsite-vplus .devsite-vplus-transcript-caption.devsite-vplus-caption-highlighted td{background-color:#fff176}devsite-vplus .devsite-vplus-transcript-caption .devsite-vplus-transcript-caption-bullet{padding:0 0 0 4px;visibility:hidden}devsite-vplus .devsite-vplus-transcript-caption-time{font-weight:lighter;min-width:2.5em;text-align:right}devsite-vplus .devsite-vplus-transcript-caption-text{width:100%}devsite-vplus .devsite-vplus-fullscreen-icon{color:#24508d;padding:0;text-overflow:inherit;text-transform:none}devsite-vplus .devsite-hidden{display:none}devsite-youtube{display:block;overflow:hidden;padding-bottom:56.25%;position:relative;width:100%}devsite-youtube iframe{height:101%;left:-.5%;position:absolute;top:-.5%;width:101%}devsite-youtube .devsite-video-placeholder span{color:#202124;padding:8px;position:absolute}devsite-youtube .devsite-video-placeholder img{position:absolute}google-codelab{width:100%;height:100%;padding-top:64px}google-codelab,google-codelab #main{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}google-codelab #main{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1;position:relative;background:#f8f9fa}google-codelab #codelab-title{position:fixed;top:0;left:0;width:100%;background:#fff;box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 2px 6px 2px rgba(60,64,67,.15);color:#3c4043;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;height:64px;padding:0 36px 0 16px;-webkit-font-smoothing:antialiased;z-index:1000}google-codelab #codelab-title h1{font-size:20px;font-weight:400;margin:0 8px;font-family:Roboto,Noto,sans-serif;-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1;-webkit-flex-shrink:1;-ms-flex-negative:1;flex-shrink:1;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;width:0;display:inline-block}google-codelab #codelab-title .time-remaining{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;-webkit-box-flex:0;-webkit-flex-grow:0;-moz-box-flex:0;-ms-flex-positive:0;flex-grow:0;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;font-size:16px;font-weight:400;white-space:nowrap}google-codelab #codelab-title .time-remaining i{margin-right:3px}google-codelab #codelab-nav-buttons{-webkit-box-flex:0;-webkit-flex-grow:0;-moz-box-flex:0;-ms-flex-positive:0;flex-grow:0;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}google-codelab #codelab-nav-buttons,google-codelab #codelab-nav-buttons #arrow-back,google-codelab #codelab-nav-buttons #menu{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}google-codelab #codelab-nav-buttons #arrow-back,google-codelab #codelab-nav-buttons #menu{text-decoration:none;color:#3c4043;width:40px;height:40px}google-codelab #codelab-nav-buttons #arrow-back,google-codelab #codelab-nav-buttons #menu,google-codelab #controls{-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center}google-codelab #controls{position:absolute;bottom:32px;left:0;right:0;padding:0 32px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;z-index:1001}google-codelab #controls,google-codelab #fabs{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}google-codelab #fabs{max-width:1025px;width:100%;margin:0 auto}google-codelab #fabs,google-codelab #fabs .spacer{-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1}google-codelab #done,google-codelab #next-step,google-codelab #previous-step{border-radius:4px;font-family:Google Sans,Arial,sans-serif;font-size:14px;font-weight:600;letter-spacing:.6px;line-height:24px;padding:6px 24px;pointer-events:auto;text-transform:none;background:#fff;color:#1a73e8;-webkit-transform:scale(1);transform:scale(1);-webkit-transition:-webkit-transform .3s ease-in-out;transition:-webkit-transform .3s ease-in-out;transition:transform .3s ease-in-out;transition:transform .3s ease-in-out,-webkit-transform .3s ease-in-out;box-shadow:0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12),0 3px 1px -2px rgba(0,0,0,.2);text-decoration:none;-webkit-font-smoothing:antialiased}google-codelab #next-step{color:#fff;background:#1a73e8}google-codelab #done{background:#1e8e3e;color:#fff}google-codelab #fabs a[disappear]{-webkit-transform:scale(0);transform:scale(0)}google-codelab #done{background:#0f9d58}google-codelab #drawer .codelab-time-container{display:none}@media (max-width:768px){google-codelab{padding-top:0}google-codelab #codelab-title .codelab-time-container{display:none}google-codelab #drawer .codelab-time-container{display:block;padding:20px 10px 10px 23px}google-codelab #drawer .time-remaining i{margin-right:9px}}google-codelab #drawer{background:#fff;width:256px;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;position:relative;z-index:100;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;background:#f8f9fa}google-codelab #drawer,google-codelab #drawer .steps{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}google-codelab #drawer .steps{-webkit-flex-shrink:1;-ms-flex-negative:1;flex-shrink:1;-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1;overflow-x:visible;max-height:calc(100% - 54px)}google-codelab #drawer .steps:only-child{max-height:100%}google-codelab #drawer .metadata .material-icons{top:6px;position:relative}google-codelab #drawer ol{margin:0;padding:16px 12px;counter-reset:li-count;list-style:none;overflow-x:visible;overflow-y:auto;-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1}google-codelab #drawer ol li{display:block;counter-increment:li-count}google-codelab #drawer ol li a{text-decoration:none;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;font-size:14px;color:#80868b;padding:3px 10px;min-height:48px;font-weight:400;line-height:20px;-moz-box-sizing:content-box;box-sizing:content-box;position:relative;font-family:Roboto,Noto,sans-serif;-webkit-font-smoothing:antialiased;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out;border:1px solid #dadce0;border-radius:5px;margin:6px 0;background:#fff}google-codelab #drawer ol li a:active,google-codelab #drawer ol li a:focus{background:#c6c6c6;-webkit-tap-highlight-color:transparent;outline:0;border-color:#c6c6c6!important}google-codelab #drawer ol li a .step{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}google-codelab #drawer ol li .step:before{content:counter(li-count);display:inline-block;font-style:normal;width:26px;min-width:26px;color:#fff;background:#80868b;border-radius:50%;text-align:center;height:26px;vertical-align:middle;line-height:26px;margin-right:8px;font-weight:400;position:relative;z-index:2;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out}google-codelab #drawer ol li[selected] a,google-codelab #drawer ol li a:focus{color:#212121;font-weight:600;box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 2px 6px 2px rgba(60,64,67,.15)}google-codelab #drawer ol li[selected] a{border-color:#fff}google-codelab #drawer ol li[selected] .step:before{font-weight:600}google-codelab #drawer ol li[completed] a{color:#212121}google-codelab #drawer ol li[completed] .step:before{background-color:#1a73e8;color:#fff}google-codelab #drawer .metadata{color:#777;font-size:14px;padding:16px;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}google-codelab #drawer .metadata a{color:currentcolor;margin-left:4px}google-codelab #codelab-nav-buttons #menu{display:none}google-codelab #drawer ol ::-webkit-scrollbar{-webkit-appearance:none;width:7px}google-codelab #drawer ol ::-webkit-scrollbar-thumb{border-radius:4px;background-color:rgba(0,0,0,.5);-webkit-box-shadow:0 0 1px hsla(0,0%,100%,.5)}@media (max-width:768px){google-codelab{display:block;position:relative}google-codelab #main{height:100%}google-codelab #codelab-nav-buttons #arrow-back{display:none}google-codelab #codelab-nav-buttons #menu{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}google-codelab #drawer{width:256px;position:absolute;left:0;top:0;bottom:0;z-index:10000;will-change:transform;box-shadow:2px 2px 4px transparent;pointer-events:none;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0);-webkit-transition:box-shadow .3s,-webkit-transform .3s ease-in-out;transition:box-shadow .3s,-webkit-transform .3s ease-in-out;transition:transform .3s ease-in-out,box-shadow .3s;transition:transform .3s ease-in-out,box-shadow .3s,-webkit-transform .3s ease-in-out}google-codelab[drawer--open] #drawer{box-shadow:2px 2px 4px rgba(0,0,0,.15);-webkit-transform:translateZ(0);transform:translateZ(0);pointer-events:all}google-codelab #main:before{content:"";top:0;left:0;right:0;bottom:0;position:absolute;-webkit-transition:opacity .38s ease-in-out;transition:opacity .38s ease-in-out;background-color:rgba(0,0,0,.3);z-index:10;pointer-events:none;opacity:0}google-codelab[drawer--open] #main:before{opacity:1;pointer-events:all}}google-codelab #steps{overflow:hidden;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;position:relative;-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1}google-codelab google-codelab-step{display:none;width:100%;-webkit-transform:translateZ(0);transform:translateZ(0);position:absolute;top:0;left:0;right:0;bottom:0;padding-top:32px;overflow-y:auto;overflow-x:hidden}google-codelab google-codelab-step[animating],google-codelab google-codelab-step[selected]{display:block;-webkit-transform-origin:0 50% 0;transform-origin:0 50% 0;-webkit-animation-fill-mode:both;animation-fill-mode:both}google-codelab google-codelab-step[animating]{pointer-events:none;position:absolute;overflow:hidden}@media (max-width:768px){google-codelab google-codelab-step{padding-top:8px}}google-codelab #drawer ol li{padding:0;margin:0}google-codelab{height:100vh;left:0;position:fixed;top:0}google-codelab #codelab-title h1{width:auto;color:#3c4043;top:0}google-codelab .title{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1;margin-left:10px;overflow:hidden}google-codelab .no-return-url{display:none!important}google-codelab #drawer .metadata .material-icons,google-codelab-about .about-card .material-icons{top:0!important}body[type=codelab] devsite-footer-utility .devsite-footer-utility-button>a,google-codelab .button-blue,google-codelab .button-green,google-codelab .button-primary,google-codelab .button-red{color:#fff!important}body[type=codelab]{color:#5c5c5c;font-family:Roboto,Noto Sans,Noto Sans JP,Noto Sans KR,Noto Naskh Arabic,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Bengali,sans-serif;overflow:hidden}body[type=codelab] google-codelab{opacity:0;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}body[type=codelab] devsite-googler-buttons{bottom:95px}body[type=codelab][ready] google-codelab{opacity:1}body[type=codelab] .devsite-main-content{max-width:100%!important;padding:0!important}body[type=codelab] a:focus{text-decoration:none}body[type=codelab] .devsite-badger-award{left:256px}body[type=codelab] .devsite-back-to-top-link,body[type=codelab] .devsite-banner,body[type=codelab] .devsite-footer,body[type=codelab] .devsite-heading-link,body[type=codelab] devsite-code:after,body[type=codelab] devsite-header{display:none}@media screen and (max-width:840px){body[type=codelab] .devsite-badger-award{left:0}}google-codelab-about .codelab-title{width:100%;text-align:center;font-size:32px;margin:20px auto 30px;line-height:45px;max-width:700px}google-codelab-about .codelab-title .token{display:inline-block;margin:0 5px}google-codelab-about .about-card{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;border:1px solid #dadce0;border-radius:5px;background:#fff;max-width:800px;margin:0 auto 30px;padding:20px}google-codelab-about .about-card h2{font-weight:500;font-weight:400!important;line-height:1em!important;margin:0!important;font-size:28px}google-codelab-about .about-card>:not(:first-child){padding-top:30px}google-codelab-about .about-card .material-icons{margin-right:10px;top:6px;position:relative}google-codelab-step{line-height:24px;display:block}google-codelab-step:focus{outline:none}google-codelab-step code,google-codelab-step pre{font-family:Source Code Pro,Helvetica,Arial;font-size:inherit;border-radius:4px;overflow-x:auto;overflow-y:visible}google-codelab-step code{background-color:#e8eaed;padding:.1em .3em}google-codelab-step pre{display:block;color:#fff;background-color:#28323f;padding:14px;-webkit-text-size-adjust:none;line-height:1.4}google-codelab-step pre>code{padding:0;background-color:transparent}google-codelab-step code em{color:#97c8f2}google-codelab-step code .str,google-codelab-step pre .str{color:#34a853}google-codelab-step code .kwd,google-codelab-step pre .kwd{color:#f538a0}google-codelab-step code .com,google-codelab-step pre .com{color:#bdc1c6}google-codelab-step code .typ,google-codelab-step pre .typ{color:#24c1e0}google-codelab-step code .lit,google-codelab-step pre .lit{color:#4285f4}google-codelab-step code .pln,google-codelab-step code .pun,google-codelab-step pre .pln,google-codelab-step pre .pun{color:#f8f9fa}google-codelab-step code .tag,google-codelab-step pre .tag{color:#24c1e0}google-codelab-step code .atn,google-codelab-step pre .atn{color:#eda912}google-codelab-step code .atv,google-codelab-step pre .atv{color:#34a853}google-codelab-step code .dec,google-codelab-step pre .dec{color:#5195ea}google-codelab-step paper-button{display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;position:relative;-moz-box-sizing:border-box;box-sizing:border-box;min-width:5.14em;margin:0 .29em;background:transparent;-webkit-tap-highlight-color:transparent;font:inherit;text-transform:uppercase;outline-width:0;border-radius:3px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;z-index:0;padding:.7em .57em;font-family:Roboto,Noto,sans-serif;-webkit-font-smoothing:antialiased;box-shadow:0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12),0 3px 1px -2px rgba(0,0,0,.2)}google-codelab-step h2.step-title{font-family:Google Sans,Arial,sans-serif!important;font-size:28px!important;font-weight:400!important;line-height:1em!important;margin:0 0 30px!important}google-codelab:not([theme=minimal]) google-codelab-step .instructions{box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 2px 6px 2px rgba(60,64,67,.15);background:#fff;max-width:800px;font-size:14px;margin:0 auto 90px;border-radius:4px}google-codelab-step .instructions .inner{padding:24px}google-codelab[theme=minimal] google-codelab-step .instructions .inner{padding:0 24px}@media (max-width:800px){google-codelab .instructions{margin:0 0 16px}}google-codelab:not([theme=minimal]) google-codelab-step .instructions a,google-codelab:not([theme=minimal]) google-codelab-step .instructions a:visited{color:#1a73e8}google-codelab:not([theme=minimal]) google-codelab-step .instructions h2,google-codelab:not([theme=minimal]) google-codelab-step .instructions h3,google-codelab:not([theme=minimal]) google-codelab-step .instructions h4{font-weight:400;margin:0}google-codelab:not([theme=minimal]) google-codelab-step .instructions h2{font-weight:300;line-height:1em;font-size:22px}google-codelab:not([theme=minimal]) google-codelab-step .instructions{line-height:24px}google-codelab:not([theme=minimal]) google-codelab-step .instructions li{margin:.5em 0}google-codelab:not([theme=minimal]) google-codelab-step .instructions h2{font-weight:500;margin:20px 0 0;font-size:20px}google-codelab:not([theme=minimal]) google-codelab-step .instructions h3{font-size:16px;font-weight:500;margin:20px 0 0}google-codelab:not([theme=minimal]) google-codelab-step .instructions aside{padding:.5em 1em;margin:2em 0;border-left:4px solid;border-radius:4px}google-codelab:not([theme=minimal]) google-codelab-step .instructions aside p{margin:.5em 0}google-codelab:not([theme=minimal]) google-codelab-step .instructions aside.note,google-codelab:not([theme=minimal]) google-codelab-step .instructions aside.notice{border-color:#ea8600;background:#fef7e0;color:#212124}google-codelab:not([theme=minimal]) google-codelab-step .instructions aside.special,google-codelab:not([theme=minimal]) google-codelab-step .instructions aside.tip{border-color:#137333;background:#e6f4ea;color:#212124}google-codelab:not([theme=minimal]) google-codelab-step .instructions aside.warning{border-color:#ea8600;background:#fef7e0;color:#212124}google-codelab-step .instructions aside.callout{background-color:#e8f0fe;margin:20px 0;padding:15px;border-left:3px solid #185abc;border-radius:4px;color:#212124;font-size:14px;line-height:1.5}google-codelab-step aside.callout b{color:#185abc}google-codelab-step .instructions ul.checklist{list-style:none;padding:0 0 0 1em}google-codelab-step .instructions ::content ul.checklist li,google-codelab-step .instructions ul.checklist li{padding-left:24px;background-size:20px;background-repeat:no-repeat;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAAWlBMVEUAAAAxokwwoks1pFAxokwxokwxokwxokwxokwnnkQnnkQnnkRou3y84cTS69cxokwonkQxokwnnkRqvH1VsmtluXlVsmsnnkRdtnLw+PIxokwqn0YinEAfmj3goh/UAAAAGnRSTlMA2CcEo+6AQT7+2IOBJxPl27alhoBnX15SCCe258UAAAB+SURBVEjH7dA5EoAgEERR3BcQ923Q+1/T0SqKlNbMouP3gxkRFvZpyQb64VSQT4mOcYc8mU5DnqIG8zXoozj4d34tML+YrET8XBFx4e2F4oAL4N7J3EUB/EfSUwD/zG3hvFdROu9XtL31vgXguQA9F6DnAvM8WbOHpkXYD3cBBCcPjtASYjwAAAAASUVORK5CYII=")}google-codelab-step .instructions h2 code,google-codelab-step .instructions table code{background:#fff}google-codelab-step .instructions .indented{margin-left:40px}google-codelab-step .instructions strong{font-weight:600}google-codelab-step .instructions :link paper-button{text-decoration:none!important}google-codelab-step .instructions paper-button{display:inline-block;border-radius:4px;color:#fff;font-family:Google Sans,Arial,sans-serif;font-size:14px;font-weight:600;letter-spacing:.6px;padding:6px 16px 6px 12px;text-transform:none}google-codelab-step .instructions paper-button a{text-decoration:none;color:inherit!important}google-codelab-step a paper-button{display:inline-block}google-codelab-step .instructions paper-button.colored{background-color:#1e8e3e}google-codelab-step .instructions paper-button.red{background-color:#d93025}google-codelab-step .instructions iron-icon{vertical-align:sub;margin-right:7px;margin-left:3px;font-size:16px;top:-1px;position:relative}google-codelab-step .instructions img{max-width:100%;vertical-align:bottom}google-codelab-step .instructions .image-container{text-align:center}google-codelab-step .instructions table{border-spacing:0}google-codelab-step .instructions td{vertical-align:top;border-bottom:1px solid #ccc;padding:8px}google-codelab-step .instructions table p{margin:0}google-codelab:not([theme=minimal]) .instructions h3.faq{border-bottom:1px solid #ddd}google-codelab:not([theme=minimal]) .instructions ul.faq{list-style:none;padding-left:1em}google-codelab:not([theme=minimal]) .instructions .faq li{font-size:1.1em;margin-bottom:.8em}google-codelab:not([theme=minimal]) .instructions .faq a{color:inherit;text-decoration:none}google-codelab:not([theme=minimal]) .instructions .faq a:hover{text-decoration:underline}google-codelab-step .instructions .faq a[href*=cloud\.google\.com]{padding-left:22px;background-size:20px;background-repeat:no-repeat;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAC9FBMVEX////u7u7v7+/ZRDf/zEH/zkPbRTlJifT/z0XYRDhRj/XWRDdPjvVOjfX/zkH/z0fXQzdGiPXUQzdMi/VKi/Xr6+3t7e1SkPXbRDdLjPW70fPaQjVOjPXx8PD9/f1nnff19fXRQzdHifVJhOxEh/Tu7/JLifH9y0DUQjVtofhOi/NKh+9HgelGf+b+7saaWXX/zDz+yTrZRzrRQjT7+/vxx8PeqkTsuj32uzrOQzdqn/j39/fr6Oj9yT/3vjvaQDPUPTBJivVKifPq7O/z0Mz968T4wj7zwD3NPTHGPDD0+P9Bifrv8/Xx8vJJhu5EfOPo3Nv/0Ez8y0rxvT3ZPjBDi/tBhPT55ePkysj+3Hr/0VLHVErcpkPcTUH7xD35wTzztznpsTjKRTjo8P3U4/z6+vr//PmQt/mBrff//fayy/ZUkfZjmfSXufP78/L18+//+Oj66Of+9eBCdt3t59f/89TvxcPsurXasKztqKL+4Y7jjIT0033ShH3hc2ngaV7/1F3/0ljjv1fbWU37xkDaoEDCSj/xujvptjvutjrxtjn8xDflrDb5vjXJQjX2tzP4+v+bwf3I3Pyiw/t0pvhel/VZlPW90fP/+/DV3/Cdu+/e4uv33Nk+btP+8Mz+8Mniwb7+7L3u371Vdrv+6bDusq3+56j+5aTx2Z+Gjpj+4pbolI3RjYehnIT+2XPedW370mbHaGDMZl3bY1jQVUvbU0f/00PYTkLKSj/tsjjwpjfeXjfnfjbEQjbXPjTSPS/w9vu50vs7hfr5+flypPf89vb89fTF1fHM2vBsnfB3ou/67+6swOpekert6uNdi+M5deLq4OA/dt83bt80a9xmjdby19VKc8jx5cf12cP/7r/gwr+pnr/v4b7xwLtffbf+6rHx3KnorKjYqKTXpqHXo57aop3ZkovTwIboh3+jX3f30XDgenCWUm3Kc2zIsGnMcGj4y1zgYFXgX1TfrEXWlz7mhjfsrTbkljbabDbcVTbsmTBDSJ02AAAFFklEQVRYw+2WV1jTUABGkyZpi6W0tKUWC0hBsAporbMWrCgqKA6WCooK7r333nvvvffee++99957b33x3uTetIEGnnzx83y89Tunf25SWuI/f4Oqk6cU4ijLkr9sfp5Ckyfk6h8o5JkH4umpVPr5+fnqdLro6GiZTBYkk3l71z5SNbdA8zyt8wLYhKefUunr66vV6WQsMDExF3/StLytka/0VPopfbUgoEWBoCBv76lNcj6AFnnQ+6MB0BcsKNA8x2M4iPbjAThQgVsAA545TWg8RQlc5MMBflrg8wHgg3NsIX6OAa10Lr6SDQgHgAXetSeJD5iqRTrytfAKdHwgiAu0EZ3QvEBhYLLAu6+LDoIOtCApKSnVUqoBDondyiahoTggazt9ej4hd94Wxbya4z5wskZoYVgA0/NXlGSlVr3iJpOpOMsbt36r4BphsACQHSezBfSP4zQQs8Zs3n7P3QmeDQ8OAwVwdkEt0ADhhI3jFCxms7lfu+yBthHhwcFhoaCgnXZC4obqPYbZPABqgHVpNj/yak1QABdRQatriwcIiXy312alrBRFqff175jFb9lrZecIVGgz09+NTurjbw/LNFmtUqnVw8PRM0AY6JowaHFN7iIKz2rvtCIjfbBPkvF992aapABKakzvKByQymxbO5e7iDb8BfjoA5uWsPv7kJxPSi4Oy7RpgA/+kl8KArdolUq1uDMshLXCA8jD6NXqpEQPAmDCszibTSFlccS4+DMGMCrVtvdzO0eEh59CPulfgsDYoQ/Rb4q1mbiCsX8zZ2AVrQLIV16uGRGMTxD6PIEkh2TBOPA4og09nSeYJoe+fND1SxdmSRCBgg+6PypE9o01mTRq6Bs+1yEQqcCHJK69cn62xDnA3YS6W4qD51kBA9LV6MX5aXKuIB90/wyJnztCQFMJKuif2zQANfANn9CnchlYzyWYF7OFV8ATgAPV624BAzQKCgTSSxIsDxIYOQR00m7kFgjpsQP6CgUlNWxFd7LDAEaOoPvoc74ESa1NsUBXK9QelLHfafTqclZmKwXvsjpJihyi/mkc9j3Su/P7BngxeMJHPXoru9vbCP4vYZ9aT/DMpxkAW7CsCCFZ3D5I5BowAPnp1wgnqRaGQ84kduEKemchwC5BJ1jX6Tt6Ey50SvBiMH1AgCvYA1i9BP8UkRtjsW8c3E5wjcstfCBxUQgW/APt9sBAfxIR/2ScBvnS5O6EgA4baL7w+hzpRELyhNSqZ1Jgf/0xQsgSuXPCQzxBSPwaG/YpawyRhRnrvBh0DvSGLkITn2A9M/Kljt5HiawsTGAwxVbohS7+JGPfOBgNEJDK3wg60d2EBTvM2KdWE27opPLCWPqEZP9W+BCLfIoa3JFwxyoLX4haVNFHSMUecQrsGx8RbmmZxgfoIV9KIeoDhg4d+jXTzPubCREWWmhOB0SV5hgxYkRGxpgxY36i+2cEgRixQLN1FpqnYJWkKklJScNLjxy5MyPjhwf0Kegn9yZEmZdAuxQqVwEkDR8+auTO77uhD3XKsbWOeKBZL4ugULlyuXJlyjQaNeqbFfhG6BuSwdeqOF0H0q6FBmyhUaNdu6FPQd/RHw4Qpxfj4heMatCwIZywh1JTLAYD+mkhSoeBLoGoqCENYGDXL943oB834iyhLdjHgfF79mHfsb0bkRvLBhZDjB49euzYsePH/96/vzyHeXN3Inc6zSuCqcRys1tJjm4xdYj//JP8AXE5S/JuAn7MAAAAAElFTkSuQmCC")}google-codelab-step .instructions .faq a[href*=stackoverflow\.com]{padding-left:22px;background-size:24px;background-repeat:no-repeat;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAATwAAAE8CAMAAABq2/00AAAA4VBMVEUAAACCg4aCg4aCg4bIj0P1fx/2hh+ojHCojHCojHD2ih/UjCn0eiD0eiD2hB/2hR/RjjDUjCnKkkPUjCnUjCn2ih/UjCnCllPCllP2ih/CllPCllPCllP2ih/CllPCllPCllP2ih/2ih/CllPCllP2ih/2ih/CllPUjCnCllPUjCn0eiD0eiD2ih+ojHD0eiDUjCn0eiD0eiCojHDUjCn0eiDUjCn0eiDUjCnUjCn0eiCojHD0eiCojHD2ih+ojHD2ih+ojHCojHCdiXaViHuCg4aojHD0eiDCllPUjCn2ih8XYwy7AAAARXRSTlMAv0CAEEAQv4BA7++/gCBQQN8wIIDPv2Dfv5+PUDDPryCAcO+/r49wn4Bg79/frJ9QcGDPr6+Pj3DPz2AwIJ9wYOaPVDAbIL/gAAAGhElEQVR42uzbsYrCQBDG8WmyxaJJlcIixQmxMSIRgiBB7Bbm/R/oPAnH3e0SxwSvyf/3DLt8zDeMAAAAAAAAAAAAAAAAAAAAAAAAAAAA4F9k7Xm1Xwlek53WqyY87AVWfbHumvCTE5hkIZYJTFyIrQU2+xA5CmxWIULcWq1DTGBzCrFcMDluC4ENcTtDEyKdwKYLkYuAuH27ggFtuj7ETgLiNo0B7Z3c1YnNMUQaWbTC6/W1uKUPHbha7wr60GnP7ot3YpGHWCsL5Wod1JP70LMsU+H12424nfDsBj4XgzMD2kN20F82YtDSh965nf61JW7Nzy7iKwY067OLlfJcw/qx1KQPQ9zSh1aaVtGHGnxoUummrB97WZhSk3byRM/6UST3mpQRtwZbTTo4GXdhQLvbaNJVxnX0oSMftyBuDQpN8o4BzaDWpFrG5KwfH5zXpJuMCfShox83pw812GnSxrx+XPI5hjvowF7ttawfB5km+Yq4nf5xS84x5lR7nGPMqfaI2znVHgPajGqPc4w51R7nGJ/sm29P2zAQh49h1kJgJHGWlrbQItAIebNO67owadpgwOzv/4Wm8S8NLsXxGSTu/HyEk/O78+McRu0FH4pQe2EdA6P2wjoGRu2FdotQe2EdA6P2wjoGRu2FdotQe+GChlF7DNcxKulN7bFbx4h1lPlSe+x8aKK1Tqae1B6zdYxM35BLP2qP1TqGjPQdmfCi9ji125l+ICp9qD1G6xixXiSPPag9PusYiW5SCLza49JuK/2YKEOrPSYXNBFpkyTGqj0e6xiFXkoukWqPwzpGrJ8iEyi1x8GHnuknSUqU2qO/jlHpVeQpwhB8oL6OISK9mkK4qz3q7bbQzxFV7mqP9jpGqi1IYme1R3sdI060BTPpaAiot9ss0hZkwk3tUb+gyUJbkEzd1B55HxqfaQvy1Ent0V/HKCNtwVy0NwSfGPhQMdcWRJWD2uOwjiFzbcFZ3F7tsVjHmDqMLTZqj3S7bTm2RJloZwh2maxjyJnd2NJS7XFZx7AcW2QrtUe93dZUDmOLjdrbaTTa7e9fNgj1i7ZjS9lK7dU+dPvzzgaRZ8elpPZji73a2/j749vOLuWytRtbCmmv9jghLMcWuw936zfwwnZssTAEexw+VidTmstn1N4Wr2/2gcrBlO6HY3eHKNqPLYfh2FmPLeZ/aXvh2D1Q2o0tYkHt8ZxQliIybTm2NNXex30IWI8tcePDPYSAywPv+61w7NwfeHfJHrvJS44tSQmUGan+oCfAgTi3fOCly1D952A4eqkH3gTocqDuOT5NX2JsmQJZhFrkaHwy8fzAmwNdeuoRRgQiTakEugyUSR2B+LFlDoTpK4M6AvH/pUUC6JIqAyMCMQ+8pMe8E2XgGIFlxKxbAIyVgUUEWj/wUh6QAZQBIgJlzqlbQKwMUBE4Tdh0C4ChMsBFoMgiJt2ivpvVoCNQznh0CxDKAB2B9dgSA2l6ygAbgfUDbwG0GSgDPxEo5tS7xYq7GT4CU8Im6pbRsNkxMBFIex5ezqQ3qM8fPgL5kZ6Mj1QNLgKpR90y4tNjpbxFID+ExwjsAUN8ReAYmOIjAlmePF8RyLHv+orAPgScI3AIb531tQZ/XjECR3DL5VoTeDOsXTVYf8UIFHDLu6sm8GZAFA8ZgccQimcgLCPwNBRvOROLCExD8Z4mXR2BRxCK5+wCx6F47hHYC8Vzj8BJKJ5zBPYhFM85Agf0i3dx3ulcdLubm5e+I3BEv3id65r7Ov70EoGCV/EW+NrpdLu/cHWkX7zz65pn6hiK9689O8hJKIaiMCxK0nYzTBgSYxDs/pekiTohEq/v0eRKv28J/+zkXMbrF2IdxQvEC3ScOF7r6+3LrtZDa1vxVinfHaeId+qjTBCv9kGO4i1XJoi365/EWxCv9EF24i1XJ4jXv4iXKd7p/uNt+yjt/uO1PspZvOVmmGcPrZ1q3ZUi3qoDaNva4WYdj5PFu2nHMm+8nzqKF4y3vuOreL923PcrqngRz6291FrKXrxbdWzifXB6iydehHh5iDco3maQpxnivQ2yEU888cQLEi8R8cSLES8R8cSLES8R8cSLES8R8cSLES8R8QbFexzkPEO86xxA4on3F+LlIZ54QeLlIZ54QeLlIZ54QeLlId6qeOk8/BviiRciXibiiRciXibiiRciXibiiRciXibiiQcAAAAAAAAAAAAAAAAAwHTeAe21evvWi2VXAAAAAElFTkSuQmCC")}google-codelab-step .instructions .faq a[href*=support\.google\.com\/webmasters\/]{padding-left:24px;background-size:24px;background-repeat:no-repeat;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAMAAAD04JH5AAAAolBMVEUAAADW1tbW1tZ6enrQ0dJ6enrMzMzq6+zq6+x6enru7+/m5+ju7+/m5+j////S09REi/XW1tbm5+ju7+9PT0/Q0dK8vLxGjfVZWVlNTU16enrMzMzIyMj09PS/0uuSkpJpaWmbm5tim/e0tLSEhIStx+3e3+GsrKxwcHBZk/dPk/R1p/KPtu/U3eqmpqZlZWVfmO5woeqHreWvwN6nu9qLi4vZSE73AAAADnRSTlMAEcxmzO7MzDMz7u6IiHn/rpYAAALMSURBVHja7dXpjtowFIZhUkqZlSV1ncQdEsK+zD7T+7+1xjTiwxVOAmeORyP5+2UspPchEtDy8/Pz8/Pz8/M7cZeduHKdyxbL0FfVAMUraHdUHUB12i22tZWqBRSDgKFfC4CApV8PgIClXw/gE6hyTd/lAR7gAV8fEHwbWtc/ul/WfQ8IfQKAIECfCoCA3sdq+nQB+nQABIQ+CQABtY9Z+lQB+gwACBj6AFAE6DM9AL0fAalPB/yGgNAfntwHAAJKnwCAwNLneQAAVAvM/ttzVLlB4z2/A6AFVoDRf43IfewVgGKNAG/Uvrl39BsCXqh9cy8nA/51tmk63+jDZp6m9wTA4DzANiyW6lOqTxAMHAD22XASReuwpKDvELCNookBGJwx9E8B3OvsQp8e9GmOviNANA/Dh4k+TApBukHfFSBa7/I7whqf3xWA/gOAoU8DDJwBCHk+wIAw9CsAPw/W++CFB/MAD/hCgL59PXPS8toRYKHEndkTauEQIIUQ0hToG2eAXOicKdBXmSPAo9CTpkDo5U4Ad6IEGILy0gFgFJctCACIh/yATABwIChvVyE3IBR7AAQAiOmIGZADAMEBQMkRL+AJAAgOALGUI07AQgBgCPb3uRbwAaYAGAIAZlIL2AA5AIYAgJXUAjaAAsAQADCWO4EjAAQGQAvYAUsDsDQAeuwAMZvu89PZ/jZhBmQCi2dl60+MPiMAf8UgZEUpK/LoJ4oX0C9LIIyF0U8yXkBPVCzRWzIDZjX9sWQG9Kv7ScYN6KnKfizZAf2qfpLzA3p5RV9JboDeytp/kk4Ao5WtP+UFQKCO9sdTSQQ03+OR/kxKdgAWZv/11VI6AWBmP5HSNQD5zwQknwxIqIBu468hBgDqNYCuFXBDASSNAbdWQHB1PiBpDLgOWtZdXPEDri/QswjYAOjbF9x0OQHd26Dl5+fn5+fn5+dn7i/3LEaKJNV/0wAAAABJRU5ErkJggg==")}google-codelab-step .instructions .faq a[href*=android-developer],google-codelab-step .instructions .faq a[href*=developer\.android\.com]{padding-left:20px;background-repeat:no-repeat;background-size:20px;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGAAAABgCAMAAADVRocKAAAAq1BMVEX///+lyjmfxyGhyCqkyjakyTP+/vuiyS7z+OWlyjKgxyTX57ChyCfa6bTx9uLy9+Sz0l6szk/D24Tt9NrN4ZnK4JSiyCyexh34+/D6/PTp8dPh7cjf7L7k78vc6rnW5qzU5ajS5KPP4p+21GWnzD3F3Yi813Kx0ViqzUWexhr8/vjv9d7Z6LKy0lyZxADh7cLA2n2rzkr1+erJ35C61m6uz1KcxRHn8M6/2XgEePWtAAACr0lEQVRo3u3Z2XKiQBiG4Y9ebNO2aCCyzOC+7zH7/V/ZRJZQZaJpWnKS4TlJUItXbX4pFJXK71DTusvccI6z5oMSAutdhDP2uzpK4CxwxsRBGYJdA19qLAOU4s4LkyUN7G4Ude2glmzuRihHKDqAPZhNuJRKSckms37rvctrKMnG728l5cxKMU7JuCF7KEvf87h1gnu0iXK4B2p9Sc3dUgZNMusMLvu42r20LiBXT8JMWRepN1xlGu+fK8/6xFPxwsvH697/eP/j7uDTOvB+dxwX/AaM2SQ+6icrYHDyGmgfWE3irNeCqTaPAwcArydroboAbuMAb8NQRNJn20SYtHK8HaKZzoffhZl5tlNxsD5PsnUQ2b9jwwnO35WvRo3lN/o2TDwKS5M3gokF0w2wZxgIlpY2FpgsgdQPkLXJQar0A/LVIDB6Idp2GxQQrJI/rbq2Voijlc5S9LZs8uYCqBVyXLTZhLW/fSn3hDMmZAQ05I020gT2PmeM+w4uGpLksFs+oEEtbaqJVnpUkz4uyebf6xQK0CY6XjoSC1xQ9/PPr4KB52zuvTrOa5EssC0auM0C0tYKtI0DqgpUgSpQBapAFfifAj90Tn5YZoGnooH8eutB56KDDosGhlTrYiTyk0epVdFAKJLn9rLHRSNfcE4tF0UDcAXlXPhDfGPtjGejEMUDCEdPY8eFHoOADvPAxiDQLBBQkUHAJfoB34UBS/9CfAETe6lZYKZft/QIFe94vicRy7tcvKOkB0PhYOo4zlNWYNvjpjOdZwU+O24OQlynK62EGCF2J9IbpIsy/P0I3CHW+Qj8qQJVoAr8VOCx3EB+YvDSwIDmXzaW4oZZseU6Lfr5aaAUPT8uyPuT33VeIpRkI5RHyRQfHEKFUj2UJuh1GjaQsxudKECl8jv8A6GtQkKSkMLrAAAAAElFTkSuQmCC")}google-codelab-step .instructions h3>a[href*=github],google-codelab-step .instructions h3>a[href*=github]:visited{color:#000;text-decoration:none;padding-left:24px;background-repeat:no-repeat;background-size:18px;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAflBMVEUAAACXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZaXlZbf2s+YAAAAKXRSTlMA+SAC7QrIBPXROWMX17rCSmusXEaAD9zNeXFWJqOLMx3mtJJAK5xP4Jw4LyAAAAT6SURBVGje1NbdcqJAEAXg0zJAQEFA0QhojJHE8/4vuBfrJlvQGHSGbO13CzVT09M/g//HIssPRZAYIUkxSVAc8myBSfnrMjVUmbRc+5jEsUqFN0lazeDYogo4SlC5jPq6EI4mxRpOhKuId4pWof228y0fsJ1bbp0lfFCS4XFNSgtpg8eEO6EV2YV4QBvRWtTiXl4udEByD3fxCzpS+LhDk9CZpMFosaFDJsZItdApqTHKnM7NMULOCeQW5534zDUnUuOmWDgRiXFDYzgZ02CQn3BCiY8BXsFJFd7YQjLPkeGDTPRsRhZVK+zIABxX+yfe6Wm/OgL4YIe0UIQRO8x1jm/yiHeI8s11RdP7FKJvx649PmUBRwoyfNqza6dUktzsNt7HliNsa+9m95UGXSl7XvQn2OV0qOpzO1tsNotZe66rw+lyXbb08bcX9qToyNgjYTcoS3PaxT4UflydzLJ7nFDYk3V+SdhzQZfnQTP89VW5jPDbmRTAWvDdnAq1zFnC2pLfHHnFn9uYK3yJ+HOhZoRPa2peYe2VmjX+KKjawNKGqgJXC6HqDEtnqmSB3yrqSlgqqau+UkAVwVLEKz1tZxxQw1LNATObSNvHOqUqCGEtDKhKAcAXqlo40Ag14g92D77BiTcO9pByqNbsDfeIcvCK3+HI++AlG2piOBJTY4AjNVs4s6XmiMwitSzSK0Nu0bQs2leOAzUzODOj5qDPYvHgTCj6TA703HLoog+oxGIgWgzHBMbigWnx1DSQyTcOqBDw34Sav9q1sx1HYSAKoNcYE4cl0AlhIB22rF3//4PTI43ULbrMYjzKy5zHROiGyNhlyqAXDC5z8Acc6mcFu3+OpeCD+Y87ONMRR1isik6qet+wah3gzMEwfIPXLIsB9sQp4UxJnL2pDFRwRBHrauoEZHDkaeoV5PSKKpNydMTSCk4oTawO8O07Nva9JN+8Z0skHNgk5l3bkf7hLUcjW+CceH2B1YqeeDmzTXU5sB/EE4rZmDucsA9ksBtvJuoQq4SaDE5sqc8n2+eaNyqBOTmHtcycG8xo3B4lrMgjmZ0GrwtYaQsLbUBmImZeojKuHRbyHjRmz5ZFQRUdByfGxCPEfPJW07gbVyVoiU9xIwYz97GVs1LD5oMmbPknvcKntLmXNNDvT2GBEV1WXXyadjA0Q64bIMygLsTo00aCsbmWfCbfDOEnt6QF8EzjlBi6BasVdscU5HYwbdz9LO65y9ae4tjKwTzDTJUZfxlPJjRLhoELfdPHgNrl9ZIFK6I5LhjyxOB75QdFsqAEVIKmCW+qcZ0B9xvOPft7eReaVnFPRPmj1lPvbcJdx6toUrkB46zpmyeAnFLViMGDZvSkKfo8Y3ikAORjB8RVqonIT4+hxJjW/qRRzezNvd1VoegKoG1uGOPRhBomaktfAok/PJ9a3PykQEk1xsQ0bqtg5Pk/+04qBtryotDlG4wpaJTvzS7Q3sCwDdbhgu1sw9yi7V/9XFSEb3MwbAbXYWn5H7zF3+5J2gZHNhuPX5frsaqaOvWpsAw+rC3FY6tg/cRMYU88zya4DzGbV7oL3npYQNWugmuFZSLtIlhHWOwcrA8OzrAgT3pdsD5J2PH2a4L3HuzdStvgMscq8j2hL/e5wcm7BLA2OuBbFebVKWBirYR/D6OWc16JizqEO0WUCrHzMMrbCZFGBf5j/QYa/td1VlNoIAAAAABJRU5ErkJggg==")}google-codelab-step .embedded-iframe,google-codelab-step .youtube-video{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;margin:auto;width:560px;height:315px;border:none;max-width:100%;max-height:51vw}google-codelab google-codelab-step .note:before,google-codelab google-codelab-step .special:before,google-codelab google-codelab-step aside:before{content:unset!important}google-codelab google-codelab-step .instructions aside.special,google-codelab google-codelab-step .instructions aside.warning{margin:10px 0!important;padding:15px 20px!important}iron-icon{font:normal normal normal 24px/1 Material Icons;-webkit-font-feature-settings:"liga";-moz-font-feature-settings:"liga";font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal;font-size:inherit}iron-icon[icon=file-download]:after{content:"cloud_download"}google-codelab .warning,google-codelab .warning :link,google-codelab .warning :visited,google-codelab .warning code{background:#fef7e0}google-codelab .special :link,google-codelab .special :visited,google-codelab .special code,google-codelab aside :link,google-codelab aside :visited,google-codelab aside code{background:#e6f4ea}google-codelab-step td{background:transparent}google-codelab-step .instructions h3>a[href*=github],google-codelab-step .instructions h3>a[href*=github]:visited{background-position:0 3px}google-codelab-step code .pln,google-codelab-step code .pun,google-codelab-step pre .pln,google-codelab-step pre .pun{color:inherit}google-codelab-step code{font:500 90%/1 Roboto Mono,monospace}google-codelab-step pre{background:#f1f3f4;border-radius:0;color:inherit;margin:16px 0;overflow-x:auto;padding:8px 80px 8px 8px;position:relative}google-codelab-step pre,google-codelab-step pre code{font:14px/20px Roboto Mono,monospace}google-codelab-survey{visibility:hidden}google-codelab-survey[upgraded]{visibility:visible}google-codelab-survey{display:block;margin:2em 0;padding:0;background:#e8f0fe;border-left:4px solid #185abc;border-radius:4px;color:#3c4043}google-codelab-survey h4{font-size:16px;font-weight:400;padding:.8em 0 0;margin:0}google-codelab-survey .survey-question-wrapper{padding:.4em 0 1.1em 30px}google-codelab-survey .survey-question-options{padding:.8em 0 0}.survey-option-wrapper{cursor:pointer;display:block;padding:0 0 4px;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;vertical-align:middle}google-codelab-survey .option-text{color:#212121;font-size:16px;padding-left:24px}.survey-option-wrapper input{position:absolute;opacity:0}.custom-radio-button{position:absolute;top:5px;left:0;height:13px;width:13px;background-color:#fff;border:2px solid #3f51b5;border-radius:50%}.custom-radio-button:after{content:"";position:absolute;display:none}.survey-option-wrapper input:checked~.custom-radio-button:after{display:block}.survey-option-wrapper .custom-radio-button:after{top:1px;left:1px;width:7px;height:7px;border-radius:50%;background:#3f51b5} \ No newline at end of file diff --git a/vendor-patches/Android/Android Release Security Acknowledgements_files/app_loader.js b/vendor-patches/Android/Android Release Security Acknowledgements_files/app_loader.js new file mode 100644 index 0000000..74af683 --- /dev/null +++ b/vendor-patches/Android/Android Release Security Acknowledgements_files/app_loader.js @@ -0,0 +1,126 @@ +(function(){/* + + Copyright The Closure Library Authors. + SPDX-License-Identifier: Apache-2.0 +*/ +'use strict';var f;function aa(a){var b=0;return function(){return b=arguments.length?Array.prototype.slice.call(a,b):Array.prototype.slice.call(a,b,c)};function Ha(a){if(8192>=a.length)return String.fromCharCode.apply(null,a);for(var b="",c=0;ca.length?"&":"")+encodeURIComponent(d)+"="+encodeURIComponent(String(h)))}}return b};var Ta=String.prototype.trim?function(a){return a.trim()}:function(a){return/^[\s\xa0]*([\s\S]*?)[\s\xa0]*$/.exec(a)[1]};function x(a,b){return-1!=a.indexOf(b)}function Ua(a,b){return ab?1:0};var y;a:{var Va=u.navigator;if(Va){var Wa=Va.userAgent;if(Wa){y=Wa;break a}}y=""};var z=0,A=0;function Xa(a){var b=a>>>0;a=Math.floor((a-b)/4294967296)>>>0;z=b;A=a}function B(a){var b=0>a;a=Math.abs(a);var c=a>>>0;a=Math.floor((a-c)/4294967296);a>>>=0;b&&(a=~a>>>0,c=(~c>>>0)+1,4294967295a;a=2*Math.abs(a);Xa(a);a=z;var c=A;b&&(0==a?0==c?c=a=4294967295:(c--,a=4294967295):a--);z=a;A=c} +function Za(a){var b=0>a?1:0;a=b?-a:a;if(0===a)0<1/a?z=A=0:(A=0,z=2147483648);else if(isNaN(a))A=0,z=2147483647;else if(3.4028234663852886E38>>0;else if(1.1754943508222875E-38>a)a=Math.round(a/Math.pow(2,-149)),A=0,z=(b<<31|a)>>>0;else{var c=Math.floor(Math.log(a)/Math.LN2);a*=Math.pow(2,-c);a=Math.round(8388608*a)&8388607;A=0;z=(b<<31|c+127<<23|a)>>>0}} +function $a(a){var b=a.charCodeAt(4),c=a.charCodeAt(5),d=a.charCodeAt(6),e=a.charCodeAt(7);z=a.charCodeAt(0)+(a.charCodeAt(1)<<8)+(a.charCodeAt(2)<<16)+(a.charCodeAt(3)<<24)>>>0;A=b+(c<<8)+(d<<16)+(e<<24)>>>0}function ab(a,b,c){var d=b>>31;c(a<<1^d,(b<<1|a>>>31)^d)} +function bb(a){function b(h,k){for(var l=0;8>l&&(1!==h||0>>=8}function c(){for(var h=0;8>h;h++)e[h]=~e[h]&255}var d=!1;"-"===a[0]&&(d=!0,a=a.slice(1));for(var e=[0,0,0,0,0,0,0,0],g=0;g>>1|(a.h&1)<<31)>>>0,a.h>>>1>>>0)}function db(a){return new C(a.g<<1>>>0,(a.h<<1|a.g>>>31)>>>0)}f=C.prototype;f.jb=function(){return!!(this.g&1)};f.add=function(a){return new C((this.g+a.g&4294967295)>>>0>>>0,((this.h+a.h&4294967295)>>>0)+(4294967296<=this.g+a.g?1:0)>>>0)};f.sub=function(a){return new C((this.g-a.g&4294967295)>>>0>>>0,((this.h-a.h&4294967295)>>>0)-(0>this.g-a.g?1:0)>>>0)}; +function eb(a){var b=a&65535,c=a>>>16;a=10*b+65536*(0*b&65535)+65536*(10*c&65535);for(b=0*c+(0*b>>>16)+(10*c>>>16);4294967296<=a;)a-=4294967296,b+=1;return new C(a>>>0,b>>>0)}f.toString=function(){for(var a="",b=this;0!=b.g||0!=b.h;){var c=new C(0,0);b=new C(b.g,b.h);for(var d=new C(10,0),e=new C(1,0);!(d.h&2147483648);)d=db(d),e=db(e);for(;0!=e.g||0!=e.h;)0>=(d.ha[d]||"9">>0>>>0,((this.h+a.h&4294967295)>>>0)+(4294967296<=this.g+a.g?1:0)>>>0)}; +D.prototype.sub=function(a){return new D((this.g-a.g&4294967295)>>>0>>>0,((this.h-a.h&4294967295)>>>0)-(0>this.g-a.g?1:0)>>>0)};D.prototype.i=function(){return new D(this.g,this.h)};D.prototype.toString=function(){var a=0!=(this.h&2147483648),b=new C(this.g,this.h);a&&(b=(new C(0,0)).sub(b));return(a?"-":"")+b.toString()};function gb(a){var b=0>>7|c<<25)>>>0,c>>>=7;a.g.push(b)}function F(a,b,c){G(a,b);G(a,c)}function jb(a,b,c){ab(b,c,function(d,e){E(a,d>>>0,e>>>0)})}function H(a,b){for(;127>>=7;a.g.push(b)}function kb(a,b){if(0<=b)H(a,b);else{for(var c=0;9>c;c++)a.g.push(b&127|128),b>>=7;a.g.push(1)}} +function lb(a,b){H(a,(b<<1^b>>31)>>>0)}function mb(a,b){$a(bb(b));ab(z,A,function(c,d){E(a,c>>>0,d>>>0)})}f.Wc=function(a){this.g.push(a>>>0&255)};f.Vc=function(a){this.g.push(a>>>0&255);this.g.push(a>>>8&255)};function G(a,b){a.g.push(b>>>0&255);a.g.push(b>>>8&255);a.g.push(b>>>16&255);a.g.push(b>>>24&255)}function nb(a,b){Xa(b);G(a,z);G(a,A)}f.Tb=function(a){this.g.push(a>>>0&255)};f.Sb=function(a){this.g.push(a>>>0&255);this.g.push(a>>>8&255)}; +function ob(a,b){a.g.push(b>>>0&255);a.g.push(b>>>8&255);a.g.push(b>>>16&255);a.g.push(b>>>24&255)} +function pb(a,b){var c=b;c=(b=0>c?1:0)?-c:c;if(0===c)A=0<1/c?0:2147483648,z=0;else if(isNaN(c))A=2147483647,z=4294967295;else if(1.7976931348623157E308>>0,z=0;else if(2.2250738585072014E-308>c)c/=Math.pow(2,-1074),A=(b<<31|c/4294967296)>>>0,z=c>>>0;else{var d=c,e=0;if(2<=d)for(;2<=d&&1023>e;)e++,d/=2;else for(;1>d&&-1022>>0;z=4503599627370496*c>>>0}G(a,z);G(a,A)} +f.mb=function(a){this.g.push.apply(this.g,a)};function qb(a){qb[" "](a);return a}qb[" "]=wa;var rb=x(y,"Opera"),K=x(y,"Trident")||x(y,"MSIE"),sb=x(y,"Edge"),tb=x(y,"Gecko")&&!(x(y.toLowerCase(),"webkit")&&!x(y,"Edge"))&&!(x(y,"Trident")||x(y,"MSIE"))&&!x(y,"Edge"),ub=x(y.toLowerCase(),"webkit")&&!x(y,"Edge"),vb=x(y,"Macintosh");function wb(){var a=u.document;return a?a.documentMode:void 0}var xb; +a:{var yb="",zb=function(){var a=y;if(tb)return/rv:([^\);]+)(\)|;)/.exec(a);if(sb)return/Edge\/([\d\.]+)/.exec(a);if(K)return/\b(?:MSIE|rv)[: ]([^\);]+)(\)|;)/.exec(a);if(ub)return/WebKit\/(\S+)/.exec(a);if(rb)return/(?:Version)[ \/]?(\S+)/.exec(a)}();zb&&(yb=zb?zb[1]:"");if(K){var Ab=wb();if(null!=Ab&&Ab>parseFloat(yb)){xb=String(Ab);break a}}xb=yb}var Bb=xb,Cb={},Db;if(u.document&&K){var Eb=wb();Db=Eb?Eb:parseInt(Bb,10)||void 0}else Db=void 0;var Fb=Db;var Gb={},Hb=null;function Ib(a,b){void 0===b&&(b=0);Jb();b=Gb[b];for(var c=[],d=0;d>2;e=(e&3)<<4|h>>4;h=(h&15)<<2|l>>6;l&=63;k||(l=64,g||(h=64));c.push(b[m],b[e],b[h]||"",b[l]||"")}return c.join("")}function Kb(a){var b=a.length,c=3*b/4;c%3?c=Math.floor(c):x("=.",a[b-1])&&(c=x("=.",a[b-2])?c-2:c-1);var d=new Uint8Array(c),e=0;Lb(a,function(g){d[e++]=g});return d.subarray(0,e)} +function Lb(a,b){function c(l){for(;d>4);64!=h&&(b(g<<4&240|h>>2),64!=k&&b(h<<6&192|k))}} +function Jb(){if(!Hb){Hb={};for(var a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),b=["+/=","+/","-_=","-_.","-_"],c=0;5>c;c++){var d=a.concat(b[c].split(""));Gb[c]=d;for(var e=0;e>>=7,a.h++;b.push(c);a.h++}f=Mb.prototype;f.lb=function(a,b,c){null!=a&&null!=b&&null!=c&&Nb(this,a.subarray(b,c))};f.nb=function(){this.i=[];ib(this.g);this.h=0;this.j=[]}; +function Ob(a){for(var b=new Uint8Array(a.h+a.g.length()),c=a.i,d=c.length,e=0,g=0;gg)d.g.push(g);else if(2048>g)d.g.push(g>>6|192),d.g.push(g&63|128);else if(65536>g)if(55296<=g&&56319>=g&&e+1=h&&(g=1024*(g-55296)+h-56320+65536,d.g.push(g>>18|240),d.g.push(g>>12&63|128),d.g.push(g>>6&63|128),d.g.push(g&63|128),e++)}else d.g.push(g>>12|224),d.g.push(g>>6&63|128),d.g.push(g&63|128)}N(a,b)}} +function Rb(a,b,c){null!=c&&(c=c.constructor===Uint8Array?c:c.constructor===ArrayBuffer?new Uint8Array(c):c.constructor===Array?new Uint8Array(c):c.constructor===String?Kb(c):new Uint8Array(0),M(a,b,2),H(a.g,c.length),Nb(a,c))}f.Ub=function(a,b,c){null!=b&&(a=L(this,a),c(b,this),N(this,a))};f.Vb=function(a,b,c){null!=b&&(M(this,1,3),M(this,2,0),kb(this.g,a),a=L(this,3),c(b,this),N(this,a),M(this,1,4))};f.Rb=function(a,b,c){null!=b&&(M(this,a,3),c(b,this),M(this,a,4))}; +f.Cc=function(a,b){if(null!=b)for(var c=0;c>>0,h>>>0)}};f.Fc=function(a,b){if(null!=b)for(var c=0;c=a.g.length)throw fc;var g=a.g[c++];return b?g:a.h[g]};return e} +function V(a,b){return Object.prototype.hasOwnProperty.call(a,b)};function lc(a){if(a.v&&"function"==typeof a.v)return a.v();if("string"===typeof a)return a.split("");if(xa(a)){for(var b=[],c=a.length,d=0;db)throw Error("Bad port number "+b);a.j=b}else a.j=null}function sc(a,b,c){W(a);b instanceof vc?(a.g=b,Bc(a.g,a.l)):(c||(b=wc(b,Cc)),a.g=new vc(b,a.l));return a} +f.Eb=function(a,b){return sc(this,a,b)};f.ra=function(){return uc(this.g.toString())};f.Ha=function(){return this.g.toString()};f.Db=function(a,b){W(this);Array.isArray(b)||(b=[String(b)]);Dc(this.g,a,b);return this};f.xa=function(a){return this.g.v(a)};f.wa=function(a){return this.g.get(a)};f.Ta=function(a){return(!this.h&&!a.h||this.h==a.h)&&(null==this.j&&null==a.j||this.j==a.j)}; +f.kb=function(){W(this);var a=Math.floor(2147483648*Math.random()).toString(36)+Math.abs(Math.floor(2147483648*Math.random())^Date.now()).toString(36);W(this);this.g.set("zx",a);return this};f.Ia=function(a){W(this);Ec(this.g,a);return this};f.Fb=function(a){this.D=a;return this};f.$a=function(){return this.D};function W(a){if(a.D)throw Error("Tried to modify a read-only Uri");}f.Ja=function(a){this.l=a;this.g&&Bc(this.g,a);return this}; +function Fc(a){return a instanceof pc?new pc(a):new pc(a,void 0)}function uc(a,b){return a?b?decodeURI(a.replace(/%25/g,"%2525")):decodeURIComponent(a):""}function wc(a,b,c){return"string"===typeof a?(a=encodeURI(a).replace(b,Gc),c&&(a=a.replace(/%25([0-9a-fA-F]{2})/g,"%$1")),a):null}function Gc(a){a=a.charCodeAt(0);return"%"+(a>>4&15).toString(16)+(a&15).toString(16)}var xc=/[#\/\?@]/g,zc=/[#\?:]/g,yc=/[#\?]/g,Cc=/[#\?@]/g,Ac=/#/g;function vc(a,b){this.h=this.g=null;this.i=a||null;this.j=!!b} +function X(a){a.g||(a.g=new hc,a.h=0,a.i&&oc(a.i,function(b,c){a.add(decodeURIComponent(b.replace(/\+/g," ")),c)}))}f=vc.prototype;f.Fa=function(){X(this);return this.h};f.add=function(a,b){X(this);this.i=null;a=Hc(this,a);var c=this.g.get(a);c||this.g.set(a,c=[]);c.push(b);this.h+=1;return this};function Ec(a,b){X(a);b=Hc(a,b);V(a.g.h,b)&&(a.i=null,a.h-=a.g.get(b).length,a=a.g,V(a.h,b)&&(delete a.h[b],a.i--,a.j++,a.g.length>2*a.i&&ic(a)))}f.Ca=function(){this.g=this.i=null;this.h=0}; +f.Ga=function(){X(this);return 0==this.h};function Ic(a,b){X(a);b=Hc(a,b);return V(a.g.h,b)}f.Da=function(a){var b=this.v();return 0<=Ca(b,a)};f.forEach=function(a,b){X(this);this.g.forEach(function(c,d){Da(c,function(e){a.call(b,e,d,this)},this)},this)};f.B=function(){X(this);for(var a=this.g.v(),b=this.g.B(),c=[],d=0;d=a.keyCode)a.keyCode=-1}catch(b){}};var fd="closure_listenable_"+(1E6*Math.random()|0);var gd=0;function hd(a,b,c,d,e){this.listener=a;this.g=null;this.src=b;this.type=c;this.capture=!!d;this.h=e;this.key=++gd;this.G=this.L=!1}function id(a){a.G=!0;a.listener=null;a.g=null;a.src=null;a.h=null};function jd(a){this.src=a;this.g={};this.h=0}f=jd.prototype;f.La=function(){var a=0,b;for(b in this.g)a+=this.g[b].length;return a};f.add=function(a,b,c,d,e){var g=a.toString();a=this.g[g];a||(a=this.g[g]=[],this.h++);var h=kd(a,b,d,e);-1d.keyCode||void 0!=d.returnValue)){a:{var e=!1;if(0==d.keyCode)try{d.keyCode=-1;break a}catch(h){e=!0}if(e||void 0==d.returnValue)d.returnValue=!0}d=[];for(e=b.h;e;e=e.parentNode)d.push(e);a=a.type;for(e=d.length-1;!b.j&&0<=e;e--){b.h=d[e];var g=xd(d[e],a,!0,b);c=c&&g}for(e=0;!b.j&&e>>0);function qd(a){if("function"===typeof a)return a;a[zd]||(a[zd]=function(b){return a.handleEvent(b)});return a[zd]};function Ad(a){bd.call(this);this.i=a;this.g={}}Aa(Ad,bd);var Bd=[];f=Ad.prototype;f.gb=function(a,b,c,d,e){return Cd(this,a,b,c,d,e)};function Cd(a,b,c,d,e,g){Array.isArray(c)||(c&&(Bd[0]=c.toString()),c=Bd);for(var h=0;h=arguments.length?Array.prototype.slice.call(a,b):Array.prototype.slice.call(a,b,c)};_ds.Kb=function(a,b,c){if(!_ds.lb(a)||!_ds.lb(b)||a.length!=b.length)return!1;var d=a.length;c=c||Jb;for(var e=0;eb?1:a=a.length)return String.fromCharCode.apply(null,a);for(var b="",c=0;c")&&(a=a.replace(sc,">"));-1!=a.indexOf('"')&&(a=a.replace(tc,"""));-1!=a.indexOf("'")&&(a=a.replace(uc,"'"));-1!=a.indexOf("\x00")&&(a=a.replace(vc,"�"))}return a};_ds.yc=function(a,b){return-1!=a.indexOf(b)}; +_ds.Bc=function(a,b){var c=0;a=(0,_ds.zc)(String(a)).split(".");b=(0,_ds.zc)(String(b)).split(".");for(var d=Math.max(a.length,b.length),e=0;0==c&&eb?1:0};Dc=function(a,b){this.h=b===Cc?a:""};_ds.Ec=function(a){return a instanceof Dc&&a.constructor===Dc?a.h:"type_error:SafeUrl"};_ds.Ic=function(a){a=String(a);a=a.replace(/(%0A|%0D)/g,"");var b=a.match(Fc);return b&&Gc.test(b[1])?Hc(a):null};Lc=function(a){a instanceof Dc||(a="object"==typeof a&&a.Eb?a.ib():String(a),a=Jc.test(a)?Hc(a):_ds.Ic(a));return a||_ds.Kc}; +Mc=function(a,b){if(a instanceof Dc)return a;a="object"==typeof a&&a.Eb?a.ib():String(a);if(b&&/^data:/i.test(a)&&(b=_ds.Ic(a)||_ds.Kc,b.ib()==a))return b;Jc.test(a)||(a="about:invalid#zClosurez");return Hc(a)};Hc=function(a){return new Dc(a,Cc)};_ds.Oc=function(a,b){this.h=b===Nc?a:""};_ds.Pc=function(a){return a instanceof _ds.Oc&&a.constructor===_ds.Oc?a.h:"type_error:SafeStyle"}; +Sc=function(a){var b="",c;for(c in a)if(Object.prototype.hasOwnProperty.call(a,c)){if(!/^[-_a-zA-Z0-9]+$/.test(c))throw Error("Name allows only [-_a-zA-Z0-9], got: "+c);var d=a[c];null!=d&&(d=Array.isArray(d)?_ds.Mb(d,Qc).join(" "):Qc(d),b+=c+":"+d+";")}return b?new _ds.Oc(b,Nc):Rc}; +Qc=function(a){if(a instanceof Dc)return'url("'+_ds.Ec(a).replace(/":(c=wd(d),l+=">"+od(c).toString()+"",c=c.qc());(b=b&&b.dir)&&(/^(ltr|rtl|auto)$/i.test(b)?c=0:c=null);return _ds.qd(l,c)}; +zd=function(a){function b(g){Array.isArray(g)?_ds.dd(g,b):(g=rd(g),e.push(od(g).toString()),g=g.qc(),0==d?d=g:0!=g&&d!=g&&(d=null))}var c=rd(yd),d=c.qc(),e=[];_ds.dd(a,b);return _ds.qd(e.join(od(c).toString()),d)};wd=function(a){return zd(Array.prototype.slice.call(arguments))};_ds.qd=function(a,b){var c=cc();a=c?c.createHTML(a):a;return new nd(a,b,md)};_ds.Bd=function(a,b){if(Ad())for(;a.lastChild;)a.removeChild(a.lastChild);a.innerHTML=od(b)};_ds.Cd=function(a,b){_ds.Bd(a,b)}; +_ds.Dd=function(a,b){b=b instanceof Dc?b:Mc(b);a.href=_ds.Ec(b)};_ds.Ed=function(a,b){b=b instanceof Dc?b:Mc(b,/^data:image\//i.test(b));a.src=_ds.Ec(b)};_ds.Fd=function(a,b){a.src=_ds.jc(b);(b=_ds.ab(a.ownerDocument&&a.ownerDocument.defaultView))&&a.setAttribute("nonce",b)};_ds.Hd=function(a){var b=_ds.Gd().location;a=a instanceof Dc?a:Mc(a);b.assign(_ds.Ec(a))}; +_ds.Id=function(a,b,c,d){a=a instanceof Dc?a:Mc(a);b=b||_ds.Sa;c=c instanceof _ds.fc?_ds.gc(c):c||"";return void 0!==d?b.open(_ds.Ec(a),c,d,void 0):b.open(_ds.Ec(a),c)};_ds.Kd=function(a){return a.replace(/[\s\xa0]+/g," ").replace(/^\s+|\s+$/g,"")};Ld=function(a){return a=xc(a,void 0)};_ds.Md=function(a){return String(a).replace(/([-()\[\]{}+?*.$\^|,:#>>0;a=Math.floor((a-b)/4294967296)>>>0;_ds.Sd=b;_ds.Td=a};_ds.Vd=function(a){var b=0>a;a=Math.abs(a);var c=a>>>0;a=Math.floor((a-c)/4294967296);a>>>=0;b&&(a=~a>>>0,c=(~c>>>0)+1,4294967295a;a=2*Math.abs(a);Ud(a);a=_ds.Sd;var c=_ds.Td;b&&(0==a?0==c?c=a=4294967295:(c--,a=4294967295):a--);_ds.Sd=a;_ds.Td=c}; +Xd=function(a){var b=0>a?1:0;a=b?-a:a;if(0===a)0<1/a?_ds.Sd=_ds.Td=0:(_ds.Td=0,_ds.Sd=2147483648);else if(isNaN(a))_ds.Td=0,_ds.Sd=2147483647;else if(3.4028234663852886E38>>0;else if(1.1754943508222875E-38>a)a=Math.round(a/Math.pow(2,-149)),_ds.Td=0,_ds.Sd=(b<<31|a)>>>0;else{var c=Math.floor(Math.log(a)/Math.LN2);a*=Math.pow(2,-c);a=Math.round(8388608*a)&8388607;_ds.Td=0;_ds.Sd=(b<<31|c+127<<23|a)>>>0}}; +Yd=function(a){var b=0>a?1:0;a=b?-a:a;if(0===a)_ds.Td=0<1/a?0:2147483648,_ds.Sd=0;else if(isNaN(a))_ds.Td=2147483647,_ds.Sd=4294967295;else if(1.7976931348623157E308>>0,_ds.Sd=0;else if(2.2250738585072014E-308>a)a/=Math.pow(2,-1074),_ds.Td=(b<<31|a/4294967296)>>>0,_ds.Sd=a>>>0;else{var c=a,d=0;if(2<=c)for(;2<=c&&1023>d;)d++,c/=2;else for(;1>c&&-1022>>0;_ds.Sd=4503599627370496*a>>>0}}; +Zd=function(a){var b=a.charCodeAt(4),c=a.charCodeAt(5),d=a.charCodeAt(6),e=a.charCodeAt(7);_ds.Sd=a.charCodeAt(0)+(a.charCodeAt(1)<<8)+(a.charCodeAt(2)<<16)+(a.charCodeAt(3)<<24)>>>0;_ds.Td=b+(c<<8)+(d<<16)+(e<<24)>>>0};$d=function(a,b,c){var d=b>>31;c(a<<1^d,(b<<1|a>>>31)^d)}; +ae=function(a){function b(k,l){for(var m=0;8>m&&(1!==k||0>>=8}function c(){for(var k=0;8>k;k++)e[k]=~e[k]&255}var d=!1;"-"===a[0]&&(d=!0,a=a.slice(1));for(var e=[0,0,0,0,0,0,0,0],g=0;g>>1|(a.j&1)<<31)>>>0,a.j>>>1>>>0)};ge=function(a){return new de(a.h<<1>>>0,(a.j<<1|a.h>>>31)>>>0)};he=function(a){var b=a&65535,c=a>>>16;a=10*b+65536*(0*b&65535)+65536*(10*c&65535);for(b=0*c+(0*b>>>16)+(10*c>>>16);4294967296<=a;)a-=4294967296,b+=1;return new de(a>>>0,b>>>0)}; +ie=function(a){for(var b=new de(0,0),c=new de(0,0),d=0;da[d]||"9">>7|c<<25)>>>0,c>>>=7;a.h.push(b)}; +oe=function(a,b,c){ne(a,b);ne(a,c)};pe=function(a,b,c){$d(b,c,function(d,e){_ds.me(a,d>>>0,e>>>0)})};qe=function(a,b){for(;127>>=7;a.h.push(b)};_ds.re=function(a,b){if(0<=b)qe(a,b);else{for(var c=0;9>c;c++)a.h.push(b&127|128),b>>=7;a.h.push(1)}};se=function(a,b){qe(a,(b<<1^b>>31)>>>0)};te=function(a,b){Zd(ae(b));$d(_ds.Sd,_ds.Td,function(c,d){_ds.me(a,c>>>0,d>>>0)})};ne=function(a,b){a.h.push(b>>>0&255);a.h.push(b>>>8&255);a.h.push(b>>>16&255);a.h.push(b>>>24&255)}; +ue=function(a,b){a.h.push(b>>>0&255);a.h.push(b>>>8&255);a.h.push(b>>>16&255);a.h.push(b>>>24&255)};ve=function(){return _ds.hd("iPhone")&&!_ds.hd("iPod")&&!_ds.hd("iPad")};_ds.we=function(){return ve()||_ds.hd("iPad")||_ds.hd("iPod")};xe=function(a){xe[" "](a);return a};_ds.ye=function(a,b){try{return xe(a[b]),!0}catch(c){}return!1};Ae=function(a,b){var c=ze;return Object.prototype.hasOwnProperty.call(c,a)?c[a]:c[a]=b(a)};Be=function(){var a=_ds.Sa.document;return a?a.documentMode:void 0}; +_ds.De=function(a){return Ae(a,function(){return 0<=_ds.Bc(Ce,a)})};_ds.He=function(a){return Number(_ds.Ge)>=a};_ds.Ke=function(a,b){void 0===b&&(b=0);Ie();b=Je[b];for(var c=[],d=0;d>2;e=(e&3)<<4|k>>4;k=(k&15)<<2|m>>6;m&=63;l||(m=64,g||(k=64));c.push(b[p],b[e],b[k]||"",b[m]||"")}return c.join("")}; +_ds.be=function(a){var b=a.length,c=3*b/4;c%3?c=Math.floor(c):_ds.yc("=.",a[b-1])&&(c=_ds.yc("=.",a[b-2])?c-2:c-1);var d=new Uint8Array(c),e=0;Le(a,function(g){d[e++]=g});return d.subarray(0,e)}; +Le=function(a,b){function c(m){for(;d>4);64!=k&&(b(g<<4&240|k>>2),64!=l&&b(k<<6&192|l))}}; +Ie=function(){if(!Me){Me={};for(var a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),b=["+/=","+/","-_=","-_.","-_"],c=0;5>c;c++){var d=a.concat(b[c].split(""));Je[c]=d;for(var e=0;e>>=7,a.j++;b.push(c);a.j++};_ds.Se=function(a){for(var b=new Uint8Array(a.j+a.h.length()),c=a.m,d=c.length,e=0,g=0;gg)d.h.push(g);else if(2048>g)d.h.push(g>>6|192),d.h.push(g&63|128);else if(65536>g)if(55296<=g&&56319>=g&&e+1=k&&(g=1024*(g-55296)+k-56320+65536,d.h.push(g>>18|240),d.h.push(g>>12&63|128),d.h.push(g>>6&63|128),d.h.push(g&63|128),e++)}else d.h.push(g>>12|224),d.h.push(g>>6&63|128),d.h.push(g&63|128)}_ds.Re(a,b)}}; +_ds.ff=function(a,b,c){null!=c&&(c=_ds.ce(c),_ds.Pe(a,b,2),qe(a.h,c.length),Oe(a,c))};_ds.gf=function(a,b,c){if(null!=c)for(var d=0;dc.keyCode||void 0!=c.returnValue)){a:{var e=!1;if(0==c.keyCode)try{c.keyCode=-1;break a}catch(k){e=!0}if(e||void 0==c.returnValue)c.returnValue=!0}c=[];for(e=b.Lb;e;e=e.parentNode)c.push(e);a=a.type;for(e=c.length-1;!b.h&&0<=e;e--){b.Lb=c[e];var g=ug(c[e],a,!0,b);d=d&&g}for(e=0;!b.h&&e");c=c.join("")}c=_ds.Sg(a,c);d&&("string"===typeof d?c.className=d:Array.isArray(d)?c.className=d.join(" "):Kg(c,d));2a};_ds.wh=function(a){if(uh&&null!==a&&"innerText"in a)a=a.innerText.replace(/(\r\n|\r|\n)/g,"\n");else{var b=[];vh(a,b,!0);a=b.join("")}a=a.replace(/ \xAD /g," ").replace(/\xAD/g,"");a=a.replace(/\u200B/g,"");uh||(a=a.replace(/ +/g," "));" "!=a&&(a=a.replace(/^\s*/,""));return a}; +vh=function(a,b,c){if(!(a.nodeName in xh))if(3==a.nodeType)c?b.push(String(a.nodeValue).replace(/(\r\n|\r|\n)/g,"")):b.push(a.nodeValue);else if(a.nodeName in yh)b.push(yh[a.nodeName]);else for(a=a.firstChild;a;)vh(a,b,c),a=a.nextSibling};Wg=function(a){if(a&&"number"==typeof a.length){if(_ds.mb(a))return"function"==typeof a.item||"string"==typeof a.item;if("function"===typeof a)return"function"==typeof a.item}return!1}; +_ds.Ah=function(a,b,c,d){if(!b&&!c)return null;var e=b?String(b).toUpperCase():null;return _ds.zh(a,function(g){return(!e||g.nodeName==e)&&(!c||"string"===typeof g.className&&_ds.Db(g.className.split(/\s+/),c))},!0,d)};_ds.Bh=function(a,b,c){return _ds.Ah(a,null,b,c)};_ds.zh=function(a,b,c,d){a&&!c&&(a=a.parentNode);for(c=0;a&&(null==d||c<=d);){if(b(a))return a;a=a.parentNode;c++}return null};_ds.Ch=function(a){try{var b=a&&a.activeElement;return b&&b.nodeName?b:null}catch(c){return null}}; +_ds.Bg=function(a){this.h=a||_ds.Sa.document||document};_ds.Dh=function(a){a=a.h;return a.parentWindow||a.defaultView};Fh=function(a){Eh();return _ds.mc(a)};Gh=function(){};Ih=function(a){if(a instanceof Gh)return a;if("function"==typeof a.Rb)return a.Rb(!1);if(_ds.lb(a)){var b=0,c=new Gh;c.next=function(){for(;;){if(b>=a.length)throw Hh;if(b in a)return a[b++];b++}};return c}throw Error("Not implemented");}; +Jh=function(a,b){if(_ds.lb(a))try{_ds.dd(a,b,void 0)}catch(c){if(c!==Hh)throw c;}else{a=Ih(a);try{for(;;)b.call(void 0,a.next(),void 0,a)}catch(c){if(c!==Hh)throw c;}}};Kh=function(a){if(_ds.lb(a))return _ds.Gb(a);a=Ih(a);var b=[];Jh(a,function(c){b.push(c)});return b}; +_ds.Lh=function(a,b){this.h={};this.j=[];this.o=this.m=0;var c=arguments.length;if(1c&&(c=a.length);var d=a.indexOf("?");if(0>d||d>c){d=c;var e=""}else e=a.substring(d+1,c);a=[a.substr(0,d),e,a.substr(c)];c=a[1];a[1]=b?c?c+"&"+b:b:c;return a[0]+(a[1]?"?"+a[1]:"")+a[2]}; +_ds.Th=function(a,b,c){if(Array.isArray(b))for(var d=0;db)throw Error("Bad port number "+b);a.m=b}else a.m=null};di=function(a,b,c){ai(a);b instanceof hi?(a.h=b,ii(a.h,a.D)):(c||(b=ji(b,ki)),a.h=new hi(b,a.D));return a};_ds.li=function(a,b,c){ai(a);a.h.set(b,c);return a};_ds.mi=function(a,b){return a.h.get(b)}; +_ds.ni=function(a,b){ai(a);a.h.remove(b);return a};ai=function(a){if(a.G)throw Error("Tried to modify a read-only Uri");};_ds.oi=function(a){return a instanceof _ds.Zh?new _ds.Zh(a):new _ds.Zh(a,void 0)};_ds.gi=function(a,b){return a?b?decodeURI(a.replace(/%25/g,"%2525")):decodeURIComponent(a):""};ji=function(a,b,c){return"string"===typeof a?(a=encodeURI(a).replace(b,si),c&&(a=a.replace(/%25([0-9a-fA-F]{2})/g,"%$1")),a):null};si=function(a){a=a.charCodeAt(0);return"%"+(a>>4&15).toString(16)+(a&15).toString(16)}; +hi=function(a,b){this.j=this.h=null;this.m=a||null;this.o=!!b};ti=function(a){a.h||(a.h=new _ds.Lh,a.j=0,a.m&&Rh(a.m,function(b,c){a.add(decodeURIComponent(b.replace(/\+/g," ")),c)}))};_ds.vi=function(a,b){ti(a);b=ui(a,b);return Nh(a.h.h,b)};wi=function(a,b,c){a.remove(b);0=c.length&&b.substr(-c.length)===c})}return!1};_ds.Mi=function(a,b){a=new URL(a,document.location.origin);a=new _ds.Zh(a.href);b=b?b:_ds.zi().href;_ds.li(a,"continue",_ds.Gi(b).href);return a.toString()};_ds.Ni=function(){return"true"===_ds.zi().searchParams.get("kiosk")}; +_ds.Gi=function(a){var b=_ds.zi();a=new URL(a,b.origin);if(a.hostname!==b.hostname)return a;var c=new _ds.Zh(b.href);b="tenant db hl authuser acting_user mv mh skip_cache".split(" ");var d=c.h.sb();d=_ds.n(d);for(var e=d.next();!e.done;e=d.next())e=e.value,e.toUpperCase().startsWith("ENABLE_")&&b.push(e);var g=new _ds.Zh(a.href);b.forEach(function(k){var l=_ds.mi(c,k);k.toUpperCase().startsWith("ENABLE_")&&(k=k.toUpperCase());l&&!_ds.mi(g,k)&&_ds.li(g,k,l)});a.search=g.h.toString();return a}; +_ds.Oi=function(){return new Promise(function(a){window.requestAnimationFrame(a)})};_ds.Pi=function(a){document.body.dispatchEvent(new CustomEvent("devsite-analytics-error",{detail:{message:a},bubbles:!0}))};_ds.Qi=function(){var a=_ds.zi();return!/\.corp\.google\.com$|\.googlers\.com$|^localhost$/.test(a.hostname)};_ds.Ri=function(a){a=void 0===a?0:a;return new Promise(function(b){setTimeout(b,a)})}; +_ds.Si=function(a){var b={};a.includes("#")&&(b=a.split("#"),a=b[0]);a=a.replace(/\.html+$/,"").replace(/\.lab\.md+$/,"").replace(/\.md+$/,"").replace(/\/index+$/,"/");0d?(d=m,void 0!==q?Promise.reject(q):p):new Promise(function(){})}for(var k=[],l=0;lMath.abs(c-b)&&(d=100);b=Ek.find(function(e){return e>=d});document.body.dispatchEvent(new CustomEvent("devsite-analytics-observation",{detail:{category:"Site-Wide Custom Events",action:"pageScrollRaw",label:d+"%"},bubbles:!0}));document.body.dispatchEvent(new CustomEvent("devsite-analytics-observation",{detail:{category:"Site-Wide Custom Events",action:"pageScroll",label:b+"%"},bubbles:!0}));a.K=0}; +Fk=function(a){var b=document.querySelector("devsite-header");b&&(a.h!==b&&(a.h=b,a.oa.disconnect(),a.oa.observe(b,{attributes:!0,attributeFilter:["top-row--height","bottom-row--height","bottom-tabs--height"]})),a.dc=!a.h.hasAttribute("keep-tabs-visible"));if(b=document.querySelector("#gc-wrapper"))a.Qa=b;(b=document.querySelector("devsite-book-nav"))?(a.o=b,a.o.setAttribute("fixed","")):a.o=null;a.j=document.querySelector("devsite-toc.devsite-toc");a.j&&(a.j.setAttribute("fixed",""),a.Ua=a.j.querySelector(".devsite-nav-list:first-of-type")); +a.G=null;a.N.disconnect();Array.from(document.querySelectorAll(".devsite-footer")).some(function(c){if(c.clientHeight)return a.G=c,!0});a.G&&a.N&&a.N.observe(a.G)}; +wk=function(a){a.H=_ds.Pj(a.Ue).height;a.h&&(a.O=parseFloat(a.h.getAttribute("top-row--height")||0),a.m=parseFloat(a.h.getAttribute("bottom-row--height")||0),a.C=parseFloat(a.h.getAttribute("bottom-tabs--height")||0));var b=document.querySelector("devsite-content");if(b){var c=new _ds.xg(b.offsetWidth,b.offsetHeight);b=parseFloat(_ds.dk(b,"marginLeft"));a.Pe=c.width+b;a.yb=c.height}if(b=document.querySelector(".devsite-main-content"))c=parseFloat(_ds.dk(b,"paddingTop")),b=parseFloat(_ds.dk(b,"paddingBottom")), +a.ya=c,a.Oe=b;a.Qa&&(a.h&&!a.h.hasAttribute("fixed")&&a.h.setAttribute("fixed",""),c=a.O+a.m,a.L!==c&&(a.L=c,_ds.Zj(a.Qa,"marginTop",c+"px")));a.j&&(a.Va=a.j.offsetWidth)};Gk=function(a){var b=a.H,c=a.H,d=a.O+a.m;b=b-d+a.F;c=c-d+a.F;b-=a.ya;b-=48;a.bc&&(a=Math.max(0,a.H-a.G.getBoundingClientRect().top),b-=a);b=Math.max(0,b);c=Math.max(0,c);return{Ie:b,nf:d,Td:c}};yk=function(a){window.requestAnimationFrame(function(){return a.Se.ra()})}; +xk=function(a){Fk(a);wk(a);zk(a);document.body.dispatchEvent(new CustomEvent("devsite-sticky-resize",{bubbles:!0}))};zk=function(a){a.W=_ds.Pg(document);Hk(a)}; +Hk=function(a){var b=Math.max(0,a.W.y),c=a.Y>b,d=Math.abs(a.Y-b),e=a.F||0;a.K=Math.max(a.K,b);a.Y=b;a.tc=Math.max(0,a.W.x);if(a.Da)a.Da=!1;else{var g=!a.dc&&0!==a.C;c?(c=a.m,c=g?a.C:c-a.C,e=b>c?Math.max(e-d,a.m-a.C):Math.max(0,e-d)):(b=a.m,g&&(b=a.m-a.C),e=Math.min(e+d,b));e=Math.round(Math.max(0,e));d=a.F!==e;a.F=e;var k=Gk(a),l=[];a.h&&d&&l.push(function(){a.h&&a.h.setAttribute("offset",e)});if(a.o)if(0k.Ie?a.j.setAttribute("visually-hidden",""):a.j.removeAttribute("visually-hidden"),a.Uc!==k.Ie&&(l.push(function(){a.j.setAttribute("max-height",k.Ie)}),a.Uc=k.Ie),l.push(function(){a.Ua&&a.Va&&_ds.Zj(a.Ua,"max-width",a.Va+"px")}),!d&&a.j.hasAttribute("offset")||l.push(function(){a.j.setAttribute("offset", +e)}));l.length&&window.requestAnimationFrame(function(){l.forEach(function(p){return p.apply(a)});a.Rc.ra();a.Sc()});a.Rc.ra()}};Ik=function(a,b,c){a.h&&(a.h.style.opacity=0);window.scrollTo(void 0===b?0:b,void 0===c?0:c);a.h&&window.requestAnimationFrame(function(){a.h.style.opacity=1})};_ds.Jk=function(){this.h=null;this.j=!1;try{this.Ma()}catch(a){console.warn(a)}};_ds.Kk=function(a){_ds.of(this,a,-1,null,null)};_ds.Lk=function(a){var b=new _ds.Kk;return _ds.Bf(b,1,a,0)}; +_ds.Mk=function(a,b){return _ds.Cf(a,8,b)};Pk=function(){var a=this,b={},c=b.bE;b=b.E_;this.G=-1;this.h="";this.ea=0;this.o={};this.H=this.K=!1;this.D=this.C=null;this.j=new _ds.Qj;this.O=new _ds.Nj(function(){return Nk(a)},20);this.Y=new _ds.Oj;this.L=new MutationObserver(function(){return void a.Qb()});"ResizeObserver"in window&&(this.m=new ResizeObserver(function(){return void a.Qb()}));this.F=c;this.W=b||250;Ok(this)}; +Ok=function(a){a.K||(a.K=!0,a.j.listen(window,"message",function(b){a:{b=b.Z;try{var c=_ds.If(_ds.Kk,b.data)}catch(g){break a}if(c){var d=_ds.rf(c,1,0);b=_ds.L(c,8);var e=a.o[b];switch(d){case 3:window.clearTimeout(0);a.h=c.getName();a.D&&a.D();a.Qb();break;case 2:c=_ds.L(c,7);e&&(e(c),delete a.o[b]);break;case 8:c=c.getUrl(),e&&(e(c),delete a.o[b])}}}}),a.j.listen(a.Y,"resize",function(){a.Qb()}),a.j.listen(document.body,"devsite-content-updated",function(){a.Qb()}),a.L.observe(document.body,Qk), +a.m&&a.m.observe(document.body),(!a.m&&!1!==a.F||!0===a.F)&&Rk(a))};Tk=function(a){if(a.C)return a.C;a.C=new Promise(function(b){a.D=b});Sk(a);return a.C};Sk=function(a){if(window.parent&&!a.h){var b=_ds.Lk(4);Uk(a,b)}};Uk=function(a,b){a.h&&_ds.Cf(b,2,a.h);window.parent.postMessage(b.La(),"*")}; +Nk=function(a){var b,c;return _ds.E(function(d){if(1==d.h)return _ds.u(d,Tk(a),2);b=Math.ceil(document.body.scrollHeight);a.H&&(b-=40);if(b===a.G)return d.return();c=_ds.Lk(5);_ds.Bf(c,3,b,0);a.G=b;Uk(a,c);_ds.v(d)})};Rk=function(a){a.N=setInterval(function(){window.requestIdleCallback?window.requestIdleCallback(function(){return void a.Qb()}):window.requestAnimationFrame(function(){setTimeout(function(){return void a.Qb()})})},a.W)};Wk=function(a,b){var c="goog_"+_ds.Vk++;a.o[c]=b;return c}; +Xk=function(){this.h=new Pk};Yk=function(a,b,c,d){c=void 0===c?new Map:c;d=void 0===d?[]:d;this.o=a.toLowerCase().replace("-","_");this.C=b;this.D=d;this.m=c||new Map;this.j=[];this.h={};c&&(this.j=Array.from(c.keys()))}; +bl=function(a,b,c){b=c&&c.length?c:[b];c={};for(var d=_ds.n(Zk.entries()),e=d.next();!e.done;c={Id:c.Id,Xc:c.Xc},e=d.next())e=_ds.n(e.value),c.Id=e.next().value,c.Xc=e.next().value,a.m.has(c.Xc)&&b.forEach(function(g){return function(k){k instanceof Element&&k.matches(g.Id)&&$k(k,g.Xc);Array.from(k.querySelectorAll(g.Id)).forEach(function(l){$k(l,g.Xc)})}}(c));return al(a,b)}; +$k=function(a,b){if(!a.hasAttribute("is-upgraded")){var c=a.parentElement,d=a.nextSibling;b=document.createElement(b);a.setAttribute("is-upgraded","");b.appendChild(a);c.insertBefore(b,d)}};al=function(a,b){var c=a.j.slice().map(function(d){return a.m.has(d)&&b.find(function(e){return!!(e instanceof Element&&e.matches(d)||e.querySelector(d))})?cl(a,d):Promise.resolve()});return Promise.all(c)}; +cl=function(a,b){var c,d,e;return _ds.E(function(g){switch(g.h){case 1:c=a.m.get(b);if(!c)throw Error(b+" is not a white-listed component.");d=a.h[b];if(void 0!==d)return g.return(d);a.h[b]=Promise.resolve();e=a.j.indexOf(b);-1!==e&&a.j.splice(e,1);if(window.customElements.get(b))return g.return(Promise.resolve());_ds.x(g,2);var k=[];if(c.src){var l=a.C+c.src;a.o&&(l=l.replace(/\.js$/,"__"+a.o+".js"));l=_ds.Ci(l);k.push(l)}c.style&&(l=_ds.Bi(a.C+c.style),k.push(l));k=Promise.all(k);return _ds.u(g, +k,4);case 4:_ds.z(g,3);break;case 2:throw _ds.A(g),Error("Failed to load resources for "+b);case 3:if(!c.src){g.J(0);break}_ds.x(g,6);a.h[b]=window.customElements.whenDefined(b);return _ds.u(g,a.h[b],8);case 8:_ds.z(g,0);break;case 6:throw _ds.A(g),Error(b+" failed to be defined");}})}; +gl=function(a,b,c){var d=this;this.h=a;this.Ua=b||new Map;this.Va=c;this.N=this.Y=null;this.m=new _ds.Qj;this.oa=!1;if(this.h.getInsecureHost())try{this.ea=new URL(this.h.getInsecureHost())}catch(e){console.warn("Invalid insecure host",this.h.getInsecureHost())}this.G=0;this.L=this.j=null;this.o=this.ya=!1;this.O=[];this.yb=new _ds.Nj(function(){d.H=_ds.Pg(document)},16);this.W=new _ds.Nj(function(){var e=d.O.slice();d.O=[];e.length&&bl(dl(d),document,e)},400);this.K=new MutationObserver(function(e){el(d, +e);d.W.ra()});this.F=new Map;this.C=new Map;this.D=null;"IntersectionObserver"in _ds.Gd()&&(this.D=new IntersectionObserver(function(e){fl(d,e)},{threshold:[0,.1,.2,.3,.4,.5,.6,.7,.8,.9,1]}));this.Qa=new _ds.Jk;this.H=new _ds.wg(0,0)};fl=function(a,b){b.forEach(function(c){if(a.C.has(c.target)){var d=a.C.get(c.target),e=d.Wl,g=d.dm;d=d.threshold;c.isIntersecting?e&&c.intersectionRatio>=d&&e(c):g&&g(c)}})}; +ml=function(a,b){var c;return _ds.E(function(d){switch(d.h){case 1:"ontouchstart"in window&&document.body.setAttribute("touch","");"scrollRestoration"in window.history&&(window.history.scrollRestoration="manual");a.showLoading(150);try{a.N=new Zi(_ds.L(a.h,5),b,a.appNeedsRefresh.bind(a))}catch(e){}hl(a);a.j=new Ak;_ds.x(d,2);return _ds.u(d,bl(dl(a),document),4);case 4:_ds.z(d,3);break;case 2:c=_ds.A(d),console.warn("Failed to upgrade elements",c);case 3:document.documentElement.hasAttribute("cached")? +il(a):(a.W.ra(),jl(a),kl(),ll(a),a.hideLoading()),_ds.v(d)}})}; +ol=function(){var a=nl,b;_ds.E(function(c){if(1==c.h){if(a.oa)return c.return();a.oa=!0;"ontouchstart"in window&&document.body.setAttribute("touch","");a.j=new Ak;a.L=new Xk;try{a.N=new Zi(_ds.L(a.h,5))}catch(d){}a.m.listen(window,"unload",function(){a.dispose()});b=function(){return"complete"===document.readyState||"interactive"===document.readyState?Promise.resolve(!0):new Promise(function(d){a.m.listen(document,"DOMContentLoaded",d)})}();return _ds.u(c,b,2)}if(3!=c.h)return _ds.u(c,bl(dl(a),document), +3);jl(a);a.K.observe(document.body,{childList:!0,subtree:!0});return _ds.u(c,a.L.init(),0)})};dl=function(a){a.Y||(a.Y=new Yk(a.getLocale(),_ds.L(a.h,5),a.Ua,a.Va));return a.Y}; +jl=function(a){var b,c;_ds.E(function(d){if(1==d.h)return document.body.hasAttribute("ready")?d.return():a.j?_ds.u(d,a.j.setup(),2):d.J(2);b=new CustomEvent("devsite-page-loaded");document.body.dispatchEvent(b);document.body.setAttribute("ready","");document.body.removeAttribute("pending");__devsiteAppReadyResolver();(c=document.getElementById("devsite-splash-container"))&&_ds.ah(c);_ds.v(d)})}; +il=function(a){var b,c,d,e,g,k,l;_ds.E(function(m){switch(m.h){case 1:return b=_ds.zi(),b.searchParams.set("partial","1"),_ds.u(m,a.Qa.get("language_preference"),2);case 2:if(d=m.j)c=new URL(b.href),c.searchParams.set("hl",d);return _ds.u(m,window.caches.open("devsite.pwa_RUNTIME_v2"),3);case 3:e=m.j;if(!e){pl();m.J(0);break}return _ds.u(m,e.match(b.href),5);case 5:if((g=m.j)||!c){m.J(6);break}return _ds.u(m,e.match(c.href),7);case 7:g=m.j;case 6:if(g){m.J(8);break}return _ds.u(m,e.match("/_static/offline?partial=1"), +9);case 9:g=m.j;case 8:if(!g){m.J(0);break}return _ds.u(m,g.text(),11);case 11:k=m.j;try{l=_ds.If(Nf,k)}catch(p){}if(!l){pl();m.J(0);break}return _ds.u(m,ql(a,l),13);case 13:document.documentElement.removeAttribute("cached"),ll(a),jl(a),_ds.v(m)}})};kl=function(){for(var a=_ds.zi(),b=a.hash,c=new _ds.Zh(a.href),d=_ds.n(rl),e=d.next();!e.done;e=d.next())_ds.ni(c,e.value);c=new URL(c.toString());b&&(c.hash=b);c.href!=a.href&&_ds.Ai(c.href,!0,!1)}; +ll=function(a){var b,c;_ds.E(function(d){if(1==d.h)return _ds.u(d,DevsiteApp.whenReady(),2);if(_ds.zi().hash&&a.scrollToAnchor(_ds.zi().hash))return d.return();window.history.state&&a.j&&(b=window.history.state.scrollX||null,c=window.history.state.scrollY||null,null===b&&null===c||Ik(a.j,b||0,c||0));_ds.v(d)})}; +hl=function(a){a.m.listen(document.body,["click","devsite-click"],function(b){sl(a,b)});a.m.listen(document.body,"devsite-sticky-scroll",function(b){a.yb.ra(b)});a.m.listen(window,"popstate",function(b){b=b.Z;var c=null,d=null;if(b.state){var e=b.state.path;c=b.state.scrollX;d=b.state.scrollY}e=e?new URL(e,document.location.origin):_ds.zi();a.fetchPage(e.href,!1,c,d)});a.m.listen(window,"beforeunload",function(){a.o||(a.showLoading(150),a.j&&Ck(a.j))});a.m.listen(window,"unload",function(){a.dispose()}); +a.m.listen(document.body,"devsite-sitemask-visible",function(){document.body.setAttribute("sitemask--active","")});a.m.listen(document.body,"devsite-sitemask-hidden",function(){document.body.removeAttribute("sitemask--active")});a.m.listen(document.body,"devsite-load-custom-elements",function(b){tl(a,b)});a.K.observe(document.body,{childList:!0,subtree:!0})}; +tl=function(a,b){var c,d,e,g;_ds.E(function(k){if(1==k.h){c=b.Z;d=c.detail;e=[];if(!d)return k.J(0);d.forEach(function(l){e.push(cl(dl(a),l))});_ds.x(k,3);return _ds.u(k,Promise.all(e),5)}if(3!=k.h)return _ds.z(k,0);g=_ds.A(k);_ds.Pi(g.message);_ds.v(k)})}; +ul=function(a,b,c){a=a.od();b=b.pathname;var d=b.split("/");d.shift();"index index.md index.html index.yaml _index.yaml index.lab.md".split(" ").includes(d[d.length-1])&&d.pop();b.endsWith("/")&&d.pop();a||d.pop();return _ds.Gi(d.join("/")+"/"+c)}; +sl=function(a,b){if("click"!==b.type||!b.button||0===b.button){a.o=!1;var c=_ds.Bh(b.target,"gc-analytics-event"),d=_ds.Ah(b.target,"A");if(d||c)if("devsite-click"!==b.type&&document.body.dispatchEvent(new CustomEvent("devsite-element-clicked",{detail:{target:d||c},bubbles:!0})),d&&d.href&&(!d.hasAttribute("target")||"_blank"!==d.getAttribute("target"))){c=_ds.zi();_ds.Ai(c.href,!0,!1,a.H.x,a.H.y);var e=_ds.Gi(d.href);if(c.origin!==e.origin)a.o=!0;else{var g=e.href;if(vl.find(function(l){return l.test(g)}))a.o= +!0;else if(0===e.pathname.indexOf("/_d/signin")||0===e.pathname.indexOf("/_d/signout")||0===e.pathname.indexOf("/oauth2authorize"))wl();else if(b.shiftKey||b.ctrlKey||b.metaKey||b.altKey)a.o=!0;else if(d.hasAttribute("reload"))b.preventDefault(),a.reload();else if("http:"!==e.protocol&&"https:"!==e.protocol)a.o=!0;else if(0!==e.pathname.indexOf("/_ah/")){var k=e.pathname.match(/\.([0-9a-z]+)$/);(k=k&&k[1])&&xl.includes(k)&&(c.pathname!==e.pathname||c.search!==e.search)?a.o=!0:c.pathname===e.pathname&& +c.search===e.search?(document.body.dispatchEvent(new CustomEvent("devsite-sitemask-hide",{bubbles:!0})),e.hash?a.scrollToAnchor(e.hash,!0):a.scrollToAnchor("#",!1),b.preventDefault()):a.ya?a.showLoading(150):(b.preventDefault(),b=d.getAttribute("href"),b.startsWith("http")||b.startsWith("/")||b.startsWith("#")||(e=ul(a,c,b)),a.fetchPage(e.href))}}}}}; +wl=function(){var a,b;_ds.E(function(c){switch(c.h){case 1:a=_ds.zi();if(!window.caches){c.J(0);break}return _ds.u(c,window.caches.open("devsite.pwa_RUNTIME_v2"),3);case 3:b=c.j;if(!b){c.J(0);break}_ds.x(c,5);return _ds.u(c,b.delete(a.href,{ignoreSearch:!0,ignoreMethod:!0}),7);case 7:_ds.z(c,0);break;case 5:_ds.A(c),_ds.v(c)}})};yl=function(a,b){a.hideLoading();pl();b&&_ds.Pi("Fetch Page Failed: "+b)};pl=function(){var a=document.querySelector("devsite-snackbar");a&&a.setAttribute("type","error")}; +Dl=function(a,b,c){c=void 0===c?200:c;var d,e,g,k,l,m,p,q,r,w,y,D,B,H,J,T;return _ds.E(function(ma){if(1==ma.h){window.scroll(_ds.Pg(document).x,0);d=new Map([["devsite-header",_ds.L(b,2)],["devsite-book-nav",_ds.L(b,4)],["devsite-content",_ds.L(b,3)],["devsite-footer-promos",_ds.L(b,7)],["devsite-footer-linkboxes",_ds.L(b,6)],["devsite-footer-utility",_ds.L(b,5)],["devsite-analytics",_ds.L(b,14)]]);e=new Map;g=[];k=_ds.n(d);for(l=k.next();!l.done;l=k.next())m=l.value,p=_ds.n(m),q=p.next().value, +r=p.next().value,w=null,r&&(w=document.createRange().createContextualFragment(r),y=bl(dl(a),w),g.push(y)),e.set(q,w);return _ds.u(ma,Promise.all(g),2)}zl(_ds.L(b,24));Al(_ds.L(b,13));Bl(_ds.L(b,15));Cl(b);(D=document.querySelector("devsite-book-nav"))&&(_ds.uf(b,11)?D.removeAttribute("hidden"):D.setAttribute("hidden",""));e.forEach(function(Y,Z){var W=document.querySelector(Z);if(W&&W.updateContent)try{W.updateContent(Y)}catch(Ka){console.error("Error updating: "+Z,Ka)}});if(B=document.querySelectorAll("devsite-toc"))for(H= +_ds.n(B),J=H.next();!J.done;J=H.next())if((T=J.value)&&T.renderUpdatedContent)try{T.renderUpdatedContent((!!_ds.uf(b,10)).toString())}catch(Y){console.error("Error updating: devsite-toc",Y)}a.W.ra();a.hideLoading();document.body.hasAttribute("ready")&&(document.body.dispatchEvent(new CustomEvent("devsite-page-changed",{bubbles:!0,detail:{status:c}})),document.body.dispatchEvent(new CustomEvent("devsite-a11y-announce",{detail:{message:"The new page has loaded."}})));_ds.v(ma)})}; +el=function(a,b){b=_ds.n(b);for(var c=b.next();!c.done;c=b.next())c=Array.from(c.value.addedNodes).filter(function(d){return 1===d.nodeType}),a.O.push.apply(a.O,_ds.la(c))};ql=function(a,b){var c=void 0===c?200:c;return _ds.E(function(d){return 1==d.h?(a.Ka=b,_ds.u(d,Dl(a,b,c),2)):d.return(b)})}; +Bl=function(a){a=void 0===a?"":a;var b=document.createRange().createContextualFragment(a);'link[rel="publisher"] title meta[name="description"] meta[name="robots"] meta[name="theme-color"] meta[name="xsrf_token"]'.split(" ").forEach(function(c){var d=document.head.querySelector(c);c=b.querySelector(c);d&&c?_ds.bh(c,d):c?document.head.appendChild(c):d&&_ds.ah(d)});Array.from(document.head.querySelectorAll('meta[name^="twitter:"],meta[name="baidu-site-verification"],meta[name="google-site-verification"],meta[name="naver-site-verification"],meta[property^="og:"],link[rel=stylesheet][data-page-link],script[type="application/ld+json"],meta[name^="track-metadata-"]')).forEach(function(c){return _ds.ah(c)}); +Array.from(b.querySelectorAll('meta[name^="twitter:"],meta[name="baidu-site-verification"],meta[name="google-site-verification"],meta[name="naver-site-verification"],meta[property^="og:"],link[rel=stylesheet][data-page-link],script[type="application/ld+json"],meta[name^="track-metadata-"]')).forEach(function(c){return document.head.appendChild(c)})}; +Cl=function(a){var b="devsite-book-nav--open pending ready touch class dir lang layout theme type xmlns ie-11 free-trial block-apix dark-theme".split(" "),c=new Set(Array.from(document.body.attributes).map(function(d){return d.nodeName}).filter(function(d){return-1===b.indexOf(d)}));document.body.setAttribute("class",_ds.L(a,16));document.body.setAttribute("layout",_ds.uf(a,23)?"full":"docs");document.body.setAttribute("theme",_ds.L(a,9));document.body.setAttribute("type",El(_ds.rf(a,12,0)));_ds.L(a, +17).split(/\s+/).map(function(d){if(d){var e=d.match(/([^=]+)="(.*?)"/);return e?[e[1],e[2]]:[d,""]}}).filter(function(d){return d&&-1==b.indexOf(d[0])}).forEach(function(d){document.body.setAttribute.apply(document.body,_ds.la(d));c.delete(d[0])});c.forEach(function(d){document.body.removeAttribute(d)})}; +El=function(a){switch(a){case 1:a="article";break;case 10:a="codelab";break;case 11:a="codelab-index";break;case 7:a="error";break;case 2:a="landing";break;case 13:a="lcat";break;case 3:a="marketing";break;case 12:a="pricing";break;case 14:a="profile";break;case 4:a="reference";break;case 5:a="search";break;default:a="article"}return a};zl=function(a){document.documentElement.setAttribute("dir",void 0===a?"":a)};Al=function(a){document.documentElement.setAttribute("lang",void 0===a?"":a)}; +Fl=function(a,b,c){nl||(nl=new gl(_ds.If(Mf,a),b,c),_ds.xb("DevsiteApp",nl))};_ds.Q=function(a,b){var c=void 0;return new (c||(c=Promise))(function(d,e){function g(m){try{l(b.next(m))}catch(p){e(p)}}function k(m){try{l(b["throw"](m))}catch(p){e(p)}}function l(m){m.done?d(m.value):(new c(function(p){p(m.value)})).then(g,k)}l((b=b.apply(a,void 0)).next())})};_ds.R=function(a){var b=HTMLElement.call(this)||this;a&&_ds.Gl(a);return b}; +_ds.Hl=function(a,b,c,d){b&&c?b.parentNode.replaceChild(document.importNode(c,!0),b):!c&&b?b.parentNode.removeChild(b):!b&&c&&(d?(a=document.importNode(c,!0),d.parentElement.insertBefore(a,d.nextSibling)):a.appendChild(document.importNode(c,!0)))};_ds.Gl=function(a){"string"===typeof a&&(a=[a]);document.body.dispatchEvent(new CustomEvent("devsite-load-custom-elements",{bubbles:!0,detail:a}))};_ds.Il=function(a){this.h=a||{cookie:""}}; +Jl=function(a){a=(a.h.cookie||"").split(";");for(var b=[],c=[],d,e,g=0;g";d[l]=p; +return"["+l+"]"}return""});a=_ds.Aq(a);var e=Fq(c);a=a.replace(/\[(\d+)\]/g,function(g,k){return d[k]&&c[k]?c[k].substr(0,c[k].length-1)+d[k]+">":c[k]});return a+e};Fq=function(a){for(var b=[],c=0,d=a.length;ce?a[c]="":(a[c]=b.slice(e).reverse().join(""),b.length=e)):"
  • "==e&&0>Gq(b,"")&&0>Gq(b,"")?a[c]="":Hq.test(e)||b.push("=a||96<=a&&106>=a||65<=a&&90>=a||(_ds.Qg||_ds.pr)&&0==a)return!0;switch(a){case 32:case 43:case 63:case 64:case 107:case 109:case 110:case 111:case 186:case 59:case 189:case 187:case 61:case 188:case 190:case 191:case 192:case 222:case 219:case 220:case 221:case 163:case 58:return!0;case 173:return _ds.bk;default:return!1}};_ds.or=function(a){if(_ds.bk)a=rr(a);else if(_ds.mr&&_ds.Qg)switch(a){case 93:a=91}return a}; +rr=function(a){switch(a){case 61:return 187;case 59:return 186;case 173:return 189;case 224:return 91;case 0:return 224;default:return a}}; +_ds.vr=function(a,b){_ds.dj.call(this);var c=this;this.K=a;this.h=b;this.L=new Map;this.eventHandler=new _ds.Qj;this.o=!1;this.F=this.D="";this.G=0;this.O=new jr(function(){sr(c)},250,this);this.W=Ti(this.qm);this.Cf=this.Af=this.ke=this.Bf=this.m=!1;if(!a.contains(b))throw Error("The input element must be a child of the form");tr(this);!document.activeElement||document.activeElement!==b&&document.activeElement!==a||_ds.ur(this,!0)}; +_ds.ur=function(a,b){a.o!==b&&(a.o=b,b=document,a.o?(b.activeElement&&b.activeElement!==a.h&&a.h.focus(),a.dispatchEvent(new CustomEvent("suggest-service-focus")),a.m&&a.O.C()):(b.activeElement&&a.K.contains(b.activeElement)&&b.activeElement.blur(),a.dispatchEvent(new CustomEvent("suggest-service-blur"))))}; +tr=function(a){a.eventHandler.listen(a.h,"keyup",function(b){37<=b.keyCode&&40>=b.keyCode||(27!==b.keyCode?a.m&&a.O.C():_ds.ur(a,!1))});a.eventHandler.listen(a.h,"keydown",function(b){37<=b.keyCode&&40>=b.keyCode&&a.dispatchEvent(new CustomEvent("suggest-service-navigate",{detail:{keyCode:b.keyCode,originalEvent:b}}))});a.eventHandler.listen(a.h,"keypress",function(b){if(13===b.keyCode||3===b.keyCode)b.preventDefault(),a.dispatchEvent(new CustomEvent("suggest-service-search",{detail:{query:a.h.value, +originalEvent:b}}))});a.eventHandler.listen(a.h,"input",function(b){a.dispatchEvent(new CustomEvent("suggest-service-input",{detail:{query:a.h.value,originalEvent:b}}))});a.C||(a.C=new lr(a.K));a.eventHandler.listen(a.C,["focusin","focusout"],function(b){"focusin"===b.type?_ds.ur(a,!0):_ds.ur(a,a.K.contains(b.relatedTarget))})}; +sr=function(a){_ds.Q(a,function c(){var d=this,e,g,k,l;return _ds.C(c,function(m){switch(m.h){case 1:e=d.h.value.trim().toLocaleLowerCase();d.dispatchEvent(new CustomEvent("suggest-service-request-sent",{detail:{query:e}}));if(!e)return d.dispatchEvent(new CustomEvent("suggest-service-suggestions-received",{detail:{query:e}})),m.return();var p=_ds.fq(e);p=_ds.Bf(p,6,d.Bf,!1);p=_ds.Bf(p,7,d.Af,!1);p=_ds.Bf(p,8,d.ke,!1);g=_ds.Bf(p,9,d.Cf,!1);d.D&&_ds.Cf(g,14,d.D);d.F&&_ds.Cf(g,13,d.F);d.G&&_ds.Bf(g, +5,d.G,0);k=g.La();if(l=d.L.get(k)){m.J(2);break}_ds.x(m,3);return _ds.u(m,d.W("/search/suggestions?r="+encodeURIComponent(k),k),5);case 5:l=m.j;_ds.z(m,2);break;case 3:_ds.A(m);case 2:l?(d.L.set(k,l),d.dispatchEvent(new CustomEvent("suggest-service-suggestions-received",{detail:{suggestions:l,query:e}}))):d.dispatchEvent(new CustomEvent("suggest-service-suggestions-received",{detail:{query:e}})),_ds.v(m)}})})}; +xr=function(a){a=void 0===a?window.location.hostname:a;return"localhost"===a||wr.some(function(b){return a.length>=b.length&&a.substr(-b.length)===b})?0:1};yr=function(){window.developerProfilesInflightRequests||(window.developerProfilesInflightRequests=new Map)}; +_ds.zr=function(){this.o=this.j=null;this.m=new yr;var a=void 0===a?window.location.hostname:a;var b=xr(a);a=void 0===a?window.location.hostname:a;this.config={apiKey:0===b?"AIzaSyBdGQTIAPnTSjkekiLvV7n6GwavAHO8xqA":"AIzaSyA3iBc8feZzCipnYwiq-SSozzK0dwmBcms",serviceEndpoint:0===b?"https://staging-developerprofiles-pa.sandbox.googleapis.com":"https://developerprofiles-pa.googleapis.com",useFirstPartyAuth:a.endsWith(".google.com")&&(a.startsWith("cloud.")||a.startsWith("developers.")||a.startsWith("firebase.")|| +a.startsWith("codelabs."))};window.developerProfilesAccessTokenTime||(window.developerProfilesAccessTokenTime=0);window.developerProfilesAccessToken||(window.developerProfilesAccessToken="")};_ds.Ar=function(a){return _ds.Q(a,function c(){var d=this;return _ds.C(c,function(e){if(1==e.h)return _ds.u(e,d.getAccessToken(),2);window.developerProfilesAccessToken&&(d.config.accessToken=window.developerProfilesAccessToken);_ds.v(e)})})}; +Br=function(a){return _ds.Q(a,function c(){var d=this,e;return _ds.C(c,function(g){if(1==g.h)return e=d,d.o||(d.o=new Promise(function(k){return _ds.Q(e,function m(){var p=this,q,r;return _ds.C(m,function(w){switch(w.h){case 1:return q=p,_ds.u(w,DevsiteApp.whenReady(),2);case 2:if(p.j){w.J(3);break}r=document.querySelector("devsite-user#devsite-user");if(!r){w.J(3);break}return _ds.u(w,window.customElements.whenDefined("devsite-user"),5);case 5:p.j=r,p.j.addEventListener("devsite-signed-in-state-changed", +function(){q.clearCache()});case 3:k(p.j),_ds.v(w)}})})})),_ds.u(g,d.o,2);d.o=null;return g.return(d.j)})})};Cr=function(){window.developerProfilesCache||(window.developerProfilesCache=new Map)};Dr=function(a,b){Cr();window.developerProfilesCache.set(a,b)};Er=function(a){Cr();return window.developerProfilesCache.get(a)};Fr=function(a){Cr();window.developerProfilesCache.delete(a)};Gr=function(a){Cr();return window.developerProfilesCache.has(a)}; +_ds.Hr=function(a,b,c,d){return _ds.Q(a,function g(){var k=this,l,m,p;return _ds.C(g,function(q){switch(q.h){case 1:return l=k.m.xn(c,d),m=k.m.get(l),m||(m=b,k.m.set(l,b)),_ds.x(q,2,3),_ds.u(q,m,5);case 5:return q.return(q.j);case 3:_ds.Aa(q);k.m.delete(l);_ds.Ba(q,0);break;case 2:throw p=_ds.A(q),p;}})})};_ds.Ir=function(){_ds.zr.call(this);this.h=new _ds.Ro(this.config)}; +_ds.Jr=function(a,b){return _ds.Q(a,function d(){var e=this;return _ds.C(d,function(g){return 1==g.h?_ds.u(g,_ds.Ar(e),2):g.return(_ds.Hr(e,Zo(e.h,b),"getBadge",b))})})};_ds.Kr=function(a,b,c){c=void 0===c?!0:c;return _ds.Q(a,function e(){var g=this,k;return _ds.C(e,function(l){if(1==l.h)return _ds.u(l,_ds.Ar(g),2);if(3!=l.h)return _ds.u(l,_ds.Hr(g,$o(g.h,b),"awardBadge",b),3);k=l.j;c&&k&&document.body.dispatchEvent(new CustomEvent("devsite-award-granted",{detail:{award:k},bubbles:!0}));return l.return(k)})})}; +_ds.Lr=function(){_ds.zr.call(this);this.h=new dp(this.config)};_ds.Mr=function(){_ds.zr.call(this);this.h=new ep(this.config)};_ds.Nr=function(a,b){return _ds.Q(a,function d(){var e=this;return _ds.C(d,function(g){return 1==g.h?_ds.u(g,_ds.Ar(e),2):g.return(_ds.Hr(e,jp(e.h,b),"setStatus",b))})})};_ds.Or=function(){_ds.zr.call(this);this.h=new pp(this.config)}; +_ds.Sr=function(a,b,c){b=void 0===b?!1:b;c=void 0===c?!1:c;return _ds.Q(this,function e(){var g;return _ds.C(e,function(k){if(1==k.h)return _ds.u(k,DevsiteApp.whenReady(),2);DevsiteApp.getEnv();g=_ds.Gi(a);return g.hostname!==_ds.Pr.GOOGLEDEV&&g.hostname!==_ds.Qr.GOOGLEDEV&&g.hostname!==document.location.hostname?k.return(g):k.return((0,_ds.Rr)("GOOGLEDEV",g.href,b,c))})})}; +_ds.Rr=function(a,b,c,d){c=void 0===c?!1:c;d=void 0===d?!1:d;return _ds.Q(this,function g(){var k,l,m;return _ds.C(g,function(p){if(1==p.h)return _ds.u(p,DevsiteApp.whenReady(),2);k=DevsiteApp.getEnv();l=new _ds.Zh((new URL(b,document.location.origin)).href);switch(k){case "DEV":_ds.bi(l,document.location.hostname);_ds.ci(l,document.location.port);_ds.$h(l,document.location.protocol);_ds.li(l,"tenant",a.toLowerCase());break;case "STAGE":_ds.bi(l,_ds.Qr[a.toUpperCase()]);_ds.$h(l,"https");_ds.ci(l, +null);break;default:_ds.$h(l,"https"),_ds.ci(l,null),_ds.bi(l,_ds.Pr[a.toUpperCase()])}m=_ds.zi();c&&_ds.li(l,"return",_ds.Gi(m.href).href);d&&_ds.li(l,"utm_source",m.hostname);return p.return(new URL(l.toString()))})})}; +_ds.Ur=function(a){var b=new URL(a,document.location.origin);"developers.android.com"===b.hostname&&(b.hostname="developer.android.com");if(b.hostname.endsWith(".googlers.com")||"localhost"===b.hostname){var c=_ds.mi(new _ds.Zh(b.href),"tenant");if(c)switch(c.toLowerCase()){case "android":b.hostname=_ds.Pr.ANDROID;break;case "cloud":b.hostname=_ds.Pr.CLOUD;break;case "developers":b.hostname=_ds.Pr.DEVELOPERS;break;case "googledev":b.hostname=_ds.Pr.GOOGLEDEV;break;case "firebase":b.hostname=_ds.Pr.FIREBASE; +break;case "codelabs":b.hostname=_ds.Pr.CODELABS;break;default:throw Error("Invalid url: "+a);}else if(a=Tr[""+DevsiteApp.getTenantId()])b.hostname=a;b.protocol="https:";b.port=""}else b.hostname.endsWith(".corp.google.com")&&(b.hostname.startsWith("googledev.")?b.hostname=_ds.Pr.GOOGLEDEV:b.hostname.startsWith("android.")?b.hostname=_ds.Pr.ANDROID:b.hostname.startsWith("cloud.")?b.hostname=_ds.Pr.CLOUD:b.hostname.startsWith("developers.")?b.hostname=_ds.Pr.DEVELOPERS:b.hostname.startsWith("firebase.")? +b.hostname=_ds.Pr.FIREBASE:b.hostname.startsWith("codelabs.")&&(b.hostname=_ds.Pr.CODELABS));b.search="";b.hash="";return b.href.endsWith("/")?b.href.slice(0,-1):b.href}; +Vr=function(a){var b=a.Zo,c=a.Bl;a='

    client libraries page for a list of supported languages).'),a=a+c+"

    ");a+='
    ';c=b.length;for(var d= +0;d

    "+_ds.tq(e.lang)+"

    ";if(e.Ii)for(var g=e.Ii,k=g.length,l=0;l",m='Uses the '+(_ds.tq(m.name)+".")),a+=m,a+="

    ")}a+='
    '+_ds.tq(e.Yh)+"

    "}return(0,_ds.V)(a+"")};_ds.Wr=function(){var a=_ds.R.call(this)||this;a.j="";a.m="";a.h="";return a}; +Yr=function(a){return _ds.E(function(b){switch(b.h){case 1:if(_ds.Qi()){b.J(2);break}_ds.x(b,3);return _ds.u(b,Xr(a,!0),5);case 5:return b.return(b.j);case 3:_ds.A(b);case 2:return b.return(Xr(a,!1))}})}; +Xr=function(a,b){var c,d;return _ds.E(function(e){if(1==e.h)return c="https://storage.googleapis.com/apisnippets"+(b?"-staging":"")+"/public/"+a.j+"/"+a.m+"/0/"+a.h+".frag.json",_ds.u(e,_ds.Fi(c,{credentials:"omit"}),2);d=e.j;try{return e.return(JSON.parse(d))}catch(g){return console.error("Failed to parse snippet response JSON",g),e.return(Promise.reject("Failed to parse snippet response JSON"))}})}; +_ds.Zr=function(a,b,c){a.timeOfStartCall=(new Date).getTime();var d=c||_ds.Sa,e=d.document,g=a.nonce||_ds.ab(d);g&&!a.nonce&&(a.nonce=g);if("help"==a.flow){var k=_ds.eb("document.location.href",d);!a.helpCenterContext&&k&&(a.helpCenterContext=k.substring(0,1200));k=!0;if(b&&JSON&&JSON.stringify){var l=JSON.stringify(b);(k=1200>=l.length)&&(a.psdJson=l)}k||(b={invalidPsd:!0})}b=[a,b,c];d.GOOGLE_FEEDBACK_START_ARGUMENTS=b;c=a.serverUri||"//www.google.com/tools/feedback";if(k=d.GOOGLE_FEEDBACK_START)k.apply(d, +b);else{d=c+"/load.js?";for(var m in a)b=a[m],null==b||_ds.mb(b)||(d+=encodeURIComponent(m)+"="+encodeURIComponent(b)+"&");a=_ds.Eg(e).createElement("SCRIPT");g&&a.setAttribute("nonce",g);_ds.Fd(a,Fh(d));e.body.appendChild(a)}}; +_ds.as=function(a,b){b||(b={});var c=window;var d=a instanceof Dc?a:Lc("undefined"!=typeof a.href?a.href:String(a));a=b.target||a.target;var e=[];for(g in b)switch(g){case "width":case "height":case "top":case "left":e.push(g+"="+b[g]);break;case "target":case "noopener":case "noreferrer":break;default:e.push(g+"="+(b[g]?1:0))}var g=e.join(",");_ds.we()&&c.navigator&&c.navigator.standalone&&a&&"_self"!=a?(g=_ds.Sg(document,"A"),_ds.Dd(g,d),g.setAttribute("target",a),b.noreferrer&&g.setAttribute("rel", +"noreferrer"),b=document.createEvent("MouseEvent"),b.initMouseEvent("click",!0,!0,c,1),g.dispatchEvent(b)):b.noreferrer?(c=_ds.Id("",c,a,g),b=_ds.Ec(d),c&&(_ds.$r&&_ds.yc(b,";")&&(b="'"+b.replace(/'/g,"%27")+"'"),c.opener=null,b='',b=_ds.qd(b,null),(c=c.document)&&c.write&&(c.write(od(b)),c.close()))):(c=_ds.Id(d,c,a,g))&&b.noopener&&(c.opener=null)}; +bs=function(a,b){b=void 0===b?640:b;var c=void 0===c?480:c;_ds.as(a,{target:"_blank",left:(window.screen.availWidth-b)/2,top:(window.screen.availHeight-c)/2,width:b,height:c})};_ds.cs=function(a,b){b=encodeURIComponent(b);a=encodeURIComponent(a);bs("https://twitter.com/intent/tweet?text="+b+"&url="+a)}; +_ds.ds=function(a,b,c){"/"!==a.slice(-1)&&(a+="/");c=encodeURIComponent(c);a=encodeURIComponent(a);b=encodeURIComponent(b);bs("https://www.linkedin.com/shareArticle?mini=true&url="+a+"&title="+b+"&summary="+c)};_ds.es=function(a){a=encodeURIComponent(a);bs("https://www.facebook.com/sharer/sharer.php?u="+a,555)};_ds.fs=function(){var a=null;try{a=window.localStorage||null}catch(b){}this.h=a};gs=function(a){return"string"==typeof a.className?a.className:a.getAttribute&&a.getAttribute("class")||""}; +_ds.hs=function(a){return a.classList?a.classList:gs(a).match(/\S+/g)||[]};_ds.is=function(a,b){"string"==typeof a.className?a.className=b:a.setAttribute&&a.setAttribute("class",b)};_ds.js=function(a,b){return a.classList?a.classList.contains(b):_ds.Db(_ds.hs(a),b)};_ds.ks=function(a,b){if(a.classList)a.classList.add(b);else if(!_ds.js(a,b)){var c=gs(a);_ds.is(a,c+(0~\.\[:]+)/g,1);b=ps(b,c,/(\.[^\s\+>~\.\[:]+)/g,2);b=ps(b,c,/(::[^\s\+>~\.\[:]+|:first-line|:first-letter|:before|:after)/gi,3);b=ps(b,c,/(:[\w-]+\([^\)]*\))/gi, +2);b=ps(b,c,/(:[^\s\+>~\.\[:]+)/g,2);b=b.replace(/[\*\s\+>~]/g," ");b=b.replace(/[#\.]/g," ");ps(b,c,/([^\s\+>~\.\[:]+)/g,3);b=c;return ns[a]=b};ps=function(a,b,c,d){return a.replace(c,function(e){b[d]+=1;return Array(e.length+1).join(" ")})};os=function(a,b){return a.replace(b,function(c){return Array(c.length+1).join("A")})};ss=function(a){return rs[a]}; +vs=function(a,b,c){b=(0,_ds.zc)(b);if(""==b)return null;var d=String(b.substr(0,4)).toLowerCase();if(0==("url("d;d++){var e="\"'".charAt(d);if(b.charAt(0)==e&&b.charAt(b.length-1)==e){b=b.substring(1,b.length-1);break a}}a=c?(a=c(b,a))&&"about:invalid#zClosurez"!=_ds.Ec(a)?'url("'+_ds.Ec(a).replace(ts,ss)+'")':null:null}return a}if(0document.documentMode){if(!b[c].call)throw Error("IE Clobbering detected");}else if("function"!=typeof b[c])throw Error("Clobbering detected");return b[c].apply(b,d)};Bs=function(a){return ys(As,a,"attributes",function(b){return b instanceof NamedNodeMap})};Ds=function(a,b,c){try{zs(Cs,a,"setAttribute",[b,c])}catch(d){if(-1==d.message.indexOf("A security problem occurred"))throw d;}}; +Fs=function(a){return ys(Es,a,"style",function(b){return b instanceof CSSStyleDeclaration})};Hs=function(a){return ys(Gs,a,"sheet",function(b){return b instanceof CSSStyleSheet})};Js=function(a){return ys(Is,a,"nodeName",function(b){return"string"==typeof b})};Ls=function(a){return ys(Ks,a,"nodeType",function(b){return"number"==typeof b})};Ns=function(a){return ys(Ms,a,"parentNode",function(b){return!(b&&"string"==typeof b.name&&b.name&&"parentnode"==b.name.toLowerCase())})}; +Ps=function(a,b){return zs(Os,a,a.getPropertyValue?"getPropertyValue":"getAttribute",[b])||""};Rs=function(a,b,c){zs(Qs,a,a.setProperty?"setProperty":"setAttribute",[b,c])}; +Vs=function(a,b,c){var d=[];a=Ss(_ds.Gb(a.cssRules));_ds.dd(a,function(e){if(b&&!/[a-zA-Z][\w-:\.]*/.test(b))throw Error("Invalid container id");if(!(b&&_ds.Og&&10==document.documentMode&&/\\['"]/.test(e.selectorText))){var g=b?e.selectorText.replace(Ts,"#"+b+" $1"):e.selectorText,k=d.push;e=Us(e.style,c);if(_ds.yc(g,"<"))throw Error("Selector does not allow '<', got: "+g);var l=g.replace(/('|")((?!\1)[^\r\n\f\\]|\\[\s\S])*\1/g,"");if(!/^[-_a-zA-Z0-9#.:* ,>+~[\]()=^$|]+$/.test(l))throw Error("Selector allows only [-_a-zA-Z0-9#.:* ,>+~[\\]()=^$|] and strings, got: "+ +g);a:{for(var m={"(":")","[":"]"},p=[],q=0;q"+a+"");return null==a||null==a.sheet?Xs:Vs(a.sheet,void 0!=b?b:null,c)};Ws=function(a){if(_ds.Og&&!_ds.De(10)||"function"!=typeof _ds.Sa.DOMParser)return null;a=_ds.qd(""+a+"",null);return(new DOMParser).parseFromString(od(a),"text/html").body.children[0]}; +Us=function(a,b){if(!a)return Rc;var c=document.createElement("div").style,d=Zs(a);_ds.dd(d,function(e){var g=_ds.Qg&&e in $s?e:e.replace(/^-(?:apple|css|epub|khtml|moz|mso?|o|rim|wap|webkit|xv)-(?=[a-z])/i,"");0!=g.lastIndexOf("--",0)&&0!=g.lastIndexOf("var",0)&&(e=Ps(a,e),e=vs(g,e,b),null!=e&&Rs(c,g,e))});return new _ds.Oc(c.cssText||"",Nc)}; +dt=function(a){var b=Array.from(zs(at,a,"getElementsByTagName",["STYLE"])),c=Nb(b,function(e){return _ds.Gb(Hs(e).cssRules)});c=Ss(c);c.sort(function(e,g){e=qs(e.selectorText);a:{g=qs(g.selectorText);for(var k=Math.min(e.length,g.length),l=0;l")+1,a.lastIndexOf("=a)return Zt=Yt=null,c.return(b);Yt=b;clearTimeout($t);$t=setTimeout(function(){Zt=Yt=null},a);return c.return(Yt)}_ds.z(c,3);break;case 2:_ds.A(c),Zt=null;case 3:return c.return(null)}})}; +bu=function(a){return a?a.startsWith("http")||a.startsWith("/")?a:"/"+a:a};cu=function(a){a=new URL(a,document.location.origin);a.hash="";return encodeURIComponent((a.href.endsWith("/")?a.href.slice(0,-1):a.href).substring(a.protocol.length+2))};_ds.du=function(){var a=void 0===a?new Qt:a;this.o=6E5;this.h=a;this.m=au;this.C=new _ds.Qj(this);this.j=null};eu=function(a,b){b=void 0===b?{}:b;var c;return _ds.E(function(d){if(1==d.h)return _ds.u(d,a.getAccessToken(),2);(c=d.j)&&(b.access_token=c);return d.return(b)})}; +fu=function(a){var b;return _ds.E(function(c){return a.j?c.J(0):(b=document.querySelector("devsite-user#devsite-user"))?_ds.u(c,a.Nj(b),0):c.J(0)})}; +gu=function(a,b){if(!b.badge)throw Error("Invalid award to convert");var c;b.creationTime&&(c=(new Date(1E3*parseInt(b.creationTime,10))).toLocaleDateString("default",{month:"short",year:"numeric",day:"numeric"}));var d=null,e=null;b.badge.id&&(b.badge.id.servePath&&(d=b.badge.id.servePath),b.badge.id.tenantId&&(e=b.badge.id.tenantId));a=a.h;return{title:b.badge.title,servePath:d,tenantId:e,description:b.badge.description,imageUrl:b.badge.imageUrl,imageDescription:"",awardId:b.awardId?b.awardId:null, +state:b.state?b.state:null,visibility:b.visibility?b.visibility:null,promotedPosition:b.promotedPosition?b.promotedPosition:null,creationTime:c,createTime:b.createTime,sharing:!!b.badge.sharing,shareTitle:b.badge.sharing?b.badge.sharing.title:"",shareDescription:b.badge.sharing?b.badge.sharing.description:"",shareImageUrl:b.badge.sharing?b.badge.sharing.imageUrl:"",redeemCode:a.j?a.j:null,url:b.badge.url?b.badge.url:""}}; +ju=function(a,b){var c=a.profile;if(!c)throw Error("Invalid response, missing profile");if(!a.obfuscatedProfileId)throw Error("Invalid response, missing profile id");var d=c.Ta;if(!d)throw Error("Invalid response, missing person.");var e=[],g=!1;c.linkedAccounts&&Array.isArray(c.linkedAccounts)&&c.linkedAccounts.forEach(function(m){m.isAuthenticatedUser&&(g=!0);e.push({accountId:m.accountId,email:m.email,label:m.label,isCurrentUser:m.isAuthenticatedUser,linkedSince:(new Date(m.linkedSince)).toLocaleDateString("default", +{month:"long",year:"numeric",day:"numeric"}),name:m.Ta.name,photo:m.Ta.photo})});hu.set(a.obfuscatedProfileId,a);iu.delete(a.obfuscatedProfileId);"me"===b&&(hu.set("me",a),iu.delete("me"));if(d.photo){var k=d.photo;-1===k.indexOf("http")&&(k="data:image/png;base64,"+d.photo)}a={pendingFields:a.pendingFields,obfuscatedProfileId:a.obfuscatedProfileId,awardsHidden:!!c.awardsHidden,name:d.name,title:d.title?d.title:"",organization:d.organization?d.organization:"",pronoun:d.pronoun?d.pronoun:"",photo:k, +isCurrentUser:g,newsletterEmailPref:c.newsletterEmailPreference===Cp.Ca,feedbackEmailPref:c.feedbackEmailPreference===Dp.Ca,creationMethod:c.creationMethod,originTenantId:c.originTenantId,wizardV1Seen:!(!c.Nc||!c.Nc.wizardV1Seen),dashboardV1Seen:c.dashboardV1Seen===Ep.jc,location:c.location,bio:c.bio?c.bio:"",githubId:c.githubId?c.githubId:"",gitlabId:c.gitlabId?c.gitlabId:"",linkedinId:c.linkedinId?c.linkedinId:"",stackoverflowId:c.stackoverflowId?c.stackoverflowId:"",twitterId:c.twitterId?c.twitterId: +""};if(g&&(a.linkedAccounts=e,c.Ha&&c.Ha.pb&&c.Ha.pb.values)){a.avatarStyleId=c.Ha.Oc;b=Object.keys(c.Ha.pb.values);d=Object.values(c.Ha.pb.values);k={};for(var l=0;lc?"-":"+"];c=Math.abs(c);d.push(Math.floor(c/60)%100);c%=60;0!=c&&d.push(":",_ds.Od(c,2));c=d.join("")}b.o=c;c=dv(a);a=ev(a);b.C=[c,c];b.h={fh:a,eh:a};b.j=[];return b}b=new cv;b.o=a.id;b.m=-a.std_offset;b.C=a.names;b.h=a.names_ext;b.j=a.transitions;return b};ev=function(a){var b=["GMT"];b.push(0>=a?"+":"-");a=Math.abs(a);b.push(_ds.Od(Math.floor(a/60)%100,2),":",_ds.Od(a%60,2));return b.join("")}; +dv=function(a){if(0==a)return"UTC";var b=["UTC",0>a?"+":"-"];a=Math.abs(a);b.push(Math.floor(a/60)%100);a%=60;0!=a&&b.push(":",a);return b.join("")};gv=function(a,b){b=Date.UTC(b.getUTCFullYear(),b.getUTCMonth(),b.getUTCDate(),b.getUTCHours(),b.getUTCMinutes())/36E5;for(var c=0;c=a.j[c];)c+=2;return 0==c?0:a.j[c-1]};_ds.kv=function(a){this.j=[];this.h=hv;"number"==typeof a?iv(this,a):jv(this,a)};lv=function(a){return a.getHours?a.getHours():0}; +jv=function(a,b){for(mv&&(b=b.replace(/\u200f/g,""));b;){for(var c=b,d=0;db)var c=a.h.Rg[b];else if(8>b)c=a.h.gh[b-4];else if(12>b)c=a.h.jk[b-8],c=c.replace("{1}",a.h.Rg[b-8]),c=c.replace("{0}",a.h.gh[b-8]);else{iv(a,10);return}jv(a,c)};rv=function(a,b){return _ds.qv(b,a.h)}; +_ds.qv=function(a,b){a=String(a);b=b||hv;if(void 0===b.cl)return a;for(var c=[],d=0;d=e?String.fromCharCode(b.cl+e-48):a.charAt(d))}return c.join("")};sv=function(a){if(!(a.getHours&&a.getSeconds&&a.getMinutes))throw Error("The date to format has no time (probably a goog.date.Date). Use Date or goog.date.DateTime, or use a pattern without time fields.");}; +ov=function(a,b,c,d,e){var g=b.length;switch(b.charAt(0)){case "G":return c=0c&&(c=-c),2==g&&(c%=100),rv(a,_ds.Od(c,g));case "Y":return c=(new Date(bv(d.getFullYear(),d.getMonth(),d.getDate(),a.h.Yg,a.h.Xg))).getFullYear(),0>c&&(c=-c),2==g&&(c%=100),rv(a,_ds.Od(c,g));case "M":a:switch(c=d.getMonth(),g){case 5:g=a.h.Ck[c];break a;case 4:g=a.h.Ak[c];break a;case 3:g=a.h.Kk[c];break a;default:g=rv(a,_ds.Od(c+1,g))}return g; +case "k":return sv(e),rv(a,_ds.Od(lv(e)||24,g));case "S":return rv(a,(e.getMilliseconds()/1E3).toFixed(Math.min(3,g)).substr(2)+(3g?1:0];case "h":return sv(e),rv(a,_ds.Od(lv(e)%12||12,g));case "K":return sv(e),rv(a,_ds.Od(lv(e)%12,g));case "H":return sv(e),rv(a,_ds.Od(lv(e),g));case "c":a:switch(c=d.getDay(),g){case 5:g=a.h.Pk[c];break a;case 4:g=a.h.Sk[c];break a;case 3:g=a.h.Rk[c]; +break a;default:g=rv(a,_ds.Od(c,1))}return g;case "L":a:switch(c=d.getMonth(),g){case 5:g=a.h.Ok[c];break a;case 4:g=a.h.Nk[c];break a;case 3:g=a.h.Qk[c];break a;default:g=rv(a,_ds.Od(c+1,g))}return g;case "Q":return c=Math.floor(d.getMonth()/3),4>g?a.h.Lk[c]:a.h.Ek[c];case "d":return rv(a,_ds.Od(d.getDate(),g));case "m":return sv(e),rv(a,_ds.Od(e.getMinutes(),g));case "s":return sv(e),rv(a,_ds.Od(e.getSeconds(),g));case "v":return g=fv(c.getTimezoneOffset()),g.o;case "V":return a=fv(c.getTimezoneOffset()), +2>=g?a.o:0g?a.C[0g?(g=-(b.m-gv(b,c)),a=[0>g?"-":"+"],g=Math.abs(g),a.push(_ds.Od(Math.floor(g/ +60)%100,2),_ds.Od(g%60,2)),g=a.join("")):g=rv(a,ev(b.m-gv(b,c))),g;default:return""}}; +vv=function(){this.Ua=null;this.Ka=0;this.Qa=null;this.K=40;this.j=1;this.Xa=0;this.m=3;this.N=this.o=0;this.oa=this.ya=!1;this.L=this.H="";this.C=tv.Zg;this.G="";this.h=1;this.F=!1;this.D=[];this.O=this.ea=!1;this.Da=0;this.W=null;var a=tv.lk;this.Y=a.replace(/ /g,"\u00a0");var b=[0];this.H=uv(this,a,b);for(var c=b[0],d=-1,e=0,g=0,k=0,l=-1,m=a.length,p=!0;b[0]d&&l++;break;case "0":if(0d&&l++;break;case ",":0e+g||1>this.N)throw Error('Malformed exponential pattern "'+a+'"');p=!1;break;default:b[0]--,p=!1}0==g&&0d&&0e+g)||0==l)throw Error('Malformed pattern "'+a+'"');k=e+g+k;this.m=0<=d?k-d:0;0<=d&&(this.o=e+g-d,0>this.o&&(this.o=0));this.j=(0<=d?d:k)-e;this.O&&(this.K=e+this.j,0==this.m&&0==this.j&&(this.j=1));this.D.push(Math.max(0,l));this.ea=0==d||d==k;c=b[0]-c;this.L=uv(this,a,b);b[0]a.m)throw Error("Min value must be less than max value");d||(d=[]);var e=wv(b,a.m);e=Math.round(e);if(isFinite(e)){b=Math.floor(wv(e,-a.m));var g=Math.floor(e-wv(b,a.m))}else g=0;e=b;b=g;var k=e;g=b;e=0==k?0:xv(k)+1;var l=0e;e=a.o;l&&(e=a.o);var m="";for(b=k;1E20p?l&&isFinite(l)?wv(Math.round(wv(l,-1)),1):l:l&&isFinite(l)?wv(Math.round(wv(l,p)),-p):l;l=String(l);l=l.replace(".","");l+=Nd("0",parseInt(g[1],10)-l.length+1)}a.m+1>l.length&&(l="1"+Nd("0",a.m-l.length)+l);for(a=l.length;"0"==l.charAt(a-1)&&a>e+1;)a--;for(k=1;kb?(b=-b,c.push(tv.Zg)):a.ya&&c.push(tv.Dk);b=""+b;for(var d=tv.gf,e=b.length;ea)return a-48;var b=tv.gf.charCodeAt(0);return b<=a&&ab||0==b&&0>1/b)?Pv.Ti?e.push(Pv.Ti):(e.push(Pv.prefix),e.push(a.C)):(e.push(Pv.prefix),e.push(a.H)),isFinite(b)?(b=b*(l?-1:1)*a.h,a.O?0==b?(yv(a,b,a.j,e),zv(a,0,e)):(d=Math.floor(Math.log(b)/Math.log(10)+2E-15),b=wv(b, +-d),k=a.j,1a.j?(k=d%a.K,0>k&&(k=a.K+k),b=wv(b,k),d-=k,k=1):1>a.j?(d++,b=wv(b,-1)):(d-=a.j-1,b=wv(b,a.j-1)),yv(a,b,k,e),zv(a,d,e)):yv(a,b,a.j,e)):e.push(tv.Xe),l?Pv.Ui?e.push(Pv.Ui):(e.push(Pv.Yj),e.push(a.G)):(e.push(Pv.Yj),e.push(a.L)),a=e.join("")),g.push(c.replace(/#/g,a))))};Sv=function(a,b){var c=a.C,d=(0,_ds.tb)(a.m,a);b=b.replace(Qv,function(){c.push("'");return d(c)});return b=b.replace(Rv,function(e,g){c.push(g);return d(c)})}; +Tv=function(a){var b=0,c=[],d=[],e=/[{}]/g;e.lastIndex=0;for(var g;g=e.exec(a);){var k=g.index;"}"==g[0]?(c.pop(),0==c.length&&(g={type:1},g.value=a.substring(b,k),d.push(g),b=k+1)):(0==c.length&&(b=a.substring(b,k),""!=b&&d.push({type:0,value:b}),b=k+1),c.push("{"))}b=a.substring(b);""!=b&&d.push({type:0,value:b});return d}; +$v=function(a,b){var c=[];b=Tv(b);for(var d=0;d=e}});ia("Array.prototype.find",function(a){return a?a:function(b,c){a:{var d=this;d instanceof String&&(d=String(d));for(var e=d.length,g=0;g=g}});ia("Object.is",function(a){return a?a:function(b,c){return b===c?0!==b||1/b===1/c:b!==b&&c!==c}}); +ia("Array.prototype.includes",function(a){return a?a:function(b,c){var d=this;d instanceof String&&(d=String(d));var e=d.length;c=c||0;for(0>c&&(c=Math.max(c+e,0));c>>0);pb=0;var Iw={hh:0,yr:1,Wq:6,Uq:8,Yq:12,Zq:14,$q:17,er:18,gr:21,jr:25,gq:37,lr:38,lq:40,Bq:45,Zp:47,Jp:50,Tp:52,Rp:62,wq:63,Oq:66,Gq:70,Op:73,Cq:74,$p:75,Lq:76,tq:77,vq:80,Sp:81,zq:82,qq:83,Fq:85,aq:87,Jq:88,mq:89,Iq:90,nq:91,uq:92,Xp:93,vr:94,pq:95,Wp:96,Pq:97,Pp:98,Qp:99,ir:100,kq:101,rq:102,Kq:103,rr:104,cq:105,Yp:106,jq:107,eq:108,Eq:109,bq:110,iq:111,pr:112,Mq:113,fq:114,Vp:115,hq:116,Aq:117,yq:118,oq:119,Hq:120,Xq:121,Nq:122,dr:123,Vq:124,xq:125,Dq:126};_ds.F(zb,Error);zb.prototype.name="CustomError";var Dg;_ds.F(Ab,zb);Ab.prototype.name="AssertionError";var Gq,km;_ds.Cb=Array.prototype.indexOf?function(a,b){return Array.prototype.indexOf.call(a,b,void 0)}:function(a,b){if("string"===typeof a)return"string"!==typeof b||1!=b.length?-1:a.indexOf(b,0);for(var c=0;cc&&(c=Math.max(0,a.length+c));if("string"===typeof a)return"string"!==typeof b||1!=b.length?-1:a.lastIndexOf(b,c);for(;0<=c;c--)if(c in a&&a[c]===b)return c;return-1};_ds.dd=Array.prototype.forEach?function(a,b,c){Array.prototype.forEach.call(a,b,c)}:function(a,b,c){for(var d=a.length,e="string"===typeof a?a.split(""):a,g=0;g/g;tc=/"/g;uc=/'/g;vc=/\x00/g;wc=/[\x00&<>"']/;var Gc,Fc,Jc,Cc;_ds.f=Dc.prototype;_ds.f.Eb=!0;_ds.f.ib=function(){return this.h.toString()};_ds.f.Pf=!0;_ds.f.qc=function(){return 1};_ds.f.toString=function(){return this.h.toString()};Gc=/^(?:audio\/(?:3gpp2|3gpp|aac|L16|midi|mp3|mp4|mpeg|oga|ogg|opus|x-m4a|x-matroska|x-wav|wav|webm)|font\/\w+|image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp|x-icon)|video\/(?:mpeg|mp4|ogg|webm|quicktime|x-matroska))(?:;\w+=(?:\w+|"[\w;,= ]+"))*$/i;Fc=/^data:(.*);base64,[a-z0-9+\/]+=*$/i;Jc=/^(?:(?:https?|mailto|ftp):|[^:/?#]*(?:[/?#]|$))/i; +Cc={};_ds.Kc=Hc("about:invalid#zClosurez");_ds.Oc.prototype.Eb=!0;_ds.Oc.prototype.ib=function(){return this.h};_ds.Oc.prototype.toString=function(){return this.h.toString()};var Nc={},Rc=new _ds.Oc("",Nc),Wc=/^[-,."'%_!# a-zA-Z0-9\[\]]+$/,Vc=/\b(url\([ \t\n]*)('[ -&(-\[\]-~]*'|"[ !#-\[\]-~]*"|[!#-&*-\[\]-~]*)([ \t\n]*\))/g,Uc=/\b(calc|cubic-bezier|fit-content|hsl|hsla|linear-gradient|matrix|minmax|repeat|rgb|rgba|(rotate|scale|translate)(X|Y|Z|3d)?)\([-+*/0-9a-z.%\[\], ]+\)/g,Xc=/\/\*/;var bd={};_ds.cd.prototype.ib=function(){return this.h};_ds.cd.prototype.toString=function(){return this.h.toString()};var Xs=new _ds.cd("",bd);a:{var Jw=_ds.Sa.navigator;if(Jw){var Kw=Jw.userAgent;if(Kw){_ds.gd=Kw;break a}}_ds.gd=""};nd.prototype.Pf=!0;nd.prototype.qc=function(){return this.j};nd.prototype.Eb=!0;nd.prototype.ib=function(){return this.h.toString()};var sd=/^[a-zA-Z0-9-]+$/,ud={action:!0,cite:!0,data:!0,formaction:!0,href:!0,manifest:!0,poster:!0,src:!0},td={APPLET:!0,BASE:!0,EMBED:!0,IFRAME:!0,LINK:!0,MATH:!0,META:!0,OBJECT:!0,SCRIPT:!0,STYLE:!0,SVG:!0,TEMPLATE:!0},md={},yd=new nd(_ds.Sa.trustedTypes&&_ds.Sa.trustedTypes.emptyHTML||"",0,md),gr=_ds.qd("
    ",0);var Ad=_ds.Rb(function(){var a=document.createElement("div"),b=document.createElement("div");b.appendChild(document.createElement("div"));a.appendChild(b);b=a.firstChild.firstChild;a.innerHTML=od(yd);return!b.parentElement});var Nd;Nd=String.prototype.repeat?function(a,b){return a.repeat(b)}:function(a,b){return Array(b+1).join(a)};_ds.Vk=2147483648*Math.random()|0;_ds.Sd=0;_ds.Td=0;_ds.f=de.prototype;_ds.f.oY=function(){return!!(this.h&1)};_ds.f.add=function(a){return new de((this.h+a.h&4294967295)>>>0>>>0,((this.j+a.j&4294967295)>>>0)+(4294967296<=this.h+a.h?1:0)>>>0)};_ds.f.sub=function(a){return new de((this.h-a.h&4294967295)>>>0>>>0,((this.j-a.j&4294967295)>>>0)-(0>this.h-a.h?1:0)>>>0)}; +_ds.f.div=function(a){if(0==a)return[];for(var b=new de(0,0),c=new de(this.h,this.j),d=new de(a,0),e=new de(1,0);!(d.j&2147483648);)d=ge(d),e=ge(e);for(;0!=e.h||0!=e.j;)0>=(d.j>>0>>>0,((this.j+a.j&4294967295)>>>0)+(4294967296<=this.h+a.h?1:0)>>>0)};je.prototype.sub=function(a){return new je((this.h-a.h&4294967295)>>>0>>>0,((this.j-a.j&4294967295)>>>0)-(0>this.h-a.h?1:0)>>>0)};je.prototype.m=function(){return new je(this.h,this.j)};je.prototype.toString=function(){var a=0!=(this.j&2147483648),b=new de(this.h,this.j);a&&(b=(new de(0,0)).sub(b));return(a?"-":"")+b.toString()};_ds.f=le.prototype;_ds.f.length=function(){return this.h.length};_ds.f.end=function(){var a=this.h;this.h=[];return a};_ds.f.zpa=function(a){this.h.push(a>>>0&255)};_ds.f.ypa=function(a){this.h.push(a>>>0&255);this.h.push(a>>>8&255)};_ds.f.Eoa=function(a){this.h.push(a>>>0&255)};_ds.f.Doa=function(a){this.h.push(a>>>0&255);this.h.push(a>>>8&255)};_ds.f.OY=function(a){this.h.push.apply(this.h,a)};xe[" "]=_ds.gb;var Rw;_ds.ck=_ds.hd("Opera");_ds.Og=_ds.hd("Trident")||_ds.hd("MSIE");_ds.pr=_ds.hd("Edge");_ds.$r=_ds.pr||_ds.Og;_ds.bk=_ds.hd("Gecko")&&!(_ds.yc(_ds.gd.toLowerCase(),"webkit")&&!_ds.hd("Edge"))&&!(_ds.hd("Trident")||_ds.hd("MSIE"))&&!_ds.hd("Edge");_ds.Qg=_ds.yc(_ds.gd.toLowerCase(),"webkit")&&!_ds.hd("Edge");_ds.mr=_ds.hd("Macintosh");_ds.Lw=_ds.hd("Windows");_ds.Mw=_ds.hd("Android");_ds.Nw=ve();_ds.Ow=_ds.hd("iPad");_ds.Pw=_ds.hd("iPod");_ds.Qw=_ds.we(); +a:{var Sw="",Tw=function(){var a=_ds.gd;if(_ds.bk)return/rv:([^\);]+)(\)|;)/.exec(a);if(_ds.pr)return/Edge\/([\d\.]+)/.exec(a);if(_ds.Og)return/\b(?:MSIE|rv)[: ]([^\);]+)(\)|;)/.exec(a);if(_ds.Qg)return/WebKit\/(\S+)/.exec(a);if(_ds.ck)return/(?:Version)[ \/]?(\S+)/.exec(a)}();Tw&&(Sw=Tw?Tw[1]:"");if(_ds.Og){var Uw=Be();if(null!=Uw&&Uw>parseFloat(Sw)){Rw=String(Uw);break a}}Rw=Sw}var Ce=Rw,ze={},Vw;if(_ds.Sa.document&&_ds.Og){var Ww=Be();Vw=Ww?Ww:parseInt(Ce,10)||void 0}else Vw=void 0;_ds.Ge=Vw;var $w;_ds.Xw=id();_ds.Yw=ve()||_ds.hd("iPod");_ds.Zw=_ds.hd("iPad");$w=_ds.ld();_ds.ax=jd();_ds.bx=_ds.kd()&&!_ds.we();var Je={},Me=null;_ds.f=_ds.Ne.prototype;_ds.f.DY=function(a,b,c){null!=a&&null!=b&&null!=c&&Oe(this,a.subarray(b,c))};_ds.f.reset=function(){this.m=[];this.h.end();this.j=0;this.o=[]};_ds.f.kL=function(a){return _ds.Ke(_ds.Se(this),a)};_ds.f.Ot=function(a){this.o.push(_ds.Qe(this,a))};_ds.f.gE=function(){_ds.Re(this,this.o.pop())}; +_ds.f.Boa=function(a,b,c){switch(a){case 1:_ds.cf(this,b,c);break;case 2:null!=c&&(_ds.Pe(this,b,5),a=this.h,Xd(c),ne(a,_ds.Sd));break;case 3:_ds.Ye(this,b,c);break;case 4:null!=c&&_ds.Ve(this,b,c);break;case 5:_ds.Xe(this,b,c);break;case 6:af(this,b,c);break;case 7:null!=c&&(_ds.Pe(this,b,5),ne(this.h,c));break;case 8:_ds.df(this,b,c);break;case 9:_ds.G(this,b,c);break;case 12:_ds.ff(this,b,c);break;case 13:null!=c&&_ds.Te(this,b,c);break;case 14:_ds.ef(this,b,c);break;case 15:null!=c&&(_ds.Pe(this, +b,5),ue(this.h,c));break;case 16:bf(this,b,c);break;case 17:null!=c&&null!=c&&(_ds.Pe(this,b,0),se(this.h,c));break;case 18:null!=c&&_ds.We(this,b,c)}};_ds.f.xpa=function(a,b){null!=b&&null!=b&&(_ds.Pe(this,a,0),te(this.h,b))};_ds.f.R=_ds.ba(0);_ds.f.Foa=function(a,b,c){null!=b&&(_ds.Pe(this,1,3),_ds.Pe(this,2,0),_ds.re(this.h,a),a=_ds.Qe(this,3),c(b,this),_ds.Re(this,a),_ds.Pe(this,1,4))};_ds.f.Coa=function(a,b,c){null!=b&&(_ds.Pe(this,a,3),c(b,this),_ds.Pe(this,a,4))}; +_ds.f.ipa=function(a,b){if(null!=b)for(var c=0;c>>0,k>>>0)}};_ds.f.jpa=function(a,b){if(null!=b)for(var c=0;c=a.keyCode)a.keyCode=-1}catch(b){}};var Tf="closure_listenable_"+(1E6*Math.random()|0);var Vf=0;Yf.prototype.m=function(){var a=0,b;for(b in this.h)a+=this.h[b].length;return a};Yf.prototype.add=function(a,b,c,d,e){var g=a.toString();a=this.h[g];a||(a=this.h[g]=[],this.j++);var k=ag(a,b,d,e);-1>>0);_ds.hx=new Qf("devsite-analytics-observation");_ds.ix=new Qf("devsite-analytics-observation-unfiltered");_ds.jx=new Qf("devsite-analytics-observation-cloudtrack");_ds.kx=new Qf("devsite-analytics-timing");_ds.lx=new Qf("devsite-analytics-error");_ds.mx=new Qf("devsite-analytics-pageview");_ds.nx=new Qf("devsite-analytics-set-dimension");try{(new self.OffscreenCanvas(0,0)).getContext("2d")}catch(a){}var Rg=!_ds.Og||_ds.He(9),ox=!_ds.bk&&!_ds.Og||_ds.Og&&_ds.He(9)||_ds.bk&&_ds.De("1.9.1"),uh=_ds.Og&&!_ds.De("9"),hh=_ds.Og||_ds.ck||_ds.Qg;_ds.f=_ds.wg.prototype;_ds.f.Xl=function(a){return a instanceof _ds.wg&&(this==a?!0:this&&a?this.x==a.x&&this.y==a.y:!1)};_ds.f.ceil=function(){this.x=Math.ceil(this.x);this.y=Math.ceil(this.y);return this};_ds.f.floor=function(){this.x=Math.floor(this.x);this.y=Math.floor(this.y);return this};_ds.f.round=function(){this.x=Math.round(this.x);this.y=Math.round(this.y);return this}; +_ds.f.NN=function(a,b){a instanceof _ds.wg?(this.x+=a.x,this.y+=a.y):(this.x+=Number(a),"number"===typeof b&&(this.y+=b));return this};_ds.f.LN=function(a,b){this.x*=a;this.y*="number"===typeof b?b:a;return this};_ds.f.sfa=function(a,b){a=a*Math.PI/180;b=b||new _ds.wg(0,0);var c=this.x,d=this.y,e=Math.cos(a);a=Math.sin(a);this.x=(c-b.x)*e-(d-b.y)*a+b.x;this.y=(c-b.x)*a+(d-b.y)*e+b.y};_ds.f=_ds.xg.prototype;_ds.f.nJ=function(){return Math.max(this.width,this.height)};_ds.f.uL=function(){return Math.min(this.width,this.height)};_ds.f.u_=function(){return 2*(this.width+this.height)};_ds.f.aspectRatio=function(){return this.width/this.height};_ds.f.RN=function(){return!(this.width*this.height)};_ds.f.ceil=function(){this.width=Math.ceil(this.width);this.height=Math.ceil(this.height);return this};_ds.f.WE=function(a){return this.width<=a.width&&this.height<=a.height}; +_ds.f.floor=function(){this.width=Math.floor(this.width);this.height=Math.floor(this.height);return this};_ds.f.round=function(){this.width=Math.round(this.width);this.height=Math.round(this.height);return this};_ds.f.vfa=function(a){a=this.aspectRatio()<=a.aspectRatio()?a.width/this.width:a.height/this.height;return Ag(this,a)};_ds.f.wfa=function(a){a=this.aspectRatio()>a.aspectRatio()?a.width/this.width:a.height/this.height;return Ag(this,a)};var Jg={cellpadding:"cellPadding",cellspacing:"cellSpacing",colspan:"colSpan",frameborder:"frameBorder",height:"height",maxlength:"maxLength",nonce:"nonce",role:"role",rowspan:"rowSpan",type:"type",usemap:"useMap",valign:"vAlign",width:"width"},xh={SCRIPT:1,STYLE:1,HEAD:1,IFRAME:1,OBJECT:1},yh={IMG:" ",BR:"\n"};_ds.f=_ds.Bg.prototype;_ds.f.sN=_ds.Eg;_ds.f.Bha=function(a){this.h=a};_ds.f.getElement=function(a){return Fg(this.h,a)};_ds.f.cL=function(a){return Fg(this.h,a)};_ds.f.Ep=_ds.Bg.prototype.getElement; +_ds.f.getElementsByTagName=function(a,b){return(b||this.h).getElementsByTagName(String(a))};_ds.f.pm=function(a,b,c){return Ig(this.h,a,b,c)};_ds.f.uH=function(a,b,c){return Gg(this.h,a,b,c)};_ds.f.tN=function(a,b){return Hg(a,b||this.h)};_ds.f.Fp=_ds.Bg.prototype.pm;_ds.f.Xka=Kg; +_ds.f.rH=function(){var a=_ds.Dh(this),b=a.document;var c=0;if(b){c=b.body;var d=b.documentElement;if(d&&c)if(a=_ds.Mg(a).height,_ds.Lg(b)&&d.scrollHeight)c=d.scrollHeight!=a?d.scrollHeight:d.offsetHeight;else{b=d.scrollHeight;var e=d.offsetHeight;d.clientHeight!=e&&(b=c.scrollHeight,e=c.offsetHeight);c=b>a?b>e?b:e:b2*this.m&&Oh(this),!0):!1};_ds.f.get=function(a,b){return Nh(this.h,a)?this.h[a]:b};_ds.f.set=function(a,b){Nh(this.h,a)||(this.m++,this.j.push(a),this.o++);this.h[a]=b};_ds.f.forEach=function(a,b){for(var c=this.sb(),d=0;d=d.j.length)throw Hh;var g=d.j[b++];return a?g:d.h[g]};return e};var Xh;_ds.fi=/^(?:([^:/?#.]+):)?(?:\/\/(?:([^\\/?#]*)@)?([^\\/?#]*?)(?::([0-9]+))?(?=[\\/?#]|$))?([^?#]+)?(?:\?([^#]*))?(?:#([\s\S]*))?$/;_ds.Wh=/#|$/;Xh=/[?&]($|#)/;_ds.f=_ds.Zh.prototype;_ds.f.toString=function(){var a=[],b=this.C;b&&a.push(ji(b,px,!0),":");var c=this.j;if(c||"file"==b)a.push("//"),(b=this.H)&&a.push(ji(b,px,!0),"@"),a.push(encodeURIComponent(String(c)).replace(/%25([0-9a-fA-F]{2})/g,"%$1")),c=this.m,null!=c&&a.push(":",String(c));if(c=this.o)this.j&&"/"!=c.charAt(0)&&a.push("/"),a.push(ji(c,"/"==c.charAt(0)?qx:rx,!0));(c=this.h.toString())&&a.push("?",c);(c=this.F)&&a.push("#",ji(c,sx));return a.join("")}; +_ds.f.resolve=function(a){var b=new _ds.Zh(this),c=!!a.C;c?_ds.$h(b,a.C):c=!!a.H;if(c){var d=a.H;ai(b);b.H=d}else c=!!a.j;c?_ds.bi(b,a.j):c=null!=a.m;d=a.o;if(c)_ds.ci(b,a.m);else if(c=!!a.o){if("/"!=d.charAt(0))if(this.j&&!this.o)d="/"+d;else{var e=b.o.lastIndexOf("/");-1!=e&&(d=b.o.substr(0,e+1)+d)}e=d;if(".."==e||"."==e)d="";else if(_ds.yc(e,"./")||_ds.yc(e,"/.")){d=0==e.lastIndexOf("/",0);e=e.split("/");for(var g=[],k=0;kthis.h&&(this.h++,a.next=this.j,this.j=a)};fj.prototype.D=function(){return this.h};var qj;ij.prototype.add=function(a,b){var c=rj.get();c.set(a,b);this.j?this.j.next=c:this.h=c;this.j=c};ij.prototype.remove=function(){var a=null;this.h&&(a=this.h,this.h=this.h.next,this.h||(this.j=null),a.next=null);return a};var rj=new fj(function(){return new jj},function(a){return a.reset()});jj.prototype.set=function(a,b){this.h=a;this.scope=b;this.next=null};jj.prototype.reset=function(){this.next=this.scope=this.h=null};var kj,mj=!1,nj=new ij;vj.prototype.reset=function(){this.o=this.j=this.C=this.h=null;this.m=!1};var wj=new fj(function(){return new vj},function(a){a.reset()});_ds.uj.prototype.then=function(a,b,c){return _ds.Ej(this,"function"===typeof a?a:null,"function"===typeof b?b:null,c)};_ds.uj.prototype.$goog_Thenable=!0;_ds.f=_ds.uj.prototype;_ds.f.Mna=function(a,b){a=xj(a,a,b);a.m=!0;Cj(this,a);return this};_ds.f.cancel=function(a){if(0==this.h){var b=new Dj(a);oj(function(){yj(this,b)},this)}}; +_ds.f.wp=function(a){this.h=0;_ds.tj(this,2,a)};_ds.f.xp=function(a){this.h=0;_ds.tj(this,3,a)};_ds.f.cm=function(){for(var a;a=zj(this);)Aj(this,a,this.h,this.F);this.D=!1};_ds.f.Gs=function(){};_ds.f.yt=function(){};var Ij=hj;_ds.F(Dj,zb);Dj.prototype.name="cancel";_ds.F(_ds.Jj,_ds.dj);_ds.f=_ds.Jj.prototype;_ds.f.Xb=!1;_ds.f.wb=null;_ds.f.rp=function(){if(this.Xb){var a=_ds.wb()-this.o;0=this.left&&a.right<=this.right&&a.top>=this.top&&a.bottom<=this.bottom:a.x>=this.left&&a.x<=this.right&&a.y>=this.top&&a.y<=this.bottom:!1}; +_ds.f.AN=function(a,b,c,d){_ds.mb(a)?(this.top-=a.top,this.right+=a.right,this.bottom+=a.bottom,this.left-=a.left):(this.top-=a,this.right+=Number(b),this.bottom+=Number(c),this.left-=Number(d));return this};_ds.f.sE=function(a){this.left=Math.min(this.left,a.left);this.top=Math.min(this.top,a.top);this.right=Math.max(this.right,a.right);this.bottom=Math.max(this.bottom,a.bottom)}; +_ds.f.tE=function(a){this.top=Math.min(this.top,a.y);this.right=Math.max(this.right,a.x);this.bottom=Math.max(this.bottom,a.y);this.left=Math.min(this.left,a.x)};_ds.f.ceil=function(){this.top=Math.ceil(this.top);this.right=Math.ceil(this.right);this.bottom=Math.ceil(this.bottom);this.left=Math.ceil(this.left);return this};_ds.f.floor=function(){this.top=Math.floor(this.top);this.right=Math.floor(this.right);this.bottom=Math.floor(this.bottom);this.left=Math.floor(this.left);return this}; +_ds.f.round=function(){this.top=Math.round(this.top);this.right=Math.round(this.right);this.bottom=Math.round(this.bottom);this.left=Math.round(this.left);return this};_ds.f.JN=function(a,b){a instanceof _ds.wg?(this.left+=a.x,this.right+=a.x,this.top+=a.y,this.bottom+=a.y):(this.left+=a,this.right+=a,"number"===typeof b&&(this.top+=b,this.bottom+=b));return this};_ds.f.FN=function(a,b){b="number"===typeof b?b:a;this.left*=a;this.right*=a;this.top*=b;this.bottom*=b;return this};var ak,uk;ak={};_ds.ux=_ds.bk?"MozUserSelect":_ds.Qg||_ds.pr?"WebkitUserSelect":null;uk={thin:2,medium:4,thick:6};var Ek=[0,25,50,75,100];Ak.prototype.setup=function(){var a=this;this.Ka||(this.Ka=new Promise(function(b){a.Sc=b;Dk(a);Fk(a);wk(a);Bk(a);xk(a);zk(a)}));return this.Ka};Ak.prototype.scrollToAnchor=function(a){if(a){var b=_ds.Pg(document).x;a=_ds.jk(a);window.scrollTo(b,Math.floor(a.y)-(this.O+this.m-this.ya))}};Ak.prototype.dispose=function(){_ds.Wj(this.D);this.oa.disconnect()};_ds.Jk.prototype.Ma=function(){var a=this;return this.j?Promise.resolve():new Promise(function(b){var c=_ds.Sa.indexedDB.open("devsite-index-db",1);c.onsuccess=function(){a.h=c.result;a.j=!0;b()};c.onerror=function(d){throw Error(d);};c.onupgradeneeded=function(d){d=d.target.result.createObjectStore("userPreferences",{keyPath:"name"});d.createIndex("name","name",{unique:!0});d.createIndex("value","value",{unique:!1})}})}; +_ds.Jk.prototype.set=function(a,b){var c=this,d,e;return _ds.E(function(g){if(1==g.h)return _ds.u(g,c.Ma(),2);try{return d=c.h.transaction(["userPreferences"],"readwrite"),e={},d.objectStore("userPreferences").put((e.name=a,e.value=b,e)),g.return(new Promise(function(k){d.oncomplete=k}))}catch(k){console.warn(k)}_ds.v(g)})}; +_ds.Jk.prototype.get=function(a){var b=this,c,d;return _ds.E(function(e){if(1==e.h)return _ds.u(e,b.Ma(),2);try{return c=b.h.transaction(["userPreferences"],"readwrite"),d=c.objectStore("userPreferences").get(a),e.return(new Promise(function(g){d.onsuccess=function(){g(d.result?d.result.value:void 0)}}))}catch(g){console.warn(g)}_ds.v(e)})};_ds.F(_ds.Kk,_ds.jf);_ds.f=_ds.Kk.prototype;_ds.f.Y1=function(a){var b={action:_ds.rf(this,1,0),name:_ds.L(this,2),height:_ds.sf(this,3),width:_ds.sf(this,4),title:_ds.L(this,5),url:_ds.L(this,6),Vda:_ds.L(this,7),callback:_ds.L(this,8),eventName:_ds.L(this,9),lE:_ds.L(this,10)};a&&(b.M=this);return b}; +_ds.f.W1=function(){var a=new _ds.Ne;var b=_ds.rf(this,1,0);0!==b&&_ds.ef(a,1,b);b=this.getName();0 .devsite-apix,:not(#try-it) > #embedded-explorer,:not(#try-it):not(.devsite-apix) > .apis-explorer","devsite-apix"],["var.edit, pre var, var[scope]","devsite-var"],[".devsite-vplus","devsite-vplus"],["#gdf","devsite-forum"],[".replaceable-credential","devsite-credentials-dialog"],[".devsite-api-getstarted-widget","devsite-api-getstarted"],[".chrome-policies", +"cloudx-chrome-policies"],[".cloud-carousel","cloudx-carousel"],[".cloud-collapse","cloudx-collapse"],[".cloud-devices","cloudx-devices"],[".cloud-jump-menu","cloudx-jump-menu"],[".cloud-logo-tabs","cloudx-logo-tabs"],[".cloud-popup-instance:not(g)","cloudx-popup"],[".cloud-select-dropdown","cloudx-select-dropdown"],[".cloud-table-wrapper","cloudx-table"],[".cloud-tabs","cloudx-tabs"]]);var vx="onpointerover"in window?"pointerover":"mouseover",rl=["rec"];_ds.f=gl.prototype;_ds.f.registerIntersectionForElement=function(a,b,c,d){d=void 0===d?0:d;if(!this.D)throw Error("IntersectionObserver not supported");if(!b&&!c)throw Error("An enter or exit callback is required");if(this.C.has(a))throw Error("The element is already being observed.");this.C.set(a,{Wl:b,dm:c,threshold:d});this.D.observe(a)}; +_ds.f.intersectionEnterForElement=function(a,b){b=void 0===b?0:b;var c=this,d,e;return _ds.E(function(g){e=new Promise(function(k){d=k});c.registerIntersectionForElement(a,function(){c.unregisterIntersectionForElement(a);d()},null,b);return g.return(e)})};_ds.f.intersectionExitForElement=function(a){var b=this,c,d,e;return _ds.E(function(g){c=!1;e=new Promise(function(k){d=k});b.registerIntersectionForElement(a,function(){c=!0},function(){c&&(b.unregisterIntersectionForElement(a),d())});return g.return(e)})}; +_ds.f.unregisterIntersectionForElement=function(a){this.D.unobserve(a);this.C.delete(a)};_ds.f.interactionForElement=function(a,b){b=void 0===b?function(){}:b;var c=this,d,e,g;return _ds.E(function(k){e=new Promise(function(l){d=l});g=[_ds.eg(a,vx,function(l){c.unregisterInteractionForElement(a);b(l);d()}),_ds.eg(a,"focusin",function(l){c.unregisterInteractionForElement(a);b(l);d()})];c.F.set(a,g);return k.return(e)})}; +_ds.f.unregisterInteractionForElement=function(a){var b=this.F.get(a);b&&b.forEach(function(c){return void _ds.qg(c)});this.F.delete(a)};_ds.f.dispose=function(){_ds.Wj(this.m);this.j&&this.j.dispose();this.L&&this.L.dispose();this.K&&this.K.disconnect();this.D&&this.D.disconnect();for(var a=_ds.n(this.F.values()),b=a.next();!b.done;b=a.next())b.value.forEach(function(c){return void _ds.qg(c)});this.F.clear();this.C.clear();_ds.Ai(_ds.zi().href,!0,!1,this.H.x,this.H.y)};_ds.f.whenReady=function(){return __devsiteAppReadyPromise}; +_ds.f.hasFlagAccess=function(a){var b=_ds.zi();b=new _ds.Zh(b.href);var c=Object.keys(Iw);if("PROD"!==this.getEnv()){c=_ds.n(c);for(var d=c.next();!d.done;d=c.next())if(d=d.value,Iw[d]===a&&(d=_ds.mi(b,d),void 0!==d)){if("true"===d)return!0;if("false"===d)return!1}}return Array.from(_ds.I(this.h,13)).includes(a)}; +_ds.f.getEnv=function(){return _ds.uf(this.h,11)?"PROD":document.location.hostname.endsWith(".devsite.corp.google.com")||document.location.hostname.endsWith("devsite-v2-staging.googleplex.com")?"STAGE":"DEV"};_ds.f.getStaticPath=function(a){return(void 0===a?0:a)?_ds.L(this.h,6):_ds.L(this.h,5)};_ds.f.getTenantId=function(){return this.h.getTenantId()};_ds.f.getLocale=function(){return this.h.getLocale()&&"en"!==this.h.getLocale()?this.h.getLocale():""}; +_ds.f.od=function(){return this.Ka?this.Ka.od():_ds.uf(this.h,8)};_ds.f.getInsecureHost=function(){if(this.ea)return this.ea.origin};_ds.f.appNeedsRefresh=function(a){this.ya=!0;(void 0===a?0:a)&&this.N&&(a=Vi(3),this.N.sendMessage(a))};_ds.f.showLoading=function(a){var b=this;if(!this.G){var c=document.querySelector("#app-progress");c&&(this.G=window.setTimeout(function(){c.setAttribute("type","indeterminate");b.G=0},void 0===a?0:a))}}; +_ds.f.hideLoading=function(){window.clearTimeout(this.G);this.G=0;var a=document.querySelector("#app-progress");a&&a.removeAttribute("type")}; +_ds.f.scrollToAnchor=function(a,b){b=void 0===b?!1:b;var c=this,d,e,g,k,l,m,p,q;return _ds.E(function(r){switch(r.h){case 1:d=_ds.Pg(document).x;a=a.trim();if(0===a.length||"#"!==a[0])return r.return(!1);e=a.substr(1);if(""===e||"top_of_page"===e||"top"===e){window.scrollTo(d,0);r.J(2);break}return _ds.u(r,DevsiteApp.whenReady(),3);case 3:k=[e,decodeURI(e),e.replace(/%3C/g,"<").replace(/%3E/g,">")];l=_ds.n(k);for(m=l.next();!m.done;m=l.next()){p=m.value;try{if(g=document.querySelector('[id="'+p+'"],[name="'+ +p+'"]'))break}catch(w){}}if(!g)return r.return(!1);if(!c.j){r.J(2);break}return _ds.u(r,c.j.setup(),5);case 5:c.j.scrollToAnchor(g);case 2:return b&&(q=_ds.zi(),q.hash=a,_ds.Ai(q.href)),r.return(!0)}})};_ds.f.reload=function(){var a=_ds.zi();return this.fetchPage(a.href)}; +_ds.f.fetchPage=function(a,b){b=void 0===b?!0:b;var c=this,d,e,g,k,l,m,p;return _ds.E(function(q){switch(q.h){case 1:var r=document.querySelector("devsite-snackbar");r&&"error"===r.getAttribute("type")&&r.removeAttribute("type");c.showLoading(150);document.body.dispatchEvent(new CustomEvent("devsite-before-page-change",{bubbles:!0,cancelable:!1}));d=new URL(a,document.location.origin);if(d.origin!==document.location.origin)return _ds.Hd(d.href),q.return();e=d.href;g=new _ds.Zh(d.href);_ds.li(g,"partial", +"1");d.search=g.h.toString();b&&_ds.Ai(e,!1,!1);k=new Headers;k.append("X-DevSite-Partial-Request","1");c.Da||(c.Da=Ti(_ds.Fi,!0));_ds.x(q,2);return _ds.u(q,c.Da(d.href,{redirect:"manual",headers:k}),4);case 4:l=q.j;if(!l)throw Error("No response for "+d.href);var w=d.href;try{r=_ds.If(Nf,l)}catch(y){throw Error("Invalid proto returned for "+w);}return _ds.u(q,r,5);case 5:return m=q.j,_ds.u(q,ql(c,m),6);case 6:kl();ll(c);_ds.z(q,0);break;case 2:p=_ds.A(q),p instanceof Response&&"opaqueredirect"=== +p.type||200==p.status&&!p.headers.get("X-DevSite-Partial-Response")?_ds.Gd().location.reload():p instanceof Error?yl(c,p.message):yl(c,"Fetch failed for "+d.href),_ds.v(q)}})};gl.prototype.fetchPage=gl.prototype.fetchPage;gl.prototype.reload=gl.prototype.reload;gl.prototype.scrollToAnchor=gl.prototype.scrollToAnchor;gl.prototype.hideLoading=gl.prototype.hideLoading;gl.prototype.showLoading=gl.prototype.showLoading;gl.prototype.appNeedsRefresh=gl.prototype.appNeedsRefresh; +gl.prototype.getInsecureHost=gl.prototype.getInsecureHost;gl.prototype.getIsPageDirRoot=gl.prototype.od;gl.prototype.getLocale=gl.prototype.getLocale;gl.prototype.getTenantId=gl.prototype.getTenantId;gl.prototype.getStaticPath=gl.prototype.getStaticPath;gl.prototype.getEnv=gl.prototype.getEnv;gl.prototype.hasFlagAccess=gl.prototype.hasFlagAccess;gl.prototype.whenReady=gl.prototype.whenReady;gl.prototype.unregisterInteractionForElement=gl.prototype.unregisterInteractionForElement; +gl.prototype.interactionForElement=gl.prototype.interactionForElement;gl.prototype.unregisterIntersectionForElement=gl.prototype.unregisterIntersectionForElement;gl.prototype.intersectionExitForElement=gl.prototype.intersectionExitForElement;gl.prototype.intersectionEnterForElement=gl.prototype.intersectionEnterForElement;gl.prototype.registerIntersectionForElement=gl.prototype.registerIntersectionForElement;var nl=null;_ds.xb("DevsiteAppInit",function(a,b,c){Fl(a,b,c);a=nl;a.Xa||(a.Xa=ml(a,_ds.I(a.h,10)))});_ds.xb("DevsiteAppFrameboxInit",function(a,b){Fl(a,b);ol()});var wx=!/^\s*class\s*\{\s*\}\s*$/.test(function(){}.toString());/* + + Copyright (c) 2016 The Polymer Project Authors. All rights reserved. + This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt + The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt + The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt + Code distributed by Google as part of the polymer project is also + subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt +*/ +(function(){if(wx&&!HTMLElement.es5Shimmed&&void 0!==window.Reflect&&void 0!==window.customElements&&!window.customElements.polyfillWrapFlushCallback){var a=HTMLElement;window.HTMLElement=function(){return Reflect.construct(a,[],this.constructor)};HTMLElement.prototype=a.prototype;HTMLElement.prototype.constructor=HTMLElement;HTMLElement.es5Shimmed=!0;Object.setPrototypeOf(HTMLElement,a)}})();_ds.t(_ds.R,HTMLElement);_ds.R.prototype.updateContent=function(){console.warn(this.tagName,"has not implemented the updateContent method.")};_ds.f=_ds.Il.prototype; +_ds.f.set=function(a,b,c){var d=!1;if("object"===typeof c){var e=c.ufa;d=c.Cfa||!1;var g=c.domain||void 0;var k=c.path||void 0;var l=c.ub}if(/[;=\s]/.test(a))throw Error('Invalid cookie name "'+a+'"');if(/[;\r\n]/.test(b))throw Error('Invalid cookie value "'+b+'"');void 0===l&&(l=-1);this.h.cookie=a+"="+b+(g?";domain="+g:"")+(k?";path="+k:"")+(0>l?"":0==l?";expires="+(new Date(1970,1,1)).toUTCString():";expires="+(new Date(Date.now()+1E3*l)).toUTCString())+(d?";secure":"")+(null!=e?";samesite="+e: +"")};_ds.f.get=function(a,b){for(var c=a+"=",d=(this.h.cookie||"").split(";"),e=0,g;e=c.length)throw Hh;var e=c.key(b++);if(a)return e;e=c.getItem(e);if("string"!==typeof e)throw"Storage mechanism: Invalid value was encountered";return e};return d};_ds.f.clear=function(){this.h.clear()};_ds.f.key=function(a){return this.h.key(a)};_ds.f=_ds.Ol.prototype;_ds.f.tf=0;_ds.f.uf=0;_ds.f.reset=function(){this.h=this.j=this.m;this.uf=this.tf=0};_ds.f.YF=function(){return this.tf};_ds.f.gH=function(){return this.uf};_ds.f.sD=function(){this.h=Math.max(this.m,this.h/2);this.j=Math.max(this.m,this.h+(this.o?Math.round(this.o*(Math.random()-.5)*2*this.h):0));this.uf++};_ds.t(Rl,Error);_ds.t(Tl,Error);_ds.t(Ul,Error);_ds.t(Vl,Error);_ds.t(_ds.Wl,Error);_ds.t(Sl,Error);/* + Portions of this code are from MochiKit, received by + The Closure Authors under the MIT license. All other code is Copyright + 2005-2009 The Closure Authors. All Rights Reserved. +*/ +_ds.f=Xl.prototype;_ds.f.cancel=function(a){if(this.h)this.m instanceof Xl&&this.m.cancel();else{if(this.j){var b=this.j;delete this.j;a?b.cancel(a):(b.C--,0>=b.C&&b.cancel())}this.L?this.L.call(this.K,this):this.G=!0;this.h||this.le(new om(this))}};_ds.f.Jh=function(a,b){this.H=!1;Zl(this,a,b)};_ds.f.callback=function(a){am(this);Zl(this,!0,a)};_ds.f.le=function(a){am(this);Zl(this,!1,a)};_ds.f.Ct=function(){};_ds.f.Pr=function(a,b){return bm(this,null,a,b)}; +_ds.f.Er=function(a,b){return bm(this,a,a,b)};_ds.f.Tr=function(a,b){return bm(this,a,function(c){var d=a.call(this,c);if(void 0===d)throw c;return d},b)};_ds.f.then=function(a,b,c){var d,e,g=new _ds.uj(function(k,l){d=k;e=l});bm(this,d,function(k){k instanceof om?g.cancel():e(k)});return g.then(a,b,c)};Xl.prototype.$goog_Thenable=!0;Xl.prototype.Y=function(a){return a instanceof Xl?jm(this,(0,_ds.tb)(a.O,a)):jm(this,function(){return a})}; +Xl.prototype.O=function(a){var b=new Xl;bm(this,b.callback,b.le,b);a&&(b.j=this,this.C++);return b};Xl.prototype.W=function(){return this.h&&!this.o?this.m:void 0};_ds.F($l,zb);$l.prototype.message="Deferred has already fired";$l.prototype.name="AlreadyCalledError";_ds.F(om,zb);om.prototype.message="Deferred was canceled";om.prototype.name="CanceledError";nm.prototype.m=function(){delete mm[this.h];throw this.j;};var mm={};_ds.F(rm,zb);var um=null,ym=new WeakMap;Qm.prototype.send=function(a,b){Nm(a);return Wm(this,a).then(function(c){if(b){var d=new b;c=null==c?d:Mm(c,Gm,Hm,Im,b)}return c})};_ds.t(Rm,Qm);Rm.prototype.H=function(a){this.m=a};Rm.prototype.F=function(a){var b=this;return Tm(this).then(function(c){return _ds.Q(b,function e(){var g=this,k,l,m,p,q;return _ds.C(e,function(r){if(1==r.h)return void 0===g.h.Yf?r.J(2):_ds.u(r,zm(c,g.h.Yf),2);Sm(g,c);k=c.client.newBatch();l=_ds.n(a);for(m=l.next();!m.done;m=l.next())p=m.value,q=c.client.request(Vm(g,p)),k.add(q);return r.return(Ym(k))})})})};_ds.Zm.prototype.F=function(a){this.config.accessToken=a};_ds.fa.Object.defineProperties(_ds.Zm.prototype,{h:{configurable:!0,enumerable:!0,get:function(){return this.config.useFirstPartyAuth?new Rm(this.config.serviceEndpoint,this.config.apiKey,{"client/cors":!0,"googleapis.config/auth/useFirstPartyAuth":!0,"googleapis.config/auth/useFirstPartyAuthV2":!0}):new Rm(this.config.serviceEndpoint,this.config.apiKey,{"client/cors":!0})}}});_ds.t(dn,an);dn.prototype.m=function(a){throw Error(a.path+" request must be a MultipartRequest");};var yx={zk:"GIVEN",Hk:"REVOKED",hh:"UNKNOWN",Yk:"UNVALIDATED",values:function(){return[yx.hh,yx.zk,yx.Hk,yx.Yk]}},zx={Md:"PRIVATE",ad:"PROMOTED",bd:"PUBLIC",Nd:"VISIBILITY_UNKNOWN",values:function(){return[zx.Nd,zx.Md,zx.bd,zx.ad]}},Ax={Qe:"CODELAB",Ye:"PAGE",Ze:"PLAYLIST",bf:"QUIZ",Gk:"REFTYPE_UNKNOWN",values:function(){return[Ax.Gk,Ax.Ze,Ax.Qe,Ax.bf,Ax.Ye]}},ap={Md:"PRIVATE",ad:"PROMOTED",bd:"PUBLIC",Nd:"VISIBILITY_UNKNOWN",values:function(){return[ap.Nd,ap.Md,ap.bd,ap.ad]}},Bx={Re:"COMPLETED", +Ve:"FAILED",cf:"SKIPPED",df:"STARTED",ef:"UNDEFINED_STATE",values:function(){return[Bx.ef,Bx.df,Bx.Re,Bx.Ve,Bx.cf]}},Cx={Ja:"DISABLED",Ca:"ENABLED",Pa:"OPT_OUT_SETTING_UNDEFINED",values:function(){return[Cx.Pa,Cx.Ja,Cx.Ca]}},xp={Yc:"CREATION_METHOD_UNKNOWN",Zc:"FASTTRACK",xc:"PROFILE_WIZARD",values:function(){return[xp.Yc,xp.Zc,xp.xc]}},zp={Ja:"DISABLED",Ca:"ENABLED",Pa:"OPT_OUT_SETTING_UNDEFINED",values:function(){return[zp.Pa,zp.Ja,zp.Ca]}},Ap={Ja:"DISABLED",Ca:"ENABLED",Pa:"OPT_OUT_SETTING_UNDEFINED", +values:function(){return[Ap.Pa,Ap.Ja,Ap.Ca]}},Dx={qk:"ELIGIBILITY_ELIGIBLE",rk:"ELIGIBILITY_NOT_ELIGIBLE",Ld:"ELIGIBILITY_UNKNOWN",values:function(){return[Dx.Ld,Dx.qk,Dx.rk]}},Ex={Ld:"ELIGIBILITY_UNKNOWN",Ug:"ELIGIBLE",$g:"NOT_ELIGIBLE_ADMIN_DISABLED",ah:"NOT_ELIGIBLE_NON_GMAIL",values:function(){return[Ex.Ld,Ex.Ug,Ex.ah,Ex.$g]}},Fx={Ja:"DISABLED",Ca:"ENABLED",Pa:"OPT_OUT_SETTING_UNDEFINED",values:function(){return[Fx.Pa,Fx.Ja,Fx.Ca]}},yp={Me:"ACKNOWLEDGE_STATE_UNSPECIFIED",$c:"NOT_SEEN",jc:"SEEN", +values:function(){return[yp.Me,yp.$c,yp.jc]}},Gx={Ja:"DISABLED",Ca:"ENABLED",Pa:"OPT_OUT_SETTING_UNDEFINED",values:function(){return[Gx.Pa,Gx.Ja,Gx.Ca]}},Hx={Ja:"DISABLED",Ca:"ENABLED",Pa:"OPT_OUT_SETTING_UNDEFINED",values:function(){return[Hx.Pa,Hx.Ja,Hx.Ca]}},Ix={Qe:"CODELAB",Ye:"PAGE",Ze:"PLAYLIST",bf:"QUIZ",Wk:"UNDEFINED_TYPE",al:"YOUTUBE",values:function(){return[Ix.Wk,Ix.Ze,Ix.Qe,Ix.bf,Ix.al,Ix.Ye]}},Jx={Fk:"RATING_STATE_UNKNOWN",Tk:"THUMBS_DOWN",Uk:"THUMBS_UP",values:function(){return[Jx.Fk, +Jx.Uk,Jx.Tk]}},Kx={Ik:"SAVED",Jk:"SAVE_STATE_UNKNOWN",Xk:"UNSAVED",values:function(){return[Kx.Jk,Kx.Xk,Kx.Ik]}},Lx={Re:"COMPLETED",Ve:"FAILED",cf:"SKIPPED",df:"STARTED",ef:"UNDEFINED_STATE",values:function(){return[Lx.ef,Lx.df,Lx.Re,Lx.Ve,Lx.cf]}},Mx={fk:"AWARD",gk:"AWARD_ACTION_UNKNOWN",Zk:"UPDATED",values:function(){return[Mx.gk,Mx.fk,Mx.Zk]}},Nx={hk:"CAROTENE_CONTENT_TYPE",xk:"EXTERNAL_CONTENT",Vk:"UNDEFINED_CONTENT_TYPE",bl:"YOUTUBE_CONTENT_TYPE",values:function(){return[Nx.Vk,Nx.hk,Nx.bl,Nx.xk]}}, +Ox={Ne:"ALLOWED",Te:"DATA_SHARING_SETTING_UNDEFINED",$e:"PROHIBITED",values:function(){return[Ox.Te,Ox.$e,Ox.Ne]}},Px={Ne:"ALLOWED",Te:"DATA_SHARING_SETTING_UNDEFINED",$e:"PROHIBITED",values:function(){return[Px.Te,Px.$e,Px.Ne]}},Qx={Ja:"DISABLED",Ca:"ENABLED",Pa:"OPT_OUT_SETTING_UNDEFINED",values:function(){return[Qx.Pa,Qx.Ja,Qx.Ca]}},Rx={Yc:"CREATION_METHOD_UNKNOWN",Zc:"FASTTRACK",xc:"PROFILE_WIZARD",values:function(){return[Rx.Yc,Rx.Zc,Rx.xc]}},Ep={Me:"ACKNOWLEDGE_STATE_UNSPECIFIED",$c:"NOT_SEEN", +jc:"SEEN",values:function(){return[Ep.Me,Ep.$c,Ep.jc]}},Dp={Ja:"DISABLED",Ca:"ENABLED",Pa:"OPT_OUT_SETTING_UNDEFINED",values:function(){return[Dp.Pa,Dp.Ja,Dp.Ca]}},Cp={Ja:"DISABLED",Ca:"ENABLED",Pa:"OPT_OUT_SETTING_UNDEFINED",values:function(){return[Cp.Pa,Cp.Ja,Cp.Ca]}};_ds.t(gn,Cm);gn.prototype.V=function(){return gn};gn.prototype.T=function(){return{keys:["configVersion","values"],Zi:{values:{fe:jn,Sm:!1,Um:!0,Vm:!1}}}}; +_ds.fa.Object.defineProperties(gn.prototype,{mc:{configurable:!0,enumerable:!0,get:function(){return U(this,"configVersion")?S(this,"configVersion"):0},set:function(a){this.v.configVersion=a}},values:{configurable:!0,enumerable:!0,get:function(){return U(this,"values")?S(this,"values"):null},set:function(a){this.v.values=a}}});_ds.t(hn,Cm);hn.prototype.V=function(){return hn};hn.prototype.T=function(){return{keys:["a","b","g","r"]}}; +_ds.fa.Object.defineProperties(hn.prototype,{a:{configurable:!0,enumerable:!0,get:function(){return U(this,"a")?S(this,"a"):0},set:function(a){this.v.a=a}},b:{configurable:!0,enumerable:!0,get:function(){return U(this,"b")?S(this,"b"):0},set:function(a){this.v.b=a}},Zh:{configurable:!0,enumerable:!0,get:function(){return U(this,"g")?S(this,"g"):0},set:function(a){this.v.g=a}},r:{configurable:!0,enumerable:!0,get:function(){return U(this,"r")?S(this,"r"):0},set:function(a){this.v.r=a}}}); +_ds.t(jn,Cm);jn.prototype.V=function(){return jn};jn.prototype.T=function(){return{keys:["colorValue","floatValue","stringValue"],va:{colorValue:hn}}}; +_ds.fa.Object.defineProperties(jn.prototype,{Gh:{configurable:!0,enumerable:!0,get:function(){return U(this,"colorValue")?S(this,"colorValue"):null},set:function(a){this.v.colorValue=a}},Wh:{configurable:!0,enumerable:!0,get:function(){return U(this,"floatValue")?S(this,"floatValue"):0},set:function(a){this.v.floatValue=a}},stringValue:{configurable:!0,enumerable:!0,get:function(){return U(this,"stringValue")?S(this,"stringValue"):""},set:function(a){this.v.stringValue=a}}});_ds.t(kn,Cm); +kn.prototype.V=function(){return kn};kn.prototype.T=function(){return{hb:{state:yx,visibility:zx},keys:"awardId badge createTime creationTime currentTier description imageUrl obfuscatedProfileId originalObfuscatedGaiaId promotedPosition state title visibility".split(" "),va:{badge:ln,currentTier:An}}}; +_ds.fa.Object.defineProperties(kn.prototype,{awardId:{configurable:!0,enumerable:!0,get:function(){return U(this,"awardId")?S(this,"awardId"):""},set:function(a){this.v.awardId=a}},badge:{configurable:!0,enumerable:!0,get:function(){return U(this,"badge")?S(this,"badge"):null},set:function(a){this.v.badge=a}},createTime:{configurable:!0,enumerable:!0,get:function(){return U(this,"createTime")?S(this,"createTime"):""},set:function(a){this.v.createTime=a}},creationTime:{configurable:!0,enumerable:!0, +get:function(){return U(this,"creationTime")?S(this,"creationTime"):"0"},set:function(a){this.v.creationTime=a}},Nh:{configurable:!0,enumerable:!0,get:function(){return U(this,"currentTier")?S(this,"currentTier"):null},set:function(a){this.v.currentTier=a}},description:{configurable:!0,enumerable:!0,get:function(){return U(this,"description")?S(this,"description"):""},set:function(a){this.v.description=a}},imageUrl:{configurable:!0,enumerable:!0,get:function(){return U(this,"imageUrl")?S(this,"imageUrl"): +""},set:function(a){this.v.imageUrl=a}},obfuscatedProfileId:{configurable:!0,enumerable:!0,get:function(){return U(this,"obfuscatedProfileId")?S(this,"obfuscatedProfileId"):""},set:function(a){this.v.obfuscatedProfileId=a}},lj:{configurable:!0,enumerable:!0,get:function(){return U(this,"originalObfuscatedGaiaId")?S(this,"originalObfuscatedGaiaId"):""},set:function(a){this.v.originalObfuscatedGaiaId=a}},promotedPosition:{configurable:!0,enumerable:!0,get:function(){return U(this,"promotedPosition")? +S(this,"promotedPosition"):0},set:function(a){this.v.promotedPosition=a}},state:{configurable:!0,enumerable:!0,get:function(){return U(this,"state")?S(this,"state"):null},set:function(a){this.v.state=a}},title:{configurable:!0,enumerable:!0,get:function(){return U(this,"title")?S(this,"title"):""},set:function(a){this.v.title=a}},visibility:{configurable:!0,enumerable:!0,get:function(){return U(this,"visibility")?S(this,"visibility"):null},set:function(a){this.v.visibility=a}}}); +_ds.fa.Object.defineProperties(kn,{State:{configurable:!0,enumerable:!0,get:function(){return yx}},h:{configurable:!0,enumerable:!0,get:function(){return zx}}});_ds.t(ln,Cm);ln.prototype.V=function(){return ln};ln.prototype.T=function(){return{Wa:{awardedBy:mn,tiers:An},keys:"allowFrontend awardedBy childBadges description id imageUrl parentBadge sharing tiers title".split(" "),va:{id:_ds.no,sharing:zn}}}; +_ds.fa.Object.defineProperties(ln.prototype,{jh:{configurable:!0,enumerable:!0,get:function(){return U(this,"allowFrontend")?S(this,"allowFrontend"):!1},set:function(a){this.v.allowFrontend=a}},kf:{configurable:!0,enumerable:!0,get:function(){return U(this,"awardedBy")?S(this,"awardedBy"):[]},set:function(a){this.v.awardedBy=a}},qf:{configurable:!0,enumerable:!0,get:function(){return U(this,"childBadges")?S(this,"childBadges"):[]},set:function(a){this.v.childBadges=a}},description:{configurable:!0, +enumerable:!0,get:function(){return U(this,"description")?S(this,"description"):""},set:function(a){this.v.description=a}},id:{configurable:!0,enumerable:!0,get:function(){return U(this,"id")?S(this,"id"):null},set:function(a){this.v.id=a}},imageUrl:{configurable:!0,enumerable:!0,get:function(){return U(this,"imageUrl")?S(this,"imageUrl"):""},set:function(a){this.v.imageUrl=a}},fg:{configurable:!0,enumerable:!0,get:function(){return U(this,"parentBadge")?S(this,"parentBadge"):""},set:function(a){this.v.parentBadge= +a}},sharing:{configurable:!0,enumerable:!0,get:function(){return U(this,"sharing")?S(this,"sharing"):null},set:function(a){this.v.sharing=a}},tiers:{configurable:!0,enumerable:!0,get:function(){return U(this,"tiers")?S(this,"tiers"):[]},set:function(a){this.v.tiers=a}},title:{configurable:!0,enumerable:!0,get:function(){return U(this,"title")?S(this,"title"):""},set:function(a){this.v.title=a}}});_ds.t(mn,Cm);mn.prototype.V=function(){return mn}; +mn.prototype.T=function(){return{hb:{type:Ax},keys:["description","title","type","url"]}}; +_ds.fa.Object.defineProperties(mn.prototype,{description:{configurable:!0,enumerable:!0,get:function(){return U(this,"description")?S(this,"description"):""},set:function(a){this.v.description=a}},title:{configurable:!0,enumerable:!0,get:function(){return U(this,"title")?S(this,"title"):""},set:function(a){this.v.title=a}},type:{configurable:!0,enumerable:!0,get:function(){return U(this,"type")?S(this,"type"):null},set:function(a){this.v.type=a}},url:{configurable:!0,enumerable:!0,get:function(){return U(this, +"url")?S(this,"url"):""},set:function(a){this.v.url=a}}});_ds.fa.Object.defineProperties(mn,{h:{configurable:!0,enumerable:!0,get:function(){return Ax}}});_ds.t(nn,Cm);nn.prototype.V=function(){return nn};nn.prototype.T=function(){return{keys:["award","locale","walletId"],va:{award:kn}}}; +_ds.fa.Object.defineProperties(nn.prototype,{award:{configurable:!0,enumerable:!0,get:function(){return U(this,"award")?S(this,"award"):null},set:function(a){this.v.award=a}},locale:{configurable:!0,enumerable:!0,get:function(){return U(this,"locale")?S(this,"locale"):""},set:function(a){this.v.locale=a}},walletId:{configurable:!0,enumerable:!0,get:function(){return U(this,"walletId")?S(this,"walletId"):"0"},set:function(a){this.v.walletId=a}}});_ds.t(on,Cm);on.prototype.V=function(){return on}; +on.prototype.T=function(){return{keys:["award","awardId","badge"],va:{award:kn,badge:ln}}}; +_ds.fa.Object.defineProperties(on.prototype,{award:{configurable:!0,enumerable:!0,get:function(){return U(this,"award")?S(this,"award"):null},set:function(a){this.v.award=a}},awardId:{configurable:!0,enumerable:!0,get:function(){return U(this,"awardId")?S(this,"awardId"):""},set:function(a){this.v.awardId=a}},badge:{configurable:!0,enumerable:!0,get:function(){return U(this,"badge")?S(this,"badge"):null},set:function(a){this.v.badge=a}}});_ds.t(pn,Cm);pn.prototype.V=function(){return pn}; +pn.prototype.T=function(){return{keys:["badgeId","locale"],va:{badgeId:_ds.no}}};_ds.fa.Object.defineProperties(pn.prototype,{Tb:{configurable:!0,enumerable:!0,get:function(){return U(this,"badgeId")?S(this,"badgeId"):null},set:function(a){this.v.badgeId=a}},locale:{configurable:!0,enumerable:!0,get:function(){return U(this,"locale")?S(this,"locale"):""},set:function(a){this.v.locale=a}}});_ds.t(qn,Cm);qn.prototype.V=function(){return qn}; +qn.prototype.T=function(){return{keys:["award","awardId","badge"],va:{award:kn,badge:ln}}}; +_ds.fa.Object.defineProperties(qn.prototype,{award:{configurable:!0,enumerable:!0,get:function(){return U(this,"award")?S(this,"award"):null},set:function(a){this.v.award=a}},awardId:{configurable:!0,enumerable:!0,get:function(){return U(this,"awardId")?S(this,"awardId"):""},set:function(a){this.v.awardId=a}},badge:{configurable:!0,enumerable:!0,get:function(){return U(this,"badge")?S(this,"badge"):null},set:function(a){this.v.badge=a}}});_ds.t(rn,Cm);rn.prototype.V=function(){return rn}; +rn.prototype.T=function(){return{keys:[]}};_ds.t(sn,Cm);sn.prototype.V=function(){return sn};sn.prototype.T=function(){return{keys:["walletId"]}};_ds.fa.Object.defineProperties(sn.prototype,{walletId:{configurable:!0,enumerable:!0,get:function(){return U(this,"walletId")?S(this,"walletId"):"0"},set:function(a){this.v.walletId=a}}});_ds.t(tn,Cm);tn.prototype.V=function(){return tn};tn.prototype.T=function(){return{keys:["award"],va:{award:kn}}}; +_ds.fa.Object.defineProperties(tn.prototype,{award:{configurable:!0,enumerable:!0,get:function(){return U(this,"award")?S(this,"award"):null},set:function(a){this.v.award=a}}});_ds.t(un,Cm);un.prototype.V=function(){return un};un.prototype.T=function(){return{Wa:{awards:kn},keys:["awards"]}};_ds.fa.Object.defineProperties(un.prototype,{eb:{configurable:!0,enumerable:!0,get:function(){return U(this,"awards")?S(this,"awards"):[]},set:function(a){this.v.awards=a}}});_ds.t(_ds.vn,Cm); +_ds.vn.prototype.V=function(){return _ds.vn};_ds.vn.prototype.T=function(){return{keys:["locale","walletCode"]}};_ds.fa.Object.defineProperties(_ds.vn.prototype,{locale:{configurable:!0,enumerable:!0,get:function(){return U(this,"locale")?S(this,"locale"):""},set:function(a){this.v.locale=a}},Tc:{configurable:!0,enumerable:!0,get:function(){return U(this,"walletCode")?S(this,"walletCode"):"0"},set:function(a){this.v.walletCode=a}}});_ds.t(wn,Cm);wn.prototype.V=function(){return wn}; +wn.prototype.T=function(){return{Wa:{awards:kn},keys:["awards"]}};_ds.fa.Object.defineProperties(wn.prototype,{eb:{configurable:!0,enumerable:!0,get:function(){return U(this,"awards")?S(this,"awards"):[]},set:function(a){this.v.awards=a}}});_ds.t(xn,Cm);xn.prototype.V=function(){return xn};xn.prototype.T=function(){return{hb:{visibility:ap},keys:["awardId","promotedPosition","visibility"]}}; +_ds.fa.Object.defineProperties(xn.prototype,{awardId:{configurable:!0,enumerable:!0,get:function(){return U(this,"awardId")?S(this,"awardId"):""},set:function(a){this.v.awardId=a}},promotedPosition:{configurable:!0,enumerable:!0,get:function(){return U(this,"promotedPosition")?S(this,"promotedPosition"):0},set:function(a){this.v.promotedPosition=a}},visibility:{configurable:!0,enumerable:!0,get:function(){return U(this,"visibility")?S(this,"visibility"):null},set:function(a){this.v.visibility=a}}}); +_ds.fa.Object.defineProperties(xn,{h:{configurable:!0,enumerable:!0,get:function(){return ap}}});_ds.t(yn,Cm);yn.prototype.V=function(){return yn};yn.prototype.T=function(){return{keys:[]}};_ds.t(zn,Cm);zn.prototype.V=function(){return zn};zn.prototype.T=function(){return{keys:["description","imageUrl","title"]}}; +_ds.fa.Object.defineProperties(zn.prototype,{description:{configurable:!0,enumerable:!0,get:function(){return U(this,"description")?S(this,"description"):""},set:function(a){this.v.description=a}},imageUrl:{configurable:!0,enumerable:!0,get:function(){return U(this,"imageUrl")?S(this,"imageUrl"):""},set:function(a){this.v.imageUrl=a}},title:{configurable:!0,enumerable:!0,get:function(){return U(this,"title")?S(this,"title"):""},set:function(a){this.v.title=a}}});_ds.t(An,Cm);An.prototype.V=function(){return An}; +An.prototype.T=function(){return{keys:["description","imageUrl","title"]}}; +_ds.fa.Object.defineProperties(An.prototype,{description:{configurable:!0,enumerable:!0,get:function(){return U(this,"description")?S(this,"description"):""},set:function(a){this.v.description=a}},imageUrl:{configurable:!0,enumerable:!0,get:function(){return U(this,"imageUrl")?S(this,"imageUrl"):""},set:function(a){this.v.imageUrl=a}},title:{configurable:!0,enumerable:!0,get:function(){return U(this,"title")?S(this,"title"):""},set:function(a){this.v.title=a}}});_ds.t(Bn,Cm);Bn.prototype.V=function(){return Bn}; +Bn.prototype.T=function(){return{Wa:{paths:Gn},keys:["paths"]}};_ds.fa.Object.defineProperties(Bn.prototype,{paths:{configurable:!0,enumerable:!0,get:function(){return U(this,"paths")?S(this,"paths"):[]},set:function(a){this.v.paths=a}}});_ds.t(Cn,Cm);Cn.prototype.V=function(){return Cn};Cn.prototype.T=function(){return{keys:["description","imageUrl","sharing","title","url"],va:{sharing:Kn}}}; +_ds.fa.Object.defineProperties(Cn.prototype,{description:{configurable:!0,enumerable:!0,get:function(){return U(this,"description")?S(this,"description"):""},set:function(a){this.v.description=a}},imageUrl:{configurable:!0,enumerable:!0,get:function(){return U(this,"imageUrl")?S(this,"imageUrl"):""},set:function(a){this.v.imageUrl=a}},sharing:{configurable:!0,enumerable:!0,get:function(){return U(this,"sharing")?S(this,"sharing"):null},set:function(a){this.v.sharing=a}},title:{configurable:!0,enumerable:!0, +get:function(){return U(this,"title")?S(this,"title"):""},set:function(a){this.v.title=a}},url:{configurable:!0,enumerable:!0,get:function(){return U(this,"url")?S(this,"url"):""},set:function(a){this.v.url=a}}});_ds.t(Dn,Cm);Dn.prototype.V=function(){return Dn};Dn.prototype.T=function(){return{Wa:{paths:Gn},keys:["paths"]}};_ds.fa.Object.defineProperties(Dn.prototype,{paths:{configurable:!0,enumerable:!0,get:function(){return U(this,"paths")?S(this,"paths"):[]},set:function(a){this.v.paths=a}}}); +_ds.t(En,Cm);En.prototype.V=function(){return En};En.prototype.T=function(){return{keys:["badge"],va:{badge:Cn}}};_ds.fa.Object.defineProperties(En.prototype,{badge:{configurable:!0,enumerable:!0,get:function(){return U(this,"badge")?S(this,"badge"):null},set:function(a){this.v.badge=a}}});_ds.t(Fn,Cm);Fn.prototype.V=function(){return Fn};Fn.prototype.T=function(){return{keys:[]}};_ds.t(Gn,Cm);Gn.prototype.V=function(){return Gn}; +Gn.prototype.T=function(){return{keys:"codelab description page playlist profileData quiz title url".split(" "),va:{codelab:En,page:Fn,playlist:Hn,profileData:In,quiz:Jn}}}; +_ds.fa.Object.defineProperties(Gn.prototype,{codelab:{configurable:!0,enumerable:!0,get:function(){return U(this,"codelab")?S(this,"codelab"):null},set:function(a){this.v.codelab=a}},description:{configurable:!0,enumerable:!0,get:function(){return U(this,"description")?S(this,"description"):""},set:function(a){this.v.description=a}},page:{configurable:!0,enumerable:!0,get:function(){return U(this,"page")?S(this,"page"):null},set:function(a){this.v.page=a}},playlist:{configurable:!0,enumerable:!0, +get:function(){return U(this,"playlist")?S(this,"playlist"):null},set:function(a){this.v.playlist=a}},profileData:{configurable:!0,enumerable:!0,get:function(){return U(this,"profileData")?S(this,"profileData"):null},set:function(a){this.v.profileData=a}},quiz:{configurable:!0,enumerable:!0,get:function(){return U(this,"quiz")?S(this,"quiz"):null},set:function(a){this.v.quiz=a}},title:{configurable:!0,enumerable:!0,get:function(){return U(this,"title")?S(this,"title"):""},set:function(a){this.v.title= +a}},url:{configurable:!0,enumerable:!0,get:function(){return U(this,"url")?S(this,"url"):""},set:function(a){this.v.url=a}}});_ds.t(Hn,Cm);Hn.prototype.V=function(){return Hn};Hn.prototype.T=function(){return{Wa:{learningActivities:Gn},keys:["badge","learningActivities","nextPath"],va:{badge:Cn}}}; +_ds.fa.Object.defineProperties(Hn.prototype,{badge:{configurable:!0,enumerable:!0,get:function(){return U(this,"badge")?S(this,"badge"):null},set:function(a){this.v.badge=a}},learningActivities:{configurable:!0,enumerable:!0,get:function(){return U(this,"learningActivities")?S(this,"learningActivities"):[]},set:function(a){this.v.learningActivities=a}},nextPath:{configurable:!0,enumerable:!0,get:function(){return U(this,"nextPath")?S(this,"nextPath"):[]},set:function(a){this.v.nextPath=a}}}); +_ds.t(In,Cm);In.prototype.V=function(){return In};In.prototype.T=function(){return{hb:{state:Bx},keys:["state","updateTime"]}};_ds.fa.Object.defineProperties(In.prototype,{state:{configurable:!0,enumerable:!0,get:function(){return U(this,"state")?S(this,"state"):null},set:function(a){this.v.state=a}},updateTime:{configurable:!0,enumerable:!0,get:function(){return U(this,"updateTime")?S(this,"updateTime"):""},set:function(a){this.v.updateTime=a}}}); +_ds.fa.Object.defineProperties(In,{State:{configurable:!0,enumerable:!0,get:function(){return Bx}}});_ds.t(Jn,Cm);Jn.prototype.V=function(){return Jn};Jn.prototype.T=function(){return{keys:["badge"],va:{badge:Cn}}};_ds.fa.Object.defineProperties(Jn.prototype,{badge:{configurable:!0,enumerable:!0,get:function(){return U(this,"badge")?S(this,"badge"):null},set:function(a){this.v.badge=a}}});_ds.t(Kn,Cm);Kn.prototype.V=function(){return Kn}; +Kn.prototype.T=function(){return{keys:["description","imageUrl","title"]}}; +_ds.fa.Object.defineProperties(Kn.prototype,{description:{configurable:!0,enumerable:!0,get:function(){return U(this,"description")?S(this,"description"):""},set:function(a){this.v.description=a}},imageUrl:{configurable:!0,enumerable:!0,get:function(){return U(this,"imageUrl")?S(this,"imageUrl"):""},set:function(a){this.v.imageUrl=a}},title:{configurable:!0,enumerable:!0,get:function(){return U(this,"title")?S(this,"title"):""},set:function(a){this.v.title=a}}});_ds.t(Ln,Cm);Ln.prototype.V=function(){return Ln}; +Ln.prototype.T=function(){return{keys:["qAndA","updateMask"]}};_ds.fa.Object.defineProperties(Ln.prototype,{qAndA:{configurable:!0,enumerable:!0,get:function(){return U(this,"qAndA")?S(this,"qAndA"):!1},set:function(a){this.v.qAndA=a}},updateMask:{configurable:!0,enumerable:!0,get:function(){return U(this,"updateMask")?S(this,"updateMask"):""},set:function(a){this.v.updateMask=a}}});_ds.t(Mn,Cm);Mn.prototype.V=function(){return Mn}; +Mn.prototype.T=function(){return{hb:{badgeEmailPreference:Cx,creationMethod:xp,feedbackEmailPreference:zp,newsletterEmailPreference:Ap},keys:"badgeEmailPreference creationMethod displayImage displayName eyckContainer feedbackEmailPreference gcloudDataOk gender language location newsletterEmailPreference organization originTenantId playStoreDataOk pronoun title walletId".split(" "),va:{eyckContainer:oo,location:to}}}; +_ds.fa.Object.defineProperties(Mn.prototype,{Sb:{configurable:!0,enumerable:!0,get:function(){return U(this,"badgeEmailPreference")?S(this,"badgeEmailPreference"):null},set:function(a){this.v.badgeEmailPreference=a}},creationMethod:{configurable:!0,enumerable:!0,get:function(){return U(this,"creationMethod")?S(this,"creationMethod"):null},set:function(a){this.v.creationMethod=a}},kd:{configurable:!0,enumerable:!0,get:function(){return U(this,"displayImage")?S(this,"displayImage"):""},set:function(a){this.v.displayImage= +a}},displayName:{configurable:!0,enumerable:!0,get:function(){return U(this,"displayName")?S(this,"displayName"):""},set:function(a){this.v.displayName=a}},Ha:{configurable:!0,enumerable:!0,get:function(){return U(this,"eyckContainer")?S(this,"eyckContainer"):null},set:function(a){this.v.eyckContainer=a}},feedbackEmailPreference:{configurable:!0,enumerable:!0,get:function(){return U(this,"feedbackEmailPreference")?S(this,"feedbackEmailPreference"):null},set:function(a){this.v.feedbackEmailPreference= +a}},ld:{configurable:!0,enumerable:!0,get:function(){return U(this,"gcloudDataOk")?S(this,"gcloudDataOk"):!1},set:function(a){this.v.gcloudDataOk=a}},md:{configurable:!0,enumerable:!0,get:function(){return U(this,"gender")?S(this,"gender"):""},set:function(a){this.v.gender=a}},language:{configurable:!0,enumerable:!0,get:function(){return U(this,"language")?S(this,"language"):""},set:function(a){this.v.language=a}},location:{configurable:!0,enumerable:!0,get:function(){return U(this,"location")?S(this, +"location"):null},set:function(a){this.v.location=a}},newsletterEmailPreference:{configurable:!0,enumerable:!0,get:function(){return U(this,"newsletterEmailPreference")?S(this,"newsletterEmailPreference"):null},set:function(a){this.v.newsletterEmailPreference=a}},organization:{configurable:!0,enumerable:!0,get:function(){return U(this,"organization")?S(this,"organization"):""},set:function(a){this.v.organization=a}},originTenantId:{configurable:!0,enumerable:!0,get:function(){return U(this,"originTenantId")? +S(this,"originTenantId"):"0"},set:function(a){this.v.originTenantId=a}},Ad:{configurable:!0,enumerable:!0,get:function(){return U(this,"playStoreDataOk")?S(this,"playStoreDataOk"):!1},set:function(a){this.v.playStoreDataOk=a}},pronoun:{configurable:!0,enumerable:!0,get:function(){return U(this,"pronoun")?S(this,"pronoun"):""},set:function(a){this.v.pronoun=a}},title:{configurable:!0,enumerable:!0,get:function(){return U(this,"title")?S(this,"title"):""},set:function(a){this.v.title=a}},walletId:{configurable:!0, +enumerable:!0,get:function(){return U(this,"walletId")?S(this,"walletId"):"0"},set:function(a){this.v.walletId=a}}});_ds.fa.Object.defineProperties(Mn,{h:{configurable:!0,enumerable:!0,get:function(){return Cx}},j:{configurable:!0,enumerable:!0,get:function(){return xp}},m:{configurable:!0,enumerable:!0,get:function(){return zp}},o:{configurable:!0,enumerable:!0,get:function(){return Ap}}});_ds.t(Nn,Cm);Nn.prototype.V=function(){return Nn}; +Nn.prototype.T=function(){return{keys:["obfuscatedProfileId","profile"],va:{profile:ro}}};_ds.fa.Object.defineProperties(Nn.prototype,{obfuscatedProfileId:{configurable:!0,enumerable:!0,get:function(){return U(this,"obfuscatedProfileId")?S(this,"obfuscatedProfileId"):""},set:function(a){this.v.obfuscatedProfileId=a}},profile:{configurable:!0,enumerable:!0,get:function(){return U(this,"profile")?S(this,"profile"):null},set:function(a){this.v.profile=a}}});_ds.t(On,Cm);On.prototype.V=function(){return On}; +On.prototype.T=function(){return{keys:[]}};_ds.t(Pn,Cm);Pn.prototype.V=function(){return Pn};Pn.prototype.T=function(){return{keys:["createProfile","qAndA"],va:{createProfile:Qn,qAndA:Qn}}}; +_ds.fa.Object.defineProperties(Pn.prototype,{createProfile:{configurable:!0,enumerable:!0,get:function(){return U(this,"createProfile")?S(this,"createProfile"):null},set:function(a){this.v.createProfile=a}},qAndA:{configurable:!0,enumerable:!0,get:function(){return U(this,"qAndA")?S(this,"qAndA"):null},set:function(a){this.v.qAndA=a}}});_ds.t(Qn,Cm);Qn.prototype.V=function(){return Qn};Qn.prototype.T=function(){return{hb:{status:Dx},keys:["ineligibleReason","status"]}}; +_ds.fa.Object.defineProperties(Qn.prototype,{ineligibleReason:{configurable:!0,enumerable:!0,get:function(){return U(this,"ineligibleReason")?S(this,"ineligibleReason"):""},set:function(a){this.v.ineligibleReason=a}},status:{configurable:!0,enumerable:!0,get:function(){return U(this,"status")?S(this,"status"):null},set:function(a){this.v.status=a}}});_ds.fa.Object.defineProperties(Qn,{h:{configurable:!0,enumerable:!0,get:function(){return Dx}}});_ds.t(Rn,Cm);Rn.prototype.V=function(){return Rn}; +Rn.prototype.T=function(){return{hb:{eligibility:Ex},keys:["eligibility","featureEligibility"],va:{featureEligibility:Pn}}};_ds.fa.Object.defineProperties(Rn.prototype,{zf:{configurable:!0,enumerable:!0,get:function(){return U(this,"eligibility")?S(this,"eligibility"):null},set:function(a){this.v.eligibility=a}},Ra:{configurable:!0,enumerable:!0,get:function(){return U(this,"featureEligibility")?S(this,"featureEligibility"):null},set:function(a){this.v.featureEligibility=a}}}); +_ds.fa.Object.defineProperties(Rn,{h:{configurable:!0,enumerable:!0,get:function(){return Ex}}});_ds.t(Sn,Cm);Sn.prototype.V=function(){return Sn};Sn.prototype.T=function(){return{keys:["obfuscatedProfileId","pendingFields","profile"],va:{profile:ro}}}; +_ds.fa.Object.defineProperties(Sn.prototype,{obfuscatedProfileId:{configurable:!0,enumerable:!0,get:function(){return U(this,"obfuscatedProfileId")?S(this,"obfuscatedProfileId"):""},set:function(a){this.v.obfuscatedProfileId=a}},pendingFields:{configurable:!0,enumerable:!0,get:function(){return U(this,"pendingFields")?S(this,"pendingFields"):[]},set:function(a){this.v.pendingFields=a}},profile:{configurable:!0,enumerable:!0,get:function(){return U(this,"profile")?S(this,"profile"):null},set:function(a){this.v.profile= +a}}});_ds.t(Tn,Cm);Tn.prototype.V=function(){return Tn};Tn.prototype.T=function(){return{keys:["wizardV1Seen"]}};_ds.fa.Object.defineProperties(Tn.prototype,{wizardV1Seen:{configurable:!0,enumerable:!0,get:function(){return U(this,"wizardV1Seen")?S(this,"wizardV1Seen"):!1},set:function(a){this.v.wizardV1Seen=a}}});_ds.t(Un,Cm);Un.prototype.V=function(){return Un};Un.prototype.T=function(){return{keys:[]}};_ds.t(Vn,Cm);Vn.prototype.V=function(){return Vn}; +Vn.prototype.T=function(){return{hb:{badgeEmailPreference:Fx,dashboardV1Seen:yp,feedbackEmailPreference:Gx,newsletterEmailPreference:Hx},keys:"badgeEmailPreference bio dashboardV1Seen displayImage displayName eyckContainer feedbackEmailPreference fieldMask gcloudDataOk gender githubId gitlabId linkedinId location newsletterEmailPreference organization playStoreDataOk pronoun selectedEmailAccountId stackoverflowId title twitterId".split(" "),va:{eyckContainer:oo,location:to}}}; +_ds.fa.Object.defineProperties(Vn.prototype,{Sb:{configurable:!0,enumerable:!0,get:function(){return U(this,"badgeEmailPreference")?S(this,"badgeEmailPreference"):null},set:function(a){this.v.badgeEmailPreference=a}},bio:{configurable:!0,enumerable:!0,get:function(){return U(this,"bio")?S(this,"bio"):""},set:function(a){this.v.bio=a}},dashboardV1Seen:{configurable:!0,enumerable:!0,get:function(){return U(this,"dashboardV1Seen")?S(this,"dashboardV1Seen"):null},set:function(a){this.v.dashboardV1Seen= +a}},kd:{configurable:!0,enumerable:!0,get:function(){return U(this,"displayImage")?S(this,"displayImage"):""},set:function(a){this.v.displayImage=a}},displayName:{configurable:!0,enumerable:!0,get:function(){return U(this,"displayName")?S(this,"displayName"):""},set:function(a){this.v.displayName=a}},Ha:{configurable:!0,enumerable:!0,get:function(){return U(this,"eyckContainer")?S(this,"eyckContainer"):null},set:function(a){this.v.eyckContainer=a}},feedbackEmailPreference:{configurable:!0,enumerable:!0, +get:function(){return U(this,"feedbackEmailPreference")?S(this,"feedbackEmailPreference"):null},set:function(a){this.v.feedbackEmailPreference=a}},fieldMask:{configurable:!0,enumerable:!0,get:function(){return U(this,"fieldMask")?S(this,"fieldMask"):""},set:function(a){this.v.fieldMask=a}},ld:{configurable:!0,enumerable:!0,get:function(){return U(this,"gcloudDataOk")?S(this,"gcloudDataOk"):!1},set:function(a){this.v.gcloudDataOk=a}},md:{configurable:!0,enumerable:!0,get:function(){return U(this,"gender")? +S(this,"gender"):""},set:function(a){this.v.gender=a}},githubId:{configurable:!0,enumerable:!0,get:function(){return U(this,"githubId")?S(this,"githubId"):""},set:function(a){this.v.githubId=a}},gitlabId:{configurable:!0,enumerable:!0,get:function(){return U(this,"gitlabId")?S(this,"gitlabId"):""},set:function(a){this.v.gitlabId=a}},linkedinId:{configurable:!0,enumerable:!0,get:function(){return U(this,"linkedinId")?S(this,"linkedinId"):""},set:function(a){this.v.linkedinId=a}},location:{configurable:!0, +enumerable:!0,get:function(){return U(this,"location")?S(this,"location"):null},set:function(a){this.v.location=a}},newsletterEmailPreference:{configurable:!0,enumerable:!0,get:function(){return U(this,"newsletterEmailPreference")?S(this,"newsletterEmailPreference"):null},set:function(a){this.v.newsletterEmailPreference=a}},organization:{configurable:!0,enumerable:!0,get:function(){return U(this,"organization")?S(this,"organization"):""},set:function(a){this.v.organization=a}},Ad:{configurable:!0, +enumerable:!0,get:function(){return U(this,"playStoreDataOk")?S(this,"playStoreDataOk"):!1},set:function(a){this.v.playStoreDataOk=a}},pronoun:{configurable:!0,enumerable:!0,get:function(){return U(this,"pronoun")?S(this,"pronoun"):""},set:function(a){this.v.pronoun=a}},selectedEmailAccountId:{configurable:!0,enumerable:!0,get:function(){return U(this,"selectedEmailAccountId")?S(this,"selectedEmailAccountId"):""},set:function(a){this.v.selectedEmailAccountId=a}},stackoverflowId:{configurable:!0,enumerable:!0, +get:function(){return U(this,"stackoverflowId")?S(this,"stackoverflowId"):""},set:function(a){this.v.stackoverflowId=a}},title:{configurable:!0,enumerable:!0,get:function(){return U(this,"title")?S(this,"title"):""},set:function(a){this.v.title=a}},twitterId:{configurable:!0,enumerable:!0,get:function(){return U(this,"twitterId")?S(this,"twitterId"):""},set:function(a){this.v.twitterId=a}}}); +_ds.fa.Object.defineProperties(Vn,{h:{configurable:!0,enumerable:!0,get:function(){return Fx}},j:{configurable:!0,enumerable:!0,get:function(){return yp}},m:{configurable:!0,enumerable:!0,get:function(){return Gx}},o:{configurable:!0,enumerable:!0,get:function(){return Hx}}});_ds.t(Wn,Cm);Wn.prototype.V=function(){return Wn};Wn.prototype.T=function(){return{keys:["profile"],va:{profile:ro}}}; +_ds.fa.Object.defineProperties(Wn.prototype,{profile:{configurable:!0,enumerable:!0,get:function(){return U(this,"profile")?S(this,"profile"):null},set:function(a){this.v.profile=a}}});_ds.t(Xn,Cm);Xn.prototype.V=function(){return Xn};Xn.prototype.T=function(){return{Wa:{paths:Yn},keys:["nextPageToken","paths"]}}; +_ds.fa.Object.defineProperties(Xn.prototype,{nextPageToken:{configurable:!0,enumerable:!0,get:function(){return U(this,"nextPageToken")?S(this,"nextPageToken"):""},set:function(a){this.v.nextPageToken=a}},paths:{configurable:!0,enumerable:!0,get:function(){return U(this,"paths")?S(this,"paths"):[]},set:function(a){this.v.paths=a}}});_ds.t(Yn,Cm);Yn.prototype.V=function(){return Yn};Yn.prototype.T=function(){return{hb:{contentType:Ix,ratingState:Jx,saveState:Kx,state:Lx},keys:"contentType description lastActionTime markDismiss name nextPath ratingState saveState state title updated url".split(" ")}}; +_ds.fa.Object.defineProperties(Yn.prototype,{contentType:{configurable:!0,enumerable:!0,get:function(){return U(this,"contentType")?S(this,"contentType"):null},set:function(a){this.v.contentType=a}},description:{configurable:!0,enumerable:!0,get:function(){return U(this,"description")?S(this,"description"):""},set:function(a){this.v.description=a}},lastActionTime:{configurable:!0,enumerable:!0,get:function(){return U(this,"lastActionTime")?S(this,"lastActionTime"):""},set:function(a){this.v.lastActionTime= +a}},markDismiss:{configurable:!0,enumerable:!0,get:function(){return U(this,"markDismiss")?S(this,"markDismiss"):!1},set:function(a){this.v.markDismiss=a}},name:{configurable:!0,enumerable:!0,get:function(){return U(this,"name")?S(this,"name"):""},set:function(a){this.v.name=a}},nextPath:{configurable:!0,enumerable:!0,get:function(){return U(this,"nextPath")?S(this,"nextPath"):""},set:function(a){this.v.nextPath=a}},ratingState:{configurable:!0,enumerable:!0,get:function(){return U(this,"ratingState")? +S(this,"ratingState"):null},set:function(a){this.v.ratingState=a}},saveState:{configurable:!0,enumerable:!0,get:function(){return U(this,"saveState")?S(this,"saveState"):null},set:function(a){this.v.saveState=a}},state:{configurable:!0,enumerable:!0,get:function(){return U(this,"state")?S(this,"state"):null},set:function(a){this.v.state=a}},title:{configurable:!0,enumerable:!0,get:function(){return U(this,"title")?S(this,"title"):""},set:function(a){this.v.title=a}},updated:{configurable:!0,enumerable:!0, +get:function(){return U(this,"updated")?S(this,"updated"):!1},set:function(a){this.v.updated=a}},url:{configurable:!0,enumerable:!0,get:function(){return U(this,"url")?S(this,"url"):""},set:function(a){this.v.url=a}}});_ds.fa.Object.defineProperties(Yn,{m:{configurable:!0,enumerable:!0,get:function(){return Ix}},h:{configurable:!0,enumerable:!0,get:function(){return Jx}},j:{configurable:!0,enumerable:!0,get:function(){return Kx}},State:{configurable:!0,enumerable:!0,get:function(){return Lx}}}); +_ds.t(Zn,Cm);Zn.prototype.V=function(){return Zn};Zn.prototype.T=function(){return{Wa:{paths:Yn},keys:["paths"]}};_ds.fa.Object.defineProperties(Zn.prototype,{paths:{configurable:!0,enumerable:!0,get:function(){return U(this,"paths")?S(this,"paths"):[]},set:function(a){this.v.paths=a}}});_ds.t($n,Cm);$n.prototype.V=function(){return $n};$n.prototype.T=function(){return{keys:["earnedBadges","ratedPages","savedPages"]}}; +_ds.fa.Object.defineProperties($n.prototype,{earnedBadges:{configurable:!0,enumerable:!0,get:function(){return U(this,"earnedBadges")?S(this,"earnedBadges"):"0"},set:function(a){this.v.earnedBadges=a}},ratedPages:{configurable:!0,enumerable:!0,get:function(){return U(this,"ratedPages")?S(this,"ratedPages"):"0"},set:function(a){this.v.ratedPages=a}},savedPages:{configurable:!0,enumerable:!0,get:function(){return U(this,"savedPages")?S(this,"savedPages"):"0"},set:function(a){this.v.savedPages=a}}}); +_ds.t(_ds.ao,Cm);_ds.ao.prototype.V=function(){return _ds.ao};_ds.ao.prototype.T=function(){return{keys:["contentId","quiz","walletId"],va:{contentId:_ds.no,quiz:_ds.mo}}}; +_ds.fa.Object.defineProperties(_ds.ao.prototype,{Zd:{configurable:!0,enumerable:!0,get:function(){return U(this,"contentId")?S(this,"contentId"):null},set:function(a){this.v.contentId=a}},quiz:{configurable:!0,enumerable:!0,get:function(){return U(this,"quiz")?S(this,"quiz"):null},set:function(a){this.v.quiz=a}},walletId:{configurable:!0,enumerable:!0,get:function(){return U(this,"walletId")?S(this,"walletId"):"0"},set:function(a){this.v.walletId=a}}});_ds.t(bo,Cm);bo.prototype.V=function(){return bo}; +bo.prototype.T=function(){return{hb:{awardAction:Mx},keys:["awardAction","badge","quiz"],va:{badge:ln,quiz:_ds.mo}}}; +_ds.fa.Object.defineProperties(bo.prototype,{vh:{configurable:!0,enumerable:!0,get:function(){return U(this,"awardAction")?S(this,"awardAction"):null},set:function(a){this.v.awardAction=a}},badge:{configurable:!0,enumerable:!0,get:function(){return U(this,"badge")?S(this,"badge"):null},set:function(a){this.v.badge=a}},quiz:{configurable:!0,enumerable:!0,get:function(){return U(this,"quiz")?S(this,"quiz"):null},set:function(a){this.v.quiz=a}}}); +_ds.fa.Object.defineProperties(bo,{h:{configurable:!0,enumerable:!0,get:function(){return Mx}}});_ds.t(_ds.co,Cm);_ds.co.prototype.V=function(){return _ds.co};_ds.co.prototype.T=function(){return{keys:["answerText","correct","explanation","index"]}}; +_ds.fa.Object.defineProperties(_ds.co.prototype,{kc:{configurable:!0,enumerable:!0,get:function(){return U(this,"answerText")?S(this,"answerText"):""},set:function(a){this.v.answerText=a}},correct:{configurable:!0,enumerable:!0,get:function(){return U(this,"correct")?S(this,"correct"):!1},set:function(a){this.v.correct=a}},explanation:{configurable:!0,enumerable:!0,get:function(){return U(this,"explanation")?S(this,"explanation"):""},set:function(a){this.v.explanation=a}},index:{configurable:!0,enumerable:!0, +get:function(){return U(this,"index")?S(this,"index"):0},set:function(a){this.v.index=a}}});_ds.t(_ds.eo,Cm);_ds.eo.prototype.V=function(){return _ds.eo};_ds.eo.prototype.T=function(){return{Wa:{answers:_ds.co},keys:["answers"]}};_ds.fa.Object.defineProperties(_ds.eo.prototype,{answers:{configurable:!0,enumerable:!0,get:function(){return U(this,"answers")?S(this,"answers"):[]},set:function(a){this.v.answers=a}}});_ds.t(_ds.fo,Cm);_ds.fo.prototype.V=function(){return _ds.fo}; +_ds.fo.prototype.T=function(){return{keys:["answer"],va:{answer:_ds.co}}};_ds.fa.Object.defineProperties(_ds.fo.prototype,{answer:{configurable:!0,enumerable:!0,get:function(){return U(this,"answer")?S(this,"answer"):null},set:function(a){this.v.answer=a}}});_ds.t(_ds.go,Cm);_ds.go.prototype.V=function(){return _ds.go};_ds.go.prototype.T=function(){return{keys:["answerIndex","correct","explanation","itemIndex"]}}; +_ds.fa.Object.defineProperties(_ds.go.prototype,{dd:{configurable:!0,enumerable:!0,get:function(){return U(this,"answerIndex")?S(this,"answerIndex"):0},set:function(a){this.v.answerIndex=a}},correct:{configurable:!0,enumerable:!0,get:function(){return U(this,"correct")?S(this,"correct"):!1},set:function(a){this.v.correct=a}},explanation:{configurable:!0,enumerable:!0,get:function(){return U(this,"explanation")?S(this,"explanation"):""},set:function(a){this.v.explanation=a}},xd:{configurable:!0,enumerable:!0, +get:function(){return U(this,"itemIndex")?S(this,"itemIndex"):0},set:function(a){this.v.itemIndex=a}}});_ds.t(_ds.ho,Cm);_ds.ho.prototype.V=function(){return _ds.ho};_ds.ho.prototype.T=function(){return{Wa:{answers:_ds.go},keys:["answers"]}};_ds.fa.Object.defineProperties(_ds.ho.prototype,{answers:{configurable:!0,enumerable:!0,get:function(){return U(this,"answers")?S(this,"answers"):[]},set:function(a){this.v.answers=a}}});_ds.t(_ds.io,Cm);_ds.io.prototype.V=function(){return _ds.io}; +_ds.io.prototype.T=function(){return{keys:["correct","explanation","index"]}}; +_ds.fa.Object.defineProperties(_ds.io.prototype,{correct:{configurable:!0,enumerable:!0,get:function(){return U(this,"correct")?S(this,"correct"):!1},set:function(a){this.v.correct=a}},explanation:{configurable:!0,enumerable:!0,get:function(){return U(this,"explanation")?S(this,"explanation"):""},set:function(a){this.v.explanation=a}},index:{configurable:!0,enumerable:!0,get:function(){return U(this,"index")?S(this,"index"):0},set:function(a){this.v.index=a}}});_ds.t(_ds.jo,Cm); +_ds.jo.prototype.V=function(){return _ds.jo};_ds.jo.prototype.T=function(){return{Wa:{answers:_ds.io},keys:["answers"]}};_ds.fa.Object.defineProperties(_ds.jo.prototype,{answers:{configurable:!0,enumerable:!0,get:function(){return U(this,"answers")?S(this,"answers"):[]},set:function(a){this.v.answers=a}}});_ds.t(_ds.ko,Cm);_ds.ko.prototype.V=function(){return _ds.ko};_ds.ko.prototype.T=function(){return{keys:["answer"],va:{answer:_ds.io}}}; +_ds.fa.Object.defineProperties(_ds.ko.prototype,{answer:{configurable:!0,enumerable:!0,get:function(){return U(this,"answer")?S(this,"answer"):null},set:function(a){this.v.answer=a}}});_ds.t(_ds.lo,Cm);_ds.lo.prototype.V=function(){return _ds.lo}; +_ds.lo.prototype.T=function(){return{keys:"correct fillInTheBlankMultipleAnswer fillInTheBlankSingleAnswer index matchItems multipleChoiceMultipleAnswer multipleChoiceSingleAnswer".split(" "),va:{fillInTheBlankMultipleAnswer:_ds.eo,fillInTheBlankSingleAnswer:_ds.fo,matchItems:_ds.ho,multipleChoiceMultipleAnswer:_ds.jo,multipleChoiceSingleAnswer:_ds.ko}}}; +_ds.fa.Object.defineProperties(_ds.lo.prototype,{correct:{configurable:!0,enumerable:!0,get:function(){return U(this,"correct")?S(this,"correct"):!1},set:function(a){this.v.correct=a}},Vb:{configurable:!0,enumerable:!0,get:function(){return U(this,"fillInTheBlankMultipleAnswer")?S(this,"fillInTheBlankMultipleAnswer"):null},set:function(a){this.v.fillInTheBlankMultipleAnswer=a}},Bb:{configurable:!0,enumerable:!0,get:function(){return U(this,"fillInTheBlankSingleAnswer")?S(this,"fillInTheBlankSingleAnswer"): +null},set:function(a){this.v.fillInTheBlankSingleAnswer=a}},index:{configurable:!0,enumerable:!0,get:function(){return U(this,"index")?S(this,"index"):0},set:function(a){this.v.index=a}},$b:{configurable:!0,enumerable:!0,get:function(){return U(this,"matchItems")?S(this,"matchItems"):null},set:function(a){this.v.matchItems=a}},ac:{configurable:!0,enumerable:!0,get:function(){return U(this,"multipleChoiceMultipleAnswer")?S(this,"multipleChoiceMultipleAnswer"):null},set:function(a){this.v.multipleChoiceMultipleAnswer= +a}},Gb:{configurable:!0,enumerable:!0,get:function(){return U(this,"multipleChoiceSingleAnswer")?S(this,"multipleChoiceSingleAnswer"):null},set:function(a){this.v.multipleChoiceSingleAnswer=a}}});_ds.t(_ds.mo,Cm);_ds.mo.prototype.V=function(){return _ds.mo};_ds.mo.prototype.T=function(){return{Wa:{questions:_ds.lo},keys:["grade","passed","questions"]}}; +_ds.fa.Object.defineProperties(_ds.mo.prototype,{grade:{configurable:!0,enumerable:!0,get:function(){return U(this,"grade")?S(this,"grade"):0},set:function(a){this.v.grade=a}},passed:{configurable:!0,enumerable:!0,get:function(){return U(this,"passed")?S(this,"passed"):!1},set:function(a){this.v.passed=a}},questions:{configurable:!0,enumerable:!0,get:function(){return U(this,"questions")?S(this,"questions"):[]},set:function(a){this.v.questions=a}}});_ds.t(_ds.no,Cm);_ds.no.prototype.V=function(){return _ds.no}; +_ds.no.prototype.T=function(){return{hb:{contentType:Nx},keys:["contentType","id","servePath","tenantId"]}}; +_ds.fa.Object.defineProperties(_ds.no.prototype,{contentType:{configurable:!0,enumerable:!0,get:function(){return U(this,"contentType")?S(this,"contentType"):null},set:function(a){this.v.contentType=a}},id:{configurable:!0,enumerable:!0,get:function(){return U(this,"id")?S(this,"id"):""},set:function(a){this.v.id=a}},servePath:{configurable:!0,enumerable:!0,get:function(){return U(this,"servePath")?S(this,"servePath"):""},set:function(a){this.v.servePath=a}},tenantId:{configurable:!0,enumerable:!0, +get:function(){return U(this,"tenantId")?S(this,"tenantId"):"0"},set:function(a){this.v.tenantId=a}}});_ds.fa.Object.defineProperties(_ds.no,{h:{configurable:!0,enumerable:!0,get:function(){return Nx}}});_ds.t(oo,Cm);oo.prototype.V=function(){return oo};oo.prototype.T=function(){return{keys:["avatar","styleId"],va:{avatar:gn}}}; +_ds.fa.Object.defineProperties(oo.prototype,{pb:{configurable:!0,enumerable:!0,get:function(){return U(this,"avatar")?S(this,"avatar"):null},set:function(a){this.v.avatar=a}},Oc:{configurable:!0,enumerable:!0,get:function(){return U(this,"styleId")?S(this,"styleId"):""},set:function(a){this.v.styleId=a}}});_ds.t(po,Cm);po.prototype.V=function(){return po}; +po.prototype.T=function(){return{hb:{googleCloudConsoleDataSharing:Ox,googlePlayDataSharing:Px},keys:"accountId email googleCloudConsoleDataSharing googlePlayDataSharing isAuthenticatedUser label linkedSince person".split(" "),va:{person:qo}}}; +_ds.fa.Object.defineProperties(po.prototype,{accountId:{configurable:!0,enumerable:!0,get:function(){return U(this,"accountId")?S(this,"accountId"):""},set:function(a){this.v.accountId=a}},email:{configurable:!0,enumerable:!0,get:function(){return U(this,"email")?S(this,"email"):""},set:function(a){this.v.email=a}},gi:{configurable:!0,enumerable:!0,get:function(){return U(this,"googleCloudConsoleDataSharing")?S(this,"googleCloudConsoleDataSharing"):null},set:function(a){this.v.googleCloudConsoleDataSharing= +a}},ji:{configurable:!0,enumerable:!0,get:function(){return U(this,"googlePlayDataSharing")?S(this,"googlePlayDataSharing"):null},set:function(a){this.v.googlePlayDataSharing=a}},isAuthenticatedUser:{configurable:!0,enumerable:!0,get:function(){return U(this,"isAuthenticatedUser")?S(this,"isAuthenticatedUser"):!1},set:function(a){this.v.isAuthenticatedUser=a}},label:{configurable:!0,enumerable:!0,get:function(){return U(this,"label")?S(this,"label"):""},set:function(a){this.v.label=a}},linkedSince:{configurable:!0, +enumerable:!0,get:function(){return U(this,"linkedSince")?S(this,"linkedSince"):""},set:function(a){this.v.linkedSince=a}},Ta:{configurable:!0,enumerable:!0,get:function(){return U(this,"person")?S(this,"person"):null},set:function(a){this.v.person=a}}});_ds.fa.Object.defineProperties(po,{h:{configurable:!0,enumerable:!0,get:function(){return Ox}},j:{configurable:!0,enumerable:!0,get:function(){return Px}}});_ds.t(qo,Cm);qo.prototype.V=function(){return qo}; +qo.prototype.T=function(){return{keys:["name","organization","photo","pronoun","title"]}}; +_ds.fa.Object.defineProperties(qo.prototype,{name:{configurable:!0,enumerable:!0,get:function(){return U(this,"name")?S(this,"name"):""},set:function(a){this.v.name=a}},organization:{configurable:!0,enumerable:!0,get:function(){return U(this,"organization")?S(this,"organization"):""},set:function(a){this.v.organization=a}},photo:{configurable:!0,enumerable:!0,get:function(){return U(this,"photo")?S(this,"photo"):""},set:function(a){this.v.photo=a}},pronoun:{configurable:!0,enumerable:!0,get:function(){return U(this, +"pronoun")?S(this,"pronoun"):""},set:function(a){this.v.pronoun=a}},title:{configurable:!0,enumerable:!0,get:function(){return U(this,"title")?S(this,"title"):""},set:function(a){this.v.title=a}}});_ds.t(ro,Cm);ro.prototype.V=function(){return ro}; +ro.prototype.T=function(){return{Wa:{linkedAccounts:po},hb:{badgeEmailPreference:Qx,creationMethod:Rx,dashboardV1Seen:Ep,feedbackEmailPreference:Dp,newsletterEmailPreference:Cp},keys:"awardsHidden badgeEmailPreference bio creationMethod creationTime dashboardV1Seen eyckContainer feedbackEmailPreference githubId gitlabId language linkedAccounts linkedinId location newsletterEmailPreference obfuscatedProfileId originTenantId pendingFields person photo selectedEmailAccountId stackoverflowId states twitterId".split(" "),va:{eyckContainer:oo, +location:to,person:qo,states:so}}}; +_ds.fa.Object.defineProperties(ro.prototype,{awardsHidden:{configurable:!0,enumerable:!0,get:function(){return U(this,"awardsHidden")?S(this,"awardsHidden"):!1},set:function(a){this.v.awardsHidden=a}},Sb:{configurable:!0,enumerable:!0,get:function(){return U(this,"badgeEmailPreference")?S(this,"badgeEmailPreference"):null},set:function(a){this.v.badgeEmailPreference=a}},bio:{configurable:!0,enumerable:!0,get:function(){return U(this,"bio")?S(this,"bio"):""},set:function(a){this.v.bio=a}},creationMethod:{configurable:!0, +enumerable:!0,get:function(){return U(this,"creationMethod")?S(this,"creationMethod"):null},set:function(a){this.v.creationMethod=a}},creationTime:{configurable:!0,enumerable:!0,get:function(){return U(this,"creationTime")?S(this,"creationTime"):""},set:function(a){this.v.creationTime=a}},dashboardV1Seen:{configurable:!0,enumerable:!0,get:function(){return U(this,"dashboardV1Seen")?S(this,"dashboardV1Seen"):null},set:function(a){this.v.dashboardV1Seen=a}},Ha:{configurable:!0,enumerable:!0,get:function(){return U(this, +"eyckContainer")?S(this,"eyckContainer"):null},set:function(a){this.v.eyckContainer=a}},feedbackEmailPreference:{configurable:!0,enumerable:!0,get:function(){return U(this,"feedbackEmailPreference")?S(this,"feedbackEmailPreference"):null},set:function(a){this.v.feedbackEmailPreference=a}},githubId:{configurable:!0,enumerable:!0,get:function(){return U(this,"githubId")?S(this,"githubId"):""},set:function(a){this.v.githubId=a}},gitlabId:{configurable:!0,enumerable:!0,get:function(){return U(this,"gitlabId")? +S(this,"gitlabId"):""},set:function(a){this.v.gitlabId=a}},language:{configurable:!0,enumerable:!0,get:function(){return U(this,"language")?S(this,"language"):""},set:function(a){this.v.language=a}},linkedAccounts:{configurable:!0,enumerable:!0,get:function(){return U(this,"linkedAccounts")?S(this,"linkedAccounts"):[]},set:function(a){this.v.linkedAccounts=a}},linkedinId:{configurable:!0,enumerable:!0,get:function(){return U(this,"linkedinId")?S(this,"linkedinId"):""},set:function(a){this.v.linkedinId= +a}},location:{configurable:!0,enumerable:!0,get:function(){return U(this,"location")?S(this,"location"):null},set:function(a){this.v.location=a}},newsletterEmailPreference:{configurable:!0,enumerable:!0,get:function(){return U(this,"newsletterEmailPreference")?S(this,"newsletterEmailPreference"):null},set:function(a){this.v.newsletterEmailPreference=a}},obfuscatedProfileId:{configurable:!0,enumerable:!0,get:function(){return U(this,"obfuscatedProfileId")?S(this,"obfuscatedProfileId"):""},set:function(a){this.v.obfuscatedProfileId= +a}},originTenantId:{configurable:!0,enumerable:!0,get:function(){return U(this,"originTenantId")?S(this,"originTenantId"):"0"},set:function(a){this.v.originTenantId=a}},pendingFields:{configurable:!0,enumerable:!0,get:function(){return U(this,"pendingFields")?S(this,"pendingFields"):[]},set:function(a){this.v.pendingFields=a}},Ta:{configurable:!0,enumerable:!0,get:function(){return U(this,"person")?S(this,"person"):null},set:function(a){this.v.person=a}},photo:{configurable:!0,enumerable:!0,get:function(){return U(this, +"photo")?S(this,"photo"):""},set:function(a){this.v.photo=a}},selectedEmailAccountId:{configurable:!0,enumerable:!0,get:function(){return U(this,"selectedEmailAccountId")?S(this,"selectedEmailAccountId"):""},set:function(a){this.v.selectedEmailAccountId=a}},stackoverflowId:{configurable:!0,enumerable:!0,get:function(){return U(this,"stackoverflowId")?S(this,"stackoverflowId"):""},set:function(a){this.v.stackoverflowId=a}},Nc:{configurable:!0,enumerable:!0,get:function(){return U(this,"states")?S(this, +"states"):null},set:function(a){this.v.states=a}},twitterId:{configurable:!0,enumerable:!0,get:function(){return U(this,"twitterId")?S(this,"twitterId"):""},set:function(a){this.v.twitterId=a}}}); +_ds.fa.Object.defineProperties(ro,{h:{configurable:!0,enumerable:!0,get:function(){return Qx}},j:{configurable:!0,enumerable:!0,get:function(){return Rx}},m:{configurable:!0,enumerable:!0,get:function(){return Ep}},o:{configurable:!0,enumerable:!0,get:function(){return Dp}},C:{configurable:!0,enumerable:!0,get:function(){return Cp}}});_ds.t(so,Cm);so.prototype.V=function(){return so};so.prototype.T=function(){return{keys:["wizardV1Seen"]}}; +_ds.fa.Object.defineProperties(so.prototype,{wizardV1Seen:{configurable:!0,enumerable:!0,get:function(){return U(this,"wizardV1Seen")?S(this,"wizardV1Seen"):!1},set:function(a){this.v.wizardV1Seen=a}}});_ds.t(to,Cm);to.prototype.V=function(){return to};to.prototype.T=function(){return{keys:["country","displayLocation","latitude","longitude"]}}; +_ds.fa.Object.defineProperties(to.prototype,{country:{configurable:!0,enumerable:!0,get:function(){return U(this,"country")?S(this,"country"):""},set:function(a){this.v.country=a}},displayLocation:{configurable:!0,enumerable:!0,get:function(){return U(this,"displayLocation")?S(this,"displayLocation"):""},set:function(a){this.v.displayLocation=a}},latitude:{configurable:!0,enumerable:!0,get:function(){return U(this,"latitude")?S(this,"latitude"):0},set:function(a){this.v.latitude=a}},longitude:{configurable:!0, +enumerable:!0,get:function(){return U(this,"longitude")?S(this,"longitude"):0},set:function(a){this.v.longitude=a}}}); +var Om={$Xgafv:"$.xgafv",access_token:"access_token",alt:"alt",apiPaths:"apiPaths",badgeIdContentType:"badgeId.contentType",badgeIdId:"badgeId.id",badgeIdServePath:"badgeId.servePath",badgeIdTenantId:"badgeId.tenantId",callback:"callback",contentType:"contentType",fieldMask:"fieldMask",fields:"fields",key:"key",locale:"locale",maxPaths:"maxPaths",names:"names",oauth_token:"oauth_token",obfuscatedProfileId:"obfuscatedProfileId",pageSize:"pageSize",pageToken:"pageToken",prettyPrint:"prettyPrint",quotaUser:"quotaUser", +readMask:"readMask",recursionLevel:"recursionLevel",state:"state",updateMask:"updateMask",uploadType:"uploadType",upload_protocol:"upload_protocol",useBadges:"useBadges",walletId:"walletId"};uo.prototype.visibility=function(a,b,c){b=void 0===b?{}:b;c=void 0===c?{}:c;return fn(this.h,{body:a,httpMethod:"POST",Ea:"developerprofiles_pa.award.visibility",path:"/"+this.j+"/award/visibility",xa:Pm(b,c),Ia:yn})}; +vo.prototype.create=function(a,b,c){b=void 0===b?{}:b;c=void 0===c?{}:c;return fn(this.h,{body:a,httpMethod:"POST",Ea:"developerprofiles_pa.awards.create",path:"/"+this.j+"/awards",xa:Pm(b,c),Ia:qn})};vo.prototype.list=function(a,b){a=void 0===a?{}:a;b=void 0===b?{}:b;return fn(this.h,{body:null,httpMethod:"GET",Ea:"developerprofiles_pa.awards.list",path:"/"+this.j+"/awards",xa:Pm(a,b),Ia:un})}; +yo.prototype.m=function(a,b){a=void 0===a?{}:a;b=void 0===b?{}:b;return fn(this.h,{body:null,httpMethod:"GET",Ea:"developerprofiles_pa.paths.analyzeAPK",path:"/"+this.j+"/paths:analyzeAPK",xa:Pm(a,b),Ia:Bn})};Ao.prototype.create=function(a,b,c){b=void 0===b?{}:b;c=void 0===c?{}:c;return fn(this.h,{body:a,httpMethod:"POST",Ea:"developerprofiles_pa.profiles.create",path:"/"+this.j+"/profiles",xa:Pm(b,c),Ia:Nn})}; +Bo.prototype.get=function(a,b,c){b=void 0===b?{}:b;c=void 0===c?{}:c;bn(a,/^profiles\/[^/]+\/paths\/[^/]+$/);return fn(this.h,{body:null,httpMethod:"GET",Ea:"developerprofiles_pa.profiles.paths.get",path:"/"+this.j+"/"+a,xa:Pm(b,c),Ia:Yn})};Bo.prototype.list=function(a,b,c){b=void 0===b?{}:b;c=void 0===c?{}:c;bn(a,/^profiles\/[^/]+$/);return fn(this.h,{body:null,httpMethod:"GET",Ea:"developerprofiles_pa.profiles.paths.list",path:"/"+this.j+"/"+a+"/paths",xa:Pm(b,c),Ia:Xn})}; +_ds.Fo.prototype.grade=function(a,b,c,d){c=void 0===c?{}:c;d=void 0===d?{}:d;bn(a,/^[^/]+$/);return fn(this.h,{body:b,httpMethod:"POST",Ea:"developerprofiles_pa.quizzes.grade",path:"/"+this.j+"/quizzes/"+a+"/grade",xa:Pm(c,d),Ia:bo})};Go.prototype.deleteProfile=function(a,b){a=void 0===a?{}:a;b=void 0===b?{}:b;return fn(this.h,{body:null,httpMethod:"DELETE",Ea:"developerprofiles_pa.deleteProfile",path:"/"+this.j+"/profile",xa:Pm(a,b),Ia:On})}; +Go.prototype.getEligibility=function(a,b){a=void 0===a?{}:a;b=void 0===b?{}:b;return fn(this.h,{body:null,httpMethod:"GET",Ea:"developerprofiles_pa.getEligibility",path:"/"+this.j+"/eligibility",xa:Pm(a,b),Ia:Rn})};Go.prototype.getProfile=function(a,b){a=void 0===a?{}:a;b=void 0===b?{}:b;return fn(this.h,{body:null,httpMethod:"GET",Ea:"developerprofiles_pa.getProfile",path:"/"+this.j+"/profile",xa:Pm(a,b),Ia:Sn})}; +Go.prototype.updateProfile=function(a,b,c){b=void 0===b?{}:b;c=void 0===c?{}:c;return fn(this.h,{body:a,httpMethod:"PATCH",Ea:"developerprofiles_pa.updateProfile",path:"/"+this.j+"/profile",xa:Pm(b,c),Ia:Wn})};Ko.prototype.create=function(a,b,c){b=void 0===b?{}:b;c=void 0===c?{}:c;return fn(this.h,{body:a,httpMethod:"POST",Ea:"developerprofiles_pa.wallet.awards.create",path:"/"+this.j+"/wallet/awards",xa:Pm(b,c),Ia:on})}; +Lo.prototype.create=function(a,b,c){b=void 0===b?{}:b;c=void 0===c?{}:c;return fn(this.h,{body:a,httpMethod:"POST",Ea:"developerprofiles_pa.wallets.create",path:"/"+this.j+"/wallets",xa:Pm(b,c),Ia:sn})};_ds.t(_ds.Mo,_ds.Zm);_ds.Mo.prototype.syncWallet=function(){var a;return _ds.Q(this,function c(){var d=this,e,g,k,l;return _ds.C(c,function(m){switch(m.h){case 1:e=Oo(d);if(!e)return m.return();g={Tc:e};k={access_token:d.config.accessToken};_ds.x(m,2);return _ds.u(m,_ds.Jo(d.o,g,k),4);case 4:_ds.z(m,3);break;case 2:if(l=_ds.A(m),"wallet was already redeemed"!==(null===(a=l.error)||void 0===a?void 0:a.message))throw _ds.$m(l);case 3:Qo(d),_ds.v(m)}})})};_ds.t(_ds.Ro,_ds.Zm);_ds.t(dp,_ds.Zm); +dp.prototype.getEligibility=function(a){return _ds.Q(this,function c(){var d=this,e,g,k,l;return _ds.C(c,function(m){switch(m.h){case 1:return e={access_token:d.config.accessToken,readMask:(null===a||void 0===a?0:a.includeQandA)?"eligibility.q_and_a":null},_ds.x(m,2),_ds.u(m,d.m.getEligibility(e),4);case 4:g=m.j;_ds.z(m,3);break;case 2:k=_ds.A(m),_ds.$m(k);case 3:l={createProfile:null,qAndA:null};if(null===g||void 0===g?0:g.Ra)g.Ra.createProfile&&(l.createProfile={status:g.Ra.createProfile.status,ineligibleReason:g.Ra.createProfile.ineligibleReason}), +g.Ra.qAndA&&(l.qAndA={status:g.Ra.qAndA.status,ineligibleReason:g.Ra.qAndA.ineligibleReason});return m.return(l)}})})}; +dp.prototype.changeEligibility=function(a){var b,c;return _ds.Q(this,function e(){var g=this,k,l,m;return _ds.C(e,function(p){if(1==p.h)return k={access_token:g.config.accessToken},l=new Ln,l.updateMask="eligibility.q_and_a",l.qAndA=a.enableQandA,_ds.x(p,2),_ds.u(p,xo(g.j,l,k),4);if(2!=p.h)return _ds.z(p,0);m=_ds.A(p);if("ALREADY_EXISTS"!==(null===(b=null===m||void 0===m?void 0:m.error)||void 0===b?void 0:b.status)&&"NOT_FOUND"!==(null===(c=null===m||void 0===m?void 0:m.error)||void 0===c?void 0: +c.status))throw _ds.$m(m);_ds.v(p)})})};_ds.t(ep,_ds.Zm);ep.prototype.vb=function(a){return _ds.Q(this,function c(){var d=this,e,g,k,l;return _ds.C(c,function(m){switch(m.h){case 1:return e=[].concat(_ds.la(new Set(a.paths.map(function(p){return"paths/"+fp(p)})))),g={names:e,access_token:d.config.accessToken,recursionLevel:a.includeChildContent?1:0},_ds.x(m,2),_ds.u(m,zo(d.m,g),4);case 4:k=m.j;_ds.z(m,3);break;case 2:throw l=_ds.A(m),_ds.$m(l);case 3:return m.return(hp(d,k.paths))}})})};_ds.t(pp,_ds.Zm);pp.prototype.createProfile=function(a){return _ds.Q(this,function c(){var d=this,e,g,k,l,m;return _ds.C(c,function(p){switch(p.h){case 1:if(!a.profile)throw new _ds.Wl("Missing profile");e={access_token:d.config.accessToken};return _ds.u(p,Bp(d,new Mn,a.profile),2);case 2:return g=p.j,_ds.x(p,3),_ds.u(p,d.o.create(g,e),5);case 5:k=p.j;_ds.z(p,4);break;case 3:throw l=_ds.A(p),_ds.$m(l);case 4:return m=new _ds.Mo(d.config),(Oo(m)||m.walletId)&&Qo(m),p.return(Fp(k))}})})}; +pp.prototype.updateProfile=function(a){return _ds.Q(this,function c(){var d=this,e,g,k;return _ds.C(c,function(l){switch(l.h){case 1:if(!a.profile)throw new _ds.Wl("Missing profile");e={access_token:d.config.accessToken};return _ds.u(l,Bp(d,new Vn,a.profile),2);case 2:return g=l.j,_ds.x(l,3),_ds.u(l,d.j.updateProfile(g,e),5);case 5:_ds.z(l,0);break;case 3:throw k=_ds.A(l),_ds.$m(k);}})})}; +pp.prototype.deleteProfile=function(){return _ds.Q(this,function b(){var c=this,d,e;return _ds.C(b,function(g){if(1==g.h)return d={access_token:c.config.accessToken},_ds.x(g,2),_ds.u(g,c.j.deleteProfile(d),4);if(2!=g.h)return _ds.z(g,0);e=_ds.A(g);throw _ds.$m(e);})})}; +pp.prototype.getProfile=function(a){var b;return _ds.Q(this,function d(){var e=this,g,k,l;return _ds.C(d,function(m){switch(m.h){case 1:return g={access_token:e.config.accessToken,obfuscatedProfileId:null!==(b=null===a||void 0===a?void 0:a.profileId)&&void 0!==b?b:null},_ds.x(m,2),_ds.u(m,e.j.getProfile(g),4);case 4:k=m.j;_ds.z(m,3);break;case 2:throw l=_ds.A(m),_ds.$m(l);case 3:return m.return(Fp(k))}})})};_ds.F(Ip,_ds.jf);var Hp=[[1,2]];_ds.f=Ip.prototype;_ds.f.YG=function(){return _ds.nf(this,Hp[0])};_ds.f.L0=function(a){return Jp(a,this)};_ds.f.J0=function(){var a=new _ds.Ne;Kp(this,a);return _ds.Se(a)};_ds.f.I0=function(){return _ds.rf(this,1,0)};_ds.f.K0=function(a){return _ds.Ef(this,1,Hp[0],a)};_ds.f.H0=function(){return _ds.Ef(this,1,Hp[0],void 0)};_ds.f.fQ=function(){return _ds.K(this,1)};_ds.f.wM=function(){return _ds.uf(this,2)};_ds.f.Kma=function(a){return _ds.Ef(this,2,Hp[0],a)}; +_ds.f.kC=function(){return _ds.Ef(this,2,Hp[0],void 0)};_ds.f.KV=function(){return _ds.K(this,2)};_ds.F(_ds.Lp,_ds.jf);_ds.f=_ds.Lp.prototype;_ds.f.G0=function(a){return Mp(a,this)};_ds.f.D0=function(){var a=new _ds.Ne;Np(this,a);return _ds.Se(a)};_ds.f.getName=function(){return _ds.L(this,1)};_ds.f.F0=function(a){return _ds.Cf(this,1,a)};_ds.f.E0=function(a){return _ds.Cf(this,2,a)};_ds.F(_ds.Op,_ds.jf);_ds.f=_ds.Op.prototype;_ds.f.S0=function(a){var b={Pc:_ds.rf(this,1,0),query:_ds.L(this,4),SW:_ds.uf(this,5),cd:_ds.uf(this,6),locale:_ds.rf(this,7,0),Ml:_ds.rf(this,8,0),Hc:_ds.sf(this,9),xo:_ds.L(this,10),gm:_ds.L(this,11),Fl:_ds.rf(this,12,0),Uj:_ds.rf(this,13,0)};a&&(b.M=this);return b}; +_ds.f.M0=function(){var a=new _ds.Ne;var b=_ds.rf(this,1,0);0!==b&&_ds.ef(a,1,b);b=_ds.L(this,4);0":">","`":"`","\u0085":"…","\u00a0":" ","\u2028":"
","\u2029":"
"}; +br={"\x00":"%00","\u0001":"%01","\u0002":"%02","\u0003":"%03","\u0004":"%04","\u0005":"%05","\u0006":"%06","\u0007":"%07","\b":"%08","\t":"%09","\n":"%0A","\x0B":"%0B","\f":"%0C","\r":"%0D","\u000e":"%0E","\u000f":"%0F","\u0010":"%10","\u0011":"%11","\u0012":"%12","\u0013":"%13","\u0014":"%14","\u0015":"%15","\u0016":"%16","\u0017":"%17","\u0018":"%18","\u0019":"%19","\u001a":"%1A","\u001b":"%1B","\u001c":"%1C","\u001d":"%1D","\u001e":"%1E","\u001f":"%1F"," ":"%20",'"':"%22","'":"%27","(":"%28",")":"%29", +"<":"%3C",">":"%3E","\\":"%5C","{":"%7B","}":"%7D","\u007f":"%7F","\u0085":"%C2%85","\u00a0":"%C2%A0","\u2028":"%E2%80%A8","\u2029":"%E2%80%A9","\uff01":"%EF%BC%81","\uff03":"%EF%BC%83","\uff04":"%EF%BC%84","\uff06":"%EF%BC%86","\uff07":"%EF%BC%87","\uff08":"%EF%BC%88","\uff09":"%EF%BC%89","\uff0a":"%EF%BC%8A","\uff0b":"%EF%BC%8B","\uff0c":"%EF%BC%8C","\uff0f":"%EF%BC%8F","\uff1a":"%EF%BC%9A","\uff1b":"%EF%BC%9B","\uff1d":"%EF%BC%9D","\uff1f":"%EF%BC%9F","\uff20":"%EF%BC%A0","\uff3b":"%EF%BC%BB", +"\uff3d":"%EF%BC%BD"};cr=/[\x00\x22\x27\x3c\x3e]/g;Kq=/[\x00\x09-\x0d \x22\x26\x27\x2d\/\x3c-\x3e`\x85\xa0\u2028\u2029]/g;Iq=/[\x00\x09-\x0d \x22\x27\x2d\/\x3c-\x3e`\x85\xa0\u2028\u2029]/g;Wq=/[\x00- \x22\x27-\x29\x3c\x3e\\\x7b\x7d\x7f\x85\xa0\u2028\u2029\uff01\uff03\uff04\uff06-\uff0c\uff0f\uff1a\uff1b\uff1d\uff1f\uff20\uff3b\uff3d]/g;Vq=/^(?![^#?]*\/(?:\.|%2E){2}(?:[\/?#]|$))(?:(?:https?|mailto):|[^&:\/?#]*(?:[\/?#]|$))/i;Zq=/^[^&:\/?#]*(?:[\/?#]|$)|^https?:|^data:image\/[a-z0-9+]+;base64,[a-z0-9+\/]+=*$|^blob:/i; +Nq=/^(?!on|src|(?:action|archive|background|cite|classid|codebase|content|data|dsync|href|http-equiv|longdesc|style|usemap)\s*$)(?:[a-z0-9_$:-]*)$/i;Cq=/<(?:!|\/?([a-zA-Z][a-zA-Z0-9:\-]*))(?:[^>'"]|"[^"]*"|'[^']*')*>/g;Dq=/]/g,rs={"\n":"%0a","\f":"%0c","\r":"%0d",'"':"%22","'":"%27","(":"%28",")":"%29", +"*":"%2a","<":"%3c",">":"%3e"};var As=ws("Element","attributes")||ws("Node","attributes"),Ux=xs("Element","hasAttribute"),Vx=xs("Element","getAttribute"),Cs=xs("Element","setAttribute"),Wx=xs("Element","removeAttribute"),at=xs("Element","getElementsByTagName"),bt=xs("Element","matches")||xs("Element","msMatchesSelector"),Is=ws("Node","nodeName"),Ks=ws("Node","nodeType"),Ms=ws("Node","parentNode"),Es=ws("HTMLElement","style")||ws("Element","style"),Gs=ws("HTMLStyleElement","sheet"),Os=xs("CSSStyleDeclaration","getPropertyValue"), +Qs=xs("CSSStyleDeclaration","setProperty");var Ts=_ds.Og&&10>document.documentMode?null:/\s*([^\s'",]+[^'",]*(('([^'\r\n\f\\]|\\[^])*')|("([^"\r\n\f\\]|\\[^])*")|[^'",])*)/g,$s={"-webkit-border-horizontal-spacing":!0,"-webkit-border-vertical-spacing":!0};var nt={"* ARIA-CHECKED":!0,"* ARIA-COLCOUNT":!0,"* ARIA-COLINDEX":!0,"* ARIA-CONTROLS":!0,"* ARIA-DESCRIBEDBY":!0,"* ARIA-DISABLED":!0,"* ARIA-EXPANDED":!0,"* ARIA-GOOG-EDITABLE":!0,"* ARIA-HASPOPUP":!0,"* ARIA-HIDDEN":!0,"* ARIA-LABEL":!0,"* ARIA-LABELLEDBY":!0,"* ARIA-MULTILINE":!0,"* ARIA-MULTISELECTABLE":!0,"* ARIA-ORIENTATION":!0,"* ARIA-PLACEHOLDER":!0,"* ARIA-READONLY":!0,"* ARIA-REQUIRED":!0,"* ARIA-ROLEDESCRIPTION":!0,"* ARIA-ROWCOUNT":!0,"* ARIA-ROWINDEX":!0,"* ARIA-SELECTED":!0,"* ABBR":!0, +"* ACCEPT":!0,"* ACCESSKEY":!0,"* ALIGN":!0,"* ALT":!0,"* AUTOCOMPLETE":!0,"* AXIS":!0,"* BGCOLOR":!0,"* BORDER":!0,"* CELLPADDING":!0,"* CELLSPACING":!0,"* CHAROFF":!0,"* CHAR":!0,"* CHECKED":!0,"* CLEAR":!0,"* COLOR":!0,"* COLSPAN":!0,"* COLS":!0,"* COMPACT":!0,"* COORDS":!0,"* DATETIME":!0,"* DIR":!0,"* DISABLED":!0,"* ENCTYPE":!0,"* FACE":!0,"* FRAME":!0,"* HEIGHT":!0,"* HREFLANG":!0,"* HSPACE":!0,"* ISMAP":!0,"* LABEL":!0,"* LANG":!0,"* MAX":!0,"* MAXLENGTH":!0,"* METHOD":!0,"* MULTIPLE":!0, +"* NOHREF":!0,"* NOSHADE":!0,"* NOWRAP":!0,"* OPEN":!0,"* READONLY":!0,"* REQUIRED":!0,"* REL":!0,"* REV":!0,"* ROLE":!0,"* ROWSPAN":!0,"* ROWS":!0,"* RULES":!0,"* SCOPE":!0,"* SELECTED":!0,"* SHAPE":!0,"* SIZE":!0,"* SPAN":!0,"* START":!0,"* SUMMARY":!0,"* TABINDEX":!0,"* TITLE":!0,"* TYPE":!0,"* VALIGN":!0,"* VALUE":!0,"* VSPACE":!0,"* WIDTH":!0},ot={"* USEMAP":!0,"* ACTION":!0,"* CITE":!0,"* HREF":!0,"* LONGDESC":!0,"* SRC":!0,"LINK HREF":!0,"* FOR":!0,"* HEADERS":!0,"* NAME":!0,"A TARGET":!0, +"* CLASS":!0,"* ID":!0,"* STYLE":!0};var Xx="undefined"!=typeof WeakMap&&-1!=WeakMap.toString().indexOf("[native code]"),et=0;ft.prototype.set=function(a,b){if(zs(Ux,a,"hasAttribute",[this.h])){var c=parseInt(zs(Vx,a,"getAttribute",[this.h])||null,10);this.j[c]=b}else c=this.j.push(b)-1,Ds(a,this.h,c.toString()),this.m.push(a);return this};ft.prototype.get=function(a){if(zs(Ux,a,"hasAttribute",[this.h]))return a=parseInt(zs(Vx,a,"getAttribute",[this.h])||null,10),this.j[a]}; +ft.prototype.clear=function(){this.m.forEach(function(a){zs(Wx,a,"removeAttribute",[this.h])},this);this.m=[];this.j=[]};var Ct=!_ds.Og||_ds.He(10),Yx=!_ds.Og||null==document.documentMode; +gt.prototype.D=function(a){if(!Ct)return _ds.Sg(document,"SPAN");var b=_ds.Sg(document,"SPAN");this.j&&"*"==this.o&&(b.id=this.j);this.F&&(a=Ws("
    "+a+"
    "),dt(a),a=a.innerHTML);a=_ds.qd(a,null);var c=document.createElement("template");if(Yx&&"content"in c)_ds.Bd(c,a),c=c.content;else{var d=document.implementation.createHTMLDocument("x");c=d.body;_ds.Bd(d.body,a)}a=document.createTreeWalker(c,NodeFilter.SHOW_ELEMENT|NodeFilter.SHOW_TEXT,null,!1);for(c=Xx?new WeakMap:new ft;d=a.nextNode();){a:{var e= +d;switch(Ls(e)){case 3:e=Et(this,e);break a;case 1:if("TEMPLATE"==Js(e).toUpperCase())e=null;else{var g=Js(e).toUpperCase();if(g in this.C)var k=null;else this.m[g]?k=document.createElement(g):(k=_ds.Sg(document,"SPAN"),this.G&&Ds(k,"data-sanitizer-original-tag",g.toLowerCase()));if(k){var l=k,m=Bs(e);if(null!=m)for(var p=0;g=m[p];p++)if(g.specified){var q=e;var r=g;var w=r.name;if(0==w.lastIndexOf("data-sanitizer-",0))r=null;else{var y=Js(q);r=r.value;var D={tagName:(0,_ds.zc)(y).toLowerCase(),attributeName:(0,_ds.zc)(w).toLowerCase()}, +B={sf:void 0};"style"==D.attributeName&&(B.sf=Fs(q));q=zt(y,w);q in this.h?(w=this.h[q],r=w(r,D,B)):(w=zt(null,w),w in this.h?(w=this.h[w],r=w(r,D,B)):r=null)}null!==r&&Ds(l,g.name,r)}e=k}else e=null}break a;default:e=null}}if(e){if(1==Ls(e)&&c.set(d,e),d=Ns(d),g=!1,d)k=Ls(d),l=Js(d).toLowerCase(),m=Ns(d),11!=k||m?"body"==l&&m&&(k=Ns(m))&&!Ns(k)&&(g=!0):g=!0,k=null,g||!d?k=b:1==Ls(d)&&(k=c.get(d)),k.content&&(k=k.content),k.appendChild(e)}else _ds.Xg(d)}c.clear&&c.clear();return b};var pt={APPLET:!0,AUDIO:!0,BASE:!0,BGSOUND:!0,EMBED:!0,FORM:!0,IFRAME:!0,ISINDEX:!0,KEYGEN:!0,LAYER:!0,LINK:!0,META:!0,OBJECT:!0,SCRIPT:!0,SVG:!0,STYLE:!0,TEMPLATE:!0,VIDEO:!0};var qt={A:!0,ABBR:!0,ACRONYM:!0,ADDRESS:!0,AREA:!0,ARTICLE:!0,ASIDE:!0,B:!0,BDI:!0,BDO:!0,BIG:!0,BLOCKQUOTE:!0,BR:!0,BUTTON:!0,CAPTION:!0,CENTER:!0,CITE:!0,CODE:!0,COL:!0,COLGROUP:!0,DATA:!0,DATALIST:!0,DD:!0,DEL:!0,DETAILS:!0,DFN:!0,DIALOG:!0,DIR:!0,DIV:!0,DL:!0,DT:!0,EM:!0,FIELDSET:!0,FIGCAPTION:!0,FIGURE:!0,FONT:!0,FOOTER:!0,FORM:!0,H1:!0,H2:!0,H3:!0,H4:!0,H5:!0,H6:!0,HEADER:!0,HGROUP:!0,HR:!0,I:!0,IMG:!0,INPUT:!0,INS:!0,KBD:!0,LABEL:!0,LEGEND:!0,LI:!0,MAIN:!0,MAP:!0,MARK:!0,MENU:!0,METER:!0,NAV:!0, +NOSCRIPT:!0,OL:!0,OPTGROUP:!0,OPTION:!0,OUTPUT:!0,P:!0,PRE:!0,PROGRESS:!0,Q:!0,S:!0,SAMP:!0,SECTION:!0,SELECT:!0,SMALL:!0,SOURCE:!0,SPAN:!0,STRIKE:!0,STRONG:!0,STYLE:!0,SUB:!0,SUMMARY:!0,SUP:!0,TABLE:!0,TBODY:!0,TD:!0,TEXTAREA:!0,TFOOT:!0,TH:!0,THEAD:!0,TIME:!0,TR:!0,TT:!0,U:!0,UL:!0,VAR:!0,WBR:!0};var kt={"ANNOTATION-XML":!0,"COLOR-PROFILE":!0,"FONT-FACE":!0,"FONT-FACE-SRC":!0,"FONT-FACE-URI":!0,"FONT-FACE-FORMAT":!0,"FONT-FACE-NAME":!0,"MISSING-GLYPH":!0};_ds.F(_ds.lt,gt);_ds.f=_ds.ht.prototype;_ds.f.Qs=function(){delete this.m.FORM;return this};_ds.f.Rs=function(){if(this.D)throw Error("Rules from STYLE tags are already being inlined.");delete this.m.STYLE;this.o="*";return this}; +_ds.f.Aoa=function(a){if("STYLE"in this.m)throw Error("STYLE tags must first be allowed through allowStyleTag.");if(void 0!=a){if(!/^[a-zA-Z][\w-:\.]*$/.test(a))throw Error("Invalid ID.");this.o=a}else this.o=null;return this}; +_ds.f.DW=function(){if(this.H==Pb)throw Error("Inlining style rules requires allowing STYLE attributes first.");if(!("STYLE"in this.m))throw Error("You have already configured the builder to allow STYLE tags in the output. Inlining style rules would prevent STYLE tags from appearing in the output and conflict with such directive.");this.D=!0;return this};_ds.f.Ps=function(){this.H=At;return this}; +_ds.f.Ts=function(a){_ds.dd(a,function(b){this.C[b.toUpperCase()]=!0;delete this.m[b.toUpperCase()]},this);return this};_ds.f.Ss=function(a){_ds.dd(a,function(b){"string"===typeof b&&(b={tagName:"*",attributeName:b,Bd:null});var c=zt(b.tagName,b.attributeName);this.h[c]=b.Bd?b.Bd:jt;this.j[c]=!0},this);return this}; +_ds.f.WZ=function(a){this.C={SPAN:!0};_ds.dd(a,function(b){b=b.toUpperCase();if(qt[b])this.C[b]=!0;else throw Error("Only whitelisted tags can be allowed. See goog.html.sanitizer.TagWhitelist.");},this);return this};_ds.f.VZ=function(a){var b=this.h;this.h={};_ds.dd(a,function(c){"string"===typeof c&&(c={tagName:"*",attributeName:c.toUpperCase(),Bd:null});var d=zt(c.tagName,c.attributeName);if(!b[d])throw Error("Only whitelisted attributes can be allowed.");this.h[d]=c.Bd?c.Bd:jt},this);return this}; +_ds.f.us=function(){this.N=!0;return this};_ds.f.xoa=function(a){this.F=a;return this};_ds.f.yoa=function(a){this.W=a;return this};_ds.f.woa=function(a){this.O=a;return this};_ds.lt.prototype.K=function(a){this.j=Bt(this);return gt.prototype.D.call(this,a)};var Zx=[".c.googlers.com",".corp.google.com",".googleplex.com"],$x={},ay=($x[0]=new Gt("AIzaSyBdGQTIAPnTSjkekiLvV7n6GwavAHO8xqA",window.location.protocol+"//"+window.location.hostname+":9876"),$x[1]=new Gt("AIzaSyBdGQTIAPnTSjkekiLvV7n6GwavAHO8xqA","https://staging-developerprofiles-pa.sandbox.googleapis.com"),$x[3]=new Gt("AIzaSyA3iBc8feZzCipnYwiq-SSozzK0dwmBcms","https://developerprofiles-pa.googleapis.com"),$x)[function(a){a=void 0===a?window.location.hostname:a;return"localhost"===a||Zx.some(function(b){if(a.length>= +b.length&&a.substr(-b.length)===b)return!0})?1:3}()],It=ay.apiKey,Ht=ay.h,Jt={"client/cors":!0},by=document.location.hostname;by.endsWith(".google.com")&&(by.startsWith("cloud.")||by.startsWith("developers.")||by.startsWith("firebase.")||by.startsWith("codelabs."))&&(Jt["googleapis.config/auth/useFirstPartyAuth"]=!0,Jt["googleapis.config/auth/useFirstPartyAuthV2"]=!0); +var cy=new uo("v1",Kt()),dy=new vo("v1",Kt()),ey=new wo("v1",Kt()),fy=new yo("v1",Kt()),mu=new Bo("v1",Kt()),gy=new function(){var a=Kt();this.j="v1";this.h=new dn(a,null)},hy=new Ao("v1",Kt()),iy=new _ds.Fo("v1",Kt()),jy=new Go("v1",Kt()),ky=new Ko("v1",Kt()),ly=new Io("v1",Kt()),Vt=new Lo("v1",Kt());var my=new Map;_ds.t(_ds.Lt,_ds.R);_ds.Lt.prototype.connectedCallback=function(){var a=this.constructor,b=my.get(a);b?console.error("can't add duplicate element to page: "+b.tagName):my.set(a,this)};_ds.Lt.prototype.disconnectedCallback=function(){var a=this.constructor;my.get(a)===this&&my.delete(a)};_ds.Lt.prototype.disconnectedCallback=_ds.Lt.prototype.disconnectedCallback;_ds.Lt.prototype.connectedCallback=_ds.Lt.prototype.connectedCallback;_ds.f=Mt.prototype;_ds.f.Na=function(a,b){for(var c=[],d=1;d+new Date-a};Pt.prototype.clear=function(){_ds.Sa.__globalHafezClientProfileNotFoundCache.clear()};var Zt,Yt,$t=-1,ny=null,hu=new Ot,iu=new Pt,oy=new Nt,lu=new Mt;_ds.f=_ds.du.prototype;_ds.f.Nj=function(a){var b=this;return _ds.E(function(c){if(1==c.h)return b.j=a,_ds.u(c,window.customElements.whenDefined("devsite-user"),2);b.m=b.j.getAccessToken.bind(a);b.C.listen(document.body,"devsite-signed-in-state-changed",function(){b.clearCache()});_ds.v(c)})};_ds.f.isSignedIn=function(){var a=this;return _ds.E(function(b){return 1==b.h?_ds.u(b,fu(a),2):a.j?b.return(a.j.isSignedIn()):b.return(!1)})}; +_ds.f.getFeaturesEligibility=function(a){a=void 0===a?!1:a;var b=this,c,d,e,g,k;return _ds.E(function(l){switch(l.h){case 1:return _ds.u(l,eu(b,{readMask:a?"eligibility.q_and_a":null}),2);case 2:return c=l.j,d=lu.Na("HafezV1Service.getEligibility",c),e=lu.get(d),e||(e=jy.getEligibility(c),lu.set(d,e)),_ds.x(l,3,4),_ds.u(l,e,6);case 6:g=l.j;case 4:_ds.Aa(l);lu.delete(d);_ds.Ba(l,5);break;case 3:_ds.A(l);l.J(4);break;case 5:return k={createProfile:null,qAndA:null},g&&g.Ra&&(g.Ra.createProfile&&(k.createProfile= +{status:g.Ra.createProfile.status,ineligibleReason:g.Ra.createProfile.ineligibleReason}),g.Ra.qAndA&&(k.qAndA={status:g.Ra.qAndA.status,ineligibleReason:g.Ra.qAndA.ineligibleReason})),l.return(k)}})}; +_ds.f.changeEligibility=function(a){a=void 0===a?!1:a;var b=this,c,d,e,g,k;return _ds.E(function(l){switch(l.h){case 1:return _ds.u(l,eu(b),2);case 2:return c=l.j,d=new Ln,d.updateMask="eligibility.q_and_a",d.qAndA=a,e=lu.Na("HafezEligibilityService.change",d,c),g=lu.get(e),g||(g=xo(ey,d,c),lu.set(e,g)),_ds.x(l,3,4),_ds.u(l,g,4);case 4:_ds.Aa(l);lu.delete(e);_ds.Ba(l,0);break;case 3:if((k=_ds.A(l))&&k.error&&"ALREADY_EXISTS"!==k.error.status)throw k;l.J(4)}})}; +_ds.f.getEligibility=function(){var a=this,b,c,d,e;return _ds.E(function(g){switch(g.h){case 1:return ny?g.return(ny):_ds.u(g,eu(a),2);case 2:return b=g.j,c=lu.Na("HafezV1Service.getEligibility",b),d=lu.get(c),d||(d=jy.getEligibility(b),lu.set(c,d)),_ds.x(g,3,4),_ds.u(g,d,6);case 6:e=g.j;case 4:_ds.Aa(g);lu.delete(c);_ds.Ba(g,5);break;case 3:_ds.A(g);g.J(4);break;case 5:ny={};if(e)switch(e.zf){case Ex.Ld:ny="ELIGIBILITY_UNKNOWN";break;case Ex.Ug:ny="ELIGIBLE";break;case Ex.ah:ny="NOT_ELIGIBLE_NON_GMAIL"; +break;case Ex.$g:ny="NOT_ELIGIBLE_ADMIN_DISABLED";break;default:ny="ELIGIBILITY_UNKNOWN"}else ny="ELIGIBILITY_UNKNOWN";return g.return(ny)}})};_ds.f.clearCache=function(){hu.clear();iu.clear();oy.clear();lu.clear();Zt=ny=null;Yt=""};_ds.f.setAccessToken=function(a){Yt=a};_ds.f.getAccessToken=function(){var a=this;return _ds.E(function(b){switch(b.h){case 1:return _ds.u(b,fu(a),2);case 2:return _ds.x(b,3),_ds.u(b,a.m(a.o),5);case 5:return b.return(b.j);case 3:_ds.A(b);case 4:return b.return("")}})}; +_ds.f.setAccessTokenExpiry=function(a){this.o=a}; +_ds.f.grantAwardToCurrentUser=function(a,b,c){c=void 0===c?!0:c;var d=this,e,g,k,l,m,p,q,r,w,y,D,B,H,J,T,ma;return _ds.E(function(Y){switch(Y.h){case 1:return a=bu(a),_ds.x(Y,2),_ds.u(Y,d.getProfile(),4);case 4:e=Y.j;_ds.z(Y,3);break;case 2:_ds.A(Y);case 3:if(!e)return _ds.u(Y,Ut(d.h),12);k=new pn;k.Tb=new _ds.no;k.Tb.servePath=a;k.Tb.tenantId=b;return _ds.u(Y,eu(d),7);case 7:return l=Y.j,m=lu.Na("HafezAwardsService.create",k,l),p=lu.get(m),p||(p=dy.create(k,l),lu.set(m,p)),_ds.x(Y,8,9),_ds.u(Y,p, +11);case 11:q=Y.j;case 9:_ds.Aa(Y);lu.delete(m);_ds.Ba(Y,10);break;case 8:r=_ds.A(Y);if(r.error&&"ALREADY_EXISTS"===r.error.status)return Y.return(null);throw r;case 10:q&&(e&&e.obfuscatedProfileId&&(oy.delete("me"),oy.delete(e.obfuscatedProfileId)),g=gu(d,q));Y.J(6);break;case 12:return w=Y.j,y=new nn,D=new ln,D.id=new _ds.no,D.id.servePath=a,D.id.tenantId=b,B=new kn,B.badge=D,y.walletId=w,y.award=B,H=lu.Na("HafezWalletAwardsService.create",y),J=lu.get(H),J||(J=ky.create(y),lu.set(H,J)),_ds.x(Y, +13,14),_ds.u(Y,J,16);case 16:T=Y.j;case 14:_ds.Aa(Y);lu.delete(H);_ds.Ba(Y,15);break;case 13:ma=_ds.A(Y);if(ma.error&&"ALREADY_EXISTS"===ma.error.status)return Y.return(null);throw ma;case 15:T&&(g=gu(d,T));case 6:return g?(g.servePath&&g.tenantId&&c&&document.body.dispatchEvent(new CustomEvent("devsite-award-granted",{detail:{award:g},bubbles:!0})),Y.return(g)):Y.return(null)}})}; +_ds.f.redeemAwardToCurrentUser=function(a){var b=this,c,d,e,g,k,l;return _ds.E(function(m){switch(m.h){case 1:return _ds.x(m,2),_ds.u(m,b.getProfile(),4);case 4:c=m.j;_ds.z(m,3);break;case 2:_ds.A(m);case 3:if(!c)throw Error("Need a profile to redeem badge.");d=new _ds.vn;d.Tc=a;return _ds.u(m,eu(b),5);case 5:return e=m.j,g=lu.Na("HafezWalletService.redeem",d,e),k=lu.get(g),k||(k=_ds.Jo(ly,d,e),lu.set(g,k)),_ds.x(m,6,7),_ds.u(m,k,9);case 9:l=m.j;case 7:_ds.Aa(m);lu.delete(g);_ds.Ba(m,8);break;case 6:_ds.A(m); +m.J(7);break;case 8:return l.eb&&0c||c>(this.j?this.j.length:0))throw Error("Child component index out of bounds");this.o&&this.j||(this.o={},this.j=[]);if(a.m==this){var d=a.getId();this.o[d]=a;_ds.Eb(this.j,a)}else Wb(this.o,a.getId(),a);Gu(a,this);Ib(this.j,c,0,a);a.Oa&&this.Oa&&a.m==this?(b=this.h,(b.childNodes[c]||null)!=a.getElement()&&(a.getElement().parentElement==b&&b.removeChild(a.getElement()),c=b.childNodes[c]|| +null,b.insertBefore(a.getElement(),c))):b?(this.h||this.Hf(),c=this.j?this.j[c+1]||null:null,Iu(a,this.h,c?c.h:null)):this.Oa&&!a.Oa&&a.h&&a.h.parentNode&&1==a.h.parentNode.nodeType&&Hu(a)};_ds.f.iO=function(){null==this.G&&(this.G=_ds.qk(this.Oa?this.h:this.C.h.body));return this.G};_ds.f.Dla=function(a){if(this.Oa)throw Error("Component already rendered");this.G=a};_ds.f.sG=function(){var a=[];Ju(this,function(b){a.push(b.getId())});return a}; +_ds.f.yW=function(a){return this.j&&a?_ds.Cb(this.j,a):-1};_ds.f.removeChild=function(a,b){if(a){var c="string"===typeof a?a:a.getId();a=this.o&&c?Xb(this.o,c)||null:null;if(c&&a){var d=this.o;c in d&&delete d[c];_ds.Eb(this.j,a);b&&(Ku(a),a.h&&_ds.ah(a.h));Gu(a,null)}}if(!a)throw Error("Child is not in parent component");return a};_ds.f.jO=function(a){for(var b=[];this.j&&0!=this.j.length;){var c=b,d=c.push;var e=this.removeChild(this.j?this.j[0]||null:null,a);d.call(c,e)}return b};_ds.f.D_=function(){return this.N}; +_ds.f.Pka=function(a){if(this.Oa)throw Error("Component already rendered");this.N=a};_ds.F(Lu,Fu);Lu.prototype.Hf=function(){this.h=this.C.pd("FORM",{method:"POST",style:"display:none"})};var Ru;Ru=["js","html","css"];_ds.Qu={Pg:"b",description:""};_ds.F(_ds.Su,_ds.jf);_ds.f=_ds.Su.prototype;_ds.f.a0=function(a){return Tu(a,this)};_ds.f.X_=function(){var a=new _ds.Ne;Uu(this,a);return _ds.Se(a)};_ds.f.Ba=function(){return _ds.L(this,1)};_ds.f.$_=function(a){return _ds.Cf(this,1,a)};_ds.f.Y_=function(a){return _ds.Cf(this,2,a)};_ds.f.Z_=function(a){return _ds.Bf(this,3,a,0)};_ds.F(_ds.Wu,_ds.jf);var Vu=[1];_ds.f=_ds.Wu.prototype;_ds.f.c0=function(a){var b={J_:_ds.pf(_ds.Ff(this,_ds.Su,1),Tu,a),current:_ds.sf(this,2)};a&&(b.M=this);return b};_ds.f.b0=function(){var a=new _ds.Ne;var b=_ds.Ff(this,_ds.Su,1);0 a"));for(var c=b.next();!c.done;c= +b.next())c=c.value,c.hasAttribute("tabindex")||c.setAttribute("tabindex",0)}(b=this.querySelector("h3"))&&this.setAttribute("aria-label",b.innerText);av(this);this.H.listen(this,"keydown",function(d){if(("Tab"===d.key||9===d.keyCode)&&null!=document.activeElement&&a.h.includes(document.activeElement)){var e=a.h.indexOf(document.activeElement);d.shiftKey?a.h[0===e?a.h.length-1:e-1].focus():a.h[e===a.h.length-1?0:e+1].focus();d.preventDefault()}});this.Y||Zu(this)}; +_ds.f.$f=function(){this.setAttribute("aria-modal","true");this.setAttribute("aria-role","dialog");this.dispatchEvent(new CustomEvent("devsite-sitemask-show",{bubbles:!0}));this.dispatchEvent(new CustomEvent("devsite-dialog-show",{bubbles:!0}));this.G=this.parentElement;this.K=this.nextElementSibling;this.F||(this.F=document.createElement("div"),this.F.classList.add("devsite-dialog-wrapper"));this.F.appendChild(this);document.body.appendChild(this.F);var a=this.querySelector("h3");a&&this.scrollHeight> +this.clientHeight?(a.hasAttribute("tabindex")||a.setAttribute("tabindex",-1),a.focus()):this.h.length&&this.h[0].focus()};_ds.f.disconnectedCallback=function(){_ds.Wj(this.H)};_ds.f.Kf=function(){};_ds.fa.Object.defineProperties(_ds.Xu.prototype,{open:{configurable:!0,enumerable:!0,get:function(){return this.hasAttribute("open")},set:function(a){a?this.setAttribute("open",this.getAttribute("open")||""):this.removeAttribute("open")}}}); +_ds.fa.Object.defineProperties(_ds.Xu,{observedAttributes:{configurable:!0,enumerable:!0,get:function(){return["open"]}}});_ds.Xu.prototype.disconnectedCallback=_ds.Xu.prototype.disconnectedCallback;_ds.Xu.prototype.connectedCallback=_ds.Xu.prototype.connectedCallback;_ds.Xu.prototype.attributeChangedCallback=_ds.Xu.prototype.attributeChangedCallback;var qy={wk:["BC","AD"],vk:["Before Christ","Anno Domini"],Ck:"JFMAMJJASOND".split(""),Ok:"JFMAMJJASOND".split(""),Ak:"January February March April May June July August September October November December".split(" "),Nk:"January February March April May June July August September October November December".split(" "),Kk:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),Qk:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),$k:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "), +Sk:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),Mk:"Sun Mon Tue Wed Thu Fri Sat".split(" "),Rk:"Sun Mon Tue Wed Thu Fri Sat".split(" "),Tq:"SMTWTFS".split(""),Pk:"SMTWTFS".split(""),Lk:["Q1","Q2","Q3","Q4"],Ek:["1st quarter","2nd quarter","3rd quarter","4th quarter"],ek:["AM","PM"],Rg:["EEEE, MMMM d, y","MMMM d, y","MMM d, y","M/d/yy"],gh:["h:mm:ss a zzzz","h:mm:ss a z","h:mm:ss a","h:mm a"],jk:["{1} 'at' {0}","{1} 'at' {0}","{1}, {0}","{1}, {0}"],Xg:6,zr:[5,6],Yg:5},hv=qy; +hv=qy;cv.prototype.F=function(){return{id:this.o,std_offset:-this.m,names:_ds.Gb(this.C),names_ext:Yb(this.h),transitions:_ds.Gb(this.j)}};cv.prototype.H=function(a){return dv(this.m-gv(this,a))};cv.prototype.D=function(a){return 0this.C.length?d=!1:this.H.length=B)y+=B, +l=!0;else if(D==q.charAt(0)){if(g||k)break;y+=".";g=!0}else if(D==r.charAt(0)&&("\u00a0"!=r.charAt(0)||b[0]+1b.charCode&&nr(d)?b.charCode:0):_ds.ck&&!_ds.Qg?(d=this.Cb,e=nr(d)?b.keyCode:0):("keypress"==a.type?(xy&&(c=this.Ff),b.keyCode==b.charCode?32>b.keyCode?(d=b.keyCode,e=0):(d=this.Cb,e=b.charCode):(d=b.keyCode||this.Cb,e=b.charCode||0)):(d=b.keyCode||this.Cb,e=b.charCode||0),_ds.mr&&63==e&&224==d&&(d= +191));var g=d=_ds.or(d);d?63232<=d&&d in uy?g=uy[d]:25==d&&a.shiftKey&&(g=9):b.keyIdentifier&&b.keyIdentifier in vy&&(g=vy[b.keyIdentifier]);_ds.bk&&wy&&"keypress"==a.type&&!qr(g,this.$a,a.shiftKey,a.ctrlKey,c,a.metaKey)||(a=g==this.$a,this.$a=g,b=new uw(g,e,a,b),b.altKey=c,this.dispatchEvent(b))};_ds.f.getElement=function(){return this.Ec};_ds.f.ma=function(){_ds.sw.ua.ma.call(this);_ds.tw(this)};_ds.F(uw,Sf);_ds.F(xw,_ds.dj);_ds.f=xw.prototype;_ds.f.Mf=!0;_ds.f.Lf=!0;_ds.f.ma=function(){xw.ua.ma.call(this);_ds.Of(this.L);_ds.Of(this.F);_ds.Of(this.N)};_ds.f.VM=function(){var a=this.C;return a&&_ds.pk(a)?a:this.m};_ds.f.Pb=function(a){this.o?_ds.ok(this.o,a):a&&this.G&&(this.o=this.G());this.o&&_ds.ks(this.o,"goog-zippy-content");this.C?(_ds.ok(this.m,!a),_ds.ok(this.C,a)):yw(this,a);this.h=a;this.dispatchEvent(new zw("toggle",this,this.h))};_ds.f.sX=function(){return this.Lf};_ds.f.tX=function(){return this.Mf}; +_ds.f.xia=function(a){this.Lf!=a&&((this.Lf=a)?(ww(this,this.m),ww(this,this.C)):(_ds.Wj(this.L),_ds.tw(this.F)))};_ds.f.yia=function(a){this.Mf!=a&&((this.Mf=a)?(vw(this,this.m),vw(this,this.C)):_ds.Wj(this.N))};_ds.f.Nn=function(a){if(13==a.keyCode||32==a.keyCode)this.Pb(!this.h),this.dispatchEvent(new zw("action",this,this.h,a)),a.preventDefault(),a.stopPropagation()};_ds.f.Mn=function(a){this.Pb(!this.h);this.dispatchEvent(new zw("action",this,this.h,a))};_ds.F(zw,_ds.Rf);_ds.F(_ds.Aw,xw);_ds.f=_ds.Aw.prototype;_ds.f.ci=500;_ds.f.jl=_ds.qw;_ds.f.jX=function(){return null!=this.j}; +_ds.f.Pb=function(a){if(this.h!=a||this.j){"none"==this.D.style.display&&(this.D.style.display="");var b=this.o.offsetHeight;if(this.j){rg(this.j);this.j.Fc(!1);var c=b-Math.abs(parseInt(this.o.style.marginTop,10))}else c=a?0:b;yw(this,a);this.j=new _ds.nw([0,c],[0,a?b:0],this.ci,this.jl);_ds.eg(this.j,["begin","animate","end"],this.Jn,!1,this);_ds.eg(this.j,"begin",(0,_ds.tb)(this.Kn,this,a));_ds.eg(this.j,"end",(0,_ds.tb)(this.Ln,this,a));this.j.play(!1)}}; +_ds.f.Jn=function(a){var b=this.o;b.style.marginTop=a.y-b.offsetHeight+"px"};_ds.f.Kn=function(a){this.dispatchEvent(new zw("a",this,a))};_ds.f.Ln=function(a){a&&(this.o.style.marginTop="0");rg(this.j);this.h=a;this.j=null;a||(this.D.style.display="none");this.dispatchEvent(new zw("toggle",this,a));this.dispatchEvent(new zw("b",this,a))};})(_ds_www); diff --git a/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_a11y_announce_module.js b/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_a11y_announce_module.js new file mode 100644 index 0000000..c24f51b --- /dev/null +++ b/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_a11y_announce_module.js @@ -0,0 +1,2 @@ +(function(_ds){var window=this;'use strict';var yy=function(){var a=_ds.R.call(this)||this;a.h=new _ds.Qj;return a},zy=function(){return"devsite-a11y-announce"};_ds.t(yy,_ds.R);yy.prototype.connectedCallback=function(){var a=this;this.setAttribute("aria-live","assertive");this.setAttribute("aria-atomic","true");this.h.listen(document.body,"devsite-a11y-announce",function(b){b=b.Z;(b=b.detail&&b.detail.message)&&_ds.nh(a,b)})};yy.prototype.disconnectedCallback=function(){_ds.Wj(this.h)};yy.prototype.connectedCallback=yy.prototype.connectedCallback; +yy.getTagName=zy;try{window.customElements.define(zy(),yy)}catch(a){console.warn("devsite.app.customElement.DevsiteA11yAnnounce",a)};})(_ds_www); diff --git a/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_analytics_module.js b/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_analytics_module.js new file mode 100644 index 0000000..26079c1 --- /dev/null +++ b/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_analytics_module.js @@ -0,0 +1,341 @@ +(function(_ds){var window=this;'use strict';var Ay=function(a,b,c){if(null==c)return b;if("string"===typeof c)return c?a+encodeURIComponent(c):"";for(var d in c)if(Object.prototype.hasOwnProperty.call(c,d)){var e=c[d];e=Array.isArray(e)?e:[e];for(var g=0;ga.length?"&":"")+encodeURIComponent(d)+"="+encodeURIComponent(String(k)))}}return b},By=function(a,b,c){if(null!=c)for(var d=0;db?null:"string"===typeof a?a.charAt(b):a[b]},Iy=function(a){var b=b||0;return function(){return a.apply(this,Array.prototype.slice.call(arguments,0,b))}},Jy=function(a,b){var c={},d;for(d in a)c[d]=b.call(void 0,a[d],d,a);return c},Ky=function(a){var b=1;a=a.split(":");for(var c=[];0>>0)},My=function(a,b){var c=b&2147483648; +c&&(a=~a+1>>>0,b=~b>>>0,0==a&&(b=b+1>>>0));a=Ly(a,b);return c?-a:a},Ny=function(a,b,c){var d=-(a&1);return c((a>>>1|b<<31)^d,b>>>1^d)},Oy=function(a,b){return Ny(a,b,My)},Py=function(a,b){function c(e,g){e=e?String(e):"";return g?"0000000".slice(e.length)+e:e}if(2097151>=b)return""+(4294967296*b+a);var d=(a>>>24|b<<8)>>>0&16777215;b=b>>16&65535;a=(a&16777215)+6777216*d+6710656*b;d+=8147497*b;b*=2;1E7<=a&&(d+=Math.floor(a/1E7),a%=1E7);1E7<=d&&(b+=Math.floor(d/1E7),d%=1E7);return c(b,0)+c(d,b)+c(a, +1)},Qy=function(a,b){var c=b&2147483648;c&&(a=~a+1>>>0,b=~b+(0==a?1:0)>>>0);a=Py(a,b);return c?"-"+a:a},Sy=function(a,b,c){this.j=null;this.h=this.m=this.o=0;this.C=!1;a&&Ry(this,a,b,c)},Uy=function(a,b,c){if(Ty.length){var d=Ty.pop();a&&Ry(d,a,b,c);return d}return new Sy(a,b,c)},Ry=function(a,b,c,d){a.j=_ds.ce(b);a.o=void 0!==c?c:0;a.m=void 0!==d?a.o+d:a.j.length;a.h=a.o},Vy=function(a){return a.h==a.m},Wy=function(a,b){for(var c=128,d=0,e=0,g=0;4>g&&128<=c;g++)c=a.j[a.h++],d|=(c&127)<<7*g;128<= +c&&(c=a.j[a.h++],d|=(c&127)<<28,e|=(c&127)>>4);if(128<=c)for(g=0;5>g&&128<=c;g++)c=a.j[a.h++],e|=(c&127)<<7*g+3;if(128>c)return b(d>>>0,e>>>0);a.C=!0},Xy=function(a){return Wy(a,function(b,c){return Ny(b,c,Qy)})},Yy=function(a,b){for(;128>>=7;a.h--},Zy=function(a,b){var c=a.j,d=a.h;b=d+b;for(var e=[],g="";dk)e.push(k);else if(192>k)continue;else if(224>k){var l=c[d++];e.push((k&31)<<6|l&63)}else if(240>k){l=c[d++];var m=c[d++];e.push((k&15)<<12|(l&63)<<6|m&63)}else if(248> +k){l=c[d++];m=c[d++];var p=c[d++];k=(k&7)<<18|(l&63)<<12|(m&63)<<6|p&63;k-=65536;e.push((k>>10&1023)+55296,(k&1023)+56320)}8192<=e.length&&(g+=String.fromCharCode.apply(null,e),e.length=0)}g+=_ds.Ob(e);a.h=d;return g},$y=function(a,b,c){this.h=Uy(a,b,c);this.D=this.h.h;this.j=this.m=-1;this.o=!1;this.C=null},az=function(a){var b;(b=Vy(a.h))||(b=a.o)||(b=a.h,b=b.C||0>b.h||b.h>b.m);if(b)return!1;a.D=a.h.h;b=a.h.cb();var c=b&7;if(0!=c&&5!=c&&1!=c&&2!=c&&3!=c&&4!=c)return a.o=!0,!1;a.m=b>>>3;a.j=c;return!0}, +bz=function(a){switch(a.j){case 0:if(0!=a.j)bz(a);else{for(a=a.h;a.j[a.h]&128;)a.h++;a.h++}break;case 1:1!=a.j?bz(a):(a=a.h,a.h+=8);break;case 2:if(2!=a.j)bz(a);else{var b=a.h.cb();a=a.h;a.h+=b}break;case 5:5!=a.j?bz(a):(a=a.h,a.h+=4);break;case 3:b=a.m;do{if(!az(a)){a.o=!0;break}if(4==a.j){a.m!=b&&(a.o=!0);break}bz(a)}while(1);break;default:a.o=!0}},cz=function(a,b){var c=a.h.cb();c=a.h.h+c;for(var d=[];a.h.hq.indexOf(r)});b=_ds.n(b);for(p=b.next();!p.done;p=b.next())a=p.value,-1===e.indexOf(a)?(m=new Gz,_ds.N(m,1,Number(a)),_ds.N(m,2,Number(c[a][0])),k.push(m)):(m=new Dz,_ds.N(m,1,Number(a)),_ds.N(m,2,c[a][0]),l.push(m));c=new Kz;_ds.zf(c,2,g);_ds.zf(c,3,k);_ds.zf(c,4,l);return c},Pz=function(a,b){var c=_ds.n(b.split("="));b=c.next().value;c=c.next().value;a[b]=a[b]||[];a[b].push(c)},Vz=function(a){if(!a)return null; +if(a instanceof _ds.Il)a=a.get("__utmz");else a:{a=_ds.n(a.split(";"));for(var b=a.next();!b.done;b=a.next()){b=b.value;var c=b.indexOf("=");if(0y;y+=4)w[y/4]=r[y]<<24|r[y+1]<<16|r[y+2]<<8|r[y+3];for(y=16;80>y;y++)r=w[y-3]^w[y-8]^w[y-14]^w[y-16],w[y]=(r<<1|r>>>31)&4294967295;r=e[0];var D=e[1],B=e[2],H=e[3],J=e[4];for(y=0;80>y;y++){if(40>y)if(20>y){var T=H^D&(B^H);var ma=1518500249}else T=D^B^H,ma=1859775393;else 60>y?(T=D&B|H&(D|B),ma=2400959708):(T=D^B^H,ma=3395469782);T=((r<<5|r>>>27)&4294967295)+T+J+ma+w[y]&4294967295;J=H;H=B;B=(D<<30|D>>>2)&4294967295;D=r; +r=T}e[0]=e[0]+r&4294967295;e[1]=e[1]+D&4294967295;e[2]=e[2]+B&4294967295;e[3]=e[3]+H&4294967295;e[4]=e[4]+J&4294967295}function c(r,w){if("string"===typeof r){r=unescape(encodeURIComponent(r));for(var y=[],D=0,B=r.length;Dp?c(l,56-p):c(l,64-(p-56));for(var y=63;56<=y;y--)g[y]= +w&255,w>>>=8;b(g);for(y=w=0;5>y;y++)for(var D=24;0<=D;D-=8)r[w++]=e[y]>>D&255;return r}for(var e=[],g=[],k=[],l=[128],m=1;64>m;++m)l[m]=0;var p,q;a();return{reset:a,update:c,digest:d,digestString:function(){for(var r=d(),w="",y=0;ya.Wg()?"https://www.google.com/log?format=json&hasfast=true":"https://play.google.com/log?format=json&hasfast=true");return a.D},cE=function(a,b){a.C=new _ds.Ol(1>b?1:b,3E5,.1);_ds.Lj(a.m,a.C.j)},eE=function(a){dE(a,32,10,function(b,c){b=_ds.Uh(b,"format","json");b=_ds.Gd().navigator.sendBeacon(b,c.La());a.K&& +!b&&(a.K=!1);return b})},fE=function(a){dE(a,6,5,function(b,c){c=c.La();for(var d=[],e=0,g=0;g>=8);d[e++]=k}c=_ds.Ke(d,3);b=qz(b,"format","base64json","p",c);_ds.Ed(new Image,b);return!0})},dE=function(a,b,c,d){if(0!=a.h.length){var e=_ds.Yh(bE(a),"format");e=qz(e,"auth",a.Xa(),"authuser",a.G||"0");for(var g=0;gg;g++)8==g||13==g||18==g||23==g?l[g]="-":14==g?l[g]="4":(2>=d&&(d=33554432+16777216*Math.random()|0),e=d&15,d>>=4,l[g]=mE[19==g?e&3|8:e]);l=l.join("");lE.set("concordWindowId", +l)}_ds.N(c,34,l);(l=a.h.document.referrer)&&_ds.N(c,18,l);_ds.N(c,27,a.h.document.hidden);if(a.m)for(l=_ds.n(a.m),d=l.next();!d.done;d=l.next())d.value.apply(c);b.lh&&_ds.N(c,57,b.lh);b.oh&&_ds.N(c,58,b.oh);b.qh&&_ds.N(c,59,b.qh);b.nh&&_ds.N(c,62,b.nh);b.ph&&_ds.N(c,65,b.ph);b=new nD;l=c.La();_ds.N(b,8,l);if(c=(c=_ds.P(c,fA,21))?_ds.P(c,cA,1):null)c=_ds.I(c,1),_ds.N(b,11,c);jE(a).Sh(b)},kE=function(a,b,c){var d=new rA;_ds.N(d,1,b);_ds.N(d,2,String(c));_ds.Gf(a,5,d,rA,void 0)},oE=function(a){this.H= +a;this.jd="UNDEFINED";this.D=!0;this.ud=!1;this.o=2500;this.j="https://cloud.google.com/log?format=json&hasfast=true";this.h=null;this.m={};this.vd="https:"===a.location.protocol;this.C=a.location.hostname},pE=function(a,b){a.m[b.constructor.name]=b;return a},qE=function(){},AE=function(a,b){var c=void 0===b?{}:b;b=c.Aa;var d=c.mb;c=c.accountId;if(!a)return"/pagepath_not_provided";a=a.replace(rE,"$2");var e=new _ds.Zh(a);_ds.mi(e,"project")&&_ds.li(e,"project",":projectId");a=e.o;_ds.gi(e.h.toString())&& +(a+="?"+_ds.gi(e.h.toString()));b&&(a=a.replace(b,":projectId"));d&&(a=a.replace(d,":projectNumber"));c&&(a=a.replace(c,":accountId"));a=a.replace(sE,"$1:vmInstanceName");a=a.replace(tE,"$1:accountId");a=a.replace(uE,"$1:emailId");a=a.replace(vE,"$1:clientId");a=a.replace(wE,"$1:organizationId");(b=xE.exec(a))&&b&&b[4]&&(d=(d=b[4])&&yE(d)?":endpointsApiId":d,a=a.replace(b[0],b[1]+d));_ds.yc(a,"/billing/enablebillingforproject")&&(a="/billing/enablebillingforproject");return a=a.replace(zE,":uuid")}, +yE=function(a){var b=_ds.yc(a,"."),c=BE.some(function(d){return _ds.oc(a,d)});return b&&!c},CE=function(){},DE=function(a){this.window=a;this.h={}},FE=function(a){a=void 0===a?window:a;return pE(pE(new EE(a),new DE(a)),new CE)},GE=function(a,b,c,d,e,g,k,l,m,p,q,r,w,y,D){iE.call(this,a,b,c,d,e,k,l,m,p,q,r,w,y,D);this.H=g},EE=function(){oE.apply(this,arguments);this.F=new Nz},HE=function(){this.h={}},IE=function(a){for(var b=new HE,c=_ds.n(window.dataLayer||[]),d=c.next();!d.done;d=c.next())d=d.value, +d.hasOwnProperty("freeTrialEligibleUser")&&(a.freeTrialEligibleUser=String(d.freeTrialEligibleUser)||""),"trackExperiment"===d.event&&(b.h[d.experimentType]=d.variant);0Ty.length&&Ty.push(this)};_ds.f.JY=function(){return Uy(this.j,this.o,this.m-this.o)}; +_ds.f.clear=function(){this.j=null;this.h=this.m=this.o=0;this.C=!1};_ds.f.reset=function(){this.h=this.o};_ds.f.r_=function(){return this.h>this.m}; +_ds.f.cb=function(){var a=this.j;var b=a[this.h];var c=b&127;if(128>b)return this.h+=1,c;b=a[this.h+1];c|=(b&127)<<7;if(128>b)return this.h+=2,c;b=a[this.h+2];c|=(b&127)<<14;if(128>b)return this.h+=3,c;b=a[this.h+3];c|=(b&127)<<21;if(128>b)return this.h+=4,c;b=a[this.h+4];c|=(b&15)<<28;if(128>b)return this.h+=5,c>>>0;this.h+=5;128<=a[this.h++]&&128<=a[this.h++]&&128<=a[this.h++]&&128<=a[this.h++]&&this.h++;return c};_ds.f.Cd=function(){return this.cb()};_ds.f.zj=function(){return this.cb().toString()}; +_ds.f.xj=function(){return this.Cd().toString()};_ds.f.Cj=function(){var a=this.cb();return a>>>1^-(a&1)};_ds.f.Aj=function(){return Wy(this,Ly)};_ds.f.Bj=function(){return Wy(this,Py)};_ds.f.pg=function(){return Wy(this,My)};_ds.f.yj=function(){return Wy(this,Qy)};_ds.f.Dj=function(){return Wy(this,Oy)};_ds.f.Ej=function(){return Xy(this)};_ds.f.Pea=function(){var a=this.j[this.h];this.h+=1;return a};_ds.f.Nea=function(){var a=this.j[this.h],b=this.j[this.h+1];this.h+=2;return a<<0|b<<8}; +_ds.f.kb=function(){var a=this.j[this.h],b=this.j[this.h+1],c=this.j[this.h+2],d=this.j[this.h+3];this.h+=4;return(a<<0|b<<8|c<<16|d<<24)>>>0};_ds.f.Qi=function(){var a=this.kb(),b=this.kb();return Ly(a,b)};_ds.f.Ri=function(){var a=this.kb(),b=this.kb();return Py(a,b)};_ds.f.nea=function(){var a=this.j[this.h];this.h+=1;return a<<24>>24};_ds.f.lea=function(){var a=this.j[this.h],b=this.j[this.h+1];this.h+=2;return(a<<0|b<<8)<<16>>16}; +_ds.f.Zf=function(){var a=this.j[this.h],b=this.j[this.h+1],c=this.j[this.h+2],d=this.j[this.h+3];this.h+=4;return a<<0|b<<8|c<<16|d<<24};_ds.f.Oi=function(){var a=this.kb(),b=this.kb();return My(a,b)};_ds.f.Pi=function(){var a=this.kb(),b=this.kb();return Qy(a,b)};_ds.f.Ni=function(){var a=this.kb(),b=2*(a>>31)+1,c=a>>>23&255;a&=8388607;return 255==c?a?NaN:Infinity*b:0==c?b*Math.pow(2,-149)*a:b*Math.pow(2,c-150)*(a+Math.pow(2,23))}; +_ds.f.Mi=function(){var a=this.kb(),b=this.kb(),c=2*(b>>31)+1,d=b>>>20&2047;a=4294967296*(b&1048575)+a;return 2047==d?a?NaN:Infinity*c:0==d?c*Math.pow(2,-1074)*a:c*Math.pow(2,d-1075)*(a+4503599627370496)};_ds.f.pn=function(){return!!this.j[this.h++]};_ds.f.qn=function(){return this.Cd()};_ds.f.Mea=function(){var a=this.cb();return Zy(this,a)};_ds.f=$y.prototype;_ds.f.RY=function(){this.h.clear();this.j=this.m=-1;this.o=!1;this.C=null;100>aH.length&&aH.push(this)};_ds.f.OH=function(){return this.D}; +_ds.f.VY=function(){return this.h.h};_ds.f.TY=function(){return this.h.j};_ds.f.$M=function(){return this.j};_ds.f.mX=function(){return 2==this.j};_ds.f.aZ=function(a,b,c){Ry(this.h,a,b,c);this.j=this.m=-1};_ds.f.reset=function(){this.h.reset();this.j=this.m=-1};_ds.f.QY=function(a){var b=this.h;b.h+=a};_ds.f.hna=function(){var a=this.m;for(Yy(this.h,this.m<<3|this.j);az(this)&&this.m==a;)bz(this);Vy(this.h)||Yy(this.h,this.m<<3|this.j)}; +_ds.f.Yea=function(a,b){null===this.C&&(this.C={});this.C[a]=b};_ds.f.tfa=function(a){return(0,this.C[a])(this)}; +_ds.f.hea=function(a){this.j=Fy(a);switch(a){case 1:return this.h.Mi();case 2:return this.h.Ni();case 3:return this.h.pg();case 4:return this.h.Aj();case 5:return this.h.Cd();case 6:return this.h.Qi();case 7:return this.h.kb();case 8:return!!this.h.cb();case 9:return a=this.h.cb(),Zy(this.h,a);case 10:case 11:case 12:a=this.h.cb();var b=this.h;if(0>a||b.h+a>b.j.length)b.C=!0,a=new Uint8Array(0);else{var c=b.j.subarray(b.h,b.h+a);b.h+=a;a=c}return a;case 13:return this.h.cb();case 14:return this.h.pg(); +case 15:return this.h.Zf();case 16:return this.h.Oi();case 17:return this.h.Cj();case 18:return this.h.Dj()}return 0};_ds.f.Eo=function(a,b){var c=this.h.m,d=this.h.cb();d=this.h.h+d;this.h.m=d;b(a,this);this.h.h=d;this.h.m=c};_ds.f.jea=function(a,b,c){c(b,this);this.o||4==this.j||(this.o=!0)};_ds.f.QH=function(){var a=this.h.cb(),b=this.h.h,c=b+a;a=Uy(this.h.j,b,a);this.h.h=c;return a};_ds.f.mea=function(){return this.h.xj()};_ds.f.WY=function(){return this.h.yj()};_ds.f.Oea=function(){return this.h.zj()}; +_ds.f.$Y=function(){return this.h.Bj()};_ds.f.Lea=function(){return this.h.Ej()};_ds.f.iea=function(){return this.h.Ri()};_ds.f.Jea=function(){return this.h.Zf().toString()};_ds.f.Kea=function(){return this.h.Pi()};_ds.f.YY=function(a){return Wy(this.h,a)};_ds.f.ZY=function(a){return Wy(this.h,function(b,c){return Ny(b,c,a)})};_ds.f.XY=function(a){var b=this.h,c=b.j,d=b.h;b.h+=8;for(var e=b=0,g=d+7;g>=d;g--)b=b<<8|c[g],e=e<<8|c[g+4];return a(b,e)};_ds.f.vea=function(){return cz(this,this.h.Cd)}; +_ds.f.wea=function(){return cz(this,this.h.xj)};_ds.f.xea=function(){return cz(this,this.h.pg)};_ds.f.yea=function(){return cz(this,this.h.yj)};_ds.f.Fea=function(){return cz(this,this.h.cb)};_ds.f.Gea=function(){return cz(this,this.h.zj)};_ds.f.Hea=function(){return cz(this,this.h.Aj)};_ds.f.Iea=function(){return cz(this,this.h.Bj)};_ds.f.Cea=function(){return cz(this,this.h.Cj)};_ds.f.Dea=function(){return cz(this,this.h.Dj)};_ds.f.Eea=function(){return cz(this,this.h.Ej)}; +_ds.f.rea=function(){return cz(this,this.h.kb)};_ds.f.sea=function(){return cz(this,this.h.Qi)};_ds.f.tea=function(){return cz(this,this.h.Ri)};_ds.f.zea=function(){return cz(this,this.h.Zf)};_ds.f.Aea=function(){return cz(this,this.h.Oi)};_ds.f.Bea=function(){return cz(this,this.h.Pi)};_ds.f.uea=function(){return cz(this,this.h.Ni)};_ds.f.pea=function(){return cz(this,this.h.Mi)};_ds.f.oea=function(){return cz(this,this.h.pn)};_ds.f.qea=function(){return cz(this,this.h.qn)};fz.prototype.Sf=function(){return!!this.fe}; +_ds.F(tz,_ds.jf);_ds.f=tz.prototype;_ds.f.U3=function(a){return uz(a,this)};_ds.f.T3=function(){var a=new _ds.Ne;vz(this,a);return _ds.Se(a)};_ds.f.zL=function(){return _ds.I(this,1)};_ds.f.sB=function(){return _ds.O(this,1)};_ds.f.aV=function(){return _ds.K(this,1)};_ds.f.EL=function(){return _ds.I(this,2)};_ds.f.Pla=function(a){return _ds.N(this,2,a)};_ds.f.tB=function(){return _ds.O(this,2)};_ds.f.bV=function(){return _ds.K(this,2)};_ds.f.dM=function(){return _ds.I(this,3)}; +_ds.f.QB=function(){return _ds.O(this,3)};_ds.f.sV=function(){return _ds.K(this,3)};_ds.f.fM=function(){return _ds.I(this,6)};_ds.f.TB=function(){return _ds.O(this,6)};_ds.f.uV=function(){return _ds.K(this,6)};_ds.f.S3=function(){return _ds.I(this,4)};_ds.f.dB=function(){return _ds.O(this,4)};_ds.f.IU=function(){return _ds.K(this,4)};_ds.f.eM=function(){return _ds.I(this,5)};_ds.f.RB=function(){return _ds.O(this,5)};_ds.f.tV=function(){return _ds.K(this,5)};_ds.F(xz,_ds.jf);var wz=[2,3,4,5];_ds.f=xz.prototype;_ds.f.Q4=function(a){return yz(a,this)};_ds.f.P4=function(){var a=new _ds.Ne;zz(this,a);return _ds.Se(a)};_ds.f.N4=function(){return _ds.I(this,1)};_ds.f.M4=function(){return _ds.O(this,1)};_ds.f.O4=function(){return _ds.K(this,1)};_ds.f.rs=function(a,b){return _ds.Df(this,2,a,b)};_ds.f.Iz=function(){return _ds.vf(this,2)};_ds.f.Br=function(a,b){return _ds.Df(this,3,a,b)};_ds.f.Lu=function(){return _ds.vf(this,3)}; +_ds.f.Cr=function(a,b){return _ds.Df(this,4,a,b)};_ds.f.Nu=function(){return _ds.vf(this,4)};_ds.f.qs=function(a,b){return _ds.Df(this,5,a,b)};_ds.f.Jz=function(){return _ds.vf(this,5)};_ds.F(Dz,_ds.jf);_ds.f=Dz.prototype;_ds.f.V4=function(a){return Ez(a,this)};_ds.f.U4=function(){var a=new _ds.Ne;Fz(this,a);return _ds.Se(a)};_ds.f.S4=function(){return _ds.I(this,1)};_ds.f.R4=function(){return _ds.O(this,1)};_ds.f.T4=function(){return _ds.K(this,1)};_ds.f.vF=function(){return _ds.I(this,2)};_ds.f.Mu=function(){return _ds.O(this,2)};_ds.f.WO=function(){return _ds.K(this,2)};_ds.F(Gz,_ds.jf);_ds.f=Gz.prototype;_ds.f.y5=function(a){return Hz(a,this)};_ds.f.x5=function(){var a=new _ds.Ne;Iz(this,a);return _ds.Se(a)};_ds.f.v5=function(){return _ds.I(this,1)};_ds.f.u5=function(){return _ds.O(this,1)};_ds.f.w5=function(){return _ds.K(this,1)};_ds.f.IK=function(){return _ds.I(this,2)};_ds.f.vA=function(){return _ds.O(this,2)};_ds.f.lU=function(){return _ds.K(this,2)};_ds.F(Kz,_ds.jf);var Jz=[2,3,4];_ds.f=Kz.prototype;_ds.f.W3=function(a){return Lz(a,this)};_ds.f.V3=function(){var a=new _ds.Ne;Mz(this,a);return _ds.Se(a)};_ds.f.Dx=function(){return _ds.xf(this,1)};_ds.f.oR=function(){return _ds.K(this,1)};_ds.f.js=function(a,b){return _ds.Gf(this,2,a,xz,b)};_ds.f.rz=function(){return _ds.Af(this,2)};_ds.f.Cs=function(a,b){return _ds.Gf(this,3,a,Gz,b)};_ds.f.wA=function(){return _ds.Af(this,3)};_ds.f.ns=function(a,b){return _ds.Gf(this,4,a,Dz,b)}; +_ds.f.Gz=function(){return _ds.Af(this,4)};var Oz=/^r\.i-\d+=\d+$/,Qz=/^r\.r-\d+=.+$/,Rz=/^r\.o-\d+=(\d+\.)*\d+$/,Sz=/^r\.t-\d+=1$/;var bH=/utm_.*/,Uz=/[0-9\.]+(.*)/;_ds.F(Xz,_ds.jf);var Wz=[1,2,3,4];_ds.f=Xz.prototype;_ds.f.a2=function(a){var b,c={nu:null==(b=_ds.I(this,1))?void 0:b,pu:null==(b=_ds.I(this,2))?void 0:b,Us:null==(b=_ds.I(this,3))?void 0:b,ou:null==(b=_ds.I(this,4))?void 0:b};a&&(c.M=this);return c};_ds.f.Z1=function(){var a=new _ds.Ne;var b=_ds.I(this,1);0=this.N;)this.h.shift(),++this.ya;this.h.push(a);this.dispatchEvent(new gE(a));this.oa||this.m.Xb||this.m.start()}; +_ds.f.flush=function(a,b){var c=this;if(0==this.h.length)a&&a();else if(this.K)eE(this);else{var d=_ds.wb();if(this.Rc>d&&this.Kay||401==y||0==y)this.h=D.concat(this.h),this.oa||this.m.Xb||this.m.start();b&&b("net-send-failed",y)},this),w=function(){c.tc?c.tc.send(p,q,r):c.Pe(p,q,r)};m?m.then(function(y){p.xg["Content-Encoding"]="gzip";p.xg["Content-Type"]="application/binary";p.body=y;p.xl=2;w()},function(){w()}):w()}}}}; +_ds.f.me=function(){this.O||(this.Ke&&eE(this),this.Uc&&fE(this),this.flush())};_ds.F(gE,_ds.Rf);gE.prototype.m=function(){return this.j};aE.prototype.yk=function(){return this.N};aE.prototype.Rq=function(a){this.N=a};_ds.t(hE,aE);_ds.f=iE.prototype;_ds.f.gZ=function(a){this.mb=a};_ds.f.fZ=function(a){this.Aa=a};_ds.f.dZ=function(a){this.Ub=a};_ds.f.eZ=function(a){var b=new Xz;_ds.N(b,3,a||[]);jE(this).Mj(b)};_ds.f.kY=function(a,b){b=void 0===b?this.h.location.pathname:b;nE(this,Object.assign(Object.assign({},{mb:a.mb,Aa:a.Aa,Ub:a.Ub,latency:a.latency,metadata:a.metadata}),{type:a.OW||"",name:a.$D||"client-interaction",metadata:a.metadata,Rd:a}),b)};_ds.f=oE.prototype;_ds.f.Bg=function(a){this.o=a}; +_ds.f.Hha=function(a){this.j=a;return this};_ds.f.jZ=function(a){this.mb=a;return this};_ds.f.iZ=function(a){this.Aa=a;return this};_ds.f.hZ=function(a){this.Ub=a;return this};_ds.f.kZ=function(a){this.Be=a;return this};_ds.f.Dg=function(a){this.D=a};_ds.f.zoa=function(){this.h=new qE;return this};qE.prototype.Sh=function(){};qE.prototype.Mj=function(){};qE.prototype.Bg=function(){};qE.prototype.Dg=function(){};var tE=/(billing\/|freetrial\/)[a-z0-9]{6}-[a-z0-9]{6}-[a-z0-9]{6}/i,xE=/(\/(apis|apiui|endpoints)\/(api|library)\/)([^/]+)/,sE=/(compute\/instancesDetail\/)[a-z0-9/\-_]*/i,uE=/(\/apis\/credentials\/serviceaccount\/|invitations\/)[+a-zA-Z0-9_.!#$%&'*\=?^`{|}~-]+@([a-zA-Z0-9-]+\.)*[a-zA-Z0-9]{2,63}/,vE=/(\/apis\/credentials\/oauthclient\/).+\.apps\.googleusercontent\.com/,BE=[".google.com",".googleapis.com",".googleprod.com",".googleplex.com"],wE=/(organizationId=)[0-9]*/,zE=/[a-zA-z0-9]{8}-[a-zA-z0-9]{4}-[a-zA-z0-9]{4}-[a-zA-z0-9]{4}-[a-zA-z0-9]{12}/, +rE=/;([^/]+=[^/]+([/?])|[^/?]+=[^/?]+)/g;CE.prototype.apply=function(a){var b={Aa:_ds.I(a,32)||void 0,mb:_ds.I(a,1)||void 0,accountId:_ds.I(a,2)||void 0};if(_ds.I(a,13)){var c=AE(_ds.I(a,13),b);"pageview"===_ds.I(a,4)&&_ds.I(a,3)===_ds.I(a,13)&&_ds.N(a,3,c);_ds.N(a,13,c)}if(_ds.I(a,18)){c=_ds.I(a,18);var d=void 0===b?{}:b;b=d.Aa;var e=d.mb;d=d.accountId;var g=new _ds.Zh(c);c=g.C+"://"+g.j+AE(c,{Aa:b,mb:e,accountId:d});_ds.N(a,18,c)}};DE.prototype.apply=function(a){for(var b={},c=_ds.oi(this.window.location.href).h,d=_ds.n(c.sb()),e=d.next();!e.done;e=d.next()){e=e.value;var g=c.get(e);bH.test(e)&&(b[e]=g)}c=Vz(new _ds.Il(this.window.document))||{};0 code, th > code"));a.j.clear();a.j=new Set(b);if(_ds.zi().hash){b=new _ds.ru;for(var c=_ds.n(a.j),d=c.next();!d.done;d=c.next())_ds.tu(b,d.value)}else rL(a,a.j);a.dispatchEvent(new CustomEvent("devsite-content-updated",{bubbles:!0}))},qL=function(a){"full"===document.body.getAttribute("layout")&&(a=a.m.querySelectorAll('h1[tabindex="0"],h2[tabindex="0"],h3[tabindex="0"],h4[tabindex="0"],h5[tabindex="0"],h6[tabindex="0"]'))&& +Array.from(a).forEach(function(b){b.removeAttribute("tabindex")})},rL=function(a,b){a.h&&b.forEach(function(c){a.h.observe(c)})};_ds.t(fL,_ds.R);fL.prototype.connectedCallback=function(){var a=this;this.o.listen(window,"message",function(b){return oL(a,b)});sL(this)};fL.prototype.disconnectedCallback=function(){this.h&&this.h.disconnect();this.j.clear();_ds.Wj(this.o);_ds.Wj(this.C)}; +fL.prototype.updateContent=function(a){var b=this;a&&([".devsite-article","devsite-content-footer","devsite-google-survey"].forEach(function(c){_ds.Hl(b,b.querySelector(c),a.querySelector(c))}),sL(this))};fL.prototype.updateContent=fL.prototype.updateContent;fL.prototype.disconnectedCallback=fL.prototype.disconnectedCallback;fL.prototype.connectedCallback=fL.prototype.connectedCallback;try{window.customElements.define("devsite-content",fL)}catch(a){console.warn("devsite.app.customElement.DevsiteContent",a)};})(_ds_www); diff --git a/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_expandable_nav_module.js b/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_expandable_nav_module.js new file mode 100644 index 0000000..c315e57 --- /dev/null +++ b/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_expandable_nav_module.js @@ -0,0 +1,6 @@ +(function(_ds){var window=this;'use strict';var DM=function(){var a=_ds.R.call(this)||this;a.D=null;a.j=null;a.h=null;a.F=!1;a.o=new _ds.Qj;a.m=new _ds.Qj;return a},FM=function(a){a.o.listen(a.D,"click",function(b){return EM(a,b)});a.h&&!a.h.hasAttribute("href")&&a.o.listen(a.h,["click","keypress"],function(b){return EM(a,b)})},EM=function(a,b){if("keypress"!=b.type||13==b.keyCode){a.C=!a.C;for(var c=b.target;c&&c!=a;){if(_ds.js(c,"devsite-nav-title-no-path")&&("click"==b.type||"touchend"==b.type)){c.blur();break}c=c.parentNode}}}, +HM=function(a){if(a.j){var b=_ds.nk(a.j);GM(a,b.height,0);a.h&&a.h.setAttribute("aria-expanded","false")}},GM=function(a,b,c){_ds.Wj(a.m);window.requestAnimationFrame(function(){IM(a,b+"px");a.setAttribute("animating","");window.requestAnimationFrame(function(){IM(a,c+"px");_ds.Uj(a.m,a.j,_ds.ex,function(){a.removeAttribute("animating");IM(a);a.dispatchEvent(new CustomEvent("devsite-expandable-nav-transition-end",{bubbles:!0}))})})})},IM=function(a,b){_ds.Zj(a.j,"height",void 0===b?"":b)}; +_ds.t(DM,_ds.R);DM.prototype.attributeChangedCallback=function(a){var b=this;"collapsed"==a&&(this.C?HM(this):window.requestAnimationFrame(function(){if(b.j){IM(b);var c=_ds.nk(b.j);IM(b,0);GM(b,0,c.height);b.h&&b.h.setAttribute("aria-expanded","true")}}))}; +DM.prototype.connectedCallback=function(){this.D=this.getElementsByClassName("devsite-nav-toggle")[0];this.j=this.getElementsByTagName("ul")[0];this.h=this.getElementsByClassName("devsite-nav-title")[0];this.D&&this.j&&FM(this);this.h&&this.h.setAttribute("aria-expanded",!this.hasAttribute("collapsed"));this.setAttribute("connected","");this.setAttribute("animatable","")}; +DM.prototype.disconnectedCallback=function(){_ds.Wj(this.o);_ds.Wj(this.m);this.j&&(IM(this),this.removeAttribute("connected"));this.removeAttribute("animatable");this.h&&this.h.removeAttribute("aria-expanded")};_ds.fa.Object.defineProperties(DM.prototype,{C:{configurable:!0,enumerable:!0,get:function(){return this.hasAttribute("collapsed")},set:function(a){a?this.setAttribute("collapsed",""):this.removeAttribute("collapsed")}}}); +_ds.fa.Object.defineProperties(DM,{observedAttributes:{configurable:!0,enumerable:!0,get:function(){return["collapsed"]}}});DM.prototype.disconnectedCallback=DM.prototype.disconnectedCallback;DM.prototype.connectedCallback=DM.prototype.connectedCallback;DM.prototype.attributeChangedCallback=DM.prototype.attributeChangedCallback;try{window.customElements.define("devsite-expandable-nav",DM)}catch(a){console.warn("devsite.app.customElement.DevsiteExpandableNav",a)};})(_ds_www); diff --git a/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_footer_linkboxes_module.js b/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_footer_linkboxes_module.js new file mode 100644 index 0000000..035b66d --- /dev/null +++ b/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_footer_linkboxes_module.js @@ -0,0 +1 @@ +(function(_ds){var window=this;'use strict';var zN=function(){return _ds.R.apply(this,arguments)||this};_ds.t(zN,_ds.R);zN.prototype.updateContent=function(a){a&&_ds.Hl(this,this.querySelector("nav"),a.querySelector("nav"))};zN.prototype.updateContent=zN.prototype.updateContent;try{window.customElements.define("devsite-footer-linkboxes",zN)}catch(a){console.warn("devsite.app.customElement.DevsiteFooterLinkboxes",a)};})(_ds_www); diff --git a/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_footer_promos_module.js b/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_footer_promos_module.js new file mode 100644 index 0000000..66afa4d --- /dev/null +++ b/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_footer_promos_module.js @@ -0,0 +1 @@ +(function(_ds){var window=this;'use strict';var AN=function(){return _ds.R.apply(this,arguments)||this};_ds.t(AN,_ds.R);AN.prototype.updateContent=function(a){a&&_ds.Hl(this,this.querySelector("nav"),a.querySelector("nav"))};AN.prototype.updateContent=AN.prototype.updateContent;try{window.customElements.define("devsite-footer-promos",AN)}catch(a){console.warn("devsite.app.customElement.DevsiteFooterPromos",a)};})(_ds_www); diff --git a/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_footer_utility_module.js b/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_footer_utility_module.js new file mode 100644 index 0000000..f707102 --- /dev/null +++ b/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_footer_utility_module.js @@ -0,0 +1 @@ +(function(_ds){var window=this;'use strict';var BN=function(){return _ds.R.apply(this,arguments)||this};_ds.t(BN,_ds.R);BN.prototype.updateContent=function(a){a&&_ds.Hl(this,this.querySelector(".devsite-footer-utility"),a.querySelector(".devsite-footer-utility"))};BN.prototype.updateContent=BN.prototype.updateContent;try{window.customElements.define("devsite-footer-utility",BN)}catch(a){console.warn("devsite.app.customElement.DevsiteFooterUtility",a)};})(_ds_www); diff --git a/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_header_module.js b/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_header_module.js new file mode 100644 index 0000000..0abdba4 --- /dev/null +++ b/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_header_module.js @@ -0,0 +1,18 @@ +(function(_ds){var window=this;/* + + Copyright The Closure Library Authors. + SPDX-License-Identifier: Apache-2.0 +*/ +'use strict';var mO=function(a,b){jO()&&(b=kO()?"translate3d("+b+"px,0px,0px)":"translate("+b+"px,0px)",_ds.Zj(a,lO(),b))},pO=function(){var a=_ds.R.call(this)||this;a.H=-1;a.h=new _ds.Qj;a.G=new _ds.Qj;a.C=0;a.K=new MutationObserver(function(){return nO(a)});a.N=new _ds.Nj(function(){nO(a);oO(a)},15);a.L=0;a.m=0;a.o=0;a.j=0;a.D=!1;return a},rO=function(a){a.h.listen(a,"devsite-search-toggle",function(b){b=b.Z;_ds.Bh(b.target,"devsite-top-logo-row-middle")&&(b.detail.active?a.setAttribute("search-active", +""):a.removeAttribute("search-active"))});a.h.listen(document.body,"devsite-sitemask-hidden",function(){return document.body.removeAttribute("devsite-book-nav--open")});a.h.listen(window,"resize",function(){return qO(a)});a.h.listen(document.body,["devsite-page-loaded","devsite-content-updated"],function(){qO(a)});a.h.listen(a,"click",function(b){b.defaultPrevented||"devsite-hamburger-menu"!=b.target.getAttribute("id")||(b.preventDefault(),b.stopPropagation(),document.body.setAttribute("devsite-book-nav--open", +""),a.dispatchEvent(new CustomEvent("devsite-sitemask-show",{bubbles:!0})))})},qO=function(a){window.requestAnimationFrame(function(){return a.N.ra()})},sO=function(a,b){return(a=a.querySelector(b))?a.getBoundingClientRect().height:0},nO=function(a){a.L=sO(a,".devsite-top-logo-row-wrapper-wrapper");a.m=sO(a,".devsite-collapsible-section");a.o=sO(a,".devsite-doc-set-nav-row");a.setAttribute("top-row--height",a.L);a.setAttribute("bottom-row--height",a.m);a.setAttribute("bottom-tabs--height",a.o);tO(a)}, +uO=function(a){if(!a.querySelector(".devsite-search-background")&&(a=a.querySelector(".devsite-top-logo-row-middle"))){var b=document.createElement("div");b.classList.add("devsite-search-background");b.style.opacity=1;a.appendChild(b)}},tO=function(a){var b=a.querySelector(".devsite-collapsible-section");a.j>=a.m&&!a.hasAttribute("bottom-row--hidden")?a.setAttribute("bottom-row--hidden",""):a.j')},AO=function(){var a=_ds.Lt.call(this)||this;a.h=null;a.m=new _ds.Qj;a.j=_ds.ir(zO,{label:"Copy link to this section"});a.o=null;return a},DO=function(a){a.m.listen(document.body,BO,function(b){return void CO(a,b)});a.m.listen(a.j,"click",function(b){b.preventDefault();b.stopPropagation();var c=(b=_ds.Ah(a.h,"devsite-expandable",void 0,2))?b.id: +a.h.id;c&&(b=_ds.zi(),b.hash=c,c=document.createElement("div"),c.innerText=b.href,_ds.zu(a,[c]),_ds.ah(c))})},CO=function(a,b){b=b.target;b!==a.o&&(a.o=b,b.matches&&b.matches("h1.add-link[id],h2:not(.no-link)[id],h3:not(.no-link)[id],h4:not(.no-link)[id],h5:not(.no-link)[id],h6:not(.no-link)[id]")||(b=_ds.zh(b,function(c){return c instanceof Element?c.matches("h1.add-link[id],h2:not(.no-link)[id],h3:not(.no-link)[id],h4:not(.no-link)[id],h5:not(.no-link)[id],h6:not(.no-link)[id]"):!1},!1,3)),b?(b.classList.contains("add-link")|| +!("full"===document.body.getAttribute("layout")||_ds.Ah(b,"devsite-dialog",void 0,3)||_ds.Ah(b,"devsite-selector",void 0,6)||_ds.Ah(b,"table",void 0,4)))&&EO(a,b):FO(a))},EO=function(a,b){var c,d;_ds.E(function(e){a.h!==b&&(a.h=b,c=a.h.dataset.text||a.h.textContent)&&(d=a.j,d.dataset.title="Copy link to this section: "+c,a.h.appendChild(a.j));_ds.v(e)})},FO=function(a){a.h&&(a.j.remove(),a.h=null)};var BO="onpointermove"in window?"pointermove":"mousemove";_ds.t(AO,_ds.Lt);AO.prototype.connectedCallback=function(){_ds.Lt.prototype.connectedCallback.call(this);DO(this)};AO.prototype.disconnectedCallback=function(){_ds.Lt.prototype.disconnectedCallback.call(this);_ds.Wj(this.m)};AO.prototype.disconnectedCallback=AO.prototype.disconnectedCallback;AO.prototype.connectedCallback=AO.prototype.connectedCallback;try{window.customElements.define("devsite-heading-link",AO)}catch(a){console.warn("devsite.app.customElement.DevsiteHeadingLink",a)};})(_ds_www); diff --git a/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_language_selector_module.js b/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_language_selector_module.js new file mode 100644 index 0000000..3751d9b --- /dev/null +++ b/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_language_selector_module.js @@ -0,0 +1,8 @@ +(function(_ds){var window=this;/* + + Copyright The Closure Library Authors. + SPDX-License-Identifier: Apache-2.0 +*/ +'use strict';var UO=function(){var a=_ds.R.call(this)||this;a.j=new _ds.Jk;a.h=new _ds.Qj;SO().then(function(){TO(a)});return a},TO=function(a){var b;return _ds.E(function(c){return(b=_ds.xx.get("django_language"))?_ds.u(c,a.j.set("language_preference",b),0):c.J(0)})},WO=function(a){_ds.Wj(a.h);var b=a.querySelector(".devsite-language-selector-select");b&&a.h.listen(b,"change",function(c){VO(a,c)})},VO=function(a,b){var c,d;_ds.E(function(e){if(1==e.h)return _ds.xx.remove("django_language"),c=b.target, +_ds.xx.set("django_language",c.value,{ub:15552E3,path:"/"}),d=document.documentElement.getAttribute("lang"),a.dispatchEvent(new CustomEvent("devsite-analytics-observation",{detail:{category:"Site-Wide Custom Events",label:"Language Selector",action:d+" to "+c.value},bubbles:!0})),_ds.u(e,TO(a),2);_ds.Hd(_ds.ni(new _ds.Zh(_ds.Gd().location.href),"hl").toString());_ds.v(e)})},SO=function(){return _ds.E(function(a){if(1==a.h)return _ds.xx.get("django_language")?a.J(0):_ds.u(a,DevsiteApp.whenReady(), +3);_ds.xx.set("django_language",DevsiteApp.getLocale()||"en",{ub:15552E3,path:"/"});_ds.v(a)})};_ds.t(UO,_ds.R);UO.prototype.connectedCallback=function(){WO(this)};UO.prototype.disconnectedCallback=function(){_ds.Wj(this.h)};UO.prototype.updateContent=function(a){a&&(_ds.Hl(this,this.querySelector(".devsite-language-selector-menu"),a.querySelector(".devsite-language-selector-menu")),WO(this))};UO.prototype.updateContent=UO.prototype.updateContent;UO.prototype.disconnectedCallback=UO.prototype.disconnectedCallback;UO.prototype.connectedCallback=UO.prototype.connectedCallback;try{window.customElements.define("devsite-language-selector",UO)}catch(a){console.warn("devsite.app.customElement.DevsiteLanguageSelector",a)};})(_ds_www); diff --git a/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_page_rating_module.js b/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_page_rating_module.js new file mode 100644 index 0000000..3574d81 --- /dev/null +++ b/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_page_rating_module.js @@ -0,0 +1,15 @@ +(function(_ds){var window=this;'use strict';var wP=function(a){var b=a.position,c=a.heading,d=a.labels;a=a.tp;var e="";_ds.vq(b,"footer")&&(e+='
    Was this page helpful?
    ');e+='
    ';c=Math.max(0,Math.ceil(d.length));for(var g=0;g
    '}return(0,_ds.V)(e+"")},xP=function(){return"Unusable documentation"},yP=function(){return"Poor documentation"},zP=function(){return"OK documentation"},AP=function(){return"Good documentation"},BP=function(){return"Excellent documentation"},CP=function(a){return'You rated "'+(a.og+'"')},DP=function(a){return a.og}, +EP=function(){this.h=_ds.Eg();this.j=null},FP=function(a,b){a=a(b||{},{});return String(a)},GP=function(a,b,c){b=b(c||{},{});a.qd(null,b.Ab);return b},HP=function(){var a=_ds.R.call(this)||this;a.j=new _ds.Qj;a.m=null;a.D=["Unusable documentation, with a rating of 1 out of 5","Poor documentation, with a rating of 2 out of 5","OK documentation, with a rating of 3 out of 5","Good documentation, with a rating of 4 out of 5","Excellent documentation, with a rating of 5 out of 5"];a.H=new EP;a.o=0;a.F= +["You rated this page 1 out of 5 stars.","You rated this page 2 out of 5 stars.","You rated this page 3 out of 5 stars.","You rated this page 4 out of 5 stars.","You rated this page 5 out of 5 stars."];a.h=[];var b=[FP(xP),FP(yP),FP(zP),FP(AP),FP(BP)];a.C=b;return a},KP=function(a){var b="onpointerover"in window?"pointerover":"mouseover",c="onpointerout"in window?"pointerout":"mouseout";a.j.listen(a,["click","keypress"],function(d){IP(a,d)});a.j.listen(a,[b,"focusin"],function(d){d.target.classList.contains("devsite-rating-star")&& +(d=Number(d.target.getAttribute("data-rating-val")),JP("hover-rating-star",d))});a.j.listen(a,[c,"focusout"],function(d){d.target.classList.contains("devsite-rating-star")&&JP("hover-rating-star",a.o)})},IP=function(a,b){var c=b.target;!c.classList.contains("devsite-rating-star")||"click"!==b.type&&13!==b.keyCode&&32!==b.keyCode||(b=Number(c.getAttribute("data-rating-val")),a.h.forEach(function(d){return d.setAttribute("aria-checked","false")}),c.setAttribute("aria-checked","true"),b!=a.o&&(JP("selected-rating", +b),LP(a,b)),3>=b&&MP(),a.m.setAttribute("aria-label",a.F[b-1]))},JP=function(a,b){Array.from(document.getElementsByTagName("devsite-page-rating")).forEach(function(c){return c.setAttribute(a,b)})},NP=function(a,b){a.h.forEach(function(c){Number(c.getAttribute("data-rating-val"))<=b?c.classList.add("devsite-rating-star-full"):c.classList.remove("devsite-rating-star-full")})},LP=function(a,b){b={nonInteraction:!0,page:_ds.zi().pathname,referrer:_ds.zi().pathname,ratings_value:b,ratings_count:1};a.dispatchEvent(new CustomEvent("devsite-analytics-pageview", +{detail:b,bubbles:!0}))},MP=function(){var a=document.querySelector("devsite-feedback");a&&a.dispatchEvent(new Event("click"))};/* + + Copyright The Closure Library Authors. + SPDX-License-Identifier: Apache-2.0 +*/ +_ds.f=EP.prototype;_ds.f.ffa=function(a,b){a=_ds.hr(a,b,{},this.h);this.qd(a,_ds.nq);return a};_ds.f.efa=function(a,b){a=_ds.ir(a,b,{},this.h);this.qd(a,_ds.nq);return a};_ds.f.hfa=function(a,b,c){_ds.fr(a,b,c,{});this.qd(a,_ds.nq)};_ds.f.render=function(a,b){a=a(b||{},{});this.qd(null,a instanceof _ds.mq?a.Ab:null);return String(a)};_ds.f.kfa=function(a,b){return GP(this,a,b)};_ds.f.ifa=function(a,b){return _ds.oq(GP(this,a,b))};_ds.f.jfa=function(a,b){return GP(this,a,b).h()};_ds.f.sH=function(){return this.h}; +_ds.f.qd=_ds.gb;_ds.t(HP,_ds.R);HP.prototype.connectedCallback=function(){this.m=_ds.ir(wP,{position:this.getAttribute("position")||"",heading:"Rate this page",labels:this.D,tp:this.C});this.h=Array.from(this.m.querySelectorAll(".devsite-rating-star"));this.hasAttribute("selected-rating")||this.setAttribute("selected-rating","0");this.hasAttribute("hover-rating-star")||this.setAttribute("hover-rating-star","0");this.appendChild(this.m);KP(this)}; +HP.prototype.attributeChangedCallback=function(a,b,c){if("selected-rating"===a&&null!=b){var d=this.o=Number(c)||0;b=Number(b)||0;var e=d-1,g=b-1;0=b&&this.h[g].setAttribute("data-title",FP(DP,{og:this.C[g]}));0=d&&this.h[e].setAttribute("data-title",FP(CP,{og:this.C[e]}))}"hover-rating-star"===a&&NP(this,Number(c)||0)};HP.prototype.disconnectedCallback=function(){_ds.Wj(this.j)}; +_ds.fa.Object.defineProperties(HP,{observedAttributes:{configurable:!0,enumerable:!0,get:function(){return["selected-rating","hover-rating-star"]}}});HP.prototype.disconnectedCallback=HP.prototype.disconnectedCallback;HP.prototype.attributeChangedCallback=HP.prototype.attributeChangedCallback;HP.prototype.connectedCallback=HP.prototype.connectedCallback;try{window.customElements.define("devsite-page-rating",HP)}catch(a){console.warn("devsite.app.customElement.DevsitePageRating",a)};})(_ds_www); diff --git a/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_progress_module.js b/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_progress_module.js new file mode 100644 index 0000000..6d0ec43 --- /dev/null +++ b/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_progress_module.js @@ -0,0 +1,2 @@ +(function(_ds){var window=this;'use strict';var vQ=function(){return _ds.R.apply(this,arguments)||this},wQ=function(a){_ds.Xg(a);switch(a.getAttribute("type")){case "indeterminate":var b=a.getAttribute("color"),c=document.createElement("div");c.classList.add("devsite-progress--indeterminate");for(var d=1;4>=d;d++){var e=document.createElement("div");e.classList.add("devsite-progress--indeterminate-"+d);!b||1!=d&&3!=d||(e.style.backgroundColor=b);c.appendChild(e)}a.appendChild(c)}};_ds.t(vQ,_ds.R); +vQ.prototype.connectedCallback=function(){wQ(this)};vQ.prototype.attributeChangedCallback=function(a,b,c){b!==c&&wQ(this)};_ds.fa.Object.defineProperties(vQ,{observedAttributes:{configurable:!0,enumerable:!0,get:function(){return["color","type"]}}});vQ.prototype.attributeChangedCallback=vQ.prototype.attributeChangedCallback;vQ.prototype.connectedCallback=vQ.prototype.connectedCallback;try{window.customElements.define("devsite-progress",vQ)}catch(a){console.warn("devsite.app.customElement.DevsiteProgress",a)};})(_ds_www); diff --git a/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_search_module.js b/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_search_module.js new file mode 100644 index 0000000..db27ebb --- /dev/null +++ b/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_search_module.js @@ -0,0 +1,39 @@ +(function(_ds){var window=this;'use strict';var QR=function(a){var b=arguments.length;if(1==b&&Array.isArray(arguments[0]))return QR.apply(null,arguments[0]);for(var c={},d=0;d
    ')},rS=function(a){a=a||{};var b='")},sS=function(a){var b=a.query,c=a.wc,d='")},tS=function(a){var b=a.link,c=a.title,d=a.public,e=a.action,g=a.Fj,k=a.bb,l=a.cc;a=a.hg;b=(d?"":'')+''+_ds.tq(c)+""+(a?''+_ds.tq(a)+"":"")+(g?''+_ds.tq(g)+"":"")+(_ds.wq(k)&&!l?''+ +_ds.tq(k)+"":"");d||(b+='Confidential');return(0,_ds.V)(b+(""+(d?"":"")))},uS=function(a){var b=a.bb,c=a.cc,d=a.query,e=a.Kj;a=a.wc;b='
    There are no suggestions for your query
    '+((e?'":"")+"
    ");return(0,_ds.V)(b)},vS=function(a){var b=a.Un,c=a.mo,d=a.Ao,e=a.bb,g=a.cc,k=a.query,l=a.Fo,m=a.Kj;a=a.wc;var p='
    ';if(0
    Suggested searches'+((g?''+ +_ds.tq(e)+"":"")+'
    ');for(var q=d.length,r=0;r'+tS({link:_ds.L(w,2),title:w.Ba(),public:_ds.uf(w,14),action:"Query Suggestion Click"})+"
    "}p+="
    "}p+= +0':"";if(0
    Pages'+((g?''+_ds.tq(e)+"":"")+'
    ');q=b.length;for(r=0;r'+tS({link:_ds.L(w,2),title:w.Ba(),public:_ds.uf(w,14),bb:_ds.L(w,4),cc:g,action:"Page Suggestion Click"})+"";p+=""}p+=0':"";if(0
    Reference'+ +((g?''+_ds.tq(e)+"":"")+'
    ');q=l.length;for(r=0;r'+tS({link:_ds.L(w,2),title:w.Ba(),public:_ds.uf(w,14),action:"Reference Suggestion Click", +Fj:_ds.L(w,3),bb:_ds.L(w,4),cc:g,hg:_ds.I(w,10)[0]})+"";p+=""}p+=0':"";if(0
    Products
    '; +b=c.length;for(d=0;d'+tS({link:_ds.L(l,2),title:l.Ba(),public:_ds.uf(l,14),action:"Product Suggestion Click"})+"";p+=""}p+=""+(m?'":"")+"";return(0,_ds.V)(p)},wS=function(){var a=_ds.R.call(this)||this;a.N=!1;a.H= +{};a.G="";a.C=null;a.j=new _ds.Qj;a.h=null;a.L=!1;return a},CS=function(a){a.h&&(a.j.listen(a.h,"suggest-service-search",function(b){a:{var c=a.D.querySelector(".highlight");if(c&&(c=c.querySelector(".devsite-result-item-link"))){c.click();break a}xS(a,b.detail.originalEvent,!!a.C)}}),a.j.listen(a.h,"suggest-service-suggestions-received",function(b){return void yS(a,b)}),a.j.listen(a.h,"suggest-service-focus",function(){zS(a,"cloud-track-search-focus",null);a.L=!0;AS(a,!0)}),a.j.listen(a.h,"suggest-service-blur", +function(){AS(a,!1)}),a.j.listen(a.h,"suggest-service-input",function(){!a.H["Text Entered Into Search Bar"]&&a.h.query.trim()&&(a.dispatchEvent(new CustomEvent("devsite-analytics-observation",{detail:{category:"Site-Wide Custom Events",label:"Search",action:"Text Entered Into Search Bar"},bubbles:!0})),a.H["Text Entered Into Search Bar"]=!0);a.L&&(zS(a,"cloud-track-search-input",null),a.L=!1)}),a.j.listen(a.h,"suggest-service-navigate",function(b){return void BS(a,b)}),a.j.listen(document.body,"devsite-page-changed", +function(){return a.H={}}),a.h.Pj("SLASH",191));a.m&&a.j.listen(a.m,"submit",function(b){xS(a,b)});a.D&&a.j.listen(a.D,"click",function(b){var c=b.target;"A"==c.tagName.toUpperCase()&&AS(a,!1);var d=_ds.Bh(c,"devsite-result-item-link");d&&(d={bp:d.getAttribute("href")},zS(a,"cloud-track-search-submit",d));c.classList.contains("devsite-search-project-scope")&&xS(a,b,!0)});a.Y&&a.j.listen(a.Y,"click",function(){return void AS(a,!0)});a.O&&a.j.listen(a.O,"click",function(){return void AS(a,!1)})},xS= +function(a,b,c){c=void 0===c?!1:c;var d,e,g;_ds.E(function(k){if(1==k.h){b.preventDefault();b.stopPropagation();if(!a.hasAttribute("enable-search"))return k.J(0);a.H["Full Site Search"]||(a.dispatchEvent(new CustomEvent("devsite-analytics-observation",{detail:{category:"Site-Wide Custom Events",label:"Search",action:"Full Site Search"},bubbles:!0})),a.H["Full Site Search"]=!0);d=c&&a.C?_ds.Gi(a.C):_ds.Gi(a.m.getAttribute("action"));e=new _ds.Zh(d.href);_ds.li(e,"q",a.h.query);d.search=e.h.toString(); +return _ds.u(k,DevsiteApp.fetchPage(d.href),3)}AS(a,!1);g="no match";a.K&&(g={contains:{bp:a.K}});zS(a,"cloud-track-search-submit",g);_ds.v(k)})},BS=function(a,b){var c=b.detail;b=a.o.querySelector(".highlight");var d,e=Array.from(a.o.querySelectorAll(".devsite-result-item")),g=[],k=-1;if(b){var l=_ds.zh(b,function(p){return p.classList.contains("devsite-suggest-section")});g=Array.from(l.querySelectorAll(".devsite-result-item"));l=_ds.eh(b.parentNode.parentNode);var m=_ds.fh(b.parentNode.parentNode); +k=e.indexOf(b)}switch(c.keyCode){case 37:if(!l&&!m)return;b&&(c=b.getAttribute("index"),m?(d=m.querySelector('[index="'+c+'"]'))||(d=_ds.Bb(Array.from(m.querySelectorAll("[index]")))):l&&((d=l.querySelector('[index="'+c+'"]'))||(d=_ds.Bb(Array.from(l.querySelectorAll("[index]"))))));break;case 39:if(!l&&!m)return;b&&(c=b.getAttribute("index"),l?(d=l.querySelector('[index="'+c+'"]'))||(d=_ds.Bb(Array.from(l.querySelectorAll("[index]")))):m&&((d=m.querySelector('[index="'+c+'"]'))||(d=_ds.Bb(Array.from(m.querySelectorAll("[index]")))))); +break;case 38:b?(d=e[k-1])||(d=_ds.Bb(g)):d=_ds.Bb(e);break;case 40:b?(d=e[k+1])||(d=g[0]):d=e[0]}b&&(b.classList.remove("highlight"),b.removeAttribute("aria-selected"));d&&(a.F.setAttribute("aria-activedescendant",d.id),d.setAttribute("aria-selected","true"),d.classList.add("highlight"),d.scrollIntoViewIfNeeded&&d.scrollIntoViewIfNeeded()||d.scrollIntoView())},zS=function(a,b,c){a.dispatchEvent(new CustomEvent(b,{detail:{type:"search",name:b,position:"nav",metadata:{eventDetail:c}},bubbles:!0}))}, +AS=function(a,b){if(a.N!==b){_ds.ur(a.h,b);if(a.N=b)a.setAttribute("search-active","");else{var c=a.D.querySelector(".highlight");c&&c.classList.remove("highlight");a.removeAttribute("search-active");a.setAttribute("aria-expanded","false");_ds.Xg(a.o)}a.hasAttribute("capture")||a.dispatchEvent(new CustomEvent("devsite-search-toggle",{detail:{active:b},bubbles:!0}))}},yS=function(a,b){a.K=null;b=b.detail;var c=b.suggestions,d=b.query;if(a.h.query.toLowerCase().startsWith(d.toLowerCase()))if(c){var e= +c.tb();0$1");d=_ds.Ft(d);_ds.Bd(c,d)}},cS={8:"backspace",9:"tab",13:"enter",16:"shift",17:"ctrl",18:"alt",19:"pause",20:"caps-lock",27:"esc",32:"space",33:"pg-up",34:"pg-down",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down",45:"insert",46:"delete",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",59:"semicolon",61:"equals",65:"a",66:"b",67:"c",68:"d",69:"e",70:"f",71:"g",72:"h",73:"i",74:"j", +75:"k",76:"l",77:"m",78:"n",79:"o",80:"p",81:"q",82:"r",83:"s",84:"t",85:"u",86:"v",87:"w",88:"x",89:"y",90:"z",93:"context",96:"num-0",97:"num-1",98:"num-2",99:"num-3",100:"num-4",101:"num-5",102:"num-6",103:"num-7",104:"num-8",105:"num-9",106:"num-multiply",107:"num-plus",109:"num-minus",110:"num-period",111:"num-division",112:"f1",113:"f2",114:"f3",115:"f4",116:"f5",117:"f6",118:"f7",119:"f8",120:"f9",121:"f10",122:"f11",123:"f12",186:"semicolon",187:"equals",189:"dash",188:",",190:".",191:"/", +192:"`",219:"open-square-bracket",220:"\\",221:"close-square-bracket",222:"single-quote",224:"win"};_ds.f=WR.prototype;_ds.f.keyCode=function(a){this.m=a;return this};_ds.f.key=function(a){this.o=a;return this};_ds.f.shiftKey=function(a){this.H=a;return this};_ds.f.altKey=function(a){this.h=a;return this};_ds.f.ctrlKey=function(a){this.j=a;return this};_ds.f.metaKey=function(a){this.C=a;return this};_ds.f.target=function(a){this.K=a;return this};_ds.F(ZR,_ds.Rf); +var mS=[27,112,113,114,115,116,117,118,119,120,121,122,123,19],nS="color date datetime datetime-local email month number password search tel text time url week".split(" "),bS;_ds.F(oS,_ds.dj);_ds.f=oS.prototype;_ds.f.nF=function(){return this.G};_ds.f.Lfa=function(a){this.K=a};_ds.f.oF=function(){return this.K};_ds.f.Ifa=function(a){this.F=a};_ds.f.kF=function(){return this.F};_ds.f.$ja=function(a){this.N=a};_ds.f.GJ=function(){return this.N};_ds.f.Kfa=function(a){this.O=a};_ds.f.Gj=_ds.ba(2); +_ds.f.Xna=function(a){aS(this.j,fS(0,arguments))};_ds.f.DX=function(a){return lS(this,this.j,fS(0,arguments))};_ds.f.mia=function(a){this.L=QR(a)};_ds.f.bI=function(){return _ds.Ub(this.L)}; +_ds.f.ma=function(){oS.ua.ma.call(this);this.j={};_ds.pg(this.h,"keydown",this.ni,!1,this);_ds.pg(this.h,"synthetic-keydown",this.xi,!1,this);_ds.Lw&&(_ds.pg(this.h,"keypress",this.Ai,!1,this),_ds.pg(this.h,"synthetic-keypress",this.Bi,!1,this));_ds.pg(this.h,"keyup",this.oi,!1,this);_ds.pg(this.h,"synthetic-keyup",this.zi,!1,this);this.h=null};_ds.f.mO=function(a){return"shortcut_"+a};_ds.f.oi=function(a){a=YR(a);_ds.bk&&gS(this,a);_ds.Lw&&!this.o&&hS(a)&&kS(this,a,!0)}; +_ds.f.zi=function(a){a=a.j();_ds.bk&&gS(this,a);_ds.Lw&&!this.o&&hS(a)&&kS(this,a,!0)};_ds.f.Ai=function(a){a=YR(a);32{}\[\]\/:,]+/,FS=0;_ds.t(wS,_ds.R);wS.prototype.disconnectedCallback=function(){_ds.Wj(this.j);this.h&&(this.h.dispose(),this.h=null)};wS.prototype.attributeChangedCallback=function(a,b,c){switch(a){case "project-scope":this.G=c||"";this.h&&(this.h.N=this.G);break;case "url-scoped":this.C=c;break;case "disabled":this.F&&(this.F.disabled=null!==c)}}; +wS.prototype.connectedCallback=function(){if(this.m=this.querySelector("form")){this.F=this.m.querySelector(".devsite-search-query");this.Y=this.m.querySelector(".devsite-search-button[search-open]");this.O=this.querySelector(".devsite-search-button[search-close]");var a="devsite-search-popout-container-id-"+ ++FS;this.F.setAttribute("aria-controls",a);this.D=_ds.ir(qS,{id:a});this.o=this.D.querySelector(".devsite-suggest-results-container");this.m.appendChild(this.D);this.hasAttribute("project-scope")&& +(this.G=this.getAttribute("project-scope"));this.hasAttribute("url-scoped")&&(this.C=this.getAttribute("url-scoped"));this.m&&this.F&&(this.h=new _ds.vr(this.m,this.F),this.h.m=!0,this.h.Bf=this.hasAttribute("enable-query-completion"),this.h.ke=!0,this.h.Af=!0,this.h.Cf=!0,this.h.N=this.G,this.h.m=this.hasAttribute("enable-suggestions"));CS(this)}};_ds.fa.Object.defineProperties(wS,{observedAttributes:{configurable:!0,enumerable:!0,get:function(){return["project-scope","url-scoped","disabled"]}}}); +wS.prototype.connectedCallback=wS.prototype.connectedCallback;wS.prototype.attributeChangedCallback=wS.prototype.attributeChangedCallback;wS.prototype.disconnectedCallback=wS.prototype.disconnectedCallback;try{window.customElements.define("devsite-search",wS)}catch(a){console.warn("devsite.app.customElement.DevsiteSearch",a)};})(_ds_www); diff --git a/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_select_module.js b/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_select_module.js new file mode 100644 index 0000000..ac1fc04 --- /dev/null +++ b/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_select_module.js @@ -0,0 +1,15 @@ +(function(_ds){var window=this;'use strict';var GS=function(){return(0,_ds.V)('
    ')},HS=function(a){var b=a.ed,c=a.ag;a='")},IS=function(a){var b=a.label;a=a.id;return(0,_ds.V)('")},JS=function(){return(0,_ds.V)('')},KS=function(a){var b=a.options,c=a.id;a=a.ag;a='
      ";for(var d=b.length,e=0;e'+_ds.tq(g.label)+""}return(0,_ds.V)(a+"
    ")},LS=function(){var a=_ds.R.call(this)||this;a.m=null;a.H=null;a.D=new _ds.Qj;a.F=new _ds.Qj;a.K=null;a.L=!1;a.o=!1;a.N="";a.h= +null;a.C=null;a.j=null;a.G=null;a.O=new _ds.Oj;return a},MS=function(a){var b=a.querySelector(".kd-select");b&&(b.classList.remove("kd-select"),Array.from(b.classList).forEach(function(c){a.classList.add(c);b.classList.remove(c)}))},RS=function(a){a.j=a.querySelector("select");var b;(b=a.j.id)||(NS++,b="devsite-select-"+NS+Math.random().toString().substr(2));a.j&&(a.j.options.length&&(a.G=a.j.options),a.j.hasAttribute("multiple")&&(a.o=!0,a.classList.add("devsite-select--multiple")));if(a.G){var c= +_ds.ir(GS),d=a.j.options;d=d[a.j.selectedIndex]||d[0];a.N=a.hasAttribute("label")?a.getAttribute("label"):d.label;d={ed:a.j.getAttribute("aria-label"),id:b,ag:a.o};d=_ds.ir(HS,d);c.appendChild(d);a.C=_ds.ir(IS,{label:a.N,id:b});d=_ds.ir(JS);c.appendChild(a.C);c.appendChild(d);a.h=_ds.ir(KS,{options:Array.from(a.G).map(function(e){for(var g=e.defaultSelected,k=OS(e.label,e.defaultSelected),l=e.label,m=new Map,p=_ds.n(PS),q=p.next();!q.done;q=p.next())q=q.value,e.hasAttribute(q)&&m.set(q,e.getAttribute(q)); +return{defaultSelected:g,ed:k,label:l,attributes:m}}),id:b,ag:a.o});c.appendChild(a.h);a.appendChild(c);a.j.hasAttribute("disabled")&&a.querySelector(".devsite-select-toggle").setAttribute("disabled","");QS(a)}a.L=!0},QS=function(a){a.D.listen(a.C,"click",function(b){clearTimeout(a.K);a.dispatchEvent(new CustomEvent("devsite-close-select",{bubbles:!0}));b.preventDefault();b.stopPropagation();a.hasAttribute("menu--open")?SS(a):TS(a)});a.D.listen(a.h,"click",function(b){b.target.classList.contains("devsite-select-item")&& +US(a,b.target)});a.D.listen(a.h,"focusout",function(){a.K=setTimeout(function(){return SS(a)},200)});a.D.listen(a.j,"change",function(){VS(a,WS(a.querySelectorAll("option")))});a.D.listen(a.h,"keydown",function(b){var c=b.which||b.keyCode;switch(c){case 38:case 40:b.preventDefault();if(a.m){if(b=40===c?_ds.eh(a.m):_ds.fh(a.m))a.m.classList.remove("devsite-focused"),a.h.setAttribute("aria-activedescendant",b.id),b.classList.add("devsite-focused"),a.m=b}else XS(a);a.m.scrollIntoView({block:"nearest"}); +break;case 13:case 32:b.preventDefault();US(a,a.m);break;case 9:case 27:SS(a)}});a.D.listen(a.C,"keydown",function(b){var c=b.which||b.keyCode;if(38===c||40===c)b.preventDefault(),a.hasAttribute("menu--open")||TS(a)})},TS=function(a){a.setAttribute("menu--open","");a.setAttribute("aria-expanded","true");XS(a);a.h.focus();"scrollIntoViewIfNeeded"in a.m&&a.m.scrollIntoViewIfNeeded()},SS=function(a){a.removeAttribute("menu--open");a.removeAttribute("aria-expanded");a.F.listen(document.body,"click",a.H); +a.F.listen(document.body,"devsite-close-select",a.H);a.m&&a.m.classList.remove("devsite-focused")},US=function(a,b){b&&(YS(a,parseInt(b.dataset.index,10)),a.o||(SS(a),a.C.focus()),a.j.dispatchEvent(new Event("change")))},XS=function(a){if(a.h){var b=Array.from(a.h.children).find(function(c){return c.hasAttribute("data-selected")});a.m=b?b:a.h.children[0];a.h.setAttribute("aria-activedescendant",a.m.id)}},ZS=function(a){a.H=function(b){if("devsite-close-select"!==b.type||b.target!==a)a.o&&"devsite-select-item"=== +b.target.className||SS(a)};a.h&&(a.F.listen(document.body,"click",a.H),a.F.listen(document.body,"devsite-close-select",a.H))},$S=function(a){if(a.h&&a.C){a.h.style.removeProperty("left");a.h.style.removeProperty("right");var b=a.h.getBoundingClientRect();0l?l:d.h.scrollHeight)
    Loading
    ')},mT=function(){return(0,_ds.V)('')}, +nT=function(){return(0,_ds.V)('')},oT=function(){return(0,_ds.V)('')}, +pT=function(a){a=a||{};a=a.Kh;a='')},bV=function(){return(0,_ds.V)('')}, +cV=function(a){var b=a.message,c=a.link,d=a.$m;a='")},dV=function(a){var b=a.Vo;a='")},eV=function(){var a=_ds.R.call(this)||this;a.o=-1;a.C=new _ds.Qj(a);a.j=new _ds.fs;a.h=[];return a},lV=function(a,b){switch(b){case "loading":if(!a.querySelector('*[type^="loading"]')){var c=_ds.ir(lT);fV(a,c)}break;case "refresh":gV(a);break;case "error":hV(a);break;case "copied-to-clipboard":c=_ds.ir(oT);fV(a,c,!0);break;case "cookie-notification":iV(a);break;case "support-attachment-error":jV(a)}b.startsWith("notification-")&& +kV(a,b)},fV=function(a,b,c){c=void 0===c?!1:c;a.appendChild(b);window.requestAnimationFrame(function(){mV(a,b,c)})},mV=function(a,b,c){c=void 0===c?!1:c;window.clearTimeout(a.o);a.m?nV(a,a.m,b,c):(a.m=b,window.requestAnimationFrame(function(){b.setAttribute("show","")}),c&&(a.o=window.setTimeout(function(){a.removeAttribute("type");nV(a,b)},5E3)))},gV=function(a){var b=_ds.ir(mT);_ds.eg(b.querySelector(".devsite-snackbar-action"),"click",function(){_ds.Gd().location.reload()});fV(a,b)},hV=function(a){var b= +_ds.ir(nT);_ds.eg(b.querySelector(".devsite-snackbar-action"),"click",function(){_ds.Gd().location.reload()});fV(a,b)},nV=function(a,b,c,d){c=void 0===c?null:c;d=void 0===d?!1:d;b&&(_ds.dg(b,_ds.ex,function(){_ds.ah(b);a.m=null;if(c)mV(a,c,d);else{var e=a.h.length?a.h.shift():null;null!==e&&lV(a,e)}}),b.removeAttribute("show"))},iV=function(a){if(a.j.get("devsite-eu-cookie")){var b=a.h.length?a.h.shift():null;null!==b&&lV(a,b)}else{b=pT;a.hasAttribute("data-cookie-notice")&&(b=parseInt(a.getAttribute("data-cookie-notice"), +10),b=oV[b]);if(a.hasAttribute("data-cookie-policy")){var c=a.getAttribute("data-cookie-policy");b=_ds.ir(b,{Kh:c})}else b=_ds.ir(b);_ds.dg(b.querySelector(".devsite-snackbar-action"),"click",function(){a.j.set("devsite-eu-cookie","1");pV(a)});fV(a,b)}},pV=function(a){nV(a,a.querySelector('*[type^="cookie-notification"]'))},jV=function(a){var b=_ds.ir(bV);fV(a,b);_ds.dg(b.querySelector(".devsite-snackbar-action"),"click",function(){qV(a)})},qV=function(a){nV(a,a.querySelector('*[type^="support-attachment-error"]'))}, +kV=function(a,b){var c=a.getAttribute(b+"-message"),d=a.getAttribute(b+"-link"),e=a.getAttribute(b+"-link-txt"),g=a.hasAttribute(b+"-store-key");if(c&&d){var k="devsite-notification"+d;if(!g||!a.j.get(k)){b=_ds.ir(cV,{Yo:b,message:c,link:d,$m:e});fV(a,b);var l=new _ds.Qj(b);l.listen(b,"click",function(m){m.stopPropagation();if(m.target.classList.contains("devsite-snackbar-link")||m.target.classList.contains("devsite-snackbar-action"))g&&a.j.set(k,"1"),rV(a),_ds.Wj(l)})}}},rV=function(a){nV(a,a.querySelector('*[type^="notification"]'))};var sV={},oV=(sV[0]=pT,sV[1]=pT,sV[2]=function(a){a=a||{};a=a.Kh;a='')},sV);_ds.t(eV,_ds.R);eV.prototype.connectedCallback=function(){this.C.listen(document.body,"devsite-show-custom-snackbar-msg",this.D)};eV.prototype.disconnectedCallback=function(){_ds.Wj(this.C)}; +eV.prototype.D=function(a){var b=this;this.setAttribute("type","custom");if(a=a.Z.detail){var c=!!a.showClose,d=_ds.ir(dV,{message:a.msg,Vo:c});c&&_ds.dg(d.querySelector(".devsite-snackbar-action"),"click",function(){nV(b,d)});fV(this,d,!c)}}; +eV.prototype.attributeChangedCallback=function(a,b,c){if("type"==a){switch(b){case "loading":nV(this,this.querySelector('*[type^="loading"]'));break;case "refresh":nV(this,this.querySelector('*[type^="refresh"]'));break;case "error":nV(this,this.querySelector('*[type^="error"]'));break;case "copied-to-clipboard":nV(this,this.querySelector('*[type^="copied-to-clipboard"]'));break;case "cookie-notification":pV(this);break;case "support-attachment-error":qV(this);break;case "custom":nV(this,this.querySelector('*[type^="custom"]'))}null!= +b&&b.startsWith("notification-")&&rV(this);c&&(c.includes(",")&&(this.h=c.split(","),c=this.h.shift()),lV(this,c))}};_ds.fa.Object.defineProperties(eV,{observedAttributes:{configurable:!0,enumerable:!0,get:function(){return["type"]}}});eV.prototype.attributeChangedCallback=eV.prototype.attributeChangedCallback;eV.prototype.disconnectedCallback=eV.prototype.disconnectedCallback;eV.prototype.connectedCallback=eV.prototype.connectedCallback;try{window.customElements.define("devsite-snackbar",eV)}catch(a){console.warn("devsite.app.customElement.DevsiteSnackBar",a)};})(_ds_www); diff --git a/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_spinner_module.js b/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_spinner_module.js new file mode 100644 index 0000000..5599361 --- /dev/null +++ b/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_spinner_module.js @@ -0,0 +1,2 @@ +(function(_ds){var window=this;'use strict';var xV=function(a){return a.replace(/<\//g,"<\\/").replace(/\]\]>/g,"]]\\>")},AV=function(a){var b=a.Xo,c="";a=Math.max(0,Math.ceil(a.Cn-1));for(var d=0;d
    '}return(0,_ds.V)(c)}, +BV=function(){return _ds.R.apply(this,arguments)||this},yV={},zV=/^(?!-*(?:expression|(?:moz-)?binding))(?:(?:[.#]?-?(?:[_a-z0-9-]+)(?:-[_a-z0-9-]+)*-?|(?:rgb|hsl)a?\([0-9.%,\u0020]+\)|-?(?:[0-9]+(?:\.[0-9]*)?|\.[0-9]+)(?:[a-z]{1,4}|%)?|!important)(?:\s*[,\u0020]\s*|$))*$/i;_ds.t(BV,_ds.R);BV.prototype.connectedCallback=function(){var a;if(this.hasAttribute("single-color")){var b=this.getAttribute("single-color");b&&b.startsWith("#")&&(a=b)}_ds.fr(this,AV,{Cn:5,Xo:a});if(a=this.getAttribute("size"))this.style.width=a+"px",this.style.height=a+"px"};BV.prototype.connectedCallback=BV.prototype.connectedCallback;try{window.customElements.define("devsite-spinner",BV)}catch(a){console.warn("devsite.app.customElement.DevsiteSpinner",a)};})(_ds_www); diff --git a/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_tabs_module.js b/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_tabs_module.js new file mode 100644 index 0000000..90bc253 --- /dev/null +++ b/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_tabs_module.js @@ -0,0 +1,18 @@ +(function(_ds){var window=this;'use strict';var PV=function(a){var b=a.Gg,c='")},QV=function(a){var b=a.Gg,c=a.href;a=a.text;return(0,_ds.V)('")},SV=function(){var a=_ds.R.call(this)||this;a.H=null;a.G=!1;a.j=new _ds.Qj;a.m=new _ds.Qj; +a.h=null;a.N=null;a.C=null;a.D=null;a.L=0;a.o=[];a.F=0;a.K=new _ds.Nj(function(){RV(a)},20);return a},ZV=function(a){a.j.listen(document.body,"devsite-sticky-resize",function(){return a.K.ra()});a.j.listen(a,"click",function(e){if(!(e.shiftKey||e.ctrlKey||e.metaKey||e.altKey)){var g=e.target,k=TV(a,g);if(k)if(k===a.h)UV(a,e);else if(VV(a),g.classList.contains("devsite-tabs-dropdown-toggle"))e.preventDefault(),e.stopPropagation(),k.hasAttribute("dropdown--open")?WV(a):XV(a,k);else{var l;"A"===g.tagName? +l=g:l=_ds.Ah(g,"A");var m=k.querySelector(".devsite-tabs-dropdown");if(m&&m.contains(g))l&&l.hasAttribute("href")||(e.preventDefault(),e.stopPropagation());else{if(e=a.H||a.querySelector("[active]"))e.removeAttribute("active"),e.setAttribute("aria-selected","false");k.setAttribute("active","");k.setAttribute("aria-selected","true");a.H=k;l&&l&&"#"!==l.href||a.K.ra()}}}});if(a.querySelector("tab[dropdown]")||a.querySelector("tab[overflow-tab]")){var b="onpointermove"in window?"pointerover":"mouseover", +c="onpointermove"in window?"pointerleave":"mouseleave",d=a.querySelectorAll("tab[clickable]");if(d.length){b=_ds.n(d);for(c=b.next();!c.done;c=b.next())a.j.listen(c.value,"click",function(e){var g=e.target,k=TV(a,g),l=k.querySelector(".devsite-tabs-dropdown");!l||a.h.contains(g)||l.contains(g)||(e.preventDefault(),e.stopPropagation(),k.hasAttribute("dropdown--open")?WV(a):YV(a,e))});a.j.listen(document.body,"click",function(e){a.D.contains(e.target)||WV(a)})}else a.j.listen(a,[b,"focusin"],function(e){document.body.hasAttribute("touch")|| +YV(a,e)}),a.j.listen(a,[c,"focusout"],function(){document.body.hasAttribute("touch")||WV(a,300)})}Array.from(a.querySelectorAll(".devsite-tabs-close-button")).forEach(function(e){a.j.listen(e,"click",function(){return WV(a)})})},YV=function(a,b){var c=b.target,d=TV(a,c);d&&(d===a.h||a.h.contains(c)?UV(a,b):XV(a,d))},WV=function(a,b){b=void 0===b?0:b;_ds.Wj(a.m);window.clearTimeout(a.F);var c=a.querySelector("tab[dropdown--open]");if(c){var d=c.querySelector(".devsite-tabs-dropdown");d.setAttribute("dropdown-transition", +"");_ds.Uj(a.m,d,_ds.ex,function(){d.removeAttribute("dropdown-transition");a.removeAttribute("dropdown--open")});a.F=window.setTimeout(function(){c.removeAttribute("dropdown--open");$V(c)},b)}else a.removeAttribute("dropdown--open");VV(a)},XV=function(a,b){VV(a);if(b.hasAttribute("dropdown")){if(_ds.Wj(a.m),window.clearTimeout(a.F),!b.hasAttribute("dropdown--open")){document.body.hasAttribute("touch")&&_ds.Uj(a.m,document.body,"click",function(m){a.contains(m.target)||WV(a)});var c=a.querySelector("tab[dropdown--open]"), +d=b.querySelector(".devsite-tabs-dropdown");if(d){_ds.Zj(d,"left","");var e=_ds.Mg(window||window),g=Array.from(d.querySelectorAll(".devsite-tabs-dropdown-column"));if(!b.hasAttribute("dropdown-full")&&1a.o.length)){var b=aW(a);if(0!==b){var c=a.o.slice(),d=0,e;c.forEach(function(p){p.parentNode!==a.D&&(e?_ds.Zg(p,e):_ds.$g(a.D,p,0));e=p;d+=aW(p)});if(!(d<=b)){var g=a.L;a.h.removeAttribute("hidden");var k=a.querySelector("[active]");for(k&& +(g+=aW(k));c.length;){var l=c.shift();if(l!==k){var m=aW(l);g+m<=b?g+=m:a.C.appendChild(l)}}}}}},bW=function(a){a.o=Array.from(a.querySelectorAll("tab"));var b=a.querySelector(".devsite-tabs-wrapper");b||(b=a.ownerDocument.createElement("div"),b.classList.add("devsite-tabs-wrapper"),a.appendChild(b),a.o.forEach(function(e){return b.appendChild(e)}));a.D=b;a.appendChild(b);if(!a.hasAttribute("no-overflow")){var c=a.ownerDocument.createElement("tab");c.setAttribute("overflow-tab","");var d=a.ownerDocument.createElement("a"); +_ds.Dd(d,"#");d.textContent="More";d.classList.add("devsite-icon");d.classList.add("devsite-icon-arrow-drop-down");c.appendChild(d);a.h=c;d=a.ownerDocument.createElement("div");d.classList.add("devsite-tabs-overflow-menu");d.setAttribute("scrollbars","");d.setAttribute("hidden","");a.C=d;c.appendChild(d);b.appendChild(c)}},aW=function(a){if(!a)return 0;for(var b=[],c=a;c.parentElement&&0==c.offsetWidth;)b.push(c),c.setAttribute("render-hidden",""),c=c.parentElement;a=_ds.nk(a).width;b=_ds.n(b);for(c= +b.next();!c.done;c=b.next())c.value.removeAttribute("render-hidden");return a},$V=function(a){var b=a.querySelector(".devsite-tabs-dropdown-toggle"),c=a.hasAttribute("dropdown--open"),d=a.querySelector(".devsite-tabs-dropdown");a.querySelector("a").setAttribute("aria-expanded",c);b.setAttribute("aria-expanded",c);d.setAttribute("aria-hidden",!c)},eW=function(a){a.o.forEach(function(b,c){if(b.hasAttribute("generated-tab-menu")&&!document.body.hasAttribute("touch")){var d=Array.from(b.querySelectorAll(".devsite-tabs-dropdown-column")), +e=b.querySelector(".devsite-tabs-dropdown"),g=b.querySelector("a");d.forEach(function(k,l){k.setAttribute("column-id","tab-"+c+"-column-"+l)});d=d.map(function(k){var l=k.querySelector(".devsite-nav-title")||k.querySelector(".devsite-nav-item-title");return{Hh:k.getAttribute("column-id"),text:l.textContent}});g&&(g=_ds.ir(PV,{Gg:g.textContent,Dl:d}),e&&(d=b.querySelector(".devsite-tabs-dropdown-content")))&&(e.insertBefore(g,d),e=b.querySelector(".dropdown-tabbed-menu a"),cW(b),a.j.listen(g,"click", +function(k){k.preventDefault();var l=b.querySelector(".dropdown-tabbed-menu-button");k=k.target;l&&k.tagName&&"a"===k.tagName.toLowerCase()&&!l.contains(k)&&dW(b,k.getAttribute("column-id"))}),e&&dW(b,e.getAttribute("column-id")))}})},dW=function(a,b){var c=Array.from(a.querySelectorAll(".devsite-tabs-dropdown-column"));a=Array.from(a.querySelectorAll(".dropdown-tabbed-menu a"));a.forEach(function(d){return d.removeAttribute("active")});c.forEach(function(d){return d.setAttribute("hidden","")});a= +a.find(function(d){return d.getAttribute("column-id")===b});c=c.find(function(d){return d.getAttribute("column-id")===b});a&&c&&(a.setAttribute("active",""),c.removeAttribute("hidden"))},cW=function(a){var b=a.querySelector(".dropdown-tabbed-menu-button-target");if(!a.querySelector(".dropdown-tabbed-menu-button")&&b){var c=a.querySelector("a");c&&(c=c.textContent,b=b.querySelector(".devsite-nav-item a"),a=a.querySelector(".dropdown-tabbed-menu"),b&&(c=_ds.ir(QV,{Gg:c,href:b.getAttribute("href"),text:b.textContent}), +a.appendChild(c)))}};_ds.t(SV,_ds.R);SV.prototype.disconnectedCallback=function(){_ds.Wj(this.j);_ds.Wj(this.m)};SV.prototype.connectedCallback=function(){this.G||(bW(this),this.G=!0);this.setAttribute("connected","");this.hasAttribute("no-overflow")||(this.h.setAttribute("collapsed",""),this.L=aW(this.h),this.h.removeAttribute("collapsed"),ZV(this),RV(this));eW(this)};SV.prototype.connectedCallback=SV.prototype.connectedCallback;SV.prototype.disconnectedCallback=SV.prototype.disconnectedCallback;try{window.customElements.define("devsite-tabs",SV)}catch(a){console.warn("devsite.app.customElement.DevsiteTabs",a)};})(_ds_www); diff --git a/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_toc_module.js b/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_toc_module.js new file mode 100644 index 0000000..278916d --- /dev/null +++ b/vendor-patches/Android/Android Release Security Acknowledgements_files/devsite_devsite_toc_module.js @@ -0,0 +1,15 @@ +(function(_ds){var window=this;'use strict';var sW=function(a){var b=a.kp,c=a.Om,d=a.El;a=a.hn;var e='")?a[c]="":Hq.test(e)||b.push("=a||96<=a&&106>=a||65<=a&&90>=a||(_ds.Qg||_ds.pr)&&0==a)return!0;switch(a){case 32:case 43:case 63:case 64:case 107:case 109:case 110:case 111:case 186:case 59:case 189:case 187:case 61:case 188:case 190:case 191:case 192:case 222:case 219:case 220:case 221:case 163:case 58:return!0;case 173:return _ds.bk;default:return!1}};_ds.or=function(a){if(_ds.bk)a=rr(a);else if(_ds.mr&&_ds.Qg)switch(a){case 93:a=91}return a}; +rr=function(a){switch(a){case 61:return 187;case 59:return 186;case 173:return 189;case 224:return 91;case 0:return 224;default:return a}}; +_ds.vr=function(a,b){_ds.dj.call(this);var c=this;this.K=a;this.h=b;this.L=new Map;this.eventHandler=new _ds.Qj;this.o=!1;this.F=this.D="";this.G=0;this.O=new jr(function(){sr(c)},250,this);this.W=Ti(this.qm);this.Cf=this.Af=this.ke=this.Bf=this.m=!1;if(!a.contains(b))throw Error("The input element must be a child of the form");tr(this);!document.activeElement||document.activeElement!==b&&document.activeElement!==a||_ds.ur(this,!0)}; +_ds.ur=function(a,b){a.o!==b&&(a.o=b,b=document,a.o?(b.activeElement&&b.activeElement!==a.h&&a.h.focus(),a.dispatchEvent(new CustomEvent("suggest-service-focus")),a.m&&a.O.C()):(b.activeElement&&a.K.contains(b.activeElement)&&b.activeElement.blur(),a.dispatchEvent(new CustomEvent("suggest-service-blur"))))}; +tr=function(a){a.eventHandler.listen(a.h,"keyup",function(b){37<=b.keyCode&&40>=b.keyCode||(27!==b.keyCode?a.m&&a.O.C():_ds.ur(a,!1))});a.eventHandler.listen(a.h,"keydown",function(b){37<=b.keyCode&&40>=b.keyCode&&a.dispatchEvent(new CustomEvent("suggest-service-navigate",{detail:{keyCode:b.keyCode,originalEvent:b}}))});a.eventHandler.listen(a.h,"keypress",function(b){if(13===b.keyCode||3===b.keyCode)b.preventDefault(),a.dispatchEvent(new CustomEvent("suggest-service-search",{detail:{query:a.h.value, +originalEvent:b}}))});a.eventHandler.listen(a.h,"input",function(b){a.dispatchEvent(new CustomEvent("suggest-service-input",{detail:{query:a.h.value,originalEvent:b}}))});a.C||(a.C=new lr(a.K));a.eventHandler.listen(a.C,["focusin","focusout"],function(b){"focusin"===b.type?_ds.ur(a,!0):_ds.ur(a,a.K.contains(b.relatedTarget))})}; +sr=function(a){_ds.Q(a,function c(){var d=this,e,g,k,l;return _ds.C(c,function(m){switch(m.h){case 1:e=d.h.value.trim().toLocaleLowerCase();d.dispatchEvent(new CustomEvent("suggest-service-request-sent",{detail:{query:e}}));if(!e)return d.dispatchEvent(new CustomEvent("suggest-service-suggestions-received",{detail:{query:e}})),m.return();var p=_ds.fq(e);p=_ds.Bf(p,6,d.Bf,!1);p=_ds.Bf(p,7,d.Af,!1);p=_ds.Bf(p,8,d.ke,!1);g=_ds.Bf(p,9,d.Cf,!1);d.D&&_ds.Cf(g,14,d.D);d.F&&_ds.Cf(g,13,d.F);d.G&&_ds.Bf(g, +5,d.G,0);k=g.La();if(l=d.L.get(k)){m.J(2);break}_ds.x(m,3);return _ds.u(m,d.W("/search/suggestions?r="+encodeURIComponent(k),k),5);case 5:l=m.j;_ds.z(m,2);break;case 3:_ds.A(m);case 2:l?(d.L.set(k,l),d.dispatchEvent(new CustomEvent("suggest-service-suggestions-received",{detail:{suggestions:l,query:e}}))):d.dispatchEvent(new CustomEvent("suggest-service-suggestions-received",{detail:{query:e}})),_ds.v(m)}})})}; +xr=function(a){a=void 0===a?window.location.hostname:a;return"localhost"===a||wr.some(function(b){return a.length>=b.length&&a.substr(-b.length)===b})?0:1};yr=function(){window.developerProfilesInflightRequests||(window.developerProfilesInflightRequests=new Map)}; +_ds.zr=function(){this.o=this.j=null;this.m=new yr;var a=void 0===a?window.location.hostname:a;var b=xr(a);a=void 0===a?window.location.hostname:a;this.config={apiKey:0===b?"AIzaSyBdGQTIAPnTSjkekiLvV7n6GwavAHO8xqA":"AIzaSyA3iBc8feZzCipnYwiq-SSozzK0dwmBcms",serviceEndpoint:0===b?"https://staging-developerprofiles-pa.sandbox.googleapis.com":"https://developerprofiles-pa.googleapis.com",useFirstPartyAuth:a.endsWith(".google.com")&&(a.startsWith("cloud.")||a.startsWith("developers.")||a.startsWith("firebase.")|| +a.startsWith("codelabs."))};window.developerProfilesAccessTokenTime||(window.developerProfilesAccessTokenTime=0);window.developerProfilesAccessToken||(window.developerProfilesAccessToken="")};_ds.Ar=function(a){return _ds.Q(a,function c(){var d=this;return _ds.C(c,function(e){if(1==e.h)return _ds.u(e,d.getAccessToken(),2);window.developerProfilesAccessToken&&(d.config.accessToken=window.developerProfilesAccessToken);_ds.v(e)})})}; +Br=function(a){return _ds.Q(a,function c(){var d=this,e;return _ds.C(c,function(g){if(1==g.h)return e=d,d.o||(d.o=new Promise(function(k){return _ds.Q(e,function m(){var p=this,q,r;return _ds.C(m,function(w){switch(w.h){case 1:return q=p,_ds.u(w,DevsiteApp.whenReady(),2);case 2:if(p.j){w.J(3);break}r=document.querySelector("devsite-user#devsite-user");if(!r){w.J(3);break}return _ds.u(w,window.customElements.whenDefined("devsite-user"),5);case 5:p.j=r,p.j.addEventListener("devsite-signed-in-state-changed", +function(){q.clearCache()});case 3:k(p.j),_ds.v(w)}})})})),_ds.u(g,d.o,2);d.o=null;return g.return(d.j)})})};Cr=function(){window.developerProfilesCache||(window.developerProfilesCache=new Map)};Dr=function(a,b){Cr();window.developerProfilesCache.set(a,b)};Er=function(a){Cr();return window.developerProfilesCache.get(a)};Fr=function(a){Cr();window.developerProfilesCache.delete(a)};Gr=function(a){Cr();return window.developerProfilesCache.has(a)}; +_ds.Hr=function(a,b,c,d){return _ds.Q(a,function g(){var k=this,l,m,p;return _ds.C(g,function(q){switch(q.h){case 1:return l=k.m.xn(c,d),m=k.m.get(l),m||(m=b,k.m.set(l,b)),_ds.x(q,2,3),_ds.u(q,m,5);case 5:return q.return(q.j);case 3:_ds.Aa(q);k.m.delete(l);_ds.Ba(q,0);break;case 2:throw p=_ds.A(q),p;}})})};_ds.Ir=function(){_ds.zr.call(this);this.h=new _ds.Ro(this.config)}; +_ds.Jr=function(a,b){return _ds.Q(a,function d(){var e=this;return _ds.C(d,function(g){return 1==g.h?_ds.u(g,_ds.Ar(e),2):g.return(_ds.Hr(e,Zo(e.h,b),"getBadge",b))})})};_ds.Kr=function(a,b,c){c=void 0===c?!0:c;return _ds.Q(a,function e(){var g=this,k;return _ds.C(e,function(l){if(1==l.h)return _ds.u(l,_ds.Ar(g),2);if(3!=l.h)return _ds.u(l,_ds.Hr(g,$o(g.h,b),"awardBadge",b),3);k=l.j;c&&k&&document.body.dispatchEvent(new CustomEvent("devsite-award-granted",{detail:{award:k},bubbles:!0}));return l.return(k)})})}; +_ds.Lr=function(){_ds.zr.call(this);this.h=new dp(this.config)};_ds.Mr=function(){_ds.zr.call(this);this.h=new ep(this.config)};_ds.Nr=function(a,b){return _ds.Q(a,function d(){var e=this;return _ds.C(d,function(g){return 1==g.h?_ds.u(g,_ds.Ar(e),2):g.return(_ds.Hr(e,jp(e.h,b),"setStatus",b))})})};_ds.Or=function(){_ds.zr.call(this);this.h=new pp(this.config)}; +_ds.Sr=function(a,b,c){b=void 0===b?!1:b;c=void 0===c?!1:c;return _ds.Q(this,function e(){var g;return _ds.C(e,function(k){if(1==k.h)return _ds.u(k,DevsiteApp.whenReady(),2);DevsiteApp.getEnv();g=_ds.Gi(a);return g.hostname!==_ds.Pr.GOOGLEDEV&&g.hostname!==_ds.Qr.GOOGLEDEV&&g.hostname!==document.location.hostname?k.return(g):k.return((0,_ds.Rr)("GOOGLEDEV",g.href,b,c))})})}; +_ds.Rr=function(a,b,c,d){c=void 0===c?!1:c;d=void 0===d?!1:d;return _ds.Q(this,function g(){var k,l,m;return _ds.C(g,function(p){if(1==p.h)return _ds.u(p,DevsiteApp.whenReady(),2);k=DevsiteApp.getEnv();l=new _ds.Zh((new URL(b,document.location.origin)).href);switch(k){case "DEV":_ds.bi(l,document.location.hostname);_ds.ci(l,document.location.port);_ds.$h(l,document.location.protocol);_ds.li(l,"tenant",a.toLowerCase());break;case "STAGE":_ds.bi(l,_ds.Qr[a.toUpperCase()]);_ds.$h(l,"https");_ds.ci(l, +null);break;default:_ds.$h(l,"https"),_ds.ci(l,null),_ds.bi(l,_ds.Pr[a.toUpperCase()])}m=_ds.zi();c&&_ds.li(l,"return",_ds.Gi(m.href).href);d&&_ds.li(l,"utm_source",m.hostname);return p.return(new URL(l.toString()))})})}; +_ds.Ur=function(a){var b=new URL(a,document.location.origin);"developers.android.com"===b.hostname&&(b.hostname="developer.android.com");if(b.hostname.endsWith(".googlers.com")||"localhost"===b.hostname){var c=_ds.mi(new _ds.Zh(b.href),"tenant");if(c)switch(c.toLowerCase()){case "android":b.hostname=_ds.Pr.ANDROID;break;case "cloud":b.hostname=_ds.Pr.CLOUD;break;case "developers":b.hostname=_ds.Pr.DEVELOPERS;break;case "googledev":b.hostname=_ds.Pr.GOOGLEDEV;break;case "firebase":b.hostname=_ds.Pr.FIREBASE; +break;case "codelabs":b.hostname=_ds.Pr.CODELABS;break;default:throw Error("Invalid url: "+a);}else if(a=Tr[""+DevsiteApp.getTenantId()])b.hostname=a;b.protocol="https:";b.port=""}else b.hostname.endsWith(".corp.google.com")&&(b.hostname.startsWith("googledev.")?b.hostname=_ds.Pr.GOOGLEDEV:b.hostname.startsWith("android.")?b.hostname=_ds.Pr.ANDROID:b.hostname.startsWith("cloud.")?b.hostname=_ds.Pr.CLOUD:b.hostname.startsWith("developers.")?b.hostname=_ds.Pr.DEVELOPERS:b.hostname.startsWith("firebase.")? +b.hostname=_ds.Pr.FIREBASE:b.hostname.startsWith("codelabs.")&&(b.hostname=_ds.Pr.CODELABS));b.search="";b.hash="";return b.href.endsWith("/")?b.href.slice(0,-1):b.href}; +Vr=function(a){var b=a.Zo,c=a.Bl;a='

    client libraries page for a list of supported languages).'),a=a+c+"

    ");a+='
    ';c=b.length;for(var d= +0;d

    "+_ds.tq(e.lang)+"

    ";if(e.Ii)for(var g=e.Ii,k=g.length,l=0;l",m='Uses the '+(_ds.tq(m.name)+".")),a+=m,a+="

    ")}a+='
    '+_ds.tq(e.Yh)+"

    "}return(0,_ds.V)(a+"")};_ds.Wr=function(){var a=_ds.R.call(this)||this;a.j="";a.m="";a.h="";return a}; +Yr=function(a){return _ds.E(function(b){switch(b.h){case 1:if(_ds.Qi()){b.J(2);break}_ds.x(b,3);return _ds.u(b,Xr(a,!0),5);case 5:return b.return(b.j);case 3:_ds.A(b);case 2:return b.return(Xr(a,!1))}})}; +Xr=function(a,b){var c,d;return _ds.E(function(e){if(1==e.h)return c="https://storage.googleapis.com/apisnippets"+(b?"-staging":"")+"/public/"+a.j+"/"+a.m+"/0/"+a.h+".frag.json",_ds.u(e,_ds.Fi(c,{credentials:"omit"}),2);d=e.j;try{return e.return(JSON.parse(d))}catch(g){return console.error("Failed to parse snippet response JSON",g),e.return(Promise.reject("Failed to parse snippet response JSON"))}})}; +_ds.Zr=function(a,b,c){a.timeOfStartCall=(new Date).getTime();var d=c||_ds.Sa,e=d.document,g=a.nonce||_ds.ab(d);g&&!a.nonce&&(a.nonce=g);if("help"==a.flow){var k=_ds.eb("document.location.href",d);!a.helpCenterContext&&k&&(a.helpCenterContext=k.substring(0,1200));k=!0;if(b&&JSON&&JSON.stringify){var l=JSON.stringify(b);(k=1200>=l.length)&&(a.psdJson=l)}k||(b={invalidPsd:!0})}b=[a,b,c];d.GOOGLE_FEEDBACK_START_ARGUMENTS=b;c=a.serverUri||"//www.google.com/tools/feedback";if(k=d.GOOGLE_FEEDBACK_START)k.apply(d, +b);else{d=c+"/load.js?";for(var m in a)b=a[m],null==b||_ds.mb(b)||(d+=encodeURIComponent(m)+"="+encodeURIComponent(b)+"&");a=_ds.Eg(e).createElement("SCRIPT");g&&a.setAttribute("nonce",g);_ds.Fd(a,Fh(d));e.body.appendChild(a)}}; +_ds.as=function(a,b){b||(b={});var c=window;var d=a instanceof Dc?a:Lc("undefined"!=typeof a.href?a.href:String(a));a=b.target||a.target;var e=[];for(g in b)switch(g){case "width":case "height":case "top":case "left":e.push(g+"="+b[g]);break;case "target":case "noopener":case "noreferrer":break;default:e.push(g+"="+(b[g]?1:0))}var g=e.join(",");_ds.we()&&c.navigator&&c.navigator.standalone&&a&&"_self"!=a?(g=_ds.Sg(document,"A"),_ds.Dd(g,d),g.setAttribute("target",a),b.noreferrer&&g.setAttribute("rel", +"noreferrer"),b=document.createEvent("MouseEvent"),b.initMouseEvent("click",!0,!0,c,1),g.dispatchEvent(b)):b.noreferrer?(c=_ds.Id("",c,a,g),b=_ds.Ec(d),c&&(_ds.$r&&_ds.yc(b,";")&&(b="'"+b.replace(/'/g,"%27")+"'"),c.opener=null,b='',b=_ds.qd(b,null),(c=c.document)&&c.write&&(c.write(od(b)),c.close()))):(c=_ds.Id(d,c,a,g))&&b.noopener&&(c.opener=null)}; +bs=function(a,b){b=void 0===b?640:b;var c=void 0===c?480:c;_ds.as(a,{target:"_blank",left:(window.screen.availWidth-b)/2,top:(window.screen.availHeight-c)/2,width:b,height:c})};_ds.cs=function(a,b){b=encodeURIComponent(b);a=encodeURIComponent(a);bs("https://twitter.com/intent/tweet?text="+b+"&url="+a)}; +_ds.ds=function(a,b,c){"/"!==a.slice(-1)&&(a+="/");c=encodeURIComponent(c);a=encodeURIComponent(a);b=encodeURIComponent(b);bs("https://www.linkedin.com/shareArticle?mini=true&url="+a+"&title="+b+"&summary="+c)};_ds.es=function(a){a=encodeURIComponent(a);bs("https://www.facebook.com/sharer/sharer.php?u="+a,555)};_ds.fs=function(){var a=null;try{a=window.localStorage||null}catch(b){}this.h=a};gs=function(a){return"string"==typeof a.className?a.className:a.getAttribute&&a.getAttribute("class")||""}; +_ds.hs=function(a){return a.classList?a.classList:gs(a).match(/\S+/g)||[]};_ds.is=function(a,b){"string"==typeof a.className?a.className=b:a.setAttribute&&a.setAttribute("class",b)};_ds.js=function(a,b){return a.classList?a.classList.contains(b):_ds.Db(_ds.hs(a),b)};_ds.ks=function(a,b){if(a.classList)a.classList.add(b);else if(!_ds.js(a,b)){var c=gs(a);_ds.is(a,c+(0~\.\[:]+)/g,1);b=ps(b,c,/(\.[^\s\+>~\.\[:]+)/g,2);b=ps(b,c,/(::[^\s\+>~\.\[:]+|:first-line|:first-letter|:before|:after)/gi,3);b=ps(b,c,/(:[\w-]+\([^\)]*\))/gi, +2);b=ps(b,c,/(:[^\s\+>~\.\[:]+)/g,2);b=b.replace(/[\*\s\+>~]/g," ");b=b.replace(/[#\.]/g," ");ps(b,c,/([^\s\+>~\.\[:]+)/g,3);b=c;return ns[a]=b};ps=function(a,b,c,d){return a.replace(c,function(e){b[d]+=1;return Array(e.length+1).join(" ")})};os=function(a,b){return a.replace(b,function(c){return Array(c.length+1).join("A")})};ss=function(a){return rs[a]}; +vs=function(a,b,c){b=(0,_ds.zc)(b);if(""==b)return null;var d=String(b.substr(0,4)).toLowerCase();if(0==("url("d;d++){var e="\"'".charAt(d);if(b.charAt(0)==e&&b.charAt(b.length-1)==e){b=b.substring(1,b.length-1);break a}}a=c?(a=c(b,a))&&"about:invalid#zClosurez"!=_ds.Ec(a)?'url("'+_ds.Ec(a).replace(ts,ss)+'")':null:null}return a}if(0document.documentMode){if(!b[c].call)throw Error("IE Clobbering detected");}else if("function"!=typeof b[c])throw Error("Clobbering detected");return b[c].apply(b,d)};Bs=function(a){return ys(As,a,"attributes",function(b){return b instanceof NamedNodeMap})};Ds=function(a,b,c){try{zs(Cs,a,"setAttribute",[b,c])}catch(d){if(-1==d.message.indexOf("A security problem occurred"))throw d;}}; +Fs=function(a){return ys(Es,a,"style",function(b){return b instanceof CSSStyleDeclaration})};Hs=function(a){return ys(Gs,a,"sheet",function(b){return b instanceof CSSStyleSheet})};Js=function(a){return ys(Is,a,"nodeName",function(b){return"string"==typeof b})};Ls=function(a){return ys(Ks,a,"nodeType",function(b){return"number"==typeof b})};Ns=function(a){return ys(Ms,a,"parentNode",function(b){return!(b&&"string"==typeof b.name&&b.name&&"parentnode"==b.name.toLowerCase())})}; +Ps=function(a,b){return zs(Os,a,a.getPropertyValue?"getPropertyValue":"getAttribute",[b])||""};Rs=function(a,b,c){zs(Qs,a,a.setProperty?"setProperty":"setAttribute",[b,c])}; +Vs=function(a,b,c){var d=[];a=Ss(_ds.Gb(a.cssRules));_ds.dd(a,function(e){if(b&&!/[a-zA-Z][\w-:\.]*/.test(b))throw Error("Invalid container id");if(!(b&&_ds.Og&&10==document.documentMode&&/\\['"]/.test(e.selectorText))){var g=b?e.selectorText.replace(Ts,"#"+b+" $1"):e.selectorText,k=d.push;e=Us(e.style,c);if(_ds.yc(g,"<"))throw Error("Selector does not allow '<', got: "+g);var l=g.replace(/('|")((?!\1)[^\r\n\f\\]|\\[\s\S])*\1/g,"");if(!/^[-_a-zA-Z0-9#.:* ,>+~[\]()=^$|]+$/.test(l))throw Error("Selector allows only [-_a-zA-Z0-9#.:* ,>+~[\\]()=^$|] and strings, got: "+ +g);a:{for(var m={"(":")","[":"]"},p=[],q=0;q"+a+"");return null==a||null==a.sheet?Xs:Vs(a.sheet,void 0!=b?b:null,c)};Ws=function(a){if(_ds.Og&&!_ds.De(10)||"function"!=typeof _ds.Sa.DOMParser)return null;a=_ds.qd(""+a+"",null);return(new DOMParser).parseFromString(od(a),"text/html").body.children[0]}; +Us=function(a,b){if(!a)return Rc;var c=document.createElement("div").style,d=Zs(a);_ds.dd(d,function(e){var g=_ds.Qg&&e in $s?e:e.replace(/^-(?:apple|css|epub|khtml|moz|mso?|o|rim|wap|webkit|xv)-(?=[a-z])/i,"");0!=g.lastIndexOf("--",0)&&0!=g.lastIndexOf("var",0)&&(e=Ps(a,e),e=vs(g,e,b),null!=e&&Rs(c,g,e))});return new _ds.Oc(c.cssText||"",Nc)}; +dt=function(a){var b=Array.from(zs(at,a,"getElementsByTagName",["STYLE"])),c=Nb(b,function(e){return _ds.Gb(Hs(e).cssRules)});c=Ss(c);c.sort(function(e,g){e=qs(e.selectorText);a:{g=qs(g.selectorText);for(var k=Math.min(e.length,g.length),l=0;l")+1,a.lastIndexOf("=a)return Zt=Yt=null,c.return(b);Yt=b;clearTimeout($t);$t=setTimeout(function(){Zt=Yt=null},a);return c.return(Yt)}_ds.z(c,3);break;case 2:_ds.A(c),Zt=null;case 3:return c.return(null)}})}; +bu=function(a){return a?a.startsWith("http")||a.startsWith("/")?a:"/"+a:a};cu=function(a){a=new URL(a,document.location.origin);a.hash="";return encodeURIComponent((a.href.endsWith("/")?a.href.slice(0,-1):a.href).substring(a.protocol.length+2))};_ds.du=function(){var a=void 0===a?new Qt:a;this.o=6E5;this.h=a;this.m=au;this.C=new _ds.Qj(this);this.j=null};eu=function(a,b){b=void 0===b?{}:b;var c;return _ds.E(function(d){if(1==d.h)return _ds.u(d,a.getAccessToken(),2);(c=d.j)&&(b.access_token=c);return d.return(b)})}; +fu=function(a){var b;return _ds.E(function(c){return a.j?c.J(0):(b=document.querySelector("devsite-user#devsite-user"))?_ds.u(c,a.Nj(b),0):c.J(0)})}; +gu=function(a,b){if(!b.badge)throw Error("Invalid award to convert");var c;b.creationTime&&(c=(new Date(1E3*parseInt(b.creationTime,10))).toLocaleDateString("default",{month:"short",year:"numeric",day:"numeric"}));var d=null,e=null;b.badge.id&&(b.badge.id.servePath&&(d=b.badge.id.servePath),b.badge.id.tenantId&&(e=b.badge.id.tenantId));a=a.h;return{title:b.badge.title,servePath:d,tenantId:e,description:b.badge.description,imageUrl:b.badge.imageUrl,imageDescription:"",awardId:b.awardId?b.awardId:null, +state:b.state?b.state:null,visibility:b.visibility?b.visibility:null,promotedPosition:b.promotedPosition?b.promotedPosition:null,creationTime:c,createTime:b.createTime,sharing:!!b.badge.sharing,shareTitle:b.badge.sharing?b.badge.sharing.title:"",shareDescription:b.badge.sharing?b.badge.sharing.description:"",shareImageUrl:b.badge.sharing?b.badge.sharing.imageUrl:"",redeemCode:a.j?a.j:null,url:b.badge.url?b.badge.url:""}}; +ju=function(a,b){var c=a.profile;if(!c)throw Error("Invalid response, missing profile");if(!a.obfuscatedProfileId)throw Error("Invalid response, missing profile id");var d=c.Ta;if(!d)throw Error("Invalid response, missing person.");var e=[],g=!1;c.linkedAccounts&&Array.isArray(c.linkedAccounts)&&c.linkedAccounts.forEach(function(m){m.isAuthenticatedUser&&(g=!0);e.push({accountId:m.accountId,email:m.email,label:m.label,isCurrentUser:m.isAuthenticatedUser,linkedSince:(new Date(m.linkedSince)).toLocaleDateString("default", +{month:"long",year:"numeric",day:"numeric"}),name:m.Ta.name,photo:m.Ta.photo})});hu.set(a.obfuscatedProfileId,a);iu.delete(a.obfuscatedProfileId);"me"===b&&(hu.set("me",a),iu.delete("me"));if(d.photo){var k=d.photo;-1===k.indexOf("http")&&(k="data:image/png;base64,"+d.photo)}a={pendingFields:a.pendingFields,obfuscatedProfileId:a.obfuscatedProfileId,awardsHidden:!!c.awardsHidden,name:d.name,title:d.title?d.title:"",organization:d.organization?d.organization:"",pronoun:d.pronoun?d.pronoun:"",photo:k, +isCurrentUser:g,newsletterEmailPref:c.newsletterEmailPreference===Cp.Ca,feedbackEmailPref:c.feedbackEmailPreference===Dp.Ca,creationMethod:c.creationMethod,originTenantId:c.originTenantId,wizardV1Seen:!(!c.Nc||!c.Nc.wizardV1Seen),dashboardV1Seen:c.dashboardV1Seen===Ep.jc,location:c.location,bio:c.bio?c.bio:"",githubId:c.githubId?c.githubId:"",gitlabId:c.gitlabId?c.gitlabId:"",linkedinId:c.linkedinId?c.linkedinId:"",stackoverflowId:c.stackoverflowId?c.stackoverflowId:"",twitterId:c.twitterId?c.twitterId: +""};if(g&&(a.linkedAccounts=e,c.Ha&&c.Ha.pb&&c.Ha.pb.values)){a.avatarStyleId=c.Ha.Oc;b=Object.keys(c.Ha.pb.values);d=Object.values(c.Ha.pb.values);k={};for(var l=0;lc?"-":"+"];c=Math.abs(c);d.push(Math.floor(c/60)%100);c%=60;0!=c&&d.push(":",_ds.Od(c,2));c=d.join("")}b.o=c;c=dv(a);a=ev(a);b.C=[c,c];b.h={fh:a,eh:a};b.j=[];return b}b=new cv;b.o=a.id;b.m=-a.std_offset;b.C=a.names;b.h=a.names_ext;b.j=a.transitions;return b};ev=function(a){var b=["GMT"];b.push(0>=a?"+":"-");a=Math.abs(a);b.push(_ds.Od(Math.floor(a/60)%100,2),":",_ds.Od(a%60,2));return b.join("")}; +dv=function(a){if(0==a)return"UTC";var b=["UTC",0>a?"+":"-"];a=Math.abs(a);b.push(Math.floor(a/60)%100);a%=60;0!=a&&b.push(":",a);return b.join("")};gv=function(a,b){b=Date.UTC(b.getUTCFullYear(),b.getUTCMonth(),b.getUTCDate(),b.getUTCHours(),b.getUTCMinutes())/36E5;for(var c=0;c=a.j[c];)c+=2;return 0==c?0:a.j[c-1]};_ds.kv=function(a){this.j=[];this.h=hv;"number"==typeof a?iv(this,a):jv(this,a)};lv=function(a){return a.getHours?a.getHours():0}; +jv=function(a,b){for(mv&&(b=b.replace(/\u200f/g,""));b;){for(var c=b,d=0;db)var c=a.h.Rg[b];else if(8>b)c=a.h.gh[b-4];else if(12>b)c=a.h.jk[b-8],c=c.replace("{1}",a.h.Rg[b-8]),c=c.replace("{0}",a.h.gh[b-8]);else{iv(a,10);return}jv(a,c)};rv=function(a,b){return _ds.qv(b,a.h)}; +_ds.qv=function(a,b){a=String(a);b=b||hv;if(void 0===b.cl)return a;for(var c=[],d=0;d=e?String.fromCharCode(b.cl+e-48):a.charAt(d))}return c.join("")};sv=function(a){if(!(a.getHours&&a.getSeconds&&a.getMinutes))throw Error("The date to format has no time (probably a goog.date.Date). Use Date or goog.date.DateTime, or use a pattern without time fields.");}; +ov=function(a,b,c,d,e){var g=b.length;switch(b.charAt(0)){case "G":return c=0c&&(c=-c),2==g&&(c%=100),rv(a,_ds.Od(c,g));case "Y":return c=(new Date(bv(d.getFullYear(),d.getMonth(),d.getDate(),a.h.Yg,a.h.Xg))).getFullYear(),0>c&&(c=-c),2==g&&(c%=100),rv(a,_ds.Od(c,g));case "M":a:switch(c=d.getMonth(),g){case 5:g=a.h.Ck[c];break a;case 4:g=a.h.Ak[c];break a;case 3:g=a.h.Kk[c];break a;default:g=rv(a,_ds.Od(c+1,g))}return g; +case "k":return sv(e),rv(a,_ds.Od(lv(e)||24,g));case "S":return rv(a,(e.getMilliseconds()/1E3).toFixed(Math.min(3,g)).substr(2)+(3g?1:0];case "h":return sv(e),rv(a,_ds.Od(lv(e)%12||12,g));case "K":return sv(e),rv(a,_ds.Od(lv(e)%12,g));case "H":return sv(e),rv(a,_ds.Od(lv(e),g));case "c":a:switch(c=d.getDay(),g){case 5:g=a.h.Pk[c];break a;case 4:g=a.h.Sk[c];break a;case 3:g=a.h.Rk[c]; +break a;default:g=rv(a,_ds.Od(c,1))}return g;case "L":a:switch(c=d.getMonth(),g){case 5:g=a.h.Ok[c];break a;case 4:g=a.h.Nk[c];break a;case 3:g=a.h.Qk[c];break a;default:g=rv(a,_ds.Od(c+1,g))}return g;case "Q":return c=Math.floor(d.getMonth()/3),4>g?a.h.Lk[c]:a.h.Ek[c];case "d":return rv(a,_ds.Od(d.getDate(),g));case "m":return sv(e),rv(a,_ds.Od(e.getMinutes(),g));case "s":return sv(e),rv(a,_ds.Od(e.getSeconds(),g));case "v":return g=fv(c.getTimezoneOffset()),g.o;case "V":return a=fv(c.getTimezoneOffset()), +2>=g?a.o:0g?a.C[0g?(g=-(b.m-gv(b,c)),a=[0>g?"-":"+"],g=Math.abs(g),a.push(_ds.Od(Math.floor(g/ +60)%100,2),_ds.Od(g%60,2)),g=a.join("")):g=rv(a,ev(b.m-gv(b,c))),g;default:return""}}; +vv=function(){this.Ua=null;this.Ka=0;this.Qa=null;this.K=40;this.j=1;this.Xa=0;this.m=3;this.N=this.o=0;this.oa=this.ya=!1;this.L=this.H="";this.C=tv.Zg;this.G="";this.h=1;this.F=!1;this.D=[];this.O=this.ea=!1;this.Da=0;this.W=null;var a=tv.lk;this.Y=a.replace(/ /g,"\u00a0");var b=[0];this.H=uv(this,a,b);for(var c=b[0],d=-1,e=0,g=0,k=0,l=-1,m=a.length,p=!0;b[0]d&&l++;break;case "0":if(0d&&l++;break;case ",":0e+g||1>this.N)throw Error('Malformed exponential pattern "'+a+'"');p=!1;break;default:b[0]--,p=!1}0==g&&0d&&0e+g)||0==l)throw Error('Malformed pattern "'+a+'"');k=e+g+k;this.m=0<=d?k-d:0;0<=d&&(this.o=e+g-d,0>this.o&&(this.o=0));this.j=(0<=d?d:k)-e;this.O&&(this.K=e+this.j,0==this.m&&0==this.j&&(this.j=1));this.D.push(Math.max(0,l));this.ea=0==d||d==k;c=b[0]-c;this.L=uv(this,a,b);b[0]a.m)throw Error("Min value must be less than max value");d||(d=[]);var e=wv(b,a.m);e=Math.round(e);if(isFinite(e)){b=Math.floor(wv(e,-a.m));var g=Math.floor(e-wv(b,a.m))}else g=0;e=b;b=g;var k=e;g=b;e=0==k?0:xv(k)+1;var l=0e;e=a.o;l&&(e=a.o);var m="";for(b=k;1E20p?l&&isFinite(l)?wv(Math.round(wv(l,-1)),1):l:l&&isFinite(l)?wv(Math.round(wv(l,p)),-p):l;l=String(l);l=l.replace(".","");l+=Nd("0",parseInt(g[1],10)-l.length+1)}a.m+1>l.length&&(l="1"+Nd("0",a.m-l.length)+l);for(a=l.length;"0"==l.charAt(a-1)&&a>e+1;)a--;for(k=1;kb?(b=-b,c.push(tv.Zg)):a.ya&&c.push(tv.Dk);b=""+b;for(var d=tv.gf,e=b.length;ea)return a-48;var b=tv.gf.charCodeAt(0);return b<=a&&ab||0==b&&0>1/b)?Pv.Ti?e.push(Pv.Ti):(e.push(Pv.prefix),e.push(a.C)):(e.push(Pv.prefix),e.push(a.H)),isFinite(b)?(b=b*(l?-1:1)*a.h,a.O?0==b?(yv(a,b,a.j,e),zv(a,0,e)):(d=Math.floor(Math.log(b)/Math.log(10)+2E-15),b=wv(b, +-d),k=a.j,1a.j?(k=d%a.K,0>k&&(k=a.K+k),b=wv(b,k),d-=k,k=1):1>a.j?(d++,b=wv(b,-1)):(d-=a.j-1,b=wv(b,a.j-1)),yv(a,b,k,e),zv(a,d,e)):yv(a,b,a.j,e)):e.push(tv.Xe),l?Pv.Ui?e.push(Pv.Ui):(e.push(Pv.Yj),e.push(a.G)):(e.push(Pv.Yj),e.push(a.L)),a=e.join("")),g.push(c.replace(/#/g,a))))};Sv=function(a,b){var c=a.C,d=(0,_ds.tb)(a.m,a);b=b.replace(Qv,function(){c.push("'");return d(c)});return b=b.replace(Rv,function(e,g){c.push(g);return d(c)})}; +Tv=function(a){var b=0,c=[],d=[],e=/[{}]/g;e.lastIndex=0;for(var g;g=e.exec(a);){var k=g.index;"}"==g[0]?(c.pop(),0==c.length&&(g={type:1},g.value=a.substring(b,k),d.push(g),b=k+1)):(0==c.length&&(b=a.substring(b,k),""!=b&&d.push({type:0,value:b}),b=k+1),c.push("{"))}b=a.substring(b);""!=b&&d.push({type:0,value:b});return d}; +$v=function(a,b){var c=[];b=Tv(b);for(var d=0;d=e}});ia("Array.prototype.find",function(a){return a?a:function(b,c){a:{var d=this;d instanceof String&&(d=String(d));for(var e=d.length,g=0;g=g}});ia("Object.is",function(a){return a?a:function(b,c){return b===c?0!==b||1/b===1/c:b!==b&&c!==c}}); +ia("Array.prototype.includes",function(a){return a?a:function(b,c){var d=this;d instanceof String&&(d=String(d));var e=d.length;c=c||0;for(0>c&&(c=Math.max(c+e,0));c>>0);pb=0;var Iw={hh:0,yr:1,Wq:6,Uq:8,Yq:12,Zq:14,$q:17,er:18,gr:21,jr:25,gq:37,lr:38,lq:40,Bq:45,Zp:47,Jp:50,Tp:52,Rp:62,wq:63,Oq:66,Gq:70,Op:73,Cq:74,$p:75,Lq:76,tq:77,vq:80,Sp:81,zq:82,qq:83,Fq:85,aq:87,Jq:88,mq:89,Iq:90,nq:91,uq:92,Xp:93,vr:94,pq:95,Wp:96,Pq:97,Pp:98,Qp:99,ir:100,kq:101,rq:102,Kq:103,rr:104,cq:105,Yp:106,jq:107,eq:108,Eq:109,bq:110,iq:111,pr:112,Mq:113,fq:114,Vp:115,hq:116,Aq:117,yq:118,oq:119,Hq:120,Xq:121,Nq:122,dr:123,Vq:124,xq:125,Dq:126};_ds.F(zb,Error);zb.prototype.name="CustomError";var Dg;_ds.F(Ab,zb);Ab.prototype.name="AssertionError";var Gq,km;_ds.Cb=Array.prototype.indexOf?function(a,b){return Array.prototype.indexOf.call(a,b,void 0)}:function(a,b){if("string"===typeof a)return"string"!==typeof b||1!=b.length?-1:a.indexOf(b,0);for(var c=0;cc&&(c=Math.max(0,a.length+c));if("string"===typeof a)return"string"!==typeof b||1!=b.length?-1:a.lastIndexOf(b,c);for(;0<=c;c--)if(c in a&&a[c]===b)return c;return-1};_ds.dd=Array.prototype.forEach?function(a,b,c){Array.prototype.forEach.call(a,b,c)}:function(a,b,c){for(var d=a.length,e="string"===typeof a?a.split(""):a,g=0;g/g;tc=/"/g;uc=/'/g;vc=/\x00/g;wc=/[\x00&<>"']/;var Gc,Fc,Jc,Cc;_ds.f=Dc.prototype;_ds.f.Eb=!0;_ds.f.ib=function(){return this.h.toString()};_ds.f.Pf=!0;_ds.f.qc=function(){return 1};_ds.f.toString=function(){return this.h.toString()};Gc=/^(?:audio\/(?:3gpp2|3gpp|aac|L16|midi|mp3|mp4|mpeg|oga|ogg|opus|x-m4a|x-matroska|x-wav|wav|webm)|font\/\w+|image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp|x-icon)|video\/(?:mpeg|mp4|ogg|webm|quicktime|x-matroska))(?:;\w+=(?:\w+|"[\w;,= ]+"))*$/i;Fc=/^data:(.*);base64,[a-z0-9+\/]+=*$/i;Jc=/^(?:(?:https?|mailto|ftp):|[^:/?#]*(?:[/?#]|$))/i; +Cc={};_ds.Kc=Hc("about:invalid#zClosurez");_ds.Oc.prototype.Eb=!0;_ds.Oc.prototype.ib=function(){return this.h};_ds.Oc.prototype.toString=function(){return this.h.toString()};var Nc={},Rc=new _ds.Oc("",Nc),Wc=/^[-,."'%_!# a-zA-Z0-9\[\]]+$/,Vc=/\b(url\([ \t\n]*)('[ -&(-\[\]-~]*'|"[ !#-\[\]-~]*"|[!#-&*-\[\]-~]*)([ \t\n]*\))/g,Uc=/\b(calc|cubic-bezier|fit-content|hsl|hsla|linear-gradient|matrix|minmax|repeat|rgb|rgba|(rotate|scale|translate)(X|Y|Z|3d)?)\([-+*/0-9a-z.%\[\], ]+\)/g,Xc=/\/\*/;var bd={};_ds.cd.prototype.ib=function(){return this.h};_ds.cd.prototype.toString=function(){return this.h.toString()};var Xs=new _ds.cd("",bd);a:{var Jw=_ds.Sa.navigator;if(Jw){var Kw=Jw.userAgent;if(Kw){_ds.gd=Kw;break a}}_ds.gd=""};nd.prototype.Pf=!0;nd.prototype.qc=function(){return this.j};nd.prototype.Eb=!0;nd.prototype.ib=function(){return this.h.toString()};var sd=/^[a-zA-Z0-9-]+$/,ud={action:!0,cite:!0,data:!0,formaction:!0,href:!0,manifest:!0,poster:!0,src:!0},td={APPLET:!0,BASE:!0,EMBED:!0,IFRAME:!0,LINK:!0,MATH:!0,META:!0,OBJECT:!0,SCRIPT:!0,STYLE:!0,SVG:!0,TEMPLATE:!0},md={},yd=new nd(_ds.Sa.trustedTypes&&_ds.Sa.trustedTypes.emptyHTML||"",0,md),gr=_ds.qd("
    ",0);var Ad=_ds.Rb(function(){var a=document.createElement("div"),b=document.createElement("div");b.appendChild(document.createElement("div"));a.appendChild(b);b=a.firstChild.firstChild;a.innerHTML=od(yd);return!b.parentElement});var Nd;Nd=String.prototype.repeat?function(a,b){return a.repeat(b)}:function(a,b){return Array(b+1).join(a)};_ds.Vk=2147483648*Math.random()|0;_ds.Sd=0;_ds.Td=0;_ds.f=de.prototype;_ds.f.oY=function(){return!!(this.h&1)};_ds.f.add=function(a){return new de((this.h+a.h&4294967295)>>>0>>>0,((this.j+a.j&4294967295)>>>0)+(4294967296<=this.h+a.h?1:0)>>>0)};_ds.f.sub=function(a){return new de((this.h-a.h&4294967295)>>>0>>>0,((this.j-a.j&4294967295)>>>0)-(0>this.h-a.h?1:0)>>>0)}; +_ds.f.div=function(a){if(0==a)return[];for(var b=new de(0,0),c=new de(this.h,this.j),d=new de(a,0),e=new de(1,0);!(d.j&2147483648);)d=ge(d),e=ge(e);for(;0!=e.h||0!=e.j;)0>=(d.j>>0>>>0,((this.j+a.j&4294967295)>>>0)+(4294967296<=this.h+a.h?1:0)>>>0)};je.prototype.sub=function(a){return new je((this.h-a.h&4294967295)>>>0>>>0,((this.j-a.j&4294967295)>>>0)-(0>this.h-a.h?1:0)>>>0)};je.prototype.m=function(){return new je(this.h,this.j)};je.prototype.toString=function(){var a=0!=(this.j&2147483648),b=new de(this.h,this.j);a&&(b=(new de(0,0)).sub(b));return(a?"-":"")+b.toString()};_ds.f=le.prototype;_ds.f.length=function(){return this.h.length};_ds.f.end=function(){var a=this.h;this.h=[];return a};_ds.f.zpa=function(a){this.h.push(a>>>0&255)};_ds.f.ypa=function(a){this.h.push(a>>>0&255);this.h.push(a>>>8&255)};_ds.f.Eoa=function(a){this.h.push(a>>>0&255)};_ds.f.Doa=function(a){this.h.push(a>>>0&255);this.h.push(a>>>8&255)};_ds.f.OY=function(a){this.h.push.apply(this.h,a)};xe[" "]=_ds.gb;var Rw;_ds.ck=_ds.hd("Opera");_ds.Og=_ds.hd("Trident")||_ds.hd("MSIE");_ds.pr=_ds.hd("Edge");_ds.$r=_ds.pr||_ds.Og;_ds.bk=_ds.hd("Gecko")&&!(_ds.yc(_ds.gd.toLowerCase(),"webkit")&&!_ds.hd("Edge"))&&!(_ds.hd("Trident")||_ds.hd("MSIE"))&&!_ds.hd("Edge");_ds.Qg=_ds.yc(_ds.gd.toLowerCase(),"webkit")&&!_ds.hd("Edge");_ds.mr=_ds.hd("Macintosh");_ds.Lw=_ds.hd("Windows");_ds.Mw=_ds.hd("Android");_ds.Nw=ve();_ds.Ow=_ds.hd("iPad");_ds.Pw=_ds.hd("iPod");_ds.Qw=_ds.we(); +a:{var Sw="",Tw=function(){var a=_ds.gd;if(_ds.bk)return/rv:([^\);]+)(\)|;)/.exec(a);if(_ds.pr)return/Edge\/([\d\.]+)/.exec(a);if(_ds.Og)return/\b(?:MSIE|rv)[: ]([^\);]+)(\)|;)/.exec(a);if(_ds.Qg)return/WebKit\/(\S+)/.exec(a);if(_ds.ck)return/(?:Version)[ \/]?(\S+)/.exec(a)}();Tw&&(Sw=Tw?Tw[1]:"");if(_ds.Og){var Uw=Be();if(null!=Uw&&Uw>parseFloat(Sw)){Rw=String(Uw);break a}}Rw=Sw}var Ce=Rw,ze={},Vw;if(_ds.Sa.document&&_ds.Og){var Ww=Be();Vw=Ww?Ww:parseInt(Ce,10)||void 0}else Vw=void 0;_ds.Ge=Vw;var $w;_ds.Xw=id();_ds.Yw=ve()||_ds.hd("iPod");_ds.Zw=_ds.hd("iPad");$w=_ds.ld();_ds.ax=jd();_ds.bx=_ds.kd()&&!_ds.we();var Je={},Me=null;_ds.f=_ds.Ne.prototype;_ds.f.DY=function(a,b,c){null!=a&&null!=b&&null!=c&&Oe(this,a.subarray(b,c))};_ds.f.reset=function(){this.m=[];this.h.end();this.j=0;this.o=[]};_ds.f.kL=function(a){return _ds.Ke(_ds.Se(this),a)};_ds.f.Ot=function(a){this.o.push(_ds.Qe(this,a))};_ds.f.gE=function(){_ds.Re(this,this.o.pop())}; +_ds.f.Boa=function(a,b,c){switch(a){case 1:_ds.cf(this,b,c);break;case 2:null!=c&&(_ds.Pe(this,b,5),a=this.h,Xd(c),ne(a,_ds.Sd));break;case 3:_ds.Ye(this,b,c);break;case 4:null!=c&&_ds.Ve(this,b,c);break;case 5:_ds.Xe(this,b,c);break;case 6:af(this,b,c);break;case 7:null!=c&&(_ds.Pe(this,b,5),ne(this.h,c));break;case 8:_ds.df(this,b,c);break;case 9:_ds.G(this,b,c);break;case 12:_ds.ff(this,b,c);break;case 13:null!=c&&_ds.Te(this,b,c);break;case 14:_ds.ef(this,b,c);break;case 15:null!=c&&(_ds.Pe(this, +b,5),ue(this.h,c));break;case 16:bf(this,b,c);break;case 17:null!=c&&null!=c&&(_ds.Pe(this,b,0),se(this.h,c));break;case 18:null!=c&&_ds.We(this,b,c)}};_ds.f.xpa=function(a,b){null!=b&&null!=b&&(_ds.Pe(this,a,0),te(this.h,b))};_ds.f.R=_ds.ba(0);_ds.f.Foa=function(a,b,c){null!=b&&(_ds.Pe(this,1,3),_ds.Pe(this,2,0),_ds.re(this.h,a),a=_ds.Qe(this,3),c(b,this),_ds.Re(this,a),_ds.Pe(this,1,4))};_ds.f.Coa=function(a,b,c){null!=b&&(_ds.Pe(this,a,3),c(b,this),_ds.Pe(this,a,4))}; +_ds.f.ipa=function(a,b){if(null!=b)for(var c=0;c>>0,k>>>0)}};_ds.f.jpa=function(a,b){if(null!=b)for(var c=0;c=a.keyCode)a.keyCode=-1}catch(b){}};var Tf="closure_listenable_"+(1E6*Math.random()|0);var Vf=0;Yf.prototype.m=function(){var a=0,b;for(b in this.h)a+=this.h[b].length;return a};Yf.prototype.add=function(a,b,c,d,e){var g=a.toString();a=this.h[g];a||(a=this.h[g]=[],this.j++);var k=ag(a,b,d,e);-1>>0);_ds.hx=new Qf("devsite-analytics-observation");_ds.ix=new Qf("devsite-analytics-observation-unfiltered");_ds.jx=new Qf("devsite-analytics-observation-cloudtrack");_ds.kx=new Qf("devsite-analytics-timing");_ds.lx=new Qf("devsite-analytics-error");_ds.mx=new Qf("devsite-analytics-pageview");_ds.nx=new Qf("devsite-analytics-set-dimension");try{(new self.OffscreenCanvas(0,0)).getContext("2d")}catch(a){}var Rg=!_ds.Og||_ds.He(9),ox=!_ds.bk&&!_ds.Og||_ds.Og&&_ds.He(9)||_ds.bk&&_ds.De("1.9.1"),uh=_ds.Og&&!_ds.De("9"),hh=_ds.Og||_ds.ck||_ds.Qg;_ds.f=_ds.wg.prototype;_ds.f.Xl=function(a){return a instanceof _ds.wg&&(this==a?!0:this&&a?this.x==a.x&&this.y==a.y:!1)};_ds.f.ceil=function(){this.x=Math.ceil(this.x);this.y=Math.ceil(this.y);return this};_ds.f.floor=function(){this.x=Math.floor(this.x);this.y=Math.floor(this.y);return this};_ds.f.round=function(){this.x=Math.round(this.x);this.y=Math.round(this.y);return this}; +_ds.f.NN=function(a,b){a instanceof _ds.wg?(this.x+=a.x,this.y+=a.y):(this.x+=Number(a),"number"===typeof b&&(this.y+=b));return this};_ds.f.LN=function(a,b){this.x*=a;this.y*="number"===typeof b?b:a;return this};_ds.f.sfa=function(a,b){a=a*Math.PI/180;b=b||new _ds.wg(0,0);var c=this.x,d=this.y,e=Math.cos(a);a=Math.sin(a);this.x=(c-b.x)*e-(d-b.y)*a+b.x;this.y=(c-b.x)*a+(d-b.y)*e+b.y};_ds.f=_ds.xg.prototype;_ds.f.nJ=function(){return Math.max(this.width,this.height)};_ds.f.uL=function(){return Math.min(this.width,this.height)};_ds.f.u_=function(){return 2*(this.width+this.height)};_ds.f.aspectRatio=function(){return this.width/this.height};_ds.f.RN=function(){return!(this.width*this.height)};_ds.f.ceil=function(){this.width=Math.ceil(this.width);this.height=Math.ceil(this.height);return this};_ds.f.WE=function(a){return this.width<=a.width&&this.height<=a.height}; +_ds.f.floor=function(){this.width=Math.floor(this.width);this.height=Math.floor(this.height);return this};_ds.f.round=function(){this.width=Math.round(this.width);this.height=Math.round(this.height);return this};_ds.f.vfa=function(a){a=this.aspectRatio()<=a.aspectRatio()?a.width/this.width:a.height/this.height;return Ag(this,a)};_ds.f.wfa=function(a){a=this.aspectRatio()>a.aspectRatio()?a.width/this.width:a.height/this.height;return Ag(this,a)};var Jg={cellpadding:"cellPadding",cellspacing:"cellSpacing",colspan:"colSpan",frameborder:"frameBorder",height:"height",maxlength:"maxLength",nonce:"nonce",role:"role",rowspan:"rowSpan",type:"type",usemap:"useMap",valign:"vAlign",width:"width"},xh={SCRIPT:1,STYLE:1,HEAD:1,IFRAME:1,OBJECT:1},yh={IMG:" ",BR:"\n"};_ds.f=_ds.Bg.prototype;_ds.f.sN=_ds.Eg;_ds.f.Bha=function(a){this.h=a};_ds.f.getElement=function(a){return Fg(this.h,a)};_ds.f.cL=function(a){return Fg(this.h,a)};_ds.f.Ep=_ds.Bg.prototype.getElement; +_ds.f.getElementsByTagName=function(a,b){return(b||this.h).getElementsByTagName(String(a))};_ds.f.pm=function(a,b,c){return Ig(this.h,a,b,c)};_ds.f.uH=function(a,b,c){return Gg(this.h,a,b,c)};_ds.f.tN=function(a,b){return Hg(a,b||this.h)};_ds.f.Fp=_ds.Bg.prototype.pm;_ds.f.Xka=Kg; +_ds.f.rH=function(){var a=_ds.Dh(this),b=a.document;var c=0;if(b){c=b.body;var d=b.documentElement;if(d&&c)if(a=_ds.Mg(a).height,_ds.Lg(b)&&d.scrollHeight)c=d.scrollHeight!=a?d.scrollHeight:d.offsetHeight;else{b=d.scrollHeight;var e=d.offsetHeight;d.clientHeight!=e&&(b=c.scrollHeight,e=c.offsetHeight);c=b>a?b>e?b:e:b2*this.m&&Oh(this),!0):!1};_ds.f.get=function(a,b){return Nh(this.h,a)?this.h[a]:b};_ds.f.set=function(a,b){Nh(this.h,a)||(this.m++,this.j.push(a),this.o++);this.h[a]=b};_ds.f.forEach=function(a,b){for(var c=this.sb(),d=0;d=d.j.length)throw Hh;var g=d.j[b++];return a?g:d.h[g]};return e};var Xh;_ds.fi=/^(?:([^:/?#.]+):)?(?:\/\/(?:([^\\/?#]*)@)?([^\\/?#]*?)(?::([0-9]+))?(?=[\\/?#]|$))?([^?#]+)?(?:\?([^#]*))?(?:#([\s\S]*))?$/;_ds.Wh=/#|$/;Xh=/[?&]($|#)/;_ds.f=_ds.Zh.prototype;_ds.f.toString=function(){var a=[],b=this.C;b&&a.push(ji(b,px,!0),":");var c=this.j;if(c||"file"==b)a.push("//"),(b=this.H)&&a.push(ji(b,px,!0),"@"),a.push(encodeURIComponent(String(c)).replace(/%25([0-9a-fA-F]{2})/g,"%$1")),c=this.m,null!=c&&a.push(":",String(c));if(c=this.o)this.j&&"/"!=c.charAt(0)&&a.push("/"),a.push(ji(c,"/"==c.charAt(0)?qx:rx,!0));(c=this.h.toString())&&a.push("?",c);(c=this.F)&&a.push("#",ji(c,sx));return a.join("")}; +_ds.f.resolve=function(a){var b=new _ds.Zh(this),c=!!a.C;c?_ds.$h(b,a.C):c=!!a.H;if(c){var d=a.H;ai(b);b.H=d}else c=!!a.j;c?_ds.bi(b,a.j):c=null!=a.m;d=a.o;if(c)_ds.ci(b,a.m);else if(c=!!a.o){if("/"!=d.charAt(0))if(this.j&&!this.o)d="/"+d;else{var e=b.o.lastIndexOf("/");-1!=e&&(d=b.o.substr(0,e+1)+d)}e=d;if(".."==e||"."==e)d="";else if(_ds.yc(e,"./")||_ds.yc(e,"/.")){d=0==e.lastIndexOf("/",0);e=e.split("/");for(var g=[],k=0;kthis.h&&(this.h++,a.next=this.j,this.j=a)};fj.prototype.D=function(){return this.h};var qj;ij.prototype.add=function(a,b){var c=rj.get();c.set(a,b);this.j?this.j.next=c:this.h=c;this.j=c};ij.prototype.remove=function(){var a=null;this.h&&(a=this.h,this.h=this.h.next,this.h||(this.j=null),a.next=null);return a};var rj=new fj(function(){return new jj},function(a){return a.reset()});jj.prototype.set=function(a,b){this.h=a;this.scope=b;this.next=null};jj.prototype.reset=function(){this.next=this.scope=this.h=null};var kj,mj=!1,nj=new ij;vj.prototype.reset=function(){this.o=this.j=this.C=this.h=null;this.m=!1};var wj=new fj(function(){return new vj},function(a){a.reset()});_ds.uj.prototype.then=function(a,b,c){return _ds.Ej(this,"function"===typeof a?a:null,"function"===typeof b?b:null,c)};_ds.uj.prototype.$goog_Thenable=!0;_ds.f=_ds.uj.prototype;_ds.f.Mna=function(a,b){a=xj(a,a,b);a.m=!0;Cj(this,a);return this};_ds.f.cancel=function(a){if(0==this.h){var b=new Dj(a);oj(function(){yj(this,b)},this)}}; +_ds.f.wp=function(a){this.h=0;_ds.tj(this,2,a)};_ds.f.xp=function(a){this.h=0;_ds.tj(this,3,a)};_ds.f.cm=function(){for(var a;a=zj(this);)Aj(this,a,this.h,this.F);this.D=!1};_ds.f.Gs=function(){};_ds.f.yt=function(){};var Ij=hj;_ds.F(Dj,zb);Dj.prototype.name="cancel";_ds.F(_ds.Jj,_ds.dj);_ds.f=_ds.Jj.prototype;_ds.f.Xb=!1;_ds.f.wb=null;_ds.f.rp=function(){if(this.Xb){var a=_ds.wb()-this.o;0=this.left&&a.right<=this.right&&a.top>=this.top&&a.bottom<=this.bottom:a.x>=this.left&&a.x<=this.right&&a.y>=this.top&&a.y<=this.bottom:!1}; +_ds.f.AN=function(a,b,c,d){_ds.mb(a)?(this.top-=a.top,this.right+=a.right,this.bottom+=a.bottom,this.left-=a.left):(this.top-=a,this.right+=Number(b),this.bottom+=Number(c),this.left-=Number(d));return this};_ds.f.sE=function(a){this.left=Math.min(this.left,a.left);this.top=Math.min(this.top,a.top);this.right=Math.max(this.right,a.right);this.bottom=Math.max(this.bottom,a.bottom)}; +_ds.f.tE=function(a){this.top=Math.min(this.top,a.y);this.right=Math.max(this.right,a.x);this.bottom=Math.max(this.bottom,a.y);this.left=Math.min(this.left,a.x)};_ds.f.ceil=function(){this.top=Math.ceil(this.top);this.right=Math.ceil(this.right);this.bottom=Math.ceil(this.bottom);this.left=Math.ceil(this.left);return this};_ds.f.floor=function(){this.top=Math.floor(this.top);this.right=Math.floor(this.right);this.bottom=Math.floor(this.bottom);this.left=Math.floor(this.left);return this}; +_ds.f.round=function(){this.top=Math.round(this.top);this.right=Math.round(this.right);this.bottom=Math.round(this.bottom);this.left=Math.round(this.left);return this};_ds.f.JN=function(a,b){a instanceof _ds.wg?(this.left+=a.x,this.right+=a.x,this.top+=a.y,this.bottom+=a.y):(this.left+=a,this.right+=a,"number"===typeof b&&(this.top+=b,this.bottom+=b));return this};_ds.f.FN=function(a,b){b="number"===typeof b?b:a;this.left*=a;this.right*=a;this.top*=b;this.bottom*=b;return this};var ak,uk;ak={};_ds.ux=_ds.bk?"MozUserSelect":_ds.Qg||_ds.pr?"WebkitUserSelect":null;uk={thin:2,medium:4,thick:6};var Ek=[0,25,50,75,100];Ak.prototype.setup=function(){var a=this;this.Ka||(this.Ka=new Promise(function(b){a.Sc=b;Dk(a);Fk(a);wk(a);Bk(a);xk(a);zk(a)}));return this.Ka};Ak.prototype.scrollToAnchor=function(a){if(a){var b=_ds.Pg(document).x;a=_ds.jk(a);window.scrollTo(b,Math.floor(a.y)-(this.O+this.m-this.ya))}};Ak.prototype.dispose=function(){_ds.Wj(this.D);this.oa.disconnect()};_ds.Jk.prototype.Ma=function(){var a=this;return this.j?Promise.resolve():new Promise(function(b){var c=_ds.Sa.indexedDB.open("devsite-index-db",1);c.onsuccess=function(){a.h=c.result;a.j=!0;b()};c.onerror=function(d){throw Error(d);};c.onupgradeneeded=function(d){d=d.target.result.createObjectStore("userPreferences",{keyPath:"name"});d.createIndex("name","name",{unique:!0});d.createIndex("value","value",{unique:!1})}})}; +_ds.Jk.prototype.set=function(a,b){var c=this,d,e;return _ds.E(function(g){if(1==g.h)return _ds.u(g,c.Ma(),2);try{return d=c.h.transaction(["userPreferences"],"readwrite"),e={},d.objectStore("userPreferences").put((e.name=a,e.value=b,e)),g.return(new Promise(function(k){d.oncomplete=k}))}catch(k){console.warn(k)}_ds.v(g)})}; +_ds.Jk.prototype.get=function(a){var b=this,c,d;return _ds.E(function(e){if(1==e.h)return _ds.u(e,b.Ma(),2);try{return c=b.h.transaction(["userPreferences"],"readwrite"),d=c.objectStore("userPreferences").get(a),e.return(new Promise(function(g){d.onsuccess=function(){g(d.result?d.result.value:void 0)}}))}catch(g){console.warn(g)}_ds.v(e)})};_ds.F(_ds.Kk,_ds.jf);_ds.f=_ds.Kk.prototype;_ds.f.Y1=function(a){var b={action:_ds.rf(this,1,0),name:_ds.L(this,2),height:_ds.sf(this,3),width:_ds.sf(this,4),title:_ds.L(this,5),url:_ds.L(this,6),Vda:_ds.L(this,7),callback:_ds.L(this,8),eventName:_ds.L(this,9),lE:_ds.L(this,10)};a&&(b.M=this);return b}; +_ds.f.W1=function(){var a=new _ds.Ne;var b=_ds.rf(this,1,0);0!==b&&_ds.ef(a,1,b);b=this.getName();0 .devsite-apix,:not(#try-it) > #embedded-explorer,:not(#try-it):not(.devsite-apix) > .apis-explorer","devsite-apix"],["var.edit, pre var, var[scope]","devsite-var"],[".devsite-vplus","devsite-vplus"],["#gdf","devsite-forum"],[".replaceable-credential","devsite-credentials-dialog"],[".devsite-api-getstarted-widget","devsite-api-getstarted"],[".chrome-policies", +"cloudx-chrome-policies"],[".cloud-carousel","cloudx-carousel"],[".cloud-collapse","cloudx-collapse"],[".cloud-devices","cloudx-devices"],[".cloud-jump-menu","cloudx-jump-menu"],[".cloud-logo-tabs","cloudx-logo-tabs"],[".cloud-popup-instance:not(g)","cloudx-popup"],[".cloud-select-dropdown","cloudx-select-dropdown"],[".cloud-table-wrapper","cloudx-table"],[".cloud-tabs","cloudx-tabs"]]);var vx="onpointerover"in window?"pointerover":"mouseover",rl=["rec"];_ds.f=gl.prototype;_ds.f.registerIntersectionForElement=function(a,b,c,d){d=void 0===d?0:d;if(!this.D)throw Error("IntersectionObserver not supported");if(!b&&!c)throw Error("An enter or exit callback is required");if(this.C.has(a))throw Error("The element is already being observed.");this.C.set(a,{Wl:b,dm:c,threshold:d});this.D.observe(a)}; +_ds.f.intersectionEnterForElement=function(a,b){b=void 0===b?0:b;var c=this,d,e;return _ds.E(function(g){e=new Promise(function(k){d=k});c.registerIntersectionForElement(a,function(){c.unregisterIntersectionForElement(a);d()},null,b);return g.return(e)})};_ds.f.intersectionExitForElement=function(a){var b=this,c,d,e;return _ds.E(function(g){c=!1;e=new Promise(function(k){d=k});b.registerIntersectionForElement(a,function(){c=!0},function(){c&&(b.unregisterIntersectionForElement(a),d())});return g.return(e)})}; +_ds.f.unregisterIntersectionForElement=function(a){this.D.unobserve(a);this.C.delete(a)};_ds.f.interactionForElement=function(a,b){b=void 0===b?function(){}:b;var c=this,d,e,g;return _ds.E(function(k){e=new Promise(function(l){d=l});g=[_ds.eg(a,vx,function(l){c.unregisterInteractionForElement(a);b(l);d()}),_ds.eg(a,"focusin",function(l){c.unregisterInteractionForElement(a);b(l);d()})];c.F.set(a,g);return k.return(e)})}; +_ds.f.unregisterInteractionForElement=function(a){var b=this.F.get(a);b&&b.forEach(function(c){return void _ds.qg(c)});this.F.delete(a)};_ds.f.dispose=function(){_ds.Wj(this.m);this.j&&this.j.dispose();this.L&&this.L.dispose();this.K&&this.K.disconnect();this.D&&this.D.disconnect();for(var a=_ds.n(this.F.values()),b=a.next();!b.done;b=a.next())b.value.forEach(function(c){return void _ds.qg(c)});this.F.clear();this.C.clear();_ds.Ai(_ds.zi().href,!0,!1,this.H.x,this.H.y)};_ds.f.whenReady=function(){return __devsiteAppReadyPromise}; +_ds.f.hasFlagAccess=function(a){var b=_ds.zi();b=new _ds.Zh(b.href);var c=Object.keys(Iw);if("PROD"!==this.getEnv()){c=_ds.n(c);for(var d=c.next();!d.done;d=c.next())if(d=d.value,Iw[d]===a&&(d=_ds.mi(b,d),void 0!==d)){if("true"===d)return!0;if("false"===d)return!1}}return Array.from(_ds.I(this.h,13)).includes(a)}; +_ds.f.getEnv=function(){return _ds.uf(this.h,11)?"PROD":document.location.hostname.endsWith(".devsite.corp.google.com")||document.location.hostname.endsWith("devsite-v2-staging.googleplex.com")?"STAGE":"DEV"};_ds.f.getStaticPath=function(a){return(void 0===a?0:a)?_ds.L(this.h,6):_ds.L(this.h,5)};_ds.f.getTenantId=function(){return this.h.getTenantId()};_ds.f.getLocale=function(){return this.h.getLocale()&&"en"!==this.h.getLocale()?this.h.getLocale():""}; +_ds.f.od=function(){return this.Ka?this.Ka.od():_ds.uf(this.h,8)};_ds.f.getInsecureHost=function(){if(this.ea)return this.ea.origin};_ds.f.appNeedsRefresh=function(a){this.ya=!0;(void 0===a?0:a)&&this.N&&(a=Vi(3),this.N.sendMessage(a))};_ds.f.showLoading=function(a){var b=this;if(!this.G){var c=document.querySelector("#app-progress");c&&(this.G=window.setTimeout(function(){c.setAttribute("type","indeterminate");b.G=0},void 0===a?0:a))}}; +_ds.f.hideLoading=function(){window.clearTimeout(this.G);this.G=0;var a=document.querySelector("#app-progress");a&&a.removeAttribute("type")}; +_ds.f.scrollToAnchor=function(a,b){b=void 0===b?!1:b;var c=this,d,e,g,k,l,m,p,q;return _ds.E(function(r){switch(r.h){case 1:d=_ds.Pg(document).x;a=a.trim();if(0===a.length||"#"!==a[0])return r.return(!1);e=a.substr(1);if(""===e||"top_of_page"===e||"top"===e){window.scrollTo(d,0);r.J(2);break}return _ds.u(r,DevsiteApp.whenReady(),3);case 3:k=[e,decodeURI(e),e.replace(/%3C/g,"<").replace(/%3E/g,">")];l=_ds.n(k);for(m=l.next();!m.done;m=l.next()){p=m.value;try{if(g=document.querySelector('[id="'+p+'"],[name="'+ +p+'"]'))break}catch(w){}}if(!g)return r.return(!1);if(!c.j){r.J(2);break}return _ds.u(r,c.j.setup(),5);case 5:c.j.scrollToAnchor(g);case 2:return b&&(q=_ds.zi(),q.hash=a,_ds.Ai(q.href)),r.return(!0)}})};_ds.f.reload=function(){var a=_ds.zi();return this.fetchPage(a.href)}; +_ds.f.fetchPage=function(a,b){b=void 0===b?!0:b;var c=this,d,e,g,k,l,m,p;return _ds.E(function(q){switch(q.h){case 1:var r=document.querySelector("devsite-snackbar");r&&"error"===r.getAttribute("type")&&r.removeAttribute("type");c.showLoading(150);document.body.dispatchEvent(new CustomEvent("devsite-before-page-change",{bubbles:!0,cancelable:!1}));d=new URL(a,document.location.origin);if(d.origin!==document.location.origin)return _ds.Hd(d.href),q.return();e=d.href;g=new _ds.Zh(d.href);_ds.li(g,"partial", +"1");d.search=g.h.toString();b&&_ds.Ai(e,!1,!1);k=new Headers;k.append("X-DevSite-Partial-Request","1");c.Da||(c.Da=Ti(_ds.Fi,!0));_ds.x(q,2);return _ds.u(q,c.Da(d.href,{redirect:"manual",headers:k}),4);case 4:l=q.j;if(!l)throw Error("No response for "+d.href);var w=d.href;try{r=_ds.If(Nf,l)}catch(y){throw Error("Invalid proto returned for "+w);}return _ds.u(q,r,5);case 5:return m=q.j,_ds.u(q,ql(c,m),6);case 6:kl();ll(c);_ds.z(q,0);break;case 2:p=_ds.A(q),p instanceof Response&&"opaqueredirect"=== +p.type||200==p.status&&!p.headers.get("X-DevSite-Partial-Response")?_ds.Gd().location.reload():p instanceof Error?yl(c,p.message):yl(c,"Fetch failed for "+d.href),_ds.v(q)}})};gl.prototype.fetchPage=gl.prototype.fetchPage;gl.prototype.reload=gl.prototype.reload;gl.prototype.scrollToAnchor=gl.prototype.scrollToAnchor;gl.prototype.hideLoading=gl.prototype.hideLoading;gl.prototype.showLoading=gl.prototype.showLoading;gl.prototype.appNeedsRefresh=gl.prototype.appNeedsRefresh; +gl.prototype.getInsecureHost=gl.prototype.getInsecureHost;gl.prototype.getIsPageDirRoot=gl.prototype.od;gl.prototype.getLocale=gl.prototype.getLocale;gl.prototype.getTenantId=gl.prototype.getTenantId;gl.prototype.getStaticPath=gl.prototype.getStaticPath;gl.prototype.getEnv=gl.prototype.getEnv;gl.prototype.hasFlagAccess=gl.prototype.hasFlagAccess;gl.prototype.whenReady=gl.prototype.whenReady;gl.prototype.unregisterInteractionForElement=gl.prototype.unregisterInteractionForElement; +gl.prototype.interactionForElement=gl.prototype.interactionForElement;gl.prototype.unregisterIntersectionForElement=gl.prototype.unregisterIntersectionForElement;gl.prototype.intersectionExitForElement=gl.prototype.intersectionExitForElement;gl.prototype.intersectionEnterForElement=gl.prototype.intersectionEnterForElement;gl.prototype.registerIntersectionForElement=gl.prototype.registerIntersectionForElement;var nl=null;_ds.xb("DevsiteAppInit",function(a,b,c){Fl(a,b,c);a=nl;a.Xa||(a.Xa=ml(a,_ds.I(a.h,10)))});_ds.xb("DevsiteAppFrameboxInit",function(a,b){Fl(a,b);ol()});var wx=!/^\s*class\s*\{\s*\}\s*$/.test(function(){}.toString());/* + + Copyright (c) 2016 The Polymer Project Authors. All rights reserved. + This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt + The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt + The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt + Code distributed by Google as part of the polymer project is also + subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt +*/ +(function(){if(wx&&!HTMLElement.es5Shimmed&&void 0!==window.Reflect&&void 0!==window.customElements&&!window.customElements.polyfillWrapFlushCallback){var a=HTMLElement;window.HTMLElement=function(){return Reflect.construct(a,[],this.constructor)};HTMLElement.prototype=a.prototype;HTMLElement.prototype.constructor=HTMLElement;HTMLElement.es5Shimmed=!0;Object.setPrototypeOf(HTMLElement,a)}})();_ds.t(_ds.R,HTMLElement);_ds.R.prototype.updateContent=function(){console.warn(this.tagName,"has not implemented the updateContent method.")};_ds.f=_ds.Il.prototype; +_ds.f.set=function(a,b,c){var d=!1;if("object"===typeof c){var e=c.ufa;d=c.Cfa||!1;var g=c.domain||void 0;var k=c.path||void 0;var l=c.ub}if(/[;=\s]/.test(a))throw Error('Invalid cookie name "'+a+'"');if(/[;\r\n]/.test(b))throw Error('Invalid cookie value "'+b+'"');void 0===l&&(l=-1);this.h.cookie=a+"="+b+(g?";domain="+g:"")+(k?";path="+k:"")+(0>l?"":0==l?";expires="+(new Date(1970,1,1)).toUTCString():";expires="+(new Date(Date.now()+1E3*l)).toUTCString())+(d?";secure":"")+(null!=e?";samesite="+e: +"")};_ds.f.get=function(a,b){for(var c=a+"=",d=(this.h.cookie||"").split(";"),e=0,g;e=c.length)throw Hh;var e=c.key(b++);if(a)return e;e=c.getItem(e);if("string"!==typeof e)throw"Storage mechanism: Invalid value was encountered";return e};return d};_ds.f.clear=function(){this.h.clear()};_ds.f.key=function(a){return this.h.key(a)};_ds.f=_ds.Ol.prototype;_ds.f.tf=0;_ds.f.uf=0;_ds.f.reset=function(){this.h=this.j=this.m;this.uf=this.tf=0};_ds.f.YF=function(){return this.tf};_ds.f.gH=function(){return this.uf};_ds.f.sD=function(){this.h=Math.max(this.m,this.h/2);this.j=Math.max(this.m,this.h+(this.o?Math.round(this.o*(Math.random()-.5)*2*this.h):0));this.uf++};_ds.t(Rl,Error);_ds.t(Tl,Error);_ds.t(Ul,Error);_ds.t(Vl,Error);_ds.t(_ds.Wl,Error);_ds.t(Sl,Error);/* + Portions of this code are from MochiKit, received by + The Closure Authors under the MIT license. All other code is Copyright + 2005-2009 The Closure Authors. All Rights Reserved. +*/ +_ds.f=Xl.prototype;_ds.f.cancel=function(a){if(this.h)this.m instanceof Xl&&this.m.cancel();else{if(this.j){var b=this.j;delete this.j;a?b.cancel(a):(b.C--,0>=b.C&&b.cancel())}this.L?this.L.call(this.K,this):this.G=!0;this.h||this.le(new om(this))}};_ds.f.Jh=function(a,b){this.H=!1;Zl(this,a,b)};_ds.f.callback=function(a){am(this);Zl(this,!0,a)};_ds.f.le=function(a){am(this);Zl(this,!1,a)};_ds.f.Ct=function(){};_ds.f.Pr=function(a,b){return bm(this,null,a,b)}; +_ds.f.Er=function(a,b){return bm(this,a,a,b)};_ds.f.Tr=function(a,b){return bm(this,a,function(c){var d=a.call(this,c);if(void 0===d)throw c;return d},b)};_ds.f.then=function(a,b,c){var d,e,g=new _ds.uj(function(k,l){d=k;e=l});bm(this,d,function(k){k instanceof om?g.cancel():e(k)});return g.then(a,b,c)};Xl.prototype.$goog_Thenable=!0;Xl.prototype.Y=function(a){return a instanceof Xl?jm(this,(0,_ds.tb)(a.O,a)):jm(this,function(){return a})}; +Xl.prototype.O=function(a){var b=new Xl;bm(this,b.callback,b.le,b);a&&(b.j=this,this.C++);return b};Xl.prototype.W=function(){return this.h&&!this.o?this.m:void 0};_ds.F($l,zb);$l.prototype.message="Deferred has already fired";$l.prototype.name="AlreadyCalledError";_ds.F(om,zb);om.prototype.message="Deferred was canceled";om.prototype.name="CanceledError";nm.prototype.m=function(){delete mm[this.h];throw this.j;};var mm={};_ds.F(rm,zb);var um=null,ym=new WeakMap;Qm.prototype.send=function(a,b){Nm(a);return Wm(this,a).then(function(c){if(b){var d=new b;c=null==c?d:Mm(c,Gm,Hm,Im,b)}return c})};_ds.t(Rm,Qm);Rm.prototype.H=function(a){this.m=a};Rm.prototype.F=function(a){var b=this;return Tm(this).then(function(c){return _ds.Q(b,function e(){var g=this,k,l,m,p,q;return _ds.C(e,function(r){if(1==r.h)return void 0===g.h.Yf?r.J(2):_ds.u(r,zm(c,g.h.Yf),2);Sm(g,c);k=c.client.newBatch();l=_ds.n(a);for(m=l.next();!m.done;m=l.next())p=m.value,q=c.client.request(Vm(g,p)),k.add(q);return r.return(Ym(k))})})})};_ds.Zm.prototype.F=function(a){this.config.accessToken=a};_ds.fa.Object.defineProperties(_ds.Zm.prototype,{h:{configurable:!0,enumerable:!0,get:function(){return this.config.useFirstPartyAuth?new Rm(this.config.serviceEndpoint,this.config.apiKey,{"client/cors":!0,"googleapis.config/auth/useFirstPartyAuth":!0,"googleapis.config/auth/useFirstPartyAuthV2":!0}):new Rm(this.config.serviceEndpoint,this.config.apiKey,{"client/cors":!0})}}});_ds.t(dn,an);dn.prototype.m=function(a){throw Error(a.path+" request must be a MultipartRequest");};var yx={zk:"GIVEN",Hk:"REVOKED",hh:"UNKNOWN",Yk:"UNVALIDATED",values:function(){return[yx.hh,yx.zk,yx.Hk,yx.Yk]}},zx={Md:"PRIVATE",ad:"PROMOTED",bd:"PUBLIC",Nd:"VISIBILITY_UNKNOWN",values:function(){return[zx.Nd,zx.Md,zx.bd,zx.ad]}},Ax={Qe:"CODELAB",Ye:"PAGE",Ze:"PLAYLIST",bf:"QUIZ",Gk:"REFTYPE_UNKNOWN",values:function(){return[Ax.Gk,Ax.Ze,Ax.Qe,Ax.bf,Ax.Ye]}},ap={Md:"PRIVATE",ad:"PROMOTED",bd:"PUBLIC",Nd:"VISIBILITY_UNKNOWN",values:function(){return[ap.Nd,ap.Md,ap.bd,ap.ad]}},Bx={Re:"COMPLETED", +Ve:"FAILED",cf:"SKIPPED",df:"STARTED",ef:"UNDEFINED_STATE",values:function(){return[Bx.ef,Bx.df,Bx.Re,Bx.Ve,Bx.cf]}},Cx={Ja:"DISABLED",Ca:"ENABLED",Pa:"OPT_OUT_SETTING_UNDEFINED",values:function(){return[Cx.Pa,Cx.Ja,Cx.Ca]}},xp={Yc:"CREATION_METHOD_UNKNOWN",Zc:"FASTTRACK",xc:"PROFILE_WIZARD",values:function(){return[xp.Yc,xp.Zc,xp.xc]}},zp={Ja:"DISABLED",Ca:"ENABLED",Pa:"OPT_OUT_SETTING_UNDEFINED",values:function(){return[zp.Pa,zp.Ja,zp.Ca]}},Ap={Ja:"DISABLED",Ca:"ENABLED",Pa:"OPT_OUT_SETTING_UNDEFINED", +values:function(){return[Ap.Pa,Ap.Ja,Ap.Ca]}},Dx={qk:"ELIGIBILITY_ELIGIBLE",rk:"ELIGIBILITY_NOT_ELIGIBLE",Ld:"ELIGIBILITY_UNKNOWN",values:function(){return[Dx.Ld,Dx.qk,Dx.rk]}},Ex={Ld:"ELIGIBILITY_UNKNOWN",Ug:"ELIGIBLE",$g:"NOT_ELIGIBLE_ADMIN_DISABLED",ah:"NOT_ELIGIBLE_NON_GMAIL",values:function(){return[Ex.Ld,Ex.Ug,Ex.ah,Ex.$g]}},Fx={Ja:"DISABLED",Ca:"ENABLED",Pa:"OPT_OUT_SETTING_UNDEFINED",values:function(){return[Fx.Pa,Fx.Ja,Fx.Ca]}},yp={Me:"ACKNOWLEDGE_STATE_UNSPECIFIED",$c:"NOT_SEEN",jc:"SEEN", +values:function(){return[yp.Me,yp.$c,yp.jc]}},Gx={Ja:"DISABLED",Ca:"ENABLED",Pa:"OPT_OUT_SETTING_UNDEFINED",values:function(){return[Gx.Pa,Gx.Ja,Gx.Ca]}},Hx={Ja:"DISABLED",Ca:"ENABLED",Pa:"OPT_OUT_SETTING_UNDEFINED",values:function(){return[Hx.Pa,Hx.Ja,Hx.Ca]}},Ix={Qe:"CODELAB",Ye:"PAGE",Ze:"PLAYLIST",bf:"QUIZ",Wk:"UNDEFINED_TYPE",al:"YOUTUBE",values:function(){return[Ix.Wk,Ix.Ze,Ix.Qe,Ix.bf,Ix.al,Ix.Ye]}},Jx={Fk:"RATING_STATE_UNKNOWN",Tk:"THUMBS_DOWN",Uk:"THUMBS_UP",values:function(){return[Jx.Fk, +Jx.Uk,Jx.Tk]}},Kx={Ik:"SAVED",Jk:"SAVE_STATE_UNKNOWN",Xk:"UNSAVED",values:function(){return[Kx.Jk,Kx.Xk,Kx.Ik]}},Lx={Re:"COMPLETED",Ve:"FAILED",cf:"SKIPPED",df:"STARTED",ef:"UNDEFINED_STATE",values:function(){return[Lx.ef,Lx.df,Lx.Re,Lx.Ve,Lx.cf]}},Mx={fk:"AWARD",gk:"AWARD_ACTION_UNKNOWN",Zk:"UPDATED",values:function(){return[Mx.gk,Mx.fk,Mx.Zk]}},Nx={hk:"CAROTENE_CONTENT_TYPE",xk:"EXTERNAL_CONTENT",Vk:"UNDEFINED_CONTENT_TYPE",bl:"YOUTUBE_CONTENT_TYPE",values:function(){return[Nx.Vk,Nx.hk,Nx.bl,Nx.xk]}}, +Ox={Ne:"ALLOWED",Te:"DATA_SHARING_SETTING_UNDEFINED",$e:"PROHIBITED",values:function(){return[Ox.Te,Ox.$e,Ox.Ne]}},Px={Ne:"ALLOWED",Te:"DATA_SHARING_SETTING_UNDEFINED",$e:"PROHIBITED",values:function(){return[Px.Te,Px.$e,Px.Ne]}},Qx={Ja:"DISABLED",Ca:"ENABLED",Pa:"OPT_OUT_SETTING_UNDEFINED",values:function(){return[Qx.Pa,Qx.Ja,Qx.Ca]}},Rx={Yc:"CREATION_METHOD_UNKNOWN",Zc:"FASTTRACK",xc:"PROFILE_WIZARD",values:function(){return[Rx.Yc,Rx.Zc,Rx.xc]}},Ep={Me:"ACKNOWLEDGE_STATE_UNSPECIFIED",$c:"NOT_SEEN", +jc:"SEEN",values:function(){return[Ep.Me,Ep.$c,Ep.jc]}},Dp={Ja:"DISABLED",Ca:"ENABLED",Pa:"OPT_OUT_SETTING_UNDEFINED",values:function(){return[Dp.Pa,Dp.Ja,Dp.Ca]}},Cp={Ja:"DISABLED",Ca:"ENABLED",Pa:"OPT_OUT_SETTING_UNDEFINED",values:function(){return[Cp.Pa,Cp.Ja,Cp.Ca]}};_ds.t(gn,Cm);gn.prototype.V=function(){return gn};gn.prototype.T=function(){return{keys:["configVersion","values"],Zi:{values:{fe:jn,Sm:!1,Um:!0,Vm:!1}}}}; +_ds.fa.Object.defineProperties(gn.prototype,{mc:{configurable:!0,enumerable:!0,get:function(){return U(this,"configVersion")?S(this,"configVersion"):0},set:function(a){this.v.configVersion=a}},values:{configurable:!0,enumerable:!0,get:function(){return U(this,"values")?S(this,"values"):null},set:function(a){this.v.values=a}}});_ds.t(hn,Cm);hn.prototype.V=function(){return hn};hn.prototype.T=function(){return{keys:["a","b","g","r"]}}; +_ds.fa.Object.defineProperties(hn.prototype,{a:{configurable:!0,enumerable:!0,get:function(){return U(this,"a")?S(this,"a"):0},set:function(a){this.v.a=a}},b:{configurable:!0,enumerable:!0,get:function(){return U(this,"b")?S(this,"b"):0},set:function(a){this.v.b=a}},Zh:{configurable:!0,enumerable:!0,get:function(){return U(this,"g")?S(this,"g"):0},set:function(a){this.v.g=a}},r:{configurable:!0,enumerable:!0,get:function(){return U(this,"r")?S(this,"r"):0},set:function(a){this.v.r=a}}}); +_ds.t(jn,Cm);jn.prototype.V=function(){return jn};jn.prototype.T=function(){return{keys:["colorValue","floatValue","stringValue"],va:{colorValue:hn}}}; +_ds.fa.Object.defineProperties(jn.prototype,{Gh:{configurable:!0,enumerable:!0,get:function(){return U(this,"colorValue")?S(this,"colorValue"):null},set:function(a){this.v.colorValue=a}},Wh:{configurable:!0,enumerable:!0,get:function(){return U(this,"floatValue")?S(this,"floatValue"):0},set:function(a){this.v.floatValue=a}},stringValue:{configurable:!0,enumerable:!0,get:function(){return U(this,"stringValue")?S(this,"stringValue"):""},set:function(a){this.v.stringValue=a}}});_ds.t(kn,Cm); +kn.prototype.V=function(){return kn};kn.prototype.T=function(){return{hb:{state:yx,visibility:zx},keys:"awardId badge createTime creationTime currentTier description imageUrl obfuscatedProfileId originalObfuscatedGaiaId promotedPosition state title visibility".split(" "),va:{badge:ln,currentTier:An}}}; +_ds.fa.Object.defineProperties(kn.prototype,{awardId:{configurable:!0,enumerable:!0,get:function(){return U(this,"awardId")?S(this,"awardId"):""},set:function(a){this.v.awardId=a}},badge:{configurable:!0,enumerable:!0,get:function(){return U(this,"badge")?S(this,"badge"):null},set:function(a){this.v.badge=a}},createTime:{configurable:!0,enumerable:!0,get:function(){return U(this,"createTime")?S(this,"createTime"):""},set:function(a){this.v.createTime=a}},creationTime:{configurable:!0,enumerable:!0, +get:function(){return U(this,"creationTime")?S(this,"creationTime"):"0"},set:function(a){this.v.creationTime=a}},Nh:{configurable:!0,enumerable:!0,get:function(){return U(this,"currentTier")?S(this,"currentTier"):null},set:function(a){this.v.currentTier=a}},description:{configurable:!0,enumerable:!0,get:function(){return U(this,"description")?S(this,"description"):""},set:function(a){this.v.description=a}},imageUrl:{configurable:!0,enumerable:!0,get:function(){return U(this,"imageUrl")?S(this,"imageUrl"): +""},set:function(a){this.v.imageUrl=a}},obfuscatedProfileId:{configurable:!0,enumerable:!0,get:function(){return U(this,"obfuscatedProfileId")?S(this,"obfuscatedProfileId"):""},set:function(a){this.v.obfuscatedProfileId=a}},lj:{configurable:!0,enumerable:!0,get:function(){return U(this,"originalObfuscatedGaiaId")?S(this,"originalObfuscatedGaiaId"):""},set:function(a){this.v.originalObfuscatedGaiaId=a}},promotedPosition:{configurable:!0,enumerable:!0,get:function(){return U(this,"promotedPosition")? +S(this,"promotedPosition"):0},set:function(a){this.v.promotedPosition=a}},state:{configurable:!0,enumerable:!0,get:function(){return U(this,"state")?S(this,"state"):null},set:function(a){this.v.state=a}},title:{configurable:!0,enumerable:!0,get:function(){return U(this,"title")?S(this,"title"):""},set:function(a){this.v.title=a}},visibility:{configurable:!0,enumerable:!0,get:function(){return U(this,"visibility")?S(this,"visibility"):null},set:function(a){this.v.visibility=a}}}); +_ds.fa.Object.defineProperties(kn,{State:{configurable:!0,enumerable:!0,get:function(){return yx}},h:{configurable:!0,enumerable:!0,get:function(){return zx}}});_ds.t(ln,Cm);ln.prototype.V=function(){return ln};ln.prototype.T=function(){return{Wa:{awardedBy:mn,tiers:An},keys:"allowFrontend awardedBy childBadges description id imageUrl parentBadge sharing tiers title".split(" "),va:{id:_ds.no,sharing:zn}}}; +_ds.fa.Object.defineProperties(ln.prototype,{jh:{configurable:!0,enumerable:!0,get:function(){return U(this,"allowFrontend")?S(this,"allowFrontend"):!1},set:function(a){this.v.allowFrontend=a}},kf:{configurable:!0,enumerable:!0,get:function(){return U(this,"awardedBy")?S(this,"awardedBy"):[]},set:function(a){this.v.awardedBy=a}},qf:{configurable:!0,enumerable:!0,get:function(){return U(this,"childBadges")?S(this,"childBadges"):[]},set:function(a){this.v.childBadges=a}},description:{configurable:!0, +enumerable:!0,get:function(){return U(this,"description")?S(this,"description"):""},set:function(a){this.v.description=a}},id:{configurable:!0,enumerable:!0,get:function(){return U(this,"id")?S(this,"id"):null},set:function(a){this.v.id=a}},imageUrl:{configurable:!0,enumerable:!0,get:function(){return U(this,"imageUrl")?S(this,"imageUrl"):""},set:function(a){this.v.imageUrl=a}},fg:{configurable:!0,enumerable:!0,get:function(){return U(this,"parentBadge")?S(this,"parentBadge"):""},set:function(a){this.v.parentBadge= +a}},sharing:{configurable:!0,enumerable:!0,get:function(){return U(this,"sharing")?S(this,"sharing"):null},set:function(a){this.v.sharing=a}},tiers:{configurable:!0,enumerable:!0,get:function(){return U(this,"tiers")?S(this,"tiers"):[]},set:function(a){this.v.tiers=a}},title:{configurable:!0,enumerable:!0,get:function(){return U(this,"title")?S(this,"title"):""},set:function(a){this.v.title=a}}});_ds.t(mn,Cm);mn.prototype.V=function(){return mn}; +mn.prototype.T=function(){return{hb:{type:Ax},keys:["description","title","type","url"]}}; +_ds.fa.Object.defineProperties(mn.prototype,{description:{configurable:!0,enumerable:!0,get:function(){return U(this,"description")?S(this,"description"):""},set:function(a){this.v.description=a}},title:{configurable:!0,enumerable:!0,get:function(){return U(this,"title")?S(this,"title"):""},set:function(a){this.v.title=a}},type:{configurable:!0,enumerable:!0,get:function(){return U(this,"type")?S(this,"type"):null},set:function(a){this.v.type=a}},url:{configurable:!0,enumerable:!0,get:function(){return U(this, +"url")?S(this,"url"):""},set:function(a){this.v.url=a}}});_ds.fa.Object.defineProperties(mn,{h:{configurable:!0,enumerable:!0,get:function(){return Ax}}});_ds.t(nn,Cm);nn.prototype.V=function(){return nn};nn.prototype.T=function(){return{keys:["award","locale","walletId"],va:{award:kn}}}; +_ds.fa.Object.defineProperties(nn.prototype,{award:{configurable:!0,enumerable:!0,get:function(){return U(this,"award")?S(this,"award"):null},set:function(a){this.v.award=a}},locale:{configurable:!0,enumerable:!0,get:function(){return U(this,"locale")?S(this,"locale"):""},set:function(a){this.v.locale=a}},walletId:{configurable:!0,enumerable:!0,get:function(){return U(this,"walletId")?S(this,"walletId"):"0"},set:function(a){this.v.walletId=a}}});_ds.t(on,Cm);on.prototype.V=function(){return on}; +on.prototype.T=function(){return{keys:["award","awardId","badge"],va:{award:kn,badge:ln}}}; +_ds.fa.Object.defineProperties(on.prototype,{award:{configurable:!0,enumerable:!0,get:function(){return U(this,"award")?S(this,"award"):null},set:function(a){this.v.award=a}},awardId:{configurable:!0,enumerable:!0,get:function(){return U(this,"awardId")?S(this,"awardId"):""},set:function(a){this.v.awardId=a}},badge:{configurable:!0,enumerable:!0,get:function(){return U(this,"badge")?S(this,"badge"):null},set:function(a){this.v.badge=a}}});_ds.t(pn,Cm);pn.prototype.V=function(){return pn}; +pn.prototype.T=function(){return{keys:["badgeId","locale"],va:{badgeId:_ds.no}}};_ds.fa.Object.defineProperties(pn.prototype,{Tb:{configurable:!0,enumerable:!0,get:function(){return U(this,"badgeId")?S(this,"badgeId"):null},set:function(a){this.v.badgeId=a}},locale:{configurable:!0,enumerable:!0,get:function(){return U(this,"locale")?S(this,"locale"):""},set:function(a){this.v.locale=a}}});_ds.t(qn,Cm);qn.prototype.V=function(){return qn}; +qn.prototype.T=function(){return{keys:["award","awardId","badge"],va:{award:kn,badge:ln}}}; +_ds.fa.Object.defineProperties(qn.prototype,{award:{configurable:!0,enumerable:!0,get:function(){return U(this,"award")?S(this,"award"):null},set:function(a){this.v.award=a}},awardId:{configurable:!0,enumerable:!0,get:function(){return U(this,"awardId")?S(this,"awardId"):""},set:function(a){this.v.awardId=a}},badge:{configurable:!0,enumerable:!0,get:function(){return U(this,"badge")?S(this,"badge"):null},set:function(a){this.v.badge=a}}});_ds.t(rn,Cm);rn.prototype.V=function(){return rn}; +rn.prototype.T=function(){return{keys:[]}};_ds.t(sn,Cm);sn.prototype.V=function(){return sn};sn.prototype.T=function(){return{keys:["walletId"]}};_ds.fa.Object.defineProperties(sn.prototype,{walletId:{configurable:!0,enumerable:!0,get:function(){return U(this,"walletId")?S(this,"walletId"):"0"},set:function(a){this.v.walletId=a}}});_ds.t(tn,Cm);tn.prototype.V=function(){return tn};tn.prototype.T=function(){return{keys:["award"],va:{award:kn}}}; +_ds.fa.Object.defineProperties(tn.prototype,{award:{configurable:!0,enumerable:!0,get:function(){return U(this,"award")?S(this,"award"):null},set:function(a){this.v.award=a}}});_ds.t(un,Cm);un.prototype.V=function(){return un};un.prototype.T=function(){return{Wa:{awards:kn},keys:["awards"]}};_ds.fa.Object.defineProperties(un.prototype,{eb:{configurable:!0,enumerable:!0,get:function(){return U(this,"awards")?S(this,"awards"):[]},set:function(a){this.v.awards=a}}});_ds.t(_ds.vn,Cm); +_ds.vn.prototype.V=function(){return _ds.vn};_ds.vn.prototype.T=function(){return{keys:["locale","walletCode"]}};_ds.fa.Object.defineProperties(_ds.vn.prototype,{locale:{configurable:!0,enumerable:!0,get:function(){return U(this,"locale")?S(this,"locale"):""},set:function(a){this.v.locale=a}},Tc:{configurable:!0,enumerable:!0,get:function(){return U(this,"walletCode")?S(this,"walletCode"):"0"},set:function(a){this.v.walletCode=a}}});_ds.t(wn,Cm);wn.prototype.V=function(){return wn}; +wn.prototype.T=function(){return{Wa:{awards:kn},keys:["awards"]}};_ds.fa.Object.defineProperties(wn.prototype,{eb:{configurable:!0,enumerable:!0,get:function(){return U(this,"awards")?S(this,"awards"):[]},set:function(a){this.v.awards=a}}});_ds.t(xn,Cm);xn.prototype.V=function(){return xn};xn.prototype.T=function(){return{hb:{visibility:ap},keys:["awardId","promotedPosition","visibility"]}}; +_ds.fa.Object.defineProperties(xn.prototype,{awardId:{configurable:!0,enumerable:!0,get:function(){return U(this,"awardId")?S(this,"awardId"):""},set:function(a){this.v.awardId=a}},promotedPosition:{configurable:!0,enumerable:!0,get:function(){return U(this,"promotedPosition")?S(this,"promotedPosition"):0},set:function(a){this.v.promotedPosition=a}},visibility:{configurable:!0,enumerable:!0,get:function(){return U(this,"visibility")?S(this,"visibility"):null},set:function(a){this.v.visibility=a}}}); +_ds.fa.Object.defineProperties(xn,{h:{configurable:!0,enumerable:!0,get:function(){return ap}}});_ds.t(yn,Cm);yn.prototype.V=function(){return yn};yn.prototype.T=function(){return{keys:[]}};_ds.t(zn,Cm);zn.prototype.V=function(){return zn};zn.prototype.T=function(){return{keys:["description","imageUrl","title"]}}; +_ds.fa.Object.defineProperties(zn.prototype,{description:{configurable:!0,enumerable:!0,get:function(){return U(this,"description")?S(this,"description"):""},set:function(a){this.v.description=a}},imageUrl:{configurable:!0,enumerable:!0,get:function(){return U(this,"imageUrl")?S(this,"imageUrl"):""},set:function(a){this.v.imageUrl=a}},title:{configurable:!0,enumerable:!0,get:function(){return U(this,"title")?S(this,"title"):""},set:function(a){this.v.title=a}}});_ds.t(An,Cm);An.prototype.V=function(){return An}; +An.prototype.T=function(){return{keys:["description","imageUrl","title"]}}; +_ds.fa.Object.defineProperties(An.prototype,{description:{configurable:!0,enumerable:!0,get:function(){return U(this,"description")?S(this,"description"):""},set:function(a){this.v.description=a}},imageUrl:{configurable:!0,enumerable:!0,get:function(){return U(this,"imageUrl")?S(this,"imageUrl"):""},set:function(a){this.v.imageUrl=a}},title:{configurable:!0,enumerable:!0,get:function(){return U(this,"title")?S(this,"title"):""},set:function(a){this.v.title=a}}});_ds.t(Bn,Cm);Bn.prototype.V=function(){return Bn}; +Bn.prototype.T=function(){return{Wa:{paths:Gn},keys:["paths"]}};_ds.fa.Object.defineProperties(Bn.prototype,{paths:{configurable:!0,enumerable:!0,get:function(){return U(this,"paths")?S(this,"paths"):[]},set:function(a){this.v.paths=a}}});_ds.t(Cn,Cm);Cn.prototype.V=function(){return Cn};Cn.prototype.T=function(){return{keys:["description","imageUrl","sharing","title","url"],va:{sharing:Kn}}}; +_ds.fa.Object.defineProperties(Cn.prototype,{description:{configurable:!0,enumerable:!0,get:function(){return U(this,"description")?S(this,"description"):""},set:function(a){this.v.description=a}},imageUrl:{configurable:!0,enumerable:!0,get:function(){return U(this,"imageUrl")?S(this,"imageUrl"):""},set:function(a){this.v.imageUrl=a}},sharing:{configurable:!0,enumerable:!0,get:function(){return U(this,"sharing")?S(this,"sharing"):null},set:function(a){this.v.sharing=a}},title:{configurable:!0,enumerable:!0, +get:function(){return U(this,"title")?S(this,"title"):""},set:function(a){this.v.title=a}},url:{configurable:!0,enumerable:!0,get:function(){return U(this,"url")?S(this,"url"):""},set:function(a){this.v.url=a}}});_ds.t(Dn,Cm);Dn.prototype.V=function(){return Dn};Dn.prototype.T=function(){return{Wa:{paths:Gn},keys:["paths"]}};_ds.fa.Object.defineProperties(Dn.prototype,{paths:{configurable:!0,enumerable:!0,get:function(){return U(this,"paths")?S(this,"paths"):[]},set:function(a){this.v.paths=a}}}); +_ds.t(En,Cm);En.prototype.V=function(){return En};En.prototype.T=function(){return{keys:["badge"],va:{badge:Cn}}};_ds.fa.Object.defineProperties(En.prototype,{badge:{configurable:!0,enumerable:!0,get:function(){return U(this,"badge")?S(this,"badge"):null},set:function(a){this.v.badge=a}}});_ds.t(Fn,Cm);Fn.prototype.V=function(){return Fn};Fn.prototype.T=function(){return{keys:[]}};_ds.t(Gn,Cm);Gn.prototype.V=function(){return Gn}; +Gn.prototype.T=function(){return{keys:"codelab description page playlist profileData quiz title url".split(" "),va:{codelab:En,page:Fn,playlist:Hn,profileData:In,quiz:Jn}}}; +_ds.fa.Object.defineProperties(Gn.prototype,{codelab:{configurable:!0,enumerable:!0,get:function(){return U(this,"codelab")?S(this,"codelab"):null},set:function(a){this.v.codelab=a}},description:{configurable:!0,enumerable:!0,get:function(){return U(this,"description")?S(this,"description"):""},set:function(a){this.v.description=a}},page:{configurable:!0,enumerable:!0,get:function(){return U(this,"page")?S(this,"page"):null},set:function(a){this.v.page=a}},playlist:{configurable:!0,enumerable:!0, +get:function(){return U(this,"playlist")?S(this,"playlist"):null},set:function(a){this.v.playlist=a}},profileData:{configurable:!0,enumerable:!0,get:function(){return U(this,"profileData")?S(this,"profileData"):null},set:function(a){this.v.profileData=a}},quiz:{configurable:!0,enumerable:!0,get:function(){return U(this,"quiz")?S(this,"quiz"):null},set:function(a){this.v.quiz=a}},title:{configurable:!0,enumerable:!0,get:function(){return U(this,"title")?S(this,"title"):""},set:function(a){this.v.title= +a}},url:{configurable:!0,enumerable:!0,get:function(){return U(this,"url")?S(this,"url"):""},set:function(a){this.v.url=a}}});_ds.t(Hn,Cm);Hn.prototype.V=function(){return Hn};Hn.prototype.T=function(){return{Wa:{learningActivities:Gn},keys:["badge","learningActivities","nextPath"],va:{badge:Cn}}}; +_ds.fa.Object.defineProperties(Hn.prototype,{badge:{configurable:!0,enumerable:!0,get:function(){return U(this,"badge")?S(this,"badge"):null},set:function(a){this.v.badge=a}},learningActivities:{configurable:!0,enumerable:!0,get:function(){return U(this,"learningActivities")?S(this,"learningActivities"):[]},set:function(a){this.v.learningActivities=a}},nextPath:{configurable:!0,enumerable:!0,get:function(){return U(this,"nextPath")?S(this,"nextPath"):[]},set:function(a){this.v.nextPath=a}}}); +_ds.t(In,Cm);In.prototype.V=function(){return In};In.prototype.T=function(){return{hb:{state:Bx},keys:["state","updateTime"]}};_ds.fa.Object.defineProperties(In.prototype,{state:{configurable:!0,enumerable:!0,get:function(){return U(this,"state")?S(this,"state"):null},set:function(a){this.v.state=a}},updateTime:{configurable:!0,enumerable:!0,get:function(){return U(this,"updateTime")?S(this,"updateTime"):""},set:function(a){this.v.updateTime=a}}}); +_ds.fa.Object.defineProperties(In,{State:{configurable:!0,enumerable:!0,get:function(){return Bx}}});_ds.t(Jn,Cm);Jn.prototype.V=function(){return Jn};Jn.prototype.T=function(){return{keys:["badge"],va:{badge:Cn}}};_ds.fa.Object.defineProperties(Jn.prototype,{badge:{configurable:!0,enumerable:!0,get:function(){return U(this,"badge")?S(this,"badge"):null},set:function(a){this.v.badge=a}}});_ds.t(Kn,Cm);Kn.prototype.V=function(){return Kn}; +Kn.prototype.T=function(){return{keys:["description","imageUrl","title"]}}; +_ds.fa.Object.defineProperties(Kn.prototype,{description:{configurable:!0,enumerable:!0,get:function(){return U(this,"description")?S(this,"description"):""},set:function(a){this.v.description=a}},imageUrl:{configurable:!0,enumerable:!0,get:function(){return U(this,"imageUrl")?S(this,"imageUrl"):""},set:function(a){this.v.imageUrl=a}},title:{configurable:!0,enumerable:!0,get:function(){return U(this,"title")?S(this,"title"):""},set:function(a){this.v.title=a}}});_ds.t(Ln,Cm);Ln.prototype.V=function(){return Ln}; +Ln.prototype.T=function(){return{keys:["qAndA","updateMask"]}};_ds.fa.Object.defineProperties(Ln.prototype,{qAndA:{configurable:!0,enumerable:!0,get:function(){return U(this,"qAndA")?S(this,"qAndA"):!1},set:function(a){this.v.qAndA=a}},updateMask:{configurable:!0,enumerable:!0,get:function(){return U(this,"updateMask")?S(this,"updateMask"):""},set:function(a){this.v.updateMask=a}}});_ds.t(Mn,Cm);Mn.prototype.V=function(){return Mn}; +Mn.prototype.T=function(){return{hb:{badgeEmailPreference:Cx,creationMethod:xp,feedbackEmailPreference:zp,newsletterEmailPreference:Ap},keys:"badgeEmailPreference creationMethod displayImage displayName eyckContainer feedbackEmailPreference gcloudDataOk gender language location newsletterEmailPreference organization originTenantId playStoreDataOk pronoun title walletId".split(" "),va:{eyckContainer:oo,location:to}}}; +_ds.fa.Object.defineProperties(Mn.prototype,{Sb:{configurable:!0,enumerable:!0,get:function(){return U(this,"badgeEmailPreference")?S(this,"badgeEmailPreference"):null},set:function(a){this.v.badgeEmailPreference=a}},creationMethod:{configurable:!0,enumerable:!0,get:function(){return U(this,"creationMethod")?S(this,"creationMethod"):null},set:function(a){this.v.creationMethod=a}},kd:{configurable:!0,enumerable:!0,get:function(){return U(this,"displayImage")?S(this,"displayImage"):""},set:function(a){this.v.displayImage= +a}},displayName:{configurable:!0,enumerable:!0,get:function(){return U(this,"displayName")?S(this,"displayName"):""},set:function(a){this.v.displayName=a}},Ha:{configurable:!0,enumerable:!0,get:function(){return U(this,"eyckContainer")?S(this,"eyckContainer"):null},set:function(a){this.v.eyckContainer=a}},feedbackEmailPreference:{configurable:!0,enumerable:!0,get:function(){return U(this,"feedbackEmailPreference")?S(this,"feedbackEmailPreference"):null},set:function(a){this.v.feedbackEmailPreference= +a}},ld:{configurable:!0,enumerable:!0,get:function(){return U(this,"gcloudDataOk")?S(this,"gcloudDataOk"):!1},set:function(a){this.v.gcloudDataOk=a}},md:{configurable:!0,enumerable:!0,get:function(){return U(this,"gender")?S(this,"gender"):""},set:function(a){this.v.gender=a}},language:{configurable:!0,enumerable:!0,get:function(){return U(this,"language")?S(this,"language"):""},set:function(a){this.v.language=a}},location:{configurable:!0,enumerable:!0,get:function(){return U(this,"location")?S(this, +"location"):null},set:function(a){this.v.location=a}},newsletterEmailPreference:{configurable:!0,enumerable:!0,get:function(){return U(this,"newsletterEmailPreference")?S(this,"newsletterEmailPreference"):null},set:function(a){this.v.newsletterEmailPreference=a}},organization:{configurable:!0,enumerable:!0,get:function(){return U(this,"organization")?S(this,"organization"):""},set:function(a){this.v.organization=a}},originTenantId:{configurable:!0,enumerable:!0,get:function(){return U(this,"originTenantId")? +S(this,"originTenantId"):"0"},set:function(a){this.v.originTenantId=a}},Ad:{configurable:!0,enumerable:!0,get:function(){return U(this,"playStoreDataOk")?S(this,"playStoreDataOk"):!1},set:function(a){this.v.playStoreDataOk=a}},pronoun:{configurable:!0,enumerable:!0,get:function(){return U(this,"pronoun")?S(this,"pronoun"):""},set:function(a){this.v.pronoun=a}},title:{configurable:!0,enumerable:!0,get:function(){return U(this,"title")?S(this,"title"):""},set:function(a){this.v.title=a}},walletId:{configurable:!0, +enumerable:!0,get:function(){return U(this,"walletId")?S(this,"walletId"):"0"},set:function(a){this.v.walletId=a}}});_ds.fa.Object.defineProperties(Mn,{h:{configurable:!0,enumerable:!0,get:function(){return Cx}},j:{configurable:!0,enumerable:!0,get:function(){return xp}},m:{configurable:!0,enumerable:!0,get:function(){return zp}},o:{configurable:!0,enumerable:!0,get:function(){return Ap}}});_ds.t(Nn,Cm);Nn.prototype.V=function(){return Nn}; +Nn.prototype.T=function(){return{keys:["obfuscatedProfileId","profile"],va:{profile:ro}}};_ds.fa.Object.defineProperties(Nn.prototype,{obfuscatedProfileId:{configurable:!0,enumerable:!0,get:function(){return U(this,"obfuscatedProfileId")?S(this,"obfuscatedProfileId"):""},set:function(a){this.v.obfuscatedProfileId=a}},profile:{configurable:!0,enumerable:!0,get:function(){return U(this,"profile")?S(this,"profile"):null},set:function(a){this.v.profile=a}}});_ds.t(On,Cm);On.prototype.V=function(){return On}; +On.prototype.T=function(){return{keys:[]}};_ds.t(Pn,Cm);Pn.prototype.V=function(){return Pn};Pn.prototype.T=function(){return{keys:["createProfile","qAndA"],va:{createProfile:Qn,qAndA:Qn}}}; +_ds.fa.Object.defineProperties(Pn.prototype,{createProfile:{configurable:!0,enumerable:!0,get:function(){return U(this,"createProfile")?S(this,"createProfile"):null},set:function(a){this.v.createProfile=a}},qAndA:{configurable:!0,enumerable:!0,get:function(){return U(this,"qAndA")?S(this,"qAndA"):null},set:function(a){this.v.qAndA=a}}});_ds.t(Qn,Cm);Qn.prototype.V=function(){return Qn};Qn.prototype.T=function(){return{hb:{status:Dx},keys:["ineligibleReason","status"]}}; +_ds.fa.Object.defineProperties(Qn.prototype,{ineligibleReason:{configurable:!0,enumerable:!0,get:function(){return U(this,"ineligibleReason")?S(this,"ineligibleReason"):""},set:function(a){this.v.ineligibleReason=a}},status:{configurable:!0,enumerable:!0,get:function(){return U(this,"status")?S(this,"status"):null},set:function(a){this.v.status=a}}});_ds.fa.Object.defineProperties(Qn,{h:{configurable:!0,enumerable:!0,get:function(){return Dx}}});_ds.t(Rn,Cm);Rn.prototype.V=function(){return Rn}; +Rn.prototype.T=function(){return{hb:{eligibility:Ex},keys:["eligibility","featureEligibility"],va:{featureEligibility:Pn}}};_ds.fa.Object.defineProperties(Rn.prototype,{zf:{configurable:!0,enumerable:!0,get:function(){return U(this,"eligibility")?S(this,"eligibility"):null},set:function(a){this.v.eligibility=a}},Ra:{configurable:!0,enumerable:!0,get:function(){return U(this,"featureEligibility")?S(this,"featureEligibility"):null},set:function(a){this.v.featureEligibility=a}}}); +_ds.fa.Object.defineProperties(Rn,{h:{configurable:!0,enumerable:!0,get:function(){return Ex}}});_ds.t(Sn,Cm);Sn.prototype.V=function(){return Sn};Sn.prototype.T=function(){return{keys:["obfuscatedProfileId","pendingFields","profile"],va:{profile:ro}}}; +_ds.fa.Object.defineProperties(Sn.prototype,{obfuscatedProfileId:{configurable:!0,enumerable:!0,get:function(){return U(this,"obfuscatedProfileId")?S(this,"obfuscatedProfileId"):""},set:function(a){this.v.obfuscatedProfileId=a}},pendingFields:{configurable:!0,enumerable:!0,get:function(){return U(this,"pendingFields")?S(this,"pendingFields"):[]},set:function(a){this.v.pendingFields=a}},profile:{configurable:!0,enumerable:!0,get:function(){return U(this,"profile")?S(this,"profile"):null},set:function(a){this.v.profile= +a}}});_ds.t(Tn,Cm);Tn.prototype.V=function(){return Tn};Tn.prototype.T=function(){return{keys:["wizardV1Seen"]}};_ds.fa.Object.defineProperties(Tn.prototype,{wizardV1Seen:{configurable:!0,enumerable:!0,get:function(){return U(this,"wizardV1Seen")?S(this,"wizardV1Seen"):!1},set:function(a){this.v.wizardV1Seen=a}}});_ds.t(Un,Cm);Un.prototype.V=function(){return Un};Un.prototype.T=function(){return{keys:[]}};_ds.t(Vn,Cm);Vn.prototype.V=function(){return Vn}; +Vn.prototype.T=function(){return{hb:{badgeEmailPreference:Fx,dashboardV1Seen:yp,feedbackEmailPreference:Gx,newsletterEmailPreference:Hx},keys:"badgeEmailPreference bio dashboardV1Seen displayImage displayName eyckContainer feedbackEmailPreference fieldMask gcloudDataOk gender githubId gitlabId linkedinId location newsletterEmailPreference organization playStoreDataOk pronoun selectedEmailAccountId stackoverflowId title twitterId".split(" "),va:{eyckContainer:oo,location:to}}}; +_ds.fa.Object.defineProperties(Vn.prototype,{Sb:{configurable:!0,enumerable:!0,get:function(){return U(this,"badgeEmailPreference")?S(this,"badgeEmailPreference"):null},set:function(a){this.v.badgeEmailPreference=a}},bio:{configurable:!0,enumerable:!0,get:function(){return U(this,"bio")?S(this,"bio"):""},set:function(a){this.v.bio=a}},dashboardV1Seen:{configurable:!0,enumerable:!0,get:function(){return U(this,"dashboardV1Seen")?S(this,"dashboardV1Seen"):null},set:function(a){this.v.dashboardV1Seen= +a}},kd:{configurable:!0,enumerable:!0,get:function(){return U(this,"displayImage")?S(this,"displayImage"):""},set:function(a){this.v.displayImage=a}},displayName:{configurable:!0,enumerable:!0,get:function(){return U(this,"displayName")?S(this,"displayName"):""},set:function(a){this.v.displayName=a}},Ha:{configurable:!0,enumerable:!0,get:function(){return U(this,"eyckContainer")?S(this,"eyckContainer"):null},set:function(a){this.v.eyckContainer=a}},feedbackEmailPreference:{configurable:!0,enumerable:!0, +get:function(){return U(this,"feedbackEmailPreference")?S(this,"feedbackEmailPreference"):null},set:function(a){this.v.feedbackEmailPreference=a}},fieldMask:{configurable:!0,enumerable:!0,get:function(){return U(this,"fieldMask")?S(this,"fieldMask"):""},set:function(a){this.v.fieldMask=a}},ld:{configurable:!0,enumerable:!0,get:function(){return U(this,"gcloudDataOk")?S(this,"gcloudDataOk"):!1},set:function(a){this.v.gcloudDataOk=a}},md:{configurable:!0,enumerable:!0,get:function(){return U(this,"gender")? +S(this,"gender"):""},set:function(a){this.v.gender=a}},githubId:{configurable:!0,enumerable:!0,get:function(){return U(this,"githubId")?S(this,"githubId"):""},set:function(a){this.v.githubId=a}},gitlabId:{configurable:!0,enumerable:!0,get:function(){return U(this,"gitlabId")?S(this,"gitlabId"):""},set:function(a){this.v.gitlabId=a}},linkedinId:{configurable:!0,enumerable:!0,get:function(){return U(this,"linkedinId")?S(this,"linkedinId"):""},set:function(a){this.v.linkedinId=a}},location:{configurable:!0, +enumerable:!0,get:function(){return U(this,"location")?S(this,"location"):null},set:function(a){this.v.location=a}},newsletterEmailPreference:{configurable:!0,enumerable:!0,get:function(){return U(this,"newsletterEmailPreference")?S(this,"newsletterEmailPreference"):null},set:function(a){this.v.newsletterEmailPreference=a}},organization:{configurable:!0,enumerable:!0,get:function(){return U(this,"organization")?S(this,"organization"):""},set:function(a){this.v.organization=a}},Ad:{configurable:!0, +enumerable:!0,get:function(){return U(this,"playStoreDataOk")?S(this,"playStoreDataOk"):!1},set:function(a){this.v.playStoreDataOk=a}},pronoun:{configurable:!0,enumerable:!0,get:function(){return U(this,"pronoun")?S(this,"pronoun"):""},set:function(a){this.v.pronoun=a}},selectedEmailAccountId:{configurable:!0,enumerable:!0,get:function(){return U(this,"selectedEmailAccountId")?S(this,"selectedEmailAccountId"):""},set:function(a){this.v.selectedEmailAccountId=a}},stackoverflowId:{configurable:!0,enumerable:!0, +get:function(){return U(this,"stackoverflowId")?S(this,"stackoverflowId"):""},set:function(a){this.v.stackoverflowId=a}},title:{configurable:!0,enumerable:!0,get:function(){return U(this,"title")?S(this,"title"):""},set:function(a){this.v.title=a}},twitterId:{configurable:!0,enumerable:!0,get:function(){return U(this,"twitterId")?S(this,"twitterId"):""},set:function(a){this.v.twitterId=a}}}); +_ds.fa.Object.defineProperties(Vn,{h:{configurable:!0,enumerable:!0,get:function(){return Fx}},j:{configurable:!0,enumerable:!0,get:function(){return yp}},m:{configurable:!0,enumerable:!0,get:function(){return Gx}},o:{configurable:!0,enumerable:!0,get:function(){return Hx}}});_ds.t(Wn,Cm);Wn.prototype.V=function(){return Wn};Wn.prototype.T=function(){return{keys:["profile"],va:{profile:ro}}}; +_ds.fa.Object.defineProperties(Wn.prototype,{profile:{configurable:!0,enumerable:!0,get:function(){return U(this,"profile")?S(this,"profile"):null},set:function(a){this.v.profile=a}}});_ds.t(Xn,Cm);Xn.prototype.V=function(){return Xn};Xn.prototype.T=function(){return{Wa:{paths:Yn},keys:["nextPageToken","paths"]}}; +_ds.fa.Object.defineProperties(Xn.prototype,{nextPageToken:{configurable:!0,enumerable:!0,get:function(){return U(this,"nextPageToken")?S(this,"nextPageToken"):""},set:function(a){this.v.nextPageToken=a}},paths:{configurable:!0,enumerable:!0,get:function(){return U(this,"paths")?S(this,"paths"):[]},set:function(a){this.v.paths=a}}});_ds.t(Yn,Cm);Yn.prototype.V=function(){return Yn};Yn.prototype.T=function(){return{hb:{contentType:Ix,ratingState:Jx,saveState:Kx,state:Lx},keys:"contentType description lastActionTime markDismiss name nextPath ratingState saveState state title updated url".split(" ")}}; +_ds.fa.Object.defineProperties(Yn.prototype,{contentType:{configurable:!0,enumerable:!0,get:function(){return U(this,"contentType")?S(this,"contentType"):null},set:function(a){this.v.contentType=a}},description:{configurable:!0,enumerable:!0,get:function(){return U(this,"description")?S(this,"description"):""},set:function(a){this.v.description=a}},lastActionTime:{configurable:!0,enumerable:!0,get:function(){return U(this,"lastActionTime")?S(this,"lastActionTime"):""},set:function(a){this.v.lastActionTime= +a}},markDismiss:{configurable:!0,enumerable:!0,get:function(){return U(this,"markDismiss")?S(this,"markDismiss"):!1},set:function(a){this.v.markDismiss=a}},name:{configurable:!0,enumerable:!0,get:function(){return U(this,"name")?S(this,"name"):""},set:function(a){this.v.name=a}},nextPath:{configurable:!0,enumerable:!0,get:function(){return U(this,"nextPath")?S(this,"nextPath"):""},set:function(a){this.v.nextPath=a}},ratingState:{configurable:!0,enumerable:!0,get:function(){return U(this,"ratingState")? +S(this,"ratingState"):null},set:function(a){this.v.ratingState=a}},saveState:{configurable:!0,enumerable:!0,get:function(){return U(this,"saveState")?S(this,"saveState"):null},set:function(a){this.v.saveState=a}},state:{configurable:!0,enumerable:!0,get:function(){return U(this,"state")?S(this,"state"):null},set:function(a){this.v.state=a}},title:{configurable:!0,enumerable:!0,get:function(){return U(this,"title")?S(this,"title"):""},set:function(a){this.v.title=a}},updated:{configurable:!0,enumerable:!0, +get:function(){return U(this,"updated")?S(this,"updated"):!1},set:function(a){this.v.updated=a}},url:{configurable:!0,enumerable:!0,get:function(){return U(this,"url")?S(this,"url"):""},set:function(a){this.v.url=a}}});_ds.fa.Object.defineProperties(Yn,{m:{configurable:!0,enumerable:!0,get:function(){return Ix}},h:{configurable:!0,enumerable:!0,get:function(){return Jx}},j:{configurable:!0,enumerable:!0,get:function(){return Kx}},State:{configurable:!0,enumerable:!0,get:function(){return Lx}}}); +_ds.t(Zn,Cm);Zn.prototype.V=function(){return Zn};Zn.prototype.T=function(){return{Wa:{paths:Yn},keys:["paths"]}};_ds.fa.Object.defineProperties(Zn.prototype,{paths:{configurable:!0,enumerable:!0,get:function(){return U(this,"paths")?S(this,"paths"):[]},set:function(a){this.v.paths=a}}});_ds.t($n,Cm);$n.prototype.V=function(){return $n};$n.prototype.T=function(){return{keys:["earnedBadges","ratedPages","savedPages"]}}; +_ds.fa.Object.defineProperties($n.prototype,{earnedBadges:{configurable:!0,enumerable:!0,get:function(){return U(this,"earnedBadges")?S(this,"earnedBadges"):"0"},set:function(a){this.v.earnedBadges=a}},ratedPages:{configurable:!0,enumerable:!0,get:function(){return U(this,"ratedPages")?S(this,"ratedPages"):"0"},set:function(a){this.v.ratedPages=a}},savedPages:{configurable:!0,enumerable:!0,get:function(){return U(this,"savedPages")?S(this,"savedPages"):"0"},set:function(a){this.v.savedPages=a}}}); +_ds.t(_ds.ao,Cm);_ds.ao.prototype.V=function(){return _ds.ao};_ds.ao.prototype.T=function(){return{keys:["contentId","quiz","walletId"],va:{contentId:_ds.no,quiz:_ds.mo}}}; +_ds.fa.Object.defineProperties(_ds.ao.prototype,{Zd:{configurable:!0,enumerable:!0,get:function(){return U(this,"contentId")?S(this,"contentId"):null},set:function(a){this.v.contentId=a}},quiz:{configurable:!0,enumerable:!0,get:function(){return U(this,"quiz")?S(this,"quiz"):null},set:function(a){this.v.quiz=a}},walletId:{configurable:!0,enumerable:!0,get:function(){return U(this,"walletId")?S(this,"walletId"):"0"},set:function(a){this.v.walletId=a}}});_ds.t(bo,Cm);bo.prototype.V=function(){return bo}; +bo.prototype.T=function(){return{hb:{awardAction:Mx},keys:["awardAction","badge","quiz"],va:{badge:ln,quiz:_ds.mo}}}; +_ds.fa.Object.defineProperties(bo.prototype,{vh:{configurable:!0,enumerable:!0,get:function(){return U(this,"awardAction")?S(this,"awardAction"):null},set:function(a){this.v.awardAction=a}},badge:{configurable:!0,enumerable:!0,get:function(){return U(this,"badge")?S(this,"badge"):null},set:function(a){this.v.badge=a}},quiz:{configurable:!0,enumerable:!0,get:function(){return U(this,"quiz")?S(this,"quiz"):null},set:function(a){this.v.quiz=a}}}); +_ds.fa.Object.defineProperties(bo,{h:{configurable:!0,enumerable:!0,get:function(){return Mx}}});_ds.t(_ds.co,Cm);_ds.co.prototype.V=function(){return _ds.co};_ds.co.prototype.T=function(){return{keys:["answerText","correct","explanation","index"]}}; +_ds.fa.Object.defineProperties(_ds.co.prototype,{kc:{configurable:!0,enumerable:!0,get:function(){return U(this,"answerText")?S(this,"answerText"):""},set:function(a){this.v.answerText=a}},correct:{configurable:!0,enumerable:!0,get:function(){return U(this,"correct")?S(this,"correct"):!1},set:function(a){this.v.correct=a}},explanation:{configurable:!0,enumerable:!0,get:function(){return U(this,"explanation")?S(this,"explanation"):""},set:function(a){this.v.explanation=a}},index:{configurable:!0,enumerable:!0, +get:function(){return U(this,"index")?S(this,"index"):0},set:function(a){this.v.index=a}}});_ds.t(_ds.eo,Cm);_ds.eo.prototype.V=function(){return _ds.eo};_ds.eo.prototype.T=function(){return{Wa:{answers:_ds.co},keys:["answers"]}};_ds.fa.Object.defineProperties(_ds.eo.prototype,{answers:{configurable:!0,enumerable:!0,get:function(){return U(this,"answers")?S(this,"answers"):[]},set:function(a){this.v.answers=a}}});_ds.t(_ds.fo,Cm);_ds.fo.prototype.V=function(){return _ds.fo}; +_ds.fo.prototype.T=function(){return{keys:["answer"],va:{answer:_ds.co}}};_ds.fa.Object.defineProperties(_ds.fo.prototype,{answer:{configurable:!0,enumerable:!0,get:function(){return U(this,"answer")?S(this,"answer"):null},set:function(a){this.v.answer=a}}});_ds.t(_ds.go,Cm);_ds.go.prototype.V=function(){return _ds.go};_ds.go.prototype.T=function(){return{keys:["answerIndex","correct","explanation","itemIndex"]}}; +_ds.fa.Object.defineProperties(_ds.go.prototype,{dd:{configurable:!0,enumerable:!0,get:function(){return U(this,"answerIndex")?S(this,"answerIndex"):0},set:function(a){this.v.answerIndex=a}},correct:{configurable:!0,enumerable:!0,get:function(){return U(this,"correct")?S(this,"correct"):!1},set:function(a){this.v.correct=a}},explanation:{configurable:!0,enumerable:!0,get:function(){return U(this,"explanation")?S(this,"explanation"):""},set:function(a){this.v.explanation=a}},xd:{configurable:!0,enumerable:!0, +get:function(){return U(this,"itemIndex")?S(this,"itemIndex"):0},set:function(a){this.v.itemIndex=a}}});_ds.t(_ds.ho,Cm);_ds.ho.prototype.V=function(){return _ds.ho};_ds.ho.prototype.T=function(){return{Wa:{answers:_ds.go},keys:["answers"]}};_ds.fa.Object.defineProperties(_ds.ho.prototype,{answers:{configurable:!0,enumerable:!0,get:function(){return U(this,"answers")?S(this,"answers"):[]},set:function(a){this.v.answers=a}}});_ds.t(_ds.io,Cm);_ds.io.prototype.V=function(){return _ds.io}; +_ds.io.prototype.T=function(){return{keys:["correct","explanation","index"]}}; +_ds.fa.Object.defineProperties(_ds.io.prototype,{correct:{configurable:!0,enumerable:!0,get:function(){return U(this,"correct")?S(this,"correct"):!1},set:function(a){this.v.correct=a}},explanation:{configurable:!0,enumerable:!0,get:function(){return U(this,"explanation")?S(this,"explanation"):""},set:function(a){this.v.explanation=a}},index:{configurable:!0,enumerable:!0,get:function(){return U(this,"index")?S(this,"index"):0},set:function(a){this.v.index=a}}});_ds.t(_ds.jo,Cm); +_ds.jo.prototype.V=function(){return _ds.jo};_ds.jo.prototype.T=function(){return{Wa:{answers:_ds.io},keys:["answers"]}};_ds.fa.Object.defineProperties(_ds.jo.prototype,{answers:{configurable:!0,enumerable:!0,get:function(){return U(this,"answers")?S(this,"answers"):[]},set:function(a){this.v.answers=a}}});_ds.t(_ds.ko,Cm);_ds.ko.prototype.V=function(){return _ds.ko};_ds.ko.prototype.T=function(){return{keys:["answer"],va:{answer:_ds.io}}}; +_ds.fa.Object.defineProperties(_ds.ko.prototype,{answer:{configurable:!0,enumerable:!0,get:function(){return U(this,"answer")?S(this,"answer"):null},set:function(a){this.v.answer=a}}});_ds.t(_ds.lo,Cm);_ds.lo.prototype.V=function(){return _ds.lo}; +_ds.lo.prototype.T=function(){return{keys:"correct fillInTheBlankMultipleAnswer fillInTheBlankSingleAnswer index matchItems multipleChoiceMultipleAnswer multipleChoiceSingleAnswer".split(" "),va:{fillInTheBlankMultipleAnswer:_ds.eo,fillInTheBlankSingleAnswer:_ds.fo,matchItems:_ds.ho,multipleChoiceMultipleAnswer:_ds.jo,multipleChoiceSingleAnswer:_ds.ko}}}; +_ds.fa.Object.defineProperties(_ds.lo.prototype,{correct:{configurable:!0,enumerable:!0,get:function(){return U(this,"correct")?S(this,"correct"):!1},set:function(a){this.v.correct=a}},Vb:{configurable:!0,enumerable:!0,get:function(){return U(this,"fillInTheBlankMultipleAnswer")?S(this,"fillInTheBlankMultipleAnswer"):null},set:function(a){this.v.fillInTheBlankMultipleAnswer=a}},Bb:{configurable:!0,enumerable:!0,get:function(){return U(this,"fillInTheBlankSingleAnswer")?S(this,"fillInTheBlankSingleAnswer"): +null},set:function(a){this.v.fillInTheBlankSingleAnswer=a}},index:{configurable:!0,enumerable:!0,get:function(){return U(this,"index")?S(this,"index"):0},set:function(a){this.v.index=a}},$b:{configurable:!0,enumerable:!0,get:function(){return U(this,"matchItems")?S(this,"matchItems"):null},set:function(a){this.v.matchItems=a}},ac:{configurable:!0,enumerable:!0,get:function(){return U(this,"multipleChoiceMultipleAnswer")?S(this,"multipleChoiceMultipleAnswer"):null},set:function(a){this.v.multipleChoiceMultipleAnswer= +a}},Gb:{configurable:!0,enumerable:!0,get:function(){return U(this,"multipleChoiceSingleAnswer")?S(this,"multipleChoiceSingleAnswer"):null},set:function(a){this.v.multipleChoiceSingleAnswer=a}}});_ds.t(_ds.mo,Cm);_ds.mo.prototype.V=function(){return _ds.mo};_ds.mo.prototype.T=function(){return{Wa:{questions:_ds.lo},keys:["grade","passed","questions"]}}; +_ds.fa.Object.defineProperties(_ds.mo.prototype,{grade:{configurable:!0,enumerable:!0,get:function(){return U(this,"grade")?S(this,"grade"):0},set:function(a){this.v.grade=a}},passed:{configurable:!0,enumerable:!0,get:function(){return U(this,"passed")?S(this,"passed"):!1},set:function(a){this.v.passed=a}},questions:{configurable:!0,enumerable:!0,get:function(){return U(this,"questions")?S(this,"questions"):[]},set:function(a){this.v.questions=a}}});_ds.t(_ds.no,Cm);_ds.no.prototype.V=function(){return _ds.no}; +_ds.no.prototype.T=function(){return{hb:{contentType:Nx},keys:["contentType","id","servePath","tenantId"]}}; +_ds.fa.Object.defineProperties(_ds.no.prototype,{contentType:{configurable:!0,enumerable:!0,get:function(){return U(this,"contentType")?S(this,"contentType"):null},set:function(a){this.v.contentType=a}},id:{configurable:!0,enumerable:!0,get:function(){return U(this,"id")?S(this,"id"):""},set:function(a){this.v.id=a}},servePath:{configurable:!0,enumerable:!0,get:function(){return U(this,"servePath")?S(this,"servePath"):""},set:function(a){this.v.servePath=a}},tenantId:{configurable:!0,enumerable:!0, +get:function(){return U(this,"tenantId")?S(this,"tenantId"):"0"},set:function(a){this.v.tenantId=a}}});_ds.fa.Object.defineProperties(_ds.no,{h:{configurable:!0,enumerable:!0,get:function(){return Nx}}});_ds.t(oo,Cm);oo.prototype.V=function(){return oo};oo.prototype.T=function(){return{keys:["avatar","styleId"],va:{avatar:gn}}}; +_ds.fa.Object.defineProperties(oo.prototype,{pb:{configurable:!0,enumerable:!0,get:function(){return U(this,"avatar")?S(this,"avatar"):null},set:function(a){this.v.avatar=a}},Oc:{configurable:!0,enumerable:!0,get:function(){return U(this,"styleId")?S(this,"styleId"):""},set:function(a){this.v.styleId=a}}});_ds.t(po,Cm);po.prototype.V=function(){return po}; +po.prototype.T=function(){return{hb:{googleCloudConsoleDataSharing:Ox,googlePlayDataSharing:Px},keys:"accountId email googleCloudConsoleDataSharing googlePlayDataSharing isAuthenticatedUser label linkedSince person".split(" "),va:{person:qo}}}; +_ds.fa.Object.defineProperties(po.prototype,{accountId:{configurable:!0,enumerable:!0,get:function(){return U(this,"accountId")?S(this,"accountId"):""},set:function(a){this.v.accountId=a}},email:{configurable:!0,enumerable:!0,get:function(){return U(this,"email")?S(this,"email"):""},set:function(a){this.v.email=a}},gi:{configurable:!0,enumerable:!0,get:function(){return U(this,"googleCloudConsoleDataSharing")?S(this,"googleCloudConsoleDataSharing"):null},set:function(a){this.v.googleCloudConsoleDataSharing= +a}},ji:{configurable:!0,enumerable:!0,get:function(){return U(this,"googlePlayDataSharing")?S(this,"googlePlayDataSharing"):null},set:function(a){this.v.googlePlayDataSharing=a}},isAuthenticatedUser:{configurable:!0,enumerable:!0,get:function(){return U(this,"isAuthenticatedUser")?S(this,"isAuthenticatedUser"):!1},set:function(a){this.v.isAuthenticatedUser=a}},label:{configurable:!0,enumerable:!0,get:function(){return U(this,"label")?S(this,"label"):""},set:function(a){this.v.label=a}},linkedSince:{configurable:!0, +enumerable:!0,get:function(){return U(this,"linkedSince")?S(this,"linkedSince"):""},set:function(a){this.v.linkedSince=a}},Ta:{configurable:!0,enumerable:!0,get:function(){return U(this,"person")?S(this,"person"):null},set:function(a){this.v.person=a}}});_ds.fa.Object.defineProperties(po,{h:{configurable:!0,enumerable:!0,get:function(){return Ox}},j:{configurable:!0,enumerable:!0,get:function(){return Px}}});_ds.t(qo,Cm);qo.prototype.V=function(){return qo}; +qo.prototype.T=function(){return{keys:["name","organization","photo","pronoun","title"]}}; +_ds.fa.Object.defineProperties(qo.prototype,{name:{configurable:!0,enumerable:!0,get:function(){return U(this,"name")?S(this,"name"):""},set:function(a){this.v.name=a}},organization:{configurable:!0,enumerable:!0,get:function(){return U(this,"organization")?S(this,"organization"):""},set:function(a){this.v.organization=a}},photo:{configurable:!0,enumerable:!0,get:function(){return U(this,"photo")?S(this,"photo"):""},set:function(a){this.v.photo=a}},pronoun:{configurable:!0,enumerable:!0,get:function(){return U(this, +"pronoun")?S(this,"pronoun"):""},set:function(a){this.v.pronoun=a}},title:{configurable:!0,enumerable:!0,get:function(){return U(this,"title")?S(this,"title"):""},set:function(a){this.v.title=a}}});_ds.t(ro,Cm);ro.prototype.V=function(){return ro}; +ro.prototype.T=function(){return{Wa:{linkedAccounts:po},hb:{badgeEmailPreference:Qx,creationMethod:Rx,dashboardV1Seen:Ep,feedbackEmailPreference:Dp,newsletterEmailPreference:Cp},keys:"awardsHidden badgeEmailPreference bio creationMethod creationTime dashboardV1Seen eyckContainer feedbackEmailPreference githubId gitlabId language linkedAccounts linkedinId location newsletterEmailPreference obfuscatedProfileId originTenantId pendingFields person photo selectedEmailAccountId stackoverflowId states twitterId".split(" "),va:{eyckContainer:oo, +location:to,person:qo,states:so}}}; +_ds.fa.Object.defineProperties(ro.prototype,{awardsHidden:{configurable:!0,enumerable:!0,get:function(){return U(this,"awardsHidden")?S(this,"awardsHidden"):!1},set:function(a){this.v.awardsHidden=a}},Sb:{configurable:!0,enumerable:!0,get:function(){return U(this,"badgeEmailPreference")?S(this,"badgeEmailPreference"):null},set:function(a){this.v.badgeEmailPreference=a}},bio:{configurable:!0,enumerable:!0,get:function(){return U(this,"bio")?S(this,"bio"):""},set:function(a){this.v.bio=a}},creationMethod:{configurable:!0, +enumerable:!0,get:function(){return U(this,"creationMethod")?S(this,"creationMethod"):null},set:function(a){this.v.creationMethod=a}},creationTime:{configurable:!0,enumerable:!0,get:function(){return U(this,"creationTime")?S(this,"creationTime"):""},set:function(a){this.v.creationTime=a}},dashboardV1Seen:{configurable:!0,enumerable:!0,get:function(){return U(this,"dashboardV1Seen")?S(this,"dashboardV1Seen"):null},set:function(a){this.v.dashboardV1Seen=a}},Ha:{configurable:!0,enumerable:!0,get:function(){return U(this, +"eyckContainer")?S(this,"eyckContainer"):null},set:function(a){this.v.eyckContainer=a}},feedbackEmailPreference:{configurable:!0,enumerable:!0,get:function(){return U(this,"feedbackEmailPreference")?S(this,"feedbackEmailPreference"):null},set:function(a){this.v.feedbackEmailPreference=a}},githubId:{configurable:!0,enumerable:!0,get:function(){return U(this,"githubId")?S(this,"githubId"):""},set:function(a){this.v.githubId=a}},gitlabId:{configurable:!0,enumerable:!0,get:function(){return U(this,"gitlabId")? +S(this,"gitlabId"):""},set:function(a){this.v.gitlabId=a}},language:{configurable:!0,enumerable:!0,get:function(){return U(this,"language")?S(this,"language"):""},set:function(a){this.v.language=a}},linkedAccounts:{configurable:!0,enumerable:!0,get:function(){return U(this,"linkedAccounts")?S(this,"linkedAccounts"):[]},set:function(a){this.v.linkedAccounts=a}},linkedinId:{configurable:!0,enumerable:!0,get:function(){return U(this,"linkedinId")?S(this,"linkedinId"):""},set:function(a){this.v.linkedinId= +a}},location:{configurable:!0,enumerable:!0,get:function(){return U(this,"location")?S(this,"location"):null},set:function(a){this.v.location=a}},newsletterEmailPreference:{configurable:!0,enumerable:!0,get:function(){return U(this,"newsletterEmailPreference")?S(this,"newsletterEmailPreference"):null},set:function(a){this.v.newsletterEmailPreference=a}},obfuscatedProfileId:{configurable:!0,enumerable:!0,get:function(){return U(this,"obfuscatedProfileId")?S(this,"obfuscatedProfileId"):""},set:function(a){this.v.obfuscatedProfileId= +a}},originTenantId:{configurable:!0,enumerable:!0,get:function(){return U(this,"originTenantId")?S(this,"originTenantId"):"0"},set:function(a){this.v.originTenantId=a}},pendingFields:{configurable:!0,enumerable:!0,get:function(){return U(this,"pendingFields")?S(this,"pendingFields"):[]},set:function(a){this.v.pendingFields=a}},Ta:{configurable:!0,enumerable:!0,get:function(){return U(this,"person")?S(this,"person"):null},set:function(a){this.v.person=a}},photo:{configurable:!0,enumerable:!0,get:function(){return U(this, +"photo")?S(this,"photo"):""},set:function(a){this.v.photo=a}},selectedEmailAccountId:{configurable:!0,enumerable:!0,get:function(){return U(this,"selectedEmailAccountId")?S(this,"selectedEmailAccountId"):""},set:function(a){this.v.selectedEmailAccountId=a}},stackoverflowId:{configurable:!0,enumerable:!0,get:function(){return U(this,"stackoverflowId")?S(this,"stackoverflowId"):""},set:function(a){this.v.stackoverflowId=a}},Nc:{configurable:!0,enumerable:!0,get:function(){return U(this,"states")?S(this, +"states"):null},set:function(a){this.v.states=a}},twitterId:{configurable:!0,enumerable:!0,get:function(){return U(this,"twitterId")?S(this,"twitterId"):""},set:function(a){this.v.twitterId=a}}}); +_ds.fa.Object.defineProperties(ro,{h:{configurable:!0,enumerable:!0,get:function(){return Qx}},j:{configurable:!0,enumerable:!0,get:function(){return Rx}},m:{configurable:!0,enumerable:!0,get:function(){return Ep}},o:{configurable:!0,enumerable:!0,get:function(){return Dp}},C:{configurable:!0,enumerable:!0,get:function(){return Cp}}});_ds.t(so,Cm);so.prototype.V=function(){return so};so.prototype.T=function(){return{keys:["wizardV1Seen"]}}; +_ds.fa.Object.defineProperties(so.prototype,{wizardV1Seen:{configurable:!0,enumerable:!0,get:function(){return U(this,"wizardV1Seen")?S(this,"wizardV1Seen"):!1},set:function(a){this.v.wizardV1Seen=a}}});_ds.t(to,Cm);to.prototype.V=function(){return to};to.prototype.T=function(){return{keys:["country","displayLocation","latitude","longitude"]}}; +_ds.fa.Object.defineProperties(to.prototype,{country:{configurable:!0,enumerable:!0,get:function(){return U(this,"country")?S(this,"country"):""},set:function(a){this.v.country=a}},displayLocation:{configurable:!0,enumerable:!0,get:function(){return U(this,"displayLocation")?S(this,"displayLocation"):""},set:function(a){this.v.displayLocation=a}},latitude:{configurable:!0,enumerable:!0,get:function(){return U(this,"latitude")?S(this,"latitude"):0},set:function(a){this.v.latitude=a}},longitude:{configurable:!0, +enumerable:!0,get:function(){return U(this,"longitude")?S(this,"longitude"):0},set:function(a){this.v.longitude=a}}}); +var Om={$Xgafv:"$.xgafv",access_token:"access_token",alt:"alt",apiPaths:"apiPaths",badgeIdContentType:"badgeId.contentType",badgeIdId:"badgeId.id",badgeIdServePath:"badgeId.servePath",badgeIdTenantId:"badgeId.tenantId",callback:"callback",contentType:"contentType",fieldMask:"fieldMask",fields:"fields",key:"key",locale:"locale",maxPaths:"maxPaths",names:"names",oauth_token:"oauth_token",obfuscatedProfileId:"obfuscatedProfileId",pageSize:"pageSize",pageToken:"pageToken",prettyPrint:"prettyPrint",quotaUser:"quotaUser", +readMask:"readMask",recursionLevel:"recursionLevel",state:"state",updateMask:"updateMask",uploadType:"uploadType",upload_protocol:"upload_protocol",useBadges:"useBadges",walletId:"walletId"};uo.prototype.visibility=function(a,b,c){b=void 0===b?{}:b;c=void 0===c?{}:c;return fn(this.h,{body:a,httpMethod:"POST",Ea:"developerprofiles_pa.award.visibility",path:"/"+this.j+"/award/visibility",xa:Pm(b,c),Ia:yn})}; +vo.prototype.create=function(a,b,c){b=void 0===b?{}:b;c=void 0===c?{}:c;return fn(this.h,{body:a,httpMethod:"POST",Ea:"developerprofiles_pa.awards.create",path:"/"+this.j+"/awards",xa:Pm(b,c),Ia:qn})};vo.prototype.list=function(a,b){a=void 0===a?{}:a;b=void 0===b?{}:b;return fn(this.h,{body:null,httpMethod:"GET",Ea:"developerprofiles_pa.awards.list",path:"/"+this.j+"/awards",xa:Pm(a,b),Ia:un})}; +yo.prototype.m=function(a,b){a=void 0===a?{}:a;b=void 0===b?{}:b;return fn(this.h,{body:null,httpMethod:"GET",Ea:"developerprofiles_pa.paths.analyzeAPK",path:"/"+this.j+"/paths:analyzeAPK",xa:Pm(a,b),Ia:Bn})};Ao.prototype.create=function(a,b,c){b=void 0===b?{}:b;c=void 0===c?{}:c;return fn(this.h,{body:a,httpMethod:"POST",Ea:"developerprofiles_pa.profiles.create",path:"/"+this.j+"/profiles",xa:Pm(b,c),Ia:Nn})}; +Bo.prototype.get=function(a,b,c){b=void 0===b?{}:b;c=void 0===c?{}:c;bn(a,/^profiles\/[^/]+\/paths\/[^/]+$/);return fn(this.h,{body:null,httpMethod:"GET",Ea:"developerprofiles_pa.profiles.paths.get",path:"/"+this.j+"/"+a,xa:Pm(b,c),Ia:Yn})};Bo.prototype.list=function(a,b,c){b=void 0===b?{}:b;c=void 0===c?{}:c;bn(a,/^profiles\/[^/]+$/);return fn(this.h,{body:null,httpMethod:"GET",Ea:"developerprofiles_pa.profiles.paths.list",path:"/"+this.j+"/"+a+"/paths",xa:Pm(b,c),Ia:Xn})}; +_ds.Fo.prototype.grade=function(a,b,c,d){c=void 0===c?{}:c;d=void 0===d?{}:d;bn(a,/^[^/]+$/);return fn(this.h,{body:b,httpMethod:"POST",Ea:"developerprofiles_pa.quizzes.grade",path:"/"+this.j+"/quizzes/"+a+"/grade",xa:Pm(c,d),Ia:bo})};Go.prototype.deleteProfile=function(a,b){a=void 0===a?{}:a;b=void 0===b?{}:b;return fn(this.h,{body:null,httpMethod:"DELETE",Ea:"developerprofiles_pa.deleteProfile",path:"/"+this.j+"/profile",xa:Pm(a,b),Ia:On})}; +Go.prototype.getEligibility=function(a,b){a=void 0===a?{}:a;b=void 0===b?{}:b;return fn(this.h,{body:null,httpMethod:"GET",Ea:"developerprofiles_pa.getEligibility",path:"/"+this.j+"/eligibility",xa:Pm(a,b),Ia:Rn})};Go.prototype.getProfile=function(a,b){a=void 0===a?{}:a;b=void 0===b?{}:b;return fn(this.h,{body:null,httpMethod:"GET",Ea:"developerprofiles_pa.getProfile",path:"/"+this.j+"/profile",xa:Pm(a,b),Ia:Sn})}; +Go.prototype.updateProfile=function(a,b,c){b=void 0===b?{}:b;c=void 0===c?{}:c;return fn(this.h,{body:a,httpMethod:"PATCH",Ea:"developerprofiles_pa.updateProfile",path:"/"+this.j+"/profile",xa:Pm(b,c),Ia:Wn})};Ko.prototype.create=function(a,b,c){b=void 0===b?{}:b;c=void 0===c?{}:c;return fn(this.h,{body:a,httpMethod:"POST",Ea:"developerprofiles_pa.wallet.awards.create",path:"/"+this.j+"/wallet/awards",xa:Pm(b,c),Ia:on})}; +Lo.prototype.create=function(a,b,c){b=void 0===b?{}:b;c=void 0===c?{}:c;return fn(this.h,{body:a,httpMethod:"POST",Ea:"developerprofiles_pa.wallets.create",path:"/"+this.j+"/wallets",xa:Pm(b,c),Ia:sn})};_ds.t(_ds.Mo,_ds.Zm);_ds.Mo.prototype.syncWallet=function(){var a;return _ds.Q(this,function c(){var d=this,e,g,k,l;return _ds.C(c,function(m){switch(m.h){case 1:e=Oo(d);if(!e)return m.return();g={Tc:e};k={access_token:d.config.accessToken};_ds.x(m,2);return _ds.u(m,_ds.Jo(d.o,g,k),4);case 4:_ds.z(m,3);break;case 2:if(l=_ds.A(m),"wallet was already redeemed"!==(null===(a=l.error)||void 0===a?void 0:a.message))throw _ds.$m(l);case 3:Qo(d),_ds.v(m)}})})};_ds.t(_ds.Ro,_ds.Zm);_ds.t(dp,_ds.Zm); +dp.prototype.getEligibility=function(a){return _ds.Q(this,function c(){var d=this,e,g,k,l;return _ds.C(c,function(m){switch(m.h){case 1:return e={access_token:d.config.accessToken,readMask:(null===a||void 0===a?0:a.includeQandA)?"eligibility.q_and_a":null},_ds.x(m,2),_ds.u(m,d.m.getEligibility(e),4);case 4:g=m.j;_ds.z(m,3);break;case 2:k=_ds.A(m),_ds.$m(k);case 3:l={createProfile:null,qAndA:null};if(null===g||void 0===g?0:g.Ra)g.Ra.createProfile&&(l.createProfile={status:g.Ra.createProfile.status,ineligibleReason:g.Ra.createProfile.ineligibleReason}), +g.Ra.qAndA&&(l.qAndA={status:g.Ra.qAndA.status,ineligibleReason:g.Ra.qAndA.ineligibleReason});return m.return(l)}})})}; +dp.prototype.changeEligibility=function(a){var b,c;return _ds.Q(this,function e(){var g=this,k,l,m;return _ds.C(e,function(p){if(1==p.h)return k={access_token:g.config.accessToken},l=new Ln,l.updateMask="eligibility.q_and_a",l.qAndA=a.enableQandA,_ds.x(p,2),_ds.u(p,xo(g.j,l,k),4);if(2!=p.h)return _ds.z(p,0);m=_ds.A(p);if("ALREADY_EXISTS"!==(null===(b=null===m||void 0===m?void 0:m.error)||void 0===b?void 0:b.status)&&"NOT_FOUND"!==(null===(c=null===m||void 0===m?void 0:m.error)||void 0===c?void 0: +c.status))throw _ds.$m(m);_ds.v(p)})})};_ds.t(ep,_ds.Zm);ep.prototype.vb=function(a){return _ds.Q(this,function c(){var d=this,e,g,k,l;return _ds.C(c,function(m){switch(m.h){case 1:return e=[].concat(_ds.la(new Set(a.paths.map(function(p){return"paths/"+fp(p)})))),g={names:e,access_token:d.config.accessToken,recursionLevel:a.includeChildContent?1:0},_ds.x(m,2),_ds.u(m,zo(d.m,g),4);case 4:k=m.j;_ds.z(m,3);break;case 2:throw l=_ds.A(m),_ds.$m(l);case 3:return m.return(hp(d,k.paths))}})})};_ds.t(pp,_ds.Zm);pp.prototype.createProfile=function(a){return _ds.Q(this,function c(){var d=this,e,g,k,l,m;return _ds.C(c,function(p){switch(p.h){case 1:if(!a.profile)throw new _ds.Wl("Missing profile");e={access_token:d.config.accessToken};return _ds.u(p,Bp(d,new Mn,a.profile),2);case 2:return g=p.j,_ds.x(p,3),_ds.u(p,d.o.create(g,e),5);case 5:k=p.j;_ds.z(p,4);break;case 3:throw l=_ds.A(p),_ds.$m(l);case 4:return m=new _ds.Mo(d.config),(Oo(m)||m.walletId)&&Qo(m),p.return(Fp(k))}})})}; +pp.prototype.updateProfile=function(a){return _ds.Q(this,function c(){var d=this,e,g,k;return _ds.C(c,function(l){switch(l.h){case 1:if(!a.profile)throw new _ds.Wl("Missing profile");e={access_token:d.config.accessToken};return _ds.u(l,Bp(d,new Vn,a.profile),2);case 2:return g=l.j,_ds.x(l,3),_ds.u(l,d.j.updateProfile(g,e),5);case 5:_ds.z(l,0);break;case 3:throw k=_ds.A(l),_ds.$m(k);}})})}; +pp.prototype.deleteProfile=function(){return _ds.Q(this,function b(){var c=this,d,e;return _ds.C(b,function(g){if(1==g.h)return d={access_token:c.config.accessToken},_ds.x(g,2),_ds.u(g,c.j.deleteProfile(d),4);if(2!=g.h)return _ds.z(g,0);e=_ds.A(g);throw _ds.$m(e);})})}; +pp.prototype.getProfile=function(a){var b;return _ds.Q(this,function d(){var e=this,g,k,l;return _ds.C(d,function(m){switch(m.h){case 1:return g={access_token:e.config.accessToken,obfuscatedProfileId:null!==(b=null===a||void 0===a?void 0:a.profileId)&&void 0!==b?b:null},_ds.x(m,2),_ds.u(m,e.j.getProfile(g),4);case 4:k=m.j;_ds.z(m,3);break;case 2:throw l=_ds.A(m),_ds.$m(l);case 3:return m.return(Fp(k))}})})};_ds.F(Ip,_ds.jf);var Hp=[[1,2]];_ds.f=Ip.prototype;_ds.f.YG=function(){return _ds.nf(this,Hp[0])};_ds.f.L0=function(a){return Jp(a,this)};_ds.f.J0=function(){var a=new _ds.Ne;Kp(this,a);return _ds.Se(a)};_ds.f.I0=function(){return _ds.rf(this,1,0)};_ds.f.K0=function(a){return _ds.Ef(this,1,Hp[0],a)};_ds.f.H0=function(){return _ds.Ef(this,1,Hp[0],void 0)};_ds.f.fQ=function(){return _ds.K(this,1)};_ds.f.wM=function(){return _ds.uf(this,2)};_ds.f.Kma=function(a){return _ds.Ef(this,2,Hp[0],a)}; +_ds.f.kC=function(){return _ds.Ef(this,2,Hp[0],void 0)};_ds.f.KV=function(){return _ds.K(this,2)};_ds.F(_ds.Lp,_ds.jf);_ds.f=_ds.Lp.prototype;_ds.f.G0=function(a){return Mp(a,this)};_ds.f.D0=function(){var a=new _ds.Ne;Np(this,a);return _ds.Se(a)};_ds.f.getName=function(){return _ds.L(this,1)};_ds.f.F0=function(a){return _ds.Cf(this,1,a)};_ds.f.E0=function(a){return _ds.Cf(this,2,a)};_ds.F(_ds.Op,_ds.jf);_ds.f=_ds.Op.prototype;_ds.f.S0=function(a){var b={Pc:_ds.rf(this,1,0),query:_ds.L(this,4),SW:_ds.uf(this,5),cd:_ds.uf(this,6),locale:_ds.rf(this,7,0),Ml:_ds.rf(this,8,0),Hc:_ds.sf(this,9),xo:_ds.L(this,10),gm:_ds.L(this,11),Fl:_ds.rf(this,12,0),Uj:_ds.rf(this,13,0)};a&&(b.M=this);return b}; +_ds.f.M0=function(){var a=new _ds.Ne;var b=_ds.rf(this,1,0);0!==b&&_ds.ef(a,1,b);b=_ds.L(this,4);0":">","`":"`","\u0085":"…","\u00a0":" ","\u2028":"
","\u2029":"
"}; +br={"\x00":"%00","\u0001":"%01","\u0002":"%02","\u0003":"%03","\u0004":"%04","\u0005":"%05","\u0006":"%06","\u0007":"%07","\b":"%08","\t":"%09","\n":"%0A","\x0B":"%0B","\f":"%0C","\r":"%0D","\u000e":"%0E","\u000f":"%0F","\u0010":"%10","\u0011":"%11","\u0012":"%12","\u0013":"%13","\u0014":"%14","\u0015":"%15","\u0016":"%16","\u0017":"%17","\u0018":"%18","\u0019":"%19","\u001a":"%1A","\u001b":"%1B","\u001c":"%1C","\u001d":"%1D","\u001e":"%1E","\u001f":"%1F"," ":"%20",'"':"%22","'":"%27","(":"%28",")":"%29", +"<":"%3C",">":"%3E","\\":"%5C","{":"%7B","}":"%7D","\u007f":"%7F","\u0085":"%C2%85","\u00a0":"%C2%A0","\u2028":"%E2%80%A8","\u2029":"%E2%80%A9","\uff01":"%EF%BC%81","\uff03":"%EF%BC%83","\uff04":"%EF%BC%84","\uff06":"%EF%BC%86","\uff07":"%EF%BC%87","\uff08":"%EF%BC%88","\uff09":"%EF%BC%89","\uff0a":"%EF%BC%8A","\uff0b":"%EF%BC%8B","\uff0c":"%EF%BC%8C","\uff0f":"%EF%BC%8F","\uff1a":"%EF%BC%9A","\uff1b":"%EF%BC%9B","\uff1d":"%EF%BC%9D","\uff1f":"%EF%BC%9F","\uff20":"%EF%BC%A0","\uff3b":"%EF%BC%BB", +"\uff3d":"%EF%BC%BD"};cr=/[\x00\x22\x27\x3c\x3e]/g;Kq=/[\x00\x09-\x0d \x22\x26\x27\x2d\/\x3c-\x3e`\x85\xa0\u2028\u2029]/g;Iq=/[\x00\x09-\x0d \x22\x27\x2d\/\x3c-\x3e`\x85\xa0\u2028\u2029]/g;Wq=/[\x00- \x22\x27-\x29\x3c\x3e\\\x7b\x7d\x7f\x85\xa0\u2028\u2029\uff01\uff03\uff04\uff06-\uff0c\uff0f\uff1a\uff1b\uff1d\uff1f\uff20\uff3b\uff3d]/g;Vq=/^(?![^#?]*\/(?:\.|%2E){2}(?:[\/?#]|$))(?:(?:https?|mailto):|[^&:\/?#]*(?:[\/?#]|$))/i;Zq=/^[^&:\/?#]*(?:[\/?#]|$)|^https?:|^data:image\/[a-z0-9+]+;base64,[a-z0-9+\/]+=*$|^blob:/i; +Nq=/^(?!on|src|(?:action|archive|background|cite|classid|codebase|content|data|dsync|href|http-equiv|longdesc|style|usemap)\s*$)(?:[a-z0-9_$:-]*)$/i;Cq=/<(?:!|\/?([a-zA-Z][a-zA-Z0-9:\-]*))(?:[^>'"]|"[^"]*"|'[^']*')*>/g;Dq=/]/g,rs={"\n":"%0a","\f":"%0c","\r":"%0d",'"':"%22","'":"%27","(":"%28",")":"%29", +"*":"%2a","<":"%3c",">":"%3e"};var As=ws("Element","attributes")||ws("Node","attributes"),Ux=xs("Element","hasAttribute"),Vx=xs("Element","getAttribute"),Cs=xs("Element","setAttribute"),Wx=xs("Element","removeAttribute"),at=xs("Element","getElementsByTagName"),bt=xs("Element","matches")||xs("Element","msMatchesSelector"),Is=ws("Node","nodeName"),Ks=ws("Node","nodeType"),Ms=ws("Node","parentNode"),Es=ws("HTMLElement","style")||ws("Element","style"),Gs=ws("HTMLStyleElement","sheet"),Os=xs("CSSStyleDeclaration","getPropertyValue"), +Qs=xs("CSSStyleDeclaration","setProperty");var Ts=_ds.Og&&10>document.documentMode?null:/\s*([^\s'",]+[^'",]*(('([^'\r\n\f\\]|\\[^])*')|("([^"\r\n\f\\]|\\[^])*")|[^'",])*)/g,$s={"-webkit-border-horizontal-spacing":!0,"-webkit-border-vertical-spacing":!0};var nt={"* ARIA-CHECKED":!0,"* ARIA-COLCOUNT":!0,"* ARIA-COLINDEX":!0,"* ARIA-CONTROLS":!0,"* ARIA-DESCRIBEDBY":!0,"* ARIA-DISABLED":!0,"* ARIA-EXPANDED":!0,"* ARIA-GOOG-EDITABLE":!0,"* ARIA-HASPOPUP":!0,"* ARIA-HIDDEN":!0,"* ARIA-LABEL":!0,"* ARIA-LABELLEDBY":!0,"* ARIA-MULTILINE":!0,"* ARIA-MULTISELECTABLE":!0,"* ARIA-ORIENTATION":!0,"* ARIA-PLACEHOLDER":!0,"* ARIA-READONLY":!0,"* ARIA-REQUIRED":!0,"* ARIA-ROLEDESCRIPTION":!0,"* ARIA-ROWCOUNT":!0,"* ARIA-ROWINDEX":!0,"* ARIA-SELECTED":!0,"* ABBR":!0, +"* ACCEPT":!0,"* ACCESSKEY":!0,"* ALIGN":!0,"* ALT":!0,"* AUTOCOMPLETE":!0,"* AXIS":!0,"* BGCOLOR":!0,"* BORDER":!0,"* CELLPADDING":!0,"* CELLSPACING":!0,"* CHAROFF":!0,"* CHAR":!0,"* CHECKED":!0,"* CLEAR":!0,"* COLOR":!0,"* COLSPAN":!0,"* COLS":!0,"* COMPACT":!0,"* COORDS":!0,"* DATETIME":!0,"* DIR":!0,"* DISABLED":!0,"* ENCTYPE":!0,"* FACE":!0,"* FRAME":!0,"* HEIGHT":!0,"* HREFLANG":!0,"* HSPACE":!0,"* ISMAP":!0,"* LABEL":!0,"* LANG":!0,"* MAX":!0,"* MAXLENGTH":!0,"* METHOD":!0,"* MULTIPLE":!0, +"* NOHREF":!0,"* NOSHADE":!0,"* NOWRAP":!0,"* OPEN":!0,"* READONLY":!0,"* REQUIRED":!0,"* REL":!0,"* REV":!0,"* ROLE":!0,"* ROWSPAN":!0,"* ROWS":!0,"* RULES":!0,"* SCOPE":!0,"* SELECTED":!0,"* SHAPE":!0,"* SIZE":!0,"* SPAN":!0,"* START":!0,"* SUMMARY":!0,"* TABINDEX":!0,"* TITLE":!0,"* TYPE":!0,"* VALIGN":!0,"* VALUE":!0,"* VSPACE":!0,"* WIDTH":!0},ot={"* USEMAP":!0,"* ACTION":!0,"* CITE":!0,"* HREF":!0,"* LONGDESC":!0,"* SRC":!0,"LINK HREF":!0,"* FOR":!0,"* HEADERS":!0,"* NAME":!0,"A TARGET":!0, +"* CLASS":!0,"* ID":!0,"* STYLE":!0};var Xx="undefined"!=typeof WeakMap&&-1!=WeakMap.toString().indexOf("[native code]"),et=0;ft.prototype.set=function(a,b){if(zs(Ux,a,"hasAttribute",[this.h])){var c=parseInt(zs(Vx,a,"getAttribute",[this.h])||null,10);this.j[c]=b}else c=this.j.push(b)-1,Ds(a,this.h,c.toString()),this.m.push(a);return this};ft.prototype.get=function(a){if(zs(Ux,a,"hasAttribute",[this.h]))return a=parseInt(zs(Vx,a,"getAttribute",[this.h])||null,10),this.j[a]}; +ft.prototype.clear=function(){this.m.forEach(function(a){zs(Wx,a,"removeAttribute",[this.h])},this);this.m=[];this.j=[]};var Ct=!_ds.Og||_ds.He(10),Yx=!_ds.Og||null==document.documentMode; +gt.prototype.D=function(a){if(!Ct)return _ds.Sg(document,"SPAN");var b=_ds.Sg(document,"SPAN");this.j&&"*"==this.o&&(b.id=this.j);this.F&&(a=Ws("
    "+a+"
    "),dt(a),a=a.innerHTML);a=_ds.qd(a,null);var c=document.createElement("template");if(Yx&&"content"in c)_ds.Bd(c,a),c=c.content;else{var d=document.implementation.createHTMLDocument("x");c=d.body;_ds.Bd(d.body,a)}a=document.createTreeWalker(c,NodeFilter.SHOW_ELEMENT|NodeFilter.SHOW_TEXT,null,!1);for(c=Xx?new WeakMap:new ft;d=a.nextNode();){a:{var e= +d;switch(Ls(e)){case 3:e=Et(this,e);break a;case 1:if("TEMPLATE"==Js(e).toUpperCase())e=null;else{var g=Js(e).toUpperCase();if(g in this.C)var k=null;else this.m[g]?k=document.createElement(g):(k=_ds.Sg(document,"SPAN"),this.G&&Ds(k,"data-sanitizer-original-tag",g.toLowerCase()));if(k){var l=k,m=Bs(e);if(null!=m)for(var p=0;g=m[p];p++)if(g.specified){var q=e;var r=g;var w=r.name;if(0==w.lastIndexOf("data-sanitizer-",0))r=null;else{var y=Js(q);r=r.value;var D={tagName:(0,_ds.zc)(y).toLowerCase(),attributeName:(0,_ds.zc)(w).toLowerCase()}, +B={sf:void 0};"style"==D.attributeName&&(B.sf=Fs(q));q=zt(y,w);q in this.h?(w=this.h[q],r=w(r,D,B)):(w=zt(null,w),w in this.h?(w=this.h[w],r=w(r,D,B)):r=null)}null!==r&&Ds(l,g.name,r)}e=k}else e=null}break a;default:e=null}}if(e){if(1==Ls(e)&&c.set(d,e),d=Ns(d),g=!1,d)k=Ls(d),l=Js(d).toLowerCase(),m=Ns(d),11!=k||m?"body"==l&&m&&(k=Ns(m))&&!Ns(k)&&(g=!0):g=!0,k=null,g||!d?k=b:1==Ls(d)&&(k=c.get(d)),k.content&&(k=k.content),k.appendChild(e)}else _ds.Xg(d)}c.clear&&c.clear();return b};var pt={APPLET:!0,AUDIO:!0,BASE:!0,BGSOUND:!0,EMBED:!0,FORM:!0,IFRAME:!0,ISINDEX:!0,KEYGEN:!0,LAYER:!0,LINK:!0,META:!0,OBJECT:!0,SCRIPT:!0,SVG:!0,STYLE:!0,TEMPLATE:!0,VIDEO:!0};var qt={A:!0,ABBR:!0,ACRONYM:!0,ADDRESS:!0,AREA:!0,ARTICLE:!0,ASIDE:!0,B:!0,BDI:!0,BDO:!0,BIG:!0,BLOCKQUOTE:!0,BR:!0,BUTTON:!0,CAPTION:!0,CENTER:!0,CITE:!0,CODE:!0,COL:!0,COLGROUP:!0,DATA:!0,DATALIST:!0,DD:!0,DEL:!0,DETAILS:!0,DFN:!0,DIALOG:!0,DIR:!0,DIV:!0,DL:!0,DT:!0,EM:!0,FIELDSET:!0,FIGCAPTION:!0,FIGURE:!0,FONT:!0,FOOTER:!0,FORM:!0,H1:!0,H2:!0,H3:!0,H4:!0,H5:!0,H6:!0,HEADER:!0,HGROUP:!0,HR:!0,I:!0,IMG:!0,INPUT:!0,INS:!0,KBD:!0,LABEL:!0,LEGEND:!0,LI:!0,MAIN:!0,MAP:!0,MARK:!0,MENU:!0,METER:!0,NAV:!0, +NOSCRIPT:!0,OL:!0,OPTGROUP:!0,OPTION:!0,OUTPUT:!0,P:!0,PRE:!0,PROGRESS:!0,Q:!0,S:!0,SAMP:!0,SECTION:!0,SELECT:!0,SMALL:!0,SOURCE:!0,SPAN:!0,STRIKE:!0,STRONG:!0,STYLE:!0,SUB:!0,SUMMARY:!0,SUP:!0,TABLE:!0,TBODY:!0,TD:!0,TEXTAREA:!0,TFOOT:!0,TH:!0,THEAD:!0,TIME:!0,TR:!0,TT:!0,U:!0,UL:!0,VAR:!0,WBR:!0};var kt={"ANNOTATION-XML":!0,"COLOR-PROFILE":!0,"FONT-FACE":!0,"FONT-FACE-SRC":!0,"FONT-FACE-URI":!0,"FONT-FACE-FORMAT":!0,"FONT-FACE-NAME":!0,"MISSING-GLYPH":!0};_ds.F(_ds.lt,gt);_ds.f=_ds.ht.prototype;_ds.f.Qs=function(){delete this.m.FORM;return this};_ds.f.Rs=function(){if(this.D)throw Error("Rules from STYLE tags are already being inlined.");delete this.m.STYLE;this.o="*";return this}; +_ds.f.Aoa=function(a){if("STYLE"in this.m)throw Error("STYLE tags must first be allowed through allowStyleTag.");if(void 0!=a){if(!/^[a-zA-Z][\w-:\.]*$/.test(a))throw Error("Invalid ID.");this.o=a}else this.o=null;return this}; +_ds.f.DW=function(){if(this.H==Pb)throw Error("Inlining style rules requires allowing STYLE attributes first.");if(!("STYLE"in this.m))throw Error("You have already configured the builder to allow STYLE tags in the output. Inlining style rules would prevent STYLE tags from appearing in the output and conflict with such directive.");this.D=!0;return this};_ds.f.Ps=function(){this.H=At;return this}; +_ds.f.Ts=function(a){_ds.dd(a,function(b){this.C[b.toUpperCase()]=!0;delete this.m[b.toUpperCase()]},this);return this};_ds.f.Ss=function(a){_ds.dd(a,function(b){"string"===typeof b&&(b={tagName:"*",attributeName:b,Bd:null});var c=zt(b.tagName,b.attributeName);this.h[c]=b.Bd?b.Bd:jt;this.j[c]=!0},this);return this}; +_ds.f.WZ=function(a){this.C={SPAN:!0};_ds.dd(a,function(b){b=b.toUpperCase();if(qt[b])this.C[b]=!0;else throw Error("Only whitelisted tags can be allowed. See goog.html.sanitizer.TagWhitelist.");},this);return this};_ds.f.VZ=function(a){var b=this.h;this.h={};_ds.dd(a,function(c){"string"===typeof c&&(c={tagName:"*",attributeName:c.toUpperCase(),Bd:null});var d=zt(c.tagName,c.attributeName);if(!b[d])throw Error("Only whitelisted attributes can be allowed.");this.h[d]=c.Bd?c.Bd:jt},this);return this}; +_ds.f.us=function(){this.N=!0;return this};_ds.f.xoa=function(a){this.F=a;return this};_ds.f.yoa=function(a){this.W=a;return this};_ds.f.woa=function(a){this.O=a;return this};_ds.lt.prototype.K=function(a){this.j=Bt(this);return gt.prototype.D.call(this,a)};var Zx=[".c.googlers.com",".corp.google.com",".googleplex.com"],$x={},ay=($x[0]=new Gt("AIzaSyBdGQTIAPnTSjkekiLvV7n6GwavAHO8xqA",window.location.protocol+"//"+window.location.hostname+":9876"),$x[1]=new Gt("AIzaSyBdGQTIAPnTSjkekiLvV7n6GwavAHO8xqA","https://staging-developerprofiles-pa.sandbox.googleapis.com"),$x[3]=new Gt("AIzaSyA3iBc8feZzCipnYwiq-SSozzK0dwmBcms","https://developerprofiles-pa.googleapis.com"),$x)[function(a){a=void 0===a?window.location.hostname:a;return"localhost"===a||Zx.some(function(b){if(a.length>= +b.length&&a.substr(-b.length)===b)return!0})?1:3}()],It=ay.apiKey,Ht=ay.h,Jt={"client/cors":!0},by=document.location.hostname;by.endsWith(".google.com")&&(by.startsWith("cloud.")||by.startsWith("developers.")||by.startsWith("firebase.")||by.startsWith("codelabs."))&&(Jt["googleapis.config/auth/useFirstPartyAuth"]=!0,Jt["googleapis.config/auth/useFirstPartyAuthV2"]=!0); +var cy=new uo("v1",Kt()),dy=new vo("v1",Kt()),ey=new wo("v1",Kt()),fy=new yo("v1",Kt()),mu=new Bo("v1",Kt()),gy=new function(){var a=Kt();this.j="v1";this.h=new dn(a,null)},hy=new Ao("v1",Kt()),iy=new _ds.Fo("v1",Kt()),jy=new Go("v1",Kt()),ky=new Ko("v1",Kt()),ly=new Io("v1",Kt()),Vt=new Lo("v1",Kt());var my=new Map;_ds.t(_ds.Lt,_ds.R);_ds.Lt.prototype.connectedCallback=function(){var a=this.constructor,b=my.get(a);b?console.error("can't add duplicate element to page: "+b.tagName):my.set(a,this)};_ds.Lt.prototype.disconnectedCallback=function(){var a=this.constructor;my.get(a)===this&&my.delete(a)};_ds.Lt.prototype.disconnectedCallback=_ds.Lt.prototype.disconnectedCallback;_ds.Lt.prototype.connectedCallback=_ds.Lt.prototype.connectedCallback;_ds.f=Mt.prototype;_ds.f.Na=function(a,b){for(var c=[],d=1;d+new Date-a};Pt.prototype.clear=function(){_ds.Sa.__globalHafezClientProfileNotFoundCache.clear()};var Zt,Yt,$t=-1,ny=null,hu=new Ot,iu=new Pt,oy=new Nt,lu=new Mt;_ds.f=_ds.du.prototype;_ds.f.Nj=function(a){var b=this;return _ds.E(function(c){if(1==c.h)return b.j=a,_ds.u(c,window.customElements.whenDefined("devsite-user"),2);b.m=b.j.getAccessToken.bind(a);b.C.listen(document.body,"devsite-signed-in-state-changed",function(){b.clearCache()});_ds.v(c)})};_ds.f.isSignedIn=function(){var a=this;return _ds.E(function(b){return 1==b.h?_ds.u(b,fu(a),2):a.j?b.return(a.j.isSignedIn()):b.return(!1)})}; +_ds.f.getFeaturesEligibility=function(a){a=void 0===a?!1:a;var b=this,c,d,e,g,k;return _ds.E(function(l){switch(l.h){case 1:return _ds.u(l,eu(b,{readMask:a?"eligibility.q_and_a":null}),2);case 2:return c=l.j,d=lu.Na("HafezV1Service.getEligibility",c),e=lu.get(d),e||(e=jy.getEligibility(c),lu.set(d,e)),_ds.x(l,3,4),_ds.u(l,e,6);case 6:g=l.j;case 4:_ds.Aa(l);lu.delete(d);_ds.Ba(l,5);break;case 3:_ds.A(l);l.J(4);break;case 5:return k={createProfile:null,qAndA:null},g&&g.Ra&&(g.Ra.createProfile&&(k.createProfile= +{status:g.Ra.createProfile.status,ineligibleReason:g.Ra.createProfile.ineligibleReason}),g.Ra.qAndA&&(k.qAndA={status:g.Ra.qAndA.status,ineligibleReason:g.Ra.qAndA.ineligibleReason})),l.return(k)}})}; +_ds.f.changeEligibility=function(a){a=void 0===a?!1:a;var b=this,c,d,e,g,k;return _ds.E(function(l){switch(l.h){case 1:return _ds.u(l,eu(b),2);case 2:return c=l.j,d=new Ln,d.updateMask="eligibility.q_and_a",d.qAndA=a,e=lu.Na("HafezEligibilityService.change",d,c),g=lu.get(e),g||(g=xo(ey,d,c),lu.set(e,g)),_ds.x(l,3,4),_ds.u(l,g,4);case 4:_ds.Aa(l);lu.delete(e);_ds.Ba(l,0);break;case 3:if((k=_ds.A(l))&&k.error&&"ALREADY_EXISTS"!==k.error.status)throw k;l.J(4)}})}; +_ds.f.getEligibility=function(){var a=this,b,c,d,e;return _ds.E(function(g){switch(g.h){case 1:return ny?g.return(ny):_ds.u(g,eu(a),2);case 2:return b=g.j,c=lu.Na("HafezV1Service.getEligibility",b),d=lu.get(c),d||(d=jy.getEligibility(b),lu.set(c,d)),_ds.x(g,3,4),_ds.u(g,d,6);case 6:e=g.j;case 4:_ds.Aa(g);lu.delete(c);_ds.Ba(g,5);break;case 3:_ds.A(g);g.J(4);break;case 5:ny={};if(e)switch(e.zf){case Ex.Ld:ny="ELIGIBILITY_UNKNOWN";break;case Ex.Ug:ny="ELIGIBLE";break;case Ex.ah:ny="NOT_ELIGIBLE_NON_GMAIL"; +break;case Ex.$g:ny="NOT_ELIGIBLE_ADMIN_DISABLED";break;default:ny="ELIGIBILITY_UNKNOWN"}else ny="ELIGIBILITY_UNKNOWN";return g.return(ny)}})};_ds.f.clearCache=function(){hu.clear();iu.clear();oy.clear();lu.clear();Zt=ny=null;Yt=""};_ds.f.setAccessToken=function(a){Yt=a};_ds.f.getAccessToken=function(){var a=this;return _ds.E(function(b){switch(b.h){case 1:return _ds.u(b,fu(a),2);case 2:return _ds.x(b,3),_ds.u(b,a.m(a.o),5);case 5:return b.return(b.j);case 3:_ds.A(b);case 4:return b.return("")}})}; +_ds.f.setAccessTokenExpiry=function(a){this.o=a}; +_ds.f.grantAwardToCurrentUser=function(a,b,c){c=void 0===c?!0:c;var d=this,e,g,k,l,m,p,q,r,w,y,D,B,H,J,T,ma;return _ds.E(function(Y){switch(Y.h){case 1:return a=bu(a),_ds.x(Y,2),_ds.u(Y,d.getProfile(),4);case 4:e=Y.j;_ds.z(Y,3);break;case 2:_ds.A(Y);case 3:if(!e)return _ds.u(Y,Ut(d.h),12);k=new pn;k.Tb=new _ds.no;k.Tb.servePath=a;k.Tb.tenantId=b;return _ds.u(Y,eu(d),7);case 7:return l=Y.j,m=lu.Na("HafezAwardsService.create",k,l),p=lu.get(m),p||(p=dy.create(k,l),lu.set(m,p)),_ds.x(Y,8,9),_ds.u(Y,p, +11);case 11:q=Y.j;case 9:_ds.Aa(Y);lu.delete(m);_ds.Ba(Y,10);break;case 8:r=_ds.A(Y);if(r.error&&"ALREADY_EXISTS"===r.error.status)return Y.return(null);throw r;case 10:q&&(e&&e.obfuscatedProfileId&&(oy.delete("me"),oy.delete(e.obfuscatedProfileId)),g=gu(d,q));Y.J(6);break;case 12:return w=Y.j,y=new nn,D=new ln,D.id=new _ds.no,D.id.servePath=a,D.id.tenantId=b,B=new kn,B.badge=D,y.walletId=w,y.award=B,H=lu.Na("HafezWalletAwardsService.create",y),J=lu.get(H),J||(J=ky.create(y),lu.set(H,J)),_ds.x(Y, +13,14),_ds.u(Y,J,16);case 16:T=Y.j;case 14:_ds.Aa(Y);lu.delete(H);_ds.Ba(Y,15);break;case 13:ma=_ds.A(Y);if(ma.error&&"ALREADY_EXISTS"===ma.error.status)return Y.return(null);throw ma;case 15:T&&(g=gu(d,T));case 6:return g?(g.servePath&&g.tenantId&&c&&document.body.dispatchEvent(new CustomEvent("devsite-award-granted",{detail:{award:g},bubbles:!0})),Y.return(g)):Y.return(null)}})}; +_ds.f.redeemAwardToCurrentUser=function(a){var b=this,c,d,e,g,k,l;return _ds.E(function(m){switch(m.h){case 1:return _ds.x(m,2),_ds.u(m,b.getProfile(),4);case 4:c=m.j;_ds.z(m,3);break;case 2:_ds.A(m);case 3:if(!c)throw Error("Need a profile to redeem badge.");d=new _ds.vn;d.Tc=a;return _ds.u(m,eu(b),5);case 5:return e=m.j,g=lu.Na("HafezWalletService.redeem",d,e),k=lu.get(g),k||(k=_ds.Jo(ly,d,e),lu.set(g,k)),_ds.x(m,6,7),_ds.u(m,k,9);case 9:l=m.j;case 7:_ds.Aa(m);lu.delete(g);_ds.Ba(m,8);break;case 6:_ds.A(m); +m.J(7);break;case 8:return l.eb&&0c||c>(this.j?this.j.length:0))throw Error("Child component index out of bounds");this.o&&this.j||(this.o={},this.j=[]);if(a.m==this){var d=a.getId();this.o[d]=a;_ds.Eb(this.j,a)}else Wb(this.o,a.getId(),a);Gu(a,this);Ib(this.j,c,0,a);a.Oa&&this.Oa&&a.m==this?(b=this.h,(b.childNodes[c]||null)!=a.getElement()&&(a.getElement().parentElement==b&&b.removeChild(a.getElement()),c=b.childNodes[c]|| +null,b.insertBefore(a.getElement(),c))):b?(this.h||this.Hf(),c=this.j?this.j[c+1]||null:null,Iu(a,this.h,c?c.h:null)):this.Oa&&!a.Oa&&a.h&&a.h.parentNode&&1==a.h.parentNode.nodeType&&Hu(a)};_ds.f.iO=function(){null==this.G&&(this.G=_ds.qk(this.Oa?this.h:this.C.h.body));return this.G};_ds.f.Dla=function(a){if(this.Oa)throw Error("Component already rendered");this.G=a};_ds.f.sG=function(){var a=[];Ju(this,function(b){a.push(b.getId())});return a}; +_ds.f.yW=function(a){return this.j&&a?_ds.Cb(this.j,a):-1};_ds.f.removeChild=function(a,b){if(a){var c="string"===typeof a?a:a.getId();a=this.o&&c?Xb(this.o,c)||null:null;if(c&&a){var d=this.o;c in d&&delete d[c];_ds.Eb(this.j,a);b&&(Ku(a),a.h&&_ds.ah(a.h));Gu(a,null)}}if(!a)throw Error("Child is not in parent component");return a};_ds.f.jO=function(a){for(var b=[];this.j&&0!=this.j.length;){var c=b,d=c.push;var e=this.removeChild(this.j?this.j[0]||null:null,a);d.call(c,e)}return b};_ds.f.D_=function(){return this.N}; +_ds.f.Pka=function(a){if(this.Oa)throw Error("Component already rendered");this.N=a};_ds.F(Lu,Fu);Lu.prototype.Hf=function(){this.h=this.C.pd("FORM",{method:"POST",style:"display:none"})};var Ru;Ru=["js","html","css"];_ds.Qu={Pg:"b",description:""};_ds.F(_ds.Su,_ds.jf);_ds.f=_ds.Su.prototype;_ds.f.a0=function(a){return Tu(a,this)};_ds.f.X_=function(){var a=new _ds.Ne;Uu(this,a);return _ds.Se(a)};_ds.f.Ba=function(){return _ds.L(this,1)};_ds.f.$_=function(a){return _ds.Cf(this,1,a)};_ds.f.Y_=function(a){return _ds.Cf(this,2,a)};_ds.f.Z_=function(a){return _ds.Bf(this,3,a,0)};_ds.F(_ds.Wu,_ds.jf);var Vu=[1];_ds.f=_ds.Wu.prototype;_ds.f.c0=function(a){var b={J_:_ds.pf(_ds.Ff(this,_ds.Su,1),Tu,a),current:_ds.sf(this,2)};a&&(b.M=this);return b};_ds.f.b0=function(){var a=new _ds.Ne;var b=_ds.Ff(this,_ds.Su,1);0 a"));for(var c=b.next();!c.done;c= +b.next())c=c.value,c.hasAttribute("tabindex")||c.setAttribute("tabindex",0)}(b=this.querySelector("h3"))&&this.setAttribute("aria-label",b.innerText);av(this);this.H.listen(this,"keydown",function(d){if(("Tab"===d.key||9===d.keyCode)&&null!=document.activeElement&&a.h.includes(document.activeElement)){var e=a.h.indexOf(document.activeElement);d.shiftKey?a.h[0===e?a.h.length-1:e-1].focus():a.h[e===a.h.length-1?0:e+1].focus();d.preventDefault()}});this.Y||Zu(this)}; +_ds.f.$f=function(){this.setAttribute("aria-modal","true");this.setAttribute("aria-role","dialog");this.dispatchEvent(new CustomEvent("devsite-sitemask-show",{bubbles:!0}));this.dispatchEvent(new CustomEvent("devsite-dialog-show",{bubbles:!0}));this.G=this.parentElement;this.K=this.nextElementSibling;this.F||(this.F=document.createElement("div"),this.F.classList.add("devsite-dialog-wrapper"));this.F.appendChild(this);document.body.appendChild(this.F);var a=this.querySelector("h3");a&&this.scrollHeight> +this.clientHeight?(a.hasAttribute("tabindex")||a.setAttribute("tabindex",-1),a.focus()):this.h.length&&this.h[0].focus()};_ds.f.disconnectedCallback=function(){_ds.Wj(this.H)};_ds.f.Kf=function(){};_ds.fa.Object.defineProperties(_ds.Xu.prototype,{open:{configurable:!0,enumerable:!0,get:function(){return this.hasAttribute("open")},set:function(a){a?this.setAttribute("open",this.getAttribute("open")||""):this.removeAttribute("open")}}}); +_ds.fa.Object.defineProperties(_ds.Xu,{observedAttributes:{configurable:!0,enumerable:!0,get:function(){return["open"]}}});_ds.Xu.prototype.disconnectedCallback=_ds.Xu.prototype.disconnectedCallback;_ds.Xu.prototype.connectedCallback=_ds.Xu.prototype.connectedCallback;_ds.Xu.prototype.attributeChangedCallback=_ds.Xu.prototype.attributeChangedCallback;var qy={wk:["BC","AD"],vk:["Before Christ","Anno Domini"],Ck:"JFMAMJJASOND".split(""),Ok:"JFMAMJJASOND".split(""),Ak:"January February March April May June July August September October November December".split(" "),Nk:"January February March April May June July August September October November December".split(" "),Kk:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),Qk:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),$k:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "), +Sk:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),Mk:"Sun Mon Tue Wed Thu Fri Sat".split(" "),Rk:"Sun Mon Tue Wed Thu Fri Sat".split(" "),Tq:"SMTWTFS".split(""),Pk:"SMTWTFS".split(""),Lk:["Q1","Q2","Q3","Q4"],Ek:["1st quarter","2nd quarter","3rd quarter","4th quarter"],ek:["AM","PM"],Rg:["EEEE, MMMM d, y","MMMM d, y","MMM d, y","M/d/yy"],gh:["h:mm:ss a zzzz","h:mm:ss a z","h:mm:ss a","h:mm a"],jk:["{1} 'at' {0}","{1} 'at' {0}","{1}, {0}","{1}, {0}"],Xg:6,zr:[5,6],Yg:5},hv=qy; +hv=qy;cv.prototype.F=function(){return{id:this.o,std_offset:-this.m,names:_ds.Gb(this.C),names_ext:Yb(this.h),transitions:_ds.Gb(this.j)}};cv.prototype.H=function(a){return dv(this.m-gv(this,a))};cv.prototype.D=function(a){return 0this.C.length?d=!1:this.H.length=B)y+=B, +l=!0;else if(D==q.charAt(0)){if(g||k)break;y+=".";g=!0}else if(D==r.charAt(0)&&("\u00a0"!=r.charAt(0)||b[0]+1b.charCode&&nr(d)?b.charCode:0):_ds.ck&&!_ds.Qg?(d=this.Cb,e=nr(d)?b.keyCode:0):("keypress"==a.type?(xy&&(c=this.Ff),b.keyCode==b.charCode?32>b.keyCode?(d=b.keyCode,e=0):(d=this.Cb,e=b.charCode):(d=b.keyCode||this.Cb,e=b.charCode||0)):(d=b.keyCode||this.Cb,e=b.charCode||0),_ds.mr&&63==e&&224==d&&(d= +191));var g=d=_ds.or(d);d?63232<=d&&d in uy?g=uy[d]:25==d&&a.shiftKey&&(g=9):b.keyIdentifier&&b.keyIdentifier in vy&&(g=vy[b.keyIdentifier]);_ds.bk&&wy&&"keypress"==a.type&&!qr(g,this.$a,a.shiftKey,a.ctrlKey,c,a.metaKey)||(a=g==this.$a,this.$a=g,b=new uw(g,e,a,b),b.altKey=c,this.dispatchEvent(b))};_ds.f.getElement=function(){return this.Ec};_ds.f.ma=function(){_ds.sw.ua.ma.call(this);_ds.tw(this)};_ds.F(uw,Sf);_ds.F(xw,_ds.dj);_ds.f=xw.prototype;_ds.f.Mf=!0;_ds.f.Lf=!0;_ds.f.ma=function(){xw.ua.ma.call(this);_ds.Of(this.L);_ds.Of(this.F);_ds.Of(this.N)};_ds.f.VM=function(){var a=this.C;return a&&_ds.pk(a)?a:this.m};_ds.f.Pb=function(a){this.o?_ds.ok(this.o,a):a&&this.G&&(this.o=this.G());this.o&&_ds.ks(this.o,"goog-zippy-content");this.C?(_ds.ok(this.m,!a),_ds.ok(this.C,a)):yw(this,a);this.h=a;this.dispatchEvent(new zw("toggle",this,this.h))};_ds.f.sX=function(){return this.Lf};_ds.f.tX=function(){return this.Mf}; +_ds.f.xia=function(a){this.Lf!=a&&((this.Lf=a)?(ww(this,this.m),ww(this,this.C)):(_ds.Wj(this.L),_ds.tw(this.F)))};_ds.f.yia=function(a){this.Mf!=a&&((this.Mf=a)?(vw(this,this.m),vw(this,this.C)):_ds.Wj(this.N))};_ds.f.Nn=function(a){if(13==a.keyCode||32==a.keyCode)this.Pb(!this.h),this.dispatchEvent(new zw("action",this,this.h,a)),a.preventDefault(),a.stopPropagation()};_ds.f.Mn=function(a){this.Pb(!this.h);this.dispatchEvent(new zw("action",this,this.h,a))};_ds.F(zw,_ds.Rf);_ds.F(_ds.Aw,xw);_ds.f=_ds.Aw.prototype;_ds.f.ci=500;_ds.f.jl=_ds.qw;_ds.f.jX=function(){return null!=this.j}; +_ds.f.Pb=function(a){if(this.h!=a||this.j){"none"==this.D.style.display&&(this.D.style.display="");var b=this.o.offsetHeight;if(this.j){rg(this.j);this.j.Fc(!1);var c=b-Math.abs(parseInt(this.o.style.marginTop,10))}else c=a?0:b;yw(this,a);this.j=new _ds.nw([0,c],[0,a?b:0],this.ci,this.jl);_ds.eg(this.j,["begin","animate","end"],this.Jn,!1,this);_ds.eg(this.j,"begin",(0,_ds.tb)(this.Kn,this,a));_ds.eg(this.j,"end",(0,_ds.tb)(this.Ln,this,a));this.j.play(!1)}}; +_ds.f.Jn=function(a){var b=this.o;b.style.marginTop=a.y-b.offsetHeight+"px"};_ds.f.Kn=function(a){this.dispatchEvent(new zw("a",this,a))};_ds.f.Ln=function(a){a&&(this.o.style.marginTop="0");rg(this.j);this.h=a;this.j=null;a||(this.D.style.display="none");this.dispatchEvent(new zw("toggle",this,a));this.dispatchEvent(new zw("b",this,a))};})(_ds_www); diff --git a/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_a11y_announce_module.js b/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_a11y_announce_module.js new file mode 100644 index 0000000..c24f51b --- /dev/null +++ b/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_a11y_announce_module.js @@ -0,0 +1,2 @@ +(function(_ds){var window=this;'use strict';var yy=function(){var a=_ds.R.call(this)||this;a.h=new _ds.Qj;return a},zy=function(){return"devsite-a11y-announce"};_ds.t(yy,_ds.R);yy.prototype.connectedCallback=function(){var a=this;this.setAttribute("aria-live","assertive");this.setAttribute("aria-atomic","true");this.h.listen(document.body,"devsite-a11y-announce",function(b){b=b.Z;(b=b.detail&&b.detail.message)&&_ds.nh(a,b)})};yy.prototype.disconnectedCallback=function(){_ds.Wj(this.h)};yy.prototype.connectedCallback=yy.prototype.connectedCallback; +yy.getTagName=zy;try{window.customElements.define(zy(),yy)}catch(a){console.warn("devsite.app.customElement.DevsiteA11yAnnounce",a)};})(_ds_www); diff --git a/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_analytics_module.js b/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_analytics_module.js new file mode 100644 index 0000000..26079c1 --- /dev/null +++ b/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_analytics_module.js @@ -0,0 +1,341 @@ +(function(_ds){var window=this;'use strict';var Ay=function(a,b,c){if(null==c)return b;if("string"===typeof c)return c?a+encodeURIComponent(c):"";for(var d in c)if(Object.prototype.hasOwnProperty.call(c,d)){var e=c[d];e=Array.isArray(e)?e:[e];for(var g=0;ga.length?"&":"")+encodeURIComponent(d)+"="+encodeURIComponent(String(k)))}}return b},By=function(a,b,c){if(null!=c)for(var d=0;db?null:"string"===typeof a?a.charAt(b):a[b]},Iy=function(a){var b=b||0;return function(){return a.apply(this,Array.prototype.slice.call(arguments,0,b))}},Jy=function(a,b){var c={},d;for(d in a)c[d]=b.call(void 0,a[d],d,a);return c},Ky=function(a){var b=1;a=a.split(":");for(var c=[];0>>0)},My=function(a,b){var c=b&2147483648; +c&&(a=~a+1>>>0,b=~b>>>0,0==a&&(b=b+1>>>0));a=Ly(a,b);return c?-a:a},Ny=function(a,b,c){var d=-(a&1);return c((a>>>1|b<<31)^d,b>>>1^d)},Oy=function(a,b){return Ny(a,b,My)},Py=function(a,b){function c(e,g){e=e?String(e):"";return g?"0000000".slice(e.length)+e:e}if(2097151>=b)return""+(4294967296*b+a);var d=(a>>>24|b<<8)>>>0&16777215;b=b>>16&65535;a=(a&16777215)+6777216*d+6710656*b;d+=8147497*b;b*=2;1E7<=a&&(d+=Math.floor(a/1E7),a%=1E7);1E7<=d&&(b+=Math.floor(d/1E7),d%=1E7);return c(b,0)+c(d,b)+c(a, +1)},Qy=function(a,b){var c=b&2147483648;c&&(a=~a+1>>>0,b=~b+(0==a?1:0)>>>0);a=Py(a,b);return c?"-"+a:a},Sy=function(a,b,c){this.j=null;this.h=this.m=this.o=0;this.C=!1;a&&Ry(this,a,b,c)},Uy=function(a,b,c){if(Ty.length){var d=Ty.pop();a&&Ry(d,a,b,c);return d}return new Sy(a,b,c)},Ry=function(a,b,c,d){a.j=_ds.ce(b);a.o=void 0!==c?c:0;a.m=void 0!==d?a.o+d:a.j.length;a.h=a.o},Vy=function(a){return a.h==a.m},Wy=function(a,b){for(var c=128,d=0,e=0,g=0;4>g&&128<=c;g++)c=a.j[a.h++],d|=(c&127)<<7*g;128<= +c&&(c=a.j[a.h++],d|=(c&127)<<28,e|=(c&127)>>4);if(128<=c)for(g=0;5>g&&128<=c;g++)c=a.j[a.h++],e|=(c&127)<<7*g+3;if(128>c)return b(d>>>0,e>>>0);a.C=!0},Xy=function(a){return Wy(a,function(b,c){return Ny(b,c,Qy)})},Yy=function(a,b){for(;128>>=7;a.h--},Zy=function(a,b){var c=a.j,d=a.h;b=d+b;for(var e=[],g="";dk)e.push(k);else if(192>k)continue;else if(224>k){var l=c[d++];e.push((k&31)<<6|l&63)}else if(240>k){l=c[d++];var m=c[d++];e.push((k&15)<<12|(l&63)<<6|m&63)}else if(248> +k){l=c[d++];m=c[d++];var p=c[d++];k=(k&7)<<18|(l&63)<<12|(m&63)<<6|p&63;k-=65536;e.push((k>>10&1023)+55296,(k&1023)+56320)}8192<=e.length&&(g+=String.fromCharCode.apply(null,e),e.length=0)}g+=_ds.Ob(e);a.h=d;return g},$y=function(a,b,c){this.h=Uy(a,b,c);this.D=this.h.h;this.j=this.m=-1;this.o=!1;this.C=null},az=function(a){var b;(b=Vy(a.h))||(b=a.o)||(b=a.h,b=b.C||0>b.h||b.h>b.m);if(b)return!1;a.D=a.h.h;b=a.h.cb();var c=b&7;if(0!=c&&5!=c&&1!=c&&2!=c&&3!=c&&4!=c)return a.o=!0,!1;a.m=b>>>3;a.j=c;return!0}, +bz=function(a){switch(a.j){case 0:if(0!=a.j)bz(a);else{for(a=a.h;a.j[a.h]&128;)a.h++;a.h++}break;case 1:1!=a.j?bz(a):(a=a.h,a.h+=8);break;case 2:if(2!=a.j)bz(a);else{var b=a.h.cb();a=a.h;a.h+=b}break;case 5:5!=a.j?bz(a):(a=a.h,a.h+=4);break;case 3:b=a.m;do{if(!az(a)){a.o=!0;break}if(4==a.j){a.m!=b&&(a.o=!0);break}bz(a)}while(1);break;default:a.o=!0}},cz=function(a,b){var c=a.h.cb();c=a.h.h+c;for(var d=[];a.h.hq.indexOf(r)});b=_ds.n(b);for(p=b.next();!p.done;p=b.next())a=p.value,-1===e.indexOf(a)?(m=new Gz,_ds.N(m,1,Number(a)),_ds.N(m,2,Number(c[a][0])),k.push(m)):(m=new Dz,_ds.N(m,1,Number(a)),_ds.N(m,2,c[a][0]),l.push(m));c=new Kz;_ds.zf(c,2,g);_ds.zf(c,3,k);_ds.zf(c,4,l);return c},Pz=function(a,b){var c=_ds.n(b.split("="));b=c.next().value;c=c.next().value;a[b]=a[b]||[];a[b].push(c)},Vz=function(a){if(!a)return null; +if(a instanceof _ds.Il)a=a.get("__utmz");else a:{a=_ds.n(a.split(";"));for(var b=a.next();!b.done;b=a.next()){b=b.value;var c=b.indexOf("=");if(0y;y+=4)w[y/4]=r[y]<<24|r[y+1]<<16|r[y+2]<<8|r[y+3];for(y=16;80>y;y++)r=w[y-3]^w[y-8]^w[y-14]^w[y-16],w[y]=(r<<1|r>>>31)&4294967295;r=e[0];var D=e[1],B=e[2],H=e[3],J=e[4];for(y=0;80>y;y++){if(40>y)if(20>y){var T=H^D&(B^H);var ma=1518500249}else T=D^B^H,ma=1859775393;else 60>y?(T=D&B|H&(D|B),ma=2400959708):(T=D^B^H,ma=3395469782);T=((r<<5|r>>>27)&4294967295)+T+J+ma+w[y]&4294967295;J=H;H=B;B=(D<<30|D>>>2)&4294967295;D=r; +r=T}e[0]=e[0]+r&4294967295;e[1]=e[1]+D&4294967295;e[2]=e[2]+B&4294967295;e[3]=e[3]+H&4294967295;e[4]=e[4]+J&4294967295}function c(r,w){if("string"===typeof r){r=unescape(encodeURIComponent(r));for(var y=[],D=0,B=r.length;Dp?c(l,56-p):c(l,64-(p-56));for(var y=63;56<=y;y--)g[y]= +w&255,w>>>=8;b(g);for(y=w=0;5>y;y++)for(var D=24;0<=D;D-=8)r[w++]=e[y]>>D&255;return r}for(var e=[],g=[],k=[],l=[128],m=1;64>m;++m)l[m]=0;var p,q;a();return{reset:a,update:c,digest:d,digestString:function(){for(var r=d(),w="",y=0;ya.Wg()?"https://www.google.com/log?format=json&hasfast=true":"https://play.google.com/log?format=json&hasfast=true");return a.D},cE=function(a,b){a.C=new _ds.Ol(1>b?1:b,3E5,.1);_ds.Lj(a.m,a.C.j)},eE=function(a){dE(a,32,10,function(b,c){b=_ds.Uh(b,"format","json");b=_ds.Gd().navigator.sendBeacon(b,c.La());a.K&& +!b&&(a.K=!1);return b})},fE=function(a){dE(a,6,5,function(b,c){c=c.La();for(var d=[],e=0,g=0;g>=8);d[e++]=k}c=_ds.Ke(d,3);b=qz(b,"format","base64json","p",c);_ds.Ed(new Image,b);return!0})},dE=function(a,b,c,d){if(0!=a.h.length){var e=_ds.Yh(bE(a),"format");e=qz(e,"auth",a.Xa(),"authuser",a.G||"0");for(var g=0;gg;g++)8==g||13==g||18==g||23==g?l[g]="-":14==g?l[g]="4":(2>=d&&(d=33554432+16777216*Math.random()|0),e=d&15,d>>=4,l[g]=mE[19==g?e&3|8:e]);l=l.join("");lE.set("concordWindowId", +l)}_ds.N(c,34,l);(l=a.h.document.referrer)&&_ds.N(c,18,l);_ds.N(c,27,a.h.document.hidden);if(a.m)for(l=_ds.n(a.m),d=l.next();!d.done;d=l.next())d.value.apply(c);b.lh&&_ds.N(c,57,b.lh);b.oh&&_ds.N(c,58,b.oh);b.qh&&_ds.N(c,59,b.qh);b.nh&&_ds.N(c,62,b.nh);b.ph&&_ds.N(c,65,b.ph);b=new nD;l=c.La();_ds.N(b,8,l);if(c=(c=_ds.P(c,fA,21))?_ds.P(c,cA,1):null)c=_ds.I(c,1),_ds.N(b,11,c);jE(a).Sh(b)},kE=function(a,b,c){var d=new rA;_ds.N(d,1,b);_ds.N(d,2,String(c));_ds.Gf(a,5,d,rA,void 0)},oE=function(a){this.H= +a;this.jd="UNDEFINED";this.D=!0;this.ud=!1;this.o=2500;this.j="https://cloud.google.com/log?format=json&hasfast=true";this.h=null;this.m={};this.vd="https:"===a.location.protocol;this.C=a.location.hostname},pE=function(a,b){a.m[b.constructor.name]=b;return a},qE=function(){},AE=function(a,b){var c=void 0===b?{}:b;b=c.Aa;var d=c.mb;c=c.accountId;if(!a)return"/pagepath_not_provided";a=a.replace(rE,"$2");var e=new _ds.Zh(a);_ds.mi(e,"project")&&_ds.li(e,"project",":projectId");a=e.o;_ds.gi(e.h.toString())&& +(a+="?"+_ds.gi(e.h.toString()));b&&(a=a.replace(b,":projectId"));d&&(a=a.replace(d,":projectNumber"));c&&(a=a.replace(c,":accountId"));a=a.replace(sE,"$1:vmInstanceName");a=a.replace(tE,"$1:accountId");a=a.replace(uE,"$1:emailId");a=a.replace(vE,"$1:clientId");a=a.replace(wE,"$1:organizationId");(b=xE.exec(a))&&b&&b[4]&&(d=(d=b[4])&&yE(d)?":endpointsApiId":d,a=a.replace(b[0],b[1]+d));_ds.yc(a,"/billing/enablebillingforproject")&&(a="/billing/enablebillingforproject");return a=a.replace(zE,":uuid")}, +yE=function(a){var b=_ds.yc(a,"."),c=BE.some(function(d){return _ds.oc(a,d)});return b&&!c},CE=function(){},DE=function(a){this.window=a;this.h={}},FE=function(a){a=void 0===a?window:a;return pE(pE(new EE(a),new DE(a)),new CE)},GE=function(a,b,c,d,e,g,k,l,m,p,q,r,w,y,D){iE.call(this,a,b,c,d,e,k,l,m,p,q,r,w,y,D);this.H=g},EE=function(){oE.apply(this,arguments);this.F=new Nz},HE=function(){this.h={}},IE=function(a){for(var b=new HE,c=_ds.n(window.dataLayer||[]),d=c.next();!d.done;d=c.next())d=d.value, +d.hasOwnProperty("freeTrialEligibleUser")&&(a.freeTrialEligibleUser=String(d.freeTrialEligibleUser)||""),"trackExperiment"===d.event&&(b.h[d.experimentType]=d.variant);0Ty.length&&Ty.push(this)};_ds.f.JY=function(){return Uy(this.j,this.o,this.m-this.o)}; +_ds.f.clear=function(){this.j=null;this.h=this.m=this.o=0;this.C=!1};_ds.f.reset=function(){this.h=this.o};_ds.f.r_=function(){return this.h>this.m}; +_ds.f.cb=function(){var a=this.j;var b=a[this.h];var c=b&127;if(128>b)return this.h+=1,c;b=a[this.h+1];c|=(b&127)<<7;if(128>b)return this.h+=2,c;b=a[this.h+2];c|=(b&127)<<14;if(128>b)return this.h+=3,c;b=a[this.h+3];c|=(b&127)<<21;if(128>b)return this.h+=4,c;b=a[this.h+4];c|=(b&15)<<28;if(128>b)return this.h+=5,c>>>0;this.h+=5;128<=a[this.h++]&&128<=a[this.h++]&&128<=a[this.h++]&&128<=a[this.h++]&&this.h++;return c};_ds.f.Cd=function(){return this.cb()};_ds.f.zj=function(){return this.cb().toString()}; +_ds.f.xj=function(){return this.Cd().toString()};_ds.f.Cj=function(){var a=this.cb();return a>>>1^-(a&1)};_ds.f.Aj=function(){return Wy(this,Ly)};_ds.f.Bj=function(){return Wy(this,Py)};_ds.f.pg=function(){return Wy(this,My)};_ds.f.yj=function(){return Wy(this,Qy)};_ds.f.Dj=function(){return Wy(this,Oy)};_ds.f.Ej=function(){return Xy(this)};_ds.f.Pea=function(){var a=this.j[this.h];this.h+=1;return a};_ds.f.Nea=function(){var a=this.j[this.h],b=this.j[this.h+1];this.h+=2;return a<<0|b<<8}; +_ds.f.kb=function(){var a=this.j[this.h],b=this.j[this.h+1],c=this.j[this.h+2],d=this.j[this.h+3];this.h+=4;return(a<<0|b<<8|c<<16|d<<24)>>>0};_ds.f.Qi=function(){var a=this.kb(),b=this.kb();return Ly(a,b)};_ds.f.Ri=function(){var a=this.kb(),b=this.kb();return Py(a,b)};_ds.f.nea=function(){var a=this.j[this.h];this.h+=1;return a<<24>>24};_ds.f.lea=function(){var a=this.j[this.h],b=this.j[this.h+1];this.h+=2;return(a<<0|b<<8)<<16>>16}; +_ds.f.Zf=function(){var a=this.j[this.h],b=this.j[this.h+1],c=this.j[this.h+2],d=this.j[this.h+3];this.h+=4;return a<<0|b<<8|c<<16|d<<24};_ds.f.Oi=function(){var a=this.kb(),b=this.kb();return My(a,b)};_ds.f.Pi=function(){var a=this.kb(),b=this.kb();return Qy(a,b)};_ds.f.Ni=function(){var a=this.kb(),b=2*(a>>31)+1,c=a>>>23&255;a&=8388607;return 255==c?a?NaN:Infinity*b:0==c?b*Math.pow(2,-149)*a:b*Math.pow(2,c-150)*(a+Math.pow(2,23))}; +_ds.f.Mi=function(){var a=this.kb(),b=this.kb(),c=2*(b>>31)+1,d=b>>>20&2047;a=4294967296*(b&1048575)+a;return 2047==d?a?NaN:Infinity*c:0==d?c*Math.pow(2,-1074)*a:c*Math.pow(2,d-1075)*(a+4503599627370496)};_ds.f.pn=function(){return!!this.j[this.h++]};_ds.f.qn=function(){return this.Cd()};_ds.f.Mea=function(){var a=this.cb();return Zy(this,a)};_ds.f=$y.prototype;_ds.f.RY=function(){this.h.clear();this.j=this.m=-1;this.o=!1;this.C=null;100>aH.length&&aH.push(this)};_ds.f.OH=function(){return this.D}; +_ds.f.VY=function(){return this.h.h};_ds.f.TY=function(){return this.h.j};_ds.f.$M=function(){return this.j};_ds.f.mX=function(){return 2==this.j};_ds.f.aZ=function(a,b,c){Ry(this.h,a,b,c);this.j=this.m=-1};_ds.f.reset=function(){this.h.reset();this.j=this.m=-1};_ds.f.QY=function(a){var b=this.h;b.h+=a};_ds.f.hna=function(){var a=this.m;for(Yy(this.h,this.m<<3|this.j);az(this)&&this.m==a;)bz(this);Vy(this.h)||Yy(this.h,this.m<<3|this.j)}; +_ds.f.Yea=function(a,b){null===this.C&&(this.C={});this.C[a]=b};_ds.f.tfa=function(a){return(0,this.C[a])(this)}; +_ds.f.hea=function(a){this.j=Fy(a);switch(a){case 1:return this.h.Mi();case 2:return this.h.Ni();case 3:return this.h.pg();case 4:return this.h.Aj();case 5:return this.h.Cd();case 6:return this.h.Qi();case 7:return this.h.kb();case 8:return!!this.h.cb();case 9:return a=this.h.cb(),Zy(this.h,a);case 10:case 11:case 12:a=this.h.cb();var b=this.h;if(0>a||b.h+a>b.j.length)b.C=!0,a=new Uint8Array(0);else{var c=b.j.subarray(b.h,b.h+a);b.h+=a;a=c}return a;case 13:return this.h.cb();case 14:return this.h.pg(); +case 15:return this.h.Zf();case 16:return this.h.Oi();case 17:return this.h.Cj();case 18:return this.h.Dj()}return 0};_ds.f.Eo=function(a,b){var c=this.h.m,d=this.h.cb();d=this.h.h+d;this.h.m=d;b(a,this);this.h.h=d;this.h.m=c};_ds.f.jea=function(a,b,c){c(b,this);this.o||4==this.j||(this.o=!0)};_ds.f.QH=function(){var a=this.h.cb(),b=this.h.h,c=b+a;a=Uy(this.h.j,b,a);this.h.h=c;return a};_ds.f.mea=function(){return this.h.xj()};_ds.f.WY=function(){return this.h.yj()};_ds.f.Oea=function(){return this.h.zj()}; +_ds.f.$Y=function(){return this.h.Bj()};_ds.f.Lea=function(){return this.h.Ej()};_ds.f.iea=function(){return this.h.Ri()};_ds.f.Jea=function(){return this.h.Zf().toString()};_ds.f.Kea=function(){return this.h.Pi()};_ds.f.YY=function(a){return Wy(this.h,a)};_ds.f.ZY=function(a){return Wy(this.h,function(b,c){return Ny(b,c,a)})};_ds.f.XY=function(a){var b=this.h,c=b.j,d=b.h;b.h+=8;for(var e=b=0,g=d+7;g>=d;g--)b=b<<8|c[g],e=e<<8|c[g+4];return a(b,e)};_ds.f.vea=function(){return cz(this,this.h.Cd)}; +_ds.f.wea=function(){return cz(this,this.h.xj)};_ds.f.xea=function(){return cz(this,this.h.pg)};_ds.f.yea=function(){return cz(this,this.h.yj)};_ds.f.Fea=function(){return cz(this,this.h.cb)};_ds.f.Gea=function(){return cz(this,this.h.zj)};_ds.f.Hea=function(){return cz(this,this.h.Aj)};_ds.f.Iea=function(){return cz(this,this.h.Bj)};_ds.f.Cea=function(){return cz(this,this.h.Cj)};_ds.f.Dea=function(){return cz(this,this.h.Dj)};_ds.f.Eea=function(){return cz(this,this.h.Ej)}; +_ds.f.rea=function(){return cz(this,this.h.kb)};_ds.f.sea=function(){return cz(this,this.h.Qi)};_ds.f.tea=function(){return cz(this,this.h.Ri)};_ds.f.zea=function(){return cz(this,this.h.Zf)};_ds.f.Aea=function(){return cz(this,this.h.Oi)};_ds.f.Bea=function(){return cz(this,this.h.Pi)};_ds.f.uea=function(){return cz(this,this.h.Ni)};_ds.f.pea=function(){return cz(this,this.h.Mi)};_ds.f.oea=function(){return cz(this,this.h.pn)};_ds.f.qea=function(){return cz(this,this.h.qn)};fz.prototype.Sf=function(){return!!this.fe}; +_ds.F(tz,_ds.jf);_ds.f=tz.prototype;_ds.f.U3=function(a){return uz(a,this)};_ds.f.T3=function(){var a=new _ds.Ne;vz(this,a);return _ds.Se(a)};_ds.f.zL=function(){return _ds.I(this,1)};_ds.f.sB=function(){return _ds.O(this,1)};_ds.f.aV=function(){return _ds.K(this,1)};_ds.f.EL=function(){return _ds.I(this,2)};_ds.f.Pla=function(a){return _ds.N(this,2,a)};_ds.f.tB=function(){return _ds.O(this,2)};_ds.f.bV=function(){return _ds.K(this,2)};_ds.f.dM=function(){return _ds.I(this,3)}; +_ds.f.QB=function(){return _ds.O(this,3)};_ds.f.sV=function(){return _ds.K(this,3)};_ds.f.fM=function(){return _ds.I(this,6)};_ds.f.TB=function(){return _ds.O(this,6)};_ds.f.uV=function(){return _ds.K(this,6)};_ds.f.S3=function(){return _ds.I(this,4)};_ds.f.dB=function(){return _ds.O(this,4)};_ds.f.IU=function(){return _ds.K(this,4)};_ds.f.eM=function(){return _ds.I(this,5)};_ds.f.RB=function(){return _ds.O(this,5)};_ds.f.tV=function(){return _ds.K(this,5)};_ds.F(xz,_ds.jf);var wz=[2,3,4,5];_ds.f=xz.prototype;_ds.f.Q4=function(a){return yz(a,this)};_ds.f.P4=function(){var a=new _ds.Ne;zz(this,a);return _ds.Se(a)};_ds.f.N4=function(){return _ds.I(this,1)};_ds.f.M4=function(){return _ds.O(this,1)};_ds.f.O4=function(){return _ds.K(this,1)};_ds.f.rs=function(a,b){return _ds.Df(this,2,a,b)};_ds.f.Iz=function(){return _ds.vf(this,2)};_ds.f.Br=function(a,b){return _ds.Df(this,3,a,b)};_ds.f.Lu=function(){return _ds.vf(this,3)}; +_ds.f.Cr=function(a,b){return _ds.Df(this,4,a,b)};_ds.f.Nu=function(){return _ds.vf(this,4)};_ds.f.qs=function(a,b){return _ds.Df(this,5,a,b)};_ds.f.Jz=function(){return _ds.vf(this,5)};_ds.F(Dz,_ds.jf);_ds.f=Dz.prototype;_ds.f.V4=function(a){return Ez(a,this)};_ds.f.U4=function(){var a=new _ds.Ne;Fz(this,a);return _ds.Se(a)};_ds.f.S4=function(){return _ds.I(this,1)};_ds.f.R4=function(){return _ds.O(this,1)};_ds.f.T4=function(){return _ds.K(this,1)};_ds.f.vF=function(){return _ds.I(this,2)};_ds.f.Mu=function(){return _ds.O(this,2)};_ds.f.WO=function(){return _ds.K(this,2)};_ds.F(Gz,_ds.jf);_ds.f=Gz.prototype;_ds.f.y5=function(a){return Hz(a,this)};_ds.f.x5=function(){var a=new _ds.Ne;Iz(this,a);return _ds.Se(a)};_ds.f.v5=function(){return _ds.I(this,1)};_ds.f.u5=function(){return _ds.O(this,1)};_ds.f.w5=function(){return _ds.K(this,1)};_ds.f.IK=function(){return _ds.I(this,2)};_ds.f.vA=function(){return _ds.O(this,2)};_ds.f.lU=function(){return _ds.K(this,2)};_ds.F(Kz,_ds.jf);var Jz=[2,3,4];_ds.f=Kz.prototype;_ds.f.W3=function(a){return Lz(a,this)};_ds.f.V3=function(){var a=new _ds.Ne;Mz(this,a);return _ds.Se(a)};_ds.f.Dx=function(){return _ds.xf(this,1)};_ds.f.oR=function(){return _ds.K(this,1)};_ds.f.js=function(a,b){return _ds.Gf(this,2,a,xz,b)};_ds.f.rz=function(){return _ds.Af(this,2)};_ds.f.Cs=function(a,b){return _ds.Gf(this,3,a,Gz,b)};_ds.f.wA=function(){return _ds.Af(this,3)};_ds.f.ns=function(a,b){return _ds.Gf(this,4,a,Dz,b)}; +_ds.f.Gz=function(){return _ds.Af(this,4)};var Oz=/^r\.i-\d+=\d+$/,Qz=/^r\.r-\d+=.+$/,Rz=/^r\.o-\d+=(\d+\.)*\d+$/,Sz=/^r\.t-\d+=1$/;var bH=/utm_.*/,Uz=/[0-9\.]+(.*)/;_ds.F(Xz,_ds.jf);var Wz=[1,2,3,4];_ds.f=Xz.prototype;_ds.f.a2=function(a){var b,c={nu:null==(b=_ds.I(this,1))?void 0:b,pu:null==(b=_ds.I(this,2))?void 0:b,Us:null==(b=_ds.I(this,3))?void 0:b,ou:null==(b=_ds.I(this,4))?void 0:b};a&&(c.M=this);return c};_ds.f.Z1=function(){var a=new _ds.Ne;var b=_ds.I(this,1);0=this.N;)this.h.shift(),++this.ya;this.h.push(a);this.dispatchEvent(new gE(a));this.oa||this.m.Xb||this.m.start()}; +_ds.f.flush=function(a,b){var c=this;if(0==this.h.length)a&&a();else if(this.K)eE(this);else{var d=_ds.wb();if(this.Rc>d&&this.Kay||401==y||0==y)this.h=D.concat(this.h),this.oa||this.m.Xb||this.m.start();b&&b("net-send-failed",y)},this),w=function(){c.tc?c.tc.send(p,q,r):c.Pe(p,q,r)};m?m.then(function(y){p.xg["Content-Encoding"]="gzip";p.xg["Content-Type"]="application/binary";p.body=y;p.xl=2;w()},function(){w()}):w()}}}}; +_ds.f.me=function(){this.O||(this.Ke&&eE(this),this.Uc&&fE(this),this.flush())};_ds.F(gE,_ds.Rf);gE.prototype.m=function(){return this.j};aE.prototype.yk=function(){return this.N};aE.prototype.Rq=function(a){this.N=a};_ds.t(hE,aE);_ds.f=iE.prototype;_ds.f.gZ=function(a){this.mb=a};_ds.f.fZ=function(a){this.Aa=a};_ds.f.dZ=function(a){this.Ub=a};_ds.f.eZ=function(a){var b=new Xz;_ds.N(b,3,a||[]);jE(this).Mj(b)};_ds.f.kY=function(a,b){b=void 0===b?this.h.location.pathname:b;nE(this,Object.assign(Object.assign({},{mb:a.mb,Aa:a.Aa,Ub:a.Ub,latency:a.latency,metadata:a.metadata}),{type:a.OW||"",name:a.$D||"client-interaction",metadata:a.metadata,Rd:a}),b)};_ds.f=oE.prototype;_ds.f.Bg=function(a){this.o=a}; +_ds.f.Hha=function(a){this.j=a;return this};_ds.f.jZ=function(a){this.mb=a;return this};_ds.f.iZ=function(a){this.Aa=a;return this};_ds.f.hZ=function(a){this.Ub=a;return this};_ds.f.kZ=function(a){this.Be=a;return this};_ds.f.Dg=function(a){this.D=a};_ds.f.zoa=function(){this.h=new qE;return this};qE.prototype.Sh=function(){};qE.prototype.Mj=function(){};qE.prototype.Bg=function(){};qE.prototype.Dg=function(){};var tE=/(billing\/|freetrial\/)[a-z0-9]{6}-[a-z0-9]{6}-[a-z0-9]{6}/i,xE=/(\/(apis|apiui|endpoints)\/(api|library)\/)([^/]+)/,sE=/(compute\/instancesDetail\/)[a-z0-9/\-_]*/i,uE=/(\/apis\/credentials\/serviceaccount\/|invitations\/)[+a-zA-Z0-9_.!#$%&'*\=?^`{|}~-]+@([a-zA-Z0-9-]+\.)*[a-zA-Z0-9]{2,63}/,vE=/(\/apis\/credentials\/oauthclient\/).+\.apps\.googleusercontent\.com/,BE=[".google.com",".googleapis.com",".googleprod.com",".googleplex.com"],wE=/(organizationId=)[0-9]*/,zE=/[a-zA-z0-9]{8}-[a-zA-z0-9]{4}-[a-zA-z0-9]{4}-[a-zA-z0-9]{4}-[a-zA-z0-9]{12}/, +rE=/;([^/]+=[^/]+([/?])|[^/?]+=[^/?]+)/g;CE.prototype.apply=function(a){var b={Aa:_ds.I(a,32)||void 0,mb:_ds.I(a,1)||void 0,accountId:_ds.I(a,2)||void 0};if(_ds.I(a,13)){var c=AE(_ds.I(a,13),b);"pageview"===_ds.I(a,4)&&_ds.I(a,3)===_ds.I(a,13)&&_ds.N(a,3,c);_ds.N(a,13,c)}if(_ds.I(a,18)){c=_ds.I(a,18);var d=void 0===b?{}:b;b=d.Aa;var e=d.mb;d=d.accountId;var g=new _ds.Zh(c);c=g.C+"://"+g.j+AE(c,{Aa:b,mb:e,accountId:d});_ds.N(a,18,c)}};DE.prototype.apply=function(a){for(var b={},c=_ds.oi(this.window.location.href).h,d=_ds.n(c.sb()),e=d.next();!e.done;e=d.next()){e=e.value;var g=c.get(e);bH.test(e)&&(b[e]=g)}c=Vz(new _ds.Il(this.window.document))||{};0 code, th > code"));a.j.clear();a.j=new Set(b);if(_ds.zi().hash){b=new _ds.ru;for(var c=_ds.n(a.j),d=c.next();!d.done;d=c.next())_ds.tu(b,d.value)}else rL(a,a.j);a.dispatchEvent(new CustomEvent("devsite-content-updated",{bubbles:!0}))},qL=function(a){"full"===document.body.getAttribute("layout")&&(a=a.m.querySelectorAll('h1[tabindex="0"],h2[tabindex="0"],h3[tabindex="0"],h4[tabindex="0"],h5[tabindex="0"],h6[tabindex="0"]'))&& +Array.from(a).forEach(function(b){b.removeAttribute("tabindex")})},rL=function(a,b){a.h&&b.forEach(function(c){a.h.observe(c)})};_ds.t(fL,_ds.R);fL.prototype.connectedCallback=function(){var a=this;this.o.listen(window,"message",function(b){return oL(a,b)});sL(this)};fL.prototype.disconnectedCallback=function(){this.h&&this.h.disconnect();this.j.clear();_ds.Wj(this.o);_ds.Wj(this.C)}; +fL.prototype.updateContent=function(a){var b=this;a&&([".devsite-article","devsite-content-footer","devsite-google-survey"].forEach(function(c){_ds.Hl(b,b.querySelector(c),a.querySelector(c))}),sL(this))};fL.prototype.updateContent=fL.prototype.updateContent;fL.prototype.disconnectedCallback=fL.prototype.disconnectedCallback;fL.prototype.connectedCallback=fL.prototype.connectedCallback;try{window.customElements.define("devsite-content",fL)}catch(a){console.warn("devsite.app.customElement.DevsiteContent",a)};})(_ds_www); diff --git a/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_expandable_nav_module.js b/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_expandable_nav_module.js new file mode 100644 index 0000000..c315e57 --- /dev/null +++ b/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_expandable_nav_module.js @@ -0,0 +1,6 @@ +(function(_ds){var window=this;'use strict';var DM=function(){var a=_ds.R.call(this)||this;a.D=null;a.j=null;a.h=null;a.F=!1;a.o=new _ds.Qj;a.m=new _ds.Qj;return a},FM=function(a){a.o.listen(a.D,"click",function(b){return EM(a,b)});a.h&&!a.h.hasAttribute("href")&&a.o.listen(a.h,["click","keypress"],function(b){return EM(a,b)})},EM=function(a,b){if("keypress"!=b.type||13==b.keyCode){a.C=!a.C;for(var c=b.target;c&&c!=a;){if(_ds.js(c,"devsite-nav-title-no-path")&&("click"==b.type||"touchend"==b.type)){c.blur();break}c=c.parentNode}}}, +HM=function(a){if(a.j){var b=_ds.nk(a.j);GM(a,b.height,0);a.h&&a.h.setAttribute("aria-expanded","false")}},GM=function(a,b,c){_ds.Wj(a.m);window.requestAnimationFrame(function(){IM(a,b+"px");a.setAttribute("animating","");window.requestAnimationFrame(function(){IM(a,c+"px");_ds.Uj(a.m,a.j,_ds.ex,function(){a.removeAttribute("animating");IM(a);a.dispatchEvent(new CustomEvent("devsite-expandable-nav-transition-end",{bubbles:!0}))})})})},IM=function(a,b){_ds.Zj(a.j,"height",void 0===b?"":b)}; +_ds.t(DM,_ds.R);DM.prototype.attributeChangedCallback=function(a){var b=this;"collapsed"==a&&(this.C?HM(this):window.requestAnimationFrame(function(){if(b.j){IM(b);var c=_ds.nk(b.j);IM(b,0);GM(b,0,c.height);b.h&&b.h.setAttribute("aria-expanded","true")}}))}; +DM.prototype.connectedCallback=function(){this.D=this.getElementsByClassName("devsite-nav-toggle")[0];this.j=this.getElementsByTagName("ul")[0];this.h=this.getElementsByClassName("devsite-nav-title")[0];this.D&&this.j&&FM(this);this.h&&this.h.setAttribute("aria-expanded",!this.hasAttribute("collapsed"));this.setAttribute("connected","");this.setAttribute("animatable","")}; +DM.prototype.disconnectedCallback=function(){_ds.Wj(this.o);_ds.Wj(this.m);this.j&&(IM(this),this.removeAttribute("connected"));this.removeAttribute("animatable");this.h&&this.h.removeAttribute("aria-expanded")};_ds.fa.Object.defineProperties(DM.prototype,{C:{configurable:!0,enumerable:!0,get:function(){return this.hasAttribute("collapsed")},set:function(a){a?this.setAttribute("collapsed",""):this.removeAttribute("collapsed")}}}); +_ds.fa.Object.defineProperties(DM,{observedAttributes:{configurable:!0,enumerable:!0,get:function(){return["collapsed"]}}});DM.prototype.disconnectedCallback=DM.prototype.disconnectedCallback;DM.prototype.connectedCallback=DM.prototype.connectedCallback;DM.prototype.attributeChangedCallback=DM.prototype.attributeChangedCallback;try{window.customElements.define("devsite-expandable-nav",DM)}catch(a){console.warn("devsite.app.customElement.DevsiteExpandableNav",a)};})(_ds_www); diff --git a/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_footer_linkboxes_module.js b/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_footer_linkboxes_module.js new file mode 100644 index 0000000..035b66d --- /dev/null +++ b/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_footer_linkboxes_module.js @@ -0,0 +1 @@ +(function(_ds){var window=this;'use strict';var zN=function(){return _ds.R.apply(this,arguments)||this};_ds.t(zN,_ds.R);zN.prototype.updateContent=function(a){a&&_ds.Hl(this,this.querySelector("nav"),a.querySelector("nav"))};zN.prototype.updateContent=zN.prototype.updateContent;try{window.customElements.define("devsite-footer-linkboxes",zN)}catch(a){console.warn("devsite.app.customElement.DevsiteFooterLinkboxes",a)};})(_ds_www); diff --git a/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_footer_promos_module.js b/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_footer_promos_module.js new file mode 100644 index 0000000..66afa4d --- /dev/null +++ b/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_footer_promos_module.js @@ -0,0 +1 @@ +(function(_ds){var window=this;'use strict';var AN=function(){return _ds.R.apply(this,arguments)||this};_ds.t(AN,_ds.R);AN.prototype.updateContent=function(a){a&&_ds.Hl(this,this.querySelector("nav"),a.querySelector("nav"))};AN.prototype.updateContent=AN.prototype.updateContent;try{window.customElements.define("devsite-footer-promos",AN)}catch(a){console.warn("devsite.app.customElement.DevsiteFooterPromos",a)};})(_ds_www); diff --git a/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_footer_utility_module.js b/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_footer_utility_module.js new file mode 100644 index 0000000..f707102 --- /dev/null +++ b/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_footer_utility_module.js @@ -0,0 +1 @@ +(function(_ds){var window=this;'use strict';var BN=function(){return _ds.R.apply(this,arguments)||this};_ds.t(BN,_ds.R);BN.prototype.updateContent=function(a){a&&_ds.Hl(this,this.querySelector(".devsite-footer-utility"),a.querySelector(".devsite-footer-utility"))};BN.prototype.updateContent=BN.prototype.updateContent;try{window.customElements.define("devsite-footer-utility",BN)}catch(a){console.warn("devsite.app.customElement.DevsiteFooterUtility",a)};})(_ds_www); diff --git a/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_header_module.js b/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_header_module.js new file mode 100644 index 0000000..0abdba4 --- /dev/null +++ b/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_header_module.js @@ -0,0 +1,18 @@ +(function(_ds){var window=this;/* + + Copyright The Closure Library Authors. + SPDX-License-Identifier: Apache-2.0 +*/ +'use strict';var mO=function(a,b){jO()&&(b=kO()?"translate3d("+b+"px,0px,0px)":"translate("+b+"px,0px)",_ds.Zj(a,lO(),b))},pO=function(){var a=_ds.R.call(this)||this;a.H=-1;a.h=new _ds.Qj;a.G=new _ds.Qj;a.C=0;a.K=new MutationObserver(function(){return nO(a)});a.N=new _ds.Nj(function(){nO(a);oO(a)},15);a.L=0;a.m=0;a.o=0;a.j=0;a.D=!1;return a},rO=function(a){a.h.listen(a,"devsite-search-toggle",function(b){b=b.Z;_ds.Bh(b.target,"devsite-top-logo-row-middle")&&(b.detail.active?a.setAttribute("search-active", +""):a.removeAttribute("search-active"))});a.h.listen(document.body,"devsite-sitemask-hidden",function(){return document.body.removeAttribute("devsite-book-nav--open")});a.h.listen(window,"resize",function(){return qO(a)});a.h.listen(document.body,["devsite-page-loaded","devsite-content-updated"],function(){qO(a)});a.h.listen(a,"click",function(b){b.defaultPrevented||"devsite-hamburger-menu"!=b.target.getAttribute("id")||(b.preventDefault(),b.stopPropagation(),document.body.setAttribute("devsite-book-nav--open", +""),a.dispatchEvent(new CustomEvent("devsite-sitemask-show",{bubbles:!0})))})},qO=function(a){window.requestAnimationFrame(function(){return a.N.ra()})},sO=function(a,b){return(a=a.querySelector(b))?a.getBoundingClientRect().height:0},nO=function(a){a.L=sO(a,".devsite-top-logo-row-wrapper-wrapper");a.m=sO(a,".devsite-collapsible-section");a.o=sO(a,".devsite-doc-set-nav-row");a.setAttribute("top-row--height",a.L);a.setAttribute("bottom-row--height",a.m);a.setAttribute("bottom-tabs--height",a.o);tO(a)}, +uO=function(a){if(!a.querySelector(".devsite-search-background")&&(a=a.querySelector(".devsite-top-logo-row-middle"))){var b=document.createElement("div");b.classList.add("devsite-search-background");b.style.opacity=1;a.appendChild(b)}},tO=function(a){var b=a.querySelector(".devsite-collapsible-section");a.j>=a.m&&!a.hasAttribute("bottom-row--hidden")?a.setAttribute("bottom-row--hidden",""):a.j')},AO=function(){var a=_ds.Lt.call(this)||this;a.h=null;a.m=new _ds.Qj;a.j=_ds.ir(zO,{label:"Copy link to this section"});a.o=null;return a},DO=function(a){a.m.listen(document.body,BO,function(b){return void CO(a,b)});a.m.listen(a.j,"click",function(b){b.preventDefault();b.stopPropagation();var c=(b=_ds.Ah(a.h,"devsite-expandable",void 0,2))?b.id: +a.h.id;c&&(b=_ds.zi(),b.hash=c,c=document.createElement("div"),c.innerText=b.href,_ds.zu(a,[c]),_ds.ah(c))})},CO=function(a,b){b=b.target;b!==a.o&&(a.o=b,b.matches&&b.matches("h1.add-link[id],h2:not(.no-link)[id],h3:not(.no-link)[id],h4:not(.no-link)[id],h5:not(.no-link)[id],h6:not(.no-link)[id]")||(b=_ds.zh(b,function(c){return c instanceof Element?c.matches("h1.add-link[id],h2:not(.no-link)[id],h3:not(.no-link)[id],h4:not(.no-link)[id],h5:not(.no-link)[id],h6:not(.no-link)[id]"):!1},!1,3)),b?(b.classList.contains("add-link")|| +!("full"===document.body.getAttribute("layout")||_ds.Ah(b,"devsite-dialog",void 0,3)||_ds.Ah(b,"devsite-selector",void 0,6)||_ds.Ah(b,"table",void 0,4)))&&EO(a,b):FO(a))},EO=function(a,b){var c,d;_ds.E(function(e){a.h!==b&&(a.h=b,c=a.h.dataset.text||a.h.textContent)&&(d=a.j,d.dataset.title="Copy link to this section: "+c,a.h.appendChild(a.j));_ds.v(e)})},FO=function(a){a.h&&(a.j.remove(),a.h=null)};var BO="onpointermove"in window?"pointermove":"mousemove";_ds.t(AO,_ds.Lt);AO.prototype.connectedCallback=function(){_ds.Lt.prototype.connectedCallback.call(this);DO(this)};AO.prototype.disconnectedCallback=function(){_ds.Lt.prototype.disconnectedCallback.call(this);_ds.Wj(this.m)};AO.prototype.disconnectedCallback=AO.prototype.disconnectedCallback;AO.prototype.connectedCallback=AO.prototype.connectedCallback;try{window.customElements.define("devsite-heading-link",AO)}catch(a){console.warn("devsite.app.customElement.DevsiteHeadingLink",a)};})(_ds_www); diff --git a/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_language_selector_module.js b/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_language_selector_module.js new file mode 100644 index 0000000..3751d9b --- /dev/null +++ b/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_language_selector_module.js @@ -0,0 +1,8 @@ +(function(_ds){var window=this;/* + + Copyright The Closure Library Authors. + SPDX-License-Identifier: Apache-2.0 +*/ +'use strict';var UO=function(){var a=_ds.R.call(this)||this;a.j=new _ds.Jk;a.h=new _ds.Qj;SO().then(function(){TO(a)});return a},TO=function(a){var b;return _ds.E(function(c){return(b=_ds.xx.get("django_language"))?_ds.u(c,a.j.set("language_preference",b),0):c.J(0)})},WO=function(a){_ds.Wj(a.h);var b=a.querySelector(".devsite-language-selector-select");b&&a.h.listen(b,"change",function(c){VO(a,c)})},VO=function(a,b){var c,d;_ds.E(function(e){if(1==e.h)return _ds.xx.remove("django_language"),c=b.target, +_ds.xx.set("django_language",c.value,{ub:15552E3,path:"/"}),d=document.documentElement.getAttribute("lang"),a.dispatchEvent(new CustomEvent("devsite-analytics-observation",{detail:{category:"Site-Wide Custom Events",label:"Language Selector",action:d+" to "+c.value},bubbles:!0})),_ds.u(e,TO(a),2);_ds.Hd(_ds.ni(new _ds.Zh(_ds.Gd().location.href),"hl").toString());_ds.v(e)})},SO=function(){return _ds.E(function(a){if(1==a.h)return _ds.xx.get("django_language")?a.J(0):_ds.u(a,DevsiteApp.whenReady(), +3);_ds.xx.set("django_language",DevsiteApp.getLocale()||"en",{ub:15552E3,path:"/"});_ds.v(a)})};_ds.t(UO,_ds.R);UO.prototype.connectedCallback=function(){WO(this)};UO.prototype.disconnectedCallback=function(){_ds.Wj(this.h)};UO.prototype.updateContent=function(a){a&&(_ds.Hl(this,this.querySelector(".devsite-language-selector-menu"),a.querySelector(".devsite-language-selector-menu")),WO(this))};UO.prototype.updateContent=UO.prototype.updateContent;UO.prototype.disconnectedCallback=UO.prototype.disconnectedCallback;UO.prototype.connectedCallback=UO.prototype.connectedCallback;try{window.customElements.define("devsite-language-selector",UO)}catch(a){console.warn("devsite.app.customElement.DevsiteLanguageSelector",a)};})(_ds_www); diff --git a/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_page_rating_module.js b/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_page_rating_module.js new file mode 100644 index 0000000..3574d81 --- /dev/null +++ b/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_page_rating_module.js @@ -0,0 +1,15 @@ +(function(_ds){var window=this;'use strict';var wP=function(a){var b=a.position,c=a.heading,d=a.labels;a=a.tp;var e="";_ds.vq(b,"footer")&&(e+='
    Was this page helpful?
    ');e+='
    ';c=Math.max(0,Math.ceil(d.length));for(var g=0;g
    '}return(0,_ds.V)(e+"")},xP=function(){return"Unusable documentation"},yP=function(){return"Poor documentation"},zP=function(){return"OK documentation"},AP=function(){return"Good documentation"},BP=function(){return"Excellent documentation"},CP=function(a){return'You rated "'+(a.og+'"')},DP=function(a){return a.og}, +EP=function(){this.h=_ds.Eg();this.j=null},FP=function(a,b){a=a(b||{},{});return String(a)},GP=function(a,b,c){b=b(c||{},{});a.qd(null,b.Ab);return b},HP=function(){var a=_ds.R.call(this)||this;a.j=new _ds.Qj;a.m=null;a.D=["Unusable documentation, with a rating of 1 out of 5","Poor documentation, with a rating of 2 out of 5","OK documentation, with a rating of 3 out of 5","Good documentation, with a rating of 4 out of 5","Excellent documentation, with a rating of 5 out of 5"];a.H=new EP;a.o=0;a.F= +["You rated this page 1 out of 5 stars.","You rated this page 2 out of 5 stars.","You rated this page 3 out of 5 stars.","You rated this page 4 out of 5 stars.","You rated this page 5 out of 5 stars."];a.h=[];var b=[FP(xP),FP(yP),FP(zP),FP(AP),FP(BP)];a.C=b;return a},KP=function(a){var b="onpointerover"in window?"pointerover":"mouseover",c="onpointerout"in window?"pointerout":"mouseout";a.j.listen(a,["click","keypress"],function(d){IP(a,d)});a.j.listen(a,[b,"focusin"],function(d){d.target.classList.contains("devsite-rating-star")&& +(d=Number(d.target.getAttribute("data-rating-val")),JP("hover-rating-star",d))});a.j.listen(a,[c,"focusout"],function(d){d.target.classList.contains("devsite-rating-star")&&JP("hover-rating-star",a.o)})},IP=function(a,b){var c=b.target;!c.classList.contains("devsite-rating-star")||"click"!==b.type&&13!==b.keyCode&&32!==b.keyCode||(b=Number(c.getAttribute("data-rating-val")),a.h.forEach(function(d){return d.setAttribute("aria-checked","false")}),c.setAttribute("aria-checked","true"),b!=a.o&&(JP("selected-rating", +b),LP(a,b)),3>=b&&MP(),a.m.setAttribute("aria-label",a.F[b-1]))},JP=function(a,b){Array.from(document.getElementsByTagName("devsite-page-rating")).forEach(function(c){return c.setAttribute(a,b)})},NP=function(a,b){a.h.forEach(function(c){Number(c.getAttribute("data-rating-val"))<=b?c.classList.add("devsite-rating-star-full"):c.classList.remove("devsite-rating-star-full")})},LP=function(a,b){b={nonInteraction:!0,page:_ds.zi().pathname,referrer:_ds.zi().pathname,ratings_value:b,ratings_count:1};a.dispatchEvent(new CustomEvent("devsite-analytics-pageview", +{detail:b,bubbles:!0}))},MP=function(){var a=document.querySelector("devsite-feedback");a&&a.dispatchEvent(new Event("click"))};/* + + Copyright The Closure Library Authors. + SPDX-License-Identifier: Apache-2.0 +*/ +_ds.f=EP.prototype;_ds.f.ffa=function(a,b){a=_ds.hr(a,b,{},this.h);this.qd(a,_ds.nq);return a};_ds.f.efa=function(a,b){a=_ds.ir(a,b,{},this.h);this.qd(a,_ds.nq);return a};_ds.f.hfa=function(a,b,c){_ds.fr(a,b,c,{});this.qd(a,_ds.nq)};_ds.f.render=function(a,b){a=a(b||{},{});this.qd(null,a instanceof _ds.mq?a.Ab:null);return String(a)};_ds.f.kfa=function(a,b){return GP(this,a,b)};_ds.f.ifa=function(a,b){return _ds.oq(GP(this,a,b))};_ds.f.jfa=function(a,b){return GP(this,a,b).h()};_ds.f.sH=function(){return this.h}; +_ds.f.qd=_ds.gb;_ds.t(HP,_ds.R);HP.prototype.connectedCallback=function(){this.m=_ds.ir(wP,{position:this.getAttribute("position")||"",heading:"Rate this page",labels:this.D,tp:this.C});this.h=Array.from(this.m.querySelectorAll(".devsite-rating-star"));this.hasAttribute("selected-rating")||this.setAttribute("selected-rating","0");this.hasAttribute("hover-rating-star")||this.setAttribute("hover-rating-star","0");this.appendChild(this.m);KP(this)}; +HP.prototype.attributeChangedCallback=function(a,b,c){if("selected-rating"===a&&null!=b){var d=this.o=Number(c)||0;b=Number(b)||0;var e=d-1,g=b-1;0=b&&this.h[g].setAttribute("data-title",FP(DP,{og:this.C[g]}));0=d&&this.h[e].setAttribute("data-title",FP(CP,{og:this.C[e]}))}"hover-rating-star"===a&&NP(this,Number(c)||0)};HP.prototype.disconnectedCallback=function(){_ds.Wj(this.j)}; +_ds.fa.Object.defineProperties(HP,{observedAttributes:{configurable:!0,enumerable:!0,get:function(){return["selected-rating","hover-rating-star"]}}});HP.prototype.disconnectedCallback=HP.prototype.disconnectedCallback;HP.prototype.attributeChangedCallback=HP.prototype.attributeChangedCallback;HP.prototype.connectedCallback=HP.prototype.connectedCallback;try{window.customElements.define("devsite-page-rating",HP)}catch(a){console.warn("devsite.app.customElement.DevsitePageRating",a)};})(_ds_www); diff --git a/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_progress_module.js b/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_progress_module.js new file mode 100644 index 0000000..6d0ec43 --- /dev/null +++ b/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_progress_module.js @@ -0,0 +1,2 @@ +(function(_ds){var window=this;'use strict';var vQ=function(){return _ds.R.apply(this,arguments)||this},wQ=function(a){_ds.Xg(a);switch(a.getAttribute("type")){case "indeterminate":var b=a.getAttribute("color"),c=document.createElement("div");c.classList.add("devsite-progress--indeterminate");for(var d=1;4>=d;d++){var e=document.createElement("div");e.classList.add("devsite-progress--indeterminate-"+d);!b||1!=d&&3!=d||(e.style.backgroundColor=b);c.appendChild(e)}a.appendChild(c)}};_ds.t(vQ,_ds.R); +vQ.prototype.connectedCallback=function(){wQ(this)};vQ.prototype.attributeChangedCallback=function(a,b,c){b!==c&&wQ(this)};_ds.fa.Object.defineProperties(vQ,{observedAttributes:{configurable:!0,enumerable:!0,get:function(){return["color","type"]}}});vQ.prototype.attributeChangedCallback=vQ.prototype.attributeChangedCallback;vQ.prototype.connectedCallback=vQ.prototype.connectedCallback;try{window.customElements.define("devsite-progress",vQ)}catch(a){console.warn("devsite.app.customElement.DevsiteProgress",a)};})(_ds_www); diff --git a/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_search_module.js b/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_search_module.js new file mode 100644 index 0000000..db27ebb --- /dev/null +++ b/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_search_module.js @@ -0,0 +1,39 @@ +(function(_ds){var window=this;'use strict';var QR=function(a){var b=arguments.length;if(1==b&&Array.isArray(arguments[0]))return QR.apply(null,arguments[0]);for(var c={},d=0;d
    ')},rS=function(a){a=a||{};var b='")},sS=function(a){var b=a.query,c=a.wc,d='")},tS=function(a){var b=a.link,c=a.title,d=a.public,e=a.action,g=a.Fj,k=a.bb,l=a.cc;a=a.hg;b=(d?"":'')+''+_ds.tq(c)+""+(a?''+_ds.tq(a)+"":"")+(g?''+_ds.tq(g)+"":"")+(_ds.wq(k)&&!l?''+ +_ds.tq(k)+"":"");d||(b+='Confidential');return(0,_ds.V)(b+(""+(d?"":"")))},uS=function(a){var b=a.bb,c=a.cc,d=a.query,e=a.Kj;a=a.wc;b='
    There are no suggestions for your query
    '+((e?'":"")+"
    ");return(0,_ds.V)(b)},vS=function(a){var b=a.Un,c=a.mo,d=a.Ao,e=a.bb,g=a.cc,k=a.query,l=a.Fo,m=a.Kj;a=a.wc;var p='
    ';if(0
    Suggested searches'+((g?''+ +_ds.tq(e)+"":"")+'
    ');for(var q=d.length,r=0;r'+tS({link:_ds.L(w,2),title:w.Ba(),public:_ds.uf(w,14),action:"Query Suggestion Click"})+"
    "}p+="
    "}p+= +0':"";if(0
    Pages'+((g?''+_ds.tq(e)+"":"")+'
    ');q=b.length;for(r=0;r'+tS({link:_ds.L(w,2),title:w.Ba(),public:_ds.uf(w,14),bb:_ds.L(w,4),cc:g,action:"Page Suggestion Click"})+"";p+=""}p+=0':"";if(0
    Reference'+ +((g?''+_ds.tq(e)+"":"")+'
    ');q=l.length;for(r=0;r'+tS({link:_ds.L(w,2),title:w.Ba(),public:_ds.uf(w,14),action:"Reference Suggestion Click", +Fj:_ds.L(w,3),bb:_ds.L(w,4),cc:g,hg:_ds.I(w,10)[0]})+"";p+=""}p+=0':"";if(0
    Products
    '; +b=c.length;for(d=0;d'+tS({link:_ds.L(l,2),title:l.Ba(),public:_ds.uf(l,14),action:"Product Suggestion Click"})+"";p+=""}p+=""+(m?'":"")+"";return(0,_ds.V)(p)},wS=function(){var a=_ds.R.call(this)||this;a.N=!1;a.H= +{};a.G="";a.C=null;a.j=new _ds.Qj;a.h=null;a.L=!1;return a},CS=function(a){a.h&&(a.j.listen(a.h,"suggest-service-search",function(b){a:{var c=a.D.querySelector(".highlight");if(c&&(c=c.querySelector(".devsite-result-item-link"))){c.click();break a}xS(a,b.detail.originalEvent,!!a.C)}}),a.j.listen(a.h,"suggest-service-suggestions-received",function(b){return void yS(a,b)}),a.j.listen(a.h,"suggest-service-focus",function(){zS(a,"cloud-track-search-focus",null);a.L=!0;AS(a,!0)}),a.j.listen(a.h,"suggest-service-blur", +function(){AS(a,!1)}),a.j.listen(a.h,"suggest-service-input",function(){!a.H["Text Entered Into Search Bar"]&&a.h.query.trim()&&(a.dispatchEvent(new CustomEvent("devsite-analytics-observation",{detail:{category:"Site-Wide Custom Events",label:"Search",action:"Text Entered Into Search Bar"},bubbles:!0})),a.H["Text Entered Into Search Bar"]=!0);a.L&&(zS(a,"cloud-track-search-input",null),a.L=!1)}),a.j.listen(a.h,"suggest-service-navigate",function(b){return void BS(a,b)}),a.j.listen(document.body,"devsite-page-changed", +function(){return a.H={}}),a.h.Pj("SLASH",191));a.m&&a.j.listen(a.m,"submit",function(b){xS(a,b)});a.D&&a.j.listen(a.D,"click",function(b){var c=b.target;"A"==c.tagName.toUpperCase()&&AS(a,!1);var d=_ds.Bh(c,"devsite-result-item-link");d&&(d={bp:d.getAttribute("href")},zS(a,"cloud-track-search-submit",d));c.classList.contains("devsite-search-project-scope")&&xS(a,b,!0)});a.Y&&a.j.listen(a.Y,"click",function(){return void AS(a,!0)});a.O&&a.j.listen(a.O,"click",function(){return void AS(a,!1)})},xS= +function(a,b,c){c=void 0===c?!1:c;var d,e,g;_ds.E(function(k){if(1==k.h){b.preventDefault();b.stopPropagation();if(!a.hasAttribute("enable-search"))return k.J(0);a.H["Full Site Search"]||(a.dispatchEvent(new CustomEvent("devsite-analytics-observation",{detail:{category:"Site-Wide Custom Events",label:"Search",action:"Full Site Search"},bubbles:!0})),a.H["Full Site Search"]=!0);d=c&&a.C?_ds.Gi(a.C):_ds.Gi(a.m.getAttribute("action"));e=new _ds.Zh(d.href);_ds.li(e,"q",a.h.query);d.search=e.h.toString(); +return _ds.u(k,DevsiteApp.fetchPage(d.href),3)}AS(a,!1);g="no match";a.K&&(g={contains:{bp:a.K}});zS(a,"cloud-track-search-submit",g);_ds.v(k)})},BS=function(a,b){var c=b.detail;b=a.o.querySelector(".highlight");var d,e=Array.from(a.o.querySelectorAll(".devsite-result-item")),g=[],k=-1;if(b){var l=_ds.zh(b,function(p){return p.classList.contains("devsite-suggest-section")});g=Array.from(l.querySelectorAll(".devsite-result-item"));l=_ds.eh(b.parentNode.parentNode);var m=_ds.fh(b.parentNode.parentNode); +k=e.indexOf(b)}switch(c.keyCode){case 37:if(!l&&!m)return;b&&(c=b.getAttribute("index"),m?(d=m.querySelector('[index="'+c+'"]'))||(d=_ds.Bb(Array.from(m.querySelectorAll("[index]")))):l&&((d=l.querySelector('[index="'+c+'"]'))||(d=_ds.Bb(Array.from(l.querySelectorAll("[index]"))))));break;case 39:if(!l&&!m)return;b&&(c=b.getAttribute("index"),l?(d=l.querySelector('[index="'+c+'"]'))||(d=_ds.Bb(Array.from(l.querySelectorAll("[index]")))):m&&((d=m.querySelector('[index="'+c+'"]'))||(d=_ds.Bb(Array.from(m.querySelectorAll("[index]")))))); +break;case 38:b?(d=e[k-1])||(d=_ds.Bb(g)):d=_ds.Bb(e);break;case 40:b?(d=e[k+1])||(d=g[0]):d=e[0]}b&&(b.classList.remove("highlight"),b.removeAttribute("aria-selected"));d&&(a.F.setAttribute("aria-activedescendant",d.id),d.setAttribute("aria-selected","true"),d.classList.add("highlight"),d.scrollIntoViewIfNeeded&&d.scrollIntoViewIfNeeded()||d.scrollIntoView())},zS=function(a,b,c){a.dispatchEvent(new CustomEvent(b,{detail:{type:"search",name:b,position:"nav",metadata:{eventDetail:c}},bubbles:!0}))}, +AS=function(a,b){if(a.N!==b){_ds.ur(a.h,b);if(a.N=b)a.setAttribute("search-active","");else{var c=a.D.querySelector(".highlight");c&&c.classList.remove("highlight");a.removeAttribute("search-active");a.setAttribute("aria-expanded","false");_ds.Xg(a.o)}a.hasAttribute("capture")||a.dispatchEvent(new CustomEvent("devsite-search-toggle",{detail:{active:b},bubbles:!0}))}},yS=function(a,b){a.K=null;b=b.detail;var c=b.suggestions,d=b.query;if(a.h.query.toLowerCase().startsWith(d.toLowerCase()))if(c){var e= +c.tb();0$1");d=_ds.Ft(d);_ds.Bd(c,d)}},cS={8:"backspace",9:"tab",13:"enter",16:"shift",17:"ctrl",18:"alt",19:"pause",20:"caps-lock",27:"esc",32:"space",33:"pg-up",34:"pg-down",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down",45:"insert",46:"delete",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",59:"semicolon",61:"equals",65:"a",66:"b",67:"c",68:"d",69:"e",70:"f",71:"g",72:"h",73:"i",74:"j", +75:"k",76:"l",77:"m",78:"n",79:"o",80:"p",81:"q",82:"r",83:"s",84:"t",85:"u",86:"v",87:"w",88:"x",89:"y",90:"z",93:"context",96:"num-0",97:"num-1",98:"num-2",99:"num-3",100:"num-4",101:"num-5",102:"num-6",103:"num-7",104:"num-8",105:"num-9",106:"num-multiply",107:"num-plus",109:"num-minus",110:"num-period",111:"num-division",112:"f1",113:"f2",114:"f3",115:"f4",116:"f5",117:"f6",118:"f7",119:"f8",120:"f9",121:"f10",122:"f11",123:"f12",186:"semicolon",187:"equals",189:"dash",188:",",190:".",191:"/", +192:"`",219:"open-square-bracket",220:"\\",221:"close-square-bracket",222:"single-quote",224:"win"};_ds.f=WR.prototype;_ds.f.keyCode=function(a){this.m=a;return this};_ds.f.key=function(a){this.o=a;return this};_ds.f.shiftKey=function(a){this.H=a;return this};_ds.f.altKey=function(a){this.h=a;return this};_ds.f.ctrlKey=function(a){this.j=a;return this};_ds.f.metaKey=function(a){this.C=a;return this};_ds.f.target=function(a){this.K=a;return this};_ds.F(ZR,_ds.Rf); +var mS=[27,112,113,114,115,116,117,118,119,120,121,122,123,19],nS="color date datetime datetime-local email month number password search tel text time url week".split(" "),bS;_ds.F(oS,_ds.dj);_ds.f=oS.prototype;_ds.f.nF=function(){return this.G};_ds.f.Lfa=function(a){this.K=a};_ds.f.oF=function(){return this.K};_ds.f.Ifa=function(a){this.F=a};_ds.f.kF=function(){return this.F};_ds.f.$ja=function(a){this.N=a};_ds.f.GJ=function(){return this.N};_ds.f.Kfa=function(a){this.O=a};_ds.f.Gj=_ds.ba(2); +_ds.f.Xna=function(a){aS(this.j,fS(0,arguments))};_ds.f.DX=function(a){return lS(this,this.j,fS(0,arguments))};_ds.f.mia=function(a){this.L=QR(a)};_ds.f.bI=function(){return _ds.Ub(this.L)}; +_ds.f.ma=function(){oS.ua.ma.call(this);this.j={};_ds.pg(this.h,"keydown",this.ni,!1,this);_ds.pg(this.h,"synthetic-keydown",this.xi,!1,this);_ds.Lw&&(_ds.pg(this.h,"keypress",this.Ai,!1,this),_ds.pg(this.h,"synthetic-keypress",this.Bi,!1,this));_ds.pg(this.h,"keyup",this.oi,!1,this);_ds.pg(this.h,"synthetic-keyup",this.zi,!1,this);this.h=null};_ds.f.mO=function(a){return"shortcut_"+a};_ds.f.oi=function(a){a=YR(a);_ds.bk&&gS(this,a);_ds.Lw&&!this.o&&hS(a)&&kS(this,a,!0)}; +_ds.f.zi=function(a){a=a.j();_ds.bk&&gS(this,a);_ds.Lw&&!this.o&&hS(a)&&kS(this,a,!0)};_ds.f.Ai=function(a){a=YR(a);32{}\[\]\/:,]+/,FS=0;_ds.t(wS,_ds.R);wS.prototype.disconnectedCallback=function(){_ds.Wj(this.j);this.h&&(this.h.dispose(),this.h=null)};wS.prototype.attributeChangedCallback=function(a,b,c){switch(a){case "project-scope":this.G=c||"";this.h&&(this.h.N=this.G);break;case "url-scoped":this.C=c;break;case "disabled":this.F&&(this.F.disabled=null!==c)}}; +wS.prototype.connectedCallback=function(){if(this.m=this.querySelector("form")){this.F=this.m.querySelector(".devsite-search-query");this.Y=this.m.querySelector(".devsite-search-button[search-open]");this.O=this.querySelector(".devsite-search-button[search-close]");var a="devsite-search-popout-container-id-"+ ++FS;this.F.setAttribute("aria-controls",a);this.D=_ds.ir(qS,{id:a});this.o=this.D.querySelector(".devsite-suggest-results-container");this.m.appendChild(this.D);this.hasAttribute("project-scope")&& +(this.G=this.getAttribute("project-scope"));this.hasAttribute("url-scoped")&&(this.C=this.getAttribute("url-scoped"));this.m&&this.F&&(this.h=new _ds.vr(this.m,this.F),this.h.m=!0,this.h.Bf=this.hasAttribute("enable-query-completion"),this.h.ke=!0,this.h.Af=!0,this.h.Cf=!0,this.h.N=this.G,this.h.m=this.hasAttribute("enable-suggestions"));CS(this)}};_ds.fa.Object.defineProperties(wS,{observedAttributes:{configurable:!0,enumerable:!0,get:function(){return["project-scope","url-scoped","disabled"]}}}); +wS.prototype.connectedCallback=wS.prototype.connectedCallback;wS.prototype.attributeChangedCallback=wS.prototype.attributeChangedCallback;wS.prototype.disconnectedCallback=wS.prototype.disconnectedCallback;try{window.customElements.define("devsite-search",wS)}catch(a){console.warn("devsite.app.customElement.DevsiteSearch",a)};})(_ds_www); diff --git a/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_select_module.js b/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_select_module.js new file mode 100644 index 0000000..ac1fc04 --- /dev/null +++ b/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_select_module.js @@ -0,0 +1,15 @@ +(function(_ds){var window=this;'use strict';var GS=function(){return(0,_ds.V)('
    ')},HS=function(a){var b=a.ed,c=a.ag;a='")},IS=function(a){var b=a.label;a=a.id;return(0,_ds.V)('")},JS=function(){return(0,_ds.V)('')},KS=function(a){var b=a.options,c=a.id;a=a.ag;a='
      ";for(var d=b.length,e=0;e'+_ds.tq(g.label)+""}return(0,_ds.V)(a+"
    ")},LS=function(){var a=_ds.R.call(this)||this;a.m=null;a.H=null;a.D=new _ds.Qj;a.F=new _ds.Qj;a.K=null;a.L=!1;a.o=!1;a.N="";a.h= +null;a.C=null;a.j=null;a.G=null;a.O=new _ds.Oj;return a},MS=function(a){var b=a.querySelector(".kd-select");b&&(b.classList.remove("kd-select"),Array.from(b.classList).forEach(function(c){a.classList.add(c);b.classList.remove(c)}))},RS=function(a){a.j=a.querySelector("select");var b;(b=a.j.id)||(NS++,b="devsite-select-"+NS+Math.random().toString().substr(2));a.j&&(a.j.options.length&&(a.G=a.j.options),a.j.hasAttribute("multiple")&&(a.o=!0,a.classList.add("devsite-select--multiple")));if(a.G){var c= +_ds.ir(GS),d=a.j.options;d=d[a.j.selectedIndex]||d[0];a.N=a.hasAttribute("label")?a.getAttribute("label"):d.label;d={ed:a.j.getAttribute("aria-label"),id:b,ag:a.o};d=_ds.ir(HS,d);c.appendChild(d);a.C=_ds.ir(IS,{label:a.N,id:b});d=_ds.ir(JS);c.appendChild(a.C);c.appendChild(d);a.h=_ds.ir(KS,{options:Array.from(a.G).map(function(e){for(var g=e.defaultSelected,k=OS(e.label,e.defaultSelected),l=e.label,m=new Map,p=_ds.n(PS),q=p.next();!q.done;q=p.next())q=q.value,e.hasAttribute(q)&&m.set(q,e.getAttribute(q)); +return{defaultSelected:g,ed:k,label:l,attributes:m}}),id:b,ag:a.o});c.appendChild(a.h);a.appendChild(c);a.j.hasAttribute("disabled")&&a.querySelector(".devsite-select-toggle").setAttribute("disabled","");QS(a)}a.L=!0},QS=function(a){a.D.listen(a.C,"click",function(b){clearTimeout(a.K);a.dispatchEvent(new CustomEvent("devsite-close-select",{bubbles:!0}));b.preventDefault();b.stopPropagation();a.hasAttribute("menu--open")?SS(a):TS(a)});a.D.listen(a.h,"click",function(b){b.target.classList.contains("devsite-select-item")&& +US(a,b.target)});a.D.listen(a.h,"focusout",function(){a.K=setTimeout(function(){return SS(a)},200)});a.D.listen(a.j,"change",function(){VS(a,WS(a.querySelectorAll("option")))});a.D.listen(a.h,"keydown",function(b){var c=b.which||b.keyCode;switch(c){case 38:case 40:b.preventDefault();if(a.m){if(b=40===c?_ds.eh(a.m):_ds.fh(a.m))a.m.classList.remove("devsite-focused"),a.h.setAttribute("aria-activedescendant",b.id),b.classList.add("devsite-focused"),a.m=b}else XS(a);a.m.scrollIntoView({block:"nearest"}); +break;case 13:case 32:b.preventDefault();US(a,a.m);break;case 9:case 27:SS(a)}});a.D.listen(a.C,"keydown",function(b){var c=b.which||b.keyCode;if(38===c||40===c)b.preventDefault(),a.hasAttribute("menu--open")||TS(a)})},TS=function(a){a.setAttribute("menu--open","");a.setAttribute("aria-expanded","true");XS(a);a.h.focus();"scrollIntoViewIfNeeded"in a.m&&a.m.scrollIntoViewIfNeeded()},SS=function(a){a.removeAttribute("menu--open");a.removeAttribute("aria-expanded");a.F.listen(document.body,"click",a.H); +a.F.listen(document.body,"devsite-close-select",a.H);a.m&&a.m.classList.remove("devsite-focused")},US=function(a,b){b&&(YS(a,parseInt(b.dataset.index,10)),a.o||(SS(a),a.C.focus()),a.j.dispatchEvent(new Event("change")))},XS=function(a){if(a.h){var b=Array.from(a.h.children).find(function(c){return c.hasAttribute("data-selected")});a.m=b?b:a.h.children[0];a.h.setAttribute("aria-activedescendant",a.m.id)}},ZS=function(a){a.H=function(b){if("devsite-close-select"!==b.type||b.target!==a)a.o&&"devsite-select-item"=== +b.target.className||SS(a)};a.h&&(a.F.listen(document.body,"click",a.H),a.F.listen(document.body,"devsite-close-select",a.H))},$S=function(a){if(a.h&&a.C){a.h.style.removeProperty("left");a.h.style.removeProperty("right");var b=a.h.getBoundingClientRect();0l?l:d.h.scrollHeight)
    Loading
    ')},mT=function(){return(0,_ds.V)('')}, +nT=function(){return(0,_ds.V)('')},oT=function(){return(0,_ds.V)('')}, +pT=function(a){a=a||{};a=a.Kh;a='')},bV=function(){return(0,_ds.V)('')}, +cV=function(a){var b=a.message,c=a.link,d=a.$m;a='")},dV=function(a){var b=a.Vo;a='")},eV=function(){var a=_ds.R.call(this)||this;a.o=-1;a.C=new _ds.Qj(a);a.j=new _ds.fs;a.h=[];return a},lV=function(a,b){switch(b){case "loading":if(!a.querySelector('*[type^="loading"]')){var c=_ds.ir(lT);fV(a,c)}break;case "refresh":gV(a);break;case "error":hV(a);break;case "copied-to-clipboard":c=_ds.ir(oT);fV(a,c,!0);break;case "cookie-notification":iV(a);break;case "support-attachment-error":jV(a)}b.startsWith("notification-")&& +kV(a,b)},fV=function(a,b,c){c=void 0===c?!1:c;a.appendChild(b);window.requestAnimationFrame(function(){mV(a,b,c)})},mV=function(a,b,c){c=void 0===c?!1:c;window.clearTimeout(a.o);a.m?nV(a,a.m,b,c):(a.m=b,window.requestAnimationFrame(function(){b.setAttribute("show","")}),c&&(a.o=window.setTimeout(function(){a.removeAttribute("type");nV(a,b)},5E3)))},gV=function(a){var b=_ds.ir(mT);_ds.eg(b.querySelector(".devsite-snackbar-action"),"click",function(){_ds.Gd().location.reload()});fV(a,b)},hV=function(a){var b= +_ds.ir(nT);_ds.eg(b.querySelector(".devsite-snackbar-action"),"click",function(){_ds.Gd().location.reload()});fV(a,b)},nV=function(a,b,c,d){c=void 0===c?null:c;d=void 0===d?!1:d;b&&(_ds.dg(b,_ds.ex,function(){_ds.ah(b);a.m=null;if(c)mV(a,c,d);else{var e=a.h.length?a.h.shift():null;null!==e&&lV(a,e)}}),b.removeAttribute("show"))},iV=function(a){if(a.j.get("devsite-eu-cookie")){var b=a.h.length?a.h.shift():null;null!==b&&lV(a,b)}else{b=pT;a.hasAttribute("data-cookie-notice")&&(b=parseInt(a.getAttribute("data-cookie-notice"), +10),b=oV[b]);if(a.hasAttribute("data-cookie-policy")){var c=a.getAttribute("data-cookie-policy");b=_ds.ir(b,{Kh:c})}else b=_ds.ir(b);_ds.dg(b.querySelector(".devsite-snackbar-action"),"click",function(){a.j.set("devsite-eu-cookie","1");pV(a)});fV(a,b)}},pV=function(a){nV(a,a.querySelector('*[type^="cookie-notification"]'))},jV=function(a){var b=_ds.ir(bV);fV(a,b);_ds.dg(b.querySelector(".devsite-snackbar-action"),"click",function(){qV(a)})},qV=function(a){nV(a,a.querySelector('*[type^="support-attachment-error"]'))}, +kV=function(a,b){var c=a.getAttribute(b+"-message"),d=a.getAttribute(b+"-link"),e=a.getAttribute(b+"-link-txt"),g=a.hasAttribute(b+"-store-key");if(c&&d){var k="devsite-notification"+d;if(!g||!a.j.get(k)){b=_ds.ir(cV,{Yo:b,message:c,link:d,$m:e});fV(a,b);var l=new _ds.Qj(b);l.listen(b,"click",function(m){m.stopPropagation();if(m.target.classList.contains("devsite-snackbar-link")||m.target.classList.contains("devsite-snackbar-action"))g&&a.j.set(k,"1"),rV(a),_ds.Wj(l)})}}},rV=function(a){nV(a,a.querySelector('*[type^="notification"]'))};var sV={},oV=(sV[0]=pT,sV[1]=pT,sV[2]=function(a){a=a||{};a=a.Kh;a='')},sV);_ds.t(eV,_ds.R);eV.prototype.connectedCallback=function(){this.C.listen(document.body,"devsite-show-custom-snackbar-msg",this.D)};eV.prototype.disconnectedCallback=function(){_ds.Wj(this.C)}; +eV.prototype.D=function(a){var b=this;this.setAttribute("type","custom");if(a=a.Z.detail){var c=!!a.showClose,d=_ds.ir(dV,{message:a.msg,Vo:c});c&&_ds.dg(d.querySelector(".devsite-snackbar-action"),"click",function(){nV(b,d)});fV(this,d,!c)}}; +eV.prototype.attributeChangedCallback=function(a,b,c){if("type"==a){switch(b){case "loading":nV(this,this.querySelector('*[type^="loading"]'));break;case "refresh":nV(this,this.querySelector('*[type^="refresh"]'));break;case "error":nV(this,this.querySelector('*[type^="error"]'));break;case "copied-to-clipboard":nV(this,this.querySelector('*[type^="copied-to-clipboard"]'));break;case "cookie-notification":pV(this);break;case "support-attachment-error":qV(this);break;case "custom":nV(this,this.querySelector('*[type^="custom"]'))}null!= +b&&b.startsWith("notification-")&&rV(this);c&&(c.includes(",")&&(this.h=c.split(","),c=this.h.shift()),lV(this,c))}};_ds.fa.Object.defineProperties(eV,{observedAttributes:{configurable:!0,enumerable:!0,get:function(){return["type"]}}});eV.prototype.attributeChangedCallback=eV.prototype.attributeChangedCallback;eV.prototype.disconnectedCallback=eV.prototype.disconnectedCallback;eV.prototype.connectedCallback=eV.prototype.connectedCallback;try{window.customElements.define("devsite-snackbar",eV)}catch(a){console.warn("devsite.app.customElement.DevsiteSnackBar",a)};})(_ds_www); diff --git a/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_spinner_module.js b/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_spinner_module.js new file mode 100644 index 0000000..5599361 --- /dev/null +++ b/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_spinner_module.js @@ -0,0 +1,2 @@ +(function(_ds){var window=this;'use strict';var xV=function(a){return a.replace(/<\//g,"<\\/").replace(/\]\]>/g,"]]\\>")},AV=function(a){var b=a.Xo,c="";a=Math.max(0,Math.ceil(a.Cn-1));for(var d=0;d
    '}return(0,_ds.V)(c)}, +BV=function(){return _ds.R.apply(this,arguments)||this},yV={},zV=/^(?!-*(?:expression|(?:moz-)?binding))(?:(?:[.#]?-?(?:[_a-z0-9-]+)(?:-[_a-z0-9-]+)*-?|(?:rgb|hsl)a?\([0-9.%,\u0020]+\)|-?(?:[0-9]+(?:\.[0-9]*)?|\.[0-9]+)(?:[a-z]{1,4}|%)?|!important)(?:\s*[,\u0020]\s*|$))*$/i;_ds.t(BV,_ds.R);BV.prototype.connectedCallback=function(){var a;if(this.hasAttribute("single-color")){var b=this.getAttribute("single-color");b&&b.startsWith("#")&&(a=b)}_ds.fr(this,AV,{Cn:5,Xo:a});if(a=this.getAttribute("size"))this.style.width=a+"px",this.style.height=a+"px"};BV.prototype.connectedCallback=BV.prototype.connectedCallback;try{window.customElements.define("devsite-spinner",BV)}catch(a){console.warn("devsite.app.customElement.DevsiteSpinner",a)};})(_ds_www); diff --git a/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_tabs_module.js b/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_tabs_module.js new file mode 100644 index 0000000..90bc253 --- /dev/null +++ b/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_tabs_module.js @@ -0,0 +1,18 @@ +(function(_ds){var window=this;'use strict';var PV=function(a){var b=a.Gg,c='")},QV=function(a){var b=a.Gg,c=a.href;a=a.text;return(0,_ds.V)('")},SV=function(){var a=_ds.R.call(this)||this;a.H=null;a.G=!1;a.j=new _ds.Qj;a.m=new _ds.Qj; +a.h=null;a.N=null;a.C=null;a.D=null;a.L=0;a.o=[];a.F=0;a.K=new _ds.Nj(function(){RV(a)},20);return a},ZV=function(a){a.j.listen(document.body,"devsite-sticky-resize",function(){return a.K.ra()});a.j.listen(a,"click",function(e){if(!(e.shiftKey||e.ctrlKey||e.metaKey||e.altKey)){var g=e.target,k=TV(a,g);if(k)if(k===a.h)UV(a,e);else if(VV(a),g.classList.contains("devsite-tabs-dropdown-toggle"))e.preventDefault(),e.stopPropagation(),k.hasAttribute("dropdown--open")?WV(a):XV(a,k);else{var l;"A"===g.tagName? +l=g:l=_ds.Ah(g,"A");var m=k.querySelector(".devsite-tabs-dropdown");if(m&&m.contains(g))l&&l.hasAttribute("href")||(e.preventDefault(),e.stopPropagation());else{if(e=a.H||a.querySelector("[active]"))e.removeAttribute("active"),e.setAttribute("aria-selected","false");k.setAttribute("active","");k.setAttribute("aria-selected","true");a.H=k;l&&l&&"#"!==l.href||a.K.ra()}}}});if(a.querySelector("tab[dropdown]")||a.querySelector("tab[overflow-tab]")){var b="onpointermove"in window?"pointerover":"mouseover", +c="onpointermove"in window?"pointerleave":"mouseleave",d=a.querySelectorAll("tab[clickable]");if(d.length){b=_ds.n(d);for(c=b.next();!c.done;c=b.next())a.j.listen(c.value,"click",function(e){var g=e.target,k=TV(a,g),l=k.querySelector(".devsite-tabs-dropdown");!l||a.h.contains(g)||l.contains(g)||(e.preventDefault(),e.stopPropagation(),k.hasAttribute("dropdown--open")?WV(a):YV(a,e))});a.j.listen(document.body,"click",function(e){a.D.contains(e.target)||WV(a)})}else a.j.listen(a,[b,"focusin"],function(e){document.body.hasAttribute("touch")|| +YV(a,e)}),a.j.listen(a,[c,"focusout"],function(){document.body.hasAttribute("touch")||WV(a,300)})}Array.from(a.querySelectorAll(".devsite-tabs-close-button")).forEach(function(e){a.j.listen(e,"click",function(){return WV(a)})})},YV=function(a,b){var c=b.target,d=TV(a,c);d&&(d===a.h||a.h.contains(c)?UV(a,b):XV(a,d))},WV=function(a,b){b=void 0===b?0:b;_ds.Wj(a.m);window.clearTimeout(a.F);var c=a.querySelector("tab[dropdown--open]");if(c){var d=c.querySelector(".devsite-tabs-dropdown");d.setAttribute("dropdown-transition", +"");_ds.Uj(a.m,d,_ds.ex,function(){d.removeAttribute("dropdown-transition");a.removeAttribute("dropdown--open")});a.F=window.setTimeout(function(){c.removeAttribute("dropdown--open");$V(c)},b)}else a.removeAttribute("dropdown--open");VV(a)},XV=function(a,b){VV(a);if(b.hasAttribute("dropdown")){if(_ds.Wj(a.m),window.clearTimeout(a.F),!b.hasAttribute("dropdown--open")){document.body.hasAttribute("touch")&&_ds.Uj(a.m,document.body,"click",function(m){a.contains(m.target)||WV(a)});var c=a.querySelector("tab[dropdown--open]"), +d=b.querySelector(".devsite-tabs-dropdown");if(d){_ds.Zj(d,"left","");var e=_ds.Mg(window||window),g=Array.from(d.querySelectorAll(".devsite-tabs-dropdown-column"));if(!b.hasAttribute("dropdown-full")&&1a.o.length)){var b=aW(a);if(0!==b){var c=a.o.slice(),d=0,e;c.forEach(function(p){p.parentNode!==a.D&&(e?_ds.Zg(p,e):_ds.$g(a.D,p,0));e=p;d+=aW(p)});if(!(d<=b)){var g=a.L;a.h.removeAttribute("hidden");var k=a.querySelector("[active]");for(k&& +(g+=aW(k));c.length;){var l=c.shift();if(l!==k){var m=aW(l);g+m<=b?g+=m:a.C.appendChild(l)}}}}}},bW=function(a){a.o=Array.from(a.querySelectorAll("tab"));var b=a.querySelector(".devsite-tabs-wrapper");b||(b=a.ownerDocument.createElement("div"),b.classList.add("devsite-tabs-wrapper"),a.appendChild(b),a.o.forEach(function(e){return b.appendChild(e)}));a.D=b;a.appendChild(b);if(!a.hasAttribute("no-overflow")){var c=a.ownerDocument.createElement("tab");c.setAttribute("overflow-tab","");var d=a.ownerDocument.createElement("a"); +_ds.Dd(d,"#");d.textContent="More";d.classList.add("devsite-icon");d.classList.add("devsite-icon-arrow-drop-down");c.appendChild(d);a.h=c;d=a.ownerDocument.createElement("div");d.classList.add("devsite-tabs-overflow-menu");d.setAttribute("scrollbars","");d.setAttribute("hidden","");a.C=d;c.appendChild(d);b.appendChild(c)}},aW=function(a){if(!a)return 0;for(var b=[],c=a;c.parentElement&&0==c.offsetWidth;)b.push(c),c.setAttribute("render-hidden",""),c=c.parentElement;a=_ds.nk(a).width;b=_ds.n(b);for(c= +b.next();!c.done;c=b.next())c.value.removeAttribute("render-hidden");return a},$V=function(a){var b=a.querySelector(".devsite-tabs-dropdown-toggle"),c=a.hasAttribute("dropdown--open"),d=a.querySelector(".devsite-tabs-dropdown");a.querySelector("a").setAttribute("aria-expanded",c);b.setAttribute("aria-expanded",c);d.setAttribute("aria-hidden",!c)},eW=function(a){a.o.forEach(function(b,c){if(b.hasAttribute("generated-tab-menu")&&!document.body.hasAttribute("touch")){var d=Array.from(b.querySelectorAll(".devsite-tabs-dropdown-column")), +e=b.querySelector(".devsite-tabs-dropdown"),g=b.querySelector("a");d.forEach(function(k,l){k.setAttribute("column-id","tab-"+c+"-column-"+l)});d=d.map(function(k){var l=k.querySelector(".devsite-nav-title")||k.querySelector(".devsite-nav-item-title");return{Hh:k.getAttribute("column-id"),text:l.textContent}});g&&(g=_ds.ir(PV,{Gg:g.textContent,Dl:d}),e&&(d=b.querySelector(".devsite-tabs-dropdown-content")))&&(e.insertBefore(g,d),e=b.querySelector(".dropdown-tabbed-menu a"),cW(b),a.j.listen(g,"click", +function(k){k.preventDefault();var l=b.querySelector(".dropdown-tabbed-menu-button");k=k.target;l&&k.tagName&&"a"===k.tagName.toLowerCase()&&!l.contains(k)&&dW(b,k.getAttribute("column-id"))}),e&&dW(b,e.getAttribute("column-id")))}})},dW=function(a,b){var c=Array.from(a.querySelectorAll(".devsite-tabs-dropdown-column"));a=Array.from(a.querySelectorAll(".dropdown-tabbed-menu a"));a.forEach(function(d){return d.removeAttribute("active")});c.forEach(function(d){return d.setAttribute("hidden","")});a= +a.find(function(d){return d.getAttribute("column-id")===b});c=c.find(function(d){return d.getAttribute("column-id")===b});a&&c&&(a.setAttribute("active",""),c.removeAttribute("hidden"))},cW=function(a){var b=a.querySelector(".dropdown-tabbed-menu-button-target");if(!a.querySelector(".dropdown-tabbed-menu-button")&&b){var c=a.querySelector("a");c&&(c=c.textContent,b=b.querySelector(".devsite-nav-item a"),a=a.querySelector(".dropdown-tabbed-menu"),b&&(c=_ds.ir(QV,{Gg:c,href:b.getAttribute("href"),text:b.textContent}), +a.appendChild(c)))}};_ds.t(SV,_ds.R);SV.prototype.disconnectedCallback=function(){_ds.Wj(this.j);_ds.Wj(this.m)};SV.prototype.connectedCallback=function(){this.G||(bW(this),this.G=!0);this.setAttribute("connected","");this.hasAttribute("no-overflow")||(this.h.setAttribute("collapsed",""),this.L=aW(this.h),this.h.removeAttribute("collapsed"),ZV(this),RV(this));eW(this)};SV.prototype.connectedCallback=SV.prototype.connectedCallback;SV.prototype.disconnectedCallback=SV.prototype.disconnectedCallback;try{window.customElements.define("devsite-tabs",SV)}catch(a){console.warn("devsite.app.customElement.DevsiteTabs",a)};})(_ds_www); diff --git a/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_toc_module.js b/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_toc_module.js new file mode 100644 index 0000000..278916d --- /dev/null +++ b/vendor-patches/Android/Pixel Update Bulletin—September 2019 Android Open Source Project_files/devsite_devsite_toc_module.js @@ -0,0 +1,15 @@ +(function(_ds){var window=this;'use strict';var sW=function(a){var b=a.kp,c=a.Om,d=a.El;a=a.hn;var e='