CINXE.COM
tutorials | IEEE Resource Center
<!DOCTYPE html> <html lang="en" dir="ltr" prefix="og: https://ogp.me/ns#"> <head> <meta charset="utf-8" /> <link rel="canonical" href="https://resourcecenter.ieee-pes.org/education/tutorials" /> <meta property="og:site_name" content="IEEE Power & Energy Society Resource Center" /> <meta property="og:title" content="tutorials" /> <meta name="google-site-verification" content="K6Txop2DrxR15TwUUsf5jkKDNBu5ciuzJ0B4XPzIFzA" /> <meta name="google-site-verification" content="hSCATysQL3LNBsqSzRUm8CL2TBCBBmUbJ34hgHjem0E" /> <meta name="google-site-verification" content="xyoKdclXFBDwM8r5fZ-Q0Nz8LkwiLgHzbATNHY0D81I" /> <meta name="google-site-verification" content="w4nR6K5O9z0ueZ49rUK9PgFgxeyrVy8RDgroM-G9IUA" /> <meta name="google-site-verification" content="gBZ1fBXwUgDXbr7h3FtU3uNGEhLeMZglAWeZfzlgCYY" /> <meta name="google-site-verification" content="nXkR4Y_L3x90vEKaOT5dqydLzaUfOpcZRoru5oorkjE" /> <meta name="Generator" content="Drupal 9 (https://www.drupal.org)" /> <meta name="MobileOptimized" content="width" /> <meta name="HandheldFriendly" content="true" /> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" /> <script src="https://cmp.osano.com/AzyzptTmRlqVd2LRf/c87b0b91-e439-4261-b322-9189ed33cdbd/osano.js"></script> <link rel="stylesheet" type="text/css" href="https://cookie-consent.ieee.org/ieee-cookie-banner.css" /> <meta http-equiv="x-ua-compatible" content="ie=edge" /><script type="text/javascript">(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:"1134330100",accountID:"3691991",trustKey:"66686",xpid:"VwAOUF9aCRABVFhaDwEDUVwJ",licenseKey:"NRJS-f45112c3e159cadd17f",applicationID:"1098804788"};;/*! For license information please see nr-loader-spa-1.274.0.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(993);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={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,harvestTimeSeconds:10,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},feature_flags:[],generic_events:{enabled:!0,harvestTimeSeconds:30,autoStart:!0},harvest:{tooManyRequestsDelay:60},jserrors:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},logging:{enabled:!0,harvestTimeSeconds:10,autoStart:!0,level:n.p_.INFO},metrics:{enabled:!0,autoStart:!0},obfuscate:void 0,page_action:{enabled:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,harvestTimeSeconds:30,autoStart:!0},performance:{capture_marks:!1,capture_measures:!1},privacy:{cookies_enabled:!0},proxy:{assets:void 0,beacon:void 0},session:{expiresMs:o.wk,inactiveMs:o.BB},session_replay:{autoStart:!0,enabled:!1,harvestTimeSeconds:60,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,harvestTimeSeconds:10,autoStart:!0},soft_navigations:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},spa:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},ssl:void 0,user_actions:{enabled:!0}}},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},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.274.0",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),h(a.gm,f),h(c.prototype,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])}},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,{TZ:()=>n,Zp:()=>i,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},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,{ET:()=>o,TZ:()=>a,p_:()=>i});var n=r(860);const i={ERROR:"ERROR",WARN:"WARN",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"},o="log",a=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(3969),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()))}},3969:(e,t,r)=>{"use strict";r.d(t,{TZ:()=>n,XG:()=>s,rs:()=>i,xV:()=>a,z_:()=>o});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:()=>s,Qu:()=>c,TZ:()=>a,ih:()=>u,tC:()=>i});var n=r(860);const i=["click","keydown","submit"],o="api",a=n.K7.softNav,s={INITIAL_PAGE_LOAD:"",ROUTE_CHANGE:1,UNSPECIFIED:2},c={INTERACTION:1,AJAX:2,CUSTOM_END:3,CUSTOM_TRACER:4},u={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:()=>E,uP:()=>s,wW:()=>T,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",T="cb"+R,A="jsTime",E="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")},425:(e,t,r)=>{"use strict";r.d(t,{j:()=>j});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(3969),h=r(384),p=r(6344);const g=["setErrorHandler","finished","addToTrace","addRelease","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(2646),x=r(3434);function T(e,t,r,n){if("object"!=typeof t||!t||"string"!=typeof r||!r||"function"!=typeof t[r])return(0,l.R)(29);const i=function(e){return(e||s.ee).get("logger")}(e),o=(0,x.YM)(i),a=new R.y(s.P);return a.level=n.level,a.customAttributes=n.customAttributes,o.inPlace(t,[r],"wrap-logger-",a),i}function A(){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 S=r(9417),N=r(5603),O=r(5284);const _=e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e};let I=!1;function j(e,t={},g,R){let{init:x,info:j,loader_config:P,runtime:C={},exposed:k=!0}=t;C.loaderType=g;const L=(0,h.pV)();j||(x=L.init,j=L.info,P=L.loader_config),(0,S.xN)(e.agentIdentifier,x||{}),(0,N.a)(e.agentIdentifier,P||{}),j.jsAttributes??={},d.bv&&(j.jsAttributes.isWorker=!0),(0,i.x1)(e.agentIdentifier,j);const H=(0,S.D0)(e.agentIdentifier),D=[j.beacon,j.errorBeacon];I||(H.proxy.assets&&(_(H.proxy.assets),D.push(H.proxy.assets)),H.proxy.beacon&&D.push(H.proxy.beacon),A(),(0,h.US)("activatedFeatures",O.B),e.runSoftNavOverSpa&&=!0===H.soft_navigations.enabled&&H.feature_flags.includes("soft_nav")),C.denyList=[...H.ajax.deny_list||[],...H.ajax.block_internal?D:[]],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 R=s.ee.get(e),x=R.get("tracer");E[e]=b.g.OFF,R.on(p.G4.REPLAY_RUNNING,(t=>{E[e]=t}));var A="api-",S=A+"ixn-";function N(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(A,n,!0,o||null===r?"session":void 0)(t,r)}function O(){}g.log=function(e,{customAttributes:t={},level:r=y.p_.INFO}={}){(0,a.p)(f.xV,["API/log/called"],void 0,n.K7.metrics,R),(0,w.R)(R,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,R),T(R,e,t,{customAttributes:r,level:i})},m.forEach((e=>{g[e]=I(A,e,!0,"api")})),g.addPageAction=I(A,"addPageAction",!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(A,"setPageViewName",!0)()},g.setCustomAttribute=function(e,t,r=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof t)||null===t)return N(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 N("enduser.id",e,"setUserId",!0);(0,l.R)(41,typeof e)},g.setApplicationVersion=function(e){if("string"==typeof e||null===e)return N("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,R),R.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,R),(0,a.p)(p.G4.RECORD,[],void 0,n.K7.sessionReplay,R)},g[p.G4.PAUSE]=function(){(0,a.p)(f.xV,["API/pauseReplay/called"],void 0,n.K7.metrics,R),(0,a.p)(p.G4.PAUSE,[],void 0,n.K7.sessionReplay,R)},g.interaction=function(e){return(new O).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,R),h||(0,a.p)(S+"tracer",[(0,v.t)(),e,r],i,n.K7.spa,R),function(){if(x.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 x.emit("fn-err",[arguments,this,t],r),t}finally{x.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,R),i&&(0,a.p)(e+t,[(0,v.t)(),...arguments],r?null:this,i,R),r?void 0:this}}function j(){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),R.abort()}))}return["actionText","setName","setAttribute","save","ignore","onEnd","getContext","end","get"].forEach((e=>{_[e]=I(S,e,void 0,h?n.K7.softNav:n.K7.spa)})),g.setCurrentRouteName=h?I(S,"routeName",void 0,n.K7.softNav):I(A,"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,R),(0,a.p)("err",[t,(0,v.t)(),!1,r,!!E[e]],void 0,n.K7.jserrors,R)},d.RI?(0,u.GG)((()=>j()),!0):j(),g}(e.agentIdentifier,R,e.runSoftNavOverSpa)),void 0===e.exposed&&(e.exposed=k),I=!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:()=>o,K7:()=>n,P3:()=>i});const n={ajax:"ajax",genericEvents:"generic_events",jserrors:"jserrors",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"},i={[n.pageViewEvent]:1,[n.pageViewTiming]:2,[n.metrics]:3,[n.jserrors]:4,[n.spa]:5,[n.ajax]:6,[n.sessionTrace]:7,[n.softNav]:8,[n.sessionReplay]:9,[n.logging]:10,[n.genericEvents]:11},o={[n.pageViewTiming]:"events",[n.ajax]:"events",[n.spa]:"events",[n.softNav]:"events",[n.metrics]:"jserrors",[n.jserrors]:"jserrors",[n.sessionTrace]:"browser/blobs",[n.sessionReplay]:"browser/blobs",[n.logging]:"browser/logs",[n.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.274.0.min.js"),i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),e={},t="NRBA-1.274.0.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-1vUqEfJPB8Pihje9mv5CfYgkitO1FWcS+UQb84DbXqP8oYctRv4/lzl/MzNLPlRhcY1WVDBGL20I8vm6s2VV7g==",249:"sha512-Y/BeZAh6VSTmUtUNmS5XdyKxL92s30Fyyj8xVW76HSPxcKItL4+x2+kGMZc8pMJnUpZDz1L4eftZQAJh3D8NnA==",212:"sha512-Gn2tQ3qog5Yhrx/gRutkSTYPp+7nkKFt4/mIXg99LxcNpMDAYJZDBYmAACdoHNM86+iq1F3cBcQotFNzjIX8bw=="};(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.274.0.PROD"]=self["webpackChunk:NRBA-1.274.0.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(e=(0,r.LA)(16)){this.agentIdentifier=e}#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)}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(425);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(t.sharedAggregator)await t.sharedAggregator;else{t.sharedAggregator=i.e(478).then(i.bind(i,9337));const{EventAggregator:e}=await t.sharedAggregator;t.sharedAggregator=new e}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),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),T=i(2843),A=i(3878),E=i(782),S=i(1863);class N extends b{static featureName=E.T;constructor(e,t=!0){super(e,E.T,t),p.RI&&((0,T.u)((()=>(0,x.p)("docHidden",[(0,S.t)()],void 0,E.T,this.ee)),!0),(0,A.sp)("pagehide",(()=>(0,x.p)("winPagehide",[(0,S.t)()],void 0,E.T,this.ee))),this.importAggregator(e))}}var O=i(3969);class _ extends b{static featureName=O.TZ;constructor(e,t=!0){super(e,O.TZ,t),this.importAggregator(e)}}var I=i(6774),j=i(3304);class P{constructor(e,t,r,n,i){this.name="UncaughtError",this.message="string"==typeof e?e:(0,j.A)(e),this.sourceURL=t,this.line=r,this.column=n,this.__newrelic=i}}function C(e){return H(e)?e:new P(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 P(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 D 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=>{this.abortHandler&&(0,x.p)("ierr",[C(e),(0,S.t)(),!0,{},this.#r],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,S.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,S.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 M=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,M.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,j.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(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-",X=Y+"body-",J=["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,J.forEach((e=>{r(Q[te],e,X),r(ee[te],e,X)})),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,j.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){T(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,S.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,S.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,S.t)()))}function v(e,r){this.xhrCbStart&&t.emit("xhr-cb-time",[(0,S.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,S.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,S.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,S.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,S.t)()-this.startTime,this.loadCazptureCalled||4!==e.readyState?null==t.status&&(t.status=0):T(this,e),n.cbTime=this.cbTime,r("xhr",[t,n,this.startTime,this.endTime,"xhr"],this,a.K7.ajax))}}function T(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)(O.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:Te,Lc:Ae,uP:Ee,Rz:Se}=be;class Ne extends b{static featureName=Te;constructor(e,t=!0){super(e,Te,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(Ee,(function(e,t){this.bstStart=(0,S.t)()})),this.eventsEE.on(Ae,(function(e,t){(0,x.p)("bst",[e[0],t,this.bstStart,(0,S.t)()],void 0,a.K7.sessionTrace,r)})),r.on(Se+Re,(function(e){this.time=(0,S.t)(),this.startPath=location.pathname+location.hash})),r.on(Se+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 Oe=i(2614);class _e 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(Oe.H3,"_").concat(Oe.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===Oe.g.FULL||e.sessionReplayMode===Oe.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}),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!==Oe.g.FULL&&this.featAggregate.initializeRecording(Oe.g.FULL,!0):(this.#i=Oe.g.FULL,this.#c(t.Qb.API),this.recorder&&this.recorder.parent.mode!==Oe.g.FULL&&(this.recorder.parent.mode=Oe.g.FULL,this.recorder.stopRecording(),this.recorder.startRecording(),this.abortHandler=this.recorder.stopRecording))}}var Ie=i(3962);class je 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,S.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,S.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 Pe=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 De(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 Me={},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(Me[t.debugId]++)return t;Me[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:Xe,wW:Je,e5:Qe,tH:$e,uP:et,rw:tt,Lc:rt}=Pe;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=De(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,S.t)()}function m(){n--,window.location.hash!==r&&h(0,!0);var e=(0,S.t)();this[Qe]=~~this[Qe]+e-this[et],this[rt]=e}function v(e,t){e.on(t,(function(){this[t]=(0,S.t)()}))}this.ee.on(et,g),a.on(tt,g),o.on(tt,g),this.ee.on(rt,m),a.on(Je,m),o.on(Je,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([$e+Ze,$e+"-done",$e+Xe+Ze,$e+Xe+Ye],this.featureName),l.buffer(["newURL"],this.featureName),f.buffer([et],this.featureName),a.buffer(["propagate",tt,Je,"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,$e+Ze),v(d,$e+"-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];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=>(0,A.sp)(e,(e=>(0,x.p)("ua",[e],void 0,this.featureName,this.ee)))))),r.some((e=>e))?this.importAggregator(e):this.deregisterDrain()}}var at=i(993),st=i(3785);class ct extends b{static featureName=at.TZ;constructor(e,t=!0){super(e,at.TZ,t);const r=this.ee;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,r){super(r),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,N,Ne,_e,_,D,ot,ct,je,nt],loaderType:"spa"})})()})();</script> <link rel="icon" href="/themes/custom/barrio_subtheme/favicon.ico" type="image/vnd.microsoft.icon" /> <title>tutorials | IEEE Resource Center</title> <link rel="stylesheet" media="all" href="/sites/default/files/css/css_ZF0uk8rheWmF7j-ljvRrQX9qctibYv4P8Jho_bwzftM.css" /> <link rel="stylesheet" media="all" href="//use.fontawesome.com/releases/v6.6.0/css/all.css" /> <link rel="stylesheet" media="all" href="//use.fontawesome.com/releases/v6.6.0/css/v4-shims.css" /> <link rel="stylesheet" media="all" href="/sites/default/files/css/css_0Z3drm7Toe-l-PTdeI7ZWTcJqEFKXw-7Kc2EOaxi9BQ.css" /> <link rel="stylesheet" media="all" href="/sites/default/files/css/css_AyWjnf5rvi9a9SIbMPtA_trePxgohQJSKyZLIkLN6QU.css" /> <link rel="stylesheet" media="all" href="//cdn.jsdelivr.net/npm/bootstrap@5.2.0/dist/css/bootstrap.min.css" /> <link rel="stylesheet" media="all" href="/sites/default/files/css/css_elEPTckwQdiu3LhslSY3nZda6myMhTjJiirdzcoxZ9s.css" /> <link rel="stylesheet" media="print" href="/sites/default/files/css/css_Y4H_4BqmgyCtG7E7YdseTs2qvy9C34c51kBamDdgark.css" /> <script type="application/json" data-drupal-selector="drupal-settings-json">{"path":{"baseUrl":"\/","scriptPath":null,"pathPrefix":"","currentPath":"taxonomy\/term\/67203","currentPathIsAdmin":false,"isFront":false,"currentLanguage":"en","currentQuery":{"f":["tags:84437"]}},"pluralDelimiter":"\u0003","suppressDeprecationErrors":true,"ajaxPageState":{"libraries":"ajax_loader\/ajax_loader.throbber,barrio_subtheme\/bootstrap_cdn,barrio_subtheme\/feature,barrio_subtheme\/footer-menu,barrio_subtheme\/global-styling,barrio_subtheme\/main-menu,barrio_subtheme\/mega-menu,barrio_subtheme\/product-card,barrio_subtheme\/right-sidebar,barrio_subtheme\/secondry-menu,barrio_subtheme\/sub-footer,better_exposed_filters\/auto_submit,better_exposed_filters\/general,bootstrap_barrio\/form,bootstrap_barrio\/global-styling,bootstrap_barrio\/messages_white,bootstrap_barrio\/node,extlink\/drupal.extlink,facets\/drupal.facets.checkbox-widget,facets\/drupal.facets.views-ajax,facets\/soft-limit,fontawesome\/fontawesome.webfonts,fontawesome\/fontawesome.webfonts.shim,google_tag\/gtag,google_tag\/gtag.ajax,google_tag\/gtm,ieee_views_filters\/product-card-filter,ieeecc_video_embed\/ieeecc_lazyload,opigno_learning_path\/global,opigno_module\/menu_icon,search_api_autocomplete\/search_api_autocomplete,system\/base,views\/views.ajax,views\/views.module,we_megamenu\/form.we-mega-menu-frontend","theme":"barrio_subtheme","theme_token":null},"ajaxTrustedUrl":{"form_action_p_pvdeGsVG5zNF_XLGPTvYSKCf43t8qZYSwcfZl2uzM":true,"\/education\/tutorials":true},"gtm":{"tagId":null,"settings":{"data_layer":"dataLayer","include_classes":false,"allowlist_classes":"","blocklist_classes":"","include_environment":false,"environment_id":"","environment_token":""},"tagIds":["GTM-57NZ5H6","GTM-KKGWNKD"]},"gtag":{"tagId":"","consentMode":false,"otherIds":[],"events":[],"additionalConfigInfo":[]},"ajaxLoader":{"markup":"\u003Cdiv class=\u0022ajax-throbber sk-chase\u0022\u003E\n \u003Cdiv class=\u0022sk-chase-dot\u0022\u003E\u003C\/div\u003E\n \u003Cdiv class=\u0022sk-chase-dot\u0022\u003E\u003C\/div\u003E\n \u003Cdiv class=\u0022sk-chase-dot\u0022\u003E\u003C\/div\u003E\n \u003Cdiv class=\u0022sk-chase-dot\u0022\u003E\u003C\/div\u003E\n \u003Cdiv class=\u0022sk-chase-dot\u0022\u003E\u003C\/div\u003E\n \u003Cdiv class=\u0022sk-chase-dot\u0022\u003E\u003C\/div\u003E\n \u003C\/div\u003E","hideAjaxMessage":false,"alwaysFullscreen":true,"throbberPosition":"body"},"data":{"extlink":{"extTarget":true,"extTargetNoOverride":false,"extNofollow":false,"extNoreferrer":true,"extFollowNoOverride":false,"extClass":"0","extLabel":"(link is external)","extImgClass":false,"extSubdomains":false,"extExclude":"","extInclude":"","extCssExclude":"","extCssExplicit":"","extAlert":false,"extAlertText":"This link will take you to an external web site. We are not responsible for their content.","mailtoClass":"mailto","mailtoLabel":"(link sends email)","extUseFontAwesome":false,"extIconPlacement":"append","extFaLinkClasses":"fa fa-external-link","extFaMailtoClasses":"fa fa-envelope-o","whitelistedDomains":["www.ieee.org"]}},"domainSettings":{"activeId":"resourcecenter_ieee_pes_org","defaultDomainUrl":"https:\/\/resourcecenter.ieee.org\/","isDefault":false,"searchUrl":"\/search?f[0]=organizational_unit:29"},"facets_views_ajax":{"tags":{"view_id":"category_search","current_display_id":"block_1","view_base_path":"","ajax_path":"\/views\/ajax"},"topics_cat":{"view_id":"category_search","current_display_id":"block_1","view_base_path":"","ajax_path":"\/views\/ajax"},"media_type_cat":{"view_id":"category_search","current_display_id":"block_1","view_base_path":"","ajax_path":"\/views\/ajax"},"category":{"view_id":"category_search","current_display_id":"block_1","view_base_path":"","ajax_path":"\/views\/ajax"},"facets_summary_ajax":{"facets_summary_id":"category_search_summary","view_id":"category_search","current_display_id":"block_1","ajax_path":"\/views\/ajax"}},"facets":{"softLimit":{"tags":10,"topics_cat":10,"category":10},"softLimitSettings":{"tags":{"showLessLabel":"Show less","showMoreLabel":"Show more"},"topics_cat":{"showLessLabel":"Show less","showMoreLabel":"Show more"},"category":{"showLessLabel":"Show less","showMoreLabel":"Show more"}}},"views":{"ajax_path":"\/views\/ajax","ajaxViews":{"views_dom_id:fd93c0c965cfeb2e8fbb2d181b1df3430d169f48c5ead384747f135a16a41326":{"view_name":"category_search","view_display_id":"block_1","view_args":"67203","view_path":"\/taxonomy\/term\/67203","view_base_path":null,"view_dom_id":"fd93c0c965cfeb2e8fbb2d181b1df3430d169f48c5ead384747f135a16a41326","pager_element":0}}},"search_api_autocomplete":{"category_search":{"auto_submit":true}},"user":{"uid":0,"permissionsHash":"b4588b102114b0246b2c09acd562036242253a02b45b9e67c0e3fea5d0cb2268"}}</script> <script src="/sites/default/files/js/js_wgaFzAV2u4-dXZMGgGlKqwkvW2UKRG10co7vxTYoFSs.js"></script> <script src="/modules/contrib/google_tag/js/gtm.js?smqrkq"></script> <script src="/modules/contrib/google_tag/js/gtag.js?smqrkq"></script> <script src="/sites/default/files/js/js_eJOflymwmTXRkEv9y8ol6uaIAj5pWUXxMbZTsIl4vVw.js"></script> </head> <body class="resourcecenterieee-pesorg layout-one-sidebar layout-sidebar-second page-taxonomy-term-67203 page-vocabulary-product-category path-taxonomy"> <a href="#main-content" class="visually-hidden-focusable"> Skip to main content </a> <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-57NZ5H6" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-KKGWNKD" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <div class="dialog-off-canvas-main-canvas" data-off-canvas-main-canvas> <div id="page-wrapper"> <div id="page" class="live"> <div class="container-fluid px-xl-5 bg-light d-none d-lg-block" id="metanav"> <div class="row mx-auto"> <div class="col-10 col-lg-8 col-md-6"> <nav id="ieeemenu" role="navigation" aria-labelledby="block-ieeetopheadermenu-menu" class="block navbar navbar-expand-lg navbar-light block-menu navigation menu--ieee-top-header-menu"> <h2 class="visually-hidden" id="block-ieeetopheadermenu-menu">ieee top header menu</h2> <div id="ieeemenu" class="collapse navbar-collapse"> <ul class="clearfix nav navbar-nav"> <li class="pr-1 nav-item"> <a href="https://www.ieee.org/" class="nav-link nav-link-https--wwwieeeorg-">IEEE.org</a> </li> <li class="px-1 nav-item"> <a href="https://ieeexplore.ieee.org/Xplore/home.jsp" class="nav-link nav-link-https--ieeexploreieeeorg-xplore-homejsp">IEEE Xplore Digital Library</a> </li> <li class="px-1 nav-item"> <a href="http://standards.ieee.org/" class="nav-link nav-link-http--standardsieeeorg-">IEEE Standards</a> </li> <li class="px-1 nav-item"> <a href="http://spectrum.ieee.org" class="nav-link nav-link-http--spectrumieeeorg">IEEE Spectrum</a> </li> <li class="pl-1 nav-item"> <a href="https://www.ieee.org/sitemap.html" class="nav-link nav-link-https--wwwieeeorg-sitemaphtml">More Sites</a> </li> </ul> </div> </nav> </div> <div class="col mt-0"> <nav role="navigation" aria-labelledby="block-anonymoususermenu-menu" class="block block-menu navigation navbar navbar-expand-lg navbar-light menu--anonymous-user-menu"> <h2 class="visually-hidden" id="block-anonymoususermenu-menu">Anonymous user menu</h2> <div id="usermenu" class="collapse navbar-collapse justify-content-end"> <ul class="clearfix navbar-nav"> <li class="pr-1 nav-item"> <a href="https://www.ieee.org/cart/public/myCart/page.html" class="nav-link nav-link-https--wwwieeeorg-cart-public-mycart-pagehtml">Cart</a> </li> <li class="pl-1 nav-item"> <a href="https://www.ieee.org/profile/public/createwebaccount/showCreateAccount.html?url=https%3A//www.ieee.org/&ShowMGAMarkeatbilityOptIn=true" class="nav-link nav-link-https--wwwieeeorg-profile-public-createwebaccount-showcreateaccounthtmlurlhttps3a--wwwieeeorg-showmgamarkeatbilityoptintrue">Create Account </a> </li> <li class="px-1 nav-item"> <a href="/saml_login?destination=/education/tutorials%3Ff%255B0%255D%3Dtags%253A84437" title="Login with your IEEE Account" class="nav-link nav-link--saml-login" data-drupal-link-system-path="saml_login">Sign In</a> </li> </ul> </div> </nav> </div> </div> </div> <div class="container-fluid px-xl-5" id="mainnav"> <div class="d-flex justify-content-between py-2 py-lg-3 mx-auto align-items-center main_nav_wrap"> <div id="block-barrio-subtheme-branding" class="clearfix block block-system block-system-branding-block"> <nav class="navbar navbar-expand-sm py-1 pr-0"> <a href="/" class="navbar-brand mr-0 py-0" title="Home" rel="home"> <img src="https://resourcecenter.ieee-pes.org/sites/default/files/files/pes-logo_0.gif" alt="Home" class="logo" /> </a> </nav> </div> <div id="block-domainmenuforieeepesmain" class="block block-we-megamenu block-we-megamenu-blockdm13511076-main order-3 order-lg-1 flex-fill"> <div class="content"> <div class="region-we-mega-menu"> <a class="navbar-toggle collapsed"> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </a> <nav class="dm13511076-main navbar navbar-default navbar-we-mega-menu mobile-collapse hover-action" data-menu-name="dm13511076-main" data-block-theme="barrio_subtheme" data-style="Default" data-animation="None" data-delay="" data-duration="" data-autoarrow="" data-alwayshowsubmenu="" data-action="hover" data-mobile-collapse="0"> <div class="container-fluid"> <ul class="we-mega-menu-ul nav nav-tabs justify-content-evenly flex"> <li class="we-mega-menu-li dropdown-menu" data-level="0" data-element-type="we-mega-menu-li" description="" data-id="1f1367b8-3711-4594-926d-a222c2351e60" data-submenu="1" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target=""> <a class="we-mega-menu-li" title="" href="/conferences" target=""> Conferences </a> <div class="we-mega-menu-submenu" data-element-type="we-mega-menu-submenu" data-submenu-width="750" data-class="" style="width: 750px"> <div class="we-mega-menu-submenu-inner"> <div class="we-mega-menu-row" data-element-type="we-mega-menu-row" data-custom-row="0"> <div class="we-mega-menu-col span4" data-element-type="we-mega-menu-col" data-width="4" data-block="" data-blocktitle="0" data-hidewhencollapse="" data-class=""> <ul class="nav nav-tabs subul"> <li class="we-mega-menu-li dropdown-menu we-mega-menu-group" data-level="1" data-element-type="we-mega-menu-li" description="" data-id="d8c5753e-b444-49b5-9781-0f5cc6c4901d" data-submenu="1" hide-sub-when-collapse="" data-group="1" data-class="" data-icon="" data-caption="" data-alignsub="" data-target=""> <a href='#' data-drupal-link-system-path="<front>" class="we-megamenu-nolink"> ISGT</a> <div class="we-mega-menu-submenu" data-element-type="we-mega-menu-submenu" data-submenu-width="" data-class="" style="width: px"> <div class="we-mega-menu-submenu-inner"> <div class="we-mega-menu-row" data-element-type="we-mega-menu-row" data-custom-row="0"> <div class="we-mega-menu-col span12 border-0" data-element-type="we-mega-menu-col" data-width="12" data-block="" data-blocktitle="0" data-hidewhencollapse="" data-class="border-0"> <ul class="nav nav-tabs subul"> <li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="61fd5960-0ce4-4c4f-9654-dfdf3572311a" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target=""> <a class="we-mega-menu-li" title="" href="/conferences/isgt-me" target=""> ISGT Middle East </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="4e71f609-b204-4476-8369-365efdebfd56" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="/conferences/isgt-asia" target="_self"> ISGT Asia </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="fec52973-04e8-4a27-8f57-d2fb4f44f54a" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="/conferences/isgt-europe" target="_self"> ISGT Europe </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="e48f4e3e-ffd7-48f9-8887-8256f9ae8f51" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="/conferences/isgt-latin-america" target="_self"> ISGT Latin America </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="f8edcc3d-3c75-4357-8cb6-8d08c196bdbd" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="/conferences/isgt-na" target="_self"> ISGT NA </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="ed427767-1cfa-4d49-975f-3043b7e4b3cc" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="/conferences/isgt" target="_self"> ISGT </a> </li> </ul> </div> </div> </div> </div> </li> </ul> </div> <div class="we-mega-menu-col span4" data-element-type="we-mega-menu-col" data-width="4" data-block="" data-blocktitle="1" data-hidewhencollapse="" data-class=""> <ul class="nav nav-tabs subul"> <li class="we-mega-menu-li dropdown-menu we-mega-menu-group" data-level="1" data-element-type="we-mega-menu-li" description="" data-id="3c924b87-832b-48e7-91ad-f91263b72221" data-submenu="1" hide-sub-when-collapse="" data-group="1" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a href='#' data-drupal-link-system-path="<front>" class="we-megamenu-nolink"> Grid / Power</a> <div class="we-mega-menu-submenu" data-element-type="we-mega-menu-submenu" data-submenu-width="" data-class="" style="width: px"> <div class="we-mega-menu-submenu-inner"> <div class="we-mega-menu-row" data-element-type="we-mega-menu-row" data-custom-row="0"> <div class="we-mega-menu-col span12 border-0" data-element-type="we-mega-menu-col" data-width="12" data-block="" data-blocktitle="0" data-hidewhencollapse="" data-class="border-0"> <ul class="nav nav-tabs subul"> <li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="e32b253e-3db2-4a27-842d-fdd1c6ef4191" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="/conferences/grid-edge" target="_self"> Grid Edge </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="82f85da2-bc36-4ba0-a457-49ddaac2a1de" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="/conferences/grid-resilience" target="_self"> Grid Resilience </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="4c113db9-8aa0-4e0b-ac00-302d2ae3739b" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="/conferences/powerafrica" target="_self"> Power Africa </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="c4df4229-4fa4-41e5-a9b7-8f707afcb15b" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target=""> <a class="we-mega-menu-li" title="" href="/conferences/power-con" target=""> Power Con </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="d0f95385-187f-4c1b-9e2d-896ec7cef1d8" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target=""> <a class="we-mega-menu-li" title="" href="/conferences/powertech" target=""> PowerTech </a> </li> </ul> </div> </div> </div> </div> </li> </ul> </div> <div class="we-mega-menu-col span4" data-element-type="we-mega-menu-col" data-width="4" data-block="" data-blocktitle="1" data-hidewhencollapse="" data-class=""> <ul class="nav nav-tabs subul"> <li class="we-mega-menu-li dropdown-menu we-mega-menu-group" data-level="1" data-element-type="we-mega-menu-li" description="" data-id="75bd5aa8-418e-4263-8f2a-752f12790fd7" data-submenu="1" hide-sub-when-collapse="" data-group="1" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a href='#' data-drupal-link-system-path="<front>" class="we-megamenu-nolink"> Other Conferences</a> <div class="we-mega-menu-submenu" data-element-type="we-mega-menu-submenu" data-submenu-width="" data-class="" style="width: px"> <div class="we-mega-menu-submenu-inner"> <div class="we-mega-menu-row" data-element-type="we-mega-menu-row" data-custom-row="0"> <div class="we-mega-menu-col span12 border-0" data-element-type="we-mega-menu-col" data-width="12" data-block="" data-blocktitle="0" data-hidewhencollapse="" data-class="border-0"> <ul class="nav nav-tabs subul"> <li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="10474d3a-2cef-4323-b0ce-420c89ba5ba0" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="/conferences/general-meeting" target="_self"> General Meeting </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="88a59189-b770-4e15-a9dd-2032aa528993" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="/conferences/appeec" target="_self"> APPEEC </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="40937ae8-2a69-40f0-8d40-31ba85256651" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="/conferences/esmo" target="_self"> ESMO </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="7680cabc-efa8-4a00-ad54-cb8135bdf741" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="/conferences/gtd" target="_self"> GTD </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="b8d8c15e-ecc2-4a7c-8bc1-fa6cdc6183de" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target=""> <a class="we-mega-menu-li" title="" href="/conferences/pes_day" target=""> PES Day </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="babc8bc2-1b4d-4d52-bd8e-77108939afb2" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="/conferences/psce" target="_self"> PSCE </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="ef58bd4a-ec6e-4687-b8bd-287eee199e7d" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="/conferences/itslc-un" target="_self"> SDG (ITSLC UN) </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="2835c2b4-50fd-4ed1-9c55-1f48d9bfd8c4" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="/conferences/scc" target="_self"> Student Chapter Committee </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="47cef53b-ae9c-4d4e-83d0-515bf38d0f6a" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="/conferences/t-and-d" target="_self"> T&D </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="3f6b58e7-140c-487b-852a-0d0eac152555" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="/conferences/tesc" target="_self"> TESC </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="81b6ec18-3bbe-4b23-838f-9473f497f938" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="/conferences/young-professionals" target="_self"> Young Professionals </a> </li> </ul> </div> </div> </div> </div> </li> </ul> </div> </div> </div> </div> </li><li class="we-mega-menu-li dropdown-menu active active-trail" data-level="0" data-element-type="we-mega-menu-li" description="" data-id="635e09ce-72fa-471b-a786-69ce7d2871f8" data-submenu="1" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target=""> <a class="we-mega-menu-li" title="" href="/education" target=""> Education </a> <div class="we-mega-menu-submenu" data-element-type="we-mega-menu-submenu" data-submenu-width="750" data-class="" style="width: 750px"> <div class="we-mega-menu-submenu-inner"> <div class="we-mega-menu-row" data-element-type="we-mega-menu-row" data-custom-row="0"> <div class="we-mega-menu-col span6" data-element-type="we-mega-menu-col" data-width="6" data-block="" data-blocktitle="0" data-hidewhencollapse="" data-class=""> <ul class="nav nav-tabs subul"> <li class="we-mega-menu-li dropdown-menu we-mega-menu-group" data-level="1" data-element-type="we-mega-menu-li" description="" data-id="e839da30-bc22-4c45-b530-91d051ac2109" data-submenu="1" hide-sub-when-collapse="" data-group="1" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a href='#' data-drupal-link-system-path="<front>" class="we-megamenu-nolink"> Live</a> <div class="we-mega-menu-submenu" data-element-type="we-mega-menu-submenu" data-submenu-width="" data-class="" style="width: px"> <div class="we-mega-menu-submenu-inner"> <div class="we-mega-menu-row" data-element-type="we-mega-menu-row" data-custom-row="0"> <div class="we-mega-menu-col span12" data-element-type="we-mega-menu-col" data-width="12" data-block="" data-blocktitle="0" data-hidewhencollapse="" data-class=""> <ul class="nav nav-tabs subul"> <li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="ecc9d47b-4297-4411-a9cb-6226343fdbc5" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target=""> <a class="we-mega-menu-li" title="" href="https://resourcecenter.ieee-pes.org/education/pes-universitys-upcoming-live-online-educational-events" target=""> Live Online </a> </li> </ul> </div> </div> </div> </div> </li> </ul> </div> <div class="we-mega-menu-col span6" data-element-type="we-mega-menu-col" data-width="6" data-block="" data-blocktitle="1" data-hidewhencollapse="" data-class=""> <ul class="nav nav-tabs subul"> <li class="we-mega-menu-li dropdown-menu we-mega-menu-group active active-trail" data-level="1" data-element-type="we-mega-menu-li" description="" data-id="8aa696e6-0357-4ceb-b42a-dc55f7d79dd0" data-submenu="1" hide-sub-when-collapse="" data-group="1" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a href='#' data-drupal-link-system-path="<front>" class="we-megamenu-nolink"> On-Demand</a> <div class="we-mega-menu-submenu" data-element-type="we-mega-menu-submenu" data-submenu-width="" data-class="" style="width: px"> <div class="we-mega-menu-submenu-inner"> <div class="we-mega-menu-row" data-element-type="we-mega-menu-row" data-custom-row="0"> <div class="we-mega-menu-col span12" data-element-type="we-mega-menu-col" data-width="12" data-block="" data-blocktitle="0" data-hidewhencollapse="" data-class=""> <ul class="nav nav-tabs subul"> <li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="3a7ea661-25de-4a23-9139-8be0b8698409" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="/education/plain-talks" target="_self"> Plain Talks </a> </li><li class="we-mega-menu-li active active-trail" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="f8dee95d-5a84-464e-a62d-3e674d653ad5" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="/education/tutorials" target="_self"> Tutorials </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="3e9e5e9a-209c-42dc-b542-66405743fd38" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="/education/webinars" target="_self"> Webinars </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="27f4dee9-3242-41e4-9055-06ac5e9a220b" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="https://iln.ieee.org/Public/ContentDetails.aspx?id=62EA99690833422291E2BDD37D4DD03B" target="_self"> Interactive </a> </li> </ul> </div> </div> </div> </div> </li> </ul> </div> </div> </div> </div> </li><li class="we-mega-menu-li dropdown-menu" data-level="0" data-element-type="we-mega-menu-li" description="" data-id="016b8039-8a2d-43e1-b223-9fca14831e17" data-submenu="1" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target=""> <a class="we-mega-menu-li" title="" href="/publications" target=""> Publications </a> <div class="we-mega-menu-submenu" data-element-type="we-mega-menu-submenu" data-submenu-width="750" data-class="" style="width: 750px"> <div class="we-mega-menu-submenu-inner"> <div class="we-mega-menu-row" data-element-type="we-mega-menu-row" data-custom-row="0"> <div class="we-mega-menu-col span4" data-element-type="we-mega-menu-col" data-width="4" data-block="" data-blocktitle="0" data-hidewhencollapse="" data-class=""> <ul class="nav nav-tabs subul"> <li class="we-mega-menu-li dropdown-menu we-mega-menu-group" data-level="1" data-element-type="we-mega-menu-li" description="" data-id="12e1e9e5-e6d6-4e9c-bebe-ea41302d9900" data-submenu="1" hide-sub-when-collapse="" data-group="1" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="https://resourcecenter.ieee-pes.org/publications/pes-magazines" target="_self"> Magazines </a> <div class="we-mega-menu-submenu" data-element-type="we-mega-menu-submenu" data-submenu-width="" data-class="" style="width: px"> <div class="we-mega-menu-submenu-inner"> <div class="we-mega-menu-row" data-element-type="we-mega-menu-row" data-custom-row="0"> <div class="we-mega-menu-col span12" data-element-type="we-mega-menu-col" data-width="12" data-block="" data-blocktitle="0" data-hidewhencollapse="" data-class=""> <ul class="nav nav-tabs subul"> <li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="2522936c-20c3-477f-80d9-39498ab03a71" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target=""> <a class="we-mega-menu-li" title="" href="/publications/electrification-magazine" target=""> Electrification Magazine </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="4bdd1590-9d8c-47f4-881a-4c41346f5e34" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target=""> <a class="we-mega-menu-li" title="" href="/publications/power-and-energy-magazine" target=""> Power and Energy Magazine </a> </li> </ul> </div> </div> </div> </div> </li> </ul> </div> <div class="we-mega-menu-col span4" data-element-type="we-mega-menu-col" data-width="4" data-block="" data-blocktitle="1" data-hidewhencollapse="" data-class=""> <ul class="nav nav-tabs subul"> <li class="we-mega-menu-li dropdown-menu we-mega-menu-group" data-level="1" data-element-type="we-mega-menu-li" description="" data-id="82bf68a8-5fd4-4d42-b4ac-8bb63f404672" data-submenu="1" hide-sub-when-collapse="" data-group="1" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="https://resourcecenter.ieee-pes.org/conferences/general-meeting.html" target="_self"> Papers </a> <div class="we-mega-menu-submenu" data-element-type="we-mega-menu-submenu" data-submenu-width="" data-class="" style="width: px"> <div class="we-mega-menu-submenu-inner"> <div class="we-mega-menu-row" data-element-type="we-mega-menu-row" data-custom-row="0"> <div class="we-mega-menu-col span12" data-element-type="we-mega-menu-col" data-width="12" data-block="" data-blocktitle="0" data-hidewhencollapse="" data-class=""> <ul class="nav nav-tabs subul"> <li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="84b98ef1-34c4-46a2-873c-78524edcb55a" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target=""> <a class="we-mega-menu-li" title="" href="https://resourcecenter.ieee-pes.org/publications/ieee-open-access-journal-power-and-energy-vol-11-2024" target=""> Open Access Papers: OAJPE Vol. 11 (2024) </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="41c9be51-2f51-443d-8ede-1de1b68a496c" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="https://resourcecenter.ieee-pes.org/publications/ieee-open-access-journal-vol-10" target="_self"> Open Access Papers: OAJPE Vol. 10 (2023) </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="f74fbef6-e192-4a74-aa01-a6bcfe821f33" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="https://resourcecenter.ieee-pes.org/publications/ieee-open-access-journal-power-and-energy-vol-9-2022" target="_self"> Open Access Papers: OAJPE Vol. 9 (2022) </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="a0736212-024a-48f8-9428-729db68c1dd4" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="https://resourcecenter.ieee-pes.org/publications/IEEE_OAJPE" target="_self"> Open Access Papers: OAJPE Vol. 8 (2021) </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="32a6ee74-493c-416b-b864-9f1f28c36392" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="https://resourcecenter.ieee-pes.org/publications/ieee-open-access-journal-vol-7" target="_self"> Open Access Papers: OAJPE Vol. 7 (2020) </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="339de7d9-ba84-4e9c-a0e9-08243b26470e" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target=""> <a class="we-mega-menu-li" title="" href="/publications/pets-j-open-access-papers" target=""> Open Access Papers: PETS-J </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="4c5a83e6-f13c-4092-943b-8f7d056b2fcf" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target=""> <a class="we-mega-menu-li" title="" href="/publications/tutorial-papers" target=""> Tutorial Papers </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="5292655c-25c4-4312-a48d-710ae0efb083" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target=""> <a class="we-mega-menu-li" title="" href="/publications/white-papers" target=""> White Papers </a> </li> </ul> </div> </div> </div> </div> </li> </ul> </div> <div class="we-mega-menu-col span4" data-element-type="we-mega-menu-col" data-width="4" data-block="" data-blocktitle="1" data-hidewhencollapse="" data-class=""> <ul class="nav nav-tabs subul"> <li class="we-mega-menu-li dropdown-menu we-mega-menu-group" data-level="1" data-element-type="we-mega-menu-li" description="" data-id="c1170ce6-d853-4b23-8a3e-097a05b3c62b" data-submenu="1" hide-sub-when-collapse="" data-group="1" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a href='#' data-drupal-link-system-path="<front>" class="we-megamenu-nolink"> Other Publications</a> <div class="we-mega-menu-submenu" data-element-type="we-mega-menu-submenu" data-submenu-width="" data-class="" style="width: px"> <div class="we-mega-menu-submenu-inner"> <div class="we-mega-menu-row" data-element-type="we-mega-menu-row" data-custom-row="0"> <div class="we-mega-menu-col span12 border-0 mt-0" data-element-type="we-mega-menu-col" data-width="12" data-block="" data-blocktitle="0" data-hidewhencollapse="" data-class="border-0 mt-0"> <ul class="nav nav-tabs subul"> <li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="af9c672c-93f4-43ea-827a-a7cddf66cc68" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target=""> <a class="we-mega-menu-li" title="" href="/publications/proceedings" target=""> Proceedings </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="ae0c47c2-d86c-4008-ac89-17536f32f357" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="/publications/slides" target="_self"> Slides </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="fd724580-9c6b-44e9-a17a-4fef8849db0f" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="/publications/surveys" target="_self"> Surveys </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="fe13a470-549a-4b59-8823-170263706537" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="/publications/technical-reports" target="_self"> Technical Reports </a> </li><li class="we-mega-menu-li" data-level="2" data-element-type="we-mega-menu-li" description="" data-id="7fba60f2-4764-4639-99f1-86b6bfa4cfa5" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="/publications/videos" target="_self"> Videos </a> </li> </ul> </div> </div> </div> </div> </li> </ul> </div> </div> </div> </div> </li><li class="we-mega-menu-li dropdown-menu" data-level="0" data-element-type="we-mega-menu-li" description="" data-id="215d5cda-9f82-42dc-a7fd-1a31cf64228e" data-submenu="1" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target=""> <a class="we-mega-menu-li" title="" href="/member-resources" target=""> Member Resources </a> <div class="we-mega-menu-submenu" data-element-type="we-mega-menu-submenu" data-submenu-width="" data-class="" style="width: px"> <div class="we-mega-menu-submenu-inner"> <div class="we-mega-menu-row" data-element-type="we-mega-menu-row" data-custom-row="0"> <div class="we-mega-menu-col span12" data-element-type="we-mega-menu-col" data-width="12" data-block="" data-blocktitle="0" data-hidewhencollapse="" data-class=""> <ul class="nav nav-tabs subul"> <li class="we-mega-menu-li" data-level="1" data-element-type="we-mega-menu-li" description="" data-id="5ca2e2fa-97b0-41a5-90a2-d2947ac07f82" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target=""> <a class="we-mega-menu-li" title="" href="/member-resources/slides" target=""> Slides </a> </li><li class="we-mega-menu-li" data-level="1" data-element-type="we-mega-menu-li" description="" data-id="72744240-f9c7-48f2-9b3e-914bb111e607" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="/member-resources/videos" target="_self"> Videos </a> </li> </ul> </div> </div> </div> </div> </li><li class="we-mega-menu-li dropdown-menu nav-item pl-3 right" data-level="0" data-element-type="we-mega-menu-li" description="" data-id="c422dee5-d767-445d-9df6-ee6be01fe1f0" data-submenu="1" hide-sub-when-collapse="" data-group="0" data-class="nav-item pl-3" data-icon="" data-caption="" data-alignsub="right" data-target=""> <a class="we-mega-menu-li" title="" href="/technical-committees/slides" target=""> Technical Committees </a> <div class="we-mega-menu-submenu border-0 mt-0" data-element-type="we-mega-menu-submenu" data-submenu-width="" data-class="border-0 mt-0" style="width: px"> <div class="we-mega-menu-submenu-inner"> <div class="we-mega-menu-row" data-element-type="we-mega-menu-row" data-custom-row="0"> <div class="we-mega-menu-col span12 border-0" data-element-type="we-mega-menu-col" data-width="12" data-block="" data-blocktitle="0" data-hidewhencollapse="" data-class="border-0"> <ul class="nav nav-tabs subul"> <li class="we-mega-menu-li" data-level="1" data-element-type="we-mega-menu-li" description="" data-id="972eaedf-0787-4490-8141-212ba7f30f5f" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target="_self"> <a class="we-mega-menu-li" title="" href="/technical-committees/slides" target="_self"> Slides </a> </li><li class="we-mega-menu-li" data-level="1" data-element-type="we-mega-menu-li" description="" data-id="be65fe56-de1b-460c-b677-02fc967ab94b" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target=""> <a class="we-mega-menu-li" title="" href="/technical-committees/tools" target=""> Tools </a> </li><li class="we-mega-menu-li" data-level="1" data-element-type="we-mega-menu-li" description="" data-id="de16c04e-e5be-4d9c-ba1b-70f48583a2dc" data-submenu="0" hide-sub-when-collapse="" data-group="0" data-class="" data-icon="" data-caption="" data-alignsub="" data-target=""> <a class="we-mega-menu-li" title="" href="/technical-committees/videos" target=""> Videos </a> </li> </ul> </div> </div> </div> </div> </li> <li class="" id="header_search"> <form class="autocomplete-custom" data-drupal-selector="autocomplete-custom" action="/education/tutorials?f%5B0%5D=tags%3A84437" method="post" id="autocomplete-custom" accept-charset="UTF-8"> <div class="search collapsed"><input placeholder="Enter search..." autocomplete="off" class="position-absolute search_top bg-white end-0 form-autocomplete form-control" data-drupal-selector="edit-search-term" data-autocomplete-path="/search_api_autocomplete/presentation_search" type="text" id="edit-search-term" name="search_term" value="" size="60" maxlength="128" /> <input autocomplete="off" data-drupal-selector="form-qucq33uv66ihqjsxj8-ermsfwzck9dthu2kux8shkq" type="hidden" name="form_build_id" value="form-qUcq33uv66IhQjSxj8--ErmsFwzcK9DtHU2kuX8SHKQ" class="form-control" /> <input data-drupal-selector="edit-autocomplete-custom" type="hidden" name="form_id" value="autocomplete_custom" class="form-control" /> <div class="url-textfield js-form-wrapper form-wrapper mb-3" style="display: none !important;"> <div class="js-form-item js-form-type-textfield form-type-textfield js-form-item-url form-item-url mb-3"> <label for="edit-url">Leave this field blank</label> <input autocomplete="off" data-drupal-selector="edit-url" type="text" id="edit-url" name="url" value="" size="20" maxlength="128" class="form-control" /> </div> </div> <button class="trigg_span btn-lg button js-form-submit form-submit btn btn-primary" data-drupal-selector="edit-submit" type="submit" id="edit-submit" name="op" value="Search">Search</button> </div> </form> </li> </ul> </div> </nav> </div> </div> </div> <div id="block-sitelogo" class="block-content-site_main_logo block order-2 order-lg-3 py-0"> <nav class="navbar navbar-expand-sm py-0 justify-content-end" > <a class="navbar-brand" href="https://www.ieee.org" target="_blank"> <img src="/sites/default/files/2022-11/ieeemain.png" alt="IEEE" class="partner-logo"> </a> </nav> </div> </div> </div> <div class="container-fluid px-xl-5 secondary-nav" style="background:#5a9641"> <div class="py-2 align-items-center"> <section class="row region region-secondary-menu"> <nav id="mainmenu" role="navigation" aria-labelledby="block-socialieeepes-menu" class="p-0 block navbar navbar-expand-lg navbar-light block-menu navigation menu--social-ieee-pes"> <h2 id="block-socialieeepes-menu" class="h4 mb-0 ps-1 ps-md-2 ps-lg-4">IEEE PES Resource Center</h2> <div id="mainmenu" class="collapse navbar-collapse py-1"> <div class="text-end socials w-100 pe-2"> <a href="https://ieee-pes.org/?utm_source=PES_RC&utm_medium=referral&utm_campaign=Member_Button"><span class="link-text">PES Home</span> <i class="fas fas fa-globe" aria-hidden="true"></i></a> <a href="https://www.facebook.com/ieeePES" aria-label="Facebook"><i class="fa fa fa-facebook" aria-hidden="true"></i></a> <a href="https://www.instagram.com/ieee.pes/" aria-label="Instagram"><i class="fa fa fa-instagram" aria-hidden="true"></i></a> <a href="https://www.linkedin.com/company/ieeepes/" aria-label="Linkedin"><i class="fa fab fa-linkedin-in" aria-hidden="true"></i></a> <a href="https://x.com/ieee_pes" aria-label="Twitter"><i class="fa-brands fa fa-brands fa-x-twitter" aria-hidden="true"></i></a> <a href="https://www.youtube.com/ieeepes" aria-label="YouTube"><i class="fa fa fa-youtube" aria-hidden="true"></i></a> <div class="sharethis-inline-share-buttons"></div> </div> </div> </nav> </section> </div> </div> <div id="carouselExampleCaptions" class="feature carousel slide" data-bs-ride="carousel" data-interval="2500"> <div class="views-element-container block block-views block-views-blockhome-page-slider-block-2" id="block-views-block-home-page-slider-block-2"> <div class="content"> <div><div class="container pt-4 js-view-dom-id-78342223441547875a55d422ffc4914a0221f596ef8d4c563ad709f18250eaa7"> </div> </div> </div> </div> </div> <div class="highlighted px-xl-5"> <aside class="container-fluid section clearfix" role="complementary"> <div data-drupal-messages-fallback class="hidden"></div> </aside> </div> <div id="main-wrapper" class="layout-main-wrapper clearfix"> <div id="maincontent" class="container-fluid px-xl-5" style="background: linear-gradient(180deg, rgba(240,242,248,1) 0%, rgba(255,255,255,1) 33%);"> <div class="row row-offcanvas row-offcanvas-left clearfix pb-3 pt-2 mx-auto"> <main class="main-content col" id="content" role="main"> <section class="section"> <a id="main-content" tabindex="-1"></a> <div id="block-barrio-subtheme-page-title" class="block block-core block-page-title-block"> <div class="content"> <h1 class="title highlight-color fw-light py-4"> <div class="field field--name-name field--type-string field--label-hidden field__item">tutorials</div> </h1> </div> </div> <div id="block-barrio-subtheme-content" class="block block-system block-system-main-block"> <div class="content"> <div id="taxonomy-term-67203" class="taxonomy-term vocabulary-product-category"> <div class="content"> </div> </div> </div> </div> <div class="views-element-container block block-views block-views-blockcategory-search-block-1" id="block-views-block-category-search-block-1"> <div class="content"> <div><div class="view view-category-search view-id-category_search view-display-id-block_1 js-view-dom-id-fd93c0c965cfeb2e8fbb2d181b1df3430d169f48c5ead384747f135a16a41326"> <div class="view-header"> <h5 class="fw-light mt-4">Showing 1 - 12 of 195 resources. Too many results? Use the search filters to refine your search.</h5> </div> <div class="view-filters"> <form class="views-exposed-form bef-exposed-form" data-bef-auto-submit-full-form="" data-bef-auto-submit="" data-bef-auto-submit-delay="500" data-drupal-selector="views-exposed-form-category-search-block-1" action="/education/tutorials" method="get" id="views-exposed-form-category-search-block-1" accept-charset="UTF-8"> <div class="url-textfield js-form-wrapper form-wrapper mb-3" style="display: none !important;"> <div class="js-form-item js-form-type-textfield form-type-textfield js-form-item-url form-item-url mb-3"> <label for="edit-url--2">Leave this field blank</label> <input autocomplete="off" data-drupal-selector="edit-url" type="text" id="edit-url--2" name="url" value="" size="20" maxlength="128" class="form-control" /> </div> </div> <div class="row py-3 mx-auto align-items-center w-100 pb-0"> <div class="col-12"> <div class="float-start cstm_flt_btn shrt me-3 serch_fl position-relative col-lg-6 p-0"> <div class="js-form-item js-form-type-search-api-autocomplete form-type-search-api-autocomplete js-form-item-search-api-fulltext form-item-search-api-fulltext mb-3"> <input placeholder="Search" data-bef-auto-submit-exclude="" data-drupal-selector="edit-search-api-fulltext" data-search-api-autocomplete-search="category_search" class="form-autocomplete form-control" data-autocomplete-path="/search_api_autocomplete/category_search?display=block_1&arguments%5B0%5D&filter=search_api_fulltext" type="text" id="edit-search-api-fulltext" name="search_api_fulltext" value="" size="30" maxlength="128" /> </div> <button data-bef-auto-submit-click="" data-drupal-selector="edit-submit-category-search" type="submit" id="edit-submit-category-search" value="Go" class="button js-form-submit form-submit btn btn-primary">Go</button> </div> <div class="float-start cstm_flt_btn shrt me-3"><fieldset data-drupal-selector="edit-sort-by" id="edit-sort-by--wrapper" class="fieldgroup form-composite js-form-item form-item js-form-wrapper form-wrapper mb-3"> <legend> <span class="fieldset-legend">Sort by</span> </legend> <div class="fieldset-wrapper"> <div id="edit-sort-by" class="radio"><div class="form-radios dropdown"> <button class="btn btn-primary rounded-pill dropdown-toggle px-3" type="button" data-bs-toggle="dropdown" aria-expanded="false"> Newest </button> <ul class="dropdown-menu"> <li class="js-form-item js-form-type-radio radio form-check d-inline-block w-100 js-form-item-sort-by form-item-sort-by"> <input data-drupal-selector="edit-sort-by-field-presentation-date" type="radio" id="edit-sort-by-field-presentation-date" name="sort_by" value="field_presentation_date" checked="checked" class="form-radio form-check-input"> <label class="form-check-label" for="edit-sort-by-field-presentation-date"> Newest </label> </li> <li class="js-form-item js-form-type-radio radio form-check d-inline-block w-100 js-form-item-sort-by form-item-sort-by"> <input data-drupal-selector="edit-sort-by-field-presentation-date-1" type="radio" id="edit-sort-by-field-presentation-date-1" name="sort_by" value="field_presentation_date_1" class="form-radio form-check-input"> <label class="form-check-label" for="edit-sort-by-field-presentation-date-1"> Oldest </label> </li> <li class="js-form-item js-form-type-radio radio form-check d-inline-block w-100 js-form-item-sort-by form-item-sort-by"> <input data-drupal-selector="edit-sort-by-search-api-relevance" type="radio" id="edit-sort-by-search-api-relevance" name="sort_by" value="search_api_relevance" class="form-radio form-check-input"> <label class="form-check-label" for="edit-sort-by-search-api-relevance"> Sort by: Relevance </label> </li> <li class="js-form-item js-form-type-radio radio form-check d-inline-block w-100 js-form-item-sort-by form-item-sort-by"> <input data-drupal-selector="edit-sort-by-title" type="radio" id="edit-sort-by-title" name="sort_by" value="title" class="form-radio form-check-input"> <label class="form-check-label" for="edit-sort-by-title"> Title (A-Z) </label> </li> <li class="js-form-item js-form-type-radio radio form-check d-inline-block w-100 js-form-item-sort-by form-item-sort-by"> <input data-drupal-selector="edit-sort-by-title-1" type="radio" id="edit-sort-by-title-1" name="sort_by" value="title_1" class="form-radio form-check-input"> <label class="form-check-label" for="edit-sort-by-title-1"> Title (Z-A) </label> </li> </ul> </div> </div> </div> </fieldset> </div> </div> </div> </form> </div> <div class="view-content row"> <div class="col-12 col-md-6 col-lg-4 mb-4 views-row"> <div data-history-node-id="105474" role="article" class="card shadow h-100"> <div class="card-img-top"> <a href="/education/tutorials/pes_ed_tut_csc_072124_sld" rel="bookmark"> <div class="field field--name-field-part-number field--type-string field--label-hidden field__item"><img src="https://dyh28w2y3a9av.cloudfront.net/public/PES_ED_TUT_CSC_072124_SLD/PES_ED_TUT_CSC_072124_SLD_thumbnail.webp" alt="GM 24 Tutorial - CyberStrike STORMCLOUD: Hands on Cybersecurity Training for Renewable Energy (Slides)" /> </div> </a> </div> <div class="card-body"> <div class="card-text row"> <div class="col-6"> <div class="fontawesome-icons"> <div class="fontawesome-icon"> <i class="far fa-file-pdf" data-fa-transform="" data-fa-mask="" style="--fa-primary-color: #000000; --fa-secondary-color: #000000;"></i> </div> </div> </div> <div class="col-6 text-end">21 Jul 2024</div> </div> <h2 class="h6 card-title"> <a href="/education/tutorials/pes_ed_tut_csc_072124_sld" rel="bookmark"><span class="field field--name-title field--type-string field--label-hidden">GM 24 Tutorial - CyberStrike STORMCLOUD: Hands on Cybersecurity Training for Renewable Energy (Slides)</span> </a> </h5> <div class="field field--name-field-educational-credit field--type-entity-reference field--label-hidden field__item"> <div class="ed-credits row align-items-center"> <div> <span class="ceu">8.00 pdh</span> <span class="ceu">0.80 ceu</span> </div> </div> </div> </div> <ul class="list-group list-group-flush"> <li class="list-group-item"> <div class="field field--name-field-organizational-unit field--type-entity-reference field--label-hidden field__item"> <div class="field field--name-field-pricing-label field--type-string field--label-hidden field__item">PES</div> </div> Members: <span class="price"> $50.00 </span><br> IEEE Members: <span class="price"> $74.00 </span><br> Non-members: <span class="price"> $99.00 </span> </li> </ul> </div> </div> <div class="col-12 col-md-6 col-lg-4 mb-4 views-row"> <div data-history-node-id="105492" role="article" class="card shadow h-100"> <div class="card-img-top"> <a href="/education/tutorials/pes_ed_tut_emt_072124_sld" rel="bookmark"> <div class="field field--name-field-part-number field--type-string field--label-hidden field__item"><img src="https://dyh28w2y3a9av.cloudfront.net/public/PES_ED_TUT_EMT_072124_SLD/PES_ED_TUT_EMT_072124_SLD_thumbnail.webp" alt="GM 24 Tutorial - EMT Modeling and Studies for Renewable Energy Integration (Slides)" /> </div> </a> </div> <div class="card-body"> <div class="card-text row"> <div class="col-6"> <div class="fontawesome-icons"> <div class="fontawesome-icon"> <i class="far fa-file-pdf" data-fa-transform="" data-fa-mask="" style="--fa-primary-color: #000000; --fa-secondary-color: #000000;"></i> </div> </div> </div> <div class="col-6 text-end">21 Jul 2024</div> </div> <h2 class="h6 card-title"> <a href="/education/tutorials/pes_ed_tut_emt_072124_sld" rel="bookmark"><span class="field field--name-title field--type-string field--label-hidden">GM 24 Tutorial - EMT Modeling and Studies for Renewable Energy Integration (Slides)</span> </a> </h5> <div class="field field--name-field-educational-credit field--type-entity-reference field--label-hidden field__item"> <div class="ed-credits row align-items-center"> <div> <span class="ceu">8.00 pdh</span> <span class="ceu">0.80 ceu</span> </div> </div> </div> </div> <ul class="list-group list-group-flush"> <li class="list-group-item"> <div class="field field--name-field-organizational-unit field--type-entity-reference field--label-hidden field__item"> <div class="field field--name-field-pricing-label field--type-string field--label-hidden field__item">PES</div> </div> Members: <span class="price"> $50.00 </span><br> IEEE Members: <span class="price"> $74.00 </span><br> Non-members: <span class="price"> $99.00 </span> </li> </ul> </div> </div> <div class="col-12 col-md-6 col-lg-4 mb-4 views-row"> <div data-history-node-id="105493" role="article" class="card shadow h-100"> <div class="card-img-top"> <a href="/education/tutorials/pes_ed_tut_fra_072124_sld" rel="bookmark"> <div class="field field--name-field-part-number field--type-string field--label-hidden field__item"><img src="https://dyh28w2y3a9av.cloudfront.net/public/PES_ED_TUT_FRA_072124_SLD/PES_ED_TUT_FRA_072124_SLD_thumbnail.webp" alt="GM 24 Tutorial - Fundamentals of Resource Adequacy for Modern Power Systems (Slides)" /> </div> </a> </div> <div class="card-body"> <div class="card-text row"> <div class="col-6"> <div class="fontawesome-icons"> <div class="fontawesome-icon"> <i class="far fa-file-pdf" data-fa-transform="" data-fa-mask="" style="--fa-primary-color: #000000; --fa-secondary-color: #000000;"></i> </div> </div> </div> <div class="col-6 text-end">21 Jul 2024</div> </div> <h2 class="h6 card-title"> <a href="/education/tutorials/pes_ed_tut_fra_072124_sld" rel="bookmark"><span class="field field--name-title field--type-string field--label-hidden">GM 24 Tutorial - Fundamentals of Resource Adequacy for Modern Power Systems (Slides)</span> </a> </h5> <div class="field field--name-field-educational-credit field--type-entity-reference field--label-hidden field__item"> <div class="ed-credits row align-items-center"> <div> <span class="ceu">8.00 pdh</span> <span class="ceu">0.80 ceu</span> </div> </div> </div> </div> <ul class="list-group list-group-flush"> <li class="list-group-item"> <div class="field field--name-field-organizational-unit field--type-entity-reference field--label-hidden field__item"> <div class="field field--name-field-pricing-label field--type-string field--label-hidden field__item">PES</div> </div> Members: <span class="price"> $50.00 </span><br> IEEE Members: <span class="price"> $74.00 </span><br> Non-members: <span class="price"> $99.00 </span> </li> </ul> </div> </div> <div class="col-12 col-md-6 col-lg-4 mb-4 views-row"> <div data-history-node-id="105494" role="article" class="card shadow h-100"> <div class="card-img-top"> <a href="/education/tutorials/pes_ed_tut_gfp_072124_sld" rel="bookmark"> <div class="field field--name-field-part-number field--type-string field--label-hidden field__item"><img src="https://dyh28w2y3a9av.cloudfront.net/public/PES_ED_TUT_GFP_072124_SLD/PES_ED_TUT_GFP_072124_SLD_thumbnail.webp" alt="GM 24 Tutorial - Grid-Forming Power Converters: Bridging Concepts to Analysis and Practical Implementation (Slides)" /> </div> </a> </div> <div class="card-body"> <div class="card-text row"> <div class="col-6"> <div class="fontawesome-icons"> <div class="fontawesome-icon"> <i class="far fa-file-pdf" data-fa-transform="" data-fa-mask="" style="--fa-primary-color: #000000; --fa-secondary-color: #000000;"></i> </div> </div> </div> <div class="col-6 text-end">21 Jul 2024</div> </div> <h2 class="h6 card-title"> <a href="/education/tutorials/pes_ed_tut_gfp_072124_sld" rel="bookmark"><span class="field field--name-title field--type-string field--label-hidden">GM 24 Tutorial - Grid-Forming Power Converters: Bridging Concepts to Analysis and Practical Implementation (Slides)</span> </a> </h5> <div class="field field--name-field-educational-credit field--type-entity-reference field--label-hidden field__item"> <div class="ed-credits row align-items-center"> <div> <span class="ceu">4.00 pdh</span> <span class="ceu">0.40 ceu</span> </div> </div> </div> </div> <ul class="list-group list-group-flush"> <li class="list-group-item"> <div class="field field--name-field-organizational-unit field--type-entity-reference field--label-hidden field__item"> <div class="field field--name-field-pricing-label field--type-string field--label-hidden field__item">PES</div> </div> Members: <span class="price"> $50.00 </span><br> IEEE Members: <span class="price"> $74.00 </span><br> Non-members: <span class="price"> $99.00 </span> </li> </ul> </div> </div> <div class="col-12 col-md-6 col-lg-4 mb-4 views-row"> <div data-history-node-id="105495" role="article" class="card shadow h-100"> <div class="card-img-top"> <a href="/education/tutorials/pes_ed_tut_hma_072124_sld" rel="bookmark"> <div class="field field--name-field-part-number field--type-string field--label-hidden field__item"><img src="https://dyh28w2y3a9av.cloudfront.net/public/PES_ED_TUT_HMA_072124_SLD/PES_ED_TUT_HMA_072124_SLD_thumbnail.webp" alt="GM 24 Tutorial - Harmonics Modeling and Assessment for Interconnection Studies of Inverter-Based Resource (IBR) Plants (Slides)" /> </div> </a> </div> <div class="card-body"> <div class="card-text row"> <div class="col-6"> <div class="fontawesome-icons"> <div class="fontawesome-icon"> <i class="far fa-file-pdf" data-fa-transform="" data-fa-mask="" style="--fa-primary-color: #000000; --fa-secondary-color: #000000;"></i> </div> </div> </div> <div class="col-6 text-end">21 Jul 2024</div> </div> <h2 class="h6 card-title"> <a href="/education/tutorials/pes_ed_tut_hma_072124_sld" rel="bookmark"><span class="field field--name-title field--type-string field--label-hidden">GM 24 Tutorial - Harmonics Modeling and Assessment for Interconnection Studies of Inverter-Based Resource (IBR) Plants (Slides)</span> </a> </h5> <div class="field field--name-field-educational-credit field--type-entity-reference field--label-hidden field__item"> <div class="ed-credits row align-items-center"> <div> <span class="ceu">4.00 pdh</span> <span class="ceu">0.40 ceu</span> </div> </div> </div> </div> <ul class="list-group list-group-flush"> <li class="list-group-item"> <div class="field field--name-field-organizational-unit field--type-entity-reference field--label-hidden field__item"> <div class="field field--name-field-pricing-label field--type-string field--label-hidden field__item">PES</div> </div> Members: <span class="price"> $50.00 </span><br> IEEE Members: <span class="price"> $74.00 </span><br> Non-members: <span class="price"> $99.00 </span> </li> </ul> </div> </div> <div class="col-12 col-md-6 col-lg-4 mb-4 views-row"> <div data-history-node-id="105496" role="article" class="card shadow h-100"> <div class="card-img-top"> <a href="/education/tutorials/pes_ed_tut_der_072124_sld" rel="bookmark"> <div class="field field--name-field-part-number field--type-string field--label-hidden field__item"><img src="https://dyh28w2y3a9av.cloudfront.net/public/PES_ED_TUT_DER_072124_SLD/PES_ED_TUT_DER_072124_SLD_thumbnail.webp" alt="GM 24 Tutorial - IEEE Overview: The DER Interconnection & Interoperability Standard (Slides)" /> </div> </a> </div> <div class="card-body"> <div class="card-text row"> <div class="col-6"> <div class="fontawesome-icons"> <div class="fontawesome-icon"> <i class="far fa-file-pdf" data-fa-transform="" data-fa-mask="" style="--fa-primary-color: #000000; --fa-secondary-color: #000000;"></i> </div> </div> </div> <div class="col-6 text-end">21 Jul 2024</div> </div> <h2 class="h6 card-title"> <a href="/education/tutorials/pes_ed_tut_der_072124_sld" rel="bookmark"><span class="field field--name-title field--type-string field--label-hidden">GM 24 Tutorial - IEEE Overview: The DER Interconnection & Interoperability Standard (Slides)</span> </a> </h5> <div class="field field--name-field-educational-credit field--type-entity-reference field--label-hidden field__item"> <div class="ed-credits row align-items-center"> <div> <span class="ceu">8.00 pdh</span> <span class="ceu">0.80 ceu</span> </div> </div> </div> </div> <ul class="list-group list-group-flush"> <li class="list-group-item"> <div class="field field--name-field-organizational-unit field--type-entity-reference field--label-hidden field__item"> <div class="field field--name-field-pricing-label field--type-string field--label-hidden field__item">PES</div> </div> Members: <span class="price"> $50.00 </span><br> IEEE Members: <span class="price"> $74.00 </span><br> Non-members: <span class="price"> $99.00 </span> </li> </ul> </div> </div> <div class="col-12 col-md-6 col-lg-4 mb-4 views-row"> <div data-history-node-id="105497" role="article" class="card shadow h-100"> <div class="card-img-top"> <a href="/education/tutorials/pes_ed_tut_sii_072124_sld" rel="bookmark"> <div class="field field--name-field-part-number field--type-string field--label-hidden field__item"><img src="https://dyh28w2y3a9av.cloudfront.net/public/PES_ED_TUT_SII_072124_SLD/PES_ED_TUT_SII_072124_SLD_thumbnail.webp" alt="GM 24 Tutorial - IEEE 2800 Tutorial – Understanding Origin and Specifications of Technical Minimum Capability and Performance Requirements (Slides)" /> </div> </a> </div> <div class="card-body"> <div class="card-text row"> <div class="col-6"> <div class="fontawesome-icons"> <div class="fontawesome-icon"> <i class="far fa-file-pdf" data-fa-transform="" data-fa-mask="" style="--fa-primary-color: #000000; --fa-secondary-color: #000000;"></i> </div> </div> </div> <div class="col-6 text-end">21 Jul 2024</div> </div> <h2 class="h6 card-title"> <a href="/education/tutorials/pes_ed_tut_sii_072124_sld" rel="bookmark"><span class="field field--name-title field--type-string field--label-hidden">GM 24 Tutorial - IEEE 2800 Tutorial – Understanding Origin and Specifications of Technical Minimum Capability and Performance Requirements (Slides)</span> </a> </h5> <div class="field field--name-field-educational-credit field--type-entity-reference field--label-hidden field__item"> <div class="ed-credits row align-items-center"> <div> <span class="ceu">8.00 pdh</span> <span class="ceu">0.80 ceu</span> </div> </div> </div> </div> <ul class="list-group list-group-flush"> <li class="list-group-item"> <div class="field field--name-field-organizational-unit field--type-entity-reference field--label-hidden field__item"> <div class="field field--name-field-pricing-label field--type-string field--label-hidden field__item">PES</div> </div> Members: <span class="price"> $50.00 </span><br> IEEE Members: <span class="price"> $74.00 </span><br> Non-members: <span class="price"> $99.00 </span> </li> </ul> </div> </div> <div class="col-12 col-md-6 col-lg-4 mb-4 views-row"> <div data-history-node-id="105498" role="article" class="card shadow h-100"> <div class="card-img-top"> <a href="/education/tutorials/pes_ed_tut_psi_072124_sld" rel="bookmark"> <div class="field field--name-field-part-number field--type-string field--label-hidden field__item"><img src="https://dyh28w2y3a9av.cloudfront.net/public/PES_ED_TUT_PSI_072124_SLD/PES_ED_TUT_PSI_072124_SLD_thumbnail.webp" alt="GM 24 Tutorial - Power Systems Integration Data and Algorithms Platform for Steady-State and Transients Analysis (Slides)" /> </div> </a> </div> <div class="card-body"> <div class="card-text row"> <div class="col-6"> <div class="fontawesome-icons"> <div class="fontawesome-icon"> <i class="far fa-file-pdf" data-fa-transform="" data-fa-mask="" style="--fa-primary-color: #000000; --fa-secondary-color: #000000;"></i> </div> </div> </div> <div class="col-6 text-end">21 Jul 2024</div> </div> <h2 class="h6 card-title"> <a href="/education/tutorials/pes_ed_tut_psi_072124_sld" rel="bookmark"><span class="field field--name-title field--type-string field--label-hidden">GM 24 Tutorial - Power Systems Integration Data and Algorithms Platform for Steady-State and Transients Analysis (Slides)</span> </a> </h5> <div class="field field--name-field-educational-credit field--type-entity-reference field--label-hidden field__item"> <div class="ed-credits row align-items-center"> <div> <span class="ceu">8.00 pdh</span> <span class="ceu">0.80 ceu</span> </div> </div> </div> </div> <ul class="list-group list-group-flush"> <li class="list-group-item"> <div class="field field--name-field-organizational-unit field--type-entity-reference field--label-hidden field__item"> <div class="field field--name-field-pricing-label field--type-string field--label-hidden field__item">PES</div> </div> Members: <span class="price"> $50.00 </span><br> IEEE Members: <span class="price"> $74.00 </span><br> Non-members: <span class="price"> $99.00 </span> </li> </ul> </div> </div> <div class="col-12 col-md-6 col-lg-4 mb-4 views-row"> <div data-history-node-id="105499" role="article" class="card shadow h-100"> <div class="card-img-top"> <a href="/education/tutorials/pes_ed_tut_pst_072124_sld" rel="bookmark"> <div class="field field--name-field-part-number field--type-string field--label-hidden field__item"><img src="https://dyh28w2y3a9av.cloudfront.net/public/PES_ED_TUT_PST_072124_SLD/PES_ED_TUT_PST_072124_SLD_thumbnail.webp" alt="GM 24 Tutorial - Power System T&D Planning & Operations – Transformations Through DER Integration, PMU Data Analytics, and Edge Device (Slides)" /> </div> </a> </div> <div class="card-body"> <div class="card-text row"> <div class="col-6"> <div class="fontawesome-icons"> <div class="fontawesome-icon"> <i class="far fa-file-pdf" data-fa-transform="" data-fa-mask="" style="--fa-primary-color: #000000; --fa-secondary-color: #000000;"></i> </div> </div> </div> <div class="col-6 text-end">21 Jul 2024</div> </div> <h2 class="h6 card-title"> <a href="/education/tutorials/pes_ed_tut_pst_072124_sld" rel="bookmark"><span class="field field--name-title field--type-string field--label-hidden">GM 24 Tutorial - Power System T&D Planning & Operations – Transformations Through DER Integration, PMU Data Analytics, and Edge Device (Slides)</span> </a> </h5> <div class="field field--name-field-educational-credit field--type-entity-reference field--label-hidden field__item"> <div class="ed-credits row align-items-center"> <div> <span class="ceu">8.00 pdh</span> <span class="ceu">0.80 ceu</span> </div> </div> </div> </div> <ul class="list-group list-group-flush"> <li class="list-group-item"> <div class="field field--name-field-organizational-unit field--type-entity-reference field--label-hidden field__item"> <div class="field field--name-field-pricing-label field--type-string field--label-hidden field__item">PES</div> </div> Members: <span class="price"> $50.00 </span><br> IEEE Members: <span class="price"> $74.00 </span><br> Non-members: <span class="price"> $99.00 </span> </li> </ul> </div> </div> <div class="col-12 col-md-6 col-lg-4 mb-4 views-row"> <div data-history-node-id="105502" role="article" class="card shadow h-100"> <div class="card-img-top"> <a href="/education/tutorials/pes_ed_tut_uvt_072124_sld" rel="bookmark"> <div class="field field--name-field-part-number field--type-string field--label-hidden field__item"><img src="https://dyh28w2y3a9av.cloudfront.net/public/PES_ED_TUT_UVT_072124_SLD/PES_ED_TUT_UVT_072124_SLD_thumbnail.webp" alt="GM 24 Tutorial - Understanding Voltage Stability: Theory to Industry Practice Considering Inverter Based Resources (Slides)" /> </div> </a> </div> <div class="card-body"> <div class="card-text row"> <div class="col-6"> <div class="fontawesome-icons"> <div class="fontawesome-icon"> <i class="far fa-file-pdf" data-fa-transform="" data-fa-mask="" style="--fa-primary-color: #000000; --fa-secondary-color: #000000;"></i> </div> </div> </div> <div class="col-6 text-end">21 Jul 2024</div> </div> <h2 class="h6 card-title"> <a href="/education/tutorials/pes_ed_tut_uvt_072124_sld" rel="bookmark"><span class="field field--name-title field--type-string field--label-hidden">GM 24 Tutorial - Understanding Voltage Stability: Theory to Industry Practice Considering Inverter Based Resources (Slides)</span> </a> </h5> <div class="field field--name-field-educational-credit field--type-entity-reference field--label-hidden field__item"> <div class="ed-credits row align-items-center"> <div> <span class="ceu">4.00 pdh</span> <span class="ceu">0.40 ceu</span> </div> </div> </div> </div> <ul class="list-group list-group-flush"> <li class="list-group-item"> <div class="field field--name-field-organizational-unit field--type-entity-reference field--label-hidden field__item"> <div class="field field--name-field-pricing-label field--type-string field--label-hidden field__item">PES</div> </div> Members: <span class="price"> $50.00 </span><br> IEEE Members: <span class="price"> $74.00 </span><br> Non-members: <span class="price"> $99.00 </span> </li> </ul> </div> </div> <div class="col-12 col-md-6 col-lg-4 mb-4 views-row"> <div data-history-node-id="104649" role="article" class="card shadow h-100"> <div class="card-img-top"> <a href="/education/tutorials/pes_ed_tut_ibr_050624_sld" rel="bookmark"> <div class="field field--name-field-part-number field--type-string field--label-hidden field__item"><img src="https://dyh28w2y3a9av.cloudfront.net/public/PES_ED_TUT_IBR_050624_SLD/PES_ED_TUT_IBR_050624_SLD_thumbnail.webp" alt="T&D '24 Tutorial: Inverter Based Resource Fault Response and Short-Circuit Modeling (Slides)" /> </div> </a> </div> <div class="card-body"> <div class="card-text row"> <div class="col-6"> <div class="fontawesome-icons"> <div class="fontawesome-icon"> <i class="far fa-file-pdf" data-fa-transform="" data-fa-mask="" style="--fa-primary-color: #000000; --fa-secondary-color: #000000;"></i> </div> </div> </div> <div class="col-6 text-end">29 Apr 2024</div> </div> <h2 class="h6 card-title"> <a href="/education/tutorials/pes_ed_tut_ibr_050624_sld" rel="bookmark"><span class="field field--name-title field--type-string field--label-hidden">T&D '24 Tutorial: Inverter Based Resource Fault Response and Short-Circuit Modeling (Slides)</span> </a> </h5> <div class="field field--name-field-educational-credit field--type-entity-reference field--label-hidden field__item"> <div class="ed-credits row align-items-center"> <div> <span class="ceu">8.00 pdh</span> <span class="ceu">0.80 ceu</span> </div> </div> </div> </div> <ul class="list-group list-group-flush"> <li class="list-group-item"> <div class="field field--name-field-organizational-unit field--type-entity-reference field--label-hidden field__item"> <div class="field field--name-field-pricing-label field--type-string field--label-hidden field__item">PES</div> </div> Members: <span class="price"> $50.00 </span><br> IEEE Members: <span class="price"> $74.00 </span><br> Non-members: <span class="price"> $99.00 </span> </li> </ul> </div> </div> <div class="col-12 col-md-6 col-lg-4 mb-4 views-row"> <div data-history-node-id="104651" role="article" class="card shadow h-100"> <div class="card-img-top"> <a href="/education/tutorials/pes_ed_tut_gd_050624_sld" rel="bookmark"> <div class="field field--name-field-part-number field--type-string field--label-hidden field__item"><img src="https://dyh28w2y3a9av.cloudfront.net/public/PES_ED_TUT_GD_050624_SLD/PES_ED_TUT_GD_050624_SLD_thumbnail.webp" alt="T&D '24 Tutorial: Grounding design and analysis for personnel safety in wind and solar power plants (Slides)" /> </div> </a> </div> <div class="card-body"> <div class="card-text row"> <div class="col-6"> <div class="fontawesome-icons"> <div class="fontawesome-icon"> <i class="far fa-file-pdf" data-fa-transform="" data-fa-mask="" style="--fa-primary-color: #000000; --fa-secondary-color: #000000;"></i> </div> </div> </div> <div class="col-6 text-end">29 Apr 2024</div> </div> <h2 class="h6 card-title"> <a href="/education/tutorials/pes_ed_tut_gd_050624_sld" rel="bookmark"><span class="field field--name-title field--type-string field--label-hidden">T&D '24 Tutorial: Grounding design and analysis for personnel safety in wind and solar power plants (Slides)</span> </a> </h5> <div class="field field--name-field-educational-credit field--type-entity-reference field--label-hidden field__item"> <div class="ed-credits row align-items-center"> <div> <span class="ceu">4.00 pdh</span> <span class="ceu">0.40 ceu</span> </div> </div> </div> </div> <ul class="list-group list-group-flush"> <li class="list-group-item"> <div class="field field--name-field-organizational-unit field--type-entity-reference field--label-hidden field__item"> <div class="field field--name-field-pricing-label field--type-string field--label-hidden field__item">PES</div> </div> Members: <span class="price"> $50.00 </span><br> IEEE Members: <span class="price"> $74.00 </span><br> Non-members: <span class="price"> $99.00 </span> </li> </ul> </div> </div> </div> <nav aria-label="pagination-heading"> <h4 id="pagination-heading" class="visually-hidden">Pagination</h4> <ul class="pagination js-pager__items"> <li class="page-item active"> <span class="page-link">1</span> </li> <li class="page-item "> <a href="?f%5B0%5D=tags%3A84437&page=1" title="" class="page-link">2</a> </li> <li class="page-item "> <a href="?f%5B0%5D=tags%3A84437&page=2" title="" class="page-link">3</a> </li> <li class="page-item "> <a href="?f%5B0%5D=tags%3A84437&page=3" title="" class="page-link">4</a> </li> <li class="page-item "> <a href="?f%5B0%5D=tags%3A84437&page=4" title="" class="page-link">5</a> </li> <li class="page-item "> <a href="?f%5B0%5D=tags%3A84437&page=5" title="" class="page-link">6</a> </li> <li class="page-item "> <a href="?f%5B0%5D=tags%3A84437&page=6" title="" class="page-link">7</a> </li> <li class="page-item "> <a href="?f%5B0%5D=tags%3A84437&page=7" title="" class="page-link">8</a> </li> <li class="page-item "> <a href="?f%5B0%5D=tags%3A84437&page=8" title="" class="page-link">9</a> </li> <li class="page-item" role="presentation"><span class="page-link">…</span></li> <li class="page-item"> <a href="?f%5B0%5D=tags%3A84437&page=1" title="Go to next page" rel="next" class="page-link"> <span aria-hidden="true">Next ›</span> <span class="visually-hidden">Next page</span> </a> </li> <li class="page-item"> <a href="?f%5B0%5D=tags%3A84437&page=16" title="Go to last page" class="page-link"> <span aria-hidden="true">Last »</span> <span class="visually-hidden">Last page</span> </a> </li> </ul> </nav> </div> </div> </div> </div> </section> </main> <div class="sidebar_second sidebar col-md-4 order-last p-4" id="sidebar_second"> <aside class="section" role="complementary"> <div class="views-element-container block block-views block-views-blocksidebar-cta-block-1" id="block-views-block-sidebar-cta-block-1"> <div class="content"> <div><div class="view view-sidebar-cta view-id-sidebar_cta view-display-id-block_1 js-view-dom-id-51b6dfd9e1c4495162f14319a6668a0bbf2f08e83879feb5b08d1c7d28c6472b"> <div class="view-content row"> <div class="views-row"> <div class="membership-cta mb-5"> <div class="views-field views-field-field-sidebar-call-to-action"><div class="field-content"><h3>Become a PES Member</h3> <p>Enhance your education and professional development. Join the IEEE Power & Energy Society to access webinars, conference presentations, workshops, and more on the PES Resource Center.<br /><a href="https://www.ieee.org/membership-catalog/productdetail/showProductDetailPage.html?product=MEMPE031">Get Started »</a></p></div></div> </div> </div> </div> </div> </div> </div> </div> <div id="block-searchfilters-2" class="block-content-basic block block-block-content block-block-content66d8b31a-4203-4463-9902-21ab0bf075fc"> <div class="content"> <div class="clearfix text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item"><h2 class="mb-0">Search Filters <i class="fa-solid fa-filter"> </i></h2> <p>Select one or more search filters below to refine the resources displayed on this page.</p> </div> </div> </div> <div data-drupal-facets-summary-id="category_search_summary" id="block-categorysearchsummary" class="block block-facets-summary block-facets-summary-blockcategory-search-summary"> <div class="content"> <ul><li class="facet-summary-item--clear"><a href="/education/tutorials">Clear Filters</a></li></ul> </div> </div> <div class="facet-inactive block-facets-ajax js-facet-block-id-category_3 block-facet--checkbox block block-facets block-facet-blockcategory" id="block-category-3"> <h4 class="text-dark h5">Category</h4> <div class="content"> <div class="facets-widget-checkbox"> <ul data-drupal-facet-id="category" data-drupal-facet-alias="category" class="facet-inactive js-facets-checkbox-links list-group list-group-flush item-list__checkbox"><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=category%3A67102&f%5B1%5D=tags%3A84437" rel="nofollow" data-drupal-facet-item-id="category-67102" data-drupal-facet-item-value="67102" data-drupal-facet-item-count="195"><span class="facet-item__value">education</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">195</span></span> </a></li><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=category%3A67203&f%5B1%5D=tags%3A84437" rel="nofollow" data-drupal-facet-item-id="category-67203" data-drupal-facet-item-value="67203" data-drupal-facet-item-count="195"><span class="facet-item__value">tutorials</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">195</span></span> </a></li></ul> </div> </div> </div> <div class="facet-inactive block-facets-ajax js-facet-block-id-mediatype_2 block-facet--checkbox block block-facets block-facet-blockmedia-type-cat" id="block-mediatype-2"> <h4 class="text-dark h5">Media Type</h4> <div class="content"> <div class="facets-widget-checkbox"> <ul data-drupal-facet-id="media_type_cat" data-drupal-facet-alias="media_type_cat" class="facet-inactive js-facets-checkbox-links list-group list-group-flush item-list__checkbox"><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=media_type_cat%3A16406&f%5B1%5D=tags%3A84437" rel="nofollow" data-drupal-facet-item-id="media-type-cat-16406" data-drupal-facet-item-value="16406" data-drupal-facet-item-count="113"><span class="facet-item__value">PDF</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">113</span></span> </a></li><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=media_type_cat%3A96709&f%5B1%5D=tags%3A84437" rel="nofollow" data-drupal-facet-item-id="media-type-cat-96709" data-drupal-facet-item-value="96709" data-drupal-facet-item-count="78"><span class="facet-item__value">Digital Video Content</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">78</span></span> </a></li><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=media_type_cat%3A41088&f%5B1%5D=tags%3A84437" rel="nofollow" data-drupal-facet-item-id="media-type-cat-41088" data-drupal-facet-item-value="41088" data-drupal-facet-item-count="4"><span class="facet-item__value">All</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">4</span></span> </a></li></ul> </div> </div> </div> <div class="facet-inactive block-facets-ajax js-facet-block-id-topics_2 block-facet--checkbox block block-facets block-facet-blocktopics-cat" id="block-topics-2"> <h4 class="text-dark h5">Topics</h4> <div class="content"> <div class="facets-widget-checkbox"> <ul data-drupal-facet-id="topics_cat" data-drupal-facet-alias="topics_cat" class="facet-inactive js-facets-checkbox-links list-group list-group-flush item-list__checkbox"><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=tags%3A84437&f%5B1%5D=topics_cat%3A101693" rel="nofollow" data-drupal-facet-item-id="topics-cat-101693" data-drupal-facet-item-value="101693" data-drupal-facet-item-count="54"><span class="facet-item__value">2020</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">54</span></span> </a></li><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=tags%3A84437&f%5B1%5D=topics_cat%3A101697" rel="nofollow" data-drupal-facet-item-id="topics-cat-101697" data-drupal-facet-item-value="101697" data-drupal-facet-item-count="39"><span class="facet-item__value">2021</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">39</span></span> </a></li><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=tags%3A84437&f%5B1%5D=topics_cat%3A101701" rel="nofollow" data-drupal-facet-item-id="topics-cat-101701" data-drupal-facet-item-value="101701" data-drupal-facet-item-count="24"><span class="facet-item__value">2022</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">24</span></span> </a></li><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=tags%3A84437&f%5B1%5D=topics_cat%3A101691" rel="nofollow" data-drupal-facet-item-id="topics-cat-101691" data-drupal-facet-item-value="101691" data-drupal-facet-item-count="24"><span class="facet-item__value">2024</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">24</span></span> </a></li><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=tags%3A84437&f%5B1%5D=topics_cat%3A101708" rel="nofollow" data-drupal-facet-item-id="topics-cat-101708" data-drupal-facet-item-value="101708" data-drupal-facet-item-count="17"><span class="facet-item__value">2023</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">17</span></span> </a></li><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=tags%3A84437&f%5B1%5D=topics_cat%3A101703" rel="nofollow" data-drupal-facet-item-id="topics-cat-101703" data-drupal-facet-item-value="101703" data-drupal-facet-item-count="14"><span class="facet-item__value">2017</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">14</span></span> </a></li><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=tags%3A84437&f%5B1%5D=topics_cat%3A101699" rel="nofollow" data-drupal-facet-item-id="topics-cat-101699" data-drupal-facet-item-value="101699" data-drupal-facet-item-count="10"><span class="facet-item__value">2019</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">10</span></span> </a></li><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=tags%3A84437&f%5B1%5D=topics_cat%3A102355" rel="nofollow" data-drupal-facet-item-id="topics-cat-102355" data-drupal-facet-item-value="102355" data-drupal-facet-item-count="8"><span class="facet-item__value">2016</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">8</span></span> </a></li><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=tags%3A84437&f%5B1%5D=topics_cat%3A102814" rel="nofollow" data-drupal-facet-item-id="topics-cat-102814" data-drupal-facet-item-value="102814" data-drupal-facet-item-count="4"><span class="facet-item__value">2018</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">4</span></span> </a></li><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=tags%3A84437&f%5B1%5D=topics_cat%3A107842" rel="nofollow" data-drupal-facet-item-id="topics-cat-107842" data-drupal-facet-item-value="107842" data-drupal-facet-item-count="1"><span class="facet-item__value">2001</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">1</span></span> </a></li></ul> </div> </div> </div> <div class="facet-active block-facets-ajax js-facet-block-id-tags block-facet--checkbox block block-facets block-facet-blocktags" id="block-tags"> <h4 class="text-dark h5">Tags</h4> <div class="content"> <div class="facets-widget-checkbox"> <ul data-drupal-facet-id="tags" data-drupal-facet-alias="tags" class="facet-active js-facets-checkbox-links list-group list-group-flush item-list__checkbox"><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials" rel="nofollow" class="is-active" data-drupal-facet-item-id="tags-84437" data-drupal-facet-item-value="84437" data-drupal-facet-item-count="195"> <span class="facet-item__status js-facet-deactivate">(-)</span> <span class="facet-item__value">pes</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">195</span></span> </a></li><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=tags%3A84437&f%5B1%5D=tags%3A88178" rel="nofollow" data-drupal-facet-item-id="tags-88178" data-drupal-facet-item-value="88178" data-drupal-facet-item-count="88"><span class="facet-item__value">slides</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">88</span></span> </a></li><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=tags%3A84437&f%5B1%5D=tags%3A90883" rel="nofollow" data-drupal-facet-item-id="tags-90883" data-drupal-facet-item-value="90883" data-drupal-facet-item-count="70"><span class="facet-item__value">tutorial</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">70</span></span> </a></li><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=tags%3A68382&f%5B1%5D=tags%3A84437" rel="nofollow" data-drupal-facet-item-id="tags-68382" data-drupal-facet-item-value="68382" data-drupal-facet-item-count="34"><span class="facet-item__value">2020 pes gm</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">34</span></span> </a></li><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=tags%3A84437&f%5B1%5D=tags%3A89157" rel="nofollow" data-drupal-facet-item-id="tags-89157" data-drupal-facet-item-value="89157" data-drupal-facet-item-count="30"><span class="facet-item__value">storage</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">30</span></span> </a></li><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=tags%3A84437&f%5B1%5D=tags%3A91487" rel="nofollow" data-drupal-facet-item-id="tags-91487" data-drupal-facet-item-value="91487" data-drupal-facet-item-count="30"><span class="facet-item__value">video</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">30</span></span> </a></li><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=tags%3A72457&f%5B1%5D=tags%3A84437" rel="nofollow" data-drupal-facet-item-id="tags-72457" data-drupal-facet-item-value="72457" data-drupal-facet-item-count="25"><span class="facet-item__value">control</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">25</span></span> </a></li><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=tags%3A77011&f%5B1%5D=tags%3A84437" rel="nofollow" data-drupal-facet-item-id="tags-77011" data-drupal-facet-item-value="77011" data-drupal-facet-item-count="22"><span class="facet-item__value">grid</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">22</span></span> </a></li><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=tags%3A80872&f%5B1%5D=tags%3A84437" rel="nofollow" data-drupal-facet-item-id="tags-80872" data-drupal-facet-item-value="80872" data-drupal-facet-item-count="20"><span class="facet-item__value">machine learning</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">20</span></span> </a></li><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=tags%3A84437&f%5B1%5D=tags%3A85299" rel="nofollow" data-drupal-facet-item-id="tags-85299" data-drupal-facet-item-value="85299" data-drupal-facet-item-count="17"><span class="facet-item__value">presentation</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">17</span></span> </a></li><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=tags%3A71408&f%5B1%5D=tags%3A84437" rel="nofollow" data-drupal-facet-item-id="tags-71408" data-drupal-facet-item-value="71408" data-drupal-facet-item-count="16"><span class="facet-item__value">ceu</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">16</span></span> </a></li><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=tags%3A84296&f%5B1%5D=tags%3A84437" rel="nofollow" data-drupal-facet-item-id="tags-84296" data-drupal-facet-item-value="84296" data-drupal-facet-item-count="16"><span class="facet-item__value">pdh</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">16</span></span> </a></li><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=tags%3A84437&f%5B1%5D=tags%3A91531" rel="nofollow" data-drupal-facet-item-id="tags-91531" data-drupal-facet-item-value="91531" data-drupal-facet-item-count="16"><span class="facet-item__value">video tutorial</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">16</span></span> </a></li><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=tags%3A75133&f%5B1%5D=tags%3A84437" rel="nofollow" data-drupal-facet-item-id="tags-75133" data-drupal-facet-item-value="75133" data-drupal-facet-item-count="14"><span class="facet-item__value">energy</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">14</span></span> </a></li><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=tags%3A76395&f%5B1%5D=tags%3A84437" rel="nofollow" data-drupal-facet-item-id="tags-76395" data-drupal-facet-item-value="76395" data-drupal-facet-item-count="14"><span class="facet-item__value">fundamentals</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">14</span></span> </a></li><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=tags%3A84437&f%5B1%5D=tags%3A89607" rel="nofollow" data-drupal-facet-item-id="tags-89607" data-drupal-facet-item-value="89607" data-drupal-facet-item-count="14"><span class="facet-item__value">synchrophasor</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">14</span></span> </a></li><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=tags%3A68374&f%5B1%5D=tags%3A84437" rel="nofollow" data-drupal-facet-item-id="tags-68374" data-drupal-facet-item-value="68374" data-drupal-facet-item-count="13"><span class="facet-item__value">2017 general meeting</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">13</span></span> </a></li><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=tags%3A68375&f%5B1%5D=tags%3A84437" rel="nofollow" data-drupal-facet-item-id="tags-68375" data-drupal-facet-item-value="68375" data-drupal-facet-item-count="13"><span class="facet-item__value">2017 pes gm tutorial</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">13</span></span> </a></li><li class="facet-item list-group-item border-bottom bg-transparent"><a href="/education/tutorials?f%5B0%5D=tags%3A70685&f%5B1%5D=tags%3A84437" rel="nofollow" data-drupal-facet-item-id="tags-70685" data-drupal-facet-item-value="70685" data-drupal-facet-item-count="13"><span class="facet-item__value">big data</span> <span class="small"><span class="badge bg-secondary rounded-pill ms-1" style="font-size: .65rem; vertical-align: middle;">13</span></span> </a></li></ul> </div> </div> </div> </aside> </div> </div> </div> </div> <div class="container-fluid sub-footer"> <div class="views-element-container block block-views block-views-blockfooter-banner-block-1" id="block-views-block-footer-banner-block-1"> <div class="content"> <div><div class="js-view-dom-id-2b5b712d7b82809aa8f95ddad5081b8788a0caad1cc89f9e7c28d48cbd7b3184"> </div> </div> </div> </div> </div> <div class="container-fluid footer bg-dark text-white"> <footer> <div class="row mx-4 py-4"> <div class="col-12 text-center small mb-2"> <div class="footer-menu"> <a href="https://www.ieee.org/">IEEE Home</a> <a href="https://www.ieee.org/about/contact.html">Contact & Support</a> <a href="https://www.ieee.org/accessibility-statement.html">Accessibility</a> <a href="https://www.ieee.org/about/corporate/governance/p9-26.html">Nondiscrimination Policy</a> <a href="https://secure.ethicspoint.com/domain/media/en/gui/20410/index.html">IEEE Ethics Reporting</a> <a href="https://www.ieee.org/security-privacy.html">IEEE Privacy Policy</a> <a href="https://www.ieee.org/about/help/site-terms-conditions.html">Terms</a> </div> </div> <div class="col-12 text-center small"> <div id="block-copyrightblock-2" class="block-content-copyright_block"> <p class="content"> © Copyright 2024 IEEE – All rights reserved. A public charity, IEEE is the world's largest technical professional organization dedicated to advancing technology for the benefit of humanity. </p> </div> </div> </div> </footer> </div> </div> </div> <style> :root { --domcol: #00b5e2; } </style> </div> <script src="/sites/default/files/js/js_Hab6U62qWMvec3lRFJWTj19vYHiYfgioWezxmtSEDd4.js"></script> <script src="//cdn.jsdelivr.net/npm/bootstrap@5.2.0/dist/js/bootstrap.bundle.min.js"></script> <script src="/sites/default/files/js/js_HPhRTItoiewsrkUsiexlJWVaoS2vWlYe5meYHjNWuGA.js"></script> <script src="//platform-api.sharethis.com/js/sharethis.js#property=65bbcb404df8ae001978a13f&product=sop" async></script> <script src="/sites/default/files/js/js_WQwuZgCvLLF3hKOtvUXEp00Bfoy1i5MErmcZUtBqX0k.js"></script> <script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","licenseKey":"NRJS-f45112c3e159cadd17f","applicationID":"1098804788","transactionName":"NVFRNxZZDBVUVhFaVgwbcgAQUQ0IGnEXRkkDWG8gC0oHOnBbEVpNG2hwDApMEAlZWQBBZSdaRwoQQTQPUEImXFcWRlwPCF0QSwtDDFZO","queueTime":0,"applicationTime":1371,"atts":"GRZSQV5DHxs=","errorBeacon":"bam.nr-data.net","agent":""}</script></body> </html>