PageSourceSearch

https://www.kalamazoopublicsafety.org/About

html kalamazoopublicsafety.org collected 2026-10-04 06:54:31 UTC 57,402 bytes, 849 lines download raw bytes

1<!DOCTYPE html>
2<!--[if lt IE 7]>      <html class="no-js lt-ie9 lt-ie8 lt-ie7" lang="en"> <![endif]-->
3<!--[if IE 7]>         <html class="no-js lt-ie9 lt-ie8" lang="en"> <![endif]-->
4<!--[if IE 8]>         <html class="no-js lt-ie9" lang="en"> <![endif]-->
5<!--[if gt IE 8]><!-->
6<html class="no-js" lang="en-US">
7<!--<![endif]-->
8<head>
9	<!-- Published by OpenCities, 1.38.0.1 -->
10
11    
12        
13    
14    
15    <meta charset="utf-8">
16    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
17    <meta name="theme-color" content="#FFFFFF"/>
18    <title>About Kalamazoo Public Safety</title>
19	<meta name="generator" content="OpenCities - https://granicus.com/product/opencities" />
20
21    <meta name="viewport" content="width=device-width, initial-scale=1.0">
22    <!-- Using mobile-web-app-capable for now to enable full-screen experience on supported platforms -->
23    <!-- Note: This tag works mainly on Android Chrome. It does NOT enable full-screen mode on iOS Safari. -->
24    <!-- For iOS, the correct tag is: <meta name="apple-mobile-web-app-capable" content="yes"> -->
25    <!-- TODO: Monitor for updated meta tag standards from Apple or other browser vendors -->
26    <meta name="mobile-web-app-capable" content="yes" />
27        <meta name="description" content="Learn about the Kalamazoo Department of Public Safety, one of the largest unified public safety agencies in the county." />
28    <meta property="og:type" content="article" />
29    <meta property="og:url" content="https://www.kalamazoopublicsafety.org/About" />
30    <meta property="og:title" content="About" />
31    <meta property="og:description" content="Learn about the Kalamazoo Department of Public Safety, one of the largest unified public safety agencies in the county." />
32    <meta property="og:image" content="https://www.kalamazoopublicsafety.org/files/ocwebsite/KDPS/HeroImage/KDPS%20Shield,%20color.png?w=1200" />
33    <meta property="twitter:card" content="summary" />
34    <meta property="twitter:title" content="About" />
35    <meta property="twitter:description" content="Learn about the Kalamazoo Department of Public Safety, one of the largest unified public safety agencies in the county." />
36    <meta property="twitter:image" content="https://www.kalamazoopublicsafety.org/files/ocwebsite/KDPS/HeroImage/KDPS%20Shield,%20color.png?w=1080" />
37    <link rel="canonical" href="https://www.kalamazoopublicsafety.org/About" />
38
39    
40    <link rel="apple-touch-icon" sizes="180x180" href="/files/ocfavicon/KDPS/apple-touch-icon.png?V=638398753430785128">
41<link rel="icon" type="image/png" sizes="32x32" href="/files/ocfavicon/KDPS/favicon-32x32.png?V=638398753430785128">
42<link rel="icon" type="image/png" sizes="16x16" href="/files/ocfavicon/KDPS/favicon-16x16.png?V=638398753430785128">
43<link rel="manifest" href="/files/ocfavicon/KDPS/site.webmanifest?V=638398753430785128">
44<link rel="shortcut icon" href="/files/ocfavicon/KDPS/favicon.ico?V=638398753430785128">
45<meta name="msapplication-TileColor" content="#000000">
46<meta name="msapplication-config" content="/files/ocfavicon/KDPS/browserconfig.xml?V=638398753430785128">
47    
47<script>
48        (function () {
49            if (window.__UNLOAD_LAZY_PATCH__) return;
50            window.__UNLOAD_LAZY_PATCH__ = true;
51
52            var supportsPageHide = ("onpagehide" in window);
53            var mappedType = supportsPageHide ? "pagehide" : "beforeunload";
54            var nativeAdd = window.addEventListener;
55            var nativeRemove = window.removeEventListener;
56            var unloadMap = null;
57            var patched = false;
58
59            function ensurePatched() {
60                if (patched) return;
61                unloadMap = new WeakMap();
62
63                window.addEventListener = function (type, listener, options) {
64                    if (type === "unload") {
65                        var wrapped = function (evt) {
66                            if (supportsPageHide && evt.persisted) return;
67                            listener.call(this, evt);
68                        };
69                        unloadMap.set(listener, wrapped);
70                        return nativeAdd.call(this, mappedType, wrapped, options);
71                    }
72                    return nativeAdd.call(this, type, listener, options);
73                };
74
75                window.removeEventListener = function (type, listener, options) {
76                    if (type === "unload") {
77                        var wrapped = unloadMap.get(listener);
78                        if (wrapped) {
79                            nativeRemove.call(this, mappedType, wrapped, options);
80                            unloadMap.delete(listener);
81                        }
82                        return;
83                    }
84                    return nativeRemove.call(this, type, listener, options);
85                };
86
87                var orig = null;
88                Object.defineProperty(window, "onunload", {
89                    configurable: true, enumerable: true,
90                    get: function () { return orig; },
91                    set: function (h) {
92                        orig = h;
93                        if (typeof h === "function") window.addEventListener("unload", h);
94                    }
95                });
96                patched = true;
97            }
98
99            window.addEventListener = function (type, listener, options) {
100                if (type === "unload") {
101                    ensurePatched();
102                    return window.addEventListener(type, listener, options);
103                }
104                return nativeAdd.call(this, type, listener, options);
105            };
106
107            window.removeEventListener = function (type, listener, options) {
108                if (type === "unload" && !patched) {
109                    return;
110                }
111                return nativeRemove.call(this, type, listener, options);
112            };
113
114            function patchTelerik() {
115                ensurePatched();
116                var ns = window.RadAjaxNamespace;
117                if (!ns || !ns.EventManager || !ns.EventManager.Add || ns.EventManager.__UnloadPatched) return;
118                var origAdd = ns.EventManager.Add;
119                ns.EventManager.Add = function (el, evtName, handler, clientId) {
120                    if (el === window && evtName === "unload") {
121                        return window.addEventListener("unload", handler);
122                    }
123                    return origAdd.call(this, el, evtName, handler, clientId);
124                };
125                ns.EventManager.__UnloadPatched = true;
126            }
127
128            if (window.RadAjaxNamespace)
129                patchTelerik();
130            else (window.requestIdleCallback || function (cb)
131            {
132                setTimeout(cb, 120);
133            })(patchTelerik);
134        })();
135    </script>
135
136    <!-- Preconnecting to Google Fonts servers -->
137    <link rel="preconnect" href="https://fonts.googleapis.com">
138    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
139
140    <!-- Defer Roboto font loading to avoid render-blocking -->
141    
141<script>
142        window.addEventListener('DOMContentLoaded', () => {
143            const robotoLink = document.createElement('link');
144            robotoLink.rel = 'stylesheet';
145            robotoLink.href = 'https://fonts.googleapis.com/css2?family=Roboto:wght@400;500&display=swap';
146            document.head.appendChild(robotoLink);
147        });
148    </script>
148
149
150    <style>
151        .gm-style, .gm-style * {
152            font-family: 'Roboto', system-ui, -apple-system, "Segoe UI", Arial, sans-serif !important;
153        }
154    </style>
155
156    
156<script>
157        document.documentElement.className = document.documentElement.className.replace(/\bno-js\b/g, "js");
158    </script>
158
159    <link rel="preconnect" href="https://fonts.googleapis.com">
160<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
161<link href="https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap" rel="stylesheet">
162    
163        
164            
164<script type="text/javascript">
165                window.__oc_flags_ImprovedBreakpointEventHandling = true;
166            </script>
166
167            
168        
169    
170    
171    
172        
172<script type="text/javascript">
173            var __metaQueryBreakpoints = {
174                'sc-size-4': '(max-width: 480px)',
175                'sc-size-3': '(min-width: 480px) and (max-width: 768px)',
176                'sc-size-2': '(min-width: 768px) and (max-width: 992px)',
177                'sc-size-1': '(min-width: 992px)'
178            }
179
180            var __ocSizePoints = [
181                { min: 0, name: 'sc-size-4' },
182                { min: 480, name: 'sc-size-3' },
183                { min: 768, name: 'sc-size-2' },
184                { min: 992, name: 'sc-size-1' }
185            ];
186
187        </script>
187
188    
189
190    <!-- Framework Section -->
191    
192    
192<script src="//ajax.googleapis.com/ajax/libs/jquery/3.7.1/jquery.min.js"></script>
192
193    
193<script>window.jQuery || document.write('
193<script src="/files/templates/00000000-0000-0000-0000-000000000000/8c86821a-4c3c-424f-a84b-b1243c8a8df9/v/317/jquery-3.7.1.min.js?seamlessts=639263252968988016" ><\/script>')</script>
193
194
195    <!--Google Maps API Loader – Improved Version to avoid Warning
196    This script loads the Google Maps JavaScript API using a dynamic and async method.
197    It replaces the old static 
197<script> tag to avoid performance warnings from Google.
198
199    Dynamically creates the 
199<script> tag with loading = async for better performance
200    Builds the API URL with required libraries(places, geometry, marker, geocoding)
201    Uses a Promise and callback(google.maps.__ib__) to confirm when the script is ready
202
203    It Avoids Google’s warning about direct script loading
204    Improves page load speed by loading the API asynchronously-->
205
206    
207        
207<script>
208            (function (root) {
209                root.OpenCities = root.OpenCities || {};
210                if (!root.OpenCities.GoogleMapsLoader) {
211                    root.OpenCities.GoogleMapsLoader = {
212                        _cbs: [],
213                        _ready: false,
214                        onReady: function (cb) {
215                            if (this._ready) { try { cb(); } catch (e) { console.error(e); } }
216                            else if (typeof cb === 'function') this._cbs.push(cb);
217                        },
218                        _fire: function () {
219                            if (this._ready) return;
220                            this._ready = true;
221                            var q = this._cbs.splice(0);
222                            for (var i = 0; i < q.length; i++) {
223                                try { q[i](); } catch (e) { console.error(e); }
224                            }
225                        }
226                    };
227                }
228            })(window);
229
230            (g => {
231                var h, a, k, p = "The Google Maps JavaScript API", c = "google", l = "importLibrary", q = "__ib__",
232                    m = document, b = window;
233                b = b[c] || (b[c] = {});
234                var d = b.maps || (b.maps = {}), r = new Set, e = new URLSearchParams,
235                    u = () => h || (h = new Promise(async (resolve, reject) => {
236                        a = m.createElement("script");
237                        e.set("libraries", [...r] + "");
238                        for (k in g) e.set(k.replace(/[A-Z]/g, t => "_" + t[0].toLowerCase()), g[k]);
239                        e.set("callback", c + ".maps." + q);
240                        a.src = "https://maps." + c + "apis.com/maps/api/js?" + e.toString();
241                        a.loading = "async";
242                        a.async = true;
243                        a.defer = true;
244                        d[q] = resolve;
245                        a.onerror = () => reject(Error(p + " could not load."));
246                        a.nonce = m.querySelector("script[nonce]")?.nonce || "";
247                        m.head.append(a);
248                    }));
249                if (d[l]) {
250                    console.warn(p + " only loads once. Ignoring duplicate load.");
251                } else {
252                    d[l] = (f, ...n) => (r.add(f), u().then(() => d[l](f, ...n)));
253                }
254            })({
255                key: "AIzaSyBVAmbQLxYJyRU_i5LbdHHmSvOdxUgbMNQ",
256                v: "3.65"
257            });
258
259            (async () => {
260                try {
261                    if (!google?.maps?.importLibrary) return;
262
263                    if (!window.OpenCities.__mapsLibsPromise) {
264                        window.OpenCities.__mapsLibsPromise = Promise.all([
265                            google.maps.importLibrary('maps'),
266                            google.maps.importLibrary('places'),
267                            google.maps.importLibrary('geocoding'),
268                            google.maps.importLibrary('marker'),
269                            google.maps.importLibrary('geometry')
270                        ]);
271                    }
272                    await window.OpenCities.__mapsLibsPromise;
273
274                    if (window.OpenCities?.GoogleMapsLoader) {
275                        window.OpenCities.GoogleMapsLoader._fire();
276                    }
277                } catch (err) {
278                    console.error('Google Maps failed to initialise', err);
279                }
280            })();
281        </script>
281
282    
283    
283<script src="/files/templates/00000000-0000-0000-0000-000000000000/8c86821a-4c3c-424f-a84b-b1243c8a8df9/v/317/modernizr.custom.710f3bf.js?seamlessts=639263252968988016" defer></script>
283
284    
285    <!--// End Framework Section -->
286    <!-- OpenCities Section -->
287    
287<script>
288        var OpenCities = OpenCities || {};
289        OpenCities.Paths = {
290            SiteTemplate: '/files/templates/00000000-0000-0000-0000-000000000000/8c86821a-4c3c-424f-a84b-b1243c8a8df9/v/317/',
291            ThemePath: '/files/templates/00000000-0000-0000-0000-000000000000/8c86821a-4c3c-424f-a84b-b1243c8a8df9/v/317/'
292        };
293    </script>
293
294    
294<script src='/ocapi/8503ed8b-c7e6-477f-adf9-647f61910d3d/en-US/websitesettings.js'></script>
294
295    
295<script src="/files/templates/00000000-0000-0000-0000-000000000000/8c86821a-4c3c-424f-a84b-b1243c8a8df9/v/317/oc_head.js?applied=20260417075341"></script>
295
296    <!-- Script Combine. To enter debug mode for this browser session, enter OcScriptCombineDebug=true as a querystring -->
297<link href="/files/oc-templates/00000000-0000-0000-0000-000000000000/8c86821a-4c3c-424f-a84b-b1243c8a8df9/v/317/oc_grid.css~oc_style.css~oc_wizard_style.css~oc_main.css~oc_forms.css~oc_wizard.css~oc_wizard_menu.css~oc_main_s1.css~oc_wizard_s1.css~oc_wizard_menu_s1.css~oc_grid_s1.css~OcScriptCombine_Minify0?uniqueid=20260417075341" rel="stylesheet" type="text/css">
298    <!-- Script Combine. To enter debug mode for this browser session, enter OcScriptCombineDebug=true as a querystring -->
299<link href="/files/oc-templates/00000000-0000-0000-0000-000000000000/8c86821a-4c3c-424f-a84b-b1243c8a8df9/v/317/client_style.css~client.css~client_menu.css~client_s1.css~client_menu_s1.css~client_forms.css~OcScriptCombine_Minify0?uniqueid=20260417075341" rel="stylesheet" type="text/css">
300    
300<script>
301(function (BackgroundSettings, $, undefined) {
302    BackgroundSettings.initialise = function () {
303        this.Application = {"CSSSelector":".background-container","EnableFade":false,"MediaType":"image"};
304    };
305} (OpenCities.BackgroundSettings = OpenCities.BackgroundSettings || {}, jQuery));
306OpenCities.BackgroundSettings.initialise();
307</script>
307
308    
309    <!-- Script Combine. To enter debug mode for this browser session, enter OcScriptCombineDebug=true as a querystring -->
310<link href="/files/oc-templates/00000000-0000-0000-0000-000000000000/8c86821a-4c3c-424f-a84b-b1243c8a8df9/v/317/oc_print.css~client_print.css~OcScriptCombine_Minify0?uniqueid=20260417075341" rel="stylesheet" type="text/css" media="print">
311    <!-- Script Combine. To enter debug mode for this browser session, enter OcScriptCombineDebug=true as a querystring -->
312<script src="/files/oc-templates/00000000-0000-0000-0000-000000000000/8c86821a-4c3c-424f-a84b-b1243c8a8df9/v/317/external_plugins.js~oc_form_helper.js~oc_main.js~plugins.js~oc_main_init.js~OcScriptCombine_Minify0?uniqueid=20260417075341" defer="true"></script>
312
313    
313<script async src="https://docaccess.com/docbox.js"></script>
313
314    
315
316                                
316<script>!function(e){var n="https://s.go-mpulse.net/boomerang/";if("False"=="True")e.BOOMR_config=e.BOOMR_config||{},e.BOOMR_config.PageParams=e.BOOMR_config.PageParams||{},e.BOOMR_config.PageParams.pci=!0,n="https://s2.go-mpulse.net/boomerang/";if(window.BOOMR_API_key="DYTCK-JM9C8-ED4EP-C3GGK-Z575H",function(){function e(){if(!r){var e=document.createElement("script");e.id="boomr-scr-as",e.src=window.BOOMR.url,e.async=!0,o.appendChild(e),r=!0}}function t(e){r=!0;var n,t,a,i,d=document,O=window;if(window.BOOMR.snippetMethod=e?"if":"i",t=function(e,n){var t=d.createElement("script");t.id=n||"boomr-if-as",t.src=window.BOOMR.url,BOOMR_lstart=(new Date).getTime(),e=e||d.body,e.appendChild(t)},!window.addEventListener&&window.attachEvent&&navigator.userAgent.match(/MSIE [67]\./))return window.BOOMR.snippetMethod="s",void t(o,"boomr-async");a=document.createElement("IFRAME"),a.src="about:blank",a.title="",a.role="presentation",a.loading="eager",i=(a.frameElement||a).style,i.width=0,i.height=0,i.border=0,i.display="none",o.appendChild(a);try{O=a.contentWindow,d=O.document.open()}catch(_){n=document.domain,a.src="javascript:var d=document.open();d.domain='"+n+"';void 0;",O=a.contentWindow,d=O.document.open()}if(n)d._boomrl=function(){this.domain=n,t()},d.write("<bo"+"dy onload='document._boomrl();'>");else if(O._boomrl=function(){t()},O.addEventListener)O.addEventListener("load",O._boomrl,!1);else if(O.attachEvent)O.attachEvent("onload",O._boomrl);d.close()}function a(e){window.BOOMR_onload=e&&e.timeStamp||(new Date).getTime()}if(!window.BOOMR||!window.BOOMR.version&&!window.BOOMR.snippetExecuted){window.BOOMR=window.BOOMR||{},window.BOOMR.snippetStart=(new Date).getTime(),window.BOOMR.snippetExecuted=!0,window.BOOMR.snippetVersion=14,window.BOOMR.url=n+"DYTCK-JM9C8-ED4EP-C3GGK-Z575H";var i=document.currentScript||document.getElementsByTagName("script")[0],o=i.parentNode,r=!1,d=document.createElement("link");if(d.relList&&"function"==typeof d.relList.supports&&d.relList.supports("preload")&&"as"in d)window.BOOMR.snippetMethod="p",d.href=window.BOOMR.url,d.rel="preload",d.as="script",d.addEventListener("load",e),d.addEventListener("error",function(){t(!0)}),setTimeout(function(){if(!r)t(!0)},3e3),BOOMR_lstart=(new Date).getTime(),o.appendChild(d);else t(!1);if(window.addEventListener)window.addEventListener("load",a,!1);else if(window.attachEvent)window.attachEvent("onload",a)}}(),"".length>0)if(e&&"performance"in e&&e.performance&&"function"==typeof e.performance.setResourceTimingBufferSize)e.performance.setResourceTimingBufferSize();!function(){if(BOOMR=e.BOOMR||{},BOOMR.plugins=BOOMR.plugins||{},!BOOMR.plugins.AK){var n=""=="true"?1:0,t="",a="ndvcaayxeeozk2wb7ata-f-743924866-clientnsv4-s.akamaihd.net",i="false"=="true"?2:1,o={"ak.v":"41","ak.cp":"1699437","ak.ai":parseInt("1075935",10),"ak.ol":"0","ak.cr":0,"ak.ipv":4,"ak.proto":"http/1.1","ak.rid":"36df1936","ak.r":44093,"ak.a2":n,"ak.m":"dscb","ak.n":"essl","ak.cport":36853,"ak.gh":"23.33.28.149","ak.quicv":"","ak.tlsv":"tls1.2","ak.0rtt":"","ak.0rtt.ed":"","ak.csrc":"-","ak.acc":"bbr","ak.t":"1791096870","ak.ak":"hOBiQwZUYzCg5VSAfCLimQ==lEA0RGNolQvXhAlmAjuzHE/6KwVcmtxQfNzz4hRCZQdB/uKZQwCXK8ZneNLV3RKSOSIgLyFvvLEw9SjW+G1e666fZtVotEVAMUDvEWWMmv0QUQR5Mjgvg2AyoGayCDUTXpeog7Ha0in0b7a1hd5wiXTBRHyJR5NctQY7jz629WUlkmchXrDiJAIctAGb/GAhALFvvI5bPIYCMvlazfrYVtnH6Xy6rV5yWiQr1nzXJaKbr2Sp6Dyled01Krnewnuk1MaCrkcOnlMX+ehgznnGdfbcpTzat9Xx3+X8eh72Q6jzMy5HRhMJGuLMmnOxiNlE4iaogj/FlgFAMTqLybiRcTqcqf1EGyq1dmAh97kxsN/GDNK9xm0M0mYgxnGFz5u08StGgyed1XwnHVZDMiIPRd4bjEIoojnkBhywwmi9R74=","ak.pv":"353","ak.dpoabenc":"","ak.tf":i};if(""!==t)o["ak.ruds"]=t;var r={i:!1,av:function(n){var t="http.initiator";if(n&&(!n[t]||"spa_hard"===n[t]))o["ak.feo"]=void 0!==e.aFeoApplied?1:0,BOOMR.addVar(o)},rv:function(){var e=["ak.cport","ak.cr","ak.csrc","ak.gh","ak.ipv","ak.m","ak.n","ak.ol","ak.proto","ak.quicv","ak.tlsv","ak.0rtt","ak.0rtt.ed","ak.r","ak.acc","ak.t","ak.tf"];BOOMR.removeVar(e)}};BOOMR.plugins.AK={akVars:o,akDNSPreFetchDomain:a,init:function(){if(!r.i){var e=BOOMR.subscribe;e("before_beacon",r.av,null,null),e("onbeacon",r.rv,null,null),r.i=!0}return this},is_complete:function(){return!0}}}}()}(window);</script>
316</head>
317<body class="body layout-modern  site-search-always-visble  content-type-oc-landing-page content-template-oc-3-columns group-template-oc-full-width-with-default-header page-name-about page-sequence-12 page-depth-1 page-section-12 website-type-defaultsubsite device-desktop " id="body-top">
318    <div id="skip-to-content-container">
319        <a href="#main-content" class="visuallyhidden focusable" id="skip-to-content-link">Skip to main content</a>
320    </div>
321    
321<script>
322        // OCNOW-11988 (Cursor): Proactively focus skip link when returning from browser chrome.
323        // Must run inline (not deferred oc_main.js) so focus is intercepted before NVDA speaks footer.
324        (function () {
325            var awaitingReentry = false;
326            var inertSupported = 'inert' in HTMLElement.prototype;
327
328            function isExplicitlyOutsideDocument(node) {
329                return node != null && !document.documentElement.contains(node);
330            }
331
332            function getSkipContainer() {
333                return document.getElementById('skip-to-content-container');
334            }
335
336            function getSkipLink() {
337                return document.getElementById('skip-to-content-link');
338            }
339
340            function applyGuard() {
341                awaitingReentry = true;
342                if (!inertSupported) {
343                    return;
344                }
345                var skipContainer = getSkipContainer();
346                var children = document.body.children;
347                for (var i = 0; i < children.length; i++) {
348                    if (children[i] !== skipContainer) {
349                        children[i].setAttribute('inert', '');
350                    }
351                }
352            }
353
354            function clearGuard() {
355                awaitingReentry = false;
356                if (!inertSupported) {
357                    return;
358                }
359                var children = document.body.children;
360                for (var i = 0; i < children.length; i++) {
361                    children[i].removeAttribute('inert');
362                }
363            }
364
365            function isSkipLinkElement(target) {
366                if (!target) {
367                    return false;
368                }
369                var skipContainer = getSkipContainer();
370                return target.id === 'skip-to-content-link' ||
371                    (skipContainer && skipContainer.contains(target));
372            }
373
374            function focusSkipLink() {
375                var skipLink = getSkipLink();
376                if (!skipLink) {
377                    return;
378                }
379                if (window.scrollY > 0) {
380                    window.scrollTo(0, 0);
381                }
382                skipLink.focus({ preventScroll: true });
383            }
384
385            function scheduleGuardIfDocumentLostFocus() {
386                window.setTimeout(function () {
387                    if (!document.hasFocus()) {
388                        applyGuard();
389                    }
390                }, 0);
391            }
392
393            document.addEventListener('focusout', function (e) {
394                if (isExplicitlyOutsideDocument(e.relatedTarget)) {
395                    applyGuard();
396                }
397            }, true);
398
399            document.addEventListener('keydown', function (e) {
400                if (e.key === 'Tab') {
401                    scheduleGuardIfDocumentLostFocus();
402                } else if (e.key === 'F6' || (e.key === 'l' && e.ctrlKey)) {
403                    scheduleGuardIfDocumentLostFocus();
404                }
405            }, true);
406
407            window.addEventListener('focus', function () {
408                if (!awaitingReentry) {
409                    return;
410                }
411                applyGuard();
412                focusSkipLink();
413            }, true);
414
415            document.addEventListener('focusin', function (e) {
416                var reentryFromChrome = awaitingReentry || isExplicitlyOutsideDocument(e.relatedTarget);
417                if (!reentryFromChrome) {
418                    return;
419                }
420                if (isSkipLinkElement(e.target)) {
421                    clearGuard();
422                    return;
423                }
424                applyGuard();
425                focusSkipLink();
426                clearGuard();
427            }, true);
428        })();
429    </script>
429
430    <form name="mainForm" method="post" action="/About" id="mainForm">
431<div>
432<input type="hidden" name="ctl04_seamless_script_manager_TSM" id="ctl04_seamless_script_manager_TSM" value="" />
433<input type="hidden" name="__EVENTTARGET" id="__EVENTTARGET" value="" />
434<input type="hidden" name="__EVENTARGUMENT" id="__EVENTARGUMENT" value="" />
435<input type="hidden" name="__SEAMLESSVIEWSTATE" id="__SEAMLESSVIEWSTATE" value="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" />
436<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="" />
437</div>
438
439<script type="text/javascript">
440//<![CDATA[
441var theForm = document.forms['mainForm'];
442if (!theForm) {
443    theForm = document.mainForm;
444}
445function __doPostBack(eventTarget, eventArgument) {
446    if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
447        theForm.__EVENTTARGET.value = eventTarget;
448        theForm.__EVENTARGUMENT.value = eventArgument;
449        theForm.submit();
450    }
451}
452//]]>
453</script>
453
454
455
456<script src="/WebResource.axd?d=pynGkmcFUV13He1Qd6_TZEwxevNHYVPiVa1Imd_CfwV7Ab8FE1aS0qMo2VVt5LKJo2QwSrlAqlF7-BPzzVxibA2&amp;t=639190689332169432" type="text/javascript"></script>
456
457
458
459<script src="/Telerik.Web.UI.WebResource.axd?_TSM_HiddenField_=ctl04_seamless_script_manager_TSM&amp;compress=1&amp;_TSM_CombinedScripts_=%3b%3bSystem.Web.Extensions%2c+Version%3d4.0.0.0%2c+Culture%3dneutral%2c+PublicKeyToken%3d31bf3856ad364e35%3aen-GB%3add3ac3d5-1e29-4112-8fed-529caffa8f24%3aea597d4b%3ab25378d2" type="text/javascript"></script>
vendor: 2 bytes, line 459
459
460<script src="/ScriptResource.axd?d=EYVjNsQ7oYmzBqCI0dkEyYe0LYmPcVFL4WPcQCXhKfQwUqkAT7lLra0za-OLMuUUcCyPINdTVMHIWti96-8R_oN-trjXUUZnJRzckxTjid4ecctwwEJyNI-05jZYvXHBRiEKL0MUQMEyEJ2FXanyE1uBk88RxZ1wVK6AUn9D4v8rW-LNx2OOtB8vE3hC8P0jk4XZt7GAPiCeYQolxUlwFZA8cuOfgd4u08OASxFdh8mChz3A0YHhuwRrXGVlulfs9SJVkAvulhjdHYIIp1SRohDxt9acTwxUQrOlxuxC847b00zOOWg9SlpwD_iBuQQ1rOK9WH9O_wN9c2TXm4GeXaQHHT4yQ9IlzZXw6th8ch3f-k_n1yYeeurDMbwChXW1Vh_7rpu00kgmegsg9w2J3ququXIPfy2Gq8IscVTmtwouupfmUzAOicU_yESgQ-dG0" type="text/javascript"></script>
vendor: 2 bytes, line 460
460
461<script src="/Telerik.Web.UI.WebResource.axd?_TSM_HiddenField_=ctl04_seamless_script_manager_TSM&amp;compress=1&amp;_TSM_CombinedScripts_=%3b%3bOpenCities.CustomControls%3aen-GB%3a7197b077-b068-4a69-9481-a6cf2e7718f9%3a8e1d32bf" type="text/javascript"></script>
461
462    
462<script type="text/javascript">
463//<![CDATA[
464Sys.WebForms.PageRequestManager._initialize('ctl04$seamless_script_manager', 'mainForm', [], [], [], 90, '');
465//]]>
466</script>
466
467
468<script type="text/javascript">
469    try{
470        function SeamlessEndRequestHandler(sender, args) {
471            try {
472                var dataItems = args.get_dataItems();
473                if(dataItems.ctl04_seamless_script_manager)
474                    document.getElementById('__SEAMLESSVIEWSTATE').value = dataItems.ctl04_seamless_script_manager;
475            }
476            catch (e) { }
477        }
478
479        Sys.WebForms.PageRequestManager.getInstance().add_endRequest(SeamlessEndRequestHandler);
480    }
481    catch (e) { }
482</script>
482
483
484    <div class="unsupported-browser-warning js-element"></div>
485    
486    <div hidden>
487        <span id="new-window-0">opens in new tab or window </span>
488    </div>
489    <div class="overlay-container"></div>
490    
491    <div role="region" aria-label="Site announcements" class="emergency-container emergency-container-position-1"><div id="PublicEmergencyAnnouncementList" data-cookiekeydismisseditems="OC_EA_EmergencyAnnouncementList_Dismissed" data-querykeydismisseditem="OC_EA_EmergencyAnnouncementList_Dismiss">
492   <div class="oc-emergency-announcement-container">
493  <div class="oc-emergency-undismissed max-severity-10 results-1">
494    <div class="side-box message-box emergency-message-box oc-emergency-severity-10 " >
495   <h3 class="side-box-title">Now Hiring Public Safety Officers</h3>
496   <div class="side-box-content">
497      <p >The Kalamazoo Department of Public Safety is hiring Public Safety Officers. Online applications will be accepted until October 7, 2026 at 11:59 PM.</p>
498      <a href="https://www.governmentjobs.com/careers/kalamazoomi/jobs/5447104/public-safety-officer-pso-hire-date-jan-2027-80"  target="_blank" >Click Here to Apply</a>
499      
500   </div>
501   <button type="button" class="emergency-announcement-item-dismiss" aria-label="Close this announcement" data-cvid="523db3dc-6503-46d2-8040-83a5cc741b7e"></button>
502</div>
503        
504  </div><div class="oc-emergency-dismissed results-0"></div></div></div></div>
505    <div class="background-container">
506        <div class="page-container">
507            <!-- OC Layout Element GROUP TEMPLATE -->
508            <!--groupTemplateStart--><header>
509            <div class="toolbar-outer-container">
510  <div class="toolbar-inner-container clearfix">
511    <div class="toolbar-item toolbar-quicklinks toolbar-display-dropdown">
512	<button type="button" aria-controls="toolbar-quicklinks-drop-down" aria-expanded="false" class="toolbar-button toolbar-button-quicklinks js-element"><span>Quick Links</span><i aria-hidden="true"></i></button>	
513	<div id="toolbar-quicklinks-drop-down" class="toolbar-drop-down toolbar-quicklinks-drop-down clearfix">
514		<ul>
515		  <li><a href="https://us.openforms.com/Form/6502e871-9825-451e-adee-3b9ffd784a1e" class="oc-icon-b oc-i--none link-type-external" target="_blank"><span>Contact Us</span></a></li><li><a href="https://www.facebook.com/KalamazooPublicSafety/" class="oc-icon-b oc-i-facebook link-type-external"><span>Facebook</span></a></li><li><a href="https://www.linkedin.com/company/kalamazoo-public-safety" class="oc-icon-b oc-i-linkedin link-type-external"><span>LinkedIn</span></a></li><li><a href="https://twitter.com/KalPublicSafety" class="oc-icon-b oc-i-twitter link-type-external"><span>Twitter</span></a></li>
516		</ul>
517	</div>
518</div><div class="toolbar-item toolbar-language notranslate toolbar-display-dropdown"><div class="no-js-element">
519		  <ul>
520		    <li id="toolbar-language-option-en-us-noscript"><a href="https://www.kalamazoopublicsafety.org/About?oc_lang=en-US" class="lang-item lang-en-us" data-translate-to="en-us" lang="en-US">English (United States)<span class="visuallyhidden"> Select this as your preferred language</span></a></li>
521          </ul>
522		</div>
523	<button type="button" role="combobox" aria-controls="toolbar-language-drop-down" aria-expanded="false" aria-haspopup="listbox" aria-autocomplete="none" aria-labelledby="toolbar-language-label" class="toolbar-button toolbar-button-language js-element">  
524        <span class="toolbar-language-globe-icon" aria-hidden="true"></span>
525        <span id="toolbar-language-label" class="current-language">
526            Select a language to translate to
527		</span>
528		<i aria-hidden="true"></i>
529	</button>
530	<div id="toolbar-language-drop-down" role="listbox" aria-label="Available languages" class="toolbar-drop-down toolbar-language-drop-down js-element clearfix">
531		<ul role="group">
532		    <li role="presentation"><a id="toolbar-language-option-en-us" role="option" aria-selected="true" href="https://www.kalamazoopublicsafety.org/About?oc_lang=en-US" class="lang-item lang-en-us" data-translate-to="en-us" lang="en-US">English (United States)<span class="visuallyhidden"> Select this as your preferred language</span></a></li>
533        </ul>
534	</div></div>
535  </div>
536</div>
537            <div class="header-outer-container">
538    <div class="header-container header-layout-4  clearfix">
539			<div class="header-site-logo">
540				<a href="https://www.kalamazoopublicsafety.org/Home" lang="en-US" aria-label="Kalamazoo Public Safety - Home - Logo">
541				</a>
542			</div>
543      
544		    <div class="mobile-search-btn js-element">
545		        <button><i aria-hidden="true"></i><span class="mobile-search-btn-text"><span class="visuallyhidden">
545Open </span>Search</span></button>
546		    </div>
547		    <div class="header-website-settings">
548                <button id="btn-mob-nav" type="button" aria-expanded="false" aria-controls="nav">
549                    <i aria-hidden="true"></i><span class="side-menu-btn-text">Menu</span>
550                </button>
551        	</div>
552          <div class="navigation-outer-container">
553	<div id="nav" role="navigation" class="navigation-container  navigation-container-option-8" data-menu-type="horizontal" aria-label="primary">
554        <div class="grid">
555            <div class="col-xs-12">              
556                <ul class="sf-menu" id="sc-main-menu"><li class="nav-section-quarters-1 nav-active-path nav-active-page first-item nav-item-seq-1">
557<a href="https://www.kalamazoopublicsafety.org/About" class="nav-level-1 nav-has-children"  target="">
558	<i class="item-icon" aria-hidden="true"></i><span class="item-text">About</span>
559</a>
560<button aria-label="Expand" aria-haspopup="true" class="mobnav-subarrow" aria-controls="sc-menu-second-level-nav-item-seq-1">
561              <i aria-hidden="true"></i>
562              </button>
563<ul id="sc-menu-second-level-nav-item-seq-1">
564
565          
566            <li class=" "><a  href="https://www.kalamazoopublicsafety.org/About/Message-from-Chief-Boysen" class=""  target="">Message from Chief Boysen</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/About/Accreditation" class=""  target="">Accreditation</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/About/Data-Statistics-and-Reports" class=""  target="">Data, Statistics, and Reports</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/About/Careers-at-KDPS" class=""  target="">Careers at KDPS</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/About/About-the-EMS-System" class=""  target="">About the EMS System</a></li></ul></li>
567          
568            <li class="nav-section-quarters-1   nav-item-seq-2">
569<a href="https://www.kalamazoopublicsafety.org/Community" class="nav-level-1 nav-has-children"  target="">Community</a>
570<button aria-label="Expand" aria-haspopup="true" class="mobnav-subarrow" aria-controls="sc-menu-second-level-nav-item-seq-2">
571              <i aria-hidden="true"></i>
572              </button>
573<ul id="sc-menu-second-level-nav-item-seq-2">
574
575          
576            <li class=" "><a  href="https://www.kalamazoopublicsafety.org/Community/Community-Policing" class=""  target="">Community Policing</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Community/Police-Athletic-League-PAL" class=""  target="">Police Athletic League (PAL)</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Community/Explorer-Post-265" class=""  target="">Explorer Post 265</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Community/National-Night-Out-2026" class=""  target="">National Night Out 2026</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Community/Great-Lakes-Burn-Camp" class=""  target="">Great Lakes Burn Camp</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Community/Citizens-Public-Safety-Review-and-Appeals-Board-CPSRAB" class=""  target="_blank">Citizen's Public Safety Review and Appeals Board (CPSRAB)</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Community/Connect-Kalamazoo" class=""  target="">Connect Kalamazoo</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Community/Kalamazoo-Regional-Citizens-Academy" class=""  target="">Kalamazoo Regional Citizens Academy</a></li></ul></li>
577          
578            <li class="nav-section-quarters-2   nav-item-seq-3">
579<a href="https://www.kalamazoopublicsafety.org/Divisions" class="nav-level-1 nav-has-children"  target="">Divisions</a>
580<button aria-label="Expand" aria-haspopup="true" class="mobnav-subarrow" aria-controls="sc-menu-second-level-nav-item-seq-3">
581              <i aria-hidden="true"></i>
582              </button>
583<ul id="sc-menu-second-level-nav-item-seq-3">
584
585          
586            <li class=" "><a  href="https://www.kalamazoopublicsafety.org/Divisions/Administration" class=""  target="">Administration</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Divisions/Community-Affairs" class=""  target="">Community Affairs</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Divisions/C.O.P.S" class=""  target="">Community Outreach and Problem Solving (C.O.P.S.)</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Divisions/Criminal-Investigation-Division-CID" class=""  target="">Criminal Investigation Division (CID)</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Divisions/Emergency-Management" class=""  target="">Emergency Management</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Divisions/Fire-Marshals-Office" class=""  target="">Fire Marshal's Office</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Divisions/Operations" class=""  target="">Operations</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Divisions/Professional-Standards" class=""  target="">Professional Standards</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Divisions/Public-Information-Office" class=""  target="">Public Information Office (PIO)</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Divisions/Service" class=""  target="">Service</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Divisions/Strategic-Planning" class=""  target="">Strategic Planning</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Divisions/Training" class=""  target="">Training</a></li></ul></li>
587          
588            <li class="nav-section-quarters-2   nav-item-seq-4">
589<a href="https://www.kalamazoopublicsafety.org/Resources" class="nav-level-1 nav-has-children"  target="">Resources</a>
590<button aria-label="Expand" aria-haspopup="true" class="mobnav-subarrow" aria-controls="sc-menu-second-level-nav-item-seq-4">
591              <i aria-hidden="true"></i>
592              </button>
593<ul id="sc-menu-second-level-nav-item-seq-4">
594
595          
596            <li class=" "><a  href="https://www.kalamazoopublicsafety.org/Resources/File-a-Commendation-or-Complaint" class=""  target="">File a Commendation or Complaint</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Resources/Silent-Observer" class=""  target="">Silent Observer</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Resources/Food-Truck-Registration" class=""  target="">Food Truck Registration</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Resources/Gun-Amnesty-Program" class=""  target="">Gun Amnesty Program</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Resources/Gun-Registration-and-Concealed-Pistol-Licenses-CPL" class=""  target="">Gun Registration and Concealed Pistol Licenses (CPL)</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Resources/Recreational-Fire-Permits" class=""  target="">Recreational Fire Permits</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Resources/Report-a-Crime" class=""  target="">Report a Crime</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Resources/Request-Records" class=""  target="">Request Records</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Resources/Request-Traffic-Enforcement" class=""  target="_blank">Request Traffic Enforcement</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Resources/Traffic-Parking-Tickets" class=""  target="">Traffic & Parking Tickets</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Resources/Safe-Exchange-Zone" class=""  target="">Safe Exchange Zone</a></li></ul></li>
597          
598            <li class="nav-section-quarters-3   nav-item-seq-5">
599<a href="https://www.kalamazoopublicsafety.org/Transparency" class="nav-level-1 nav-has-children"  target="">Transparency</a>
600<button aria-label="Expand" aria-haspopup="true" class="mobnav-subarrow" aria-controls="sc-menu-second-level-nav-item-seq-5">
601              <i aria-hidden="true"></i>
602              </button>
603<ul id="sc-menu-second-level-nav-item-seq-5">
604
605          
606            <li class=" "><a  href="https://www.kalamazoopublicsafety.org/Transparency/Citizens-Public-Safety-Review-and-Appeals-Board-CPSRAB" class=""  target="_self">Citizen's Public Safety Review and Appeals Board (CPSRAB)</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Transparency/Complaints-Received" class=""  target="_self">Complaints Received</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Transparency/Crime-Mapping-Alerts" class=""  target="_self">Crime Mapping & Alerts</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Transparency/Data-Statistics-and-Reports" class=""  target="_self">Data, Statistics, and Reports</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Transparency/KDPS-Budget" class=""  target="_blank">KDPS Budget</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Transparency/My90-Reports" class=""  target="_self">My90 Reports</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Transparency/Policies-Procedures" class=""  target="_self">Policies & Procedures</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Transparency/Professional-Standards" class=""  target="_self">Professional Standards</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Transparency/Union-Contracts" class=""  target="_blank">Union Contracts</a></li><li class=" "><a  href="https://www.kalamazoopublicsafety.org/Transparency/FLOCK-Camera-FAQs" class=""  target="">FLOCK Camera FAQs</a></li></ul></li>
607          
608            </ul>
609            </div>
610        </div>
611    </div>
612</div>
613			
614			<div class="header-search-control-container" id="header-search">
615				<div class="search-inner-container">
616					<div class="sc-search-panel" onkeypress="javascript:return WebForm_FireDefaultButton(event, &#39;ctl08_btnSearch&#39;)">
617	<label for="ctl08_txtSearch" id="ctl08_lblSearch" class="sc-search-label">Search</label><input name="ctl08$txtSearch" type="text" id="ctl08_txtSearch" class="sc-search-text" placeholder="Search for a keyword or a page" /><input type="submit" name="ctl08$btnSearch" value="Search" id="ctl08_btnSearch" class="sc-search-button" />
618</div>
619					<div role="status" id="predictiveResults"></div>
620				</div>
621			</div>
622    </div>
623</div>
624
625            
626            </header>
627            <div class="content-outer-container">
628                <div id="main" role="main" class="main-outer-container clearfix">
629                        
630                        <div class="content-main-container">
631                            <div class="grid">
632					            <div class="col-xs-12">
633						            <nav id="breadcrumbs-container" aria-label="You Are Here :">
634							            <span role="list">
635<span role="listitem">
636	<a href="https://www.kalamazoopublicsafety.org/Home"  lang="en-US">Home</a>
637	<span class="nav-separator" aria-hidden="true" role="presentation">/</span>
638</span>
639          <span class="current-page" role="listitem" aria-current="page" >About</span></span>
640						            </nav>
641					            </div>
642                      
643					            <div class="col-xs-12">
644						            <div class="main-inner-container">
645							            <div id="main-content" class="main-container clearfix">
646							              
647                            <!-- OC Layout Element Conent Template -->
648							              <!--normalTemplateStart--><h1 class='oc-page-title '>About</h1>
649<div class="clearfix">
650    
651    <p>The Kalamazoo Department of Public Safety combines law enforcement and fire services into a unified organization with a goal of providing the highest level of professional public service to our community. Our diverse team of more than 250 employees uses modern technology and comprehensive training, continually striving to meet the challenges of the future.</p>
652<p>We are responsible for meeting the needs of a diverse community, and we recognize the value of diversity within our own ranks as absolutely essential to carry out our roles as public servants.</p>
653<p>Our officers have opportunities to train in a wide variety of specialties. Officers aspiring toward promotional opportunities may progress upward into the supervisory ranks or specialized technical positions. Officers may serve as Criminal Investigators, Crime Lab Technicians, Neighborhood Liaison Officers, K-9 Handlers, and Drug Enforcement Investigators. Officers also have the opportunity to serve in special units, in addition to their primary assignments, such as the Honor Guard, Bomb Squad, and Special Weapons and Tactics Team (SWAT).</p>
654<p>At KDPS, we are committed to a Community Public Safety service delivery model. Community involvement is a primary organizational goal. This approach strengthens the relationship between our officers and the people we serve, improves our working environment, and allows us to better serve our community.</p>
655<h3>Mission</h3>
656<p>In partnership with the community, the Kalamazoo Department of Public Safety is dedicated to enhancing the quality of life for all by providing professional police, fire and EMS service to the residents and visitors of Kalamazoo.</p>
657<h3>Vision</h3>
658<p>As leaders in public safety, KDPS strives to be a dedicated and diverse team of professionals who are committed to partnering with the community to ensure the City of Kalamazoo will be a safe and desirable place to live, work and visit.</p>
659<h3>Values</h3>
660<p>Integrity &ndash; Dedication &ndash; Excellence &ndash; Efficiency &ndash; Accountability &ndash; Compassion</p>
661<h3>History</h3>
662<p>You can read a detailed timeline of KDPS' history&nbsp;<strong><a href="https://kalamazoomi.prelive.opencities.com/KDPS/About/About-KDPS/History">here</a></strong>.&nbsp;</p>
663<p>&nbsp;</p>
664
665
666</div>
667<div class="landing-page-nav landing-3-col">
668<div class="grid">
669          <div class="col-xs-12 col-m-4">
670	<div class="list-item-container landing-3-col nav-item-seq-1">		
671		<a href="https://www.kalamazoopublicsafety.org/About/Message-from-Chief-Boysen"  target="" >
672		<h2 class="list-item-title">Message from Chief Boysen</h2>
673		<p>
674			Read a message from the Kalamazoo Public Safety Chief David Boysen.
675		</p>
676		</a>
677	</div>	
678</div>
679          <div class="col-xs-12 col-m-4">
680	<div class="list-item-container landing-3-col nav-item-seq-2">		
681		<a href="https://www.kalamazoopublicsafety.org/About/Accreditation"  target="" >
682		<h2 class="list-item-title">Accreditation</h2>
683		<p>
684			KDPS is accredited by the Michigan Law Enforcement Accreditation Program to ensure it operates within established best practices for policing.
685		</p>
686		</a>
687	</div>	
688</div>
689          <div class="col-xs-12 col-m-4">
690	<div class="list-item-container landing-3-col nav-item-seq-3">		
691		<a href="https://www.kalamazoopublicsafety.org/About/Data-Statistics-and-Reports"  target="" >
692		<h2 class="list-item-title">Data, Statistics, and Reports</h2>
693		<p>
694			Find calls for service, crime mapping, statistics, and reports.
695		</p>
696		</a>
697	</div>	
698</div>
699          <div class="col-xs-12 col-m-4">
700	<div class="list-item-container landing-3-col nav-item-seq-4">		
701		<a href="https://www.kalamazoopublicsafety.org/About/Careers-at-KDPS"  target="" >
702		<h2 class="list-item-title">Careers at KDPS</h2>
703		<p>
704			Be the difference in YOUR community and join KDPS! Careers in public safety offer great pay and benefits, plus many opportunities to advance.
705		</p>
706		</a>
707	</div>	
708</div>
709          <div class="col-xs-12 col-m-4">
710	<div class="list-item-container landing-3-col nav-item-seq-5">		
711		<a href="https://www.kalamazoopublicsafety.org/About/About-the-EMS-System"  target="" >
712		<h2 class="list-item-title">About the EMS System</h2>
713		<p>
714			Learn about the Kalamazoo County Medical Control Authority (KCMCA), the agency responsible for coordinating and overseeing the EMS system.
715		</p>
716		</a>
717	</div>	
718</div>
719          </div>
720</div>
721          
722
723
724<!--normalTemplateEnd-->
725                            
726                            
727                            
728							            </div>
729						            </div>
730					            </div>
731                        
732                            </div>
733                        </div>
734                        <div class="back-to-top-container text-center">
735                            <a href="#body-top" id="back-to-top"><i aria-hidden="true"></i><span class="js-visuallyhidden">Back to top</span></a>
736                        </div>
737                </div>
738            </div><!--groupTemplateEnd-->
739            <footer>
740                
741                    <div class="footer-outer-container footer-first-row">
742                        <div class="footer-container clearfix">
743                            <div class="grid grid-pad">
744                                <div class="col-xs-12 col-s-12 col-m-6 col-lg-4" >
745	
746			<h2 class="visuallyhidden">Site Footer</h2>
747			<h3 class="footer-title">Contact Us</h3>
748			
749	<p class=""><span style="font-size: 100%;">Kalamazoo Public Safety<br />
750150 E Crosstown Parkway, Suite A<br />
751Kalamazoo, MI 49001<br />
752<a href="https://www.google.com/maps/place/150+E+Crosstown+Pkwy,+Kalamazoo,+MI+49001/@42.2796527,-85.5862601,17z/data=!3m1!4b1!4m6!3m5!1s0x88179d12a95a0b61:0x1f8fb8f80cf1af3c!8m2!3d42.2796528!4d-85.5813892!16s%2Fg%2F11bw3y1tbg?entry=ttu" target="_blank" aria-describedby="new-window-0">View on Map</a></span></p>
753<p><a href="tel:2693378123">(269) 337-8123</a><br />
754<a href="mailto:[email protected]">[email protected]</a></p>
755<p>&nbsp;</p>
756
757
758	<ul class="footer-links with-icons ">   </ul>
759	
760</div><div class="col-xs-12 col-s-12 col-m-6 col-lg-4" >
761	
762			<h2 class="visuallyhidden">Site Footer</h2>
763			<h3 class="footer-title">Share &amp; Connect</h3>
764			
765	
766	<ul class="footer-links with-icons sociallinks">  <li class="footer-link-facebook">
767	<a href="https://www.facebook.com/KalamazooPublicSafety/" target="_self"  >
768<i aria-hidden="true"></i>Like us on Facebook
769</a>
770</li>
771          <li class="footer-link-twitter">
772	<a href="https://twitter.com/KalPublicSafety" target="_self"  >
773<i aria-hidden="true"></i>Follow us on Twitter
774</a>
775</li>
776          <li class="footer-link-linkedin">
777	<a href="https://www.linkedin.com/company/kalamazoo-public-safety" target="_self"  >
778<i aria-hidden="true"></i>Follow us on LinkedIn
779</a>
780</li>
781           </ul>
782	
783</div><div class="col-xs-12 col-s-12 col-m-6 col-lg-4" >
784	
785			<h2 class="visuallyhidden">Site Footer</h2>
786			<h3 class="footer-title">Quick Links</h3>
787			
788	
789	<ul class="footer-links with-icons ">  <li class="footer-link-">
790	<a href="https://www.joinkdps.org" target="_blank"  >
791<i aria-hidden="true"></i>Careers
792</a>
793</li>
794          <li class="footer-link-">
795	<a href="https://www.kalamazoocity.org" target="_blank"  >
796<i aria-hidden="true"></i>City of Kalamazoo
797</a>
798</li>
799          <li class="footer-link-">
800	<a href="https://www.kzooparks.org" target="_blank"  >
801<i aria-hidden="true"></i>Kzoo Parks
802</a>
803</li>
804          <li class="footer-link-">
805	<a href="https://www.imaginekalamazoo.com" target="_blank"  >
806<i aria-hidden="true"></i>Imagine Kalamazoo
807</a>
808</li>
809           </ul>
810	
811</div>
812                            </div>
813                        </div>
814                    </div>
815                
816                <div class="footer-outer-container footer-second-row">
817                    <div class="footer-container clearfix">
818                        <div class="grid grid-pad footer-secondary-links">
819                            <div class="col-xs-12 col-m-7">
820                                
821                                    <div><a href="https://www.kalamazoocity.org/Policies/General-Disclaimer" target="_blank"  >Disclaimer</a>&nbsp;| <a href="https://www.kalamazoocity.org/Policies/Privacy-Policy" target="_blank"  >Privacy Policy</a>&nbsp;| <a href="https://www.kalamazoocity.org/Policies/Social-Media-Policy" target="_blank"  >Social Media Policy</a></div>
822                                
823                            </div>
824                            <div class="col-xs-12 col-m-5 powered-by">
825                                <div class="right">
826                                    &copy; 2026 Kalamazoo Public Safety&nbsp;|&nbsp;<span class="powered-by">Powered by <a href="https://granicus.com/solution/govaccess/opencities/" target="_blank">Granicus</a></span>
827                                </div>
828                            </div>
829                        </div>
830                    </div>
831                </div>
832            </footer>
833        </div>
834    </div>
835
836    
836<script src="/files/oc-resources/70147135-cdbf-4f9e-b269-269f9af02c9d/JsTextSnippets.js?ocsvclang=en-US" type="text/javascript"></script>
836<script></script>
836
837    
838    
839    
840    
841    
842
843<script type="text/javascript">
844//<![CDATA[
845window.__TsmHiddenField = $get('ctl04_seamless_script_manager_TSM');//]]>
846</script>
846
847</form>
848</body>
849</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.