/* AdPress Flat — public theme
   Reading-first layout for ad-supported guides: one readable column, a 300px rail
   that fits standard ad sizes, and reserved space for every ad so pages don't jump. */

:root {
  --paper: #F6F7F9;
  --ink: #16202E;
  --ink-2: #39455A;
  --muted: #5E6878;
  --line: #DCE1E8;
  --accent: #0B6E4F;
  --accent-ink: var(--accent);
  --accent-soft: color-mix(in srgb, var(--accent) 9%, var(--paper));
  --foot: #16202E;
  --foot-ink: #D7DDE6;
  --code-bg: #EBEEF2;

  --sans: "Schibsted Grotesk", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --serif: "Literata", Georgia, "Times New Roman", serif;
  --mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;

  --wrap: 1180px;
  --rail: 300px;
  --gap: clamp(1rem, 4vw, 4rem);
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --paper: #0F141B;
    --ink: #E7EBF0;
    --ink-2: #C3CAD4;
    --muted: #8D97A6;
    --line: #283140;
    --accent-ink: color-mix(in srgb, var(--accent) 55%, #ffffff);
    --accent-soft: color-mix(in srgb, var(--accent) 18%, var(--paper));
    --foot: #0A0E13;
    --foot-ink: #B9C1CC;
    --code-bg: #1A212C;
  }
}
:root[data-theme="dark"] {
  --paper: #0F141B; --ink: #E7EBF0; --ink-2: #C3CAD4; --muted: #8D97A6; --line: #283140;
  --accent-ink: color-mix(in srgb, var(--accent) 55%, #ffffff);
  --accent-soft: color-mix(in srgb, var(--accent) 18%, var(--paper));
  --foot: #0A0E13; --foot-ink: #B9C1CC; --code-bg: #1A212C;
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
@media (prefers-reduced-motion: no-preference) { html { scroll-behavior: smooth; } }
body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font: 400 1rem/1.55 var(--sans);
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; }
:focus-visible { outline: 2px solid var(--accent-ink); outline-offset: 3px; border-radius: 2px; }
.sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.skip { position: absolute; left: -999px; top: 0; background: var(--ink); color: var(--paper); padding: .6rem 1rem; z-index: 10; }
.skip:focus { left: 1rem; }

.wrap { width: 100%; max-width: var(--wrap); margin: 0 auto; padding: 0 16px; }
@media (min-width: 640px) { .wrap { padding: 0 28px; } }

/* ---------- masthead ---------- */
.adminbar {
  display: flex; gap: 1rem; justify-content: space-between; align-items: center; flex-wrap: wrap;
  background: var(--accent-soft); color: var(--ink-2); font-size: .85rem; padding: .45rem 16px;
}
.adminbar a { color: var(--accent-ink); font-weight: 700; }

.masthead { border-bottom: 1px solid var(--line); }
.masthead__bar { display: flex; align-items: center; gap: 1.5rem; min-height: 68px; flex-wrap: wrap; }
.brand {
  font: 800 1.4rem/1 var(--sans); letter-spacing: -.025em; text-decoration: none; color: var(--ink);
  display: inline-flex; align-items: center; gap: .55rem;
}
.brand::before {
  content: ""; width: .7em; height: .7em; background: var(--accent); border-radius: 2px;
  transform: rotate(45deg) scale(.8);
}
.masthead__nav { display: flex; align-items: center; gap: 1.5rem; flex: 1; }
.topnav { display: flex; gap: 1.25rem; flex-wrap: wrap; }
.topnav a { text-decoration: none; color: var(--ink-2); font-weight: 500; font-size: .97rem; padding: .3rem 0; border-bottom: 2px solid transparent; }
.topnav a:hover { color: var(--ink); border-bottom-color: var(--accent); }
.search { margin-left: auto; }
.search input {
  font: inherit; font-size: .95rem; color: var(--ink); background: transparent;
  border: 1px solid var(--line); border-radius: 999px; padding: .5rem 1rem; width: 220px;
}
.search input::placeholder { color: var(--muted); }
.menu-btn {
  display: none; margin-left: auto; font: 700 .9rem var(--sans); color: var(--ink);
  background: none; border: 1px solid var(--line); border-radius: 999px; padding: .45rem .95rem; cursor: pointer;
}
@media (max-width: 860px) {
  .menu-btn { display: inline-block; }
  .masthead__nav { display: none; flex-basis: 100%; flex-direction: column; align-items: stretch; gap: 1rem; padding: 0 0 1.25rem; }
  .masthead__nav.is-open { display: flex; }
  .topnav { flex-direction: column; gap: .25rem; }
  .search { margin-left: 0; }
  .search input { width: 100%; }
}

/* ---------- shared bits ---------- */
.kicker { display: inline-block; font: 700 .86rem/1.2 var(--sans); color: var(--accent-ink); text-decoration: none; margin-bottom: .45rem; }
.kicker:hover { text-decoration: underline; }
.meta { font: 400 .85rem/1.4 var(--sans); color: var(--muted); margin: 0; }
.sec-h { font: 800 1.15rem/1.2 var(--sans); letter-spacing: -.01em; margin: 0 0 1rem; padding-top: .9rem; border-top: 3px solid var(--ink); }
.btn { display: inline-block; background: var(--accent); color: #fff; text-decoration: none; font-weight: 700; padding: .65rem 1.2rem; border-radius: 6px; }

.cols { display: grid; grid-template-columns: minmax(0, 1fr) var(--rail); gap: var(--gap); margin: 2.5rem 0 3.5rem; align-items: start; }
@media (max-width: 1000px) { .cols { grid-template-columns: minmax(0, 1fr); } }

/* ---------- home lead ---------- */
.lead { display: grid; gap: 2rem; padding: 2.5rem 0 2.5rem; border-bottom: 1px solid var(--line); align-items: center; }
.lead--img { grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); }
.lead__title { font: 800 clamp(2rem, 4.4vw, 3.3rem)/1.06 var(--sans); letter-spacing: -.03em; margin: 0 0 1rem; max-width: 18ch; text-wrap: balance; }
.lead:not(.lead--img) .lead__title { max-width: 24ch; }
.lead__title a { text-decoration: none; }
.lead__title a:hover { text-decoration: underline; text-decoration-thickness: 3px; text-underline-offset: 6px; text-decoration-color: var(--accent); }
.lead__ex { font: 400 1.15rem/1.6 var(--serif); color: var(--ink-2); margin: 0 0 1rem; max-width: 52ch; }
.lead__img img { width: 100%; aspect-ratio: 16/10; object-fit: cover; border-radius: 6px; }
@media (max-width: 760px) { .lead--img { grid-template-columns: 1fr; } .lead__img { order: -1; } }

/* ---------- list rows ---------- */
.row { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.25rem; padding: 1.4rem 0; border-bottom: 1px solid var(--line); }
.row:first-of-type { padding-top: .4rem; }
.row--img { grid-template-columns: 200px minmax(0, 1fr); }
.row__img img { width: 100%; aspect-ratio: 16/10; object-fit: cover; border-radius: 4px; }
.row__title { font: 700 1.3rem/1.25 var(--sans); letter-spacing: -.015em; margin: 0 0 .4rem; text-wrap: balance; }
.row__title a { text-decoration: none; }
.row__title a:hover { color: var(--accent-ink); }
.row__ex { font: 400 1rem/1.6 var(--serif); color: var(--ink-2); margin: 0 0 .5rem; max-width: 62ch; }
@media (max-width: 640px) {
  .row--img { grid-template-columns: minmax(0, 1fr) 96px; }
  .row--img .row__img { order: 2; }
  .row__img img { aspect-ratio: 1; }
  .row__title { font-size: 1.12rem; }
  .row__ex { display: none; }
}
.feed__empty { color: var(--muted); }

.pager { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 1rem; margin: 2rem 0 0; font-weight: 700; }
.pager a { text-decoration: none; color: var(--accent-ink); }
.pager a[rel="next"] { justify-self: end; }
.pager__n { color: var(--muted); font-weight: 500; font-size: .9rem; }

/* ---------- sidebar ---------- */
.sidebar { display: flex; flex-direction: column; gap: 2rem; align-self: stretch; }
.side-h { font: 800 .98rem/1.2 var(--sans); margin: 0 0 .8rem; }
.side-block { border-top: 3px solid var(--ink); padding-top: .9rem; }
.ranked { list-style: none; margin: 0; padding: 0; counter-reset: rank; }
.ranked li { counter-increment: rank; display: grid; grid-template-columns: 2rem 1fr; gap: .3rem; padding: .6rem 0; border-bottom: 1px solid var(--line); }
.ranked li::before { content: counter(rank); font: 800 1.35rem/1 var(--sans); color: var(--accent-ink); }
.ranked a { text-decoration: none; font-weight: 500; line-height: 1.35; }
.ranked a:hover { text-decoration: underline; }
.topics { list-style: none; margin: 0; padding: 0; }
.topics li { display: flex; justify-content: space-between; gap: 1rem; padding: .45rem 0; border-bottom: 1px solid var(--line); }
.topics a { text-decoration: none; font-weight: 500; }
.topics a:hover { color: var(--accent-ink); }
.topics span { color: var(--muted); font-size: .85rem; }
.side-ad.is-sticky { position: sticky; top: 1.25rem; }

/* ---------- topic bands on home ---------- */
.topic-band { margin: 0 0 3rem; }
.topic-band__head { display: flex; justify-content: space-between; align-items: baseline; gap: 1rem; border-top: 3px solid var(--ink); padding-top: .9rem; margin-bottom: .5rem; }
.topic-band__head .sec-h { border: 0; padding: 0; margin: 0; }
.topic-band__head a { color: var(--accent-ink); font-weight: 700; font-size: .92rem; text-decoration: none; }
.topic-band__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); column-gap: 2rem; }
.topic-band__list li { padding: .8rem 0; border-bottom: 1px solid var(--line); display: flex; flex-direction: column; gap: .2rem; }
.topic-band__list a { text-decoration: none; font-weight: 700; line-height: 1.3; }
.topic-band__list a:hover { color: var(--accent-ink); }

