CINXE.COM

<!DOCTYPE html> <html id="ng-app" ng-strict-di lang="en" ng-controller="ApplicationCtrl"> <head> <!-- Google Tag Manager --> <!-- End Google Tag Manager --> <meta charset="utf-8"> <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, width=device-width"> <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="apple-touch-fullscreen" content="yes"> <!-- Tags for Google-bot against indexing, following links on page, using a cache page and showing the snippet--> <meta name="robots" content="noindex, nofollow, noarchive, nosnippet"> <title ng-bind="windowTitle">Summon 2.0</title> <!-- Standard favicon --> <link rel="shortcut icon" type="image/icon" href="//assets-cdn.summon.serialssolutions.com/4dde8da9a61f861e1100005b"> <!-- Apple device icons --> <link rel="apple-touch-icon" sizes="32x32" href="/favicon-32x32.png"> <link rel="apple-touch-icon" sizes="57x57" href="/apple-touch-icon-57x57.png"> <link rel="apple-touch-icon" sizes="76x76" href="/apple-touch-icon-76x76.png"> <link rel="apple-touch-icon" sizes="120x120" href="/apple-touch-icon-120x120.png"> <link rel="apple-touch-icon" sizes="144x144" href="/apple-touch-icon-144x144.png"> <link rel="apple-touch-icon" sizes="152x152" href="/apple-touch-icon-152x152.png"> <link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon-180x180.png"> <!-- Chrome for Android icon --> <link rel="icon" type="image/png" href="/android-chrome-196x196.png" sizes="196x196"> <!-- For Android home screens --> <link rel="manifest" href="/manifest.json"> <link ng-href="{{rssLink()}}" ng-if="view == 'search' && enableRssLink() && viewState.currentView != 'detailsPage'" rel="alternate" type="application/rss+xml" title="RSS" /> <link rel="stylesheet" href="//static-cdn.summon.serialssolutions.com/assets/application-58a7c24b77f6d4433ccacd736b70e5e2.css"> <link rel="stylesheet" href="//static-cdn.summon.serialssolutions.com/assets/uxf-icons-16f99c5493f80bd66a9149a38f0f98c5.css"> <link rel="stylesheet" href="//static-cdn.summon.serialssolutions.com/assets/postload-styles-c45b15f11fffebf12f42485ec6eef24f.css"> <style type="text/css"> .browzine a{color: #2859ab !important} </style> <script src="//static-cdn.summon.serialssolutions.com/assets/runtime.9ad6748cdd3001b8303a.js?1730373782"></script> <script src="//static-cdn.summon.serialssolutions.com/assets/jquery.68c452398cb9265635ed.js?1730373782"></script> <script src="//static-cdn.summon.serialssolutions.com/assets/angular.71425f451ae4745d8834.js?1730373782"></script> <script src="//static-cdn.summon.serialssolutions.com/assets/angularPlugins.e8b2168adcc9c60ef03b.js?1730373782"></script> <script src="//static-cdn.summon.serialssolutions.com/assets/plugins.83b7175cd1479dce7fe0.js?1730373782"></script> <script src="//static-cdn.summon.serialssolutions.com/assets/application.d99cdbc0f5ba1fcc9cde.js?1730373782"></script> <script src="/custom_data" ></script> <script src="//static-cdn.summon.serialssolutions.com/assets/templates-264ae74d88ece0fdbbe18a0bca16feae.js"></script> <script src='/localization/en-US' charset="UTF-8"></script> <script src="//static-cdn.summon.serialssolutions.com/assets/postLoadPlugins.5be16b58e3fc6a819f24.js?1730373782"></script> <script async defer src="https://apis.google.com/js/client.js" ></script> <script async defer src="https://www.recaptcha.net/recaptcha/api.js?render=explicit" ></script> <script src='//d1bxh8uas1mnw7.cloudfront.net/assets/embed.js' defer> </script> <script async > var __refererURL = ""; (function runLoader(self){ var regex = /.*(?=\/assets\/.*)/, appBooted = false, widgetBoxJS = '//static-cdn.summon.serialssolutions.com/assets/boxWidget.ec06af385e4246fcfb5b.js?1730373782', widgetSearchJS = '//static-cdn.summon.serialssolutions.com/assets/searchWidget.7d234a6da811300dfda3.js?1730373782' widgetCarouselJS = '//static-cdn.summon.serialssolutions.com/assets/carouselWidget.1d16f8f1749978110fa4.js?1730373782' widgetCarouselComponentJS = '//static-cdn.summon.serialssolutions.com/assets/carouselDiscoveryWidget.ad7436f8f17f0b073069.js?1730373782' ; function appBootstrap(){ var head = angular.element('head'); if(!appBooted){ angular.bootstrap(document, ['summonApp']); appBooted = true; } } function loadScripts(){ const bootstrapAppWhenDocReady = function () { angular.element(document).ready(appBootstrap); } bootstrapAppWhenDocReady(); } function loadCssFromFalback() { var applicationCss = ['//static-cdn.summon.serialssolutions.com/assets/application-58a7c24b77f6d4433ccacd736b70e5e2.css', '//static-cdn.summon.serialssolutions.com/assets/uxf-icons-16f99c5493f80bd66a9149a38f0f98c5.css', '//static-cdn.summon.serialssolutions.com/assets/postload-styles-c45b15f11fffebf12f42485ec6eef24f.css'] ; // adds tags for all dependent css files applicationCss.forEach(function(cssPath) { var stylesheetTag = document.createElement('link'); stylesheetTag.setAttribute('rel', 'stylesheet'); stylesheetTag.setAttribute('href', cssPath.replace(regex, '')); document.getElementsByTagName('head')[0].appendChild(stylesheetTag); }); } function loadJSFromFallback() { var applicationJs = [ '//static-cdn.summon.serialssolutions.com/assets/runtime.9ad6748cdd3001b8303a.js?1730373782', '//static-cdn.summon.serialssolutions.com/assets/angular.71425f451ae4745d8834.js?1730373782', '//static-cdn.summon.serialssolutions.com/assets/jquery.68c452398cb9265635ed.js?1730373782', '//static-cdn.summon.serialssolutions.com/assets/angularPlugins.e8b2168adcc9c60ef03b.js?1730373782', '//static-cdn.summon.serialssolutions.com/assets/plugins.83b7175cd1479dce7fe0.js?1730373782', '//static-cdn.summon.serialssolutions.com/assets/postLoadPlugins.5be16b58e3fc6a819f24.js?1730373782', '//static-cdn.summon.serialssolutions.com/assets/templates-264ae74d88ece0fdbbe18a0bca16feae.js', '//static-cdn.summon.serialssolutions.com/assets/application.d99cdbc0f5ba1fcc9cde.js?1730373782' ]; // adds tags for all dependent js files applicationJs.forEach(function(jsPath) { var jsTag = document.createElement('script'); jsTag.setAttribute('src', jsPath.replace(regex, '')); document.getElementsByTagName('head')[0].appendChild(jsTag); }); } self.searchWidgetScriptSrc = widgetSearchJS; self.boxWidgetScriptSrc = widgetBoxJS self.carouselWidgetScriptSrc = widgetCarouselJS self.carouselWidgetComponentScriptSrc = widgetCarouselComponentJS // fall back to Summon servers on CDN failure if (!window.$) { jqueryScript = '//static-cdn.summon.serialssolutions.com/assets/jquery.68c452398cb9265635ed.js?1730373782' console.error("The following javascript dependency failed to load: " + jqueryScript); console.log("- probably because the CDN is not loading. Check this domain: " + jqueryScript.replace(/(.*)\/(assets.*)/, '$1')); console.log("- retrying by loading things locally") loadCssFromFalback(); loadJSFromFallback(); setTimeout(loadScripts, 3000); // wait 3 seconds } else { loadScripts(); } })(this); </script> </head> <body dir="{{ ::textDirection }}" idle-timer layout key-events class="vpnBannerAdjust"><script type="text/javascript"> (function() { var z="";var b="2866756e6374696f6e2829207b0d0a2066756e6374696f6e2067657453657373696f6e436f6f6b6965732829207b0d0a0976617220636f6f6b69654172726179203d206e657720417272617928293b0d0a0976617220634e616d65203d206e65772052656745787028275e5c5c733f696e6361705f7365735f27293b0d0a097661722063203d20646f63756d656e742e636f6f6b69652e73706c697428223b22293b0d0a09666f7220287661722069203d20303b2069203c20632e6c656e6774683b20692b2b29207b0d0a0909766172206b6579203d20635b695d2e73756273747228302c20635b695d2e696e6465784f6628223d2229293b0d0a09097661722076616c7565203d20635b695d2e73756273747228635b695d2e696e6465784f6628223d2229202b20312c20635b695d2e6c656e677468293b0d0a090969662028634e616d652e74657374286b65792929207b0d0a090909636f6f6b696541727261795b636f6f6b696541727261792e6c656e6774685d203d2076616c75653b0d0a09097d0d0a097d0d0a0972657475726e20636f6f6b696541727261793b0d0a207d0d0a2066756e6374696f6e20736574496e636170436f6f6b69652876417272617929207b0d0a09766172207265733b0d0a09747279207b0d0a090976617220636f6f6b696573203d2067657453657373696f6e436f6f6b69657328293b0d0a09097661722064696765737473203d206e657720417272617928636f6f6b6965732e6c656e677468293b0d0a0909666f7220287661722069203d20303b2069203c20636f6f6b6965732e6c656e6774683b20692b2b29207b0d0a090909646967657374735b695d203d2073696d706c6544696765737428764172726179202b20636f6f6b6965735b695d293b0d0a09097d0d0a0909726573203d20764172726179202b20222c6469676573743d22202b20646967657374732e6a6f696e28293b0d0a097d20636174636820286529207b0d0a0909726573203d20764172726179202b20222c6469676573743d22202b20656e636f6465555249436f6d706f6e656e7428652e746f537472696e672829293b0d0a097d0d0a09637265617465436f6f6b696528225f5f5f75746d7663222c207265732c203230293b0d0a207d0d0a2066756e6374696f6e2073696d706c65446967657374286d7973747229207b0d0a0976617220726573203d20303b0d0a09666f7220287661722069203d20303b2069203c206d797374722e6c656e6774683b20692b2b29207b0d0a0909726573202b3d206d797374722e63686172436f646541742869293b0d0a097d0d0a0972657475726e207265733b0d0a207d0d0a2066756e6374696f6e20637265617465436f6f6b6965286e616d652c2076616c75652c207365636f6e647329207b0d0a097661722065787069726573203d2022223b0d0a09696620287365636f6e647329207b0d0a09097661722064617465203d206e6577204461746528293b0d0a0909646174652e73657454696d6528646174652e67657454696d652829202b20287365636f6e6473202a203130303029293b0d0a09097661722065787069726573203d20223b20657870697265733d22202b20646174652e746f474d54537472696e6728293b0d0a097d0d0a09646f63756d656e742e636f6f6b6965203d206e616d65202b20223d22202b2076616c7565202b2065787069726573202b20223b20706174683d2f223b0d0a207d0d0a2066756e6374696f6e2074657374286f29207b0d0a0976617220726573203d2022223b0d0a0976617220764172726179203d206e657720417272617928293b0d0a09666f722028766172206a203d20303b206a203c206f2e6c656e6774683b206a2b2b29207b0d0a09207661722074657374203d206f5b6a5d5b305d3b0d0a092073776974636820286f5b6a5d5b315d29207b0d0a092009636173652022657869737473223a0d0a0909747279207b0d0a090909696628747970656f66286576616c2874657374292920213d3d2022756e646566696e656422297b0d0a090909097641727261795b7641727261792e6c656e6774685d203d20656e636f6465555249436f6d706f6e656e742874657374202b20223d7472756522293b0d0a0909097d0d0a090909656c73657b0d0a090909097641727261795b7641727261792e6c656e6774685d203d20656e636f6465555249436f6d706f6e656e742874657374202b20223d66616c736522293b0d0a0909097d0d0a09097d20636174636820286529207b0d0a0909097641727261795b7641727261792e6c656e6774685d203d20656e636f6465555249436f6d706f6e656e742874657374202b20223d66616c736522293b0d0a09097d0d0a0909627265616b3b0d0a090963617365202276616c7565223a0d0a09097472797b0d0a090909747279207b0d0a09090909726573203d206576616c2874657374293b0d0a09090909696628747970656f662872657329203d3d3d2022756e646566696e656422297b0d0a09090909097641727261795b7641727261792e6c656e6774685d203d20656e636f6465555249436f6d706f6e656e742874657374202b20223d756e646566696e656422293b0d0a090909097d0d0a09090909656c736520696628726573203d3d3d206e756c6c297b0d0a09090909097641727261795b7641727261792e6c656e6774685d203d20656e636f6465555249436f6d706f6e656e742874657374202b20223d6e756c6c22293b0d0a090909097d0d0a09090909656c7365207b0d0a09090909097641727261795b7641727261792e6c656e6774685d203d20656e636f6465555249436f6d706f6e656e742874657374202b20223d22202b207265732e746f537472696e672829293b0d0a090909097d0909090d0a0909097d20636174636820286529207b0d0a090909097641727261795b7641727261792e6c656e6774685d203d20656e636f6465555249436f6d706f6e656e742874657374202b20223d63616e6e6f74206576616c7561746522293b0d0a09090909627265616b3b0d0a0909097d0d0a090909627265616b3b0d0a09097d0d0a0909636174636820286529207b0d0a0909097641727261795b7641727261792e6c656e6774685d203d20656e636f6465555249436f6d706f6e656e742874657374202b20223d22202b2065293b0d0a09097d0d0a0909627265616b3b0d0a0909636173652022706c7567696e5f657874656e74696f6e73223a0d0a0909747279207b0d0a09090976617220657874656e74696f6e73203d205b5d3b0d0a090909747279207b0d0a0909090969203d20657874656e74696f6e732e696e6465784f6628226922293b0d0a0909097d20636174636820286529207b0d0a090909097641727261795b7641727261792e6c656e6774685d203d20656e636f6465555249436f6d706f6e656e742822706c7567696e5f6578743d696e6465784f66206973206e6f7420612066756e6374696f6e22293b0d0a09090909627265616b3b0d0a0909097d0d0a090909747279207b0d0a09090909766172206e756d203d206e6176696761746f722e706c7567696e732e6c656e6774683b0d0a09090909696620286e756d203d3d2030207c7c206e756d203d3d206e756c6c29207b0d0a09090909097641727261795b7641727261792e6c656e6774685d203d20656e636f6465555249436f6d706f6e656e742822706c7567696e5f6578743d6e6f20706c7567696e7322293b0d0a0909090909627265616b3b0d0a090909097d0d0a0909097d20636174636820286529207b0d0a090909097641727261795b7641727261792e6c656e6774685d203d20656e636f6465555249436f6d706f6e656e742822706c7567696e5f6578743d63616e6e6f74206576616c7561746522293b0d0a09090909627265616b3b0d0a0909097d0d0a0909090d0a090909666f72202876617220693d303b693c6e6176696761746f722e706c7567696e732e6c656e6774683b692b2b29207b0d0a0909090969662028747970656f66286e6176696761746f722e706c7567696e735b695d29203d3d3d2022756e646566696e65642229207b0d0a09090909097641727261795b7641727261792e6c656e6774685d203d20656e636f6465555249436f6d706f6e656e742822706c7567696e5f6578743d706c7567696e735b695d20697320756e646566696e656422293b0d0a0909090909627265616b3b0d0a090909097d0d0a0d0a090909097661722066696c656e616d65203d206e6176696761746f722e706c7567696e735b695d2e66696c656e616d653b0d0a0909090976617220657874203d20226e6f20657874656e74696f6e223b0d0a0909090969662028747970656f662866696c656e616d6529203d3d3d2022756e646566696e65642229207b0d0a0909090909657874203d202266696c656e616d6520697320756e646566696e6564223b0d0a090909097d0d0a09090909656c7365206966202866696c656e616d652e73706c697428222e22292e6c656e677468203e203129207b0d0a0909090909657874203d2066696c656e616d652e73706c697428272e27292e706f7028293b0d0a090909097d0d0a0d0a0909090969662028657874656e74696f6e732e696e6465784f662865787429203c203029207b0d0a0909090909657874656e74696f6e732e7075736828657874293b0d0a090909097d090d0a0909097d0d0a0909090d0a090909666f7209287661722069203d20303b2069203c20657874656e74696f6e732e6c656e6774683b20692b2b29207b0d0a090909097641727261795b7641727261792e6c656e6774685d203d20656e636f6465555249436f6d706f6e656e742822706c7567696e5f6578743d22202b20657874656e74696f6e735b695d293b0d0a0909097d0d0a09097d0d0a0909636174636820286529207b0d0a0909097641727261795b7641727261792e6c656e6774685d203d20656e636f6465555249436f6d706f6e656e742822706c7567696e5f6578743d22202b2065293b0d0a09097d0d0a0909627265616b3b0d0a09207d0d0a097d0d0a0972657475726e207641727261792e6a6f696e28293b0d0a207d0d0a20766172206f203d205b0d0a095b226e6176696761746f72222c2022657869737473225d2c0d0a095b226e6176696761746f722e76656e646f72222c202276616c7565225d2c0d0a095b226e6176696761746f722e6170704e616d65222c202276616c7565225d2c0d0a095b226e6176696761746f722e706c7567696e732e6c656e6774683d3d30222c202276616c7565225d2c0d0a095b226e6176696761746f722e706c6174666f726d222c202276616c7565225d2c0d0a095b226e6176696761746f722e776562647269766572222c202276616c7565225d2c0d0a095b22706c6174666f726d222c2022706c7567696e5f657874656e74696f6e73225d2c0d0a095b22416374697665584f626a656374222c2022657869737473225d2c0d0a095b227765626b697455524c222c2022657869737473225d2c0d0a095b225f7068616e746f6d222c2022657869737473225d2c0d0a095b2263616c6c5068616e746f6d222c2022657869737473225d2c0d0a095b226368726f6d65222c2022657869737473225d2c0d0a095b2279616e646578222c2022657869737473225d2c0d0a095b226f70657261222c2022657869737473225d2c0d0a095b226f7072222c2022657869737473225d2c0d0a095b22736166617269222c2022657869737473225d2c0d0a095b22617765736f6d69756d222c2022657869737473225d2c0d0a095b2270756666696e446576696365222c2022657869737473225d2c0d0a095b225f5f6e696768746d617265222c2022657869737473225d2c0d0a095b22646f6d4175746f6d6174696f6e222c2022657869737473225d2c0d0a095b22646f6d4175746f6d6174696f6e436f6e74726f6c6c6572222c2022657869737473225d2c0d0a095b225f53656c656e69756d5f4944455f5265636f72646572222c2022657869737473225d2c0d0a095b22646f63756d656e742e5f5f7765626472697665725f7363726970745f666e222c2022657869737473225d2c0d0a095b22646f63756d656e742e246364635f6173646a666c617375746f70666876635a4c6d63666c5f222c2022657869737473225d2c0d0a095b2270726f636573732e76657273696f6e222c2022657869737473225d2c0d0a095b226e6176696761746f722e637075436c617373222c2022657869737473225d2c0d0a095b226e6176696761746f722e6f73637075222c2022657869737473225d2c0d0a095b226e6176696761746f722e636f6e6e656374696f6e222c2022657869737473225d2c0d0a095b226e6176696761746f722e6c616e67756167653d3d274327222c202276616c7565225d2c0d0a095b2277696e646f772e6f7574657257696474683d3d30222c202276616c7565225d2c0d0a095b2277696e646f772e6f757465724865696768743d3d30222c202276616c7565225d2c0d0a095b2277696e646f772e576562474c52656e646572696e67436f6e74657874222c2022657869737473225d2c0d0a095b22646f63756d656e742e646f63756d656e744d6f6465222c202276616c7565225d2c0d0a095b226576616c2e746f537472696e6728292e6c656e677468222c202276616c7565225d0d0a5d3b0d0a20747279207b0d0a09736574496e636170436f6f6b69652874657374286f29293b0d0a09646f63756d656e742e637265617465456c656d656e742822696d6722292e737263203d20222f5f496e63617073756c615f5265736f757263653f53574b4d544653523d3126653d22202b204d6174682e72616e646f6d28293b0d0a207d20636174636820286529207b0d0a09696d67203d20646f63756d656e742e637265617465456c656d656e742822696d6722293b0d0a09696d672e737263203d20222f5f496e63617073756c615f5265736f757263653f53574b4d544653523d3126653d22202b20653b0d0a207d0d0a7d2928293b0d0a";eval((function(){for (var i=0;i<b.length;i+=2){z+=String.fromCharCode(parseInt(b.substring(i,i+2),16));} return z;})());})(); </script> <div ng-cloak class="splash"> <img src="/images/spinner.gif" alt="{{ ::i18n.translations.APP_IS_LOADING }}" /> </div> <div ng-cloak role="alert" aria-live="assertive" class="offscreen" aria-label="{{i18n.translate(i18n.translations.LOADING_PAGE_NUMBER, {number:appState.params.pn})}}"> <span ng-if="loadingNewSearchIndicator || loadingSearchIndicator || feed.loading" ng-bind="::i18n.translations.LOADING_RESULTS"> </span> <span ng-if="!loadingNewSearchIndicator && !loadingSearchIndicator && !feed.loading" ng-bind="::i18n.translations.DONE_LOADING_RESULTS"> </span> <span ng-if="loadingFacetIndicator" ng-bind="::i18n.translations.LOADING_MORE_FACETS"></span> <span ng-if="!loadingFacetIndicator" ng-bind="::i18n.translations.DONE_LOADING_MORE_FACETS"></span> </div> <aside role="navigation" id="skipnav" class="skipnav offscreen" ng-cloak tabindex="-1" focus-me="!layout.virgin"> <ul class="list-unstyled" aria-label="{{ ::i18n.translations.ACCESSIBLE_MENU }}"> <li class="offscreen" ng-if="view =='search'"> <a role="button" go-to="#results" tabindex="0" ng-bind="::i18n.translations.SKIP_TO_CONTENT"> </a> </li> </ul> </aside> <main ng-cloak id="content" class="screen-media-wrapper"> <h1 class="offscreen" ng-bind="windowTitle">Summon 2.0</h1> <div home-view ng-show="view == 'home'"></div> <div search-view ng-show="view == 'search'"></div> <div embedded-widgets-view ng-if="view == 'widgets'"></div> <div course-reserves ng-if="courseReservesHasRendered" ng-show="view == 'course_reserves'"></div> <div library-card ng-if="libraryCardHasRendered" ng-show="view == 'library_card'"></div> <div class="footer"> <div chat-widget ng-if="chat.enabled"></div> </div> <div back-to-top ng-show="view == 'search' && showBackToTop" ng-click="scrollToTop()"></div> </main> <div class="print-media-wrapper" style="display:none"></div> <toast></toast> <div ng-view></div> <div click-track-link-form></div> <div ng-if="isPreviewEnv && showPreviewBanner" class="preview-env"></div> </body> </html>