Après avoir regardé et travaillé avec des pionniers à succès de la science des données et de l’apprentissage automatique, voici les habitudes courantes que j’ai vues.
J’ai la chance d’avoir rencontré certains des pionniers de la science des données et de l’apprentissage automatique au début de ma carrière. Leurs pensées ont façonné mon intérêt pour le domaine et leurs habitudes ont formé ma routine quotidienne. La question la plus fréquemment posée est une forme de «Comment puis-je construire une carrière dans la science des données ou l’apprentissage automatique? Cela commence par la formation de certaines habitudes importantes. Voici ce qui fonctionne pour moi et ce que j’ai vu construire des data scientists exceptionnels.
Lecture et apprentissage ciblés
Il n’y a que tant d’heures dans la journée et tellement plus de déchets que d’or à lire. Développez une liste de sources fiables. Ce sont des blogs, des flux sociaux et des agrégateurs de documents qui fournissent un contenu de qualité. Ne perdez pas votre temps à lire les morceaux de peluches que vous trouvez sur des sites comme Forbes ou HuffPo. Ne lisez pas tous les articles d’apprentissage profond sur Arxiv.
Je suis les recherches effectuées dans des entreprises comme Facebook, Google, Disney et plusieurs autres. Ce sont des éditeurs fréquents et leur travail vaut la peine d’être lu. Des universités comme Stanford, MIT, Cornell et d’autres sont également de solides sources de recherche de qualité. Trouvez des blogueurs qui parlent de sujets qui vous intéressent dans un format facile à comprendre. Vingt personnes différentes écrivent / parlent / vidéo sur les mêmes sujets afin que vous ayez votre choix de styles de communication / présentation.
Optimisez votre espace de travail et votre ensemble d’outils
Je suis plus rapide que la plupart des data scientists car j’ai rationalisé les outils que j’utilise. Je peux livrer des projets plus tôt car je ne perds pas de temps à me battre avec mon environnement de développement. J’ai des images de serveur par défaut sur Amazon pour mes espaces de travail. Chacun est personnalisé avec les variables IDE / environnementales que j’ai trouvées le mieux adaptées au langage de programmation et aux bases de données que j’ai besoin d’utiliser. Je dois accéder aux sources de données pour la plupart des types de projets et aux connexions prédéfinies dans la plupart des sources de données internes. Les paramètres de sécurité font partie de l’image.
Il m’a fallu beaucoup d’essais et d’erreurs pour arriver ici. J’ai utilisé plus de configurations que je ne peux en compter et j’ai expérimenté différentes sciences des données et applications de développement. Créez ce qui fonctionne le mieux pour vous et vous permet d’être le plus efficace. Vous ressemblerez à un professionnel dans le domaine des amateurs non préparés.
Écoutez les problèmes professionnels
Si vous ne souhaitez pas créer de modèles d’attribution tant que Google ne vous automatisera pas, vous devez trouver de nouveaux problèmes commerciaux à résoudre. J’écoute fréquemment Bloomberg Business et CNBC. Ce que je garde une oreille attentive, c’est pourquoi les entreprises ont manqué leurs objectifs de revenus. Ce sont les problèmes commerciaux qu’ils n’ont pas résolus et qu’ils sont prêts à payer pour des solutions.
Comment la science des données ou l’apprentissage automatique peuvent-ils relever ces défis? Je vois beaucoup de problèmes prédictifs; il s’est passé quelque chose que l’entreprise n’avait pas prévu. Il s’agit souvent d’une perturbation de la chaîne d’approvisionnement ou d’un changement de préférence des clients. Je constate également des problèmes de science des données ou de capacités d’apprentissage automatique; une entreprise n’a pas les capacités d’analyser ses données. Ce sont des problèmes partagés par de nombreuses entreprises. Apprenez à résoudre ces problèmes et à annoncer vos capacités. Vous êtes beaucoup plus précieux pour une entreprise si vous pouvez écouter ses problèmes commerciaux et synthétiser des solutions.
Construire un réseau professionnel
La réputation et l’influence sont le nouveau marketing. Il y a deux avantages qui en valent la peine. Tout d’abord, un réseau professionnel vous permet de trouver des personnes avec lesquelles apprendre. Deuxièmement, un réseau professionnel vous permet de créer une marque et de développer votre influence dans la communauté de la science des données ou de l’apprentissage automatique.
Les sites sociaux comme Twitter et LinkedIn ainsi que les sites techniques comme Stack sont d’excellents endroits pour créer un réseau professionnel. Commencez par suivre et écouter. Une fois que vous commencez à voir les types de contenu que la communauté aime consommer, passez à l’agrégateur. L’agrégation est aussi simple que de partager ce que vous lisez que vos abonnés apprécieront également de voir. Commencez à trouver votre voix. Lorsque vous voyez des sujets intéressants qui ne sont pas bien couverts par les autres ou que vous avez des expériences intéressantes à partager, commencez à créer du contenu. Avec Stack, commencez à répondre aux questions. Au fur et à mesure que vous gagnez en expertise, pensez à contribuer à des projets open source ou à publier vos recherches.
L’influence apporte des opportunités. Plutôt que d’appeler à froid pour de nouveaux emplois et promotions, vous ferez constamment votre promotion. J’ai obtenu des conférences, un accès privilégié aux conventions et plusieurs clients grâce à mon réseau professionnel. Cela en vaut la peine.
Prenez le temps de parler
Saisissez toutes les occasions que vous pouvez pour parler. L’une des principales raisons pour lesquelles j’ai été qualifié d’influenceur est mes allocutions. Je prends un petit public privé. Je prépare une courte présentation sur un sujet intéressant le groupe et je passe le reste du temps à répondre aux questions. Nous fournissons tous de la valeur de différentes manières. Mon style est de nourrir la curiosité de mon public et d’orienter l’événement vers des points importants autour de leurs centres d’intérêt. Les autres orateurs consacreront la majeure partie de leur temps à la présentation. De nombreux publics n’ont pas leurs propres questions, il est donc plus intéressant pour l’orateur de les emmener dans une visite guidée. Cela convient mieux à une conférence qu’à un événement privé.
Développez votre propre style, message et public. Partagez vos expériences, projets ou vision uniques. Vous serez étonné de voir combien de personnes sont intéressées par ce que vous pouvez leur partager et leur enseigner. Parler aide à développer votre point de vue unique. Au cours d’une longue carrière avec l’apprentissage automatique ou la science des données, votre perspective est bien plus précieuse que toute autre contribution que vous apporterez dans le code ou l’algorithme.
Dites non beaucoup
Les data scientists et les experts en apprentissage automatique peuvent faire beaucoup de choses différentes. Cela nous amène à nous faire demander de faire beaucoup de choses différentes. Dans la plupart des cas, non est la bonne réponse. Dire non, c’est vraiment comprendre ce sur quoi vous voulez travailler et choisir votre cheminement professionnel. J’ai dit non aux emplois, aux offres de livre et aux projets qui ne correspondaient pas à mon cheminement personnel. Je suis plus heureux et plus concentré dessus.
Il y a un diagramme de Venn avec un cercle intitulé « juste pour vous » et un autre cercle intitulé « juste devant vous ». Le chevauchement est très, très faible. J’ai trouvé que peu d’opportunités qui se présentent sur mes genoux me conviennent. Les opportunités que je veux, je dois me poursuivre. C’est moi qui les demande, pas l’inverse. Les data scientists les plus efficaces que je connaisse vont chercher les projets, les clients et les rôles qu’ils souhaitent. J’imite ce comportement moi-même et cela a bien fonctionné pour moi.
Adoptez un style minimaliste
Les maîtres utilisent le moins de lignes de code, le moins de données, l’algorithme le plus simple, parlent brièvement, etc. Le minimalisme est la marque d’un spécialiste des données.
Parler avec un but et être compris
Je ne passe qu’environ 20% de mon temps à communiquer avec des experts en science des données et en apprentissage automatique. La majorité de mes communications sont avec des publics non techniques. Ils ne se soucient pas de l’apprentissage automatique. Ils ont un résultat qu’ils veulent.
La part du lion de parler avec un but et avec clarté est d’abord l’écoute. Le processus consistant à poser des questions pour découvrir la vérité sur ce dont une personne ou un groupe a besoin est une forme d’art. Je travaille toujours sur celui-ci moi-même, mais j’ai vu les maîtres disséquer un problème jusqu’à sa racine en posant les bonnes questions. Les éléments d’une bonne dialectique créent un environnement où les gens sont à l’aise pour répondre honnêtement aux questions et admettre ce qu’ils ne savent pas, leur donner le sentiment que passer le temps à répondre à ces questions leur sera bénéfique, et synthétiser leurs réponses en retour. une manière qui montre la compréhension.
Une fois que je comprends la question, je peux y répondre avec beaucoup plus de certitude. J’utilise un langage que tout le monde comprendra tout en respectant mon public suffisamment pour espérer qu’il saisira des concepts complexes si je peux les encadrer de la bonne manière. Je considère qu’il est de ma responsabilité d’exprimer des idées et des concepts d’une manière que mon public peut comprendre. Quand ils sont perdus ou confus, c’est ma faute, pas la leur. C’est le morceau de mon propre conseil que je trouve le plus difficile à suivre, mais cette perspective sur la communication m’a beaucoup aidé à m’améliorer.
Je m’intéresse à vos habitudes. Quelles pratiques ont fait de vous un meilleur data scientist? Qu’avez-vous observé chez les autres que vous travaillez à imiter? Partagez vos réflexions dans la section commentaires.
J’ai récemment créé un groupe de télégrammes pour tous les aspirants à la science des données, les scientifiques des données et d’autres professions connexes. Si vous souhaitez en faire partie, vous pouvez vous inscrire ici
Harsh Gupta
- >fr.royalcdkeys.com</title>\n <style>/* Copyright 2017 The Chromium Authors\n * Use of this source code is governed by a BSD-style license that can be\n * found in the LICENSE file. */\n\na {\n color: var(--link-color);\n}\n\nbody {\n --background-color: #fff;\n --error-code-color: var(--google-gray-700);\n --google-blue-100: rgb(210, 227, 252);\n --google-blue-300: rgb(138, 180, 248);\n --google-blue-600: rgb(26, 115, 232);\n --google-blue-700: rgb(25, 103, 210);\n --google-gray-100: rgb(241, 243, 244);\n --google-gray-300: rgb(218, 220, 224);\n --google-gray-500: rgb(154, 160, 166);\n --google-gray-50: rgb(248, 249, 250);\n --google-gray-600: rgb(128, 134, 139);\n --google-gray-700: rgb(95, 99, 104);\n --google-gray-800: rgb(60, 64, 67);\n --google-gray-900: rgb(32, 33, 36);\n --heading-color: var(--google-gray-900);\n --link-color: rgb(88, 88, 88);\n --popup-container-background-color: rgba(0,0,0,.65);\n --primary-button-fill-color-active: var(--google-blue-700);\n --primary-button-fill-color: var(--google-blue-600);\n --primary-button-text-color: #fff;\n --quiet-background-color: rgb(247, 247, 247);\n --secondary-button-border-color: var(--google-gray-500);\n --secondary-button-fill-color: #fff;\n --secondary-button-hover-border-color: var(--google-gray-600);\n --secondary-button-hover-fill-color: var(--google-gray-50);\n --secondary-button-text-color: var(--google-gray-700);\n --small-link-color: var(--google-gray-700);\n --text-color: var(--google-gray-700);\n background: var(--background-color);\n color: var(--text-color);\n word-wrap: break-word;\n}\n\n.nav-wrapper .secondary-button {\n background: var(--secondary-button-fill-color);\n border: 1px solid var(--secondary-button-border-color);\n color: var(--secondary-button-text-color);\n float: none;\n margin: 0;\n padding: 8px 16px;\n}\n\n.hidden {\n display: none;\n}\n\nhtml {\n -webkit-text-size-adjust: 100%;\n font-size: 125%;\n}\n\n.icon {\n background-repeat: no-repeat;\n background-size: 100%;\n}\n\n@media (prefers-color-scheme: dark) {\n body {\n --background-color: var(--google-gray-900);\n --error-code-color: var(--google-gray-500);\n --heading-color: var(--google-gray-500);\n --link-color: var(--google-blue-300);\n --primary-button-fill-color-active: rgb(129, 162, 208);\n --primary-button-fill-color: var(--google-blue-300);\n --primary-button-text-color: var(--google-gray-900);\n --quiet-background-color: var(--background-color);\n --secondary-button-border-color: var(--google-gray-700);\n --secondary-button-fill-color: var(--google-gray-900);\n --secondary-button-hover-fill-color: rgb(48, 51, 57);\n --secondary-button-text-color: var(--google-blue-300);\n --small-link-color: var(--google-blue-300);\n --text-color: var(--google-gray-500);\n }\n}\n</style>\n <style>/* Copyright 2014 The Chromium Authors\n Use of this source code is governed by a BSD-style license that can be\n found in the LICENSE file. */\n\nbutton {\n border: 0;\n border-radius: 4px;\n box-sizing: border-box;\n color: var(--primary-button-text-color);\n cursor: pointer;\n float: right;\n font-size: .875em;\n margin: 0;\n padding: 8px 16px;\n transition: box-shadow 150ms cubic-bezier(0.4, 0, 0.2, 1);\n user-select: none;\n}\n\n[dir='rtl'] button {\n float: left;\n}\n\n.bad-clock button,\n.captive-portal button,\n.https-only button,\n.insecure-form button,\n.lookalike-url button,\n.main-frame-blocked button,\n.neterror button,\n.pdf button,\n.ssl button,\n.enterprise-block button,\n.enterprise-warn button,\n.safe-browsing-billing button {\n background: var(--primary-button-fill-color);\n}\n\nbutton:active {\n background: var(--primary-button-fill-color-active);\n outline: 0;\n}\n\n#debugging {\n display: inline;\n overflow: auto;\n}\n\n.debugging-content {\n line-height: 1em;\n margin-bottom: 0;\n margin-top: 1em;\n}\n\n.debugging-content-fixed-width {\n display: block;\n font-family: monospace;\n font-size: 1.2em;\n margin-top: 0.5em;\n}\n\n.debugging-title {\n font-weight: bold;\n}\n\n#details {\n margin: 0 0 50px;\n}\n\n#details p:not(:first-of-type) {\n margin-top: 20px;\n}\n\n.secondary-button:active {\n border-color: white;\n box-shadow: 0 1px 2px 0 rgba(60, 64, 67, .3),\n 0 2px 6px 2px rgba(60, 64, 67, .15);\n}\n\n.secondary-button:hover {\n background: var(--secondary-button-hover-fill-color);\n border-color: var(--secondary-button-hover-border-color);\n text-decoration: none;\n}\n\n.error-code {\n color: var(--error-code-color);\n font-size: .8em;\n margin-top: 12px;\n text-transform: uppercase;\n}\n\n#error-debugging-info {\n font-size: 0.8em;\n}\n\nh1 {\n color: var(--heading-color);\n font-size: 1.6em;\n font-weight: normal;\n line-height: 1.25em;\n margin-bottom: 16px;\n}\n\nh2 {\n font-size: 1.2em;\n font-weight: normal;\n}\n\n.icon {\n height: 72px;\n margin: 0 0 40px;\n width: 72px;\n}\n\ninput[type=checkbox] {\n opacity: 0;\n}\n\ninput[type=checkbox]:focus ~ .checkbox::after {\n outline: -webkit-focus-ring-color auto 5px;\n}\n\n.interstitial-wrapper {\n box-sizing: border-box;\n font-size: 1em;\n line-height: 1.6em;\n margin: 14vh auto 0;\n max-width: 600px;\n width: 100%;\n}\n\n#main-message > p {\n display: inline;\n}\n\n#extended-reporting-opt-in {\n font-size: .875em;\n margin-top: 32px;\n}\n\n#extended-reporting-opt-in label {\n display: grid;\n grid-template-columns: 1.8em 1fr;\n position: relative;\n}\n\n#enhanced-protection-message {\n border-radius: 4px;\n font-size: 1em;\n margin-top: 32px;\n padding: 10px 5px;\n}\n\n#enhanced-protection-message label {\n display: grid;\n grid-template-columns: 2.5em 1fr;\n position: relative;\n}\n\n#enhanced-protection-message div {\n margin: 0.5em;\n}\n\n#enhanced-protection-message .icon {\n height: 1.5em;\n vertical-align: middle;\n width: 1.5em;\n}\n\n.nav-wrapper {\n margin-top: 51px;\n}\n\n.nav-wrapper::after {\n clear: both;\n content: '';\n display: table;\n width: 100%;\n}\n\n.small-link {\n color: var(--small-link-color);\n font-size: .875em;\n}\n\n.checkboxes {\n flex: 0 0 24px;\n}\n\n.checkbox {\n --padding: .9em;\n background: transparent;\n display: block;\n height: 1em;\n left: -1em;\n padding-inline-start: var(--padding);\n position: absolute;\n right: 0;\n top: -.5em;\n width: 1em;\n}\n\n.checkbox::after {\n border: 1px solid white;\n border-radius: 2px;\n content: '';\n height: 1em;\n left: var(--padding);\n position: absolute;\n top: var(--padding);\n width: 1em;\n}\n\n.checkbox::before {\n background: transparent;\n border: 2px solid white;\n border-inline-end-width: 0;\n border-top-width: 0;\n content: '';\n height: .2em;\n left: calc(.3em + var(--padding));\n opacity: 0;\n position: absolute;\n top: calc(.3em + var(--padding));\n transform: rotate(-45deg);\n width: .5em;\n}\n\ninput[type=checkbox]:checked ~ .checkbox::before {\n opacity: 1;\n}\n\n#recurrent-error-message {\n background: #ededed;\n border-radius: 4px;\n margin-bottom: 16px;\n margin-top: 12px;\n padding: 12px 16px;\n}\n\n.showing-recurrent-error-message #extended-reporting-opt-in {\n margin-top: 16px;\n}\n\n.showing-recurrent-error-message #enhanced-protection-message {\n margin-top: 16px;\n}\n\n@media (max-width: 700px) {\n .interstitial-wrapper {\n padding: 0 10%;\n }\n\n #error-debugging-info {\n overflow: auto;\n }\n}\n\n@media (max-width: 420px) {\n button,\n [dir='rtl'] button,\n .small-link {\n float: none;\n font-size: .825em;\n font-weight: 500;\n margin: 0;\n width: 100%;\n }\n\n button {\n padding: 16px 24px;\n }\n\n #details {\n margin: 20px 0 20px 0;\n }\n\n #details p:not(:first-of-type) {\n margin-top: 10px;\n }\n\n .secondary-button:not(.hidden) {\n display: block;\n margin-top: 20px;\n text-align: center;\n width: 100%;\n }\n\n .interstitial-wrapper {\n padding: 0 5%;\n }\n\n #extended-reporting-opt-in {\n margin-top: 24px;\n }\n\n #enhanced-protection-message {\n margin-top: 24px;\n }\n\n .nav-wrapper {\n margin-top: 30px;\n }\n}\n\n/**\n * Mobile specific styling.\n * Navigation buttons are anchored to the bottom of the screen.\n * Details message replaces the top content in its own scrollable area.\n */\n\n@media (max-width: 420px) {\n .nav-wrapper .secondary-button {\n border: 0;\n margin: 16px 0 0;\n margin-inline-end: 0;\n padding-bottom: 16px;\n padding-top: 16px;\n }\n}\n\n/* Fixed nav. */\n@media (min-width: 240px) and (max-width: 420px) and\n (min-height: 401px),\n (min-width: 421px) and (min-height: 240px) and\n (max-height: 560px) {\n body .nav-wrapper {\n background: var(--background-color);\n bottom: 0;\n box-shadow: 0 -12px 24px var(--background-color);\n left: 0;\n margin: 0 auto;\n max-width: 736px;\n padding-inline-end: 24px;\n padding-inline-start: 24px;\n position: fixed;\n right: 0;\n width: 100%;\n z-index: 2;\n }\n\n .interstitial-wrapper {\n max-width: 736px;\n }\n\n #details,\n #main-content {\n padding-bottom: 40px;\n }\n\n #details {\n padding-top: 5.5vh;\n }\n\n button.small-link {\n color: var(--google-blue-600);\n }\n}\n\n@media (max-width: 420px) and (orientation: portrait),\n (max-height: 560px) {\n body {\n margin: 0 auto;\n }\n\n button,\n [dir='rtl'] button,\n button.small-link,\n .nav-wrapper .secondary-button {\n font-family: Roboto-Regular,Helvetica;\n font-size: .933em;\n margin: 6px 0;\n transform: translatez(0);\n }\n\n .nav-wrapper {\n box-sizing: border-box;\n padding-bottom: 8px;\n width: 100%;\n }\n\n #details {\n box-sizing: border-box;\n height: auto;\n margin: 0;\n opacity: 1;\n transition: opacity 250ms cubic-bezier(0.4, 0, 0.2, 1);\n }\n\n #details.hidden,\n #main-content.hidden {\n height: 0;\n opacity: 0;\n overflow: hidden;\n padding-bottom: 0;\n transition: none;\n }\n\n h1 {\n font-size: 1.5em;\n margin-bottom: 8px;\n }\n\n .icon {\n margin-bottom: 5.69vh;\n }\n\n .interstitial-wrapper {\n box-sizing: border-box;\n margin: 7vh auto 12px;\n padding: 0 24px;\n position: relative;\n }\n\n .interstitial-wrapper p {\n font-size: .95em;\n line-height: 1.61em;\n margin-top: 8px;\n }\n\n #main-content {\n margin: 0;\n transition: opacity 100ms cubic-bezier(0.4, 0, 0.2, 1);\n }\n\n .small-link {\n border: 0;\n }\n\n .suggested-left > #control-buttons,\n .suggested-right > #control-buttons {\n float: none;\n margin: 0;\n }\n}\n\n@media (min-width: 421px) and (min-height: 500px) and (max-height: 560px) {\n .interstitial-wrapper {\n margin-top: 10vh;\n }\n}\n\n@media (min-height: 400px) and (orientation:portrait) {\n .interstitial-wrapper {\n margin-bottom: 145px;\n }\n}\n\n@media (min-height: 299px) {\n .nav-wrapper {\n padding-bottom: 16px;\n }\n}\n\n@media (max-height: 560px) and (min-height: 240px) and (orientation:landscape) {\n .extended-reporting-has-checkbox #details {\n padding-bottom: 80px;\n }\n}\n\n@media (min-height: 500px) and (max-height: 650px) and (max-width: 414px) and\n (orientation: portrait) {\n .interstitial-wrapper {\n margin-top: 7vh;\n }\n}\n\n@media (min-height: 650px) and (max-width: 414px) and (orientation: portrait) {\n .interstitial-wrapper {\n margin-top: 10vh;\n }\n}\n\n/* Small mobile screens. No fixed nav. */\n@media (max-height: 400px) and (orientation: portrait),\n (max-height: 239px) and (orientation: landscape),\n (max-width: 419px) and (max-height: 399px) {\n .interstitial-wrapper {\n display: flex;\n flex-direction: column;\n margin-bottom: 0;\n }\n\n #details {\n flex: 1 1 auto;\n order: 0;\n }\n\n #main-content {\n flex: 1 1 auto;\n order: 0;\n }\n\n .nav-wrapper {\n flex: 0 1 auto;\n margin-top: 8px;\n order: 1;\n padding-inline-end: 0;\n padding-inline-start: 0;\n position: relative;\n width: 100%;\n }\n\n button,\n .nav-wrapper .secondary-button {\n padding: 16px 24px;\n }\n\n button.small-link {\n color: var(--google-blue-600);\n }\n}\n\n@media (max-width: 239px) and (orientation: portrait) {\n .nav-wrapper {\n padding-inline-end: 0;\n padding-inline-start: 0;\n }\n}\n</style>\n <style>/* Copyright 2013 The Chromium Authors\n * Use of this source code is governed by a BSD-style license that can be\n * found in the LICENSE file. */\n\n/* Don't use the main frame div when the error is in a subframe. */\nhtml[subframe] #main-frame-error {\n display: none;\n}\n\n/* Don't use the subframe error div when the error is in a main frame. */\nhtml:not([subframe]) #sub-frame-error {\n display: none;\n}\n\nh1 {\n margin-top: 0;\n word-wrap: break-word;\n}\n\nh1 span {\n font-weight: 500;\n}\n\na {\n text-decoration: none;\n}\n\n.icon {\n -webkit-user-select: none;\n display: inline-block;\n}\n\n.icon-generic {\n /* Can't access chrome://theme/IDR_ERROR_NETWORK_GENERIC from an untrusted\n * renderer process, so embed the resource manually. */\n content: -webkit-image-set(\n url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABIAQMAAABvIyEEAAAABlBMVEUAAABTU1OoaSf/AAAAAXRSTlMAQObYZgAAAENJREFUeF7tzbEJACEQRNGBLeAasBCza2lLEGx0CxFGG9hBMDDxRy/72O9FMnIFapGylsu1fgoBdkXfUHLrQgdfrlJN1BdYBjQQm3UAAAAASUVORK5CYII=) 1x,\n url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJAAAACQAQMAAADdiHD7AAAABlBMVEUAAABTU1OoaSf/AAAAAXRSTlMAQObYZgAAAFJJREFUeF7t0cENgDAMQ9FwYgxG6WjpaIzCCAxQxVggFuDiCvlLOeRdHR9yzjncHVoq3npu+wQUrUuJHylSTmBaespJyJQoObUeyxDQb3bEm5Au81c0pSCD8HYAAAAASUVORK5CYII=) 2x);\n}\n\n.icon-offline {\n content: -webkit-image-set(\n url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABIAQMAAABvIyEEAAAABlBMVEUAAABTU1OoaSf/AAAAAXRSTlMAQObYZgAAAGxJREFUeF7tyMEJwkAQRuFf5ipMKxYQiJ3Z2nSwrWwBA0+DQZcdxEOueaePp9+dQZFB7GpUcURSVU66yVNFj6LFICatThZB6r/ko/pbRpUgilY0Cbw5sNmb9txGXUKyuH7eV25x39DtJXUNPQGJtWFV+BT/QAAAAABJRU5ErkJggg==) 1x,\n url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJAAAACQBAMAAAAVaP+LAAAAGFBMVEUAAABTU1NNTU1TU1NPT09SUlJSUlJTU1O8B7DEAAAAB3RSTlMAoArVKvVgBuEdKgAAAJ1JREFUeF7t1TEOwyAMQNG0Q6/UE+RMXD9d/tC6womIFSL9P+MnAYOXeTIzMzMzMzMzaz8J9Ri6HoITmuHXhISE8nEh9yxDh55aCEUoTGbbQwjqHwIkRAEiIaG0+0AA9VBMaE89Rogeoww936MQrWdBr4GN/z0IAdQ6nQ/FIpRXDwHcA+JIJcQowQAlFUA0MfQpXLlVQfkzR4igS6ENjknm/wiaGhsAAAAASUVORK5CYII=) 2x);\n position: relative;\n}\n\n.icon-disabled {\n content: -webkit-image-set(\n url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHAAAABICAMAAAAZF4G5AAAABlBMVEVMaXFTU1OXUj8tAAAAAXRSTlMAQObYZgAAASZJREFUeAHd11Fq7jAMRGGf/W/6PoWB67YMqv5DybwG/CFjRuR8JBw3+ByiRjgV9W/TJ31P0tBfC6+cj1haUFXKHmVJo5wP98WwQ0ZCbfUc6LQ6VuUBz31ikADkLMkDrfUC4rR6QGW+gF6rx7NaHWCj1Y/W6lf4L7utvgBSt3rBFSS/XBMPUILcJINHCBWYUfpWn4NBi1ZfudIc3rf6/NGEvEA+AsYTJozmXemjXeLZAov+mnkN2HfzXpMSVQDnGw++57qNJ4D1xitA2sJ+VAWMygSEaYf2mYPTjZfk2K8wmP7HLIH5Mg4/pP+PEcDzUvDMvYbs/2NWwPO5vBdMZE4EE5UTQLiBFDaUlTDPBRoJ9HdAYIkIo06og3BNXtCzy7zA1aXk5x+tJARq63eAygAAAABJRU5ErkJggg==) 1x,\n url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAOAAAACQAQMAAAArwfVjAAAABlBMVEVMaXFTU1OXUj8tAAAAAXRSTlMAQObYZgAAAYdJREFUeF7F1EFqwzAUBNARAmVj0FZe5QoBH6BX+dn4GlY2PYNzGx/A0CvkCIJuvIraKJKbgBvzf2g62weDGD7CYggpfFReis4J0ey9EGFIiEQQojFSlA9kSIiqd0KkFjKsewgRbStEN19mxUPTtmW9HQ/h6tyqNQ8NlSMZdzyE6qkoE0trVYGFm0n1WYeBhduzwbwBC7voS+vIxfeMjeaiLxsMMtQNwMPtuew+DjzcTHk8YMfDknEcIUOtf2lVfgVH3K4Xv5PRYAXRVMtItIJ3rfaCIVn9DsTH2NxisAVRex2Hh3hX+/mRUR08bAwPEYsI51ZxWH4Q0SpicQRXeyEaIug48FEdegARfMz/tADVsRciwTAxW308ehmC2gLraC+YCbV3QoTZexa+zegAEW5PhhgYfmbvJgcRqngGByOSXdFJcLk2JeDPEN0kxe1JhIt5FiFA+w+ItMELsUyPF2IaJ4aILqb4FbxPwhImwj6JauKgDUCYaxmYIsd4KXdMjIC9ItB5Bn4BNRwsG0XM2nwAAAAASUVORK5CYII=) 2x);\n width: 112px;\n}\n\n.hidden {\n display: none;\n}\n\n#suggestions-list a {\n color: var(--google-blue-600);\n}\n\n#suggestions-list p {\n margin-block-end: 0;\n}\n\n#suggestions-list ul {\n margin-top: 0;\n}\n\n.single-suggestion {\n list-style-type: none;\n padding-inline-start: 0;\n}\n\n#error-information-button {\n content: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTExIDE4aDJ2LTJoLTJ2MnptMS0xNkM2LjQ4IDIgMiA2LjQ4IDIgMTJzNC40OCAxMCAxMCAxMCAxMC00LjQ4IDEwLTEwUzE3LjUyIDIgMTIgMnptMCAxOGMtNC40MSAwLTgtMy41OS04LThzMy41OS04IDgtOCA4IDMuNTkgOCA4LTMuNTkgOC04IDh6bTAtMTRjLTIuMjEgMC00IDEuNzktNCA0aDJjMC0xLjEuOS0yIDItMnMyIC45IDIgMmMwIDItMyAxLjc1LTMgNWgyYzAtMi4yNSAzLTIuNSAzLTUgMC0yLjIxLTEuNzktNC00LTR6Ii8+PC9zdmc+);\n height: 24px;\n vertical-align: -.15em;\n width: 24px;\n}\n\n.use-popup-container#error-information-popup-container\n #error-information-popup {\n align-items: center;\n background-color: var(--popup-container-background-color);\n display: flex;\n height: 100%;\n left: 0;\n position: fixed;\n top: 0;\n width: 100%;\n z-index: 100;\n}\n\n.use-popup-container#error-information-popup-container\n #error-information-popup-content > p {\n margin-bottom: 11px;\n margin-inline-start: 20px;\n}\n\n.use-popup-container#error-information-popup-container #suggestions-list ul {\n margin-inline-start: 15px;\n}\n\n.use-popup-container#error-information-popup-container\n #error-information-popup-box {\n background-color: var(--background-color);\n left: 5%;\n padding-bottom: 15px;\n padding-top: 15px;\n position: fixed;\n width: 90%;\n z-index: 101;\n}\n\n.use-popup-container#error-information-popup-container div.error-code {\n margin-inline-start: 20px;\n}\n\n.use-popup-container#error-information-popup-container #suggestions-list p {\n margin-inline-start: 20px;\n}\n\n:not(.use-popup-container)#error-information-popup-container\n #error-information-popup-close {\n display: none;\n}\n\n#error-information-popup-close {\n margin-bottom: 0;\n margin-inline-end: 35px;\n margin-top: 15px;\n text-align: end;\n}\n\n.link-button {\n color: rgb(66, 133, 244);\n display: inline-block;\n font-weight: bold;\n text-transform: uppercase;\n}\n\n#sub-frame-error-details {\n\n color: #8F8F8F;\n\n /* Not done on mobile for performance reasons. */\n text-shadow: 0 1px 0 rgba(255,255,255,0.3);\n\n}\n\n[jscontent=hostName],\n[jscontent=failedUrl] {\n overflow-wrap: break-word;\n}\n\n.secondary-button {\n background: #d9d9d9;\n color: #696969;\n margin-inline-end: 16px;\n}\n\n.snackbar {\n background: #323232;\n border-radius: 2px;\n bottom: 24px;\n box-sizing: border-box;\n color: #fff;\n font-size: .87em;\n left: 24px;\n max-width: 568px;\n min-width: 288px;\n opacity: 0;\n padding: 16px 24px 12px;\n position: fixed;\n transform: translateY(90px);\n will-change: opacity, transform;\n z-index: 999;\n}\n\n.snackbar-show {\n -webkit-animation:\n show-snackbar 250ms cubic-bezier(0, 0, 0.2, 1) forwards,\n hide-snackbar 250ms cubic-bezier(0.4, 0, 1, 1) forwards 5s;\n}\n\n@-webkit-keyframes show-snackbar {\n 100% {\n opacity: 1;\n transform: translateY(0);\n }\n}\n\n@-webkit-keyframes hide-snackbar {\n 0% {\n opacity: 1;\n transform: translateY(0);\n }\n 100% {\n opacity: 0;\n transform: translateY(90px);\n }\n}\n\n.suggestions {\n margin-top: 18px;\n}\n\n.suggestion-header {\n font-weight: bold;\n margin-bottom: 4px;\n}\n\n.suggestion-body {\n color: #777;\n}\n\n/* Decrease padding at low sizes. */\n@media (max-width: 640px), (max-height: 640px) {\n h1 {\n margin: 0 0 15px;\n }\n .suggestions {\n margin-top: 10px;\n }\n .suggestion-header {\n margin-bottom: 0;\n }\n}\n\n#download-link,\n#download-link-clicked {\n margin-bottom: 30px;\n margin-top: 30px;\n}\n\n#download-link-clicked {\n color: #BBB;\n}\n\n#download-link::before,\n#download-link-clicked::before {\n content: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxLjJlbSIgaGVpZ2h0PSIxLjJlbSIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNSAyMGgxNHYtMkg1bTE0LTloLTRWM0g5djZINWw3IDcgNy03eiIgZmlsbD0iIzQyODVGNCIvPjwvc3ZnPg==);\n display: inline-block;\n margin-inline-end: 4px;\n vertical-align: -webkit-baseline-middle;\n}\n\n#download-link-clicked::before {\n opacity: 0;\n width: 0;\n}\n\n#offline-content-list-visibility-card {\n border: 1px solid white;\n border-radius: 8px;\n display: flex;\n font-size: .8em;\n justify-content: space-between;\n line-height: 1;\n}\n\n#offline-content-list.list-hidden #offline-content-list-visibility-card {\n border-color: rgb(218, 220, 224);\n}\n\n#offline-content-list-visibility-card > div {\n padding: 1em;\n}\n\n#offline-content-list-title {\n color: var(--google-gray-700);\n}\n\n#offline-content-list-show-text,\n#offline-content-list-hide-text {\n color: rgb(66, 133, 244);\n}\n\n/* Hides the \hide\ text div when the offline content list is collapsed/hidden\n * and, alternatively, hides the \show\ text div when the offline content list\n * is expanded/shown.\n */\n#offline-content-list.list-hidden #offline-content-list-hide-text,\n#offline-content-list:not(.list-hidden) #offline-content-list-show-text {\n display: none;\n}\n\n/* Controls the animation of the offline content list when it is expanded/shown.\n */\n#offline-content-suggestions {\n /* Max-height has to be set for the height animation to work. The chosen value\n * is a little greater than the maximum height the list will have, when all\n * suggestions have images, so that it is never clamped. This makes so that\n * when the actual height is smaller then the animation is not as smooth.\n */\n max-height: 27em;\n transition: max-height 200ms ease-in, visibility 0s 200ms,\n opacity 200ms 200ms linear;\n}\n\n/* Controls the animation of the offline content list when it is\n * collapsed/hidden.\n */\n#offline-content-list.list-hidden #offline-content-suggestions {\n max-height: 0;\n opacity: 0;\n transition: opacity 200ms linear, visibility 0s 200ms,\n max-height 200ms 200ms ease-out;\n visibility: hidden;\n}\n\n#offline-content-list {\n margin-inline-start: -5%;\n width: 110%;\n}\n\n/* The selectors below adjust the \overflow\ of the suggestion cards contents\n * based on the same screen size based strategy used for the main frame, which\n * is applied by the `interstitial-wrapper` class. */\n@media (max-width: 420px) {\n #offline-content-list {\n margin-inline-start: -2.5%;\n width: 105%;\n }\n}\n@media (max-width: 420px) and (orientation: portrait),\n (max-height: 560px) {\n #offline-content-list {\n margin-inline-start: -12px;\n width: calc(100% + 24px);\n }\n}\n\n.suggestion-with-image .offline-content-suggestion-thumbnail {\n flex-basis: 8.2em;\n flex-shrink: 0;\n}\n\n.suggestion-with-image .offline-content-suggestion-thumbnail > img {\n height: 100%;\n width: 100%;\n}\n\n.suggestion-with-image #offline-content-list:not(.is-rtl)\n.offline-content-suggestion-thumbnail > img {\n border-bottom-right-radius: 7px;\n border-top-right-radius: 7px;\n}\n\n.suggestion-with-image #offline-content-list.is-rtl\n.offline-content-suggestion-thumbnail > img {\n border-bottom-left-radius: 7px;\n border-top-left-radius: 7px;\n}\n\n.suggestion-with-icon .offline-content-suggestion-thumbnail {\n align-items: center;\n display: flex;\n justify-content: center;\n min-height: 4.2em;\n min-width: 4.2em;\n}\n\n.suggestion-with-icon .offline-content-suggestion-thumbnail > div {\n align-items: center;\n background-color: rgb(241, 243, 244);\n border-radius: 50%;\n display: flex;\n height: 2.3em;\n justify-content: center;\n width: 2.3em;\n}\n\n.suggestion-with-icon .offline-content-suggestion-thumbnail > div > img {\n height: 1.45em;\n width: 1.45em;\n}\n\n.offline-content-suggestion-favicon {\n height: 1em;\n margin-inline-end: 0.4em;\n width: 1.4em;\n}\n\n.offline-content-suggestion-favicon > img {\n height: 1.4em;\n width: 1.4em;\n}\n\n.no-favicon .offline-content-suggestion-favicon {\n display: none;\n}\n\n.image-video {\n content: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTcgMTAuNVY3YTEgMSAwIDAgMC0xLTFINGExIDEgMCAwIDAtMSAxdjEwYTEgMSAwIDAgMCAxIDFoMTJhMSAxIDAgMCAwIDEtMXYtMy41bDQgNHYtMTFsLTQgNHoiIGZpbGw9IiMzQzQwNDMiLz48L3N2Zz4=);\n}\n\n.image-music-note {\n content: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTIgM3Y5LjI2Yy0uNS0uMTctMS0uMjYtMS41LS4yNkM4IDEyIDYgMTQgNiAxNi41UzggMjEgMTAuNSAyMXM0LjUtMiA0LjUtNC41VjZoNFYzaC03eiIgZmlsbD0iIzNDNDA0MyIvPjwvc3ZnPg==);\n}\n\n.image-earth {\n content: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTIgMmM1LjUyIDAgMTAgNC40OCAxMCAxMHMtNC40OCAxMC0xMCAxMFMyIDE3LjUyIDIgMTIgNi40OCAyIDEyIDJ6TTQgMTJoNC40YzMuNDA3LjAyMiA0LjkyMiAxLjczIDQuNTQzIDUuMTI3SDkuNDg4djIuNDdhOC4wMDQgOC4wMDQgMCAwIDAgMTAuNDk4LTguMDgzQzE5LjMyNyAxMi41MDQgMTguMzMyIDEzIDE3IDEzYy0yLjEzNyAwLTMuMjA2LS45MTYtMy4yMDYtMi43NWgtMy43NDhjLS4yNzQtMi43MjguNjgzLTQuMDkyIDIuODctNC4wOTIgMC0uOTc1LjMyNy0xLjU5Ny44MTEtMS45N0E4LjAwNCA4LjAwNCAwIDAgMCA0IDEyeiIgZmlsbD0iIzNDNDA0MyIvPjwvc3ZnPg==);\n}\n\n.image-file {\n content: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTMgOVYzLjVMMTguNSA5TTYgMmMtMS4xMSAwLTIgLjg5LTIgMnYxNmEyIDIgMCAwIDAgMiAyaDEyYTIgMiAwIDAgMCAyLTJWOGwtNi02SDZ6IiBmaWxsPSIjM0M0MDQzIi8+PC9zdmc+);\n}\n\n.offline-content-suggestion-texts {\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n line-height: 1.3;\n padding: .9em;\n width: 100%;\n}\n\n.offline-content-suggestion-title {\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 3;\n color: rgb(32, 33, 36);\n display: -webkit-box;\n font-size: 1.1em;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\ndiv.offline-content-suggestion {\n align-items: stretch;\n border: 1px solid rgb(218, 220, 224);\n border-radius: 8px;\n display: flex;\n justify-content: space-between;\n margin-bottom: .8em;\n}\n\n.suggestion-with-image {\n flex-direction: row;\n height: 8.2em;\n max-height: 8.2em;\n}\n\n.suggestion-with-icon {\n flex-direction: row-reverse;\n height: 4.2em;\n max-height: 4.2em;\n}\n\n.suggestion-with-icon .offline-content-suggestion-title {\n -webkit-line-clamp: 1;\n word-break: break-all;\n}\n\n.suggestion-with-icon .offline-content-suggestion-texts {\n padding-inline-start: 0;\n}\n\n.offline-content-suggestion-attribution-freshness {\n color: rgb(95, 99, 104);\n display: flex;\n font-size: .8em;\n line-height: 1.7em;\n}\n\n.offline-content-suggestion-attribution {\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 1;\n display: -webkit-box;\n flex-shrink: 1;\n margin-inline-end: 0.3em;\n overflow: hidden;\n overflow-wrap: break-word;\n text-overflow: ellipsis;\n word-break: break-all;\n}\n\n.no-attribution .offline-content-suggestion-attribution {\n display: none;\n}\n\n.offline-content-suggestion-freshness::before {\n content: '-';\n display: inline-block;\n flex-shrink: 0;\n margin-inline-end: .1em;\n margin-inline-start: .1em;\n}\n\n.no-attribution .offline-content-suggestion-freshness::before {\n display: none;\n}\n\n.offline-content-suggestion-freshness {\n flex-shrink: 0;\n}\n\n.suggestion-with-image .offline-content-suggestion-pin-spacer {\n flex-grow: 100;\n flex-shrink: 1;\n}\n\n.suggestion-with-image .offline-content-suggestion-pin {\n content: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+PGRlZnM+PHBhdGggaWQ9ImEiIGQ9Ik0wIDBoMjR2MjRIMFYweiIvPjwvZGVmcz48Y2xpcFBhdGggaWQ9ImIiPjx1c2UgeGxpbms6aHJlZj0iI2EiIG92ZXJmbG93PSJ2aXNpYmxlIi8+PC9jbGlwUGF0aD48cGF0aCBjbGlwLXBhdGg9InVybCgjYikiIGQ9Ik0xMiAyQzYuNSAyIDIgNi41IDIgMTJzNC41IDEwIDEwIDEwIDEwLTQuNSAxMC0xMFMxNy41IDIgMTIgMnptNSAxNkg3di0yaDEwdjJ6bS02LjctNEw3IDEwLjdsMS40LTEuNCAxLjkgMS45IDUuMy01LjNMMTcgNy4zIDEwLjMgMTR6IiBmaWxsPSIjOUFBMEE2Ii8+PC9zdmc+);\n flex-shrink: 0;\n height: 1.4em;\n margin-inline-start: .4em;\n width: 1.4em;\n}\n\n/* Controls the animation (and a bit more) of the launch-downloads-home action\n * button when the offline content list is expanded/shown.\n */\n#offline-content-list-action {\n text-align: center;\n transition: visibility 0s 200ms, opacity 200ms 200ms linear;\n}\n\n/* Controls the animation of the launch-downloads-home action button when the\n * offline content list is collapsed/hidden.\n */\n#offline-content-list.list-hidden #offline-content-list-action {\n opacity: 0;\n transition: opacity 200ms linear, visibility 0s 200ms;\n visibility: hidden;\n}\n\n#cancel-save-page-button {\n background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij48Y2xpcFBhdGggaWQ9Im1hc2siPjxwYXRoIGQ9Ik0xMiAyQzYuNSAyIDIgNi41IDIgMTJzNC41IDEwIDEwIDEwIDEwLTQuNSAxMC0xMFMxNy41IDIgMTIgMnptNSAxNkg3di0yaDEwdjJ6bS02LjctNEw3IDEwLjdsMS40LTEuNCAxLjkgMS45IDUuMy01LjNMMTcgNy4zIDEwLjMgMTR6IiBmaWxsPSIjOUFBMEE2Ii8+PC9jbGlwUGF0aD48cGF0aCBjbGlwLXBhdGg9InVybCgjbWFzaykiIGZpbGw9IiM5QUEwQTYiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48cGF0aCBjbGlwLXBhdGg9InVybCgjbWFzaykiIGZpbGw9IiMxQTczRTgiIHN0eWxlPSJhbmltYXRpb246b2ZmbGluZUFuaW1hdGlvbiA0cyBpbmZpbml0ZSIgZD0iTTAgMGgyNHYyNEgweiIvPjxzdHlsZT5Aa2V5ZnJhbWVzIG9mZmxpbmVBbmltYXRpb257MCUsMzUle2hlaWdodDowfTYwJXtoZWlnaHQ6MTAwJX05MCV7ZmlsbC1vcGFjaXR5OjF9dG97ZmlsbC1vcGFjaXR5OjB9fTwvc3R5bGU+PC9zdmc+);\n background-position: right 27px center;\n background-repeat: no-repeat;\n border: 1px solid var(--google-gray-300);\n border-radius: 5px;\n color: var(--google-gray-700);\n margin-bottom: 26px;\n padding-bottom: 16px;\n padding-inline-end: 88px;\n padding-inline-start: 16px;\n padding-top: 16px;\n text-align: start;\n}\n\nhtml[dir='rtl'] #cancel-save-page-button {\n background-position: left 27px center;\n}\n\n#save-page-for-later-button {\n display: flex;\n justify-content: start;\n}\n\n#save-page-for-later-button a::before {\n content: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxLjJlbSIgaGVpZ2h0PSIxLjJlbSIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNSAyMGgxNHYtMkg1bTE0LTloLTRWM0g5djZINWw3IDcgNy03eiIgZmlsbD0iIzQyODVGNCIvPjwvc3ZnPg==);\n display: inline-block;\n margin-inline-end: 4px;\n vertical-align: -webkit-baseline-middle;\n}\n\n.hidden#save-page-for-later-button {\n display: none;\n}\n\n/* Don't allow overflow when in a subframe. */\nhtml[subframe] body {\n overflow: hidden;\n}\n\n#sub-frame-error {\n -webkit-align-items: center;\n -webkit-flex-flow: column;\n -webkit-justify-content: center;\n background-color: #DDD;\n display: -webkit-flex;\n height: 100%;\n left: 0;\n position: absolute;\n text-align: center;\n top: 0;\n transition: background-color 200ms ease-in-out;\n width: 100%;\n}\n\n#sub-frame-error:hover {\n background-color: #EEE;\n}\n\n#sub-frame-error .icon-generic {\n margin: 0 0 16px;\n}\n\n#sub-frame-error-details {\n margin: 0 10px;\n text-align: center;\n visibility: hidden;\n}\n\n/* Show details only when hovering. */\n#sub-frame-error:hover #sub-frame-error-details {\n visibility: visible;\n}\n\n/* If the iframe is too small, always hide the error code. */\n/* TODO(mmenke): See if overflow: no-display works better, once supported. */\n@media (max-width: 200px), (max-height: 95px) {\n #sub-frame-error-details {\n display: none;\n }\n}\n\n/* Adjust icon for small embedded frames in apps. */\n@media (max-height: 100px) {\n #sub-frame-error .icon-generic {\n height: auto;\n margin: 0;\n{ statusCode: 424, statusMessage: exception in stage5 chrome browser. see meta.trace for details on all fatal errors found. errMsg=fatalError encountered in page. details=FAILED PAGE NAVIGATION. unknown error while performing page navigation. status=424., originalRequest: { pages: [ { url: https://fr.royalcdkeys.com/products/resident-evil-5-arg-xbox-one-series-cd-key.json?variant=40988720365705, renderType: html, requestSettings: { ignoreImages: true, maxWait: 15000 } } ] }, pageResponses: [ { navUrl: chrome-error://chromewebdata/, navId: 1, statusCode: 424, eventPhase: load, doneDetail: { reason: fatalError:FAILED PAGE NAVIGATION. unknown error while performing page navigation. status=424., statusCode: 424 }, resourceSummary: { complete: 0, failed: 1, aborted: 0, orphaned: 0, active: 0, late: 0 }, resources: [ {elapsed:148,detail:'failed:404:net::ERR_HTTP_RESPONSE_CODE_FAILURE',start:'25(initialRequest)',ended:'173(initialRequest)',frame:'main(nav)',navId:'0',type:'document',url:'https://fr.royalcdkeys.com/products/resident-evi...box-one-series-cd-key.json?variant=40988720365705'} ], debugDiags: [], contentErrors: [], errors: [ { name: FatalError, message: FAILED PAGE NAVIGATION. unknown error while performing page navigation. status=424., statusCode: 424 } ], metrics: { startTime: 2023-06-20T18:31:19.185Z, endTime: 2023-06-20T18:31:19.445Z, elapsedMs: 260, pageStatus: 404 }, scriptOutput: {}, headers: { access-control-allow-origin: *, alt-svc: h3=\:443\; ma=86400, cf-cache-status: DYNAMIC, cf-ray: 7da616895b482ccc-DFW, content-encoding: gzip, content-language: en-DE, content-security-policy: block-all-mixed-content; frame-ancestors 'none'; upgrade-insecure-requests;, content-type: application/json; charset=utf-8, date: Tue, 20 Jun 2023 18:31:19 GMT, etag: W/\cacheable:63b42f041aa21d32edce3fe1f275a30d\, nel: {\success_fraction\:0.01,\report_to\:\cf-nel\,\max_age\:604800}, powered-by: Shopify, processed-by: Weglot, report-to: {\endpoints\:[{\url\:\https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=fgFEdK%2FfGzdyT1eVLZqH4qIc0yXH66J5uME4%2Fh%2FVouDHAmwyVAw787PvlW2LbOY7giUowr%2BMYQSqtnF0R7ANeaaXhOhmJh2UQ185PTfG4POgZ114bHOZXeyCPSKwTrCqQA%3D%3D\}],\group\:\cf-nel\,\max_age\:604800}, server-timing: processing;dur=37, db;dur=22, asn;desc=\33438\, edge;desc=\DFW\, country;desc=\US\, servedBy;desc=\d4dj\, requestID;desc=\0b04fe8d-4a24-4ffa-b425-d95b0e61bf36\, cfRequestDuration;dur=80.999851, strict-transport-security: max-age=7889238, vary: Accept-Encoding, Accept, weglot-translated: false - Invalid JSON, Nothing to translate, x-cache: miss, x-content-type-options: nosniff, x-dc: gcp-us-south1,gcp-us-central1,gcp-us-central1, x-download-options: noopen, x-frame-options: DENY, x-hw: 1687285879.cds217.de1.hn,1687285879.cds217.de1.sl, x-permitted-cross-domain-policies: none, x-request-id: 86822aed-0c6a-4147-a75a-55a7a6e05794, x-shardid: 136, x-shopid: 37530206345, x-shopify-stage: production, x-sorting-hat-podid: 136, x-sorting-hat-shopid: 37530206345,...
- >fr.royalcdkeys.com</title>\n <style>/* Copyright 2017 The Chromium Authors\n * Use of this source code is governed by a BSD-style license that can be\n * found in the LICENSE file. */\n\na {\n color: var(--link-color);\n}\n\nbody {\n --background-color: #fff;\n --error-code-color: var(--google-gray-700);\n --google-blue-100: rgb(210, 227, 252);\n --google-blue-300: rgb(138, 180, 248);\n --google-blue-600: rgb(26, 115, 232);\n --google-blue-700: rgb(25, 103, 210);\n --google-gray-100: rgb(241, 243, 244);\n --google-gray-300: rgb(218, 220, 224);\n --google-gray-500: rgb(154, 160, 166);\n --google-gray-50: rgb(248, 249, 250);\n --google-gray-600: rgb(128, 134, 139);\n --google-gray-700: rgb(95, 99, 104);\n --google-gray-800: rgb(60, 64, 67);\n --google-gray-900: rgb(32, 33, 36);\n --heading-color: var(--google-gray-900);\n --link-color: rgb(88, 88, 88);\n --popup-container-background-color: rgba(0,0,0,.65);\n --primary-button-fill-color-active: var(--google-blue-700);\n --primary-button-fill-color: var(--google-blue-600);\n --primary-button-text-color: #fff;\n --quiet-background-color: rgb(247, 247, 247);\n --secondary-button-border-color: var(--google-gray-500);\n --secondary-button-fill-color: #fff;\n --secondary-button-hover-border-color: var(--google-gray-600);\n --secondary-button-hover-fill-color: var(--google-gray-50);\n --secondary-button-text-color: var(--google-gray-700);\n --small-link-color: var(--google-gray-700);\n --text-color: var(--google-gray-700);\n background: var(--background-color);\n color: var(--text-color);\n word-wrap: break-word;\n}\n\n.nav-wrapper .secondary-button {\n background: var(--secondary-button-fill-color);\n border: 1px solid var(--secondary-button-border-color);\n color: var(--secondary-button-text-color);\n float: none;\n margin: 0;\n padding: 8px 16px;\n}\n\n.hidden {\n display: none;\n}\n\nhtml {\n -webkit-text-size-adjust: 100%;\n font-size: 125%;\n}\n\n.icon {\n background-repeat: no-repeat;\n background-size: 100%;\n}\n\n@media (prefers-color-scheme: dark) {\n body {\n --background-color: var(--google-gray-900);\n --error-code-color: var(--google-gray-500);\n --heading-color: var(--google-gray-500);\n --link-color: var(--google-blue-300);\n --primary-button-fill-color-active: rgb(129, 162, 208);\n --primary-button-fill-color: var(--google-blue-300);\n --primary-button-text-color: var(--google-gray-900);\n --quiet-background-color: var(--background-color);\n --secondary-button-border-color: var(--google-gray-700);\n --secondary-button-fill-color: var(--google-gray-900);\n --secondary-button-hover-fill-color: rgb(48, 51, 57);\n --secondary-button-text-color: var(--google-blue-300);\n --small-link-color: var(--google-blue-300);\n --text-color: var(--google-gray-500);\n }\n}\n</style>\n <style>/* Copyright 2014 The Chromium Authors\n Use of this source code is governed by a BSD-style license that can be\n found in the LICENSE file. */\n\nbutton {\n border: 0;\n border-radius: 4px;\n box-sizing: border-box;\n color: var(--primary-button-text-color);\n cursor: pointer;\n float: right;\n font-size: .875em;\n margin: 0;\n padding: 8px 16px;\n transition: box-shadow 150ms cubic-bezier(0.4, 0, 0.2, 1);\n user-select: none;\n}\n\n[dir='rtl'] button {\n float: left;\n}\n\n.bad-clock button,\n.captive-portal button,\n.https-only button,\n.insecure-form button,\n.lookalike-url button,\n.main-frame-blocked button,\n.neterror button,\n.pdf button,\n.ssl button,\n.enterprise-block button,\n.enterprise-warn button,\n.safe-browsing-billing button {\n background: var(--primary-button-fill-color);\n}\n\nbutton:active {\n background: var(--primary-button-fill-color-active);\n outline: 0;\n}\n\n#debugging {\n display: inline;\n overflow: auto;\n}\n\n.debugging-content {\n line-height: 1em;\n margin-bottom: 0;\n margin-top: 1em;\n}\n\n.debugging-content-fixed-width {\n display: block;\n font-family: monospace;\n font-size: 1.2em;\n margin-top: 0.5em;\n}\n\n.debugging-title {\n font-weight: bold;\n}\n\n#details {\n margin: 0 0 50px;\n}\n\n#details p:not(:first-of-type) {\n margin-top: 20px;\n}\n\n.secondary-button:active {\n border-color: white;\n box-shadow: 0 1px 2px 0 rgba(60, 64, 67, .3),\n 0 2px 6px 2px rgba(60, 64, 67, .15);\n}\n\n.secondary-button:hover {\n background: var(--secondary-button-hover-fill-color);\n border-color: var(--secondary-button-hover-border-color);\n text-decoration: none;\n}\n\n.error-code {\n color: var(--error-code-color);\n font-size: .8em;\n margin-top: 12px;\n text-transform: uppercase;\n}\n\n#error-debugging-info {\n font-size: 0.8em;\n}\n\nh1 {\n color: var(--heading-color);\n font-size: 1.6em;\n font-weight: normal;\n line-height: 1.25em;\n margin-bottom: 16px;\n}\n\nh2 {\n font-size: 1.2em;\n font-weight: normal;\n}\n\n.icon {\n height: 72px;\n margin: 0 0 40px;\n width: 72px;\n}\n\ninput[type=checkbox] {\n opacity: 0;\n}\n\ninput[type=checkbox]:focus ~ .checkbox::after {\n outline: -webkit-focus-ring-color auto 5px;\n}\n\n.interstitial-wrapper {\n box-sizing: border-box;\n font-size: 1em;\n line-height: 1.6em;\n margin: 14vh auto 0;\n max-width: 600px;\n width: 100%;\n}\n\n#main-message > p {\n display: inline;\n}\n\n#extended-reporting-opt-in {\n font-size: .875em;\n margin-top: 32px;\n}\n\n#extended-reporting-opt-in label {\n display: grid;\n grid-template-columns: 1.8em 1fr;\n position: relative;\n}\n\n#enhanced-protection-message {\n border-radius: 4px;\n font-size: 1em;\n margin-top: 32px;\n padding: 10px 5px;\n}\n\n#enhanced-protection-message label {\n display: grid;\n grid-template-columns: 2.5em 1fr;\n position: relative;\n}\n\n#enhanced-protection-message div {\n margin: 0.5em;\n}\n\n#enhanced-protection-message .icon {\n height: 1.5em;\n vertical-align: middle;\n width: 1.5em;\n}\n\n.nav-wrapper {\n margin-top: 51px;\n}\n\n.nav-wrapper::after {\n clear: both;\n content: '';\n display: table;\n width: 100%;\n}\n\n.small-link {\n color: var(--small-link-color);\n font-size: .875em;\n}\n\n.checkboxes {\n flex: 0 0 24px;\n}\n\n.checkbox {\n --padding: .9em;\n background: transparent;\n display: block;\n height: 1em;\n left: -1em;\n padding-inline-start: var(--padding);\n position: absolute;\n right: 0;\n top: -.5em;\n width: 1em;\n}\n\n.checkbox::after {\n border: 1px solid white;\n border-radius: 2px;\n content: '';\n height: 1em;\n left: var(--padding);\n position: absolute;\n top: var(--padding);\n width: 1em;\n}\n\n.checkbox::before {\n background: transparent;\n border: 2px solid white;\n border-inline-end-width: 0;\n border-top-width: 0;\n content: '';\n height: .2em;\n left: calc(.3em + var(--padding));\n opacity: 0;\n position: absolute;\n top: calc(.3em + var(--padding));\n transform: rotate(-45deg);\n width: .5em;\n}\n\ninput[type=checkbox]:checked ~ .checkbox::before {\n opacity: 1;\n}\n\n#recurrent-error-message {\n background: #ededed;\n border-radius: 4px;\n margin-bottom: 16px;\n margin-top: 12px;\n padding: 12px 16px;\n}\n\n.showing-recurrent-error-message #extended-reporting-opt-in {\n margin-top: 16px;\n}\n\n.showing-recurrent-error-message #enhanced-protection-message {\n margin-top: 16px;\n}\n\n@media (max-width: 700px) {\n .interstitial-wrapper {\n padding: 0 10%;\n }\n\n #error-debugging-info {\n overflow: auto;\n }\n}\n\n@media (max-width: 420px) {\n button,\n [dir='rtl'] button,\n .small-link {\n float: none;\n font-size: .825em;\n font-weight: 500;\n margin: 0;\n width: 100%;\n }\n\n button {\n padding: 16px 24px;\n }\n\n #details {\n margin: 20px 0 20px 0;\n }\n\n #details p:not(:first-of-type) {\n margin-top: 10px;\n }\n\n .secondary-button:not(.hidden) {\n display: block;\n margin-top: 20px;\n text-align: center;\n width: 100%;\n }\n\n .interstitial-wrapper {\n padding: 0 5%;\n }\n\n #extended-reporting-opt-in {\n margin-top: 24px;\n }\n\n #enhanced-protection-message {\n margin-top: 24px;\n }\n\n .nav-wrapper {\n margin-top: 30px;\n }\n}\n\n/**\n * Mobile specific styling.\n * Navigation buttons are anchored to the bottom of the screen.\n * Details message replaces the top content in its own scrollable area.\n */\n\n@media (max-width: 420px) {\n .nav-wrapper .secondary-button {\n border: 0;\n margin: 16px 0 0;\n margin-inline-end: 0;\n padding-bottom: 16px;\n padding-top: 16px;\n }\n}\n\n/* Fixed nav. */\n@media (min-width: 240px) and (max-width: 420px) and\n (min-height: 401px),\n (min-width: 421px) and (min-height: 240px) and\n (max-height: 560px) {\n body .nav-wrapper {\n background: var(--background-color);\n bottom: 0;\n box-shadow: 0 -12px 24px var(--background-color);\n left: 0;\n margin: 0 auto;\n max-width: 736px;\n padding-inline-end: 24px;\n padding-inline-start: 24px;\n position: fixed;\n right: 0;\n width: 100%;\n z-index: 2;\n }\n\n .interstitial-wrapper {\n max-width: 736px;\n }\n\n #details,\n #main-content {\n padding-bottom: 40px;\n }\n\n #details {\n padding-top: 5.5vh;\n }\n\n button.small-link {\n color: var(--google-blue-600);\n }\n}\n\n@media (max-width: 420px) and (orientation: portrait),\n (max-height: 560px) {\n body {\n margin: 0 auto;\n }\n\n button,\n [dir='rtl'] button,\n button.small-link,\n .nav-wrapper .secondary-button {\n font-family: Roboto-Regular,Helvetica;\n font-size: .933em;\n margin: 6px 0;\n transform: translatez(0);\n }\n\n .nav-wrapper {\n box-sizing: border-box;\n padding-bottom: 8px;\n width: 100%;\n }\n\n #details {\n box-sizing: border-box;\n height: auto;\n margin: 0;\n opacity: 1;\n transition: opacity 250ms cubic-bezier(0.4, 0, 0.2, 1);\n }\n\n #details.hidden,\n #main-content.hidden {\n height: 0;\n opacity: 0;\n overflow: hidden;\n padding-bottom: 0;\n transition: none;\n }\n\n h1 {\n font-size: 1.5em;\n margin-bottom: 8px;\n }\n\n .icon {\n margin-bottom: 5.69vh;\n }\n\n .interstitial-wrapper {\n box-sizing: border-box;\n margin: 7vh auto 12px;\n padding: 0 24px;\n position: relative;\n }\n\n .interstitial-wrapper p {\n font-size: .95em;\n line-height: 1.61em;\n margin-top: 8px;\n }\n\n #main-content {\n margin: 0;\n transition: opacity 100ms cubic-bezier(0.4, 0, 0.2, 1);\n }\n\n .small-link {\n border: 0;\n }\n\n .suggested-left > #control-buttons,\n .suggested-right > #control-buttons {\n float: none;\n margin: 0;\n }\n}\n\n@media (min-width: 421px) and (min-height: 500px) and (max-height: 560px) {\n .interstitial-wrapper {\n margin-top: 10vh;\n }\n}\n\n@media (min-height: 400px) and (orientation:portrait) {\n .interstitial-wrapper {\n margin-bottom: 145px;\n }\n}\n\n@media (min-height: 299px) {\n .nav-wrapper {\n padding-bottom: 16px;\n }\n}\n\n@media (max-height: 560px) and (min-height: 240px) and (orientation:landscape) {\n .extended-reporting-has-checkbox #details {\n padding-bottom: 80px;\n }\n}\n\n@media (min-height: 500px) and (max-height: 650px) and (max-width: 414px) and\n (orientation: portrait) {\n .interstitial-wrapper {\n margin-top: 7vh;\n }\n}\n\n@media (min-height: 650px) and (max-width: 414px) and (orientation: portrait) {\n .interstitial-wrapper {\n margin-top: 10vh;\n }\n}\n\n/* Small mobile screens. No fixed nav. */\n@media (max-height: 400px) and (orientation: portrait),\n (max-height: 239px) and (orientation: landscape),\n (max-width: 419px) and (max-height: 399px) {\n .interstitial-wrapper {\n display: flex;\n flex-direction: column;\n margin-bottom: 0;\n }\n\n #details {\n flex: 1 1 auto;\n order: 0;\n }\n\n #main-content {\n flex: 1 1 auto;\n order: 0;\n }\n\n .nav-wrapper {\n flex: 0 1 auto;\n margin-top: 8px;\n order: 1;\n padding-inline-end: 0;\n padding-inline-start: 0;\n position: relative;\n width: 100%;\n }\n\n button,\n .nav-wrapper .secondary-button {\n padding: 16px 24px;\n }\n\n button.small-link {\n color: var(--google-blue-600);\n }\n}\n\n@media (max-width: 239px) and (orientation: portrait) {\n .nav-wrapper {\n padding-inline-end: 0;\n padding-inline-start: 0;\n }\n}\n</style>\n <style>/* Copyright 2013 The Chromium Authors\n * Use of this source code is governed by a BSD-style license that can be\n * found in the LICENSE file. */\n\n/* Don't use the main frame div when the error is in a subframe. */\nhtml[subframe] #main-frame-error {\n display: none;\n}\n\n/* Don't use the subframe error div when the error is in a main frame. */\nhtml:not([subframe]) #sub-frame-error {\n display: none;\n}\n\nh1 {\n margin-top: 0;\n word-wrap: break-word;\n}\n\nh1 span {\n font-weight: 500;\n}\n\na {\n text-decoration: none;\n}\n\n.icon {\n -webkit-user-select: none;\n display: inline-block;\n}\n\n.icon-generic {\n /* Can't access chrome://theme/IDR_ERROR_NETWORK_GENERIC from an untrusted\n * renderer process, so embed the resource manually. */\n content: -webkit-image-set(\n url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABIAQMAAABvIyEEAAAABlBMVEUAAABTU1OoaSf/AAAAAXRSTlMAQObYZgAAAENJREFUeF7tzbEJACEQRNGBLeAasBCza2lLEGx0CxFGG9hBMDDxRy/72O9FMnIFapGylsu1fgoBdkXfUHLrQgdfrlJN1BdYBjQQm3UAAAAASUVORK5CYII=) 1x,\n url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJAAAACQAQMAAADdiHD7AAAABlBMVEUAAABTU1OoaSf/AAAAAXRSTlMAQObYZgAAAFJJREFUeF7t0cENgDAMQ9FwYgxG6WjpaIzCCAxQxVggFuDiCvlLOeRdHR9yzjncHVoq3npu+wQUrUuJHylSTmBaespJyJQoObUeyxDQb3bEm5Au81c0pSCD8HYAAAAASUVORK5CYII=) 2x);\n}\n\n.icon-offline {\n content: -webkit-image-set(\n url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABIAQMAAABvIyEEAAAABlBMVEUAAABTU1OoaSf/AAAAAXRSTlMAQObYZgAAAGxJREFUeF7tyMEJwkAQRuFf5ipMKxYQiJ3Z2nSwrWwBA0+DQZcdxEOueaePp9+dQZFB7GpUcURSVU66yVNFj6LFICatThZB6r/ko/pbRpUgilY0Cbw5sNmb9txGXUKyuH7eV25x39DtJXUNPQGJtWFV+BT/QAAAAABJRU5ErkJggg==) 1x,\n url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJAAAACQBAMAAAAVaP+LAAAAGFBMVEUAAABTU1NNTU1TU1NPT09SUlJSUlJTU1O8B7DEAAAAB3RSTlMAoArVKvVgBuEdKgAAAJ1JREFUeF7t1TEOwyAMQNG0Q6/UE+RMXD9d/tC6womIFSL9P+MnAYOXeTIzMzMzMzMzaz8J9Ri6HoITmuHXhISE8nEh9yxDh55aCEUoTGbbQwjqHwIkRAEiIaG0+0AA9VBMaE89Rogeoww936MQrWdBr4GN/z0IAdQ6nQ/FIpRXDwHcA+JIJcQowQAlFUA0MfQpXLlVQfkzR4igS6ENjknm/wiaGhsAAAAASUVORK5CYII=) 2x);\n position: relative;\n}\n\n.icon-disabled {\n content: -webkit-image-set(\n url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHAAAABICAMAAAAZF4G5AAAABlBMVEVMaXFTU1OXUj8tAAAAAXRSTlMAQObYZgAAASZJREFUeAHd11Fq7jAMRGGf/W/6PoWB67YMqv5DybwG/CFjRuR8JBw3+ByiRjgV9W/TJ31P0tBfC6+cj1haUFXKHmVJo5wP98WwQ0ZCbfUc6LQ6VuUBz31ikADkLMkDrfUC4rR6QGW+gF6rx7NaHWCj1Y/W6lf4L7utvgBSt3rBFSS/XBMPUILcJINHCBWYUfpWn4NBi1ZfudIc3rf6/NGEvEA+AsYTJozmXemjXeLZAov+mnkN2HfzXpMSVQDnGw++57qNJ4D1xitA2sJ+VAWMygSEaYf2mYPTjZfk2K8wmP7HLIH5Mg4/pP+PEcDzUvDMvYbs/2NWwPO5vBdMZE4EE5UTQLiBFDaUlTDPBRoJ9HdAYIkIo06og3BNXtCzy7zA1aXk5x+tJARq63eAygAAAABJRU5ErkJggg==) 1x,\n url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAOAAAACQAQMAAAArwfVjAAAABlBMVEVMaXFTU1OXUj8tAAAAAXRSTlMAQObYZgAAAYdJREFUeF7F1EFqwzAUBNARAmVj0FZe5QoBH6BX+dn4GlY2PYNzGx/A0CvkCIJuvIraKJKbgBvzf2g62weDGD7CYggpfFReis4J0ey9EGFIiEQQojFSlA9kSIiqd0KkFjKsewgRbStEN19mxUPTtmW9HQ/h6tyqNQ8NlSMZdzyE6qkoE0trVYGFm0n1WYeBhduzwbwBC7voS+vIxfeMjeaiLxsMMtQNwMPtuew+DjzcTHk8YMfDknEcIUOtf2lVfgVH3K4Xv5PRYAXRVMtItIJ3rfaCIVn9DsTH2NxisAVRex2Hh3hX+/mRUR08bAwPEYsI51ZxWH4Q0SpicQRXeyEaIug48FEdegARfMz/tADVsRciwTAxW308ehmC2gLraC+YCbV3QoTZexa+zegAEW5PhhgYfmbvJgcRqngGByOSXdFJcLk2JeDPEN0kxe1JhIt5FiFA+w+ItMELsUyPF2IaJ4aILqb4FbxPwhImwj6JauKgDUCYaxmYIsd4KXdMjIC9ItB5Bn4BNRwsG0XM2nwAAAAASUVORK5CYII=) 2x);\n width: 112px;\n}\n\n.hidden {\n display: none;\n}\n\n#suggestions-list a {\n color: var(--google-blue-600);\n}\n\n#suggestions-list p {\n margin-block-end: 0;\n}\n\n#suggestions-list ul {\n margin-top: 0;\n}\n\n.single-suggestion {\n list-style-type: none;\n padding-inline-start: 0;\n}\n\n#error-information-button {\n content: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTExIDE4aDJ2LTJoLTJ2MnptMS0xNkM2LjQ4IDIgMiA2LjQ4IDIgMTJzNC40OCAxMCAxMCAxMCAxMC00LjQ4IDEwLTEwUzE3LjUyIDIgMTIgMnptMCAxOGMtNC40MSAwLTgtMy41OS04LThzMy41OS04IDgtOCA4IDMuNTkgOCA4LTMuNTkgOC04IDh6bTAtMTRjLTIuMjEgMC00IDEuNzktNCA0aDJjMC0xLjEuOS0yIDItMnMyIC45IDIgMmMwIDItMyAxLjc1LTMgNWgyYzAtMi4yNSAzLTIuNSAzLTUgMC0yLjIxLTEuNzktNC00LTR6Ii8+PC9zdmc+);\n height: 24px;\n vertical-align: -.15em;\n width: 24px;\n}\n\n.use-popup-container#error-information-popup-container\n #error-information-popup {\n align-items: center;\n background-color: var(--popup-container-background-color);\n display: flex;\n height: 100%;\n left: 0;\n position: fixed;\n top: 0;\n width: 100%;\n z-index: 100;\n}\n\n.use-popup-container#error-information-popup-container\n #error-information-popup-content > p {\n margin-bottom: 11px;\n margin-inline-start: 20px;\n}\n\n.use-popup-container#error-information-popup-container #suggestions-list ul {\n margin-inline-start: 15px;\n}\n\n.use-popup-container#error-information-popup-container\n #error-information-popup-box {\n background-color: var(--background-color);\n left: 5%;\n padding-bottom: 15px;\n padding-top: 15px;\n position: fixed;\n width: 90%;\n z-index: 101;\n}\n\n.use-popup-container#error-information-popup-container div.error-code {\n margin-inline-start: 20px;\n}\n\n.use-popup-container#error-information-popup-container #suggestions-list p {\n margin-inline-start: 20px;\n}\n\n:not(.use-popup-container)#error-information-popup-container\n #error-information-popup-close {\n display: none;\n}\n\n#error-information-popup-close {\n margin-bottom: 0;\n margin-inline-end: 35px;\n margin-top: 15px;\n text-align: end;\n}\n\n.link-button {\n color: rgb(66, 133, 244);\n display: inline-block;\n font-weight: bold;\n text-transform: uppercase;\n}\n\n#sub-frame-error-details {\n\n color: #8F8F8F;\n\n /* Not done on mobile for performance reasons. */\n text-shadow: 0 1px 0 rgba(255,255,255,0.3);\n\n}\n\n[jscontent=hostName],\n[jscontent=failedUrl] {\n overflow-wrap: break-word;\n}\n\n.secondary-button {\n background: #d9d9d9;\n color: #696969;\n margin-inline-end: 16px;\n}\n\n.snackbar {\n background: #323232;\n border-radius: 2px;\n bottom: 24px;\n box-sizing: border-box;\n color: #fff;\n font-size: .87em;\n left: 24px;\n max-width: 568px;\n min-width: 288px;\n opacity: 0;\n padding: 16px 24px 12px;\n position: fixed;\n transform: translateY(90px);\n will-change: opacity, transform;\n z-index: 999;\n}\n\n.snackbar-show {\n -webkit-animation:\n show-snackbar 250ms cubic-bezier(0, 0, 0.2, 1) forwards,\n hide-snackbar 250ms cubic-bezier(0.4, 0, 1, 1) forwards 5s;\n}\n\n@-webkit-keyframes show-snackbar {\n 100% {\n opacity: 1;\n transform: translateY(0);\n }\n}\n\n@-webkit-keyframes hide-snackbar {\n 0% {\n opacity: 1;\n transform: translateY(0);\n }\n 100% {\n opacity: 0;\n transform: translateY(90px);\n }\n}\n\n.suggestions {\n margin-top: 18px;\n}\n\n.suggestion-header {\n font-weight: bold;\n margin-bottom: 4px;\n}\n\n.suggestion-body {\n color: #777;\n}\n\n/* Decrease padding at low sizes. */\n@media (max-width: 640px), (max-height: 640px) {\n h1 {\n margin: 0 0 15px;\n }\n .suggestions {\n margin-top: 10px;\n }\n .suggestion-header {\n margin-bottom: 0;\n }\n}\n\n#download-link,\n#download-link-clicked {\n margin-bottom: 30px;\n margin-top: 30px;\n}\n\n#download-link-clicked {\n color: #BBB;\n}\n\n#download-link::before,\n#download-link-clicked::before {\n content: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxLjJlbSIgaGVpZ2h0PSIxLjJlbSIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNSAyMGgxNHYtMkg1bTE0LTloLTRWM0g5djZINWw3IDcgNy03eiIgZmlsbD0iIzQyODVGNCIvPjwvc3ZnPg==);\n display: inline-block;\n margin-inline-end: 4px;\n vertical-align: -webkit-baseline-middle;\n}\n\n#download-link-clicked::before {\n opacity: 0;\n width: 0;\n}\n\n#offline-content-list-visibility-card {\n border: 1px solid white;\n border-radius: 8px;\n display: flex;\n font-size: .8em;\n justify-content: space-between;\n line-height: 1;\n}\n\n#offline-content-list.list-hidden #offline-content-list-visibility-card {\n border-color: rgb(218, 220, 224);\n}\n\n#offline-content-list-visibility-card > div {\n padding: 1em;\n}\n\n#offline-content-list-title {\n color: var(--google-gray-700);\n}\n\n#offline-content-list-show-text,\n#offline-content-list-hide-text {\n color: rgb(66, 133, 244);\n}\n\n/* Hides the \hide\ text div when the offline content list is collapsed/hidden\n * and, alternatively, hides the \show\ text div when the offline content list\n * is expanded/shown.\n */\n#offline-content-list.list-hidden #offline-content-list-hide-text,\n#offline-content-list:not(.list-hidden) #offline-content-list-show-text {\n display: none;\n}\n\n/* Controls the animation of the offline content list when it is expanded/shown.\n */\n#offline-content-suggestions {\n /* Max-height has to be set for the height animation to work. The chosen value\n * is a little greater than the maximum height the list will have, when all\n * suggestions have images, so that it is never clamped. This makes so that\n * when the actual height is smaller then the animation is not as smooth.\n */\n max-height: 27em;\n transition: max-height 200ms ease-in, visibility 0s 200ms,\n opacity 200ms 200ms linear;\n}\n\n/* Controls the animation of the offline content list when it is\n * collapsed/hidden.\n */\n#offline-content-list.list-hidden #offline-content-suggestions {\n max-height: 0;\n opacity: 0;\n transition: opacity 200ms linear, visibility 0s 200ms,\n max-height 200ms 200ms ease-out;\n visibility: hidden;\n}\n\n#offline-content-list {\n margin-inline-start: -5%;\n width: 110%;\n}\n\n/* The selectors below adjust the \overflow\ of the suggestion cards contents\n * based on the same screen size based strategy used for the main frame, which\n * is applied by the `interstitial-wrapper` class. */\n@media (max-width: 420px) {\n #offline-content-list {\n margin-inline-start: -2.5%;\n width: 105%;\n }\n}\n@media (max-width: 420px) and (orientation: portrait),\n (max-height: 560px) {\n #offline-content-list {\n margin-inline-start: -12px;\n width: calc(100% + 24px);\n }\n}\n\n.suggestion-with-image .offline-content-suggestion-thumbnail {\n flex-basis: 8.2em;\n flex-shrink: 0;\n}\n\n.suggestion-with-image .offline-content-suggestion-thumbnail > img {\n height: 100%;\n width: 100%;\n}\n\n.suggestion-with-image #offline-content-list:not(.is-rtl)\n.offline-content-suggestion-thumbnail > img {\n border-bottom-right-radius: 7px;\n border-top-right-radius: 7px;\n}\n\n.suggestion-with-image #offline-content-list.is-rtl\n.offline-content-suggestion-thumbnail > img {\n border-bottom-left-radius: 7px;\n border-top-left-radius: 7px;\n}\n\n.suggestion-with-icon .offline-content-suggestion-thumbnail {\n align-items: center;\n display: flex;\n justify-content: center;\n min-height: 4.2em;\n min-width: 4.2em;\n}\n\n.suggestion-with-icon .offline-content-suggestion-thumbnail > div {\n align-items: center;\n background-color: rgb(241, 243, 244);\n border-radius: 50%;\n display: flex;\n height: 2.3em;\n justify-content: center;\n width: 2.3em;\n}\n\n.suggestion-with-icon .offline-content-suggestion-thumbnail > div > img {\n height: 1.45em;\n width: 1.45em;\n}\n\n.offline-content-suggestion-favicon {\n height: 1em;\n margin-inline-end: 0.4em;\n width: 1.4em;\n}\n\n.offline-content-suggestion-favicon > img {\n height: 1.4em;\n width: 1.4em;\n}\n\n.no-favicon .offline-content-suggestion-favicon {\n display: none;\n}\n\n.image-video {\n content: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTcgMTAuNVY3YTEgMSAwIDAgMC0xLTFINGExIDEgMCAwIDAtMSAxdjEwYTEgMSAwIDAgMCAxIDFoMTJhMSAxIDAgMCAwIDEtMXYtMy41bDQgNHYtMTFsLTQgNHoiIGZpbGw9IiMzQzQwNDMiLz48L3N2Zz4=);\n}\n\n.image-music-note {\n content: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTIgM3Y5LjI2Yy0uNS0uMTctMS0uMjYtMS41LS4yNkM4IDEyIDYgMTQgNiAxNi41UzggMjEgMTAuNSAyMXM0LjUtMiA0LjUtNC41VjZoNFYzaC03eiIgZmlsbD0iIzNDNDA0MyIvPjwvc3ZnPg==);\n}\n\n.image-earth {\n content: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTIgMmM1LjUyIDAgMTAgNC40OCAxMCAxMHMtNC40OCAxMC0xMCAxMFMyIDE3LjUyIDIgMTIgNi40OCAyIDEyIDJ6TTQgMTJoNC40YzMuNDA3LjAyMiA0LjkyMiAxLjczIDQuNTQzIDUuMTI3SDkuNDg4djIuNDdhOC4wMDQgOC4wMDQgMCAwIDAgMTAuNDk4LTguMDgzQzE5LjMyNyAxMi41MDQgMTguMzMyIDEzIDE3IDEzYy0yLjEzNyAwLTMuMjA2LS45MTYtMy4yMDYtMi43NWgtMy43NDhjLS4yNzQtMi43MjguNjgzLTQuMDkyIDIuODctNC4wOTIgMC0uOTc1LjMyNy0xLjU5Ny44MTEtMS45N0E4LjAwNCA4LjAwNCAwIDAgMCA0IDEyeiIgZmlsbD0iIzNDNDA0MyIvPjwvc3ZnPg==);\n}\n\n.image-file {\n content: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTMgOVYzLjVMMTguNSA5TTYgMmMtMS4xMSAwLTIgLjg5LTIgMnYxNmEyIDIgMCAwIDAgMiAyaDEyYTIgMiAwIDAgMCAyLTJWOGwtNi02SDZ6IiBmaWxsPSIjM0M0MDQzIi8+PC9zdmc+);\n}\n\n.offline-content-suggestion-texts {\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n line-height: 1.3;\n padding: .9em;\n width: 100%;\n}\n\n.offline-content-suggestion-title {\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 3;\n color: rgb(32, 33, 36);\n display: -webkit-box;\n font-size: 1.1em;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\ndiv.offline-content-suggestion {\n align-items: stretch;\n border: 1px solid rgb(218, 220, 224);\n border-radius: 8px;\n display: flex;\n justify-content: space-between;\n margin-bottom: .8em;\n}\n\n.suggestion-with-image {\n flex-direction: row;\n height: 8.2em;\n max-height: 8.2em;\n}\n\n.suggestion-with-icon {\n flex-direction: row-reverse;\n height: 4.2em;\n max-height: 4.2em;\n}\n\n.suggestion-with-icon .offline-content-suggestion-title {\n -webkit-line-clamp: 1;\n word-break: break-all;\n}\n\n.suggestion-with-icon .offline-content-suggestion-texts {\n padding-inline-start: 0;\n}\n\n.offline-content-suggestion-attribution-freshness {\n color: rgb(95, 99, 104);\n display: flex;\n font-size: .8em;\n line-height: 1.7em;\n}\n\n.offline-content-suggestion-attribution {\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 1;\n display: -webkit-box;\n flex-shrink: 1;\n margin-inline-end: 0.3em;\n overflow: hidden;\n overflow-wrap: break-word;\n text-overflow: ellipsis;\n word-break: break-all;\n}\n\n.no-attribution .offline-content-suggestion-attribution {\n display: none;\n}\n\n.offline-content-suggestion-freshness::before {\n content: '-';\n display: inline-block;\n flex-shrink: 0;\n margin-inline-end: .1em;\n margin-inline-start: .1em;\n}\n\n.no-attribution .offline-content-suggestion-freshness::before {\n display: none;\n}\n\n.offline-content-suggestion-freshness {\n flex-shrink: 0;\n}\n\n.suggestion-with-image .offline-content-suggestion-pin-spacer {\n flex-grow: 100;\n flex-shrink: 1;\n}\n\n.suggestion-with-image .offline-content-suggestion-pin {\n content: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+PGRlZnM+PHBhdGggaWQ9ImEiIGQ9Ik0wIDBoMjR2MjRIMFYweiIvPjwvZGVmcz48Y2xpcFBhdGggaWQ9ImIiPjx1c2UgeGxpbms6aHJlZj0iI2EiIG92ZXJmbG93PSJ2aXNpYmxlIi8+PC9jbGlwUGF0aD48cGF0aCBjbGlwLXBhdGg9InVybCgjYikiIGQ9Ik0xMiAyQzYuNSAyIDIgNi41IDIgMTJzNC41IDEwIDEwIDEwIDEwLTQuNSAxMC0xMFMxNy41IDIgMTIgMnptNSAxNkg3di0yaDEwdjJ6bS02LjctNEw3IDEwLjdsMS40LTEuNCAxLjkgMS45IDUuMy01LjNMMTcgNy4zIDEwLjMgMTR6IiBmaWxsPSIjOUFBMEE2Ii8+PC9zdmc+);\n flex-shrink: 0;\n height: 1.4em;\n margin-inline-start: .4em;\n width: 1.4em;\n}\n\n/* Controls the animation (and a bit more) of the launch-downloads-home action\n * button when the offline content list is expanded/shown.\n */\n#offline-content-list-action {\n text-align: center;\n transition: visibility 0s 200ms, opacity 200ms 200ms linear;\n}\n\n/* Controls the animation of the launch-downloads-home action button when the\n * offline content list is collapsed/hidden.\n */\n#offline-content-list.list-hidden #offline-content-list-action {\n opacity: 0;\n transition: opacity 200ms linear, visibility 0s 200ms;\n visibility: hidden;\n}\n\n#cancel-save-page-button {\n background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij48Y2xpcFBhdGggaWQ9Im1hc2siPjxwYXRoIGQ9Ik0xMiAyQzYuNSAyIDIgNi41IDIgMTJzNC41IDEwIDEwIDEwIDEwLTQuNSAxMC0xMFMxNy41IDIgMTIgMnptNSAxNkg3di0yaDEwdjJ6bS02LjctNEw3IDEwLjdsMS40LTEuNCAxLjkgMS45IDUuMy01LjNMMTcgNy4zIDEwLjMgMTR6IiBmaWxsPSIjOUFBMEE2Ii8+PC9jbGlwUGF0aD48cGF0aCBjbGlwLXBhdGg9InVybCgjbWFzaykiIGZpbGw9IiM5QUEwQTYiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48cGF0aCBjbGlwLXBhdGg9InVybCgjbWFzaykiIGZpbGw9IiMxQTczRTgiIHN0eWxlPSJhbmltYXRpb246b2ZmbGluZUFuaW1hdGlvbiA0cyBpbmZpbml0ZSIgZD0iTTAgMGgyNHYyNEgweiIvPjxzdHlsZT5Aa2V5ZnJhbWVzIG9mZmxpbmVBbmltYXRpb257MCUsMzUle2hlaWdodDowfTYwJXtoZWlnaHQ6MTAwJX05MCV7ZmlsbC1vcGFjaXR5OjF9dG97ZmlsbC1vcGFjaXR5OjB9fTwvc3R5bGU+PC9zdmc+);\n background-position: right 27px center;\n background-repeat: no-repeat;\n border: 1px solid var(--google-gray-300);\n border-radius: 5px;\n color: var(--google-gray-700);\n margin-bottom: 26px;\n padding-bottom: 16px;\n padding-inline-end: 88px;\n padding-inline-start: 16px;\n padding-top: 16px;\n text-align: start;\n}\n\nhtml[dir='rtl'] #cancel-save-page-button {\n background-position: left 27px center;\n}\n\n#save-page-for-later-button {\n display: flex;\n justify-content: start;\n}\n\n#save-page-for-later-button a::before {\n content: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxLjJlbSIgaGVpZ2h0PSIxLjJlbSIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNSAyMGgxNHYtMkg1bTE0LTloLTRWM0g5djZINWw3IDcgNy03eiIgZmlsbD0iIzQyODVGNCIvPjwvc3ZnPg==);\n display: inline-block;\n margin-inline-end: 4px;\n vertical-align: -webkit-baseline-middle;\n}\n\n.hidden#save-page-for-later-button {\n display: none;\n}\n\n/* Don't allow overflow when in a subframe. */\nhtml[subframe] body {\n overflow: hidden;\n}\n\n#sub-frame-error {\n -webkit-align-items: center;\n -webkit-flex-flow: column;\n -webkit-justify-content: center;\n background-color: #DDD;\n display: -webkit-flex;\n height: 100%;\n left: 0;\n position: absolute;\n text-align: center;\n top: 0;\n transition: background-color 200ms ease-in-out;\n width: 100%;\n}\n\n#sub-frame-error:hover {\n background-color: #EEE;\n}\n\n#sub-frame-error .icon-generic {\n margin: 0 0 16px;\n}\n\n#sub-frame-error-details {\n margin: 0 10px;\n text-align: center;\n visibility: hidden;\n}\n\n/* Show details only when hovering. */\n#sub-frame-error:hover #sub-frame-error-details {\n visibility: visible;\n}\n\n/* If the iframe is too small, always hide the error code. */\n/* TODO(mmenke): See if overflow: no-display works better, once supported. */\n@media (max-width: 200px), (max-height: 95px) {\n #sub-frame-error-details {\n display: none;\n }\n}\n\n/* Adjust icon for small embedded frames in apps. */\n@media (max-height: 100px) {\n #sub-frame-error .icon-generic {\n height: auto;\n margin: 0;\n{ statusCode: 424, statusMessage: exception in stage5 chrome browser. see meta.trace for details on all fatal errors found. errMsg=fatalError encountered in page. details=FAILED PAGE NAVIGATION. unknown error while performing page navigation. status=424., originalRequest: { pages: [ { url: https://fr.royalcdkeys.com/products/playstation-plus-3-months-us-psn-cd-key.json?variant=39891181731977, renderType: html, requestSettings: { ignoreImages: true, maxWait: 15000 } } ] }, pageResponses: [ { navUrl: chrome-error://chromewebdata/, navId: 1, statusCode: 424, eventPhase: pageNavigated, doneDetail: { reason: fatalError:FAILED PAGE NAVIGATION. unknown error while performing page navigation. status=424., statusCode: 424 }, resourceSummary: { complete: 0, failed: 1, aborted: 0, orphaned: 0, active: 0, late: 0 }, resources: [ {elapsed:148,detail:'failed:404:net::ERR_HTTP_RESPONSE_CODE_FAILURE',start:'27(initialRequest)',ended:'175(initialRequest)',frame:'main(nav)',navId:'0',type:'document',url:'https://fr.royalcdkeys.com/products/playstation-...-months-us-psn-cd-key.json?variant=39891181731977'} ], debugDiags: [], contentErrors: [], errors: [ { name: FatalError, message: FAILED PAGE NAVIGATION. unknown error while performing page navigation. status=424., statusCode: 424 } ], metrics: { startTime: 2023-06-20T18:11:03.915Z, endTime: 2023-06-20T18:11:04.173Z, elapsedMs: 258, pageStatus: 404 }, scriptOutput: {}, headers: { access-control-allow-origin: *, alt-svc: h3=\:443\; ma=86400, cf-cache-status: DYNAMIC, cf-ray: 7da5f8ddeed12d47-DFW, content-encoding: gzip, content-language: en-DE, content-security-policy: block-all-mixed-content; frame-ancestors 'none'; upgrade-insecure-requests;, content-type: application/json; charset=utf-8, date: Tue, 20 Jun 2023 18:11:04 GMT, etag: W/\cacheable:aa87f50f063406a89297b65061218440\, nel: {\success_fraction\:0.01,\report_to\:\cf-nel\,\max_age\:604800}, powered-by: Shopify, processed-by: Weglot, report-to: {\endpoints\:[{\url\:\https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=b5Ich07U%2BYNLOSBNI5%2FanqHKt5r7HDSvS8cdFeQuIfyKT3M3q0ZK0XoX1CL3LjAzcZWOpXwuq%2BbuEjWF8TejgFIXOFsEHoaqIqGfa6euJoaTKyJ%2BeKoHK7cJRnFipdjtMw%3D%3D\}],\group\:\cf-nel\,\max_age\:604800}, server-timing: processing;dur=41, db;dur=26, asn;desc=\33438\, edge;desc=\DFW\, country;desc=\US\, servedBy;desc=m5m\, requestID;desc=\9a4976ac-a223-46d1-8d9c-6a99adcdc9e3\, cfRequestDuration;dur=79.999924, strict-transport-security: max-age=7889238, vary: Accept-Encoding, Accept, weglot-translated: false - Invalid JSON, Nothing to translate, x-cache: miss, x-content-type-options: nosniff, x-dc: gcp-us-south1,gcp-us-central1,gcp-us-central1, x-download-options: noopen, x-frame-options: DENY, x-hw: 1687284663.cds232.de1.hn,1687284664.cds232.de1.sl, x-permitted-cross-domain-policies: none, x-request-id: fbcb68ba-8015-4e9d-9e2b-25e8fc897903, x-shardid: 136, x-shopid: 37530206345, x-shopify-stage: production, x-sorting-hat-podid: 136, x-sorting-hat-shopid: 37530206345,...
- Marc Batty Big Data Et Machine Learning : Manuel Du Data ScientistBinding : Taschenbuch, Label : Dunod, Publisher : Dunod, medium : Taschenbuch, publicationDate : 2015-02-18, authors : Marc Batty, Pirmin Lemberger, Médéric Morel, Jean-Luc Raffaëlli, languages : french, ISBN : 2100720740
- Python Pour Le Data Scientist : Des Bases Du Langage Au Machine LearningBinding : Taschenbuch, Label : Dunod, Publisher : Dunod, medium : Taschenbuch, publicationDate : 2019-07-02, ISBN : 2100801627
- Emmanuel Jakobowicz Python Pour Le Data Scientist - 2e Éd. - Des Bases Du Langage Au Machine Learning: Des Bases Du Langage Au Machine LearningBinding : Taschenbuch, Label : DUNOD, Publisher : DUNOD, Format : Blaues Buch, medium : Taschenbuch, numberOfPages : 320, publicationDate : 2021-03-03, authors : Emmanuel Jakobowicz, ISBN : 2100812246
- Peter Bruce Praktische Statistik Für Data Scientists: 50+ Essenzielle Konzepte Mit R Und Python (Animals)Brand : O'Reilly, Binding : Taschenbuch, Edition : Übersetzung der 2., Label : O'Reilly, Publisher : O'Reilly, medium : Taschenbuch, numberOfPages : 374, publicationDate : 2021-04-01, releaseDate : 2021-04-01, authors : Peter Bruce, Andrew Bruce, Peter Gedeck, translators : Marcus Fraaß, ISBN : 3960091532
- Python Pour Le Data Scientist : Des Bases Du Langage Au Machine LearningBinding : Taschenbuch, Label : Dunod, Publisher : Dunod, medium : Taschenbuch, publicationDate : 2018-10-24, ISBN : 2100770756
- Sarah Guido Introduction To Machine Learning With Python: A Guide For Data ScientistsBinding : Taschenbuch, Edition : 1, Label : O'Reilly UK Ltd., Publisher : O'Reilly UK Ltd., PackageQuantity : 1, medium : Taschenbuch, numberOfPages : 400, publicationDate : 2016-10-21, authors : Sarah Guido, languages : english, ISBN : 1449369413
- Amy Affelt The Accidental Data Scientist: Big Data Applications And Opportunities For Librarians And Information ProfessionalsBinding : Taschenbuch, Label : Information Today Inc, Publisher : Information Today Inc, NumberOfItems : 1, PackageQuantity : 1, medium : Taschenbuch, numberOfPages : 222, publicationDate : 2015-01-12, releaseDate : 2015-01-12, authors : Amy Affelt, ISBN : 1573875112
- Le Machine Learning Avec Python : La Bible Des Data ScientistsBinding : Taschenbuch, Label : First, Publisher : First, medium : Taschenbuch, publicationDate : 2018-02-15, translators : Daniel Rougé, ISBN : 241203446X
- Peter Bruce Statistics For Data Scientists: 50 Essential ConceptsBinding : Taschenbuch, Edition : 1, Label : O'Reilly UK Ltd., Publisher : O'Reilly UK Ltd., PackageQuantity : 1, medium : Taschenbuch, numberOfPages : 298, publicationDate : 2017-06-30, authors : Peter Bruce, Andrew Bruce, languages : english, ISBN : 1491952962
- BODUM Cafetière BODUM KENYA 8 tasses 1LDécouvrez la saveur d'un café de grande qualité dans une cafetière en piston performante, tout en restant aligné avec vos valeurs. Préparez un délicieux café de manière écologique et révélez les arômes de votre boisson à chaque préparation. Simple et pratique à utiliser, la cafetière à piston fonctionne sans électricité et sans déchet. Pratique et simple d'utilisation La Cafetière BODUM KENYA dispose d'une capacité de 1 L soit l'équivalent de 8 tasses, pour recevoir et régaler votre famille ou vos amis avec un délicieux café. Pratique et simple à utiliser, elle convient parfaitement aux matins pressés et aux amoureux de café. Le design de la Cafetière BODUM KENYA s'intègre parfaitement à votre cuisine et à votre décoration. Elle apporte une touche d'élégance à votre intérieur et appelle à la convivialité et au partage. Retrouvez le plaisir d'un bon café à savourer à tout moment de la journée. Une cafetière plus écologique Pour ceux qui aiment préparer du café de façon écologique, le modèle de la Cafetière BODUM KENYA est constitué de verre, protégé par un plastique qui garantit sa durabilité. Ainsi, vous bénéficiez d'un café parfaitement infusé, aux arômes puissants, tout en respectant l'environnement. Votre Cafetière BODUM KENYA est entièrement zéro déchet, pour vous permettre de profiter d'un café préparé en accord avec vos valeurs. Sans filtre, ni papier, ni capsule, cette cafetière est respectueuse de la planète. Aussi, elle n'utilise pas d'électricité, et peut donc être emportée n'importe où.