
:root{--red:#ff4d3d;--red2:#ff7a45;--blue:#2f7bff;--ink:#171a22;--muted:#7a8194;--bg:#f4f6fb;--card:#fff;--line:#eef0f6;--radius:16px;--shadow:0 8px 30px rgba(23,26,34,.07)}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html{font-size:16px}
body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;line-height:1.6;padding-bottom:76px;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input{font:inherit}
.wrap{max-width:1080px;margin:0 auto;padding:0 14px}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.header-inner{max-width:1080px;margin:0 auto;padding:10px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.brand{display:flex;align-items:center;gap:9px}
.brand-mark{width:36px;height:36px;border-radius:11px;background:linear-gradient(135deg,#ff7a45,#ff2d55);color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center;font-size:19px;box-shadow:0 6px 14px rgba(255,77,61,.3)}
.brand-text{display:flex;flex-direction:column;line-height:1.15}
.brand-text b{font-size:17px;letter-spacing:.5px}
.brand-text small{color:var(--muted);font-size:11px;letter-spacing:.5px}
.top-nav{display:flex;gap:6px}
.top-nav a{padding:7px 13px;border-radius:999px;font-size:14px;color:#4a5161;font-weight:600}
.top-nav a:hover{background:#f5f6fa;color:var(--ink)}
.top-nav a.on{background:linear-gradient(135deg,#ff7a45,#ff2d55);color:#fff;box-shadow:0 6px 16px rgba(255,77,61,.25)}
.hero{position:relative;margin:14px auto 0;width:calc(100% - 28px);max-width:1080px;border-radius:22px;overflow:hidden;background:#101625;color:#fff;min-height:190px;display:flex;align-items:flex-end;box-shadow:var(--shadow)}
.hero-discount{background-image:linear-gradient(90deg,rgba(8,12,24,.78) 0%,rgba(8,12,24,.25) 58%,rgba(8,12,24,0) 100%),var(--hero);background-size:cover;background-position:center}
.hero-free{background:linear-gradient(135deg,#2d7dff 0%,#54c2ff 55%,#8ce0ff 100%)}
.hero-inner{padding:26px 22px;max-width:640px}
.hero-kicker{display:inline-block;font-size:12px;font-weight:700;letter-spacing:2px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.3);padding:4px 10px;border-radius:999px;margin-bottom:8px}
.hero h1{margin:0 0 4px;font-size:30px;letter-spacing:1px;text-shadow:0 3px 12px rgba(0,0,0,.35)}
.hero p{margin:0;font-size:14px;opacity:.92}
.hero-free .hero-inner{padding:34px 24px}
.hero-free h1{font-size:34px}
.hero-stats{display:flex;gap:18px;margin-top:12px;font-size:13px;opacity:.95}
.hero-stats b{font-size:19px;margin-right:4px}
.banner{max-width:1080px;margin:14px auto 0;padding:0 14px}
.banner img{width:100%;border-radius:18px;box-shadow:var(--shadow);display:block}
.stat-strip{max-width:1080px;margin:10px auto 0;padding:0 14px;display:flex;gap:8px}
.stat-strip span{flex:1;background:#fff;border-radius:12px;padding:8px 6px;text-align:center;font-size:12px;color:var(--muted);box-shadow:0 4px 16px rgba(23,26,34,.05)}
.stat-strip b{display:block;color:var(--ink);font-size:16px;line-height:1.2}
.page-h1{max-width:1080px;margin:18px auto 0;padding:0 14px;font-size:22px;letter-spacing:.5px}
.section-head{max-width:1080px;margin:22px auto 10px;padding:0 14px;display:flex;align-items:flex-end;justify-content:space-between}
.section-head h2{margin:0;font-size:20px;position:relative;padding-left:12px}
.section-head h2:before{content:"";position:absolute;left:0;top:4px;bottom:3px;width:4px;border-radius:4px;background:linear-gradient(180deg,#ff7a45,#ff2d55)}
.section-head span{color:var(--muted);font-size:13px}
.searchbar{max-width:1080px;margin:0 auto 10px;padding:0 14px}
.searchbar input{width:100%;border:1px solid var(--line);background:#fff;border-radius:12px;padding:10px 14px;outline:none;font-size:14px;box-shadow:0 2px 10px rgba(23,26,34,.03)}
.searchbar input:focus{border-color:#ffb3a6;box-shadow:0 0 0 3px rgba(255,77,61,.1)}
.game-list{max-width:1080px;margin:0 auto;padding:0 14px 10px;display:flex;flex-direction:column;gap:10px}
.game-card{display:flex;align-items:center;gap:12px;background:var(--card);border-radius:var(--radius);padding:12px;box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.6);transition:transform .18s ease,box-shadow .18s ease}
.game-card:hover{transform:translateY(-2px);box-shadow:0 14px 36px rgba(23,26,34,.11)}
.box-card{background:linear-gradient(180deg,#fff8f5 0%,#fff 65%);border:1px solid #ffe0d6}
.box-card .card-meta{font-size:12.5px}
.card-main{display:flex;align-items:center;gap:12px;flex:1;min-width:0}
.card-icon{width:78px;height:78px;border-radius:16px;object-fit:cover;background:#eef1f7;flex:none;box-shadow:0 5px 14px rgba(23,26,34,.12)}
.card-info{min-width:0;flex:1}
.card-info h3{margin:0 0 3px;font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.card-meta{margin:0 0 6px;color:var(--muted);font-size:12.5px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.card-meta .score{color:#ff8a00;font-weight:700}
.tag-row{display:flex;gap:6px;flex-wrap:wrap;max-height:24px;overflow:hidden}
.tag{font-size:11.5px;padding:2px 7px;border-radius:5px;background:#f2f5fb;color:#5c6b86;border:1px solid #e6ecf6}
.tag.hot{background:#fff2ef;color:#ff4d3d;border-color:#ffd7cf}
.btn-download{flex:none;min-width:70px;text-align:center;background:var(--blue);color:#fff;font-weight:700;font-size:14px;padding:9px 16px;border-radius:999px;box-shadow:0 6px 16px rgba(47,123,255,.28)}
.btn-download:active{transform:scale(.96)}
.btn-download.disabled{background:#e9ecf3;color:#9aa0ae;box-shadow:none;pointer-events:none;font-weight:600}
.dl-disabled{flex:1;border-radius:13px;padding:12px 6px;text-align:center;background:#e9ecf3;color:#8a90a0;font-weight:600;font-size:14px}
.detail-topbar{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.95);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:10px 14px;font-weight:700}
.detail-topbar a{font-size:14px;color:#4a5161;font-weight:600}
.game-hero{position:relative;max-width:1080px;margin:14px auto 0;border-radius:22px;overflow:hidden;min-height:210px;display:flex;align-items:flex-end;color:#fff;box-shadow:var(--shadow)}
.game-hero-bg{position:absolute;inset:0;background-image:linear-gradient(180deg,rgba(10,14,25,.12) 0%,rgba(10,14,25,.82) 100%),var(--poster);background-size:cover;background-position:center;transform:scale(1.03)}
.game-hero-content{position:relative;padding:20px;display:flex;align-items:flex-end;gap:14px;width:100%}
.game-icon{width:94px;height:94px;border-radius:20px;object-fit:cover;border:2px solid rgba(255,255,255,.75);box-shadow:0 10px 30px rgba(0,0,0,.3);flex:none}
.game-hero h1{margin:0 0 3px;font-size:26px;line-height:1.2;text-shadow:0 2px 10px rgba(0,0,0,.4)}
.game-sub{margin:0 0 8px;font-size:13px;opacity:.92}
.game-badges{display:flex;gap:6px;flex-wrap:wrap}
.badge{font-size:11.5px;padding:3px 8px;border-radius:6px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.32);backdrop-filter:blur(4px)}
.badge.discount{background:linear-gradient(135deg,#ff7a45,#ff2d55);border-color:transparent;font-weight:700}
.detail-main{max-width:1080px;margin:14px auto 0;padding:0 14px;display:flex;flex-direction:column;gap:12px}
.panel{background:var(--card);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow)}
.panel h2{margin:0 0 10px;font-size:17px;display:flex;align-items:center;justify-content:space-between}
.panel h2:after{content:"";display:none}
.panel .score{color:#ff8a00;font-size:14px}
.panel p{margin:0 0 8px;color:#3d4454;font-size:14.5px}
.panel p:last-child{margin-bottom:0}
.benefits{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}
.benefits li{position:relative;padding-left:20px;font-size:14px;color:#3d4454}
.benefits li:before{content:"★";position:absolute;left:0;top:0;color:#ff8a00;font-size:12px}
.shots{display:flex;gap:10px;overflow-x:auto;padding-bottom:4px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}
.shots img{width:220px;height:124px;object-fit:cover;border-radius:12px;flex:none;scroll-snap-align:start;background:#eef1f7;cursor:zoom-in}
.video-box{position:relative;border-radius:12px;overflow:hidden;background:#0b0f19}
.video-box video{width:100%;display:block;max-height:440px}
.info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;margin:0}
.info-grid div{display:flex;justify-content:space-between;gap:10px;border-bottom:1px dashed var(--line);padding-bottom:7px;font-size:13.5px}
.info-grid dt{color:var(--muted);flex:none}
.info-grid dd{margin:0;text-align:right;color:#2f3542;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.related{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.related a{background:#f8fafd;border:1px solid var(--line);border-radius:12px;padding:8px;display:flex;flex-direction:column;gap:6px;font-size:12.5px}
.related img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:9px}
.related span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}
.related small{color:var(--muted);font-size:11px}
.download-bar{position:fixed;left:0;right:0;bottom:0;z-index:60;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-top:1px solid var(--line);padding:9px 14px calc(9px + env(safe-area-inset-bottom));display:flex;gap:10px;max-width:1080px;margin:0 auto}
.download-bar .dl{flex:1;border-radius:13px;padding:8px 6px;text-align:center;color:#fff;font-weight:700;line-height:1.2;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:48px}
.download-bar .dl span{font-size:15px}
.download-bar .dl small{font-size:11px;font-weight:500;opacity:.9}
.dl-android{background:linear-gradient(135deg,#ff7a45,#ff2d55);box-shadow:0 8px 18px rgba(255,77,61,.28)}
.dl-ios{background:linear-gradient(135deg,#2f7bff,#26b0ff);box-shadow:0 8px 18px rgba(47,123,255,.26)}
.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:45;background:rgba(255,255,255,.97);border-top:1px solid var(--line);display:flex;justify-content:space-around;padding:6px 4px calc(6px + env(safe-area-inset-bottom))}
.tabbar a{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:11px;color:#8a90a0;min-width:70px;font-weight:600}
.tabbar svg{width:22px;height:22px;fill:currentColor}
.tabbar a.on{color:#ff4d3d}
.detail-page{padding-bottom:82px}
.detail-page .tabbar{display:none}
.crumb{max-width:1080px;margin:10px auto 0;padding:0 14px;font-size:12px;color:var(--muted)}
.crumb a{color:#5b6478}
.crumb i{font-style:normal;margin:0 5px;color:#c3c8d4}
.empty{padding:40px 16px;text-align:center;color:var(--muted)}
.lightbox{position:fixed;inset:0;z-index:100;background:rgba(8,10,16,.92);display:none;align-items:center;justify-content:center;padding:16px}
.lightbox.on{display:flex}
.lightbox img{max-width:100%;max-height:100%;border-radius:10px;object-fit:contain}
.lightbox-close{position:absolute;top:14px;right:18px;color:#fff;font-size:30px;line-height:1}
.expand-btn{display:inline-block;margin-top:6px;color:var(--red);font-size:13px;font-weight:600;cursor:pointer}
.summary-text{display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
.summary-text.open{display:block}
.footer-note{max-width:1080px;margin:16px auto 0;padding:0 14px 18px;color:#9aa0ae;font-size:12px;text-align:center}
@media(min-width:760px){
  .game-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .card-icon{width:86px;height:86px}
  .related{grid-template-columns:repeat(6,minmax(0,1fr))}
  .shots img{width:260px;height:146px}
  .download-bar{left:50%;transform:translateX(-50%);width:100%;border-radius:0}
  .detail-page{padding-bottom:90px}
}
@media(max-width:560px){
  .top-nav{display:none}
  .brand-text small{display:inline}
}
@media(max-width:420px){
  .hero h1{font-size:26px}
  .brand-text small{display:none}
  .top-nav a{padding:6px 10px;font-size:13px}
  .card-icon{width:70px;height:70px}
  .btn-download{min-width:62px;padding:8px 12px}
}

.tabbar{bottom:28px}
.download-bar{bottom:28px}
body{padding-bottom:104px}
.detail-page{padding-bottom:118px}
.tabbar svg{width:24px;height:24px}
/* pagination */
.pager{max-width:1080px;margin:18px auto 26px;padding:0 14px;display:flex;justify-content:center;align-items:center;gap:6px;flex-wrap:wrap}
.pager a,.pager span{min-width:34px;height:34px;padding:0 10px;border-radius:10px;background:#fff;border:1px solid #e8ebf2;display:inline-flex;align-items:center;justify-content:center;font-size:13px;color:#5b6478;box-shadow:0 2px 8px rgba(23,26,34,.04)}
.pager a:hover{border-color:#ffb3a6;color:#ff4d3d}
.pager .on{background:linear-gradient(135deg,#ff7a45,#ff2d55);border-color:transparent;color:#fff;font-weight:700}
.pager .disabled{opacity:.45;pointer-events:none}
.pager .dots{background:transparent;border:0;box-shadow:none;color:#9aa0ae}
.searchbar{display:flex;gap:10px;align-items:stretch;max-width:760px;margin:0 auto 16px;padding:0 14px}
.searchbar input{flex:1;width:auto!important;height:50px;border:1px solid #e6e9f0;border-radius:15px;padding:0 16px;font-size:15px;background:#fff;box-shadow:0 4px 14px rgba(23,26,34,.04);outline:none}
.searchbar input:focus{border-color:#ffb3a6;box-shadow:0 0 0 3px rgba(255,90,76,.1)}
.searchbar button{height:50px;min-width:100px;border:0;border-radius:15px;background:linear-gradient(135deg,#ff5a4c 0%,#ff1f3d 100%);color:#fff;font-size:16px;font-weight:700;letter-spacing:2px;padding:0 24px;cursor:pointer;box-shadow:0 8px 18px rgba(255,45,45,.28);display:flex;align-items:center;justify-content:center;transition:transform .15s ease,box-shadow .15s ease}
.searchbar button:active{transform:scale(.98)}
@media(max-width:420px){.searchbar button{min-width:88px;padding:0 18px;font-size:15px}}
.download-bar .dl-game{flex:1;width:100%;min-height:52px;border-radius:13px;background:#ff2d2d!important;color:#fff!important;display:flex;align-items:center;justify-content:center;font-size:17px;font-weight:700;text-decoration:none!important;box-shadow:0 8px 18px rgba(255,45,45,.32);position:relative;z-index:2}
.download-bar .dl-game span{color:#fff!important;font-size:17px;font-weight:700;letter-spacing:1px}
.brand-mark{object-fit:cover;background:#fff;padding:0}
.card-meta em{font-style:normal;color:#ff4d3d;font-weight:700}

/* detail two columns */
.detail-layout{max-width:1080px;margin:14px auto 0;padding:0 14px;display:grid;grid-template-columns:300px minmax(0,1fr);gap:16px;align-items:start}
.detail-side{position:sticky;top:76px;background:#fff;border-radius:18px;padding:18px;box-shadow:var(--shadow)}
.side-icon{width:120px;height:120px;border-radius:24px;object-fit:cover;margin:0 auto 12px;box-shadow:0 10px 26px rgba(23,26,34,.18);background:#eef1f7}
.detail-side h1{margin:0 0 4px;font-size:20px;line-height:1.35;text-align:center}
.side-sub{margin:0 0 10px;font-size:12.5px;color:var(--muted);text-align:center;line-height:1.5}
.side-badges{display:flex;gap:5px;flex-wrap:wrap;justify-content:center;margin-bottom:12px}
.side-downloads{display:flex;flex-direction:column;gap:8px;margin:12px 0}
.side-downloads a{display:flex;align-items:center;justify-content:center;gap:6px;height:44px;border-radius:12px;color:#fff;font-weight:700;font-size:15px;box-shadow:0 8px 18px rgba(23,26,34,.14)}
.side-android{background:linear-gradient(135deg,#2eb872,#14a05a)}
.side-ios{background:linear-gradient(135deg,#2f7bff,#1aa3ff)}
.side-meta{display:grid;grid-template-columns:1fr;gap:7px;margin:12px 0;padding:10px 0;border-top:1px dashed var(--line);border-bottom:1px dashed var(--line);font-size:12.5px}
.side-meta div{display:flex;justify-content:space-between;gap:10px}
.side-meta dt{color:var(--muted)}
.side-meta dd{margin:0;font-weight:600;color:#3d4454;text-align:right}
.side-back{display:block;text-align:center;font-size:13px;color:#8a90a0;padding:8px 0 0}
.detail-article{background:#fff;border-radius:18px;padding:20px;box-shadow:var(--shadow);min-width:0}
.article-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.article-head h2{margin:0;font-size:18px;position:relative;padding-left:12px}
.article-head h2:before{content:"";position:absolute;left:0;top:4px;bottom:3px;width:4px;border-radius:4px;background:linear-gradient(180deg,#ff7a45,#ff2d55)}
.article-head .score{color:#ff8a00;font-weight:700;font-size:14px}
.article-lead{margin:0 0 10px;color:#3d4454;font-size:14.5px;line-height:1.85}
.article-text{margin:0;color:#4a5161;font-size:14.5px;line-height:1.9;white-space:pre-line}
.article-text p{margin:0 0 10px}
.block-title{font-size:16px;margin:18px 0 10px;padding-left:10px;border-left:4px solid #ff7a45;line-height:1.2}
.video-box{position:relative;border-radius:14px;overflow:hidden;background:#0b0f19;margin:12px 0}
.video-box video{width:100%;display:block;max-height:460px}

/* screenshot slider */
.shot-slider{position:relative;border-radius:14px;overflow:hidden;background:#0b0f19;touch-action:pan-y}
.shot-track{display:flex;transition:transform .35s ease;will-change:transform}
.shot-slider{position:relative;background:#fff;border-radius:12px;overflow:hidden;padding:10px}
.shot-track{display:flex;transition:transform .35s ease;will-change:transform}
.shot-slide{flex:0 0 100%;min-width:0}
.shot-pair{display:grid;grid-template-columns:repeat(4,1fr);gap:2px}
.shot-pair img{width:100%;height:auto;max-height:360px;object-fit:contain;background:#fff;border-radius:8px;display:block;cursor:zoom-in}
.shot-pair.partial{display:flex;justify-content:center;gap:2px}
.shot-pair.partial img{width:calc((100% - 24px)/4);flex:0 0 calc((100% - 24px)/4)}
.shot-mobile{display:none}
.shot-pair-2{grid-template-columns:1fr 1fr;gap:2px}
.shot-ph{background:#fff;border-radius:8px}
.shot-arrow{position:absolute;top:44%;transform:translateY(-50%);width:36px;height:36px;border:0;background:rgba(255,255,255,.95);color:#222;font-size:22px;line-height:1;border-radius:50%;cursor:pointer;z-index:9;box-shadow:0 2px 10px rgba(0,0,0,.3)}
.shot-arrow.prev{left:8px}.shot-arrow.next{right:8px}
.shot-dots{display:flex;justify-content:center;gap:6px;margin-top:10px}
.shot-dots i{width:7px;height:7px;border-radius:50%;background:#d8dce6;display:block}
.shot-dots i.on{background:#ff2d2d;width:18px;border-radius:4px}
@media(max-width:760px){
.tabbar{bottom:0}
.download-bar{bottom:0}
.game-hero{margin:12px 14px 0}
body{padding-bottom:76px}
.detail-page{padding-bottom:90px}
.searchbar{margin:0 0 12px}
.shot-desktop{display:none}
.shot-mobile{display:block}
.shot-slider{padding:6px}
.shot-pair{grid-template-columns:1fr 1fr;gap:6px}
.shot-pair img{max-height:310px}
.shot-pair.partial img{width:calc((100% - 6px)/2);flex-basis:calc((100% - 6px)/2)}
.shot-pair-2{grid-template-columns:1fr 1fr;gap:2px}
}
@media(min-width:761px){.shot-slider{margin:0 -20px}.shot-pair img{max-height:400px}}
.benefit-box{margin-top:14px;background:linear-gradient(180deg,#fff8f5 0%,#fff 100%);border:1px solid #ffe2d8;border-radius:14px;padding:14px}
.benefit-box h3{margin:0 0 8px;font-size:16px;color:#e8422f;display:flex;align-items:center;gap:6px}
.benefit-box h3:before{content:"★";font-size:13px}
.benefit-box ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:7px}
.benefit-box li{position:relative;padding-left:16px;font-size:13.5px;color:#5a3a32;line-height:1.7}
.benefit-box li:before{content:"";position:absolute;left:0;top:.62em;width:5px;height:5px;border-radius:50%;background:#ff7a45}

/* info */
.info-box{margin-top:14px;border:1px solid var(--line);border-radius:14px;padding:14px;background:#fafbfe}
.info-box h3{margin:0 0 10px;font-size:16px}
.info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;margin:0}
.info-grid div{display:flex;justify-content:space-between;gap:10px;border-bottom:1px dashed #e8ebf2;padding-bottom:6px;font-size:13px}
.info-grid dt{color:var(--muted);flex:none}
.info-grid dd{margin:0;text-align:right;font-weight:600;color:#3d4454;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

@media(max-width:760px){
  .detail-layout{grid-template-columns:1fr;gap:12px}
  .detail-side{position:static}
  .side-icon{width:88px;height:88px;border-radius:20px;float:left;margin:0 12px 8px 0}
  .detail-side h1{text-align:left;font-size:18px;padding-top:4px}
  .side-sub{text-align:left}
  .side-badges{justify-content:flex-start;clear:both}
  .side-downloads{display:none}
  .side-meta{grid-template-columns:1fr}
  .detail-article{padding:16px}
  .shot-slide{padding:6px}.shot-pair{gap:6px}.shot-pair img{height:310px}
  .info-grid{grid-template-columns:1fr}
}
