From 9de834e1283d45f8c1f61fe7a9b472787800b924 Mon Sep 17 00:00:00 2001 From: HeleneCreusot Date: Mon, 19 Aug 2024 15:32:01 +0200 Subject: [PATCH] =?UTF-8?q?feat(FRONT=20theme=20button):=20impl=C3=A9mente?= =?UTF-8?q?=20charte=20istex=20button&link?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit link in text : ok link icon : en cours button + button&Icon : demarré --- .../themes/istex/css/istex-internalclass.css | 123 ++++-- .../themes/istex/css/istex-linksclass.css | 402 +++++++----------- src/app/custom/themes/istex/css/istex.css | 79 +++- .../istex/img/fleche-petite-droite-bleu.png | Bin 0 -> 245 bytes .../themes/istex/img/fleche-petite-droite.png | Bin 245 -> 212 bytes 5 files changed, 295 insertions(+), 309 deletions(-) create mode 100644 src/app/custom/themes/istex/img/fleche-petite-droite-bleu.png diff --git a/src/app/custom/themes/istex/css/istex-internalclass.css b/src/app/custom/themes/istex/css/istex-internalclass.css index 4911dc180..b14c8faa1 100644 --- a/src/app/custom/themes/istex/css/istex-internalclass.css +++ b/src/app/custom/themes/istex/css/istex-internalclass.css @@ -18,32 +18,9 @@ div[class*='HomeContentSidebar'] { div[class*='HomeContentSidebar'] .MuiBox-root.css-oa9bdm { padding: 0 !important; } -/*div[class*='HomeContentSidebar'] : champs composant*/ -/*enleve à gauche la bordure, le padding et la marge*/ -div[class*='HomeContentSidebar'] - > .property_value_container - > div.MuiBox-root - > div - > div, -div[class*='HomeContentSidebar'] - div[class*='HomeContent'] - .property_value_container - > div.MuiBox-root - > div - > div, -div[class*='HomeSidebar'] - .property_value_container - > div.MuiBox-root - > div - > div { - padding-left: 0 !important; - margin-left: 0 !important; - border-left: 0px !important; - gap: 0; -} /*Home div[class*='HomeContent'] et*/ /*Home div[class*='HomeSidebar']*/ -div[class='HomeContentSidebar'] div[class*='designHomeContent'], +div[class*='HomeContentSidebar'] div[class*='designHomeContent'], div[class*='HomeSidebar'] { width: auto !important; margin-bottom: 0 !important; @@ -54,7 +31,7 @@ div[class*='HomeSidebar'] { } /*Home texte principal*/ /* div[class*='HomeContent']*/ -div[class='HomeContentSidebar' i] div[class*='HomeContent' i] { +div[class*='HomeContentSidebar'] div[class*='HomeContent'] { flex: 2; background-color: transparent !important; /*padding: 0 20px 70px 20px;*/ @@ -80,17 +57,97 @@ div[class='HomeContentSidebar' i] div[class*='HomeContent' i] { span.property_label:empty { padding: 0; }*/ -/*toutes pages elements en pave*/ -*[class*='ListePave'] li { - width: 48%; +/********************/ +/* home ou resource */ +/* liste en pave */ +/********************/ +[class*='ListePave'] div.property_value_container:first-child { + padding: 0 !important; +} +.body [class*='ListePave'] :is(ul, li) { + padding: 0; + margin: 0; +} +.body [class*='ListePave'] ul { + display: flex; + flex-wrap: wrap; + gap: 12px; +} +/*avec liste syndication*/ +div.property_value_container li[class*='item'], +[class*='ListePave'] div.property_value_container li div { + background: transparent; + box-shadow: none; + border: 0px; + width: auto; +} +[class*='ListePave'] div.property_value_container li div[class*='wrapper'] { + padding: 0rem; +} +[class*='ListePave'] li a { + display: block; + width: 325px; + min-height: 80px; + padding: 1.3rem; + background-color: var(--primary-light); + border: 1px solid var(--primary-main); + border-radius: 4px; +} +[class*='ListePave'] li a > div { + width: 100%; + height: 100%; + display: flex; + flex-direction: column; +} +/* titre du bloc toutes liste */ +[class*='ListePave'] a div[class*='contentTitle'] { + flex: 1; + font-family: var(--font-titre); + color: var(--primary-main); + font-weight: 700; + font-size: 1.6rem; +} +/*liste pave dans designHomeContent*/ +div[class*='HomeContentSidebar'] + div[class*='designHomeContent'] + /* [class*='ListePave']*/ + li + a { background-color: var(--contrast-light); - position: relative; + border-color: var(--contrast-light); } -*[class*='ListePave'] li > * { - background-color: var(--contrast-light) !important; - padding: 0 !important; +div[class*='HomeContentSidebar'] + div[class*='designHomeContent'] + /* [class*='ListePave']*/ + div.property_value_container + li + a + > div { + display: flex; + flex-direction: column; + gap: 0 2px; +} +div[class*='HomeContentSidebar'] + div[class*='designHomeContent'] + /* [class*='ListePave']*/ + a + div[class*='contentTitle'] { + background: var(--contrast-light) url('../img/fleched.svg') no-repeat center + right 1.3rem; +} +div[class*='HomeContentSidebar'] + div[class*='designHomeContent'] + /* [class*='ListePave']*/ + div.property_value_container + li + a + div[class*='contentParagraph'] { + flex: 2; } -/*ISTEX design sidebar*/ +/******************/ +/* home ISTEX */ +/* design sidebar */ +/******************/ div[class*='HomeSidebar'] { align-items: flex-start !important; background-color: var(--primary-main); diff --git a/src/app/custom/themes/istex/css/istex-linksclass.css b/src/app/custom/themes/istex/css/istex-linksclass.css index b962521d1..4a6cb3b1e 100644 --- a/src/app/custom/themes/istex/css/istex-linksclass.css +++ b/src/app/custom/themes/istex/css/istex-linksclass.css @@ -1,49 +1,54 @@ -/* links in text */ -/*fond clair*/ -.body a { +/* lien du content*/ +.body > div:last-child a { + text-decoration: underline; +} +/*a avec url comme texte*/ +.property div[class*='designHomeSidebar'] a.property_value { + overflow-wrap: anywhere !important; + word-break: break-all !important; + hyphens: auto; + width: inherit; +} +/*lien externe icone couleur position*/ +.property a:not(:empty)[target='_blank'] { + display: inline-flex; +} +.property a:not(:empty)[target='_blank']::after { + filter: invert(55%) sepia(9%) saturate(2387%) hue-rotate(150deg) + brightness(88%) contrast(81%); + color: black; + display: inline-block; +} +/* link in text fond clair*/ +.property a { color: var(--primary-main); cursor: pointer; } -.body div:not([class*='Bouton LinkAction']) a { - text-decoration: underline !important; -} -.body a:is(:hover, :focus) { +.property a:is(:hover, :focus) { color: var(--link-secondary); - text-decoration: underline; } -.body a:active { +.property a:active { color: var(--link-dark); - text-decoration: underline; } -/*lien externe in text*/ -.body a:not(:empty)[target='_blank'] { - display: inline-flex; - width: max-content; - justify-content: center; - align-items: center; -} -.body a:not(:empty)[target='_blank']::after { - content: ' '; - background-size: 15px; - width: 15px; - height: 15px; +/*link externe in text fond clair*/ +.property a:not(:empty, .property_value)[target='_blank']::after { + content: url('../img/suivre-le-lien-nouvel-onglet.png'); padding-left: 5px; } -.body a:not(:empty)[target='_blank']::after { - background: url('../img/suivre-le-lien-nouvel-onglet.png') center center - no-repeat; - filter: invert(47%) sepia(25%) saturate(824%) hue-rotate(150deg) - brightness(100%) contrast(91%); -} -.body a:is(:hover, :focus):not(:empty)[target='_blank']::after { +.property a:is(:hover, :focus):not(:empty)[target='_blank']::after, +div[class*='Icon'] a:is(:hover, :focus)::after { filter: invert(39%) sepia(60%) saturate(480%) hue-rotate(150deg) brightness(90%) contrast(85%); + color: black; } -.body a:active:not(:empty)[target='_blank']::after { +.property a:active:not(:empty, .property_value)[target='_blank']::after, +div[class*='Icon'] a:active::after { filter: invert(24%) sepia(74%) saturate(509%) hue-rotate(150deg) brightness(99%) contrast(88%); + color: black; } /*link in text fond sombre*/ +/*lien externe icon*/ div[class*='HomeSidebar'] a { color: var(--contrast-light); } @@ -51,206 +56,149 @@ div[class*='HomeSidebar'] a:is(:hover, :focus, :active) { color: var(--contrast-main); } /*link externe in text fond sombre*/ -div[class*='HomeSidebar'] a:not(:empty)[target='_blank']::after { - background: url('../img/lien-externe_blanc.svg') center center no-repeat; - background-size: 15px; - filter: none; +/*link externe icon */ +div[class*='HomeSidebar'] a:not(:empty)[target='_blank']::after, +div[class*='HomeSidebar'] div[class*='Icon'] a::after { + filter: invert(88%) sepia(54%) saturate(7152%) hue-rotate(182deg) + brightness(124%) contrast(89%); + color: black; } div[class*='HomeSidebar'] - a:is(:hover, :focus, :active):not(:empty)[target='_blank']::after { - filter: none; - background-size: 16px; + a:is(:hover, :focus, :active):not(:empty)[target='_blank']::after, +div[class*='HomeSidebar'] + div[class*='Icon'] + a:is(:hover, :focus, :active)::after { + filter: invert(100%) sepia(100%) saturate(0%) hue-rotate(327deg) + brightness(107%) contrast(101%); + color: black; } -/*link icon action see button*/ +/*linkIcon = bloc ? */ /************************/ -/* link action & bouton */ +/* linkIcon & bouton */ /************************/ - /* la forme */ -/*div[class*='LinkAction'] .property_value_container > div > div, -div[class*='Bouton'] .property_value_container > div > div { - width: max-content; - display: flex; - justify-content: center; - align-items: center; - border: 0px solid transparent; - border-radius: 5px; - cursor: pointer; - padding: 15px 30px; -}*/ -div[class*='LinkAction'] .property_value_container > div > div a.property_value, -div[class*='Bouton'] .property_value_container > div > div a.property_value { - display: flex; - width: max-content; - justify-content: center; - align-items: center; - border: 0px solid transparent; - border-radius: 8px; - cursor: pointer; - padding: 12px 20px; +div[class*='LinkIcon'] a.property_value, +div[class*='Bouton'] a.property_value { font-family: var(--font-texte); - /*line-height: 18px;*/ font-size: 16px !important; text-decoration: none !important; text-transform: uppercase; + padding: 12px 0; + width: auto; + line-height: auto; + display: inline-flex; } -div[class*='BoutonOmbre'] - .property_value_container - > div - > div - a.property_value { +div[class*='LinkIcon'] a.property_value { + font-weight: 700; + padding-right: 20px; +} +div[class*='Bouton'] a.property_value { + font-family: var(--font-texte); + border: 1px solid transparent; + border-radius: 8px; + cursor: pointer; + padding: 12px 20px; +} +div[class*='BoutonOmbre'] a.property_value { border: none !important; box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.15); } - -/*couleur*/ -/*fond clair*/ -div[class*='LinkAction'] .property_value_container > div > div a.property_value, -div[class*='BoutonSecondaire'] - .property_value_container - > div - > div - a.property_value, -div[class*='BoutonOmbre'] - .property_value_container - > div - > div - a.property_value { - color: var(--primary-main); +/*avec Icon*/ +div[class*='Icon'] a.property_value { + display: inline-flex; + gap: 10px; + padding-right: 20px; + padding-left: 20px; } -/*bordure : BoutonPrimaire Bouton secondaire*/ -div[class*='Bouton'] .property_value_container > div > div a.property_value { - border: 1px solid var(--primary-main) !important; +div[class*='Icon'] a.property_value::after { + color: black; } -/*fond BoutonPrimaire*/ -div[class*='BoutonPrimaire'] - .property_value_container - > div - > div - a.property_value { +/*Icon fleche droite */ +div[class*='IconFlecheDroite'] a.property_value.link::after { + content: url('../img/fleche-petite-droite.png'); +} +/*Icon chevron droit*/ +div[class*='IconChevronDroit'] a.property_value::after { + content: url('../img/chevron-droit.png'); +} +/*couleurs + bordures fond clair*/ +/* couleurs */ +/*BoutonPrimaire*/ +div[class*='BoutonPrimaire'] a.property_value { color: var(--contrast-light); background-color: var(--primary-main) !important; } - -div[class*='BoutonPrimaire'] - .property_value_container - > div - > div - a.property_value:hover, -div[class*='BoutonPrimaire'] - .property_value_container - > div - > div - a.property_value:focus { +/* les autres */ +div[class*='Bouton'] a.property_value { + background-color: var(--contrast-light); +} +/*bordure : BoutonPrimaire Bouton secondaire*/ +div[class*='Bouton'] a.property_value { + border: 1px solid var(--primary-main) !important; +} +/*hover&focus&active Bouton*/ +div:is([class*='BoutonPrimaire'], [class*='BoutonSecondaire']) + a.property_value:is(:hover, :focus) { color: var(--contrast-main); - background-color: #31768f !important; + background-color: var(--link-secondary) !important; + border-color: var(--link-secondary) !important; } -div[class*='BoutonPrimaire'] - .property_value_container - > div - > div - a.property_value:active { +div[class*='BoutonOmbre'] a.property_value:is(:hover, :focus) { + background-color: var(--neutral-dark-very-light) !important; +} +/*tous les boutons actifs fond clair*/ +div[class*='Bouton'] a.property_value:active { color: var(--contrast-main); - background-color: #1a5a71 !important; + background-color: var(--link-dark) !important; + border-color: var(--link-dark) !important; } - -/*fond sombre*/ -/*div[class*='HomeSidebar'] - div[class*='LinkAction'] - .property_value_container - > div - > div - a.property_value, +/*couleurs + bordures fond sombre*/ +/* couleurs */ +/*BoutonPrimaire*/ +div[class*='BoutonPrimaire'] a.property_value { + color: var(--primary-main); + background-color: var(--contrast-light); + border: 1px solid var(--contrast-light); +} +/* les autres */ div[class*='HomeSidebar'] - div[class*='Bouton'] - .property_value_container + div:is([class*='LinkIcon'], [class*='Bouton']) a.property_value { - color: var(--contrast-light) !important; -} -/* div[class*='BoutonPrimaire'] -div[class*='BoutonSecondaire'] -div[class*='BoutonOmbre'] */ -/*la forme et couleur*/ -/*div[class*='HomeSidebar'] - div[class*='BoutonSecondaire'] - .property_value_container - > div - > div { - color: var(--contrast-light); background-color: transparent; - border: 1px solid var(--contrast-light); } -/*le lien*/ -/*div[class*='HomeSidebar'] - div[class*='BoutonSecondaire'] - .property_value_container - a.property_value { - color: var(--contrast-light); +/*bordure : Bouton secondaire*/ +div[class*='HomeSidebar'] div[class*='BoutonSecondaire'] a.property_value { + border: 1px solid var(--contrast-light) !important; } -/*hover&focus sur div et a*/ -/*div[class*='HomeSidebar'] - div[class*='BoutonSecondaire'] - .property_value_container - > div - > div:hover, -div[class*='HomeSidebar'] - div[class*='BoutonSecondaire'] - .property_value_container - > div - > div:focus, -div[class*='HomeSidebar'] - div[class*='BoutonSecondaire'] - .property_value_container - > div - > div:hover - a.property_value, -div[class*='HomeSidebar'] - div[class*='BoutonSecondaire'] - .property_value_container - > div - > div:focus - a.property_value { - color: var(--primary-main) !important; - background-color: var(--contrast-light); +/*hover&focus&active*/ +div[class*='BoutonPrimaire'] a:is(:hover, :focus).property_value { + color: var(--contrast-main) !important; + background-color: var(--link-secondary) !important; + border: 1px solid var(--link-secondary) !important; } -/* bouton clair externe*/ -/*div[class*='HomeSidebar'] - div[class*='BoutonSecondaireFlecheDroite'] - .property_value_container - > div - > div - a[target='_blank']::after { - display: block; - content: ' '; - width: 18px; - height: 18px; - background-image: url('../img/chevron-droit-blanc.png') !important; - background-position: bottom center; - background-repeat: no-repeat; +div[class*='BoutonPrimaire'] a.property_value:active { + color: var(--contrast-main); + background-color: var(--link-dark) !important; + border: 1px solid var(--link-secondary) !important; } +/*les autres*/ div[class*='HomeSidebar'] - div[class*='BoutonSecondaireFlecheDroite'] - .property_value_container - > div - > div:hover - a[target='_blank']::after, -div[class*='HomeSidebar'] - div[class*='BoutonSecondaireFlecheDroite'] - .property_value_container - > div - > div:focus - a[target='_blank']::after { - background-image: url('../img/chevron-droit.png') !important; + div[class*='BoutonSecondaire'] + a:is(:hover, :focus, :active).property_value { + border-color: var(--contrast-main); } +/*********************/ /*liste liens en pave*/ -/**[class*='ListePave'] li > * > a > div { - margin: 2rem; - height: 80px; - background: var(--contrast-light) url('../img/fleched.svg') no-repeat bottom - 0rem right 1rem; +/*********************/ +[class*='ListePave'] div.property_value_container a { + text-decoration: none; } -.designHomeContent +/*home designHomeContent*/ +/*div[class*='HomeContentSidebar'] + div[class*='designHomeContent']*/ + +/**.designHomeContent .resources-grid-content > div > a @@ -259,66 +207,4 @@ div[class*='HomeSidebar'] line-height: 2rem; font-weight: 700; padding-bottom: 1rem; -} -/*.designHomeSidebar contrast color text*/ -/*.designHomeSidebar *:not(button, svg, [class*='Bouton']) { - color: var(--secondary-contrast-text) !important; - text-align: left; -} -/*a avec url en texte*/ -/*.designHomeSidebar > .property_value_container > div .property a { - color: var(--secondary-contrast-text) !important; - overflow-wrap: anywhere !important; - word-break: break-all !important; - hyphens: auto; -} -.designHomeSidebar - > .property_value_container - > div - .property:not([class*='Bouton']) - a[target='_blank']::after { - background: url('../img/lien-externe_blanc.svg') bottom right no-repeat; - background-size: 15px; -} -.designHomeSidebar - > .property_value_container - > div - .property - a[target='_blank']::after { - background: url('../img/lien-externe_blanc.svg') bottom right no-repeat; - background-size: 15px; -} -/*version lodex propulsé lodex zutile*/ -.header-dataset-section { - /*background-color: var(--primary-main); - background-position-y: 0; - background-size: 100% 50px;*/ - position: relative; - z-index: 2; - background: linear-gradient( - to top, - var(--primary-main) 40px, - transparent 1px, - transparent - ); -} -.header-dataset-section > div:last-child { - position: relative; - max-width: 1200px; - min-width: 360px; - margin: 0 auto; - padding: 10px 30px !important; - background-color: var(--primary-main); - color: var(--contrast-light) !important; - text-align: right; -} -.header-dataset-section > div:last-child a { - color: var(--contrast-light) !important; -} -.header-dataset-section > div:last-child b { - font-weight: bold !important; -} -.header-dataset-section > div:last-child a:hover, -.header-dataset-section > div:last-child a:focus { - text-decoration: underline !important; -} +}*/ diff --git a/src/app/custom/themes/istex/css/istex.css b/src/app/custom/themes/istex/css/istex.css index ec4a32d62..37c929062 100644 --- a/src/app/custom/themes/istex/css/istex.css +++ b/src/app/custom/themes/istex/css/istex.css @@ -13,7 +13,7 @@ @font-face { font-family: 'Montserrat'; src: - local('Montserrat'), + local('Montserrat Medium'), url('/themes/istex/fonts/Montserrat/Montserrat-Medium.ttf') format('truetype'); font-style: normal; @@ -49,6 +49,9 @@ /*****************************/ /* General *******************/ /*****************************/ +* { + box-sizing: border-box; +} html { font-size: 62.5%; width: 100%; @@ -60,6 +63,7 @@ body { } :root { --font-titre: Montserrat, Arial, Helvetica, sans-serif; + --font-titre-medium: Montserrat Medium, Arial, Helvetica, sans-serif; --font-texte: Inter, Arial, Helvetica, sans-serif; } /*otdm2023.css pour header footer*/ @@ -320,28 +324,23 @@ nav.nav-bar-menu div.nav-bar-container > img { text-align: left !important; } .body h1 { - font-size: 4.8rem; - line-height: 4.8rem; + font-size: 3.8rem; font-weight: 700; } .body h2 { font-size: 2.8rem; - line-height: 3rem; font-weight: 700; margin-block-end: 0.5em; } .body h3 { font-size: 2.2rem; - line-height: 2.6rem; } .body h4 { font-size: 2rem; - line-height: 2.4rem; font-style: italic; } .body h5 { font-size: 1.8rem; - line-height: 2.6rem; font-style: italic; } .body h6 { @@ -434,13 +433,24 @@ a img { line-height: 1.93rem; font-weight: 550; } -/***************/ -/* LODEX class */ -/***************/ +/*****************/ +/* LODEX class & */ +/* composants */ +/*****************/ + /* champs*/ .property { margin-bottom: 1.5rem; } +.MuiBox-root.css-oa9bdm { + text-align: initial; +} +/*champs composé*/ +/*espace entre les property qui composent*/ +div.property div.MuiBox-root > div > * + div { + justify-content: space-between; + gap: 0%; +} /* label */ span.property_label[style*='color: rgb(158, 158, 158)']:not(:empty) { font-family: var(--font-titre) !important; @@ -473,6 +483,40 @@ span.property_label[style*='color: rgb(158, 158, 158)']:not(:empty) { /* design Home */ /* .header-dataset-section */ /***************************/ +/*version lodex propulsé lodex zutile*/ +.header-dataset-section { + /*background-color: var(--primary-main); + background-position-y: 0; + background-size: 100% 50px;*/ + position: relative; + z-index: 2; + background: linear-gradient( + to top, + var(--primary-main) 40px, + transparent 1px, + transparent + ); +} +.header-dataset-section > div:last-child { + position: relative; + max-width: 1200px; + min-width: 360px; + margin: 0 auto; + padding: 10px 30px !important; + background-color: var(--primary-main); + color: var(--contrast-light) !important; + text-align: right; +} +.header-dataset-section > div:last-child a { + color: var(--contrast-light) !important; +} +.header-dataset-section > div:last-child b { + font-weight: bold !important; +} +.header-dataset-section > div:last-child a:hover, +.header-dataset-section > div:last-child a:focus { + text-decoration: underline !important; +} /*pas de marge haute*/ .body div:last-child .dataset-characteristics > div:first-child { margin: 0 !important; @@ -585,7 +629,7 @@ ul.MuiList-root.facets-list > li .facet-value-list svg { /*a.search-result-link*/ .body .search-result-list-container a { text-decoration: none; - flex: 1; + flex: 1 0 325px; color: rgb(74, 74, 74); transition: box-shadow 300ms cubic-bezier(0.4, 0, 0.2, 1) 0ms; border-radius: 5px; @@ -594,7 +638,7 @@ ul.MuiList-root.facets-list > li .facet-value-list svg { background-color: var(--neutral-dark-very-light); display: flex; flex-direction: column; - min-width: 48%; + width: 48%; } /*.search-result-list-container a:hover, .search-result-list-container a:focus, @@ -609,13 +653,13 @@ ul.MuiList-root.facets-list > li .facet-value-list svg { border: 0px; background-color: transparent; } +.search-result-list-container a div.search-result-title { + font-family: var(--font-titre); +} +/*****************/ +/* page resource */ /*****************/ -/*page resource*/ /*general*/ -/*donnees en noir*/ -.resource .detail .property_value_container .property_value_container * { - color: var(--text-main); -} /*labels en noir et soulignes*/ .resource .property @@ -653,7 +697,6 @@ ul.MuiList-root.facets-list > li .facet-value-list svg { } /*bloc header-resource-section*/ .header-resource-section .property * { - color: var(--text-main); padding-left: 1rem; } /* resource titre*/ diff --git a/src/app/custom/themes/istex/img/fleche-petite-droite-bleu.png b/src/app/custom/themes/istex/img/fleche-petite-droite-bleu.png new file mode 100644 index 0000000000000000000000000000000000000000..490307078bd5b5100ecdbb74283b079a14511e07 GIT binary patch literal 245 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`dpunnLoEE0Qx*sq1g)6gxPVdb zt~Zy&f8)9vv0{4}W~Z|77QBtDl3Q`{!Tt# z4d{jtV*p4q$Pf^~FoYNbKpJrxLaYHWL-qq10?00b82}2Xd?I5+0je$#NN<1{kO1WL z6JY?zb{GJM2dQ3I57Y#5!2}>K1ervv0iZyH`5&&CSOaisCNb6kSVBUv85R)4cmWi^ mpuhtefB}dx0B___YybcYV*j*OA0Gnk54RGyQ zdLF3J;Q#-BjeAOC8_*3QY(Upi0|q7rkRc4%3?XO$NTVwrLx?f}$&md(wg9qAzy^Q= zijgs&$QV%osbged4BS-`wE=7Z(1{5^fA$k$fB;Ml%oU`1VNyNN00p3HC+sSYDulR% z2mlR4u>X-Y6J-EC&BPf1O-SfA!yHb~3!ni0&-h