/*!
 * (c) 2010, 2011 J.B. van der Burgh
 */
(function(g,k){function b(e,c){return new b.fn.init(e,c)}var n=k.Varas;k.Varas=b;b.find=g.find;b.engine="jQuery";b.noConflict=function(e){if(e)k.Varas=n;return b};b.type=g.type;b.merge=g.merge;b.isFunction=g.isFunction;b.isArray=g.isArray;b.each=g.each})(jQuery,window);
(function(g,k,b,n){function e(){}function c(a,d,f){var j=a[d];a[d]=a[f];a[f]=j}function i(a,d,f,j){if(f-1>d){var m=d+Math.floor(Math.random()*(f-d)),p=a[m];c(a,m,f-1);m=d;var r;for(r=d;r<f-1;++r)if(j(a[r],p)<1){c(a,m,r);++m}c(a,f-1,m);m=m;i(a,d,m,j);i(a,m+1,f,j)}}function h(){for(var a=arguments,d=a[0],f,j=a.length-1,m;j>0;j--){f=a[j];for(m in f)if(f.hasOwnProperty(m))d[m]=f[m]}return d}var l,q=g.find,o,s=Array.prototype.push,t=g.merge;l=g.fn=g.prototype={noop:e,varas:"0.1",parent:null,selector:"",
context:null,length:0,push:s,sort:[].sort,splice:[].splice,toString:function(){return'Varas["'+[this.varas,this.selector||"null",this.length,this.context||"null"].join('","')+'"]'},valueOf:function(){return this.toString()},init:function(a,d){this.parent=null;if(!a)return this;if(a.nodeType){this.context=this[0]=a;this.length=1;return this}if(a==="body"&&!d&&b.body){this.context=b;this[0]=b.body;this.selector="body";this.length=1;return this}if(typeof a==="string")return!d||d.varas?(d||o).find(a):
g(d).find(a);else throw"Currently only selectors of type string are supported";},get:function(a){return this[a]},each:function(a,d){if(d)return this.eachWrap(a);for(var f=0,j=this.length;f<j;f++)a.call(this[f]);return this},eachWrap:function(a){for(var d=0,f=this.length;d<f;d++)a.call(g(this[d]));return this},pushStack:function(a,d,f){var j=g();g.isArray(a)?s.apply(j,a):t(j,a);j.parent=this;j.context=this.context;if(d==="find"||d==="andSelf")j.selector=this.selector+(this.selector?" ":"")+f;else if(d)j.selector=
this.selector+"."+d+"("+f+")";return j},end:function(a){return this.parent||(a?null:this)},andSelf:function(){var a=this.parent||{},d=this.pushStack(this,"andSelf",a.selector?","+a.selector:a.selector);length=0;a&&a.length>0&&t(d,a);return d},find:function(a){var d=this.length,f=this.pushStack("","find",a),j=0;f.parent=this;for(var m=0;m<d;m++){j=f.length;q(a,this[m],f);if(m>0)for(var p=j;p<f.length;p++)for(var r=0;r<j;r++)if(f[r]===f[p]){f.splice(p--,1);break}}return f},__ieFix:0};l.init.prototype=
l;l.constructor=l.init;l.init.prototype.constructor=l.init;o=g(b);g.ns=function(a,d){if(d)a=a||k;else{d=a;a=k}for(var f=d.split("."),j=f.length,m,p=a,r=0;r<j;r++){m=f[r];p=p[m]=p[m]||{}}return p};h(g,{applyTo:h,applyToIf:function(){for(var a=arguments,d=a.length,f=a[0],j,m=1,p;m<d;m++){j=a[m];for(p in j)if(j.hasOwnProperty(p)&&f[p]===n)f[p]=j[p]}return f},format:function(a){var d=a,f,j=arguments,m=j.length,p=0;for(f=1;f<m;f++){d=d.replace("{"+p+"}",j[f]);p++}return d},Log:{error:e,warn:e,log:e,info:e,
debug:e},log:function(){g.Log.log.apply(this,arguments)},sortArray:function(a,d){d||(d=function(f,j){return f-j});i(a,0,a.length,d);return a}})})(Varas,window,document);(function(g){for(var k=g.Log,b=["error","warn","log","info","debug"],n=function(i){return function(h,l,q,o,s){if(typeof console!=="undefined"){var t=console[i];if(t)t.apply?t.apply(console,arguments):console[i](h,l,q,o,s);else console.log&&console.log(h,l,q,o,s)}}},e=0,c=b.length;e<c;e++)k[b[e]]=n(b[e]);g.log=k.log})(Varas);
(function(g){function k(){}function b(i,h){if(arguments.length==1||h===undefined){h=i;i=k}var l,q;if(h.hasOwnProperty("constructor")&&g.isFunction(h.constructor)){l=h.constructor;delete h.constructor}else l=function(){};if(n)l=e(i,l);l.prototype=new i;q=l.prototype;if(n)for(var o in h){if(h.hasOwnProperty(o))q[o]=g.isFunction(h[o])?e(i,h[o]):h[o]}else g.applyTo(q,h);q.constructor=l;l.superclass=i.prototype;return l}var n=false,e=function(i,h){return function(){var l=this.superclass;this.superclass=
i;var q=h.apply(this,arguments);this.superclass=l;return q}},c;k.prototype={};k.prototype.constructor=k;c={NObject:k,extendWrap:function(i,h){n=true;return b(i,h)},extend:function(i,h){n=false;return b(i,h)},override:function(i,h){g.applyTo(i.prototype,h)}};g.OO=c;g.extend=c.extend})(Varas);
(function(g){var k=g.OO;k.Observable=g.extend({constructor:function(){this.events={}},addEvents:function(){var b=arguments,n=b.length,e,c;for(e=0;e<n;e++){c=b[e];if(g.isArray(c))this.addEvents(c);else this.events[c]=[]}},on:function(){return this.addEventListener.apply(this,arguments)},un:function(){return this.removeEventListener.apply(this,arguments)},hasEventListeners:function(b){return this.events&&this.events[b]&&this.events[b].length>0},addEventListener:function(b,n,e){var c=this.events;if(c)c[b]||
(c[b]=[]);else{c=this.events={};c[b]=[]}c[b].push({fn:n,scope:e||this});return this},removeEventListener:function(b,n){var e=this.events,c,i,h;if(e&&e[b]){c=e[b];e[b]=i=[];for(e=0;e<c.length;e++){h=c[e];h.fn!==n&&i.push(h)}}return this},removeAllListeners:function(b){if(b)this.events[b]=[];else this.events={};return me},dispatchEvent:function(b,n){var e,c,i,h;if(!this.events)return false;e=this.events[b];if(!e||e.length===0)return false;n={type:b,cancelled:false,source:this,data:n||{}};c=0;for(i=
e.length;c<i&&!n.cancelled;c++){h=e[c];if(h.fn.call(h.scope||this,n)===false)n.cancelled=true}return true},dispose:function(){this.removeAllListeners();return this},__ieFix:0});k=k.Observable.prototype;k.on=k.addEventListener;k.un=k.removeEventListener})(Varas);
(function(g,k){var b=k.jQuery,n=g.OO,e=n.Observable,c;if(k.Rx){c=(typeof ProvideCustomRxRootObject=="undefined"?k.Rx:ProvideCustomRxRootObject()).Observable.Create;n.override(e,{toRxObservable:function(i){var h=this;return c(function(l){var q=function(o){l.OnNext(o)};h.on(i,q);return function(){h.un(i,q)}})}});if(b!==undefined)b.fn.AsRxObservable=function(){return Rx.Observable.FromArray(this)};g.ns(g,"Rx").DelayedScheduler=function(i){return new Rx.Scheduler(function(h){var l=k.setTimeout(h,i);return Rx.Disposable.Create(function(){k.clearTimeout(l)})},
function(h,l){var q=k.setTimeout(h,l);return Rx.Disposable.Create(function(){k.clearTimeout(q)})},function(){return(new Date).getTime()})}}else g.Log.warn("Unable to load the Rx extentions because the RxJs library is not loaded")})(Varas,this);
(function(g,k){var b=g.OO,n=b.Observable;g.ns(g,"Twitter").Search=b.extend(n,{url:"http://search.twitter.com/search.json",interval:5E3,maxResults:100,query:null,loadOnlyNew:true,constructor:function(e){g.applyTo(this,e);this.addEvents("load","tweet")},start:function(e){var c=this;if(e)c.query=e;c._interval&&clearTimeout(c._interval);var i,h=Math.max(20,c.maxResults||0),l=undefined;i=function(){var q=(new Date).getTime();k.ajax({url:c.url,timeout:5E4,dataType:"jsonp",type:"GET",data:{q:c.query,rpp:h,
since_id:l},success:function(o){if(c.loadOnlyNew)l=o.max_id+1;c.dispatchEvent("load",{raw:o,results:o.results});if(c.hasEventListeners("tweet")){o=o.results;for(var s=0,t=o.length;s<t;s++)c.dispatchEvent("tweet",o[s])}o=(new Date).getTime()-q;o=(c.interval||5E3)-o;o=Math.max(o,250);c._interval=setTimeout(i,o)}})};c._interval=setTimeout(i,0);return c}})})(Varas,window.jQuery);

