!function(n,t,i){var r=window.matchMedia;"undefined"!=typeof module&&module.exports?module.exports=i(r):"function"==typeof define&&define.amd?define(function(){return t[n]=i(r)}):t[n]=i(r)}("enquire",this,function(n){"use strict";function t(n,t){var r,i=0,u=n.length;for(i;u>i&&(r=t(n[i],i),r!==!1);i++);}function f(n){return"[object Array]"===Object.prototype.toString.apply(n)}function e(n){return"function"==typeof n}function i(n){this.options=n,n.deferSetup||this.setup()}function r(t,i){this.query=t,this.isUnconditional=i,this.handlers=[],this.mql=n(t);var r=this;this.listener=function(n){r.mql=n,r.assess()},this.mql.addListener(this.listener)}function u(){if(!n)throw new Error("matchMedia not present, legacy browsers require a polyfill");this.queries={},this.browserIsIncapable=!n("only all").matches}return i.prototype={setup:function(){this.options.setup&&this.options.setup(),this.initialised=!0},on:function(){this.initialised||this.setup(),this.options.match&&this.options.match()},off:function(){this.options.unmatch&&this.options.unmatch()},destroy:function(){this.options.destroy?this.options.destroy():this.off()},equals:function(n){return this.options===n||this.options.match===n}},r.prototype={addHandler:function(n){var t=new i(n);this.handlers.push(t),this.matches()&&t.on()},removeHandler:function(n){var i=this.handlers;t(i,function(t,r){if(t.equals(n))return t.destroy(),!i.splice(r,1)})},matches:function(){return this.mql.matches||this.isUnconditional},clear:function(){t(this.handlers,function(n){n.destroy()}),this.mql.removeListener(this.listener),this.handlers.length=0},assess:function(){var n=this.matches()?"on":"off";t(this.handlers,function(t){t[n]()})}},u.prototype={register:function(n,i,u){var o=this.queries,s=u&&this.browserIsIncapable;return o[n]||(o[n]=new r(n,s)),e(i)&&(i={match:i}),f(i)||(i=[i]),t(i,function(t){o[n].addHandler(t)}),this},unregister:function(n,t){var i=this.queries[n];return i&&(t?i.removeHandler(t):(i.clear(),delete this.queries[n])),this}},new u})