CINXE.COM

Blackboard

<!DOCTYPE HTML > <html lang="fr-FR"> <head> <title>Blackboard</title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta id="request-method" name="request-method" content="GET"> <meta name="author" content="Blackboard"> <meta name="copyright" content="&copy; 1997-2025 Blackboard Inc. Tous droits réservés. U.S. Patent No. 7,493,396 and 7,558,853. Demande de brevet en cours."> <meta name="keywords" content="Blackboard"> <meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="Expires" content="-1"> <meta name="viewport" content="width=device-width, initial-scale=1.0"/> <script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"errorBeacon":"bam.nr-data.net","licenseKey":"232bf20b67","agent":"","beacon":"bam.nr-data.net","applicationTime":23,"applicationID":"1230299436","transactionName":"blwDZBYHCkBRW0QLVlcWMkQWExBAcVtEC1ZXFgNcBQUPUV9ZQgYXTlwDURQWFx1SVFEBUltWAEIASAVGRFBVDE1QWgBEDQkKHXxXVwtXeFoVWQsI","queueTime":0}; (window.NREUM||(NREUM={})).init={privacy:{cookies_enabled:true},ajax:{deny_list:["bam.nr-data.net"]},distributed_tracing:{enabled:true}};(window.NREUM||(NREUM={})).loader_config={agentID:"1385971576",accountID:"672427",trustKey:"648884",xpid:"UgEFVVRUGwICV1FQDggDVVI=",licenseKey:"232bf20b67",applicationID:"1230299436"};;/*! For license information please see nr-loader-spa-1.283.2.min.js.LICENSE.txt */ (()=>{var e,t,r={8122:(e,t,r)=>{"use strict";r.d(t,{a:()=>i});var n=r(944);function i(e,t){try{if(!e||"object"!=typeof e)return(0,n.R)(3);if(!t||"object"!=typeof t)return(0,n.R)(4);const r=Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t)),o=0===Object.keys(r).length?e:r;for(let a in o)if(void 0!==e[a])try{if(null===e[a]){r[a]=null;continue}Array.isArray(e[a])&&Array.isArray(t[a])?r[a]=Array.from(new Set([...e[a],...t[a]])):"object"==typeof e[a]&&"object"==typeof t[a]?r[a]=i(e[a],t[a]):r[a]=e[a]}catch(e){(0,n.R)(1,e)}return r}catch(e){(0,n.R)(2,e)}}},2555:(e,t,r)=>{"use strict";r.d(t,{Vp:()=>c,fn:()=>s,x1:()=>u});var n=r(384),i=r(8122);const o={beacon:n.NT.beacon,errorBeacon:n.NT.errorBeacon,licenseKey:void 0,applicationID:void 0,sa:void 0,queueTime:void 0,applicationTime:void 0,ttGuid:void 0,user:void 0,account:void 0,product:void 0,extra:void 0,jsAttributes:{},userAttributes:void 0,atts:void 0,transactionName:void 0,tNamePlain:void 0},a={};function s(e){try{const t=c(e);return!!t.licenseKey&&!!t.errorBeacon&&!!t.applicationID}catch(e){return!1}}function c(e){if(!e)throw new Error("All info objects require an agent identifier!");if(!a[e])throw new Error("Info for ".concat(e," was never set"));return a[e]}function u(e,t){if(!e)throw new Error("All info objects require an agent identifier!");a[e]=(0,i.a)(t,o);const r=(0,n.nY)(e);r&&(r.info=a[e])}},9417:(e,t,r)=>{"use strict";r.d(t,{D0:()=>h,gD:()=>g,xN:()=>p});var n=r(3333);const i=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var o=r(2614),a=r(944),s=r(384),c=r(8122);const u="[data-nr-mask]",d=()=>{const e={feature_flags:[],experimental:{marks:!1,measures:!1,resources:!1},mask_selector:"*",block_selector:"[data-nr-block]",mask_input_options:{color:!1,date:!1,"datetime-local":!1,email:!1,month:!1,number:!1,range:!1,search:!1,tel:!1,text:!1,time:!1,url:!1,week:!1,textarea:!1,select:!1,password:!0}};return{ajax:{deny_list:void 0,block_internal:!0,enabled:!0,autoStart:!0},distributed_tracing:{enabled:void 0,exclude_newrelic_header:void 0,cors_use_newrelic_header:void 0,cors_use_tracecontext_headers:void 0,allowed_origins:void 0},get feature_flags(){return e.feature_flags},set feature_flags(t){e.feature_flags=t},generic_events:{enabled:!0,autoStart:!0},harvest:{interval:30},jserrors:{enabled:!0,autoStart:!0},logging:{enabled:!0,autoStart:!0},metrics:{enabled:!0,autoStart:!0},obfuscate:void 0,page_action:{enabled:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,autoStart:!0},performance:{get capture_marks(){return e.feature_flags.includes(n.$v.MARKS)||e.experimental.marks},set capture_marks(t){e.experimental.marks=t},get capture_measures(){return e.feature_flags.includes(n.$v.MEASURES)||e.experimental.measures},set capture_measures(t){e.experimental.measures=t},capture_detail:!0,resources:{get enabled(){return e.feature_flags.includes(n.$v.RESOURCES)||e.experimental.resources},set enabled(t){e.experimental.resources=t},asset_types:[],first_party_domains:[],ignore_newrelic:!0}},privacy:{cookies_enabled:!0},proxy:{assets:void 0,beacon:void 0},session:{expiresMs:o.wk,inactiveMs:o.BB},session_replay:{autoStart:!0,enabled:!1,preload:!1,sampling_rate:10,error_sampling_rate:100,collect_fonts:!1,inline_images:!1,fix_stylesheets:!0,mask_all_inputs:!0,get mask_text_selector(){return e.mask_selector},set mask_text_selector(t){i(t)?e.mask_selector="".concat(t,",").concat(u):""===t||null===t?e.mask_selector=u:(0,a.R)(5,t)},get block_class(){return"nr-block"},get ignore_class(){return"nr-ignore"},get mask_text_class(){return"nr-mask"},get block_selector(){return e.block_selector},set block_selector(t){i(t)?e.block_selector+=",".concat(t):""!==t&&(0,a.R)(6,t)},get mask_input_options(){return e.mask_input_options},set mask_input_options(t){t&&"object"==typeof t?e.mask_input_options={...t,password:!0}:(0,a.R)(7,t)}},session_trace:{enabled:!0,autoStart:!0},soft_navigations:{enabled:!0,autoStart:!0},spa:{enabled:!0,autoStart:!0},ssl:void 0,user_actions:{enabled:!0,elementAttributes:["id","className","tagName","type"]}}},l={},f="All configuration objects require an agent identifier!";function h(e){if(!e)throw new Error(f);if(!l[e])throw new Error("Configuration for ".concat(e," was never set"));return l[e]}function p(e,t){if(!e)throw new Error(f);l[e]=(0,c.a)(t,d());const r=(0,s.nY)(e);r&&(r.init=l[e])}function g(e,t){if(!e)throw new Error(f);var r=h(e);if(r){for(var n=t.split("."),i=0;i<n.length-1;i++)if("object"!=typeof(r=r[n[i]]))return;r=r[n[n.length-1]]}return r}},5603:(e,t,r)=>{"use strict";r.d(t,{a:()=>c,o:()=>s});var n=r(384),i=r(8122);const o={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0},a={};function s(e){if(!e)throw new Error("All loader-config objects require an agent identifier!");if(!a[e])throw new Error("LoaderConfig for ".concat(e," was never set"));return a[e]}function c(e,t){if(!e)throw new Error("All loader-config objects require an agent identifier!");a[e]=(0,i.a)(t,o);const r=(0,n.nY)(e);r&&(r.loader_config=a[e])}},3371:(e,t,r)=>{"use strict";r.d(t,{V:()=>f,f:()=>l});var n=r(8122),i=r(384),o=r(6154),a=r(9324);let s=0;const c={buildEnv:a.F3,distMethod:a.Xs,version:a.xv,originTime:o.WN},u={customTransaction:void 0,disabled:!1,isolatedBacklog:!1,loaderType:void 0,maxBytes:3e4,onerror:void 0,ptid:void 0,releaseIds:{},appMetadata:{},session:void 0,denyList:void 0,timeKeeper:void 0,obfuscator:void 0,harvester:void 0},d={};function l(e){if(!e)throw new Error("All runtime objects require an agent identifier!");if(!d[e])throw new Error("Runtime for ".concat(e," was never set"));return d[e]}function f(e,t){if(!e)throw new Error("All runtime objects require an agent identifier!");d[e]={...(0,n.a)(t,u),...c},Object.hasOwnProperty.call(d[e],"harvestCount")||Object.defineProperty(d[e],"harvestCount",{get:()=>++s});const r=(0,i.nY)(e);r&&(r.runtime=d[e])}},9324:(e,t,r)=>{"use strict";r.d(t,{F3:()=>i,Xs:()=>o,Yq:()=>a,xv:()=>n});const n="1.283.2",i="PROD",o="CDN",a="^2.0.0-alpha.17"},6154:(e,t,r)=>{"use strict";r.d(t,{A4:()=>s,OF:()=>d,RI:()=>i,WN:()=>h,bv:()=>o,gm:()=>a,lR:()=>f,m:()=>u,mw:()=>c,sb:()=>l});var n=r(1863);const i="undefined"!=typeof window&&!!window.document,o="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),a=i?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),s="complete"===a?.document?.readyState,c=Boolean("hidden"===a?.document?.visibilityState),u=""+a?.location,d=/iPad|iPhone|iPod/.test(a.navigator?.userAgent),l=d&&"undefined"==typeof SharedWorker,f=(()=>{const e=a.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);return Array.isArray(e)&&e.length>=2?+e[1]:0})(),h=Date.now()-(0,n.t)()},7295:(e,t,r)=>{"use strict";r.d(t,{Xv:()=>a,gX:()=>i,iW:()=>o});var n=[];function i(e){if(!e||o(e))return!1;if(0===n.length)return!0;for(var t=0;t<n.length;t++){var r=n[t];if("*"===r.hostname)return!1;if(s(r.hostname,e.hostname)&&c(r.pathname,e.pathname))return!1}return!0}function o(e){return void 0===e.hostname}function a(e){if(n=[],e&&e.length)for(var t=0;t<e.length;t++){let r=e[t];if(!r)continue;0===r.indexOf("http://")?r=r.substring(7):0===r.indexOf("https://")&&(r=r.substring(8));const i=r.indexOf("/");let o,a;i>0?(o=r.substring(0,i),a=r.substring(i)):(o=r,a="");let[s]=o.split(":");n.push({hostname:s,pathname:a})}}function s(e,t){return!(e.length>t.length)&&t.indexOf(e)===t.length-e.length}function c(e,t){return 0===e.indexOf("/")&&(e=e.substring(1)),0===t.indexOf("/")&&(t=t.substring(1)),""===e||e===t}},1687:(e,t,r)=>{"use strict";r.d(t,{Ak:()=>c,Ze:()=>l,x3:()=>u});var n=r(7836),i=r(3606),o=r(860),a=r(2646);const s={};function c(e,t){const r={staged:!1,priority:o.P3[t]||0};d(e),s[e].get(t)||s[e].set(t,r)}function u(e,t){e&&s[e]&&(s[e].get(t)&&s[e].delete(t),h(e,t,!1),s[e].size&&f(e))}function d(e){if(!e)throw new Error("agentIdentifier required");s[e]||(s[e]=new Map)}function l(e="",t="feature",r=!1){if(d(e),!e||!s[e].get(t)||r)return h(e,t);s[e].get(t).staged=!0,f(e)}function f(e){const t=Array.from(s[e]);t.every((([e,t])=>t.staged))&&(t.sort(((e,t)=>e[1].priority-t[1].priority)),t.forEach((([t])=>{s[e].delete(t),h(e,t)})))}function h(e,t,r=!0){const o=e?n.ee.get(e):n.ee,s=i.i.handlers;if(!o.aborted&&o.backlog&&s){if(r){const e=o.backlog[t],r=s[t];if(r){for(let t=0;e&&t<e.length;++t)p(e[t],r);Object.entries(r).forEach((([e,t])=>{Object.values(t||{}).forEach((t=>{t[0]?.on&&t[0]?.context()instanceof a.y&&t[0].on(e,t[1])}))}))}}o.isolatedBacklog||delete s[t],o.backlog[t]=null,o.emit("drain-"+t,[])}}function p(e,t){var r=e[1];Object.values(t[r]||{}).forEach((t=>{var r=e[0];if(t[0]===r){var n=t[1],i=e[3],o=e[2];n.apply(i,o)}}))}},7836:(e,t,r)=>{"use strict";r.d(t,{P:()=>c,ee:()=>u});var n=r(384),i=r(8990),o=r(3371),a=r(2646),s=r(5607);const c="nr@context:".concat(s.W),u=function e(t,r){var n={},s={},d={},l=!1;try{l=16===r.length&&(0,o.f)(r).isolatedBacklog}catch(e){}var f={on:p,addEventListener:p,removeEventListener:function(e,t){var r=n[e];if(!r)return;for(var i=0;i<r.length;i++)r[i]===t&&r.splice(i,1)},emit:function(e,r,n,i,o){!1!==o&&(o=!0);if(u.aborted&&!i)return;t&&o&&t.emit(e,r,n);for(var a=h(n),c=g(e),d=c.length,l=0;l<d;l++)c[l].apply(a,r);var p=v()[s[e]];p&&p.push([f,e,r,a]);return a},get:m,listeners:g,context:h,buffer:function(e,t){const r=v();if(t=t||"feature",f.aborted)return;Object.entries(e||{}).forEach((([e,n])=>{s[n]=t,t in r||(r[t]=[])}))},abort:function(){f._aborted=!0,Object.keys(f.backlog).forEach((e=>{delete f.backlog[e]}))},isBuffering:function(e){return!!v()[s[e]]},debugId:r,backlog:l?{}:t&&"object"==typeof t.backlog?t.backlog:{},isolatedBacklog:l};return Object.defineProperty(f,"aborted",{get:()=>{let e=f._aborted||!1;return e||(t&&(e=t.aborted),e)}}),f;function h(e){return e&&e instanceof a.y?e:e?(0,i.I)(e,c,(()=>new a.y(c))):new a.y(c)}function p(e,t){n[e]=g(e).concat(t)}function g(e){return n[e]||[]}function m(t){return d[t]=d[t]||e(f,t)}function v(){return f.backlog}}(void 0,"globalEE"),d=(0,n.Zm)();d.ee||(d.ee=u)},2646:(e,t,r)=>{"use strict";r.d(t,{y:()=>n});class n{constructor(e){this.contextId=e}}},9908:(e,t,r)=>{"use strict";r.d(t,{d:()=>n,p:()=>i});var n=r(7836).ee.get("handle");function i(e,t,r,i,o){o?(o.buffer([e],i),o.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},3606:(e,t,r)=>{"use strict";r.d(t,{i:()=>o});var n=r(9908);o.on=a;var i=o.handlers={};function o(e,t,r,o){a(o||n.d,i,e,t,r)}function a(e,t,r,i,o){o||(o="feature"),e||(e=n.d);var a=t[o]=t[o]||{};(a[r]=a[r]||[]).push([e,i])}},3878:(e,t,r)=>{"use strict";function n(e,t){return{capture:e,passive:!1,signal:t}}function i(e,t,r=!1,i){window.addEventListener(e,t,n(r,i))}function o(e,t,r=!1,i){document.addEventListener(e,t,n(r,i))}r.d(t,{DD:()=>o,jT:()=>n,sp:()=>i})},5607:(e,t,r)=>{"use strict";r.d(t,{W:()=>n});const n=(0,r(9566).bz)()},9566:(e,t,r)=>{"use strict";r.d(t,{LA:()=>s,ZF:()=>c,bz:()=>a,el:()=>u});var n=r(6154);const i="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx";function o(e,t){return e?15&e[t]:16*Math.random()|0}function a(){const e=n.gm?.crypto||n.gm?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(30))),i.split("").map((e=>"x"===e?o(t,r++).toString(16):"y"===e?(3&o()|8).toString(16):e)).join("")}function s(e){const t=n.gm?.crypto||n.gm?.msCrypto;let r,i=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(e)));const a=[];for(var s=0;s<e;s++)a.push(o(r,i++).toString(16));return a.join("")}function c(){return s(16)}function u(){return s(32)}},2614:(e,t,r)=>{"use strict";r.d(t,{BB:()=>a,H3:()=>n,g:()=>u,iL:()=>c,tS:()=>s,uh:()=>i,wk:()=>o});const n="NRBA",i="SESSION",o=144e5,a=18e5,s={STARTED:"session-started",PAUSE:"session-pause",RESET:"session-reset",RESUME:"session-resume",UPDATE:"session-update"},c={SAME_TAB:"same-tab",CROSS_TAB:"cross-tab"},u={OFF:0,FULL:1,ERROR:2}},1863:(e,t,r)=>{"use strict";function n(){return Math.floor(performance.now())}r.d(t,{t:()=>n})},7485:(e,t,r)=>{"use strict";r.d(t,{D:()=>i});var n=r(6154);function i(e){if(0===(e||"").indexOf("data:"))return{protocol:"data"};try{const t=new URL(e,location.href),r={port:t.port,hostname:t.hostname,pathname:t.pathname,search:t.search,protocol:t.protocol.slice(0,t.protocol.indexOf(":")),sameOrigin:t.protocol===n.gm?.location?.protocol&&t.host===n.gm?.location?.host};return r.port&&""!==r.port||("http:"===t.protocol&&(r.port="80"),"https:"===t.protocol&&(r.port="443")),r.pathname&&""!==r.pathname?r.pathname.startsWith("/")||(r.pathname="/".concat(r.pathname)):r.pathname="/",r}catch(e){return{}}}},944:(e,t,r)=>{"use strict";function n(e,t){"function"==typeof console.debug&&console.debug("New Relic Warning: https://github.com/newrelic/newrelic-browser-agent/blob/main/docs/warning-codes.md#".concat(e),t)}r.d(t,{R:()=>n})},5284:(e,t,r)=>{"use strict";r.d(t,{t:()=>c,B:()=>s});var n=r(7836),i=r(6154);const o="newrelic";const a=new Set,s={};function c(e,t){const r=n.ee.get(t);s[t]??={},e&&"object"==typeof e&&(a.has(t)||(r.emit("rumresp",[e]),s[t]=e,a.add(t),function(e={}){try{i.gm.dispatchEvent(new CustomEvent(o,{detail:e}))}catch(e){}}({loaded:!0})))}},8990:(e,t,r)=>{"use strict";r.d(t,{I:()=>i});var n=Object.prototype.hasOwnProperty;function i(e,t,r){if(n.call(e,t))return e[t];var i=r();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!1}),i}catch(e){}return e[t]=i,i}},6389:(e,t,r)=>{"use strict";function n(e,t=500,r={}){const n=r?.leading||!1;let i;return(...r)=>{n&&void 0===i&&(e.apply(this,r),i=setTimeout((()=>{i=clearTimeout(i)}),t)),n||(clearTimeout(i),i=setTimeout((()=>{e.apply(this,r)}),t))}}function i(e){let t=!1;return(...r)=>{t||(t=!0,e.apply(this,r))}}r.d(t,{J:()=>i,s:()=>n})},3304:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(7836);const i=()=>{const e=new WeakSet;return(t,r)=>{if("object"==typeof r&&null!==r){if(e.has(r))return;e.add(r)}return r}};function o(e){try{return JSON.stringify(e,i())??""}catch(e){try{n.ee.emit("internal-error",[e])}catch(e){}return""}}},5289:(e,t,r)=>{"use strict";r.d(t,{GG:()=>o,sB:()=>a});var n=r(3878);function i(){return"undefined"==typeof document||"complete"===document.readyState}function o(e,t){if(i())return e();(0,n.sp)("load",e,t)}function a(e){if(i())return e();(0,n.DD)("DOMContentLoaded",e)}},384:(e,t,r)=>{"use strict";r.d(t,{NT:()=>o,US:()=>d,Zm:()=>a,bQ:()=>c,dV:()=>s,nY:()=>u,pV:()=>l});var n=r(6154),i=r(1863);const o={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function a(){return n.gm.NREUM||(n.gm.NREUM={}),void 0===n.gm.newrelic&&(n.gm.newrelic=n.gm.NREUM),n.gm.NREUM}function s(){let e=a();return e.o||(e.o={ST:n.gm.setTimeout,SI:n.gm.setImmediate,CT:n.gm.clearTimeout,XHR:n.gm.XMLHttpRequest,REQ:n.gm.Request,EV:n.gm.Event,PR:n.gm.Promise,MO:n.gm.MutationObserver,FETCH:n.gm.fetch,WS:n.gm.WebSocket}),e}function c(e,t){let r=a();r.initializedAgents??={},t.initializedAt={ms:(0,i.t)(),date:new Date},r.initializedAgents[e]=t}function u(e){let t=a();return t.initializedAgents?.[e]}function d(e,t){a()[e]=t}function l(){return function(){let e=a();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=a();const t=e.init||{};e.init={...t}}(),s(),function(){let e=a();const t=e.loader_config||{};e.loader_config={...t}}(),a()}},2843:(e,t,r)=>{"use strict";r.d(t,{u:()=>i});var n=r(3878);function i(e,t=!1,r,i){(0,n.DD)("visibilitychange",(function(){if(t)return void("hidden"===document.visibilityState&&e());e(document.visibilityState)}),r,i)}},8139:(e,t,r)=>{"use strict";r.d(t,{u:()=>f});var n=r(7836),i=r(3434),o=r(8990),a=r(6154);const s={},c=a.gm.XMLHttpRequest,u="addEventListener",d="removeEventListener",l="nr@wrapped:".concat(n.P);function f(e){var t=function(e){return(e||n.ee).get("events")}(e);if(s[t.debugId]++)return t;s[t.debugId]=1;var r=(0,i.YM)(t,!0);function f(e){r.inPlace(e,[u,d],"-",p)}function p(e,t){return e[1]}return"getPrototypeOf"in Object&&(a.RI&&h(document,f),c&&h(c.prototype,f),h(a.gm,f)),t.on(u+"-start",(function(e,t){var n=e[1];if(null!==n&&("function"==typeof n||"object"==typeof n)){var i=(0,o.I)(n,l,(function(){var e={object:function(){if("function"!=typeof n.handleEvent)return;return n.handleEvent.apply(n,arguments)},function:n}[typeof n];return e?r(e,"fn-",null,e.name||"anonymous"):n}));this.wrapped=e[1]=i}})),t.on(d+"-start",(function(e){e[1]=this.wrapped||e[1]})),t}function h(e,t,...r){let n=e;for(;"object"==typeof n&&!Object.prototype.hasOwnProperty.call(n,u);)n=Object.getPrototypeOf(n);n&&t(n,...r)}},3434:(e,t,r)=>{"use strict";r.d(t,{Jt:()=>o,YM:()=>c});var n=r(7836),i=r(5607);const o="nr@original:".concat(i.W);var a=Object.prototype.hasOwnProperty,s=!1;function c(e,t){return e||(e=n.ee),r.inPlace=function(e,t,n,i,o){n||(n="");const a="-"===n.charAt(0);for(let s=0;s<t.length;s++){const c=t[s],u=e[c];d(u)||(e[c]=r(u,a?c+n:n,i,c,o))}},r.flag=o,r;function r(t,r,n,s,c){return d(t)?t:(r||(r=""),nrWrapper[o]=t,function(e,t,r){if(Object.defineProperty&&Object.keys)try{return Object.keys(e).forEach((function(r){Object.defineProperty(t,r,{get:function(){return e[r]},set:function(t){return e[r]=t,t}})})),t}catch(e){u([e],r)}for(var n in e)a.call(e,n)&&(t[n]=e[n])}(t,nrWrapper,e),nrWrapper);function nrWrapper(){var o,a,d,l;try{a=this,o=[...arguments],d="function"==typeof n?n(o,a):n||{}}catch(t){u([t,"",[o,a,s],d],e)}i(r+"start",[o,a,s],d,c);try{return l=t.apply(a,o)}catch(e){throw i(r+"err",[o,a,e],d,c),e}finally{i(r+"end",[o,a,l],d,c)}}}function i(r,n,i,o){if(!s||t){var a=s;s=!0;try{e.emit(r,n,i,t,o)}catch(t){u([t,r,n,i],e)}s=a}}}function u(e,t){t||(t=n.ee);try{t.emit("internal-error",e)}catch(e){}}function d(e){return!(e&&"function"==typeof e&&e.apply&&!e[o])}},9414:(e,t,r)=>{"use strict";r.d(t,{J:()=>c});var n=r(7836),i=r(2646),o=r(944),a=r(3434);const s=new Map;function c(e,t,r,c){if("object"!=typeof t||!t||"string"!=typeof r||!r||"function"!=typeof t[r])return(0,o.R)(29);const u=function(e){return(e||n.ee).get("logger")}(e),d=(0,a.YM)(u),l=new i.y(n.P);l.level=c.level,l.customAttributes=c.customAttributes;const f=t[r]?.[a.Jt]||t[r];return s.set(f,l),d.inPlace(t,[r],"wrap-logger-",(()=>s.get(f))),u}},9300:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.ajax},3333:(e,t,r)=>{"use strict";r.d(t,{$v:()=>u,TZ:()=>n,Zp:()=>i,kd:()=>c,mq:()=>s,nf:()=>a,qN:()=>o});const n=r(860).K7.genericEvents,i=["auxclick","click","copy","keydown","paste","scrollend"],o=["focus","blur"],a=4,s=1e3,c=["PageAction","UserAction","BrowserPerformance"],u={MARKS:"experimental.marks",MEASURES:"experimental.measures",RESOURCES:"experimental.resources"}},6774:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.jserrors},993:(e,t,r)=>{"use strict";r.d(t,{A$:()=>o,ET:()=>a,TZ:()=>s,p_:()=>i});var n=r(860);const i={ERROR:"ERROR",WARN:"WARN",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"},o={OFF:0,ERROR:1,WARN:2,INFO:3,DEBUG:4,TRACE:5},a="log",s=n.K7.logging},3785:(e,t,r)=>{"use strict";r.d(t,{R:()=>c,b:()=>u});var n=r(9908),i=r(1863),o=r(860),a=r(8154),s=r(993);function c(e,t,r={},c=s.p_.INFO){(0,n.p)(a.xV,["API/logging/".concat(c.toLowerCase(),"/called")],void 0,o.K7.metrics,e),(0,n.p)(s.ET,[(0,i.t)(),t,r,c],void 0,o.K7.logging,e)}function u(e){return"string"==typeof e&&Object.values(s.p_).some((t=>t===e.toUpperCase().trim()))}},8154:(e,t,r)=>{"use strict";r.d(t,{z_:()=>o,XG:()=>s,TZ:()=>n,rs:()=>i,xV:()=>a});r(6154),r(9566),r(384);const n=r(860).K7.metrics,i="sm",o="cm",a="storeSupportabilityMetrics",s="storeEventMetrics"},6630:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewEvent},782:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewTiming},6344:(e,t,r)=>{"use strict";r.d(t,{BB:()=>d,G4:()=>o,Qb:()=>l,TZ:()=>i,Ug:()=>a,_s:()=>s,bc:()=>u,yP:()=>c});var n=r(2614);const i=r(860).K7.sessionReplay,o={RECORD:"recordReplay",PAUSE:"pauseReplay",REPLAY_RUNNING:"replayRunning",ERROR_DURING_REPLAY:"errorDuringReplay"},a=.12,s={DomContentLoaded:0,Load:1,FullSnapshot:2,IncrementalSnapshot:3,Meta:4,Custom:5},c={[n.g.ERROR]:15e3,[n.g.FULL]:3e5,[n.g.OFF]:0},u={RESET:{message:"Session was reset",sm:"Reset"},IMPORT:{message:"Recorder failed to import",sm:"Import"},TOO_MANY:{message:"429: Too Many Requests",sm:"Too-Many"},TOO_BIG:{message:"Payload was too large",sm:"Too-Big"},CROSS_TAB:{message:"Session Entity was set to OFF on another tab",sm:"Cross-Tab"},ENTITLEMENTS:{message:"Session Replay is not allowed and will not be started",sm:"Entitlement"}},d=5e3,l={API:"api"}},5270:(e,t,r)=>{"use strict";r.d(t,{Aw:()=>c,CT:()=>u,SR:()=>s});var n=r(384),i=r(9417),o=r(7767),a=r(6154);function s(e){return!!(0,n.dV)().o.MO&&(0,o.V)(e)&&!0===(0,i.gD)(e,"session_trace.enabled")}function c(e){return!0===(0,i.gD)(e,"session_replay.preload")&&s(e)}function u(e,t){const r=t.correctAbsoluteTimestamp(e);return{originalTimestamp:e,correctedTimestamp:r,timestampDiff:e-r,originTime:a.WN,correctedOriginTime:t.correctedOriginTime,originTimeDiff:Math.floor(a.WN-t.correctedOriginTime)}}},3738:(e,t,r)=>{"use strict";r.d(t,{He:()=>i,Kp:()=>s,Lc:()=>u,Rz:()=>d,TZ:()=>n,bD:()=>o,d3:()=>a,jx:()=>l,uP:()=>c});const n=r(860).K7.sessionTrace,i="bstResource",o="resource",a="-start",s="-end",c="fn"+a,u="fn"+s,d="pushState",l=1e3},3962:(e,t,r)=>{"use strict";r.d(t,{AM:()=>o,O2:()=>c,Qu:()=>u,TZ:()=>s,ih:()=>d,pP:()=>a,tC:()=>i});var n=r(860);const i=["click","keydown","submit","popstate"],o="api",a="initialPageLoad",s=n.K7.softNav,c={INITIAL_PAGE_LOAD:"",ROUTE_CHANGE:1,UNSPECIFIED:2},u={INTERACTION:1,AJAX:2,CUSTOM_END:3,CUSTOM_TRACER:4},d={IP:"in progress",FIN:"finished",CAN:"cancelled"}},7378:(e,t,r)=>{"use strict";r.d(t,{$p:()=>x,BR:()=>b,Kp:()=>R,L3:()=>y,Lc:()=>c,NC:()=>o,SG:()=>d,TZ:()=>i,U6:()=>p,UT:()=>m,d3:()=>w,dT:()=>f,e5:()=>A,gx:()=>v,l9:()=>l,oW:()=>h,op:()=>g,rw:()=>u,tH:()=>T,uP:()=>s,wW:()=>E,xq:()=>a});var n=r(384);const i=r(860).K7.spa,o=["click","submit","keypress","keydown","keyup","change"],a=999,s="fn-start",c="fn-end",u="cb-start",d="api-ixn-",l="remaining",f="interaction",h="spaNode",p="jsonpNode",g="fetch-start",m="fetch-done",v="fetch-body-",b="jsonp-end",y=(0,n.dV)().o.ST,w="-start",R="-end",x="-body",E="cb"+R,A="jsTime",T="fetch"},4234:(e,t,r)=>{"use strict";r.d(t,{W:()=>o});var n=r(7836),i=r(1687);class o{constructor(e,t){this.agentIdentifier=e,this.ee=n.ee.get(e),this.featureName=t,this.blocked=!1}deregisterDrain(){(0,i.x3)(this.agentIdentifier,this.featureName)}}},7767:(e,t,r)=>{"use strict";r.d(t,{V:()=>o});var n=r(9417),i=r(6154);const o=e=>i.RI&&!0===(0,n.gD)(e,"privacy.cookies_enabled")},8969:(e,t,r)=>{"use strict";r.d(t,{j:()=>O});var n=r(860),i=r(2555),o=r(3371),a=r(9908),s=r(7836),c=r(1687),u=r(5289),d=r(6154),l=r(944),f=r(8154),h=r(384),p=r(6344);const g=["setErrorHandler","finished","addToTrace","addRelease","recordCustomEvent","addPageAction","setCurrentRouteName","setPageViewName","setCustomAttribute","interaction","noticeError","setUserId","setApplicationVersion","start",p.G4.RECORD,p.G4.PAUSE,"log","wrapLogger"],m=["setErrorHandler","finished","addToTrace","addRelease"];var v=r(1863),b=r(2614),y=r(993),w=r(3785),R=r(9414);function x(){const e=(0,h.pV)();g.forEach((t=>{e[t]=(...r)=>function(t,...r){let n=[];return Object.values(e.initializedAgents).forEach((e=>{e&&e.api?e.exposed&&e.api[t]&&n.push(e.api[t](...r)):(0,l.R)(38,t)})),n.length>1?n:n[0]}(t,...r)}))}const E={};var A=r(9417),T=r(5603),N=r(5284);const S=e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e};let _=!1;function O(e,t={},g,O){let{init:I,info:P,loader_config:j,runtime:C={},exposed:k=!0}=t;C.loaderType=g;const L=(0,h.pV)();P||(I=L.init,P=L.info,j=L.loader_config),(0,A.xN)(e.agentIdentifier,I||{}),(0,T.a)(e.agentIdentifier,j||{}),P.jsAttributes??={},d.bv&&(P.jsAttributes.isWorker=!0),(0,i.x1)(e.agentIdentifier,P);const H=(0,A.D0)(e.agentIdentifier),M=[P.beacon,P.errorBeacon];_||(H.proxy.assets&&(S(H.proxy.assets),M.push(H.proxy.assets)),H.proxy.beacon&&M.push(H.proxy.beacon),x(),(0,h.US)("activatedFeatures",N.B),e.runSoftNavOverSpa&&=!0===H.soft_navigations.enabled&&H.feature_flags.includes("soft_nav")),C.denyList=[...H.ajax.deny_list||[],...H.ajax.block_internal?M:[]],C.ptid=e.agentIdentifier,(0,o.V)(e.agentIdentifier,C),e.ee=s.ee.get(e.agentIdentifier),void 0===e.api&&(e.api=function(e,t,h=!1){t||(0,c.Ak)(e,"api");const g={};var x=s.ee.get(e),A=x.get("tracer");E[e]=b.g.OFF,x.on(p.G4.REPLAY_RUNNING,(t=>{E[e]=t}));var T="api-",N=T+"ixn-";function S(t,r,n,o){const a=(0,i.Vp)(e);return null===r?delete a.jsAttributes[t]:(0,i.x1)(e,{...a,jsAttributes:{...a.jsAttributes,[t]:r}}),I(T,n,!0,o||null===r?"session":void 0)(t,r)}function _(){}g.log=function(e,{customAttributes:t={},level:r=y.p_.INFO}={}){(0,a.p)(f.xV,["API/log/called"],void 0,n.K7.metrics,x),(0,w.R)(x,e,t,r)},g.wrapLogger=(e,t,{customAttributes:r={},level:i=y.p_.INFO}={})=>{(0,a.p)(f.xV,["API/wrapLogger/called"],void 0,n.K7.metrics,x),(0,R.J)(x,e,t,{customAttributes:r,level:i})},m.forEach((e=>{g[e]=I(T,e,!0,"api")})),g.addPageAction=I(T,"addPageAction",!0,n.K7.genericEvents),g.recordCustomEvent=I(T,"recordCustomEvent",!0,n.K7.genericEvents),g.setPageViewName=function(t,r){if("string"==typeof t)return"/"!==t.charAt(0)&&(t="/"+t),(0,o.f)(e).customTransaction=(r||"http://custom.transaction")+t,I(T,"setPageViewName",!0)()},g.setCustomAttribute=function(e,t,r=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof t)||null===t)return S(e,t,"setCustomAttribute",r);(0,l.R)(40,typeof t)}else(0,l.R)(39,typeof e)},g.setUserId=function(e){if("string"==typeof e||null===e)return S("enduser.id",e,"setUserId",!0);(0,l.R)(41,typeof e)},g.setApplicationVersion=function(e){if("string"==typeof e||null===e)return S("application.version",e,"setApplicationVersion",!1);(0,l.R)(42,typeof e)},g.start=()=>{try{(0,a.p)(f.xV,["API/start/called"],void 0,n.K7.metrics,x),x.emit("manual-start-all")}catch(e){(0,l.R)(23,e)}},g[p.G4.RECORD]=function(){(0,a.p)(f.xV,["API/recordReplay/called"],void 0,n.K7.metrics,x),(0,a.p)(p.G4.RECORD,[],void 0,n.K7.sessionReplay,x)},g[p.G4.PAUSE]=function(){(0,a.p)(f.xV,["API/pauseReplay/called"],void 0,n.K7.metrics,x),(0,a.p)(p.G4.PAUSE,[],void 0,n.K7.sessionReplay,x)},g.interaction=function(e){return(new _).get("object"==typeof e?e:{})};const O=_.prototype={createTracer:function(e,t){var r={},i=this,o="function"==typeof t;return(0,a.p)(f.xV,["API/createTracer/called"],void 0,n.K7.metrics,x),h||(0,a.p)(N+"tracer",[(0,v.t)(),e,r],i,n.K7.spa,x),function(){if(A.emit((o?"":"no-")+"fn-start",[(0,v.t)(),i,o],r),o)try{return t.apply(this,arguments)}catch(e){const t="string"==typeof e?new Error(e):e;throw A.emit("fn-err",[arguments,this,t],r),t}finally{A.emit("fn-end",[(0,v.t)()],r)}}}};function I(e,t,r,i){return function(){return(0,a.p)(f.xV,["API/"+t+"/called"],void 0,n.K7.metrics,x),i&&(0,a.p)(e+t,[r?(0,v.t)():performance.now(),...arguments],r?null:this,i,x),r?void 0:this}}function P(){r.e(478).then(r.bind(r,8778)).then((({setAPI:t})=>{t(e),(0,c.Ze)(e,"api")})).catch((e=>{(0,l.R)(27,e),x.abort()}))}return["actionText","setName","setAttribute","save","ignore","onEnd","getContext","end","get"].forEach((e=>{O[e]=I(N,e,void 0,h?n.K7.softNav:n.K7.spa)})),g.setCurrentRouteName=h?I(N,"routeName",void 0,n.K7.softNav):I(T,"routeName",!0,n.K7.spa),g.noticeError=function(t,r){"string"==typeof t&&(t=new Error(t)),(0,a.p)(f.xV,["API/noticeError/called"],void 0,n.K7.metrics,x),(0,a.p)("err",[t,(0,v.t)(),!1,r,!!E[e]],void 0,n.K7.jserrors,x)},d.RI?(0,u.GG)((()=>P()),!0):P(),g}(e.agentIdentifier,O,e.runSoftNavOverSpa)),void 0===e.exposed&&(e.exposed=k),_=!0}},8374:(e,t,r)=>{r.nc=(()=>{try{return document?.currentScript?.nonce}catch(e){}return""})()},860:(e,t,r)=>{"use strict";r.d(t,{$J:()=>u,K7:()=>s,P3:()=>c,XX:()=>i,qY:()=>n,v4:()=>a});const n="events",i="jserrors",o="browser/blobs",a="rum",s={ajax:"ajax",genericEvents:"generic_events",jserrors:i,logging:"logging",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",softNav:"soft_navigations",spa:"spa"},c={[s.pageViewEvent]:1,[s.pageViewTiming]:2,[s.metrics]:3,[s.jserrors]:4,[s.spa]:5,[s.ajax]:6,[s.sessionTrace]:7,[s.softNav]:8,[s.sessionReplay]:9,[s.logging]:10,[s.genericEvents]:11},u={[s.pageViewEvent]:a,[s.pageViewTiming]:n,[s.ajax]:n,[s.spa]:n,[s.softNav]:n,[s.metrics]:i,[s.jserrors]:i,[s.sessionTrace]:o,[s.sessionReplay]:o,[s.logging]:"browser/logs",[s.genericEvents]:"ins"}}},n={};function i(e){var t=n[e];if(void 0!==t)return t.exports;var o=n[e]={exports:{}};return r[e](o,o.exports,i),o.exports}i.m=r,i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((t,r)=>(i.f[r](e,t),t)),[])),i.u=e=>({212:"nr-spa-compressor",249:"nr-spa-recorder",478:"nr-spa"}[e]+"-1.283.2.min.js"),i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),e={},t="NRBA-1.283.2.PROD:",i.l=(r,n,o,a)=>{if(e[r])e[r].push(n);else{var s,c;if(void 0!==o)for(var u=document.getElementsByTagName("script"),d=0;d<u.length;d++){var l=u[d];if(l.getAttribute("src")==r||l.getAttribute("data-webpack")==t+o){s=l;break}}if(!s){c=!0;var f={478:"sha512-2oN05BjxuObKuOX8E0vq/zS51M+2HokmNPBRUrIC1fw3hpJqoI18/nckSFiqV11KxT7ag3C+FunKrR8n0PD9Ig==",249:"sha512-Zs5nIHr/khH6G8IhAEdnngg+P7y/IfmjU0PQmXABpCEtSTeKV22OYdaa9lENrW9uxI0lZ6O5e5dCnEMsTS0onA==",212:"sha512-LPKde7A1ZxIHzoSqWKxn5uWVhM9u76Vtmp9DMBf+Ry3mnn2jpsfyfigMYD5Yka2RG3NeIBqOwNYuPrWL39qn6w=="};(s=document.createElement("script")).charset="utf-8",s.timeout=120,i.nc&&s.setAttribute("nonce",i.nc),s.setAttribute("data-webpack",t+o),s.src=r,0!==s.src.indexOf(window.location.origin+"/")&&(s.crossOrigin="anonymous"),f[a]&&(s.integrity=f[a])}e[r]=[n];var h=(t,n)=>{s.onerror=s.onload=null,clearTimeout(p);var i=e[r];if(delete e[r],s.parentNode&&s.parentNode.removeChild(s),i&&i.forEach((e=>e(n))),t)return t(n)},p=setTimeout(h.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=h.bind(null,s.onerror),s.onload=h.bind(null,s.onload),c&&document.head.appendChild(s)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.p="https://js-agent.newrelic.com/",(()=>{var e={38:0,788:0};i.f.j=(t,r)=>{var n=i.o(e,t)?e[t]:void 0;if(0!==n)if(n)r.push(n[2]);else{var o=new Promise(((r,i)=>n=e[t]=[r,i]));r.push(n[2]=o);var a=i.p+i.u(t),s=new Error;i.l(a,(r=>{if(i.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var o=r&&("load"===r.type?"missing":r.type),a=r&&r.target&&r.target.src;s.message="Loading chunk "+t+" failed.\n("+o+": "+a+")",s.name="ChunkLoadError",s.type=o,s.request=a,n[1](s)}}),"chunk-"+t,t)}};var t=(t,r)=>{var n,o,[a,s,c]=r,u=0;if(a.some((t=>0!==e[t]))){for(n in s)i.o(s,n)&&(i.m[n]=s[n]);if(c)c(i)}for(t&&t(r);u<a.length;u++)o=a[u],i.o(e,o)&&e[o]&&e[o][0](),e[o]=0},r=self["webpackChunk:NRBA-1.283.2.PROD"]=self["webpackChunk:NRBA-1.283.2.PROD"]||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})(),(()=>{"use strict";i(8374);var e=i(944),t=i(6344),r=i(9566);class n{agentIdentifier;constructor(){this.agentIdentifier=(0,r.LA)(16)}#e(t,...r){if("function"==typeof this.api?.[t])return this.api[t](...r);(0,e.R)(35,t)}addPageAction(e,t){return this.#e("addPageAction",e,t)}recordCustomEvent(e,t){return this.#e("recordCustomEvent",e,t)}setPageViewName(e,t){return this.#e("setPageViewName",e,t)}setCustomAttribute(e,t,r){return this.#e("setCustomAttribute",e,t,r)}noticeError(e,t){return this.#e("noticeError",e,t)}setUserId(e){return this.#e("setUserId",e)}setApplicationVersion(e){return this.#e("setApplicationVersion",e)}setErrorHandler(e){return this.#e("setErrorHandler",e)}addRelease(e,t){return this.#e("addRelease",e,t)}log(e,t){return this.#e("log",e,t)}}class o extends n{#e(t,...r){if("function"==typeof this.api?.[t])return this.api[t](...r);(0,e.R)(35,t)}start(){return this.#e("start")}finished(e){return this.#e("finished",e)}recordReplay(){return this.#e(t.G4.RECORD)}pauseReplay(){return this.#e(t.G4.PAUSE)}addToTrace(e){return this.#e("addToTrace",e)}setCurrentRouteName(e){return this.#e("setCurrentRouteName",e)}interaction(){return this.#e("interaction")}wrapLogger(e,t,r){return this.#e("wrapLogger",e,t,r)}}var a=i(860),s=i(9417);const c=Object.values(a.K7);function u(e){const t={};return c.forEach((r=>{t[r]=function(e,t){return!0===(0,s.gD)(t,"".concat(e,".enabled"))}(r,e)})),t}var d=i(8969);var l=i(1687),f=i(4234),h=i(5289),p=i(6154),g=i(5270),m=i(7767),v=i(6389);class b extends f.W{constructor(e,t,r=!0){super(e.agentIdentifier,t),this.auto=r,this.abortHandler=void 0,this.featAggregate=void 0,this.onAggregateImported=void 0,!1===e.init[this.featureName].autoStart&&(this.auto=!1),this.auto?(0,l.Ak)(e.agentIdentifier,t):this.ee.on("manual-start-all",(0,v.J)((()=>{(0,l.Ak)(e.agentIdentifier,this.featureName),this.auto=!0,this.importAggregator(e)})))}importAggregator(t,r={}){if(this.featAggregate||!this.auto)return;let n;this.onAggregateImported=new Promise((e=>{n=e}));const o=async()=>{let o;try{if((0,m.V)(this.agentIdentifier)){const{setupAgentSession:e}=await i.e(478).then(i.bind(i,6526));o=e(t)}}catch(t){(0,e.R)(20,t),this.ee.emit("internal-error",[t]),this.featureName===a.K7.sessionReplay&&this.abortHandler?.()}try{if(!this.#t(this.featureName,o))return(0,l.Ze)(this.agentIdentifier,this.featureName),void n(!1);const{lazyFeatureLoader:e}=await i.e(478).then(i.bind(i,6103)),{Aggregate:a}=await e(this.featureName,"aggregate");this.featAggregate=new a(t,r),t.runtime.harvester.initializedAggregates.push(this.featAggregate),n(!0)}catch(t){(0,e.R)(34,t),this.abortHandler?.(),(0,l.Ze)(this.agentIdentifier,this.featureName,!0),n(!1),this.ee&&this.ee.abort()}};p.RI?(0,h.GG)((()=>o()),!0):o()}#t(e,t){switch(e){case a.K7.sessionReplay:return(0,g.SR)(this.agentIdentifier)&&!!t;case a.K7.sessionTrace:return!!t;default:return!0}}}var y=i(6630);class w extends b{static featureName=y.T;constructor(e,t=!0){super(e,y.T,t),this.importAggregator(e)}}var R=i(384);var x=i(9908),E=i(2843),A=i(3878),T=i(782),N=i(1863);class S extends b{static featureName=T.T;constructor(e,t=!0){super(e,T.T,t),p.RI&&((0,E.u)((()=>(0,x.p)("docHidden",[(0,N.t)()],void 0,T.T,this.ee)),!0),(0,A.sp)("pagehide",(()=>(0,x.p)("winPagehide",[(0,N.t)()],void 0,T.T,this.ee))),this.importAggregator(e))}}var _=i(8154);class O extends b{static featureName=_.TZ;constructor(e,t=!0){super(e,_.TZ,t),this.importAggregator(e)}}var I=i(6774),P=i(3304);class j{constructor(e,t,r,n,i){this.name="UncaughtError",this.message="string"==typeof e?e:(0,P.A)(e),this.sourceURL=t,this.line=r,this.column=n,this.__newrelic=i}}function C(e){return H(e)?e:new j(void 0!==e?.message?e.message:e,e?.filename||e?.sourceURL,e?.lineno||e?.line,e?.colno||e?.col,e?.__newrelic)}function k(e){const t="Unhandled Promise Rejection";if(!e?.reason)return;if(H(e.reason))try{return e.reason.message=t+": "+e.reason.message,C(e.reason)}catch(t){return C(e.reason)}const r=C(e.reason);return r.message=t+": "+r?.message,r}function L(e){if(e.error instanceof SyntaxError&&!/:\d+$/.test(e.error.stack?.trim())){const t=new j(e.message,e.filename,e.lineno,e.colno,e.error.__newrelic);return t.name=SyntaxError.name,t}return H(e.error)?e.error:C(e)}function H(e){return e instanceof Error&&!!e.stack}class M extends b{static featureName=I.T;#r=!1;constructor(e,r=!0){super(e,I.T,r);try{this.removeOnAbort=new AbortController}catch(e){}this.ee.on("internal-error",((e,t)=>{this.abortHandler&&(0,x.p)("ierr",[C(e),(0,N.t)(),!0,{},this.#r,t],void 0,this.featureName,this.ee)})),this.ee.on(t.G4.REPLAY_RUNNING,(e=>{this.#r=e})),p.gm.addEventListener("unhandledrejection",(e=>{this.abortHandler&&(0,x.p)("err",[k(e),(0,N.t)(),!1,{unhandledPromiseRejection:1},this.#r],void 0,this.featureName,this.ee)}),(0,A.jT)(!1,this.removeOnAbort?.signal)),p.gm.addEventListener("error",(e=>{this.abortHandler&&(0,x.p)("err",[L(e),(0,N.t)(),!1,{},this.#r],void 0,this.featureName,this.ee)}),(0,A.jT)(!1,this.removeOnAbort?.signal)),this.abortHandler=this.#n,this.importAggregator(e)}#n(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}var D=i(8990);let K=1;const U="nr@id";function V(e){const t=typeof e;return!e||"object"!==t&&"function"!==t?-1:e===p.gm?0:(0,D.I)(e,U,(function(){return K++}))}function G(e){if("string"==typeof e&&e.length)return e.length;if("object"==typeof e){if("undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer&&e.byteLength)return e.byteLength;if("undefined"!=typeof Blob&&e instanceof Blob&&e.size)return e.size;if(!("undefined"!=typeof FormData&&e instanceof FormData))try{return(0,P.A)(e).length}catch(e){return}}}var F=i(8139),B=i(7836),W=i(3434);const z={},q=["open","send"];function Z(t){var r=t||B.ee;const n=function(e){return(e||B.ee).get("xhr")}(r);if(void 0===p.gm.XMLHttpRequest)return n;if(z[n.debugId]++)return n;z[n.debugId]=1,(0,F.u)(r);var i=(0,W.YM)(n),o=p.gm.XMLHttpRequest,a=p.gm.MutationObserver,s=p.gm.Promise,c=p.gm.setInterval,u="readystatechange",d=["onload","onerror","onabort","onloadstart","onloadend","onprogress","ontimeout"],l=[],f=p.gm.XMLHttpRequest=function(t){const r=new o(t),a=n.context(r);try{n.emit("new-xhr",[r],a),r.addEventListener(u,(s=a,function(){var e=this;e.readyState>3&&!s.resolved&&(s.resolved=!0,n.emit("xhr-resolved",[],e)),i.inPlace(e,d,"fn-",y)}),(0,A.jT)(!1))}catch(t){(0,e.R)(15,t);try{n.emit("internal-error",[t])}catch(e){}}var s;return r};function h(e,t){i.inPlace(t,["onreadystatechange"],"fn-",y)}if(function(e,t){for(var r in e)t[r]=e[r]}(o,f),f.prototype=o.prototype,i.inPlace(f.prototype,q,"-xhr-",y),n.on("send-xhr-start",(function(e,t){h(e,t),function(e){l.push(e),a&&(g?g.then(b):c?c(b):(m=-m,v.data=m))}(t)})),n.on("open-xhr-start",h),a){var g=s&&s.resolve();if(!c&&!s){var m=1,v=document.createTextNode(m);new a(b).observe(v,{characterData:!0})}}else r.on("fn-end",(function(e){e[0]&&e[0].type===u||b()}));function b(){for(var e=0;e<l.length;e++)h(0,l[e]);l.length&&(l=[])}function y(e,t){return t}return n}var Y="fetch-",J=Y+"body-",X=["arrayBuffer","blob","json","text","formData"],Q=p.gm.Request,ee=p.gm.Response,te="prototype";const re={};function ne(e){const t=function(e){return(e||B.ee).get("fetch")}(e);if(!(Q&&ee&&p.gm.fetch))return t;if(re[t.debugId]++)return t;function r(e,r,n){var i=e[r];"function"==typeof i&&(e[r]=function(){var e,r=[...arguments],o={};t.emit(n+"before-start",[r],o),o[B.P]&&o[B.P].dt&&(e=o[B.P].dt);var a=i.apply(this,r);return t.emit(n+"start",[r,e],a),a.then((function(e){return t.emit(n+"end",[null,e],a),e}),(function(e){throw t.emit(n+"end",[e],a),e}))})}return re[t.debugId]=1,X.forEach((e=>{r(Q[te],e,J),r(ee[te],e,J)})),r(p.gm,"fetch",Y),t.on(Y+"end",(function(e,r){var n=this;if(r){var i=r.headers.get("content-length");null!==i&&(n.rxSize=i),t.emit(Y+"done",[null,r],n)}else t.emit(Y+"done",[e],n)})),t}var ie=i(7485),oe=i(5603);class ae{constructor(e){this.agentIdentifier=e}generateTracePayload(e){if(!this.shouldGenerateTrace(e))return null;var t=(0,oe.o)(this.agentIdentifier);if(!t)return null;var n=(t.accountID||"").toString()||null,i=(t.agentID||"").toString()||null,o=(t.trustKey||"").toString()||null;if(!n||!i)return null;var a=(0,r.ZF)(),s=(0,r.el)(),c=Date.now(),u={spanId:a,traceId:s,timestamp:c};return(e.sameOrigin||this.isAllowedOrigin(e)&&this.useTraceContextHeadersForCors())&&(u.traceContextParentHeader=this.generateTraceContextParentHeader(a,s),u.traceContextStateHeader=this.generateTraceContextStateHeader(a,c,n,i,o)),(e.sameOrigin&&!this.excludeNewrelicHeader()||!e.sameOrigin&&this.isAllowedOrigin(e)&&this.useNewrelicHeaderForCors())&&(u.newrelicHeader=this.generateTraceHeader(a,s,c,n,i,o)),u}generateTraceContextParentHeader(e,t){return"00-"+t+"-"+e+"-01"}generateTraceContextStateHeader(e,t,r,n,i){return i+"@nr=0-1-"+r+"-"+n+"-"+e+"----"+t}generateTraceHeader(e,t,r,n,i,o){if(!("function"==typeof p.gm?.btoa))return null;var a={v:[0,1],d:{ty:"Browser",ac:n,ap:i,id:e,tr:t,ti:r}};return o&&n!==o&&(a.d.tk=o),btoa((0,P.A)(a))}shouldGenerateTrace(e){return this.isDtEnabled()&&this.isAllowedOrigin(e)}isAllowedOrigin(e){var t=!1,r={};if((0,s.gD)(this.agentIdentifier,"distributed_tracing")&&(r=(0,s.D0)(this.agentIdentifier).distributed_tracing),e.sameOrigin)t=!0;else if(r.allowed_origins instanceof Array)for(var n=0;n<r.allowed_origins.length;n++){var i=(0,ie.D)(r.allowed_origins[n]);if(e.hostname===i.hostname&&e.protocol===i.protocol&&e.port===i.port){t=!0;break}}return t}isDtEnabled(){var e=(0,s.gD)(this.agentIdentifier,"distributed_tracing");return!!e&&!!e.enabled}excludeNewrelicHeader(){var e=(0,s.gD)(this.agentIdentifier,"distributed_tracing");return!!e&&!!e.exclude_newrelic_header}useNewrelicHeaderForCors(){var e=(0,s.gD)(this.agentIdentifier,"distributed_tracing");return!!e&&!1!==e.cors_use_newrelic_header}useTraceContextHeadersForCors(){var e=(0,s.gD)(this.agentIdentifier,"distributed_tracing");return!!e&&!!e.cors_use_tracecontext_headers}}var se=i(9300),ce=i(7295),ue=["load","error","abort","timeout"],de=ue.length,le=(0,R.dV)().o.REQ,fe=(0,R.dV)().o.XHR;class he extends b{static featureName=se.T;constructor(e,t=!0){super(e,se.T,t),this.dt=new ae(e.agentIdentifier),this.handler=(e,t,r,n)=>(0,x.p)(e,t,r,n,this.ee);try{const e={xmlhttprequest:"xhr",fetch:"fetch",beacon:"beacon"};p.gm?.performance?.getEntriesByType("resource").forEach((t=>{if(t.initiatorType in e&&0!==t.responseStatus){const r={status:t.responseStatus},n={rxSize:t.transferSize,duration:Math.floor(t.duration),cbTime:0};pe(r,t.name),this.handler("xhr",[r,n,t.startTime,t.responseEnd,e[t.initiatorType]],void 0,a.K7.ajax)}}))}catch(e){}ne(this.ee),Z(this.ee),function(e,t,r,n){function i(e){var t=this;t.totalCbs=0,t.called=0,t.cbTime=0,t.end=R,t.ended=!1,t.xhrGuids={},t.lastSize=null,t.loadCaptureCalled=!1,t.params=this.params||{},t.metrics=this.metrics||{},e.addEventListener("load",(function(r){E(t,e)}),(0,A.jT)(!1)),p.lR||e.addEventListener("progress",(function(e){t.lastSize=e.loaded}),(0,A.jT)(!1))}function o(e){this.params={method:e[0]},pe(this,e[1]),this.metrics={}}function s(t,r){e.loader_config.xpid&&this.sameOrigin&&r.setRequestHeader("X-NewRelic-ID",e.loader_config.xpid);var i=n.generateTracePayload(this.parsedOrigin);if(i){var o=!1;i.newrelicHeader&&(r.setRequestHeader("newrelic",i.newrelicHeader),o=!0),i.traceContextParentHeader&&(r.setRequestHeader("traceparent",i.traceContextParentHeader),i.traceContextStateHeader&&r.setRequestHeader("tracestate",i.traceContextStateHeader),o=!0),o&&(this.dt=i)}}function c(e,r){var n=this.metrics,i=e[0],o=this;if(n&&i){var a=G(i);a&&(n.txSize=a)}this.startTime=(0,N.t)(),this.body=i,this.listener=function(e){try{"abort"!==e.type||o.loadCaptureCalled||(o.params.aborted=!0),("load"!==e.type||o.called===o.totalCbs&&(o.onloadCalled||"function"!=typeof r.onload)&&"function"==typeof o.end)&&o.end(r)}catch(e){try{t.emit("internal-error",[e])}catch(e){}}};for(var s=0;s<de;s++)r.addEventListener(ue[s],this.listener,(0,A.jT)(!1))}function u(e,t,r){this.cbTime+=e,t?this.onloadCalled=!0:this.called+=1,this.called!==this.totalCbs||!this.onloadCalled&&"function"==typeof r.onload||"function"!=typeof this.end||this.end(r)}function d(e,t){var r=""+V(e)+!!t;this.xhrGuids&&!this.xhrGuids[r]&&(this.xhrGuids[r]=!0,this.totalCbs+=1)}function l(e,t){var r=""+V(e)+!!t;this.xhrGuids&&this.xhrGuids[r]&&(delete this.xhrGuids[r],this.totalCbs-=1)}function f(){this.endTime=(0,N.t)()}function h(e,r){r instanceof fe&&"load"===e[0]&&t.emit("xhr-load-added",[e[1],e[2]],r)}function g(e,r){r instanceof fe&&"load"===e[0]&&t.emit("xhr-load-removed",[e[1],e[2]],r)}function m(e,t,r){t instanceof fe&&("onload"===r&&(this.onload=!0),("load"===(e[0]&&e[0].type)||this.onload)&&(this.xhrCbStart=(0,N.t)()))}function v(e,r){this.xhrCbStart&&t.emit("xhr-cb-time",[(0,N.t)()-this.xhrCbStart,this.onload,r],r)}function b(e){var t,r=e[1]||{};if("string"==typeof e[0]?0===(t=e[0]).length&&p.RI&&(t=""+p.gm.location.href):e[0]&&e[0].url?t=e[0].url:p.gm?.URL&&e[0]&&e[0]instanceof URL?t=e[0].href:"function"==typeof e[0].toString&&(t=e[0].toString()),"string"==typeof t&&0!==t.length){t&&(this.parsedOrigin=(0,ie.D)(t),this.sameOrigin=this.parsedOrigin.sameOrigin);var i=n.generateTracePayload(this.parsedOrigin);if(i&&(i.newrelicHeader||i.traceContextParentHeader))if(e[0]&&e[0].headers)s(e[0].headers,i)&&(this.dt=i);else{var o={};for(var a in r)o[a]=r[a];o.headers=new Headers(r.headers||{}),s(o.headers,i)&&(this.dt=i),e.length>1?e[1]=o:e.push(o)}}function s(e,t){var r=!1;return t.newrelicHeader&&(e.set("newrelic",t.newrelicHeader),r=!0),t.traceContextParentHeader&&(e.set("traceparent",t.traceContextParentHeader),t.traceContextStateHeader&&e.set("tracestate",t.traceContextStateHeader),r=!0),r}}function y(e,t){this.params={},this.metrics={},this.startTime=(0,N.t)(),this.dt=t,e.length>=1&&(this.target=e[0]),e.length>=2&&(this.opts=e[1]);var r,n=this.opts||{},i=this.target;"string"==typeof i?r=i:"object"==typeof i&&i instanceof le?r=i.url:p.gm?.URL&&"object"==typeof i&&i instanceof URL&&(r=i.href),pe(this,r);var o=(""+(i&&i instanceof le&&i.method||n.method||"GET")).toUpperCase();this.params.method=o,this.body=n.body,this.txSize=G(n.body)||0}function w(e,t){if(this.endTime=(0,N.t)(),this.params||(this.params={}),(0,ce.iW)(this.params))return;let n;this.params.status=t?t.status:0,"string"==typeof this.rxSize&&this.rxSize.length>0&&(n=+this.rxSize);const i={txSize:this.txSize,rxSize:n,duration:(0,N.t)()-this.startTime};r("xhr",[this.params,i,this.startTime,this.endTime,"fetch"],this,a.K7.ajax)}function R(e){const t=this.params,n=this.metrics;if(!this.ended){this.ended=!0;for(let t=0;t<de;t++)e.removeEventListener(ue[t],this.listener,!1);t.aborted||(0,ce.iW)(t)||(n.duration=(0,N.t)()-this.startTime,this.loadCaptureCalled||4!==e.readyState?null==t.status&&(t.status=0):E(this,e),n.cbTime=this.cbTime,r("xhr",[t,n,this.startTime,this.endTime,"xhr"],this,a.K7.ajax))}}function E(e,r){e.params.status=r.status;var n=function(e,t){var r=e.responseType;return"json"===r&&null!==t?t:"arraybuffer"===r||"blob"===r||"json"===r?G(e.response):"text"===r||""===r||void 0===r?G(e.responseText):void 0}(r,e.lastSize);if(n&&(e.metrics.rxSize=n),e.sameOrigin){var i=r.getResponseHeader("X-NewRelic-App-Data");i&&((0,x.p)(_.rs,["Ajax/CrossApplicationTracing/Header/Seen"],void 0,a.K7.metrics,t),e.params.cat=i.split(", ").pop())}e.loadCaptureCalled=!0}t.on("new-xhr",i),t.on("open-xhr-start",o),t.on("open-xhr-end",s),t.on("send-xhr-start",c),t.on("xhr-cb-time",u),t.on("xhr-load-added",d),t.on("xhr-load-removed",l),t.on("xhr-resolved",f),t.on("addEventListener-end",h),t.on("removeEventListener-end",g),t.on("fn-end",v),t.on("fetch-before-start",b),t.on("fetch-start",y),t.on("fn-start",m),t.on("fetch-done",w)}(e,this.ee,this.handler,this.dt),this.importAggregator(e)}}function pe(e,t){var r=(0,ie.D)(t),n=e.params||e;n.hostname=r.hostname,n.port=r.port,n.protocol=r.protocol,n.host=r.hostname+":"+r.port,n.pathname=r.pathname,e.parsedOrigin=r,e.sameOrigin=r.sameOrigin}const ge={},me=["pushState","replaceState"];function ve(e){const t=function(e){return(e||B.ee).get("history")}(e);return!p.RI||ge[t.debugId]++||(ge[t.debugId]=1,(0,W.YM)(t).inPlace(window.history,me,"-")),t}var be=i(3738);const{He:ye,bD:we,d3:Re,Kp:xe,TZ:Ee,Lc:Ae,uP:Te,Rz:Ne}=be;class Se extends b{static featureName=Ee;constructor(e,t=!0){super(e,Ee,t);if(!(0,m.V)(this.agentIdentifier))return void this.deregisterDrain();const r=this.ee;let n;ve(r),this.eventsEE=(0,F.u)(r),this.eventsEE.on(Te,(function(e,t){this.bstStart=(0,N.t)()})),this.eventsEE.on(Ae,(function(e,t){(0,x.p)("bst",[e[0],t,this.bstStart,(0,N.t)()],void 0,a.K7.sessionTrace,r)})),r.on(Ne+Re,(function(e){this.time=(0,N.t)(),this.startPath=location.pathname+location.hash})),r.on(Ne+xe,(function(e){(0,x.p)("bstHist",[location.pathname+location.hash,this.startPath,this.time],void 0,a.K7.sessionTrace,r)}));try{n=new PerformanceObserver((e=>{const t=e.getEntries();(0,x.p)(ye,[t],void 0,a.K7.sessionTrace,r)})),n.observe({type:we,buffered:!0})}catch(e){}this.importAggregator(e,{resourceObserver:n})}}var _e=i(2614);class Oe extends b{static featureName=t.TZ;#i;#o;constructor(e,r=!0){let n;super(e,t.TZ,r),this.replayRunning=!1,this.#o=e;try{n=JSON.parse(localStorage.getItem("".concat(_e.H3,"_").concat(_e.uh)))}catch(e){}(0,g.SR)(e.agentIdentifier)&&this.ee.on(t.G4.RECORD,(()=>this.#a())),this.#s(n)?(this.#i=n?.sessionReplayMode,this.#c()):this.importAggregator(e),this.ee.on("err",(e=>{this.replayRunning&&(this.errorNoticed=!0,(0,x.p)(t.G4.ERROR_DURING_REPLAY,[e],void 0,this.featureName,this.ee))})),this.ee.on(t.G4.REPLAY_RUNNING,(e=>{this.replayRunning=e}))}#s(e){return e&&(e.sessionReplayMode===_e.g.FULL||e.sessionReplayMode===_e.g.ERROR)||(0,g.Aw)(this.agentIdentifier)}#u=!1;async#c(e){if(!this.#u){this.#u=!0;try{const{Recorder:t}=await Promise.all([i.e(478),i.e(249)]).then(i.bind(i,8589));this.recorder??=new t({mode:this.#i,agentIdentifier:this.agentIdentifier,trigger:e,ee:this.ee,agentRef:this.#o}),this.recorder.startRecording(),this.abortHandler=this.recorder.stopRecording}catch(e){}this.importAggregator(this.#o,{recorder:this.recorder,errorNoticed:this.errorNoticed})}}#a(){this.featAggregate?this.featAggregate.mode!==_e.g.FULL&&this.featAggregate.initializeRecording(_e.g.FULL,!0):(this.#i=_e.g.FULL,this.#c(t.Qb.API),this.recorder&&this.recorder.parent.mode!==_e.g.FULL&&(this.recorder.parent.mode=_e.g.FULL,this.recorder.stopRecording(),this.recorder.startRecording(),this.abortHandler=this.recorder.stopRecording))}}var Ie=i(3962);class Pe extends b{static featureName=Ie.TZ;constructor(e,t=!0){if(super(e,Ie.TZ,t),!p.RI||!(0,R.dV)().o.MO)return;const r=ve(this.ee);Ie.tC.forEach((e=>{(0,A.sp)(e,(e=>{a(e)}),!0)}));const n=()=>(0,x.p)("newURL",[(0,N.t)(),""+window.location],void 0,this.featureName,this.ee);r.on("pushState-end",n),r.on("replaceState-end",n);try{this.removeOnAbort=new AbortController}catch(e){}(0,A.sp)("popstate",(e=>(0,x.p)("newURL",[e.timeStamp,""+window.location],void 0,this.featureName,this.ee)),!0,this.removeOnAbort?.signal);let i=!1;const o=new((0,R.dV)().o.MO)(((e,t)=>{i||(i=!0,requestAnimationFrame((()=>{(0,x.p)("newDom",[(0,N.t)()],void 0,this.featureName,this.ee),i=!1})))})),a=(0,v.s)((e=>{(0,x.p)("newUIEvent",[e],void 0,this.featureName,this.ee),o.observe(document.body,{attributes:!0,childList:!0,subtree:!0,characterData:!0})}),100,{leading:!0});this.abortHandler=function(){this.removeOnAbort?.abort(),o.disconnect(),this.abortHandler=void 0},this.importAggregator(e,{domObserver:o})}}var je=i(7378);const Ce={},ke=["appendChild","insertBefore","replaceChild"];function Le(e){const t=function(e){return(e||B.ee).get("jsonp")}(e);if(!p.RI||Ce[t.debugId])return t;Ce[t.debugId]=!0;var r=(0,W.YM)(t),n=/[?&](?:callback|cb)=([^&#]+)/,i=/(.*)\.([^.]+)/,o=/^(\w+)(\.|$)(.*)$/;function a(e,t){if(!e)return t;const r=e.match(o),n=r[1];return a(r[3],t[n])}return r.inPlace(Node.prototype,ke,"dom-"),t.on("dom-start",(function(e){!function(e){if(!e||"string"!=typeof e.nodeName||"script"!==e.nodeName.toLowerCase())return;if("function"!=typeof e.addEventListener)return;var o=(s=e.src,c=s.match(n),c?c[1]:null);var s,c;if(!o)return;var u=function(e){var t=e.match(i);if(t&&t.length>=3)return{key:t[2],parent:a(t[1],window)};return{key:e,parent:window}}(o);if("function"!=typeof u.parent[u.key])return;var d={};function l(){t.emit("jsonp-end",[],d),e.removeEventListener("load",l,(0,A.jT)(!1)),e.removeEventListener("error",f,(0,A.jT)(!1))}function f(){t.emit("jsonp-error",[],d),t.emit("jsonp-end",[],d),e.removeEventListener("load",l,(0,A.jT)(!1)),e.removeEventListener("error",f,(0,A.jT)(!1))}r.inPlace(u.parent,[u.key],"cb-",d),e.addEventListener("load",l,(0,A.jT)(!1)),e.addEventListener("error",f,(0,A.jT)(!1)),t.emit("new-jsonp",[e.src],d)}(e[0])})),t}const He={};function Me(e){const t=function(e){return(e||B.ee).get("promise")}(e);if(He[t.debugId])return t;He[t.debugId]=!0;var r=t.context,n=(0,W.YM)(t),i=p.gm.Promise;return i&&function(){function e(r){var o=t.context(),a=n(r,"executor-",o,null,!1);const s=Reflect.construct(i,[a],e);return t.context(s).getCtx=function(){return o},s}p.gm.Promise=e,Object.defineProperty(e,"name",{value:"Promise"}),e.toString=function(){return i.toString()},Object.setPrototypeOf(e,i),["all","race"].forEach((function(r){const n=i[r];e[r]=function(e){let i=!1;[...e||[]].forEach((e=>{this.resolve(e).then(a("all"===r),a(!1))}));const o=n.apply(this,arguments);return o;function a(e){return function(){t.emit("propagate",[null,!i],o,!1,!1),i=i||!e}}}})),["resolve","reject"].forEach((function(r){const n=i[r];e[r]=function(e){const r=n.apply(this,arguments);return e!==r&&t.emit("propagate",[e,!0],r,!1,!1),r}})),e.prototype=i.prototype;const o=i.prototype.then;i.prototype.then=function(...e){var i=this,a=r(i);a.promise=i,e[0]=n(e[0],"cb-",a,null,!1),e[1]=n(e[1],"cb-",a,null,!1);const s=o.apply(this,e);return a.nextPromise=s,t.emit("propagate",[i,!0],s,!1,!1),s},i.prototype.then[W.Jt]=o,t.on("executor-start",(function(e){e[0]=n(e[0],"resolve-",this,null,!1),e[1]=n(e[1],"resolve-",this,null,!1)})),t.on("executor-err",(function(e,t,r){e[1](r)})),t.on("cb-end",(function(e,r,n){t.emit("propagate",[n,!0],this.nextPromise,!1,!1)})),t.on("propagate",(function(e,r,n){this.getCtx&&!r||(this.getCtx=function(){if(e instanceof Promise)var r=t.context(e);return r&&r.getCtx?r.getCtx():this})}))}(),t}const De={},Ke="setTimeout",Ue="setInterval",Ve="clearTimeout",Ge="-start",Fe=[Ke,"setImmediate",Ue,Ve,"clearImmediate"];function Be(e){const t=function(e){return(e||B.ee).get("timer")}(e);if(De[t.debugId]++)return t;De[t.debugId]=1;var r=(0,W.YM)(t);return r.inPlace(p.gm,Fe.slice(0,2),Ke+"-"),r.inPlace(p.gm,Fe.slice(2,3),Ue+"-"),r.inPlace(p.gm,Fe.slice(3),Ve+"-"),t.on(Ue+Ge,(function(e,t,n){e[0]=r(e[0],"fn-",null,n)})),t.on(Ke+Ge,(function(e,t,n){this.method=n,this.timerDuration=isNaN(e[1])?0:+e[1],e[0]=r(e[0],"fn-",this,n)})),t}const We={};function ze(e){const t=function(e){return(e||B.ee).get("mutation")}(e);if(!p.RI||We[t.debugId])return t;We[t.debugId]=!0;var r=(0,W.YM)(t),n=p.gm.MutationObserver;return n&&(window.MutationObserver=function(e){return this instanceof n?new n(r(e,"fn-")):n.apply(this,arguments)},MutationObserver.prototype=n.prototype),t}const{TZ:qe,d3:Ze,Kp:Ye,$p:Je,wW:Xe,e5:$e,tH:Qe,uP:et,rw:tt,Lc:rt}=je;class nt extends b{static featureName=qe;constructor(e,t=!0){if(super(e,qe,t),!p.RI)return;try{this.removeOnAbort=new AbortController}catch(e){}let r,n=0;const i=this.ee.get("tracer"),o=Le(this.ee),a=Me(this.ee),s=Be(this.ee),c=Z(this.ee),u=this.ee.get("events"),d=ne(this.ee),l=ve(this.ee),f=ze(this.ee);function h(e,t){l.emit("newURL",[""+window.location,t])}function g(){n++,r=window.location.hash,this[et]=(0,N.t)()}function m(){n--,window.location.hash!==r&&h(0,!0);var e=(0,N.t)();this[$e]=~~this[$e]+e-this[et],this[rt]=e}function v(e,t){e.on(t,(function(){this[t]=(0,N.t)()}))}this.ee.on(et,g),a.on(tt,g),o.on(tt,g),this.ee.on(rt,m),a.on(Xe,m),o.on(Xe,m),this.ee.on("fn-err",((...t)=>{t[2]?.__newrelic?.[e.agentIdentifier]||(0,x.p)("function-err",[...t],void 0,this.featureName,this.ee)})),this.ee.buffer([et,rt,"xhr-resolved"],this.featureName),u.buffer([et],this.featureName),s.buffer(["setTimeout"+Ye,"clearTimeout"+Ze,et],this.featureName),c.buffer([et,"new-xhr","send-xhr"+Ze],this.featureName),d.buffer([Qe+Ze,Qe+"-done",Qe+Je+Ze,Qe+Je+Ye],this.featureName),l.buffer(["newURL"],this.featureName),f.buffer([et],this.featureName),a.buffer(["propagate",tt,Xe,"executor-err","resolve"+Ze],this.featureName),i.buffer([et,"no-"+et],this.featureName),o.buffer(["new-jsonp","cb-start","jsonp-error","jsonp-end"],this.featureName),v(d,Qe+Ze),v(d,Qe+"-done"),v(o,"new-jsonp"),v(o,"jsonp-end"),v(o,"cb-start"),l.on("pushState-end",h),l.on("replaceState-end",h),window.addEventListener("hashchange",h,(0,A.jT)(!0,this.removeOnAbort?.signal)),window.addEventListener("load",h,(0,A.jT)(!0,this.removeOnAbort?.signal)),window.addEventListener("popstate",(function(){h(0,n>1)}),(0,A.jT)(!0,this.removeOnAbort?.signal)),this.abortHandler=this.#n,this.importAggregator(e)}#n(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}var it=i(3333);class ot extends b{static featureName=it.TZ;constructor(e,t=!0){super(e,it.TZ,t);const r=[e.init.page_action.enabled,e.init.performance.capture_marks,e.init.performance.capture_measures,e.init.user_actions.enabled,e.init.performance.resources.enabled];if(p.RI&&(e.init.user_actions.enabled&&(it.Zp.forEach((e=>(0,A.sp)(e,(e=>(0,x.p)("ua",[e],void 0,this.featureName,this.ee)),!0))),it.qN.forEach((e=>{const t=(0,v.s)((e=>{(0,x.p)("ua",[e],void 0,this.featureName,this.ee)}),500,{leading:!0});(0,A.sp)(e,t)}))),e.init.performance.resources.enabled&&p.gm.PerformanceObserver?.supportedEntryTypes.includes("resource"))){new PerformanceObserver((e=>{e.getEntries().forEach((e=>{(0,x.p)("browserPerformance.resource",[e],void 0,this.featureName,this.ee)}))})).observe({type:"resource",buffered:!0})}r.some((e=>e))?this.importAggregator(e):this.deregisterDrain()}}var at=i(993),st=i(3785),ct=i(9414);class ut extends b{static featureName=at.TZ;constructor(e,t=!0){super(e,at.TZ,t);const r=this.ee;(0,ct.J)(r,p.gm.console,"log",{level:"info"}),(0,ct.J)(r,p.gm.console,"error",{level:"error"}),(0,ct.J)(r,p.gm.console,"warn",{level:"warn"}),(0,ct.J)(r,p.gm.console,"info",{level:"info"}),(0,ct.J)(r,p.gm.console,"debug",{level:"debug"}),(0,ct.J)(r,p.gm.console,"trace",{level:"trace"}),this.ee.on("wrap-logger-end",(function([e]){const{level:t,customAttributes:n}=this;(0,st.R)(r,e,n,t)})),this.importAggregator(e)}}new class extends o{constructor(t){super(),p.gm?(this.features={},(0,R.bQ)(this.agentIdentifier,this),this.desiredFeatures=new Set(t.features||[]),this.desiredFeatures.add(w),this.runSoftNavOverSpa=[...this.desiredFeatures].some((e=>e.featureName===a.K7.softNav)),(0,d.j)(this,t,t.loaderType||"agent"),this.run()):(0,e.R)(21)}get config(){return{info:this.info,init:this.init,loader_config:this.loader_config,runtime:this.runtime}}run(){try{const t=u(this.agentIdentifier),r=[...this.desiredFeatures];r.sort(((e,t)=>a.P3[e.featureName]-a.P3[t.featureName])),r.forEach((r=>{if(!t[r.featureName]&&r.featureName!==a.K7.pageViewEvent)return;if(this.runSoftNavOverSpa&&r.featureName===a.K7.spa)return;if(!this.runSoftNavOverSpa&&r.featureName===a.K7.softNav)return;const n=function(e){switch(e){case a.K7.ajax:return[a.K7.jserrors];case a.K7.sessionTrace:return[a.K7.ajax,a.K7.pageViewEvent];case a.K7.sessionReplay:return[a.K7.sessionTrace];case a.K7.pageViewTiming:return[a.K7.pageViewEvent];default:return[]}}(r.featureName).filter((e=>!(e in this.features)));n.length>0&&(0,e.R)(36,{targetFeature:r.featureName,missingDependencies:n}),this.features[r.featureName]=new r(this)}))}catch(t){(0,e.R)(22,t);for(const e in this.features)this.features[e].abortHandler?.();const r=(0,R.Zm)();delete r.initializedAgents[this.agentIdentifier]?.api,delete r.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator;return r.ee.get(this.agentIdentifier).abort(),!1}}}({features:[he,w,S,Se,Oe,O,M,ot,ut,Pe,nt],loaderType:"spa"})})()})();</script> <link rel="SHORTCUT ICON" type="image/x-icon" href="/favicon.ico"> <link rel="stylesheet" type="text/css" href="/ui-ultra/css/ultra.css?v=3900.110.0-rel.48+dd7a52c" id="css_0"> <link rel="stylesheet" type="text/css" href="/ui-ultra/css/multi_factor_authentication.css?v=3900.110.0-rel.48+dd7a52c_authLogin" id="css_1"> <link rel="stylesheet" type="text/css" href="/webapps/vtbe-tinymce/css/prism/prism.css?v=3900.110.0-rel.48+dd7a52c" id="css_2"> <link rel="stylesheet" type="text/css" href="/webapps/videointegration/css/video-integration.css?v=3900.110.0-rel.48+dd7a52c_3900.110.0-rel.48+dd7a52c" id="css_3"> <link rel="stylesheet" type="text/css" href="/webapps/allyintegration/css/ally-integration.css?v=3900.110.0-rel.48+dd7a52c_3900.110.0-rel.48+dd7a52c" id="css_4"> <link rel="stylesheet" type="text/css" media="print" href="https://learn.content.blackboardcdn.com/3900.110.0-rel.48+dd7a52c/ui/styles/print.css?v=3900.110.0-rel.48+dd7a52c"> <script type="text/javascript" src="https://learn.content.blackboardcdn.com/3900.110.0-rel.48+dd7a52c/javascript/i18n.js?v=3900.110.0-rel.48+dd7a52c"></script> <script language='javascript' type='text/javascript'> var JS_RESOURCES = new Object(); function _init_bundle_JS_RESOURCES() { JS_RESOURCES['validation.email'] = 'Vous devez saisir une adresse e-mail complète (par exemple, info@blackboard.com).'; JS_RESOURCES['validation.radio.required'] = 'Veuillez effectuer une sélection pour continuer.'; JS_RESOURCES['assessment.incomplete.confirm.backtrackProhibited.survey'] = 'Les questions suivantes sont peut-être incomplètes :\n {0}\nCliquez sur Annuler pour revenir à l\'\'enquête. Cliquez sur OK pour enregistrer la réponse incomplète.'; JS_RESOURCES['common.list.separator.comma'] = '{0}, {1}'; JS_RESOURCES['validation.duplicate'] = 'Le ou les utilisateurs {0} apparaissent plusieurs fois. Supprimez le ou les noms d\'\'utilisateur en double.'; JS_RESOURCES['active.filter.search.terms'] = 'Termes de recherche'; JS_RESOURCES['validation.points.decimal.places.error.location'] = 'Les valeurs de points sont limitées à 5 décimales : {0}.'; JS_RESOURCES['validation.maximum_length.plural'] = 'Ne peut pas contenir plus de {1} caractères : {0}.\nSupprimez {2} caractères dans le texte saisi.'; JS_RESOURCES['assessment.incomplete.confirm.backtrackProhibited'] = 'Les questions suivantes sont peut-être incomplètes :\n {0}\nCliquez sur Annuler pour revenir au test. Cliquez sur Ok pour enregistrer la réponse incomplète.'; JS_RESOURCES['validation.multiSelect.minItems'] = 'La zone de sélection multiple doit contenir au moins {0} éléments.'; JS_RESOURCES['validation.cmp_field.required'] = 'Une valeur doit être indiquée pour {0}\nlorsque le champ {1} n\'\'est pas vide'; JS_RESOURCES['warning.email'] = 'Il est recommandé de renseigner le champ Adresse e-mail. Les utilisateurs ne seront pas en mesure d\'utiliser certaines parties du système s\'ils n\'ont pas d\'adresse e-mail.'; JS_RESOURCES['validation.maximum_length.no_name.singular'] = 'Ne peut pas contenir plus de {0} caractères.\nSupprimez un caractère dans le texte saisi.'; JS_RESOURCES['validation.multiSelect.maxItems'] = 'La zone de sélection multiple ne doit pas contenir plus de {0} éléments.'; JS_RESOURCES['validation.number'] = 'Une valeur numérique valide doit être saisie : {0}.'; JS_RESOURCES['validation.date.required'] = 'Une date complète doit être indiquée : {0}.'; JS_RESOURCES['portalmodule.section.remove'] = 'Supprimer : {0} ?'; JS_RESOURCES['show.helptext'] = 'Afficher l\'aide'; JS_RESOURCES['validation.password'] = 'Le mot de passe ne peut pas être vide ni contenir seulement des espaces.'; JS_RESOURCES['validation.percent'] = 'Une valeur valide exprimée en pourcentage et comprise entre 0 et 100 doit être saisie.'; JS_RESOURCES['validation.mismatch'] = 'Les valeurs saisies ne correspondent pas : {0}.\nConfirmer : {0}.'; JS_RESOURCES['validation.maximum_length.no_name.plural'] = 'Ne peut pas contenir plus de {0} caractères.\nSupprimer {1} caractères dans le texte saisi.'; JS_RESOURCES['validation.invalid_value'] = 'Valeur numérique fournie non valide : {0}.'; JS_RESOURCES['field_name.substitute'] = '\'\'{0} champ de saisie'; JS_RESOURCES['validation.required'] = 'Une valeur doit être indiquée : {0}.'; JS_RESOURCES['active.filter.free.form.text.blank'] = 'Spécifier une valeur pour la zone de texte de recherche'; JS_RESOURCES['validate.alignment.missing.content'] = 'Vous avez sélectionné des alignements, mais aucun contenu alignable à copier.'; JS_RESOURCES['validation.system_role.reserve'] = 'Le code du rôle ne peut pas commencer par "bb".'; JS_RESOURCES['validation.date_past'] = 'La date de fin doit être postérieure à la date de début.'; JS_RESOURCES['validation.invalid_chars'] = 'Contient des caractères non autorisés : {0}.\nSupprimer ces caractères : {1}'; JS_RESOURCES['confirm.delete_item_value'] = 'Cet élément {0} sera supprimé. Souhaitez-vous continuer ?'; JS_RESOURCES['hide.helptext'] = 'Masquer l\'aide'; JS_RESOURCES['validate.range.lessthen.str'] = 'Inférieur à {0}'; JS_RESOURCES['validation.date_past.confirm'] = 'L\'horaire indiqué est dans le passé.\nSouhaitez-vous continuer avec cet horaire ?'; JS_RESOURCES['validate.login.invalid.username.or.pass'] = 'Entrez un nom d\'utilisateur et un mot de passe.'; JS_RESOURCES['validation.negative'] = 'Une valeur positive valide doit être saisie : {0}.'; JS_RESOURCES['validation.url'] = 'Vous devez saisir une URL valide (par exemple, http://www.myschool.edu).'; JS_RESOURCES['validate.range.overlap'] = 'les critères ({0}) chevauchent les critères ({1})'; JS_RESOURCES['validate.range.between.str'] = 'Entre {0} et {1}.'; JS_RESOURCES['validation.portal.tool.items.remove'] = 'Supprimer : {0} ?'; JS_RESOURCES['validation.association.refresh.confirm'] = 'Les informations sur les éléments associés ont peut-être été mis à jour.\nCliquez sur ’OK’ pour actualiser la liste ou cliquez sur ’Annuler’ pour conserver la page en cours.'; JS_RESOURCES['validate.enrolloptions.error.codeconflict'] = 'L\'option Inscription par code d\'accès est incompatible avec la sélection de l\'inscription Dirigée par {instructor}.'; JS_RESOURCES['validation.points.decimal.places'] = 'Les valeurs de points sont limitées à 5 décimales.'; JS_RESOURCES['validation.option.required'] = 'Vous devez sélectionner au moins une option dans la liste.'; JS_RESOURCES['list.checkToSelectAllItems'] = 'Cocher pour sélectionner tous les éléments'; JS_RESOURCES['active.filter.changed.alert'] = 'les critères contiennent maintenant'; JS_RESOURCES['vtbe.artifact.footer.validate.nameIfSaveArtifact'] = 'Spécifiez un nom pour enregistrer l\'objet comme un objet réutilisable.'; JS_RESOURCES['validate.invalidate.number'] = 'Veuillez saisir un nombre valide à la place de {0}.'; JS_RESOURCES['validation.valid_course_id'] = 'Le code cours contient des caractères non valides ou des multi-octets.'; JS_RESOURCES['assessment.incomplete.confirm'] = 'Les questions suivantes sont peut-être incomplètes :\n {0}\nCliquez sur Annuler pour revenir au test. Cliquez sur OK pour valider l’évaluation.'; JS_RESOURCES['validate.enrolloptions.error.nooption'] = 'Avertissement : choisissez l\'option Dirigé par {instructor} ou l\'option Auto-inscription.'; JS_RESOURCES['validation.date_equal'] = 'La date de début doit être différente de la date de fin.'; JS_RESOURCES['validation.cmp_field.rejected'] = 'Le champ {0} ne peut être utilisé sans une valeur {1} correspondante.'; JS_RESOURCES['validation.time.required'] = 'Une heure complète doit être indiquée : {0}.'; JS_RESOURCES['validation.institutionemail'] = 'Saisissez une adresse e-mail complète et unique si une adresse e-mail d\'établissement est utilisée (par exemple, info@blackboard.com).'; JS_RESOURCES['validation.integer_number'] = 'Une valeur numérique entière valide doit être saisie : {0}.'; JS_RESOURCES['validation.maximum_length'] = 'Ne doit pas contenir plus de 255 caractères'; JS_RESOURCES['validate.enrolloptions.error.emailrequestconflict'] = 'L\'option d\'inscription par e-mail sélectionnée est incompatible avec la sélection d\'auto-inscription.'; JS_RESOURCES['invalid_char.space'] = 'espace'; JS_RESOURCES['validate.range.morethen.str'] = 'Supérieur à {0}'; JS_RESOURCES['notification.submit'] = 'Action déjà validée.\nVeuillez attendre que l\'action soit terminée.'; JS_RESOURCES['validation.plain_text.confirm'] = 'Pour que les équations s\'affichent correctement dans ce document, vous devez sélectionner le format Saisie assistée ou HTML.\nCliquez sur \'OK\' pour enregistrer en format \'Texte seulement\' ou cliquez sur \'Annuler\' pour sélectionner un autre format.'; JS_RESOURCES['invalid_char.comma'] = 'virgule'; JS_RESOURCES['validation.allow_negtive.percent'] = 'Une valeur valide exprimée en pourcentage et comprise entre -100 et 100 doit être saisie.'; JS_RESOURCES['confirm.remove_item'] = 'Cette action est définitive et ne peut pas être annulée. Souhaitez-vous continuer ?'; JS_RESOURCES['list.uncheckToDeselectAllItems'] = 'Décocher pour désélectionner tous les éléments'; JS_RESOURCES['validation.maximum_length.singular'] = 'Ne peut pas contenir plus de {1} caractères : {0}.\nSupprimez un caractère dans le texte saisi.'; JS_RESOURCES['validation.rubric.decimalplaces'] = 'Nombre de décimales trop important. Le nombre maximal est 5.'; JS_RESOURCES['validation.minimum_length'] = '{0} caractères au moins doivent être saisis : {1}.'; JS_RESOURCES['vtbe.artifact.footer.validate.saveLocationIfSaveArtifact'] = 'Entrer un emplacement pour l\'objet réutilisable.'; JS_RESOURCES['assessment.incomplete.confirm.survey'] = 'Les questions suivantes sont peut-être incomplètes :\n {0}\nCliquez sur Annuler pour revenir à l\'\'enquête. Cliquez sur OK pour valider l\'\'évaluation.'; JS_RESOURCES['validation.image_type'] = 'Type dimage inconnu : {0}. Il est possible que limage ne puisse pas être affichée correctement.'; JS_RESOURCES['validate.invalidate.number.space'] = 'Espace'; JS_RESOURCES.getString = i18n_get_string; JS_RESOURCES.getFormattedString = i18n_get_formatted_string; } _init_bundle_JS_RESOURCES(); </script> <script language='javascript' type='text/javascript'> var LOCALE_SETTINGS = new Object(); function _init_bundle_LOCALE_SETTINGS() { LOCALE_SETTINGS['LOCALE_SETTINGS.ADDRESS_FIELD_ORDER'] = 'STREET_1 STREET_2 ZIP_CODE CITY STATE COUNTRY'; LOCALE_SETTINGS['number_format.exponent'] = 'eE'; LOCALE_SETTINGS['LOCALE_SETTINGS.NAME.COLUMN.2'] = '{1}'; LOCALE_SETTINGS['LOCALE_SETTINGS.YEAR_CHARACTER.03255'] = ''; LOCALE_SETTINGS['BBI18N.SOLARIS_CHARSET'] = 'ISO8859-1'; LOCALE_SETTINGS['LOCALE_SETTINGS.NAME.COLUMN.1'] = '{0}'; LOCALE_SETTINGS['LOCALE_SETTINGS.CALENDAR_COLUMN_FORMAT_MONTH.03255'] = 'ddd'; LOCALE_SETTINGS['LOCALE_SETTINGS.internal_date_format'] = 'dd/MM/yy'; LOCALE_SETTINGS['LOCALE_SETTINGS.CALENDAR_TITLE_FORMAT_MONTH.03259'] = 'MMMM yyyy'; LOCALE_SETTINGS['LOCALE_SETTINGS.TIME_ORDER.00519'] = 'HMP'; LOCALE_SETTINGS['float.format'] = '^([0-9]{1,3}([  ][0-9]{3})*(\\,[0-9]+)?|\\,[0-9]+)?$'; LOCALE_SETTINGS['LOCALE_SETTINGS.NAME.SORT_COLUMN'] = 'familyName'; LOCALE_SETTINGS['LOCALE_SETTINGS.SHORT'] = '{1} {3}'; LOCALE_SETTINGS['LOCALE_SETTINGS.DAY_SHORT.02097'] = 'L M M J V S D'; LOCALE_SETTINGS['float.allow.negative.format'] = '^((([-]?[0-9]{1,3}([  ][0-9]{3})*)|[-]?[0-9]*)(\\,[0-9]+)?|\\,[0-9]+)?$'; LOCALE_SETTINGS['LOCALE_SETTINGS.CALENDAR_TYPE'] = 'GREGORIAN'; LOCALE_SETTINGS['LOCALE_SETTINGS.GIVEN_INITIAL_FAMILY_NAME'] = '{4} {3}'; LOCALE_SETTINGS['efloat.format'] = '^(([+-]?[0-9]{1,3}([  ][0-9]{3})*)|[-]?[0-9]*)(\\,[0-9]+)?([eE][+-]?[0-9]+)?$'; LOCALE_SETTINGS['LOCALE_SETTINGS.CALENDAR_TITLE_FORMAT_WEEK.03260'] = 'd[ MMM][ yyyy]{\'&#8212;\'d MMM yyyy}'; LOCALE_SETTINGS['LOCALE_SETTINGS.MONTH_FULL.02100'] = 'janvier février mars avril mai juin juillet août septembre octobre novembre décembre'; LOCALE_SETTINGS['LOCALE_SETTINGS.NUMBERS_HIJRI_LOCALIZED.00521'] = 'NO'; LOCALE_SETTINGS['LOCALE_SETTINGS.LONG'] = '{0} {1} {2} {3}'; LOCALE_SETTINGS['LOCALE_SETTINGS.WORK_FIELD_ORDER'] = 'JOB_TITLE DEPARTMENT COMPANY B_PHONE_1 B_PHONE_2 B_FAX'; LOCALE_SETTINGS['LOCALE_SETTINGS.MONTH_FULL_HIJRI.02100'] = 'Muḥarram,Ṣafar,Rabīʿ\'al-Awwal,Rabīʿ\'ath-Thānī,Jumādā\'al-Ūlā,Jumādā\'ath-Thāniya,Rajab,Shaʿbān,Ramaḍān,Shawwāl,Dhū\'al-Qaʿda,Dhū\'al-Ḥijja'; LOCALE_SETTINGS['LOCALE_SETTINGS.GREETING'] = 'Bienvenue, {1}'; LOCALE_SETTINGS['LOCALE_SETTINGS.MONTH_SHORT.00520'] = 'jan fév mar avr mai juin juil août sep oct nov déc'; LOCALE_SETTINGS['number_format.thousands_sep'] = ' '; LOCALE_SETTINGS['LOCALE_SETTINGS.CALENDAR_COLUMN_FORMAT_WEEK.03256'] = 'ddd dd/MM'; LOCALE_SETTINGS['LOCALE_SETTINGS.SHORT_SURNAME'] = '{3}, {1}'; LOCALE_SETTINGS['LOCALE_SETTINGS.AM_PM.00522'] = 'AM PM'; LOCALE_SETTINGS['number_format.negative_prefix'] = '-'; LOCALE_SETTINGS['LOCALE_SETTINGS.DATE_ORDER.00519'] = 'DMY'; LOCALE_SETTINGS['LOCALE_SETTINGS.PHONE_FIELD_ORDER'] = 'H_PHONE_1 H_PHONE_2 H_FAX M_PHONE'; LOCALE_SETTINGS['LOCALE_SETTINGS.DAY_MIN.02099'] = 'L M M J V S D'; LOCALE_SETTINGS['LOCALE_SETTINGS.24HR_SUPPORT.03208'] = '1'; LOCALE_SETTINGS['LOCALE_SETTINGS.FIRST_DAY_OF_WEEK.03207'] = '1'; LOCALE_SETTINGS['BBI18N.WINDOWS_CHARSET'] = 'ISO-8859-1'; LOCALE_SETTINGS['LOCALE_SETTINGS.MONTH_SHORT_HIJRI.00520'] = 'Muḥarram,Ṣafar,Rabīʿ\'I,Rabīʿ\'II,Jumādā\'I,Jumādā\'II,Rajab,Shaʿbān,Ramaḍān,Shawwāl,Dhū\'al-Qaʿda,Dhū\'al-Ḥijja'; LOCALE_SETTINGS['BBI18N.LINUX_CHARSET'] = 'iso88591'; LOCALE_SETTINGS['LOCALE_SETTINGS.DAY_CHARACTER.03253'] = ''; LOCALE_SETTINGS['LOCALE_SETTINGS.MONTH_CHARACTER.03254'] = ''; LOCALE_SETTINGS['LOCALE_SETTINGS.NAME.COLUMN_ORDER'] = 'title,givenName,middleName,familyName,suffix,otherName'; LOCALE_SETTINGS['number_format.decimal_point'] = ','; LOCALE_SETTINGS['LOCALE_SETTINGS.CALENDAR_TITLE_FORMAT_DAY.03258'] = 'dddd, d MMM yyyy'; LOCALE_SETTINGS['LOCALE_SETTINGS.DAYS.00521'] = '1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31'; LOCALE_SETTINGS['LOCALE_SETTINGS.OVERRIDE_LONG_TIME_WITH_FULL'] = 'false'; LOCALE_SETTINGS['LOCALE_SETTINGS.DAY_FULL.02098'] = 'lundi mardi mercredi jeudi vendredi samedi dimanche'; LOCALE_SETTINGS['LOCALE_SETTINGS.date_display_pattern'] = 'JJ/MM/AA'; LOCALE_SETTINGS['LOCALE_SETTINGS.EXTENDED_SURNAME'] = '{3}'; LOCALE_SETTINGS['thousand.sep.format'] = ' '; LOCALE_SETTINGS['LOCALE_SETTINGS.NUMBERS_HIJRI.00521'] = '0 1 2 3 4 5 6 7 8 9'; LOCALE_SETTINGS['LOCALE_SETTINGS.ADDRESS_ORDER.07832'] = 'street,city,region,postal_code,country'; LOCALE_SETTINGS['number_format.negative_suffix'] = ''; LOCALE_SETTINGS['LOCALE_SETTINGS.CALENDAR_COLUMN_FORMAT_DAY.03257'] = 'dddd dd/MM'; LOCALE_SETTINGS.getString = i18n_get_string; LOCALE_SETTINGS.getFormattedString = i18n_get_formatted_string; } _init_bundle_LOCALE_SETTINGS(); </script> <script language='javascript' type='text/javascript'> var LOCALE_SETTINGS = new Object(); function _init_bundle_LOCALE_SETTINGS() { LOCALE_SETTINGS['LOCALE_SETTINGS.ADDRESS_FIELD_ORDER'] = 'STREET_1 STREET_2 ZIP_CODE CITY STATE COUNTRY'; LOCALE_SETTINGS['number_format.exponent'] = 'eE'; LOCALE_SETTINGS['LOCALE_SETTINGS.NAME.COLUMN.2'] = '{1}'; LOCALE_SETTINGS['LOCALE_SETTINGS.YEAR_CHARACTER.03255'] = ''; LOCALE_SETTINGS['BBI18N.SOLARIS_CHARSET'] = 'ISO8859-1'; LOCALE_SETTINGS['LOCALE_SETTINGS.NAME.COLUMN.1'] = '{0}'; LOCALE_SETTINGS['LOCALE_SETTINGS.CALENDAR_COLUMN_FORMAT_MONTH.03255'] = 'ddd'; LOCALE_SETTINGS['LOCALE_SETTINGS.internal_date_format'] = 'dd/MM/yy'; LOCALE_SETTINGS['LOCALE_SETTINGS.CALENDAR_TITLE_FORMAT_MONTH.03259'] = 'MMMM yyyy'; LOCALE_SETTINGS['LOCALE_SETTINGS.TIME_ORDER.00519'] = 'HMP'; LOCALE_SETTINGS['float.format'] = '^([0-9]{1,3}([  ][0-9]{3})*(\\,[0-9]+)?|\\,[0-9]+)?$'; LOCALE_SETTINGS['LOCALE_SETTINGS.NAME.SORT_COLUMN'] = 'familyName'; LOCALE_SETTINGS['LOCALE_SETTINGS.SHORT'] = '{1} {3}'; LOCALE_SETTINGS['LOCALE_SETTINGS.DAY_SHORT.02097'] = 'L M M J V S D'; LOCALE_SETTINGS['float.allow.negative.format'] = '^((([-]?[0-9]{1,3}([  ][0-9]{3})*)|[-]?[0-9]*)(\\,[0-9]+)?|\\,[0-9]+)?$'; LOCALE_SETTINGS['LOCALE_SETTINGS.CALENDAR_TYPE'] = 'GREGORIAN'; LOCALE_SETTINGS['LOCALE_SETTINGS.GIVEN_INITIAL_FAMILY_NAME'] = '{4} {3}'; LOCALE_SETTINGS['efloat.format'] = '^(([+-]?[0-9]{1,3}([  ][0-9]{3})*)|[-]?[0-9]*)(\\,[0-9]+)?([eE][+-]?[0-9]+)?$'; LOCALE_SETTINGS['LOCALE_SETTINGS.CALENDAR_TITLE_FORMAT_WEEK.03260'] = 'd[ MMM][ yyyy]{\'&#8212;\'d MMM yyyy}'; LOCALE_SETTINGS['LOCALE_SETTINGS.MONTH_FULL.02100'] = 'janvier février mars avril mai juin juillet août septembre octobre novembre décembre'; LOCALE_SETTINGS['LOCALE_SETTINGS.NUMBERS_HIJRI_LOCALIZED.00521'] = 'NO'; LOCALE_SETTINGS['LOCALE_SETTINGS.LONG'] = '{0} {1} {2} {3}'; LOCALE_SETTINGS['LOCALE_SETTINGS.WORK_FIELD_ORDER'] = 'JOB_TITLE DEPARTMENT COMPANY B_PHONE_1 B_PHONE_2 B_FAX'; LOCALE_SETTINGS['LOCALE_SETTINGS.MONTH_FULL_HIJRI.02100'] = 'Muḥarram,Ṣafar,Rabīʿ\'al-Awwal,Rabīʿ\'ath-Thānī,Jumādā\'al-Ūlā,Jumādā\'ath-Thāniya,Rajab,Shaʿbān,Ramaḍān,Shawwāl,Dhū\'al-Qaʿda,Dhū\'al-Ḥijja'; LOCALE_SETTINGS['LOCALE_SETTINGS.GREETING'] = 'Bienvenue, {1}'; LOCALE_SETTINGS['LOCALE_SETTINGS.MONTH_SHORT.00520'] = 'jan fév mar avr mai juin juil août sep oct nov déc'; LOCALE_SETTINGS['number_format.thousands_sep'] = ' '; LOCALE_SETTINGS['LOCALE_SETTINGS.CALENDAR_COLUMN_FORMAT_WEEK.03256'] = 'ddd dd/MM'; LOCALE_SETTINGS['LOCALE_SETTINGS.SHORT_SURNAME'] = '{3}, {1}'; LOCALE_SETTINGS['LOCALE_SETTINGS.AM_PM.00522'] = 'AM PM'; LOCALE_SETTINGS['number_format.negative_prefix'] = '-'; LOCALE_SETTINGS['LOCALE_SETTINGS.DATE_ORDER.00519'] = 'DMY'; LOCALE_SETTINGS['LOCALE_SETTINGS.PHONE_FIELD_ORDER'] = 'H_PHONE_1 H_PHONE_2 H_FAX M_PHONE'; LOCALE_SETTINGS['LOCALE_SETTINGS.DAY_MIN.02099'] = 'L M M J V S D'; LOCALE_SETTINGS['LOCALE_SETTINGS.24HR_SUPPORT.03208'] = '1'; LOCALE_SETTINGS['LOCALE_SETTINGS.FIRST_DAY_OF_WEEK.03207'] = '1'; LOCALE_SETTINGS['BBI18N.WINDOWS_CHARSET'] = 'ISO-8859-1'; LOCALE_SETTINGS['LOCALE_SETTINGS.MONTH_SHORT_HIJRI.00520'] = 'Muḥarram,Ṣafar,Rabīʿ\'I,Rabīʿ\'II,Jumādā\'I,Jumādā\'II,Rajab,Shaʿbān,Ramaḍān,Shawwāl,Dhū\'al-Qaʿda,Dhū\'al-Ḥijja'; LOCALE_SETTINGS['BBI18N.LINUX_CHARSET'] = 'iso88591'; LOCALE_SETTINGS['LOCALE_SETTINGS.DAY_CHARACTER.03253'] = ''; LOCALE_SETTINGS['LOCALE_SETTINGS.MONTH_CHARACTER.03254'] = ''; LOCALE_SETTINGS['LOCALE_SETTINGS.NAME.COLUMN_ORDER'] = 'title,givenName,middleName,familyName,suffix,otherName'; LOCALE_SETTINGS['number_format.decimal_point'] = ','; LOCALE_SETTINGS['LOCALE_SETTINGS.CALENDAR_TITLE_FORMAT_DAY.03258'] = 'dddd, d MMM yyyy'; LOCALE_SETTINGS['LOCALE_SETTINGS.DAYS.00521'] = '1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31'; LOCALE_SETTINGS['LOCALE_SETTINGS.OVERRIDE_LONG_TIME_WITH_FULL'] = 'false'; LOCALE_SETTINGS['LOCALE_SETTINGS.DAY_FULL.02098'] = 'lundi mardi mercredi jeudi vendredi samedi dimanche'; LOCALE_SETTINGS['LOCALE_SETTINGS.date_display_pattern'] = 'JJ/MM/AA'; LOCALE_SETTINGS['LOCALE_SETTINGS.EXTENDED_SURNAME'] = '{3}'; LOCALE_SETTINGS['thousand.sep.format'] = ' '; LOCALE_SETTINGS['LOCALE_SETTINGS.NUMBERS_HIJRI.00521'] = '0 1 2 3 4 5 6 7 8 9'; LOCALE_SETTINGS['LOCALE_SETTINGS.ADDRESS_ORDER.07832'] = 'street,city,region,postal_code,country'; LOCALE_SETTINGS['number_format.negative_suffix'] = ''; LOCALE_SETTINGS['LOCALE_SETTINGS.CALENDAR_COLUMN_FORMAT_DAY.03257'] = 'dddd dd/MM'; LOCALE_SETTINGS.getString = i18n_get_string; LOCALE_SETTINGS.getFormattedString = i18n_get_formatted_string; } _init_bundle_LOCALE_SETTINGS(); </script> <script type="text/javascript" src="https://learn.content.blackboardcdn.com/3900.110.0-rel.48+dd7a52c/javascript/cookie.js"></script> <script type="text/javascript" src="https://learn.content.blackboardcdn.com/3900.110.0-rel.48+dd7a52c/javascript/cdn.js"></script> <script type="text/javascript" src="/groupjs/F065950589114124D0BFA8A3DE33CE63.js?v=3900.110.0-rel.48+dd7a52c"></script> <script type="text/javascript" src="/webapps/login/dwr_open/interface/UserDataDWRFacade.js?v=3900.110.0-rel.48+dd7a52c"></script> <script type="text/javascript" src="/webapps/login/dwr_open/interface/MashupDWRFacade.js?v=3900.110.0-rel.48+dd7a52c"></script> <script type="text/javascript" src="/ui-ultra/js/hide-focus-outline.js?v=3900.110.0-rel.48+dd7a52c"></script> <script type="text/javascript" src="/ui-ultra/js/login-page.js?v=3900.110.0-rel.48+dd7a52c"></script> <script type="text/javascript" src="/groupjs/34B0047848336A8D87900660845C3964.js?v=3900.110.0-rel.48+dd7a52c"></script> <script type="text/javascript" src="/webapps/privacy-disclosure/js/cookieConsent.js?v=3900.110.0-rel.48+dd7a52c_3900.110.0-rel.48+dd7a52c"></script> <script type="text/javascript" src="/groupjs/C67A79A0ACF5BD0D9308FAFB43D384EE.js?v=3900.110.0-rel.48+dd7a52c"></script> </head> <body id="learn-oe-body" class='bb-login hide-focus-outline'> <div id="loginLang" class="clearfix"> <form action="/webapps/portal/execute/changeLocale" method="post" name="locale_picker" target="_top"> <script> function loadLocale(code) { document.locale_picker.locale.value = code; document.locale_picker.submit(); } FastInit.addOnLoad( function() { function displayLanguages() { var $langButton = $('lang-select-button'); var $langMenu = $('lang-list'); function showMenu() { $langMenu.removeClassName('hide'); $langMenu.setAttribute('aria-hidden', 'false'); $langButton.setAttribute('aria-expanded', 'true'); $langButton.addClassName('expanded'); $langMenu.firstDescendant().firstDescendant().focus(); } function hideMenu() { $langMenu.addClassName('hide'); $langMenu.setAttribute('aria-hidden', 'true'); $langButton.setAttribute('aria-expanded', 'false'); $langButton.removeClassName('expanded'); } //toggle logic if ($langMenu.hasClassName('hide')) { showMenu(); } else { hideMenu(); } //Press ESC hides the menu $(document).on('keydown', function (e) { if (e.which == 27) { hideMenu(); } }); $(document).on('click', function (e) { hideMenu(); }); } // reveal available languages on click $('lang-select-button').on('click', 'button', function (e) { displayLanguages(); e.stopPropagation(); }); }); </script> <INPUT TYPE="hidden" NAME="target" value="/webapps/login/?action=login"> <button type="button" class="icon-languages" id="lang-select-button" aria-haspopup="true" aria-expanded="false" aria-controls="lang-list" aria-owns="lang-list" aria-pressed="false" aria-label="Sélectionner la langue Langue actuelle Français (France&#x202D;)&#x202C;"></button> <ul id="lang-list" class="hide" aria-hidden="true"> <li><a href="javascript:loadLocale('de_DE');" lang="de_DE" >Deutsch (Deutschland&#x202D;)&#x202C;</a></li> <li><a href="javascript:loadLocale('en_GB');" lang="en_GB" >English (United Kingdom&#x202D;)&#x202C;</a></li> <li><a href="javascript:loadLocale('en_US');" lang="en_US" >English (United States&#x202D;)&#x202C;</a></li> <li><a href="javascript:loadLocale('es_ES');" lang="es_ES" >Español (España&#x202D;)&#x202C;</a></li> <li><a href="javascript:loadLocale('fr_BE_eCampus');" lang="fr_BE_eCampus" >Français (Belgique - eCampus)</a></li> <li><a href="javascript:loadLocale('fr_BE');" lang="fr_BE" >Français (Belgique‭)‬</a></li> <li><a href="javascript:loadLocale('fr_FR');" lang="fr_FR" >Français (France&#x202D;)&#x202C;</a></li> <li><a href="javascript:loadLocale('it_IT');" lang="it_IT" >Italiano (Italia&#x202D;)&#x202C;</a></li> <li><a href="javascript:loadLocale('nl_NL');" lang="nl_NL" >Nederlands (Nederland&#x202D;)&#x202C;</a></li> </ul> <input type="hidden" name="locale"> </form> </div> <div class="row"> <div id="login-block" class="small-11 small-centered medium-12 medium-centered text-center columns"> <h1 class="login-logo new-logo customized-logo" > <span>Blackboard Learn &#8482;</span> <img src="/branding/_1_1/loginLogo/CustomLoginLogo.png?m=l5m6jaeo" alt="" /> </h1> <div id="login-form" class="login-form"> <noscript> <div class="receipt bad editmode alert-box alert">Activez JavaScript dans le navigateur pour que l'application Blackboard fonctionne.</div> </noscript> <form action="/webapps/login/" onsubmit="return validate_form( this, false, true );" method="POST" name="login" > <script type="text/javascript"> function login_openForgotPassword( url ) { var passwordWin = window.open( url, 'forgotPasswordWindow', 'menubar=1,resizable=1,scrollbars=1,status=1,width=850,height=480' ); passwordWin.focus(); } FastInit.addOnLoad(function() { if( typeof ClientCache !== 'undefined' ) { ClientCache.clear(); } var startingJSessionCookie = getCookie("JSESSIONID"); var guestLocaleCookie = getCookie("guest.session.locale"); deleteCookie("JSESSIONID", "/@@", null, true); deleteCookie("JSESSIONID", "/courses", null, true); deleteCookie("JSESSIONID", "/sessions", null, true); deleteCookie("JSESSIONID", "/systemdata", null, true); deleteCookie("JSESSIONID", "/images", null, true); deleteCookie("JSESSIONID", "/images-ltr", null, true); deleteCookie("JSESSIONID", "/images-rtl", null, true); deleteCookie("JSESSIONID", "/reportbranding", null, true); deleteCookie("JSESSIONID", "/reports", null, true); deleteCookie("JSESSIONID", "/modules", null, true); deleteCookie("JSESSIONID", "/groupjs", null, true); deleteCookie("JSESSIONID", "/branding", null, true); deleteCookie("JSESSIONID", "/queue_tasks", null, true); deleteCookie("JSESSIONID", "/sponsors", null, true); deleteCookie("JSESSIONID", "/course_image_main_images", null, true); deleteCookie("JSESSIONID", "/course_image_2_images", null, true); deleteCookie("JSESSIONID", "/course_image_nav_images", null, true); deleteCookie("JSESSIONID", "/org_image_main_images", null, true); deleteCookie("JSESSIONID", "/org_image_2_images", null, true); deleteCookie("JSESSIONID", "/org_image_nav_images", null, true); deleteCookie("JSESSIONID", "/avatar", null, true); deleteCookie("JSESSIONID", "/bannerthumbnail", null, true); deleteCookie("JSESSIONID", "/deployment", null, true); deleteCookie("JSESSIONID", "/content_area", null, true); deleteCookie("JSESSIONID", "/portfolio", null, true); deleteCookie("JSESSIONID", "/evidence_area", null, true); deleteCookie("JSESSIONID", "/public", null, true); deleteCookie("JSESSIONID", "/pronunciation_audio", null, true); deleteCookie("JSESSIONID", "/s", null, true); deleteCookie("JSESSIONID", "", null, true); deleteCookie("JSESSIONID", "/webapps/login", null, true); deleteCookie("JSESSIONID", "/webapps/taglibs", null, true); deleteCookie("JSESSIONID", "/webapps/ws", null, true); deleteCookie("JSESSIONID", "/webapps/wysiwyg", null, true); deleteCookie("JSESSIONID", "/bbcswebdav", null, true); deleteCookie("JSESSIONID", "/webapps/cmsmain", null, true); deleteCookie("JSESSIONID", "/webapps/xythoswfs", null, true); deleteCookie("JSESSIONID", "/admin", null, true); deleteCookie("JSESSIONID", "/colorpalettes", null, true); deleteCookie("JSESSIONID", "/coursethemes", null, true); deleteCookie("JSESSIONID", "/common", null, true); deleteCookie("JSESSIONID", "/fonts", null, true); deleteCookie("JSESSIONID", "/javascript", null, true); deleteCookie("JSESSIONID", "/lib", null, true); deleteCookie("JSESSIONID", "/login", null, true); deleteCookie("JSESSIONID", "/themes", null, true); deleteCookie("JSESSIONID", "/ui", null, true); deleteCookie("JSESSIONID", "/ui-ultra", null, true); deleteCookie("JSESSIONID", "/learn/api", null, true); deleteCookie("JSESSIONID", "/webapps/software-updates", null, true); deleteCookie("JSESSIONID", "/webapps/dataIntegration", null, true); deleteCookie("JSESSIONID", "/webapps/bb-gate-BB62c594351a76c", null, true); deleteCookie("JSESSIONID", "/webapps/foundations-connector", null, true); deleteCookie("JSESSIONID", "/webapps/ai", null, true); deleteCookie("JSESSIONID", "/webapps/goal", null, true); deleteCookie("JSESSIONID", "/webapps/bb-social-learning-BB62c594351a76c", null, true); deleteCookie("JSESSIONID", "/webapps/websockets", null, true); deleteCookie("JSESSIONID", "/webapps/api-gateway", null, true); deleteCookie("JSESSIONID", "/webapps/rubric", null, true); deleteCookie("JSESSIONID", "/webapps/streamViewer", null, true); deleteCookie("JSESSIONID", "/webapps/submission-services", null, true); deleteCookie("JSESSIONID", "/webapps/bb-content-model-BB62c594351a76c", null, true); deleteCookie("JSESSIONID", "/webapps/bb-group-mgmt-LEARN", null, true); deleteCookie("JSESSIONID", "/webapps/bb-ultra-conversion", null, true); deleteCookie("JSESSIONID", "/webapps/gradebook", null, true); deleteCookie("JSESSIONID", "/webapps/assessment", null, true); deleteCookie("JSESSIONID", "/webapps/videointegration", null, true); deleteCookie("JSESSIONID", "/webapps/vtbe-tinymce-ephox-hyperlinking", null, true); deleteCookie("JSESSIONID", "/webapps/vtbe-tinymce-ephox-spelling", null, true); deleteCookie("JSESSIONID", "/webapps/bb-common-styles-BB62c594351a76c", null, true); deleteCookie("JSESSIONID", "/webapps/bb-xss-filter-whitelist-BB62c594351a76c", null, true); deleteCookie("JSESSIONID", "/webapps/bb-xss-filter-BB62c594351a76c", null, true); deleteCookie("JSESSIONID", "/webapps/vtbe-tinymce", null, true); deleteCookie("JSESSIONID", "/webapps/bbcms", null, true); deleteCookie("JSESSIONID", "/webapps/inline-grading", null, true); deleteCookie("JSESSIONID", "/webapps/taskprogress", null, true); deleteCookie("JSESSIONID", "/webapps/spreview", null, true); deleteCookie("JSESSIONID", "/webapps/bb-xss-input-validation-BB62c594351a76c", null, true); deleteCookie("JSESSIONID", "/webapps/portfolio", null, true); deleteCookie("JSESSIONID", "/webapps/blogs-journals", null, true); deleteCookie("JSESSIONID", "/webapps/partner-cloud", null, true); deleteCookie("JSESSIONID", "/webapps/date-management", null, true); deleteCookie("JSESSIONID", "/webapps/discussionboard", null, true); deleteCookie("JSESSIONID", "/webapps/bb-selfpeer-BB62c594351a76c", null, true); deleteCookie("JSESSIONID", "/webapps/caliper", null, true); deleteCookie("JSESSIONID", "/webapps/allyintegration", null, true); deleteCookie("JSESSIONID", "/webapps/assignment", null, true); deleteCookie("JSESSIONID", "/webapps/consulting-central", null, true); deleteCookie("JSESSIONID", "/webapps/Bb-wiki-BB62c594351a76c", null, true); deleteCookie("JSESSIONID", "/webapps/bbgs-goal-performance-BB62c594351a76c", null, true); deleteCookie("JSESSIONID", "/webapps/operational-data-store", null, true); deleteCookie("JSESSIONID", "/webapps/retention", null, true); deleteCookie("JSESSIONID", "/webapps/bb-mygrades-BB62c594351a76c", null, true); deleteCookie("JSESSIONID", "/webapps/time-time-plgnhndl-BB62c594351a76c", null, true); deleteCookie("JSESSIONID", "/webapps/bb-1027720613048-BB62c594351a76c", null, true); deleteCookie("JSESSIONID", "/webapps/bb-auth-provider-cas-BB62c594351a76c", null, true); deleteCookie("JSESSIONID", "/webapps/bb-auth-provider-ldap-BB62c594351a76c", null, true); deleteCookie("JSESSIONID", "/webapps/ama-amanote-BB62c594351a76c", null, true); deleteCookie("JSESSIONID", "/webapps/bb-theme-diff-BB62c594351a76c", null, true); deleteCookie("JSESSIONID", "/webapps/bb-nautilus-BB62c594351a76c", null, true); deleteCookie("JSESSIONID", "/webapps/asset-processor", null, true); deleteCookie("JSESSIONID", "/webapps/insight-report", null, true); deleteCookie("JSESSIONID", "/webapps/foundations-cx", null, true); deleteCookie("JSESSIONID", "/webapps/building-block-conversion", null, true); deleteCookie("JSESSIONID", "/webapps/collab-ultra", null, true); deleteCookie("JSESSIONID", "/webapps/bb-data-integration-lis-final-BB62c594351a76c", null, true); deleteCookie("JSESSIONID", "/webapps/bb-mashups-slideshare-BB62c594351a76c", null, true); deleteCookie("JSESSIONID", "/webapps/bb-data-integration-ims-xml-BB62c594351a76c", null, true); deleteCookie("JSESSIONID", "/webapps/cloudstorageintegration", null, true); deleteCookie("JSESSIONID", "/webapps/achievements", null, true); deleteCookie("JSESSIONID", "/webapps/bb-data-integration-flatfile-BB62c594351a76c", null, true); deleteCookie("JSESSIONID", "/webapps/item-analysis", null, true); deleteCookie("JSESSIONID", "/webapps/ultraui", null, true); deleteCookie("JSESSIONID", "/webapps/bb-data-integration-lis-BB62c594351a76c", null, true); deleteCookie("JSESSIONID", "/webapps/enterpriseSurvey", null, true); deleteCookie("JSESSIONID", "/webapps/privacy-disclosure", null, true); deleteCookie("JSESSIONID", "/webapps/blackboard", null, true); deleteCookie("JSESSIONID", "/webapps/bbtextbook", null, true); deleteCookie("JSESSIONID", "/webapps/cmsadmin", null, true); deleteCookie("JSESSIONID", "/webapps/bb-financial-aid-BB62c594351a76c", null, true); deleteCookie("JSESSIONID", "/webapps/attendance", null, true); deleteCookie("JSESSIONID", "/webapps/bb-telephony-BB62c594351a76c", null, true); deleteCookie("JSESSIONID", "/webapps/scor-scormengine-BB62c594351a76c", null, true); deleteCookie("JSESSIONID", "/webapps/bb-1027954530152-BB62c594351a76c", null, true); deleteCookie("JSESSIONID", "/webapps/bb-mashups-youtube-BB62c594351a76c", null, true); deleteCookie("JSESSIONID", "/webapps/bbcxcommoncartridge", null, true); deleteCookie("JSESSIONID", "/webapps/feature-flags", null, true); deleteCookie("JSESSIONID", "/webapps/calendar", null, true); deleteCookie("JSESSIONID", "/webapps/goal-mastery", null, true); deleteCookie("JSESSIONID", "/webapps/plugins", null, true); deleteCookie("JSESSIONID", "/webapps/school-data-sync", null, true); deleteCookie("JSESSIONID", "/auth-saml", null, true); deleteCookie("JSESSIONID", "/webapps/telemetry", null, true); deleteCookie("JSESSIONID", "/webapps/bb-alerts-BB62c594351a76c", null, true); deleteCookie("JSESSIONID", "/webapps/bb-mashups-flickr-BB62c594351a76c", null, true); deleteCookie("JSESSIONID", "/webapps/notes", null, true); deleteCookie("JSESSIONID", "/webapps/bb-data-integration-ss-xml-BB62c594351a76c", null, true); deleteCookie("JSESSIONID", "/webapps/foundations-token", null, true); deleteCookie("JSESSIONID", "/webapps/portal", null, true); deleteCookie("JSESSIONID", "/webapps/auth-provider-foundations", null, true); deleteCookie("JSESSIONID", "/webapps/bbcxcourseconversion", null, true); deleteCookie("JSESSIONID", "/webapps/Bb-mobile-BB62c594351a76c", null, true); deleteCookie("JSESSIONID", "/webapps/searchwidgets", null, true); if (guestLocaleCookie != null) { setCookie("guest.session.locale", guestLocaleCookie); } setCookie("JSESSIONID", startingJSessionCookie); if ( typeof aptrinsic !== 'undefined' ) { window.aptrinsic('reset'); } if ( typeof pendo !== 'undefined' ) { pendo.clearSession(); } }); </script> <div id="loginFormFields" class="clearfix"> <ul id="loginFormList" class="clearfix"> <li class="clearfix"> <label for="user_id">Nom d'utilisateur</label> <input type="text" name="user_id" id="user_id" size="25" maxlength="50" autocomplete="off"/> </li> <li class="clearfix"> <label for="password">Mot de passe</label> <input size="25" name="password" id="password" type="password" autocomplete="off"/> </li> <li class="clearfix"> <input id="entry-login" type="submit" value="Se connecter" name="login" class="button expand inverse outline"/> </li> </ul> <div class="login-form-footer row collapse"> <div class="stay-signed-in small-6 columns text-left"> </div> </div> </div> <script src="/javascript/qrcodejs/qrcode.min.js"></script> <dialog id="mfa-registration" role="dialog" class="mfa-modal-container" aria-modal="true" > <div class="mfa-registration-modal mfa-modal" aria-labelledby="mfa-registration-title" aria-describedby="mfa-registration-description"> <div class="mfa-modal-title"> <h1 id="mfa-registration-title">Authentification multifacteur (MFA)</h1> </div> <div class="registration-modal-body"> <div id="mfa-registration-description" class="registration-modal-body-description"> <div> <span>Étape 1</span> <p>Téléchargez et installez une application d'authentification (par ex., <strong>Microsoft Authenticator, Google Authenticator ou Authy</strong>) sur votre téléphone.</p> </div> <div> <span>Étape 2</span> <p class="web-content">Ouvrez l'application d'authentification, puis scannez l'image ci-dessous à l'aide de l'appareil photo de votre téléphone ou copiez la clé.</p> <p class="mobile-content">Ouvrez l'application d'authentification et copiez la clé ci-dessous.</p> </div> </div> <div class="registration-qr-code"> <div class="qr-code-img" id="qrcode" tabindex="-1" aria-hidden="true"></div> <input type="hidden" id="qr-uri" tabindex="-1" aria-hidden="true" value="${mfaQRUri}"/> <div class="secret-key-container"> <p id="secretkey">${mfaSecretKey}</p> <div class="copy-key"> <a id="copy-secret-key" tabindex="0" onclick="copyTextToClipboard();">Copier la clé</a> <div id="copy-feedback" class="copyfeedback"> <span style="padding: 4px">-</span> <div class="copy-success"> <span role="alert" aria-live="assertive" style="color: #007D2C;font-size: 12px;line-height: 18px;">Clé copiée</span> <img class="check-icon" src="/images/ci/icons/complete.svg" aria-hidden="true"> </div> </div> </div> </div> </div> <div class="next-progress-info"> <span>Étape 3</span> <p id="next-progress-description">Sélectionnez Suivant pour saisir votre code et l'associer à votre compte</p> </div> </div> <div class="modal-footer"> <button id="reg-cancel-button" class="modal-button button-cancel">Annuler</button> <button id="reg-next-button" class="modal-button button-next">Suivant</button> </div> </div> </dialog> <script type="text/javascript"> // Initialize QRCode with the provided URI and set display parameters var qrcode = new QRCode(document.getElementById("qrcode"), { text: document.getElementById("qr-uri").value, width: 120, height: 120, colorDark : "#000000", colorLight : "#ffffff", correctLevel : QRCode.CorrectLevel.H }); // Event listener for the 'Next' button click in the registration dialog const nextButton = document.getElementById( 'reg-next-button' ); nextButton.addEventListener( 'click', function (event) { event.preventDefault(); // Hide registration dialog and show verification dialog const registrationDialog = document.getElementById( 'mfa-registration' ); const verificationDialog = document.getElementById( 'mfa-totp-verification' ); const inputField = document.getElementById( 'totp-verification-input' ); registrationDialog.style.display = 'none'; verificationDialog.style.display = 'flex'; inputField.focus(); // Update hidden input values to manage UI states document.getElementById( 'showMFARegistration' ).value='false'; document.getElementById( 'showMFAVerification' ).value='true'; document.getElementById( 'showMFASuccessFul' ).value='false'; } ); // Event listener for the 'Cancel' button click in the registration dialog const regCancelButton = document.getElementById( 'reg-cancel-button' ); regCancelButton.addEventListener( 'click', function (event) { event.preventDefault(); // Navigate to login page. window.location.href='/webapps/login/?action=logout'; } ); // Function to add a space after every 4 characters in the secret key function formatSecretKey() { const secretKeyElement = document.getElementById( 'secretkey' ); const secretKeyText = secretKeyElement.textContent; const formattedSecretKey = secretKeyText.replace( /(.{4})/g, '$1 ' ); secretKeyElement.textContent = formattedSecretKey; } // Call the function to format the displayed secret key formatSecretKey(); // Function to copy text to clipboard function copyTextToClipboard( text ) { const textArea = document.createElement( 'textarea' ); textArea.value = text; document.body.appendChild( textArea ); textArea.select(); const copykey = document.execCommand( 'copy' ); document.body.removeChild( textArea ); return copykey; } // Event listener for the 'Copy' button click to copy the secret key to clipboard function handleCopykeyEvent() { event.preventDefault(); const secretKeyElement = document.getElementById( 'secretkey' ); const secretKeyText = secretKeyElement.textContent; const unformattedSecretKey = secretKeyText.replace( /\s+/g, '' ); copyTextToClipboard( unformattedSecretKey ); const copyFeedback = document.getElementById( 'copy-feedback' ); copyFeedback.style.display = 'flex'; setTimeout( function () { copyFeedback.style.display = 'none'; }, 10000 ); document.getElementById('copy-secret-key').focus(); } document.getElementById( 'copy-secret-key' ).addEventListener( 'click', handleCopykeyEvent ); document.getElementById( 'copy-secret-key' ).addEventListener( 'keydown', function ( event ) { if ( event.key === 'Enter' || event.code === 'Space' ) { handleCopykeyEvent( event ); } } ); </script> <dialog id="mfa-totp-verification" class="mfa-modal-container" > <div class="mfa-verification-modal mfa-modal" role="dialog" aria-modal="true" aria-labelledby="mfa-verification-title" > <div class="mfa-modal-title"> <h1 id="mfa-verification-title" >Authentification multifacteur (MFA)</h1> </div> <div class="verification-modal-body"> <div class="verification-modal-body-description"> <label for="totp-verification-input" class="custom-label">Veuillez saisir votre code.</label> <p id="mfa-verification-description" >Saisissez le code éphémère à 6 chiffres qui a été généré par votre application d'authentification.</p> </div> <div id="totp-verification-input-container" class="verification-input"> <input name="secondaryAuthToken" id="totp-verification-input" type="text" onkeypress="return validateTOTP(event)" maxlength="6" tabindex="0" placeholder="000000" autocomplete="off" aria-describedby="mfa-verification-description" aria-invalid="false"/> </div> <div id="loading-spinner" class="centered"> <div class="loader-outer"> <div id="loader"> <div class="loader-inner"></div> </div> </div> </div> </div> <div class="modal-footer"> <button id="totp-back-button2" class="modal-button button-back">Retour</button> <button id="totp-submit-button" class="modal-button button-submit" type="submit" onclick="showLoadingSpinner();" disabled >Valider</button> </div> </div> </dialog> <script> window.onload = function () { const totpInput = document.getElementById( "totp-verification-input" ); if ( totpInput ) { totpInput.focus(); } } function validateTOTP( event ) { const inputField = document.getElementById( 'totp-verification-input' ); const key = event.key; if ( ( key >= '0' && key <= '9' ) || key === 'Backspace' || (event.metaKey && key === 'a') ) // for safari browser compatablity { return true; // Allow } else if ( key === 'Enter' ) { if ( inputField.value.length !== 6 ) { event.preventDefault(); } else { showLoadingSpinner(); return true; } } else { return false; // Block } } const inputField = document.getElementById( 'totp-verification-input' ); // To enable/disable the submit button based on input value. inputField.addEventListener( 'keyup', function () { const submitButton = document.getElementById( 'totp-submit-button' ); submitButton.disabled = !( inputField.value.length === 6 ); } ); inputField.addEventListener( 'input', function () { const errorMessageContainer = document.getElementById( 'totp-error' ); if(errorMessageContainer) { errorMessageContainer.style.display = 'none'; // Hide the error message on focus } } ); function showLoadingSpinner() { const spinner = document.getElementById( 'loading-spinner' ); const inputField = document.getElementById( 'totp-verification-input' ); const inputContainer = document.getElementById( 'totp-verification-input-container' ); const errorMessage = document.getElementById( 'errorMessage' ); const backbutton1 = document.getElementById( 'totp-back-button1' ); const backbutton2 = document.getElementById( 'totp-back-button2' ); if ( inputField.value.length === 6 && !errorMessage ) { inputContainer.style.display = 'none'; spinner.style.display = "flex"; if ( backbutton1 ) { backbutton1.disabled = true; } if ( backbutton2 ) { backbutton2.disabled = true; } } else if ( errorMessage ) { spinner.style.display = 'none'; inputContainer.style.display = 'flex'; inputField.setAttribute('aria-invalid','true'); } } function clearTOTPCode() { document.getElementById( 'totp-verification-input' ).value = ''; } const totpButton2 = document.getElementById( 'totp-back-button2' ); if(totpButton2) { totpButton2.addEventListener( 'click', function ( event ) { event.preventDefault(); clearTOTPCode(); window.location.href='/webapps/login/?action=logout'; }); } </script> <dialog id="mfa-registration-success" role="dialog" class="mfa-modal-container" aria-modal="true"> <div class="success-modal mfa-modal" tabindex="0" aria-labelledby="mfa-success-title" aria-describedby="mfa-success-description"> <div class="mfa-modal-title"> <h1 id="mfa-success-title">Authentification multifacteur (MFA)</h1> </div> <div class="modal-success-body"> <div id="mfa-success-description" class="success-description"> <div> <span>Vous avez terminé !</span> <p>Vous avez bien activé l'authentification multifacteur à l'aide de votre application d'authentification.</p> </div> <div> <p class="web-content">Vous devrez désormais saisir un code chaque fois que vous tenterez de vous connecter.</p> <p class="mobile-content">Vous devrez désormais saisir un code chaque fois que vous tenterez de vous connecter à partir d'un appareil inconnu.</p> </div> </div> </div> <div class="modal-footer"> <button id="mfa-registration-succes-button" class="modal-button button-done" >Terminé</button> <input type="hidden" id="mfaSuccessfulNavUrl" value="${mfaSuccessfulNavUrl}"/> </div> </div> </dialog> <script> const sucessNavButton = document.getElementById('mfa-registration-succes-button'); sucessNavButton.addEventListener('click', function (event) { event.preventDefault(); const navUrl = document.getElementById('mfaSuccessfulNavUrl').value; window.location=navUrl; }); </script> <input type="hidden" name="showMFARegistration" id="showMFARegistration" value="$showMFARegistration" /> <input type="hidden" name="showMFAVerification" id="showMFAVerification" value="$showMFAVerification" /> <input type="hidden" name="showMFASuccessFul" id="showMFASuccessFul" value="$showMFASuccessFul" /> <input type="hidden" name="action" value="login" /> <input type="hidden" name="new_loc" value="" /> <input type="hidden" name="blackboard.platform.security.NonceUtil.nonce.ajax" value="75ab8e96-ad4e-43d8-8e9f-db1ccb04c7cb"/> </form> <div id="loginRedirectProviders"> <button id="redirectProvidersDropdownButton" class="button dropdown expand">Se connecter avec un compte tiers</button> <ul id="loginRedirectProviderList"> <li><a href="/auth-saml/saml/login?apId=_176_1&redirectUrl=https%3A%2F%2Fext.ecampus.uliege.be%2Fultra" ><div class="defaultProviderIcon"></div>SSO - ULiege</a></li> </ul> </div> <script type="text/javascript"> var providerListDropdownButton = $('redirectProvidersDropdownButton'); var providerList = $('loginRedirectProviderList'); // Open/ close providers list dropdown providerListDropdownButton.on('click', function(event, element) { providerList.toggleClassName('open'); providerList.writeAttribute('aria-hidden', !providerList.hasClassName( 'open' )); }); // Close provider list when clicking elsewhere on the page $$("body").first().on('click', function(event) { if (!$(event.target).hasClassName('dropdown') && providerList.hasClassName('open')){ providerList.removeClassName('open'); } }); </script> </div> </div> <div class="login-page-announcements"> </div> <div class="small-12 small-centered text-center columns"> <div id="copyright" class="clearfix"> <script type="text/javascript"> function showCopyrightDetail(){ if(document.getElementById('copyrightDetail').style.display=="none" || document.getElementById('copyrightDetail').style.display=="") { document.getElementById('copyrightDetail').style.display="block"; } else { document.getElementById('copyrightDetail').style.display="none"; }} </script> <div class="newCopyright"> <div class="legal"> &copy; 1997-2025 Blackboard Inc. Tous droits réservés. </div> </div> </div><div id="loginOptions"> </div> </div> </div> <script type="text/javascript">page.bundle.addKey('inlineconfirmation.close','Fermer');page.bundle.addKey('inlineconfirmation.refresh','Actualiser');page.bundle.addKey('hidden.link.close.menu','Fin du menu. Cliquez pour revenir à l\'élément associé.');page.bundle.addKey('hidden.link.close.form','Fin du formulaire. Cliquez pour revenir à l\'élément associé.');page.bundle.addKey('lightbox.loading','Chargement en cours...');page.bundle.addKey('yt.stopped','Interrompu :');page.bundle.addKey('yt.playing','Lecture :');page.bundle.addKey('yt.cued','Mis en file d\'attente :');page.bundle.addKey('yt.buffering','Mise en mémoire tampon :');page.bundle.addKey('yt.paused','Interrompu momentanément :');page.bundle.addKey('yt.ended','Terminé :');page.bundle.addKey('yt.play','Lire');page.bundle.addKey('yt.pause','Pause');page.bundle.addKey('yt.mute','Désactiver le son');page.bundle.addKey('yt.unmute','Annuler la désactivation du son');page.bundle.addKey('lightbox.overlay','{0} a été ouvert(e) en tant que superposition Lightbox sur la page actuelle.');page.bundle.addKey('display.playerControls','Commandes du lecteur');page.bundle.addKey('display.videoPlayerControls','Commandes du lecteur vidéo');page.bundle.addKey('display.play','Lire');page.bundle.addKey('display.stop','Arrêter');page.bundle.addKey('display.volumeUp','Augmenter le volume');page.bundle.addKey('display.volumeDown','Diminuer le volume');page.bundle.addKey('display.mute','Désactiver le son');page.bundle.addKey('display.videoStatus','État de la vidéo');page.bundle.addKey('display.closePlayerControls','Fermer les commandes du lecteur');page.bundle.addKey('display.embeddedVideoPlayer','Lecteur vidéo intégré');page.bundle.addKey('display.of','de');page.bundle.addKey('display.view.on.flickr','Afficher la photo sur Flickr');page.bundle.addKey('mashups.content.data.msg','Nous ne pouvons pas afficher le contenu de l\'application Web hybride. Cela se produit lorsque le système détecte une URL non valide. Supprimez l\'élément d\'application Web hybride et réessayez de résoudre ce problème.');page.bundle.addKey('contextmenu.frame.title','Cadre du menu');page.bundle.addKey('frameset.contentframe.title','Contenu');page.bundle.addKey('common.pair.paren','{0} ({1})');</script> <script type="text/javascript"> function loadLoginPage() { if(document.forms.login.user_id != undefined) { verify_username_password(document.forms.login); } setTimeout("triggerScreenreaderAlert()", 500); } function triggerScreenreaderAlert() { if (document.getElementById('loginErrorMessage')) { $('loginErrorMessage').update($('loginErrorMessage').innerHTML); } } </script> <script type="text/javascript"> cookieConsent = new CookieConsent('/webapps/privacy-disclosure/'); cookieConsent.checkCookieAcceptance( 'blackboard.platform.security.NonceUtil.nonce=login', true ); </script> <script type="text/javascript"> function showPrivacyPolicy() { cookieConsent = new CookieConsent('/webapps/privacy-disclosure/'); cookieConsent.showPolicy( 'blackboard.platform.security.NonceUtil.nonce=login', true ); } </script> <script type="text/javascript"> FastInit.addOnLoad( function() { if ( window.DWREngine ) { try {DWREngine.beginBatch();} catch(ignore) {} } if (typeof(initEditors) == 'function') { initEditors(); } try { com.wiris.js.JsPluginViewer.parseDocument( true ); } catch(e) {}; if (window['org'] && window['org']['owasp']) { org.owasp.esapi.ESAPI.initialize(); }; AllyIntegration.initJWT('eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJBTExZIiwic3ViIjoiQUxMWV9UT0tFTiIsImZpbGVJZHMiOltdLCJjb3Vyc2VSb2xlIjoiIiwiaXNzIjoicEhFYkJNZnZieHFHbHJWeTlDTndZckhmUzVKS3RSZ1EiLCJyaWNoQ29udGVudElkcyI6W10sImV4cCI6MTc0MDQ4ODYzOCwiaWF0IjoxNzQwNDg4MzM4LCJjb3Vyc2VJZCI6IiIsInVzZXJJZCI6IiJ9.bMWl6_6wLLpddHqFnf8HrpBg0arSKvfR4oAJPp43I28'); AllyIntegration.initAllyJSConfigs('prod-eu-central-1.ally.ac','797'); jQuery.getScript('//' + window.ALLY_CFG.baseUrl + '/integration/learn/ally.js'); quickLinks.createHelper(); if ( window.DWREngine ) { try {DWREngine.endBatch();} catch(ignore) {} } BrowserSpecific.registerListeners(); loadLoginPage(); }); </script> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10