CINXE.COM

Write

<!doctype html><html lang="en"><head><meta charset="utf-8"><link rel="shortcut icon" href="https://media.geeksforgeeks.org/wp-content/cdn-uploads/gfg_favicon.png"><meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name="theme-color" content="#000000"><link rel="manifest" href="/manifest.json"><link href="https://fonts.googleapis.com/css?family=Open+Sans:400,600,700,800" rel="stylesheet"><link rel="stylesheet" href="https://use.typekit.net/mrg0hpc.css"><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin/><link href="https://fonts.googleapis.com/css2?family=Nunito+Sans:ital,opsz,wght@0,6..12,200..1000;1,6..12,200..1000&family=Nunito:ital,wght@0,200..1000;1,200..1000&display=swap" rel="stylesheet"/><link href="https://fonts.googleapis.com/css?family=Open+Sans:400,600,700,800" rel="stylesheet"/><script>// Centralized configuration for script URLs and environment settings const config = { scripts: { react: { main: "https://unpkg.com/react@18.2.0/umd/react.production.min.js", fallback: "https://cdn.jsdelivr.net/npm/react@18.2/umd/react.development.js" }, reactDOM: { main: "https://unpkg.com/react-dom@18.2.0/umd/react-dom.production.min.js", fallback: "https://cdn.jsdelivr.net/npm/react-dom@18.2/umd/react-dom.development.js" }, supportScripts: [ "https://assets.geeksforgeeks.org/support/babel.min.js", "https://assets.geeksforgeeks.org/support/index.js" ], codeTabs: "https://assets.geeksforgeeks.org/codetabs/latest/codetabs.js", gfgTex: "https://assets.geeksforgeeks.org/gfgtex/latest/GfgTex.min.js", gfgCarosal: "https://assets.geeksforgeeks.org/gfg-carousel/latest/gfg-carousel.min.js" }, environment: "production" }; // Function to add a script tag with optional environment attribute function addScriptTag(url, env) { return new Promise(function (resolve, reject) { const script = document.createElement('script'); script.onload = resolve; script.onerror = reject; script.src = url; if (env) { script.setAttribute('environment', env); } document.head.appendChild(script); }); } // Function to load scripts with fallback option async function loadScript() { try { // Load React and ReactDOM with fallback support await addScriptTag(config.scripts.react.main) .catch(() => addScriptTag(config.scripts.react.fallback)); await addScriptTag(config.scripts.reactDOM.main) .catch(() => addScriptTag(config.scripts.reactDOM.fallback)); // Load support scripts for (const script of config.scripts.supportScripts) { await addScriptTag(script); } } catch (error) { console.error(error); } finally { // Load additional scripts, these will be loaded regardless of previous success/failure await addScriptTag(config.scripts.codeTabs, config.environment); await addScriptTag(config.scripts.gfgTex, config.environment); await addScriptTag(config.scripts.gfgCarosal, config.environment); } } // Initiate script loading loadScript().then(() => { }).catch((err) => { console.error(err); });</script><link rel="stylesheet" href="https://assets.geeksforgeeks.org/support/index.css"><title>Write</title><script type="text/javascript">!function(t,e,n,c,a,r,s){t[n]=t[n]||function(){(t[n].q=t[n].q||[]).push(arguments)},(r=e.createElement(c)).async=1,r.src="https://www.clarity.ms/tag/bvqcyda876",(s=e.getElementsByTagName(c)[0]).parentNode.insertBefore(r,s)}(window,document,"clarity","script")</script><script async src="https://www.googletagmanager.com/gtag/js?id=G-L4782KYPYB"></script><script>function gtag(){dataLayer.push(arguments)}window.dataLayer=window.dataLayer||[],gtag("js",new Date),gtag("config","G-L4782KYPYB")</script><script>!function(e,t,a,n,g){e[n]=e[n]||[],e[n].push({"gtm.start":(new Date).getTime(),event:"gtm.js"});var m=t.getElementsByTagName(a)[0],r=t.createElement(a);r.async=!0,r.src="https://www.googletagmanager.com/gtm.js?id=GTM-M3GC2G8",m.parentNode.insertBefore(r,m)}(window,document,"script","dataLayer")</script><link href="/static/css/17.271e2940.chunk.css" rel="stylesheet"><link href="/static/css/main.709b0289.chunk.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-M3GC2G8" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript><div id="root"></div><div id="portal"></div><script>!function(o){function e(e){for(var t,c,r=e[0],n=e[1],f=e[2],a=0,d=[];a<r.length;a++)c=r[a],Object.prototype.hasOwnProperty.call(l,c)&&l[c]&&d.push(l[c][0]),l[c]=0;for(t in n)Object.prototype.hasOwnProperty.call(n,t)&&(o[t]=n[t]);for(b&&b(e);d.length;)d.shift()();return i.push.apply(i,f||[]),u()}function u(){for(var e,t=0;t<i.length;t++){for(var c=i[t],r=!0,n=1;n<c.length;n++){var f=c[n];0!==l[f]&&(r=!1)}r&&(i.splice(t--,1),e=s(s.s=c[0]))}return e}var c={},d={12:0},l={12:0},i=[];function s(e){if(c[e])return c[e].exports;var t=c[e]={i:e,l:!1,exports:{}};return o[e].call(t.exports,t,t.exports,s),t.l=!0,t.exports}s.e=function(i){var e=[];d[i]?e.push(d[i]):0!==d[i]&&{2:1,7:1,8:1,9:1,10:1,13:1,14:1,15:1,16:1,19:1,20:1,21:1,22:1,23:1,24:1,25:1,26:1,27:1,29:1,30:1,34:1,35:1,36:1,37:1,40:1}[i]&&e.push(d[i]=new Promise(function(e,r){for(var t="static/css/"+({}[i]||i)+"."+{0:"31d6cfe0",1:"31d6cfe0",2:"a059b6e8",3:"31d6cfe0",4:"31d6cfe0",5:"31d6cfe0",6:"31d6cfe0",7:"81fc19ac",8:"16443565",9:"16be8431",10:"7ad49f41",13:"3216219d",14:"7c32c325",15:"7c32c325",16:"caf927a6",18:"31d6cfe0",19:"741dbe71",20:"0b99a268",21:"924b3b3c",22:"a8476de1",23:"11c3b55c",24:"11c3b55c",25:"ee1266de",26:"ee1266de",27:"9aaf4ad2",28:"31d6cfe0",29:"7276dc13",30:"ebeb5d66",31:"31d6cfe0",32:"31d6cfe0",33:"31d6cfe0",34:"f43c1c19",35:"f43c1c19",36:"63567cac",37:"7187b890",38:"31d6cfe0",39:"31d6cfe0",40:"63567cac",41:"31d6cfe0",42:"31d6cfe0",43:"31d6cfe0",44:"31d6cfe0",45:"31d6cfe0",46:"31d6cfe0",47:"31d6cfe0",48:"31d6cfe0",49:"31d6cfe0",50:"31d6cfe0",51:"31d6cfe0",52:"31d6cfe0",53:"31d6cfe0",54:"31d6cfe0",55:"31d6cfe0",56:"31d6cfe0",57:"31d6cfe0",58:"31d6cfe0",59:"31d6cfe0",60:"31d6cfe0",61:"31d6cfe0",62:"31d6cfe0",63:"31d6cfe0",64:"31d6cfe0",65:"31d6cfe0",66:"31d6cfe0",67:"31d6cfe0"}[i]+".chunk.css",n=s.p+t,c=document.getElementsByTagName("link"),f=0;f<c.length;f++){var a=(o=c[f]).getAttribute("data-href")||o.getAttribute("href");if("stylesheet"===o.rel&&(a===t||a===n))return e()}var d=document.getElementsByTagName("style");for(f=0;f<d.length;f++){var o;if((a=(o=d[f]).getAttribute("data-href"))===t||a===n)return e()}var u=document.createElement("link");u.rel="stylesheet",u.type="text/css",u.onload=e,u.onerror=function(e){var t=e&&e.target&&e.target.src||n,c=new Error("Loading CSS chunk "+i+" failed.\n("+t+")");c.request=t,r(c)},u.href=n,document.getElementsByTagName("head")[0].appendChild(u)}).then(function(){d[i]=0}));var c=l[i];if(0!==c)if(c)e.push(c[2]);else{var t=new Promise(function(e,t){c=l[i]=[e,t]});e.push(c[2]=t);var r,n=document.createElement("script");n.charset="utf-8",n.timeout=120,s.nc&&n.setAttribute("nonce",s.nc),n.src=s.p+"static/js/"+({}[i]||i)+"."+{0:"8d508147",1:"69638089",2:"2ea6edd2",3:"5689b997",4:"0c506018",5:"5fae6922",6:"e6c21949",7:"d417df37",8:"e3c4871b",9:"44db45c4",10:"56d5884e",13:"3ed8dee0",14:"82968b42",15:"ec564ffd",16:"744ef912",18:"cce4e2e1",19:"963c0214",20:"140a91e3",21:"a6c49658",22:"22df2d0c",23:"3bdf404d",24:"b6fec200",25:"e07eec89",26:"1753a269",27:"21048860",28:"76d4c153",29:"73bcf3df",30:"c1337662",31:"f7c8b538",32:"149479b9",33:"98117574",34:"56d92ffb",35:"ef0469a1",36:"0d098721",37:"473e8e80",38:"bfe653f4",39:"ece63b04",40:"69851caf",41:"faf061c0",42:"eba2cb31",43:"a561a260",44:"2a2bdc93",45:"26aca18d",46:"20b704a8",47:"f3e2b4d9",48:"465736ea",49:"238011ec",50:"66e08d44",51:"2618d887",52:"76099d22",53:"158cd1b8",54:"413d4590",55:"1f876e67",56:"6743066c",57:"4b071352",58:"9a40447e",59:"b01a9725",60:"32a70edd",61:"e4179a29",62:"67bca03e",63:"e3e32f66",64:"afeb0a8e",65:"a0aeab21",66:"5fe87e39",67:"70554275"}[i]+".chunk.js";var f=new Error;r=function(e){n.onerror=n.onload=null,clearTimeout(a);var t=l[i];if(0!==t){if(t){var c=e&&("load"===e.type?"missing":e.type),r=e&&e.target&&e.target.src;f.message="Loading chunk "+i+" failed.\n("+c+": "+r+")",f.name="ChunkLoadError",f.type=c,f.request=r,t[1](f)}l[i]=void 0}};var a=setTimeout(function(){r({type:"timeout",target:n})},12e4);n.onerror=n.onload=r,document.head.appendChild(n)}return Promise.all(e)},s.m=o,s.c=c,s.d=function(e,t,c){s.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:c})},s.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},s.t=function(t,e){if(1&e&&(t=s(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var c=Object.create(null);if(s.r(c),Object.defineProperty(c,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var r in t)s.d(c,r,function(e){return t[e]}.bind(null,r));return c},s.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return s.d(t,"a",t),t},s.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},s.p="/",s.oe=function(e){throw console.error(e),e};var t=window.webpackJsonp=window.webpackJsonp||[],r=t.push.bind(t);t.push=e,t=t.slice();for(var n=0;n<t.length;n++)e(t[n]);var b=r;u()}([])</script><script src="/static/js/17.70ab742f.chunk.js"></script><script src="/static/js/main.713601cc.chunk.js"></script></body></html>