/* ---------- list headers ---------- */
.list-head { padding: 2.5rem 0 1rem; border-bottom: 1px solid var(--line); }
.list-head h1 { font: 800 clamp(2rem, 4vw, 2.9rem)/1.08 var(--sans); letter-spacing: -.03em; margin: .2rem 0 .6rem; }
.list-head__intro { font: 400 1.1rem/1.6 var(--serif); color: var(--ink-2); margin: 0 0 1rem; max-width: 60ch; }
.crumb-up { font-size: .9rem; color: var(--muted); text-decoration: none; }
.crumb-up:hover { color: var(--accent-ink); }
.search--big { display: flex; gap: .5rem; max-width: 560px; margin: .5rem 0 1rem; }
.search--big input { flex: 1; width: auto; font-size: 1.05rem; padding: .7rem 1.1rem; }
.search--big button { font: 700 1rem var(--sans); background: var(--ink); color: var(--paper); border: 0; border-radius: 999px; padding: 0 1.3rem; cursor: pointer; }

/* ---------- post ---------- */
.preview-note { background: var(--accent-soft); border-left: 3px solid var(--accent); padding: .7rem 1rem; margin: 1.5rem 0 0; font-size: .92rem; }
.preview-note a { color: var(--accent-ink); font-weight: 700; margin-left: .5rem; }
.post-grid { display: grid; grid-template-columns: minmax(0, 1fr) var(--rail); gap: var(--gap); align-items: start; margin-top: 2rem; }
.post { max-width: 720px; min-width: 0; }
.post--page { margin: 2rem 0 4rem; }
.crumbs { display: flex; gap: .5rem; align-items: center; font-size: .88rem; color: var(--muted); margin-bottom: 1.1rem; }
.crumbs a { text-decoration: none; color: var(--muted); }
.crumbs a:last-child { color: var(--accent-ink); font-weight: 700; }
.post__title { font: 800 clamp(2.05rem, 4.6vw, 3.35rem)/1.06 var(--sans); letter-spacing: -.032em; margin: 0 0 1rem; text-wrap: balance; }
.post__dek { font: 400 1.22rem/1.55 var(--serif); color: var(--ink-2); margin: 0 0 1.1rem; }
.post__meta { padding-bottom: 1.4rem; border-bottom: 1px solid var(--line); }
.post__hero { margin: 1.75rem 0 0; }
.post__hero img { width: 100%; border-radius: 6px; aspect-ratio: 16/9; object-fit: cover; }
/* The rail column runs the full height of the article so the contents list can follow the reader.
   By default the sidebar ad sits at the top and scrolls away; "sticky sidebar" moves it into the rail. */
