a542eb5b5b
同 landing/install 根因(自產 SVG outline compound path,a/u/n 字腔洞 未畫進去)與修法:兩處 .brand 內嵌 svg(登入頁×2)改用官方 arcrun-cis/arcrun-lockup-h-ink.png + arcrun-lockup-h-paper-on-ink.png as base64 data URI。本頁主題靠 data-theme 屬性切換(非 media query), :root[data-theme="dark"] 時顯示 -paper-on-ink,預設(無屬性=light) 顯示 -ink。favicon(另外的 favicon.svg/.ico)未動。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
1780 lines
286 KiB
HTML
1780 lines
286 KiB
HTML
<!doctype html>
|
||
<html lang="zh-Hant">
|
||
<head>
|
||
<meta charset="utf-8"/>
|
||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||
<title>Arcrun Portal</title>
|
||
<link rel="icon" href="/favicon.svg" type="image/svg+xml">
|
||
<link rel="alternate icon" href="/favicon.ico" sizes="16x16 32x32 48x48">
|
||
<link rel="apple-touch-icon" href="/apple-touch-icon.png">
|
||
<script>
|
||
// 主題預載(防閃色):預設淺色,選擇存 localStorage(與 console 同設計語言、不同 key)
|
||
document.documentElement.setAttribute('data-theme', (function () {
|
||
try { return localStorage.getItem('arcrun_portal_theme') === 'dark' ? 'dark' : 'light'; } catch (e) { return 'light'; }
|
||
})());
|
||
</script>
|
||
<style>
|
||
* { box-sizing: border-box; }
|
||
/* ── 主題色板(2026-08-01 CIS 第三輪:leo 親驗「Portal 裡的色彩都沒改」——
|
||
舊「宣紙米白紙紋+墨字+琥珀金」整套換成 Arcrun CIS token。
|
||
Ink #17181A/Paper #FDFCFB/Canvas #F2F1ED/Muted #9A978F/
|
||
Relation #B04A2F(唯一強調色,≤5% 螢幕)/Relation-dark #D9784F(暗色底用)。
|
||
── */
|
||
:root {
|
||
--paper-a: #F2F1ED; --paper-b: #ECEAE4;
|
||
--ink: #17181A; --ink-rgb: 23,24,26;
|
||
--amber: #B04A2F; --amber-rgb: 176,74,47;
|
||
--ok: #1d7a48; --ok-rgb: 29,122,72; --ok-soft: #1d6b40;
|
||
--err: #b03a26; --err-rgb: 176,58,38;
|
||
--well: rgba(23,24,26,.06); --well2: rgba(23,24,26,.08);
|
||
--bar-bg: #ECEAE4; --track: rgba(23,24,26,.12); --knob: #FDFCFB;
|
||
}
|
||
:root[data-theme="dark"] {
|
||
--paper-a: #1b1c1e; --paper-b: #1e1f21;
|
||
--ink: #FDFCFB; --ink-rgb: 253,252,251;
|
||
--amber: #D9784F; --amber-rgb: 217,120,79;
|
||
--ok: #7fe0a8; --ok-rgb: 63,190,120; --ok-soft: #a8e8c4;
|
||
--err: #e58575; --err-rgb: 217,95,76;
|
||
--well: rgba(0,0,0,.25); --well2: rgba(0,0,0,.3);
|
||
--bar-bg: #17181A; --track: rgba(255,255,255,.08); --knob: #FDFCFB;
|
||
}
|
||
html, body { margin: 0; background: repeating-linear-gradient(0deg,var(--paper-a) 0px,var(--paper-a) 3px,var(--paper-b) 3px,var(--paper-b) 4px); color: var(--ink);
|
||
font-family: -apple-system, "PingFang TC", "Microsoft JhengHei", system-ui, sans-serif; font-size: 16px; -webkit-font-smoothing: antialiased; }
|
||
input, textarea, button { font-family: inherit; }
|
||
::placeholder { color: rgba(var(--ink-rgb),.35); }
|
||
input:focus { outline: 2px solid rgba(var(--amber-rgb),.5); outline-offset: 1px; }
|
||
a { color: var(--amber); }
|
||
.serif { font-family: 'Songti TC','LiSong Pro',PMingLiU,serif; }
|
||
.mono { font-family: ui-monospace, Menlo, monospace; }
|
||
.muted { color: rgba(var(--ink-rgb),.55); }
|
||
.dim { color: rgba(var(--ink-rgb),.4); }
|
||
.err { color: var(--err); }
|
||
.ok { color: var(--ok); }
|
||
|
||
/* ── auth 全屏(.view.on 的 block 會蓋 flex → 補 .authwrap.view.on,console 同修)── */
|
||
.authwrap { min-height: 100vh; display: flex; align-items: center; justify-content: center; padding: 24px; }
|
||
.authbox { width: 100%; max-width: 400px; display: flex; flex-direction: column; gap: 24px; text-align: center; }
|
||
/* 08-01 緊急修正:登入頁品牌 lockup 改用官方 PNG(自產 SVG outline 字腔缺失作廢,
|
||
見 arcrun-cis/README.md 說明)。mark 不上色(NEVER 用 --amber/Relation
|
||
當 logo 色——CIS:Relation 是「唯一強調色」不是品牌色,logo 上色是一句謊話),
|
||
靠兩張圖(-ink/-paper-on-ink)依 data-theme 切換,不用 filter 避免色偏。 */
|
||
.brand { display: flex; justify-content: center; }
|
||
.brand img { height: 44px; width: auto; display: block; }
|
||
.brand .wm-paper { display: none; }
|
||
:root[data-theme="dark"] .brand .wm-ink { display: none; }
|
||
:root[data-theme="dark"] .brand .wm-paper { display: block; }
|
||
.brand-sub { margin-top: 10px; font-size: 15px; color: rgba(var(--ink-rgb),.55); letter-spacing: .1em; }
|
||
|
||
/* ── 版面骨架 ── */
|
||
#shell { display: none; min-height: 100vh; }
|
||
#shell.on { display: flex; }
|
||
#sidenav { display: none; }
|
||
main { flex: 1; min-width: 0; padding-bottom: 96px; }
|
||
.page { max-width: 980px; margin: 0 auto; padding: 0 20px 40px; }
|
||
.page.narrow { max-width: 760px; }
|
||
.pagehead { padding: 22px 2px 14px; border-bottom: 2px solid rgba(var(--amber-rgb),.4); display: flex; justify-content: space-between; align-items: baseline; gap: 10px; }
|
||
.pagehead .t { font-family: 'Songti TC','LiSong Pro',PMingLiU,serif; font-size: 23px; letter-spacing: .2em; white-space: nowrap; }
|
||
.pagehead .m { font-size: 13.5px; color: rgba(var(--ink-rgb),.45); }
|
||
#tabbar { position: fixed; left: 0; right: 0; bottom: 0; background: var(--bar-bg); border-top: 2px solid rgba(var(--amber-rgb),.4); display: none; z-index: 50; padding-bottom: env(safe-area-inset-bottom); }
|
||
#tabbar.on { display: flex; }
|
||
#tabbar .tab { flex: 1; text-align: center; padding: 15px 0 13px; font-size: 14.5px; cursor: pointer; min-height: 44px; color: rgba(var(--ink-rgb),.5); border-top: 2px solid transparent; margin-top: -2px; }
|
||
#tabbar .tab.on { color: var(--amber); font-weight: 600; border-top-color: var(--amber); }
|
||
#tabbar .tab.hide { display: none; }
|
||
@media (min-width: 1024px) {
|
||
#tabbar.on { display: none; }
|
||
main { padding-bottom: 20px; }
|
||
#sidenav { display: flex; width: 216px; flex: none; position: sticky; top: 0; height: 100vh; border-right: 2px solid rgba(var(--amber-rgb),.35); padding: 28px 0; flex-direction: column; gap: 4px; }
|
||
#sidenav .logo { display: flex; color: var(--ink); padding: 0 24px 20px; }
|
||
#sidenav .logo svg { height: 26px; width: auto; display: block; }
|
||
#sidenav .nav { padding: 13px 24px; font-size: 16px; cursor: pointer; letter-spacing: .08em; color: rgba(var(--ink-rgb),.6); border-right: 2px solid transparent; }
|
||
#sidenav .nav.on { color: var(--amber); background: rgba(var(--amber-rgb),.08); border-right-color: var(--amber); font-family: 'Songti TC','LiSong Pro',PMingLiU,serif; font-weight: 600; }
|
||
#sidenav .nav.hide { display: none; }
|
||
#sidenav .foot { margin-top: auto; padding: 0 24px; font-size: 12.5px; color: rgba(var(--ink-rgb),.35); line-height: 1.7; }
|
||
}
|
||
.view { display: none; }
|
||
.view.on { display: block; }
|
||
.authwrap.view.on { display: flex; }
|
||
|
||
/* ── 元件 ── */
|
||
.btn { padding: 13px; font-size: 16px; font-weight: 600; border-radius: 10px; border: none; background: var(--amber); color: #FDFCFB; cursor: pointer; }
|
||
.btn:disabled { opacity: .45; cursor: default; }
|
||
.btn3 { padding: 11px 16px; font-size: 15px; border-radius: 10px; border: 1px solid rgba(var(--ink-rgb),.25); background: none; color: rgba(var(--ink-rgb),.7); cursor: pointer; }
|
||
.txt { width: 100%; padding: 13px 15px; font-size: 16px; border-radius: 10px; border: 1px solid rgba(var(--ink-rgb),.2); background: rgba(var(--ink-rgb),.05); color: var(--ink); }
|
||
.panel { padding: 18px; border-radius: 13px; background: rgba(var(--ink-rgb),.04); border: 1px solid rgba(var(--ink-rgb),.12); }
|
||
.tag { display: inline-block; padding: 3px 9px; border-radius: 5px; background: rgba(var(--amber-rgb),.12); color: var(--amber); font-size: 12.5px; }
|
||
.tag.green { background: rgba(var(--ok-rgb),.12); color: var(--ok); }
|
||
.tag.dim { background: rgba(var(--ink-rgb),.08); color: rgba(var(--ink-rgb),.55); }
|
||
.honest { padding: 22px; border-radius: 13px; border: 1px dashed rgba(var(--amber-rgb),.4); background: rgba(var(--amber-rgb),.06); text-align: center; }
|
||
.honest .h { font-family: 'Songti TC','LiSong Pro',PMingLiU,serif; font-size: 19px; color: var(--amber); margin-bottom: 8px; }
|
||
.honest .b { font-size: 15px; color: rgba(var(--ink-rgb),.6); line-height: 1.7; }
|
||
#toast { position: fixed; left: 50%; bottom: 110px; transform: translateX(-50%); z-index: 99; padding: 13px 22px; border-radius: 11px; background: var(--amber); color: #FDFCFB; font-size: 15.5px; font-weight: 600; box-shadow: 0 6px 24px rgba(0,0,0,.5); white-space: nowrap; display: none; }
|
||
|
||
/* ── 搜尋 ── */
|
||
.searchrow { display: flex; gap: 10px; align-items: stretch; }
|
||
.searchrow input { flex: 1; min-width: 0; padding: 16px 18px; font-size: 18px; border-radius: 13px; border: 1.5px solid rgba(var(--amber-rgb),.35); background: rgba(var(--ink-rgb),.05); color: var(--ink); }
|
||
.modebar { display: flex; gap: 8px; margin-top: 12px; }
|
||
.modebtn { flex: none; padding: 9px 18px; font-size: 14.5px; border-radius: 999px; cursor: pointer; border: 1px solid rgba(var(--ink-rgb),.18); background: none; color: rgba(var(--ink-rgb),.6); }
|
||
.modebtn.on { border-color: rgba(var(--amber-rgb),.6); background: rgba(var(--amber-rgb),.14); color: var(--amber); font-weight: 600; }
|
||
.modebtn.hide { display: none; }
|
||
.kgrid { display: grid; grid-template-columns: 1fr; gap: 12px; padding-bottom: 8px; }
|
||
@media (min-width: 700px) { .kgrid { grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); } }
|
||
.kcard { padding: 18px; border-radius: 13px; background: rgba(var(--ink-rgb),.045); border: 1px solid rgba(var(--ink-rgb),.1); cursor: pointer; display: flex; flex-direction: column; gap: 9px; }
|
||
.kcard:hover { border-color: rgba(var(--amber-rgb),.45); background: rgba(var(--amber-rgb),.06); }
|
||
.kcard .kt { font-family: 'Songti TC','LiSong Pro',PMingLiU,serif; font-size: 18.5px; font-weight: 600; line-height: 1.45; word-break: break-word; }
|
||
.kcard .ks { font-size: 15px; color: rgba(var(--ink-rgb),.65); line-height: 1.65; word-break: break-word; }
|
||
.kcard .km { display: flex; gap: 10px; align-items: center; margin-top: auto; font-size: 13px; flex-wrap: wrap; }
|
||
|
||
/* ── 卡片詳頁 ── */
|
||
.cardtitle { font-family: 'Songti TC','LiSong Pro',PMingLiU,serif; font-size: 28px; font-weight: 600; line-height: 1.4; word-break: break-word; }
|
||
.md { margin-top: 18px; }
|
||
.md p { font-size: 16.5px; line-height: 1.85; color: rgba(var(--ink-rgb),.82); margin: 8px 0; word-break: break-word; }
|
||
.md h1, .md h2, .md h3, .md h4 { font-family: 'Songti TC','LiSong Pro',PMingLiU,serif; font-weight: 600; color: var(--amber); margin: 18px 0 6px; line-height: 1.4; }
|
||
.md h1 { font-size: 22px; } .md h2 { font-size: 20px; } .md h3 { font-size: 18px; } .md h4 { font-size: 17px; }
|
||
.md ul, .md ol { margin: 8px 0; padding-left: 24px; }
|
||
.md li { font-size: 16.5px; line-height: 1.8; color: rgba(var(--ink-rgb),.82); margin: 4px 0; word-break: break-word; }
|
||
.md blockquote { margin: 10px 0; padding: 12px 18px; border-left: 3px solid rgba(var(--amber-rgb),.5); font-family: 'Songti TC','LiSong Pro',PMingLiU,serif; font-size: 17px; line-height: 1.8; color: rgba(var(--ink-rgb),.7); }
|
||
.md code { font-family: ui-monospace, Menlo, monospace; font-size: 14.5px; background: var(--well2); border-radius: 4px; padding: 1px 6px; word-break: break-all; }
|
||
.md pre { background: var(--well2); border: 1px solid rgba(var(--ink-rgb),.1); border-radius: 10px; padding: 14px; overflow-x: auto; }
|
||
.md pre code { background: none; padding: 0; }
|
||
.srcline { margin-top: 24px; display: flex; align-items: center; gap: 12px; padding: 14px 16px; border-radius: 11px; background: rgba(var(--ink-rgb),.045); border: 1px solid rgba(var(--ink-rgb),.12); }
|
||
|
||
/* ── graph 模式(console 關聯視圖同款)── */
|
||
.graphbox { position: relative; height: 340px; border-radius: 14px; background: var(--well); border: 1px solid rgba(var(--ink-rgb),.1); overflow: hidden; }
|
||
.gnode { position: absolute; transform: translate(-50%,-50%); max-width: 96px; padding: 8px 11px; border-radius: 999px; text-align: center; font-size: 12.5px; line-height: 1.3; cursor: pointer; word-break: break-word; background: rgba(var(--ok-rgb),.1); border: 1px solid rgba(var(--ok-rgb),.35); color: var(--ok-soft); }
|
||
.gcenter { position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); width: 104px; height: 104px; border-radius: 50%; background: radial-gradient(circle at 36% 30%,rgba(217,120,79,.95),rgba(176,74,47,.9) 55%,rgba(120,45,25,.95)); display: grid; place-items: center; text-align: center; padding: 8px; box-shadow: 0 0 30px rgba(var(--amber-rgb),.3); }
|
||
.gcenter span { font-family: -apple-system,"PingFang TC","Microsoft JhengHei",system-ui,sans-serif; font-size: 13.5px; font-weight: 600; line-height: 1.35; color: #FDFCFB; word-break: break-word; }
|
||
.nbrow { display: flex; align-items: center; gap: 11px; padding: 12px 14px; border-radius: 10px; cursor: pointer; background: rgba(var(--ink-rgb),.045); border: 1px solid rgba(var(--ink-rgb),.1); font-size: 15.5px; }
|
||
/* 總圖(Arcrun#39 GUI 切片):沿用紙感語言——green 章印節點、amber 高度數節點 */
|
||
.mapbox { position: relative; border-radius: 14px; background: var(--well); border: 1px solid rgba(var(--ink-rgb),.1); overflow: hidden; }
|
||
.mapbox svg { display: block; width: 100%; height: auto; }
|
||
.mapnode { cursor: pointer; }
|
||
.mapnode circle { fill: rgba(var(--ok-rgb),.12); stroke: rgba(var(--ok-rgb),.45); stroke-width: 1.4; transition: stroke-width .15s; }
|
||
.mapnode.hub circle { fill: rgba(var(--amber-rgb),.2); stroke: rgba(var(--amber-rgb),.65); }
|
||
.mapnode:hover circle { stroke-width: 3; }
|
||
.mapnode text { font-size: 12.5px; fill: var(--ink); pointer-events: none; }
|
||
.mapedge { stroke: rgba(var(--ink-rgb),.18); stroke-width: 1; stroke-dasharray: 4 4; }
|
||
|
||
/* ── 管理頁(P4)── */
|
||
.sechead { font-family: 'Songti TC','LiSong Pro',PMingLiU,serif; font-size: 19px; letter-spacing: .14em; color: var(--amber); margin: 26px 0 12px; padding-bottom: 8px; border-bottom: 1px solid rgba(var(--amber-rgb),.3); }
|
||
.formrow { display: flex; gap: 10px; flex-wrap: wrap; }
|
||
.formrow .txt { flex: 1; min-width: 180px; }
|
||
.formrow select { padding: 12px 14px; font-size: 15.5px; border-radius: 10px; border: 1px solid rgba(var(--ink-rgb),.2); background: rgba(var(--ink-rgb),.05); color: var(--ink); }
|
||
.btnrow { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 12px; }
|
||
.btn2 { padding: 9px 14px; font-size: 14px; border-radius: 9px; border: 1px solid rgba(var(--amber-rgb),.45); background: rgba(var(--amber-rgb),.08); color: var(--amber); cursor: pointer; }
|
||
.btn2.warn { border-color: rgba(var(--err-rgb),.45); background: rgba(var(--err-rgb),.06); color: var(--err); }
|
||
.btn2:disabled { opacity: .45; cursor: default; }
|
||
.libgrid { display: flex; gap: 8px 14px; flex-wrap: wrap; margin-top: 10px; }
|
||
.libgrid label { display: flex; align-items: center; gap: 7px; font-size: 14.5px; cursor: pointer; padding: 6px 10px; border-radius: 8px; background: rgba(var(--ink-rgb),.05); border: 1px solid rgba(var(--ink-rgb),.12); }
|
||
.libgrid input[type=checkbox] { accent-color: var(--amber); width: 16px; height: 16px; }
|
||
.otpbox { margin-top: 14px; padding: 18px; border-radius: 13px; border: 2px solid rgba(var(--amber-rgb),.55); background: rgba(var(--amber-rgb),.08); }
|
||
.otpbox .pw { font-family: ui-monospace, Menlo, monospace; font-size: 22px; letter-spacing: .12em; color: var(--amber); word-break: break-all; user-select: all; margin: 10px 0; }
|
||
|
||
/* ── 清單 / 設定 ── */
|
||
.listcol { display: flex; flex-direction: column; gap: 10px; padding: 16px 0 8px; }
|
||
.card-item { border-radius: 13px; background: rgba(var(--ink-rgb),.045); border: 1px solid rgba(var(--ink-rgb),.1); padding: 16px 18px; }
|
||
.setcol { display: flex; flex-direction: column; gap: 14px; padding: 20px 0 40px; }
|
||
.switch { flex: none; margin-left: auto; width: 56px; height: 32px; border-radius: 999px; padding: 3px; background: rgba(var(--ink-rgb),.15); transition: background .25s; }
|
||
.switch.on { background: rgba(var(--ok-rgb),.5); }
|
||
.switch i { display: block; width: 26px; height: 26px; border-radius: 50%; background: var(--knob); box-shadow: 0 1px 3px rgba(0,0,0,.25); transition: transform .25s; }
|
||
.switch.on i { transform: translateX(24px); }
|
||
.kvline { display: flex; justify-content: space-between; gap: 12px; font-size: 15px; margin: 5px 0; }
|
||
</style>
|
||
<script src="/config.js"></script>
|
||
<script>window.ARCRUN_API_BASE = (window.ARCRUN_CONFIG && window.ARCRUN_CONFIG.apiBase) || "https://cypher.arcrun.dev";</script>
|
||
</head>
|
||
<body>
|
||
|
||
<!-- 登入(未登入只見這個殼;本頁不含任何資料)-->
|
||
<div class="authwrap view" id="v-login">
|
||
<div class="authbox">
|
||
<div>
|
||
<div class="brand" role="img" aria-label="Arcrun"><img class="wm-ink" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABzAAAAIwCAYAAADppv0tAAAQAElEQVR4AezdzY4j2bYY5og61xPZGmee6n4TCzhZIxvQAaSB3kAP4WFVPYRnHnrmgQx4KqCqX8BHgAc27AsPdLtSzHv7jgz7wkCfCsVmJCv/mEkG42/vtT+i2cwkI/Ze61sRyWAskvWucSFAgAABAgQIECBAgAABAgSiC8iPAAECBAgQIECAAAECxQhoYBZTKoHmJyAiAgQIECBAgAABAgQIECBAIL6ADAkQIECAAAECBNYW0MBcW9x8BAgQINA0DAgQIECAAAECBAgQIECAAIH4AjIkQIAAAQIXCmhgXghnNQIECBAgQIDAFgLmJECAAAECBAgQIECAAAECBOILyJBA7QIamLVvAfInQIAAAQIECBAgUIeALAkQIECAAAECBAgQIECAAIFCBCY0MAvJUJgECBAgQIAAAQIECBAgQIDABAGrEiBAgAABAgQIECBAYF0BDcx1vc1GYBDwfwIECBAgQIAAAQIECBAgQCC+gAwJECBAgAABAgQuEtDAvIjNSgQIECCwlYB5CRAgQIAAAQIECBAgQIAAgfgCMiRAgACBugU0MOuuv+wJECBAgACBegRkSoAAAQIECBAgQIAAAQIECMQXkCGBEAIamCHKKAkCBAgQIECAAAECBJYTMDIBAgQIECBAgAABAgQIECCwpsA2Dcw1MzQXAQIECBAgQIAAAQIECBAgsI2AWQkQIECAAAECBAgQIHCBgAbmBWhWIbClgLkJECBAgAABAgQIECBAgACB+AIyJECAAAECBAjULKCBWXP15U6AAIG6BGRLgAABAgQIECBAgAABAgQIxBeQIQECBAgEENDADFBEKRAgQIAAAQIElhUwOgECBAgQIECAAAECBAgQIBBfQIYE8hHQwMynFiIhQIAAAQIECBAgQCCagHwIECBAgAABAgQIECBAgACB0QLFNTBHZ2gFAgQIECBAgAABAgQIECBAoDgBARMgQIAAAQIECBAgUK+ABma9tZd5fQIyJkCAAAECBAgQIECAAAECBOILyJAAAQIECBAgULyABmbxJZQAAQIECCwvYAYCBAgQIECAAAECBAgQIEAgvoAMCRAgQCAXAQ3MXCohDgIECBAgQIBARAE5ESBAgAABAgQIECBAgAABAvEFZEhgZgENzJlBDUeAAAECBAgQIECAAIE5BIxBgAABAgQIECBAgAABAgRqFaipgVlrjeVNgAABAgQIECBAgAABAgRqEpArAQIECBAgQIAAAQKFC2hgFl5A4RNYR8AsBAgQIECAAAECBAgQIECAQHwBGRIgQIAAAQIE8hDQwMyjDqIgQIAAgagC8iJAgAABAgQIECBAgAABAgTiC8iQAAECBGYV0MCcldNgBAgQIECAAAECcwkYhwABAgQIECBAgAABAgQIEIgvIEMCxwQ0MI+puI8AAQIECBAgQIAAAQLlCoicAAECBAgQIECAAAECBAgULaCBeVb5LESAAAECBAgQIECAAAECBAjEF5AhAQIECBAgQIAAAQI5CGhg5lAFMRCILCA3AgQIECBAgAABAgQIECBAIL6ADAkQIECAAAECMwpoYM6IaSgCBAgQIDCngLEIECBAgAABAgQIECBAgACB+AIyJECAAIGXAhqYL03cQ4AAAQIECBAgULaA6AkQIECAAAECBAgQIECAAIH4AjIMLKCBGbi4UiNAgAABAgQIECBAgMA4AUsTIECAAAECBAgQIECAAIHtBTQwl66B8QkQIECAAAECBAgQIECAAIH4AjIkQIAAAQIECBAgQGA2AQ3M2SgNRIDA3ALGI0CAAAECBAgQIECAAAECBOILyJAAAQIECBAg8FxAA/O5iN8JECBAgED5AjIgQIAAAQIECBAgQIAAAQIE4gvIkAABAmEFNDDDllZiBAgQIECAAAEC4wWsQYAAAQIECBAgQIAAAQIECMQXkGHuAhqYuVdIfAQIECBAgAABAgQIEChBQIwECBAgQIAAAQIECBAgQGAmAQ3MmSCXGMaYBAgQIECAAAECBAgQIECAQHwBGRIgQIAAAQIECBAg8FRAA/Oph98IEIghIAsCBAgQIECAAAECBAgQIEAgvoAMCRAgQIAAgaACGphBCystAgQIECBwmYC1CBAgQIAAAQIECBAgQIAAgfgCMiRAgEDeAhqYeddHdAQIECBAgAABAqUIiJMAAQIECBAgQIAAAQIECBCILyDDVQQ0MFdhNgkBAgQIECBAgAABAgQIvCbgfgIECBAgQIAAAQIECBAg8FhAA/OxRpyfZUKAAAECBAgQIECAAAECBAjEF5AhAQIECBAgQIAAgZACGpghyyopAgQuF7AmAQIECBAgQIAAAQIECBAgEF9AhgQIECBAgEDO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CMiEAAECBAgQIECAAAECBAgQiC8gQwJLCGhgLqFqTAIECBAgQIAAAQIECFwuYE0CBAgQIECAAAECBAgQIFC1QCUNzKprLHkCBAgQIECAAAECBAgQIFCJgDQJECBAgAABAgQIEIggoIEZoYpyILCkgLEJECBAgAABAgQIECBAgACB+AIyJECAAAECBAhkJKCBmVExhEKAAAECsQRkQ4AAAQIECBAgQIAAAQIECMQXkCEBAgQIzC+ggTm/qREJECBAgAABAgSmCVibAAECBAgQIECAAAECBAgQiC8gQwKvCmhgvkrjAQIECBAgQIAAAQIECJQmIF4CBAgQIECAAAECBAgQIFC+gAbmqRp6nAABAgQIECBAgAABAgQIEIgvIEMCBAgQIECAAAECBLIR0MDMphQCIRBPQEYECBAgQIAAAQIECBAgQIBAfAEZEiBAgAABAgTmFtDAnFvUeAQIECBAYLqAEQgQIECAAAECBAgQIECAAIH4AjIkQIAAgVcENDBfgXE3AQIECBAgQIBAiQJiJkCAAAECBAgQIECAAAECBOILyDC6gAZm9ArLjwABAgQIECBAgAABAucIWIYAAQIECBAgQIAAAQIECGQioIG5YCEMTYAAAQIECBAgQIAAAQIECMQXkCEBAgQIECBAgAABAvMKaGDO62k0AgTmETAKAQIECBAgQIAAAQIECBAgEF9AhgQIECBAgACBiXmvtAAAEABJREFUowIamEdZ3EmAAAECBEoVEDcBAgQIECBAgAABAgQIECAQX0CGBAgQiC2ggRm7vrIjQIAAAQIECBA4V8ByBAgQIECAAAECBAgQIECAQHwBGRYhoIFZRJkESYAAAQIECBAgQIAAgXwFREaAAAECBAgQIECAAAECBOYU0MCcU3O+sYxEgAABAgQIECBAgAABAgQIxBeQIQECBAgQIECAAAECRwQ0MI+guIsAgZIFxE6AAAECBAgQIECAAAECBAjEF5AhAQIECBAgEFlAAzNydeVGgAABAgTGCFiWAAECBAgQIECAAAECBAgQiC8gQwIECBQgoIFZQJGESIAAAQIECBAgkLeA6AgQIECAAAECBAgQIECAAIH4AjJcT0ADcz1rMxEgQIAAAQIECBAgQIDAUwG/ESBAgAABAgQIECBAgACBFwIamC9ISr9D/AQIECBAgAABAgQIECBAgEB8ARkSIECAAAECBAgQiCuggRm3tjIjQGCsgOUJECBAgAABAgQIECBAgACB+AIyJECAAAECBLIX0MDMvkQCJECAAAEC+QuIkAABAgQIECBAgAABAgQIEIgvIEMCBAisJaCBuZa0eQgQIECAAAECBAi8FHAPAQIECBAgQIAAAQIECBAgEF9AhiMFNDBHglmcAAECBAgQIECAAAECBHIQEAMBAgQIECBAgAABAgQIRBXQwIxa2Uvysg4BAgQIECBAgAABAgQIECAQX0CGBAgQIECAAAECBDIX0MDMvEDCI0CgDAFREiBAgAABAgQIECBAgAABAvEFZEiAAAECBAisI6CBuY6zWQgQIECAAIHjAu4lQIAAAQIECBAgQIAAAQIE4gvIkAABAqMENDBHcVmYAAECBAgQIECAQC4C4iBAgAABAgQIECBAgAABAgTiC9SZoQZmnXWXNQECBAgQIECAAAECBOoVkDkBAgQIECBAgAABAgQIZC2ggZl1ecoJTqQECBAgQIAAAQIECBAgQIBAfAEZEiBAgAABAgQIEFhDQANzDWVzECBA4HUBjxAgQIAAAQIECBAgQIAAAQLxBWRIgAABAgQIjBDQwByBZVECBAgQIEAgJwGxECBAgAABAgQIECBAgAABAvEFZEiAQI0CGpg1Vl3OBAgQIECAAAECdQvIngABAgQIECBAgAABAgQIEIgvUHCGGpgFF0/oBAgQIECAAAECBAgQILCugNkIECBAgAABAgQIECBAYHkBDczljc3wtoBHCRAgQIAAAQIECBAgQIAAgfgCMiRAgAABAgQIECBwtoAG5tlUFiRAgEBuAuIhQIAAAQIECBAgQIAAAQIE4gvIkAABAgQI1CeggVlfzWVMgAABAgQIECBAgAABAgQIECBAgAABAgTiC8iQAIFiBTQwiy2dwAkQIECAAAECBAisL2BGAgQIECBAgAABAgQIECBAIL7A1hlqYG5dAfMTIECAAAECBAgQIECAQA0CciRAgAABAgQIECBAgACBMwU0MM+EsliOAmIiQIAAAQIECBAgQIAAAQIE4gvIkAABAgQIECBAoDYBDczaKi5fAgQIJAFXAgQIECBAgAABAgQIECBAIL6ADAkQIECAQKECGpiFFk7YBAgQIECAwDYCZiVAgAABAgQIECBAgAABAgTiC8iQAIFtBTQwt/U3OwECBAgQIECAAIFaBORJgAABAgQIECBAgAABAgQIxBeYJUMNzFkYDUKAAAECBAgQIECAAAECBJYSMC4BAgQIECBAgAABAgTqEtDArKvesj0IuCVAgAABAgQIECBAgAABAgTiC8iQAAECBAgQIECgSAENzCLLJmgCBAhsJ2BmAgQIECBAgAABAgQIECBAIL6ADAkQIECAwJYCGphb6pubAAECBAgQqElArgQIECBAgAABAgQIECBAgEB8ARkSIDCDgAbmDIiGIECAAAECBAgQIEBgSQFjEyBAgAABAgQIECBAgAABAvEFHjLUwHyw8BMBAgQIECBAgAABAgQIEIglIBsCBAgQIECAAAECBAgUKKCBWWDRhLytgNkJECBAgAABAgQIECBAgACB+AIyJECAAAECBAgQ2E5AA3M7ezMTIECgNgH5EiBAgAABAgQIECBAgAABAvEFZEiAAAECBCYLaGBOJjQAAQIECBAgQGBpAeMTIECAAAECBAgQIECAAAEC8QVkSIDAQUAD8yDhlgABAgQIECBAgACBeAIyIkCAAAECBAgQIECAAAECBIoTGN3ALC5DARMgQIAAAQIECBAgQIAAAQKjBaxAgAABAgQIECBAgACBrQQ0MLeSN2+NAnImQIAAAQIECBAgQIAAAQIE4gvIkAABAgQIECBAYKKABuZEQKsTIECAwBoC5iBAgAABAgQIECBAgAABAgTiC8iQAAECBAgMAhqYg4P/EyBAgAABAgRiCsiKAAECBAgQIECAAAECBAgQiC8gQwLBBDQwgxVUOgQIECBAgAABAgQIzCNgFAIECBAgQIAAAQIECBAgQGAbgTUbmNtkaFYCBAgQIECAAAECBAgQIEBgTQFzESBAgAABAgQIECBAYJKABuYkPisTWEvAPAQIECBAgAABAgQIECBAgEB8ARkSIECAAAECBAgkAQ3MpOBKgAABAnEFZEaAAAECBAgQIECAAAECBAjEF5AhAQIECIQS0MAMVU7JECBAgAABAgTmEzASAQIECBAgQIAAAQIECBAgEF9AhgRyFNDAzLEqYiJAgAABAgQIECBAoGQBsRMgQIAAAQIECBAgQIAAAQITBAppYE7I0KoECBAgQIAAAQIECBAgQIBAIQLCJECAAAECBAgQIECAQNNoYNoKCEQXkB8BAgQIECBAgAABAgQIECAQX0CGBAgQIECAAIFAAhqYgYopFQIECBCYV8BoBAgQIECAAAECBAgQIECAQHwBGRIgQIBAfgIamPnVREQECBAgQIAAgdIFxE+AAAECBAgQIECAAAECBAjEF5AhgcUENDAXozUwAQIECBAgQIAAAQIExgpYngABAgQIECBAgAABAgQIEIjfwFRjAgQIECBAgAABAgQIECBAIL6ADAkQIECAAAECBAgQCCOggRmmlBIhML+AEQkQIECAAAECBAgQIECAAIH4AjIkQIAAAQIECOQmoIGZW0XEQ4AAAQIRBORAgAABAgQIECBAgAABAgQIxBeQIQECBAgsJKCBuRCsYQkQIECAAAECBC4RsA4BAgQIECBAgAABAgQIECAQX0CGBN4W0MB828ejBAgQIECAAAECBAgQKENAlAQIECBAgAABAgQIECBAIIiABuYbhfQQAQIECBAgQIAAAQIECBAgEF9AhgQIECBAgAABAgQI5CWggZlXPURDIIqAPAgQIECAAAECBAgQIECAAIH4AjIkQIAAAQIECCwioIG5CKtBCRAgQIDApQLWI0CAAAECBAgQIECAAAECBOILyJAAAQIE3hLQwHxLx2MECBAgQIAAAQLlCIiUAAECBAgQIECAAAECBAgQiC8gwyoENDCrKLMkCRAgQIAAAQIECBAg8LqARwgQIECAAAECBAgQIECAQE4CGpjLVMOoBAgQIECAAAECBAgQIECAQHwBGRIgQIAAAQIECBAgsICABuYCqIYkQGCKgHUJECBAgAABAgQIECBAgACB+AIyJECAAAECBAi8LqCB+bqNRwgQIECAQFkCoiVAgAABAgQIECBAgAABAgTiC8iQAAECFQhoYFZQZCkSIECAAAECBAi8LeBRAgQIECBAgAABAgQIECBAIL6ADMsR0MAsp1YiJUCAAAECBAgQIECAQG4C4iFAgAABAgQIECBAgAABArMLaGDOTjp1QOsTIECAAAECBAgQIECAAAEC8QVkSIAAAQIECBAgQIDAawIamK/JuJ8AgfIEREyAAAECBAgQIECAAAECBAjEF5AhAQIECBAgEF5AAzN8iSVIgAABAgROC1iCAAECBAgQIECAAAECBAgQiC8gQwIECJQioIFZSqXESYAAAQIECBAgkKOAmAgQIECAAAECBAgQIECAAIH4AjJcWUADc2Vw0xEgQIAAAQIECBAgQIBAEnAlQIAAAQIECBAgQIAAAQLHBTQwj7uUea+oCRAgQIAAAQIECBAgQIAAgfgCMiRAgAABAgQIECAQXEADM3iBpUeAwHkCliJAgAABAgQIECBAgAABAgTiC8iQAAECBAgQKENAA7OMOomSAAECBAjkKiAuAgQIECBAgAABAgQIECBAIL6ADAkQILCqgAbmqtwmI0CAAAECBAgQIHAQcEuAAAECBAgQIECAAAECBAjEF5DhJQIamJeoWYcAAQIECBAgQIAAAQIEthMwMwECBAgQIECAAAECBAiEFtDADF3e85OzJAECBAgQIECAAAECBAgQIBBfQIYECBAgQIAAAQIEShDQwCyhSmIkQCBnAbERIECAAAECBAgQIECAAAEC8QVkSIAAAQIECKwooIG5IrapCBAgQIAAgccCfiZAgAABAgQIECBAgAABAgTiC8iQAAEC4wU0MMebWYMAAQIECBAgQIDAtgJmJ0CAAAECBAgQIECAAAECBOILVJyhBmbFxZc6AQIECBAgQIAAAQIEahOQLwECBAgQIECAAAECBAjkL6CBmX+Nco9QfAQIECBAgAABAgQIECBAgEB8ARkSIECAAAECBAgQWE1AA3M1ahMRIEDguYDfCRAgQIAAAQIECBAgQIAAgfgCMiRAgAABAgTGCmhgjhWzPAECBAgQILC9gAgIECBAgAABAgQIECBAgACB+AIyJECgWgENzGpLL3ECBAgQIECAAIEaBeRMgAABAgQIECBAgAABAgQIxBcoPUMNzNIrKH4CBAgQIECAAAECBAgQWEPAHAQIECBAgAABAgQIECCwkoAG5krQpjkm4D4CBAgQIECAAAECBAgQIEAgvoAMCRAgQIAAAQIECIwT0MAc52VpAgQI5CEgCgIECBAgQIAAAQIECBAgQCC+gAwJECBAgEClAhqYlRZe2gQIECBAoFYBeRMgQIAAAQIECBAgQIAAAQLxBWRIgEDZAhqYZddP9AQIECBAgAABAgTWEjAPAQIECBAgQIAAAQIECBAgEF8giww1MLMogyAIECBAgAABAgQIECBAIK6AzAgQIECAAAECBAgQIEBgjIAG5hgty+YjIBICBAgQIECAAAECBAgQIEAgvoAMCRAgQIAAAQIEqhTQwKyy7JImQKBmAbkTIECAAAECBAgQIECAAAEC8QVkSIAAAQIEShbQwCy5emInQIAAAQIE1hQwFwECBAgQIECAAAECBAgQIBBfQIYECGQgoIGZQRGEQIAAAQIECBAgQCC2gOwIECBAgAABAgQIECBAgACB+ALzZaiBOZ+lkQgQIECAAAECBAgQCClw8zch05LUvUDm9b2P0g0BAgQIECBAgAABAgRqEtDArKnact0L+B8BAgQIECBAgACBcwWu/vj+31398f/8n85d3nJlCahvWfUSLYGxAlr4aqcAABAASURBVJYnQIAAAQIECBAoV0ADs9zaiZwAAQJrC5iPAAECBAhUJZCaW03X/Ot03f/cuEQS2NdUfSOVVC4ECBAgMJ+AkQgQIECAwOYCGpibl0AABAgQIECAQHwBGRIgUJrAj+bWIfC+0bW/7/C726IF9rXsa/ojif7n/X0/7vADAQIECBAgQIAAgUsErEOAwFwCGphzSRqHAAECBAgQIECAAIH5BTYYsW9k/c/pU5cvptbkekFS4h3qW2LVxEyAAAECBAgQIECAQHiBZwlqYD4D8SsBAgQIECBAgAABAvUK3De3/tWrApqYr9KU8EBt9S2hJmIkQIAAAQIECBAgQIDAMQENzGMq7iNwXMC9BAgQIECAAAECgQVONrcOuWtiHiSKulXfosolWAJbC5ifAAECBAgQIEBgYwENzI0LYHoCBAjUISBLAgQIECCQt8DZza1DGpqYB4kibtW3iDIJkgABAgRCCEiCAAECBAjMI6CBOY+jUQgQIECAAAECywgYlQCBxQVGN7cOEWliHiSyvlXfrMsjOAIECBAgQIAAgYOAWwIEnghoYD7h8AsBAgQIECBAgAABAlEEzsnj4ubWYXBNzINElrfqm2VZBEWAAAECBAgQIECAAIGTAmMamCcHswABAgQIECBAgAABAgRKEZjc3Dokqol5kMjqVn0nlcPKBAgQIECAAAECBAgQ2FRAA3NTfpPXIyBTAgQIECBAgACBnARma24dktLEPEhkcau+WZRBEAQqFZA2AQIECBAgQIDAHAIamHMoGoMAAQIElhMwMgECBAgQmFlg9ubWIT5NzIPEprfquym/yQkQIECAwOUC1iRAgAABAo8ENDAfYfiRAAECBAgQIBBJQC4ECLwUWKy5dZhKE/Mgscmt+m7CblICBAgQIECAAIGNBUxPIKKABmbEqsqJAAECBAgQIECAAIEXAiOaWy/WHXWHJuYorrkWVt+5JI1DgAABAgQIECBAgACB7QVWamBun6gI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AgQIECBAgACBeAIyIkCAAAECBAgQIECAAIHiBDQwiyvZ9gGLgAABAgQIECBAgAABAgQIEIgvIEMCBAgQIECAAAECWwloYG4lb14CBGoUkDMBAgQIECBAgAABAgQIECAQX0CGBAgQIECAwEQBDcyJgFYnQIAAAQIE1hAwBwECBAgQIECAAAECBAgQIBBfQIYECBAYBDQwBwf/J0CAAAECBAgQIBBTQFYECBAgQIAAAQIECBAgQIBAfIFgGWpgBiuodAgQIECAAAECBAgQIEBgHgGjECBAgAABAgQIECBAgMA2AhqY27jXOqu8CRAgQIAAAQIECBAgQIAAgfgCMiRAgAABAgQIECAwSUADcxKflQkQILCWgHkIECBAgAABAgQIECBAgACB+AIyJECAAAECBJKABmZScCVAgAABAgTiCsiMAAECBAgQIECAAAECBAgQiC8gQwIEQgloYIYqp2QIECBAgAABAgQIzCdgJAIECBAgQIAAAQIECBAgQCC+QI4ZamDmWBUxESBAgAABAgQIECBAgEDJAmInQIAAAQIECBAgQIAAgQkCGpgT8Ky6poC5CBAgQIAAAQIECBAgQIAAgfgCMiRAgAABAgQIECDQNBqYtgICBAhEF5AfAQIECBAgQIAAAQIECBAgEF9AhgQIECBAIJCABmagYkqFAAECBAgQmFfAaAQIECBAgAABAgQIECBAgEB8ARkSIJCfgAZmfjUREQECBAgQIECAAIHSBcRPgAABAgQIECBAgAABAgQIxBdYLEMNzMVoDUyAAAECBAgQIECAAAECBMYKWJ4AAQIECBAgQIAAAQIENDBtA/EFZEiAAAECBAgQIECAAAECBAjEF5AhAQIECBAgQIBAGAENzDCllAgBAgTmFzAiAQIECBAgQIAAAQIECBAgEF9AhgQIECBAIDcBDczcKiIeAgQIECBAIIKAHAgQIECAAAECBAgQIECAAIH4AjIkQGAhAQ3MhWANS4AAAQIECBAgQIDAJQLWIUCAAAECBAgQIECAAAECBOILvJ2hBubbPh4lQIAAAQIECBAgQIAAAQJlCIiSAAECBAgQIECAAAECQQQ0MIMUUhrLCBiVAAECBAgQIECAAAECBAgQiC8gQwIECBAgQIAAgbwENDDzqodoCBAgEEVAHgQIECBAgAABAgQIECBAgEB8ARkSIECAAIFFBDQwF2E1KAECBAgQIEDgUgHrESBAgAABAgQIECBAgAABAvEFZEiAwFsCGphv6XiMAAECBAgQIECAAIFyBERKgAABAgQIECBAgAABAgQIhBB4s4EZIkNJECBAgAABAgQIECBAgAABAm8KeJAAAQIECBAgQIAAAQI5CWhg5lQNsUQSkAsBAgQIECBAgAABAgQIECAQX0CGBAgQIECAAAECCwhoYC6AakgCBAgQmCJgXQIECBAgQIAAAQIECBAgQCC+gAwJECBAgMDrAhqYr9t4hAABAgQIECBQloBoCRAgQIAAAQIECBAgQIAAgfgCMiRQgYAGZgVFliIBAgQIECBAgAABAm8LeJQAAQIECBAgQIAAAQIECBDIR2CpBmY+GYqEAAECBAgQIECAAAECBAgQWErAuAQIECBAgAABAgQIEJhdQANzdlIDEpgqYH0CBAgQIECAAAECBAgQIEAgvoAMCRAgQIAAAQIEXhPQwHxNxv0ECBAgUJ6AiAkQIECAAAECBAgQIECAAIH4AjIkQIAAgfACGpjhSyxBAgQIECBAgMBpAUsQIECAAAECBAgQIECAAAEC8QVkSKAUAQ3MUiolTgIECBAgQIAAAQIEchQQEwECBAgQIECAAAECBAgQIDCzQIYNzJkzNBwBAgQIECBAgAABAgQIECCQoYCQCBAgQIAAAQIECBAgcFxAA/O4i3sJlCkgagIECBAgQIAAAQIECBAgQCC+gAwJECBAgAABAsEFNDCDF1h6BAgQIHCegKUIECBAgAABAgQIECBAgACB+AIyJECAAIEyBDQwy6iTKAkQIECAAAECuQqIiwABAgQIECBAgAABAgQIEIgvIEMCqwpoYK7KbTICBAgQIECAAAECBAgcBNwSIECAAAECBAgQIECAAAECxwRiNTCPZeg+AgQIECBAgAABAgQIECBAIJaAbAgQIECAAAECBAgQCC2ggRm6vJIjcL6AJQkQIECAAAECBAgQIECAAIH4AjIkQIAAAQIECJQgoIFZQpXESIAAAQI5C4iNAAECBAgQIECAAAECBAgQiC8gQwIECBBYUUADc0VsUxEgQIAAAQIECDwW8DMBAgQIECBAgAABAgQIECAQX0CGBMYLaGCON7MGAQIECBAgQIAAAQIEthUwOwECBAgQIECAAAECBAgQCCyggXlfXDcECBAgQIAAAQIECBAgQIBAfAEZEiBAgAABAgQIECCQv4AGZv41EiGB3AXER4AAAQIECBAgQIAAAQIECMQXkCEBAgQIECBAYDUBDczVqE1EgAABAgSeC/idAAECBAgQIECAAAECBAgQiC8gQwIECBAYK6CBOVbM8gQIECBAgAABAtsLiIAAAQIECBAgQIAAAQIECBCILyDDagU0MKstvcQJECBAgAABAgQIEKhRQM4ECBAgQIAAAQIECBAgQCB3AQ3M6RUyAgECBAgQIECAAAECBAgQIBBfQIYECBAgQIAAAQIECKwkoIG5ErRpCBA4JuA+AgQIECBAgAABAgQIECBAIL6ADAkQIECAAAEC4wQ0MMd5WZoAAQIECOQhIAoCBAgQIECAAAECBAgQIEAgvoAMCRAgUKmABmalhZc2AQIECBAgQKBWAXkTIECAAAECBAgQIECAAAEC8QVkWLaABmbZ9RM9AQIECBAgQIAAAQIE1hIwDwECBAgQIECAAAECBAgQWEVAA3MV5tcmcT8BAgQIECBAgAABAgQIECAQX0CGBAgQIECAAAECBAiMEdDAHKNlWQIE8hEQCQECBAgQIECAAAECBAgQIBBfQIYECBAgQIBAlQIamFWWXdIECBAgULOA3AkQIECAAAECBAgQIECAAIH4AjIkQIBAyQIamCVXT+wECBAgQIAAAQJrCpiLAAECBAgQIECAAAECBAgQiC8gwwwENDAzKIIQCBAgQIAAAQIECBAgEFtAdgQIECBAgAABAgQIECBA4HwBDczzrfJaUjQECBAgQIAAAQIECBAgQIBAfAEZEiBAgAABAgQIEKhQQAOzwqJLmUDtAvInQIAAAQIECBAgQIAAAQIE4gvIkAABAgQIEChXQAOz3NqJnAABAgQIrC1gPgIECBAgQIAAAQIECBAgQCC+gAwJECCwuYAG5uYlEAABAgQIECBAgEB8ARkSIECAAAECBAgQIECAAAEC8QVkOJeABuZcksYhQIAAAQIECBAgQIAAgfkFjEiAAAECBAgQIECAAAEC1QloYFZX8qaRMgECBAgQIECAAAECBAgQIBBfQIYECBAgQIAAAQIEShXQwCy1cuImQGALAXMSIECAAAECBAgQIECAAAEC8QVkSIAAAQIECGwsoIG5cQFMT4AAAQIE6hCQJQECBAgQIECAAAECBAgQIBBfQIYECBCYR0ADcx5HoxAgQIAAAQIECBBYRsCoBAgQIECAAAECBAgQIECAQHwBGT4R0MB8wuEXAgQIECBAgAABAgQIEIgiIA8CBAgQIECAAAECBAgQKFNAA7PMum0VtXkJECBAgAABAgQIECBAgACB+AIyJECAAAECBAgQILCpgAbmpvwmJ0CgHgGZEiBAgAABAgQIECBAgAABAvEFZEiAAAECBAjMIaCBOYeiMQgQIECAAIHlBIxMgAABAgQIECBAgAABAgQIxBeQIQECBB4JaGA+wvAjAQIECBAgQIAAgUgCciFAgAABAgQIECBAgAABAgTiC0TMUAMzYlXlRIAAAQIECBAgQIAAAQJTBKxLgAABAgQIECBAgAABAhsKaGBuiF/X1LIlQIAAAQIECBAgQIAAAQIE4gvIkAABAgQIECBAgMB0AQ3M6YZGIECAwLICRidAgAABAgQIECBAgAABAgTiC8iQAAECBAgQ+CGggfmDwg8ECBAgQIBANAH5ECBAgAABAgQIECBAgAABAvEFZEiAQDwBDcx4NZURAQIECBAgQIAAgakC1idAgAABAgQIECBAgAABAgTiC2SboQZmtqURGAECBAgQIECAAAECBAiUJyBiAgQIECBAgAABAgQIEJgqoIE5VdD6ywuYgQABAgQIECBAgAABAgQIEIgvIEMCBAgQIECAAAEC9wIamPcQbggQIBBRQE4ECBAgQIAAAQIECBAgQIBAfAEZEiBAgACBaAIamNEqKh8CBAgQIEBgDgFjECBAgAABAgQIECBAgAABAvEFZEiAQKYCGpiZFkZYBAgQIECAAAECBMoUEDUBAgQIECBAgAABAgQIECAQX2DZDDUwl/U1OgECBAgQIECAAAECBAgQOE/AUgQIECBAgAABAgQIECCwF9DA3DP4X1QBeREgQIAAAQIECBAgQIAAAQLxBWRIgAABAgQIECAQS0ADM1Y9ZUOAAIG5BIxDgAABAgQIECBAgAABAgQIxBeQIQECBAgQyFJAAzPLsgiKAAECBAgQKFdA5AQIECBAgAABAgQIECBAgEB8ARkSILCkgAbmkrrGJkCAAAECBAgQIEDgfAFLEiBAgAABAgQIECBAgAABAvEFzshQA/MMJIsQIECAAAECBAgQIECAAIGcBcRGgAABAgQIECBAgACBSAIamJGqKZc5BYxFgAABAgQIECBAgAABAgQIxBeQIQEC69VInQAAC7NJREFUBAgQIECAQIYCGpgZFkVIBAgQKFtA9AQIECBAgAABAgQIECBAgEB8ARkSIECAAIHlBDQwl7M1MgECBAgQIEBgnIClCRAgQIAAAQIECBAgQIAAgfgCMiRA4KSABuZJIgsQIECAAAECBAgQIJC7gPgIECBAgAABAgQIECBAgACBOAKvNTDjZCgTAgQIECBAgAABAgQIECBA4DUB9xMgQIAAAQIECBAgQCA7AQ3M7EoioPIFZECAAAECBAgQIECAAAECBAjEF5AhAQIECBAgQIDAUgIamEvJGpcAAQIExgtYgwABAgQIECBAgAABAgQIEIgvIEMCBAgQIHBCQAPzBJCHCRAgQIAAAQIlCIiRAAECBAgQIECAAAECBAgQiC8gQwK1CGhg1lJpeRIgQIAAAQIECBAgcEzAfQQIECBAgAABAgQIECBAgEBmAgs0MDPLUDgECBAgQIAAAQIECBAgQIDAAgKGJECAAAECBAgQIECAwDICGpjLuBqVwGUC1iJAgAABAgQIECBAgAABAgTiC8iQAAECBAgQIEDgTQENzDd5PEiAAAECpQiIkwABAgQIECBAgAABAgQIEIgvIEMCBAgQqENAA7OOOsuSAAECBAgQIPCagPsJECBAgAABAgQIECBAgACB+AIyJFCUgAZmUeUSLAECBAgQIECAAAEC+QiIhAABAgQIECBAgAABAgQIEFhCIK8G5hIZGpMAAQIECBAgQIAAAQIECBDIS0A0BAgQIECAAAECBAgQeENAA/MNHA8RKElArAQIECBAgAABAgQIECBAgEB8ARkSIECAAAECBGoQ0MCsocpyJECAAIG3BDxGgAABAgQIECBAgAABAgQIxBeQIQECBAgUJKCBWVCxhEqAAAECBAgQyEtANAQIECBAgAABAgQIECBAgEB8ARkSWF9AA3N9czMSIECAAAECBAgQIFC7gPwJECBAgAABAgQIECBAgACBVwXCNDBfzdADBAgQIECAAAECBAgQIECAQBgBiRAgQIAAAQIECBAgEF9AAzN+jWVI4JSAxwkQIECAAAECBAgQIECAAIH4AjIkQIAAAQIECBQjoIFZTKkESoAAAQL5CYiIAAECBAgQIECAAAECBAgQiC8gQwIECBBYW0ADc21x8xEgQIAAAQIECDQNAwIECBAgQIAAAQIECBAgQCC+gAwJXCiggXkhnNUIECBAgAABAgQIECCwhYA5CRAgQIAAAQIECBAgQIBAdAENzKaJXmP5ESBAgAABAgQIECBAgAABAk3DgAABAgQIECBAgACBQgQ0MAsplDAJ5CkgKgIECBAgQIAAAQIECBAgQCC+gAwJECBAgAABAusKaGCu6202AgQIECAwCPg/AQIECBAgQIAAAQIECBAgEF9AhgQIECBwkYAG5kVsViJAgAABAgQIENhKwLwECBAgQIAAAQIECBAgQIBAfAEZ1i2ggVl3/WVPgAABAgQIECBAgEA9AjIlQIAAAQIECBAgQIAAAQJFCGhgTiqTlQkQIECAAAECBAgQIECAAIH4AjIkQIAAAQIECBAgQGBNAQ3MNbXNRYDAg4CfCBAgQIAAAQIECBAgQIAAgfgCMiRAgAABAgQIXCCggXkBmlUIECBAgMCWAuYmQIAAAQIECBAgQIAAAQIE4gvIkAABAjULaGDWXH25EyBAgAABAgTqEpAtAQIECBAgQIAAAQIECBAgEF9AhgEENDADFFEKBAgQIECAAAECBAgQWFbA6AQIECBAgAABAgQIECBAYD0BDcz1rJ/O5DcCBAgQIECAAAECBAgQIEAgvoAMCRAgQIAAAQIECBAYLaCBOZrMCgQIbC1gfgIECBAgQIAAAQIECBAgQCC+gAwJECBAgACBegU0MOutvcwJECBAoD4BGRMgQIAAAQIECBAgQIAAAQLxBWRIgACB4gU0MIsvoQQIECBAgAABAgSWFzADAQIECBAgQIAAAQIECBAgEF9AhrkIaGDmUglxECBAgAABAgQIECBAIKKAnAgQIECAAAECBAgQIECAwEgBDcyRYDksLgYCBAgQIECAAAECBAgQIEAgvoAMCRAgQIAAAQIECNQqoIFZa+XlTaBOAVkTIECAAAECBAgQIECAAAEC8QVkSIAAAQIECBQuoIFZeAGFT4AAAQIE1hEwCwECBAgQIECAAAECBAgQIBBfQIYECBDIQ0ADM486iIIAAQIECBAgQCCqgLwIECBAgAABAgQIECBAgACB+AIynFVAA3NWToMRIECAAAECBAgQIECAwFwCxiFAgAABAgQIECBAgACBOgU0MOuqu2wJECBAgAABAgQIECBAgACB+AIyJECAAAECBAgQIFC0gAZm0eUTPAEC6wmYiQABAgQIECBAgAABAgQIEIgvIEMCBAgQIEAgBwENzByqIAYCBAgQIBBZQG4ECBAgQIAAAQIECBAgQIBAfAEZEiBAYEYBDcwZMQ1FgAABAgQIECBAYE4BYxEgQIAAAQIECBAgQIAAAQLxBWT4UkAD86WJewgQIECAAAECBAgQIECgbAHREyBAgAABAgQIECBAgEDBAhqYBRdv3dDNRoAAAQIECBAgQIAAAQIECMQXkCEBAgQIECBAgACB7QU0MLevgQgIEIguID8CBAgQIECAAAECBAgQIEAgvoAMCRAgQIAAgdkENDBnozQQAQIECBAgMLeA8QgQIECAAAECBAgQIECAAIH4AjIkQIDAcwENzOcifidAgAABAgQIECBQvoAMCBAgQIAAAQIECBAgQIAAgfgCYTPUwAxbWokRIECAAAECBAgQIECAwHgBaxAgQIAAAQIECBAgQIDA1gIamFtXoIb55UiAAAECBAgQIECAAAECBAjEF5AhAQIECBAgQIAAgZkENDBngjQMAQIElhAwJgECBAgQIECAAAECBAgQIBBfQIYECBAgQIDAUwENzKcefiNAgAABAgRiCMiCAAECBAgQIECAAAECBAgQiC8gQwIEggpoYAYtrLQIECBAgAABAgQIXCZgLQIECBAgQIAAAQIECBAgQCC+QN4ZamDmXR/RESBAgAABAgQIECBAgEApAuIkQIAAAQIECBAgQIAAgVkENDBnYTTIUgLGJUCAAAECBAgQIECAAAECBOILyJAAAQIECBAgQIDAYwENzMcafiZAgEAcAZkQIECAAAECBAgQIECAAAEC8QVkSIAAAQIEQgpoYIYsq6QIECBAgACBywWsSYAAAQIECBAgQIAAAQIECMQXkCEBAjkLaGDmXB2xESBAgAABAgQIEChJQKwECBAgQIAAAQIECBAgQIBAfIEVMtTAXAHZFAQIECBAgAABAgQIECBA4C0BjxEgQIAAAQIECBAgQIDAg4AG5oOFn2IJyIYAAQIECBAgQIAAAQIECBCILyBDAgQIECBAgACBgAIamAGLKiUCBAhME7A2AQIECBAgQIAAAQIECBAgEF9AhgQIECBAIF8BDcx8ayMyAgQIECBAoDQB8RIgQIAAAQIECBAgQIAAAQLxBWRIgMDiAhqYixObgAABAgQIECBAgACBUwIeJ0CAAAECBAgQIECAAAECBOILnJuhBua5UpYjQIAAAQIECBAgQIAAAQL5CYiIAAECBAgQIECAAAEC4QQ0MMOVVELTBYxAgAABAgQIECBAgAABAgQIxBeQIQECBAgQIECAQK4CGpi5VkZcBAgQKFFAzAQIECBAgAABAgQIECBAgEB8ARkSIECAAIGFBTQwFwY2PAECBAgQIEDgHAHLECBAgAABAgQIECBAgAABAvEFZEiAwHkCGpjnOVmKAAECBAgQIECAAIE8BURFgAABAgQIECBAgAABAgQIBBM40sAMlqF0CBAgQIAAAQIECBAgQIAAgSMC7iJAgAABAgQIECBAgECeAhqYedZFVKUKiJsAAQIECBAgQIAAAQIECBCILyBDAgQIECBAgACBRQU0MBflNTgBAgQInCtgOQIECBAgQIAAAQIECBAgQCC+gAwJECBAgMA5Av8ZAAD//w2XfxsAAAAGSURBVAMAwNbHFNdKWR4AAAAASUVORK5CYII=" alt="arc>>run" width="1840" height="560"><img class="wm-paper" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABzAAAAIwCAYAAADppv0tAAAQAElEQVR4Aezd3Y4sV3Yg5sRIz8ARBAF6DZYeQD13stDd6JFtUSZgD+aSPPEI/hnAMJttGAYMC5IN3zW6+ykkTAmWIQtu0jO3PRAE8g0I3czkYjF48tTJn/jZEbH32l+j41RWZsTea30rojIiVmXxn/3z3/nd/2hhYB+wD9gH7AP2AfuAfcA+YB+wD9gH7AP2gdT7gGt/9z/sA/YB+4B9wD5gH7AP2AfsA/aBZvaBf3byPwIEFgrYjAABAgQIECBAgAABAgQIEMgvIEMCBAgQIECAAIG9BTQw9xY3HwECBAicTgwIECBAgAABAgQIECBAgACB/AIyJECAAAECCwU0MBfC2YwAAQIECBAgcISAOQkQIECAAAECBAgQIECAAIH8AjIk0LuABmbve4D8CRAgQIAAAQIECPQhIEsCBAgQIECAAAECBAgQIECgEYEVDcxGMhQmAQIECBAgQIAAAQIECBAgsELApgQIECBAgAABAgQIENhXQANzX2+zEXgR8C8BAgQIECBAgAABAgQIECCQX0CGBAgQIECAAAECiwQ0MBex2YgAAQIEjhIwLwECBAgQIECAAAECBAgQIJBfQIYECBAg0LeABmbf9Zc9AQIECBAg0I+ATAkQIECAAAECBAgQIECAAIH8AjIkkEJAAzNFGSVBgAABAgQIECBAgMB2AkYmQIAAAQIECBAgQIAAAQIE9hQ4poG5Z4bmIkCAAAECBAgQIECAAAECBI4RMCsBAgQIECBAgAABAgQWCGhgLkCzCYEjBcxNgAABAgQIECBAgAABAgQI5BeQIQECBAgQIECgZwENzJ6rL3cCBAj0JSBbAgQIECBAgAABAgQIECBAIL+ADAkQIEAggYAGZoIiSoEAAQIECBAgsK2A0QkQIECAAAECBAgQIECAAIH8AjIkUI+ABmY9tRAJAQIECBAgQIAAAQLZBORDgAABAgQIECBAgAABAgQIzBZoroE5O0MbECBAgAABAgQIECBAgAABAs0JCJgAAQIECBAgQIAAgX4FNDD7rb3M+xOQMQECBAgQIECAAAECBAgQIJBfQIYECBAgQIAAgeYFNDCbL6EECBAgQGB7ATMQIECAAAECBAgQIECAAAEC+QVkSIAAAQK1CGhg1lIJcRAgQIAAAQIEMgrIiQABAgQIECBAgAABAgQIEMgvIEMChQU0MAuDGo4AAQIECBAgQIAAAQIlBIxBgAABAgQIECBAgAABAgR6FeipgdlrjeVNgAABAgQIECBAgAABAgR6EpArAQIECBAgQIAAAQKNC2hgNl5A4RPYR8AsBAgQIECAAAECBAgQIECAQH4BGRIgQIAAAQIE6hDQwKyjDqIgQIAAgawC8iJAgAABAgQIECBAgAABAgTyC8iQAAECBIoKaGAW5TQYAQIECBAgQIBAKQHjECBAgAABAgQIECBAgAABAvkFZEjgmoAG5jUVzxEgQIAAAQIECBAgQKBdAZETIECAAAECBAgQIECAAIGmBTQwJ5XPSgQIECBAgAABAgQIECBAgEB+ARkSIECAAAECBAgQIFCDgAZmDVUQA4HMAnIjQIAAAQIECBAgQIAAAQIE8gvIkAABAgQIECBQUEADsyCmoQgQIECAQEkBYxEgQIAAAQIECBAgQIAAAQL5BWRIgAABAu8LaGC+b+IZAgQIECBAgACBtgVET4AAAQIECBAgQIAAAQIECOQXkGFiAQ3MxMWVGgECBAgQIECAAAECBOYJWJsAAQIECBAgQIAAAQIECBwvoIG5dQ2MT4AAAQIECBAgQIAAAQIECOQXkCEBAgQIECBAgAABAsUENDCLURqIAIHSAsYjQIAAAQIECBAgQIAAAQIE8gvIkAABAgQIECDwWkAD87WI7wkQIECAQPsCMiBAgAABAgQIECBAgAABAgTyC8iQAAECaQU0MNOWVmIECBAgQIAAAQLzBWxBgAABAgQIECBAgAABAgQI5BeQYe0CGpi1V0h8BAgQIECAAAECBAgQaEFAjAQIECBAgAABAgQIECBAoJCABmYhyC2GMSYBAgQIECBAgAABAgQIECCQX0CGBAgQIECAAAECBAi8K6CB+a6H7wgQyCEgCwIECBAgQIAAAQIECBAgQCC/gAwJECBAgACBpAIamEkLKy0CBAgQILBMwFYECBAgQIAAAQIECBAgQIBAfgEZEiBAoG4BDcy66yM6AgQIECBAgACBVgTESYAAAQIECBAgQIAAAQIECOQXkOEuAhqYuzCbhAABAgQIECBAgAABAgRuCXieAAECBAgQIECAAAECBAhcCmhgXmrkeSwTAgQIECBAgAABAgQIECBAIL+ADAkQIECAAAECBAikFNDATFlWSREgsFzAlgQIECBAgAABAgQIECBAgEB+ARkSIECAAAECNQtoYNZcHbERIECAAIGWBMRKgAABAgQIECBAgAABAgQI5BeQIQECBHYQ0MDcAdkUBAgQIECAAAECBO4JeI0AAQIECBAgQIAAAQIECBDILyDD6QIamNOtrEmAAAECBAgQIECAAAECdQmIhgABAgQIECBAgAABAgQSCmhgJizqupRsTYAAAQIECBAgQIAAAQIECOQXkCEBAgQIECBAgACBegU0MOutjcgIEGhNQLwECBAgQIAAAQIECBAgQIBAfgEZEiBAgAABApsLaGBuTmwCAgQIECBA4JGA1wkQIECAAAECBAgQIECAAIH8AjIkQIDAVAENzKlS1iNAgAABAgQIECBQn4CICBAgQIAAAQIECBAgQIAAgfwC3WWogdldySVMgAABAgQIECBAgAABAqcTAwIECBAgQIAAAQIECBCoVUADs9bKtBiXmAkQIECAAAECBAgQIECAAIH8AjIkQIAAAQIECBAgsLGABubGwIYnQIDAFAHrECBAgAABAgQIECBAgAABAvkFZEiAAAECBAhME9DAnOZkLQIECBAgQKBOAVERIECAAAECBAgQIECAAAEC+QVkSIBAZwIamJ0VXLoECBAgQIAAAQIEXgT8S4AAAQIECBAgQIAAAQIECOQXaDNDDcw26yZqAgQIECBAgAABAgQIEDhKwLwECBAgQIAAAQIECBAgsKmABuamvAafKmA9AgQIECBAgAABAgQIECBAIL+ADAkQIECAAAECBAhMEdDAnKJkHQIECNQrIDICBAgQIECAAAECBAgQIEAgv4AMCRAgQIBAVwIamF2VW7IECBAgQIDAWwGPCBAgQIAAAQIECBAgQIAAgfwCMiRAoEUBDcwWqyZmAgQIECBAgAABAkcKmJsAAQIECBAgQIAAAQIECBDIL3BghhqYB+KbmgABAgQIECBAgAABAgT6EpAtAQIECBAgQIAAAQIECDwW0MB8bGSNugVER4AAAQIECBAgQIAAAQIECOQXkCEBAgQIECBAgEBHAhqYHRVbqgQIEHhXwHcECBAgQIAAAQIECBAgQIBAfgEZEiBAgACB9gQ0MNurmYgJECBAgACBowXMT4AAAQIECBAgQIAAAQIECOQXkCEBAocJaGAeRm9iAgQIECBAgAABAv0JyJgAAQIECBAgQIAAAQIECBDIL7A2Qw3MtYK2J0CAAAECBAgQIECAAAEC2wuYgQABAgQIECBAgAABAt0IaGB2U2qJvi/gGQIECBAgQIAAAQIECBAgQCC/gAwJECBAgAABAgRaE9DAbK1i4iVAgEANAmIgQIAAAQIECBAgQIAAAQIE8gvIkAABAgQIHCSggXkQvGkJECBAgACBPgVkTYAAAQIECBAgQIAAAQIECOQXkCEBAusENDDX+dmaAAECBAgQIECAAIF9BMxCgAABAgQIECBAgAABAgQI5Bf4NkMNzG8Z/EOAAAECBAgQIECAAAECBLIKyIsAAQIECBAgQIAAAQJtCWhgtlUv0dYiIA4CBAgQIECAAAECBAgQIEAgv4AMCRAgQIAAAQIEDhHQwDyE3aQECBDoV0DmBAgQIECAAAECBAgQIECAQH4BGRIgQIAAgTUCGphr9GxLgAABAgQIENhPwEwECBAgQIAAAQIECBAgQIBAfgEZEiBwFtDAPCP4PwECBAgQIECAAAECmQXkRoAAAQIECBAgQIAAAQIECLQksKyB2VKGYiVAgAABAgQIECBAgAABAgSWCdiKAAECBAgQIECAAAECBwhoYB6Absq+BWRPgAABAgQIECBAgAABAgQI5BeQIQECBAgQIECAwHIBDczldrYkQIAAgX0FzEaAAAECBAgQIECAAAECBAjkF5AhAQIECBA4aWDaCQgQIECAAAEC6QUkSIAAAQIECBAgQIAAAQIECOQXkCGBPAIamHlqKRMCBAgQIECAAAECBEoLGI8AAQIECBAgQIAAAQIECBDYXWD3BubuGZqQAAECBAgQIECAAAECBAgQ2F3AhAQIECBAgAABAgQIEFgqoIG5VM52BPYXMCMBAgQIECBAgAABAgQIECCQX0CGBAgQIECAAIHuBTQwu98FABAgQKAHATkSIECAAAECBAgQIECAAAEC+QVkSIAAAQJZBDQws1RSHgQIECBAgACBLQSMSYAAAQIECBAgQIAAAQIECOQXkCGBygQ0MCsriHAIECBAgAABAgQIEMghIAsCBAgQIECAAAECBAgQIEBgmUBLDcxlGdqKAAECBAgQIECAAAECBAgQaElArAQIECBAgAABAgQIdC6ggdn5DiD9XgTkSYAAAQIECBAgQIAAAQIECOQXkCEBAgQIECBAIIeABmaOOsqCAAECBLYSMC4BAgQIECBAgAABAgQIECCQX0CGBAgQIFCVgAZmVeUQDAECBAgQIEAgj4BMCBAgQIAAAQIECBAgQIAAgfwCMiSwhYAG5haqxiRAgAABAgQIECBAgMByAVsSIECAAAECBAgQIECAAIGuBTppYHZdY8kTIECAAAECBAgQIECAAIFOBKRJgAABAgQIECBAgEAGAQ3MDFWUA4EtBYxNgAABAgQIECBAgAABAgQI5BeQIQECBAgQIECgIgENzIqKIRQCBAgQyCUgGwIECBAgQIAAAQIECBAgQCC/gAwJECBAoLyABmZ5UyMSIECAAAECBAisE7A1AQIECBAgQIAAAQIECBAgkF9AhgRuCmhg3qTxAgECBAgQIECAAAECBFoTEC8BAgQIECBAgAABAgQIEGhfQAPzUQ29ToAAAQIECBAgQIAAAQIECOQXkCEBAgQIECBAgAABAtUIaGBWUwqBEMgnICMCBAgQIECAAAECBAgQIEAgv4AMCRAgQIAAAQKlBTQwS4sajwABAgQIrBcwAgECBAgQIECAAAECBAgQIJBfQIYECBAgcENAA/MGjKcJECBAgAABAgRaFBAzAQIECBAgQIAAAQIECBAgkF9AhtkFNDCzV1h+BAgQIECAAAECBAgQmCJgHQIECBAgQIAAAQIECBAgUImABuaGhTA0AQIECBAgQIAAAQIECBAgkF9AhgQIECBAgAABAgQIlBXQwCzraTQCBMoIwC7QZgAAEABJREFUGIUAAQIECBAgQIAAAQIECBDILyBDAgQIECBAgMBVAQ3MqyyeJECAAAECrQqImwABAgQIECBAgAABAgQIEMgvIEMCBAjkFtDAzF1f2REgQIAAAQIECEwVsB4BAgQIECBAgAABAgQIECCQX0CGTQhoYDZRJkESIECAAAECBAgQIECgXgGRESBAgAABAgQIECBAgACBkgIamCU1y41lJAIECBAgQIAAAQIECBAgQCC/gAwJECBAgAABAgQIELgioIF5BcVTBAi0LCB2AgQIECBAgAABAgQIECBAIL+ADAkQIECAAIHMAhqYmasrNwIECBAgMEfAugQIECBAgAABAgQIECBAgEB+ARkSIECgAQENzAaKJEQCBAgQIECAAIG6BURHgAABAgQIECBAgAABAgQI5BeQ4X4CGpj7WZuJAAECBAgQIECAAAECBN4V8B0BAgQIECBAgAABAgQIEHhPQAPzPZLWnxA/AQIECBAgQIAAAQIECBAgkF9AhgQIECBAgAABAgTyCmhg5q2tzAgQmCtgfQIECBAgQIAAAQIECBAgQCC/gAwJECBAgACB6gU0MKsvkQAJECBAgED9AiIkQIAAAQIECBAgQIAAAQIE8gvIkAABAnsJaGDuJW0eAgQIECBAgAABAu8LeIYAAQIECBAgQIAAAQIECBDILyDDmQIamDPBrE6AAAECBAgQIECAAAECNQiIgQABAgQIECBAgAABAgSyCmhgZq3skrxsQ4AAAQIECBAgQIAAAQIECOQXkCEBAgQIECBAgACBygU0MCsvkPAIEGhDQJQECBAgQIAAAQIECBAgQIBAfgEZEiBAgAABAvsIaGDu42wWAgQIECBA4LqAZwkQIECAAAECBAgQIECAAIH8AjIkQIDALAENzFlcViZAgAABAgQIECBQi4A4CBAgQIAAAQIECBAgQIAAgfwCfWaogdln3WVNgAABAgQIECBAgACBfgVkToAAAQIECBAgQIAAAQJVC2hgVl2edoITKQECBAgQIECAAAECBAgQIJBfQIYECBAgQIAAAQIE9hDQwNxD2RwECBC4LeAVAgQIECBAgAABAgQIECBAIL+ADAkQIECAAIEZAhqYM7CsSoAAAQIECNQkIBYCBAgQIECAAAECBAgQIEAgv4AMCRDoUUADs8eqy5kAAQIECBAgQKBvAdkTIECAAAECBAgQIECAAAEC+QUazlADs+HiCZ0AAQIECBAgQIAAAQIE9hUwGwECBAgQIECAAAECBAhsL6CBub2xGe4LeJUAAQIECBAgQIAAAQIECBDILyBDAgQIECBAgAABApMFNDAnU1mRAAECtQmIhwABAgQIECBAgAABAgQIEMgvIEMCBAgQINCfgAZmfzWXMQECBAgQIECAAAECBAgQIECAAAECBAgQyC8gQwIEmhXQwGy2dAInQIAAAQIECBAgsL+AGQkQIECAAAECBAgQIECAAIH8AkdnqIF5dAXMT4AAAQIECBAgQIAAAQI9CMiRAAECBAgQIECAAAECBCYKaGBOhLJajQJiIkCAAAECBAgQIECAAAECBPILyJAAAQIECBAgQKA3AQ3M3iouXwIECISAhQABAgQIECBAgAABAgQIEMgvIEMCBAgQINCogAZmo4UTNgECBAgQIHCMgFkJECBAgAABAgQIECBAgACB/AIyJEDgWAENzGP9zU6AAAECBAgQIECgFwF5EiBAgAABAgQIECBAgAABAvkFimSogVmE0SAECBAgQIAAAQIECBAgQGArAeMSIECAAAECBAgQIECgLwENzL7qLdtRwFcCBAgQIECAAAECBAgQIEAgv4AMCRAgQIAAAQIEmhTQwGyybIImQIDAcQJmJkCAAAECBAgQIECAAAECBPILyJAAAQIECBwpoIF5pL65CRAgQIAAgZ4E5EqAAAECBAgQIECAAAECBAjkF5AhAQIFBDQwCyAaggABAgQIECBAgACBLQWMTYAAAQIECBAgQIAAAQIECOQXeJuhBuZbC48IECBAgAABAgQIECBAgEAuAdkQIECAAAECBAgQIECgQQENzAaLJuRjBcxOgAABAgQIECBAgAABAgQI5BeQIQECBAgQIECAwHECGpjH2ZuZAAECvQnIlwABAgQIECBAgAABAgQIEMgvIEMCBAgQILBaQANzNaEBCBAgQIAAAQJbCxifAAECBAgQIECAAAECBAgQyC8gQwIERgENzFHCVwIECBAgQIAAAQIE8gnIiAABAgQIECBAgAABAgQIEGhOYHYDs7kMBUyAAAECBAgQIECAAAECBAjMFrABAQIECBAgQIAAAQIEjhLQwDxK3rw9CsiZAAECBAgQIECAAAECBAgQyC8gQwIECBAgQIAAgZUCGpgrAW1OgAABAnsImIMAAQIECBAgQIAAAQIECBDILyBDAgQIECDwIqCB+eLgXwIECBAgQIBATgFZESBAgAABAgQIECBAgAABAvkFZEggmYAGZrKCSocAAQIECBAgQIAAgTICRiFAgAABAgQIECBAgAABAgSOEdizgXlMhmYlQIAAAQIECBAgQIAAAQIE9hQwFwECBAgQIECAAAECBFYJaGCu4rMxgb0EzEOAAAECBAgQIECAAAECBAjkF5AhAQIECBAgQIBACGhghoKFAAECBPIKyIwAAQIECBAgQIAAAQIECBDILyBDAgQIEEgloIGZqpySIUCAAAECBAiUEzASAQIECBAgQIAAAQIECBAgkF9AhgRqFNDArLEqYiJAgAABAgQIECBAoGUBsRMgQIAAAQIECBAgQIAAAQIrBBppYK7I0KYECBAgQIAAAQIECBAgQIBAIwLCJECAAAECBAgQIECAwOmkgWkvIJBdQH4ECBAgQIAAAQIECBAgQIBAfgEZEiBAgAABAgQSCWhgJiqmVAgQIECgrIDRCBAgQIAAAQIECBAgQIAAgfwCMiRAgACB+gQ0MOuriYgIECBAgAABAq0LiJ8AAQIECBAgQIAAAQIECBDILyBDApsJaGBuRmtgAgQIECBAgAABAgQIzBWwPgECBAgQIECAAAECBAgQIJC/ganGBAgQIECAAAECBAgQIECAQH4BGRIgQIAAAQIECBAgkEZAAzNNKSVCoLyAEQkQIECAAAECBAgQIECAAIH8AjIkQIAAAQIECNQmoIFZW0XEQ4AAAQIZBORAgAABAgQIECBAgAABAgQI5BeQIQECBAhsJKCBuRGsYQkQIECAAAECBJYI2IYAAQIECBAgQIAAAQIECBDILyBDAvcFNDDv+3iVAAECBAgQIECAAAECbQiIkgABAgQIECBAgAABAgQIJBHQwLxTSC8RIECAAAECBAgQIECAAAEC+QVkSIAAAQIECBAgQIBAXQIamHXVQzQEsgjIgwABAgQIECBAgAABAgQIEMgvIEMCBAgQIECAwCYCGpibsBqUAAECBAgsFbAdAQIECBAgQIAAAQIECBAgkF9AhgQIECBwT0AD856O1wgQIECAAAECBNoRECkBAgQIECBAgAABAgQIECCQX0CGXQhoYHZRZkkSIECAAAECBAgQIEDgtoBXCBAgQIAAAQIECBAgQIBATQIamNtUw6gECBAgQIAAAQIECBAgQIBAfgEZEiBAgAABAgQIECCwgYAG5gaohiRAYI2AbQkQIECAAAECBAgQIECAAIH8AjIkQIAAAQIECNwW0MC8beMVAgQIECDQloBoCRAgQIAAAQIECBAgQIAAgfwCMiRAgEAHAhqYHRRZigQIECBAgAABAvcFvEqAAAECBAgQIECAAAECBAjkF5BhOwIamO3USqQECBAgQIAAAQIECBCoTUA8BAgQIECAAAECBAgQIECguIAGZnHStQPangABAgQIECBAgAABAgQIEMgvIEMCBAgQIECAAAECBG4JaGDekvE8AQLtCYiYAAECBAgQIECAAAECBAgQyC8gQwIECBAgQCC9gAZm+hJLkAABAgQIPBawBgECBAgQIECAAAECBAgQIJBfQIYECBBoRUADs5VKiZMAAQIECBAgQKBGATERIECAAAECBAgQIECAAAEC+QVkuLOABubO4KYjQIAAAQIECBAgQIAAgRCwECBAgAABAgQIECBAgACB6wIamNdd2nxW1AQIECBAgAABAgQIECBAgEB+ARkSIECAAAECBAgQSC6ggZm8wNIjQGCagLUIECBAgAABAgQIECBAgACB/AIyJECAAAECBNoQ0MBso06iJECAAAECtQqIiwABAgQIECBAgAABAgQIEMgvIEMCBAjsKqCBuSu3yQgQIECAAAECBAiMAr4SIECAAAECBAgQIECAAAEC+QVkuERAA3OJmm0IECBAgAABAgQIECBA4DgBMxMgQIAAAQIECBAgQIBAagENzNTlnZ6cNQkQIECAAAECBAgQIECAAIH8AjIkQIAAAQIECBAg0IKABmYLVRIjAQI1C4iNAAECBAgQIECAAAECBAgQyC8gQwIECBAgQGBHAQ3MHbFNRYAAAQIECFwKeEyAAAECBAgQIECAAAECBAjkF5AhAQIE5gtoYM43swUBAgQIECBAgACBYwXMToAAAQIECBAgQIAAAQIECOQX6DhDDcyOiy91AgQIECBAgAABAgQI9CYgXwIECBAgQIAAAQIECBCoX0ADs/4a1R6h+AgQIECAAAECBAgQIECAAIH8AjIkQIAAAQIECBAgsJuABuZu1CYiQIDAawHfEyBAgAABAgQIECBAgAABAvkFZEiAAAECBAjMFdDAnCtmfQIECBAgQOB4AREQIECAAAECBAgQIECAAAEC+QVkSIBAtwIamN2WXuIECBAgQIAAAQI9CsiZAAECBAgQIECAAAECBAgQyC/QeoYamK1XUPwECBAgQIAAAQIECBAgsIeAOQgQIECAAAECBAgQIEBgJwENzJ2gTXNNwHMECBAgQIAAAQIECBAgQIBAfgEZEiBAgAABAgQIEJgnoIE5z8vaBAgQqENAFAQIECBAgAABAgQIECBAgEB+ARkSIECAAIFOBTQwOy28tAkQIECAQK8C8iZAgAABAgQIECBAgAABAgTyC8iQAIG2BTQw266f6AkQIECAAAECBAjsJWAeAgQIECBAgAABAgQIECBAIL9AFRlqYFZRBkEQIECAAAECBAgQIECAQF4BmREgQIAAAQIECBAgQIDAHAENzDla1q1HQCQECBAgQIAAAQIECBAgQIBAfgEZEiBAgAABAgQIdCmggdll2SVNgEDPAnInQIAAAQIECBAgQIAAAQIE8gvIkAABAgQItCyggdly9cRO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AgTyC8iQAAECLwIamC8O/iVAgAABAgQIECCQU0BWBAgQIECAAAECBAgQIECAQH6BZBlqYCYrqHQIECBAgAABAgQIECBAoIyAUQgQIECAAAECBAgQIEDgGAENzGPce51V3gQIECBAgAABAgQIECBAgEB+ARkSIECAAAECBAgQWCWggbmKz8YECBDYS8A8BAgQIECAAAECBAgQIECAQH4BGRIgQIAAAQIhoIEZChYCBAgQIEAgr4DMCBAgQIAAAQIECBAgQIAAgfwCMiRAIJWABmaqckqGAAECBAgQIECAQDkBIxEgQIAAAQIECBAgQIAAAQL5BWrMUAOzxqqIiQABAgQIECBAgAABAgRaFhA7AQIECBAgQIAAAQIECKwQ0MBcgWfTPQXMRYAAAQIECBAgQIAAAQIECOQXkCEBAgQIECBAgACB00kD015AgACB7ALyI0CAAAECBAgQIECAAAECBPILyJAAAQIECCQS0MBMVEypECBAgAABAmUFjEaAAAECBAgQIECAAAECBAjkF5AhAQL1CWhg1lcTEREgQIAAAQIECBBoXUD8BAgQIECAAAECBAgQIECAQH6BzTLUwNyM1sAECBAgQIAAAQIECBAgQGCugPUJECBAgAABAgQIECBAQAPTPpBfQIYECBAgQIAAAQIECBAgQIBAfgEZEiBAgAABAgQIpBHQwExTSokQIECgvIARCRAgQIAAAQIECBAgQIAAgfwCMiRAgAABArUJaGDWVhHxECBAgAABAhkE5ECAAAECBAgQIECAAAECBAjkF5AhAQIbCWhgbgRrWAIECBAgQIAAAQIElgjYhgABAgQIECBAgAABAgQIEMgvcD9DDcz7Pl4lQIAAAQIECBAgQIAAAQJtCIiSAAECBAgQIECAAAECSQQ0MJMUUhrbCBiVAAECBAgQIECAAAECBAgQyC8gQwIECBAgQIAAgboENDDrqodoCBAgkEVAHgQIECBAgAABAgQIECBAgEB+ARkSIECAAIFNBDQwN2E1KAECBAgQIEBgqYDtCBAgQIAAAQIECBAgQIAAgfwCMiRA4J6ABuY9Ha8RIECAAAECBAgQINCOgEgJECBAgAABAgQIECBAgACBFAJ3G5gpMpQEAQIECBAgQIAAAQIECBAgcFfAiwQIECBAgAABAgQIEKhJQAOzpmqIJZOAXAgQIECAAAECBAgQIECAAIH8AjIkQIAAAQIECBDYQEADcwNUQxIgQIDAGgHbEiBAgAABAgQIECBAgAABAvkFZEiAAAECBG4LaGDetvEKAQIECBAgQKAtAdESIECAAAECBAgQIECAAAEC+QVkSKADAQ3MDoosRQIECBAgQIAAAQIE7gt4lQABAgQIECBAgAABAgQIEKhHYKsGZj0ZioQAAQIECBAgQIAAAQIECBDYSsC4BAgQIECAAAECBAgQKC6ggVmc1IAE1grYngABAgQIECBAgAABAgQIEMgvIEMCBAgQIECAAIFbAhqYt2Q8T4AAAQLtCYiYAAECBAgQIECAAAECBAgQyC8gQwIECBBIL6CBmb7EEiRAgAABAgQIPBawBgECBAgQIECAAAECBAgQIJBfQIYEWhHQwGylUuIkQIAAAQIECBAgQKBGATERIECAAAECBAgQIECAAAEChQUqbGAWztBwBAgQIECAAAECBAgQIECAQIUCQiJAgAABAgQIECBAgMB1AQ3M6y6eJdCmgKgJECBAgAABAgQIECBAgACB/AIyJECAAAECBAgkF9DATF5g6REgQIDANAFrESBAgAABAgQIECBAgAABAvkFZEiAAAECbQhoYLZRJ1ESIECAAAECBGoVEBcBAgQIECBAgAABAgQIECCQX0CGBHYV0MDcldtkBAgQIECAAAECBAgQGAV8JUCAAAECBAgQIECAAAECBK4J5GpgXsvQcwQIECBAgAABAgQIECBAgEAuAdkQIECAAAECBAgQIJBaQAMzdXklR2C6gDUJECBAgAABAgQIECBAgACB/AIyJECAAAECBAi0IKCB2UKVxEiAAAECNQuIjQABAgQIECBAgAABAgQIEMgvIEMCBAgQ2FFAA3NHbFMRIECAAAECBAhcCnhMgAABAgQIECBAgAABAgQI5BeQIYH5AhqY881sQYAAAQIECBAgQIAAgWMFzE6AAAECBAgQIECAAAECBBILaGB+V1xfCBAgQIAAAQIECBAgQIAAgfwCMiRAgAABAgQIECBAoH4BDcz6ayRCArULiI8AAQIECBAgQIAAAQIECBDILyBDAgQIECBAgMBuAhqYu1GbiAABAgQIvBbwPQECBAgQIECAAAECBAgQIJBfQIYECBAgMFdAA3OumPUJECBAgAABAgSOFxABAQIECBAgQIAAAQIECBAgkF9Aht0KaGB2W3qJEyBAgAABAgQIECDQo4CcCRAgQIAAAQIECBAgQIBA7QIamOsrZAQCBAgQIECAAAECBAgQIEAgv4AMCRAgQIAAAQIECBDYSUADcydo0xAgcE3AcwQIECBAgAABAgQIECBAgEB+ARkSIECAAAECBOYJaGDO87I2AQIECBCoQ0AUBAgQIECAAAECBAgQIECAQH4BGRIgQKBTAQ3MTgsvbQIECBAgQIBArwLyJkCAAAECBAgQIECAAAECBPILyLBtAQ3MtusnegIECBAgQIAAAQIECOwlYB4CBAgQIECAAAECBAgQILCLgAbmLsy3JvE8AQIECBAgQIAAAQIECBAgkF9AhgQIECBAgAABAgQIzBHQwJyjZV0CBOoREAkBAgQIECBAgAABAgQIECCQX0CGBAgQIECAQJcCGphdll3SBAgQINCzgNwJECBAgAABAgQIECBAgACB/AIyJECAQMsCGpgtV0/sBAgQIECAAAECewqYiwABAgQIECBAgAABAgQIEMgvIMMKBDQwKyiCEAgQIECAAAECBAgQIJBbQHYECBAgQIAAAQIECBAgQGC6gAbmdKu61hQNAQIECBAgQIAAAQIECBAgkF9AhgQIECBAgAABAgQ6FNDA7LDoUibQu4D8CRAgQIAAAQIECBAgQIAAgfwCMiRAgAABAgTaFdDAbLd2IidAgAABAnsLmI8AAQIECBAgQIAAAQIECBDILyBDAgQIHC6ggXl4CQRAgAABAgQIECCQX0CGBAgQIECAAAECBAgQIECAQH4BGZYS0MAsJWkcAgQIECBAgAABAgQIECgvYEQCBAgQIECAAAECBAgQ6E5AA7O7kp9OUiZAgAABAgQIECBAgAABAgTyC8iQAAECBAgQIECAQKsCGpitVk7cBAgcIWBOAgQIECBAgAABAgQIECBAIL+ADAkQIECAAIGDBTQwDy6A6QkQIECAQB8CsiRAgAABAgQIECBAgAABAgTyC8iQAAECZQQ0MMs4GoUAAQIECBAgQIDANgJGJUCAAAECBAgQIECAAAECBPILyPAdAQ3Mdzh8Q4AAAQIECBAgQIAAAQJZBORBgAABAgQIECBAgAABAm0KaGC2WbejojYvAQIECBAgQIAAAQIECBAgkF9AhgQIECBAgAABAgQOFdDAPJTf5AQI9CMgUwIECBAgQIAAAQIECBAgQCC/gAwJECBAgACBEgIamCUUjUGAAAECBAhsJ2BkAgQIECBAgAABAgQIECBAIL+ADAkQIHAhoIF5geEhAQIECBAgQIAAgUwCciFAgAABAgQIECBAgAABAgTyC2TMUAMzY1XlRIAAAQIECBAgQIAAAQJrBGxLgAABAgQIECBAgAABAgcKaGAeiN/X1LIlQIAAAQIECBAgQIAAAQIE8gvIkAABAgQIECBAgMB6AQ3M9YZGIECAwLYCRidAgAABAgQIECBAgAABAgTyC8iQAAECBAgQ+F5AA/N7Cg8IECBAgACBbALyIUCAAAECBAgQIECAAAECBPILyJAAgXwCGpj5aiojAgQIECBAgAABAmsFbE+AAAECBAgQIECAAAECBAjkF6g2Qw3MaksjMAIECBAgQIAAAQIECBBoT0DEBAgQIECAAAECBAgQILBWQANzraDttxcwAwECBAgQIECAAAECBAgQIJBfQIYECBAgQIAAAQIEvhPQwPwOwhcCBAhkFJATAQIECBAgQIAAAQIECBAgkF9AhgQIECBAIJuABma2isqHAAECBAgQKCFgDAIECBAgQIAAAQIECBAgQCC/gAwJEKhUQAOz0sIIiwABAgQIECBAgECbAqImQIAAAQIECBAgQIAAAQIE8gtsm6EG5ra+RidAgAABAgQIECBAgAABAtMErEWAAAECBAgQIECAAAEC3wpoYH7L4J+sAvIiQIAAAQIECBAgQIAAAQIE8gvIkAABAgQIECBAIJeABmauesqGAAECpQSMQ4AAAQIECBAgQIAAAQIECOQXkCEBAgQIEKhSQAOzyrIIigABAgQIEGhXQOQECBAgQIAAAQIECBAgQIBAfgEZEiCwpYAG5pa6xiZAgAABAgQIECBAYLqANQkQIECAAAECBAgQIECAAIH8AhMy1MCcgGQVAgQIECBAgAABAgQIECBQs4DYCBAgQIAAAQIECBAgkElAAzNTNeVSUsBYBAgQIECAAAECBAgQIECAQH4BGRIgQIAAAQIECFQooIFZYVGERIAAgbYFRE+AAAECBAgQIECAAAECBAjkF5AhAQIECBDYTkADcztbIxMgQIAAAQIE5glYmwABAgQIECBAgAABAgQIEMgvIEMCBB4KaGA+JLICAQIECBAgQIAAAQK1C4iPAAECBAgQIECAAAECBAgQyCNwq4GZJ0OZECBAgAAB3X/OyAAACyNJREFUAgQIECBAgAABArcEPE+AAAECBAgQIECAAIHqBDQwqyuJgNoXkAEBAgQIECBAgAABAgQIECCQX0CGBAgQIECAAAECWwloYG4la1wCBAgQmC9gCwIECBAgQIAAAQIECBAgQCC/gAwJECBAgMADAQ3MB0BeJkCAAAECBAi0ICBGAgQIECBAgAABAgQIECBAIL+ADAn0IqCB2Uul5UmAAAECBAgQIECAwDUBzxEgQIAAAQIECBAgQIAAAQKVCWzQwKwsQ+EQIECAAAECBAgQIECAAAECGwgYkgABAgQIECBAgAABAtsIaGBu42pUAssEbEWAAAECBAgQIECAAAECBAjkF5AhAQIECBAgQIDAXQENzLs8XiRAgACBVgTESYAAAQIECBAgQIAAAQIECOQXkCEBAgQI9CGggdlHnWVJgAABAgQIELgl4HkCBAgQIECAAAECBAgQIEAgv4AMCTQloIHZVLkES4AAAQIECBAgQIBAPQIiIUCAAAECBAgQIECAAAECBLYQqKuBuUWGxiRAgAABAgQIECBAgAABAgTqEhANAQIECBAgQIAAAQIE7ghoYN7B8RKBlgTESoAAAQIECBAgQIAAAQIECOQXkCEBAgQIECBAoAcBDcweqixHAgQIELgn4DUCBAgQIECAAAECBAgQIEAgv4AMCRAgQKAhAQ3MhoolVAIECBAgQIBAXQKiIUCAAAECBAgQIECAAAECBPILyJDA/gIamPubm5EAAQIECBAgQIAAgd4F5E+AAAECBAgQIECAAAECBAjcFEjTwLyZoRcIECBAgAABAgQIECBAgACBNAISIUCAAAECBAgQIEAgv4AGZv4ay5DAIwGvEyBAgAABAgQIECBAgAABAvkFZEiAAAECBAgQaEZAA7OZUgmUAAECBOoTEBEBAgQIECBAgAABAgQIECCQX0CGBAgQILC3gAbm3uLmI0CAAAECBAgQOJ0YECBAgAABAgQIECBAgAABAvkFZEhgoYAG5kI4mxEgQIAAAQIECBAgQOAIAXMSIECAAAECBAgQIECAAIHsAhqYp1P2GsuPAAECBAgQIECAAAECBAgQOJ0YECBAgAABAgQIECDQiIAGZiOFEiaBOgVERYAAAQIECBAgQIAAAQIECOQXkCEBAgQIECBAYF8BDcx9vc1GgAABAgReBPxLgAABAgQIECBAgAABAgQI5BeQIQECBAgsEtDAXMRmIwIECBAgQIAAgaMEzEuAAAECBAgQIECAAAECBAjkF5Bh3wIamH3XX/YECBAgQIAAAQIECPQjIFMCBAgQIECAAAECBAgQINCEgAbmqjLZmAABAgQIECBAgAABAgQIEMgvIEMCBAgQIECAAAECBPYU0MDcU9tcBAi8FfCIAAECBAgQIECAAAECBAgQyC8gQwIECBAgQIDAAgENzAVoNiFAgAABAkcKmJsAAQIECBAgQIAAAQIECBDILyBDAgQI9Cyggdlz9eVOgAABAgQIEOhLQLYECBAgQIAAAQIECBAgQIBAfgEZJhDQwExQRCkQIECAAAECBAgQIEBgWwGjEyBAgAABAgQIECBAgACB/QQ0MPezfncm3xEgQIAAAQIECBAgQIAAAQL5BWRIgAABAgQIECBAgMBsAQ3M2WQ2IEDgaAHzEyBAgAABAgQIECBAgAABAvkFZEiAAAECBAj0K6CB2W/tZU6AAAEC/QnImAABAgQIECBAgAABAgQIEMgvIEMCBAg0L6CB2XwJJUCAAAECBAgQILC9gBkIECBAgAABAgQIECBAgACB/AIyrEVAA7OWSoiDAAECBAgQIECAAAECGQXkRIAAAQIECBAgQIAAAQIEZgpoYM4Eq2F1MRAgQIAAAQIECBAgQIAAAQL5BWRIgAABAgQIECBAoFcBDcxeKy9vAn0KyJoAAQIECBAgQIAAAQIECBDILyBDAgQIECBAoHEBDczGCyh8AgQIECCwj4BZCBAgQIAAAQIECBAgQIAAgfwCMiRAgEAdAhqYddRBFAQIECBAgAABAlkF5EWAAAECBAgQIECAAAECBAjkF5BhUQENzKKcBiNAgAABAgQIECBAgACBUgLGIUCAAAECBAgQIECAAIE+BTQw+6q7bAkQIECAAAECBAgQIECAAIH8AjIkQIAAAQIECBAg0LSABmbT5RM8AQL7CZiJAAECBAgQIECAAAECBAgQyC8gQwIECBAgQKAGAQ3MGqogBgIECBAgkFlAbgQIECBAgAABAgQIECBAgEB+ARkSIECgoIAGZkFMQxEgQIAAAQIECBAoKWAsAgQIECBAgAABAgQIECBAIL+ADN8X0MB838QzBAgQIECAAAECBAgQINC2gOgJECBAgAABAgQIECBAoGEBDcyGi7dv6GYjQIAAAQIECBAgQIAAAQIE8gvIkAABAgQIECBAgMDxAhqYx9dABAQIZBeQHwECBAgQIECAAAECBAgQIJBfQIYECBAgQIBAMQENzGKUBiJAgAABAgRKCxiPAAECBAgQIECAAAECBAgQyC8gQwIECLwW0MB8LeJ7AgQIECBAgAABAu0LyIAAAQIECBAgQIAAAQIECBDIL5A2Qw3MtKWVGAECBAgQIECAAAECBAjMF7AFAQIECBAgQIAAAQIECBwtoIF5dAV6mF+OBAgQIECAAAECBAgQIECAQH4BGRIgQIAAAQIECBAoJKCBWQjSMAQIENhCwJgECBAgQIAAAQIECBAgQIBAfgEZEiBAgAABAu8KaGC+6+E7AgQIECBAIIeALAgQIECAAAECBAgQIECAAIH8AjIkQCCpgAZm0sJKiwABAgQIECBAgMAyAVsRIECAAAECBAgQIECAAAEC+QXqzlADs+76iI4AAQIECBAgQIAAAQIEWhEQJwECBAgQIECAAAECBAgUEdDALMJokK0EjEuAAAECBAgQIECAAAECBAjkF5AhAQIECBAgQIAAgUsBDcxLDY8JECCQR0AmBAgQIECAAAECBAgQIECAQH4BGRIgQIAAgZQCGpgpyyopAgQIECBAYLmALQkQIECAAAECBAgQIECAAIH8AjIkQKBmAQ3MmqsjNgIECBAgQIAAAQItCYiVAAECBAgQIECAAAECBAgQyC+wQ4YamDsgm4IAAQIECBAgQIAAAQIECNwT8BoBAgQIECBAgAABAgQIvBXQwHxr4VEuAdkQIECAAAECBAgQIECAAAEC+QVkSIAAAQIECBAgkFBAAzNhUaVEgACBdQK2JkCAAAECBAgQIECAAAECBPILyJAAAQIECNQroIFZb21ERoAAAQIECLQmIF4CBAgQIECAAAECBAgQIEAgv4AMCRDYXEADc3NiExAgQIAAAQIECBAg8EjA6wQIECBAgAABAgQIECBAgEB+gakZamBOlbIeAQIECBAgQIAAAQIECBCoT0BEBAgQIECAAAECBAgQSCeggZmupBJaL2AEAgQIECBAgAABAgQIECBAIL+ADAkQIECAAAECBGoV0MCstTLiIkCAQIsCYiZAgAABAgQIECBAgAABAgTyC8iQAAECBAhsLKCBuTGw4QkQIECAAAECUwSsQ4AAAQIECBAgQIAAAQIECOQXkCEBAtMENDCnOVmLAAECBAgQIECAAIE6BURFgAABAgQIECBAgAABAgQIJBO40sBMlqF0CBAgQIAAAQIECBAgQIAAgSsCniJAgAABAgQIECBAgECdAhqYddZFVK0KiJsAAQIECBAgQIAAAQIECBDILyBDAgQIECBAgACBTQU0MDflNTgBAgQITBWwHgECBAgQIECAAAECBAgQIJBfQIYECBAgQGCKwH8CAAD///8I+j4AAAAGSURBVAMA5eYZG+vJFoIAAAAASUVORK5CYII=" alt="arc>>run" width="1840" height="560"></div>
|
||
<div class="brand-sub">知識入口・Portal</div>
|
||
</div>
|
||
<div style="display:flex;flex-direction:column;gap:12px;text-align:left">
|
||
<input type="email" id="login-email" class="txt" placeholder="Email" autocomplete="username" style="padding:15px 16px;font-size:17px;border-radius:11px">
|
||
<input type="password" id="login-password" class="txt" placeholder="密碼" autocomplete="current-password" style="padding:15px 16px;font-size:17px;border-radius:11px">
|
||
<button class="btn" id="login-submit" style="margin-top:6px;padding:15px;font-size:17px;letter-spacing:.2em">登入</button>
|
||
<div id="login-status" class="err" style="font-size:14px;min-height:1.2em"></div>
|
||
</div>
|
||
<div style="font-size:13.5px;color:rgba(var(--ink-rgb),.4);line-height:1.7">帳號由管理員發放。忘記密碼請聯絡管理員重設。</div>
|
||
<button class="btn3 themelabel" data-themetoggle style="align-self:center;padding:8px 16px;font-size:13.5px;border-radius:999px">☾ 切深色</button>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- 首次設定(t49,leo 07-25:一鍵安裝的用戶打開專屬網址,第一件事就是在這裡建帳號,
|
||
不再需要回安裝器那頁。auth-status 說 configured:false 才會出現。)-->
|
||
<div class="authwrap view" id="v-firstsetup">
|
||
<div class="authbox">
|
||
<div>
|
||
<div class="brand" role="img" aria-label="Arcrun"><img class="wm-ink" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABzAAAAIwCAYAAADppv0tAAAQAElEQVR4AezdzY4j2bYY5og61xPZGmee6n4TCzhZIxvQAaSB3kAP4WFVPYRnHnrmgQx4KqCqX8BHgAc27AsPdLtSzHv7jgz7wkCfCsVmJCv/mEkG42/vtT+i2cwkI/Ze61sRyWAskvWucSFAgAABAgQIECBAgAABAgSiC8iPAAECBAgQIECAAAECxQhoYBZTKoHmJyAiAgQIECBAgAABAgQIECBAIL6ADAkQIECAAAECBNYW0MBcW9x8BAgQINA0DAgQIECAAAECBAgQIECAAIH4AjIkQIAAAQIXCmhgXghnNQIECBAgQIDAFgLmJECAAAECBAgQIECAAAECBOILyJBA7QIamLVvAfInQIAAAQIECBAgUIeALAkQIECAAAECBAgQIECAAIFCBCY0MAvJUJgECBAgQIAAAQIECBAgQIDABAGrEiBAgAABAgQIECBAYF0BDcx1vc1GYBDwfwIECBAgQIAAAQIECBAgQCC+gAwJECBAgAABAgQuEtDAvIjNSgQIECCwlYB5CRAgQIAAAQIECBAgQIAAgfgCMiRAgACBugU0MOuuv+wJECBAgACBegRkSoAAAQIECBAgQIAAAQIECMQXkCGBEAIamCHKKAkCBAgQIECAAAECBJYTMDIBAgQIECBAgAABAgQIECCwpsA2Dcw1MzQXAQIECBAgQIAAAQIECBAgsI2AWQkQIECAAAECBAgQIHCBgAbmBWhWIbClgLkJECBAgAABAgQIECBAgACB+AIyJECAAAECBAjULKCBWXP15U6AAIG6BGRLgAABAgQIECBAgAABAgQIxBeQIQECBAgEENDADFBEKRAgQIAAAQIElhUwOgECBAgQIECAAAECBAgQIBBfQIYE8hHQwMynFiIhQIAAAQIECBAgQCCagHwIECBAgAABAgQIECBAgACB0QLFNTBHZ2gFAgQIECBAgAABAgQIECBAoDgBARMgQIAAAQIECBAgUK+ABma9tZd5fQIyJkCAAAECBAgQIECAAAECBOILyJAAAQIECBAgULyABmbxJZQAAQIECCwvYAYCBAgQIECAAAECBAgQIEAgvoAMCRAgQCAXAQ3MXCohDgIECBAgQIBARAE5ESBAgAABAgQIECBAgAABAvEFZEhgZgENzJlBDUeAAAECBAgQIECAAIE5BIxBgAABAgQIECBAgAABAgRqFaipgVlrjeVNgAABAgQIECBAgAABAgRqEpArAQIECBAgQIAAAQKFC2hgFl5A4RNYR8AsBAgQIECAAAECBAgQIECAQHwBGRIgQIAAAQIE8hDQwMyjDqIgQIAAgagC8iJAgAABAgQIECBAgAABAgTiC8iQAAECBGYV0MCcldNgBAgQIECAAAECcwkYhwABAgQIECBAgAABAgQIEIgvIEMCxwQ0MI+puI8AAQIECBAgQIAAAQLlCoicAAECBAgQIECAAAECBAgULaCBeVb5LESAAAECBAgQIECAAAECBAjEF5AhAQIECBAgQIAAAQI5CGhg5lAFMRCILCA3AgQIECBAgAABAgQIECBAIL6ADAkQIECAAAECMwpoYM6IaSgCBAgQIDCngLEIECBAgAABAgQIECBAgACB+AIyJECAAIGXAhqYL03cQ4AAAQIECBAgULaA6AkQIECAAAECBAgQIECAAIH4AjIMLKCBGbi4UiNAgAABAgQIECBAgMA4AUsTIECAAAECBAgQIECAAIHtBTQwl66B8QkQIECAAAECBAgQIECAAIH4AjIkQIAAAQIECBAgQGA2AQ3M2SgNRIDA3ALGI0CAAAECBAgQIECAAAECBOILyJAAAQIECBAg8FxAA/O5iN8JECBAgED5AjIgQIAAAQIECBAgQIAAAQIE4gvIkAABAmEFNDDDllZiBAgQIECAAAEC4wWsQYAAAQIECBAgQIAAAQIECMQXkGHuAhqYuVdIfAQIECBAgAABAgQIEChBQIwECBAgQIAAAQIECBAgQGAmAQ3MmSCXGMaYBAgQIECAAAECBAgQIECAQHwBGRIgQIAAAQIECBAg8FRAA/Oph98IEIghIAsCBAgQIECAAAECBAgQIEAgvoAMCRAgQIAAgaACGphBCystAgQIECBwmYC1CBAgQIAAAQIECBAgQIAAgfgCMiRAgEDeAhqYeddHdAQIECBAgAABAqUIiJMAAQIECBAgQIAAAQIECBCILyDDVQQ0MFdhNgkBAgQIECBAgAABAgQIvCbgfgIECBAgQIAAAQIECBAg8FhAA/OxRpyfZUKAAAECBAgQIECAAAECBAjEF5AhAQIECBAgQIAAgZACGpghyyopAgQuF7AmAQIECBAgQIAAAQIECBAgEF9AhgQIECBAgEDO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CMiEAAECBAgQIECAAAECBAgQiC8gQwJLCGhgLqFqTAIECBAgQIAAAQIECFwuYE0CBAgQIECAAAECBAgQIFC1QCUNzKprLHkCBAgQIECAAAECBAgQIFCJgDQJECBAgAABAgQIEIggoIEZoYpyILCkgLEJECBAgAABAgQIECBAgACB+AIyJECAAAECBAhkJKCBmVExhEKAAAECsQRkQ4AAAQIECBAgQIAAAQIECMQXkCEBAgQIzC+ggTm/qREJECBAgAABAgSmCVibAAECBAgQIECAAAECBAgQiC8gQwKvCmhgvkrjAQIECBAgQIAAAQIECJQmIF4CBAgQIECAAAECBAgQIFC+gAbmqRp6nAABAgQIECBAgAABAgQIEIgvIEMCBAgQIECAAAECBLIR0MDMphQCIRBPQEYECBAgQIAAAQIECBAgQIBAfAEZEiBAgAABAgTmFtDAnFvUeAQIECBAYLqAEQgQIECAAAECBAgQIECAAIH4AjIkQIAAgVcENDBfgXE3AQIECBAgQIBAiQJiJkCAAAECBAgQIECAAAECBOILyDC6gAZm9ArLjwABAgQIECBAgAABAucIWIYAAQIECBAgQIAAAQIECGQioIG5YCEMTYAAAQIECBAgQIAAAQIECMQXkCEBAgQIECBAgAABAvMKaGDO62k0AgTmETAKAQIECBAgQIAAAQIECBAgEF9AhgQIECBAgACBiXmvtAAAEABJREFUowIamEdZ3EmAAAECBEoVEDcBAgQIECBAgAABAgQIECAQX0CGBAgQiC2ggRm7vrIjQIAAAQIECBA4V8ByBAgQIECAAAECBAgQIECAQHwBGRYhoIFZRJkESYAAAQIECBAgQIAAgXwFREaAAAECBAgQIECAAAECBOYU0MCcU3O+sYxEgAABAgQIECBAgAABAgQIxBeQIQECBAgQIECAAAECRwQ0MI+guIsAgZIFxE6AAAECBAgQIECAAAECBAjEF5AhAQIECBAgEFlAAzNydeVGgAABAgTGCFiWAAECBAgQIECAAAECBAgQiC8gQwIECBQgoIFZQJGESIAAAQIECBAgkLeA6AgQIECAAAECBAgQIECAAIH4AjJcT0ADcz1rMxEgQIAAAQIECBAgQIDAUwG/ESBAgAABAgQIECBAgACBFwIamC9ISr9D/AQIECBAgAABAgQIECBAgEB8ARkSIECAAAECBAgQiCuggRm3tjIjQGCsgOUJECBAgAABAgQIECBAgACB+AIyJECAAAECBLIX0MDMvkQCJECAAAEC+QuIkAABAgQIECBAgAABAgQIEIgvIEMCBAisJaCBuZa0eQgQIECAAAECBAi8FHAPAQIECBAgQIAAAQIECBAgEF9AhiMFNDBHglmcAAECBAgQIECAAAECBHIQEAMBAgQIECBAgAABAgQIRBXQwIxa2Uvysg4BAgQIECBAgAABAgQIECAQX0CGBAgQIECAAAECBDIX0MDMvEDCI0CgDAFREiBAgAABAgQIECBAgAABAvEFZEiAAAECBAisI6CBuY6zWQgQIECAAIHjAu4lQIAAAQIECBAgQIAAAQIE4gvIkAABAqMENDBHcVmYAAECBAgQIECAQC4C4iBAgAABAgQIECBAgAABAgTiC9SZoQZmnXWXNQECBAgQIECAAAECBOoVkDkBAgQIECBAgAABAgQIZC2ggZl1ecoJTqQECBAgQIAAAQIECBAgQIBAfAEZEiBAgAABAgQIEFhDQANzDWVzECBA4HUBjxAgQIAAAQIECBAgQIAAAQLxBWRIgAABAgQIjBDQwByBZVECBAgQIEAgJwGxECBAgAABAgQIECBAgAABAvEFZEiAQI0CGpg1Vl3OBAgQIECAAAECdQvIngABAgQIECBAgAABAgQIEIgvUHCGGpgFF0/oBAgQIECAAAECBAgQILCugNkIECBAgAABAgQIECBAYHkBDczljc3wtoBHCRAgQIAAAQIECBAgQIAAgfgCMiRAgAABAgQIECBwtoAG5tlUFiRAgEBuAuIhQIAAAQIECBAgQIAAAQIE4gvIkAABAgQI1CeggVlfzWVMgAABAgQIECBAgAABAgQIECBAgAABAgTiC8iQAIFiBTQwiy2dwAkQIECAAAECBAisL2BGAgQIECBAgAABAgQIECBAIL7A1hlqYG5dAfMTIECAAAECBAgQIECAQA0CciRAgAABAgQIECBAgACBMwU0MM+EsliOAmIiQIAAAQIECBAgQIAAAQIE4gvIkAABAgQIECBAoDYBDczaKi5fAgQIJAFXAgQIECBAgAABAgQIECBAIL6ADAkQIECAQKECGpiFFk7YBAgQIECAwDYCZiVAgAABAgQIECBAgAABAgTiC8iQAIFtBTQwt/U3OwECBAgQIECAAIFaBORJgAABAgQIECBAgAABAgQIxBeYJUMNzFkYDUKAAAECBAgQIECAAAECBJYSMC4BAgQIECBAgAABAgTqEtDArKvesj0IuCVAgAABAgQIECBAgAABAgTiC8iQAAECBAgQIECgSAENzCLLJmgCBAhsJ2BmAgQIECBAgAABAgQIECBAIL6ADAkQIECAwJYCGphb6pubAAECBAgQqElArgQIECBAgAABAgQIECBAgEB8ARkSIDCDgAbmDIiGIECAAAECBAgQIEBgSQFjEyBAgAABAgQIECBAgAABAvEFHjLUwHyw8BMBAgQIECBAgAABAgQIEIglIBsCBAgQIECAAAECBAgUKKCBWWDRhLytgNkJECBAgAABAgQIECBAgACB+AIyJECAAAECBAgQ2E5AA3M7ezMTIECgNgH5EiBAgAABAgQIECBAgAABAvEFZEiAAAECBCYLaGBOJjQAAQIECBAgQGBpAeMTIECAAAECBAgQIECAAAEC8QVkSIDAQUAD8yDhlgABAgQIECBAgACBeAIyIkCAAAECBAgQIECAAAECBIoTGN3ALC5DARMgQIAAAQIECBAgQIAAAQKjBaxAgAABAgQIECBAgACBrQQ0MLeSN2+NAnImQIAAAQIECBAgQIAAAQIE4gvIkAABAgQIECBAYKKABuZEQKsTIECAwBoC5iBAgAABAgQIECBAgAABAgTiC8iQAAECBAgMAhqYg4P/EyBAgAABAgRiCsiKAAECBAgQIECAAAECBAgQiC8gQwLBBDQwgxVUOgQIECBAgAABAgQIzCNgFAIECBAgQIAAAQIECBAgQGAbgTUbmNtkaFYCBAgQIECAAAECBAgQIEBgTQFzESBAgAABAgQIECBAYJKABuYkPisTWEvAPAQIECBAgAABAgQIECBAgEB8ARkSIECAAAECBAgkAQ3MpOBKgAABAnEFZEaAAAECBAgQIECAAAECBAjEF5AhAQIECIQS0MAMVU7JECBAgAABAgTmEzASAQIECBAgQIAAAQIECBAgEF9AhgRyFNDAzLEqYiJAgAABAgQIECBAoGQBsRMgQIAAAQIECBAgQIAAAQITBAppYE7I0KoECBAgQIAAAQIECBAgQIBAIQLCJECAAAECBAgQIECAQNNoYNoKCEQXkB8BAgQIECBAgAABAgQIECAQX0CGBAgQIECAAIFAAhqYgYopFQIECBCYV8BoBAgQIECAAAECBAgQIECAQHwBGRIgQIBAfgIamPnVREQECBAgQIAAgdIFxE+AAAECBAgQIECAAAECBAjEF5AhgcUENDAXozUwAQIECBAgQIAAAQIExgpYngABAgQIECBAgAABAgQIEIjfwFRjAgQIECBAgAABAgQIECBAIL6ADAkQIECAAAECBAgQCCOggRmmlBIhML+AEQkQIECAAAECBAgQIECAAIH4AjIkQIAAAQIECOQmoIGZW0XEQ4AAAQIRBORAgAABAgQIECBAgAABAgQIxBeQIQECBAgsJKCBuRCsYQkQIECAAAECBC4RsA4BAgQIECBAgAABAgQIECAQX0CGBN4W0MB828ejBAgQIECAAAECBAgQKENAlAQIECBAgAABAgQIECBAIIiABuYbhfQQAQIECBAgQIAAAQIECBAgEF9AhgQIECBAgAABAgQI5CWggZlXPURDIIqAPAgQIECAAAECBAgQIECAAIH4AjIkQIAAAQIECCwioIG5CKtBCRAgQIDApQLWI0CAAAECBAgQIECAAAECBOILyJAAAQIE3hLQwHxLx2MECBAgQIAAAQLlCIiUAAECBAgQIECAAAECBAgQiC8gwyoENDCrKLMkCRAgQIAAAQIECBAg8LqARwgQIECAAAECBAgQIECAQE4CGpjLVMOoBAgQIECAAAECBAgQIECAQHwBGRIgQIAAAQIECBAgsICABuYCqIYkQGCKgHUJECBAgAABAgQIECBAgACB+AIyJECAAAECBAi8LqCB+bqNRwgQIECAQFkCoiVAgAABAgQIECBAgAABAgTiC8iQAAECFQhoYFZQZCkSIECAAAECBAi8LeBRAgQIECBAgAABAgQIECBAIL6ADMsR0MAsp1YiJUCAAAECBAgQIECAQG4C4iFAgAABAgQIECBAgAABArMLaGDOTjp1QOsTIECAAAECBAgQIECAAAEC8QVkSIAAAQIECBAgQIDAawIamK/JuJ8AgfIEREyAAAECBAgQIECAAAECBAjEF5AhAQIECBAgEF5AAzN8iSVIgAABAgROC1iCAAECBAgQIECAAAECBAgQiC8gQwIECJQioIFZSqXESYAAAQIECBAgkKOAmAgQIECAAAECBAgQIECAAIH4AjJcWUADc2Vw0xEgQIAAAQIECBAgQIBAEnAlQIAAAQIECBAgQIAAAQLHBTQwj7uUea+oCRAgQIAAAQIECBAgQIAAgfgCMiRAgAABAgQIECAQXEADM3iBpUeAwHkCliJAgAABAgQIECBAgAABAgTiC8iQAAECBAgQKENAA7OMOomSAAECBAjkKiAuAgQIECBAgAABAgQIECBAIL6ADAkQILCqgAbmqtwmI0CAAAECBAgQIHAQcEuAAAECBAgQIECAAAECBAjEF5DhJQIamJeoWYcAAQIECBAgQIAAAQIEthMwMwECBAgQIECAAAECBAiEFtDADF3e85OzJAECBAgQIECAAAECBAgQIBBfQIYECBAgQIAAAQIEShDQwCyhSmIkQCBnAbERIECAAAECBAgQIECAAAEC8QVkSIAAAQIECKwooIG5IrapCBAgQIAAgccCfiZAgAABAgQIECBAgAABAgTiC8iQAAEC4wU0MMebWYMAAQIECBAgQIDAtgJmJ0CAAAECBAgQIECAAAECBOILVJyhBmbFxZc6AQIECBAgQIAAAQIEahOQLwECBAgQIECAAAECBAjkL6CBmX+Nco9QfAQIECBAgAABAgQIECBAgEB8ARkSIECAAAECBAgQWE1AA3M1ahMRIEDguYDfCRAgQIAAAQIECBAgQIAAgfgCMiRAgAABAgTGCmhgjhWzPAECBAgQILC9gAgIECBAgAABAgQIECBAgACB+AIyJECgWgENzGpLL3ECBAgQIECAAIEaBeRMgAABAgQIECBAgAABAgQIxBcoPUMNzNIrKH4CBAgQIECAAAECBAgQWEPAHAQIECBAgAABAgQIECCwkoAG5krQpjkm4D4CBAgQIECAAAECBAgQIEAgvoAMCRAgQIAAAQIECIwT0MAc52VpAgQI5CEgCgIECBAgQIAAAQIECBAgQCC+gAwJECBAgEClAhqYlRZe2gQIECBAoFYBeRMgQIAAAQIECBAgQIAAAQLxBWRIgEDZAhqYZddP9AQIECBAgAABAgTWEjAPAQIECBAgQIAAAQIECBAgEF8giww1MLMogyAIECBAgAABAgQIECBAIK6AzAgQIECAAAECBAgQIEBgjIAG5hgty+YjIBICBAgQIECAAAECBAgQIEAgvoAMCRAgQIAAAQIEqhTQwKyy7JImQKBmAbkTIECAAAECBAgQIECAAAEC8QVkSIAAAQIEShbQwCy5emInQIAAAQIE1hQwFwECBAgQIECAAAECBAgQIBBfQIYECGQgoIGZQRGEQIAAAQIECBAgQCC2gOwIECBAgAABAgQIECBAgACB+ALzZaiBOZ+lkQgQIECAAAECBAgQCClw8zch05LUvUDm9b2P0g0BAgQIECBAgAABAgRqEtDArKnact0L+B8BAgQIECBAgACBcwWu/vj+31398f/8n85d3nJlCahvWfUSLYGxAlr4aqcAABAASURBVJYnQIAAAQIECBAoV0ADs9zaiZwAAQJrC5iPAAECBAhUJZCaW03X/Ot03f/cuEQS2NdUfSOVVC4ECBAgMJ+AkQgQIECAwOYCGpibl0AABAgQIECAQHwBGRIgUJrAj+bWIfC+0bW/7/C726IF9rXsa/ojif7n/X0/7vADAQIECBAgQIAAgUsErEOAwFwCGphzSRqHAAECBAgQIECAAIH5BTYYsW9k/c/pU5cvptbkekFS4h3qW2LVxEyAAAECBAgQIECAQHiBZwlqYD4D8SsBAgQIECBAgAABAvUK3De3/tWrApqYr9KU8EBt9S2hJmIkQIAAAQIECBAgQIDAMQENzGMq7iNwXMC9BAgQIECAAAECgQVONrcOuWtiHiSKulXfosolWAJbC5ifAAECBAgQIEBgYwENzI0LYHoCBAjUISBLAgQIECCQt8DZza1DGpqYB4kibtW3iDIJkgABAgRCCEiCAAECBAjMI6CBOY+jUQgQIECAAAECywgYlQCBxQVGN7cOEWliHiSyvlXfrMsjOAIECBAgQIAAgYOAWwIEnghoYD7h8AsBAgQIECBAgAABAlEEzsnj4ubWYXBNzINElrfqm2VZBEWAAAECBAgQIECAAIGTAmMamCcHswABAgQIECBAgAABAgRKEZjc3Dokqol5kMjqVn0nlcPKBAgQIECAAAECBAgQ2FRAA3NTfpPXIyBTAgQIECBAgACBnARma24dktLEPEhkcau+WZRBEAQqFZA2AQIECBAgQIDAHAIamHMoGoMAAQIElhMwMgECBAgQmFlg9ubWIT5NzIPEprfquym/yQkQIECAwOUC1iRAgAABAo8ENDAfYfiRAAECBAgQIBBJQC4ECLwUWKy5dZhKE/Mgscmt+m7CblICBAgQIECAAIGNBUxPIKKABmbEqsqJAAECBAgQIECAAIEXAiOaWy/WHXWHJuYorrkWVt+5JI1DgAABAgQIECBAgACB7QVWamBun6gI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AgQIECBAgACBeAIyIkCAAAECBAgQIECAAIHiBDQwiyvZ9gGLgAABAgQIECBAgAABAgQIEIgvIEMCBAgQIECAAAECWwloYG4lb14CBGoUkDMBAgQIECBAgAABAgQIECAQX0CGBAgQIECAwEQBDcyJgFYnQIAAAQIE1hAwBwECBAgQIECAAAECBAgQIBBfQIYECBAYBDQwBwf/J0CAAAECBAgQIBBTQFYECBAgQIAAAQIECBAgQIBAfIFgGWpgBiuodAgQIECAAAECBAgQIEBgHgGjECBAgAABAgQIECBAgMA2AhqY27jXOqu8CRAgQIAAAQIECBAgQIAAgfgCMiRAgAABAgQIECAwSUADcxKflQkQILCWgHkIECBAgAABAgQIECBAgACB+AIyJECAAAECBJKABmZScCVAgAABAgTiCsiMAAECBAgQIECAAAECBAgQiC8gQwIEQgloYIYqp2QIECBAgAABAgQIzCdgJAIECBAgQIAAAQIECBAgQCC+QI4ZamDmWBUxESBAgAABAgQIECBAgEDJAmInQIAAAQIECBAgQIAAgQkCGpgT8Ky6poC5CBAgQIAAAQIECBAgQIAAgfgCMiRAgAABAgQIECDQNBqYtgICBAhEF5AfAQIECBAgQIAAAQIECBAgEF9AhgQIECBAIJCABmagYkqFAAECBAgQmFfAaAQIECBAgAABAgQIECBAgEB8ARkSIJCfgAZmfjUREQECBAgQIECAAIHSBcRPgAABAgQIECBAgAABAgQIxBdYLEMNzMVoDUyAAAECBAgQIECAAAECBMYKWJ4AAQIECBAgQIAAAQIENDBtA/EFZEiAAAECBAgQIECAAAECBAjEF5AhAQIECBAgQIBAGAENzDCllAgBAgTmFzAiAQIECBAgQIAAAQIECBAgEF9AhgQIECBAIDcBDczcKiIeAgQIECBAIIKAHAgQIECAAAECBAgQIECAAIH4AjIkQGAhAQ3MhWANS4AAAQIECBAgQIDAJQLWIUCAAAECBAgQIECAAAECBOILvJ2hBubbPh4lQIAAAQIECBAgQIAAAQJlCIiSAAECBAgQIECAAAECQQQ0MIMUUhrLCBiVAAECBAgQIECAAAECBAgQiC8gQwIECBAgQIAAgbwENDDzqodoCBAgEEVAHgQIECBAgAABAgQIECBAgEB8ARkSIECAAIFFBDQwF2E1KAECBAgQIEDgUgHrESBAgAABAgQIECBAgAABAvEFZEiAwFsCGphv6XiMAAECBAgQIECAAIFyBERKgAABAgQIECBAgAABAgQIhBB4s4EZIkNJECBAgAABAgQIECBAgAABAm8KeJAAAQIECBAgQIAAAQI5CWhg5lQNsUQSkAsBAgQIECBAgAABAgQIECAQX0CGBAgQIECAAAECCwhoYC6AakgCBAgQmCJgXQIECBAgQIAAAQIECBAgQCC+gAwJECBAgMDrAhqYr9t4hAABAgQIECBQloBoCRAgQIAAAQIECBAgQIAAgfgCMiRQgYAGZgVFliIBAgQIECBAgAABAm8LeJQAAQIECBAgQIAAAQIECBDIR2CpBmY+GYqEAAECBAgQIECAAAECBAgQWErAuAQIECBAgAABAgQIEJhdQANzdlIDEpgqYH0CBAgQIECAAAECBAgQIEAgvoAMCRAgQIAAAQIEXhPQwHxNxv0ECBAgUJ6AiAkQIECAAAECBAgQIECAAIH4AjIkQIAAgfACGpjhSyxBAgQIECBAgMBpAUsQIECAAAECBAgQIECAAAEC8QVkSKAUAQ3MUiolTgIECBAgQIAAAQIEchQQEwECBAgQIECAAAECBAgQIDCzQIYNzJkzNBwBAgQIECBAgAABAgQIECCQoYCQCBAgQIAAAQIECBAgcFxAA/O4i3sJlCkgagIECBAgQIAAAQIECBAgQCC+gAwJECBAgAABAsEFNDCDF1h6BAgQIHCegKUIECBAgAABAgQIECBAgACB+AIyJECAAIEyBDQwy6iTKAkQIECAAAECuQqIiwABAgQIECBAgAABAgQIEIgvIEMCqwpoYK7KbTICBAgQIECAAAECBAgcBNwSIECAAAECBAgQIECAAAECxwRiNTCPZeg+AgQIECBAgAABAgQIECBAIJaAbAgQIECAAAECBAgQCC2ggRm6vJIjcL6AJQkQIECAAAECBAgQIECAAIH4AjIkQIAAAQIECJQgoIFZQpXESIAAAQI5C4iNAAECBAgQIECAAAECBAgQiC8gQwIECBBYUUADc0VsUxEgQIAAAQIECDwW8DMBAgQIECBAgAABAgQIECAQX0CGBMYLaGCON7MGAQIECBAgQIAAAQIEthUwOwECBAgQIECAAAECBAgQCCyggXlfXDcECBAgQIAAAQIECBAgQIBAfAEZEiBAgAABAgQIECCQv4AGZv41EiGB3AXER4AAAQIECBAgQIAAAQIECMQXkCEBAgQIECBAYDUBDczVqE1EgAABAgSeC/idAAECBAgQIECAAAECBAgQiC8gQwIECBAYK6CBOVbM8gQIECBAgAABAtsLiIAAAQIECBAgQIAAAQIECBCILyDDagU0MKstvcQJECBAgAABAgQIEKhRQM4ECBAgQIAAAQIECBAgQCB3AQ3M6RUyAgECBAgQIECAAAECBAgQIBBfQIYECBAgQIAAAQIECKwkoIG5ErRpCBA4JuA+AgQIECBAgAABAgQIECBAIL6ADAkQIECAAAEC4wQ0MMd5WZoAAQIECOQhIAoCBAgQIECAAAECBAgQIEAgvoAMCRAgUKmABmalhZc2AQIECBAgQKBWAXkTIECAAAECBAgQIECAAAEC8QVkWLaABmbZ9RM9AQIECBAgQIAAAQIE1hIwDwECBAgQIECAAAECBAgQWEVAA3MV5tcmcT8BAgQIECBAgAABAgQIECAQX0CGBAgQIECAAAECBAiMEdDAHKNlWQIE8hEQCQECBAgQIECAAAECBAgQIBBfQIYECBAgQIBAlQIamFWWXdIECBAgULOA3AkQIECAAAECBAgQIECAAIH4AjIkQIBAyQIamCVXT+wECBAgQIAAAQJrCpiLAAECBAgQIECAAAECBAgQiC8gwwwENDAzKIIQCBAgQIAAAQIECBAgEFtAdgQIECBAgAABAgQIECBA4HwBDczzrfJaUjQECBAgQIAAAQIECBAgQIBAfAEZEiBAgAABAgQIEKhQQAOzwqJLmUDtAvInQIAAAQIECBAgQIAAAQIE4gvIkAABAgQIEChXQAOz3NqJnAABAgQIrC1gPgIECBAgQIAAAQIECBAgQCC+gAwJECCwuYAG5uYlEAABAgQIECBAgEB8ARkSIECAAAECBAgQIECAAAEC8QVkOJeABuZcksYhQIAAAQIECBAgQIAAgfkFjEiAAAECBAgQIECAAAEC1QloYFZX8qaRMgECBAgQIECAAAECBAgQIBBfQIYECBAgQIAAAQIEShXQwCy1cuImQGALAXMSIECAAAECBAgQIECAAAEC8QVkSIAAAQIECGwsoIG5cQFMT4AAAQIE6hCQJQECBAgQIECAAAECBAgQIBBfQIYECBCYR0ADcx5HoxAgQIAAAQIECBBYRsCoBAgQIECAAAECBAgQIECAQHwBGT4R0MB8wuEXAgQIECBAgAABAgQIEIgiIA8CBAgQIECAAAECBAgQKFNAA7PMum0VtXkJECBAgAABAgQIECBAgACB+AIyJECAAAECBAgQILCpgAbmpvwmJ0CgHgGZEiBAgAABAgQIECBAgAABAvEFZEiAAAECBAjMIaCBOYeiMQgQIECAAIHlBIxMgAABAgQIECBAgAABAgQIxBeQIQECBB4JaGA+wvAjAQIECBAgQIAAgUgCciFAgAABAgQIECBAgAABAgTiC0TMUAMzYlXlRIAAAQIECBAgQIAAAQJTBKxLgAABAgQIECBAgAABAhsKaGBuiF/X1LIlQIAAAQIECBAgQIAAAQIE4gvIkAABAgQIECBAgMB0AQ3M6YZGIECAwLICRidAgAABAgQIECBAgAABAgTiC8iQAAECBAgQ+CGggfmDwg8ECBAgQIBANAH5ECBAgAABAgQIECBAgAABAvEFZEiAQDwBDcx4NZURAQIECBAgQIAAgakC1idAgAABAgQIECBAgAABAgTiC2SboQZmtqURGAECBAgQIECAAAECBAiUJyBiAgQIECBAgAABAgQIEJgqoIE5VdD6ywuYgQABAgQIECBAgAABAgQIEIgvIEMCBAgQIECAAAEC9wIamPcQbggQIBBRQE4ECBAgQIAAAQIECBAgQIBAfAEZEiBAgACBaAIamNEqKh8CBAgQIEBgDgFjECBAgAABAgQIECBAgAABAvEFZEiAQKYCGpiZFkZYBAgQIECAAAECBMoUEDUBAgQIECBAgAABAgQIECAQX2DZDDUwl/U1OgECBAgQIECAAAECBAgQOE/AUgQIECBAgAABAgQIECCwF9DA3DP4X1QBeREgQIAAAQIECBAgQIAAAQLxBWRIgAABAgQIECAQS0ADM1Y9ZUOAAIG5BIxDgAABAgQIECBAgAABAgQIxBeQIQECBAgQyFJAAzPLsgiKAAECBAgQKFdA5AQIECBAgAABAgQIECBAgEB8ARkSILCkgAbmkrrGJkCAAAECBAgQIEDgfAFLEiBAgAABAgQIECBAgAABAvEFzshQA/MMJIsQIECAAAECBAgQIECAAIGcBcRGgAABAgQIECBAgACBSAIamJGqKZc5BYxFgAABAgQIECBAgAABAgQIxBeQIQEC69VInQAAC7NJREFUBAgQIECAQIYCGpgZFkVIBAgQKFtA9AQIECBAgAABAgQIECBAgEB8ARkSIECAAIHlBDQwl7M1MgECBAgQIEBgnIClCRAgQIAAAQIECBAgQIAAgfgCMiRA4KSABuZJIgsQIECAAAECBAgQIJC7gPgIECBAgAABAgQIECBAgACBOAKvNTDjZCgTAgQIECBAgAABAgQIECBA4DUB9xMgQIAAAQIECBAgQCA7AQ3M7EoioPIFZECAAAECBAgQIECAAAECBAjEF5AhAQIECBAgQIDAUgIamEvJGpcAAQIExgtYgwABAgQIECBAgAABAgQIEIgvIEMCBAgQIHBCQAPzBJCHCRAgQIAAAQIlCIiRAAECBAgQIECAAAECBAgQiC8gQwK1CGhg1lJpeRIgQIAAAQIECBAgcEzAfQQIECBAgAABAgQIECBAgEBmAgs0MDPLUDgECBAgQIAAAQIECBAgQIDAAgKGJECAAAECBAgQIECAwDICGpjLuBqVwGUC1iJAgAABAgQIECBAgAABAgTiC8iQAAECBAgQIEDgTQENzDd5PEiAAAECpQiIkwABAgQIECBAgAABAgQIEIgvIEMCBAgQqENAA7OOOsuSAAECBAgQIPCagPsJECBAgAABAgQIECBAgACB+AIyJFCUgAZmUeUSLAECBAgQIECAAAEC+QiIhAABAgQIECBAgAABAgQIEFhCIK8G5hIZGpMAAQIECBAgQIAAAQIECBDIS0A0BAgQIECAAAECBAgQeENAA/MNHA8RKElArAQIECBAgAABAgQIECBAgEB8ARkSIECAAAECBGoQ0MCsocpyJECAAIG3BDxGgAABAgQIECBAgAABAgQIxBeQIQECBAgUJKCBWVCxhEqAAAECBAgQyEtANAQIECBAgAABAgQIECBAgEB8ARkSWF9AA3N9czMSIECAAAECBAgQIFC7gPwJECBAgAABAgQIECBAgACBVwXCNDBfzdADBAgQIECAAAECBAgQIECAQBgBiRAgQIAAAQIECBAgEF9AAzN+jWVI4JSAxwkQIECAAAECBAgQIECAAIH4AjIkQIAAAQIECBQjoIFZTKkESoAAAQL5CYiIAAECBAgQIECAAAECBAgQiC8gQwIECBBYW0ADc21x8xEgQIAAAQIECDQNAwIECBAgQIAAAQIECBAgQCC+gAwJXCiggXkhnNUIECBAgAABAgQIECCwhYA5CRAgQIAAAQIECBAgQIBAdAENzKaJXmP5ESBAgAABAgQIECBAgAABAk3DgAABAgQIECBAgACBQgQ0MAsplDAJ5CkgKgIECBAgQIAAAQIECBAgQCC+gAwJECBAgAABAusKaGCu6202AgQIECAwCPg/AQIECBAgQIAAAQIECBAgEF9AhgQIECBwkYAG5kVsViJAgAABAgQIENhKwLwECBAgQIAAAQIECBAgQIBAfAEZ1i2ggVl3/WVPgAABAgQIECBAgEA9AjIlQIAAAQIECBAgQIAAAQJFCGhgTiqTlQkQIECAAAECBAgQIECAAIH4AjIkQIAAAQIECBAgQGBNAQ3MNbXNRYDAg4CfCBAgQIAAAQIECBAgQIAAgfgCMiRAgAABAgQIXCCggXkBmlUIECBAgMCWAuYmQIAAAQIECBAgQIAAAQIE4gvIkAABAjULaGDWXH25EyBAgAABAgTqEpAtAQIECBAgQIAAAQIECBAgEF9AhgEENDADFFEKBAgQIECAAAECBAgQWFbA6AQIECBAgAABAgQIECBAYD0BDcz1rJ/O5DcCBAgQIECAAAECBAgQIEAgvoAMCRAgQIAAAQIECBAYLaCBOZrMCgQIbC1gfgIECBAgQIAAAQIECBAgQCC+gAwJECBAgACBegU0MOutvcwJECBAoD4BGRMgQIAAAQIECBAgQIAAAQLxBWRIgACB4gU0MIsvoQQIECBAgAABAgSWFzADAQIECBAgQIAAAQIECBAgEF9AhrkIaGDmUglxECBAgAABAgQIECBAIKKAnAgQIECAAAECBAgQIECAwEgBDcyRYDksLgYCBAgQIECAAAECBAgQIEAgvoAMCRAgQIAAAQIECNQqoIFZa+XlTaBOAVkTIECAAAECBAgQIECAAAEC8QVkSIAAAQIECBQuoIFZeAGFT4AAAQIE1hEwCwECBAgQIECAAAECBAgQIBBfQIYECBDIQ0ADM486iIIAAQIECBAgQCCqgLwIECBAgAABAgQIECBAgACB+AIynFVAA3NWToMRIECAAAECBAgQIECAwFwCxiFAgAABAgQIECBAgACBOgU0MOuqu2wJECBAgAABAgQIECBAgACB+AIyJECAAAECBAgQIFC0gAZm0eUTPAEC6wmYiQABAgQIECBAgAABAgQIEIgvIEMCBAgQIEAgBwENzByqIAYCBAgQIBBZQG4ECBAgQIAAAQIECBAgQIBAfAEZEiBAYEYBDcwZMQ1FgAABAgQIECBAYE4BYxEgQIAAAQIECBAgQIAAAQLxBWT4UkAD86WJewgQIECAAAECBAgQIECgbAHREyBAgAABAgQIECBAgEDBAhqYBRdv3dDNRoAAAQIECBAgQIAAAQIECMQXkCEBAgQIECBAgACB7QU0MLevgQgIEIguID8CBAgQIECAAAECBAgQIEAgvoAMCRAgQIAAgdkENDBnozQQAQIECBAgMLeA8QgQIECAAAECBAgQIECAAIH4AjIkQIDAcwENzOcifidAgAABAgQIECBQvoAMCBAgQIAAAQIECBAgQIAAgfgCYTPUwAxbWokRIECAAAECBAgQIECAwHgBaxAgQIAAAQIECBAgQIDA1gIamFtXoIb55UiAAAECBAgQIECAAAECBAjEF5AhAQIECBAgQIAAgZkENDBngjQMAQIElhAwJgECBAgQIECAAAECBAgQIBBfQIYECBAgQIDAUwENzKcefiNAgAABAgRiCMiCAAECBAgQIECAAAECBAgQiC8gQwIEggpoYAYtrLQIECBAgAABAgQIXCZgLQIECBAgQIAAAQIECBAgQCC+QN4ZamDmXR/RESBAgAABAgQIECBAgEApAuIkQIAAAQIECBAgQIAAgVkENDBnYTTIUgLGJUCAAAECBAgQIECAAAECBOILyJAAAQIECBAgQIDAYwENzMcafiZAgEAcAZkQIECAAAECBAgQIECAAAEC8QVkSIAAAQIEQgpoYIYsq6QIECBAgACBywWsSYAAAQIECBAgQIAAAQIECMQXkCEBAjkLaGDmXB2xESBAgAABAgQIEChJQKwECBAgQIAAAQIECBAgQIBAfIEVMtTAXAHZFAQIECBAgAABAgQIECBA4C0BjxEgQIAAAQIECBAgQIDAg4AG5oOFn2IJyIYAAQIECBAgQIAAAQIECBCILyBDAgQIECBAgACBgAIamAGLKiUCBAhME7A2AQIECBAgQIAAAQIECBAgEF9AhgQIECBAIF8BDcx8ayMyAgQIECBAoDQB8RIgQIAAAQIECBAgQIAAAQLxBWRIgMDiAhqYixObgAABAgQIECBAgACBUwIeJ0CAAAECBAgQIECAAAECBOILnJuhBua5UpYjQIAAAQIECBAgQIAAAQL5CYiIAAECBAgQIECAAAEC4QQ0MMOVVELTBYxAgAABAgQIECBAgAABAgQIxBeQIQECBAgQIECAQK4CGpi5VkZcBAgQKFFAzAQIECBAgAABAgQIECBAgEB8ARkSIECAAIGFBTQwFwY2PAECBAgQIEDgHAHLECBAgAABAgQIECBAgAABAvEFZEiAwHkCGpjnOVmKAAECBAgQIECAAIE8BURFgAABAgQIECBAgAABAgQIBBM40sAMlqF0CBAgQIAAAQIECBAgQIAAgSMC7iJAgAABAgQIECBAgECeAhqYedZFVKUKiJsAAQIECBAgQIAAAQIECBCILyBDAgQIECBAgACBRQU0MBflNTgBAgQInCtgOQIECBAgQIAAAQIECBAgQCC+gAwJECBAgMA5Av8ZAAD//w2XfxsAAAAGSURBVAMAwNbHFNdKWR4AAAAASUVORK5CYII=" alt="arc>>run" width="1840" height="560"><img class="wm-paper" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABzAAAAIwCAYAAADppv0tAAAQAElEQVR4Aezd3Y4sV3Yg5sRIz8ARBAF6DZYeQD13stDd6JFtUSZgD+aSPPEI/hnAMJttGAYMC5IN3zW6+ykkTAmWIQtu0jO3PRAE8g0I3czkYjF48tTJn/jZEbH32l+j41RWZsTea30rojIiVmXxn/3z3/nd/2hhYB+wD9gH7AP2AfuAfcA+YB+wD9gH7AP2gdT7gGt/9z/sA/YB+4B9wD5gH7AP2AfsA/aBZvaBf3byPwIEFgrYjAABAgQIECBAgAABAgQIEMgvIEMCBAgQIECAAIG9BTQw9xY3HwECBAicTgwIECBAgAABAgQIECBAgACB/AIyJECAAAECCwU0MBfC2YwAAQIECBAgcISAOQkQIECAAAECBAgQIECAAIH8AjIk0LuABmbve4D8CRAgQIAAAQIECPQhIEsCBAgQIECAAAECBAgQIECgEYEVDcxGMhQmAQIECBAgQIAAAQIECBAgsELApgQIECBAgAABAgQIENhXQANzX2+zEXgR8C8BAgQIECBAgAABAgQIECCQX0CGBAgQIECAAAECiwQ0MBex2YgAAQIEjhIwLwECBAgQIECAAAECBAgQIJBfQIYECBAg0LeABmbf9Zc9AQIECBAg0I+ATAkQIECAAAECBAgQIECAAIH8AjIkkEJAAzNFGSVBgAABAgQIECBAgMB2AkYmQIAAAQIECBAgQIAAAQIE9hQ4poG5Z4bmIkCAAAECBAgQIECAAAECBI4RMCsBAgQIECBAgAABAgQWCGhgLkCzCYEjBcxNgAABAgQIECBAgAABAgQI5BeQIQECBAgQIECgZwENzJ6rL3cCBAj0JSBbAgQIECBAgAABAgQIECBAIL+ADAkQIEAggYAGZoIiSoEAAQIECBAgsK2A0QkQIECAAAECBAgQIECAAIH8AjIkUI+ABmY9tRAJAQIECBAgQIAAAQLZBORDgAABAgQIECBAgAABAgQIzBZoroE5O0MbECBAgAABAgQIECBAgAABAs0JCJgAAQIECBAgQIAAgX4FNDD7rb3M+xOQMQECBAgQIECAAAECBAgQIJBfQIYECBAgQIAAgeYFNDCbL6EECBAgQGB7ATMQIECAAAECBAgQIECAAAEC+QVkSIAAAQK1CGhg1lIJcRAgQIAAAQIEMgrIiQABAgQIECBAgAABAgQIEMgvIEMChQU0MAuDGo4AAQIECBAgQIAAAQIlBIxBgAABAgQIECBAgAABAgR6FeipgdlrjeVNgAABAgQIECBAgAABAgR6EpArAQIECBAgQIAAAQKNC2hgNl5A4RPYR8AsBAgQIECAAAECBAgQIECAQH4BGRIgQIAAAQIE6hDQwKyjDqIgQIAAgawC8iJAgAABAgQIECBAgAABAgTyC8iQAAECBIoKaGAW5TQYAQIECBAgQIBAKQHjECBAgAABAgQIECBAgAABAvkFZEjgmoAG5jUVzxEgQIAAAQIECBAgQKBdAZETIECAAAECBAgQIECAAIGmBTQwJ5XPSgQIECBAgAABAgQIECBAgEB+ARkSIECAAAECBAgQIFCDgAZmDVUQA4HMAnIjQIAAAQIECBAgQIAAAQIE8gvIkAABAgQIECBQUEADsyCmoQgQIECAQEkBYxEgQIAAAQIECBAgQIAAAQL5BWRIgAABAu8LaGC+b+IZAgQIECBAgACBtgVET4AAAQIECBAgQIAAAQIECOQXkGFiAQ3MxMWVGgECBAgQIECAAAECBOYJWJsAAQIECBAgQIAAAQIECBwvoIG5dQ2MT4AAAQIECBAgQIAAAQIECOQXkCEBAgQIECBAgAABAsUENDCLURqIAIHSAsYjQIAAAQIECBAgQIAAAQIE8gvIkAABAgQIECDwWkAD87WI7wkQIECAQPsCMiBAgAABAgQIECBAgAABAgTyC8iQAAECaQU0MNOWVmIECBAgQIAAAQLzBWxBgAABAgQIECBAgAABAgQI5BeQYe0CGpi1V0h8BAgQIECAAAECBAgQaEFAjAQIECBAgAABAgQIECBAoJCABmYhyC2GMSYBAgQIECBAgAABAgQIECCQX0CGBAgQIECAAAECBAi8K6CB+a6H7wgQyCEgCwIECBAgQIAAAQIECBAgQCC/gAwJECBAgACBpAIamEkLKy0CBAgQILBMwFYECBAgQIAAAQIECBAgQIBAfgEZEiBAoG4BDcy66yM6AgQIECBAgACBVgTESYAAAQIECBAgQIAAAQIECOQXkOEuAhqYuzCbhAABAgQIECBAgAABAgRuCXieAAECBAgQIECAAAECBAhcCmhgXmrkeSwTAgQIECBAgAABAgQIECBAIL+ADAkQIECAAAECBAikFNDATFlWSREgsFzAlgQIECBAgAABAgQIECBAgEB+ARkSIECAAAECNQtoYNZcHbERIECAAIGWBMRKgAABAgQIECBAgAABAgQI5BeQIQECBHYQ0MDcAdkUBAgQIECAAAECBO4JeI0AAQIECBAgQIAAAQIECBDILyDD6QIamNOtrEmAAAECBAgQIECAAAECdQmIhgABAgQIECBAgAABAgQSCmhgJizqupRsTYAAAQIECBAgQIAAAQIECOQXkCEBAgQIECBAgACBegU0MOutjcgIEGhNQLwECBAgQIAAAQIECBAgQIBAfgEZEiBAgAABApsLaGBuTmwCAgQIECBA4JGA1wkQIECAAAECBAgQIECAAIH8AjIkQIDAVAENzKlS1iNAgAABAgQIECBQn4CICBAgQIAAAQIECBAgQIAAgfwC3WWogdldySVMgAABAgQIECBAgAABAqcTAwIECBAgQIAAAQIECBCoVUADs9bKtBiXmAkQIECAAAECBAgQIECAAIH8AjIkQIAAAQIECBAgsLGABubGwIYnQIDAFAHrECBAgAABAgQIECBAgAABAvkFZEiAAAECBAhME9DAnOZkLQIECBAgQKBOAVERIECAAAECBAgQIECAAAEC+QVkSIBAZwIamJ0VXLoECBAgQIAAAQIEXgT8S4AAAQIECBAgQIAAAQIECOQXaDNDDcw26yZqAgQIECBAgAABAgQIEDhKwLwECBAgQIAAAQIECBAgsKmABuamvAafKmA9AgQIECBAgAABAgQIECBAIL+ADAkQIECAAAECBAhMEdDAnKJkHQIECNQrIDICBAgQIECAAAECBAgQIEAgv4AMCRAgQIBAVwIamF2VW7IECBAgQIDAWwGPCBAgQIAAAQIECBAgQIAAgfwCMiRAoEUBDcwWqyZmAgQIECBAgAABAkcKmJsAAQIECBAgQIAAAQIECBDIL3BghhqYB+KbmgABAgQIECBAgAABAgT6EpAtAQIECBAgQIAAAQIECDwW0MB8bGSNugVER4AAAQIECBAgQIAAAQIECOQXkCEBAgQIECBAgEBHAhqYHRVbqgQIEHhXwHcECBAgQIAAAQIECBAgQIBAfgEZEiBAgACB9gQ0MNurmYgJECBAgACBowXMT4AAAQIECBAgQIAAAQIECOQXkCEBAocJaGAeRm9iAgQIECBAgAABAv0JyJgAAQIECBAgQIAAAQIECBDIL7A2Qw3MtYK2J0CAAAECBAgQIECAAAEC2wuYgQABAgQIECBAgAABAt0IaGB2U2qJvi/gGQIECBAgQIAAAQIECBAgQCC/gAwJECBAgAABAgRaE9DAbK1i4iVAgEANAmIgQIAAAQIECBAgQIAAAQIE8gvIkAABAgQIHCSggXkQvGkJECBAgACBPgVkTYAAAQIECBAgQIAAAQIECOQXkCEBAusENDDX+dmaAAECBAgQIECAAIF9BMxCgAABAgQIECBAgAABAgQI5Bf4NkMNzG8Z/EOAAAECBAgQIECAAAECBLIKyIsAAQIECBAgQIAAAQJtCWhgtlUv0dYiIA4CBAgQIECAAAECBAgQIEAgv4AMCRAgQIAAAQIEDhHQwDyE3aQECBDoV0DmBAgQIECAAAECBAgQIECAQH4BGRIgQIAAgTUCGphr9GxLgAABAgQIENhPwEwECBAgQIAAAQIECBAgQIBAfgEZEiBwFtDAPCP4PwECBAgQIECAAAECmQXkRoAAAQIECBAgQIAAAQIECLQksKyB2VKGYiVAgAABAgQIECBAgAABAgSWCdiKAAECBAgQIECAAAECBwhoYB6Absq+BWRPgAABAgQIECBAgAABAgQI5BeQIQECBAgQIECAwHIBDczldrYkQIAAgX0FzEaAAAECBAgQIECAAAECBAjkF5AhAQIECBA4aWDaCQgQIECAAAEC6QUkSIAAAQIECBAgQIAAAQIECOQXkCGBPAIamHlqKRMCBAgQIECAAAECBEoLGI8AAQIECBAgQIAAAQIECBDYXWD3BubuGZqQAAECBAgQIECAAAECBAgQ2F3AhAQIECBAgAABAgQIEFgqoIG5VM52BPYXMCMBAgQIECBAgAABAgQIECCQX0CGBAgQIECAAIHuBTQwu98FABAgQKAHATkSIECAAAECBAgQIECAAAEC+QVkSIAAAQJZBDQws1RSHgQIECBAgACBLQSMSYAAAQIECBAgQIAAAQIECOQXkCGBygQ0MCsriHAIECBAgAABAgQIEMghIAsCBAgQIECAAAECBAgQIEBgmUBLDcxlGdqKAAECBAgQIECAAAECBAgQaElArAQIECBAgAABAgQIdC6ggdn5DiD9XgTkSYAAAQIECBAgQIAAAQIECOQXkCEBAgQIECBAIIeABmaOOsqCAAECBLYSMC4BAgQIECBAgAABAgQIECCQX0CGBAgQIFCVgAZmVeUQDAECBAgQIEAgj4BMCBAgQIAAAQIECBAgQIAAgfwCMiSwhYAG5haqxiRAgAABAgQIECBAgMByAVsSIECAAAECBAgQIECAAIGuBTppYHZdY8kTIECAAAECBAgQIECAAIFOBKRJgAABAgQIECBAgEAGAQ3MDFWUA4EtBYxNgAABAgQIECBAgAABAgQI5BeQIQECBAgQIECgIgENzIqKIRQCBAgQyCUgGwIECBAgQIAAAQIECBAgQCC/gAwJECBAoLyABmZ5UyMSIECAAAECBAisE7A1AQIECBAgQIAAAQIECBAgkF9AhgRuCmhg3qTxAgECBAgQIECAAAECBFoTEC8BAgQIECBAgAABAgQIEGhfQAPzUQ29ToAAAQIECBAgQIAAAQIECOQXkCEBAgQIECBAgAABAtUIaGBWUwqBEMgnICMCBAgQIECAAAECBAgQIEAgv4AMCRAgQIAAAQKlBTQwS4sajwABAgQIrBcwAgECBAgQIECAAAECBAgQIJBfQIYECBAgcENAA/MGjKcJECBAgAABAgRaFBAzAQIECBAgQIAAAQIECBAgkF9AhtkFNDCzV1h+BAgQIECAAAECBAgQmCJgHQIECBAgQIAAAQIECBAgUImABuaGhTA0AQIECBAgQIAAAQIECBAgkF9AhgQIECBAgAABAgQIlBXQwCzraTQCBMoIwC7QZgAAEABJREFUGIUAAQIECBAgQIAAAQIECBDILyBDAgQIECBAgMBVAQ3MqyyeJECAAAECrQqImwABAgQIECBAgAABAgQIEMgvIEMCBAjkFtDAzF1f2REgQIAAAQIECEwVsB4BAgQIECBAgAABAgQIECCQX0CGTQhoYDZRJkESIECAAAECBAgQIECgXgGRESBAgAABAgQIECBAgACBkgIamCU1y41lJAIECBAgQIAAAQIECBAgQCC/gAwJECBAgAABAgQIELgioIF5BcVTBAi0LCB2AgQIECBAgAABAgQIECBAIL+ADAkQIECAAIHMAhqYmasrNwIECBAgMEfAugQIECBAgAABAgQIECBAgEB+ARkSIECgAQENzAaKJEQCBAgQIECAAIG6BURHgAABAgQIECBAgAABAgQI5BeQ4X4CGpj7WZuJAAECBAgQIECAAAECBN4V8B0BAgQIECBAgAABAgQIEHhPQAPzPZLWnxA/AQIECBAgQIAAAQIECBAgkF9AhgQIECBAgAABAgTyCmhg5q2tzAgQmCtgfQIECBAgQIAAAQIECBAgQCC/gAwJECBAgACB6gU0MKsvkQAJECBAgED9AiIkQIAAAQIECBAgQIAAAQIE8gvIkAABAnsJaGDuJW0eAgQIECBAgAABAu8LeIYAAQIECBAgQIAAAQIECBDILyDDmQIamDPBrE6AAAECBAgQIECAAAECNQiIgQABAgQIECBAgAABAgSyCmhgZq3skrxsQ4AAAQIECBAgQIAAAQIECOQXkCEBAgQIECBAgACBygU0MCsvkPAIEGhDQJQECBAgQIAAAQIECBAgQIBAfgEZEiBAgAABAvsIaGDu42wWAgQIECBA4LqAZwkQIECAAAECBAgQIECAAIH8AjIkQIDALAENzFlcViZAgAABAgQIECBQi4A4CBAgQIAAAQIECBAgQIAAgfwCfWaogdln3WVNgAABAgQIECBAgACBfgVkToAAAQIECBAgQIAAAQJVC2hgVl2edoITKQECBAgQIECAAAECBAgQIJBfQIYECBAgQIAAAQIE9hDQwNxD2RwECBC4LeAVAgQIECBAgAABAgQIECBAIL+ADAkQIECAAIEZAhqYM7CsSoAAAQIECNQkIBYCBAgQIECAAAECBAgQIEAgv4AMCRDoUUADs8eqy5kAAQIECBAgQKBvAdkTIECAAAECBAgQIECAAAEC+QUazlADs+HiCZ0AAQIECBAgQIAAAQIE9hUwGwECBAgQIECAAAECBAhsL6CBub2xGe4LeJUAAQIECBAgQIAAAQIECBDILyBDAgQIECBAgAABApMFNDAnU1mRAAECtQmIhwABAgQIECBAgAABAgQIEMgvIEMCBAgQINCfgAZmfzWXMQECBAgQIECAAAECBAgQIECAAAECBAgQyC8gQwIEmhXQwGy2dAInQIAAAQIECBAgsL+AGQkQIECAAAECBAgQIECAAIH8AkdnqIF5dAXMT4AAAQIECBAgQIAAAQI9CMiRAAECBAgQIECAAAECBCYKaGBOhLJajQJiIkCAAAECBAgQIECAAAECBPILyJAAAQIECBAgQKA3AQ3M3iouXwIECISAhQABAgQIECBAgAABAgQIEMgvIEMCBAgQINCogAZmo4UTNgECBAgQIHCMgFkJECBAgAABAgQIECBAgACB/AIyJEDgWAENzGP9zU6AAAECBAgQIECgFwF5EiBAgAABAgQIECBAgAABAvkFimSogVmE0SAECBAgQIAAAQIECBAgQGArAeMSIECAAAECBAgQIECgLwENzL7qLdtRwFcCBAgQIECAAAECBAgQIEAgv4AMCRAgQIAAAQIEmhTQwGyybIImQIDAcQJmJkCAAAECBAgQIECAAAECBPILyJAAAQIECBwpoIF5pL65CRAgQIAAgZ4E5EqAAAECBAgQIECAAAECBAjkF5AhAQIFBDQwCyAaggABAgQIECBAgACBLQWMTYAAAQIECBAgQIAAAQIECOQXeJuhBuZbC48IECBAgAABAgQIECBAgEAuAdkQIECAAAECBAgQIECgQQENzAaLJuRjBcxOgAABAgQIECBAgAABAgQI5BeQIQECBAgQIECAwHECGpjH2ZuZAAECvQnIlwABAgQIECBAgAABAgQIEMgvIEMCBAgQILBaQANzNaEBCBAgQIAAAQJbCxifAAECBAgQIECAAAECBAgQyC8gQwIERgENzFHCVwIECBAgQIAAAQIE8gnIiAABAgQIECBAgAABAgQIEGhOYHYDs7kMBUyAAAECBAgQIECAAAECBAjMFrABAQIECBAgQIAAAQIEjhLQwDxK3rw9CsiZAAECBAgQIECAAAECBAgQyC8gQwIECBAgQIAAgZUCGpgrAW1OgAABAnsImIMAAQIECBAgQIAAAQIECBDILyBDAgQIECDwIqCB+eLgXwIECBAgQIBATgFZESBAgAABAgQIECBAgAABAvkFZEggmYAGZrKCSocAAQIECBAgQIAAgTICRiFAgAABAgQIECBAgAABAgSOEdizgXlMhmYlQIAAAQIECBAgQIAAAQIE9hQwFwECBAgQIECAAAECBFYJaGCu4rMxgb0EzEOAAAECBAgQIECAAAECBAjkF5AhAQIECBAgQIBACGhghoKFAAECBPIKyIwAAQIECBAgQIAAAQIECBDILyBDAgQIEEgloIGZqpySIUCAAAECBAiUEzASAQIECBAgQIAAAQIECBAgkF9AhgRqFNDArLEqYiJAgAABAgQIECBAoGUBsRMgQIAAAQIECBAgQIAAAQIrBBppYK7I0KYECBAgQIAAAQIECBAgQIBAIwLCJECAAAECBAgQIECAwOmkgWkvIJBdQH4ECBAgQIAAAQIECBAgQIBAfgEZEiBAgAABAgQSCWhgJiqmVAgQIECgrIDRCBAgQIAAAQIECBAgQIAAgfwCMiRAgACB+gQ0MOuriYgIECBAgAABAq0LiJ8AAQIECBAgQIAAAQIECBDILyBDApsJaGBuRmtgAgQIECBAgAABAgQIzBWwPgECBAgQIECAAAECBAgQIJC/ganGBAgQIECAAAECBAgQIECAQH4BGRIgQIAAAQIECBAgkEZAAzNNKSVCoLyAEQkQIECAAAECBAgQIECAAIH8AjIkQIAAAQIECNQmoIFZW0XEQ4AAAQIZBORAgAABAgQIECBAgAABAgQI5BeQIQECBAhsJKCBuRGsYQkQIECAAAECBJYI2IYAAQIECBAgQIAAAQIECBDILyBDAvcFNDDv+3iVAAECBAgQIECAAAECbQiIkgABAgQIECBAgAABAgQIJBHQwLxTSC8RIECAAAECBAgQIECAAAEC+QVkSIAAAQIECBAgQIBAXQIamHXVQzQEsgjIgwABAgQIECBAgAABAgQIEMgvIEMCBAgQIECAwCYCGpibsBqUAAECBAgsFbAdAQIECBAgQIAAAQIECBAgkF9AhgQIECBwT0AD856O1wgQIECAAAECBNoRECkBAgQIECBAgAABAgQIECCQX0CGXQhoYHZRZkkSIECAAAECBAgQIEDgtoBXCBAgQIAAAQIECBAgQIBATQIamNtUw6gECBAgQIAAAQIECBAgQIBAfgEZEiBAgAABAgQIECCwgYAG5gaohiRAYI2AbQkQIECAAAECBAgQIECAAIH8AjIkQIAAAQIECNwW0MC8beMVAgQIECDQloBoCRAgQIAAAQIECBAgQIAAgfwCMiRAgEAHAhqYHRRZigQIECBAgAABAvcFvEqAAAECBAgQIECAAAECBAjkF5BhOwIamO3USqQECBAgQIAAAQIECBCoTUA8BAgQIECAAAECBAgQIECguIAGZnHStQPangABAgQIECBAgAABAgQIEMgvIEMCBAgQIECAAAECBG4JaGDekvE8AQLtCYiYAAECBAgQIECAAAECBAgQyC8gQwIECBAgQCC9gAZm+hJLkAABAgQIPBawBgECBAgQIECAAAECBAgQIJBfQIYECBBoRUADs5VKiZMAAQIECBAgQKBGATERIECAAAECBAgQIECAAAEC+QVkuLOABubO4KYjQIAAAQIECBAgQIAAgRCwECBAgAABAgQIECBAgACB6wIamNdd2nxW1AQIECBAgAABAgQIECBAgEB+ARkSIECAAAECBAgQSC6ggZm8wNIjQGCagLUIECBAgAABAgQIECBAgACB/AIyJECAAAECBNoQ0MBso06iJECAAAECtQqIiwABAgQIECBAgAABAgQIEMgvIEMCBAjsKqCBuSu3yQgQIECAAAECBAiMAr4SIECAAAECBAgQIECAAAEC+QVkuERAA3OJmm0IECBAgAABAgQIECBA4DgBMxMgQIAAAQIECBAgQIBAagENzNTlnZ6cNQkQIECAAAECBAgQIECAAIH8AjIkQIAAAQIECBAg0IKABmYLVRIjAQI1C4iNAAECBAgQIECAAAECBAgQyC8gQwIECBAgQGBHAQ3MHbFNRYAAAQIECFwKeEyAAAECBAgQIECAAAECBAjkF5AhAQIE5gtoYM43swUBAgQIECBAgACBYwXMToAAAQIECBAgQIAAAQIECOQX6DhDDcyOiy91AgQIECBAgAABAgQI9CYgXwIECBAgQIAAAQIECBCoX0ADs/4a1R6h+AgQIECAAAECBAgQIECAAIH8AjIkQIAAAQIECBAgsJuABuZu1CYiQIDAawHfEyBAgAABAgQIECBAgAABAvkFZEiAAAECBAjMFdDAnCtmfQIECBAgQOB4AREQIECAAAECBAgQIECAAAEC+QVkSIBAtwIamN2WXuIECBAgQIAAAQI9CsiZAAECBAgQIECAAAECBAgQyC/QeoYamK1XUPwECBAgQIAAAQIECBAgsIeAOQgQIECAAAECBAgQIEBgJwENzJ2gTXNNwHMECBAgQIAAAQIECBAgQIBAfgEZEiBAgAABAgQIEJgnoIE5z8vaBAgQqENAFAQIECBAgAABAgQIECBAgEB+ARkSIECAAIFOBTQwOy28tAkQIECAQK8C8iZAgAABAgQIECBAgAABAgTyC8iQAIG2BTQw266f6AkQIECAAAECBAjsJWAeAgQIECBAgAABAgQIECBAIL9AFRlqYFZRBkEQIECAAAECBAgQIECAQF4BmREgQIAAAQIECBAgQIDAHAENzDla1q1HQCQECBAgQIAAAQIECBAgQIBAfgEZEiBAgAABAgQIdCmggdll2SVNgEDPAnInQIAAAQIECBAgQIAAAQIE8gvIkAABAgQItCyggdly9cRO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AgTyC8iQAAECLwIamC8O/iVAgAABAgQIECCQU0BWBAgQIECAAAECBAgQIECAQH6BZBlqYCYrqHQIECBAgAABAgQIECBAoIyAUQgQIECAAAECBAgQIEDgGAENzGPce51V3gQIECBAgAABAgQIECBAgEB+ARkSIECAAAECBAgQWCWggbmKz8YECBDYS8A8BAgQIECAAAECBAgQIECAQH4BGRIgQIAAAQIhoIEZChYCBAgQIEAgr4DMCBAgQIAAAQIECBAgQIAAgfwCMiRAIJWABmaqckqGAAECBAgQIECAQDkBIxEgQIAAAQIECBAgQIAAAQL5BWrMUAOzxqqIiQABAgQIECBAgAABAgRaFhA7AQIECBAgQIAAAQIECKwQ0MBcgWfTPQXMRYAAAQIECBAgQIAAAQIECOQXkCEBAgQIECBAgACB00kD015AgACB7ALyI0CAAAECBAgQIECAAAECBPILyJAAAQIECCQS0MBMVEypECBAgAABAmUFjEaAAAECBAgQIECAAAECBAjkF5AhAQL1CWhg1lcTEREgQIAAAQIECBBoXUD8BAgQIECAAAECBAgQIECAQH6BzTLUwNyM1sAECBAgQIAAAQIECBAgQGCugPUJECBAgAABAgQIECBAQAPTPpBfQIYECBAgQIAAAQIECBAgQIBAfgEZEiBAgAABAgQIpBHQwExTSokQIECgvIARCRAgQIAAAQIECBAgQIAAgfwCMiRAgAABArUJaGDWVhHxECBAgAABAhkE5ECAAAECBAgQIECAAAECBAjkF5AhAQIbCWhgbgRrWAIECBAgQIAAAQIElgjYhgABAgQIECBAgAABAgQIEMgvcD9DDcz7Pl4lQIAAAQIECBAgQIAAAQJtCIiSAAECBAgQIECAAAECSQQ0MJMUUhrbCBiVAAECBAgQIECAAAECBAgQyC8gQwIECBAgQIAAgboENDDrqodoCBAgkEVAHgQIECBAgAABAgQIECBAgEB+ARkSIECAAIFNBDQwN2E1KAECBAgQIEBgqYDtCBAgQIAAAQIECBAgQIAAgfwCMiRA4J6ABuY9Ha8RIECAAAECBAgQINCOgEgJECBAgAABAgQIECBAgACBFAJ3G5gpMpQEAQIECBAgQIAAAQIECBAgcFfAiwQIECBAgAABAgQIEKhJQAOzpmqIJZOAXAgQIECAAAECBAgQIECAAIH8AjIkQIAAAQIECBDYQEADcwNUQxIgQIDAGgHbEiBAgAABAgQIECBAgAABAvkFZEiAAAECBG4LaGDetvEKAQIECBAgQKAtAdESIECAAAECBAgQIECAAAEC+QVkSKADAQ3MDoosRQIECBAgQIAAAQIE7gt4lQABAgQIECBAgAABAgQIEKhHYKsGZj0ZioQAAQIECBAgQIAAAQIECBDYSsC4BAgQIECAAAECBAgQKC6ggVmc1IAE1grYngABAgQIECBAgAABAgQIEMgvIEMCBAgQIECAAIFbAhqYt2Q8T4AAAQLtCYiYAAECBAgQIECAAAECBAgQyC8gQwIECBBIL6CBmb7EEiRAgAABAgQIPBawBgECBAgQIECAAAECBAgQIJBfQIYEWhHQwGylUuIkQIAAAQIECBAgQKBGATERIECAAAECBAgQIECAAAEChQUqbGAWztBwBAgQIECAAAECBAgQIECAQIUCQiJAgAABAgQIECBAgMB1AQ3M6y6eJdCmgKgJECBAgAABAgQIECBAgACB/AIyJECAAAECBAgkF9DATF5g6REgQIDANAFrESBAgAABAgQIECBAgAABAvkFZEiAAAECbQhoYLZRJ1ESIECAAAECBGoVEBcBAgQIECBAgAABAgQIECCQX0CGBHYV0MDcldtkBAgQIECAAAECBAgQGAV8JUCAAAECBAgQIECAAAECBK4J5GpgXsvQcwQIECBAgAABAgQIECBAgEAuAdkQIECAAAECBAgQIJBaQAMzdXklR2C6gDUJECBAgAABAgQIECBAgACB/AIyJECAAAECBAi0IKCB2UKVxEiAAAECNQuIjQABAgQIECBAgAABAgQIEMgvIEMCBAgQ2FFAA3NHbFMRIECAAAECBAhcCnhMgAABAgQIECBAgAABAgQI5BeQIYH5AhqY881sQYAAAQIECBAgQIAAgWMFzE6AAAECBAgQIECAAAECBBILaGB+V1xfCBAgQIAAAQIECBAgQIAAgfwCMiRAgAABAgQIECBAoH4BDcz6ayRCArULiI8AAQIECBAgQIAAAQIECBDILyBDAgQIECBAgMBuAhqYu1GbiAABAgQIvBbwPQECBAgQIECAAAECBAgQIJBfQIYECBAgMFdAA3OumPUJECBAgAABAgSOFxABAQIECBAgQIAAAQIECBAgkF9Aht0KaGB2W3qJEyBAgAABAgQIECDQo4CcCRAgQIAAAQIECBAgQIBA7QIamOsrZAQCBAgQIECAAAECBAgQIEAgv4AMCRAgQIAAAQIECBDYSUADcydo0xAgcE3AcwQIECBAgAABAgQIECBAgEB+ARkSIECAAAECBOYJaGDO87I2AQIECBCoQ0AUBAgQIECAAAECBAgQIECAQH4BGRIgQKBTAQ3MTgsvbQIECBAgQIBArwLyJkCAAAECBAgQIECAAAECBPILyLBtAQ3MtusnegIECBAgQIAAAQIECOwlYB4CBAgQIECAAAECBAgQILCLgAbmLsy3JvE8AQIECBAgQIAAAQIECBAgkF9AhgQIECBAgAABAgQIzBHQwJyjZV0CBOoREAkBAgQIECBAgAABAgQIECCQX0CGBAgQIECAQJcCGphdll3SBAgQINCzgNwJECBAgAABAgQIECBAgACB/AIyJECAQMsCGpgtV0/sBAgQIECAAAECewqYiwABAgQIECBAgAABAgQIEMgvIMMKBDQwKyiCEAgQIECAAAECBAgQIJBbQHYECBAgQIAAAQIECBAgQGC6gAbmdKu61hQNAQIECBAgQIAAAQIECBAgkF9AhgQIECBAgAABAgQ6FNDA7LDoUibQu4D8CRAgQIAAAQIECBAgQIAAgfwCMiRAgAABAgTaFdDAbLd2IidAgAABAnsLmI8AAQIECBAgQIAAAQIECBDILyBDAgQIHC6ggXl4CQRAgAABAgQIECCQX0CGBAgQIECAAAECBAgQIECAQH4BGZYS0MAsJWkcAgQIECBAgAABAgQIECgvYEQCBAgQIECAAAECBAgQ6E5AA7O7kp9OUiZAgAABAgQIECBAgAABAgTyC8iQAAECBAgQIECAQKsCGpitVk7cBAgcIWBOAgQIECBAgAABAgQIECBAIL+ADAkQIECAAIGDBTQwDy6A6QkQIECAQB8CsiRAgAABAgQIECBAgAABAgTyC8iQAAECZQQ0MMs4GoUAAQIECBAgQIDANgJGJUCAAAECBAgQIECAAAECBPILyPAdAQ3Mdzh8Q4AAAQIECBAgQIAAAQJZBORBgAABAgQIECBAgAABAm0KaGC2WbejojYvAQIECBAgQIAAAQIECBAgkF9AhgQIECBAgAABAgQOFdDAPJTf5AQI9CMgUwIECBAgQIAAAQIECBAgQCC/gAwJECBAgACBEgIamCUUjUGAAAECBAhsJ2BkAgQIECBAgAABAgQIECBAIL+ADAkQIHAhoIF5geEhAQIECBAgQIAAgUwCciFAgAABAgQIECBAgAABAgTyC2TMUAMzY1XlRIAAAQIECBAgQIAAAQJrBGxLgAABAgQIECBAgAABAgcKaGAeiN/X1LIlQIAAAQIECBAgQIAAAQIE8gvIkAABAgQIECBAgMB6AQ3M9YZGIECAwLYCRidAgAABAgQIECBAgAABAgTyC8iQAAECBAgQ+F5AA/N7Cg8IECBAgACBbALyIUCAAAECBAgQIECAAAECBPILyJAAgXwCGpj5aiojAgQIECBAgAABAmsFbE+AAAECBAgQIECAAAECBAjkF6g2Qw3MaksjMAIECBAgQIAAAQIECBBoT0DEBAgQIECAAAECBAgQILBWQANzraDttxcwAwECBAgQIECAAAECBAgQIJBfQIYECBAgQIAAAQIEvhPQwPwOwhcCBAhkFJATAQIECBAgQIAAAQIECBAgkF9AhgQIECBAIJuABma2isqHAAECBAgQKCFgDAIECBAgQIAAAQIECBAgQCC/gAwJEKhUQAOz0sIIiwABAgQIECBAgECbAqImQIAAAQIECBAgQIAAAQIE8gtsm6EG5ra+RidAgAABAgQIECBAgAABAtMErEWAAAECBAgQIECAAAEC3wpoYH7L4J+sAvIiQIAAAQIECBAgQIAAAQIE8gvIkAABAgQIECBAIJeABmauesqGAAECpQSMQ4AAAQIECBAgQIAAAQIECOQXkCEBAgQIEKhSQAOzyrIIigABAgQIEGhXQOQECBAgQIAAAQIECBAgQIBAfgEZEiCwpYAG5pa6xiZAgAABAgQIECBAYLqANQkQIECAAAECBAgQIECAAIH8AhMy1MCcgGQVAgQIECBAgAABAgQIECBQs4DYCBAgQIAAAQIECBAgkElAAzNTNeVSUsBYBAgQIECAAAECBAgQIECAQH4BGRIgQIAAAQIECFQooIFZYVGERIAAgbYFRE+AAAECBAgQIECAAAECBAjkF5AhAQIECBDYTkADcztbIxMgQIAAAQIE5glYmwABAgQIECBAgAABAgQIEMgvIEMCBB4KaGA+JLICAQIECBAgQIAAAQK1C4iPAAECBAgQIECAAAECBAgQyCNwq4GZJ0OZECBAgAAB3X/OyAAACyNJREFUAgQIECBAgAABArcEPE+AAAECBAgQIECAAIHqBDQwqyuJgNoXkAEBAgQIECBAgAABAgQIECCQX0CGBAgQIECAAAECWwloYG4la1wCBAgQmC9gCwIECBAgQIAAAQIECBAgQCC/gAwJECBAgMADAQ3MB0BeJkCAAAECBAi0ICBGAgQIECBAgAABAgQIECBAIL+ADAn0IqCB2Uul5UmAAAECBAgQIECAwDUBzxEgQIAAAQIECBAgQIAAAQKVCWzQwKwsQ+EQIECAAAECBAgQIECAAAECGwgYkgABAgQIECBAgAABAtsIaGBu42pUAssEbEWAAAECBAgQIECAAAECBAjkF5AhAQIECBAgQIDAXQENzLs8XiRAgACBVgTESYAAAQIECBAgQIAAAQIECOQXkCEBAgQI9CGggdlHnWVJgAABAgQIELgl4HkCBAgQIECAAAECBAgQIEAgv4AMCTQloIHZVLkES4AAAQIECBAgQIBAPQIiIUCAAAECBAgQIECAAAECBLYQqKuBuUWGxiRAgAABAgQIECBAgAABAgTqEhANAQIECBAgQIAAAQIE7ghoYN7B8RKBlgTESoAAAQIECBAgQIAAAQIECOQXkCEBAgQIECBAoAcBDcweqixHAgQIELgn4DUCBAgQIECAAAECBAgQIEAgv4AMCRAgQKAhAQ3MhoolVAIECBAgQIBAXQKiIUCAAAECBAgQIECAAAECBPILyJDA/gIamPubm5EAAQIECBAgQIAAgd4F5E+AAAECBAgQIECAAAECBAjcFEjTwLyZoRcIECBAgAABAgQIECBAgACBNAISIUCAAAECBAgQIEAgv4AGZv4ay5DAIwGvEyBAgAABAgQIECBAgAABAvkFZEiAAAECBAgQaEZAA7OZUgmUAAECBOoTEBEBAgQIECBAgAABAgQIECCQX0CGBAgQILC3gAbm3uLmI0CAAAECBAgQOJ0YECBAgAABAgQIECBAgAABAvkFZEhgoYAG5kI4mxEgQIAAAQIECBAgQOAIAXMSIECAAAECBAgQIECAAIHsAhqYp1P2GsuPAAECBAgQIECAAAECBAgQOJ0YECBAgAABAgQIECDQiIAGZiOFEiaBOgVERYAAAQIECBAgQIAAAQIECOQXkCEBAgQIECBAYF8BDcx9vc1GgAABAgReBPxLgAABAgQIECBAgAABAgQI5BeQIQECBAgsEtDAXMRmIwIECBAgQIAAgaMEzEuAAAECBAgQIECAAAECBAjkF5Bh3wIamH3XX/YECBAgQIAAAQIECPQjIFMCBAgQIECAAAECBAgQINCEgAbmqjLZmAABAgQIECBAgAABAgQIEMgvIEMCBAgQIECAAAECBPYU0MDcU9tcBAi8FfCIAAECBAgQIECAAAECBAgQyC8gQwIECBAgQIDAAgENzAVoNiFAgAABAkcKmJsAAQIECBAgQIAAAQIECBDILyBDAgQI9Cyggdlz9eVOgAABAgQIEOhLQLYECBAgQIAAAQIECBAgQIBAfgEZJhDQwExQRCkQIECAAAECBAgQIEBgWwGjEyBAgAABAgQIECBAgACB/QQ0MPezfncm3xEgQIAAAQIECBAgQIAAAQL5BWRIgAABAgQIECBAgMBsAQ3M2WQ2IEDgaAHzEyBAgAABAgQIECBAgAABAvkFZEiAAAECBAj0K6CB2W/tZU6AAAEC/QnImAABAgQIECBAgAABAgQIEMgvIEMCBAg0L6CB2XwJJUCAAAECBAgQILC9gBkIECBAgAABAgQIECBAgACB/AIyrEVAA7OWSoiDAAECBAgQIECAAAECGQXkRIAAAQIECBAgQIAAAQIEZgpoYM4Eq2F1MRAgQIAAAQIECBAgQIAAAQL5BWRIgAABAgQIECBAoFcBDcxeKy9vAn0KyJoAAQIECBAgQIAAAQIECBDILyBDAgQIECBAoHEBDczGCyh8AgQIECCwj4BZCBAgQIAAAQIECBAgQIAAgfwCMiRAgEAdAhqYddRBFAQIECBAgAABAlkF5EWAAAECBAgQIECAAAECBAjkF5BhUQENzKKcBiNAgAABAgQIECBAgACBUgLGIUCAAAECBAgQIECAAIE+BTQw+6q7bAkQIECAAAECBAgQIECAAIH8AjIkQIAAAQIECBAg0LSABmbT5RM8AQL7CZiJAAECBAgQIECAAAECBAgQyC8gQwIECBAgQKAGAQ3MGqogBgIECBAgkFlAbgQIECBAgAABAgQIECBAgEB+ARkSIECgoIAGZkFMQxEgQIAAAQIECBAoKWAsAgQIECBAgAABAgQIECBAIL+ADN8X0MB838QzBAgQIECAAAECBAgQINC2gOgJECBAgAABAgQIECBAoGEBDcyGi7dv6GYjQIAAAQIECBAgQIAAAQIE8gvIkAABAgQIECBAgMDxAhqYx9dABAQIZBeQHwECBAgQIECAAAECBAgQIJBfQIYECBAgQIBAMQENzGKUBiJAgAABAgRKCxiPAAECBAgQIECAAAECBAgQyC8gQwIECLwW0MB8LeJ7AgQIECBAgAABAu0LyIAAAQIECBAgQIAAAQIECBDIL5A2Qw3MtKWVGAECBAgQIECAAAECBAjMF7AFAQIECBAgQIAAAQIECBwtoIF5dAV6mF+OBAgQIECAAAECBAgQIECAQH4BGRIgQIAAAQIECBAoJKCBWQjSMAQIENhCwJgECBAgQIAAAQIECBAgQIBAfgEZEiBAgAABAu8KaGC+6+E7AgQIECBAIIeALAgQIECAAAECBAgQIECAAIH8AjIkQCCpgAZm0sJKiwABAgQIECBAgMAyAVsRIECAAAECBAgQIECAAAEC+QXqzlADs+76iI4AAQIECBAgQIAAAQIEWhEQJwECBAgQIECAAAECBAgUEdDALMJokK0EjEuAAAECBAgQIECAAAECBAjkF5AhAQIECBAgQIAAgUsBDcxLDY8JECCQR0AmBAgQIECAAAECBAgQIECAQH4BGRIgQIAAgZQCGpgpyyopAgQIECBAYLmALQkQIECAAAECBAgQIECAAIH8AjIkQKBmAQ3MmqsjNgIECBAgQIAAAQItCYiVAAECBAgQIECAAAECBAgQyC+wQ4YamDsgm4IAAQIECBAgQIAAAQIECNwT8BoBAgQIECBAgAABAgQIvBXQwHxr4VEuAdkQIECAAAECBAgQIECAAAEC+QVkSIAAAQIECBAgkFBAAzNhUaVEgACBdQK2JkCAAAECBAgQIECAAAECBPILyJAAAQIECNQroIFZb21ERoAAAQIECLQmIF4CBAgQIECAAAECBAgQIEAgv4AMCRDYXEADc3NiExAgQIAAAQIECBAg8EjA6wQIECBAgAABAgQIECBAgEB+gakZamBOlbIeAQIECBAgQIAAAQIECBCoT0BEBAgQIECAAAECBAgQSCeggZmupBJaL2AEAgQIECBAgAABAgQIECBAIL+ADAkQIECAAAECBGoV0MCstTLiIkCAQIsCYiZAgAABAgQIECBAgAABAgTyC8iQAAECBAhsLKCBuTGw4QkQIECAAAECUwSsQ4AAAQIECBAgQIAAAQIECOQXkCEBAtMENDCnOVmLAAECBAgQIECAAIE6BURFgAABAgQIECBAgAABAgQIJBO40sBMlqF0CBAgQIAAAQIECBAgQIAAgSsCniJAgAABAgQIECBAgECdAhqYddZFVK0KiJsAAQIECBAgQIAAAQIECBDILyBDAgQIECBAgACBTQU0MDflNTgBAgQITBWwHgECBAgQIECAAAECBAgQIJBfQIYECBAgQGCKwH8CAAD///8I+j4AAAAGSURBVAMA5eYZG+vJFoIAAAAASUVORK5CYII=" alt="arc>>run" width="1840" height="560"></div>
|
||
<div class="brand-sub">歡迎!先建立你的帳號</div>
|
||
</div>
|
||
<div style="display:flex;flex-direction:column;gap:12px;text-align:left">
|
||
<input type="email" id="fs-email" class="txt" placeholder="你的 Email" autocomplete="username" style="padding:15px 16px;font-size:17px;border-radius:11px">
|
||
<input type="password" id="fs-password" class="txt" placeholder="設定密碼(至少 8 碼)" autocomplete="new-password" style="padding:15px 16px;font-size:17px;border-radius:11px">
|
||
<input type="password" id="fs-password2" class="txt" placeholder="再輸入一次密碼" autocomplete="new-password" style="padding:15px 16px;font-size:17px;border-radius:11px">
|
||
<button class="btn" id="fs-submit" style="margin-top:6px;padding:15px;font-size:17px;letter-spacing:.12em">建立帳號並進入</button>
|
||
<div id="fs-status" class="err" style="font-size:14px;min-height:1.2em"></div>
|
||
<!-- leo 07-25 實撞:已設定過(409)時這頁是死路——必須有回登入的路 -->
|
||
<button class="btn3" id="fs-tologin" style="padding:9px 16px;font-size:14px;border-radius:999px;align-self:center;cursor:pointer">已經有帳號?改用登入</button>
|
||
</div>
|
||
<div style="font-size:13.5px;color:rgba(var(--ink-rgb),.4);line-height:1.7">這組帳密就是之後登入知識庫用的,只需要設定這一次。</div>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- 主應用 -->
|
||
<div id="shell">
|
||
<div id="sidenav">
|
||
<div class="logo" role="img" aria-label="Arcrun"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 3505.00 597.32" role="img" aria-label="arc double-chevron run"><title>arc double-chevron run</title><path fill="currentColor" fill-rule="nonzero" d="M2815.02,477.56 L2813.39,481.43 L2811.68,485.26 L2809.88,489.03 L2807.98,492.76 L2805.99,496.43 L2803.92,500.06 L2801.76,503.63 L2799.50,507.16 L2797.14,510.62 L2794.66,514.02 L2792.06,517.34 L2789.34,520.60 L2786.50,523.78 L2783.54,526.90 L2780.46,529.94 L2777.26,532.92 L2773.94,535.82 L2770.50,538.66 L2766.93,541.40 L2763.22,544.02 L2759.37,546.52 L2755.38,548.90 L2751.25,551.16 L2746.98,553.30 L2742.57,555.32 L2738.02,557.22 L2733.33,559.00 L2728.50,560.66 L2723.53,562.18 L2718.40,563.54 L2713.12,564.74 L2707.70,565.78 L2702.12,566.66 L2696.40,567.38 L2690.53,567.94 L2684.50,568.34 L2678.32,568.58 L2672.00,568.66 L2656.18,568.13 L2641.12,566.54 L2626.82,563.89 L2613.28,560.18 L2600.50,555.41 L2588.48,549.58 L2577.22,542.69 L2566.72,534.74 L2556.98,525.73 L2548.00,515.66 L2539.83,504.61 L2532.52,492.66 L2526.07,479.81 L2520.48,466.06 L2515.75,451.41 L2511.88,435.86 L2508.87,419.41 L2506.72,402.06 L2505.43,383.81 L2505.00,364.66 L2505.00,34.66 L2633.00,34.66 L2633.00,351.66 L2633.21,362.20 L2633.84,372.24 L2634.89,381.76 L2636.36,390.78 L2638.25,399.28 L2640.56,407.28 L2643.29,414.76 L2646.44,421.74 L2650.01,428.20 L2654.00,434.16 L2658.45,439.57 L2663.40,444.42 L2668.85,448.69 L2674.80,452.40 L2681.25,455.53 L2688.20,458.10 L2695.65,460.09 L2703.60,461.52 L2712.05,462.37 L2721.00,462.66 L2724.80,462.61 L2728.58,462.46 L2732.36,462.21 L2736.12,461.86 L2739.88,461.41 L2743.62,460.86 L2747.36,460.21 L2751.08,459.46 L2754.80,458.61 L2758.50,457.66 L2762.16,456.60 L2765.72,455.44 L2769.19,454.16 L2772.58,452.78 L2775.88,451.28 L2779.08,449.68 L2782.20,447.96 L2785.22,446.14 L2788.15,444.20 L2791.00,442.16 L2793.75,440.01 L2796.40,437.76 L2798.95,435.41 L2801.40,432.96 L2803.75,430.41 L2806.00,427.76 L2808.15,425.01 L2810.20,422.16 L2812.15,419.21 L2814.00,416.16 L2815.71,413.00 L2817.24,409.74 L2818.59,406.36 L2819.76,402.88 L2820.75,399.28 L2821.56,395.58 L2822.19,391.76 L2822.64,387.84 L2822.91,383.80 L2823.00,379.66 L2823.00,34.66 L2951.00,34.66 L2951.00,556.66 L2823.00,556.66 L2823.00,469.66 L2818.00,469.66 L2816.55,473.63 L2815.02,477.56 Z M1417.34,516.00 L1634.68,298.66 L1417.34,81.32 L1498.66,0.00 L1797.32,298.66 L1498.66,597.32 L1417.34,516.00 Z M1675.34,516.00 L1892.68,298.66 L1675.34,81.32 L1756.66,0.00 L2055.32,298.66 L1756.66,597.32 L1675.34,516.00 Z M397.38,554.45 L390.20,552.74 L383.38,550.53 L376.90,547.84 L370.78,544.65 L365.00,540.98 L359.57,536.81 L354.50,532.16 L349.79,527.09 L345.44,521.70 L341.46,515.97 L337.86,509.92 L334.62,503.53 L331.76,496.82 L329.26,489.77 L327.14,482.40 L325.38,474.69 L324.00,466.66 L318.00,466.66 L315.13,476.60 L311.72,486.04 L307.77,494.96 L303.28,503.38 L298.25,511.28 L292.68,518.68 L286.57,525.56 L279.92,531.94 L272.73,537.80 L265.00,543.16 L256.81,548.00 L248.24,552.34 L239.29,556.16 L229.96,559.48 L220.25,562.28 L210.16,564.58 L199.69,566.36 L188.84,567.64 L177.61,568.40 L166.00,568.66 L150.37,568.24 L135.48,566.98 L121.33,564.88 L107.92,561.94 L95.25,558.16 L83.32,553.54 L72.13,548.08 L61.68,541.78 L51.97,534.64 L43.00,526.66 L34.83,517.98 L27.52,508.74 L21.07,498.94 L15.48,488.58 L10.75,477.66 L6.88,466.18 L3.87,454.14 L1.72,441.54 L0.43,428.38 L0.00,414.66 L0.58,398.87 L2.32,383.92 L5.22,369.79 L9.28,356.50 L14.50,344.03 L20.88,332.40 L28.42,321.59 L37.12,311.62 L46.98,302.47 L58.00,294.16 L70.09,286.65 L83.16,279.94 L97.21,274.01 L112.24,268.88 L128.25,264.53 L145.24,260.98 L163.21,258.21 L182.16,256.24 L202.09,255.05 L223.00,254.66 L312.00,254.66 L312.00,216.66 L311.77,208.06 L311.08,199.86 L309.93,192.06 L308.32,184.66 L306.25,177.66 L303.72,171.06 L300.73,164.86 L297.28,159.06 L293.37,153.66 L289.00,148.66 L284.12,144.10 L278.68,140.02 L272.68,136.42 L266.12,133.30 L259.00,130.66 L251.32,128.50 L243.08,126.82 L234.28,125.62 L224.92,124.90 L215.00,124.66 L206.17,124.85 L197.70,125.44 L189.57,126.41 L181.80,127.78 L174.38,129.53 L167.30,131.68 L160.57,134.21 L154.20,137.14 L148.18,140.45 L142.50,144.16 L137.09,148.13 L131.84,152.26 L126.76,156.53 L121.86,160.96 L117.12,165.53 L112.56,170.26 L108.16,175.13 L103.94,180.16 L99.88,185.33 L96.00,190.66 L20.00,122.66 L25.99,113.83 L32.36,105.36 L39.11,97.23 L46.24,89.46 L53.75,82.03 L61.64,74.96 L69.91,68.23 L78.56,61.86 L87.59,55.83 L97.00,50.16 L106.91,44.93 L117.44,40.26 L128.59,36.13 L140.36,32.56 L152.75,29.53 L165.76,27.06 L179.39,25.13 L193.64,23.76 L208.51,22.93 L224.00,22.66 L244.69,23.14 L264.36,24.58 L283.01,26.98 L300.64,30.34 L317.25,34.66 L332.84,39.94 L347.41,46.18 L360.96,53.38 L373.49,61.54 L385.00,70.66 L395.45,80.68 L404.80,91.54 L413.05,103.24 L420.20,115.78 L426.25,129.16 L431.20,143.38 L435.05,158.44 L437.80,174.34 L439.45,191.08 L440.00,208.66 L440.00,454.66 L492.00,454.66 L492.00,556.66 L421.00,556.66 L412.78,556.41 L404.90,555.68 L397.38,554.45 Z M684.00,142.66 L689.00,142.66 L690.06,138.47 L691.22,134.32 L692.50,130.19 L693.88,126.10 L695.38,122.03 L696.98,118.00 L698.69,113.99 L700.52,110.02 L702.46,106.07 L704.50,102.16 L706.66,98.30 L708.96,94.54 L711.38,90.86 L713.94,87.28 L716.62,83.78 L719.44,80.38 L722.38,77.06 L725.46,73.84 L728.66,70.70 L732.00,67.66 L735.47,64.72 L739.06,61.90 L742.78,59.20 L746.64,56.62 L750.62,54.16 L754.74,51.82 L758.99,49.60 L763.36,47.50 L767.87,45.52 L772.50,43.66 L777.27,41.95 L782.20,40.42 L787.27,39.07 L792.50,37.90 L797.88,36.91 L803.40,36.10 L809.08,35.47 L814.90,35.02 L820.88,34.75 L827.00,34.66 L855.00,34.66 L855.00,155.66 L815.00,155.66 L802.32,155.85 L790.28,156.42 L778.88,157.37 L768.12,158.70 L758.00,160.41 L748.52,162.50 L739.68,164.97 L731.48,167.82 L723.92,171.05 L717.00,174.66 L710.73,178.70 L705.12,183.22 L700.17,188.22 L695.88,193.70 L692.25,199.66 L689.28,206.10 L686.97,213.02 L685.32,220.42 L684.33,228.30 L684.00,236.66 L684.00,556.66 L556.00,556.66 L556.00,34.66 L684.00,34.66 L684.00,142.66 Z M1081.37,566.95 L1070.68,565.62 L1060.25,563.91 L1050.08,561.82 L1040.17,559.35 L1030.52,556.50 L1021.13,553.27 L1012.00,549.66 L1003.14,545.69 L994.58,541.38 L986.30,536.73 L978.32,531.74 L970.62,526.41 L963.22,520.74 L956.11,514.73 L949.28,508.38 L942.75,501.69 L936.50,494.66 L930.54,487.31 L924.88,479.68 L919.50,471.75 L914.42,463.54 L909.62,455.03 L905.12,446.24 L900.90,437.15 L896.98,427.78 L893.35,418.11 L890.00,408.16 L886.96,397.93 L884.24,387.46 L881.84,376.73 L879.76,365.76 L878.00,354.53 L876.56,343.06 L875.44,331.33 L874.64,319.36 L874.16,307.13 L874.00,294.66 L874.16,282.19 L874.64,269.98 L875.44,258.03 L876.56,246.34 L878.00,234.91 L879.76,223.74 L881.84,212.83 L884.24,202.18 L886.96,191.79 L890.00,181.66 L893.35,171.80 L896.98,162.24 L900.90,152.96 L905.12,143.98 L909.62,135.28 L914.42,126.88 L919.50,118.76 L924.88,110.94 L930.54,103.40 L936.50,96.16 L942.75,89.22 L949.28,82.62 L956.11,76.34 L963.22,70.40 L970.62,64.78 L978.32,59.50 L986.31,54.54 L994.58,49.92 L1003.14,45.62 L1012.00,41.66 L1021.13,38.05 L1030.52,34.82 L1040.17,31.97 L1050.08,29.50 L1060.25,27.41 L1070.68,25.70 L1081.37,24.37 L1092.32,23.42 L1103.53,22.85 L1115.00,22.66 L1130.53,23.01 L1145.50,24.06 L1159.92,25.81 L1173.80,28.26 L1187.12,31.41 L1199.90,35.26 L1212.12,39.81 L1223.80,45.06 L1234.92,51.01 L1245.50,57.66 L1255.52,64.93 L1264.96,72.74 L1273.84,81.09 L1282.14,89.98 L1289.88,99.41 L1297.04,109.38 L1303.63,119.89 L1309.66,130.94 L1315.12,142.53 L1320.00,154.66 L1215.00,201.66 L1213.05,195.17 L1210.78,188.92 L1208.20,182.89 L1205.32,177.10 L1202.12,171.53 L1198.62,166.20 L1194.81,161.09 L1190.68,156.22 L1186.24,151.57 L1181.50,147.16 L1176.42,143.07 L1171.00,139.42 L1165.22,136.19 L1159.10,133.40 L1152.62,131.03 L1145.80,129.10 L1138.62,127.59 L1131.10,126.52 L1123.22,125.87 L1115.00,125.66 L1104.47,126.00 L1094.50,127.02 L1085.08,128.72 L1076.20,131.10 L1067.88,134.16 L1060.10,137.90 L1052.88,142.32 L1046.20,147.42 L1040.08,153.20 L1034.50,159.66 L1029.46,166.67 L1024.96,174.10 L1020.98,181.95 L1017.54,190.22 L1014.62,198.91 L1012.24,208.02 L1010.38,217.55 L1009.06,227.50 L1008.26,237.87 L1008.00,248.66 L1008.00,343.66 L1008.27,354.44 L1009.06,364.80 L1010.38,374.72 L1012.24,384.22 L1014.62,393.28 L1017.54,401.92 L1020.99,410.12 L1024.96,417.90 L1029.46,425.24 L1034.50,432.16 L1040.08,438.52 L1046.20,444.22 L1052.88,449.24 L1060.10,453.60 L1067.88,457.28 L1076.20,460.30 L1085.08,462.64 L1094.50,464.32 L1104.47,465.32 L1115.00,465.66 L1123.99,465.42 L1132.56,464.72 L1140.71,463.54 L1148.44,461.90 L1155.75,459.78 L1162.64,457.20 L1169.11,454.14 L1175.16,450.62 L1180.79,446.62 L1186.00,442.16 L1190.89,437.34 L1195.56,432.30 L1200.01,427.02 L1204.24,421.52 L1208.25,415.78 L1212.04,409.82 L1215.61,403.62 L1218.96,397.20 L1222.09,390.54 L1225.00,383.66 L1323.00,430.66 L1317.53,444.11 L1311.52,456.88 L1304.97,468.95 L1297.88,480.34 L1290.25,491.03 L1282.08,501.04 L1273.37,510.35 L1264.12,518.98 L1254.33,526.91 L1244.00,534.16 L1233.17,540.71 L1221.88,546.58 L1210.13,551.75 L1197.92,556.24 L1185.25,560.03 L1172.12,563.14 L1158.53,565.55 L1144.48,567.28 L1129.97,568.31 L1115.00,568.66 L1103.53,568.47 L1092.32,567.90 L1081.37,566.95 Z M2291.00,142.66 L2292.05,138.47 L2293.22,134.32 L2294.49,130.19 L2295.88,126.10 L2297.38,122.03 L2298.98,118.00 L2300.70,113.99 L2302.52,110.02 L2304.45,106.07 L2306.50,102.16 L2308.66,98.30 L2310.96,94.54 L2313.39,90.86 L2315.94,87.28 L2318.62,83.78 L2321.44,80.38 L2324.39,77.06 L2327.46,73.84 L2330.66,70.70 L2334.00,67.66 L2337.47,64.72 L2341.06,61.90 L2344.78,59.20 L2348.64,56.62 L2352.62,54.16 L2356.74,51.82 L2360.99,49.60 L2365.36,47.50 L2369.86,45.52 L2374.50,43.66 L2379.28,41.95 L2384.20,40.42 L2389.28,39.07 L2394.50,37.90 L2399.88,36.91 L2405.40,36.10 L2411.07,35.47 L2416.90,35.02 L2422.88,34.75 L2429.00,34.66 L2457.00,34.66 L2457.00,155.66 L2417.00,155.66 L2404.32,155.85 L2392.28,156.42 L2380.88,157.37 L2370.12,158.70 L2360.00,160.41 L2350.52,162.50 L2341.68,164.97 L2333.48,167.82 L2325.92,171.05 L2319.00,174.66 L2312.73,178.70 L2307.12,183.22 L2302.17,188.22 L2297.88,193.70 L2294.25,199.66 L2291.28,206.10 L2288.97,213.02 L2287.32,220.42 L2286.33,228.30 L2286.00,236.66 L2286.00,556.66 L2158.00,556.66 L2158.00,34.66 L2286.00,34.66 L2286.00,142.66 L2291.00,142.66 Z M3192.00,121.66 L3195.39,113.39 L3199.14,105.40 L3203.26,97.67 L3207.76,90.22 L3212.62,83.03 L3217.86,76.12 L3223.47,69.47 L3229.44,63.10 L3235.78,56.99 L3242.50,51.16 L3249.66,45.74 L3257.36,40.90 L3265.59,36.62 L3274.34,32.92 L3283.62,29.78 L3293.44,27.22 L3303.78,25.22 L3314.66,23.80 L3326.07,22.94 L3338.00,22.66 L3353.82,23.19 L3368.88,24.78 L3383.18,27.43 L3396.72,31.14 L3409.50,35.91 L3421.52,41.74 L3432.78,48.63 L3443.28,56.58 L3453.02,65.59 L3462.00,75.66 L3470.17,86.71 L3477.48,98.66 L3483.93,111.51 L3489.52,125.26 L3494.25,139.91 L3498.12,155.46 L3501.13,171.91 L3503.28,189.26 L3504.57,207.51 L3505.00,226.66 L3505.00,556.66 L3377.00,556.66 L3377.00,239.66 L3376.80,228.74 L3376.20,218.38 L3375.20,208.58 L3373.80,199.34 L3372.00,190.66 L3369.80,182.54 L3367.20,174.98 L3364.20,167.98 L3360.80,161.54 L3357.00,155.66 L3352.74,150.34 L3347.96,145.58 L3342.66,141.38 L3336.84,137.74 L3330.50,134.66 L3323.64,132.14 L3316.26,130.18 L3308.36,128.78 L3299.94,127.94 L3291.00,127.66 L3287.01,127.71 L3283.06,127.88 L3279.13,128.15 L3275.24,128.54 L3271.38,129.03 L3267.54,129.64 L3263.74,130.35 L3259.96,131.18 L3256.22,132.11 L3252.50,133.16 L3248.84,134.31 L3245.26,135.56 L3241.76,136.91 L3238.34,138.36 L3235.00,139.91 L3231.74,141.56 L3228.56,143.31 L3225.46,145.16 L3222.44,147.11 L3219.50,149.16 L3216.66,151.31 L3213.92,153.56 L3211.30,155.91 L3208.78,158.36 L3206.38,160.91 L3204.08,163.56 L3201.89,166.31 L3199.82,169.16 L3197.86,172.11 L3196.00,175.16 L3194.29,178.31 L3192.76,181.58 L3191.41,184.95 L3190.24,188.44 L3189.25,192.03 L3188.44,195.74 L3187.81,199.55 L3187.36,203.48 L3187.09,207.51 L3187.00,211.66 L3187.00,556.66 L3059.00,556.66 L3059.00,34.66 L3187.00,34.66 L3187.00,121.66 L3192.00,121.66 Z"/></svg></div>
|
||
<div class="nav" data-nav="search">搜尋</div>
|
||
<div class="nav hide" id="nav-map" data-nav="map">總圖</div>
|
||
<div class="nav hide" id="nav-upload" data-nav="upload">上傳</div>
|
||
<div class="nav hide" id="nav-workflows" data-nav="workflows">工作流</div>
|
||
<div class="nav hide" id="nav-admin" data-nav="admin">管理</div>
|
||
<div class="nav" data-nav="settings">設定</div>
|
||
<div class="nav themelabel" data-themetoggle style="margin-top:8px;font-size:14.5px">☾ 切深色</div>
|
||
<div class="foot" id="side-foot"></div>
|
||
</div>
|
||
<main>
|
||
|
||
<!-- 搜尋(落地頁)-->
|
||
<div class="view page" id="v-search">
|
||
<div class="pagehead"><span class="t">搜尋</span><span class="m" id="se-scope"></span></div>
|
||
<div style="padding-top:20px">
|
||
<div class="searchrow">
|
||
<input id="se-q" placeholder="搜尋知識…" autocomplete="off">
|
||
<button class="btn" id="se-go" style="flex:none;padding:0 22px;letter-spacing:.2em">搜</button>
|
||
</div>
|
||
<div class="modebar">
|
||
<button class="modebtn on" data-mode="keyword">關鍵字</button>
|
||
<button class="modebtn" data-mode="semantic">語意</button>
|
||
<button class="modebtn hide" id="mode-graph" data-mode="graph">圖譜</button>
|
||
</div>
|
||
<!-- AI 問答(portal-demo-suite)。設計哲學:AI 檢索=用戶手動搜尋同一套——
|
||
/portal/data/chat 與 /portal/data/search 走同一個 session 閘、同一個租戶資料面,
|
||
AI 只是代查再作答,不多開任何權限。此實例未安裝問答 workflow 時 server 誠實 404。-->
|
||
<div style="margin-top:14px;padding:14px;border-radius:13px;background:rgba(var(--amber-rgb),.05);border:1px solid rgba(var(--amber-rgb),.25)">
|
||
<div style="font-size:13.5px;letter-spacing:.1em;color:rgba(var(--ink-rgb),.5);margin-bottom:9px">AI 問答・答案附出處,可回搜尋驗證</div>
|
||
<div class="searchrow">
|
||
<input id="ai-q" placeholder="用一句話問知識庫…" autocomplete="off" style="padding:12px 15px;font-size:16px">
|
||
<button class="btn" id="ai-go" style="flex:none;padding:0 20px">問 AI</button>
|
||
</div>
|
||
<div id="ai-out"></div>
|
||
</div>
|
||
<div id="se-banner"></div>
|
||
<div id="se-count" style="margin:20px 0 12px;font-size:14px;color:rgba(var(--ink-rgb),.5)"></div>
|
||
<div class="kgrid" id="se-results"></div>
|
||
<div id="se-graphout" style="display:none">
|
||
<div id="gr-box"></div>
|
||
<div id="gr-edges" style="margin-top:16px;display:flex;flex-direction:column;gap:7px"></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- 總圖(Arcrun#39 藏書地圖 GUI 切片;graph 粗閘後可見):全庫三元組一張網。
|
||
力導向佈局內聯手刻(demo 量級 ≤ 數百節點),不引外部套件(頁面自足原則)。-->
|
||
<div class="view page" id="v-map">
|
||
<div class="pagehead"><span class="t">總圖</span><span class="m" id="map-meta"></span></div>
|
||
<div style="padding-top:20px">
|
||
<div id="map-box"></div>
|
||
<div style="margin-top:12px;font-size:13.5px;color:rgba(var(--ink-rgb),.5)">
|
||
點節點可跳到該實體的圖譜搜尋。這張圖由知識庫的三元組即時算出——同一份地圖的文字版
|
||
(給 AI 注入用的總庫目錄)<span id="map-md-link"></span>。
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- 卡片詳頁 -->
|
||
<div class="view page" id="v-card">
|
||
<div class="pagehead" style="justify-content:flex-start;gap:14px">
|
||
<button class="btn3" style="border:none;padding:0;font-size:16px;color:var(--amber)" data-nav="search">‹ 搜尋</button>
|
||
<span class="serif" style="font-size:17px;letter-spacing:.14em;color:rgba(var(--ink-rgb),.55)">知識卡片</span>
|
||
</div>
|
||
<div id="cd-main" style="padding:24px 0 40px"><div class="muted">載入中…</div></div>
|
||
</div>
|
||
|
||
<!-- 上傳(portal-demo-suite:upload bindings 齊全才顯示 nav——/portal/session 的
|
||
upload_enabled;藏只是 UX,真閘在 /portal/data/upload 路由層 404)-->
|
||
<div class="view page narrow" id="v-upload">
|
||
<div class="pagehead"><span class="t">上傳</span><span class="m">Markdown / 純文字</span></div>
|
||
<div style="margin-top:16px;padding:13px 16px;border-radius:11px;background:rgba(var(--amber-rgb),.06);border:1px dashed rgba(var(--amber-rgb),.35);font-size:14px;line-height:1.7;color:rgba(var(--ink-rgb),.65)">
|
||
上傳的文件會進入知識庫收件管線:<b style="color:var(--ink)">約 1 分鐘後可在搜尋頁找到</b>;AI 整理後會以 wiki 卡形式出現。支援 .md / .txt(一律以 .md 收件)。
|
||
</div>
|
||
<div id="up-drop" style="margin-top:16px;padding:44px 20px;border-radius:13px;border:2px dashed rgba(var(--amber-rgb),.4);background:rgba(var(--amber-rgb),.04);text-align:center;cursor:pointer">
|
||
<div style="font-size:16px;color:rgba(var(--ink-rgb),.7)">把 .md / .txt 檔案拖放到這裡</div>
|
||
<div class="muted" style="margin-top:8px;font-size:14px">或</div>
|
||
<button class="btn2" id="up-pick" style="margin-top:10px;padding:11px 22px;font-size:15px">選擇檔案(可多選)</button>
|
||
<input type="file" id="up-file" accept=".md,.txt" multiple style="display:none">
|
||
</div>
|
||
<div class="listcol" id="up-list"></div>
|
||
</div>
|
||
|
||
<!-- 工作流(D-8:預設 admin 才看得到;唯讀,不開 trigger)-->
|
||
<div class="view page narrow" id="v-workflows">
|
||
<div class="pagehead"><span class="t">工作流</span><span class="m">唯讀・系統狀態</span></div>
|
||
<div style="margin-top:16px;padding:13px 16px;border-radius:11px;background:rgba(var(--amber-rgb),.06);border:1px dashed rgba(var(--amber-rgb),.35);font-size:14px;line-height:1.7;color:rgba(var(--ink-rgb),.65)">
|
||
此頁只顯示系統裡的工作流與最近執行狀態,<b style="color:var(--ink)">不能觸發執行</b>(觸發屬系統擁有者權限)。
|
||
</div>
|
||
<div class="listcol" id="wf-list"><div class="muted">載入中…</div></div>
|
||
</div>
|
||
|
||
<!-- 設定 -->
|
||
<div class="view page narrow" id="v-settings">
|
||
<div class="pagehead"><span class="t">設定</span></div>
|
||
<div class="setcol">
|
||
<div class="panel">
|
||
<div style="font-size:17px;font-weight:600;margin-bottom:10px">我的帳號</div>
|
||
<div id="st-me"><div class="muted">載入中…</div></div>
|
||
</div>
|
||
<div class="panel">
|
||
<div style="display:flex;align-items:center;gap:14px">
|
||
<div style="min-width:0">
|
||
<div style="font-size:17px;font-weight:600">深色模式</div>
|
||
<div style="margin-top:4px;font-size:14px;line-height:1.65;color:rgba(var(--ink-rgb),.55)">預設淺色(紙感)。切換立即生效,選擇記在這台裝置。</div>
|
||
</div>
|
||
<div class="switch" id="st-theme-switch" data-themetoggle style="cursor:pointer"><i></i></div>
|
||
</div>
|
||
</div>
|
||
<div class="panel">
|
||
<div style="font-size:17px;font-weight:600">更改密碼</div>
|
||
<div style="margin-top:4px;font-size:14px;color:rgba(var(--ink-rgb),.55)">需輸入舊密碼驗證身分;新密碼至少 8 碼</div>
|
||
<div style="margin-top:14px;display:flex;flex-direction:column;gap:10px">
|
||
<input type="password" id="st-pw-old" class="txt" placeholder="舊密碼" autocomplete="current-password">
|
||
<input type="password" id="st-pw-new" class="txt" placeholder="新密碼(至少 8 碼)" autocomplete="new-password">
|
||
<input type="password" id="st-pw-new2" class="txt" placeholder="再輸入一次新密碼" autocomplete="new-password">
|
||
<button class="btn" id="st-pw-save">更新密碼</button>
|
||
<div id="st-pw-status" style="font-size:14px;min-height:1.2em"></div>
|
||
</div>
|
||
</div>
|
||
<!-- 07-27 leo:金鑰與下載原本只在一次性的「還差 N 步」卡片裡,按了「稍後再說」
|
||
或裝完就再也找不到。換金鑰/換電腦重新下載都需要常駐入口,故搬進設定頁。 -->
|
||
<div class="panel">
|
||
<!-- t87 07-28 leo:乾淨網址(只有 origin,不含 /portal/# 後綴),供小幫手連線用 -->
|
||
<div style="display:flex;align-items:center;gap:8px;margin-bottom:14px;font-size:13.5px">
|
||
<span style="color:rgba(var(--ink-rgb),.6);white-space:nowrap">你的知識庫網址(小幫手連線用)</span>
|
||
<code id="st-origin-url" style="flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;color:var(--ink)"></code>
|
||
<button class="btn3" id="st-copy-url" style="padding:5px 12px;font-size:13px;white-space:nowrap;flex:none">複製</button>
|
||
</div>
|
||
<div style="font-size:17px;font-weight:600">同步小幫手</div>
|
||
<div style="margin-top:4px;font-size:14px;line-height:1.65;color:rgba(var(--ink-rgb),.55)">把你電腦上的資料夾變成知識庫。換電腦或重裝時可以再下載一次。</div>
|
||
<div style="margin-top:12px">
|
||
<a class="btn3" id="st-daemon-dl" href="#" style="display:inline-block;padding:11px 18px;border-radius:10px;text-decoration:none">下載 Mac 版</a>
|
||
<div style="margin-top:8px;font-size:13px;line-height:1.7;color:rgba(var(--ink-rgb),.5)">封測版未簽章,第一次請右鍵→打開。裝好第一次開啟時,貼上這個網址+你的帳號密碼就連上了。</div>
|
||
</div>
|
||
</div>
|
||
<!-- t131 合併 AI 設定(Gemini API Key 必填;Claude 加強版視 daemon 回報 enable) -->
|
||
<div class="panel" id="st-ai-panel">
|
||
<div style="font-size:17px;font-weight:600">AI 設定</div>
|
||
<div style="margin-top:14px;display:flex;flex-direction:column;gap:16px">
|
||
<!-- 第一格:Gemini API Key(必填,聊天+萃取共用) -->
|
||
<div>
|
||
<div style="font-size:14px;font-weight:500;margin-bottom:4px">Gemini API Key</div>
|
||
<div style="font-size:13px;line-height:1.6;color:rgba(var(--ink-rgb),.55);margin-bottom:8px">聊天問答與文件萃取都用這一把。<a href="https://aistudio.google.com/apikey" target="_blank" rel="noopener">免費申請</a>,金鑰只存在你自己的知識庫裡。</div>
|
||
<input type="password" id="st-ai-key" class="txt" placeholder="貼上 Gemini API Key" autocomplete="off">
|
||
</div>
|
||
<!-- 第二格:Claude 加強版(選填,依 daemon 回報 enable) -->
|
||
<div style="padding-top:12px;border-top:1px solid rgba(var(--ink-rgb),.08)">
|
||
<div style="font-size:14px;font-weight:500;margin-bottom:6px">讓知識卡整理得更好(選填)</div>
|
||
<label style="display:flex;gap:8px;align-items:flex-start;cursor:pointer">
|
||
<input type="checkbox" id="st-ai-use-claude" style="margin-top:3px;flex:none" disabled>
|
||
<span style="font-size:14px">本地萃取改用 Claude Code</span>
|
||
</label>
|
||
<div id="st-ai-claude-desc" style="margin-top:8px;font-size:13px;line-height:1.65;color:rgba(var(--ink-rgb),.55)">
|
||
讀你文件、整理成知識卡的那個 AI,換成更強的模型。<b style="color:var(--ink)">卡片會更抓得到重點、關聯也連得更準</b>,之後搜尋和問答的品質跟著提升。需要你的電腦已安裝 Claude Code。不填就用上面那把 Gemini,一樣能用。
|
||
</div>
|
||
<div id="st-ai-claude-hint" style="margin-top:6px;font-size:13px;color:rgba(var(--ink-rgb),.4);display:none"></div>
|
||
</div>
|
||
<div>
|
||
<button class="btn" id="st-ai-save">儲存 AI 設定</button>
|
||
<div id="st-ai-status" style="font-size:14px;min-height:1.2em;margin-top:8px"></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<button class="btn3" id="st-logout" style="padding:14px;font-size:16px;border-radius:11px">登出</button>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- 管理(P4,admin-only:nav 只有 admin 看得到;真閘在 /portal/admin/* role 閘 403)-->
|
||
<div class="view page" id="v-admin">
|
||
<div class="pagehead"><span class="t">管理</span><span class="m">帳號與知識庫授權</span></div>
|
||
|
||
<div class="sechead">帳號管理</div>
|
||
<div class="panel">
|
||
<div style="font-size:16px;font-weight:600;margin-bottom:4px">新增同仁帳號</div>
|
||
<div style="font-size:13.5px;color:rgba(var(--ink-rgb),.55);margin-bottom:12px">建立後會產生一組一次性密碼——只顯示這一次,請當場轉交同仁(同仁可在「設定」自行改密)。</div>
|
||
<div class="formrow">
|
||
<input type="email" id="ad-nu-email" class="txt" placeholder="Email" autocomplete="off">
|
||
<input type="text" id="ad-nu-name" class="txt" placeholder="顯示名(可留空=用 Email)" autocomplete="off">
|
||
<select id="ad-nu-role"><option value="user">一般用戶</option><option value="admin">管理員</option></select>
|
||
<button class="btn" id="ad-nu-create" style="flex:none;padding:0 20px">建立</button>
|
||
</div>
|
||
<div id="ad-nu-status" class="err" style="font-size:14px;min-height:1.2em;margin-top:8px"></div>
|
||
</div>
|
||
<div id="ad-otp"></div>
|
||
<div class="listcol" id="ad-users"><div class="muted">載入中…</div></div>
|
||
|
||
<div class="sechead">庫目錄管理</div>
|
||
<div style="display:flex;align-items:center;gap:8px;margin-bottom:10px;font-size:13.5px">
|
||
<span style="color:rgba(var(--ink-rgb),.6);white-space:nowrap">你的知識庫網址(小幫手連線用)</span>
|
||
<code id="ad-origin-url" style="flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;color:var(--ink)"></code>
|
||
<button class="btn3" id="ad-copy-url" style="padding:5px 12px;font-size:13px;white-space:nowrap;flex:none">複製</button>
|
||
</div>
|
||
<div style="margin-bottom:12px;padding:12px 15px;border-radius:11px;background:rgba(var(--amber-rgb),.06);border:1px dashed rgba(var(--amber-rgb),.35);font-size:13.5px;line-height:1.7;color:rgba(var(--ink-rgb),.65)">
|
||
<!-- 07-27 leo:拿掉「登記新庫」——庫由「同步小幫手」看守資料夾時自動蓋章產生,
|
||
人工登記只會製造對不上的空庫。這裡只做「已存在的庫」的管理。 -->
|
||
裝好<b style="color:var(--ink)">同步小幫手</b>並選好要看守的資料夾之後,每個資料夾會自動成為一個「庫」出現在下面——<b style="color:var(--ink)">不需要人工新增</b>。下面還是空的,代表小幫手還沒裝好或還沒選資料夾。
|
||
</div>
|
||
<div class="listcol" id="ad-libs"><div class="muted">載入中…</div></div>
|
||
</div>
|
||
|
||
</main>
|
||
</div>
|
||
|
||
<!-- 手機底部導覽 -->
|
||
<div id="tabbar">
|
||
<div class="tab" data-nav="search">搜尋</div>
|
||
<div class="tab hide" id="tab-map" data-nav="map">總圖</div>
|
||
<div class="tab hide" id="tab-upload" data-nav="upload">上傳</div>
|
||
<div class="tab hide" id="tab-workflows" data-nav="workflows">工作流</div>
|
||
<div class="tab hide" id="tab-admin" data-nav="admin">管理</div>
|
||
<div class="tab" data-nav="settings">設定</div>
|
||
</div>
|
||
|
||
<div id="toast"></div>
|
||
|
||
<script>
|
||
(function () {
|
||
var API_BASE = window.ARCRUN_API_BASE || '';
|
||
'use strict';
|
||
// 台北時間 helper(lib/taipei-time.ts 注入,console 同套——顯示不隨裝置時區漂移)
|
||
var TAIPEI_OFFSET_MS = 28800000; // UTC+8,台北無 DST
|
||
function tpePad(n) { n = String(n); return n.length < 2 ? '0' + n : n; }
|
||
function taipeiDayKey(ms) { return new Date(ms + TAIPEI_OFFSET_MS).toISOString().slice(0, 10); }
|
||
function taipeiDateStr(ms) { return taipeiDayKey(ms); }
|
||
function taipeiDateTimeStr(ms) { var d = new Date(ms + TAIPEI_OFFSET_MS); return taipeiDayKey(ms) + ' ' + tpePad(d.getUTCHours()) + ':' + tpePad(d.getUTCMinutes()); }
|
||
function taipeiTimeStr(ms) { var d = new Date(ms + TAIPEI_OFFSET_MS); return tpePad(d.getUTCHours()) + ':' + tpePad(d.getUTCMinutes()) + ':' + tpePad(d.getUTCSeconds()); }
|
||
function taipeiMonthDay(ms) { var d = new Date(ms + TAIPEI_OFFSET_MS); return { month: d.getUTCMonth() + 1, day: d.getUTCDate() }; }
|
||
var $ = function (id) { return document.getElementById(id); };
|
||
|
||
// ── 狀態:只有 session token;**沒有租戶字串、沒有 API key**(design §3.3)──
|
||
var S = {
|
||
token: localStorage.getItem('arcrun_portal_session') || '',
|
||
profile: null, // /portal/session 回應(display_name/role/libraries/graph_allowed/workflows_visible)
|
||
mode: 'keyword',
|
||
cardId: ''
|
||
};
|
||
|
||
function esc(s) {
|
||
return String(s == null ? '' : s).replace(/[&<>"']/g, function (c) {
|
||
return { '&': '&', '<': '<', '>': '>', '"': '"', "'": ''' }[c];
|
||
});
|
||
}
|
||
function toast(msg) {
|
||
var el = $('toast');
|
||
el.textContent = msg;
|
||
el.style.display = 'block';
|
||
clearTimeout(toast._t);
|
||
toast._t = setTimeout(function () { el.style.display = 'none'; }, 2000);
|
||
}
|
||
// safeJson:把回應當 JSON 解析,**解析不了就回空物件而不是拋例外**(t75 ①,2026-07-28)。
|
||
//
|
||
// 為什麼需要:原本各處都直接 r.json(),但伺服器不一定回 JSON——404 頁、Cloudflare 錯誤頁、
|
||
// 反向代理的 HTML 都是純文字。JSON.parse 一爆,錯誤就沿著 .catch 走到 friendlyErr,
|
||
// **技術訊息原文被噴到畫面上**。leo 同事實測看到的就是:
|
||
// 「Unexpected non-whitespace character after JSON at position 4」
|
||
// 真正的原因其實是 `/portal/admin/chat-key` 回 404(實例的 cypher 是舊版沒這端點),
|
||
// 但使用者只看得到一句看不懂的英文 ⇒ 無從判斷是自己打錯還是系統壞了。
|
||
function safeJson(r) {
|
||
return r.text().then(function (t) {
|
||
if (!t) return {};
|
||
try { return JSON.parse(t); } catch (e) { return {}; }
|
||
});
|
||
}
|
||
|
||
// friendlyErr:給使用者看的訊息,**不外洩技術細節**(t75 ①)。
|
||
// 原本最後一行是 `return m` =把任何例外訊息原樣顯示,包含 JSON parse 錯誤、
|
||
// stack 片段這種對使用者毫無意義、只會嚇到人的東西。
|
||
function friendlyErr(e) {
|
||
var m = e && e.message ? String(e.message) : String(e);
|
||
if (/failed to fetch|load failed|networkerror|network request failed/i.test(m)) return '連線中斷——請檢查網路後重試';
|
||
// JSON 解析類=伺服器回了非預期內容(多半是 404/代理錯誤頁),對使用者說人話。
|
||
if (/json|unexpected token|unexpected non-whitespace/i.test(m)) return '伺服器回應異常,請稍後再試一次(若持續發生請回報)';
|
||
// 其餘:只在含中文(=我們自己寫的訊息)時原樣顯示;純英文技術訊息一律收斂。
|
||
if (/[\u4e00-\u9fff]/.test(m)) return m;
|
||
return '操作失敗,請稍後再試一次';
|
||
}
|
||
function authHeaders() { return S.token ? { 'Authorization': 'Bearer ' + S.token } : {}; }
|
||
|
||
// ── 主題(console 同款,key 獨立)──
|
||
function getTheme() { return document.documentElement.getAttribute('data-theme') === 'dark' ? 'dark' : 'light'; }
|
||
function setTheme(t) {
|
||
document.documentElement.setAttribute('data-theme', t);
|
||
try { localStorage.setItem('arcrun_portal_theme', t); } catch (e) { /* 私密模式存不了 */ }
|
||
syncThemeUI();
|
||
}
|
||
function syncThemeUI() {
|
||
var dark = getTheme() === 'dark';
|
||
document.querySelectorAll('.themelabel').forEach(function (el) { el.textContent = dark ? '☀ 切淺色' : '☾ 切深色'; });
|
||
var sw = $('st-theme-switch');
|
||
if (sw) sw.classList.toggle('on', dark);
|
||
}
|
||
document.addEventListener('click', function (ev) {
|
||
var t = ev.target.closest('[data-themetoggle]');
|
||
if (t) setTheme(getTheme() === 'dark' ? 'light' : 'dark');
|
||
});
|
||
syncThemeUI();
|
||
|
||
// created_at 容錯(epoch 秒/毫秒/ISO),顯示一律台北時間(console 同款)
|
||
function parseAtMs(v) {
|
||
if (v == null || v === '') return null;
|
||
if (typeof v === 'number') return v < 1e12 ? v * 1000 : v;
|
||
if (/^\d+$/.test(v)) { var n = Number(v); return n < 1e12 ? n * 1000 : n; }
|
||
var s = /T/.test(v) ? v : String(v).replace(' ', 'T') + 'Z';
|
||
var ms = Date.parse(s);
|
||
return isNaN(ms) ? null : ms;
|
||
}
|
||
function fmtDate(v) { var ms = parseAtMs(v); return ms == null ? '' : taipeiDateStr(ms); }
|
||
function fmtDateTime(v) { var ms = parseAtMs(v); return ms == null ? '' : taipeiDateTimeStr(ms); }
|
||
|
||
// ── 極簡 Markdown 渲染(先全 escape 再上格式,防 XSS;console 同款)──
|
||
function mdInline(s) {
|
||
return s
|
||
.replace(/\*\*([^*]+)\*\*/g, '<b>$1</b>')
|
||
.replace(/(^|[^\\])\x60([^\x60]+)\x60/g, '$1<code>$2</code>');
|
||
}
|
||
function mdRender(src) {
|
||
var lines = String(src || '').split(/\r?\n/);
|
||
var out = [], inCode = false, listMode = '';
|
||
function closeList() { if (listMode) { out.push(listMode === 'ul' ? '</ul>' : '</ol>'); listMode = ''; } }
|
||
for (var i = 0; i < lines.length; i++) {
|
||
var raw = lines[i];
|
||
if (/^\s*\x60\x60\x60/.test(raw)) {
|
||
closeList();
|
||
if (inCode) { out.push('</code></pre>'); inCode = false; }
|
||
else { out.push('<pre><code>'); inCode = true; }
|
||
continue;
|
||
}
|
||
if (inCode) { out.push(esc(raw) + '\n'); continue; }
|
||
var line = esc(raw);
|
||
var h = raw.match(/^(#{1,4})\s+(.*)$/);
|
||
if (h) { closeList(); out.push('<h' + h[1].length + '>' + mdInline(esc(h[2])) + '</h' + h[1].length + '>'); continue; }
|
||
if (/^\s*>\s?/.test(line)) { closeList(); out.push('<blockquote>' + mdInline(line.replace(/^\s*>\s?/, '')) + '</blockquote>'); continue; }
|
||
var li = raw.match(/^\s*[-*+]\s+(.*)$/);
|
||
if (li) { if (listMode !== 'ul') { closeList(); out.push('<ul>'); listMode = 'ul'; } out.push('<li>' + mdInline(esc(li[1])) + '</li>'); continue; }
|
||
var oli = raw.match(/^\s*\d+[.)]\s+(.*)$/);
|
||
if (oli) { if (listMode !== 'ol') { closeList(); out.push('<ol>'); listMode = 'ol'; } out.push('<li>' + mdInline(esc(oli[1])) + '</li>'); continue; }
|
||
if (/^\s*$/.test(raw)) { closeList(); continue; }
|
||
closeList();
|
||
out.push('<p>' + mdInline(line) + '</p>');
|
||
}
|
||
closeList();
|
||
if (inCode) out.push('</code></pre>');
|
||
return out.join('');
|
||
}
|
||
|
||
// ── entry 顯示 helpers(source/library 從 metadata_json 取——server 已 enforce 過權限)──
|
||
function entryMeta(e) {
|
||
try { var m = JSON.parse(e.metadata_json || 'null'); return m && typeof m === 'object' ? m : {}; } catch (er) { return {}; }
|
||
}
|
||
function entrySource(e) { var m = entryMeta(e); return typeof m.source === 'string' ? m.source : ''; }
|
||
// 來源回溯超連結:PORTAL_SOURCE_WEB_BASE 有設且 source 是 gitea:// 才給 href;
|
||
// 其餘回空字串=維持純文字(行為與未設時一字不變)。chunk 錨點(#n)捨棄。
|
||
var SOURCE_WEB_BASE = "";
|
||
function srcHref(src) {
|
||
if (!SOURCE_WEB_BASE || String(src).indexOf('gitea://') !== 0) return '';
|
||
var p = String(src).slice(8).replace(/#\d+$/, '');
|
||
return SOURCE_WEB_BASE.replace(/\/+$/, '') + '/' + p.split('/').map(encodeURIComponent).join('/');
|
||
}
|
||
function entryLib(e) { var m = entryMeta(e); return (typeof m.library === 'string' && m.library) ? m.library : 'general'; }
|
||
function entryTitle(e) {
|
||
if (e.page_name) return e.page_name;
|
||
var first = String(e.content || '').split(/\r?\n/).find(function (l) { return l.trim(); }) || '';
|
||
first = first.replace(/^#+\s*/, '').replace(/^[-*>]\s*/, '').trim();
|
||
if (first.length > 60) first = first.slice(0, 60) + '…';
|
||
return first || '(無標題・' + (e.entry_type || 'entry') + ')';
|
||
}
|
||
function entrySnippet(e) {
|
||
var lines = String(e.content || '').split(/\r?\n/).filter(function (l) { return l.trim(); });
|
||
var body = lines.slice(1).join(' ').replace(/\s+/g, ' ').trim();
|
||
if (!body) body = lines.join(' ');
|
||
if (body.length > 140) body = body.slice(0, 140) + '…';
|
||
return body;
|
||
}
|
||
|
||
// ── 路由 ──
|
||
var VIEWS = ['search', 'map', 'card', 'upload', 'workflows', 'admin', 'settings'];
|
||
var HOME = 'search';
|
||
function allowedViews() {
|
||
// 工作流/管理/上傳頁按 session 能力顯示(真閘在 server:/portal/data/workflows 403/404、
|
||
// /portal/admin/* role 閘 403、/portal/data/upload 未啟用 404——前端藏只是 UX,curl 直打也繞不過)
|
||
return VIEWS.filter(function (v) {
|
||
if (v === 'workflows') return !!(S.profile && S.profile.workflows_visible);
|
||
if (v === 'admin') return !!(S.profile && S.profile.role === 'admin');
|
||
if (v === 'upload') return !!(S.profile && S.profile.upload_enabled);
|
||
return true;
|
||
});
|
||
}
|
||
function currentRoute() {
|
||
var h = location.hash.replace(/^#\/?/, '');
|
||
var seg = h.split('/');
|
||
var ok = allowedViews();
|
||
return { raw: seg[0] || '', view: ok.indexOf(seg[0]) >= 0 ? seg[0] : HOME, arg: seg.slice(1).join('/') };
|
||
}
|
||
function nav(view, arg) {
|
||
location.hash = '#/' + view + (arg ? '/' + encodeURIComponent(arg) : '');
|
||
}
|
||
function showView(name) {
|
||
VIEWS.forEach(function (v) { $('v-' + v).classList.toggle('on', v === name); });
|
||
var activeKey = name === 'card' ? 'search' : name;
|
||
document.querySelectorAll('#sidenav .nav, #tabbar .tab').forEach(function (el) {
|
||
el.classList.toggle('on', el.getAttribute('data-nav') === activeKey);
|
||
});
|
||
window.scrollTo(0, 0);
|
||
}
|
||
var LOADERS = { card: loadCard, map: loadMap, workflows: loadWorkflows, admin: loadAdmin, settings: loadSettings };
|
||
function route() {
|
||
var r = currentRoute();
|
||
if (r.raw && r.raw !== r.view) { location.hash = '#/' + r.view; return; }
|
||
if (r.view === 'card' && r.arg) S.cardId = decodeURIComponent(r.arg);
|
||
showView(r.view);
|
||
if (LOADERS[r.view]) LOADERS[r.view]();
|
||
}
|
||
window.addEventListener('hashchange', route);
|
||
document.addEventListener('click', function (ev) {
|
||
var t = ev.target.closest('[data-nav]');
|
||
if (t) nav(t.getAttribute('data-nav'));
|
||
});
|
||
|
||
// ── 認證流 ──
|
||
function showAuth() {
|
||
$('v-firstsetup').classList.remove('on');
|
||
$('v-login').classList.add('on');
|
||
$('shell').classList.remove('on');
|
||
$('tabbar').classList.remove('on');
|
||
// t49:全新實例(還沒有任何帳號)→ 換顯示「首次設定」,不讓用戶對著登入殼發呆。
|
||
// 探測走 console/auth-status(configured 布林,console 首設同一顆;失敗就保持登入殼=誠實降級)。
|
||
fetch(API_BASE + '/console/auth-status')
|
||
.then(function (r) { return safeJson(r); })
|
||
.then(function (d) {
|
||
if (d && d.configured === false) {
|
||
$('v-login').classList.remove('on');
|
||
$('v-firstsetup').classList.add('on');
|
||
}
|
||
})
|
||
.catch(function () { /* 探測不到就維持登入殼 */ });
|
||
}
|
||
function showApp() {
|
||
$('v-login').classList.remove('on');
|
||
$('v-firstsetup').classList.remove('on');
|
||
$('shell').classList.add('on');
|
||
$('tabbar').classList.add('on');
|
||
// t53(leo 07-25:「進站要做的事——給金鑰、下載 daemon——不然這個安裝沒完成」):
|
||
// 常駐「完成安裝」清單卡,三件做完才消失(localStorage 記進度;admin 才看得到——
|
||
// 金鑰與 daemon 設定是裝機者的事,同事帳號不顯示)。
|
||
try { renderSetupChecklist(); } catch (e) { /* 清單卡失敗不擋主流程 */ }
|
||
var p = S.profile || {};
|
||
$('side-foot').innerHTML = esc(p.display_name || '') + '<br>' + esc(location.host);
|
||
$('nav-workflows').classList.toggle('hide', !p.workflows_visible);
|
||
$('tab-workflows').classList.toggle('hide', !p.workflows_visible);
|
||
// 上傳 nav:一般用戶可見,但只在實例啟用上傳(bindings 齊全)時顯示(未啟用的實例零影響)
|
||
$('nav-upload').classList.toggle('hide', !p.upload_enabled);
|
||
$('tab-upload').classList.toggle('hide', !p.upload_enabled);
|
||
$('nav-admin').classList.toggle('hide', p.role !== 'admin');
|
||
$('tab-admin').classList.toggle('hide', p.role !== 'admin');
|
||
$('mode-graph').classList.toggle('hide', !p.graph_allowed);
|
||
$('nav-map').classList.toggle('hide', !p.graph_allowed);
|
||
$('tab-map').classList.toggle('hide', !p.graph_allowed);
|
||
var libs = p.libraries || [];
|
||
$('se-scope').textContent = libs.indexOf('*') >= 0 ? '範圍:全部知識庫' : ('範圍:' + libs.join('・'));
|
||
if (!location.hash) location.hash = '#/' + HOME;
|
||
route();
|
||
}
|
||
function dropSession() {
|
||
S.token = '';
|
||
S.profile = null;
|
||
try { localStorage.removeItem('arcrun_portal_session'); } catch (e) { /* noop */ }
|
||
showAuth();
|
||
}
|
||
function boot() {
|
||
if (!S.token) { showAuth(); return; }
|
||
fetch(API_BASE + '/portal/session', { headers: authHeaders() })
|
||
.then(function (r) { return safeJson(r).then(function (d) { return { ok: r.ok, status: r.status, d: d }; }); })
|
||
.then(function (x) {
|
||
if (!x.ok) { dropSession(); return; }
|
||
S.profile = x.d;
|
||
showApp();
|
||
})
|
||
.catch(function () {
|
||
// 斷網時不清 session(誠實:連不上 ≠ session 失效),顯示登入殼並提示
|
||
showAuth();
|
||
$('login-status').textContent = '連線中斷——請檢查網路後重新整理';
|
||
});
|
||
}
|
||
$('login-submit').addEventListener('click', doLogin);
|
||
$('login-password').addEventListener('keydown', function (ev) { if (ev.key === 'Enter') doLogin(); });
|
||
function doLogin() {
|
||
var email = $('login-email').value.trim();
|
||
var password = $('login-password').value;
|
||
if (!email || !password) { $('login-status').textContent = '請輸入 Email 與密碼'; return; }
|
||
$('login-submit').disabled = true;
|
||
$('login-status').textContent = '';
|
||
fetch(API_BASE + '/portal/login', {
|
||
method: 'POST',
|
||
headers: { 'Content-Type': 'application/json' },
|
||
body: JSON.stringify({ email: email, password: password })
|
||
})
|
||
.then(function (r) { return safeJson(r).then(function (d) { return { ok: r.ok, status: r.status, d: d }; }); })
|
||
.then(function (x) {
|
||
$('login-submit').disabled = false;
|
||
if (!x.ok) { $('login-status').textContent = x.d.error || '登入失敗'; return; }
|
||
S.token = x.d.session_token;
|
||
try { localStorage.setItem('arcrun_portal_session', S.token); } catch (e) { /* 私密模式只活本次 */ }
|
||
$('login-password').value = '';
|
||
boot();
|
||
})
|
||
.catch(function (e) { $('login-submit').disabled = false; $('login-status').textContent = friendlyErr(e); });
|
||
}
|
||
// t72 OS 分流(2026-07-27,leo:「客戶是用 windows 的」)——在此之前四處寫死「下載 Mac 版」,
|
||
// Windows 客戶按下去會拿到 Mac 的 .app=按了連到錯的東西(leo 判準:那不算友善)。
|
||
// 判不出 OS 時**兩個都給**,不替用戶猜;且無論判成哪個,頁面都留「不是這個系統?」的另一版連結
|
||
// ——UA 會判錯,判錯時用戶要有路可走(施工圖 §3 注意事項 1、3)。
|
||
var DAEMON_BASE_DEFAULT = 'https://raw.githubusercontent.com/youlinhsieh/arcrun-rag-bundles/main/daemon/';
|
||
var DAEMON_MAC = 'ArcrunRAG-mac-unsigned.zip';
|
||
var DAEMON_WIN = 'ArcrunRAG-win-unsigned.zip';
|
||
// Mac 那顆 21MB > jsDelivr 單檔 20MB 上限(實測回 "File size exceeded...")→ 一律走 raw;
|
||
// Windows 13MB 雖在限內,同走 raw 保持單一來源、少一個會壞的地方。
|
||
function daemonBase() {
|
||
var cfg = (window.ARCRUN_CONFIG || {});
|
||
if (cfg.daemonBase) return String(cfg.daemonBase).replace(/\/?$/, '/');
|
||
// 舊 key 相容(施工圖 §3 注意事項 2):daemonDownload 是「單一檔案網址」,
|
||
// 有設就尊重它當 Mac 版網址,並由它推出目錄給 Windows 版用。
|
||
if (cfg.daemonDownload) {
|
||
var s = String(cfg.daemonDownload);
|
||
return s.slice(0, s.lastIndexOf('/') + 1) || DAEMON_BASE_DEFAULT;
|
||
}
|
||
return DAEMON_BASE_DEFAULT;
|
||
}
|
||
function daemonPick() {
|
||
var base = daemonBase();
|
||
var ua = navigator.userAgent || '';
|
||
// 手機/平板先排除:iOS 的 UA 含 "Mac OS X",不排除會把 iPhone 判成 Mac,
|
||
// 讓手機用戶下載一個裝不起來的桌面 app(測到才發現,2026-07-27)。
|
||
// 手機=判不出桌面 OS → 落到「兩個都給」,用戶回桌機再選。
|
||
var isMobile = /iPhone|iPad|iPod|Android|Mobile/i.test(ua);
|
||
var isWin = !isMobile && /Windows NT/i.test(ua);
|
||
var isMac = !isMobile && /Macintosh|Mac OS X/i.test(ua) && !/Windows/i.test(ua);
|
||
var mac = { os: 'mac', label: '下載 Mac 版', url: base + DAEMON_MAC };
|
||
var win = { os: 'win', label: '下載 Windows 版', url: base + DAEMON_WIN };
|
||
if (isWin) return { pick: win, other: mac, sure: true };
|
||
if (isMac) return { pick: mac, other: win, sure: true };
|
||
return { pick: null, other: null, sure: false, mac: mac, win: win };
|
||
}
|
||
// 封測期第一次開啟的擋關提示(未簽章)——Mac/Windows 攔法不同,話術也不同。
|
||
function daemonHint(os) {
|
||
if (os === 'win') return '(封測版未簽章,Windows 第一次會跳藍色視窗擋下來——點「更多資訊」→「仍要執行」就好)';
|
||
return '(封測版未簽章,第一次請右鍵→打開)';
|
||
}
|
||
// 07-27:設定頁的常駐入口(下載小幫手/換 AI 金鑰)——與一次性卡片同一組 API
|
||
(function () {
|
||
var dl = $('st-daemon-dl');
|
||
if (dl) {
|
||
var d = daemonPick();
|
||
if (d.sure) {
|
||
dl.setAttribute('href', d.pick.url);
|
||
dl.textContent = d.pick.label;
|
||
// 判對了也要留另一版的路(UA 會判錯)
|
||
var alt = document.createElement('span');
|
||
alt.className = 'muted';
|
||
alt.style.cssText = 'font-size:12.5px;margin-left:8px';
|
||
alt.innerHTML = '不是這個系統?<a href="' + d.other.url + '">' + d.other.label + '</a>';
|
||
if (dl.parentNode) dl.parentNode.insertBefore(alt, dl.nextSibling);
|
||
} else {
|
||
// 判不出來=兩個都給,不預設 Mac
|
||
dl.setAttribute('href', d.mac.url);
|
||
dl.textContent = d.mac.label;
|
||
var both = document.createElement('span');
|
||
both.className = 'muted';
|
||
both.style.cssText = 'font-size:12.5px;margin-left:8px';
|
||
both.innerHTML = '或 <a href="' + d.win.url + '">' + d.win.label + '</a>';
|
||
if (dl.parentNode) dl.parentNode.insertBefore(both, dl.nextSibling);
|
||
}
|
||
}
|
||
})();
|
||
|
||
// t131 AI 設定(合併 Gemini API Key+Claude 加強版)
|
||
(function () {
|
||
// 進入設定頁時讀取現有設定(GET /portal/admin/ai)
|
||
function loadAiConfig() {
|
||
if (!(S.profile && S.profile.role === 'admin')) return;
|
||
fetch(API_BASE + '/portal/admin/ai', { headers: authHeaders() })
|
||
.then(function (r) { return r.ok ? safeJson(r) : null; })
|
||
.then(function (d) {
|
||
if (!d) return;
|
||
var ki = $('st-ai-key');
|
||
if (ki && d.has_key) ki.placeholder = '已設定(留空=不變更)';
|
||
var cb = $('st-ai-use-claude');
|
||
if (cb) {
|
||
// 有 claude 才能勾;沒有則停用並顯示提示
|
||
var hint = $('st-ai-claude-hint');
|
||
if (d.claude_available) {
|
||
cb.disabled = false;
|
||
cb.checked = !!d.use_claude_for_extract;
|
||
if (hint) hint.style.display = 'none';
|
||
} else {
|
||
cb.disabled = true;
|
||
cb.checked = false;
|
||
if (hint) {
|
||
hint.style.display = '';
|
||
// 區分:從未連上小幫手 vs 有連上但沒裝 Claude
|
||
hint.textContent = d.has_key
|
||
? '你的電腦沒有偵測到 Claude Code;裝好並讓小幫手重連一次後,這個選項就會開啟。'
|
||
: '連上小幫手後才知道你的電腦有沒有 Claude Code。';
|
||
}
|
||
}
|
||
}
|
||
})
|
||
.catch(function () { /* 讀不到不擋頁面 */ });
|
||
}
|
||
window._loadAiConfig = loadAiConfig;
|
||
|
||
// 儲存
|
||
var sb = $('st-ai-save');
|
||
if (sb) sb.addEventListener('click', function () {
|
||
var m = $('st-ai-status');
|
||
var k = (($('st-ai-key') && $('st-ai-key').value) || '').trim();
|
||
var cb = $('st-ai-use-claude');
|
||
var useClaud = cb && !cb.disabled ? cb.checked : undefined;
|
||
var body = {};
|
||
if (k) body.gemini_api_key = k;
|
||
if (useClaud !== undefined) body.use_claude_for_extract = useClaud;
|
||
sb.disabled = true; m.textContent = '儲存中…'; m.style.color = '';
|
||
fetch(API_BASE + '/portal/admin/ai', {
|
||
method: 'POST',
|
||
headers: Object.assign({ 'Content-Type': 'application/json' }, authHeaders()),
|
||
body: JSON.stringify(body)
|
||
}).then(function (r) { return safeJson(r).then(function (d) { return { ok: r.ok, status: r.status, d: d }; }); })
|
||
.then(function (x) {
|
||
sb.disabled = false;
|
||
if (guard401(x.status)) return;
|
||
if (!x.ok) { m.textContent = (x.d && x.d.error) || '儲存失敗'; m.style.color = '#b03a26'; return; }
|
||
if ($('st-ai-key')) { $('st-ai-key').value = ''; $('st-ai-key').placeholder = '已設定(留空=不變更)'; }
|
||
var claudeOn = x.d && x.d.use_claude_for_extract;
|
||
m.textContent = claudeOn
|
||
? '已儲存,萃取改用 Claude Code。小幫手請重連一次生效。'
|
||
: '已儲存,AI 問答與萃取皆可使用。';
|
||
m.style.color = '#3f7a4f';
|
||
})
|
||
.catch(function (e) { sb.disabled = false; m.textContent = friendlyErr(e); m.style.color = '#b03a26'; });
|
||
});
|
||
})();
|
||
|
||
$('st-logout').addEventListener('click', function () {
|
||
fetch(API_BASE + '/portal/logout', { method: 'POST', headers: authHeaders() }).catch(function () { /* 盡力而為 */ });
|
||
dropSession();
|
||
});
|
||
|
||
// t87 07-28 leo:知識庫網址 helper(只有 origin,不含 /portal/# 後綴),兩處 UI 共用
|
||
function copyOriginUrl(btn) {
|
||
var url = location.origin;
|
||
var orig = btn.textContent;
|
||
if (!navigator.clipboard || !navigator.clipboard.writeText) {
|
||
alert('請手動選取並複製:' + url);
|
||
return;
|
||
}
|
||
navigator.clipboard.writeText(url).then(function () {
|
||
btn.textContent = '已複製';
|
||
setTimeout(function () { btn.textContent = orig; }, 1500);
|
||
}).catch(function () {
|
||
alert('請手動選取並複製:' + url);
|
||
});
|
||
}
|
||
(function () {
|
||
['st-origin-url', 'ad-origin-url'].forEach(function (id) {
|
||
var el = $(id); if (el) el.textContent = location.origin;
|
||
});
|
||
['st-copy-url', 'ad-copy-url'].forEach(function (id) {
|
||
var el = $(id); if (el) el.addEventListener('click', function () { copyOriginUrl(this); });
|
||
});
|
||
})();
|
||
|
||
// ── t53 完成安裝清單(進站必見,三件做完才消失)─────────────────────────────
|
||
function setupSteps() {
|
||
try { return JSON.parse(localStorage.getItem('arcrun_setup_steps') || '{}'); } catch (e) { return {}; }
|
||
}
|
||
function markStep(k) {
|
||
var s = setupSteps(); s[k] = 1;
|
||
try { localStorage.setItem('arcrun_setup_steps', JSON.stringify(s)); } catch (e) { /* noop */ }
|
||
renderSetupChecklist();
|
||
}
|
||
function renderSetupChecklist() {
|
||
var old = document.getElementById('setup-checklist');
|
||
if (old) old.remove();
|
||
var p = S.profile || {};
|
||
if (p.role !== 'admin') return;
|
||
var s = setupSteps();
|
||
if (s.daemon && s.key) return; // t54 起只剩兩件:設定改由小幫手輸入帳密自取,不再下載檔案
|
||
var cfg = window.ARCRUN_CONFIG || {};
|
||
var dpick = daemonPick(); // t72 OS 分流(同一組判定,見上面 daemonPick)
|
||
var daemonUrl = dpick.sure ? dpick.pick.url : dpick.mac.url;
|
||
var row = function (done, id, html) {
|
||
return '<div style="display:flex;gap:10px;align-items:baseline;margin-top:10px">'
|
||
+ '<span>' + (done ? '✅' : '⬜') + '</span><div style="flex:1">' + html + '</div></div>';
|
||
};
|
||
var el = document.createElement('div');
|
||
el.id = 'setup-checklist';
|
||
el.style.cssText = 'position:fixed;right:20px;bottom:20px;z-index:60;max-width:400px;width:calc(100% - 40px);padding:18px 20px;border-radius:14px;background:rgba(var(--amber-rgb),.10);border:1px solid rgba(var(--amber-rgb),.45);backdrop-filter:blur(8px);font-size:14px;line-height:1.65';
|
||
el.innerHTML = '<b>還差 ' + (2 - (s.daemon?1:0) - (s.key?1:0)) + ' 步,安裝就真的完成了</b>'
|
||
+ row(s.daemon, 'daemon',
|
||
'<b>下載同步小幫手</b>(把資料夾變成知識庫)<br>'
|
||
+ (daemonUrl
|
||
// t72:按鈕字樣+擋關話術都跟著 OS 走;並且一律附「另一個系統」的連結
|
||
//(UA 判錯時用戶要有路走;判不出來時=兩個平等並列,不預設 Mac)
|
||
? '<a href="' + esc(daemonUrl) + '" id="sc-daemon">'
|
||
+ esc(dpick.sure ? dpick.pick.label : dpick.mac.label) + '</a>'
|
||
+ '<span class="muted" style="font-size:12.5px">'
|
||
+ esc(daemonHint(dpick.sure ? dpick.pick.os : 'mac')) + '</span>'
|
||
+ '<div class="muted" style="font-size:12.5px">'
|
||
+ (dpick.sure
|
||
? '不是這個系統?<a href="' + esc(dpick.other.url) + '">' + esc(dpick.other.label) + '</a>'
|
||
: '或 <a href="' + esc(dpick.win.url) + '">' + esc(dpick.win.label) + '</a>')
|
||
+ '</div>'
|
||
// 誠實降級(leo 判準:按了連到錯的機制=不友善):沒有可用下載點時
|
||
// 不放死連結,說明現況並讓這步可手動打勾,不卡住清單。
|
||
: '<span class="muted" style="font-size:13px">封測期由我們直接寄給你安裝檔;'
|
||
+ '收到後回來按 <a href="#" id="sc-daemon">我已經裝好了</a>。</span>')
|
||
// t54(leo:「最好的就是把它的帳密直接輸入」):設定不再是一個要下載的檔案——
|
||
// 小幫手第一次開啟會問網址+帳密,自己去換設定。
|
||
+ '<div class="muted" style="font-size:12.5px;margin-top:4px">裝好第一次開啟時,貼上這個網址+你的帳號密碼就連上了,不用下載設定檔。</div>')
|
||
+ row(s.key, 'key',
|
||
'<b>啟用 AI 問答</b>(<a href="https://aistudio.google.com" target="_blank" rel="noopener">aistudio.google.com</a> 免費申請)<br>'
|
||
+ '<input id="sc-key" type="password" placeholder="貼上 Google AI 金鑰" style="width:60%;padding:6px 8px;border-radius:8px;border:1px solid rgba(var(--ink-rgb),.25);background:rgba(var(--ink-rgb),.04);color:var(--ink)"> '
|
||
+ '<button class="btn3" id="sc-key-save" style="padding:6px 12px;border-radius:8px;cursor:pointer">啟用</button>'
|
||
+ '<div id="sc-key-msg" style="font-size:12.5px;min-height:1.1em"></div>')
|
||
+ '<div style="margin-top:10px;text-align:right"><button id="sc-later" style="border:none;background:none;color:inherit;cursor:pointer;font-size:12.5px;text-decoration:underline;opacity:.65">稍後再說</button></div>';
|
||
document.body.appendChild(el);
|
||
var dl = document.getElementById('sc-daemon');
|
||
if (dl) dl.addEventListener('click', function () { markStep('daemon'); });
|
||
// t54:config.json 下載鈕已移除(設定由小幫手憑帳密自取)
|
||
var kb = document.getElementById('sc-key-save');
|
||
if (kb) kb.addEventListener('click', function () {
|
||
var k = (document.getElementById('sc-key').value || '').trim();
|
||
var m = document.getElementById('sc-key-msg');
|
||
if (!k) { m.textContent = '請先貼上金鑰'; return; }
|
||
kb.disabled = true; m.textContent = '啟用中…';
|
||
fetch(API_BASE + '/portal/admin/ai', {
|
||
method: 'POST',
|
||
headers: Object.assign({ 'Content-Type': 'application/json' }, authHeaders()),
|
||
body: JSON.stringify({ gemini_api_key: k })
|
||
}).then(function (r) { return safeJson(r).then(function (d) { return { ok: r.ok, status: r.status, d: d }; }); })
|
||
.then(function (x) {
|
||
kb.disabled = false;
|
||
if (!x.ok || !x.d.success) { m.textContent = (x.d && x.d.error) || '啟用失敗,請再試一次'; return; }
|
||
markStep('key');
|
||
})
|
||
.catch(function () { kb.disabled = false; m.textContent = '網路好像有問題,請再試一次'; });
|
||
});
|
||
var later = document.getElementById('sc-later');
|
||
if (later) later.addEventListener('click', function () { el.remove(); }); // 只藏本次,下次進站再提醒
|
||
}
|
||
|
||
// ── t49 首次設定(leo 07-25):console/setup → portal/admin/bootstrap → 預設庫登記 → portal/login
|
||
// 四發全是既有端點,一顆按鈕做完;用戶感受=「建一組帳密就進來了」。
|
||
$('fs-submit').addEventListener('click', doFirstSetup);
|
||
$('fs-password2').addEventListener('keydown', function (ev) { if (ev.key === 'Enter') doFirstSetup(); });
|
||
$('fs-tologin').addEventListener('click', function () {
|
||
$('v-firstsetup').classList.remove('on');
|
||
$('v-login').classList.add('on');
|
||
});
|
||
function doFirstSetup() {
|
||
var email = $('fs-email').value.trim();
|
||
var pw = $('fs-password').value;
|
||
var st = $('fs-status');
|
||
if (!email || pw.length < 8) { st.textContent = '請填 Email,密碼至少 8 碼'; return; }
|
||
if (pw !== $('fs-password2').value) { st.textContent = '兩次密碼不一樣'; return; }
|
||
$('fs-submit').disabled = true; st.textContent = '';
|
||
var post = function (path, body, hdrs) {
|
||
return fetch(API_BASE + path, {
|
||
method: 'POST',
|
||
headers: Object.assign({ 'Content-Type': 'application/json' }, hdrs || {}),
|
||
body: JSON.stringify(body)
|
||
}).then(function (r) { return r.json().catch(function () { return {}; }).then(function (d) { return { ok: r.ok, status: r.status, d: d }; }); });
|
||
};
|
||
post('/console/setup', { email: email, password: pw })
|
||
.then(function (x) {
|
||
// 已設定過(409)=這實例其實有人建過了——自動帶去登入,別把用戶困在死路(leo 實撞)
|
||
if (x.status === 409) {
|
||
$('fs-submit').disabled = false;
|
||
$('v-firstsetup').classList.remove('on');
|
||
$('v-login').classList.add('on');
|
||
$('login-email').value = email;
|
||
$('login-status').textContent = '這個知識庫已經設定過帳號了,直接登入即可。';
|
||
throw { handled: true };
|
||
}
|
||
if (!x.ok || !x.d.session_token) throw new Error(x.d.error || '設定沒有成功,請再試一次');
|
||
var ownerTok = x.d.session_token;
|
||
return post('/portal/admin/bootstrap', { email: email, password: pw, display_name: email.split('@')[0] }, { Authorization: 'Bearer ' + ownerTok })
|
||
.then(function (b) {
|
||
// 409=已 bootstrap 過(冪等視為就緒);其餘失敗誠實丟出
|
||
if (!b.ok && b.status !== 409) throw new Error(b.d.error || '初始化沒有成功,請再試一次');
|
||
return post('/portal/login', { email: email, password: pw });
|
||
});
|
||
})
|
||
.then(function (l) {
|
||
if (!l.ok || !l.d.session_token) throw new Error(l.d.error || '帳號建好了,但自動登入沒成功——請用剛設定的帳密登入');
|
||
S.token = l.d.session_token;
|
||
try { localStorage.setItem('arcrun_portal_session', S.token); } catch (e) { /* noop */ }
|
||
})
|
||
.then(function () {
|
||
$('fs-submit').disabled = false;
|
||
try { localStorage.setItem('arcrun_onboarding', '1'); } catch (e) { /* noop */ }
|
||
boot();
|
||
})
|
||
.catch(function (e) {
|
||
if (e && e.handled) return; // 409 已自動切登入,不再顯示錯誤
|
||
$('fs-submit').disabled = false;
|
||
st.textContent = (e && e.message) || friendlyErr(e);
|
||
});
|
||
}
|
||
|
||
// 任何 data 請求收到 401 → session 失效 → 回登入殼
|
||
function guard401(status) {
|
||
if (status === 401) { dropSession(); return true; }
|
||
return false;
|
||
}
|
||
|
||
// ── 搜尋 ──
|
||
document.querySelectorAll('.modebtn').forEach(function (b) {
|
||
b.addEventListener('click', function () {
|
||
S.mode = b.getAttribute('data-mode');
|
||
document.querySelectorAll('.modebtn').forEach(function (x) { x.classList.toggle('on', x === b); });
|
||
if ($('se-q').value.trim()) doSearch();
|
||
});
|
||
});
|
||
$('se-go').addEventListener('click', doSearch);
|
||
$('se-q').addEventListener('keydown', function (ev) { if (ev.key === 'Enter') doSearch(); });
|
||
function doSearch() {
|
||
var q = $('se-q').value.trim();
|
||
if (!q) { $('se-count').textContent = '請輸入查詢字'; return; }
|
||
$('se-banner').innerHTML = '';
|
||
if (S.mode === 'graph') { doGraphSearch(q); return; }
|
||
$('se-graphout').style.display = 'none';
|
||
$('se-results').style.display = '';
|
||
$('se-count').textContent = '查詢中…';
|
||
$('se-results').innerHTML = '';
|
||
var url = API_BASE + '/portal/data/search?q=' + encodeURIComponent(q) + '&mode=' + (S.mode === 'semantic' ? 'semantic' : 'keyword');
|
||
fetch(url, { headers: authHeaders() })
|
||
.then(function (r) { return safeJson(r).then(function (d) { return { ok: r.ok, status: r.status, d: d }; }); })
|
||
.then(function (x) {
|
||
if (guard401(x.status)) return;
|
||
if (!x.ok) { $('se-count').innerHTML = '<span class="err">' + esc(x.d.error || ('查詢失敗(HTTP ' + x.status + ')')) + '</span>'; return; }
|
||
var d = x.d;
|
||
if (S.mode === 'semantic' && d.mode === 'keyword') {
|
||
$('se-banner').innerHTML = '<div class="honest" style="margin-top:18px"><div class="h">語意搜尋尚未啟用</div><div class="b">語意搜尋用「意思」找資料,不是字面比對。<br>' + esc(d.capability_hint || '系統尚未開啟語意索引——不會假裝有語意結果,以下是關鍵字結果。') + '</div></div>';
|
||
}
|
||
var entries = d.entries || [];
|
||
$('se-count').textContent = '命中 ' + entries.length + ' 筆・模式 ' + (d.mode || 'keyword') + (d.note ? '・' + d.note : '');
|
||
if (!entries.length) {
|
||
$('se-results').innerHTML = '<div class="muted" style="padding:30px 10px;text-align:center;grid-column:1/-1">找不到「' + esc(q) + '」——換個關鍵字試試。</div>';
|
||
return;
|
||
}
|
||
$('se-results').innerHTML = entries.map(function (e) {
|
||
var src = entrySource(e);
|
||
return '<div class="kcard" data-card="' + esc(e.id) + '">' +
|
||
'<div class="kt">' + esc(entryTitle(e)) + '</div>' +
|
||
'<div class="ks">' + esc(entrySnippet(e)) + '</div>' +
|
||
'<div class="km">' +
|
||
'<span class="tag">' + esc(e.entry_type || 'entry') + '</span>' +
|
||
'<span class="tag green">' + esc(entryLib(e)) + '</span>' +
|
||
(src ? '<span class="dim" style="word-break:break-all">' + esc(src) + '</span>' : '') +
|
||
'<span class="dim mono" style="margin-left:auto">' + esc(fmtDate(e.created_at)) + '</span></div></div>';
|
||
}).join('');
|
||
})
|
||
.catch(function (e) { $('se-count').innerHTML = '<span class="err">請求失敗:' + esc(friendlyErr(e)) + '</span>'; });
|
||
}
|
||
$('se-results').addEventListener('click', function (ev) {
|
||
var t = ev.target.closest('[data-card]');
|
||
if (t) nav('card', t.getAttribute('data-card'));
|
||
});
|
||
|
||
// ── AI 問答(portal-demo-suite)──
|
||
// 設計哲學:AI 檢索=用戶手動搜尋同一套——同 session token、同 /portal/data/* enforce 面,
|
||
// AI 只代查再作答;答案附 sources(mode+page),點 page 帶回搜尋框讓用戶自己驗證。
|
||
$('ai-go').addEventListener('click', doAsk);
|
||
$('ai-q').addEventListener('keydown', function (ev) { if (ev.key === 'Enter') doAsk(); });
|
||
function doAsk() {
|
||
var q = $('ai-q').value.trim();
|
||
if (!q) { toast('請先輸入問題'); return; }
|
||
$('ai-go').disabled = true;
|
||
$('ai-out').innerHTML = '<div class="muted" style="margin-top:12px">AI 查閱知識庫中…</div>';
|
||
fetch(API_BASE + '/portal/data/chat?question=' + encodeURIComponent(q), { headers: authHeaders() })
|
||
.then(function (r) { return safeJson(r).then(function (d) { return { ok: r.ok, status: r.status, d: d }; }); })
|
||
.then(function (x) {
|
||
$('ai-go').disabled = false;
|
||
if (guard401(x.status)) return;
|
||
if (!x.ok) {
|
||
// 404=此實例未安裝問答 workflow(server 誠實回報,前端不假裝有 AI)
|
||
$('ai-out').innerHTML = '<div class="honest" style="margin-top:12px"><div class="h">問不到</div><div class="b">' + esc(x.d.error || ('問答失敗(HTTP ' + x.status + ')')) + '</div></div>';
|
||
return;
|
||
}
|
||
var srcs = x.d.sources || [];
|
||
// answer 純文字渲染、保留換行(pre-wrap+esc,不走 markdown、防 XSS)
|
||
var html = '<div class="panel" style="margin-top:12px">' +
|
||
'<div style="white-space:pre-wrap;font-size:16px;line-height:1.85;word-break:break-word">' + esc(x.d.answer || '(AI 沒有給出答案)') + '</div>';
|
||
if (srcs.length) {
|
||
html += '<div style="margin-top:14px;font-size:13px;letter-spacing:.1em;color:rgba(var(--ink-rgb),.5)">出處(點頁名帶入搜尋框)</div>' +
|
||
'<div style="margin-top:7px;display:flex;flex-direction:column;gap:6px">' + srcs.map(function (s) {
|
||
var page = (s && (s.page || s.page_name)) || '';
|
||
var mode = (s && s.mode) || '';
|
||
var href = s && s.source ? srcHref(s.source) : '';
|
||
return '<div class="nbrow" data-aisrc="' + esc(page) + '">' +
|
||
(mode ? '<span class="tag" style="flex:none">' + esc(mode) + '</span>' : '') +
|
||
'<span style="word-break:break-word">' + esc(page || '(無頁名)') + '</span>' +
|
||
(href ? '<a href="' + esc(href) + '" target="_blank" rel="noopener" style="flex:none;color:var(--amber);font-size:13px" title="開啟來源檔">來源 ↗</a>' : '') +
|
||
'<span style="margin-left:auto;color:rgba(var(--amber-rgb),.6);flex:none">›</span></div>';
|
||
}).join('') + '</div>';
|
||
}
|
||
html += '</div>';
|
||
$('ai-out').innerHTML = html;
|
||
})
|
||
.catch(function (e) { $('ai-go').disabled = false; $('ai-out').innerHTML = '<div class="err" style="margin-top:12px">請求失敗:' + esc(friendlyErr(e)) + '</div>'; });
|
||
}
|
||
$('ai-out').addEventListener('click', function (ev) {
|
||
if (ev.target.closest('a')) return; // 「來源 ↗」超連結交給瀏覽器,不觸發帶入搜尋框
|
||
var t = ev.target.closest('[data-aisrc]');
|
||
if (!t) return;
|
||
var page = t.getAttribute('data-aisrc');
|
||
if (!page) return;
|
||
$('se-q').value = page;
|
||
$('se-q').focus();
|
||
window.scrollTo(0, 0);
|
||
});
|
||
|
||
// ── graph 模式(D-4 粗閘:無權者按鈕根本不顯示;就算 curl 直打 API 也是 403)──
|
||
function doGraphSearch(name) {
|
||
$('se-results').style.display = 'none';
|
||
$('se-graphout').style.display = '';
|
||
$('se-count').textContent = '查詢關聯中…';
|
||
renderGraphEmpty('查詢關聯中…');
|
||
fetch(API_BASE + '/portal/data/graph/neighbors/' + encodeURIComponent(name), { headers: authHeaders() })
|
||
.then(function (r) { return safeJson(r).then(function (d) { return { ok: r.ok, status: r.status, d: d }; }); })
|
||
.then(function (x) {
|
||
if (guard401(x.status)) return;
|
||
if (!x.ok) { $('se-count').innerHTML = '<span class="err">' + esc(x.d.error || ('關聯查詢失敗(HTTP ' + x.status + ')')) + '</span>'; renderGraphEmpty(x.d.error || '關聯查詢失敗'); return; }
|
||
var neighbors = x.d.neighbors || [];
|
||
var edges = x.d.edges || [];
|
||
// 形狀相容(Arcrun#57 家族):plugin 版 neighbors 是字串、workflow 版是
|
||
// { node, predicate, from, depth } 物件——不正規化會渲染成 [object Object]。
|
||
var names = neighbors.map(function (nb) {
|
||
if (typeof nb === 'string') return nb;
|
||
return (nb && (nb.node || nb.name)) || '';
|
||
}).filter(Boolean);
|
||
// workflow 版 edges 恆空,但 neighbor 物件本身就是一條邊(from --predicate--> node)→ 導出。
|
||
if (!edges.length) {
|
||
edges = neighbors.filter(function (nb) { return nb && typeof nb === 'object' && nb.predicate; })
|
||
.map(function (nb) { return { subject: nb.from || name, predicate: nb.predicate, object: nb.node }; });
|
||
}
|
||
$('se-count').textContent = '節點「' + name + '」・鄰居 ' + names.length + '・關聯 ' + edges.length;
|
||
if (!names.length) { renderGraphEmpty('尚無關聯資料——這個名字還沒有連進知識圖譜。'); return; }
|
||
renderGraph(name, names.slice(0, 10));
|
||
$('gr-edges').innerHTML = edges.slice(0, 12).map(function (t) {
|
||
// 大小寫不敏感比對(graph 查詢已正規化:搜 rag 會命中節點 RAG)
|
||
var other = String(t.subject).toLowerCase() === String(name).toLowerCase() ? t.object : t.subject;
|
||
return '<div class="nbrow" data-gnode="' + esc(other) + '">' +
|
||
'<span class="tag green" style="flex:none">' + esc(t.predicate || '關聯') + '</span>' +
|
||
'<span style="word-break:break-word">' + esc(other) + '</span>' +
|
||
'<span style="margin-left:auto;color:rgba(var(--amber-rgb),.6);flex:none">›</span></div>';
|
||
}).join('');
|
||
})
|
||
.catch(function (e) { $('se-count').innerHTML = '<span class="err">關聯服務不可達:' + esc(friendlyErr(e)) + '</span>'; renderGraphEmpty('關聯服務不可達'); });
|
||
}
|
||
function renderGraphEmpty(msg) {
|
||
$('gr-box').innerHTML = '<div class="graphbox" style="display:grid;place-items:center;height:160px"><span class="muted" style="font-size:14px;padding:0 20px;text-align:center">' + esc(msg) + '</span></div>';
|
||
$('gr-edges').innerHTML = '';
|
||
}
|
||
function renderGraph(center, nodes) {
|
||
var n = nodes.length || 1;
|
||
var lines = '', chips = '';
|
||
for (var i = 0; i < n; i++) {
|
||
var a = (-90 + i * (360 / n)) * Math.PI / 180;
|
||
var x = 50 + 39 * Math.cos(a), y = 50 + 37 * Math.sin(a);
|
||
lines += '<line x1="50" y1="50" x2="' + x.toFixed(2) + '" y2="' + y.toFixed(2) + '" stroke="rgba(var(--ok-rgb),.3)" stroke-width="1" vector-effect="non-scaling-stroke" stroke-dasharray="4 4"/>';
|
||
chips += '<div class="gnode" style="left:' + x.toFixed(2) + '%;top:' + y.toFixed(2) + '%" data-gnode="' + esc(nodes[i]) + '">' + esc(nodes[i]) + '</div>';
|
||
}
|
||
var shortCenter = center.length > 16 ? center.slice(0, 16) + '…' : center;
|
||
$('gr-box').innerHTML = '<div class="graphbox">' +
|
||
'<svg viewBox="0 0 100 100" preserveAspectRatio="none" style="position:absolute;inset:0;width:100%;height:100%">' + lines + '</svg>' +
|
||
'<div class="gcenter"><span>' + esc(shortCenter) + '</span></div>' + chips +
|
||
'<div style="position:absolute;right:12px;bottom:10px;font-size:11.5px;color:rgba(var(--ink-rgb),.35)">╌ 知識圖譜鄰居(點節點展開)</div></div>';
|
||
}
|
||
document.addEventListener('click', function (ev) {
|
||
var t = ev.target.closest('[data-gnode]');
|
||
if (!t) return;
|
||
var name = t.getAttribute('data-gnode');
|
||
$('se-q').value = name;
|
||
doGraphSearch(name);
|
||
});
|
||
|
||
// ── 卡片詳頁 ──
|
||
function loadCard() {
|
||
if (!S.cardId) { $('cd-main').innerHTML = '<div class="muted">沒有指定卡片——從「搜尋」點一張進來。</div>'; return; }
|
||
$('cd-main').innerHTML = '<div class="muted">載入中…</div>';
|
||
fetch(API_BASE + '/portal/data/entries/' + encodeURIComponent(S.cardId), { headers: authHeaders() })
|
||
.then(function (r) { return safeJson(r).then(function (d) { return { ok: r.ok, status: r.status, d: d }; }); })
|
||
.then(function (x) {
|
||
if (guard401(x.status)) return;
|
||
if (!x.ok || !x.d.entry) { $('cd-main').innerHTML = '<div class="err">' + esc(x.d.error || '讀不到這張卡片') + '</div>'; return; }
|
||
var e = x.d.entry;
|
||
var src = entrySource(e);
|
||
$('cd-main').innerHTML = '<div class="cardtitle">' + esc(entryTitle(e)) + '</div>' +
|
||
'<div style="display:flex;gap:10px;align-items:center;margin-top:12px;font-size:13.5px;flex-wrap:wrap">' +
|
||
'<span class="tag">' + esc(e.entry_type || 'entry') + '</span>' +
|
||
'<span class="tag green">' + esc(entryLib(e)) + '</span>' +
|
||
(e.page_name ? '<span class="tag dim">' + esc(e.page_name) + '</span>' : '') +
|
||
'<span class="muted mono">' + esc(fmtDateTime(e.created_at)) + '</span></div>' +
|
||
'<div class="md">' + mdRender(e.content || '(此條目沒有內文)') + '</div>' +
|
||
(src
|
||
? (function () {
|
||
var href = srcHref(src);
|
||
var body = href
|
||
? '<a class="mono" style="font-size:14px;color:var(--amber);word-break:break-all" href="' + esc(href) + '" target="_blank" rel="noopener">' + esc(src) + ' ↗</a>'
|
||
: '<span class="mono" style="font-size:14px;color:var(--amber);word-break:break-all">' + esc(src) + '</span>';
|
||
return '<div class="srcline"><span style="font-size:13px;letter-spacing:.14em;color:rgba(var(--ink-rgb),.5);flex:none">來源回溯</span>' + body + '</div>';
|
||
})()
|
||
: '');
|
||
})
|
||
.catch(function (er) { $('cd-main').innerHTML = '<div class="err">請求失敗:' + esc(friendlyErr(er)) + '</div>'; });
|
||
}
|
||
|
||
// ── 總圖(Arcrun#39 藏書地圖 GUI 切片)──
|
||
// 全庫三元組一張網:/portal/data/graph/overview → 手刻力導向佈局(demo 量級,零外部套件)。
|
||
// 佈局用固定種子的 PRNG=同一庫每次長一樣(客戶重整不會跳位)。
|
||
function jumpToGraph(name) {
|
||
S.mode = 'graph';
|
||
document.querySelectorAll('.modebtn').forEach(function (x) { x.classList.toggle('on', x.getAttribute('data-mode') === 'graph'); });
|
||
nav('search');
|
||
$('se-q').value = name;
|
||
doGraphSearch(name);
|
||
}
|
||
function loadMap() {
|
||
$('map-box').innerHTML = '<div class="muted" style="padding:30px 10px">載入總圖中…</div>';
|
||
$('map-md-link').innerHTML = SOURCE_WEB_BASE
|
||
? ':<a href="' + esc(SOURCE_WEB_BASE + '/system-dev/wiki/00-MAP.md') + '" target="_blank" rel="noopener" style="color:var(--amber)">00-MAP.md ↗</a>'
|
||
: '存在知識庫的 00-MAP.md';
|
||
fetch(API_BASE + '/portal/data/graph/overview', { headers: authHeaders() })
|
||
.then(function (r) { return safeJson(r).then(function (d) { return { ok: r.ok, status: r.status, d: d }; }); })
|
||
.then(function (x) {
|
||
if (guard401(x.status)) return;
|
||
if (!x.ok) { $('map-box').innerHTML = '<div class="err">' + esc(x.d.error || ('總圖載入失敗(HTTP ' + x.status + ')')) + '</div>'; return; }
|
||
var nodes = x.d.nodes || [];
|
||
var edges = x.d.edges || [];
|
||
$('map-meta').textContent = nodes.length + ' 個實體・' + edges.length + ' 條關聯' + (x.d.truncated ? '・已達上限截斷' : '');
|
||
if (!nodes.length) { $('map-box').innerHTML = '<div class="muted" style="padding:30px 10px">知識庫還沒有任何關聯——上傳文件後 AI 會自動織網。</div>'; return; }
|
||
renderMap(nodes, edges);
|
||
})
|
||
.catch(function (e) { $('map-box').innerHTML = '<div class="err">請求失敗:' + esc(friendlyErr(e)) + '</div>'; });
|
||
}
|
||
function renderMap(nodes, edges) {
|
||
var N = nodes.length;
|
||
var idx = {};
|
||
nodes.forEach(function (n, i) { idx[n.name] = i; });
|
||
var el = [];
|
||
edges.forEach(function (e) {
|
||
var a = idx[e.subject], b = idx[e.object];
|
||
if (a == null || b == null || a === b) return;
|
||
el.push([a, b, e.predicate || '']);
|
||
});
|
||
// 固定種子 PRNG(mulberry32):確定性佈局
|
||
var seed = 42;
|
||
function rnd() {
|
||
seed = (seed + 0x6D2B79F5) | 0;
|
||
var t = Math.imul(seed ^ (seed >>> 15), 1 | seed);
|
||
t = (t + Math.imul(t ^ (t >>> 7), 61 | t)) ^ t;
|
||
return ((t ^ (t >>> 14)) >>> 0) / 4294967296;
|
||
}
|
||
var W = 1000, H = Math.max(480, Math.min(760, 200 + N * 14));
|
||
var px = [], py = [];
|
||
for (var i = 0; i < N; i++) {
|
||
var ang = 2 * Math.PI * i / N;
|
||
var rad = Math.min(W, H) * (0.22 + 0.2 * rnd());
|
||
px.push(W / 2 + rad * Math.cos(ang));
|
||
py.push(H / 2 + rad * Math.sin(ang) * 0.75);
|
||
}
|
||
// 力導向:斥力(全對)+彈簧(邊)+向心,260 輪退火
|
||
var K = Math.max(75, Math.sqrt(W * H / Math.max(N, 1)) * 0.9);
|
||
for (var it = 0; it < 260; it++) {
|
||
var cool = Math.max(0.06, 1 - it / 260);
|
||
var fx = [], fy = [];
|
||
for (var a1 = 0; a1 < N; a1++) { fx.push(0); fy.push(0); }
|
||
for (var a2 = 0; a2 < N; a2++) {
|
||
for (var b2 = a2 + 1; b2 < N; b2++) {
|
||
var dx = px[a2] - px[b2], dy = py[a2] - py[b2];
|
||
var d2 = dx * dx + dy * dy + 0.01;
|
||
var f = Math.min(28, (K * K) / d2 * 2.2);
|
||
var d = Math.sqrt(d2);
|
||
fx[a2] += dx / d * f; fy[a2] += dy / d * f;
|
||
fx[b2] -= dx / d * f; fy[b2] -= dy / d * f;
|
||
}
|
||
}
|
||
el.forEach(function (e) {
|
||
var dx = px[e[0]] - px[e[1]], dy = py[e[0]] - py[e[1]];
|
||
var d = Math.sqrt(dx * dx + dy * dy) + 0.01;
|
||
var f = (d - K) * 0.045;
|
||
fx[e[0]] -= dx / d * f; fy[e[0]] -= dy / d * f;
|
||
fx[e[1]] += dx / d * f; fy[e[1]] += dy / d * f;
|
||
});
|
||
for (var m = 0; m < N; m++) {
|
||
fx[m] += (W / 2 - px[m]) * 0.012;
|
||
fy[m] += (H / 2 - py[m]) * 0.012;
|
||
px[m] += Math.max(-14, Math.min(14, fx[m])) * cool;
|
||
py[m] += Math.max(-14, Math.min(14, fy[m])) * cool;
|
||
}
|
||
}
|
||
// 視窗貼合
|
||
var minX = 1e9, maxX = -1e9, minY = 1e9, maxY = -1e9;
|
||
for (var q = 0; q < N; q++) {
|
||
minX = Math.min(minX, px[q]); maxX = Math.max(maxX, px[q]);
|
||
minY = Math.min(minY, py[q]); maxY = Math.max(maxY, py[q]);
|
||
}
|
||
var PAD = 70;
|
||
var vb = (minX - PAD) + ' ' + (minY - PAD) + ' ' + (maxX - minX + PAD * 2) + ' ' + (maxY - minY + PAD * 2);
|
||
var maxDeg = 1;
|
||
nodes.forEach(function (n) { maxDeg = Math.max(maxDeg, n.degree || 1); });
|
||
var svg = '<svg viewBox="' + vb + '" preserveAspectRatio="xMidYMid meet">';
|
||
el.forEach(function (e) {
|
||
svg += '<line class="mapedge" x1="' + px[e[0]].toFixed(1) + '" y1="' + py[e[0]].toFixed(1) +
|
||
'" x2="' + px[e[1]].toFixed(1) + '" y2="' + py[e[1]].toFixed(1) + '"><title>' +
|
||
esc(nodes[e[0]].name + ' —' + (e[2] || '關聯') + '→ ' + nodes[e[1]].name) + '</title></line>';
|
||
});
|
||
nodes.forEach(function (n, i2) {
|
||
var deg = n.degree || 1;
|
||
var r = 9 + Math.sqrt(deg) * 5;
|
||
var hub = deg >= Math.max(3, maxDeg * 0.6) ? ' hub' : '';
|
||
svg += '<g class="mapnode' + hub + '" data-mapnode="' + esc(n.name) + '">' +
|
||
'<circle cx="' + px[i2].toFixed(1) + '" cy="' + py[i2].toFixed(1) + '" r="' + r.toFixed(1) + '"><title>' + esc(n.name + '・' + deg + ' 條關聯') + '</title></circle>' +
|
||
'<text x="' + px[i2].toFixed(1) + '" y="' + (py[i2] + r + 15).toFixed(1) + '" text-anchor="middle">' + esc(n.name.length > 14 ? n.name.slice(0, 14) + '…' : n.name) + '</text></g>';
|
||
});
|
||
svg += '</svg>';
|
||
$('map-box').innerHTML = '<div class="mapbox">' + svg +
|
||
'<div style="position:absolute;right:12px;bottom:10px;font-size:11.5px;color:rgba(var(--ink-rgb),.35)">╌ 知識庫總圖(點節點看鄰居)</div></div>';
|
||
}
|
||
document.addEventListener('click', function (ev) {
|
||
var t = ev.target.closest('[data-mapnode]');
|
||
if (!t) return;
|
||
jumpToGraph(t.getAttribute('data-mapnode'));
|
||
});
|
||
|
||
// ── 工作流(唯讀)──
|
||
function loadWorkflows() {
|
||
$('wf-list').innerHTML = '<div class="muted">載入中…</div>';
|
||
fetch(API_BASE + '/portal/data/workflows', { headers: authHeaders() })
|
||
.then(function (r) { return safeJson(r).then(function (d) { return { ok: r.ok, status: r.status, d: d }; }); })
|
||
.then(function (x) {
|
||
if (guard401(x.status)) return;
|
||
if (!x.ok) { $('wf-list').innerHTML = '<div class="err">' + esc(x.d.error || ('讀取失敗(HTTP ' + x.status + ')')) + '</div>'; return; }
|
||
var wfs = x.d.workflows || [];
|
||
if (!wfs.length) { $('wf-list').innerHTML = '<div class="muted" style="padding:20px 4px">目前沒有任何工作流。</div>'; return; }
|
||
$('wf-list').innerHTML = wfs.map(function (w) {
|
||
var lastHtml = '<span class="dim">尚無執行紀錄</span>';
|
||
if (w.last_execution) {
|
||
var v = w.last_execution.verdict || '';
|
||
var cls = v === 'success' ? 'ok' : (v === 'failed' ? 'err' : 'muted');
|
||
lastHtml = '<span class="' + cls + '">' + esc(v || '(無 verdict)') + '</span> <span class="dim mono">' + esc(fmtDateTime(Number(w.last_execution.timestamp))) + '</span>';
|
||
}
|
||
return '<div class="card-item">' +
|
||
'<div style="display:flex;align-items:baseline;gap:10px;flex-wrap:wrap">' +
|
||
'<span class="serif" style="font-size:17px;font-weight:600">' + esc(w.name) + '</span>' +
|
||
(w.cron_expr ? '<span class="tag dim mono">' + esc(w.cron_expr) + '</span>' : '') +
|
||
'<span style="margin-left:auto;font-size:13.5px">' + lastHtml + '</span></div>' +
|
||
(w.description ? '<div style="margin-top:8px;font-size:14.5px;line-height:1.65;color:rgba(var(--ink-rgb),.65)">' + esc(w.description) + '</div>' : '<div class="dim" style="margin-top:8px;font-size:13.5px">(沒有描述)</div>') +
|
||
'</div>';
|
||
}).join('');
|
||
})
|
||
.catch(function (e) { $('wf-list').innerHTML = '<div class="err">請求失敗:' + esc(friendlyErr(e)) + '</div>'; });
|
||
}
|
||
|
||
// ── 上傳頁(portal-demo-suite)──
|
||
// 前端只讀檔轉 base64 逐檔 POST /portal/data/upload;Gitea 位置與 token 全在 server 側,
|
||
// 這裡看不到任何 repo/token 字串。逐檔獨立狀態列(一檔失敗不拖累其他檔)。
|
||
var UP_OK_MSG = '已收件,約 1 分鐘後可在搜尋頁找到;AI 整理後會以 wiki 卡形式出現。';
|
||
function b64FromDataUrl(dataUrl) {
|
||
var i = String(dataUrl).indexOf(',');
|
||
return i >= 0 ? String(dataUrl).slice(i + 1) : '';
|
||
}
|
||
function uploadStatusRow(name) {
|
||
var row = document.createElement('div');
|
||
row.className = 'card-item';
|
||
row.innerHTML = '<div style="display:flex;align-items:baseline;gap:10px;flex-wrap:wrap">' +
|
||
'<span class="mono" style="font-size:14.5px;word-break:break-all">' + esc(name) + '</span>' +
|
||
'<span class="up-st muted" style="margin-left:auto;font-size:14px;flex:none">讀取中…</span></div>' +
|
||
'<div class="up-msg" style="margin-top:6px;font-size:13.5px;line-height:1.65;color:rgba(var(--ink-rgb),.6)"></div>';
|
||
$('up-list').prepend(row);
|
||
return row;
|
||
}
|
||
function setRowStatus(row, ok, statusText, msg) {
|
||
var st = row.querySelector('.up-st');
|
||
st.textContent = statusText;
|
||
st.className = 'up-st ' + (ok === true ? 'ok' : (ok === false ? 'err' : 'muted'));
|
||
row.querySelector('.up-msg').textContent = msg || '';
|
||
}
|
||
function uploadOneFile(file) {
|
||
var row = uploadStatusRow(file.name);
|
||
if (!/\.(md|txt)$/i.test(file.name)) {
|
||
setRowStatus(row, false, '已略過', '只收 .md / .txt 檔。');
|
||
return;
|
||
}
|
||
var reader = new FileReader();
|
||
reader.onerror = function () { setRowStatus(row, false, '讀檔失敗', '瀏覽器讀不到這個檔案。'); };
|
||
reader.onload = function () {
|
||
setRowStatus(row, null, '上傳中…', '');
|
||
fetch(API_BASE + '/portal/data/upload', {
|
||
method: 'POST',
|
||
headers: Object.assign({ 'Content-Type': 'application/json' }, authHeaders()),
|
||
body: JSON.stringify({ filename: file.name, content_b64: b64FromDataUrl(reader.result) })
|
||
})
|
||
.then(function (r) { return safeJson(r).then(function (d) { return { ok: r.ok, status: r.status, d: d }; }); })
|
||
.then(function (x) {
|
||
if (guard401(x.status)) return;
|
||
if (!x.ok) { setRowStatus(row, false, '失敗', x.d.error || ('HTTP ' + x.status)); return; }
|
||
setRowStatus(row, true, '已收件', UP_OK_MSG + (x.d.path ? '(' + x.d.path + ')' : ''));
|
||
})
|
||
.catch(function (e) { setRowStatus(row, false, '失敗', friendlyErr(e)); });
|
||
};
|
||
reader.readAsDataURL(file); // dataURL 尾段即 base64(unicode 安全,免手刻 btoa 編碼)
|
||
}
|
||
function handleUploadFiles(files) {
|
||
for (var i = 0; i < files.length; i++) uploadOneFile(files[i]);
|
||
}
|
||
$('up-pick').addEventListener('click', function (ev) { ev.stopPropagation(); $('up-file').click(); });
|
||
$('up-drop').addEventListener('click', function () { $('up-file').click(); });
|
||
$('up-file').addEventListener('change', function () { handleUploadFiles(this.files); this.value = ''; });
|
||
['dragover', 'dragenter'].forEach(function (t) {
|
||
$('up-drop').addEventListener(t, function (ev) { ev.preventDefault(); ev.currentTarget.style.background = 'rgba(var(--amber-rgb),.12)'; });
|
||
});
|
||
['dragleave', 'drop'].forEach(function (t) {
|
||
$('up-drop').addEventListener(t, function (ev) { ev.preventDefault(); ev.currentTarget.style.background = 'rgba(var(--amber-rgb),.04)'; });
|
||
});
|
||
$('up-drop').addEventListener('drop', function (ev) {
|
||
if (ev.dataTransfer && ev.dataTransfer.files && ev.dataTransfer.files.length) handleUploadFiles(ev.dataTransfer.files);
|
||
});
|
||
|
||
// ── 管理頁(P4:帳號管理+庫目錄管理。全走 /portal/admin/*,前端零業務邏輯;
|
||
// 一般用戶 nav 不顯示,且 server role 閘 403——藏只是 UX,真閘在後端)──
|
||
var adminLibs = []; // 庫目錄快取(渲染每帳號的庫勾選用)
|
||
|
||
function adminApi(method, path, body) {
|
||
path = API_BASE + path;
|
||
var opt = { method: method, headers: Object.assign({ 'Content-Type': 'application/json' }, authHeaders()) };
|
||
if (body !== undefined) opt.body = JSON.stringify(body);
|
||
return fetch(path, opt).then(function (r) {
|
||
return safeJson(r).then(function (d) { return { ok: r.ok, status: r.status, d: d }; });
|
||
});
|
||
}
|
||
|
||
function loadAdmin() {
|
||
$('ad-users').innerHTML = '<div class="muted">載入中…</div>';
|
||
$('ad-libs').innerHTML = '<div class="muted">載入中…</div>';
|
||
adminApi('GET', '/portal/admin/libraries')
|
||
.then(function (x) {
|
||
if (guard401(x.status)) return;
|
||
if (!x.ok) { $('ad-libs').innerHTML = '<div class="err">' + esc(x.d.error || ('讀取失敗(HTTP ' + x.status + ')')) + '</div>'; return; }
|
||
adminLibs = x.d.libraries || [];
|
||
renderAdminLibs();
|
||
return adminApi('GET', '/portal/admin/users').then(function (y) {
|
||
if (guard401(y.status)) return;
|
||
if (!y.ok) { $('ad-users').innerHTML = '<div class="err">' + esc(y.d.error || ('讀取失敗(HTTP ' + y.status + ')')) + '</div>'; return; }
|
||
renderAdminUsers(y.d.users || []);
|
||
});
|
||
})
|
||
.catch(function (e) {
|
||
$('ad-users').innerHTML = '<div class="err">請求失敗:' + esc(friendlyErr(e)) + '</div>';
|
||
$('ad-libs').innerHTML = '';
|
||
});
|
||
}
|
||
|
||
// 帳號可勾選的庫=庫目錄啟用中的庫 ∪ general ∪ 該帳號已有的庫(目錄外的舊授權不憑空消失)
|
||
function checkableLibs(userLibs) {
|
||
var names = ['general'];
|
||
adminLibs.forEach(function (l) { if (l.status !== 'disabled' && l.name && names.indexOf(l.name) < 0) names.push(l.name); });
|
||
(userLibs || []).forEach(function (n) { if (n !== '*' && names.indexOf(n) < 0) names.push(n); });
|
||
return names;
|
||
}
|
||
function libDisplay(name) {
|
||
for (var i = 0; i < adminLibs.length; i++) { if (adminLibs[i].name === name) return adminLibs[i].display_name || name; }
|
||
return name;
|
||
}
|
||
|
||
function renderAdminUsers(users) {
|
||
if (!users.length) { $('ad-users').innerHTML = '<div class="muted" style="padding:16px 4px">還沒有任何同仁帳號——用上面的表單新增第一個。</div>'; return; }
|
||
$('ad-users').innerHTML = users.map(function (u) {
|
||
var star = (u.libraries || []).indexOf('*') >= 0;
|
||
var disabled = u.status === 'disabled';
|
||
var libChips = star
|
||
? '<span class="tag green">全部知識庫</span>'
|
||
: ((u.libraries || []).length
|
||
? (u.libraries || []).map(function (n) { return '<span class="tag green">' + esc(libDisplay(n)) + '</span>'; }).join(' ')
|
||
: '<span class="tag dim">尚未授權任何庫</span>');
|
||
var boxes = '<label><input type="checkbox" data-star data-uid="' + esc(u.record_id) + '"' + (star ? ' checked' : '') + '> 全部知識庫(*)</label>' +
|
||
checkableLibs(u.libraries).map(function (n) {
|
||
var on = !star && (u.libraries || []).indexOf(n) >= 0;
|
||
return '<label><input type="checkbox" data-lib="' + esc(n) + '" data-uid="' + esc(u.record_id) + '"' + (on ? ' checked' : '') + (star ? ' disabled' : '') + '> ' + esc(libDisplay(n)) + ' <span class="dim mono" style="font-size:12px">' + esc(n) + '</span></label>';
|
||
}).join('');
|
||
return '<div class="card-item"' + (disabled ? ' style="opacity:.6"' : '') + '>' +
|
||
'<div style="display:flex;align-items:baseline;gap:10px;flex-wrap:wrap">' +
|
||
'<span class="serif" style="font-size:17px;font-weight:600">' + esc(u.display_name || u.email) + '</span>' +
|
||
'<span class="muted" style="font-size:14px;word-break:break-all">' + esc(u.email) + '</span>' +
|
||
'<span class="tag' + (u.role === 'admin' ? '' : ' dim') + '">' + (u.role === 'admin' ? '管理員' : '一般用戶') + '</span>' +
|
||
'<span class="tag ' + (disabled ? 'dim' : 'green') + '">' + (disabled ? '已停用' : '啟用中') + '</span></div>' +
|
||
'<div style="margin-top:9px;display:flex;gap:6px;flex-wrap:wrap;align-items:center;font-size:13px"><span class="muted" style="flex:none">可查庫</span>' + libChips + '</div>' +
|
||
'<div class="btnrow">' +
|
||
'<button class="btn2" data-act="edit-libs" data-uid="' + esc(u.record_id) + '">編輯可查庫</button>' +
|
||
'<button class="btn2" data-act="reset-pw" data-uid="' + esc(u.record_id) + '" data-email="' + esc(u.email) + '">重設密碼</button>' +
|
||
(disabled
|
||
? '<button class="btn2" data-act="set-status" data-next="active" data-uid="' + esc(u.record_id) + '">啟用</button>'
|
||
: '<button class="btn2 warn" data-act="set-status" data-next="disabled" data-uid="' + esc(u.record_id) + '" data-email="' + esc(u.email) + '">停用</button>') +
|
||
'</div>' +
|
||
'<div id="libed-' + esc(u.record_id) + '" style="display:none">' +
|
||
'<div class="libgrid">' + boxes + '</div>' +
|
||
'<div class="btnrow"><button class="btn2" data-act="save-libs" data-uid="' + esc(u.record_id) + '">儲存庫權限</button>' +
|
||
'<span class="dim" style="font-size:13px;align-self:center">勾「全部知識庫」=不限庫;否則至少勾一個。儲存後立即生效。</span></div></div>' +
|
||
'</div>';
|
||
}).join('');
|
||
}
|
||
|
||
function renderAdminLibs() {
|
||
if (!adminLibs.length) { $('ad-libs').innerHTML = '<div class="muted" style="padding:16px 4px">同步小幫手還沒送來任何庫。裝好小幫手並選好資料夾後,庫會自動出現在這裡。</div>'; return; }
|
||
$('ad-libs').innerHTML = adminLibs.map(function (l) {
|
||
var disabled = l.status === 'disabled';
|
||
var notWatching = l.daemon_watching === false; // daemon 有報告但此庫不在其中
|
||
var removeBtn = l.auto
|
||
? '<button class="btn2" style="color:#b03a26;border-color:#e58575;margin-left:auto" data-act="lib-remove-auto" data-name="' + esc(l.name) + '">移除</button>'
|
||
: '<button class="btn2" style="color:#b03a26;border-color:#e58575;margin-left:auto" data-act="lib-remove" data-id="' + esc(l.record_id) + '" data-name="' + esc(l.display_name || l.name) + '">移除</button>';
|
||
// t142:卡數+三元組數顯示(政府驗收用)。兩者皆 0 顯示「還沒有內容」,不顯示「0 張」。
|
||
var cardCount = typeof l.card_count === 'number' ? l.card_count : undefined;
|
||
var tripletCount = typeof l.triplet_count === 'number' ? l.triplet_count : undefined;
|
||
var statsHtml = '';
|
||
if (cardCount !== undefined || tripletCount !== undefined) {
|
||
var parts = [];
|
||
if (cardCount > 0) parts.push(cardCount + ' 張知識卡');
|
||
if (tripletCount > 0) parts.push(tripletCount + ' 條關聯');
|
||
statsHtml = '<div style="margin-top:5px;font-size:13px;color:rgba(var(--ink-rgb),.5)">' +
|
||
(parts.length ? parts.join('・') : '還沒有內容') + '</div>';
|
||
}
|
||
return '<div class="card-item">' +
|
||
'<div style="display:flex;align-items:baseline;gap:10px;flex-wrap:wrap">' +
|
||
'<span class="serif" style="font-size:17px;font-weight:600">' + esc(l.display_name || l.name) + '</span>' +
|
||
'<span class="dim mono" style="font-size:13px">' + esc(l.name) + '</span>' +
|
||
(l.auto
|
||
? '<span class="tag green">啟用中</span><span class="tag">同步自動出現</span>'
|
||
: '<span class="tag ' + (disabled ? 'dim' : 'green') + '">' + (disabled ? '已停用' : '啟用中') + '</span>') +
|
||
removeBtn +
|
||
'</div>' +
|
||
statsHtml +
|
||
(!l.auto && l.description ? '<div style="margin-top:8px;font-size:14.5px;line-height:1.65;color:rgba(var(--ink-rgb),.65)">' + esc(l.description) + '</div>' : '') +
|
||
(notWatching ? '<div style="margin-top:6px;font-size:13px;color:rgba(var(--ink-rgb),.45)">小幫手目前沒有在同步這個資料夾</div>' : '') +
|
||
'</div>';
|
||
}).join('');
|
||
}
|
||
|
||
// 一次性密碼顯示(server 不留明碼——關掉就真的沒了,誠實跟 admin 說清楚)
|
||
function showOtp(email, password) {
|
||
$('ad-otp').innerHTML = '<div class="otpbox">' +
|
||
'<div style="font-size:15px;font-weight:600">' + esc(email) + ' 的一次性密碼</div>' +
|
||
'<div class="pw">' + esc(password) + '</div>' +
|
||
'<div style="font-size:13.5px;line-height:1.7;color:rgba(var(--ink-rgb),.65)">只顯示這一次——關閉後再也調不出來(系統只存雜湊)。請當場轉交同仁,並提醒登入後到「設定」改成自己的密碼。</div>' +
|
||
'<div class="btnrow"><button class="btn2" id="ad-otp-close">我已轉交,關閉</button></div></div>';
|
||
$('ad-otp').scrollIntoView({ block: 'nearest' });
|
||
}
|
||
|
||
// 新增帳號
|
||
$('ad-nu-create').addEventListener('click', function () {
|
||
var email = $('ad-nu-email').value.trim();
|
||
var name = $('ad-nu-name').value.trim();
|
||
var role = $('ad-nu-role').value === 'admin' ? 'admin' : 'user';
|
||
var st = $('ad-nu-status');
|
||
if (!email) { st.textContent = '請填 Email'; return; }
|
||
st.textContent = '';
|
||
$('ad-nu-create').disabled = true;
|
||
var body = { email: email, role: role };
|
||
if (name) body.display_name = name;
|
||
adminApi('POST', '/portal/admin/users', body)
|
||
.then(function (x) {
|
||
$('ad-nu-create').disabled = false;
|
||
if (guard401(x.status)) return;
|
||
if (!x.ok) { st.textContent = x.d.error || ('建立失敗(HTTP ' + x.status + ')'); return; }
|
||
$('ad-nu-email').value = ''; $('ad-nu-name').value = ''; $('ad-nu-role').value = 'user';
|
||
if (x.d.generated_password) showOtp(email, x.d.generated_password);
|
||
toast('帳號已建立');
|
||
loadAdmin();
|
||
})
|
||
.catch(function (e) { $('ad-nu-create').disabled = false; st.textContent = friendlyErr(e); });
|
||
});
|
||
|
||
|
||
// 「全部知識庫」勾選 → 其餘庫勾選框連動停用(存的就是 ["*"],個別勾選無意義)
|
||
document.addEventListener('change', function (ev) {
|
||
var t = ev.target;
|
||
if (!t || !t.hasAttribute || !t.hasAttribute('data-star')) return;
|
||
var uid = t.getAttribute('data-uid');
|
||
document.querySelectorAll('#libed-' + uid + ' input[data-lib]').forEach(function (cb) {
|
||
cb.disabled = t.checked;
|
||
if (t.checked) cb.checked = false;
|
||
});
|
||
});
|
||
|
||
// 管理頁動作(事件委派)
|
||
$('v-admin').addEventListener('click', function (ev) {
|
||
var t = ev.target.closest('[data-act]');
|
||
if (!t) return;
|
||
var act = t.getAttribute('data-act');
|
||
var uid = t.getAttribute('data-uid');
|
||
|
||
if (act === 'edit-libs') {
|
||
var ed = $('libed-' + uid);
|
||
ed.style.display = ed.style.display === 'none' ? '' : 'none';
|
||
return;
|
||
}
|
||
if (act === 'save-libs') {
|
||
var star = document.querySelector('#libed-' + uid + ' input[data-star]');
|
||
var libs;
|
||
if (star && star.checked) { libs = ['*']; }
|
||
else {
|
||
libs = [];
|
||
document.querySelectorAll('#libed-' + uid + ' input[data-lib]').forEach(function (cb) {
|
||
if (cb.checked) libs.push(cb.getAttribute('data-lib'));
|
||
});
|
||
if (!libs.length) { toast('至少勾一個庫,或勾「全部知識庫」'); return; }
|
||
}
|
||
t.disabled = true;
|
||
adminApi('PATCH', '/portal/admin/users/' + encodeURIComponent(uid), { libraries: libs })
|
||
.then(function (x) {
|
||
t.disabled = false;
|
||
if (guard401(x.status)) return;
|
||
if (!x.ok) { toast(x.d.error || ('儲存失敗(HTTP ' + x.status + ')')); return; }
|
||
toast('庫權限已更新,立即生效');
|
||
loadAdmin();
|
||
})
|
||
.catch(function (e) { t.disabled = false; toast(friendlyErr(e)); });
|
||
return;
|
||
}
|
||
if (act === 'set-status') {
|
||
var next = t.getAttribute('data-next');
|
||
if (next === 'disabled' && !confirm('確定停用 ' + (t.getAttribute('data-email') || '這個帳號') + '?停用後其登入與既有 session 立即失效。')) return;
|
||
t.disabled = true;
|
||
adminApi('PATCH', '/portal/admin/users/' + encodeURIComponent(uid), { status: next })
|
||
.then(function (x) {
|
||
t.disabled = false;
|
||
if (guard401(x.status)) return;
|
||
if (!x.ok) { toast(x.d.error || ('更新失敗(HTTP ' + x.status + ')')); return; } // 含最後一個 admin 的 409 訊息
|
||
toast(next === 'disabled' ? '已停用' : '已啟用');
|
||
loadAdmin();
|
||
})
|
||
.catch(function (e) { t.disabled = false; toast(friendlyErr(e)); });
|
||
return;
|
||
}
|
||
if (act === 'reset-pw') {
|
||
var email = t.getAttribute('data-email') || '';
|
||
if (!confirm('確定重設 ' + email + ' 的密碼?舊密碼將立即失效,會產生一組新的一次性密碼。')) return;
|
||
t.disabled = true;
|
||
adminApi('POST', '/portal/admin/users/' + encodeURIComponent(uid) + '/reset-password')
|
||
.then(function (x) {
|
||
t.disabled = false;
|
||
if (guard401(x.status)) return;
|
||
if (!x.ok) { toast(x.d.error || ('重設失敗(HTTP ' + x.status + ')')); return; }
|
||
showOtp(email, x.d.password);
|
||
toast('密碼已重設');
|
||
})
|
||
.catch(function (e) { t.disabled = false; toast(friendlyErr(e)); });
|
||
return;
|
||
}
|
||
// 移除已登記庫(有 record_id)
|
||
if (act === 'lib-remove') {
|
||
var libId = t.getAttribute('data-id') || '';
|
||
var libName = t.getAttribute('data-name') || libId;
|
||
if (!confirm('把「' + libName + '」從目錄移除?\n\n資料不會刪除,重新同步時會再出現。')) return;
|
||
t.disabled = true;
|
||
adminApi('DELETE', '/portal/admin/libraries/' + encodeURIComponent(libId))
|
||
.then(function (x) {
|
||
t.disabled = false;
|
||
if (guard401(x.status)) return;
|
||
if (!x.ok) { toast(x.d.error || ('移除失敗(HTTP ' + x.status + ')')); return; }
|
||
adminLibs = adminLibs.filter(function (l) { return l.record_id !== libId; });
|
||
renderAdminLibs();
|
||
toast('已從目錄移除');
|
||
})
|
||
.catch(function (e) { t.disabled = false; toast(friendlyErr(e)); });
|
||
return;
|
||
}
|
||
// 移除 auto 庫(無 record_id,entries 標 deprecated)
|
||
if (act === 'lib-remove-auto') {
|
||
var autoName = t.getAttribute('data-name') || '';
|
||
var input = window.prompt('移除「' + autoName + '」會讓它的內容不再被搜尋到(資料保留可還原)。\n\n請輸入庫名確認:');
|
||
if (input === null) return; // 取消
|
||
if (input.trim() !== autoName) { toast('庫名輸入不符,取消移除'); return; }
|
||
t.disabled = true;
|
||
adminApi('DELETE', '/portal/admin/libraries/by-name/' + encodeURIComponent(autoName), { confirm: autoName })
|
||
.then(function (x) {
|
||
t.disabled = false;
|
||
if (guard401(x.status)) return;
|
||
if (!x.ok) { toast(x.d.error || ('移除失敗(HTTP ' + x.status + ')')); return; }
|
||
adminLibs = adminLibs.filter(function (l) { return l.name !== autoName; });
|
||
renderAdminLibs();
|
||
toast('已移除(' + (x.d.deprecated_count || 0) + ' 筆標為不可搜)');
|
||
})
|
||
.catch(function (e) { t.disabled = false; toast(friendlyErr(e)); });
|
||
return;
|
||
}
|
||
});
|
||
// 一次性密碼關閉鈕(otpbox 動態生成,掛在容器上)
|
||
$('ad-otp').addEventListener('click', function (ev) {
|
||
if (ev.target && ev.target.id === 'ad-otp-close') $('ad-otp').innerHTML = '';
|
||
});
|
||
|
||
// ── 設定 ──
|
||
function loadSettings() {
|
||
var p = S.profile;
|
||
if (!p) { $('st-me').innerHTML = '<div class="muted">載入中…</div>'; return; }
|
||
if (window._loadAiConfig) window._loadAiConfig();
|
||
var libs = p.libraries || [];
|
||
var libHtml = libs.indexOf('*') >= 0
|
||
? '<span class="tag green">全部知識庫</span>'
|
||
: (libs.length ? libs.map(function (l) { return '<span class="tag green">' + esc(l) + '</span>'; }).join(' ') : '<span class="tag dim">尚未授權任何庫</span>');
|
||
$('st-me').innerHTML =
|
||
'<div class="kvline"><span class="muted">名稱</span><span>' + esc(p.display_name || '') + '</span></div>' +
|
||
'<div class="kvline"><span class="muted">角色</span><span>' + esc(p.role === 'admin' ? '管理員' : '一般用戶') + '</span></div>' +
|
||
'<div class="kvline" style="align-items:flex-start"><span class="muted" style="flex:none">可查庫</span><span style="text-align:right;display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end">' + libHtml + '</span></div>';
|
||
}
|
||
$('st-pw-save').addEventListener('click', function () {
|
||
var oldPw = $('st-pw-old').value;
|
||
var newPw = $('st-pw-new').value;
|
||
var newPw2 = $('st-pw-new2').value;
|
||
var st = $('st-pw-status');
|
||
st.className = 'err';
|
||
if (!oldPw || !newPw) { st.textContent = '請填舊密碼與新密碼'; return; }
|
||
if (newPw.length < 8) { st.textContent = '新密碼至少 8 碼'; return; }
|
||
if (newPw !== newPw2) { st.textContent = '兩次輸入的新密碼不一致'; return; }
|
||
$('st-pw-save').disabled = true;
|
||
st.textContent = '';
|
||
fetch(API_BASE + '/portal/me/password', {
|
||
method: 'POST',
|
||
headers: Object.assign({ 'Content-Type': 'application/json' }, authHeaders()),
|
||
body: JSON.stringify({ current: oldPw, 'new': newPw })
|
||
})
|
||
.then(function (r) { return safeJson(r).then(function (d) { return { ok: r.ok, status: r.status, d: d }; }); })
|
||
.then(function (x) {
|
||
$('st-pw-save').disabled = false;
|
||
if (guard401(x.status)) return;
|
||
if (!x.ok) { st.textContent = x.d.error || '更新失敗'; return; }
|
||
st.className = 'ok';
|
||
st.textContent = '密碼已更新';
|
||
$('st-pw-old').value = ''; $('st-pw-new').value = ''; $('st-pw-new2').value = '';
|
||
toast('密碼已更新');
|
||
})
|
||
.catch(function (e) { $('st-pw-save').disabled = false; st.textContent = friendlyErr(e); });
|
||
});
|
||
|
||
boot();
|
||
})();
|
||
</script>
|
||
</body>
|
||
</html> |