PageSourceSearch

https://davesnow.ca/teaching/

html davesnow.ca collected 2026-10-07 22:22:09 UTC 74,735 bytes, 877 lines download raw bytes

1<!DOCTYPE html>
2<!--[if IE 8]>
3<html id="ie8" lang="en">
4<![endif]-->
5<!--[if !(IE 8)]><!-->
6<html lang="en">
7<!--<![endif]-->
8<head>
9<meta charset="UTF-8" />
10<meta name="viewport" content="width=device-width,initial-scale=1" />
11<link rel="profile" href="http://gmpg.org/xfn/11" />
12<link rel="pingback" href="https://davesnow.ca/xmlrpc.php" />
13<!--[if lt IE 9]>
14<script src="https://s2.wp.com/wp-content/themes/pub/oxygen/js/html5.js?m=1335201688i" type="text/javascript"></script>
14
15<![endif]-->
16
17<title>Teaching &#8211; Dave Snow &#8211; University of Guelph</title>
18<script type="text/javascript">
19  WebFontConfig = {"google":{"families":["Alegreya:500:latin,latin-ext","Lora:r,i,b,bi:latin,latin-ext"]},"api_url":"https:\/\/fonts-api.wp.com\/css"};
20  (function() {
21    var wf = document.createElement('script');
22    wf.src = '/wp-content/plugins/custom-fonts/js/webfont.js';
23    wf.type = 'text/javascript';
24    wf.async = 'true';
25    var s = document.getElementsByTagName('script')[0];
26    s.parentNode.insertBefore(wf, s);
27	})();
28</script>
28<style id="jetpack-custom-fonts-css">.wf-active .site-title{font-family:"Alegreya",serif;font-style:normal;font-weight:500}.wf-active body{font-family:"Lora",serif}.wf-active body, .wf-active button, .wf-active input, .wf-active select, .wf-active textarea{font-family:"Lora",serif}.wf-active .site-description{font-family:"Lora",serif}.wf-active .hfeed-more .entry-title{font-family:"Lora",serif}.wf-active h1, .wf-active h2, .wf-active h3, .wf-active h4, .wf-active h5, .wf-active h6{font-family:"Alegreya",serif;font-style:normal;font-weight:500}.wf-active h1{font-style:normal;font-weight:500}.wf-active h2{font-style:normal;font-weight:500}.wf-active h3{font-style:normal;font-weight:500}.wf-active h4{font-style:normal;font-weight:500}.wf-active h5{font-style:normal;font-weight:500}.wf-active h6{font-weight:500;font-style:normal}.wf-active dl dt{font-family:"Alegreya",serif;font-weight:500;font-style:normal}.wf-active blockquote, .wf-active blockquote blockquote blockquote{font-family:"Alegreya",serif;font-style:normal;font-weight:500}.wf-active th{font-weight:500;font-style:normal}.wf-active table th{font-weight:500;font-style:normal}.wf-active .main-navigation a{font-family:"Alegreya",serif;font-weight:500;font-style:normal}.wf-active .menu-toggle{font-style:normal;font-weight:500}.wf-active .entry-title{font-style:normal;font-weight:500}.wf-active .single .entry-title{font-style:normal;font-weight:500}.wf-active .section-title h1{font-style:normal;font-weight:500}.wf-active .featured-post .entry-title{font-style:normal;font-weight:500}.wf-active .featured-post .entry-title a{font-style:normal;font-weight:500}.wf-active #comments #reply-title, .wf-active .comments-title{font-style:normal;font-weight:500}.wf-active .widgettitle{font-style:normal;font-weight:500}.wf-active .widget_calendar #wp-calendar caption{font-family:"Alegreya",serif;font-style:normal;font-weight:500}</style>
29<meta name='robots' content='max-image-preview:large' />
30
31<!-- Async WordPress.com Remote Login -->
32<script id="wpcom_remote_login_js">
33var wpcom_remote_login_extra_auth = '';
34function wpcom_remote_login_remove_dom_node_id( element_id ) {
35	var dom_node = document.getElementById( element_id );
36	if ( dom_node ) { dom_node.parentNode.removeChild( dom_node ); }
37}
38function wpcom_remote_login_remove_dom_node_classes( class_name ) {
39	var dom_nodes = document.querySelectorAll( '.' + class_name );
40	for ( var i = 0; i < dom_nodes.length; i++ ) {
41		dom_nodes[ i ].parentNode.removeChild( dom_nodes[ i ] );
42	}
43}
44function wpcom_remote_login_final_cleanup() {
45	wpcom_remote_login_remove_dom_node_classes( "wpcom_remote_login_msg" );
46	wpcom_remote_login_remove_dom_node_id( "wpcom_remote_login_key" );
47	wpcom_remote_login_remove_dom_node_id( "wpcom_remote_login_validate" );
48	wpcom_remote_login_remove_dom_node_id( "wpcom_remote_login_js" );
49	wpcom_remote_login_remove_dom_node_id( "wpcom_request_access_iframe" );
50	wpcom_remote_login_remove_dom_node_id( "wpcom_request_access_styles" );
51}
52
53// Watch for messages back from the remote login
54window.addEventListener( "message", function( e ) {
55	if ( e.origin === "https://r-login.wordpress.com" ) {
56		var data = {};
57		try {
58			data = JSON.parse( e.data );
59		} catch( e ) {
60			wpcom_remote_login_final_cleanup();
61			return;
62		}
63
64		if ( data.msg === 'LOGIN' ) {
65			// Clean up the login check iframe
66			wpcom_remote_login_remove_dom_node_id( "wpcom_remote_login_key" );
67
68			var id_regex = new RegExp( /^[0-9]+$/ );
69			var token_regex = new RegExp( /^.*|.*|.*$/ );
70			if (
71				token_regex.test( data.token )
72				&& id_regex.test( data.wpcomid )
73			) {
74				// We have everything we need to ask for a login
75				var script = document.createElement( "script" );
76				script.setAttribute( "id", "wpcom_remote_login_validate" );
77				script.src = '/remote-login.php?wpcom_remote_login=validate'
78					+ '&wpcomid=' + data.wpcomid
79					+ '&token=' + encodeURIComponent( data.token )
80					+ '&host=' + window.location.protocol
81					+ '//' + window.location.hostname
82					+ '&postid=10'
83					+ '&is_singular=';
84				document.body.appendChild( script );
85			}
86
87			return;
88		}
89
90		// Safari ITP, not logged in, so redirect
91		if ( data.msg === 'LOGIN-REDIRECT' ) {
92			window.location = 'https://wordpress.com/log-in?redirect_to=' + window.location.href;
93			return;
94		}
95
96		// Safari ITP, storage access failed, remove the request
97		if ( data.msg === 'LOGIN-REMOVE' ) {
98			var css_zap = 'html { -webkit-transition: margin-top 1s; transition: margin-top 1s; } /* 9001 */ html { margin-top: 0 !important; } * html body { margin-top: 0 !important; } @media screen and ( max-width: 782px ) { html { margin-top: 0 !important; } * html body { margin-top: 0 !important; } }';
99			var style_zap = document.createElement( 'style' );
100			style_zap.type = 'text/css';
101			style_zap.appendChild( document.createTextNode( css_zap ) );
102			document.body.appendChild( style_zap );
103
104			var e = document.getElementById( 'wpcom_request_access_iframe' );
105			e.parentNode.removeChild( e );
106
107			document.cookie = 'wordpress_com_login_access=denied; path=/; max-age=31536000';
108
109			return;
110		}
111
112		// Safari ITP
113		if ( data.msg === 'REQUEST_ACCESS' ) {
114			console.log( 'request access: safari' );
115
116			// Check ITP iframe enable/disable knob
117			if ( wpcom_remote_login_extra_auth !== 'safari_itp_iframe' ) {
118				return;
119			}
120
121			// If we are in a "private window" there is no ITP.
122			var private_window = false;
123			try {
124				var opendb = window.openDatabase( null, null, null, null );
125			} catch( e ) {
126				private_window = true;
127			}
128
129			if ( private_window ) {
130				console.log( 'private window' );
131				return;
132			}
133
134			var iframe = document.createElement( 'iframe' );
135			iframe.id = 'wpcom_request_access_iframe';
136			iframe.setAttribute( 'scrolling', 'no' );
137			iframe.setAttribute( 'sandbox', 'allow-storage-access-by-user-activation allow-scripts allow-same-origin allow-top-navigation-by-user-activation' );
138			iframe.src = 'https://r-login.wordpress.com/remote-login.php?wpcom_remote_login=request_access&origin=' + encodeURIComponent( data.origin ) + '&wpcomid=' + encodeURIComponent( data.wpcomid );
139
140			var css = 'html { -webkit-transition: margin-top 1s; transition: margin-top 1s; } /* 9001 */ html { margin-top: 46px !important; } * html body { margin-top: 46px !important; } @media screen and ( max-width: 660px ) { html { margin-top: 71px !important; } * html body { margin-top: 71px !important; } #wpcom_request_access_iframe { display: block; height: 71px !important; } } #wpcom_request_access_iframe { border: 0px; height: 46px; position: fixed; top: 0; left: 0; width: 100%; min-width: 100%; z-index: 99999; background: #23282d; } ';
141
142			var style = document.createElement( 'style' );
143			style.type = 'text/css';
144			style.id = 'wpcom_request_access_styles';
145			style.appendChild( document.createTextNode( css ) );
146			document.body.appendChild( style );
147
148			document.body.appendChild( iframe );
149		}
150
151		if ( data.msg === 'DONE' ) {
152			wpcom_remote_login_final_cleanup();
153		}
154	}
155}, false );
156
157// Inject the remote login iframe after the page has had a chance to load
158// more critical resources
159window.addEventListener( "DOMContentLoaded", function( e ) {
160	var iframe = document.createElement( "iframe" );
161	iframe.style.display = "none";
162	iframe.setAttribute( "scrolling", "no" );
163	iframe.setAttribute( "id", "wpcom_remote_login_key" );
164	iframe.src = "https://r-login.wordpress.com/remote-login.php"
165		+ "?wpcom_remote_login=key"
166		+ "&origin=aHR0cHM6Ly9kYXZlc25vdy5jYQ%3D%3D"
167		+ "&wpcomid=40923151"
168		+ "&time=" + Math.floor( Date.now() / 1000 );
169	document.body.appendChild( iframe );
170}, false );
171</script>
171
172<link rel='dns-prefetch' href='//s1.wp.com' />
173<link rel='dns-prefetch' href='//s2.wp.com' />
174<link rel='dns-prefetch' href='//fonts-api.wp.com' />
175<link rel='dns-prefetch' href='//s0.wp.com' />
176<link rel='dns-prefetch' href='//af.pubmine.com' />
177<link rel="alternate" type="application/rss+xml" title="Dave Snow - University of Guelph &raquo; Feed" href="https://davesnow.ca/feed/" />
178<link rel="alternate" type="application/rss+xml" title="Dave Snow - University of Guelph &raquo; Comments Feed" href="https://davesnow.ca/comments/feed/" />
179<link rel="alternate" type="application/rss+xml" title="Dave Snow - University of Guelph &raquo; Teaching Comments Feed" href="https://davesnow.ca/teaching/feed/" />
180	
180<script type="text/javascript">
181		/* <![CDATA[ */
182		function addLoadEvent(func) {
183			var oldonload = window.onload;
184			if (typeof window.onload != 'function') {
185				window.onload = func;
186			} else {
187				window.onload = function () {
188					oldonload();
189					func();
190				}
191			}
192		}
193		/* ]]> */
194	</script>
194
195	<style id="wp-img-auto-sizes-contain-inline-css">
196img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px}
197/*# sourceURL=wp-img-auto-sizes-contain-inline-css */
198</style>
199<link crossorigin='anonymous' rel='stylesheet' id='all-css-2-1' href='/_static/??/wp-content/mu-plugins/widgets/eu-cookie-law/templates/style.css,/wp-content/blog-plugins/marketing-bar/css/marketing-bar.css?m=1790191714j&cssminify=yes' type='text/css' media='all' />
200<style id="wp-emoji-styles-inline-css">
201
202	img.wp-smiley, img.emoji {
203		display: inline !important;
204		border: none !important;
205		box-shadow: none !important;
206		height: 1em !important;
207		width: 1em !important;
208		margin: 0 0.07em !important;
209		vertical-align: -0.1em !important;
210		background: none !important;
211		padding: 0 !important;
212	}
213/*# sourceURL=wp-emoji-styles-inline-css */
214</style>
215<style id="wp-block-library-inline-css">
216:root{--wp-block-synced-color:#7a00df;--wp-block-synced-color--rgb:122,0,223;--wp-bound-block-color:var(--wp-block-synced-color);--wp-editor-canvas-background:#ddd;--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,160.5;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.wp-element-button{cursor:pointer}:root .has-very-light-gray-background-color{background-color:#eee}:root .has-very-dark-gray-background-color{background-color:#313131}:root .has-very-light-gray-color{color:#eee}:root .has-very-dark-gray-color{color:#313131}:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background{background:linear-gradient(135deg,#00d084,#0693e3)}:root .has-purple-crush-gradient-background{background:linear-gradient(135deg,#34e2e4,#4721fb 50%,#ab1dfe)}:root .has-hazy-dawn-gradient-background{background:linear-gradient(135deg,#faaca8,#dad0ec)}:root .has-subdued-olive-gradient-background{background:linear-gradient(135deg,#fafae1,#67a671)}:root .has-atomic-cream-gradient-background{background:linear-gradient(135deg,#fdd79a,#004a59)}:root .has-nightshade-gradient-background{background:linear-gradient(135deg,#330968,#31cdcf)}:root .has-midnight-gradient-background{background:linear-gradient(135deg,#020381,#2874fc)}:root{--wp--preset--font-size--normal:16px;
216--wp--preset--font-size--huge:42px}.has-regular-font-size{font-size:1em}.has-larger-font-size{font-size:2.625em}.has-normal-font-size{font-size:var(--wp--preset--font-size--normal)}.has-huge-font-size{font-size:var(--wp--preset--font-size--huge)}:root .has-text-align-center{text-align:center}:root .has-text-align-left{text-align:left}:root .has-text-align-right{text-align:right}.has-fit-text{white-space:nowrap!important}#end-resizable-editor-section{display:none}.aligncenter{clear:both}.items-justified-left{justify-content:flex-start}.items-justified-center{justify-content:center}.items-justified-right{justify-content:flex-end}.items-justified-space-between{justify-content:space-between}.screen-reader-text{border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;overflow-wrap:normal!important;padding:0;position:absolute;width:1px;word-break:normal!important}.screen-reader-text:focus{background-color:#ddd;clip-path:none;color:#444;display:block;font-size:1em;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}html :where(.has-border-color){border-style:solid}html :where([style^=border-color],[style*=";border-color"],[style*="; border-color"]){border-style:solid}html :where([style^=border-top-color],[style*=";border-top-color"],[style*="; border-top-color"]){border-top-style:solid}html :where([style^=border-right-color],[style*=";border-right-color"],[style*="; border-right-color"]){border-right-style:solid}html :where([style^=border-bottom-color],[style*=";border-bottom-color"],[style*="; border-bottom-color"]){border-bottom-style:solid}html :where([style^=border-left-color],[style*=";border-left-color"],[style*="; border-left-color"]){border-left-style:solid}html :where([style^=border-width],[style*=";border-width"],[style*="; border-width"]){border-style:solid}html :where([style^=border-top-width],[style*=";border-top-width"],[style*="; border-top-width"]){border-top-style:solid}html :where([style^=border-right-width],[style*=";border-right-width"],[style*="; border-right-width"]){border-right-style:solid}html :where([style^=border-bottom-width],[style*=";border-bottom-width"],[style*="; border-bottom-width"]){border-bottom-style:solid}html :where([style^=border-left-width],[style*=";border-left-width"],[style*="; border-left-width"]){border-left-style:solid}html :where(img[class*=wp-image-]){height:auto;max-width:100%}:where(figure){margin:0 0 1em}html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:var(--wp-admin--admin-bar--height,0px)}@media screen and (max-width:600px){html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:0px}}
217
218/*# sourceURL=/wp-content/plugins/gutenberg-core/v24.1.0/build/styles/block-library/common.min.css */
219</style>
220<style id="wp-block-library-inline-css-extra">
221.has-text-align-justify {
222	text-align:justify;
223}
224.has-text-align-justify{text-align:justify;}
225/*# sourceURL=wp-block-library-inline-css */
226</style>
227
228<style id="classic-theme-styles-inline-css">
229.wp-block-button__link{background-color:#32373c;border-radius:9999px;box-shadow:none;color:#fff;font-size:1.125em;padding:calc(.667em + 2px) calc(1.333em + 2px);text-decoration:none}.wp-block-file__button{background:#32373c;color:#fff}.wp-block-accordion-heading{margin:0}.wp-block-accordion-heading__toggle{background-color:inherit!important;color:inherit!important}.wp-block-accordion-heading__toggle:not(:focus-visible){outline:none}.wp-block-accordion-heading__toggle:focus,.wp-block-accordion-heading__toggle:hover{background-color:inherit!important;border:none;box-shadow:none;color:inherit;padding:var(--wp--preset--spacing--20,1em) 0;text-decoration:none}.wp-block-accordion-heading__toggle:focus-visible{outline:auto;outline-offset:0}.wp-block-tab:not(.has-text-color){color:inherit!important}.wp-block-tab:not(.has-background){background-color:inherit!important}.wp-block-tab:focus,.wp-block-tab:hover{text-decoration:none}.wp-block-tab:focus-visible{outline:auto;outline-offset:0}
230/*# sourceURL=/wp-content/plugins/gutenberg-core/v24.1.0/build/styles/block-library/classic.min.css */
231</style>
232
233<style id="coblocks-inline-format-inline-css">
234.uppercase{text-transform:uppercase}
235/*# sourceURL=coblocks-inline-format-inline-css */
236</style>
237<link crossorigin='anonymous' rel='stylesheet' id='all-css-12-1' href='/_static/??-eJx9jcEKg0AMRH+oaVhorR7Eb9E16IpZg8min2889FZ6GYbhPQYPgbhlo2zIBWQtU8qKcdvJd5be0AmmMfW0Ejv2jKoP/K0daZzIXNdvB6PzvyJ+A8MgO6mCJ6fCYLN/6e113IZXU9WfUL/DcgHSTkDo&cssminify=yes' type='text/css' media='all' />
238<style id="global-styles-inline-css">
239:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgb(6,147,227) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgb(252,185,
2390) 0%,rgb(255,105,0) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgb(255,105,0) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--font-family--albert-sans: 'Albert Sans', sans-serif;--wp--preset--font-family--alegreya: Alegreya, serif;--wp--preset--font-family--arvo: Arvo, serif;--wp--preset--font-family--bodoni-moda: 'Bodoni Moda', serif;--wp--preset--font-family--bricolage-grotesque: 'Bricolage Grotesque', sans-serif;--wp--preset--font-family--cabin: Cabin, sans-serif;--wp--preset--font-family--chivo: Chivo, sans-serif;--wp--preset--font-family--commissioner: Commissioner, sans-serif;--wp--preset--font-family--cormorant: Cormorant, serif;--wp--preset--font-family--courier-prime: 'Courier Prime', monospace;--wp--preset--font-family--crimson-pro: 'Crimson Pro', serif;--wp--preset--font-family--dm-mono: 'DM Mono', monospace;--wp--preset--font-family--dm-sans: 'DM Sans', sans-serif;--wp--preset--font-family--dm-serif-display: 'DM Serif Display', serif;--wp--preset--font-family--domine: Domine, serif;--wp--preset--font-family--eb-garamond: 'EB Garamond', serif;--wp--preset--font-family--epilogue: Epilogue, sans-serif;--wp--preset--font-family--fahkwang: Fahkwang, sans-serif;--wp--preset--font-family--figtree: Figtree, sans-serif;--wp--preset--font-family--fira-sans: 'Fira Sans', sans-serif;--wp--preset--font-family--fjalla-one: 'Fjalla One', sans-serif;--wp--preset--font-family--fraunces: Fraunces, serif;--wp--preset--font-family--gabarito: Gabarito, system-ui;--wp--preset--font-family--ibm-plex-mono: 'IBM Plex Mono', monospace;--wp--preset--font-family--ibm-plex-sans: 'IBM Plex Sans', sans-serif;--wp--preset--font-family--ibarra-real-nova: 'Ibarra Real Nova', serif;--wp--preset--font-family--instrument-serif: 'Instrument Serif', serif;--wp--preset--font-family--inter: Inter, sans-serif;--wp--preset--font-family--josefin-sans: 'Josefin Sans', sans-serif;--wp--preset--font-family--jost: Jost, sans-serif;--wp--preset--font-family--libre-baskerville: 'Libre Baskerville', serif;--wp--preset--font-family--libre-franklin: 'Libre Franklin', sans-serif;--wp--preset--font-family--literata: Literata, serif;--wp--preset--font-family--lora: Lora, serif;--wp--preset--font-family--merriweather: Merriweather, serif;--wp--preset--font-family--montserrat: Montserrat, sans-serif;--wp--preset--font-family--newsreader: Newsreader, serif;--wp--preset--font-family--noto-sans-mono: 'Noto Sans Mono', sans-serif;--wp--preset--font-family--nunito: Nunito, sans-serif;--wp--preset--font-family--open-sans: 'Open Sans', sans-serif;--wp--preset--font-family--overpass: Overpass, sans-serif;--wp--preset--font-family--pt-serif: 'PT Serif', serif;--wp--preset--font-family--petrona: Petrona, serif;--wp--preset--font-family--piazzolla: Piazzolla, serif;--wp--preset--font-family--playfair-display: 'Playfair Display', serif;--wp--preset--font-family--plus-jakarta-sans: 'Plus Jakarta Sans', sans-serif;--wp--preset--font-family--poppins: Poppins, sans-serif;--wp--preset--font-family--raleway: Raleway, sans-serif;--wp--preset--font-family--roboto: Roboto, sans-serif;--wp--preset--font-family--roboto-slab: 'Roboto Slab', serif;--wp--preset--font-family--rubik: Rubik, sans-serif;--wp--preset--font-family--rufina: Rufina, serif;--wp--preset--font-family--sora: Sora, sans-serif;--wp--preset--font-family--source-sans-3: 'Source Sans 3', sans-serif;--wp--preset--font-family--source-serif-4: 'Source Serif 4', serif;--wp--preset--font-family--space-mono: 'Space Mono', monospace;--wp--preset--font-family--syne: Syne, sans-serif;--wp--preset--font-family--texturina: Texturina, serif;--wp--preset--font-family--urbanist: Urbanist, sans-serif;--wp--preset--font-family--work-sans: 'Work Sans', sans-serif;--wp--preset--text-shadow--light: 0.05em 0.05em 0.1em rgba(0, 0, 0, 0.3);--wp--preset--text-shadow--strong: 0.1em 0.1em 0.25em rgba(0, 0, 0, 0.5);--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);--wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);}.wp-block-button{--wp--preset--dimension--25: 25%;--wp--preset--dimension--50: 50%;--wp--preset--dimension--75: 75%;--wp--preset--dimension--100: 100%;}:where(body) { margin: 0; }:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}body{padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}:root :where(.wp-element-button, .wp-block-button__link){background-color: #32373c;border-width: 0;color: #fff;font-family: inherit;font-size: inherit;font-style: inherit;font-weight: inherit;letter-spacing: inherit;line-height: inherit;padding-top: calc(0.667em + 2px);padding-right: calc(1.333em + 2px);padding-bottom: calc(0.667em + 2px);padding-left: calc(1.333em + 2px);text-decoration: none;text-transform: inherit;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}
239.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}.has-albert-sans-font-family{font-family: var(--wp--preset--font-family--albert-sans) !important;}.has-alegreya-font-family{font-family: var(--wp--preset--font-family--alegreya) !important;}.has-arvo-font-family{font-family: var(--wp--preset--font-family--arvo) !important;}.has-bodoni-moda-font-family{font-family: var(--wp--preset--font-family--bodoni-moda) !important;}.has-bricolage-grotesque-font-family{font-family: var(--wp--preset--font-family--bricolage-grotesque) !important;}.has-cabin-font-family{font-family: var(--wp--preset--font-family--cabin) !important;}.has-chivo-font-family{font-family: var(--wp--preset--font-family--chivo) !important;}.has-commissioner-font-family{font-family: var(--wp--preset--font-family--commissioner) !important;}.has-cormorant-font-family{font-family: var(--wp--preset--font-family--cormorant) !important;}.has-courier-prime-font-family{font-family: var(--wp--preset--font-family--courier-prime) !important;}.has-crimson-pro-font-family{font-family: var(--wp--preset--font-family--crimson-pro) !important;}.has-dm-mono-font-family{font-family: var(--wp--preset--font-family--dm-mono) !important;}.has-dm-sans-font-family{font-family: var(--wp--preset--font-family--dm-sans) !important;}.has-dm-serif-display-font-family{font-family: var(--wp--preset--font-family--dm-serif-display) !important;}.has-domine-font-family{font-family: var(--wp--preset--font-family--domine) !important;}.has-eb-garamond-font-family{font-family: var(--wp--preset--font-family--eb-garamond) !important;}.has-epilogue-font-family{font-family: var(--wp--preset--font-family--epilogue) !important;}.has-fahkwang-font-family{font-family: var(--wp--preset--font-family--fahkwang) !important;}.has-figtree-font-family{font-family: var(--wp--preset--font-family--figtree) !important;}.has-fira-sans-font-family{font-family: var(--wp--preset--font-family--fira-sans) !important;}.has-fjalla-one-font-family{font-family: var(--wp--preset--font-family--fjalla-one) !important;}.has-fraunces-font-family{font-family: var(--wp--preset--font-family--fraunces) !important;}.has-gabarito-font-family{font-family: var(--wp--preset--font-family--gabarito) !important;}.has-ibm-plex-mono-font-family{font-family: var(--wp--preset--font-family--ibm-plex-mono) !important;}.has-ibm-plex-sans-font-family{font-family: var(--wp--preset--font-family--ibm-plex-sans) !important;}.has-ibarra-real-nova-font-family{font-family: var(--wp--preset--font-family--ibarra-real-nova) !important;}.has-instrument-serif-font-family{font-family: var(--wp--preset--font-family--instrument-serif) !important;}.has-inter-font-family{font-family: var(--wp--preset--font-family--inter) !important;}.has-josefin-sans-font-family{font-family: var(--wp--preset--font-family--josefin-sans) !important;}.has-jost-font-family{font-family: var(--wp--preset--font-family--jost) !important;}.has-libre-baskerville-font-family{font-family: var(--wp--preset--font-family--libre-baskerville) !important;}.has-libre-franklin-font-family{font-family: var(--wp--preset--font-family--libre-franklin) !important;}.has-literata-font-family{font-family: var(--wp--preset--font-family--literata) !important;}.has-lora-font-family{font-family: var(--wp--preset--font-family--lora) !important;}.has-merriweather-font-family{font-family: var(--wp--preset--font-family--merriweather) !important;}.has-montserrat-font-family{font-family: var(--wp--preset--font-family--montserrat) !important;}.has-newsreader-font-family{font-family: var(--wp--preset--font-family--newsreader) !important;}.has-noto-sans-mono-font-family{font-family: var(--wp--preset--font-family--noto-sans-mono) !important;}.has-nunito-font-family{font-family: var(--wp--preset--font-family--nunito) !important;}.has-open-sans-font-family{font-family: var(--wp--preset--font-family--open-sans) !important;}.has-overpass-font-family{font-family: var(--wp--preset--font-family--overpass) !important;}.has-pt-serif-font-family{font-family: var(--wp--preset--font-family--pt-serif) !important;}.has-petrona-font-family{font-family: var(--wp--preset--font-family--petrona) !important;}.has-piazzolla-font-family{font-family: var(--wp--preset--font-family--piazzolla) !important;}.has-playfair-display-font-family{font-family: var(--wp--preset--font-family--playfair-display) !important;}.has-plus-jakarta-sans-font-family{font-family: var(--wp--preset--font-family--plus-jakarta-sans) !important;}.has-poppins-font-family{font-family: var(--wp--preset--font-family--poppins) !important;}.has-raleway-font-family{font-family: var(--wp--preset--font-family--raleway) !important;}.has-roboto-font-family{font-family: var(--wp--preset--font-family--roboto) !important;}.has-roboto-slab-font-family{font-family: var(--wp--preset--font-family--roboto-slab) !important;}.has-rubik-font-family{font-family: var(--wp--preset--font-family--rubik) !important;}.has-rufina-font-family{font-family: var(--wp--preset--font-family--rufina) !important;}.has-sora-font-family{font-family: var(--wp--preset--font-family--sora) !important;}.has-source-sans-3-font-family{font-family: var(--wp--preset--font-family--source-sans-3) !important;}.has-source-serif-4-font-family{font-family: var(--wp--preset--font-family--source-serif-4) !important;}.has-space-mono-font-family{font-family: var(--wp--preset--font-family--space-mono) !important;}.has-syne-font-family{font-family: var(--wp--preset--font-family--syne) !important;}.has-texturina-font-family{font-family: var(--wp--preset--font-family--texturina) !important;}.has-urbanist-font-family{font-family: var(--wp--preset--font-family--urbanist) !important;}.has-work-sans-font-family{font-family: var(--wp--preset--font-family--work-sans) !important;}.has-light-text-shadow{text-shadow: var(--wp--preset--text-shadow--light) !important;}.has-strong-text-shadow{text-shadow: var(--wp--preset--text-shadow--strong) !important;}
240/*# sourceURL=global-styles-inline-css */
241</style>
242
243<link crossorigin='anonymous' rel='stylesheet' id='screen-css-15-1' href='/wp-content/themes/pub/oxygen/style.css?m=1788978529i&cssminify=yes' type='text/css' media='screen' />
244<link rel='stylesheet' id='font-abel-css' href='https://fonts-api.wp.com/css?family=Abel&#038;ver=20120821' media='all' />
245<link crossorigin='anonymous' rel='stylesheet' id='all-css-18-1' href='/_static/??-eJx9y0EKwkAMheELGUNhRF2IZ2lDjCOZZGhmqL29dVc37t4P78OlArk1tobtyYUDa5/Q36uwYTbCaKsyLJW8HCnigDtROlTtki1w5kldtim4vXb5Dwk7qNPYsttPwEPHPH/pvdyGdLqmdDkP6fUBzX1Amw==&cssminify=yes' type='text/css' media='all' />
246<link crossorigin='anonymous' rel='stylesheet' id='print-css-19-1' href='/wp-content/mu-plugins/global-print/global-print.css?m=1465851035i&cssminify=yes' type='text/css' media='print' />
247<link crossorigin='anonymous' rel='stylesheet' id='all-css-20-1' href='/wp-content/mu-plugins/infinity/themes/pub/oxygen.css?m=1339516582i&cssminify=yes' type='text/css' media='all' />
248<style id="jetpack-global-styles-frontend-style-inline-css">
249:root { --font-headings: unset; --font-base: unset; --font-headings-default: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif; --font-base-default: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;}
250/*# sourceURL=jetpack-global-styles-frontend-style-inline-css */
251</style>
252<link crossorigin='anonymous' rel='stylesheet' id='all-css-22-1' href='/wp-content/themes/h4/global.css?m=1420737423i&cssminify=yes' type='text/css' media='all' />
253<script id="wpcom-actionbar-placeholder-js-extra">
254var actionbardata = {"siteID":"40923151","postID":"10","siteURL":"https://davesnow.ca","xhrURL":"https://davesnow.ca/wp-admin/admin-ajax.php","nonce":"b1eff1f886","isLoggedIn":"","statusMessage":"","statusSubscribed":"","subsEmailDefault":"instantly","proxyScriptUrl":"https://s0.wp.com/wp-content/js/wpcom-proxy-request.js?m=1513050504i&amp;ver=20211021","shortlink":"https://wp.me/P2LHYP-a","i18n":{"followedText":"New posts from this site will now appear in your \u003Ca href=\"https://wordpress.com/reader\"\u003EReader\u003C/a\u003E","foldBar":"Collapse this bar","unfoldBar":"Expand this bar","shortLinkCopied":"Copied to clipboard."}};
255//# sourceURL=wpcom-actionbar-placeholder-js-extra
256</script>
vendor: 1 bytes, line 256
256
257<script id="jetpack-mu-wpcom-settings-js-before">
258var JETPACK_MU_WPCOM_SETTINGS = {"assetsUrl":"https://s1.wp.com/wp-content/mu-plugins/jetpack-mu-wpcom-plugin/sun/jetpack_vendor/automattic/jetpack-mu-wpcom/src/build/"};
259//# sourceURL=jetpack-mu-wpcom-settings-js-before
260</script>
vendor: 1 bytes, line 260
260
261<script crossorigin='anonymous' type='text/javascript'  src='/_static/??-eJyFjUEOwiAQRS/kdFSidWM8CwIhEBhwBlp7e9uoiTtXb/Ff3se5ginUHDWMgpwaVC7PZYiyw3ULZFK3TrYxPrrj5YMhB/orQQ6edXO/8vftnoqHmroPJDgXttoKmKRF3iGTK07HDUCFwNvKa+KWr4fxsj+dR6VUfAGZHkVc'></script>
vendor: 1 bytes, line 261
261
262<script id="rlt-proxy-js-after">
263	rltInitialize( {"token":null,"iframeOrigins":["https:\/\/widgets.wp.com"]} );
264//# sourceURL=rlt-proxy-js-after
265</script>
265
266<link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://daveasnow.wordpress.com/xmlrpc.php?rsd" />
267<meta name="generator" content="WordPress.com" />
268<link rel="canonical" href="https://davesnow.ca/teaching/" />
269<link rel='shortlink' href='https://wp.me/P2LHYP-a' />
270<link rel="alternate" type="application/json+oembed" href="https://public-api.wordpress.com/oembed/?format=json&amp;url=https%3A%2F%2Fdavesnow.ca%2Fteaching%2F&amp;for=wpcom-auto-discovery" /><link rel="alternate" type="application/xml+oembed" href="https://public-api.wordpress.com/oembed/?format=xml&amp;url=https%3A%2F%2Fdavesnow.ca%2Fteaching%2F&amp;for=wpcom-auto-discovery" />
271<!-- Jetpack Open Graph Tags -->
272<meta property="og:type" content="article" />
273<meta property="og:title" content="Teaching" />
274<meta property="og:url" content="https://davesnow.ca/teaching/" />
275<meta property="og:description" content="University of&nbsp;Guelph (2015 &#8211; ) POLS 2230: Public Policy POLS 3130: Law, Politics and Judicial Process POLS 3140: The Politics of the Charter POLS 3210: The Constitution and Canadian Fede…" />
276<meta property="article:published_time" content="2012-09-30T23:47:53+00:00" />
277<meta property="article:modified_time" content="2024-11-15T15:27:38+00:00" />
278<meta property="og:site_name" content="Dave Snow - University of Guelph" />
279<meta property="og:image" content="https://secure.gravatar.com/blavatar/7dab8d72da1bf90ae1d6c95070e17aab085f8cdfb36ae8fff8152d2400101cd4?s=200&#038;ts=1791411729" />
280<meta property="og:image:width" content="200" />
281<meta property="og:image:height" content="200" />
282<meta property="og:image:alt" content="" />
283<meta property="og:locale" content="en_US" />
284<meta property="article:publisher" content="https://www.facebook.com/WordPresscom" />
285<meta name="twitter:text:title" content="Teaching" />
286<meta name="twitter:image" content="https://secure.gravatar.com/blavatar/7dab8d72da1bf90ae1d6c95070e17aab085f8cdfb36ae8fff8152d2400101cd4?s=240" />
287<meta name="twitter:card" content="summary" />
288
289<!-- End Jetpack Open Graph Tags -->
290<link rel="shortcut icon" type="image/x-icon" href="https://secure.gravatar.com/blavatar/7dab8d72da1bf90ae1d6c95070e17aab085f8cdfb36ae8fff8152d2400101cd4?s=32" sizes="16x16" />
291<link rel="icon" type="image/x-icon" href="https://secure.gravatar.com/blavatar/7dab8d72da1bf90ae1d6c95070e17aab085f8cdfb36ae8fff8152d2400101cd4?s=32" sizes="16x16" />
292<link rel="apple-touch-icon" href="https://secure.gravatar.com/blavatar/7dab8d72da1bf90ae1d6c95070e17aab085f8cdfb36ae8fff8152d2400101cd4?s=114" />
293<link rel='openid.server' href='https://davesnow.ca/?openidserver=1' />
294<link rel='openid.delegate' href='https://davesnow.ca/' />
295<link rel="search" type="application/opensearchdescription+xml" href="https://davesnow.ca/osd.xml" title="Dave Snow - University of Guelph" />
296<link rel="search" type="application/opensearchdescription+xml" href="https://s1.wp.com/opensearch.xml" title="WordPress.com" />
297<meta name="theme-color" content="#fcfcfc" />
298	<style type="text/css">
299		#page {
300			background-color: #fcfcfc		}
301	</style>
302	<style>
303		html {
304			font-size: 16px;
305		}
306		h1, h2, h3, h4, h5, h6, dl dt, blockquote, blockquote blockquote blockquote, .site-title, .main-navigation a, .widget_calendar caption {
307			font-family: 'Abel', sans-serif;
308		}
309		.error, .entry-title a, .entry-content a, entry-summary a, .main-navigation > div > ul > li > a, .widget a, .post-navigation a, #image-navigation a, .pingback a, .logged-in-as a, .more-articles .entry-title a:hover, .widget_flickr #flickr_badge_uber_wrapper a {
310			color: #224f87;
311		}
312		a:hover, .comment-meta a, .comment-meta a:visited {
313			border-color: #224f87;
314		}
315		a.read-more, a.read-more:visited, .pagination a:hover, .comment-navigation a:hover, button, html input[type="button"], input[type="reset"], input[type="submit"], #infinite-handle span {
316			background-color: #224f87;
317		}
318	</style>
319<meta name="description" content="University of&nbsp;Guelph (2015 - ) POLS 2230: Public Policy POLS 3130: Law, Politics and Judicial Process POLS 3140: The Politics of the Charter POLS 3210: The Constitution and Canadian Federalism POLS 4070: Courts and Parliament POLS 4260: Topics in Public Policy POLS 6630: Approaches to Public Policy CCJP 6000: Courts (beginning Winter 2025) CCJP 6200:&hellip;" />
320	<style type="text/css">
321			.site-title a {
322			color: #000000;
323		}
324		</style>
325	<style id="custom-background-css">
326body.custom-background { background-color: #fcfcfc; }
327</style>
328<script>
329var wa_client = {}; wa_client.cmd = []; wa_client.config = { 'blog_id': 40923151, 'blog_language': 'en', 'is_wordads': false, 'hosting_type': 0, 'afp_account_id': null, 'afp_host_id': 5038568878849053, 'theme': 'pub/oxygen', '_': { 'title': 'Advertisement', 'privacy_settings': 'Privacy Settings' }, 'formats': [ 'inline', 'belowpost', 'bottom_sticky', 'sidebar_sticky_right', 'sidebar', 'gutenberg_rectangle', 'gutenberg_leaderboard', 'gutenberg_mobile_leaderboard', 'gutenberg_skyscraper' ] };
330</script>
330
331		
331<script type="text/javascript">
332
333			window.doNotSellCallback = function() {
334
335				var linkElements = [
336					'a[href="https://wordpress.com/?ref=footer_blog"]',
337					'a[href="https://wordpress.com/?ref=footer_website"]',
338					'a[href="https://wordpress.com/?ref=vertical_footer"]',
339					'a[href^="https://wordpress.com/?ref=footer_segment_"]',
340				].join(',');
341
342				var dnsLink = document.createElement( 'a' );
343				dnsLink.href = 'https://wordpress.com/advertising-program-optout/';
344				dnsLink.classList.add( 'do-not-sell-link' );
345				dnsLink.rel = 'nofollow';
346				dnsLink.style.marginLeft = '0.5em';
347				dnsLink.textContent = 'Do Not Sell or Share My Personal Information';
348
349				var creditLinks = document.querySelectorAll( linkElements );
350
351				if ( 0 === creditLinks.length ) {
352					return false;
353				}
354
355				Array.prototype.forEach.call( creditLinks, function( el ) {
356					el.insertAdjacentElement( 'afterend', dnsLink );
357				});
358
359				return true;
360			};
361
362		</script>
362
363		<style type="text/css" id="custom-colors-css">.menu-secondary li a:hover { background-color: #000000;}
364.menu-secondary li a:hover { background-color: rgba( 0, 0, 0, 0.2 );}
365.menu-secondary li { border-color: #252525;}
366.menu-secondary li { border-color: rgba( 37, 37, 37, 0.1 );}
367.menu-secondary li a, .menu-secondary li.current-menu-item li a, .menu-secondary li.current-page-item li a { color: #CCCCCC;}
368.menu-secondary li li a { color: #888888;}
369.menu-secondary li.current-menu-item a, .menu-secondary li.current-page-item a { color: #848484;}
370.menu-secondary li.current-menu-item li a:hover, .menu-secondary li.current-page-item li a:hover { color: #FFFFFF;}
371body { background-color: #f4f4f4;}
372.error, .entry-title a, .entry-content a, entry-summary a, .main-navigation > div > ul > li > a, .widget a, .post-navigation a, #image-navigation a, .pingback a, .logged-in-as a, .more-articles .entry-title a:hover, .widget_flickr #flickr_badge_uber_wrapper a { color: #026F90;}
373a:hover, .comment-meta a, .comment-meta a:visited { border-color: #026F90;}
374a.read-more, a.read-more:visited, .pagination a:hover, .comment-navigation a:hover, button, html input[type="button"], input[type="reset"], input[type="submit"], #infinite-handle span { background-color: #026F90;}
375.entry-title a:hover, .entry-meta a:hover, .page-links a:hover, .comment-meta a:hover, .widget ul li a:hover, .widget_flickr #flickr_badge_uber_wrapper a:hover { color: #000000;}
376.menu-secondary, .menu-secondary li, .menu-secondary li a { background-color: #111111;}
377</style>
378<script type="text/javascript">
379	window.google_analytics_uacct = "UA-52447-2";
380</script>
380
381
382<script type="text/javascript">
383	var _gaq = _gaq || [];
384	_gaq.push(['_setAccount', 'UA-52447-2']);
385	_gaq.push(['_gat._anonymizeIp']);
386	_gaq.push(['_setDomainName', 'none']);
387	_gaq.push(['_setAllowLinker', true]);
388	_gaq.push(['_initData']);
389	_gaq.push(['_trackPageview']);
390
391	(function() {
392		var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
393		ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
394		(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(ga);
395	})();
396</script>
396
397</head>
398
399<body class="wp-singular page-template-default page page-id-10 custom-background wp-theme-puboxygen no-js customizer-styles-applied jetpack-reblog-enabled has-marketing-bar has-marketing-bar-theme-oxygen">
400<div id="page" class="hfeed site">
401		<header id="masthead" class="site-header" role="banner">
402		<hgroup>
403			<a href="https://davesnow.ca/" class="site-logo-link" rel="home" itemprop="url"></a>			<h1 class="site-title"><a href="https://davesnow.ca/" title="Dave Snow &#8211; University of Guelph" rel="home">Dave Snow &#8211; University of Guelph</a></h1>
404			<h2 class="site-description"></h2>
405		</hgroup>
406
407		
408		
409			<a href="https://davesnow.ca/" title="Dave Snow &#8211; University of Guelph" rel="home">
410				<img src="https://davesnow.ca/wp-content/uploads/2025/11/cropped-snow-headshot-2025-copy-2.jpeg" width="1500" height="1096" alt="" class="custom-header" />
411			</a>
412
413		
414		<nav role="navigation" class="site-navigation main-navigation clear-fix">
415			<h1 class="assistive-text">Main Menu</h1>
416			<div class="assistive-text skip-link"><a href="#content" title="Skip to content">Skip to content</a></div>
417
418			<div class="menu-menu-container"><ul id="menu-menu" class="menu"><li id="menu-item-217" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-home menu-item-217"><a href="https://davesnow.ca/">Home</a></li>
419<li id="menu-item-216" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-216"><a href="https://davesnow.ca/biography-2/">Biography</a></li>
420<li id="menu-item-218" class="menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-10 current_page_item menu-item-218"><a href="https://davesnow.ca/teaching/" aria-current="page">Teaching</a></li>
421<li id="menu-item-219" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-219"><a href="https://davesnow.ca/publications/">Publications</a></li>
422<li id="menu-item-220" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-220"><a href="https://davesnow.ca/research/">Research and Employment</a></li>
423<li id="menu-item-215" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-215"><a target="_blank" rel="noopener" href="https://daveasnow.wordpress.com/wp-content/uploads/2026/06/snow-cv-new-4.pdf">CV</a></li>
424</ul></div>		</nav>
425	</header><!-- #masthead .site-header -->
426
427	<div id="main" class="clear-fix">
428		<div id="primary" class="site-content">
429			<div id="content" role="main">
430
431				
432					
433<article id="post-10" class="post-10 page type-page status-publish hentry">
434	<header class="entry-header">
435		<h1 class="entry-title">Teaching</h1>
436	</header><!-- .entry-header -->
437
438	<div class="entry-content clear-fix">
439		
440<p style="font-size:18px;line-height:1.5"><strong>University of&nbsp;Guelph (2015 &#8211; )</strong>
441
442<br>POLS 2230: Public Policy
443
444<br>POLS 3130: Law, Politics and Judicial Process
445
446<br>POLS 3140: The Politics of the Charter
447
448<br>POLS 3210: The Constitution and Canadian Federalism
449
450<br>POLS 4070: Courts and Parliament
451
452<br>POLS 4260: Topics in Public Policy
453
454<br>POLS 6630: Approaches to Public Policy
455
456<br>CCJP 6000: Courts (beginning Winter 2025)
457
458<br>CCJP 6200: Professional Seminar
459
460</p>
461
462
463
464<p style="font-size:18px;line-height:1.5"><strong>University of Calgary (2012)</strong><br>POLI 201: Introduction to Government and Politics<br>POLI 343: Law, Power, and the Judicial Process</p>
465<div id="atatags-370373-6ac6c6110b5d0">
466		
466<script type="text/javascript">
467			__ATA = window.__ATA || {};
468			__ATA.cmd = window.__ATA.cmd || [];
469			__ATA.cmd.push(function() {
470				__ATA.initVideoSlot('atatags-370373-6ac6c6110b5d0', {
471					sectionId: '370373',
472					format: 'inread'
473				});
474			});
475		</script>
475
476	</div><span id="wordads-inline-marker" style="display: none;"></span>			</div><!-- .entry-content -->
477	<footer class="entry-meta">
478			</footer>
479</article><!-- #post-10 -->
480
481					
482	
483	<div id="comments" class="comments-area">
484
485	
486	
487	
488	
489</div><!-- #comments .comments-area -->
490				
491			</div><!-- #content -->
492		</div><!-- #primary .site-content -->
493
494<div id="secondary" class="clear-fix" role="complementary">
495
496
497	<div class="widget-area" role="complementary">
498
499	
500	<aside id="text-5" class="widget widget_text"><h1 class="widgettitle"> </h1>			<div class="textwidget"> </div>
501		</aside>
502	</div><!-- .widget-area -->
503
504</div><!-- #secondary -->
505<div id="tertiary" class="widget-area" role="complementary">
506
507	
508	<aside id="text-3" class="widget widget_text"><h1 class="widgettitle">Contact Info</h1>			<div class="textwidget"><span style="font-size:18px;"><b>Mailing Address:</b><br>
509Department of Political Science<br>
5105th Floor MacKinnon Building<br>
511University of Guelph<br>
512Guelph, ON N1G 2W1 <p><br>
513</span>
514
515<span style="font-size:18px;">
516<b>Email:</b> <a href="mailto:[email protected]">[email protected]</a></span></div>
517		</aside>
518</div><!-- #secondary .widget-area -->
519
520	</div><!-- #main -->
521
522	
523	<footer id="colophon" class="site-footer clear-fix" role="contentinfo">
524		<div class="site-info">
525						<a href="https://wordpress.com/?ref=footer_website" rel="nofollow">Create a free website or blog at WordPress.com.</a>
526			
527					</div><!-- .site-info -->
528			</footer><!-- .site-footer .site-footer -->
529</div><!-- #page .hfeed .site -->
530
531<!--  -->
532<script type="speculationrules">
533{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/files/*","/wp-content/*","/wp-content/plugins/*","/wp-content/themes/pub/oxygen/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]}
534</script>
vendor: 1 bytes, line 534
534
535<script id="grofiles-cards-js" src="//0.gravatar.com/js/hovercards/hovercards.min.js?ver=202641d1133547e8a1f2801609f51cef12522abe7f6647d869e9fbc974fe356a37e613"></script>
vendor: 1 bytes, line 535
535
536<script id="wpgroho-js-extra">
537var WPGroHo = {"my_hash":""};
538//# sourceURL=wpgroho-js-extra
539</script>
vendor: 1 bytes, line 539
539
540<script crossorigin='anonymous' type='text/javascript'  src='/wp-content/mu-plugins/gravatar-hovercards/wpgroho.js?m=1610363240i'></script>
540
541
542	
542<script>
543		// Initialize and attach hovercards to all gravatars
544		( function() {
545			function init() {
546				if ( typeof Gravatar === 'undefined' ) {
547					return;
548				}
549
550				if ( typeof Gravatar.init !== 'function' ) {
551					return;
552				}
553
554				Gravatar.profile_cb = function ( hash, id ) {
555					WPGroHo.syncProfileData( hash, id );
556				};
557
558				Gravatar.my_hash = WPGroHo.my_hash;
559				Gravatar.init(
560					'body',
561					'#wp-admin-bar-my-account',
562					{
563						i18n: {
564							'Edit your profile →': 'Edit your profile →',
565							'View profile →': 'View profile →',
566							'Contact': 'Contact',
567							'Send money': 'Send money',
568							'Sorry, we are unable to load this Gravatar profile.': 'Sorry, we are unable to load this Gravatar profile.',
569							'Gravatar not found.': 'Gravatar not found.',
570							'Too Many Requests.': 'Too Many Requests.',
571							'Internal Server Error.': 'Internal Server Error.',
572							'Is this you?': 'Is this you?',
573							'Claim your free profile.': 'Claim your free profile.',
574							'Email': 'Email',
575							'Home Phone': 'Home Phone',
576							'Work Phone': 'Work Phone',
577							'Cell Phone': 'Cell Phone',
578							'Contact Form': 'Contact Form',
579							'Calendar': 'Calendar',
580						},
581					}
582				);
583			}
584
585			if ( document.readyState !== 'loading' ) {
586				init();
587			} else {
588				document.addEventListener( 'DOMContentLoaded', init );
589			}
590		} )();
591	</script>
591
592
593		<div style="display:none">
594	</div>
595		<!-- CCPA [start] -->
596		
596<script type="text/javascript">
597			( function () {
598
599				var setupPrivacy = function() {
600
601					// Minimal Mozilla Cookie library
602					// https://developer.mozilla.org/en-US/docs/Web/API/Document/cookie/Simple_document.cookie_framework
603					var cookieLib = window.cookieLib = {getItem:function(e){return e&&decodeURIComponent(document.cookie.replace(new RegExp("(?:(?:^|.*;)\\s*"+encodeURIComponent(e).replace(/[\-\.\+\*]/g,"\\$&")+"\\s*\\=\\s*([^;]*).*$)|^.*$"),"$1"))||null},setItem:function(e,o,n,t,r,i){if(!e||/^(?:expires|max\-age|path|domain|secure)$/i.test(e))return!1;var c="";if(n)switch(n.constructor){case Number:c=n===1/0?"; expires=Fri, 31 Dec 9999 23:59:59 GMT":"; max-age="+n;break;case String:c="; expires="+n;break;case Date:c="; expires="+n.toUTCString()}return"rootDomain"!==r&&".rootDomain"!==r||(r=(".rootDomain"===r?".":"")+document.location.hostname.split(".").slice(-2).join(".")),document.cookie=encodeURIComponent(e)+"="+encodeURIComponent(o)+c+(r?"; domain="+r:"")+(t?"; path="+t:"")+(i?"; secure":""),!0}};
604
605					// Implement IAB USP API.
606					window.__uspapi = function( command, version, callback ) {
607
608						// Validate callback.
609						if ( typeof callback !== 'function' ) {
610							return;
611						}
612
613						// Validate the given command.
614						if ( command !== 'getUSPData' || version !== 1 ) {
615							callback( null, false );
616							return;
617						}
618
619						// Check for GPC. If set, override any stored cookie.
620						if ( navigator.globalPrivacyControl ) {
621							callback( { version: 1, uspString: '1YYN' }, true );
622							return;
623						}
624
625						// Check for cookie.
626						var consent = cookieLib.getItem( 'usprivacy' );
627
628						// Invalid cookie.
629						if ( null === consent ) {
630							callback( null, false );
631							return;
632						}
633
634						// Everything checks out. Fire the provided callback with the consent data.
635						callback( { version: 1, uspString: consent }, true );
636					};
637
638					// Initialization.
639					document.addEventListener( 'DOMContentLoaded', function() {
640
641						// Internal functions.
642						var setDefaultOptInCookie = function() {
643							var value = '1YNN';
644							var domain = '.wordpress.com' === location.hostname.slice( -14 ) ? '.rootDomain' : location.hostname;
645							cookieLib.setItem( 'usprivacy', value, 365 * 24 * 60 * 60, '/', domain );
646						};
647
648						var setDefaultOptOutCookie = function() {
649							var value = '1YYN';
650							var domain = '.wordpress.com' === location.hostname.slice( -14 ) ? '.rootDomain' : location.hostname;
651							cookieLib.setItem( 'usprivacy', value, 24 * 60 * 60, '/', domain );
652						};
653
654						var setDefaultNotApplicableCookie = function() {
655							var value = '1---';
656							var domain = '.wordpress.com' === location.hostname.slice( -14 ) ? '.rootDomain' : location.hostname;
657							cookieLib.setItem( 'usprivacy', value, 24 * 60 * 60, '/', domain );
658						};
659
660						var setCcpaAppliesCookie = function( applies ) {
661							var domain = '.wordpress.com' === location.hostname.slice( -14 ) ? '.rootDomain' : location.hostname;
662							cookieLib.setItem( 'ccpa_applies', applies, 24 * 60 * 60, '/', domain );
663						}
664
665						var maybeCallDoNotSellCallback = function() {
666							if ( 'function' === typeof window.doNotSellCallback ) {
667								return window.doNotSellCallback();
668							}
669
670							return false;
671						}
672
673						// Look for usprivacy cookie first.
674						var usprivacyCookie = cookieLib.getItem( 'usprivacy' );
675
676						// Found a usprivacy cookie.
677						if ( null !== usprivacyCookie ) {
678
679							// If the cookie indicates that CCPA does not apply, then bail.
680							if ( '1---' === usprivacyCookie ) {
681								return;
682							}
683
684							// CCPA applies, so call our callback to add Do Not Sell link to the page.
685							maybeCallDoNotSellCallback();
686
687							// We're all done, no more processing needed.
688							return;
689						}
690
691						// We don't have a usprivacy cookie, so check to see if we have a CCPA applies cookie.
692						var ccpaCookie = cookieLib.getItem( 'ccpa_applies' );
693
694						// No CCPA applies cookie found, so we'll need to geolocate if this visitor is from California.
695						// This needs to happen client side because we do not have region geo data in our $SERVER headers,
696						// only country data -- therefore we can't vary cache on the region.
697						if ( null === ccpaCookie ) {
698
699							var request = new XMLHttpRequest();
700							request.open( 'GET', 'https://public-api.wordpress.com/geo/', true );
701
702							request.onreadystatechange = function () {
703								if ( 4 === this.readyState ) {
704									if ( 200 === this.status ) {
705
706										// Got a geo response. Parse out the region data.
707										var data = JSON.parse( this.response );
708										var region      = data.region ? data.region.toLowerCase() : '';
709										var ccpa_applies = ['california', 'colorado', 'connecticut', 'delaware', 'indiana', 'iowa', 'montana', 'new jersey', 'oregon', 'tennessee', 'texas', 'utah', 'virginia'].indexOf( region ) > -1;
710										// Set CCPA applies cookie. This keeps us from having to make a geo request too frequently.
711										setCcpaAppliesCookie( ccpa_applies );
712
713										// Check if CCPA applies to set the proper usprivacy cookie.
714										if ( ccpa_applies ) {
715											if ( maybeCallDoNotSellCallback() ) {
716												// Do Not Sell link added, so set default opt-in.
717												setDefaultOptInCookie();
718											} else {
719												// Failed showing Do Not Sell link as required, so default to opt-OUT just to be safe.
720												setDefaultOptOutCookie();
721											}
722										} else {
723											// CCPA does not apply.
724											setDefaultNotApplicableCookie();
725										}
726									} else {
727										// Could not geo, so let's assume for now that CCPA applies to be safe.
728										setCcpaAppliesCookie( true );
729										if ( maybeCallDoNotSellCallback() ) {
730											// Do Not Sell link added, so set default opt-in.
731											setDefaultOptInCookie();
732										} else {
733											// Failed showing Do Not Sell link as required, so default to opt-OUT just to be safe.
734											setDefaultOptOutCookie();
735										}
736									}
737								}
738							};
739
740							// Send the geo request.
741							request.send();
742						} else {
743							// We found a CCPA applies cookie.
744							if ( ccpaCookie === 'true' ) {
745								if ( maybeCallDoNotSellCallback() ) {
746									// Do Not Sell link added, so set default opt-in.
747									setDefaultOptInCookie();
748								} else {
749									// Failed showing Do Not Sell link as required, so default to opt-OUT just to be safe.
750									setDefaultOptOutCookie();
751								}
752							} else {
753								// CCPA does not apply.
754								setDefaultNotApplicableCookie();
755							}
756						}
757					} );
758				};
759
760				// Kickoff initialization.
761				if ( window.defQueue && defQueue.isLOHP && defQueue.isLOHP === 2020 ) {
762					defQueue.items.push( setupPrivacy );
763				} else {
764					setupPrivacy();
765				}
766
767			} )();
768		</script>
768
769
770		<!-- CCPA [end] -->
771		<div class="widget widget_eu_cookie_law_widget">
772<div
773	class="hide-on-button ads-active"
774	data-hide-timeout="30"
775	data-consent-expiration="180"
776	id="eu-cookie-law"
777	style="display: none"
778>
779	<form method="post">
780		<input type="submit" value="Close and accept" class="accept" />
781
782		Privacy &amp; Cookies: This site uses cookies. By continuing to use this website, you agree to their use. <br />
783To find out more, including how to control cookies, see here:
784				<a href="https://automattic.com/cookies/" rel="nofollow">
785			Cookie Policy		</a>
786 </form>
787</div>
788</div>			<div id="actionbar" dir="ltr" style="display: none;"
789				class="actnbr-pub-oxygen" role="region" aria-label="Site actions">
790			<span class="actnbr-live" aria-live="polite"></span>
791			<ul>
792								<li class="actnbr-ellipsis actnbr-hidden">
793					<button type="button" class="actnbr-more-toggle" aria-haspopup="true" aria-expanded="false" aria-label="More options">
794						<svg class="actnbr-icon actnbr-icon-more-horizontal" width="24" height="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" fill="currentColor"><path d="M11 13h2v-2h-2v2zm-6 0h2v-2H5v2zm12-2v2h2v-2h-2z"/></svg>					</button>
795					<div class="actnbr-popover actnbr-menu" role="menu" aria-label="Site options">
796						<div class="actnbr-menu__group" role="group"><a role="menuitem" class="actnbr-menu__item actnbr-sitename" href="https://davesnow.ca"><img loading='lazy' alt='' src='https://secure.gravatar.com/blavatar/7dab8d72da1bf90ae1d6c95070e17aab085f8cdfb36ae8fff8152d2400101cd4?s=50&#038;d=https%3A%2F%2Fs-ssl.wordpress.com%2Fi%2Flogo%2Fwpcom-gray-white.png' srcset='https://secure.gravatar.com/blavatar/7dab8d72da1bf90ae1d6c95070e17aab085f8cdfb36ae8fff8152d2400101cd4?s=50&#038;d=https%3A%2F%2Fs-ssl.wordpress.com%2Fi%2Flogo%2Fwpcom-gray-white.png 1x, https://secure.gravatar.com/blavatar/7dab8d72da1bf90ae1d6c95070e17aab085f8cdfb36ae8fff8152d2400101cd4?s=75&#038;d=https%3A%2F%2Fs-ssl.wordpress.com%2Fi%2Flogo%2Fwpcom-gray-white.png 1.5x, https://secure.gravatar.com/blavatar/7dab8d72da1bf90ae1d6c95070e17aab085f8cdfb36ae8fff8152d2400101cd4?s=100&#038;d=https%3A%2F%2Fs-ssl.wordpress.com%2Fi%2Flogo%2Fwpcom-gray-white.png 2x, https://secure.gravatar.com/blavatar/7dab8d72da1bf90ae1d6c95070e17aab085f8cdfb36ae8fff8152d2400101cd4?s=150&#038;d=https%3A%2F%2Fs-ssl.wordpress.com%2Fi%2Flogo%2Fwpcom-gray-white.png 3x, https://secure.gravatar.com/blavatar/7dab8d72da1bf90ae1d6c95070e17aab085f8cdfb36ae8fff8152d2400101cd4?s=200&#038;d=https%3A%2F%2Fs-ssl.wordpress.com%2Fi%2Flogo%2Fwpcom-gray-white.png 4x' class='avatar avatar-50' height='50' width='50' /><span class="actnbr-menu__label">Dave Snow - University of Guelph</span></a></div><div class="actnbr-menu__group" role="group"><a role="menuitem" class="actnbr-menu__item actnbr-shortlink" href="https://wp.me/P2LHYP-a"><span class="actnbr-menu__label actnbr-shortlink__text">Copy shortlink</span><span class="actnbr-menu__icon actnbr-shortlink__icon"><svg class="actnbr-icon actnbr-icon-copy" width="18" height="18" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" fill="currentColor"><path fill-rule="evenodd" clip-rule="evenodd" d="M5 4.5h11a.5.5 0 0 1 .5.5v11a.5.5 0 0 1-.5.5H5a.5.5 0 0 1-.5-.5V5a.5.5 0 0 1 .5-.5ZM3 5a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5Zm17 3v10.75c0 .69-.56 1.25-1.25 1.25H6v1.5h12.75a2.75 2.75 0 0 0 2.75-2.75V8H20Z"/></svg></span><span class="actnbr-menu__icon actnbr-shortlink__icon-copied"><svg class="actnbr-icon actnbr-icon-check" width="18" height="18" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" style="fill: none" stroke="currentColor" stroke-width="1.5"><path d="M7 12L10 15L17 8" vector-effect="non-scaling-stroke"/></svg></span></a></div><div class="actnbr-menu__group" role="group"><a role="menuitem" class="actnbr-menu__item actnbr-subs" href="https://subscribe.wordpress.com/"><span class="actnbr-menu__label">Manage subscriptions</span></a><a role="menuitem" class="actnbr-menu__item actnbr-signup" href="https://wordpress.com/start/"><span class="actnbr-menu__label">Sign up</span></a><a role="menuitem" class="actnbr-menu__item actnbr-login" href="https://wordpress.com/log-in?redirect_to=https%3A%2F%2Fr-login.wordpress.com%2Fremote-login.php%3Faction%3Dlink%26back%3Dhttps%253A%252F%252Fdavesnow.ca%252Fteaching%252F"><span class="actnbr-menu__label">Log in</span></a></div><div class="actnbr-menu__group" role="group"><a role="menuitem" class="actnbr-menu__item flb-report" href="https://wordpress.com/abuse/?report_url=https://davesnow.ca/teaching/" target="_blank" rel="noopener noreferrer"><span class="actnbr-menu__label">Report this content</span><span class="actnbr-menu__icon"><svg class="actnbr-icon actnbr-icon-external" width="18" height="18" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" fill="currentColor"><path d="M19.5 4.5h-7V6h4.44l-5.97 5.97 1.06 1.06L18 7.06v4.44h1.5v-7Zm-13 1a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2v-3H17v3a.5.5 0 0 1-.5.5h-10a.5.5 0 0 1-.5-.5v-10a.5.5 0 0 1 .5-.5h3V5.5h-3Z"/></svg></span></a></div>					</div>
797				</li>
798			</ul>
799		</div>
800		
800<script>
801window.addEventListener( "DOMContentLoaded", function () {
802				var link = document.createElement( "link" );
803				link.href = "\/wp-content\/mu-plugins\/jetpack-plugin\/sun\/jetpack_vendor\/automattic\/jetpack-newsletter\/src\/..\/build\/action-bar.css?ver=35dd33285eb46dc308dd";
804				link.rel = "stylesheet";
805				document.head.appendChild( link );
806
807				var script = document.createElement( "script" );
808				script.src = "\/wp-content\/mu-plugins\/jetpack-plugin\/sun\/jetpack_vendor\/automattic\/jetpack-newsletter\/src\/..\/build\/action-bar.js?ver=35dd33285eb46dc308dd";
809				document.body.appendChild( script );
810			} );
811</script>
811
812
813	
813<script type="text/javascript">
814		(function () {
815			var wpcom_reblog = {
816				source: 'toolbar',
817
818				toggle_reblog_box_flair: function (obj_id, post_id) {
819
820					// Go to site selector. This will redirect to their blog if they only have one.
821					const postEndpoint = `https://wordpress.com/post`;
822
823					// Ideally we would use the permalink here, but fortunately this will be replaced with the 
824					// post permalink in the editor.
825					const originalURL = `${ document.location.href }?page_id=${ post_id }`; 
826					
827					const url =
828						postEndpoint +
829						'?url=' +
830						encodeURIComponent( originalURL ) +
831						'&is_post_share=true' +
832						'&v=5';
833
834					const redirect = function () {
835						if (
836							! window.open( url, '_blank' )
837						) {
838							location.href = url;
839						}
840					};
841
842					if ( /Firefox/.test( navigator.userAgent ) ) {
843						setTimeout( redirect, 0 );
844					} else {
845						redirect();
846					}
847				},
848			};
849
850			window.wpcom_reblog = wpcom_reblog;
851		})();
852	</script>
vendor: 1 bytes, line 852
852
853<script crossorigin='anonymous' type='text/javascript'  src='/_static/??/wp-content/blog-plugins/wordads-classes/js/watl-v2.js,/wp-content/mu-plugins/widgets/eu-cookie-law/templates/eu-cookie-law.js?m=1760446017j'></script>
vendor: 1 bytes, line 853
853
854<script data-wp-strategy="defer" defer id="wpcom-marketing-bar-js" src="/wp-content/blog-plugins/marketing-bar/js/marketing-bar.js?m=1790359692i&#038;ver=20260925"></script>
vendor: 1 bytes, line 854
854
855<script crossorigin='anonymous' type='text/javascript'  src='/_static/??-eJyNzdEKwjAMBdAfco1OGfogfkttw2xJ0mlatH+/MhD0Qdxr7rk38Jw6lySjZMg3ZFSYyhXSq44oEBWULVHHKMVE3cA/Hu8FH9W46ggNB3mXgjgqvvFmAtsRlZL16H8ZtpqkDX3Ea/5+Ta/pLccmL3zeDafh0O+P/TbO3wZmsA=='></script>
vendor: 1 bytes, line 855
855
856<script id="wp-emoji-settings" type="application/json">
857{"baseUrl":"https://s0.wp.com/wp-content/mu-plugins/wpcom-smileys/twemoji/2/72x72/","ext":".png","svgUrl":"https://s0.wp.com/wp-content/mu-plugins/wpcom-smileys/twemoji/2/svg/","svgExt":".svg","source":{"concatemoji":"/wp-includes/js/wp-emoji-release.min.js?m=1783090810i&ver=7.2-alpha-63973"}}
858</script>
vendor: 1 bytes, line 858
858
859<script type="module">
860/*! This file is auto-generated */
861var e="script#wp-emoji-settings",t=document.querySelector(e);if(!(t instanceof HTMLScriptElement))throw new Error("Element missing: "+e);const r=JSON.parse(t.text),s=(window._wpemojiSettings=r,"wpEmojiSettingsSupports"),o=["flag","emoji"];function i(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(s,JSON.stringify(t))}catch(e){}}function c(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0);const r=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);return t.every((e,t)=>e===r[t])}function p(e,t){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var n=e.getImageData(16,16,1,1);for(let e=0;e<n.data.length;e++)if(0!==n.data[e])return!1;return!0}function u(e,t,n,r){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\udde8\ud83c\uddf6","\ud83c\udde8\u200b\ud83c\uddf6")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!r(e,"\ud83e\udec8")}return!1}function f(e,t,n,r){let a;const s=(a="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):document.createElement("canvas")).getContext("2d",{willReadFrequently:!0}),o=(s.textBaseline="top",s.font="600 32px Arial",{});return e.forEach(e=>{o[e]=t(s,e,n,r)}),o}function a(e){var t=document.createElement("script");t.src=e,t.defer=!0,document.head.appendChild(t)}r.supports={everything:!0,everythingExceptFlag:!0},new Promise(t=>{let n=function(){try{var e=JSON.parse(sessionStorage.getItem(s));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(o),u.toString(),c.toString(),p.toString()].join(",")+"));",r=new Blob([e],{type:"text/javascript"});const a=new Worker(URL.createObjectURL(r),{name:"wpTestEmojiSupports"});return void(a.onmessage=e=>{i(n=e.data),a.terminate(),t(n)})}catch(e){}i(n=f(o,u,c,p))}t(n)}).then(e=>{for(const n in e)r.supports[n]=e[n],r.supports.everything=r.supports.everything&&r.supports[n],"flag"!==n&&(r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&r.supports[n]);var t;r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&!r.supports.flag,r.supports.everything||((t=r.source||{}).concatemoji?a(t.concatemoji):t.wpemoji&&t.twemoji&&(a(t.twemoji),a(t.wpemoji)))});
862//# sourceURL=/wp-includes/js/wp-emoji-loader.min.js
863</script>
vendor: 1 bytes, line 863
863
864<script src="//stats.wp.com/w.js?69" defer></script>
864 
864<script type="text/javascript">
865_tkq = window._tkq || [];
866_stq = window._stq || [];
867_tkq.push(['storeContext', {'blog_id':'40923151','blog_tz':'-4','user_lang':'en','blog_lang':'en','user_id':'0'}]);
868		// Prevent sending pageview tracking from WP-Admin pages.
869		_stq.push(['view', {'blog':'40923151','v':'wpcom','tz':'-4','user_id':'0','post':'10','subd':'daveasnow'}]);
870		_stq.push(['extra', {'crypt':'UE5XaGUuOTlwaD85flAmcm1mcmZsaDhkV11YdWtpP0NsWnVkPS9sL0ViLndld3BuVT01Uj14Ti1yYTBnX3xuYUQ3Qz1oblZbVHV3MTZoVXFwTTVDK2wuPT1KWzJNV19iQk9bTmF0PUUlUlYzbW1nYyxHTnlKQiUsT0hKb2tYK09aZkN6LzJmYVtxMGpoLT9rJnJRJXg4MFs4dmRXR0wmUlFMRjBsVjN+P19teFVqWXI4LXViazlXWUMvT2VFZUpzOV8sNUguS0MleGlqMT9daGthQ1FNLC9WZHhFRUI2SEp6ZG5LUWVtSl8xTHlCQjEsLzltUUtvX2R6WzV0bXBNNFZoQ0FdcUFsQm02N3dFQUhbY0NydDZnYnp0PVdOdUtIZlRSRTdXYWZiOUFHZFZtN3N1V009SDFyN0R5S0R8MmhPQmZdVU9tfDhjQUlqW09Qfn5+K1BDMFM='}]);
871_stq.push([ 'clickTrackerInit', '40923151', '10' ]);
872</script>
872
873<noscript><img src="https://pixel.wp.com/b.gif?v=noscript" style="height:1px;width:1px;overflow:hidden;position:absolute;bottom:1px;" alt="" /></noscript>
874<meta id="bilmur" property="bilmur:data" content="" data-provider="wordpress.com" data-service="simple" data-site-tz="America/Toronto" data-custom-props="{&quot;enq_jquery&quot;:&quot;1&quot;,&quot;logged_in&quot;:&quot;0&quot;,&quot;wptheme&quot;:&quot;pub\/oxygen&quot;,&quot;wptheme_is_block&quot;:&quot;0&quot;}"   >
875		
875<script defer src="/wp-content/js/bilmur.min.js?i=19&amp;m=202641"></script>
875 	<div id="marketingbar" class="marketing-bar noskim is-resolving-variation" data-event-properties="{&quot;is_current_user_blog_owner&quot;:false}" data-redesign-experiment="wpcom_marketing_bar_redesign_en_visitor_202609" data-redesign-variations="{&quot;treatment&quot;:{&quot;text&quot;:&quot;Create your own website, free on WordPress.com.&quot;,&quot;text_short&quot;:&quot;Create your own website.&quot;,&quot;button&quot;:&quot;Start free&quot;,&quot;class&quot;:&quot;is-redesign-treatment&quot;}}"><div class="marketing-bar-text">Design a site like this with WordPress.com</div><a class="marketing-bar-button" href="https://wordpress.com/start/?ref=marketing_bar">Get started</a><a class="marketing-bar-link" tabindex="-1" aria-label="Create your website at WordPress.com" href="https://wordpress.com/start/?ref=marketing_bar"></a></div>
876</body>
877</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.