(function(){var b=this,d=b.jQuery,e=new RegExp('\\s*?(?:<!--.+?-->(?:.|\\s)*?)?<\\w+(?:.|\\s)*?<div class="flashData">\\s*',"m"),c=new RegExp("\\s*?</div><!--.+?>-->(?:.|\\s)*$","m"),a=function(){var f="<data>"+d(this).html().replace(e,"").replace(c,"")+"</data>";return f;};d.fn.extend({flashBack:function(g){var h=(d.browser.msie||d.browser.safari)?0:1,f=function(i){return typeof i==="function";};g=d.extend({debug:false,beforeReady:null,afterReady:null,encodeData:false,getData:function(i){var j=g.encodeData?encodeURIComponent(a.apply(this)):a.apply(this);if(i){console.log("[flashBack] settings.encodeData:",g.encodeData);console.log("[flashBack] getData - scope: ",this," returned data: ",j);}return j;}},g);g.debug=(g.debug&&typeof b.console==="object"&&typeof b.console.log==="function");return d(this).each(function(){var i=d("object",this)[h],j={};if(i&&f(g.getData)&&f(i.setData)){if(f(g.beforeReady)){g.beforeReady.apply(this,[i]);}j.xmlData=g.getData.apply(i,[g.debug]);i.setData(j);if(f(g.afterReady)){g.afterReady.apply(this,[i]);}}});}});d.fn.extend(d.fn.flashBack,{config:{},addConfig:function(h,g,f){f=((g&&g.debug)||f)&&(typeof b.console==="object"&&typeof b.console.log==="function");if(f){console.log("[flashBack] addConfig - id: ",h,", config: ",g);g.debug=f;}if(h){d.fn.flashBack.config[h]=g||{};}},getData:a});}());