CINXE.COM

Just a moment...

<!DOCTYPE html><html lang="en-US"><head><title>Just a moment...</title><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=Edge"><meta name="robots" content="noindex,nofollow"><meta name="viewport" content="width=device-width,initial-scale=1"><style>*{box-sizing:border-box;margin:0;padding:0}html{line-height:1.15;-webkit-text-size-adjust:100%;color:#313131;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}body{display:flex;flex-direction:column;height:100vh;min-height:100vh}.main-content{margin:8rem auto;max-width:60rem;padding-left:1.5rem}@media (width <= 720px){.main-content{margin-top:4rem}}.h2{font-size:1.5rem;font-weight:500;line-height:2.25rem}@media (width <= 720px){.h2{font-size:1.25rem;line-height:1.5rem}}#challenge-error-text{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMiIgaGVpZ2h0PSIzMiIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI0IyMEYwMyIgZD0iTTE2IDNhMTMgMTMgMCAxIDAgMTMgMTNBMTMuMDE1IDEzLjAxNSAwIDAgMCAxNiAzbTAgMjRhMTEgMTEgMCAxIDEgMTEtMTEgMTEuMDEgMTEuMDEgMCAwIDEtMTEgMTEiLz48cGF0aCBmaWxsPSIjQjIwRjAzIiBkPSJNMTcuMDM4IDE4LjYxNUgxNC44N0wxNC41NjMgOS41aDIuNzgzem0tMS4wODQgMS40MjdxLjY2IDAgMS4wNTcuMzg4LjQwNy4zODkuNDA3Ljk5NCAwIC41OTYtLjQwNy45ODQtLjM5Ny4zOS0xLjA1Ny4zODktLjY1IDAtMS4wNTYtLjM4OS0uMzk4LS4zODktLjM5OC0uOTg0IDAtLjU5Ny4zOTgtLjk4NS40MDYtLjM5NyAxLjA1Ni0uMzk3Ii8+PC9zdmc+);background-repeat:no-repeat;background-size:contain;padding-left:34px}@media (prefers-color-scheme:dark){body{background-color:#222;color:#d9d9d9}}</style><meta http-equiv="refresh" content="390"></head><body class="no-js"><div class="main-wrapper" role="main"><div class="main-content"><noscript><div class="h2"><span id="challenge-error-text">Enable JavaScript and cookies to continue</span></div></noscript></div></div><script>(function(){window._cf_chl_opt={cvId: '3',cZone: "dl.acm.org",cType: 'managed',cRay: '91844b2f4ab981cb',cH: '8gdN1rrIbj6eUajQZRn2SPZ9O2c9JL98zmzyfOiHmN4-1740618611-1.2.1.1-peVZZDNi_SE.2gzKGEvczUFTwTIGJ8K8QecjJ54_0qKCUOP_Pp44DAwZvQeeShqp',cUPMDTk: "\/doi\/10.1145\/260750.260759?__cf_chl_tk=m9poU0285_7J9kvtRrMWV0AVV90ImkXvIhICcuPava0-1740618611-1.0.1.1-CBghsLxUNCPj1cDX50SfzQCGC9gaxLXf0.sfqmTNNY8",cFPWv: 'b',cITimeS: '1740618611',cTTimeMs: '1000',cMTimeMs: '390000',cTplC: 0,cTplV: 5,cTplB: 'cf',cK: "",fa: "\/doi\/10.1145\/260750.260759?__cf_chl_f_tk=m9poU0285_7J9kvtRrMWV0AVV90ImkXvIhICcuPava0-1740618611-1.0.1.1-CBghsLxUNCPj1cDX50SfzQCGC9gaxLXf0.sfqmTNNY8",md: "kq8UShlUY1oUQSv84kQNI_L53boepHcsrcNGYCemBzY-1740618611-1.2.1.1-8sVos5KQ4_fEaE3fhlCxwU6tO8b4PGhO4d8ZeeDh00k5n4wiOeclEAKL.OWfb0lyQtVouEBOV2WE7JKJAttelwoQknfddMmMPL9csR_oxPTtqjJCMt_nKGYqHD1kfRP69gaUfmMmhNh_FSP_IjF4Hpvi6O1st4Soa8IzDAry.NTjDHHnLPjCyFegEVP6LZtkV8RQZXHMWgomS9.qDn6CvjpT5rbBwgsT5iKhKLuxh_xQfYS98UDPQrMp_gVCLG5snvHrva4k8kmUx7193EqqbFuiYus.NdvB3T0CJstQ32aXUOQ9vy6qhvoii97EXkFJT1e1LwDUZ53itpJkSWZ_kCBVCBU52bsy1ep_unUnUjwDweex.7Hgq.0E5Y3ynoKDNjgn4BTjBz3uv9FTgvbDOqlHsriu4X8CcfJNAR8ZOwkgXL07UwKiJY_bY7QG1fXE6EGjNjL96LaR1KM3rIvyISF.0L949kwNOURf8HsgwlcB4mQ3B9Ccv_5HzlxkN4AAQpRe5vTOzCzn_5YgZI.Om2VJTGHoYOZjHxMDuF6jHywYqGDj_EGdC0_gOF_UR6iBfxE7dBNJAnfdPh_ZFLsxHVEym69MDlFYxDci0vM8M8R_ECf59b29TJN.2FPn3H1bnEgt7AbeXxbCF__sACd_FTGC0KHX945eqrm_swU0jXe13R0Ls0Nu9.LU2Suxvxg4FaT.zUOx1XtAzRDMoC1aEkIvq6MIJ17vmUT3M596d_D3_Z2amf8oJO67J9gtO99mSlvVPbQ6A2TyzYjUI6WxGZeUtLixjSPK.6VMTjCXEMYNNJft9MqWrf_P6a5bJlVls0mRTsoWfovlGFCEBJMNNqBZg7.9uAI21FNemE__8tMiPhnZbDcILGp8RxiEaUp3WVWLFPfO8IAS0P_IOhP2fno1i.dlTUWClURk18u6EyvW4CWgv0b9xuokoCyMkbdixufJ5eo70YMKlLadY0TxwbjPpVrpwPI14FAAw.3xii8eZqw8teb1HChZ0M7MTDy1bWgXJTnIY091gshE5QOlGkXCabCFf7BQx87S4hnmZwyiPTWJ1ObpKwVKUK7_zcphz2XDgSuTVLjlxKMhrJsugqQWRM36YjYXzG9nayTeL1X5y9paLY_9ikG_Wj.FJ8lY8fjAgZZ0FSrZTrSUcf4iLx8jK.hre4HvFPzmpX6vuIva_ZcQnXP2sQWlupUGZ71ZjOos6gqO9lGgkiT8bOr7RJt6oTwF5ixPjgwy2Q4ZdBKb9lR471nKTDJVhFmA7eAdm0Yy4d9PsQkmuX3lrxSN3qqac7ZTiVu4be.xBiv5MtKQGemRxXg38hzibLtTaJZD_I0b6KzGcJuDrYE1o6fDpCKDyC1aV8VZONlO4Z1ZlMZpgc5CfzKp49Qr5hoQxtXqaHKnp1OYvdxqKmkcWFAtDpQyzAej1N.kzeTah8DaPUGYj.KHFNk3QZNgW0Lrzb1S3MP5HsNpes8YIr62zly6TD23lrp9zdjEe.5Fx1oARdJPaouJQ.2r.JTYXHR.AzY11aR7ZfW8x4jl.bthPwjMjvzQ898nl6IfvEfwX__DsriGgg3ro8JbRGsygXkxtLPW8jBMbrSjjdVRareTSlE4omgfPoUdFU_ND2YCOUjAqdNxfiUazLiJV_smpoF1K1cZPom9ya3x4_MJroZznnjyFvGm90ZapFPeyRttBG2t38g84RckbA3uEvMeast4DxioIwnn0O_A4C_rABqV_8mAx_4rfg49hmREw5l1qKGYp4Er8NiUkO0x1.dx.KTiWwKwboIl9VvgE4inJ9Ppa6pOJgz5_EVqbKKbWchtiXkZvEYQ5Wh.MVZa8ed3Nw_CdCtDB1cZsoIk248lxV3lLiBEUxU4SzbFS3gV4Z_TIxoZysemT8HsBnTEcBoeR4TK2nGV3dNmG2vZsnCVclLNi.ktaDkl8HT9dBQkHtTnPYoPChZ2zUzQii5p8ztuaKWGHrOdognwIoiIFgLd4MUgCgcWde.ZpPBklcO.OUS0IHO7RGweXc872UjZZt5GzBmu6P1zIoEHNc1Ucu2WOpW9Dv7hA_dh7lkdEpgGozlJittNrFjiZUNEv6uxbnS3bQg6tm4sLRsa.9jiypaJDAQzazFZ7iFwZdE3dSiFwwSf3Zm45PfTbV6e0.qusuP54vwzugDrjbMgYAwlmv_.ZdyS8EcvWfX3yxsnRUQzg9qXGd9TqRL_KAK_T2UWp_noWqoK5SW7rX8BPQaDXwcuN9oo8.vCCQh_qsB52cAcdCxmMf4ngJwafg7LnFX_iSt1ICb67m2tx6KzIZWqKbDk0qdCbzWKz8APelGmd2xepUxQjkxNDvuKH8bXPLSfzLzqj54_p9xLPecMSG8AcAdfsznadTIOIQVOQS77sxVipP1WAJgQH70rK.rxZZYTdtnMlwvgjEmHKVBwq4.9hp2L1sliW5b4UDoreFw8rH8paRScxHssIWiffhrIUWAK1Aujuahy8DEHH2S2y22GFY2yC1yvARHfYw6UdWEXIBO0.AYCqWOaa3jsWakCPnHGKszlDvc31PBpuZb85agGMLcT6gHyQKGwFUrrGMrG6TT2YFYd.8IhrDQ",mdrd: "tDUh8rsqYs4HhUN7F6UooLiY3ty9Ng4MRrmdjzTpqwU-1740618611-1.2.1.1-KYurJN7tUOHXIZlK_A1HoU_u3Ra1drCMbg85aZgTiUlYdXk2ZkcFVXG0Ke2TFvPDnlgxpk129bQ3DnKrL0hujHjaZHyhuwIhQTCySlJqGj9VVzbwrq.xhyAaZsrfI.nJbFrB9leb.D.cnjE1egMBhY1xiWs6aNRflXvuN6VRD9z7syRCssB6kZr4lUw5PO6goZvW1cvDaZhltRbou290H5zzKO6bw.TLKnz13UHcP_dmHw_CDjxUeX4nXI6zd94iaFw.FrQr0JGy9G3y6whK8UyEgdH84RNtteJdXPtCbnrd9lYzx1q52qg7..klKx5.kHyXhOS7chM_edI43EliCgSOXgFEprYSlSlYV9bp1E7e6O6zscDyOTVKvDxZ_JggCj7RTyu0xQyJNstWyx1RXjyTlI3q8wzjOKt8urvzRxImLT6fAZRu_x4qMLdX6NV.O_g2eVT675xRshcoJO945PcexGW8SZSVjRKhXQ.Nt3z2y7_7HGeByuZipC8.8NrGFYnnnAoQQu7xkeg6qCQwAFcXm5ASLj8uehp5fwzmZ74ZnX4ojL1bDVztCpc0mZrJcc5u1QkCdNlVaFFmxGvMZ5L7RVvZKoYh3ICC4ZZ.NS0ueGJq4YRcRzQJolgQRRxtxqkeE6i4RBmoGj3UizLC0eFK2lMWK3QuPdKOCAICBkNf8MD3deCSOUqPw.GMv.EAWXVGkzYabxFG2ERBYPz4WaAfmD5INviMf5ttMedxkvQUsjAhk7xM24BlUvgXXXc1A4spc9EbjdYSSnJmFCQ.YP2DUYzvd7zIua2oBltw3xn3PNILrHLoI1jAF3rIt3YvYc1uuBucjMDPlJGnNl4zpxoWZLUtCdEUEHqkFcbD3gClltqvIZ.MVg_IQnNIzjrkRP.YiYYbchFOGb3g0n5K4NUWVQ7zTBan8hgSmgDLc81esoa_0JUNKdTAg9bsr5Fscmq12u_KnaJVb578yiyRKNysZ29e2N7GTWfWIjYkG8d8CwTCqJNTyi78VJBe4KRQBFMkCak3lCYeD8J2D1ocMW9cY.3nUPzAZ6zjqSa8AubzZdxNDJHLsYCO2YehlFKV3RlmCYFDBAa9tZdiLqkT7kyoZs88MaBuOm.Of3dC7gypedfLS_rbnKrtvuWBLdDBGNaM27utAHmLmjQGs1oJ0jeAFgoE1paqVVqb0deMxamhSzzprTG7BToZ0lmtWGANnyOXlC9NoBiLLebrETynUJRyWVNrpuveXeX.xGTyEAdzJLUbfzGPnvgpXfmehFFGEcriJeKKSFIxNSkgdrNqzL1dyCgwHmsBUqdPPzDXppg3iJ9p392gk4YHtEt7NB6yhoz4bt70SQEx.zNYAIXv16K.qWeFDIuACuZ.aHAtEZBajDoy2CAAwNiCJvxdovi8_p0tMPWG2HiBY0JNo034j13Pq3GwgF6EyEGWRm5OpIip1NkzCO5qI5yWtp4bEJf19.h8tvSsIzz8EIc7ic3pg.VHqnuNhpWzOsZomoetfdGLwB.3gYLYQZu2Plb4ymF9Desv2qO0ZEmuFLrxnb9xWuz6xNBiYHIf3Dae6D.eS2FX3WuyGpe0t.0iFFhPBx.d0PTeiwzDK7QjqQmAOL3ZcH1.68JO_Acnalr.ssxSIaw21cB456ji54YrQXsobVSbl0rZZ4X_ObD9al80hXO5BRzDvsDYNGp_r0bJuWJlgTjcxeFOJWKmsyyEDBnBgcizJ3uUTp3.WT3oAKyoE3PW.MVioh.u_OBntqhRGHCKg4lGTudDUGCRkO89unCzGiqw87owSqlqUzVrL4E.LS6OXVcwH5qqWL5wudzsoZFCdeKpWq.QLZ3Cuksx70zMdzit5SCZrlXM6_0kKwqRVGSPqI4QH4WsKgMuHAGjC6lykELbXdHw0uTNpDkbm4e7HfIdKVJXLr_zqN9xVhOKA5gbKi61FmKLTE7RC.hNH1Y4cU8"};var cpo = document.createElement('script');cpo.src = '/cdn-cgi/challenge-platform/h/b/orchestrate/chl_page/v1?ray=91844b2f4ab981cb';window._cf_chl_opt.cOgUHash = location.hash === '' && location.href.indexOf('#') !== -1 ? '#' : location.hash;window._cf_chl_opt.cOgUQuery = location.search === '' && location.href.slice(0, location.href.length - window._cf_chl_opt.cOgUHash.length).indexOf('?') !== -1 ? '?' : location.search;if (window.history && window.history.replaceState) {var ogU = location.pathname + window._cf_chl_opt.cOgUQuery + window._cf_chl_opt.cOgUHash;history.replaceState(null, null, "\/doi\/10.1145\/260750.260759?__cf_chl_rt_tk=m9poU0285_7J9kvtRrMWV0AVV90ImkXvIhICcuPava0-1740618611-1.0.1.1-CBghsLxUNCPj1cDX50SfzQCGC9gaxLXf0.sfqmTNNY8" + window._cf_chl_opt.cOgUHash);cpo.onload = function() {history.replaceState(null, null, ogU);}}document.getElementsByTagName('head')[0].appendChild(cpo);}());</script></body></html>