.post__aside { align-self: stretch; display: flex; flex-direction: column; gap: 2rem; padding-top: 2.6rem; }
.post__rail { position: sticky; top: 1.25rem; display: flex; flex-direction: column; gap: 2rem; }
@media (max-width: 1000px) {
  .post-grid { grid-template-columns: minmax(0, 1fr); }
  .post__aside { padding-top: 0; }
  .post__rail { position: static; }
  .post__aside .toc--rail { display: none; }
  /* on phones the post already has in-article and end-of-article ads; Google allows hiding
     a responsive unit with display:none per screen size (no ad request is made) */
  .post__aside .side-ad { display: none; }
}

.toc ul { list-style: none; margin: 0; padding: 0; }
.toc--rail ul { border-left: 2px solid var(--line); }
.toc--rail a { display: block; text-decoration: none; color: var(--muted); font-size: .9rem; line-height: 1.35; padding: .35rem 0 .35rem .9rem; margin-left: -2px; border-left: 2px solid transparent; }
.toc--rail a:hover { color: var(--ink); }
.toc--rail a[aria-current="true"] { color: var(--ink); border-left-color: var(--accent); font-weight: 500; }
.toc--inline { display: none; margin: 1.5rem 0 0; border: 1px solid var(--line); border-radius: 6px; padding: .8rem 1rem; }
.toc--inline summary { font-weight: 700; cursor: pointer; }
.toc--inline ul { margin-top: .6rem; }
.toc--inline a { display: block; padding: .3rem 0; color: var(--accent-ink); text-decoration: none; }
@media (max-width: 1000px) { .toc--inline { display: block; } }

