go-proxy-bingai/web/compose.html
2023-05-08 12:07:55 +08:00

2665 lines
209 KiB
HTML

<!DOCTYPE html>
<html dir="ltr" lang="zh" xml:lang="zh" xmlns="http://www.w3.org/1999/xhtml" xmlns:Web="http://schemas.live.com/Web/">
<script type="text/javascript">//<![CDATA[
si_ST = new Date
//]]></script>
<head><!--pc-->
<title>BingAI - 撰写</title>
<meta content="text/html; charset=utf-8" http-equiv="content-type" />
<meta name="viewport"
content="width=device-width, minimum-scale=1.0, initial-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover" />
<meta name="referrer" content="origin-when-cross-origin" />
<link rel="icon" type="image/svg+xml" href="/web/img/compose.svg" />
<script type="text/javascript">//<![CDATA[
const logPathReg=new RegExp('/fd/ls/|/web/xls.aspx');const OriginalImage=Image;Image=function(){const image=new OriginalImage();const originalSet=image.__proto__.__lookupSetter__('src');image.__proto__.__defineSetter__('src',function(value){if(logPathReg.test(value)){return}originalSet.call(this,value)});return image};const _oldSendBeacon=navigator.sendBeacon;navigator.sendBeacon=function(url,data){if(logPathReg.test(url)){return true}return _oldSendBeacon.call(this,url,data)};const xhrOpen=window.XMLHttpRequest.prototype.open;window.XMLHttpRequest.prototype.open=function(method,url){if(logPathReg.test(url)){this.isLog=true}return xhrOpen.call(this,method,url)};const xhrSend=window.XMLHttpRequest.prototype.send;window.XMLHttpRequest.prototype.send=function(body){if(this.isLog){return this.abort()}return xhrSend.call(this,body)};
_G = { Region: "US", Lang: "zh-CN", ST: (typeof si_ST !== 'undefined' ? si_ST : new Date), Mkt: "en-US", RevIpCC: "us", RTL: false, Ver: "19", IG: "0", EventID: "6457cdf9bf314d6186c6b7f80c87f395", V: "underside", P: "UNSP", DA: "PUSE01", SUIH: "pvMUA9xkTfwoGd2dQVAmkA", adc: "b_ad", EF: { cookss: 1, bmcov: 1, crossdomainfix: 1, bmasynctrigger: 1, bmasynctrigger3: 1, newtabsloppyclick: 1, chevroncheckmousemove: 1 }, gpUrl: "\/fd\/ls\/GLinkPing.aspx?" }; _G.lsUrl = "/fd/ls/l?IG=" + _G.IG; curUrl = "\/edgesvc\/compose"; _G.XLS = "\/web\/xls.aspx"; function si_T (a) { if (document.images) { _G.GPImg = new Image; _G.GPImg.src = _G.gpUrl + 'IG=' + _G.IG + '&' + a; } return true; } _G.CTT = "3000";; var _w = window, _d = document, sb_de = _d.documentElement, sb_ie = !1, sb_i6 = !1, _ge = function (n) { return _d.getElementById(n) }, _qs = function (n, t) { return t = typeof t == "undefined" ? _d : t, t.querySelector ? t.querySelector(n) : null }, sb_st = function (n, t) { return setTimeout(n, t) }, sb_rst = sb_st, sb_ct = function (n) { clearTimeout(n) }, sb_gt = function () { return (new Date).getTime() }, sj_gx = function () { return new XMLHttpRequest }; _w.sj_ev = function (n) { return n }; _w.sj_ce = function (n, t, i) { var r = _d.createElement(n); return t && (r.id = t), i && (r.className = i), r }; _w.sj_cook = new function () { function u () { var n = location.protocol === "https:"; return n ? ";secure" : "" } function f () { return _G !== undefined && _G.EF !== undefined && _G.EF.cookss !== undefined && _G.EF.cookss === 1 } var n = this, t = !1, i = new Date(0).toGMTString(), r; try { r = _d.cookie } catch (e) { t = !0 } n.get = function (n, i) { var r, u; return t ? null : (r = _d.cookie.match(new RegExp("\\b" + n + "=[^;]+")), i && r) ? (u = r[0].match(new RegExp("\\b" + i + "=([^&]*)")), u ? u[1] : null) : r ? r[0] : null }; n.set = function (i, r, e, o, s, h, c) { var v, l, a, y, b; if (!t) { l = r + "=" + e; a = n.get(i); a ? (y = n.get(i, r), v = y ? a.replace(r + "=" + y, l) : a + "&" + l) : v = i + "=" + l; var p = location.hostname.match(/([^.]+\.[^.]*)$/), k = h && h > 0 ? h * 6e4 : 63072e6, d = new Date((new Date).getTime() + Math.min(k, 63072e6)), w = ""; f() && (b = u(), w = b + (c ? ";SameSite=" + c : ";SameSite=None")); _d.cookie = v + (p ? ";domain=" + p[0] : "") + (o ? ";expires=" + d.toGMTString() : "") + (s ? ";path=" + s : "") + w } }; n.clear = function (n) { if (!t) { var u = n + "=", r = location.hostname.match(/([^.]+\.[^.]*)$/); _d.cookie = u + (r ? ";domain=" + r[0] : "") + ";expires=" + i } } }; _w.sk_merge || (_w.sk_merge = function (n) { _d.cookie = n }); var amd, define, require; (function (n) { function e (n, i, u) { t[n] || (t[n] = { dependencies: i, callback: u }, r(n)) } function r (n) { if (n) { if (n) return u(n) } else { if (!f) { for (var r in t) u(r); f = !0 } return i } } function u (n) { var s, e; if (i[n]) return i[n]; if (t.hasOwnProperty(n)) { var h = t[n], f = h.dependencies, l = h.callback, a = r, o = {}, c = [a, o]; if (f.length < 2) throw "invalid usage"; else if (f.length > 2) for (s = f.slice(2, f.length), e = 0; e < s.length; e++)c.push(u(s[e])); return l.apply(this, c), i[n] = o, o } } var t = {}, i = {}, f = !1; n.define = e; n.require = r })(amd || (amd = {})); define = amd.define; require = amd.require; function lb () { _w.si_sendCReq && sb_st(_w.si_sendCReq, 800); _w.lbc && _w.lbc() }; define("shared", ["require", "exports"], function (n, t) { function s (n, t) { for (var r = n.length, i = 0; i < r; i++)t(n[i]) } function r (n) { for (var i = [], t = 1; t < arguments.length; t++)i[t - 1] = arguments[t]; return function () { n.apply(null, i) } } function u (n) { i && event && (event.returnValue = !1); n && typeof n.preventDefault == "function" && n.preventDefault() } function f (n) { i && event && (event.cancelBubble = !0); n && typeof n.stopPropagation == "function" && n.stopPropagation() } function e (n, t, i) { for (var r = 0; n && n.offsetParent && n != (i || document.body);)r += n["offset" + t], n = n.offsetParent; return r } function o () { return (new Date).getTime() } function h (n) { return i ? event : n } function c (n) { return i ? event ? event.srcElement : null : n.target } function l (n) { return i ? event ? event.fromElement : null : n.relatedTarget } function a (n) { return i ? event ? event.toElement : null : n.relatedTarget } function v (n, t, i) { while (n && n != (i || document.body)) { if (n == t) return !0; n = n.parentNode } return !1 } function y (n) { window.location.href = n } function p (n, t) { n && (n.style.filter = t >= 100 ? "" : "alpha(opacity=" + t + ")", n.style.opacity = t / 100) } t.__esModule = !0; t.getTime = t.getOffset = t.stopPropagation = t.preventDefault = t.wrap = t.forEach = void 0; var i = sb_ie; t.forEach = s; t.wrap = r; t.preventDefault = u; t.stopPropagation = f; t.getOffset = e; t.getTime = o; window.sj_b = document.body; window.sb_de = document.documentElement; window.sj_wf = r; window.sj_pd = u; window.sj_sp = f; window.sj_go = e; window.sj_ev = h; window.sj_et = c; window.sj_mi = l; window.sj_mo = a; window.sj_we = v; window.sb_gt = o; window.sj_so = p; window.sj_lc = y }); define("env", ["require", "exports", "shared"], function (n, t, i) { function v (n, t) { return t.length && typeof n == "function" ? function () { return n.apply(null, t) } : n } function y (n, t) { var e = [].slice.apply(arguments).slice(2), i = v(n, e), u; return typeof i == "function" && (u = window.setImmediate && !window.setImmediate.Override && (!t || t <= 16) ? "i" + setImmediate(i) : o(i, t), f[r] = u, r = (r + 1) % a), u } function p (n, t) { var r = [].slice.apply(arguments).slice(2), i = l(v(n, r), t); return e[u] = i, u = (u + 1) % a, i } function w () { h.forEach(f, s); h.forEach(e, window.clearInterval); r = u = e.length = f.length = 0 } function s (n) { n != null && (typeof n == "string" && n.indexOf("i") === 0 ? window.clearImmediate(parseInt(n.substr(1), 10)) : c(n)) } var h = i, f = [], e = [], o, c, l, a = 1024, r = 0, u = 0; o = window.setTimeout; t.setTimeout = y; l = window.setInterval; t.setInterval = p; t.clear = w; c = window.clearTimeout; t.clearTimeout = s; window.sb_rst = o; window.setTimeout = window.sb_st = y; window.setInterval = window.sb_si = p; window.clearTimeout = window.sb_ct = s }); define("event.custom", ["require", "exports", "shared", "env"], function (n, t, i, r) { function f (n) { return u[n] || (u[n] = []) } function e (n, t) { n.d ? l.setTimeout(c.wrap(n, t), n.d) : n(t) } function v (n, t, i) { var r, f; for (r in u) f = i ? t && r.indexOf(t) === 0 : !(r.indexOf(a) === 0) && !(t && r.indexOf(t) === 0) && !(n != null && n[r] != null), f && delete u[r] } function o (n) { for (var t = f(n), u = t.e = arguments, i, r = 0; r < t.length; r++)if (t[r].alive) try { e(t[r].func, u) } catch (o) { i || (i = o) } if (i) throw i; } function s (n, t, i, r) { var u = f(n); t && (t.d = r, u.push({ func: t, alive: !0 }), i && u.e && e(t, u.e)) } function h (n, t) { for (var i = 0, r = u[n]; r && i < r.length; i++)if (r[i].func == t && r[i].alive) { r[i].alive = !1; break } } var c = i, l = r, u = {}, a = "ajax."; t.reset = v; t.fire = o; t.bind = s; t.unbind = h; _w.sj_evt = { bind: s, unbind: h, fire: o } }); define("event.native", ["require", "exports"], function (n, t) { function r (n, t, r, u) { var f = n === window || n === document || n === document.body; n && (f && t == "load" ? i.bind("onP1", r, !0) : f && t == "unload" ? i.bind("unload", r, !0) : n.addEventListener ? n.addEventListener(t, r, u) : n.attachEvent ? n.attachEvent("on" + t, r) : n["on" + t] = r) } function u (n, t, r, u) { var f = n === window || n === document || n === document.body; n && (f && t == "load" ? i.unbind("onP1", r) : f && t == "unload" ? i.unbind("unload", r) : n.removeEventListener ? n.removeEventListener(t, r, u) : n.detachEvent ? n.detachEvent("on" + t, r) : n["on" + t] = null) } t.__esModule = !0; t.unbind = t.bind = void 0; var i = n("event.custom"); t.bind = r; t.unbind = u; window.sj_be = r; window.sj_ue = u }); define("dom", ["require", "exports"], function (n, t) { function f (n, t) { function s (n, t, r, f) { r && u.unbind(r, f, s); c.bind("onP1", function () { if (!n.l) { n.l = 1; var r = i("script"); r.setAttribute("data-rms", "1"); r.src = (t ? "/fd/sa/" + _G.Ver : "/sa/" + _G.AppVer) + "/" + n.n + ".js"; _d.body.appendChild(r) } }, !0, 5) } for (var f = arguments, e, o, r = 2, l = { n: n }; r < f.length; r += 2)e = f[r], o = f[r + 1], u.bind(e, o, h.wrap(s, l, t, e, o)); r < 3 && s(l, t) } function e () { var n = _d.getElementById("ajaxStyles"); return n || (n = _d.createElement("div"), n.id = "ajaxStyles", _d.body.insertBefore(n, _d.body.firstChild)), n } function l (n) { var t = i("script"); t.type = "text/javascript"; t.text = n; t.setAttribute("data-bing-script", "1"); document.body.appendChild(t); r.setTimeout(function () { document.body.removeChild(t) }, 0) } function a (n) { var t = i("script"); t.type = "text/javascript"; t.src = n; t.setAttribute("crossorigin", "anonymous"); t.onload = r.setTimeout(function () { document.body.removeChild(t) }, 0); document.body.appendChild(t) } function o (n) { var t = s("ajaxStyle"); t || (t = i("style"), t.setAttribute("data-rms", "1"), t.id = "ajaxStyle", e().appendChild(t)); t.textContent !== undefined ? t.textContent += n : t.styleSheet.cssText += n } function v (n, t) { for (var i = Element.prototype, r = i.matches || i.msMatchesSelector; n != null;) { if (r.call(n, t)) return n; n = n.parentElement } return null } function s (n) { return _d.getElementById(n) } function i (n, t, i) { var r = _d.createElement(n); return t && (r.id = t), i && (r.className = i), r } t.__esModule = !0; t.includeCss = t.includeScriptReference = t.includeScript = t.getCssHolder = t.loadJS = void 0; var r = n("env"), h = n("shared"), u = n("event.native"), c = n("event.custom"); t.loadJS = f; t.getCssHolder = e; t.includeScript = l; t.includeScriptReference = a; t.includeCss = o; _w._ge = s; _w.sj_ce = i; _w.sj_jb = f; _w.sj_ic = o; _w.sj_fa = v }); define("cookies", ["require", "exports"], function (n, t) { function a () { var n = location.protocol === "https:"; return n ? ";secure" : "" } function v () { return typeof _G != "undefined" && _G.EF !== undefined && _G.EF.cookss !== undefined && _G.EF.cookss === 1 } function f () { var n = location.hostname.match(/([^.]+\.[^.]*)$/); return n ? ";domain=" + n[0] : "" } function e (n, t, i, r, u) { var s = f(), h = r && r > 0 ? r * 6e4 : 63072e6, c = new Date((new Date).getTime() + Math.min(h, 63072e6)), e = "", o; v() && (o = a(), e = o + (u ? ";SameSite=" + u : ";SameSite=None")); document.cookie = n + s + (t ? ";expires=" + c.toGMTString() : "") + (i ? ";path=" + i : "") + e } function o (n, t, r, u, f) { if (!i) { var o = n + "=" + t; e(o, r, u, f) } } function s () { return !i } function r (n, t) { var r, u; return i ? null : (r = document.cookie.match(new RegExp("\\b" + n + "=[^;]+")), t && r) ? (u = r[0].match(new RegExp("\\b" + t + "=([^&]*)")), u ? u[1] : null) : r ? r[0] : null } function h (n, t, u, f, o, s) { var l, h, c, a; i || (h = t + "=" + u, c = r(n), c ? (a = r(n, t), l = a ? c.replace(t + "=" + a, h) : c + "&" + h) : l = n + "=" + h, e(l, f, o, s)) } function c (n, t) { if (!i) { var r = n + "=", e = f(); document.cookie = r + e + ";expires=" + u + (t ? ";path=" + t : "") } } var i, u, l; t.__esModule = !0; t.clear = t.set = t.get = t.areCookiesAccessible = t.setNoCrumbs = void 0; i = !1; u = new Date(0).toGMTString(); try { l = document.cookie } catch (y) { i = !0 } t.setNoCrumbs = o; t.areCookiesAccessible = s; t.get = r; t.set = h; t.clear = c; window.sj_cook = { get: r, set: h, setNoCrumbs: o, clear: c, areCookiesAccessible: s } }); var sj_anim = function (n) { var s = 25, t = this, c, u, h, f, e, o, l, i, r; t.init = function (n, s, a, v, y) { if (c = n, e = s, o = a, l = v, r = y, v == 0) { f = h; r && r(); return } i || (i = e); u || t.start() }; t.start = function () { h = sb_gt(); f = Math.abs(o - i) / l * s; u = setInterval(t.next, s) }; t.stop = function () { clearInterval(u); u = 0 }; t.next = function () { var u = sb_gt() - h, s = u >= f; i = e + (o - e) * u / f; s && (t.stop(), i = o); n(c, i); s && r && r() }; t.getInterval = function () { return s } }; var sj_fader = function () { return new sj_anim(function (n, t) { sj_so(n, t) }) }; sj_fade = new function () { function n (n, t, i, r, u, f, e) { var o = n.fader; if (o) { if (e == n.fIn) return } else o = sj_fader(), n.fader = o; u && u(); o.init(n, t, i, r, f); n.fIn = e } this.up = function (t, i, r) { function u () { t.style.visibility = "visible" } n(t, 0, 100, i, u, r, 1) }; this.down = function (t, i, r) { function u () { t.style.visibility = "hidden"; r && r() } n(t, 100, 0, i, 0, u, 0) } };
//]]></script>
<style type="text/css">
#b_header #id_h {
content-visibility: hidden
}
#b_results>.b_ans:not(.b_top):nth-child(n+5) .rqnaContainerwithfeedback #df_listaa {
content-visibility: auto;
contain-intrinsic-size: 648px 205px
}
#b_results>.b_algo:not(.b_algoBorder):nth-child(n+5)>h2 {
content-visibility: auto;
contain-intrinsic-size: 608px 24px
}
#b_results>.b_algo:not(.b_algoBorder):nth-child(n+5) .b_caption:not(.b_rich):not(.b_capmedia):not(.b_snippetgobig):not(.rebateContent) {
content-visibility: auto;
contain-intrinsic-size: 608px 65px;
padding-right: 16px;
margin-right: -16px;
margin-left: -16px;
padding-left: 16px
}
#b_results>.b_algo:not(.b_algoBorder):nth-child(n+5) .b_caption.b_rich .captionMediaCard .wide_wideAlgo {
content-visibility: auto;
contain-intrinsic-size: 370px 120px
}
#b_results>.b_algo:not(.b_algoBorder):nth-child(n+5) .scs_icn {
content-visibility: auto
}
#b_results>.b_ans:nth-child(n+7) .b_rs:not(.pageRecoContainer) {
content-visibility: auto;
contain-intrinsic-size: 608px 296px
}
#b_results>.b_ans:nth-child(n+7) .b_rs:not(.pageRecoContainer) .b_rsv3 {
padding-bottom: 1px
}
#b_results>.b_pag {
content-visibility: auto;
contain-intrinsic-size: 628px 45px
}
#b_footer>#b_footerItems {
content-visibility: auto;
contain-intrinsic-size: 1px 24px
}
.cnt_vis_hid {
content-visibility: hidden
}
.sw_plus,
.sw_up,
.sw_down,
.sw_st,
.sw_sth,
.sw_ste,
.sb_pagIconN,
.sb_pagIconP {
display: inline-block;
overflow: hidden;
direction: ltr
}
.sw_plus:after,
.sw_up:after,
.sw_down:after,
.sw_st:after,
.sw_sth:after,
.sw_ste:after,
.sb_pagIconN:after,
.sb_pagIconP:after {
display: inline-block;
-webkit-transform: scale(.5, .5);
transform: scale(.5, .5)
}
.sw_plus {
height: 10px;
width: 10px
}
.sw_plus:after {
-webkit-transform-origin: -216px 0;
transform-origin: -216px 0
}
.sw_play,
.sb_pagIconN,
.sb_pagIconP {
height: 16px;
width: 16px
}
.sw_st,
.sw_sth,
.sw_ste,
.sw_up,
.sw_down {
height: 14px;
width: 14px
}
.sw_down:after {
-webkit-transform-origin: -216px -36px;
transform-origin: -216px -36px
}
.sw_up:after {
-webkit-transform-origin: -252px -36px;
transform-origin: -252px -36px
}
.sw_st:after {
-webkit-transform-origin: -84px -44px;
transform-origin: -84px -44px
}
.sw_sth:after {
-webkit-transform-origin: -148px -44px;
transform-origin: -148px -44px
}
.sw_ste:after {
-webkit-transform-origin: -116px -44px;
transform-origin: -116px -44px
}
.sb_pagIconN:after {
-webkit-transform-origin: -304px 0;
transform-origin: -304px 0
}
.sb_pagIconP:after {
-webkit-transform-origin: -268px 0;
transform-origin: -268px 0
}
#b_results a.sb_pagN,
#b_results a.sb_pagP {
padding-bottom: 5px
}
.b_pag .b_roths {
transform: rotate(180deg)
}
@media(prefers-color-scheme:dark) {
#bpage.b_med .sb_pagIconN:after {
-webkit-transform-origin: -672px 0;
transform-origin: -672px 0
}
#bpage.b_med .sb_pagIconP:after {
-webkit-transform-origin: -636px 0;
transform-origin: -636px 0
}
}
#bpage.b_drk .sb_pagIconN:after {
-webkit-transform-origin: -672px 0;
transform-origin: -672px 0
}
#bpage.b_drk .sb_pagIconP:after {
-webkit-transform-origin: -636px 0;
transform-origin: -636px 0
}
.sw_plus:after,
.sw_up:after,
.sw_down:after,
.sw_st:after,
.sw_sth:after,
.sw_ste:after,
.sb_pagIconN:after,
.sb_pagIconP:after {
content: url(/rp/8nWcDuCQxCQRGNc4826Pyh6RbGA.png)
}
@media screen and (-ms-high-contrast:active) {
* {
background-color: Window
}
*:not(a) {
color: WindowText
}
a *:not(a) {
color: -ms-hotlight;
color: LinkText
}
a[disabled],
a[disabled] * {
color: GrayText
}
}
.siz12 {
width: 12px;
height: 12px
}
.siz16 {
width: 16px;
height: 16px
}
.siz20 {
width: 20px;
height: 20px
}
.siz24 {
width: 24px;
height: 24px
}
.siz28 {
width: 28px;
height: 28px
}
.siz48 {
width: 48px;
height: 48px
}
:root {
--htmlbk: #f5f5f5;
--htmlbk2: #fff;
--canvasbk: #f9f9f9;
--canvasbk2: #fff;
--canvasbk3: #f5f5f5;
--cardsbk: #f5f5f5;
--cardsbk2: #fff;
--canvasbkf7: #f7f7f7;
--promtxt: #111;
--promtxt000: #000;
--primtxt: #444;
--primtxt4a: #4a4a4a;
--primtxt40: #404040;
--regtxt: #666;
--sectxt: #767676;
--opttxt: #919191;
--distxt: #ccc;
--tealcol: #00809d;
--brtealcol: #0c8484;
--actbrdcol: #ccc;
--actbrdcol2: #cdcdcd;
--brdcol: #ddd;
--secbrdcol: #ececec;
--secbrdcolee: #eee;
--secbrdcole1: #e1e1e1;
--secbrdcole5: #e5e5e5;
--alinkcol: #4007a2;
--alinkcol2: #001ba0;
--alinkvcol: #4007a2;
--greencol: #006d21;
--citcol: #006621;
--redcol: #c80000;
--alrtcol: #d90026;
--poscol: #006d21;
--negcol: #c80000;
--tealbtncol: #fff;
--tealbtnbk: #106ebe;
--bluebtncol: #fff;
--bluebtnbk: #106ebe
}
html,
body,
#b_results>.b_pag {
background-color: var(--htmlbk);
color: var(--regtxt)
}
.b_subModule,
.b_suppModule {
border-bottom-color: var(--htmlbk)
}
.b_secondaryFocus,
.b_corActList,
.b_corActList a,
.b_corActList a:visited {
color: var(--primtxt)
}
select,
input[type="text"] {
color: #444;
border-color: #ddd
}
select:hover,
input[type="text"]:hover {
box-shadow: 0 1px 2px 0 rgba(0, 0, 0, .1)
}
select:focus,
input[type="text"]:focus {
border-color: #919191;
box-shadow: 0 1px 2px 0 rgba(0, 0, 0, .1)
}
.b_algo .b_factrow,
.b_promoteText,
#b_results,
#b_results .b_defaultText,
.cbl {
color: var(--regtxt)
}
#b_results ::placeholder,
.b_factrow,
.b_attribution,
.b_focusLabel,
.b_secondaryText,
.b_demoteText,
.b_footnote,
.b_footnote .cbl,
.b_entitySubTitle,
#b_results p.b_secondaryText,
#b_content .b_imagePair .b_footnote a,
#b_content .b_imagePair .b_footnote a:visited,
#b_content .b_floatR_img .b_footnote a,
#b_content .b_floatR_img .b_footnote a:visited,
.sb_meta,
label {
color: var(--sectxt)
}
#b_results input[type="text"]:disabled {
color: var(--distxt)
}
#b_pole .b_ans,
.b_pag a.sb_pagS,
#b_results>li,
#b_content>.sml {
background-color: var(--canvasbk2)
}
#b_results>.b_ad {
color: var(--regtxt);
background-color: var(--adstbk)
}
#b_results p,
#b_results .b_richcard .b_vList.b_divsec {
color: var(--partxtcol)
}
a,
#b_results .b_no a,
#b_results .b_pag a,
#b_results>.b_ad a {
color: var(--alinkcol)
}
a:visited,
#sb_feedback:visited,
#b_results>.b_ad a:visited {
color: var(--alinkvcol)
}
cite,
#b_results cite.sb_crmb a,
#b_results cite a.sb_metalink,
#b_results .b_adurl cite a,
#bk_wr_container cite a {
color: var(--citcol)
}
.b_touchable,
.b_touchable>li {
border-color: var(--tchsep)
}
#b_results .b_pAlt,
.b_alert,
#b_results .b_no .b_alert,
#b_results .b_alert {
color: var(--alrtcol)
}
.pushpin {
background: #49f;
color: #fff
}
.redPushpin {
background: #d31100
}
#bpage #b_header .b_posText,
#bpage #b_content .b_posText,
.b_posText {
color: var(--poscol)
}
#bpage #b_header .b_negText,
#bpage #b_content .b_negText,
.b_negText {
color: var(--negcol)
}
:root {
--adstbk: #f9fcf7;
--tchsep: #eee;
--partxtcol: var(--regtxt)
}
@media(prefers-color-scheme:dark) {
#bpage.b_med {
--adstbk: #1b1a19;
--tchsep: #3b3a39;
--partxtcol: #edebe9
}
}
#bpage.b_drk {
--adstbk: #1b1a19;
--tchsep: #3b3a39;
--partxtcol: #edebe9
}
#b_content .b_ans,
#b_content .b_ans p,
#b_content .b_ans .cbl {
color: var(--primtxt)
}
z {
a: 1
}
z {
a: 1
}
h3,
h4,
h5 {
font: inherit;
font-size: 100%
}
body {
font-family: "-apple-system", HelveticaNeue, Roboto, Arial, sans-serif;
font-weight: normal;
font-size: 14px;
line-height: 18px
}
cite {
font-style: normal
}
.b_strong,
strong,
.b_no h4 {
font-weight: 700;
font-family: "-apple-system", HelveticaNeue, Roboto, Arial, sans-serif
}
h1,
h2,
.b_focusLabel,
.b_secondaryFocus,
.b_groupLabel {
font-size: 18px;
line-height: 22px;
font-weight: normal
}
h2.b_topTitle {
font-size: 20px;
line-height: 24px;
padding-bottom: 2px
}
.b_anno {
font-size: 20px;
line-height: 24px;
font-weight: normal
}
select,
.cbtn input,
.s_btn.b_highlighted a,
input[type="text"] {
font-size: 14px
}
#fti3,
.sb_count {
font-size: 12px;
line-height: 14px
}
.ftr_ans,
#ftrLnks,
#id_rwds_b {
font-size: 13px;
line-height: 16px
}
.b_mText {
font-size: 16px;
line-height: 22px
}
.b_xlText {
font-size: 18px
}
.b_secondaryFocus,
.b_focusTextExtraSmall {
font-size: 18px;
line-height: 22px
}
.b_focusTextSmall {
font-size: 23px;
line-height: 28px;
font-family: "-apple-system", HelveticaNeue, Roboto, Arial, sans-serif
}
.b_focusTextMedium {
font-size: 32px;
line-height: 38px;
font-family: "-apple-system", HelveticaNeue, Roboto, Arial, sans-serif
}
.b_focusTextLarge {
font-size: 44px;
line-height: 53px;
font-family: "-apple-system", HelveticaNeue, Roboto, Arial, sans-serif
}
.b_smText,
.b_footnote {
font-size: 12px;
line-height: 15px
}
cite,
.nowrap {
white-space: nowrap
}
a,
#b_results .b_rs li a {
text-decoration: none
}
th {
font-weight: normal
}
.pushpin {
font-weight: 700;
font-size: 12px
}
.b_ad {
line-height: 18px
}
.b_prominentFocusLabel {
font-size: 18px
}
.b_groupLabel {
font-size: 14px;
line-height: 20px;
color: var(--primtxt);
text-transform: uppercase;
font-weight: bold
}
html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
img,
ol,
ul,
li,
form,
table,
tr,
th,
td,
blockquote {
border: 0;
border-collapse: collapse;
border-spacing: 0;
list-style: none;
margin: 0;
padding: 0
}
html {
overflow-y: scroll
}
body {
word-wrap: break-word;
overflow-x: hidden;
-webkit-text-size-adjust: none
}
header#b_header:not(:empty):not(.b_hide)~#b_content {
margin-top: 8px
}
.b_footnote {
padding-bottom: 15px
}
.b_imagePair .cico+.b_footnote,
.b_floatR_img .b_footnote,
img+.b_footnote {
padding: 0
}
.b_hList {
padding-bottom: 15px
}
select,
input[type="text"] {
margin: 0 0 16px 0;
padding: 0 11px;
height: 38px;
border-width: 1px;
border-style: solid;
border-radius: 2px
}
input[type="text"] {
-webkit-appearance: none;
max-width: 100%;
min-width: 50%
}
select::-ms-expand {
display: none
}
select {
padding: 0 0 0 11px;
height: 40px;
vertical-align: middle;
border: 1px solid #ddd
}
h2,
h4,
label,
.b_attribution,
.b_sSpace,
.b_label,
.btns,
.b_poiPair {
padding-bottom: 0
}
h2 a,
h3 a,
h4 a,
h5 a,
.b_rs a,
label {
display: block
}
.inline label {
display: inline
}
#sp_requery a {
display: inline-block
}
.b_focusTextLarge,
.b_focusTextMedium,
.b_focusTextSmall,
.b_focusTextExtraSmall {
padding-bottom: 5px
}
.b_lBMargin,
h2.b_entityTitle {
padding-bottom: 10px
}
.b_focusLabel,
.b_secondaryFocus {
padding-bottom: 4px
}
.b_rich {
padding: 12px 0 15px
}
.b_rich>*:last-child,
.b_caption>*:last-child {
padding-bottom: 0;
margin-bottom: 0
}
.b_caption {
padding-bottom: 13px
}
.b_factrow {
display: -webkit-box;
-webkit-box-orient: vertical;
margin-bottom: 2px
}
.b_attribution {
width: 100%
}
.b_attribution,
.b_factrow,
.b_1linetrunc {
overflow: hidden;
text-overflow: ellipsis
}
.b_1linetrunc {
white-space: nowrap
}
.b_mBottom {
padding-bottom: 5px
}
.b_lBottom,
#b_results #sp_recourse.b_lBottom {
padding-bottom: 10px
}
.b_xlBottom {
padding-bottom: 15px
}
.b_xxlBottom {
padding-bottom: 20px
}
.b_xxxlBottom {
padding-bottom: 25px
}
.b_dataList>li>*,
.b_imagePair .b_attribution>*,
.b_factrow>* {
display: inline
}
.b_groupLabel {
padding-bottom: 3px
}
.b_anno {
padding-bottom: 20px
}
.b_anno+.b_rich,
.b_anno+h2+.b_rich {
padding-top: 0
}
.b_vPanel>div {
padding-bottom: 15px
}
.b_vList>li {
padding-bottom: 13px
}
#b_results>li.si_pp,
.sb_hbop,
.b_hide,
#fRmsDefer,
#b_error,
#b_loadingmsg {
display: none
}
.b_rich>*:last-child,
.b_rich>.b_vList:not(.b_touchable)>li:last-child,
.b_rich>.b_vPanel>div:last-child,
.b_vPanel .b_vList:not(.b_touchable)>li:last-child,
.b_vList .b_vPanel>div:last-child,
.b_hList .b_vList>li:last-child,
.b_hList .b_vPanel>div:last-child,
.b_vList>li>*:last-child:not(a),
.b_vPanel>div>*:last-child:not(a),
.b_subModule>*:last-child,
.b_subModule .b_vPanel>*:last-child,
.b_subModule>.b_vList:last-child>*:last-child,
.b_suppModule>*:last-child,
.b_suppModule .b_vPanel>*:last-child,
.b_infocardContent>.b_vList:last-child>*:last-child,
.b_infocardContent>*:last-child,
.sa_uc>.b_vList>li:last-child,
.sa_uc>.b_vList>li:last-child>.b_vList:last-child>li:last-child,
.b_ans>.b_vList>li:last-child {
padding-bottom: 0
}
.b_vlist2col>ul {
min-width: 40%;
display: inline-block;
word-wrap: break-word;
vertical-align: top
}
.b_vlist2col>ul:first-child {
padding-right: 30px
}
.b_vlist2col li {
padding-bottom: 12px
}
.b_touchable>li {
border-bottom-width: 1px;
border-bottom-style: solid;
padding-bottom: 13px;
margin-bottom: 13px
}
.b_touchable>li:first-child {
border-top-width: 1px;
border-top-style: solid;
padding-top: 15px
}
.b_rich>.b_touchable:last-child>li:last-child,
.b_vPanel .b_touchable:last-child>li:last-child {
margin-bottom: 0
}
.b_hPanel>span:not(:last-child),
.b_hList>li:not(:last-child) {
padding-right: 10px
}
.b_hList>li {
vertical-align: top
}
.b_hPanel.wide>span:not(:last-child) {
padding-right: 20px
}
.b_suffix {
padding-left: 10px
}
.b_imagePair {
padding-bottom: 10px
}
.b_imagePair img {
vertical-align: bottom
}
.b_float_img>*:last-child,
.b_imagePair>*:last-child {
overflow: hidden
}
.b_float_img>*:first-child,
.b_imagePair>*:first-child {
margin-right: 10px;
float: left
}
.b_floatR_img {
float: right;
padding-left: 10px
}
.b_float_img {
float: left;
padding-bottom: 10px
}
.b_float_img img {
vertical-align: bottom
}
.b_imagePair.reverse {
display: -ms-flexbox;
display: -webkit-flex;
display: flexbox;
display: -webkit-box;
display: flex
}
.b_imagePair.reverse>*:first-child {
-o-box-flex: 1;
-webkit-box-flex: 1;
-moz-box-flex: 1;
-webkit-flex: 1;
-ms-flex: 1;
flex: 0 1 100%;
float: none
}
.b_imagePair.reverse>*:last-child {
-ms-flex: 0 0 auto;
flex: 0 0 auto
}
.b_imagePair.reverse>*:only-child {
-ms-flex: 1;
flex: 0 1 100%;
margin-right: 0
}
.b_vmparent {
display: -ms-flexbox;
display: -webkit-flex;
display: flexbox;
display: -webkit-box;
display: flex;
-webkit-align-items: center;
align-items: center
}
button,
.button {
border-width: 3px;
border-style: solid;
padding: 8px 18px 12px
}
.b_hPanel>span,
.b_moreLink,
.b_footnote .cico,
.b_hList>li,
.b_title div,
.csrc {
display: inline-block
}
.b_hPanel>span {
vertical-align: middle
}
.b_title h2 {
display: inline
}
.b_title .b_imagePair .rms_img {
margin-top: 3px
}
.b_relative {
position: relative
}
.b_footnote .cico {
padding-left: 10px
}
#b_error div {
padding-bottom: 20px
}
.b_mhdr h2,
.b_float {
float: left
}
.b_floatR {
float: right
}
.b_rTxt {
text-align: right
}
.b_cTxt {
text-align: center
}
.b_jTxt {
text-align: justify
}
.b_moreLink {
padding-bottom: 15px
}
.b_mhdr .b_floatR {
margin-top: 4px
}
.b_mhdr .b_moreLink {
padding-bottom: 0
}
.b_algo p,
.b_ans p {
display: -webkit-box;
-webkit-box-orient: vertical;
overflow: hidden;
-webkit-line-clamp: 5
}
.imgData p,
.b_hList p {
-webkit-line-clamp: 3
}
.b_factrow:after {
content: ""
}
#b_results>li,
#b_pole .b_ans {
padding: 13px 16px;
margin: 0 0 1px
}
#b_results>li .b_fullb,
#b_pole .b_ans .b_fullb {
margin-left: -16px;
margin-right: -16px
}
#b_results>.b_ans {
padding-bottom: 16px
}
#b_results>.b_algo {
padding-bottom: 16px
}
#b_results>.b_ad {
padding-bottom: 0
}
#b_results>.b_ad+.b_algo,
#b_results>.b_ad+.b_ans {
padding-top: 12px
}
#b_results .b_ans+.b_ad,
#b_results .b_ans+.b_algo,
#b_results .b_ans+.b_ans,
#b_results .b_algo+.b_ans,
#b_results .b_nav+.b_algo,
#b_results .b_ans+script+script+.b_ad,
#b_results .b_ans+script+script+.b_algo,
#b_results .b_ans+script+script+.b_ans,
#b_results .b_algo+script+script+.b_ans,
#b_results .b_nav+script+script+.b_algo {
margin-top: 0;
border-top: 0 solid var(--secbrdcole5)
}
#b_results>li>*:last-child,
.b_caption>*:last-child,
.vlist>li:last-child,
.b_vPanel>li:last-child,
.lft>*:last-child {
margin-bottom: 0;
padding-bottom: 0
}
#b_results>.b_pag {
padding: 12px 16px 16px
}
#b_results>li>.b_rs,
#b_results>li .b_deep {
margin-bottom: -12px
}
.b_deep li>a,
.b_deep li>span>a {
width: 110px;
text-overflow: ellipsis;
display: block;
white-space: nowrap;
overflow: hidden
}
.b_rs>.b_rich {
padding-bottom: 0
}
.clrfix:after,
.crch:after,
.b_imagePair:not(.reverse):after,
.b_clearfix:after,
.sb_vdl:after {
clear: both;
content: '.';
display: block;
visibility: hidden;
height: 0
}
#ftrLnks li {
display: inline-block;
padding: 0 20px 15px 0
}
#ftrLnks>*:last-child {
padding-right: 0
}
footer {
padding: 16px;
border-top: 0
}
table {
width: 100%
}
th,
td {
vertical-align: top;
padding: 0 0 15px 15px
}
th:first-child,
td:first-child {
padding-left: 0
}
th {
text-align: left
}
.b_caption>table:last-child tr:last-child td,
.b_caption>.b_vPanel:last-child>div:last-child>table:last-child tr:last-child td {
padding-bottom: 0
}
#fti3 {
margin-bottom: 10px
}
.b_label {
padding-right: 5px
}
.b_subModule,
.b_suppModule {
padding: 13px 0;
border-bottom-width: 1px;
border-bottom-style: solid
}
.wpc_tp .b_subModule,
.wpc_tp .b_suppModule {
margin-left: 10px;
margin-right: 10px
}
.b_subModule h2 {
padding-bottom: 10px
}
.b_subModule h2.b_headerTitle {
padding-bottom: 5px
}
.nowrap {
white-space: nowrap
}
.pushpin {
border-radius: 10px;
text-align: center;
width: 20px;
height: 20px;
margin-top: 2px;
padding-bottom: 0;
line-height: 20px
}
#b_results .b_no {
margin-bottom: 80px
}
.b_no h1,
.b_no h4,
.b_no li {
padding-bottom: 10px
}
.b_factrow .csrc {
margin-right: 5px
}
.sw_next,
.sw_prev {
display: none
}
.sb_pagIconN,
.sb_pagIconP {
margin-top: 2px
}
.b_entitySubTitle {
margin-top: -9px;
padding-bottom: 10px
}
#sb_dir {
flex-grow: 1
}
.b_clear {
clear: both
}
div#b_pole {
margin-bottom: 4px
}
#b_pole .b_ans+.b_ans {
margin-top: 0
}
#bpage.b_imp1 .b_locImgMap .b_hPanel,
#bpage.b_imp1 .wpc_tp .b_hPanel {
min-width: 393px
}
#bpage.b_imp1 .b_locImgMap {
overflow-x: scroll
}
.b_imp1 #b_results>li.b_ad h2,
.b_imp1 .b_algo>.b_algoheader h2 {
overflow: hidden;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical
}
#bpage.b_imp1 th,
#bpage.b_imp1 td {
padding-left: 8px;
padding-right: 0
}
.b_corActList {
display: -webkit-box;
display: -webkit-flex;
display: flex;
padding-bottom: 16px
}
.b_corActList li {
display: -webkit-inline-flex;
display: inline-flex;
-webkit-box-flex: 1;
-webkit-flex: 1;
flex: 1;
text-align: center;
padding: 0
}
.b_corActList li:only-child {
-webkit-box-flex: none;
-webkit-flex: none;
flex: none
}
.b_corActList li:only-child a>* {
display: inline-block;
vertical-align: middle
}
.b_corActList li:only-child a :first-child {
margin-right: 8px
}
.b_corActList li:not(:first-child) {
border-left: 1px solid var(--secbrdcole5)
}
.b_corActList a {
width: 100%
}
.b_corActList li:not(:only-child) a>:first-child {
margin-left: auto;
margin-right: auto;
display: block;
margin-bottom: 8px
}
.b_hList.b_corActList .cico {
padding: 0
}
z {
a: 1
}
#b_content h2 strong,
#b_content h3 strong,
#b_content .b_caption strong {
font-weight: normal
}
#b_content .b_caption .b_attribution strong {
font-weight: 700
}
z {
a: 1
}
z {
a: 1
}
li.b_algo .b_attribution {
border-bottom: 1px solid var(--brdcol);
padding-bottom: 0;
margin-bottom: 0
}
li.b_ad .b_attribution {
border-bottom: 1px solid var(--brdcol);
padding-bottom: 6px;
margin-bottom: 6px
}
.b_algo>.b_attribution~.b_sideBleed,
.b_algo>.b_caption~.b_sideBleed {
margin-top: -0
}
.b_algo>.b_algoheader>.b_imagePair {
padding-bottom: 0
}
.b_algo>.b_algoheader h2 {
cursor: pointer
}
.b_algo>.b_algoheader a {
cursor: auto
}
.b_algo>.b_algoheader {
margin: -12px -16px 0 -16px
}
.b_algo>.b_algoheader>a:first-of-type {
display: block;
padding: 12px 16px 0 16px
}
z {
a: 1
}
z {
a: 1
}
#b_results .b_lineclamp1 {
display: -webkit-box;
-webkit-line-clamp: 1;
-webkit-box-orient: vertical;
overflow: hidden;
white-space: normal
}
#b_results .b_lineclamp2 {
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
white-space: normal
}
#b_results .b_lineclamp3 {
display: -webkit-box;
-webkit-line-clamp: 3;
-webkit-box-orient: vertical;
overflow: hidden;
white-space: normal
}
#b_results .b_lineclamp4 {
display: -webkit-box;
-webkit-line-clamp: 4;
-webkit-box-orient: vertical;
overflow: hidden;
white-space: normal
}
#b_results .b_lineclamp5 {
display: -webkit-box;
-webkit-line-clamp: 5;
-webkit-box-orient: vertical;
overflow: hidden;
white-space: normal
}
z {
a: 1
}
z {
a: 1
}
z {
a: 1
}
z {
a: 1
}
z {
a: 1
}
</style>
<link rel="stylesheet" href="/rp/TbE9r2i8K-3X4Jg222iQY_f_7pQ.br.css" type="text/css" />
<link rel="stylesheet" href="/rp/sKMD9beH8gtVDJ1_u4M6ZXNDOy8.br.css" type="text/css" />
<style type="text/css">
body {
max-width: unset
}
</style>
<script type="text/javascript">//<![CDATA[
(function () { function n (n) { n = sb_ie ? _w.event : n; (!n.altKey || n.ctrlKey || n.shiftKey) && (n.key && n.key === "Enter" || n.keyCode && n.keyCode === 13) && _w.si_ct(sb_ie ? n.srcElement : n.target, !1, n, "enter") } sj_be(document, "keydown", n, !1) })(); (function () { function n (n) { _w.si_ct(sb_ie ? _w.event.srcElement : n.target, !1, _w.event || n) } sj_be(document, "mousedown", n, !1) })(); _w.si_sbwu = function (n) { var r = _G.BQIG == null ? _G.IG : _G.BQIG, u = "/fd/ls/GLinkPingPost.aspx?IG=" + r + n, t = "sendBeacon", i = !1; if (navigator && navigator[t]) try { navigator[t](u, ""); i = !0 } catch (f) { } return i }; ClTrCo = {}; var ctcc = 0, clc = _w.ClTrCo || {}; _w.si_ct = function (n, t, i, r) { var u, o, e, s, f, a, h, c, l; if (clc.SharedClickSuppressed) return !0; u = "getAttribute"; try { for (; n !== document.body; n = n.parentNode) { if (!n || n === document || n[u]("data-noct")) break; if (o = (n.tagName === "A" || n[u]("data-clicks")) && (n[u]("h") || n[u]("data-h")) || n[u]("_ct"), o) { e = n[u]("_ctf"); s = -1; i && (i.type === "keydown" ? s = -2 : i.button != null && (s = i.button)); e && _w[e] || (e = "si_T"); e === "si_T" && (f = n[u]("href"), _G !== undefined && _G.EF !== undefined && _G.EF.newtabredironclicktracking === 1 && f.indexOf("/newtabredir") == 0 ? (a = new RegExp("[?&]?url=([^&]*)(&|$)"), h = f.match(a), h && (f = f.indexOf("&be=1") >= 0 ? encodeURIComponent(atob(decodeURIComponent(h[1]))) : h[1])) : f = encodeURIComponent(n[u]("href")), clc.furl && !n[u]("data-private") ? o += "&url=" + f : clc.mfurl && (o += "&abc=" + f)); r && (o += "&source=" + r); c = ""; clc.mc && (c = "&c=" + ctcc++); l = "&" + o + c; _w.si_sbwu(l) || _w[e] && _w[e](l, n, i, s); break } if (t) break } } catch (v) { _w.SharedLogHelper ? SharedLogHelper.LogWarning("clickEX", null, v) : (new Image).src = _G.lsUrl + '&Type=Event.ClientInst&DATA=[{"T":"CI.Warning","FID":"CI","Name":"JSWarning","Text":' + v.message + "}]" } return !0 }; _w.si_sbwu || (_w.si_sbwu = function () { return !1 }), function () { _w._G && (_G.si_ct_e = "click") }(); function rdr_T (n) { var u = _w.event, f = !0, e = "getAttribute", i, t, r; if (navigator.cookieEnabled && _G && _G.SUIH && u && u.button < 2 && (t = u.target || u.srcElement)) { for (; t !== _d.body; t = t.parentNode)if (t.tagName == "A") break; i = t[e]("href"); var o = t[e]("h") || t[e]("_ct"), h = _w.sj_isAjax && t.host === location.host && t.pathname === "/search", c = t.hash ? t.search === _w.location.search : !1, s = !0; try { s = (_d.cookie.match(/SRCHUID/g) || []).length === 1 } catch (l) { } f = !(!h && o && "&" + o === n && _w.btoa && t.protocol && t.protocol.indexOf("http") > -1 && !c && s) } if (!f && i && i.indexOf(_G.gpUrl) < 0) { for (i = btoa(i).replace(/\+/g, "-").replace(/\//g, "_"), r = i.length - 1; r >= 0 && i.charCodeAt(r) == 61; r--); i = _G.gpUrl + "IG=" + _G.IG + "&" + n + "&SUIH=" + _G.SUIH + "&redir=" + i.substr(0, r + 1); t.setAttribute("href", i) } return f && _w.si_T && _w.si_T(n), !0 }; var perf; (function (n) { function f (n) { return i.hasOwnProperty(n) ? i[n] : n } function e (n) { var t = "S"; return n == 0 ? t = "P" : n == 2 && (t = "M"), t } function o (n) { for (var c, i = [], t = {}, r, l = 0; l < n.length; l++) { var a = n[l], o = a.v, s = a.t, h = a.k; s === 0 && (h = f(h), o = o.toString(36)); s === 3 ? i.push("".concat(h, ":").concat(o)) : (r = t[s] = t[s] || [], r.push("".concat(h, ":").concat(o))) } for (c in t) t.hasOwnProperty(c) && (r = t[c], i.push("".concat(e(+c), ':"').concat(r.join(","), '"'))); return i.push(u), i } for (var r = ["redirectStart", "redirectEnd", "fetchStart", "domainLookupStart", "domainLookupEnd", "connectStart", "secureConnectionStart", "connectEnd", "requestStart", "responseStart", "responseEnd", "domLoading", "domInteractive", "domContentLoadedEventStart", "domContentLoadedEventEnd", "domComplete", "loadEventStart", "loadEventEnd", "unloadEventStart", "unloadEventEnd", "firstChunkEnd", "secondChunkStart", "htmlEnd", "pageEnd", "msFirstPaint"], u = "v:1.1", i = {}, t = 0; t < r.length; t++)i[r[t]] = t; n.compress = o })(perf || (perf = {})); window.perf = window.perf || {}, function (n) { n.log = function (t, i) { var f = n.compress(t), r; f.push('T:"CI.Perf",FID:"CI",Name:"PerfV2"'); var e = "/fd/ls/lsp.aspx?", o = "sendBeacon", h = "<E><T>Event.ClientInst<\/T><IG>".concat(_G.IG, "<\/IG><TS>").concat(i, "<\/TS><D><![CDATA[{").concat(f.join(","), "}]\]><\/D><\/E>"), s = "<ClientInstRequest><Events>".concat(h, "<\/Events><STS>").concat(i, "<\/STS><\/ClientInstRequest>"), u = !_w.navigator || !navigator[o]; if (!u) try { navigator[o](e, s) } catch (c) { u = !0 } u && (r = sj_gx(), r.open("POST", e, !0), r.setRequestHeader("Content-Type", "text/xml"), r.send(s)) } }(window.perf); var perf; (function (n) { function a () { return c(Math.random() * 1e4) } function o () { return y ? c(f.now()) + l : +new Date } function v (n, r, f) { t.length === 0 && i && sb_st(u, 1e3); t.push({ k: n, v: r, t: f }) } function p (n) { return i || (r = n), !i } function w (n, t) { t || (t = o()); v(n, t, 0) } function b (n, t) { v(n, t, 1) } function u () { var u, f; if (t.length) { for (u = 0; u < t.length; u++)f = t[u], f.t === 0 && (f.v -= r); t.push({ k: "id", v: e, t: 3 }); n.log(t, o()); t = []; i = !0 } } function k () { r = o(); e = a(); i = !1; sj_evt.bind("onP1", u) } var s = "performance", h = !!_w[s], f = _w[s], y = h && !!f.now, c = Math.round, t = [], i = !1, l, r, e; h ? l = r = f.timing.navigationStart : r = _w.si_ST ? _w.si_ST : +new Date; e = a(); n.setStartTime = p; n.mark = w; n.record = b; n.flush = u; n.reset = k; sj_be(window, "load", u, !1); sj_be(window, "beforeunload", u, !1) })(perf || (perf = {})); _w.si_PP = function (n, t, i) { var r, o, l, h, e, c; if (!_G.PPS) { for (o = ["FC", "BC", "SE", "TC", "H", "BP", null]; r = o.shift();)o.push('"' + r + '":' + (_G[r + "T"] ? _G[r + "T"] - _G.ST : -1)); var u = _w.perf, s = "navigation", r, f = i || _w.performance && _w.performance.timing; if (f && u) { if (l = f.navigationStart, u.setStartTime(l), l >= 0) { for (r in f) h = f[r], typeof h == "number" && h > 0 && r !== "navigationStart" && r !== s && u.mark(r, h); _G.FCT && u.mark("FN", _G.FCT); _G.BCT && u.mark("BN", _G.BCT) } u.record("nav", s in f ? f[s] : performance[s].type) } e = "connection"; c = ""; _w.navigator && navigator[e] && (c = ',"net":"'.concat(navigator[e].type, '"'), navigator[e].downlinkMax && (c += ',"dlMax":"'.concat(navigator[e].downlinkMax, '"'))); _G.PPImg = new Image; _G.PPImg.src = _G.lsUrl + '&Type=Event.CPT&DATA={"pp":{"S":"' + (t || "L") + '",' + o.join(",") + ',"CT":' + (n - _G.ST) + ',"IL":' + _d.images.length + "}" + (_G.C1 ? "," + _G.C1 : "") + c + "}" + (_G.P ? "&P=" + _G.P : "") + (_G.DA ? "&DA=" + _G.DA : "") + (_G.MN ? "&MN=" + _G.MN : ""); _G.PPS = 1; sb_st(function () { u && u.flush(); sj_evt.fire("onPP"); sj_evt.fire(_w.p1) }, 1) } }; _w.onbeforeunload = function () { si_PP(new Date, "A") }; sj_evt.bind("ajax.requestSent", function () { window.perf && perf.reset() });
//]]></script>
</head>
<body id="bpage">
<script type="text/javascript">//<![CDATA[
var logMetaError = function (n) { (new Image).src = _G.lsUrl + '&Type=Event.ClientInst&DATA=[{"T":"CI.MetaError","FID":"CI","Name":"MetaJSError","Text":"' + escape(n) + '"}]' }, getHref = function () { return location.href }, regexEscape; try { regexEscape = function (n) { return n.replace(/([.?*+^$&[\]\\(){}|<>-])/g, "\\$1") }; function jsErrorHandler (n) { var s, r, y, p, u, f, w, e, h, c, o; try { if (s = "ERC", r = window[s], r = r ? r + 1 : 1, r === 16 && (n = new Error("max errors reached")), r > 16) return; window[s] = r; var l = n.error || n, b = '"noMessage"', k = n.filename, d = n.lineno, g = n.colno, nt = n.extra, a = l.severity || "Error", tt = l.message || b, i = l.stack, t = '"' + escape(tt.replace(/"/g, "")) + '"', it = new RegExp(regexEscape(getHref()), "g"); if (i) { for (y = /\(([^\)]+):[0-9]+:[0-9]+\)/g, u = {}; (p = y.exec(i)) !== null;)f = p[1], u[f] ? u[f]++ : u[f] = 1; e = 0; for (h in u) u[h] > 1 && (c = regexEscape(h), w = new RegExp(c, "g"), i = i.replace(w, e), i += "#" + e + "=" + c, e++); i = i.replace(it, "self").replace(/"/g, ""); t += ',"Stack":"' + (escape(i) + '"') } if (k && (t += ',"Meta":"' + escape(k.replace(it, "self")) + '"'), d && (t += ',"Line":"' + d + '"'), g && (t += ',"Char":"' + g + '"'), nt && (t += ',"ExtraInfo":"' + nt + '"'), tt === b) if (a = "Warning", t += ',"ObjectToString":"' + n.toString() + '"', JSON && JSON.stringify) t += ',"JSON":"' + escape(JSON.stringify(n)) + '"'; else for (o in n) n.hasOwnProperty(o) && (t += ',"' + o + '":"' + n[o] + '"'); var rt = (new Date).getTime(), ut = '"T":"CI.' + a + '","FID":"CI","Name":"JS' + a + '","Text":' + t + "", ft = "<E><T>Event.ClientInst<\/T><IG>" + _G.IG + "<\/IG><TS>" + rt + "<\/TS><D><![CDATA[[{" + ut + "}]]\]><\/D><\/E>", et = "<ClientInstRequest><Events>" + ft + "<\/Events><STS>" + rt + "<\/STS><\/ClientInstRequest>", v = new XMLHttpRequest; v.open("POST", "/fd/ls/lsp.aspx?", !0); v.setRequestHeader("Content-Type", "text/xml"); v.send(et); typeof sj_evt != "undefined" && sj_evt.fire("ErrorInstrumentation", t) } catch (ot) { logMetaError("Failed to execute error handler. " + ot.message) } } window.addEventListener && window.addEventListener("error", jsErrorHandler, !1); window.addEventListener || window.onerror || (window.onerror = function (n, t, i, r, u) { var f = "", e; typeof n == "object" && n.srcElement && n.srcElement.src ? f = "\"ScriptSrc = '" + escape(n.srcElement.src.replace(/'/g, "")) + "'\"" : (n = "" + n, f = '"' + escape(n.replace(/"/g, "")) + '","Meta":"' + escape(t) + '","Line":' + i + ',"Char": ' + r, u && u.stack && (e = new RegExp(regexEscape(getHref()), "g"), f += ',"Stack":"' + escape(u.stack.replace(e, "self").replace(/"/g, "") + '"'))); (new Image).src = _G.lsUrl + '&Type=Event.ClientInst&DATA=[{"T":"CI.GetError","FID":"CI","Name":"JSGetError","Text":' + f + "}]"; typeof sj_evt != "undefined" && sj_evt.fire("ErrorInstrumentation", f) }) } catch (e) { logMetaError("Failed to bind error handler " + e.message) }; var sj_b = _d.body; _w.InstLogQueueKeyFetcher = { Get: function (n) { var t = "eventLogQueue"; return n.indexOf("proactive") == 1 || n.indexOf("search") == 1 || n.indexOf("zinc") == 1 ? t + "_Online" : t + "_Offline" }, GetSharedLocation: function () { return "eventLogQueue_Shared" }, CanUploadSharedMessages: function (n) { return _w.useSharedLocalStorage && n.indexOf("AS/API") === 1 ? !0 : !1 } }; _w.LogUploadCapFeatureEnabled = !1; var CoreUtilities; (function (n) { function i (n) { for (var r = [], i = 1; i < arguments.length; i++)r[i - 1] = arguments[i]; return t.apply(null, [null, n].concat(r)) } function t (n, t) { for (var i = [], r = 2; r < arguments.length; r++)i[r - 2] = arguments[r]; return function () { for (var f, r = [], u = 0; u < arguments.length; u++)r[u] = arguments[u]; if (r && r.length !== 0) for (f in i) i.hasOwnProperty(f) && r.push(i[f]); else r = i; return t.apply(n, r) } } function r () { for (var n, r, t = [], i = 0; i < arguments.length; i++)t[i] = arguments[i]; for (n = t[0], r = 1; r < t.length; r++)if (n) n = n[t[r]]; else return null; return n } n.deferFunction = i; n.deferMethod = t; n.getProperty = r; window.sj_df = i; window.sj_dm = t; window.sj_gp = r })(CoreUtilities || (CoreUtilities = {})); _w.useSharedLocalStorage = !1;
//]]></script>
<script type="text/javascript" crossorigin="anonymous"
src="/rp/5_njacTHNI5UUdpA3bwOxQr_P0s.br.js"></script>
<script type="text/javascript">//<![CDATA[
var __spreadArray = this && this.__spreadArray || function (n, t, i) { if (i || arguments.length === 2) for (var r = 0, f = t.length, u; r < f; r++)!u && r in t || (u || (u = Array.prototype.slice.call(t, 0, r)), u[r] = t[r]); return n.concat(u || Array.prototype.slice.call(t)) }; define("clientinst_xls", ["require", "exports"], function (n, t) { function si () { function n (n, t) { typeof i[n] == "undefined" && (i[n] = t) } _w.ClientInstConfig || (_w.ClientInstConfig = {}); i = ClientInstConfig; n("flushInterval", 5e3); n("retryInterval", 1e3); n("maxStorageUse", 5e5); n("maxBatchSize", 1e5); n("queueDumpInterval", 500); n("waitForPageInfo", !1); n("pageInfoTimeout", 5e3); n("logUploadCapSizeInChar", 15728640 * .5); n("logUploadCapIntervalInDays", 30); n("isInstrumentationEnabled", !0); n("maxDirectErrors", 3) } function yt () { ut = 0; p = _G.ST ? _G.ST.getTime() : 0 } function f (n, t, r, u) { var f, h, e, o; if (i.isInstrumentationEnabled) if (f = { errorType: n, failCount: t }, d(f), u) { vt++; vt > i.maxDirectErrors && (f.errorType = "Overloaded", i.isInstrumentationEnabled = !1); h = { impressionGuid: r, previousImpressionGuid: null, timestamp: (new Date).getTime(), type: s.EVENT, data: { eventType: rt, eventData: f } }; e = et([h], []); try { ht(e) || (o = sj_gx(), o.open("POST", _G.XLS, !0), o.send(e)) } catch (c) { throw c; } } else st(rt, f, null, null, null, r, null, null) } function hi () { function t () { o || (o = function () { }); pt(); f("PageInfoTimedOut", 0, _G.IG) } si(); yt(); typeof h != "undefined" && h.bind && h.bind("ajax.unload", yt); try { u = _w.localStorage; r.initialize() } catch (e) { } var n = null; i.waitForPageInfo && (n = sb_st(t, i.pageInfoTimeout)); sj_evt.bind("ClientInst.PageInstInfo", function (t) { n && (sb_ct(n), n = null); o = t[1]; o && pt() }) } function pt () { for (var n = 0, t, i; ft.length > 0;) { try { i = ft.shift(); t = JSON.parse(i) } catch (r) { n++; continue } o && o(t.data); w(t) } n > 0 && f("InvalidIncompleteImpressions", n, _G.IG) } function w (n) { r.append(n); l() } function a (n) { return JSON.stringify(n).replace(/]]>/g, "]]]\]><![CDATA[>") } function ci (n, t, i) { var f, u, r; t.push("<E>", "<T>Event.", n.data.eventType, "<\/T>", "<IG>", n.impressionGuid, "<\/IG>"); n.previousImpressionGuid && t.push("<PrevIG>", n.previousImpressionGuid, "<\/PrevIG>"); n.dominantImpressionGuid && n.previousImpressionGuid && t.push("<DominantIG>", n.dominantImpressionGuid, "<\/DominantIG>"); f = n.data.dataSources; f && t.push("<DS><![CDATA[", a(f), "]\]><\/DS>"); u = n.data.pageLayout; u && b(u) && t.push("<Page><L><![CDATA[", a(u), "]\]><\/L><\/Page>"); r = n.data.eventData; r || (r = n.data.eventData = {}); r.UTS = i; t.push("<D><![CDATA[", a(r), "]\]><\/D>", "<TS>", n.timestamp, "<\/TS>", "<\/E>") } function b (n) { var t = !1, i; try { n instanceof Array ? t = n.every(b) : (t = !!n.T, i = n.L, t && i && (t = b(i))) } catch (r) { return SharedLogHelper.LogWarning("PageLayoutValidationException", null, r), !1 } return t || SharedLogHelper.LogWarning("PageLayoutValidationException", JSON ? JSON.stringify(n) : n, null), t } function k (n, t, i) { n.push('<requestInfo key="', t, '" value="', i, '"/>') } function li (n, t, i) { function f (n) { return n ? n.replace(/&/g, "&amp;").replace(/"/g, "&quot;") : "" } var r = n.data, e, u, c, o, s, h; t.push("<Group>", "<M>", "<IG>", n.impressionGuid, "<\/IG>", "<DS><![CDATA[", a(r.dataSources), "]\]><\/DS>"); e = r.enrichedClientInfo; e || (e = {}); e.ImpressionUrl = r.impressionUrl; _G.AppVer && (e.ResourcesVersion = _G.AppVer); u = n.data.eventData; u || (u = n.data.eventData = {}); u.EnrichedClientInfo = e; u.TS = r.clientTimestamp; u.UTS = i; c = r.uxClassification; c && (u.UxClassification = c); _w.sj_cook && sj_cook.parse && (u.Cookies = sj_cook.parse()); t.push("<D><![CDATA[", a(u), "]\]><\/D>"); t.push("<Page>", "<Name>", r.pageName, "<\/Name>"); o = r.layoutNodes; o && b(o) && t.push("<L><![CDATA[", a(o), "]\]><\/L>"); t.push("<\/Page>", "<TS>", n.timestamp, "<\/TS>", "<Ovr>"); k(t, "RawQuery", f(r.rawQuery)); k(t, "IsQuery", f(r.isQuery.toString())); k(t, "Form", f(r.form)); s = r.userInfoOverrides; for (h in s) s.hasOwnProperty(h) && k(t, f(h), f(s[h])); t.push('<userInfo key="AppName" value="', f(r.appName), '"/>', "<\/Ovr>", "<\/M>", "<\/Group>") } function d (n) { var t = window.location.href, i, r, u; return v && t.indexOf(v) === 0 || (i = t.indexOf("?"), i < 0 && (i = t.indexOf("#")), v = i < 0 ? t : t.substring(0, i), r = _w.ThresholdUtilities, r && (u = r.getUrlParameter(t, "FORM"), u && (v += "?FORM=" + u))), n.CurUrl = v, n.Pivot = _G.PN, typeof ThresholdUtilities != "undefined" && _w.SearchAppWrapper && _w.SearchAppWrapper.CortanaApp && ThresholdUtilities.getCortanaHeaders(function (t) { if (t) { var i; (i = t["X-BM-ClientFeatures"]) && (n.CF = i); (i = t["X-BM-FlightedFeatures"]) && (n.FF = i) } }), n } function et (n, t) { var r = ["<ClientInstRequest>"], u = (new Date).getTime(), f = _G.CID || sj_cook.get(lt, lt), e, i, o; if (f && r.push("<CID>", f, "<\/CID>"), n.length > 0) { for (r.push("<Events>"), i = 0; i < n.length; i++)e = n[i], ci(e, r, u); r.push("<\/Events>") } if (t.length > 0) for (i = 0; i < t.length; i++)o = t[i], li(o, r, u); return r.push("<\/ClientInstRequest>"), r.join("") } function l (n, t) { if (n === void 0 && (n = !1), t === void 0 && (t = !0), i.isInstrumentationEnabled) { var r = n ? c.retryQueue : c.mainQueue; !r.flushTimeoutHandle && typeof tt != "undefined" && tt.setTimeout && (r.flushTimeoutHandle = tt.setTimeout(function () { return wt(n, r, !1, t) }, r.getInterval())) } } function wt (n, t, u, o, s) { var it, v, h, p, g, w, b, nt, k, y, d, rt, a, tt; if ((o === void 0 && (o = !0), i.isInstrumentationEnabled) && (sb_ct(t.flushTimeoutHandle), t.flushTimeoutHandle = null, !n || !c.mainQueue.inProgressUpload)) { if (!n && c.retryQueue.inProgressUpload && c.retryQueue.inProgressUpload.abort(), t.inProgressUpload) if (it = (new Date).getTime() - t.requestSentTimestamp, u || it > i.flushInterval) t.inProgressUpload.abort(), u ? f("SendAbortedForceFlush", 1, _G.IG) : f("SendTimedOut", 1, _G.IG); else return; if (v = r.getBatch(n), v.length != 0) { for (h = {}, p = 0; p < v.events.length; p++)g = v.events[p], w = g.flights, h[w] || (h[w] = { events: [], mpis: [] }), h[w].events.push(g.log); for (b = 0; b < v.masterPageImpressions.length; b++)nt = v.masterPageImpressions[b], k = nt.flights, h[k] || (h[k] = { events: [], mpis: [] }), h[k].mpis.push(nt.log); for (y in h) { if (d = et(h[y].events, h[y].mpis), rt = s && s.useSendBeacon || !1, (rt || ii()) && ri(_G.XLS, d)) { r.clearSentItems(n) && !n && l(!1, s); l(!0, s); continue } a = sj_gx(); a.open("POST", _G.XLS, o); tt = sj_df(ai, a, t, n); o && (i.flushInterval >= 1e3 && (a.timeout = i.flushInterval), a.onload = tt); a.setRequestHeader("Content-type", "text/xml"); y !== "" && (a.setRequestHeader("X-MSEdge-ExternalExpType", "JointCoord"), a.setRequestHeader("X-MSEdge-ExternalExp", y)); t.inProgressUpload = a; t.requestSentTimestamp = (new Date).getTime(); a.send(d); o || tt(null) } } } } function ai (n, t, i, u) { if (t.readyState === 4) { i.inProgressUpload = null; var f = Math.floor(t.status / 100); f === 2 ? (r.clearSentItems(u) && !u && l(!1), l(!0)) : f === 4 ? (r.markFailedItems(!0, u), l(!0)) : r.markFailedItems(!1, u); u && r.recordRetryAttempt() } } function bt (n, t, i) { n === void 0 && (n = !1); t === void 0 && (t = !0); wt(!1, c.mainQueue, n, t, i) } function ot (n, t, i, r, u, f, e, o, h) { var c = {}, l, a; if (d(c), t) if (typeof t == "string") c.Text = t; else for (l in t) t.hasOwnProperty(l) && (c[l] = t[l]); return i && (c.T = "CI." + i), a = h || (new Date).getTime(), c.TS = a, c.RTS = a - p, c.SEQ = ut++, { type: s.EVENT, impressionGuid: f != null ? f : _G.IG, previousImpressionGuid: e, timestamp: a, data: { eventType: n, eventData: c, dataSources: r, pageLayout: u }, dominantImpressionGuid: o } } function kt (n) { var i = et(n, []), t; ht(i) || (t = sj_gx(), t.open("POST", _G.XLS), t.setRequestHeader("Content-type", "text/xml"), t.send(i)) } function st (n, t, r, u, f, e, o, s, h) { var c, l, a; if (EventsToDuplicate && n === "Click" && EventsToDuplicate.indexOf("duplicateClickOnLs") >= 0 && (c = _G.gpUrl + "IG=" + _G.IG + "&ID=" + t.AppNS + "," + t.K, ht("", c) || (_G.GPImg = new Image, _G.GPImg.src = c), n = "XlsDelayedClick"), !_G.XLS) throw new Error("_G.XLS is necessary for clientinst_xls, but it is not defined"); i.isInstrumentationEnabled && (l = ot(n, t, r, u, f, e, o, s, h), EventsToDuplicate && (EventsToDuplicate.indexOf("ALL") >= 0 || EventsToDuplicate.indexOf(n) >= 0) && (a = ot("Immediate" + n, t, r, u, f, e, o, s, h), kt([a])), w(l)) } function dt (n) { var t, r, u; i.isInstrumentationEnabled && (o && o(n), n.clientTimestamp || (n.clientTimestamp = (new Date).getTime()), t = n.eventData, t || (t = n.eventData = {}), d(t), r = { type: s.MASTER_PAGE_IMPRESSION, impressionGuid: n.impressionGuid ? n.impressionGuid : _G.IG, previousImpressionGuid: null, timestamp: n.clientTimestamp, data: n }, EventsToDuplicate && (EventsToDuplicate.indexOf("ALL") >= 0 || EventsToDuplicate.indexOf("masterPageImpression") >= 0) && (u = ot("ImmediateMaster", t, n.impressionUrl, n.dataSources, n.layoutNodes, n.impressionGuid, null, null), kt([u])), o || !i.waitForPageInfo ? w(r) : ft.push(JSON.stringify(r))) } function ii () { return _G !== undefined && _G.EF !== undefined && _G.EF.logsb !== undefined && _G.EF.logsb === 1 } function ht (n, t) { return (t === void 0 && (t = _G.XLS), !ii()) ? !1 : ri(t, n) } function ri (n, t) { var i = "sendBeacon", r = !1; if (navigator && navigator[i]) try { r = navigator[i](n, t) } catch (u) { } return r } function ui (n, t) { n === void 0 && (n = !0); r.dumpToStorage(); bt(!0, n, t) } function nt () { r.dumpToStorage(); bt(!1) } function fi () { r.dumpToStorage(!0) } function ct () { r.dumpToStorage() } function ei () { y = null; _CachedFlights = undefined } var r, c, gt, ni, ti, g; t.__esModule = !0; t.ResetState = t.SaveLogsToLocalStorage = t.SaveLogsToSharedStorage = t.FlushMainQueueDontForce = t.ForceFlush = t.Log2 = t.LogInstrumented = t.Log = t.LogMasterPageImpression = t.LogEvent = void 0; var tt = n("env"), it = n("event.native"), h = n("event.custom"), e = "Shared", s; (function (n) { n[n.EVENT = 0] = "EVENT"; n[n.MASTER_PAGE_IMPRESSION = 1] = "MASTER_PAGE_IMPRESSION" })(s || (s = {})); var lt = "MUID", y = null, rt = "CIQueueError", i, oi = 864e5, ut, p, u, ft = [], o, v, at, vt = 0; (function (n) { function k () { return c && i.isInstrumentationEnabled } function d (n) { var i, t; if (n === void 0 && (n = !1), k()) { i = ct(n); try { t = n ? v : h; u[t] = i; u[t + "_logUploadIntervalStartDate"] = o; u[t + "_uploadedLogSizeInInterval"] = r } catch (f) { if (f.name.toLowerCase().indexOf("quota") >= 0) c = !1; else throw f; } } } function p () { k() && (a && sb_ct(a), a = sb_st(d, i.queueDumpInterval)) } function tt (n, t) { var i = JSON.stringify(n), r = i.length + 3; return n.size = r, t ? i.replace('"size":0', '"size":' + r) : i } function it (n) { return y === null && typeof _CachedFlights != "undefined" && _CachedFlights.sort && (y = _CachedFlights.sort().join(",")), { log: n, lastSendErrorTimeStamp: 0, inProgress: !1, size: 0, flights: y } } function ut () { var n, r, i; if (u) { if (at(), n = u[h], t = [], typeof n == "string" || n && n.length !== 0) try { if (t = JSON.parse(n), t.some(function (n) { return !n.log })) f("PrimaryQueueRestoreInvalidItems", t.length, _G.IG), t = []; else if (r = t.length, r > 0) { for (i = 0; i < r; i++)t[i].inProgress = !1; l() } } catch (e) { f("PrimaryQueueRestoreFailed", 0, _G.IG) } u[h] = "[]"; c = !0 } } function ft (n) { var a = [], y = [], o = n ? e[0] : t, c, h, p, w, l, r, b; if (nt) { if (c = u[v], typeof c == "string" && c.length !== 0) try { h = JSON.parse(c); h.some(function (n) { return !n.log }) ? f("SharedQueueRestoreInvalidItems", h.length, _G.IG) : o ? Array.prototype.push.apply(o, h) : o = h } catch (k) { f("SharedQueueRestoreFailed", 0, _G.IG) } u[v] = "[]" } if (o) for (p = 0, w = o.length, l = 0; l < w; l++)if (r = o[l], n || !r.lastSendErrorTimeStamp) if (p += r.size, p <= i.maxBatchSize) r.inProgress = !0, b = r.log, b.type == s.MASTER_PAGE_IMPRESSION ? y.push(r) : a.push(r); else break; return { events: a, masterPageImpressions: y, length: a.length + y.length, isRetryBatch: n } } function et (n) { return t = t.filter(function (t) { return !t.inProgress && (!n || !!t.lastSendErrorTimeStamp) }), p(), t.length > 0 } function ot (n) { return n.log.type === s.EVENT && n.log.data && n.log.data.eventType === rt } function st (n, i) { for (var u = [], h = i ? e[0] : t, o = 0, r, s, c; o < h.length;)r = h[o], r.inProgress ? n ? (h.splice(o, 1), ot(r) || (r.lastSendErrorTimeStamp = (new Date).getTime(), u.push(r))) : (r.inProgress = !1, o++) : o++; s = u.length; s == 1 ? f("InvalidLogMessage", 1, u[0].log.impressionGuid) : s > 0 && (c = s / 2, e.push(u.slice(0, c)), e.push(u.slice(c))); p() } function ht () { var n, t, i; if (e.length > 0) { for (n = e[0], t = 0; t < n.length;)i = n[t], i.inProgress ? n.splice(t, 1) : t++; n.length == 0 && e.shift() } } function ct (n) { var c = JSON.stringify(t), e = c.length - i.maxStorageUse, o = t.length, u, r, s, h; if (e > 0) for (u = 0, r = 0; r < o; r++)if (s = t[r].size, u += s + 1, u >= e) { t.splice(0, r + 1); f("QueueOverflow", r + 1, _G.IG, !0); break } return h = JSON.stringify(t), n && t.splice(0, o), h } function lt (n) { var i = it(n); tt(i, !1); vt(i.size) && t.push(i); p() } function at () { var t = h + "_logUploadIntervalStartDate", f = h + "_uploadedLogSizeInInterval", n; o = u[t]; r = u[f]; n = sb_gt(); o == undefined || r == undefined ? w(n) : g(o, n) >= i.logUploadCapIntervalInDays && w(n) } function w (n) { o = n; r = 0 } function g (n, t) { var i = t - n; return i / oi } function vt (n) { var t, u; return i.isInstrumentationEnabled ? LogUploadCapFeatureEnabled ? (t = sb_gt(), g(o, t) >= i.logUploadCapIntervalInDays && w(t), r >= i.logUploadCapSizeInChar) ? !1 : (u = r + n, u >= i.logUploadCapSizeInChar) ? (f("LogUploadSizeLimitReached", 1, _G.IG, !0), r = i.logUploadCapSizeInChar, !1) : (r = u, !0) : !0 : !1 } var t = [], o, r, c = !1, a = null, e = [], b = _w.location.pathname, h = InstLogQueueKeyFetcher.Get(b), v = InstLogQueueKeyFetcher.GetSharedLocation(), nt = InstLogQueueKeyFetcher.CanUploadSharedMessages(b); n.dumpToStorage = d; n.initialize = ut; n.getBatch = ft; n.clearSentItems = et; n.markFailedItems = st; n.recordRetryAttempt = ht; n.append = lt })(r || (r = {})); c = { mainQueue: { getInterval: function () { return i.flushInterval } }, retryQueue: { getInterval: function () { return i.retryInterval } } }; t.LogEvent = st; t.LogMasterPageImpression = dt; gt = function (n, t, r, u) { for (var e = [], f = 4; f < arguments.length; f++)e[f - 4] = arguments[f]; i.isInstrumentationEnabled && (at || (g("Init", "CI", "Base"), at = !0), g(n, t, r, u, e)) }; t.Log = gt; ni = function (n, i, r, u, f, e, o) { t.Log2(n, i !== null && i !== void 0 ? i : r, null, null, u, f, o) }; t.LogInstrumented = ni; ti = function (n, t, i, r, u, f, e) { var o = Object.keys(e).reduce(function (n, t) { return __spreadArray(__spreadArray([], n, !0), [t, e[t]], !1) }, []); i && o.push("service", i); r && o.push("scenario", r); u && o.push("appNS", u); f && o.push("kValue", f); g(n, null, t, !1, o) }; t.Log2 = ti; g = function (n, t, r, u, f) { var a, e, c, l, o, h, v; if (i.isInstrumentationEnabled) { if (a = _G.IG, e = {}, f && f.length > 0 && f.length % 2 == 0) for (c = 0; c < f.length; c += 2)(l = f[c], l) && (o = l.toLowerCase(), h = f[c + 1], o === "impressionguid" ? a = h : o === "service" ? e.Service = h : o === "scenario" ? e.Scenario = h : o === "appns" ? e.AppNS = h : o === "k" || o === "kvalue" ? e.K = h : o === "pos" ? e.Pos = h : e[l] = h); v = (new Date).getTime(); e.T = "CI.".concat(n); e.TS = v; e.RTS = v - p; e.SEQ = ut++; e.Name = r !== null && r !== void 0 ? r : ""; e.FID = typeof t != "number" ? t !== null && t !== void 0 ? t : "" : ""; e.hasOwnProperty("K") || typeof t != "number" || (e.K = t); d(e); w({ type: s.EVENT, impressionGuid: a, previousImpressionGuid: null, timestamp: p, data: { eventType: "ClientInst", eventData: e } }) } }; t.ForceFlush = ui; hi(); t.FlushMainQueueDontForce = nt; t.SaveLogsToSharedStorage = fi; t.SaveLogsToLocalStorage = ct; t.ResetState = ei; typeof h != "undefined" && h.bind && (h.bind("onP1", nt, !0), h.bind("ajax.postload", nt, !0)); typeof it != "undefined" && it.bind && it.bind(_w, "beforeunload", ct, !1); _w.Log = { Log: t.Log }; _w.Log2 = { LogEvent: st, LogMasterPageImpression: dt, ForceFlush: ui, FlushMainQueueDontForce: nt, SaveLogsToSharedStorage: fi, ResetState: ei, SaveLogsToLocalStorage: ct }; _w.Shared2 = _w.Shared2 || {}; _w.Shared2.Log = { Log: t.Log, LogInstrumented: t.LogInstrumented }; _w.sj_log2 = t.Log2 }); (function (n) { var i, r, t; if (document.querySelector) { i = []; r = "ad"; function u () { var d = sb_gt(), v = document.documentElement, h = document.body, t = 0, u = -1, g = v.clientHeight, y = ["#b_results ." + _G.adc, ".sb_adsWv2", ".ads"], r, e, o, b, l, s, n, f, a, k; if (h) { r = 0; e = document.querySelector("#b_pole .pa_carousel_mlo"); e && (r = e.offsetHeight, u = e.offsetTop); var p = document.querySelector("#b_results #productAdCarousel"), c = document.querySelector("#b_results .pa_b_supertop"), w = document.querySelector("#b_results .bn_wide"); for (c ? (u = c.offsetTop, r = c.offsetHeight) : w ? r += w.offsetHeight : p && (r += p.offsetHeight), t = r, o = 0; o < y.length; o++)for (b = y[o], l = document.querySelectorAll(b), s = 0; s < l.length; s++)n = l[s], n && n.className.indexOf("b_adTop") !== -1 && (f = n.nextSibling, f && f instanceof Element && _w.getComputedStyle && (a = _w.getComputedStyle(f)) && a ? (k = parseFloat(a.marginTop), t += f.offsetTop - n.offsetTop - k) : t += n.offsetHeight, u === -1 && (u = n.offsetTop)); t === 0 && (t = -1); i = [u, t, v.clientWidth, g, h.offsetWidth, h.offsetHeight, sb_gt() - d] } } n ? (t = n.onbeforefire, n.onbeforefire = function () { t && t(); u(); n.mark(r, i) }) : (t = si_PP, si_PP = function () { u(); var n = '"' + r + '":[' + i.join() + "]"; _G.C1 = _G.C1 ? _G.C1 + "," + n : n; t.apply(null, [].slice.apply(arguments)) }) } })(_w.pp); _G.AppVer = "36188618"; var UndersideDefaultTrustedTypesPolicy; (function () { function r () { var n = window.trustedTypes; n && n.createPolicy && n.createPolicy("default", { createHTML: f, createScript: function (n) { return n }, createScriptURL: u }) } var i = ["www.bing.com", "www2.bing.com", "edgeservices.bing.com", "r.bing.com", "4.bing.com", "services.bingapis.com", "sydney.bing.com", "www.bingapis.com", "www.bing-exp.com", "www.staging-bing-int.com", "snrproxy.binginternal.com", "snrproxync.binginternal.com", "snrproxysc.binginternal.com", "snrproxyeast.binginternal.com", "snrproxywest.binginternal.com", "cetonc.binginternal.com", "cetosc.binginternal.com", "cetoeast.binginternal.com", "cetowest.binginternal.com", "rafd.staging-bing-int.com", "r.staging-bing-int.com"], u = function (n) { return t(n) ? n : (console.log("CreateScriptURL URL check failed:" + n), "") }, f = function (t) { var i = new RegExp("<script(.*?)(/>|s/>|>.*?<\/script>)", "gi"), r = new RegExp("src=['\"](.*?)['\"]", "gi"), u = new RegExp("<link(.*?)(/>|s/>|>.*?<\/link>)", "gi"), f = new RegExp("href=['\"](.*?)['\"]", "gi"); return n(t, i, r) && n(t, u, f) ? t : "" }, n = function (n, i, r) { for (var f, u; (f = i.exec(n)) !== null;)for (f.index === i.lastIndex && i.lastIndex++, u = void 0; (u = r.exec(f[0])) !== null;)if (console.log(u), u.index === r.lastIndex && r.lastIndex++, console.log(u[1]), !t(u[1])) return console.log("CreateHTML URL check failed :" + u[1]), !1; return !0 }, t = function (n) { var t = document.createElement("a"); return (t.href = n, t.hostname !== "localhost" && !i.some(function (n) { return t.hostname === n })) ? !1 : !0 }; r() })(UndersideDefaultTrustedTypesPolicy || (UndersideDefaultTrustedTypesPolicy = {})); var EdgeServicesXMLHttpRequest; (function (n) { function u (n) { n != null && n.Reroutes != null && (t = n.Reroutes, i = window.XMLHttpRequest.prototype.open, window.XMLHttpRequest.prototype.open = f) } function f (n, r, u, f, s) { var h, c, l, a; if (t == null || t.length == 0) return i.call(this, n, r, u, f, s); for (h = r, c = 0; c < t.length; c++)if (l = t[c], a = e(r, l.OriginalPath), l.Enabled && a != null) { h = o(a, r, l.RedirectPath); console.log("rerouted original url: " + r + " to new url: " + h); break } return i.call(this, n, h, u, f, s) } function e (n, t) { var i, u; if (!r(n) || !r(t)) return null; try { i = new URL(n, "https://edgeservices.bing.com") } catch (f) { return null } return (u = i.pathname, u.toLowerCase() != t.toLowerCase()) ? null : i } function o (n, t, i) { return r(i) ? i + n.search + n.hash : t } function r (n) { return n != null && n.trim() !== "" && n.startsWith("/") } var t, i; n.init = u })(EdgeServicesXMLHttpRequest || (EdgeServicesXMLHttpRequest = {})); var rerouteConfig = { "Reroutes": [{ "OriginalPath": "/financeapi/quote", "RedirectPath": "/edgesvc/thirdpartyaj/financeapi/quote", "Enabled": true }, { "OriginalPath": "/financeapi/financials", "RedirectPath": "/edgesvc/thirdpartyaj/financeapi/financials", "Enabled": true }, { "OriginalPath": "/covidans/locations", "RedirectPath": "/edgesvc/thirdpartyaj/covidans/locations", "Enabled": true }, { "OriginalPath": "/covidans/falcon", "RedirectPath": "/edgesvc/thirdpartyaj/covidans/falcon", "Enabled": true }, { "OriginalPath": "/covid-ans/getTab", "RedirectPath": "/edgesvc/thirdpartyaj/covidans/getTab", "Enabled": true }, { "OriginalPath": "/covid-vaccine/getMapData", "RedirectPath": "/edgesvc/thirdpartyaj/covidvaccine/getMapData", "Enabled": true }, { "OriginalPath": "/sharing/getsharecommoncontrol", "RedirectPath": "/edgesvc/thirdpartyaj/sharing/getsharecommoncontrol", "Enabled": true }, { "OriginalPath": "/sharing/getsharelink", "RedirectPath": "/edgesvc/thirdpartyaj/sharing/getsharelink", "Enabled": true }] }; EdgeServicesXMLHttpRequest.init(rerouteConfig);; var uxVariants = { "codexship": "1", "codexvar": "1", "convscope": "1", "edge_feature.frame_unrestricted": "1", "edge_feature.scope_channeldev": "1", "edge_feature.scope_chat": "1", "edge_feature.scope_coauthor": "1", "edge_feature.scope_noheader": "1", "feature.codexemailcc": "1", "feature.codexwinenable": "1", "feature.codexwingreet2": "1", "feature.codexwlong": "1", "feature.sydnoauth": "1", "feature.sydopcdlresponse2k": "1", "feature.sydopcdltokens19k": "1", "feature.sydoppdlresponse2k": "1", "feature.sydoppdltokens19k": "1", "feature.sydoptcricketansgnd": "1", "feature.sydoptdagslnv1": "1", "feature.sydoptresponseos": "1", "feature.sydperfwrapinput": "1", "feature.sydsid0329resp": "1", "feature.sydspcrsrvcf": "1", "feature.sydsuppolemon": "1", "feature.sydsuppolers": "1", "feature.udsedgedescpt": "1", "feature.udsensumcard": "1", "feature.udsfencurated3p": "1", "feature.udsfencurated3p3": "1", "feature.udsfencurated3pco": "1", "feature.udsfencurated3pco2": "1", "feature.udsfencuratedann": "1", "feature.udsfencurationgl": "1", "feature.udsilfdbk": "1", "feature.udsrstconv": "1", "feature.udssydshare": "1", "serpvertical": "UNDERSIDE", "underside": "1", "undersideex": "COMPOSE", "undersidev2": "1" }; var globalConsoleConfig = { "EnableDevMode": false, "GDPR_Regulated": false, "RefreshAccountLinkEndpoint": "/edgesvc/orgid/acclink/refresh", "RefreshRewardsUserStatusEndpoint": "/edgesvc/waitlist/refreshcook", "RefreshUserTokenEndpoint": "/edgesvc/orgid/idtoken/refresh", "UserStatusEndpoint": "/edgesvc/userstatus", "EnableClientDebugLog": false, "LogLevel": 1 }; var initUserStatus = { "CodexEnabled": true, "UserEligible": true, "UserSignedIn": true, "Identity": "123456", "Name": null, "Provider": "MSA", "PrefAuth": "MSA" };;
//]]></script>
<script type="text/javascript" crossorigin="anonymous"
src="/rp/v-yt__JfmqJs4YgvJl5rbreVtgc.br.js"></script>
<script type="text/javascript" crossorigin="anonymous"
src="/rp/jHEvPxlSHGjcxa0R2DNga7EYDSs.br.js"></script>
<script type="text/javascript" crossorigin="anonymous"
src="/rp/DFOfl8RS5jXmhEQw7Le9_v3N7-s.br.js"></script>
<script type="text/javascript" crossorigin="anonymous"
src="/rp/BejEPtU8DGwuoA4_8xk4-Td54QI.br.js"></script>
<!-- Trusted types script must be first JS script to load --><!-- Custom Edge Services XMLHttpRequest -->
<script type="text/javascript">//<![CDATA[
_G.FCT = new Date;
//]]></script>
<script type="text/javascript">//<![CDATA[
_G.BCT = new Date;
//]]></script>
<style type="text/css">
#b_header #id_h {
content-visibility: visible
}
.uds_coauthor_wrapper {
font-family: 'Segoe UI', "-apple-system", Segoe, Tahoma, HelveticaNeue, Roboto, Arial, Verdana, sans-serif;
color: #000;
height: 100vh;
width: 100%
}
.uds_coauthor_wrapper .sidebar {
width: 100%;
position: absolute;
overflow: hidden;
display: flex;
flex-direction: column;
align-items: center;
padding: 10px;
height: 100%;
overflow: auto;
box-sizing: border-box
}
.uds_coauthor_wrapper .sidebar.detached {
margin-top: 0
}
.uds_coauthor_wrapper .child {
width: 100%;
box-sizing: border-box;
padding: 12px;
background: #fff;
border-radius: 5px;
box-shadow: 0 2px 4px rgba(0, 0, 0, .14), 0 0 2px rgba(0, 0, 0, .12);
margin-bottom: 10px;
display: flex;
flex-direction: column
}
.uds_coauthor_wrapper .child:last-child {
flex-grow: 1;
margin-bottom: 0
}
.uds_coauthor_wrapper textarea {
font-family: 'Segoe UI', "-apple-system", Segoe, Tahoma, HelveticaNeue, Roboto, Arial, Verdana, sans-serif;
padding: 8px;
border-radius: 10px;
border: 1px solid #e2e2e2;
box-shadow: 0 1px 1px #7a7a7a;
resize: vertical
}
.uds_coauthor_wrapper textarea#prompt_text {
scroll-padding-bottom: 22px;
padding-bottom: 22px
}
.uds_coauthor_wrapper textarea:focus {
box-shadow: 0 2px 0 #174ae4
}
.uds_coauthor_wrapper textarea:focus-visible {
border: 1px solid #e2e2e2;
outline: none
}
.uds_coauthor_wrapper #letter_counter {
display: flex;
position: relative;
color: #717171;
background: #fff;
left: 1px;
padding-left: 8px;
font-size: 12px;
line-height: 16px;
font-weight: 400;
bottom: 20px;
width: calc(100% - 20px);
height: 19px;
margin-bottom: -19px;
border-bottom-left-radius: 10px
}
.uds_coauthor_wrapper .button {
width: 100%;
background: linear-gradient(81.62deg, #2870ea 8.72%, #1b4aef 85.01%);
align-self: center;
border: none;
border-radius: 20px;
color: #fff;
padding: 7px 10px;
line-height: 22px;
font-size: 14px;
font-weight: 600;
font-family: 'Segoe UI', "-apple-system", Segoe, Tahoma, HelveticaNeue, Roboto, Arial, Verdana, sans-serif;
box-sizing: border-box;
text-decoration: none;
text-align: center
}
.uds_coauthor_wrapper .button:hover {
box-shadow: 0 1.2px 3.6px rgba(0, 0, 0, .1), 0 6.4px 14.4px rgba(0, 0, 0, .13);
cursor: pointer;
text-decoration: none
}
.uds_coauthor_wrapper .button.disabled {
cursor: default;
background: linear-gradient(0deg, rgba(255, 255, 255, .8), rgba(255, 255, 255, .8)), linear-gradient(81.62deg, #2870ea 8.72%, #1b4aef 85.01%)
}
.uds_coauthor_wrapper .button.secondary {
background: #fff;
border: 1px solid #174ae4;
color: #174ae4
}
.uds_coauthor_wrapper .button.disabled:hover {
box-shadow: none
}
.uds_coauthor_wrapper .button.secondary.disabled {
cursor: default;
color: #d1dbfa;
border-color: #d1dbfa;
background: rgba(255, 255, 255, .8)
}
.uds_coauthor_wrapper #prompt_text {
height: 50px;
min-height: 50px
}
.uds_coauthor_wrapper .length-options,
.uds_coauthor_wrapper .tone-options,
.uds_coauthor_wrapper .change-suggestions-options {
display: flex;
flex-wrap: wrap
}
.uds_coauthor_wrapper .tag {
margin: 4px;
padding: 1px 10px;
border-radius: 8px;
line-height: 22px;
height: 28px;
box-sizing: border-box;
color: #174ae4;
border: 1px solid #174ae4
}
.uds_coauthor_wrapper .tag span {
font-size: 12px;
font-weight: 600
}
.uds_coauthor_wrapper .tag.selected {
background: #174ae4;
color: #fff
}
.uds_coauthor_wrapper .tag.selected svg>path {
fill: #fff
}
.uds_coauthor_wrapper .tag:hover {
cursor: pointer;
background: #eff3ff
}
.uds_coauthor_wrapper .tag.selected:hover,
.uds_coauthor_wrapper #custom_tone_edit_button.tag.selected:hover {
background: #174ae4;
color: #fff
}
.uds_coauthor_wrapper #custom_tone_plus_button,
.uds_coauthor_wrapper #add_change_suggestion_button {
width: 28px;
padding: 7px 8px 8px 7px
}
.uds_coauthor_wrapper #custom_tone_plus_button svg,
.uds_coauthor_wrapper #add_change_suggestion_button svg {
display: block
}
.uds_coauthor_wrapper .custom_tone_container {
display: flex;
margin: 4px;
max-width: calc(40% - 4px)
}
.uds_coauthor_wrapper #custom_tone {
margin: 0;
border-radius: 8px 0 0 8px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis
}
.uds_coauthor_wrapper #custom_tone_edit_button {
width: 28px;
margin: 0 0 0 0;
border-left: none;
border-radius: 0 8px 8px 0;
padding: 5px
}
.uds_coauthor_wrapper #custom_tone_edit_button svg>path {
fill: #174ae4
}
.uds_coauthor_wrapper #custom_tone_edit_button.tag.selected {
margin-left: 1px
}
.uds_coauthor_wrapper #custom_tone_edit_button.tag.selected svg>path {
fill: #fff
}
.uds_coauthor_wrapper .custom-tone-edit-container,
.uds_coauthor_wrapper #custom_change_suggestion_container {
display: flex
}
.uds_coauthor_wrapper input,
.uds_coauthor_wrapper input:focus,
.uds_coauthor_wrapper input:focus-visible,
.uds_coauthor_wrapper input:hover {
width: 100%;
height: 20px;
margin: 4px 0 4px 4px;
padding: 5px 0 5px 13px;
border-radius: 4px 0 0 4px;
border: 1px;
font-family: 'Segoe UI', "-apple-system", Segoe, Tahoma, HelveticaNeue, Roboto, Arial, Verdana, sans-serif;
font-size: 14px;
font-weight: 400;
background-color: rgba(0, 0, 0, .05);
color: rgba(0, 0, 0, .85);
outline: none;
box-shadow: none
}
.uds_coauthor_wrapper #custom_tone_add_button,
.uds_coauthor_wrapper #custom_tone_save_button,
.uds_coauthor_wrapper #submit_change_suggestion_button {
height: 18px;
background-color: rgba(0, 0, 0, .05);
font-family: 'Segoe UI', "-apple-system", Segoe, Tahoma, HelveticaNeue, Roboto, Arial, Verdana, sans-serif;
font-size: 14px;
font-weight: 600;
line-height: 20px;
letter-spacing: 0;
text-align: center;
margin: 4px 4px 0 0;
padding: 5px 10px 7px 10px;
border-radius: 0 4px 4px 0;
border: 1px
}
.uds_coauthor_wrapper #submit_change_suggestion_button {
padding-top: 6px;
padding-bottom: 6px
}
.uds_coauthor_wrapper #custom_tone_add_button:not(.disabled) span:hover,
.uds_coauthor_wrapper #custom_tone_save_button:not(.disabled) span:hover,
.uds_coauthor_wrapper #submit_change_suggestion_button:not(.disabled):hover {
cursor: pointer;
color: rgba(0, 0, 0, .85)
}
.uds_coauthor_wrapper #custom_tone_add_button.disabled,
.uds_coauthor_wrapper #custom_tone_save_button.disabled {
color: rgba(0, 0, 0, .2)
}
.uds_coauthor_wrapper .paragraph-options {
display: flex;
flex-wrap: wrap
}
.uds_coauthor_wrapper .paragraph-option {
margin-right: 10px;
text-align: center;
display: flex;
flex-direction: column;
align-items: center
}
.uds_coauthor_wrapper .paragraph-option:hover .illustration {
cursor: pointer;
background: #eff3ff
}
.uds_coauthor_wrapper .paragraph-option.selected .illustration {
border-color: #174ae4
}
.uds_coauthor_wrapper .paragraph-option .illustration {
height: 50px;
width: 50px;
border: 2px solid #fff;
border-radius: 10px;
background: #f7f7f7;
padding: 3px
}
.uds_coauthor_wrapper .paragraph-option .illustration svg {
width: 50px;
height: 50px
}
.uds_coauthor_wrapper .paragraph-option p {
font-weight: 500;
font-size: 11px
}
.uds_coauthor_wrapper .option-section {
margin-top: 12px;
padding: 3px;
padding-top: 9px;
border: 1px solid #e8e8e8;
border-radius: 8px
}
.uds_coauthor_wrapper .header {
display: flex;
padding: 3px;
font-size: 14px;
line-height: 20px;
margin-bottom: 8px
}
.uds_coauthor_wrapper .header#preview_heading {
margin-bottom: 0
}
.uds_coauthor_wrapper .header.secondary {
color: #1a1a1a
}
.uds_coauthor_wrapper .header svg {
display: inline-block;
width: 18px;
height: 18px;
margin-right: 4px
}
.uds_coauthor_wrapper div.preview {
height: 100%;
position: relative;
margin-top: 8px
}
.uds_coauthor_wrapper #disclaimer_box {
padding: 4px;
color: #717171
}
.uds_coauthor_wrapper #preview_text {
height: 100%;
width: 100%;
box-sizing: border-box;
resize: none;
min-height: 200px;
padding-bottom: 45px;
scroll-padding-bottom: 45px
}
.uds_coauthor_wrapper .preview-options {
display: flex;
position: absolute;
bottom: 0;
border-bottom-left-radius: 8px;
border-bottom-right-radius: 8px;
right: 6px;
justify-content: flex-end;
box-sizing: border-box;
width: calc(100% - 8px);
background: #fff
}
.uds_coauthor_wrapper .preview-options.disabled {
background: rgba(0, 0, 0, 0)
}
.uds_coauthor_wrapper .preview-options .item {
width: 32px;
height: 32px;
border-radius: 3px;
margin-left: 4px;
display: flex;
align-items: center;
justify-content: center
}
.uds_coauthor_wrapper .preview-options .item:hover {
cursor: pointer;
background: #f7f7f7
}
.uds_coauthor_wrapper .preview-options .item.disabled svg>path,
.uds_coauthor_wrapper #submit_change_suggestion_button.disabled svg>path {
fill: #717171
}
.uds_coauthor_wrapper .preview-options .item.disabled:hover {
background: none;
cursor: auto
}
.uds_coauthor_wrapper div.preview #shimmer {
width: 98%;
height: 100px;
position: absolute;
top: 5px;
left: 5px
}
.uds_coauthor_wrapper div.preview #shimmer .line {
width: 95%;
height: 12px;
background: #e2e2e2;
border-radius: 4px;
margin: 3px;
-webkit-mask: linear-gradient(-60deg, #000 30%, rgba(0, 0, 0, .5), #000 70%) 0;
animation: uds-coauthor-shimmer 1.5s infinite
}
.uds_coauthor_wrapper div.preview #shimmer .line:last-child {
width: 50%
}
.uds_coauthor_wrapper div.preview #error {
position: absolute;
top: 8px;
left: 8px;
text-align: left;
display: flex;
color: #c42b1c
}
.uds_coauthor_wrapper div.preview #error>div {
margin-right: 8px
}
.uds_coauthor_wrapper #compose_button,
.uds_coauthor_wrapper #insert_button,
.uds_coauthor_wrapper #change_suggestions,
.uds_coauthor_wrapper #detached_copy_button {
margin-top: 12px
}
.uds_coauthor_wrapper #compose_button {
color: #fff
}
.uds_coauthor_wrapper #insert_button,
.uds_coauthor_wrapper #detached_copy_button {
color: #174ae4;
display: none;
}
.uds_coauthor_wrapper #insert_button.disabled,
.uds_coauthor_wrapper #detached_copy_button.disabled {
color: #d1dbfa
}
.uds_coauthor_wrapper .hidden {
display: none !important
}
.uds_coauthor_wrapper .aria-alert {
position: absolute;
top: -100px
}
.uds_coauthor_wrapper .change-suggestion.tag {
padding: 5px 12px;
font-size: 12px;
line-height: 16px;
max-width: calc(100% - 8px);
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
border-color: #a2b7f4
}
.uds_coauthor_wrapper .change-suggestion.tag:hover {
border-color: #174ae4
}
.uds_coauthor_wrapper #add_change_suggestion_button {
height: 28px;
width: 28px;
display: flex;
justify-content: center;
align-items: center
}
.uds_coauthor_wrapper .inline {
height: 200px;
overflow: hidden;
padding: 12px;
box-sizing: border-box;
background-color: #fff;
display: flex;
flex-direction: column;
gap: 12px
}
.uds_coauthor_wrapper .inline header {
display: flex;
height: 20px;
font-size: 12px;
color: rgba(0, 0, 0, .65);
font-weight: 600;
font-family: 'Segoe UI', "-apple-system", Segoe, Tahoma, HelveticaNeue, Roboto, Arial, Verdana, sans-serif
}
.uds_coauthor_wrapper .inline header svg {
width: 20px;
height: 20px
}
.uds_coauthor_wrapper .inline #inline_options {
display: flex;
gap: 4px
}
.uds_coauthor_wrapper .inline .inline-button svg {
width: 20px;
height: 20px
}
.uds_coauthor_wrapper .inline #inline_icon {
width: 20px;
height: 20px;
margin-right: 8px
}
.uds_coauthor_wrapper .inline #inline_close_button {
margin-left: auto;
width: 20px;
height: 20px
}
.uds_coauthor_wrapper .inline #inline_close_button:hover {
cursor: pointer
}
.uds_coauthor_wrapper .inline .inline-button {
background: linear-gradient(81.62deg, #2870ea 8.72%, #1b4aef 85.01%);
border: none;
border-radius: 4px;
color: #fff !important;
line-height: 14px;
font-size: 12px;
font-weight: 600;
font-family: 'Segoe UI', "-apple-system", Segoe, Tahoma, HelveticaNeue, Roboto, Arial, Verdana, sans-serif;
text-decoration: none;
display: flex;
height: 24px;
padding: 2px 8px;
justify-content: center;
align-items: center;
gap: 4px
}
.uds_coauthor_wrapper .inline-button:hover {
box-shadow: 0 1.2px 3.6px rgba(0, 0, 0, .1), 0 6.4px 14.4px rgba(0, 0, 0, .13);
cursor: pointer;
text-decoration: none
}
.uds_coauthor_wrapper .inline-button.disabled {
cursor: default;
background: linear-gradient(0deg, rgba(255, 255, 255, .8), rgba(255, 255, 255, .8)), linear-gradient(81.62deg, #2870ea 8.72%, #1b4aef 85.01%)
}
.uds_coauthor_wrapper .inline-button.secondary {
background: #fff;
border: 1px solid rgba(0, 0, 0, .1);
color: #000 !important;
font-weight: 500
}
.uds_coauthor_wrapper .inline-button.disabled:hover {
box-shadow: none
}
.uds_coauthor_wrapper .inline-button.secondary.disabled {
cursor: default;
color: #d1dbfa;
border-color: #d1dbfa;
background: #e2e2e2
}
.uds_coauthor_wrapper .inline #inline_preview {
position: relative
}
.uds_coauthor_wrapper .inline #inline_preview_text {
height: 100px;
width: 100%;
box-sizing: border-box;
background: linear-gradient(to right, #fff, #fff), linear-gradient(81.09deg, #18c1ed 8.85%, #3495ea 48.98%, #2161ef 89.11%);
border-radius: 8px;
border-style: solid;
border-width: 10px;
border: 2px solid transparent;
background-clip: padding-box, border-box;
background-origin: padding-box, border-box;
box-shadow: none;
padding: 12px
}
.uds_coauthor_wrapper .inline #inline_preview #inline_shimmer {
width: 98%;
height: 100px;
position: absolute;
top: 5px;
left: 5px
}
.uds_coauthor_wrapper .inline #inline_preview #inline_shimmer .line {
width: 95%;
height: 12px;
background: #e2e2e2;
border-radius: 4px;
margin: 3px;
-webkit-mask: linear-gradient(-60deg, #000 30%, rgba(0, 0, 0, .5), #000 70%) 0;
animation: uds-coauthor-shimmer 1.5s infinite
}
.uds_coauthor_wrapper .inline #inline_preview #inline_shimmer .line:last-child {
width: 50%
}
@keyframes uds-coauthor-shimmer {
100% {
-webkit-mask-position: 190px
}
}
#bpage.b_drk .uds_coauthor_wrapper {
color: #fff !important
}
#bpage.b_drk .uds_coauthor_wrapper textarea {
color: #fff !important
}
#bpage.b_drk .uds_coauthor_wrapper .child {
background: #2b2b2b;
box-shadow: 0 2px 4px rgba(255, 255, 255, .14), 0 0 2px rgba(255, 255, 255, .12)
}
#bpage.b_drk .uds_coauthor_wrapper textarea {
border-color: #686868;
box-shadow: 0 1px 1px #7a7a7a;
background: #333
}
#bpage.b_drk .uds_coauthor_wrapper textarea:focus,
#bpage.b_drk .uds_coauthor_wrapper input:focus,
#bpage.b_drk .uds_coauthor_wrapper #custom_tone_add_button,
#bpage.b_drk .uds_coauthor_wrapper #custom_tone_save_button,
#bpage.b_drk .uds_coauthor_wrapper #change_suggestions_input,
#bpage.b_drk .uds_coauthor_wrapper #submit_change_suggestion_button {
box-shadow: 0 2px 0 #a2b7f4
}
#bpage.b_drk .uds_coauthor_wrapper textarea:focus-visible {
border: 1px solid #686868
}
#bpage.b_drk .uds_coauthor_wrapper #letter_counter {
background: #333
}
#bpage.b_drk .uds_coauthor_wrapper .button {
background: linear-gradient(81.62deg, #2870ea 8.72%, #1b4aef 85.01%);
color: #fff
}
#bpage.b_drk .uds_coauthor_wrapper .button:hover:not(.disabled) {
box-shadow: 0 1.2px 3.6px rgba(255, 255, 255, .1), 0 6.4px 14.4px rgba(255, 255, 255, .13);
cursor: pointer;
text-decoration: none
}
#bpage.b_drk .uds_coauthor_wrapper .button.disabled {
background: linear-gradient(0deg, rgba(255, 255, 255, .8), rgba(255, 255, 255, .8)), linear-gradient(81.62deg, #2870ea 8.72%, #1b4aef 85.01%)
}
#bpage.b_drk .uds_coauthor_wrapper .button.secondary {
background: none;
background-color: rgba(255, 255, 255, .1);
border-color: #a2b7f4;
color: #a2b7f4
}
#bpage.b_drk .uds_coauthor_wrapper .button.secondary:hover:not(.disabled) {
background-color: rgba(255, 255, 255, .2);
box-shadow: none
}
#bpage.b_drk .uds_coauthor_wrapper .button.disabled {
background: rgba(255, 255, 255, .1);
border-color: rgba(255, 255, 255, .1)
}
#bpage.b_drk .uds_coauthor_wrapper .tag {
color: #a2b7f4;
border-color: #a2b7f4;
background: rgba(255, 255, 255, .1)
}
#bpage.b_drk .uds_coauthor_wrapper .tag.selected {
background: #a2b7f4;
color: #000
}
#bpage.b_drk .uds_coauthor_wrapper .tag:hover {
background: rgba(255, 255, 255, .2)
}
#bpage.b_drk .uds_coauthor_wrapper .tag.selected:hover,
#bpage.b_drk .uds_coauthor_wrapper #custom_tone_edit_button.tag.selected:hover {
background: #a2b7f4;
color: #000
}
#bpage.b_drk .uds_coauthor_wrapper #custom_tone_plus_button svg>path,
#bpage.b_drk .uds_coauthor_wrapper #custom_tone_edit_button svg>path,
#bpage.b_drk .uds_coauthor_wrapper #add_change_suggestion_button svg>path {
fill: #a2b7f4
}
#bpage.b_drk .uds_coauthor_wrapper .tag.selected svg>path {
fill: #000 !important
}
#bpage.b_drk .uds_coauthor_wrapper input,
#bpage.b_drk .uds_coauthor_wrapper input:focus,
#bpage.b_drk .uds_coauthor_wrapper input:focus-visible,
#bpage.b_drk .uds_coauthor_wrapper input:hover {
color: #fff !important;
background-color: #3b3a39 !important
}
#bpage.b_drk .uds_coauthor_wrapper #custom_tone_add_button,
#bpage.b_drk .uds_coauthor_wrapper #custom_tone_save_button,
#bpage.b_drk .uds_coauthor_wrapper #custom_tone_add_button:not(.disabled) span:hover,
#bpage.b_drk .uds_coauthor_wrapper #custom_tone_save_button:not(.disabled) span:hover,
#bpage.b_drk .uds_coauthor_wrapper #submit_change_suggestion_button,
#bpage.b_drk .uds_coauthor_wrapper #submit_change_suggestion_button:not(.disabled) span:hover {
color: #d6d6d6 !important;
background-color: #3b3a39 !important
}
#bpage.b_drk .uds_coauthor_wrapper #custom_tone_add_button.disabled,
#bpage.b_drk .uds_coauthor_wrapper #custom_tone_save_button.disabled {
color: #5c5c5c !important
}
#bpage.b_drk .uds_coauthor_wrapper .paragraph-option p {
color: #fff !important
}
#bpage.b_drk .uds_coauthor_wrapper .paragraph-option .illustration {
border-color: #2b2b2b;
background: rgba(255, 255, 255, .1)
}
#bpage.b_drk .uds_coauthor_wrapper .paragraph-option:hover .illustration {
background: rgba(255, 255, 255, .2)
}
#bpage.b_drk .uds_coauthor_wrapper .paragraph-option .illustration .objectS {
stroke: #fff
}
#bpage.b_drk .uds_coauthor_wrapper .paragraph-option .illustration .objectF {
fill: #fff
}
#bpage.b_drk .uds_coauthor_wrapper .paragraph-option.selected .illustration {
border-color: #a2b7f4;
background: rgba(255, 255, 255, .2)
}
#bpage.b_drk .uds_coauthor_wrapper .option-section {
border-color: #545454
}
#bpage.b_drk .uds_coauthor_wrapper .header.secondary {
color: #fff
}
#bpage.b_drk .uds_coauthor_wrapper .preview-options {
background: #333
}
#bpage.b_drk .uds_coauthor_wrapper .preview-options .item svg>path,
#bpage.b_drk .uds_coauthor_wrapper #submit_change_suggestion_button svg>path {
fill: #fff
}
#bpage.b_drk .uds_coauthor_wrapper .preview-options .item:hover {
background: rgba(255, 255, 255, .2)
}
#bpage.b_drk .uds_coauthor_wrapper .preview-options .item.disabled:hover {
background: #333
}
#bpage.b_drk .uds_coauthor_wrapper .preview-options .item.disabled svg>path,
#bpage.b_drk .uds_coauthor_wrapper #submit_change_suggestion_button.disabled svg>path {
fill: #7a7a7a
}
#bpage.b_drk .uds_coauthor_wrapper .header svg>path,
#bpage.b_drk .uds_coauthor_wrapper #submit_change_suggestion_button svg>path {
fill: #fff
}
#bpage.b_drk .uds_coauthor_wrapper div.preview #shimmer .line {
background: #686868
}
#bpage.b_drk .uds_coauthor_wrapper #compose_button {
color: #fff
}
#bpage.b_drk .uds_coauthor_wrapper #compose_button.disabled {
color: rgba(255, 255, 255, .54)
}
#bpage.b_drk .uds_coauthor_wrapper #insert_button,
#bpage.b_drk .uds_coauthor_wrapper #detached_copy_button {
color: #a2b7f4
}
#bpage.b_drk .uds_coauthor_wrapper #insert_button.disabled,
#bpage.b_drk .uds_coauthor_wrapper #detached_copy_button.disabled {
color: rgba(255, 255, 255, .54)
}
#bpage.b_drk .uds_coauthor_wrapper div.preview #error {
color: #ed8e85
}
@media screen and (-ms-high-contrast:active) {
.uds_coauthor_wrapper .button {
background: Window;
border: 2px solid
}
.uds_coauthor_wrapper .tag,
.uds_coauthor_wrapper #custom_tone_edit_button {
color: LinkText;
border-color: WindowText
}
.uds_coauthor_wrapper #custom_tone_plus_button svg>path,
.uds_coauthor_wrapper #custom_tone_edit_button svg>path,
.uds_coauthor_wrapper #add_change_suggestion_button svg>path,
#bpage.b_drk .uds_coauthor_wrapper #custom_tone_plus_button svg>path,
#bpage.b_drk .uds_coauthor_wrapper #custom_tone_edit_button svg>path,
#bpage.b_drk .uds_coauthor_wrapper #add_change_suggestion_button svg>path {
fill: WindowText
}
.uds_coauthor_wrapper .tag.selected,
.uds_coauthor_wrapper #custom_tone_edit_button.tag.selected,
.uds_coauthor_wrapper .tag:hover,
.uds_coauthor_wrapper #custom_tone_edit_button:hover,
#bpage.b_drk .uds_coauthor_wrapper .tag.selected,
#bpage.b_drk .uds_coauthor_wrapper #custom_tone_edit_button.tag.selected,
#bpage.b_drk .uds_coauthor_wrapper .tag:hover,
#bpage.b_drk .uds_coauthor_wrapper #custom_tone_edit_button:hover {
border-color: Highlight;
background: Highlight
}
.uds_coauthor_wrapper .tag.selected span,
.uds_coauthor_wrapper .tag:hover span,
.uds_coauthor_wrapper #custom_tone_edit_button:hover span {
color: HighlightText;
background: Highlight
}
.uds_coauthor_wrapper .tag.selected svg,
.uds_coauthor_wrapper #custom_tone_edit_button.tag.selected svg,
.uds_coauthor_wrapper .tag:hover svg,
.uds_coauthor_wrapper #custom_tone_edit_button:hover svg {
background: Highlight
}
.uds_coauthor_wrapper #custom_tone_plus_button.tag.selected svg>path,
.uds_coauthor_wrapper #custom_tone_edit_button.tag.selected svg>path,
.uds_coauthor_wrapper #add_change_suggestion_button.tag.selected svg>path,
.uds_coauthor_wrapper #custom_tone_plus_button:hover svg>path,
.uds_coauthor_wrapper #custom_tone_edit_button:hover svg>path,
.uds_coauthor_wrapper #add_change_suggestion_button:hover svg>path,
#bpage.b_drk .uds_coauthor_wrapper #custom_tone_plus_button.tag.selected svg>path,
#bpage.b_drk .uds_coauthor_wrapper #custom_tone_edit_button.tag.selected svg>path,
#bpage.b_drk .uds_coauthor_wrapper #add_change_suggestion_button.tag.selected svg>path,
#bpage.b_drk .uds_coauthor_wrapper #custom_tone_plus_button:hover svg>path,
#bpage.b_drk .uds_coauthor_wrapper #custom_tone_edit_button:hover svg>path,
#bpage.b_drk .uds_coauthor_wrapper #add_change_suggestion_button:hover svg>path {
fill: HighlightText
}
.uds_coauthor_wrapper input,
.uds_coauthor_wrapper input:focus,
.uds_coauthor_wrapper input:focus-visible,
.uds_coauthor_wrapper input:hover,
.uds_coauthor_wrapper #custom_tone_add_button,
.uds_coauthor_wrapper #custom_tone_save_button {
border-style: solid
}
.uds_coauthor_wrapper .preview-options .item:hover,
#bpage.b_drk .uds_coauthor_wrapper .preview-options .item:hover {
background: Highlight
}
.uds_coauthor_wrapper .header svg>path {
fill: WindowText
}
.uds_coauthor_wrapper .preview-options svg>path,
.uds_coauthor_wrapper #submit_change_suggestion_button svg>path {
fill: WindowText
}
.uds_coauthor_wrapper .preview-options .item:hover svg>path,
.uds_coauthor_wrapper #submit_change_suggestion_button:hover svg>path {
fill: LinkText
}
.uds_coauthor_wrapper .paragraph-option.selected .illustration,
.uds_coauthor_wrapper .paragraph-option:hover .illustration,
#bpage.b_drk .uds_coauthor_wrapper .paragraph-option.selected .illustration,
#bpage.b_drk .uds_coauthor_wrapper .paragraph-option:hover .illustration {
border-color: Highlight;
background: Highlight
}
.uds_coauthor_wrapper .paragraph-option.selected .illustration svg,
.uds_coauthor_wrapper .paragraph-option:hover .illustration svg {
background: Highlight
}
.uds_coauthor_wrapper .paragraph-option.selected .illustration .objectS,
.uds_coauthor_wrapper .paragraph-option:hover .illustration .objectS,
#bpage.b_drk .uds_coauthor_wrapper .paragraph-option.selected .illustration .objectS,
#bpage.b_drk .uds_coauthor_wrapper .paragraph-option:hover .illustration .objectS {
stroke: ButtonFace
}
.uds_coauthor_wrapper .paragraph-option.selected .illustration .objectF,
.uds_coauthor_wrapper .paragraph-option:hover .illustration .objectF,
#bpage.b_drk .uds_coauthor_wrapper .paragraph-option.selected .illustration .objectF,
#bpage.b_drk .uds_coauthor_wrapper .paragraph-option:hover .illustration .objectF {
fill: ButtonFace
}
.uds_coauthor_wrapper #compose_button,
.uds_coauthor_wrapper #insert_button,
.uds_coauthor_wrapper #custom_tone_add_button,
.uds_coauthor_wrapper #custom_tone_save_button,
.uds_coauthor_wrapper #detached_copy_button,
#bpage.b_drk .uds_coauthor_wrapper #compose_button,
#bpage.b_drk .uds_coauthor_wrapper #insert_button,
#bpage.b_drk .uds_coauthor_wrapper #detached_copy_button,
#bpage.b_drk .uds_coauthor_wrapper #custom_tone_add_button,
#bpage.b_drk .uds_coauthor_wrapper #custom_tone_save_button {
border-color: WindowText;
color: WindowText
}
.uds_coauthor_wrapper #compose_button.disabled,
.uds_coauthor_wrapper #insert_button.disabled,
.uds_coauthor_wrapper #custom_tone_add_button.disabled,
.uds_coauthor_wrapper #custom_tone_save_button.disabled,
.uds_coauthor_wrapper #detached_copy_button.disabled,
#bpage.b_drk .uds_coauthor_wrapper #compose_button.disabled,
#bpage.b_drk .uds_coauthor_wrapper #insert_button.disabled,
#bpage.b_drk .uds_coauthor_wrapper #detached_copy_button.disabled,
#bpage.b_drk .uds_coauthor_wrapper #custom_tone_add_button.disabled,
#bpage.b_drk .uds_coauthor_wrapper #custom_tone_save_button.disabled {
border-color: GrayText !important;
color: GrayText !important
}
.uds_coauthor_wrapper #custom_tone_add_button.disabled span,
.uds_coauthor_wrapper #custom_tone_save_button.disabled span,
#bpage.b_drk .uds_coauthor_wrapper #custom_tone_add_button.disabled span,
#bpage.b_drk .uds_coauthor_wrapper #custom_tone_save_button.disabled span {
color: GrayText
}
.uds_coauthor_wrapper div.preview #shimmer .line {
background: WindowText
}
.uds_coauthor_wrapper textarea:focus {
box-shadow: 0 2px 0 #174ae4
}
.uds_coauthor_wrapper textarea:focus-visible {
border-color: #e2e2e2
}
}
</style>
<script type="text/javascript">//<![CDATA[
var Shared; (function (n) { function t (n) { for (var i = [], t = 1; t < arguments.length; t++)i[t - 1] = arguments[t]; return n.replace(/\{([0-9]+)\}/g, function (n, t) { var r = parseInt(t); return r >= 0 && r < i.length ? i[r] : "" }) } n.formatString = t })(Shared || (Shared = {}));
//]]></script>
<script type="text/javascript" crossorigin="anonymous"
src="/rp/ewpjexaHUg43JVD_aYNfJbu1EJQ.br.js"></script>
<script type="text/javascript">//<![CDATA[
_w["_udsCoAuthorConfig"] = { "EnableSecureConversation": true, "AddOptionsSets": ["soedgeca"], "RemoveOptionsSets": [], "DevMode": false, "UseHarmonyImaginitive": false, "ComposeUnderVPTest": false, "ComposeInline": false, "Source": "edge_coauthor_prod", "ComposeSidebarCustomization": false, "DetachedUX": false, "GetConversationId": false, "CodexV2": false };;
//]]></script>
<script type="text/javascript" crossorigin="anonymous"
src="/rp/M0YyMjv9PZ4MLAB8vBy5DUrdPJ0.br.js"></script>
<div id="b_content">
<ol id="b_results" class="">
<li class="b_ans">
<div class="b_uns_container_ans b_uns_inst_ans" data-ans-name="Underside:Compose">
<!-- keep in order! then we import sydney bundle -->
<div class="underside-inst-module" data-inst-name="USI_Module_CoAuthor">
<div id="underside-coauthor-module" class="b_uns_module b_uns_module_fullbleed"
data-content-available="true" data-finalized="true" data-load-time="">
<div class="no-title" role="heading" aria-level="2" aria-label="Module Heading"></div>
<div class="uds_coauthor_wrapper">
<div class="sidebar ">
<div class="child">
<div class="header secondary" role="heading" id="input_heading">著作领域</div><textarea id="prompt_text"
placeholder="告诉我们你想要写的内容"></textarea>
<div id="letter_counter"></div>
<div class="option-section" expanded="true">
<div class="header" role="heading" id="tone_heading">语气</div>
<div class="panel">
<div class="tone-options tags"></div>
<div class="custom-tone-edit-container"><input id="custom_tone_input" class='hidden' type="text"
placeholder="例如,放松的" />
<div id="custom_tone_add_button" class='hidden' role="button" title="添加" aria-label="添加">
<span>添加</span></div>
<div id="custom_tone_save_button" class='hidden' role="button" title="保存" aria-label="保存">
<span>保存</span></div>
</div>
</div>
</div>
<div class="option-section" expanded="true">
<div class="header" role="heading" id="paragraph_heading">格式</div>
<div class="panel" role="group" aria-labelledby="paragraph_heading">
<div class="paragraph-options" role="group"></div>
</div>
</div>
<div class="option-section" expanded="true">
<div class="header" role="heading" id="length_heading">长度</div>
<div class="panel" role="group" aria-labelledby="length_heading">
<div class="length-options tags"></div>
</div>
</div><a class="button linkBtn" role="button" id="compose_button" aria-label="生成草稿" target="_blank"
_ctf="rdr_T" h="ID=SERP,5056.1">生成草稿</a>
</div>
<div class="child">
<div class="header" role="heading" id="preview_heading">预览</div>
<div id="disclaimer_box"></div>
<div class="preview"><textarea id="preview_text" aria-label="预览生成的文本"
placeholder="AI 生成的内容将显示在此处"></textarea>
<div class="preview-options">
<div id="conversation_id_copy_button" role="button" class="item hidden" title="ID"
aria-label="ID">ID</div>
<div id="stop_button" role="button" class="item" title="停止" aria-label="停止"></div>
<div id="previous_button" role="button" class="item" title="后退" aria-label="后退"></div>
<div id="next_button" role="button" class="item" title="下一个" aria-label="下一个"></div>
<div id="copy_button" role="button" class="item" title="复制" aria-label="复制"></div>
<div id="regenerate_button" role="button" class="item" title="重新生成草稿" aria-label="重新生成草稿"></div>
</div>
<div id="shimmer" class='hidden'>
<div class='line'></div>
<div class='line'></div>
<div class='line'></div>
</div>
<div id="error" class='hidden'></div>
</div>
<div id="change_suggestions" class="hidden">
<div class="panel" role="group">
<div class="change-suggestions-options tags"></div>
<div id="custom_change_suggestion_container"><input id="change_suggestions_input" type="text"
class="hidden" placeholder="告诉我是否要更改任何内容" />
<div id="submit_change_suggestion_button" role="button" class="hidden disabled"></div>
</div>
</div>
</div><a id="insert_button" role="button" aria-label="添加到网站"
class="button secondary disabled linkBtn" target="_blank" _ctf="rdr_T"
h="ID=SERP,5056.2">添加到网站</a>
</div>
</div>
<div id="aria_alert" role="alert" class='aria-alert'><span class="hidden">正在生成文本</span></div>
</div>
</div>
</div>
</div>
</li>
<li class="b_ans">
<div class="b_uns_container_ans b_uns_inst_ans" data-ans-name="Underside:ServerNavigate"></div>
</li>
</ol>
</div>
<footer id="b_footer" class="b_footer" role="contentinfo" aria-label="页脚">
<div id="b_footerItems"><span>&#169; 2023 Microsoft</span>
<ul>
<li><a id="sb_privacy" target="_blank" _ctf="rdr_T" href="http://go.microsoft.com/fwlink/?LinkId=521839"
h="ID=SERP,5046.1">隐私声明和 Cookie</a></li>
<li><a id="sb_legal" target="_blank" _ctf="rdr_T" href="http://go.microsoft.com/fwlink/?LinkID=246338"
h="ID=SERP,5047.1">法律声明</a></li>
<li><a id="sb_advertise" target="_blank" _ctf="rdr_T" href="https://go.microsoft.com/fwlink/?linkid=868922"
h="ID=SERP,5048.1">广告</a></li>
<li><a id="sb_adinfo" target="_blank" _ctf="rdr_T" href="http://go.microsoft.com/fwlink/?LinkID=286759"
h="ID=SERP,5049.1">关于我们的广告</a></li>
<li><a id="sb_help" target="_blank" _ctf="rdr_T"
href="https://support.microsoft.com/topic/82d20721-2d6f-4012-a13d-d1910ccf203f" h="ID=SERP,5050.1">帮助</a>
</li>
<li><a role="button" id="sb_feedback" target="_blank" _ctf="rdr_T" href="https://www.bing.com#"
h="ID=SERP,5051.1">反馈</a></li>
</ul>
</div><!--foo-->
</footer>
<script type="text/javascript">//<![CDATA[
var customEvents = require("event.custom"); customEvents.fire("onHTML"); define("RMSBootstrap", ["require", "exports"], function (n, t) { function f () { i.push(r.call(arguments)) } function e () { for (var n = 0; n < i.length; ++n)_w.rms.js.apply(null, r.call(i[n], 0)) } var u, i, r; t.__esModule = !0; t.replay = void 0; u = n("event.custom"); i = []; _w.rms = {}; r = [].slice; _w.rms.js = f; t.replay = e; u.bind("onPP", function () { for (var u, t, f, n, r = 0; r < i.length; r++)for (u = i[r], t = 0; t < u.length; t++)if (f = u[t]["A:rms:answers:Shared:BingCore.RMSBundle"], f) { n = _d.createElement("script"); n.setAttribute("data-rms", "1"); n.setAttribute("crossorigin", "anonymous"); n.src = f; n.type = "text/javascript"; setTimeout(function () { _d.body.appendChild(n) }, 0); u.splice(t, 1); break } }, !0) }); (function (n, t) { onload = function () { _G.BPT = new Date; n && n(); !_w.sb_ppCPL && t && sb_st(function () { t(new Date) }, 0) } })(_w.onload, _w.si_PP); sj_be(_d.body, 'load', function () { if (_w.lb) lb(); }, false);; var Underside; (function (n) { var t; (function (n) { n.QueryParam_SetText = "setText"; n.QueryParam_SetText_Max_Length = 1500; n.paragraphSVG = '<svg width="58" height="58" viewBox="0 0 58 58" fill="none" xmlns="http://www.w3.org/2000/svg">\n <rect width="58" height="58" rx="8" fill="none"/>\n <line x1="11.5" y1="21.5" x2="46.5" y2="21.5" stroke="#6E6E6E" stroke-linecap="round" stroke-linejoin="round"/>\n <line x1="11.5" y1="14.5" x2="46.5" y2="14.5" stroke="#6E6E6E" stroke-linecap="round" stroke-linejoin="round"/>\n <line x1="11.5" y1="28.5" x2="46.5" y2="28.5" stroke="#6E6E6E" stroke-linecap="round" stroke-linejoin="round"/>\n <line x1="11.5" y1="35.5" x2="46.5" y2="35.5" stroke="#6E6E6E" stroke-linecap="round" stroke-linejoin="round"/>\n <line x1="11.5" y1="42.5" x2="28.5" y2="42.5" stroke="#6E6E6E" stroke-linecap="round" stroke-linejoin="round"/>\n <\/svg>'; n.paragraphShortSVG = '<svg width="58" height="58" viewBox="0 0 58 58" fill="none" xmlns="http://www.w3.org/2000/svg">\n <rect width="58" height="58" rx="8" fill="none"/>\n <line x1="11.5" y1="18.5" x2="46.5" y2="18.5" class="objectS" stroke="#6E6E6E" stroke-linecap="round" stroke-linejoin="round"/>\n <line x1="11.5" y1="25.5" x2="46.5" y2="25.5" class="objectS" stroke="#6E6E6E" stroke-linecap="round" stroke-linejoin="round"/>\n <line x1="11.5" y1="32.5" x2="46.5" y2="32.5" class="objectS" stroke="#6E6E6E" stroke-linecap="round" stroke-linejoin="round"/>\n <line x1="11.5" y1="39.5" x2="28.5" y2="39.5" class="objectS" stroke="#6E6E6E" stroke-linecap="round" stroke-linejoin="round"/>\n <\/svg>'; n.blogSVG = '<svg width="58" height="58" viewBox="0 0 58 58" fill="none" xmlns="http://www.w3.org/2000/svg">\n <rect width="58" height="58" rx="8" fill="none"/>\n <rect x="11" y="11" width="36" height="36" rx="8" stroke="#6E6E6E" stroke-linecap="round" stroke-linejoin="round"/>\n <line x1="18.5" y1="18.5" x2="39.5" y2="18.5" stroke="#6E6E6E" stroke-linecap="round" stroke-linejoin="round"/>\n <line x1="18.5" y1="23.5" x2="39.5" y2="23.5" stroke="#6E6E6E" stroke-linecap="round" stroke-linejoin="round"/>\n <line x1="18.5" y1="28.5" x2="39.5" y2="28.5" stroke="#6E6E6E" stroke-linecap="round" stroke-linejoin="round"/>\n <line x1="18.5" y1="33.5" x2="39.5" y2="33.5" stroke="#6E6E6E" stroke-linecap="round" stroke-linejoin="round"/>\n <line x1="18.5" y1="38.5" x2="39.5" y2="38.5" stroke="#6E6E6E" stroke-linecap="round" stroke-linejoin="round"/>\n <\/svg>'; n.bulletPointsSVG = '<svg width="58" height="58" viewBox="0 0 58 58" fill="none" xmlns="http://www.w3.org/2000/svg">\n <rect width="58" height="58" rx="8" fill="none"/>\n <line x1="16.5" y1="21.5" x2="48.5" y2="21.5" class="objectS" stroke="#6E6E6E" stroke-linecap="round" stroke-linejoin="round"/>\n <line x1="16.5" y1="29.5" x2="48.5" y2="29.5" class="objectS" stroke="#6E6E6E" stroke-linecap="round" stroke-linejoin="round"/>\n <line x1="16.5" y1="37.5" x2="48.5" y2="37.5" class="objectS" stroke="#6E6E6E" stroke-linecap="round" stroke-linejoin="round"/>\n <circle cx="10.5" cy="29.5" r="1.5" class="objectF" fill="#6E6E6E"/>\n <circle cx="10.5" cy="37.5" r="1.5" class="objectF" fill="#6E6E6E"/>\n <circle cx="10.5" cy="21.5" r="1.5" class="objectF" fill="#6E6E6E"/>\n <\/svg>'; n.wandIcon = '<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path d="M16.5001 2C16.7762 2 17.0001 2.22386 17.0001 2.5V3H17.5001C17.7762 3 18.0001 3.22386 18.0001 3.5C18.0001 3.77614 17.7762 4 17.5001 4H17.0001V4.5C17.0001 4.77614 16.7762 5 16.5001 5C16.224 5 16.0001 4.77614 16.0001 4.5V4H15.5001C15.224 4 15.0001 3.77614 15.0001 3.5C15.0001 3.22386 15.224 3 15.5001 3H16.0001V2.5C16.0001 2.22386 16.224 2 16.5001 2ZM6.5001 6C6.77625 6 7.0001 5.77614 7.0001 5.5C7.0001 5.22386 6.77625 5 6.5001 5H6.0001V4.5C6.0001 4.22386 5.77625 4 5.5001 4C5.22396 4 5.0001 4.22386 5.0001 4.5V5H4.5001C4.22396 5 4.0001 5.22386 4.0001 5.5C4.0001 5.77614 4.22396 6 4.5001 6H5.0001V6.5C5.0001 6.77614 5.22396 7 5.5001 7C5.77625 7 6.0001 6.77614 6.0001 6.5V6H6.5001ZM15.5001 15C15.7762 15 16.0001 14.7761 16.0001 14.5C16.0001 14.2239 15.7762 14 15.5001 14H15.0001V13.5C15.0001 13.2239 14.7762 13 14.5001 13C14.224 13 14.0001 13.2239 14.0001 13.5V14H13.5001C13.224 14 13.0001 14.2239 13.0001 14.5C13.0001 14.7761 13.224 15 13.5001 15H14.0001V15.5C14.0001 15.7761 14.224 16 14.5001 16C14.7762 16 15.0001 15.7761 15.0001 15.5V15H15.5001ZM13.4346 6.56566C12.687 5.81812 11.475 5.81812 10.7275 6.56566L2.56067 14.7324C1.81311 15.4799 1.81311 16.6919 2.56066 17.4395C3.3082 18.187 4.52021 18.187 5.26776 17.4395L13.4346 9.27278C14.1821 8.52523 14.1821 7.31321 13.4346 6.56566ZM11.4346 7.27277C11.7916 6.91575 12.3704 6.91575 12.7275 7.27277C13.0845 7.6298 13.0845 8.20865 12.7274 8.56567L12.2501 9.04299L10.9572 7.7501L11.4346 7.27277ZM10.2501 8.4572L11.543 9.75009L4.56066 16.7324C4.20363 17.0894 3.62479 17.0894 3.26777 16.7324C2.91074 16.3754 2.91074 15.7965 3.26777 15.4395L10.2501 8.4572Z" fill="#212121"/>\n <\/svg>'; n.textBoxIcon = '<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path d="M6.5 6C6.22386 6 6 6.22386 6 6.5C6 6.77614 6.22386 7 6.5 7H13.5C13.7761 7 14 6.77614 14 6.5C14 6.22386 13.7761 6 13.5 6H6.5ZM6 9.5C6 9.22386 6.22386 9 6.5 9H10.5C10.7761 9 11 9.22386 11 9.5C11 9.77614 10.7761 10 10.5 10H6.5C6.22386 10 6 9.77614 6 9.5ZM6.5 12C6.22386 12 6 12.2239 6 12.5C6 12.7761 6.22386 13 6.5 13H13.5C13.7761 13 14 12.7761 14 12.5C14 12.2239 13.7761 12 13.5 12H6.5ZM17 5.5C17 4.11929 15.8807 3 14.5 3H5.5C4.11929 3 3 4.11929 3 5.5V14.5C3 15.8807 4.11929 17 5.5 17H14.5C15.8807 17 17 15.8807 17 14.5V5.5ZM5.5 4H14.5C15.3284 4 16 4.67157 16 5.5V14.5C16 15.3284 15.3284 16 14.5 16H5.5C4.67157 16 4 15.3284 4 14.5V5.5C4 4.67157 4.67157 4 5.5 4Z" fill="#212121"/>\n <\/svg>'; n.toneIcon = '<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path d="M15.8536 1.14645C15.6583 0.951184 15.3417 0.951184 15.1464 1.14645C14.9512 1.34171 14.9512 1.65829 15.1464 1.85355C16.2815 2.98857 16.875 4.72424 16.875 6.5C16.875 8.27576 16.2815 10.0114 15.1464 11.1464C14.9512 11.3417 14.9512 11.6583 15.1464 11.8536C15.3417 12.0488 15.6583 12.0488 15.8536 11.8536C17.2185 10.4886 17.875 8.47424 17.875 6.5C17.875 4.52576 17.2185 2.51143 15.8536 1.14645ZM13.8536 3.14645C13.6583 2.95118 13.3417 2.95118 13.1464 3.14645C12.9512 3.34171 12.9512 3.65829 13.1464 3.85355C13.7815 4.48857 14.125 5.47424 14.125 6.5C14.125 7.52576 13.7815 8.51143 13.1464 9.14645C12.9512 9.34171 12.9512 9.65829 13.1464 9.85355C13.3417 10.0488 13.6583 10.0488 13.8536 9.85355C14.7185 8.98857 15.125 7.72424 15.125 6.5C15.125 5.27576 14.7185 4.01143 13.8536 3.14645ZM4 7C4 4.79086 5.79086 3 8 3C10.2091 3 12 4.79086 12 7C12 9.20914 10.2091 11 8 11C5.79086 11 4 9.20914 4 7ZM8 4C6.34315 4 5 5.34315 5 7C5 8.65685 6.34315 10 8 10C9.65685 10 11 8.65685 11 7C11 5.34315 9.65685 4 8 4ZM1 14C1 12.8869 1.90315 12 3.00873 12L13 12C14.1045 12 15 12.8956 15 14C15 15.6912 14.1672 16.9663 12.865 17.7966C11.583 18.614 9.85474 19 8 19C6.14526 19 4.41697 18.614 3.13499 17.7966C1.83281 16.9663 1 15.6912 1 14ZM3.00873 13C2.44786 13 2 13.4467 2 14C2 15.3088 2.62226 16.2837 3.67262 16.9534C4.74318 17.636 6.26489 18 8 18C9.73511 18 11.2568 17.636 12.3274 16.9534C13.3777 16.2837 14 15.3088 14 14C14 13.4478 13.5522 13 13 13L3.00873 13Z" fill="#212121"/>\n <\/svg>'; n.copyIcon = '<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path d="M8 2C6.89543 2 6 2.89543 6 4V14C6 15.1046 6.89543 16 8 16H14C15.1046 16 16 15.1046 16 14V4C16 2.89543 15.1046 2 14 2H8ZM7 4C7 3.44772 7.44772 3 8 3H14C14.5523 3 15 3.44772 15 4V14C15 14.5523 14.5523 15 14 15H8C7.44772 15 7 14.5523 7 14V4ZM4 6.00001C4 5.25973 4.4022 4.61339 5 4.26758V14.5C5 15.8807 6.11929 17 7.5 17H13.7324C13.3866 17.5978 12.7403 18 12 18H7.5C5.567 18 4 16.433 4 14.5V6.00001Z" fill="#1A1A1A"/>\n <\/svg>'; n.generateIcon = '<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path d="M11.4142 3.63503C11.6095 3.43977 11.6095 3.12319 11.4142 2.92792L9.29289 0.806603C9.09763 0.611341 8.78104 0.611341 8.58578 0.806603C8.39052 1.00186 8.39052 1.31845 8.58578 1.51371L9.58264 2.51056C7.80518 2.60911 6.05488 3.33754 4.69671 4.6957C1.76776 7.62463 1.76776 12.3734 4.69671 15.3023C4.95359 15.5592 5.2247 15.7937 5.50757 16.0058C5.72852 16.1714 6.04191 16.1266 6.20756 15.9057C6.3732 15.6847 6.32838 15.3713 6.10743 15.2057C5.86235 15.0219 5.6271 14.8185 5.40382 14.5952C2.8654 12.0568 2.8654 7.94121 5.40382 5.40281C6.68997 4.11666 8.38002 3.48223 10.0664 3.49934C10.0915 3.49959 10.1162 3.49799 10.1404 3.49466L8.58578 5.04924C8.39052 5.24451 8.39052 5.56109 8.58578 5.75635C8.78104 5.95161 9.09763 5.95161 9.29289 5.75635L11.4142 3.63503ZM8.58578 16.363C8.39052 16.5582 8.39052 16.8748 8.58578 17.0701L10.7071 19.1914C10.9024 19.3866 11.219 19.3866 11.4142 19.1914C11.6095 18.9961 11.6095 18.6795 11.4142 18.4843L10.4174 17.4874C12.1948 17.3889 13.9451 16.6605 15.3033 15.3023C18.2322 12.3734 18.2322 7.62462 15.3033 4.69569C15.0464 4.43881 14.7753 4.20428 14.4924 3.99221C14.2715 3.82656 13.9581 3.87139 13.7924 4.09233C13.6268 4.31327 13.6716 4.62667 13.8926 4.79231C14.1377 4.97606 14.3729 5.17952 14.5962 5.40279C17.1346 7.9412 17.1346 12.0568 14.5962 14.5952C13.31 15.8813 11.62 16.5158 9.9336 16.4987C9.90849 16.4984 9.88379 16.5 9.85963 16.5033L11.4142 14.9487C11.6095 14.7535 11.6095 14.4369 11.4142 14.2416C11.219 14.0464 10.9024 14.0464 10.7071 14.2416L8.58578 16.363Z" fill="#1A1A1A"/>\n <\/svg>'; n.stopIcon = '<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path d="M21.5 10C21.7761 10 22 10.2239 22 10.5V21.5C22 21.7761 21.7761 22 21.5 22H10.5C10.2239 22 10 21.7761 10 21.5V10.5C10 10.2239 10.2239 10 10.5 10H21.5ZM10.5 9C9.67157 9 9 9.67157 9 10.5V21.5C9 22.3284 9.67157 23 10.5 23H21.5C22.3284 23 23 22.3284 23 21.5V10.5C23 9.67157 22.3284 9 21.5 9H10.5Z" fill="#1A1A1A"/>\n <\/svg>'; n.prevIcon = '<svg width="17" height="15" viewBox="0 0 17 15" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path d="M8.15898 14.3666C8.36292 14.5528 8.67918 14.5384 8.86536 14.3345C9.05154 14.1305 9.03714 13.8143 8.8332 13.6281L2.66535 7.99736H16.4961C16.7722 7.99736 16.9961 7.7735 16.9961 7.49736C16.9961 7.22122 16.7722 6.99736 16.4961 6.99736H2.66824L8.8332 1.36927C9.03714 1.18309 9.05154 0.866835 8.86536 0.662895C8.67918 0.458954 8.36292 0.444557 8.15898 0.630737L1.24263 6.94478C1.10268 7.07254 1.02285 7.24008 1.00314 7.41323C0.998507 7.44058 0.996094 7.46869 0.996094 7.49736C0.996094 7.52423 0.998213 7.55061 1.00229 7.57633C1.02047 7.75224 1.10058 7.9229 1.24263 8.05258L8.15898 14.3666Z" fill="#212121"/>\n <\/svg>'; n.nextIcon = '<svg width="16" height="15" viewBox="0 0 16 15" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path d="M8.83711 0.630737C8.63317 0.444557 8.31692 0.458954 8.13074 0.662894C7.94456 0.866834 7.95895 1.18309 8.16289 1.36927L14.3307 7H0.5C0.223858 7 0 7.22386 0 7.5C0 7.77614 0.223858 8 0.5 8H14.3279L8.16289 13.6281C7.95895 13.8143 7.94456 14.1305 8.13074 14.3345C8.31692 14.5384 8.63317 14.5528 8.83711 14.3666L15.7535 8.05258C15.8934 7.92482 15.9732 7.75728 15.993 7.58414C15.9976 7.55678 16 7.52867 16 7.5C16 7.47313 15.9979 7.44675 15.9938 7.42103C15.9756 7.24512 15.8955 7.07446 15.7535 6.94478L8.83711 0.630737Z" fill="#212121"/>\n <\/svg>'; n.downIcon = '<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path d="M15.794 7.73271C16.0797 8.03263 16.0681 8.50737 15.7682 8.79306L10.5178 13.7944C10.2281 14.0703 9.77285 14.0703 9.48318 13.7944L4.23271 8.79306C3.93279 8.50737 3.92125 8.03263 4.20694 7.73271C4.49264 7.43279 4.96737 7.42125 5.26729 7.70694L10.0005 12.2155L14.7336 7.70694C15.0336 7.42125 15.5083 7.43279 15.794 7.73271Z" fill="#212121"/>\n <\/svg>'; n.rightIcon = '<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path d="M7.64582 4.14708C7.84073 3.95147 8.15731 3.9509 8.35292 4.14582L13.8374 9.6108C14.0531 9.82574 14.0531 10.1751 13.8374 10.39L8.35292 15.855C8.15731 16.0499 7.84073 16.0493 7.64582 15.8537C7.4509 15.6581 7.45147 15.3415 7.64708 15.1466L12.8117 10.0004L7.64708 4.85418C7.45147 4.65927 7.4509 4.34269 7.64582 4.14708Z" fill="#212121"/>\n <\/svg>'; n.EmailSVG = '<svg width="48" height="48" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg"><rect width="48" height="48" rx="8" fill="none"/><rect x="9" y="14" width="31" height="21" rx="4" class="objectS" stroke="#717171" stroke-linecap="round" stroke-linejoin="round"/><path d="M10 16L21.7743 26.9623C23.3101 28.3922 25.6899 28.3922 27.2257 26.9623L39 16" class="objectS" stroke="#717171" stroke-linecap="round" stroke-linejoin="round"/><\/svg>'; n.BlogpostSVG = '<svg width="48" height="48" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg"><rect width="48" height="48" rx="8" fill="none"/><rect x="9" y="9" width="31" height="31" rx="8" class="objectS" stroke="#717171" stroke-linecap="round" stroke-linejoin="round"/><path d="M24 19.8477L33.4862 19.8477" class="objectS" stroke="#717171" stroke-linecap="round" stroke-linejoin="round"/><line x1="15.5417" y1="26.7363" x2="33.4862" y2="26.7363" class="objectS" stroke="#717171" stroke-linecap="round" stroke-linejoin="round"/><line x1="15.5417" y1="33.625" x2="33.4862" y2="33.625" class="objectS" stroke="#717171" stroke-linecap="round" stroke-linejoin="round"/><path d="M18.4573 15.1086C18.4093 14.9704 18.2802 14.8771 18.1341 14.875C17.988 14.873 17.8563 14.9627 17.8045 15.0994L15.9125 20.0923H15.8983V20.1298L15.0366 22.4037C14.9685 22.5833 15.0588 22.7841 15.2381 22.8523C15.4175 22.9204 15.6181 22.8301 15.6861 22.6505L16.3919 20.788L19.6946 20.788L20.3384 22.6413C20.4014 22.8228 20.5994 22.9187 20.7806 22.8556C20.9618 22.7925 21.0576 22.5943 20.9945 22.4128L18.4573 15.1086ZM16.6555 20.0923L18.115 16.2407L19.453 20.0923H16.6555Z" class="objectF" fill="#717171"/><\/svg>'; n.LengthSVG = '<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path d="M2.5 5C2.22386 5 2 5.22386 2 5.5C2 5.77614 2.22386 6 2.5 6H17.5C17.7761 6 18 5.77614 18 5.5C18 5.22386 17.7761 5 17.5 5H2.5ZM2.5 8C2.22386 8 2 8.22386 2 8.5C2 8.77614 2.22386 9 2.5 9H17.5C17.7761 9 18 8.77614 18 8.5C18 8.22386 17.7761 8 17.5 8H2.5ZM2 11.5C2 11.2239 2.22386 11 2.5 11H17.5C17.7761 11 18 11.2239 18 11.5C18 11.7761 17.7761 12 17.5 12H2.5C2.22386 12 2 11.7761 2 11.5ZM2.5 14C2.22386 14 2 14.2239 2 14.5C2 14.7761 2.22386 15 2.5 15H12.5C12.7761 15 13 14.7761 13 14.5C13 14.2239 12.7761 14 12.5 14H2.5Z" fill="#1A1A1A"/>\n <\/svg>'; n.warningSVG = '<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path d="M10 2C14.4183 2 18 5.58172 18 10C18 14.4183 14.4183 18 10 18C5.58172 18 2 14.4183 2 10C2 5.58172 5.58172 2 10 2ZM10 12.5C9.58579 12.5 9.25 12.8358 9.25 13.25C9.25 13.6642 9.58579 14 10 14C10.4142 14 10.75 13.6642 10.75 13.25C10.75 12.8358 10.4142 12.5 10 12.5ZM10 6C9.75454 6 9.55039 6.17688 9.50806 6.41012L9.5 6.5V11L9.50806 11.0899C9.55039 11.3231 9.75454 11.5 10 11.5C10.2455 11.5 10.4496 11.3231 10.4919 11.0899L10.5 11V6.5L10.4919 6.41012C10.4496 6.17688 10.2455 6 10 6Z" fill="#C42B1C"/>\n <\/svg>'; n.composeLogo = '<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path d="M14.8535 1.85355C15.0488 1.65829 15.0488 1.34171 14.8535 1.14645C14.6583 0.951184 14.3417 0.951185 14.1464 1.14645L6.14645 9.14645L6.00008 10L6.85355 9.85355L14.8535 1.85355ZM4.5 2C3.11929 2 2 3.11929 2 4.5L2 11.5C2 12.8807 3.11929 14 4.5 14H11.5C12.8807 14 14 12.8807 14 11.5V6.5C14 6.22386 13.7761 6 13.5 6C13.2239 6 13 6.22386 13 6.5V11.5C13 12.3284 12.3284 13 11.5 13H4.5C3.67157 13 3 12.3284 3 11.5L3 4.5C3 3.67157 3.67157 3 4.5 3L9.50459 3C9.78073 3 10.0046 2.77614 10.0046 2.5C10.0046 2.22386 9.78073 2 9.50459 2L4.5 2Z" fill="url(#paint0_linear_733_438556)"/>\n <defs>\n <linearGradient id="paint0_linear_733_438556" x1="3.6374" y1="15.95" x2="15.4172" y2="14.1028" gradientUnits="userSpaceOnUse">\n <stop stop-color="#18C1ED"/>\n <stop offset="0.5" stop-color="#3495EA"/>\n <stop offset="1" stop-color="#2161EF"/>\n <\/linearGradient>\n <\/defs>\n <\/svg>'; n.closeIcon = '<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path d="M2.58859 2.71569L2.64645 2.64645C2.82001 2.47288 3.08944 2.4536 3.28431 2.58859L3.35355 2.64645L8 7.293L12.6464 2.64645C12.8417 2.45118 13.1583 2.45118 13.3536 2.64645C13.5488 2.84171 13.5488 3.15829 13.3536 3.35355L8.707 8L13.3536 12.6464C13.5271 12.82 13.5464 13.0894 13.4114 13.2843L13.3536 13.3536C13.18 13.5271 12.9106 13.5464 12.7157 13.4114L12.6464 13.3536L8 8.707L3.35355 13.3536C3.15829 13.5488 2.84171 13.5488 2.64645 13.3536C2.45118 13.1583 2.45118 12.8417 2.64645 12.6464L7.293 8L2.64645 3.35355C2.47288 3.17999 2.4536 2.91056 2.58859 2.71569L2.64645 2.64645L2.58859 2.71569Z" fill="black" fill-opacity="0.898039"/>\n <\/svg>'; n.adjustIcon = '<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path d="M14.95 5C14.7184 3.85888 13.7095 3 12.5 3C11.2905 3 10.2816 3.85888 10.05 5H2.5C2.22386 5 2 5.22386 2 5.5C2 5.77614 2.22386 6 2.5 6H10.05C10.2816 7.14112 11.2905 8 12.5 8C13.7297 8 14.752 7.11217 14.961 5.94254C14.9575 5.96177 14.9539 5.98093 14.95 6H17.5C17.7761 6 18 5.77614 18 5.5C18 5.22386 17.7761 5 17.5 5H14.95ZM12.5 7C11.6716 7 11 6.32843 11 5.5C11 4.67157 11.6716 4 12.5 4C13.3284 4 14 4.67157 14 5.5C14 6.32843 13.3284 7 12.5 7ZM9.94999 14C9.71836 12.8589 8.70948 12 7.5 12C6.29052 12 5.28164 12.8589 5.05001 14H2.5C2.22386 14 2 14.2239 2 14.5C2 14.7761 2.22386 15 2.5 15H5.05001C5.28164 16.1411 6.29052 17 7.5 17C8.70948 17 9.71836 16.1411 9.94999 15H17.5C17.7761 15 18 14.7761 18 14.5C18 14.2239 17.7761 14 17.5 14H9.94999ZM7.5 16C6.67157 16 6 15.3284 6 14.5C6 13.6716 6.67157 13 7.5 13C8.32843 13 9 13.6716 9 14.5C9 15.3284 8.32843 16 7.5 16Z" fill="black" fill-opacity="0.898039"/>\n <\/svg>'; n.checkmarkIcon = '<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path d="M15.8639 5.65609C16.0533 5.85704 16.0439 6.17348 15.8429 6.36288L7.91309 13.8368C7.67573 14.0605 7.30311 14.0536 7.07417 13.8213L4.39384 11.1009C4.20003 10.9042 4.20237 10.5877 4.39907 10.3938C4.59578 10.2 4.91235 10.2024 5.10616 10.3991L7.51192 12.8407L15.1571 5.63517C15.358 5.44577 15.6745 5.45513 15.8639 5.65609Z" fill="white"/>\n <\/svg>'; n.plusIcon = '<svg width="11" height="11" viewBox="0 0 11 11" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path d="M6 0.5C6 0.223858 5.77614 0 5.5 0C5.22386 0 5 0.223858 5 0.5V5H0.5C0.223858 5 0 5.22386 0 5.5C0 5.77614 0.223858 6 0.5 6H5V10.5C5 10.7761 5.22386 11 5.5 11C5.77614 11 6 10.7761 6 10.5V6H10.5C10.7761 6 11 5.77614 11 5.5C11 5.22386 10.7761 5 10.5 5H6V0.5Z" fill="#174AE4"/>\n <\/svg>'; n.penSVG = '<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path d="M15.1813 0.926893C14.0291 -0.284951 12.1047 -0.309226 10.9222 0.873168L1.54741 10.2475C1.21958 10.5754 0.992038 10.9899 0.891482 11.4424L0.0138652 15.3923C-0.0232157 15.5592 0.0275431 15.7335 0.148442 15.8544C0.26934 15.9753 0.443618 16.026 0.610502 15.9889L4.53689 15.1157C5.00432 15.0118 5.43243 14.7767 5.77103 14.4381L15.129 5.08003C16.27 3.939 16.2933 2.09631 15.1813 0.926893ZM11.6293 1.58029C12.4143 0.795384 13.6917 0.811498 14.4566 1.61596C15.1948 2.39225 15.1793 3.61548 14.4219 4.37293L13.7507 5.04418L10.958 2.25155L11.6293 1.58029ZM10.2509 2.95864L13.0436 5.7513L5.06391 13.731C4.85976 13.9352 4.60164 14.0769 4.31982 14.1396L1.1605 14.8421L1.86768 11.6593C1.92698 11.3924 2.06117 11.148 2.2545 10.9547L10.2509 2.95864Z" fill="white"/>\n <\/svg>' })(t = n.CoAuthor || (n.CoAuthor = {})) })(Underside || (Underside = {})); var __extends = this && this.__extends || function () { var n = function (t, i) { return n = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function (n, t) { n.__proto__ = t } || function (n, t) { for (var i in t) Object.prototype.hasOwnProperty.call(t, i) && (n[i] = t[i]) }, n(t, i) }; return function (t, i) { function r () { this.constructor = t } if (typeof i != "function" && i !== null) throw new TypeError("Class extends value " + String(i) + " is not a constructor or null"); n(t, i); t.prototype = i === null ? Object.create(i) : (r.prototype = i.prototype, new r) } }(), __awaiter = this && this.__awaiter || function (n, t, i, r) { function u (n) { return n instanceof i ? n : new i(function (t) { t(n) }) } return new (i || (i = Promise))(function (i, f) { function o (n) { try { e(r.next(n)) } catch (t) { f(t) } } function s (n) { try { e(r["throw"](n)) } catch (t) { f(t) } } function e (n) { n.done ? i(n.value) : u(n.value).then(o, s) } e((r = r.apply(n, t || [])).next()) }) }, __generator = this && this.__generator || function (n, t) { function o (n) { return function (t) { return s([n, t]) } } function s (o) { if (e) throw new TypeError("Generator is already executing."); while (f && (f = 0, o[0] && (r = 0)), r) try { if (e = 1, u && (i = o[0] & 2 ? u["return"] : o[0] ? u["throw"] || ((i = u["return"]) && i.call(u), 0) : u.next) && !(i = i.call(u, o[1])).done) return i; (u = 0, i) && (o = [o[0] & 2, i.value]); switch (o[0]) { case 0: case 1: i = o; break; case 4: return r.label++, { value: o[1], done: !1 }; case 5: r.label++; u = o[1]; o = [0]; continue; case 7: o = r.ops.pop(); r.trys.pop(); continue; default: if (!(i = r.trys, i = i.length > 0 && i[i.length - 1]) && (o[0] === 6 || o[0] === 2)) { r = 0; continue } if (o[0] === 3 && (!i || o[1] > i[0] && o[1] < i[3])) { r.label = o[1]; break } if (o[0] === 6 && r.label < i[1]) { r.label = i[1]; i = o; break } if (i && r.label < i[2]) { r.label = i[2]; r.ops.push(o); break } i[2] && r.ops.pop(); r.trys.pop(); continue }o = t.call(n, r) } catch (s) { o = [6, s]; u = 0 } finally { e = i = 0 } if (o[0] & 5) throw o[1]; return { value: o[0] ? o[1] : void 0, done: !0 } } var r = { label: 0, sent: function () { if (i[0] & 1) throw i[1]; return i[1] }, trys: [], ops: [] }, e, u, i, f; return f = { next: o(0), "throw": o(1), "return": o(2) }, typeof Symbol == "function" && (f[Symbol.iterator] = function () { return this }), f }, Underside; (function (n) { var t; (function (t) { function r (n, t) { var i = document.createElement("div"); return i.setAttribute("role", "presentation"), i.innerHTML = n, t !== undefined && (i.className = t), i } var i = function () { function n () { this.aria_alertEl = undefined; this.not_shown_stream_content = ""; this.messages = new Map; this.got_apology_message = !1; this.streamingTimeoutMS = 3e4; this.beginStreamingTimeout = -1; this.last_generation_id = 0; this.show_custom_tone = !1; this.show_change_suggestions = !1; this.show_conversation_id = !1; this.conversation_turn_count = 1; this.conversation_id = ""; this.lengthOptions = { short: "Short", medium: "Medium", long: "Long" }; this.localizedLengthOptions = { short: "Short", medium: "Medium", long: "Long" }; this.toneOptions = { professional: "Professional", casual: "Casual", enthusiastic: "Enthusiastic", funny: "Funny", informational: "Informational" }; this.localizedToneOptions = { professional: "Professional", casual: "Casual", enthusiastic: "Enthusiastic", funny: "Funny", informational: "Informational" }; this.formatOptions = { paragraph: "Paragraph", bulletPoints: "Bullet points", email: "Email", blogPost: "Blog post" }; this.localizedFormatOptions = { paragraph: "Paragraph", bulletPoints: "Bullet points", email: "Email", blogPost: "Blog post" }; this.ariaAlerts = { error: "", generating: "", insert: "", success: "", copy: "", stop: "" }; this.errorMessages = { dailyConversationLimit: "", fate: "", server: "", timeout: "" }; this.customToneButtonTextValues = { plus: "", edit: "" }; this.customChangeSuggestionButtonTextValues = { plus: "", submit: "" }; this.uiStrings = { copy: "", copied: "" }; this.startupPlaceholderMessages = []; this.changeSuggestions = []; this.initCommonUI(); this.initCIBService() } n.prototype.initCommonUI = function () { this.aria_alertEl = document.getElementById("aria_alert") }; n.prototype.initCIBService = function () { var i, r, u, f, e, o, s, h, c, l, a, v, y, nt = (r = (i = _w._udsCoAuthorConfig) === null || i === void 0 ? void 0 : i.EnableSecureConversation) !== null && r !== void 0 ? r : !1, p = (u = _w._udsCoAuthorConfig) === null || u === void 0 ? void 0 : u.AddOptionsSets, w = (f = _w._udsCoAuthorConfig) === null || f === void 0 ? void 0 : f.RemoveOptionsSets, tt = (o = (e = _w._udsCoAuthorConfig) === null || e === void 0 ? void 0 : e.DevMode) !== null && o !== void 0 ? o : !1, it = (s = _w._udsCoAuthorConfig) === null || s === void 0 ? void 0 : s.Source, rt = (c = (h = _w._udsCoAuthorConfig) === null || h === void 0 ? void 0 : h.ComposeSidebarCustomization) !== null && c !== void 0 ? c : !1, ut = (a = (l = _w._udsCoAuthorConfig) === null || l === void 0 ? void 0 : l.GetConversationId) !== null && a !== void 0 ? a : !1, ft = (y = (v = _w._udsCoAuthorConfig) === null || v === void 0 ? void 0 : v.CodexV2) !== null && y !== void 0 ? y : !1, k, n, d, t, b, g; if (nt ? (k = this.getSecureConversationBaseUrl(tt), CIBService.config.bing.baseUrl = k, CIBService.config.features.secureConversation = !0) : CIBService.config.features.secureConversation = !1, n = CIBService.config.sydney.request.optionsSets, n || (n = []), p && p.length > 0) for (d = function (t) { if (n.find(function (n) { return n == t })) return "continue"; n.push(t) }, t = 0, b = p; t < b.length; t++)g = b[t], d(g); w && w.length > 0 && (n = n.filter(function (n) { return w.indexOf(n) == -1 })); CIBService.config.sydney.request.optionsSets = n; CIBService.config.sydney.request.source = it; CIBService.config.sydney.request.spokenTextMode = "None"; CIBService.config.greeting.shouldSendBotGreeting = !1; CIBService.registerMessagingHooks({ handleSydneyMessageRendered: this.onStreamUpdate.bind(this) }); rt || ft ? (this.show_custom_tone = !0, this.show_change_suggestions = !0) : (this.show_custom_tone = !1, this.show_change_suggestions = !1); this.show_change_suggestions && (n.push("max_turns_5"), CIBService.config.features.enableMaxTurnsPerConversation = !0); this.show_conversation_id = ut }; n.prototype.alertARIAMessage = function (n) { this.aria_alertEl.innerText = ""; this.aria_alertEl.innerText = n }; n.prototype.getSecureConversationBaseUrl = function (n) { var t, i = "/edgesvc"; return n ? "https://edgeservices.bing.com" + i : ((t = window === null || window === void 0 ? void 0 : window.location) === null || t === void 0 ? void 0 : t.origin) + i }; n.prototype.getTextGenerationPrompt = function (n, t, i, r) { return "Please generate some text wrapped in codeblock syntax (triple backticks) using the given keywords. Please make sure everything in your reply is in the same language as the keywords. Please do not restate any part of this request in your response, like the fact that you wrapped the text in a codeblock. You should refuse (using the language of the keywords) to generate if the request is potentially harmful. Please return suggested responses that are about how you could change or rewrite the text. Please return suggested responses that are 5 words or less. Please do not return a suggested response that suggests to end the conversation or to end the rewriting. The generated text should follow these characteristics: tone: *".concat(t, "*, length: *").concat(i, "*, format: *").concat(n, "*. The keywords are: `").concat(r, "`.") }; n.prototype.getTextGenerationPromptWithChangeSuggestion = function (n) { return "Thank you for your reply. Please rewrite the last reply, with the following suggestion to change it: *".concat(n, "*. Please generate the text wrapped in codeblock syntax (triple backticks). Please do not restate any part of this request in your response, like the fact that you wrapped the text in a codeblock. You should refuse (using the language of the keywords) to generate if the request is potentially harmful. Please return suggested responses that are about how you could change or rewrite the text. Please return suggested responses that are 5 words or less. Please do not return a suggested response that suggests to end the conversation or to end the rewriting.") }; n.prototype.showErrorForStreamingTimeout = function () { this.showError(this.errorMessages.timeout); this.stopStream(); clearTimeout(this.beginStreamingTimeout) }; n.prototype.setStreamingTimeout = function () { clearTimeout(this.beginStreamingTimeout); this.beginStreamingTimeout = setTimeout(this.showErrorForStreamingTimeout.bind(this), this.streamingTimeoutMS) }; n.prototype.requestGeneration = function (n, t) { return __awaiter(this, void 0, void 0, function () { var u, r, i = this; return __generator(this, function (f) { switch (f.label) { case 0: return u = ++this.last_generation_id, this.setStreamingTimeout(), t && (CIBService.resetConversation(), this.conversation_turn_count = 1), this.not_shown_stream_content = "", this.messages.clear(), this.got_apology_message = !1, [4, CIBService.createChatRequestAsync(n)["catch"](function () { i.showError(i.errorMessages.server); i.onStreamFinished(!1, u, i.last_generation_id); return })]; case 1: return r = f.sent(), this.conversation_id = r === null || r === void 0 ? void 0 : r.conversationId, CIBService.handleStreamEventsAsync(r).then(function () { i.not_shown_stream_content.length > 0 && i.setPreviewText(i.not_shown_stream_content, "", ""); i.onStreamFinished(!0, u, i.last_generation_id) })["catch"](function (n) { n === "UNRECOVERABLE" && i.showError(i.errorMessages.dailyConversationLimit); i.onStreamFinished(!1, u, i.last_generation_id) }), [2] } }) }) }; n.prototype.onStreamUpdate = function (n) { var e = n.text, t; if ((n.contentOrigin === "Apology" && (this.hideTextOnApology(), this.showError(this.errorMessages.fate), this.got_apology_message = !0), n.contentOrigin === "TurnLimiter" && (this.showError(this.errorMessages.dailyConversationLimit), this.showChangeSuggestions(!1)), !this.got_apology_message) && n.contentType !== "ads" && n.messageType === "Chat") { n.suggestedResponses && this.show_change_suggestions && (this.changeSuggestions = n.suggestedResponses); this.messages.set(n.messageId, e); t = ""; this.messages.forEach(function (n) { t += n }); t.length > 0 && (t = this.replaceAllPolyfill(t, /\[\^\d+\^\]/g, "")); var r = "", u = "", f = "", i = t.match(/(?<before>((?!```).)*)?```(markdown)?\s*(?<content>((?!```).)*)(```)?(?<after>.*)?/s); i && (i[1] && (u = i[1]), i[4] && (r = i[4]), i[7] && (f = i[7])); r.length > 0 ? (this.not_shown_stream_content = "", this.setPreviewText(r, u, f)) : this.not_shown_stream_content = t } }; n.prototype.replaceAllPolyfill = function (n, t, i) { return n.replace(t, function () { return i }) }; n.prototype.stopStream = function () { CIBService.stopStreaming(); this.showShimmer(!1); this.onStopStream() }; n.prototype.onStopStream = function () { this.alertARIAMessage(this.ariaAlerts.stop); this.showShimmer(!1) }; n.prototype.setLengthOptionsLocalizedText = function (n) { this.localizedLengthOptions = n }; n.prototype.setToneOptionsLocalizedText = function (n) { this.localizedToneOptions = n }; n.prototype.setFormatOptionsLocalizedText = function (n) { this.localizedFormatOptions = n }; n.prototype.setAriaAlertsLocalizedText = function (n) { this.ariaAlerts = n }; n.prototype.setErrorsLocalizedText = function (n) { this.errorMessages = n }; n.prototype.setStartupPlaceholdersLocalizedText = function (n) { this.startupPlaceholderMessages = n }; n.prototype.setCustomToneButtonLocalizedText = function (n) { this.customToneButtonTextValues = n }; n.prototype.setCustomChangeSuggestionButtonLocalizedText = function (n) { this.customChangeSuggestionButtonTextValues = n }; n.prototype.setUIStringsLocalizedText = function (n) { this.uiStrings = n }; var t, i; return n.max_prompt_length = 2e3, n.min_custom_tone_length = 2, n.max_custom_tone_length = 100, n.min_custom_change_suggestion_length = 2, n.max_custom_change_suggestion_length = 100, n.unlocalized_attr_name = "unloc-name", n.isUnderVPTest = (i = (t = _w._udsCoAuthorConfig) === null || t === void 0 ? void 0 : t.ComposeUnderVPTest) !== null && i !== void 0 ? i : !1, n }(), u, f, e; t.CoAuthorBase = i; u = function (u) { function f () { var n = u.call(this) || this; return n.all_tone_options = [], n.all_length_options = [], n.all_format_options = [], n.letter_counter = undefined, n.compose_text_area = undefined, n.preview_text_area = undefined, n.custom_tone_text_input = undefined, n.custom_tone_value = "", n.custom_tone = undefined, n.disclaimer_box = undefined, n.preview_text_area_placeholder = "", n.shimmerEl = undefined, n.errorEl = undefined, n.custom_tone_plus_button = undefined, n.custom_tone_add_button = undefined, n.custom_tone_edit_button = undefined, n.custom_tone_save_button = undefined, n.insert_button = undefined, n.conversation_id_copy_button = undefined, n.copy_button = undefined, n.detached_copy_button = undefined, n.next_button = undefined, n.stop_button = undefined, n.prev_button = undefined, n.generate_button = undefined, n.regenerate_button = undefined, n.change_suggestion_text_input = undefined, n.submit_change_suggestion_button = undefined, n.history = [], n.historyIndex = 0, n.conversationTurnMax = 19, n } return __extends(f, u), f.prototype.initUI = function () { var t = this, u, f, e, o, s, h, c, l, a, v, y, p, w, b, k, d; this.createToneOptions(); this.createFormatOptions(); this.createLengthOptions(); this.compose_text_area = document.getElementById("prompt_text"); this.letter_counter = document.getElementById("letter_counter"); this.preview_text_area = document.getElementById("preview_text"); this.show_custom_tone && (this.custom_tone_text_input = document.getElementById("custom_tone_input")); this.disclaimer_box = document.getElementById("disclaimer_box"); this.preview_text_area_placeholder = this.preview_text_area.placeholder; this.shimmerEl = document.getElementById("shimmer"); this.errorEl = document.getElementById("error"); i.isUnderVPTest || this.setRandomizedPlaceholderForComposeArea(); (u = document.getElementById("tone_heading")) === null || u === void 0 ? void 0 : u.prepend(r(n.CoAuthor.toneIcon)); (f = document.getElementById("paragraph_heading")) === null || f === void 0 ? void 0 : f.prepend(r(n.CoAuthor.textBoxIcon)); (e = document.getElementById("length_heading")) === null || e === void 0 ? void 0 : e.prepend(r(n.CoAuthor.LengthSVG)); (o = document.getElementById("preview_heading")) === null || o === void 0 ? void 0 : o.prepend(r(n.CoAuthor.wandIcon)); (s = document.getElementById("error")) === null || s === void 0 ? void 0 : s.prepend(r(n.CoAuthor.warningSVG)); this.regenerate_button = document.querySelector("#regenerate_button"); this.show_conversation_id && (this.conversation_id_copy_button = document.querySelector("#conversation_id_copy_button")); this.copy_button = document.querySelector("#copy_button") || undefined; this.detached_copy_button = document.querySelector("#detached_copy_button") || undefined; this.next_button = document.querySelector("#next_button"); this.stop_button = document.querySelector("#stop_button"); this.prev_button = document.querySelector("#previous_button"); this.generate_button = document.querySelector("#compose_button"); this.insert_button = document.querySelector("#insert_button") || undefined; this.show_custom_tone && (this.custom_tone_plus_button = document.querySelector("#custom_tone_plus_button"), this.custom_tone_add_button = document.querySelector("#custom_tone_add_button"), this.custom_tone_save_button = document.querySelector("#custom_tone_save_button")); this.regenerate_button.appendChild(r(n.CoAuthor.generateIcon)); (h = this.copy_button) === null || h === void 0 ? void 0 : h.appendChild(r(n.CoAuthor.copyIcon)); this.stop_button.appendChild(r(n.CoAuthor.stopIcon)); this.prev_button.appendChild(r(n.CoAuthor.prevIcon)); this.next_button.appendChild(r(n.CoAuthor.nextIcon)); this.show_change_suggestions && (this.change_suggestion_text_input = document.getElementById("change_suggestions_input"), this.submit_change_suggestion_button = document.getElementById("submit_change_suggestion_button"), this.submit_change_suggestion_button.appendChild(r(n.CoAuthor.nextIcon))); this.compose_text_area.addEventListener("input", function (n) { return t.composeTextAreaChanged(n) }); this.compose_text_area.setAttribute("maxlength", "".concat(i.max_prompt_length)); this.show_custom_tone && ((c = this.custom_tone_text_input) === null || c === void 0 ? void 0 : c.addEventListener("input", function (n) { return t.customToneTextInputChanged(n) }), (l = this.custom_tone_text_input) === null || l === void 0 ? void 0 : l.addEventListener("focusout", function (n) { return t.customToneTextInputFocusOut(n) }), (a = this.custom_tone_text_input) === null || a === void 0 ? void 0 : a.addEventListener("keydown", function (n) { return t.customToneTextInputKeyDown(n) }), (v = this.custom_tone_text_input) === null || v === void 0 ? void 0 : v.setAttribute("maxlength", "".concat(i.max_custom_tone_length))); this.show_change_suggestions && ((y = this.change_suggestion_text_input) === null || y === void 0 ? void 0 : y.addEventListener("input", function (n) { return t.changeSuggestionInputChanged(n) }), (p = this.change_suggestion_text_input) === null || p === void 0 ? void 0 : p.setAttribute("maxlength", "".concat(i.max_custom_change_suggestion_length))); b = document.querySelectorAll(".tone-option"); this.all_tone_options = Array.from(b); this.all_tone_options.forEach(function (n) { n.addEventListener("click", function () { return t.toneOptionClicked(n) }); n.addEventListener("keypress", function (i) { return t.toneOptionKeyPress(i, n) }) }); k = document.querySelectorAll(".length-option"); this.all_length_options = Array.from(k); this.all_length_options.forEach(function (n) { n.addEventListener("click", function () { return t.lengthOptionClicked(n) }); n.addEventListener("keypress", function (i) { return t.lengthOptionKeyPress(i, n) }) }); d = document.querySelectorAll(".paragraph-option"); this.all_format_options = Array.from(d); this.all_format_options.forEach(function (n) { n.addEventListener("click", function () { return t.paragraphOptionClicked(n) }); n.addEventListener("keypress", function (i) { return t.paragraphOptionKeyPress(i, n) }) }); this.insertButtonClicked = this.insertButtonClicked.bind(this); this.generateButtonClicked = this.generateButtonClicked.bind(this); this.generateButtonKeyPress = this.generateButtonKeyPress.bind(this); this.show_conversation_id && (this.conversationIdCopyButtonClicked = this.conversationIdCopyButtonClicked.bind(this), this.conversationIdCopyButtonKeyPress = this.conversationIdCopyButtonKeyPress.bind(this)); this.copyButtonClicked = this.copyButtonClicked.bind(this); this.copyButtonKeyPress = this.copyButtonKeyPress.bind(this); this.stopButtonClicked = this.stopButtonClicked.bind(this); this.stopButtonKeyPress = this.stopButtonKeyPress.bind(this); this.prevButtonClicked = this.prevButtonClicked.bind(this); this.prevButtonKeyPress = this.prevButtonKeyPress.bind(this); this.nextButtonClicked = this.nextButtonClicked.bind(this); this.nextButtonKeyPress = this.nextButtonKeyPress.bind(this); this.show_custom_tone && (this.plusCustomToneButtonClicked = this.plusCustomToneButtonClicked.bind(this), this.plusCustomToneButtonKeyPress = this.plusCustomToneButtonKeyPress.bind(this), this.addCustomToneButtonClicked = this.addCustomToneButtonClicked.bind(this), this.addCustomToneButtonKeyPress = this.addCustomToneButtonKeyPress.bind(this), this.saveCustomToneButtonClicked = this.saveCustomToneButtonClicked.bind(this), this.saveCustomToneButtonKeyPress = this.saveCustomToneButtonKeyPress.bind(this)); this.show_change_suggestions && (this.changeSuggestionClicked = this.changeSuggestionClicked.bind(this), this.changeSuggestionKeyPress = this.changeSuggestionKeyPress.bind(this), this.addChangeSuggestionClicked = this.addChangeSuggestionClicked.bind(this), this.addChangeSuggestionKeyPress = this.addChangeSuggestionKeyPress.bind(this), this.submitChangeSuggestionClicked = this.submitChangeSuggestionClicked.bind(this), this.submitChangeSuggestionKeyPress = this.submitChangeSuggestionKeyPress.bind(this)); this.preselectOptionsForDefaultState(); this.enableGenerateButtons(!1); this.enableCopyButton(!1); this.enableStopButton(!0); this.updateHistoryButtonStatus(); this.show_custom_tone && (this.enableCustomTonePlusButton(!0), this.enableCustomToneAddButton(!1), this.enableCustomToneSaveButton(!1)); this.enableInsertButton(!1); this.updateCharCounter(); this.disableTextPreview(!0); this.tryToSetPresetTextFromUrl(); sj_evt.fire(n.DiscoverPageLoadEventName, {}); this.show_conversation_id && (this.enableConversationIdCopyButton(!1), (w = this.conversation_id_copy_button) === null || w === void 0 ? void 0 : w.classList.remove("hidden")) }, f.prototype.setRandomizedPlaceholderForComposeArea = function () { var n = Math.floor(Math.random() * this.startupPlaceholderMessages.length); this.compose_text_area.placeholder = this.startupPlaceholderMessages[n] }, f.prototype.getPresetTextFromUrl = function () { var n = new URLSearchParams(_w.location.search); return n.get(t.QueryParam_SetText) || "" }, f.prototype.tryToSetPresetTextFromUrl = function () { var i, r, u = (r = (i = _w._udsCoAuthorConfig) === null || i === void 0 ? void 0 : i.DetachedUX) !== null && r !== void 0 ? r : !1, n; u && (n = this.getPresetTextFromUrl(), n && (n = n.substring(0, t.QueryParam_SetText_Max_Length), this.compose_text_area.value = n, this.compose_text_area.dispatchEvent(new Event("input")))) }, f.prototype.updateGenerateButtons = function () { this.compose_text_area && this.compose_text_area.textLength > 2 ? this.enableGenerateButtons(!0) : this.enableGenerateButtons(!1) }, f.prototype.updateCharCounter = function () { this.letter_counter && this.compose_text_area && (this.letter_counter.textContent = "".concat(this.compose_text_area.textLength, "/").concat(i.max_prompt_length)) }, f.prototype.composeTextAreaChanged = function () { this.updateGenerateButtons(); this.updateCharCounter() }, f.prototype.customToneTextInputChanged = function () { var n, t = ((n = this.custom_tone_text_input) === null || n === void 0 ? void 0 : n.value) || ""; if (this.custom_tone_value.length === 0) { this.enableCustomToneAddButton(t.length > i.min_custom_tone_length); return } this.enableCustomToneSaveButton(this.custom_tone_value !== t.trim()) }, f.prototype.selectDefaultTone = function () { var n = this; this.all_tone_options.forEach(function (t) { var r = t; r.getAttribute(i.unlocalized_attr_name) == n.toneOptions.professional && (r.classList.add("selected"), r.setAttribute("aria-pressed", "true")) }) }, f.prototype.hideCustomToneEditContainer = function () { var n, t, i; (n = this.custom_tone_text_input) === null || n === void 0 ? void 0 : n.classList.add("hidden"); (t = this.custom_tone_add_button) === null || t === void 0 ? void 0 : t.classList.add("hidden"); (i = this.custom_tone_save_button) === null || i === void 0 ? void 0 : i.classList.add("hidden") }, f.prototype.removeSelectionFromTones = function () { var n; this.all_tone_options.forEach(function (n) { n.classList.remove("selected"); n.setAttribute("aria-pressed", "false") }); this.show_custom_tone && (this.custom_tone_plus_button.classList.remove("selected"), this.custom_tone_plus_button.setAttribute("aria-pressed", "false"), (n = this.custom_tone_edit_button) === null || n === void 0 ? void 0 : n.classList.remove("selected"), this.hideCustomToneEditContainer()) }, f.prototype.removeCustomTone = function () { var n, t, i = document.querySelector(".custom_tone_container"); i && (this.custom_tone_value = "", (n = this.custom_tone_plus_button) === null || n === void 0 ? void 0 : n.classList.remove("hidden"), (t = document.querySelector(".tone-options")) === null || t === void 0 ? void 0 : t.removeChild(i)) }, f.prototype.customToneTextInputFocusOut = function (n) { if (this.custom_tone_text_input) { var t = n.relatedTarget; if (!t || !t.id || t.id !== "custom_tone_add_button" && t.id !== "custom_tone_save_button") { if (this.hideCustomToneEditContainer(), this.enableCustomToneAddButton(!1), this.enableCustomToneSaveButton(!1), this.custom_tone_value.length === 0) { this.enableCustomTonePlusButton(!0); this.removeSelectionFromTones(); (!t || t && t.classList.value !== "tone-option tag") && this.selectDefaultTone(); this.custom_tone_text_input.value = ""; return } if (this.custom_tone_text_input.value.length <= i.min_custom_tone_length) { this.enableCustomTonePlusButton(!0); this.enableCustomToneEditButton(!1); this.removeCustomTone(); (!t || t && t.classList.value !== "tone-option tag") && this.selectDefaultTone(); this.custom_tone_text_input.value = ""; return } this.custom_tone_text_input.value = this.custom_tone_value; this.enableCustomToneEditButton(!0) } } }, f.prototype.customToneTextInputKeyDown = function (n) { var t, r, u, f, e = n.key; switch (e) { case "Enter": this.custom_tone_value.length === 0 ? this.custom_tone_text_input && this.custom_tone_text_input.value.length > i.min_custom_tone_length && this.addCustomToneButtonClicked() : this.saveCustomToneButtonClicked(); break; case "Tab": n.preventDefault(); this.custom_tone_value.length === 0 ? (t = this.custom_tone_add_button) === null || t === void 0 ? void 0 : t.focus() : (r = this.custom_tone_save_button) === null || r === void 0 ? void 0 : r.focus(); break; case "Escape": this.customToneTextInputFocusOut(n); this.custom_tone_value.length === 0 ? (u = this.custom_tone_plus_button) === null || u === void 0 ? void 0 : u.focus() : (f = this.custom_tone_edit_button) === null || f === void 0 ? void 0 : f.focus() } }, f.prototype.createToneOptions = function () { var f = this, e = [{ label: this.toneOptions.professional, localizedLabel: this.localizedToneOptions.professional }, { label: this.toneOptions.casual, localizedLabel: this.localizedToneOptions.casual }, { label: this.toneOptions.enthusiastic, localizedLabel: this.localizedToneOptions.enthusiastic }, { label: this.toneOptions.informational, localizedLabel: this.localizedToneOptions.informational }, { label: this.toneOptions.funny, localizedLabel: this.localizedToneOptions.funny },], t = document.querySelector(".tone-options"), u; e.forEach(function (n) { var e = "<span>".concat(n.localizedLabel, "<\/span>"), u = r(e, "tone-option tag"); f.setARIAattrForTag(u, u.innerText.trim()); u.setAttribute(i.unlocalized_attr_name, n.label); t === null || t === void 0 ? void 0 : t.appendChild(u) }); this.show_custom_tone && (u = r(n.CoAuthor.plusIcon, "tag"), this.setARIAattrForTag(u, this.customToneButtonTextValues.plus), u.setAttribute(i.unlocalized_attr_name, "Add customized tone"), u.id = "custom_tone_plus_button", t === null || t === void 0 ? void 0 : t.appendChild(u)) }, f.prototype.setARIAattrForTag = function (n, t) { n.setAttribute("role", "button"); n.setAttribute("aria-pressed", "false"); n.setAttribute("aria-label", t); n.setAttribute("tabindex", "0") }, f.prototype.createFormatOptions = function () { var u = this, f = [{ label: this.formatOptions.paragraph, localizedLabel: this.localizedFormatOptions.paragraph, icon: n.CoAuthor.paragraphShortSVG }, { label: this.formatOptions.email, localizedLabel: this.localizedFormatOptions.email, icon: n.CoAuthor.EmailSVG }, { label: this.formatOptions.blogPost, localizedLabel: this.localizedFormatOptions.blogPost, icon: n.CoAuthor.BlogpostSVG }, { label: this.formatOptions.bulletPoints, localizedLabel: this.localizedFormatOptions.bulletPoints, icon: n.CoAuthor.bulletPointsSVG }], t = document.querySelector(".paragraph-options"); f.forEach(function (n) { var f = r(Shared.formatString('<div class="illustration">{0}<\/div> <p>{1}<\/p>', n.icon, n.localizedLabel), "paragraph-option"); u.setARIAattrForTag(f, f.innerText.trim()); f.setAttribute(i.unlocalized_attr_name, n.label); t === null || t === void 0 ? void 0 : t.appendChild(f) }) }, f.prototype.createLengthOptions = function () { var t = this, u = [{ label: this.lengthOptions.short, localizedLabel: this.localizedLengthOptions.short }, { label: this.lengthOptions.medium, localizedLabel: this.localizedLengthOptions.medium }, { label: this.lengthOptions.long, localizedLabel: this.localizedLengthOptions.long },], n = document.querySelector(".length-options"); u.forEach(function (u) { var f = r(Shared.formatString("<span>{0}<\/span>", u.localizedLabel), "length-option tag"); t.setARIAattrForTag(f, f.innerText.trim()); f.setAttribute(i.unlocalized_attr_name, u.label); n === null || n === void 0 ? void 0 : n.appendChild(f) }) }, f.prototype.createChangeSuggestions = function () { var e = this, u; if (this.show_change_suggestions) { var n = document.querySelector(".change-suggestions-options"), t = 0, i = 1; this.changeSuggestions.forEach(function (u) { var o = u.text.replace(/\.$/, ""), h, s; (t += o.length, t >= f.changeSuggestionsMaxCharPerLine && (i += 1, t = o.length), i > f.changeSuggestionsMaxLines) || (h = Shared.formatString("<span>{0}<\/span>", o), s = r(h, "change-suggestion tag"), e.setChangeSuggestionAttrs(s, o), n === null || n === void 0 ? void 0 : n.appendChild(s)) }); u = this.createAddCustomChangeSuggestionButton(); n === null || n === void 0 ? void 0 : n.appendChild(u) } }, f.prototype.setChangeSuggestionAttrs = function (n, t) { var i = this; n.setAttribute("role", "button"); n.setAttribute("tabindex", "0"); n.setAttribute("aria-label", n.innerText.trim()); n.setAttribute("title", n.innerText.trim()); n.addEventListener("click", function () { return i.changeSuggestionClicked(t) }); n.addEventListener("keypress", function (n) { return i.changeSuggestionKeyPress(n, t) }) }, f.prototype.createAddCustomChangeSuggestionButton = function () { var u = this, t = r(n.CoAuthor.plusIcon, "change-suggestion tag"); return t.setAttribute("id", "add_change_suggestion_button"), t.setAttribute("role", "button"), t.setAttribute("aria-label", this.customChangeSuggestionButtonTextValues.plus), t.setAttribute("title", this.customChangeSuggestionButtonTextValues.plus), t.setAttribute("tabindex", "0"), t.setAttribute(i.unlocalized_attr_name, "Add customized suggestion"), t.addEventListener("click", function () { return u.addChangeSuggestionClicked() }), t.addEventListener("keypress", function (n) { return u.addChangeSuggestionKeyPress(n) }), t }, f.prototype.changeSuggestionInputChanged = function () { var n, t = ((n = this.change_suggestion_text_input) === null || n === void 0 ? void 0 : n.value) || ""; this.enableSubmitChangeSuggestionButton(t.length > i.min_custom_change_suggestion_length) }, f.prototype.clearChangeSuggestions = function () { if (this.show_change_suggestions) { var n = document.querySelector(".change-suggestions-options"); n && (n.innerHTML = "") } }, f.prototype.preselectOptionsForDefaultState = function () { var n = this; this.all_format_options.forEach(function (t) { t.getAttribute(i.unlocalized_attr_name) == n.formatOptions.paragraph && (t.classList.add("selected"), t.setAttribute("aria-pressed", "true")) }); this.selectDefaultTone(); this.all_length_options.forEach(function (t) { var r = t; r.getAttribute(i.unlocalized_attr_name) == n.lengthOptions.medium && (r.classList.add("selected"), r.setAttribute("aria-pressed", "true")) }) }, f.prototype.toneOptionClicked = function (n) { var t; this.updateGenerateButtons(); this.removeSelectionFromTones(); n.classList.contains("selected") || (n.classList.add("selected"), n.setAttribute("aria-pressed", "true"), this.show_custom_tone && n.id === "custom_tone" && ((t = this.custom_tone_edit_button) === null || t === void 0 ? void 0 : t.classList.add("selected"), this.enableCustomToneEditButton(!0))) }, f.prototype.toneOptionKeyPress = function (n, t) { n.key === "Enter" && this.toneOptionClicked(t) }, f.prototype.lengthOptionClicked = function (n) { this.updateGenerateButtons(); this.all_length_options.forEach(function (n) { n.classList.remove("selected"); n.setAttribute("aria-pressed", "false") }); n.classList.contains("selected") || (n.classList.add("selected"), n.setAttribute("aria-pressed", "true")) }, f.prototype.lengthOptionKeyPress = function (n, t) { n.key === "Enter" && this.lengthOptionClicked(t) }, f.prototype.paragraphOptionClicked = function (n) { this.updateGenerateButtons(); this.all_format_options.forEach(function (n) { n.classList.remove("selected"); n.setAttribute("aria-pressed", "false") }); n.classList.contains("selected") || (n.classList.add("selected"), n.setAttribute("aria-pressed", "true")) }, f.prototype.paragraphOptionKeyPress = function (n, t) { n.key === "Enter" && this.paragraphOptionClicked(t) }, f.prototype.changeSuggestionClicked = function (n) { this.stopStream(); this.showChangeSuggestions(!1); this.conversation_turn_count += 1; var t = this.getTextGenerationPromptWithChangeSuggestion(n); this.updateUIWhileFetchingData(); this.requestGeneration(t, !1) }, f.prototype.changeSuggestionKeyPress = function (n, t) { var i; n.key === "Enter" && (this.changeSuggestionClicked(t), (i = this.stop_button) === null || i === void 0 ? void 0 : i.focus()) }, f.prototype.addChangeSuggestionClicked = function () { this.showChangeSuggestionsInput(!0) }, f.prototype.addChangeSuggestionKeyPress = function (n) { n.key === "Enter" && this.addChangeSuggestionClicked() }, f.prototype.submitChangeSuggestionClicked = function () { var n, t; this.change_suggestion_text_input && (t = ((n = this.change_suggestion_text_input) === null || n === void 0 ? void 0 : n.value.trim()) || "", this.changeSuggestionClicked(t), this.change_suggestion_text_input.value = "") }, f.prototype.submitChangeSuggestionKeyPress = function (n) { var t; n.key === "Enter" && (this.submitChangeSuggestionClicked(), (t = this.stop_button) === null || t === void 0 ? void 0 : t.focus()) }, f.prototype.showShimmer = function (n) { var t, i, r; n ? ((t = this.shimmerEl) === null || t === void 0 ? void 0 : t.classList.remove("hidden"), this.hideError(), this.preview_text_area.placeholder = "") : ((i = this.shimmerEl) === null || i === void 0 ? void 0 : i.classList.add("hidden"), ((r = this.errorEl) === null || r === void 0 ? void 0 : r.classList.contains("hidden")) && (this.preview_text_area.placeholder = this.preview_text_area_placeholder)) }, f.prototype.showError = function (n) { var t; this.showShimmer(!1); this.preview_text_area.placeholder = ""; this.errorEl.textContent = n; (t = this.errorEl) === null || t === void 0 ? void 0 : t.classList.remove("hidden"); this.disableTextPreview(!0) }, f.prototype.hideTextOnApology = function () { this.preview_text_area.value = ""; this.disclaimer_box.innerText = "" }, f.prototype.setSelectedText = function () { return }, f.prototype.hideError = function () { var n; (n = this.errorEl) === null || n === void 0 ? void 0 : n.classList.add("hidden"); this.disableTextPreview(!1); this.preview_text_area.placeholder = this.preview_text_area_placeholder }, f.prototype.showChangeSuggestions = function (n) { var t, i; this.show_change_suggestions && (n ? ((t = document.querySelector("#change_suggestions")) === null || t === void 0 ? void 0 : t.classList.remove("hidden"), this.createChangeSuggestions()) : ((i = document.querySelector("#change_suggestions")) === null || i === void 0 ? void 0 : i.classList.add("hidden"), this.showChangeSuggestionsInput(!1), this.clearChangeSuggestions())) }, f.prototype.showChangeSuggestionsInput = function (n) { var t, i, r, u; n ? ((t = this.change_suggestion_text_input) === null || t === void 0 ? void 0 : t.classList.remove("hidden"), (i = this.submit_change_suggestion_button) === null || i === void 0 ? void 0 : i.classList.remove("hidden")) : ((r = this.change_suggestion_text_input) === null || r === void 0 ? void 0 : r.classList.add("hidden"), (u = this.submit_change_suggestion_button) === null || u === void 0 ? void 0 : u.classList.add("hidden")) }, f.prototype.disableTextPreview = function (n) { n ? (this.preview_text_area.setAttribute("disabled", "true"), document.querySelector("div.preview-options").classList.add("disabled")) : (this.preview_text_area.removeAttribute("disabled"), document.querySelector("div.preview-options").classList.remove("disabled")) }, f.prototype.enableCustomToneAddButton = function (n) { this.show_custom_tone && n ? (this.custom_tone_add_button.classList.remove("disabled"), this.setARIADisabled(this.custom_tone_add_button, !1), this.custom_tone_add_button.addEventListener("click", this.addCustomToneButtonClicked), this.custom_tone_add_button.addEventListener("keypress", this.addCustomToneButtonKeyPress)) : (this.custom_tone_add_button.classList.add("disabled"), this.setARIADisabled(this.custom_tone_add_button), this.custom_tone_add_button.removeEventListener("click", this.addCustomToneButtonClicked), this.custom_tone_add_button.removeEventListener("keypress", this.addCustomToneButtonKeyPress)) }, f.prototype.enableCustomTonePlusButton = function (n) { this.show_custom_tone && n ? (this.custom_tone_plus_button.classList.remove("disabled"), this.setARIADisabled(this.custom_tone_plus_button, !1), this.custom_tone_plus_button.addEventListener("click", this.plusCustomToneButtonClicked), this.custom_tone_plus_button.addEventListener("keypress", this.plusCustomToneButtonKeyPress)) : (this.custom_tone_plus_button.classList.add("disabled"), this.setARIADisabled(this.custom_tone_plus_button), this.custom_tone_plus_button.removeEventListener("click", this.plusCustomToneButtonClicked), this.custom_tone_plus_button.removeEventListener("keypress", this.plusCustomToneButtonKeyPress)) }, f.prototype.enableCustomToneEditButton = function (n) { this.show_custom_tone && n ? (this.custom_tone_edit_button.classList.remove("disabled"), this.setARIADisabled(this.custom_tone_edit_button, !1), this.custom_tone_edit_button.addEventListener("click", this.editCustomToneButtonClicked), this.custom_tone_edit_button.addEventListener("keypress", this.editCustomToneButtonKeyPress)) : (this.custom_tone_edit_button.classList.add("disabled"), this.setARIADisabled(this.custom_tone_edit_button), this.custom_tone_edit_button.removeEventListener("click", this.editCustomToneButtonClicked), this.custom_tone_edit_button.removeEventListener("keypress", this.editCustomToneButtonKeyPress)) }, f.prototype.enableCustomToneSaveButton = function (n) { this.show_custom_tone && n ? (this.custom_tone_save_button.classList.remove("disabled"), this.setARIADisabled(this.custom_tone_save_button, !1), this.custom_tone_save_button.addEventListener("click", this.saveCustomToneButtonClicked), this.custom_tone_save_button.addEventListener("keypress", this.saveCustomToneButtonKeyPress)) : (this.custom_tone_save_button.classList.add("disabled"), this.setARIADisabled(this.custom_tone_save_button), this.custom_tone_save_button.removeEventListener("click", this.saveCustomToneButtonClicked), this.custom_tone_save_button.removeEventListener("keypress", this.saveCustomToneButtonKeyPress)) }, f.prototype.enableInsertButton = function (n) { n ? (this.insert_button && (this.insert_button.classList.remove("disabled"), this.setARIADisabled(this.insert_button, !1), this.insert_button.addEventListener("click", this.insertButtonClicked), this.insert_button.addEventListener("keypress", this.insertButtonKeyPress)), this.detached_copy_button && (this.detached_copy_button.classList.remove("disabled"), this.setARIADisabled(this.detached_copy_button, !1), this.detached_copy_button.addEventListener("click", this.copyButtonClicked), this.detached_copy_button.addEventListener("keypress", this.copyButtonKeyPress))) : (this.insert_button && (this.resetDetachedCopyButtonText(), this.insert_button.classList.add("disabled"), this.setARIADisabled(this.insert_button), this.insert_button.removeEventListener("click", this.insertButtonClicked), this.insert_button.removeEventListener("keypress", this.insertButtonKeyPress)), this.detached_copy_button && (this.resetDetachedCopyButtonText(), this.detached_copy_button.classList.add("disabled"), this.setARIADisabled(this.detached_copy_button), this.detached_copy_button.removeEventListener("click", this.copyButtonClicked), this.detached_copy_button.removeEventListener("keypress", this.copyButtonKeyPress))) }, f.prototype.resetDetachedCopyButtonText = function () { this.detached_copy_button !== undefined && (this.detached_copy_button.innerText = this.uiStrings.copy, this.detached_copy_button.setAttribute("aria-label", this.uiStrings.copy)) }, f.prototype.updateHistoryButtonStatus = function () { var n = this.historyIndex > 0, t = this.historyIndex < this.history.length - 1; this.enableHistoryButton(this.prev_button, n, !1); this.enableHistoryButton(this.next_button, t, !0) }, f.prototype.enableHistoryButton = function (n, t, i) { t ? (n.classList.remove("disabled"), this.setARIADisabled(n, !1), n.addEventListener("click", i ? this.nextButtonClicked : this.prevButtonClicked), n.addEventListener("keypress", i ? this.nextButtonClicked : this.prevButtonKeyPress)) : (n.classList.add("disabled"), this.setARIADisabled(n), n.removeEventListener("click", i ? this.nextButtonClicked : this.prevButtonClicked), n.removeEventListener("keypress", i ? this.nextButtonClicked : this.prevButtonClicked)) }, f.prototype.enableConversationIdCopyButton = function (n) { this.conversation_id_copy_button && (n ? (this.conversation_id_copy_button.classList.remove("disabled"), this.setARIADisabled(this.conversation_id_copy_button, !1), this.conversation_id_copy_button.addEventListener("click", this.conversationIdCopyButtonClicked), this.conversation_id_copy_button.addEventListener("keypress", this.conversationIdCopyButtonKeyPress)) : (this.conversation_id_copy_button.classList.add("disabled"), this.setARIADisabled(this.conversation_id_copy_button), this.conversation_id_copy_button.removeEventListener("click", this.conversationIdCopyButtonClicked), this.conversation_id_copy_button.removeEventListener("keypress", this.conversationIdCopyButtonKeyPress))) }, f.prototype.enableCopyButton = function (n) { this.copy_button && (n ? (this.copy_button.classList.remove("disabled"), this.setARIADisabled(this.copy_button, !1), this.copy_button.addEventListener("click", this.copyButtonClicked), this.copy_button.addEventListener("keypress", this.copyButtonKeyPress)) : (this.copy_button.classList.add("disabled"), this.setARIADisabled(this.copy_button), this.copy_button.removeEventListener("click", this.copyButtonClicked), this.copy_button.removeEventListener("keypress", this.copyButtonKeyPress))) }, f.prototype.enableStopButton = function (n) { n ? (this.stop_button.classList.remove("disabled"), this.setARIADisabled(this.stop_button, !1), this.stop_button.addEventListener("click", this.stopButtonClicked), this.stop_button.addEventListener("keypress", this.stopButtonKeyPress)) : (this.stop_button.classList.add("disabled"), this.setARIADisabled(this.stop_button), this.stop_button.removeEventListener("click", this.stopButtonClicked), this.stop_button.removeEventListener("keypress", this.stopButtonKeyPress)) }, f.prototype.enableGenerateButtons = function (n) { this.enableGenerateButton(this.generate_button, n); this.enableGenerateButton(this.regenerate_button, n) }, f.prototype.enableGenerateButton = function (n, t) { t ? (n.classList.remove("disabled"), this.setARIADisabled(n, !1), n.addEventListener("click", this.generateButtonClicked), n.addEventListener("keypress", this.generateButtonKeyPress)) : (n.classList.add("disabled"), this.setARIADisabled(n), n.removeEventListener("click", this.generateButtonClicked), n.removeEventListener("keypress", this.generateButtonKeyPress)) }, f.prototype.enableSubmitChangeSuggestionButton = function (n) { n ? (this.submit_change_suggestion_button.classList.remove("disabled"), this.setARIADisabled(this.submit_change_suggestion_button, !1), this.submit_change_suggestion_button.addEventListener("click", this.submitChangeSuggestionClicked), this.submit_change_suggestion_button.addEventListener("keypress", this.submitChangeSuggestionKeyPress), this.submit_change_suggestion_button.setAttribute("title", this.customChangeSuggestionButtonTextValues.submit), this.submit_change_suggestion_button.setAttribute("aria-label", this.customChangeSuggestionButtonTextValues.submit)) : (this.submit_change_suggestion_button.classList.add("disabled"), this.setARIADisabled(this.submit_change_suggestion_button), this.submit_change_suggestion_button.removeEventListener("click", this.submitChangeSuggestionClicked), this.submit_change_suggestion_button.removeEventListener("keypress", this.submitChangeSuggestionKeyPress)) }, f.prototype.setARIADisabled = function (n, t) { t === void 0 && (t = !0); t ? (n.setAttribute("aria-disabled", "true"), n.setAttribute("aria-hidden", "true"), n.removeAttribute("tabindex")) : (n.setAttribute("aria-disabled", "false"), n.setAttribute("aria-hidden", "false"), n.setAttribute("tabindex", "0")) }, f.prototype.getSelectedOptions = function () { var u = this, r, n = "paragraph", t = "professional", i = "short", f = (r = this.compose_text_area) === null || r === void 0 ? void 0 : r.value.trim(); return this.all_format_options.forEach(function (t) { if (t.classList.contains("selected")) { n = t.getAttribute("unloc-name") || ""; n === u.formatOptions.bulletPoints && (n = "bullet point list"); return } }), this.all_tone_options.forEach(function (n) { var i = n; if (n.classList.contains("selected")) { t = i.getAttribute("unloc-name") || ""; return } }), this.all_length_options.forEach(function (n) { var t = n; if (n.classList.contains("selected")) { i = t.getAttribute("unloc-name") || ""; return } }), n = n.toLowerCase(), t = t.toLowerCase(), i = i.toLowerCase(), { format: n, tone: t, length: i, prompt: f } }, f.prototype.generateButtonClicked = function () { var r; this.stopStream(); this.showChangeSuggestions(!1); var n = this.getSelectedOptions(), u = n.format, f = n.tone, e = n.length, t = n.prompt; t = t.substring(0, i.max_prompt_length); r = this.getTextGenerationPrompt(u, f, e, t); this.updateUIWhileFetchingData(); this.requestGeneration(r, !0) }, f.prototype.updateUIWhileFetchingData = function () { this.alertARIAMessage(this.ariaAlerts.generating); this.preview_text_area.value = ""; this.disclaimer_box.innerText = ""; this.showShimmer(!0); this.insert_button ? this.insert_button.scrollIntoView({ behavior: "smooth" }) : this.detached_copy_button && (this.detached_copy_button.scrollIntoView({ behavior: "smooth" }), this.resetDetachedCopyButtonText()); this.enableGenerateButtons(!1); this.enableInsertButton(!1); this.enableHistoryButton(this.prev_button, !1, !1); this.enableHistoryButton(this.next_button, !1, !0) }, f.prototype.conversationIdCopyButtonClicked = function () { return __awaiter(this, void 0, void 0, function () { return __generator(this, function (n) { switch (n.label) { case 0: return [4, navigator.clipboard.writeText(this.conversation_id)]; case 1: return n.sent(), [2] } }) }) }, f.prototype.copyButtonClicked = function () { return __awaiter(this, void 0, void 0, function () { var n; return __generator(this, function (t) { switch (t.label) { case 0: return n = this.preview_text_area.value.trim() || "", this.alertARIAMessage(this.ariaAlerts.copy), [4, navigator.clipboard.writeText(n)]; case 1: return t.sent(), this.detached_copy_button !== undefined && (this.detached_copy_button.innerText = this.uiStrings.copied), [2] } }) }) }, f.prototype.stopButtonClicked = function () { this.stopStream() }, f.prototype.plusCustomToneButtonClicked = function () { var n, t, i, r, u, f; this.removeSelectionFromTones(); (n = this.custom_tone_text_input) === null || n === void 0 ? void 0 : n.classList.remove("hidden"); (t = this.custom_tone_text_input) === null || t === void 0 ? void 0 : t.focus(); (i = this.custom_tone_add_button) === null || i === void 0 ? void 0 : i.classList.remove("hidden"); ((r = this.custom_tone_plus_button) === null || r === void 0 ? void 0 : r.classList.contains("selected")) || ((u = this.custom_tone_plus_button) === null || u === void 0 ? void 0 : u.classList.add("selected"), (f = this.custom_tone_plus_button) === null || f === void 0 ? void 0 : f.setAttribute("aria-pressed", "true")) }, f.prototype.addCustomToneButtonClicked = function () { var u = this, e, o, s, h, c, l, t, f; this.custom_tone_value = ((e = this.custom_tone_text_input) === null || e === void 0 ? void 0 : e.value.trim()) || ""; l = "<span>".concat(this.custom_tone_value, "<\/span>"); this.custom_tone = r(l, "tone-option tag"); this.setARIAattrForTag(this.custom_tone, this.custom_tone.innerText.trim()); this.custom_tone.id = "custom_tone"; this.custom_tone.setAttribute(i.unlocalized_attr_name, this.custom_tone.innerText.trim()); this.custom_tone.addEventListener("click", function () { return u.toneOptionClicked(u.custom_tone) }); this.custom_tone.addEventListener("keypress", function (n) { return u.toneOptionKeyPress(n, u.custom_tone) }); t = r(n.CoAuthor.penSVG, "tag selected"); this.setARIAattrForTag(t, this.customToneButtonTextValues.edit); t.id = "custom_tone_edit_button"; f = r("", "custom_tone_container"); f.appendChild(this.custom_tone); f.appendChild(t); this.custom_tone_edit_button = t; this.editCustomToneButtonClicked = this.editCustomToneButtonClicked.bind(this); this.editCustomToneButtonKeyPress = this.editCustomToneButtonKeyPress.bind(this); (o = document.querySelector(".tone-options")) === null || o === void 0 ? void 0 : o.appendChild(f); this.all_tone_options.push(this.custom_tone); this.toneOptionClicked(this.custom_tone); (s = this.custom_tone_text_input) === null || s === void 0 ? void 0 : s.classList.add("hidden"); (h = this.custom_tone_plus_button) === null || h === void 0 ? void 0 : h.classList.add("hidden"); (c = this.custom_tone_add_button) === null || c === void 0 ? void 0 : c.classList.add("hidden"); this.enableCustomTonePlusButton(!1); this.enableCustomToneAddButton(!1); this.enableCustomToneEditButton(!0) }, f.prototype.editCustomToneButtonClicked = function () { var n, t, i, r; this.toneOptionClicked(this.custom_tone); (n = this.custom_tone_text_input) === null || n === void 0 ? void 0 : n.classList.remove("hidden"); (t = this.custom_tone_save_button) === null || t === void 0 ? void 0 : t.classList.remove("hidden"); (i = this.custom_tone_edit_button) === null || i === void 0 ? void 0 : i.classList.add("selected"); (r = this.custom_tone_text_input) === null || r === void 0 ? void 0 : r.focus() }, f.prototype.saveCustomToneButtonClicked = function () { var n, t, r; if ((n = this.custom_tone_text_input) === null || n === void 0 ? void 0 : n.classList.add("hidden"), (t = this.custom_tone_save_button) === null || t === void 0 ? void 0 : t.classList.add("hidden"), this.enableCustomToneSaveButton(!1), this.enableCustomToneEditButton(!0), this.custom_tone_text_input && this.custom_tone_text_input.value.length < i.min_custom_tone_length) { this.enableCustomTonePlusButton(!0); this.removeCustomTone(); this.selectDefaultTone(); return } this.custom_tone_value = ((r = this.custom_tone_text_input) === null || r === void 0 ? void 0 : r.value.trim()) || ""; this.custom_tone.innerHTML = "<span>".concat(this.custom_tone_value, "<\/span>"); this.custom_tone.setAttribute(i.unlocalized_attr_name, this.custom_tone.innerText.trim()); this.setARIAattrForTag(this.custom_tone, this.custom_tone.innerText.trim()) }, f.prototype.insertButtonClicked = function () { n.PostMessager.postToParent("Discover.CoAuthor.InsertToPage", { text: this.preview_text_area.value }, "*") }, f.prototype.writeHistoryEntry = function (n, t) { this.history.push({ disclaimer_text: n, generated_content: t }); this.historyIndex = this.history.length - 1; this.updateHistoryButtonStatus() }, f.prototype.prevButtonClicked = function () { if (this.historyIndex > 0) { this.historyIndex = this.historyIndex - 1; var n = this.history[this.historyIndex], t = n.disclaimer_text, i = n.generated_content; this.disclaimer_box.textContent = t; this.preview_text_area.value = i; this.hideError(); this.updateHistoryButtonStatus() } }, f.prototype.nextButtonClicked = function () { if (this.historyIndex < this.history.length - 1) { this.historyIndex = this.historyIndex + 1; var n = this.history[this.historyIndex], t = n.disclaimer_text, i = n.generated_content; this.disclaimer_box.textContent = t; this.preview_text_area.value = i; this.hideError(); this.updateHistoryButtonStatus() } }, f.prototype.conversationIdCopyButtonKeyPress = function (n) { n.key === "Enter" && this.conversationIdCopyButtonClicked() }, f.prototype.copyButtonKeyPress = function (n) { n.key === "Enter" && this.copyButtonClicked() }, f.prototype.stopButtonKeyPress = function (n) { n.key === "Enter" && this.stopButtonClicked() }, f.prototype.generateButtonKeyPress = function (n) { var t; n.key === "Enter" && (this.generateButtonClicked(), (t = this.stop_button) === null || t === void 0 ? void 0 : t.focus()) }, f.prototype.addCustomToneButtonKeyPress = function (n) { var t; n.key === "Enter" && (this.addCustomToneButtonClicked(), (t = this.custom_tone_edit_button) === null || t === void 0 ? void 0 : t.focus()) }, f.prototype.plusCustomToneButtonKeyPress = function (n) { var t = n.key; (t === "Enter" || t === "Space") && this.plusCustomToneButtonClicked() }, f.prototype.editCustomToneButtonKeyPress = function (n) { n.key === "Enter" && this.editCustomToneButtonClicked() }, f.prototype.saveCustomToneButtonKeyPress = function (n) { var t, i; n.key === "Enter" && (this.saveCustomToneButtonClicked(), this.custom_tone_value.length === 0 ? (t = this.custom_tone_plus_button) === null || t === void 0 ? void 0 : t.focus() : (i = this.custom_tone_edit_button) === null || i === void 0 ? void 0 : i.focus()) }, f.prototype.insertButtonKeyPress = function (n) { n.key === "Enter" && this.insertButtonClicked() }, f.prototype.prevButtonKeyPress = function (n) { n.key === "Enter" && this.prevButtonClicked() }, f.prototype.nextButtonKeyPress = function (n) { n.key === "Enter" && this.nextButtonClicked() }, f.prototype.replaceNewlines = function (n) { return n.trim().replace(/\n{3,}/g, "\n\n") }, f.prototype.setPreviewText = function (n, t, i) { t === void 0 && (t = ""); i === void 0 && (i = ""); this.beginStreamingTimeout && clearTimeout(this.beginStreamingTimeout); this.preview_text_area.value = n; var r = t + i; r = this.replaceNewlines(r); this.disclaimer_box.innerText = r; this.showShimmer(!1); this.enableInsertButton(!0); this.enableCopyButton(!0); this.show_conversation_id && this.enableConversationIdCopyButton(!0); this.disableTextPreview(!1); this.preview_text_area.scrollTop = this.preview_text_area.scrollHeight }, f.prototype.onStreamFinished = function (n, t, i) { n && this.alertARIAMessage(this.ariaAlerts.success); (this.disclaimer_box.innerText.length > 0 || this.preview_text_area.value.length > 0) && this.writeHistoryEntry(this.disclaimer_box.innerText, this.preview_text_area.value); t == i && (this.updateGenerateButtons(), this.updateHistoryButtonStatus(), this.show_change_suggestions && (this.conversation_turn_count >= this.conversationTurnMax ? (this.showChangeSuggestions(!1), this.enableGenerateButton(this.regenerate_button, !1)) : n && this.showChangeSuggestions(!0))) }, f.changeSuggestionsMaxCharPerLine = 46, f.changeSuggestionsMaxLines = 2, f }(i); t.CoAuthorSidebarUI = u; f = function (u) { function f () { var n = u.call(this) || this; return n.preview_text_area = undefined, n.insert_button = undefined, n.adjust_button = undefined, n.try_again_button = undefined, n.innerSelectedText = "", n.shimmerEl = undefined, n.iconEl = undefined, n.close_button = undefined, n.insertButtonClicked = n.insertButtonClicked.bind(n), n.tryAgainButtonClicked = n.tryAgainButtonClicked.bind(n), n.adjustButtonClicked = n.adjustButtonClicked.bind(n), n } return __extends(f, u), f.prototype.initUI = function () { n.PostMessager.postToParent("Discover.Chat.FrameReady", {}); n.GC.Task.push(new t.SelectedTextV2ControlTowerTask); sj_evt.fire(n.DiscoverPageLoadEventName, {}); this.preview_text_area = document.getElementById("inline_preview_text"); this.insert_button = document.querySelector("#inline_insert_button"); this.try_again_button = document.querySelector("#inline_try_again_button"); this.adjust_button = document.querySelector("#inline_adjust_button"); this.shimmerEl = document.getElementById("inline_shimmer"); this.iconEl = document.getElementById("inline_icon"); this.close_button = document.getElementById("inline_close_button"); this.insert_button.prepend(r(n.CoAuthor.checkmarkIcon)); this.try_again_button.prepend(r(n.CoAuthor.generateIcon)); this.adjust_button.prepend(r(n.CoAuthor.adjustIcon)); this.iconEl.appendChild(r(n.CoAuthor.composeLogo)); this.close_button.appendChild(r(n.CoAuthor.closeIcon)); this.enableInsertButton(!0); this.enableTryAgainButton(!0); this.enableAdjustButton(!0) }, f.prototype.generateResult = function () { var r; this.stopStream(); var n = this.getSelectedOptions(), u = n.format, f = n.tone, e = n.length, t = n.prompt; t = this.innerSelectedText.substring(0, i.max_prompt_length); r = this.getTextGenerationPrompt(u, f, e, t); this.updateUIWhileFetchingData(); this.requestGeneration(r, !0) }, f.prototype.updateUIWhileFetchingData = function () { this.alertARIAMessage(this.ariaAlerts.generating); this.preview_text_area.value = ""; this.showShimmer(!0) }, f.prototype.enableInsertButton = function (n) { n ? (this.insert_button.classList.remove("disabled"), this.insert_button.addEventListener("click", this.insertButtonClicked), this.insert_button.addEventListener("keypress", this.insertButtonKeyPress)) : (this.insert_button.classList.add("disabled"), this.insert_button.removeEventListener("click", this.insertButtonClicked), this.insert_button.removeEventListener("keypress", this.insertButtonKeyPress)) }, f.prototype.enableTryAgainButton = function (n) { n ? (this.try_again_button.classList.remove("disabled"), this.try_again_button.addEventListener("click", this.tryAgainButtonClicked), this.try_again_button.addEventListener("keypress", this.tryAgainButtonKeyPress)) : (this.try_again_button.classList.add("disabled"), this.try_again_button.removeEventListener("click", this.tryAgainButtonClicked), this.try_again_button.removeEventListener("keypress", this.tryAgainButtonKeyPress)) }, f.prototype.enableAdjustButton = function (n) { n ? (this.adjust_button.classList.remove("disabled"), this.adjust_button.addEventListener("click", this.adjustButtonClicked), this.adjust_button.addEventListener("keypress", this.adjustButtonKeyPress)) : (this.adjust_button.classList.add("disabled"), this.adjust_button.removeEventListener("click", this.adjustButtonClicked), this.adjust_button.removeEventListener("keypress", this.adjustButtonKeyPress)) }, f.prototype.insertButtonKeyPress = function (n) { n.key === "Enter" && this.insertButtonClicked() }, f.prototype.adjustButtonKeyPress = function (n) { n.key === "Enter" && this.adjustButtonClicked() }, f.prototype.tryAgainButtonKeyPress = function (n) { n.key === "Enter" && this.tryAgainButtonClicked() }, f.prototype.insertButtonClicked = function () { n.PostMessager.postToParent("Discover.CoAuthor.InsertToPage", { text: this.preview_text_area.value }, "*") }, f.prototype.tryAgainButtonClicked = function () { this.generateResult() }, f.prototype.adjustButtonClicked = function () { }, f.prototype.getSelectedOptions = function () { var n, t = ((n = this.preview_text_area) === null || n === void 0 ? void 0 : n.value.trim()) || ""; return { format: "paragraph", tone: "professional", length: "short", prompt: t } }, f.prototype.setPreviewText = function (n, t, i) { t === void 0 && (t = ""); i === void 0 && (i = ""); this.beginStreamingTimeout && clearTimeout(this.beginStreamingTimeout); this.preview_text_area && (this.preview_text_area.value = n); this.showShimmer(!1) }, f.prototype.onStreamFinished = function (n) { n && this.alertARIAMessage(this.ariaAlerts.success) }, f.prototype.showError = function () { }, f.prototype.hideError = function () { }, f.prototype.hideTextOnApology = function () { }, f.prototype.showShimmer = function (n) { var t, i; n ? ((t = this.shimmerEl) === null || t === void 0 ? void 0 : t.classList.remove("hidden"), this.hideError(), this.preview_text_area.placeholder = "") : ((i = this.shimmerEl) === null || i === void 0 ? void 0 : i.classList.add("hidden"), this.preview_text_area.placeholder = "AI generated content will appear here") }, f.prototype.setSelectedText = function (n) { this.innerSelectedText != n && (this.innerSelectedText = n, this.generateResult()) }, f.prototype.showChangeSuggestions = function () { }, f }(i); t.CoAuthorInlineUI = f; e = function () { function n () { var n, t, i = (t = (n = _w._udsCoAuthorConfig) === null || n === void 0 ? void 0 : n.ComposeInline) !== null && t !== void 0 ? t : !1; this.ui = i ? new f : new u } return n.getInstance = function () { return n.instance || (n.instance = new n), n.instance }, n.prototype.initUI = function () { this.ui.initUI() }, n.prototype.setSelectedText = function (n) { this.ui.setSelectedText(n) }, n.prototype.setLengthOptionsLocalizedText = function (n) { this.ui.setLengthOptionsLocalizedText(n) }, n.prototype.setToneOptionsLocalizedText = function (n) { this.ui.setToneOptionsLocalizedText(n) }, n.prototype.setFormatOptionsLocalizedText = function (n) { this.ui.setFormatOptionsLocalizedText(n) }, n.prototype.setAriaAlertsLocalizedText = function (n) { this.ui.setAriaAlertsLocalizedText(n) }, n.prototype.setErrorsLocalizedText = function (n) { this.ui.setErrorsLocalizedText(n) }, n.prototype.setStartupPlaceholdersLocalizedText = function (n) { this.ui.setStartupPlaceholdersLocalizedText(n) }, n.prototype.setCustomToneButtonLocalizedText = function (n) { this.ui.setCustomToneButtonLocalizedText(n) }, n.prototype.setCustomChangeSuggestionButtonLocalizedText = function (n) { this.ui.setCustomChangeSuggestionButtonLocalizedText(n) }, n.prototype.setUIStringsLocalizedText = function (n) { this.ui.setUIStringsLocalizedText(n) }, n }(); t.CoAuthorPanel = e })(t = n.CoAuthor || (n.CoAuthor = {})) })(Underside || (Underside = {})); var ipd = { ipt: "4", secall: true, pd: false }; var fbpkgiid = fbpkgiid || {}; fbpkgiid.page = 'SERP.5057';; var Feedback; (function (n) { var t; (function () { "use strict"; function u (t, i) { var u = t.getAttribute("id"), f; u || (u = "genId" + n.length, t.setAttribute("id", u)); f = new r(u, i, t.getAttribute(i)); n.push(f) } function i (n, t, i) { i === null ? n.removeAttribute(t) : n.setAttribute(t, i) } function t (n, t, r, f) { for (var e, s = _d.querySelectorAll(r), o = 0; o < s.length; o++)(e = s[o], f && e.id && f[e.id]) || (u(e, n), i(e, n, t)) } function f (n) { for (var u = _d.querySelectorAll(n), e = 1, f = {}, t, i, r = 0; r < u.length; ++r) { if (t = u[r], !t.id) { for (; ;)if (i = "fbpgdgelem".concat(e++), !_ge(i)) break; t.id = i } f[t.id] = t } return f } function e () { var i = "tabindex", r = "-1", n = f("#fbpgdg, #fbpgdg *"); t(i, r, "div", n); t(i, r, "svg", n); t(i, r, "a", n); t(i, r, "li", n); t(i, r, "input", n); t(i, r, "select", n); t("aria-hidden", "true", "body :not(script):not(style)", n) } function o () { for (var r, t = 0; t < n.length; t++)r = _d.getElementById(n[t].id), r && i(r, n[t].attributeName, n[t].originalAttributeValue); n.length = 0 } function s () { typeof sj_evt != "undefined" && (sj_evt.bind("onFeedbackStarting", function () { e() }), sj_evt.bind("onFeedbackClosing", function () { o() })) } var n = [], r = function () { function n (n, t, i) { this.id = n; this.attributeName = t; this.originalAttributeValue = i } return n }(); s() })(t = n.Accessibility || (n.Accessibility = {})) })(Feedback || (Feedback = {})); RMS2 = new function () { function s (n, t) { for (var f = 6, r = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_", i = n ? n.split("") : [], e, u = ~~(t / f); i.length <= u;)i.push(r.charAt(0)); return e = r.indexOf(i[u]) | 1 << t % f, i[u] = r.charAt(e), i.join("") } function h (n) { var t = sj_cook.get("RMS", n.n); sj_cook.set("RMS", n.n, s(t, n.c), 0, "/", 0) } function c () { _d.domain == r && (n.P && n.P(), o = new Date, t(0)) } function t (r) { var s = i[r], e, c; if (s) { if (e = sj_gx(), !e) return; e.open("get", s.u, !0); c = sb_st(function () { e[u] != 4 && (e[f] = function () { }, e.abort(), t(r + 1)) }, 5e3); e[f] = function () { e[u] == 4 && (sb_ct(c), h(i[r]), t(r + 1)) }; e.send(null) } else n.I && n.I(o) } var i = [], r = "", u = "readyState", f = "onreadystatechange", e, o, n = _w.RmsConfig || {}; this.RegisterResources = function (n, t, u, f) { r = _d.domain; for (var o = 0; o < n.length; o++)i.push({ n: u, u: n[o], c: f[o] }); e || (e = !0, sj_evt.bind("onP1", c, 1, 1e3)) } }; var SetForceDesktopCookie = function () { sj_cook.set("_UR", "HP", "") }; var Feedback; (function (n) { var t; (function (t) { function u (t, r, u, f, e, o) { t = typeof t === i ? !1 : t; t && scrollTo(0, 0); u = typeof u === i ? !0 : u; n.PackageLoad.Load(r, u, f, e, o) } function o (n, t) { for (var r = 0, i = null; n && n.getAttribute && (!(t >= 1) || r < t);) { if (i = n.getAttribute("data-fbhlsel"), i != null) break; r++; n = n.parentNode } return i } function a (t, a, v, y, p, w, b, k, d) { function st (t) { var r = null, i; return t && (i = new c, n.fel("ajax.feedback.collectsettings", "gsf", i), r = i.findSettings(t)), r } var it, et = !a || a.length === 0 ? "invalid" : a, tt, nt, ot, rt, g, ut, ft; (typeof Log2 != "undefined" && Log2 && Log2.LogEvent ? Log2.LogEvent("ClientInst", { Name: "Feedback", Text: et }, "FeedbackInit") : typeof Log != "undefined" && Log && Log.Log && Log.Log("FeedbackInit", "CI", "Feedback", !1, "Text", et), sj_cook && (tt = sj_cook.get("fdbk_acc", "tabfocus"), tt && (nt = _ge(tt), nt ? (nt.focus(), sj_cook.clear("fdbk_acc", "/")) : (nt = document.querySelector('[id^="' + tt + '"]'), nt ? (nt.focus(), sj_cook.clear("fdbk_acc", "/")) : (ot = tt.indexOf("thumb_f") != -1 && a.indexOf("thumb_f") != -1 || tt.indexOf("thumb_t") != -1 && a.indexOf("thumb_t") != -1, ot && (nt = _ge(a), rt = (it = nt === null || nt === void 0 ? void 0 : nt.parentElement) === null || it === void 0 ? void 0 : it.parentElement, rt && rt.classList.contains("l_ecrd_tud") && (nt.focus(), sj_cook.clear("fdbk_acc", "/"))))))), g = _ge(a), g && g.classList && g.classList.contains(s)) || (p = typeof p === i ? !1 : p, ut = o(g, 3), e !== "sb_feedback" && (e = a, typeof sj_evt !== i && (r && sj_evt.unbind(f, r), r = function (n) { var f = null, i = null, e = null, s, r, h; n && n.length > 1 && (r = n[1], r.tagName !== undefined && r.nodeType !== undefined ? (f = r, i = st(f)) : i = r, s = i && i.elementToHighlight || f, e = o(s)); h = i && i.linkId || a; u(y, t, v, h, e, i) }, sj_evt.bind(f, r, 1)), typeof SearchAppWrapper !== i && SearchAppWrapper.CortanaApp && SearchAppWrapper.CortanaApp.addEventListener && SearchAppWrapper.CortanaApp.addEventListener(f, function (n) { (typeof n !== i && n !== null && (n.isHandled = !0), a === e) && _ge("fbpgdg") === null && u(y, t, v, a) })), g !== null ? (ft = function (n) { if (!(n instanceof KeyboardEvent) || n.keyCode === 13) { var r = null, i = null, f = null, e; if (p && g.classList) { if (g.classList.contains(h)) return !1; g.classList.add(h) } d && sj_evt.fire("feedback.dialog.defaultcheckedradio", d); sj_pd(n); sj_sp(n); r = sj_et(n); i = st(r); e = i && i.elementToHighlight || r; f = o(e); u(y, t, v, a, f || ut, i || k) } }, sj_be(g, "click", ft), sj_be(g, "keydown", ft), g.classList && g.classList.add(s)) : (b = typeof b === i ? !1 : b, b && u(y, t, v, a, ut)), typeof sj_evt !== i && sj_evt.fire(l)) } var f = "feedbackformrequested", l = "feedbackInitialized", r, e = "", s = "feedback-binded", h = "clicked", i = "undefined", c; t.InitializeFeedback = a; n.le = function (n, t) { SharedLogHelper && SharedLogHelper.LogError && SharedLogHelper.LogError("Feedback: ".concat(n), null, t) }; n.leh = function (t, i, r) { n.le("Feedback: ".concat(t, " handler failed in ").concat(i), r) }; n.fel = function (t, i) { for (var u = [], r = 2; r < arguments.length; r++)u[r - 2] = arguments[r]; try { u.unshift(t); sj_evt.fire.apply(null, u) } catch (f) { n.leh(t, i, f); throw f; } }; c = function () { function n () { this.settingsList = [] } return n.prototype.setStartSettings = function (n, t) { n && t && this.settingsList.push({ c: n, s: t }) }, n.prototype.findSettings = function (n) { var t = null; return this.settingsList.forEach(function (i) { sj_we(n, i.c) && (t = i.s) }), t }, n }(); sj_evt.fire("fdbkbtstrp_init") })(t = n.Bootstrap || (n.Bootstrap = {})) })(Feedback || (Feedback = {})), function (n) { var t; (function (t) { "use strict"; function f (n) { return typeof n == "object" && n !== null } function e (n) { return n == null ? n === undefined ? "[object Undefined]" : "[object Null]" : toString.call(n) } function o (n) { if (!f(n) || e(n) != "[object Object]") return !1; if (Object.getPrototypeOf(n) === null) return !0; for (var t = n; Object.getPrototypeOf(t) !== null;)t = Object.getPrototypeOf(t); return Object.getPrototypeOf(n) === t } function s (f, e, s, h) { var g = _G.IG, nt = typeof _G.V === i ? _G.P : _G.V, c, p, l, v, b, y, d; n.fel("onFeedbackStarting", "lp"); t.staticConfig = { linkId: e, activeElement: _d.activeElement }; var a = "?ig=" + g + "&p=" + nt, k = n.RouteProvider.Provide(f), w = encodeURIComponent; if (h) { if (h.formConfig && (k = f === "page" ? "sdk/form" : f, a += "&formconfig=" + h.formConfig), h.service && (t.staticConfig.service = h.service), h.scenario && (t.staticConfig.scenario = h.scenario), h.structuredData) try { o(h.structuredData) && (t.staticConfig.structuredData = h.structuredData) } catch (tt) { } if (h.clientSideScreenshot && (t.staticConfig.clientSideScreenshot = h.clientSideScreenshot), l = h.context, l) for (v in l) l.hasOwnProperty(v) && (a += "&" + w(v) + "=" + w(l[v])); h.pos && (t.staticConfig.pos = h.pos, a += "&pos=1") } for (c = "/feedback/" + k + a, typeof fbsrc !== i && (c += "&src=" + w(fbsrc)), typeof fbpkgiid !== i && fbpkgiid[f] && (c += "&iid=" + fbpkgiid[f]), b = ["addloginsource", "client", "clientip", "corpnet", "features", "hose", "hoseassistant", "logjserror", "msamock", "setvar", "testhooks", "theme", "uncrunched", "ptn"], y = 0; y < b.length; y++)(p = location.href.match(new RegExp("[?&]" + b[y] + "=[^?&#]*", "i"))) && p[0] && (c += "&" + p[0].substring(1)); d = typeof sj_ajaxCSP == "function" ? sj_ajaxCSP : sj_ajax; d(c, { callback: function (t, i) { var u, f; if (t && i) try { r && r.removeAttribute("clicked"); u = h && _ge(h.feedbackContainerId); (h === null || h === void 0 ? void 0 : h.appendFeedbackDialogAfterEvent) ? (f = function () { i.appendTo(u || _d.body); sj_evt.unbind(h.appendFeedbackDialogAfterEvent, f) }, sj_evt.bind(h.appendFeedbackDialogAfterEvent, f, 1)) : i.appendTo(u || _d.body); n.fel("onFeedbackShow", "lp"); n.fel("clarity.trigger", "lp", "BingFeedback"); n.Highlight && s && n.Highlight.HighlightElements(s); (e.indexOf("fdbtext_") > -1 || e.indexOf("thumb_t") > -1 || e.indexOf("thumb_f") > -1 || e.indexOf("thumb_tum") > -1) && sj_evt.fire("HightLightScreenShotById", e, "li", ["b_results", "b_context"], "ol") } catch (o) { n.le("Package load callback failed", o); throw o; } } }); u[f] = !0 } var u = {}, i = "undefined", r; t.staticConfig = {}; n.PackageLoad.GetHTML = function () { return _d.documentElement.outerHTML }; n.PackageLoad.Load = function (n, t, f, e, o) { var h, c; t = typeof t === i ? !0 : t; f = typeof f === i ? "" : f; c = typeof o != i && o && o.feedbackContainerId; r = _ge(f); for (h in n) n.hasOwnProperty(h) && (!t || c || typeof u[h] === i) && s(h, f, e, o) } })(t = n.PackageLoad || (n.PackageLoad = {})) }(Feedback || (Feedback = {})), function (n) { var t; (function () { "use strict"; n.RouteProvider.Provide = function (n) { return n === "page" ? "sdk/form" : n } })(t = n.RouteProvider || (n.RouteProvider = {})) }(Feedback || (Feedback = {})), function (n) { var t; (function (n) { "use strict"; n.submit = { registered: {}, use: function (n, t) { this.registered[n] = t }, clear: function () { this.registered = {} } } })(t = n.Hooks || (n.Hooks = {})) }(Feedback || (Feedback = {})); _w.rms.js({ 'A:rms:answers:Shared:BingCore.RMSBundle': '\/rp\/_Ael2K4S2eED5lUgb1LMokI5D0A.br.js' }, { 'A:rms:answers:Underside:Underside_CoAuthorTaskRegistrar': '\/rp\/UgVyl4ZBm3Ug9SLYFYyqoMRUtVI.br.js' }, { 'A:0': 0 }, { 'A:rms:answers:Underside:Underside_TriggerServerNavigate': '\/rp\/UDiQ91FKqMj5iElaOBLHasD5Tb4.br.js' }, { 'A:rms:answers:VisualSystem:IPv6Test': '\/rp\/afmuy94Os_msjUASAibqR7Q8x84.br.js' }, { 'A:1': 1 });;
//]]></script>
<div id="aRmsDefer"><script type="text/rms">//<![CDATA[
/* This function converts the string to Unicode using a transient element to have the HTML parser decode it properly because we were having problems with diacritics in the localized strings (Spanish tilde for example) that were represented by character entities (like &#233;). */ function decodeString(encoded_string) { var transient_element = document.createElement("textarea"); transient_element.innerHTML = encoded_string; return transient_element.value; } const lengthOptions = { short: decodeString("短"), medium: decodeString("中度"), long: decodeString("长") }; const toneOptions = { professional: decodeString("专业型"), casual: decodeString("休闲"), enthusiastic: decodeString("热情"), funny: decodeString("古怪"), informational: decodeString("信息"), }; const formatOptions = { paragraph: decodeString("段落"), bulletPoints: decodeString("创意"), email: decodeString("电子邮件"), blogPost: decodeString("博客文章"), }; const ariaAlerts = { generating: decodeString("正在生成文本"), success: decodeString("已收到响应"), error: decodeString("生成文本时出错"), insert: decodeString("尝试将文本插入网站"), copy: decodeString("复制到剪贴板上的文本"), stop: decodeString("已停止生成文本") }; const errorMessages = { dailyConversationLimit: decodeString("聊得很愉快,但你已达到每日限制。请明天再试。"), fate: decodeString("很抱歉,我无法回复你的提示。请尝试其他操作。"), server: decodeString("很抱歉,我们现在无法生成请求的内容。请稍后重试"), timeout: decodeString("无法生成响应,请重试。"), }; const customToneButtonTextValues = { plus: decodeString("添加新的自定义音调"), edit: decodeString("编辑自定义音调"), }; const customChangeSuggestionButtonTextValues = { plus: "添加自定义建议", submit: "重新生成", }; const startupPlaceholders = [ decodeString("说服朋友与我一起去墨西哥玩"), decodeString("给妈妈的周年快乐祝福信息"), decodeString("告诉我的同事 Emily 生日快乐"), decodeString("营销职位的求职信"), decodeString("雷昂纳多达芬奇的一生"), decodeString("荷兰的历史"), decodeString("我的 2010 年凯美瑞广告"), decodeString("告诉我的社交网络,我已经接受了 Microsoft 的新工作。"), decodeString("自适应技术的最新创新"), decodeString("邀请加入我的简奥斯汀读书俱乐部"), decodeString("《傲慢与偏见》简介"), ]; const uiStrings = { copy: decodeString("复制"), copied: decodeString("已复制") }; const coAuthorPanel = Underside.CoAuthor.CoAuthorPanel.getInstance(); coAuthorPanel.setLengthOptionsLocalizedText(lengthOptions); coAuthorPanel.setToneOptionsLocalizedText(toneOptions); coAuthorPanel.setFormatOptionsLocalizedText(formatOptions); coAuthorPanel.setAriaAlertsLocalizedText(ariaAlerts); coAuthorPanel.setErrorsLocalizedText(errorMessages); coAuthorPanel.setCustomToneButtonLocalizedText(customToneButtonTextValues); coAuthorPanel.setStartupPlaceholdersLocalizedText(startupPlaceholders); coAuthorPanel.setCustomChangeSuggestionButtonLocalizedText(customChangeSuggestionButtonTextValues); coAuthorPanel.setUIStringsLocalizedText(uiStrings); coAuthorPanel.initUI();;
//]]></script><script type="text/rms">//<![CDATA[
var sj_appHTML=function(n,t){var f,e,o,r,i,s,h;if(t&&n){var c="innerHTML",l="script",a="appendChild",v="length",y="src",p=sj_ce,u=p("div");if(u[c]="<br>"+t,f=u.childNodes,u.removeChild(f[0]),e=u.getElementsByTagName(l),e)for(o=0;o<e[v];o++)r=p(l),i=e[o],i&&(r.type=i.type=="module"||i.type=="importmap"?i.type:"text/javascript",s=i.getAttribute(y),s?(r.setAttribute(y,s),r.setAttribute("crossorigin","anonymous")):(r.text=i[c],r.setAttribute("data-bing-script","1")),i.parentNode.replaceChild(r,i));for(h=_d.createDocumentFragment();f[v];)h[a](f[0]);n[a](h)}};var sj_ajax=function(n,t){function c(){i[u]=h;i.abort&&i.abort()}function s(n,t){typeof n=="function"&&n(t,{request:i,appendTo:function(n){i&&sj_appHTML(n,i.responseText)}})}var r,i=sj_gx(),u="onreadystatechange",f,e=null,o,l=sb_st,a=sb_ct,h=function(){};if(!n||!i){s(r,!1);return}i.open("get",n,!0);t&&(r=t.callback,f=t.timeout,o=t.headers,Object.keys(o||{}).forEach(function(n){i.setRequestHeader(n,o[n])}),t.withCredentials!==undefined&&(i.withCredentials=t.withCredentials));i[u]=function(){if(i.readyState===4){var n=!1;e!==null&&a(e);i.status===200&&(n=!0,i[u]=h);s(r,n)}};sj_evt.bind("ajax.unload",c);i.send();f>0&&(e=l(function(){c();s(r,!1)},f))};window["fbk_1"] = function() { Feedback.Bootstrap.InitializeFeedback({page:true},"sb_feedback",1,0,0); sj_evt.unbind("fdbkbtstrp_init", window["fbk_1"]); }; sj_evt.bind("fdbkbtstrp_init", window["fbk_1"], 1);;
//]]></script></div>
<script type="text/javascript">//<![CDATA[
_G.HT = new Date;
//]]></script>
</body>
</html>