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: "bookshop.org",cType: 'managed',cRay: '914a45eaf91b6b9f',cH: 'rRsUcq3EkRoNSaQ3zsu8Yhs57fsKl7IGpKcjLtQX2KM-1740010221-1.2.1.1-pNeHOaKytKyOFp_P3FBQpwsV0E4_ESRWQJJha7xxY65FEW6.jnmPxqNgpZkZx3Jj',cUPMDTk: "\/a\/23900\/9780822358343?__cf_chl_tk=Q0EQR7QhG_.Mc2o3Vf5wckL02S5y4ICo5e6h4.0_6q4-1740010221-1.0.1.1-KtZ0nOqUiJgh_iScfNzAqgFuqRDcja9KhNTPoXDCt9w",cFPWv: 'g',cITimeS: '1740010221',cTTimeMs: '1000',cMTimeMs: '390000',cTplC: 0,cTplV: 5,cTplB: 'cf',cK: "unsupported-browser",fa: "\/a\/23900\/9780822358343?__cf_chl_f_tk=Q0EQR7QhG_.Mc2o3Vf5wckL02S5y4ICo5e6h4.0_6q4-1740010221-1.0.1.1-KtZ0nOqUiJgh_iScfNzAqgFuqRDcja9KhNTPoXDCt9w",md: "tZlgbfnI5hBslWfJn2qVpYQ_B.3cgElMeiVasGPju24-1740010221-1.2.1.1-lne7pBoRDYIQQUWaFxN3RU83ubauf8KercheVZE42RbMaqRzFgpVH9xtUNICc4ihK4pGbWzQ2fdzPc7RBOLlhh1rEIPWoXRmFlxYIOLfbWPABWuaYJ4PwJ08WE17puMDKbCj7Ifj9X6L3y_zT3MHkWlCK50lhKYAgvcwmmcAO2bcnY30QlI69SnoBUt86utzE5RkPobrNStsHiXvVmxvG60Pck5Vsrysonohv7qE19IQLpxDwdKDS59YFW_MnFw8mNmLEIiVP3yxZaVU82VZoQWXKzrsedsYOlhiJj_po5DxySqj_WANUCCDF0hOWIiPti3AVqJfh0L2D8I0wOSnleUDM3no4C98oSUA47NJc8s0p7.YPCC4noZSc94bAnsvTiS76BgqQIbTLgvfOfEsyrBkeuo3O74jcjk_iTmR8RrqmFZOeSDyOGHRz5o_1PSDZ7zl4pCMuN96VbGnXsCaw50e0msnSEBww2kObhIeHh0VxanrM69ea_E6OXhQQirxP5UGOGfQOH3HoLGXseZB0kKqfHI5RE7Vaa7dS4R8DhdCVJIfzE2pQhfwC1sZ5jrSgR0wamyEjpieKSp_F3hICO2gQInP7.mDNBM3H4uGw3LBLTigvodD_jun1i7IgGWLOBiJ3EQ1Vjv34NnJof6gBJbHpUn5oFUhhgDlJ4pgvh2kCwCH0IiMwlYvg3gcMATJAN51I5r4Ztqx41Njo9lCE4vr_vO2gtF_6lmPSzspfKChYkWQGDnHKwc0Dv75XPkSeO.6vJ6YsPyYyJV3OP13bX7eUlFB5IhEsFanthxv5I6HVdkQYmlRCaBCkoSmPdQKpgc9SuiZfdnVHEhzoIn.GcdDbGksu_LqBZJihexQpkLQMUShq.vuAnFWRO6u_KP_uNFFmxxK5E0asE.onyYOjLU7mmQndlCCzL4_QWyxcFaU4VpCjLNizyiJZEGZx4__H7SrHkx_x69M1s6ovOHw6XkYDEfiSvE8_lcCX3C76gzareXdszjVBawhJvItCrVX0Gvi_X65DE61uTGVcebqHsfZQeriRNIlfGTlOQnALgShARsleNkozXp_5jYiZssWcfFWastaJhJzCfJuO5mhOGRSvTxUXJ0egjd60UxGEem6Ed11cJnOAA_rtzYZOyZ8HyC1kdax0q3gD3QuhaICooRoiiHm2pmuqeXxDrUGV_bhl0_sUySdMZt_HJNJbh17Qzo2XXgbXKF5ZeU6WKyZK2bnp3dUpI1idEgwgYpFdSfzfKldI4bXmeIZlsNnLbYMNM1wrhWQkkKlx8q.CF4DpQ6OM1R2mD1fc_QaNki8FG0wsLfIFvofTm.D1h6mX7vl1pAB09nBz.bZ9kDb26AHV5uDXaUjmFJre3R1yuN8Se8qZPizM3dIQxQ._4EKqOcbQny6oAbPtPdU4h0cpQdYYWIyDReY8gIK0vEPx8vVkSHVd9fEEonMfrNSnG6wnfYMYC4gpA7rb8_VRvCAIECnDpuMy2ICnO8Wi90iJabC2a1zL6pDH5qYrOCCDYF.VB9VDsMNsuD4PHDLlnLov1vSDeU6iueF1cMRH7M8s2LPxEvvt6DWxD6vgHj0u52USY_YzFC6aZIEWwPDqTpyEDBO_ncwm.95wZ.Xv1l3JNBNo9sFVmJ79vOneGGpe6Hg1Hafj0oQoZ88qxoBJdaEkBDdjhigU3CZjHil.tT2wJ5slzC.qmFY29nXTNyGHd2ccXoKKmmJHv4r7gbe8YlA1ebAk47LKK2KxuGYAqdHfqkOc0596YuVQTn6hhKvUhpVlBHDuufskaMEKVrTdDaYHrOlKX2WXJVHiMJsCufREmrv5lpfYF5GZRDYXLVp8KLFG5H.FuKXe_LW.PZ9h5fh5Oe3.0QXpHabZeClg4nnHh6ab_uNAzhsri4RPLPwesyk5asnvBvCuw6lpwd4s5VeVkGqGPDiSbQnR5vx0gvh9OEHanW9xepBaH5cWjaDjmaNIVp.uECu7S3ZncHLj1kq6xMlxDJOoszdMMNJsyePs27SxsEIgHbp_aGnZV_h0D7w9qmaBDsbg83WFvlvG8e3OQpPmyXbfk3hjOEjDIkxfbbxdo4l2juRSKQsj.XcgWpvXMhFGzckq5BzSasV3x6L50d6HytB8wrreH9ViuSyAWV8YC4Gy3Xpo3NTbNAq2.bgVi7w0xckernbjvf7l0KPdEVUvxkhIdLQneTgxwvEfOE5XlvBbJk.7uFa.QBqRNEaodyJKphFEFD.mLqn9O0iwpx2x26EIpRJyKfMNwk0sNi.djnB1s_140Qu7n7cbgVScRp3OWyj3Otn3LFlq2sNTtL5N1SzCbMg6rAo5CVIWDq.v2DO7Ba_YKOuf.bnqTdIjad3mVgJfemRJhOwd7oEC2ZX74Pn9hGQpVN_VpugUjch3W2c5nQGgvHLyLKJwxtI4hQnD9Xz2W.GtdfiuWEEKNHmBJn7GCqYOC4P63IwWijuvImZ7ZL9tdCGyTU52_WNKGu00WXH0ZF15DpcJFJMAJBecqpY6Xk0VwPBsJulPXUzcy8",mdrd: "zrqYW4yEbGM_LtAenx8SjCkvDCRBbAfeEUenjglax.o-1740010221-1.2.1.1-ynYFfZW2blynT_Z2fIY1rqZqtE_GDXEsfQVuG2hLDIpB8h97l1px8Jd9y4f4rpRwi2mrdI_dsjHd7405MQbPuE.VcA35oEoxJLWDTQLiLQPiBCukDGCVbjTrpWaFA3vuczheRveHkaxJmzYyyewnRmB0YsJvUmcFCiKYGvhgKXEE05KuFZs3uRV05C7K8s6DZBhzMT0vE7SdMb0axbhsIQDdWFfWb29AGm.lkT6b1Fh_nxfjxL9jc034Uv6WdSsK2tTTyMBhT82xALMztEyHDvlzrBqQJWdbt8L_HuGsj_u29e2X8JIgmONhCTxaK.MsM.uwqMEsmmRLwAh09ZHwNWCwKfwHqf_NcW74vEUNf1jbCZnLvNiCnBlYiR59Xb0KqsBZHaqRa8S8sF0ngtDmGRfQPzpNUPS_bfjZDnOW6xb.Gd_ZC9VToDsOZ7W4eQbiGNlWFmFnwoeGygK207tGkmp91q2PnjBODXqFonaah4GIAHZd.KfcbCABSu0rSwchoVtKXtead8vkaV0kNQUSHDiNRZdJGK08CNrqExEs7_2bLUheDwiAVDfYZBbq1uy1bRFhe2enE5HuwouExwirRT32VbQ10rBnUyE3qLcpxqy2KydMs_U6l3NF_Nym5iLUleQvquP1x1I5KSIHeikM7q_te3g1J_leo3iF971ts5Iej.FZESGkUE4ZTSc.hFnYluzISuE92sRo3EX1QtIrC9fbkGpLYfrK3IPvQ4cioE8nqHjKuC9WSvgrLVYt52SvA203.BV1KARX4g0f.A0XK__ZfwJ3juv_PHyC8WKVMoVmFf3WUasEwxRibAspG.tpvCGRrL2EeSl1MKfyytoR4eewF_w_oXTX.PRZCYQ4dc.2wAl9nUMM47LdWB4wabXC.rVXAIZ.4xD0dTDOGsOT4e4F.FK7PnZGgqlbpwszx70BhdzwBIIlIlFKSEIJsle8lK5cok8IeidqkLL9GalNJCSQd7mvriAN23f3TcUkUjCM9.TDKEwBdLoiuLI7NsrPDokli1iNoJCmiW0s2WleAmmfNjXpFIrItr8jP1FyGLzsYi.bBTs8jvQjejgRJlwO9G8PVkyf5kTqD1SF_rPDKQTp2GfCS9dTdk_bdRuM1iL0jZgIrSjUgJGJOqsLoTgHrBADIRJtqcuWkQFHnIqjP1C72BBg_ds2vqItK5rXMQ4YtPsXi0Njy524Fww4mbGv4Jt8Z5ekxrfnY1XYDRuiarImstRAD5owFC.2hZ6S4zU.j8NnIOlzYB9VTb853B2ytCKxdrK4ZAkOfwr4ZZjWjSLiwvOl9xXooTPF8ZmXjFb8UpagAStc5UdMELO2FK1TyLFow9PMjeOAcW8kUnczz9xzMDYmrqMa69m7dZEOYQUGMo53pA2vA7Szjzd_8fjISCm9F6Zal6vOrLD_LW7TnpIHeq1ENW4WOK5fRnCOaAPb4HOEtPMXE2hG_P_dHtrB74SHHMIP1v7iQVQzer1AEOgEj6EN..3hg338TBFYGo2bv0RlYKCDXyEc2dMKPhR3pQU_1by58Va.Bx78bNXIP4Dr7ts2h7bJrpBHC6DEQOM_gSirDUSh1oIA3X8L4dUwkEmejlUhuoicLN3tudHhu7k2NuofJ7NQOvgnjAz.gFzecuxgqLGuKLpGxeMPLC6JbnqBruLUW70m91LYrOJwdvTRq8xUl0GH9qO9a2AX1qlqVuHU0XpJZCOAEQY2cEk76gWY0RM2S0sBY1Jn74Jys_vIabrZaMsr9HQv7LLgFdue75tcU.IG4q54jnpqPUz1K0Ky3t6exe__W.dTFaVBf0asPtuwwMYOympCnsD_X1WZwCZ_7mXS3YpHVFJbNWc0TbooOTqkpjxY6ibzXzmizWofhCIeQp6j.Wc.ZAAMZHK1.p1lUedffQDFmqe9utNXYr34msKqE1Vs0MdG1bY8iHXTEnXF6LqcahSlnGRhRPib_gS.be93l8I_l.3sClnh"};var cpo = document.createElement('script');cpo.src = '/cdn-cgi/challenge-platform/h/g/orchestrate/chl_page/v1?ray=914a45eaf91b6b9f';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, "\/a\/23900\/9780822358343?__cf_chl_rt_tk=Q0EQR7QhG_.Mc2o3Vf5wckL02S5y4ICo5e6h4.0_6q4-1740010221-1.0.1.1-KtZ0nOqUiJgh_iScfNzAqgFuqRDcja9KhNTPoXDCt9w" + window._cf_chl_opt.cOgUHash);cpo.onload = function() {history.replaceState(null, null, ogU);}}document.getElementsByTagName('head')[0].appendChild(cpo);}());</script></body></html>