(function($,window,document,undefined){'use strict';function extend(a,b){for(var key in b){if(b.hasOwnProperty(key)){a[key]=b[key]}} return a} function debounce(func,wait,immediate){var timeout;return function(){var context=this,args=arguments;var later=function(){timeout=null;if(!immediate)func.apply(context,args)};var callNow=immediate&&!timeout;clearTimeout(timeout);timeout=setTimeout(later,wait);if(callNow)func.apply(context,args)}};function areClipPathShapesSupported(){var base='clipPath',prefixes=['webkit','moz','ms','o'],properties=[base],testElement=document.createElement('testelement'),attribute='polygon(50% 0%, 0% 100%, 100% 100%)';for(var i=0,l=prefixes.length;i