/* ---------- article body ---------- */
.prose { font: 400 1.125rem/1.75 var(--serif); color: var(--ink); margin-top: 1.75rem; overflow-wrap: break-word; }
.prose > * { margin: 0 0 1.25em; }
.prose h2, .prose h3, .prose h4 { font-family: var(--sans); color: var(--ink); scroll-margin-top: 1.25rem; text-wrap: balance; }
.prose h2 { font-size: 1.65rem; line-height: 1.2; font-weight: 800; letter-spacing: -.02em; margin: 2.1em 0 .6em; }
.prose h3 { font-size: 1.25rem; line-height: 1.3; font-weight: 700; margin: 1.7em 0 .5em; }
.prose h4 { font-size: 1.05rem; font-weight: 700; margin: 1.5em 0 .4em; }
.prose a { color: var(--accent-ink); text-decoration-thickness: 1px; text-underline-offset: 3px; }
.prose a:hover { text-decoration-thickness: 2px; }
.prose strong { font-weight: 600; }
.prose img { border-radius: 6px; margin: 1.75em 0; }
.prose figure { margin: 1.75em 0; }
.prose figcaption { font: .85rem/1.45 var(--sans); color: var(--muted); margin-top: .5rem; }
.prose hr { border: 0; height: 1px; background: var(--line); margin: 2.5em 0; }
.prose blockquote { margin: 1.75em 0; padding: .2em 0 .2em 1.2em; border-left: 3px solid var(--accent); color: var(--ink-2); font-style: italic; }
.prose blockquote > :last-child { margin-bottom: 0; }
.prose code { font: .86em var(--mono); background: var(--code-bg); padding: .12em .38em; border-radius: 4px; }
.prose pre { background: #131A24; color: #E4E9F0; padding: 1.1rem 1.25rem; border-radius: 6px; overflow-x: auto; font-size: .9rem; line-height: 1.6; }
.prose pre code { background: none; padding: 0; color: inherit; font-size: inherit; }

.prose ul { padding-left: 1.3em; }
.prose ul > li { margin: .35em 0; padding-left: .2em; }
.prose ul > li::marker { color: var(--accent); }
.prose li > ul, .prose li > ol { margin: .4em 0; }

/* Numbered lists are steps: the signature of a how-to site. Big numerals, joined by a line. */
.prose ol { list-style: none; padding: 0; counter-reset: step; }
.prose ol > li {
  counter-increment: step; position: relative;
  padding: 0 0 1.1em 3.4rem; margin: 0; min-height: 2.6rem;
}
.prose ol > li::before {
  content: counter(step);
  position: absolute; left: 0; top: -.1rem;
  width: 2.35rem; height: 2.35rem; display: grid; place-items: center;
  font: 800 1.15rem/1 var(--sans); color: var(--accent-ink);
  border: 2px solid var(--accent); border-radius: 50%; background: var(--paper);
}
.prose ol > li:not(:last-child)::after {
  content: ""; position: absolute; left: calc(1.175rem - 1px); top: 2.35rem; bottom: .1rem;
  width: 2px; background: var(--accent-soft);
}
.prose ol > li > :last-child { margin-bottom: 0; }
.prose li ol > li { padding-left: 2.6rem; }
.prose li ol > li::before { width: 1.8rem; height: 1.8rem; font-size: .9rem; }
.prose li ol > li:not(:last-child)::after { left: calc(.9rem - 1px); top: 1.8rem; }

.table-wrap { overflow-x: auto; margin: 1.75em 0; border: 1px solid var(--line); border-radius: 6px; }
.prose table { width: 100%; border-collapse: collapse; font: .95rem/1.45 var(--sans); }
.prose th, .prose td { padding: .65rem .85rem; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; }
.prose th { background: var(--accent-soft); font-weight: 700; }
.prose tr:last-child td { border-bottom: 0; }

.tags { display: flex; flex-wrap: wrap; gap: .5rem .9rem; align-items: baseline; font-size: .9rem; margin: 2rem 0 0; padding-top: 1.25rem; border-top: 1px solid var(--line); }
.tags span { color: var(--muted); }
.tags a { color: var(--accent-ink); text-decoration: none; font-weight: 500; }
.tags a:hover { text-decoration: underline; }

.pn { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; margin: 2.5rem 0 0; }
.pn a { text-decoration: none; font-weight: 700; line-height: 1.3; display: flex; flex-direction: column; gap: .3rem; padding-top: .9rem; border-top: 3px solid var(--ink); }
.pn a span { font-weight: 500; font-size: .85rem; color: var(--muted); }
.pn a:hover { color: var(--accent-ink); }
.pn__next { text-align: right; }
@media (max-width: 640px) { .pn { grid-template-columns: 1fr; } .pn__next { text-align: left; } }

.related { margin: 3.5rem 0 4rem; }
.related__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.75rem; }
.rel { text-decoration: none; display: flex; flex-direction: column; gap: .35rem; }
.rel img { aspect-ratio: 16/10; object-fit: cover; border-radius: 4px; margin-bottom: .4rem; }
.rel__cat { font-size: .82rem; font-weight: 700; color: var(--accent-ink); }
.rel__title { font-weight: 700; line-height: 1.3; }
.rel:hover .rel__title { text-decoration: underline; }
@media (max-width: 900px) { .related__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* ---------- ads ----------
   Each slot reserves its height so the page doesn't shift when the ad loads
   (layout shift hurts Core Web Vitals and therefore search traffic). Slots that
   AdSense leaves unfilled collapse instead of leaving a hole. */
.ad { margin: 2.25rem auto; text-align: center; overflow: hidden; clear: both; }
.ad__label { display: block; font: 500 .72rem/1 var(--sans); color: var(--muted); margin: 0 0 .5rem; letter-spacing: .02em; }
.ad--header, .ad--footer { min-height: 118px; margin: 1rem auto; }
.ad--in-article { min-height: 270px; padding: 1rem 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.ad--after-content { min-height: 300px; }
.ad--in-feed { min-height: 150px; margin: 0; padding: 1.4rem 0; border-bottom: 1px solid var(--line); }
.ad--sidebar { min-height: 620px; margin: 0; }
.wrap--ad .ad { margin: 1rem auto; }
.ad:has(ins[data-ad-status="unfilled"]) { display: none; }
@media (max-width: 1000px) { .ad--sidebar { min-height: 300px; } }

.ad--preview .ad__ph {
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .25rem;
  min-height: inherit; height: calc(100% - 1.2rem); padding: 1.5rem 1rem;
  border: 1.5px dashed color-mix(in srgb, var(--accent) 45%, var(--line)); border-radius: 6px;
  background: repeating-linear-gradient(135deg, transparent 0 10px, var(--accent-soft) 10px 20px);
  font: 500 .85rem/1.3 var(--sans); color: var(--muted);
}
.ad--preview .ad__ph strong { color: var(--ink); font-size: .95rem; }
.ad--header .ad__ph, .ad--footer .ad__ph { min-height: 90px; }
.ad--in-article .ad__ph { min-height: 250px; }
.ad--after-content .ad__ph { min-height: 280px; }
.ad--in-feed .ad__ph { min-height: 120px; }
.ad--sidebar .ad__ph { min-height: 600px; }
@media (max-width: 1000px) { .ad--sidebar .ad__ph { min-height: 250px; } }

/* ---------- empty / 404 ---------- */
.empty, .notfound { padding: 4rem 0 5rem; max-width: 640px; }
.empty h1, .notfound h1 { font: 800 clamp(2rem, 4vw, 2.8rem)/1.1 var(--sans); letter-spacing: -.03em; margin: 0 0 .8rem; }
.empty p, .notfound p { font: 1.1rem/1.6 var(--serif); color: var(--ink-2); }

/* ---------- footer ---------- */
.foot { background: var(--foot); color: var(--foot-ink); margin-top: 2rem; padding: 3rem 0 1.5rem; }
.foot__grid { display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 2rem; }
.foot nav { display: flex; flex-direction: column; gap: .45rem; }
.foot a { color: var(--foot-ink); text-decoration: none; font-size: .93rem; }
.foot a:hover { color: #fff; text-decoration: underline; }
.brand--foot { color: #fff; font-size: 1.25rem; }
.foot__tag { margin: .6rem 0 0; font: 1rem/1.5 var(--serif); max-width: 36ch; }
.foot__h { font-weight: 800; color: #fff; margin: 0 0 .3rem; font-size: .93rem; }
.foot__base { margin-top: 2.5rem; font-size: .85rem; }
.foot__base p { margin: 0; padding-top: 1.25rem; border-top: 1px solid color-mix(in srgb, var(--foot-ink) 22%, transparent); }
@media (max-width: 760px) { .foot__grid { grid-template-columns: 1fr 1fr; } .foot__grid > div:first-child { grid-column: 1 / -1; } }

/* ---------- Khmer sites (language code "km") ----------
   Khmer needs fonts that carry its script, no negative tracking, and taller lines for stacked vowels. */
html[lang^="km"] {
  --sans: "Kantumruy Pro", "Schibsted Grotesk", ui-sans-serif, system-ui, sans-serif;
  --serif: "Noto Serif Khmer", "Literata", Georgia, serif;
}
html[lang^="km"] body * { letter-spacing: 0 !important; }
html[lang^="km"] .prose { line-height: 2; }
html[lang^="km"] .post__title, html[lang^="km"] .lead__title, html[lang^="km"] .list-head h1 { line-height: 1.35; }
