/*!

* jBone v1.0.18 - 2014-07-08 - Library for DOM manipulation
*
* https://github.com/kupriyanenko/jbone
*
* Copyright 2014 Alexey Kupriyanenko
* Released under the MIT license.
*/

!function(a){function b(b){var c=b.length,d=typeof b;return o(d)||b===a?!1:1===b.nodeType&&c?!0:p(d)||0===c||“number”==typeof c&&c>0&&c-1 in b}function c(a,b){var c,d;this.originalEvent=a,d=function(a,b){this=“preventDefault”===a?function(){return this.defaultPrevented=!0,b()}:o(b)?function(){return b()}:b};for(c in a)(a||“function”==typeof a)&&d.call(this,c,a);q.extend(this,b)}var d,e=a.$,f=a.jBone,g=/^<(\w+)\s*\/?>$/,h=/^(?:*(<[”>wW]+>)*$|#([w-]*)$)/,i=[].slice,j=.splice,k=Object.keys,l=document,m=function(a){return“string”==typeof a},n=function(a){return a instanceof Object},o=function(a){var b={};return a&&“[object Function]”===b.toString.call(a)},p=function(a){return Array.isArray(a)},q=function(a,b){return new d.init(a,b)};q.noConflict=function(){return a.$=e,a.jBone=f,q},d=q.fn=q.prototype={init:function(a,b){var c,d,e,f;if(!a)return this;if(m(a)){if(d=g.exec(a))return this=l.createElement(d),this.length=1,n(b)&&this.attr(b),this;if((d=h.exec(a))&&d){for(f=l.createDocumentFragment(),e=l.createElement(“div”),e.innerHTML=a;e.lastChild;)f.appendChild(e.firstChild);return c=i.call(f.childNodes),q.merge(this,c)}if(q.isElement(b))return q(b).find(a);try{return c=l.querySelectorAll(a),q.merge(this,c)}catch(j){return this}}return a.nodeType?(this=a,this.length=1,this):o(a)?a():a instanceof q?a:q.makeArray(a,this)},pop:[].pop,push:.push,reverse:[].reverse,shift:.shift,sort:[].sort,splice:.splice,slice:[].slice,indexOf:.indexOf,forEach:[].forEach,unshift:.unshift,concat:[].concat,join:.join,every:[].every,some:.some,filter:[].filter,map:.map,reduce:[].reduce,reduceRight:.reduceRight,length:0},d.constructor=q,d.init.prototype=d,q.setId=function(b){var c=b.jid;b===a?c=“window”:void 0===b.jid&&(b.jid=c=++q._cache.jid),q._cache.events||(q._cache.events={})},q.getData=function(b){b=b instanceof q?b:b;var c=b===a?“window”:b.jid;return{jid:c,events:q._cache.events}},q.isElement=function(a){return a&&a instanceof q||a instanceof HTMLElement||m(a)},q._cache={events:{},jid:0},q.merge=function(a,b){for(var c=b.length,d=a.length,e=0;c>e;)a=b;return a.length=d,a},q.contains=function(a,b){var c;return a.reverse().some(function(a){return a.contains(b)?c=a:void 0}),c},q.extend=function(a){var b,c,d,e;return j.call(arguments,1).forEach(function(f){if(f)for(b=k(f),c=b.length,d=0,e=a;c>d;d++)e[b]=f[b]}),a},q.makeArray=function(a,c){var d=c||[];return null!==a&&(b(a)?q.merge(d,m(a)?:a):d.push(a)),d},q.Event=function(a,b){var c,d;return a.type&&!b&&(b=a,a=a.type),c=a.split(“.”).splice(1).join(“.”),d=a.split(“.”),a=l.createEvent(“Event”),a.initEvent(d,!0,!0),q.extend(a,{namespace:c,isDefaultPrevented:function(){return a.defaultPrevented}},b)},d.on=function(a){var b,d,e,f,g,h,i,j,k=arguments,l=this.length,m=0;for(2===k.length?b=k:(d=k,b=k),j=function(j){q.setId(j),g=q.getData(j).events,a.split(“ ”).forEach(function(a){h=a.split(“.”),e=a.split(“.”).splice(1).join(“.”),g=g||[],f=function(a){a.namespace&&a.namespace!==e||(i=null,d?(~q(j).find(d).indexOf(a.target)||(i=q.contains(q(j).find(d),a.target)))&&(i=i||a.target,a=new c(a,{currentTarget:i}),b.call(i,a)):b.call(j,a))},g.push({namespace:e,fn:f,originfn:b}),j.addEventListener&&j.addEventListener(h,f,!1)})};l>m;m++)j(this);return this},d.one=function(a){var b,c,d,e=arguments,f=0,g=this.length;for(2===e.length?b=e:(c=e,b=e),d=function(d){a.split(“ ”).forEach(function(a){var e=function©{q(d).off(a,e),b.call(d,c)};c?q(d).on(a,c,e):q(d).on(a,e)})};g>f;f++)d(this);return this},d.trigger=function(a){var b,c=[],d=0,e=this.length;if(!a)return this;for(m(a)?c=a.split(“ ”).map(function(a){return q.Event(a)}):(a=a instanceof Event?a:q.Event(a),c=),b=function(a){c.forEach(function(b){b.type&&a.dispatchEvent&&a.dispatchEvent(b)})};e>d;d++)b(this);return this},d.off=function(a,b){var c,d,e,f,g=0,h=this.length,i=function(a,c,d,e,f){var g;(b&&f.originfn===b||!b)&&(g=f.fn),a[d].fn===g&&(e.removeEventListener(c,g),q._cache.events[c].splice(d,1))};for(e=function(b){var e,g,h;return(c=q.getData(b).events)?!a&&c?k©.forEach(function(a){for(g=c,e=g.length;e–;)i(c,a,e,b,g)}):void a.split(“ ”).forEach(function(a){if(f=a.split(“.”),d=a.split(“.”).splice(1).join(“.”),c)for(g=c,e=g.length;e–;)h=g,(!d||d&&h.namespace===d)&&i(c,f,e,b,h);else d&&k©.forEach(function(a){for(g=c,e=g.length;e–;)h=g,h.namespace.split(“.”)===d.split(“.”)&&i(c,a,e,b,h)})}):void 0};h>g;g++)e(this);return this},d.find=function(a){for(var b=[],c=0,d=this.length,e=function©{o(c.querySelectorAll)&&.forEach.call(c.querySelectorAll(a),function(a){b.push(a)})};d>c;c++)e(this);return q(b)},d.get=function(a){return this},d.eq=function(a){return q(this)},d.parent=function(){for(var a,b=[],c=0,d=this.length;d>c;c++)!~b.indexOf(a=this.parentElement)&&a&&b.push(a);return q(b)},d.toArray=function(){return i.call(this)},d.is=function(){var a=arguments;return this.some(function(b){return b.tagName.toLowerCase()===a})},d.has=function(){var a=arguments;return this.some(function(b){return b.querySelectorAll(a).length})},d.attr=function(a,b){var c,d=arguments,e=0,f=this.length;if(m(a)&&1===d.length)return this&&this.getAttribute(a);for(2===d.length?c=function©{c.setAttribute(a,b)}:n(a)&&(c=function(b){k(a).forEach(function©{b.setAttribute(c,a)})});f>e;e++)c(this);return this},d.val=function(a){var b=0,c=this.length;if(0===arguments.length)return this&&this.value;for(;c>b;b++)this.value=a;return this},d.css=function(b,c){var d,e=arguments,f=0,g=this.length;if(m(b)&&1===e.length)return this&&a.getComputedStyle(this)[b];for(2===e.length?d=function(a){a.style=c}:n(b)&&(d=function(a){k(b).forEach(function©{a.style=b})});g>f;f++)d(this);return this},d.data=function(a,b){var c,d=arguments,e={},f=0,g=this.length,h=function(a,b,c){n©?(a.jdata=a.jdata||{},a.jdata=c):a.dataset=c},i=function(a){return“true”===a?!0:“false”===a?!1:a};if(0===d.length)return this.jdata&&(e=this.jdata),k(this.dataset).forEach(function(a){e=i(this.dataset)},this),e;if(1===d.length&&m(a))return this&&i(this.dataset||this.jdata&&this.jdata);for(1===d.length&&n(a)?c=function(b){k(a).forEach(function©{h(b,c,a)})}:2===d.length&&(c=function©{h(c,a,b)});g>f;f++)c(this);return this},d.removeData=function(a){for(var b,c,d=0,e=this.length;e>d;d++)if(b=this.jdata,c=this.dataset,a)b&&b&&delete b,delete c;else{for(a in b)delete b;for(a in c)delete c}return this},d.html=function(a){var b,c=arguments;return 1===c.length&&void 0!==a?this.empty().append(a):0===c.length&&(b=this)?b.innerHTML:this},d.append=function(a){var b,c=0,d=this.length;for(m(a)&&h.exec(a)?a=q(a):n(a)||(a=document.createTextNode(a)),a=a instanceof q?a:q(a),b=function(b,c){a.forEach(function(a){b.appendChild(c?a.cloneNode():a)})};d>c;c++)b(this,c);return this},d.appendTo=function(a){return q(a).append(this),this},d.empty=function(){for(var a,b=0,c=this.length;c>b;b++)for(a=this;a.lastChild;)a.removeChild(a.lastChild);return this},d.remove=function(){var a,b=0,c=this.length;for(this.off();c>b;b++)a=this,delete a.jdata,a.parentNode&&a.parentNode.removeChild(a);return this},“object”==typeof module&&module&&“object”==typeof module.exports?module.exports=q:“function”==typeof define&&define.amd?(define(function(){return q}),a.jBone=a.$=q):“object”==typeof a&&“object”==typeof a.document&&(a.jBone=a.$=q)}(window);