#
#
# add_dir "MochiKit"
#
# add_file "MochiKit/MochiKit.js"
# content [db162319790852ff3e02f6e673b729a3c262f4ec]
#
# add_file "MochiKit/__package__.js"
# content [6f05da1941ddb410b89f26ea4ea4e72c235ceaed]
#
# patch "html.py"
# from [e9fa4f4925ed2d6898b2346b003c51dcf7e24bf1]
# to [9238525ad03e4a09cf7617bb8d4385e2ff187dd5]
#
============================================================
--- MochiKit/MochiKit.js db162319790852ff3e02f6e673b729a3c262f4ec
+++ MochiKit/MochiKit.js db162319790852ff3e02f6e673b729a3c262f4ec
@@ -0,0 +1,4123 @@
+/***
+
+ MochiKit.MochiKit 1.2 : PACKED VERSION
+
+ THIS FILE IS AUTOMATICALLY GENERATED. If creating patches, please
+ diff against the source tree, not this file.
+
+ See for documentation, downloads, license, etc.
+
+ (c) 2005 Bob Ippolito. All rights Reserved.
+
+***/
+
+if(typeof (dojo)!="undefined"){
+dojo.provide("MochiKit.Base");
+}
+if(typeof (MochiKit)=="undefined"){
+MochiKit={};
+}
+if(typeof (MochiKit.Base)=="undefined"){
+MochiKit.Base={};
+}
+MochiKit.Base.VERSION="1.2";
+MochiKit.Base.NAME="MochiKit.Base";
+MochiKit.Base.update=function(_1,_2){
+if(_1==null){
+_1={};
+}
+for(var i=1;i>b;
+},zrshift:function(a,b){
+return a>>>b;
+},eq:function(a,b){
+return a==b;
+},ne:function(a,b){
+return a!=b;
+},gt:function(a,b){
+return a>b;
+},ge:function(a,b){
+return a>=b;
+},lt:function(a,b){
+return al){
+_37=l;
+}
+}
+_36=[];
+for(i=0;i<_37;i++){
+var _38=[];
+for(var j=1;j0){
+_51=m.concat(me.im_preargs,_51);
+}
+var _46=me.im_self;
+if(!_46){
+_46=this;
+}
+return me.im_func.apply(_46,_51);
+};
+_50.im_self=_49;
+_50.im_func=_47;
+_50.im_preargs=_48;
+return _50;
+},bindMethods:function(_52){
+var _53=MochiKit.Base.bind;
+for(var k in _52){
+var _54=_52[k];
+if(typeof (_54)=="function"){
+_52[k]=_53(_54,_52);
+}
+}
+},registerComparator:function(_55,_56,_57,_58){
+MochiKit.Base.comparatorRegistry.register(_55,_56,_57,_58);
+},_primitives:{"bool":true,"string":true,"number":true},compare:function(a,b){
+if(a==b){
+return 0;
+}
+var _59=(typeof (a)=="undefined"||a==null);
+var _60=(typeof (b)=="undefined"||b==null);
+if(_59&&_60){
+return 0;
+}else{
+if(_59){
+return -1;
+}else{
+if(_60){
+return 1;
+}
+}
+}
+var m=MochiKit.Base;
+var _61=m._primitives;
+if(!(typeof (a) in _61&&typeof (b) in _61)){
+try{
+return m.comparatorRegistry.match(a,b);
+}
+catch(e){
+if(e!=m.NotFound){
+throw e;
+}
+}
+}
+if(ab){
+return 1;
+}
+}
+var _62=m.repr;
+throw new TypeError(_62(a)+" and "+_62(b)+" can not be compared");
+},compareDateLike:function(a,b){
+return MochiKit.Base.compare(a.getTime(),b.getTime());
+},compareArrayLike:function(a,b){
+var _63=MochiKit.Base.compare;
+var _64=a.length;
+var _65=0;
+if(_64>b.length){
+_65=1;
+_64=b.length;
+}else{
+if(_640))){
+var kv=MochiKit.DOM.formContents(_103);
+_103=kv[0];
+_104=kv[1];
+}else{
+if(arguments.length==1){
+var o=_103;
+_103=[];
+_104=[];
+for(var k in o){
+var v=o[k];
+if(typeof (v)!="function"){
+_103.push(k);
+_104.push(v);
+}
+}
+}
+}
+var rval=[];
+var len=Math.min(_103.length,_104.length);
+var _108=MochiKit.Base.urlEncode;
+for(var i=0;i=stop){
+throw self.StopIteration;
+}
+_137+=step;
+return rval;
+}};
+},imap:function(fun,p,q){
+var m=MochiKit.Base;
+var self=MochiKit.Iter;
+var _141=m.map(self.iter,m.extend(null,arguments,1));
+var map=m.map;
+var next=self.next;
+return {repr:function(){
+return "imap(...)";
+},toString:m.forward("repr"),next:function(){
+return fun.apply(this,map(next,_141));
+}};
+},applymap:function(fun,seq,self){
+seq=MochiKit.Iter.iter(seq);
+var m=MochiKit.Base;
+return {repr:function(){
+return "applymap(...)";
+},toString:m.forward("repr"),next:function(){
+return fun.apply(self,seq.next());
+}};
+},chain:function(p,q){
+var self=MochiKit.Iter;
+var m=MochiKit.Base;
+if(arguments.length==1){
+return self.iter(arguments[0]);
+}
+var _143=m.map(self.iter,arguments);
+return {repr:function(){
+return "chain(...)";
+},toString:m.forward("repr"),next:function(){
+while(_143.length>1){
+try{
+return _143[0].next();
+}
+catch(e){
+if(e!=self.StopIteration){
+throw e;
+}
+_143.shift();
+}
+}
+if(_143.length==1){
+var arg=_143.shift();
+this.next=m.bind(arg.next,arg);
+return this.next();
+}
+throw self.StopIteration;
+}};
+},takewhile:function(pred,seq){
+var self=MochiKit.Iter;
+seq=self.iter(seq);
+return {repr:function(){
+return "takewhile(...)";
+},toString:MochiKit.Base.forward("repr"),next:function(){
+var rval=seq.next();
+if(!pred(rval)){
+this.next=function(){
+throw self.StopIteration;
+};
+this.next();
+}
+return rval;
+}};
+},dropwhile:function(pred,seq){
+seq=MochiKit.Iter.iter(seq);
+var m=MochiKit.Base;
+var bind=m.bind;
+return {"repr":function(){
+return "dropwhile(...)";
+},"toString":m.forward("repr"),"next":function(){
+while(true){
+var rval=seq.next();
+if(!pred(rval)){
+break;
+}
+}
+this.next=bind(seq.next,seq);
+return rval;
+}};
+},_tee:function(_145,sync,_147){
+sync.pos[_145]=-1;
+var m=MochiKit.Base;
+var _148=m.listMin;
+return {repr:function(){
+return "tee("+_145+", ...)";
+},toString:m.forward("repr"),next:function(){
+var rval;
+var i=sync.pos[_145];
+if(i==sync.max){
+rval=_147.next();
+sync.deque.push(rval);
+sync.max+=1;
+sync.pos[_145]+=1;
+}else{
+rval=sync.deque[i-sync.min];
+sync.pos[_145]+=1;
+if(i==sync.min&&_148(sync.pos)!=sync.min){
+sync.min+=1;
+sync.deque.shift();
+}
+}
+return rval;
+}};
+},tee:function(_149,n){
+var rval=[];
+var sync={"pos":[],"deque":[],"max":-1,"min":-1};
+if(arguments.length==1){
+n=2;
+}
+var self=MochiKit.Iter;
+_149=self.iter(_149);
+var _tee=self._tee;
+for(var i=0;i0&&_155>=stop)||(step<0&&_155<=stop)){
+throw MochiKit.Iter.StopIteration;
+}
+var rval=_155;
+_155+=step;
+return rval;
+},repr:function(){
+return "range("+[_155,stop,step].join(", ")+")";
+},toString:MochiKit.Base.forward("repr")};
+},sum:function(_156,_157){
+var x=_157||0;
+var self=MochiKit.Iter;
+_156=self.iter(_156);
+try{
+while(true){
+x+=_156.next();
+}
+}
+catch(e){
+if(e!=self.StopIteration){
+throw e;
+}
+}
+return x;
+},exhaust:function(_158){
+var self=MochiKit.Iter;
+_158=self.iter(_158);
+try{
+while(true){
+_158.next();
+}
+}
+catch(e){
+if(e!=self.StopIteration){
+throw e;
+}
+}
+},forEach:function(_159,func,self){
+var m=MochiKit.Base;
+if(arguments.length>2){
+func=m.bind(func,self);
+}
+if(m.isArrayLike(_159)){
+for(var i=0;i<_159.length;i++){
+func(_159[i]);
+}
+}else{
+self=MochiKit.Iter;
+self.exhaust(self.imap(func,_159));
+}
+},every:function(_161,func){
+var self=MochiKit.Iter;
+try{
+self.ifilterfalse(func,_161).next();
+return false;
+}
+catch(e){
+if(e!=self.StopIteration){
+throw e;
+}
+return true;
+}
+},sorted:function(_162,cmp){
+var rval=MochiKit.Iter.list(_162);
+if(arguments.length==1){
+cmp=MochiKit.Base.compare;
+}
+rval.sort(cmp);
+return rval;
+},reversed:function(_163){
+var rval=MochiKit.Iter.list(_163);
+rval.reverse();
+return rval;
+},some:function(_164,func){
+var self=MochiKit.Iter;
+try{
+self.ifilter(func,_164).next();
+return true;
+}
+catch(e){
+if(e!=self.StopIteration){
+throw e;
+}
+return false;
+}
+},iextend:function(lst,_165){
+if(MochiKit.Base.isArrayLike(_165)){
+for(var i=0;i<_165.length;i++){
+lst.push(_165[i]);
+}
+}else{
+var self=MochiKit.Iter;
+_165=self.iter(_165);
+try{
+while(true){
+lst.push(_165.next());
+}
+}
+catch(e){
+if(e!=self.StopIteration){
+throw e;
+}
+}
+}
+return lst;
+},groupby:function(_166,_167){
+var m=MochiKit.Base;
+var self=MochiKit.Iter;
+if(arguments.length<2){
+_167=m.operator.identity;
+}
+_166=self.iter(_166);
+var pk=undefined;
+var k=undefined;
+var v;
+function fetch(){
+v=_166.next();
+k=_167(v);
+}
+function eat(){
+var ret=v;
+v=undefined;
+return ret;
+}
+var _170=true;
+return {repr:function(){
+return "groupby(...)";
+},next:function(){
+while(k==pk){
+fetch();
+if(_170){
+_170=false;
+break;
+}
+}
+pk=k;
+return [k,{next:function(){
+if(v==undefined){
+fetch();
+}
+if(k!=pk){
+throw self.StopIteration;
+}
+return eat();
+}}];
+}};
+},groupby_as_array:function(_171,_172){
+var m=MochiKit.Base;
+var self=MochiKit.Iter;
+if(arguments.length<2){
+_172=m.operator.identity;
+}
+_171=self.iter(_171);
+var _173=[];
+var _174=true;
+var _175;
+while(true){
+try{
+var _176=_171.next();
+var key=_172(_176);
+}
+catch(e){
+if(e==self.StopIteration){
+break;
+}
+throw e;
+}
+if(_174||key!=_175){
+var _177=[];
+_173.push([key,_177]);
+}
+_177.push(_176);
+_174=false;
+_175=key;
+}
+return _173;
+},arrayLikeIter:function(_178){
+var i=0;
+return {repr:function(){
+return "arrayLikeIter(...)";
+},toString:MochiKit.Base.forward("repr"),next:function(){
+if(i>=_178.length){
+throw MochiKit.Iter.StopIteration;
+}
+return _178[i++];
+}};
+},hasIterateNext:function(_179){
+return (_179&&typeof (_179.iterateNext)=="function");
+},iterateNextIter:function(_180){
+return {repr:function(){
+return "iterateNextIter(...)";
+},toString:MochiKit.Base.forward("repr"),next:function(){
+var rval=_180.iterateNext();
+if(rval===null||rval===undefined){
+throw MochiKit.Iter.StopIteration;
+}
+return rval;
+}};
+}});
+MochiKit.Iter.EXPORT_OK=["iteratorRegistry","arrayLikeIter","hasIterateNext","iterateNextIter",];
+MochiKit.Iter.EXPORT=["StopIteration","registerIteratorFactory","iter","count","cycle","repeat","next","izip","ifilter","ifilterfalse","islice","imap","applymap","chain","takewhile","dropwhile","tee","list","reduce","range","sum","exhaust","forEach","every","sorted","reversed","some","iextend","groupby","groupby_as_array"];
+MochiKit.Iter.__new__=function(){
+var m=MochiKit.Base;
+this.StopIteration=new m.NamedError("StopIteration");
+this.iteratorRegistry=new m.AdapterRegistry();
+this.registerIteratorFactory("arrayLike",m.isArrayLike,this.arrayLikeIter);
+this.registerIteratorFactory("iterateNext",this.hasIterateNext,this.iterateNextIter);
+this.EXPORT_TAGS={":common":this.EXPORT,":all":m.concat(this.EXPORT,this.EXPORT_OK)};
+m.nameFunctions(this);
+};
+MochiKit.Iter.__new__();
+reduce=MochiKit.Iter.reduce;
+MochiKit.Base._exportSymbols(this,MochiKit.Iter);
+if(typeof (dojo)!="undefined"){
+dojo.provide("MochiKit.Logging");
+dojo.require("MochiKit.Base");
+}
+if(typeof (JSAN)!="undefined"){
+JSAN.use("MochiKit.Base",[]);
+}
+try{
+if(typeof (MochiKit.Base)=="undefined"){
+throw "";
+}
+}
+catch(e){
+throw "MochiKit.Logging depends on MochiKit.Base!";
+}
+if(typeof (MochiKit.Logging)=="undefined"){
+MochiKit.Logging={};
+}
+MochiKit.Logging.NAME="MochiKit.Logging";
+MochiKit.Logging.VERSION="1.2";
+MochiKit.Logging.__repr__=function(){
+return "["+this.NAME+" "+this.VERSION+"]";
+};
+MochiKit.Logging.toString=function(){
+return this.__repr__();
+};
+MochiKit.Logging.EXPORT=["LogLevel","LogMessage","Logger","alertListener","logger","log","logError","logDebug","logFatal","logWarning"];
+MochiKit.Logging.EXPORT_OK=["logLevelAtLeast","isLogMessage","compareLogMessage"];
+MochiKit.Logging.LogMessage=function(num,_182,info){
+this.num=num;
+this.level=_182;
+this.info=info;
+this.timestamp=new Date();
+};
+MochiKit.Logging.LogMessage.prototype={repr:function(){
+var m=MochiKit.Base;
+return "LogMessage("+m.map(m.repr,[this.num,this.level,this.info]).join(", ")+")";
+},toString:MochiKit.Base.forward("repr")};
+MochiKit.Base.update(MochiKit.Logging,{logLevelAtLeast:function(_184){
+var self=MochiKit.Logging;
+if(typeof (_184)=="string"){
+_184=self.LogLevel[_184];
+}
+return function(msg){
+var _186=msg.level;
+if(typeof (_186)=="string"){
+_186=self.LogLevel[_186];
+}
+return _186>=_184;
+};
+},isLogMessage:function(){
+var _187=MochiKit.Logging.LogMessage;
+for(var i=0;i=0&&this._messages.length>this.maxSize){
+this._messges.shift();
+}
+},getMessages:function(_196){
+var _197=0;
+if(!(typeof (_196)=="undefined"||_196==null)){
+_197=Math.max(0,this._messages.length-_196);
+}
+return this._messages.slice(_197);
+},getMessageText:function(_198){
+if(typeof (_198)=="undefined"||_198==null){
+_198=30;
+}
+var _199=this.getMessages(_198);
+if(_199.length){
+var lst=map(function(m){
+return "\n ["+m.num+"] "+m.level+": "+m.info.join(" ");
+},_199);
+lst.unshift("LAST "+_199.length+" MESSAGES:");
+return lst.join("");
+}
+return "";
+},debuggingBookmarklet:function(_200){
+if(typeof (MochiKit.LoggingPane)=="undefined"){
+alert(this.getMessageText());
+}else{
+MochiKit.LoggingPane.createLoggingPane(_200||false);
+}
+}};
+MochiKit.Logging.__new__=function(){
+this.LogLevel={ERROR:40,FATAL:50,WARNING:30,INFO:20,DEBUG:10};
+var m=MochiKit.Base;
+m.registerComparator("LogMessage",this.isLogMessage,this.compareLogMessage);
+var _201=m.partial;
+var _202=this.Logger;
+var _203=_202.prototype.baseLog;
+m.update(this.Logger.prototype,{debug:_201(_203,"DEBUG"),log:_201(_203,"INFO"),error:_201(_203,"ERROR"),fatal:_201(_203,"FATAL"),warning:_201(_203,"WARNING")});
+var self=this;
+var _204=function(name){
+return function(){
+self.logger[name].apply(self.logger,arguments);
+};
+};
+this.log=_204("log");
+this.logError=_204("error");
+this.logDebug=_204("debug");
+this.logFatal=_204("fatal");
+this.logWarning=_204("warning");
+this.logger=new _202();
+this.EXPORT_TAGS={":common":this.EXPORT,":all":m.concat(this.EXPORT,this.EXPORT_OK)};
+m.nameFunctions(this);
+};
+MochiKit.Logging.__new__();
+MochiKit.Base._exportSymbols(this,MochiKit.Logging);
+if(typeof (dojo)!="undefined"){
+dojo.provide("MochiKit.DateTime");
+}
+if(typeof (MochiKit)=="undefined"){
+MochiKit={};
+}
+if(typeof (MochiKit.DateTime)=="undefined"){
+MochiKit.DateTime={};
+}
+MochiKit.DateTime.NAME="MochiKit.DateTime";
+MochiKit.DateTime.VERSION="1.2";
+MochiKit.DateTime.__repr__=function(){
+return "["+this.NAME+" "+this.VERSION+"]";
+};
+MochiKit.DateTime.toString=function(){
+return this.__repr__();
+};
+MochiKit.DateTime.isoDate=function(str){
+str=str+"";
+if(typeof (str)!="string"||str.length==0){
+return null;
+}
+var iso=str.split("-");
+if(iso.length==0){
+return null;
+}
+return new Date(iso[0],iso[1]-1,iso[2]);
+};
+MochiKit.DateTime._isoRegexp=/(\d{4,})(?:-(\d{1,2})(?:-(\d{1,2})(?:[T ](\d{1,2}):(\d{1,2})(?::(\d{1,2})(?:\.(\d+))?)?(?:(Z)|([+-])(\d{1,2})(?::(\d{1,2}))?)?)?)?)?/;
+MochiKit.DateTime.isoTimestamp=function(str){
+str=str+"";
+if(typeof (str)!="string"||str.length==0){
+return null;
+}
+var res=str.match(MochiKit.DateTime._isoRegexp);
+if(typeof (res)=="undefined"||res==null){
+return null;
+}
+var year,month,day,hour,min,sec,msec;
+year=parseInt(res[1],10);
+if(typeof (res[2])=="undefined"||res[2]==""){
+return new Date(year);
+}
+month=parseInt(res[2],10)-1;
+day=parseInt(res[3],10);
+if(typeof (res[4])=="undefined"||res[4]==""){
+return new Date(year,month,day);
+}
+hour=parseInt(res[4],10);
+min=parseInt(res[5],10);
+sec=(typeof (res[6])!="undefined"&&res[6]!="")?parseInt(res[6],10):0;
+if(typeof (res[7])!="undefined"&&res[7]!=""){
+msec=Math.round(1000*parseFloat("0."+res[7]));
+}else{
+msec=0;
+}
+if((typeof (res[8])=="undefined"||res[8]=="")&&(typeof (res[9])=="undefined"||res[9]=="")){
+return new Date(year,month,day,hour,min,sec,msec);
+}
+var ofs;
+if(typeof (res[9])!="undefined"&&res[9]!=""){
+ofs=parseInt(res[10],10)*3600000;
+if(typeof (res[11])!="undefined"&&res[11]!=""){
+ofs+=parseInt(res[11],10)*60000;
+}
+if(res[9]=="-"){
+ofs=-ofs;
+}
+}else{
+ofs=0;
+}
+return new Date(Date.UTC(year,month,day,hour,min,sec,msec)-ofs);
+};
+MochiKit.DateTime.toISOTime=function(date,_210){
+if(typeof (date)=="undefined"||date==null){
+return null;
+}
+var hh=date.getHours();
+var mm=date.getMinutes();
+var ss=date.getSeconds();
+var lst=[((_210&&(hh<10))?"0"+hh:hh),((mm<10)?"0"+mm:mm),((ss<10)?"0"+ss:ss)];
+return lst.join(":");
+};
+MochiKit.DateTime.toISOTimestamp=function(date,_214){
+if(typeof (date)=="undefined"||date==null){
+return null;
+}
+var sep=_214?"T":" ";
+var foot=_214?"Z":"";
+if(_214){
+date=new Date(date.getTime()+(date.getTimezoneOffset()*60000));
+}
+return MochiKit.DateTime.toISODate(date)+sep+MochiKit.DateTime.toISOTime(date,_214)+foot;
+};
+MochiKit.DateTime.toISODate=function(date){
+if(typeof (date)=="undefined"||date==null){
+return null;
+}
+var _217=MochiKit.DateTime._padTwo;
+return [date.getFullYear(),_217(date.getMonth()+1),_217(date.getDate())].join("-");
+};
+MochiKit.DateTime.americanDate=function(d){
+d=d+"";
+if(typeof (d)!="string"||d.length==0){
+return null;
+}
+var a=d.split("/");
+return new Date(a[2],a[0]-1,a[1]);
+};
+MochiKit.DateTime._padTwo=function(n){
+return (n>9)?n:"0"+n;
+};
+MochiKit.DateTime.toPaddedAmericanDate=function(d){
+if(typeof (d)=="undefined"||d==null){
+return null;
+}
+var _219=MochiKit.DateTime._padTwo;
+return [_219(d.getMonth()+1),_219(d.getDate()),d.getFullYear()].join("/");
+};
+MochiKit.DateTime.toAmericanDate=function(d){
+if(typeof (d)=="undefined"||d==null){
+return null;
+}
+return [d.getMonth()+1,d.getDate(),d.getFullYear()].join("/");
+};
+MochiKit.DateTime.EXPORT=["isoDate","isoTimestamp","toISOTime","toISOTimestamp","toISODate","americanDate","toPaddedAmericanDate","toAmericanDate"];
+MochiKit.DateTime.EXPORT_OK=[];
+MochiKit.DateTime.EXPORT_TAGS={":common":MochiKit.DateTime.EXPORT,":all":MochiKit.DateTime.EXPORT};
+MochiKit.DateTime.__new__=function(){
+var base=this.NAME+".";
+for(var k in this){
+var o=this[k];
+if(typeof (o)=="function"&&typeof (o.NAME)=="undefined"){
+try{
+o.NAME=base+k;
+}
+catch(e){
+}
+}
+}
+};
+MochiKit.DateTime.__new__();
+(function(_220,_221){
+if((typeof (JSAN)=="undefined"&&typeof (dojo)=="undefined")||(typeof (MochiKit.__compat__)=="boolean"&&MochiKit.__compat__)){
+var all=_221.EXPORT_TAGS[":all"];
+for(var i=0;i_229){
+var i=_235.length-_229;
+res=fmt.separator+_235.substring(i,_235.length)+res;
+_235=_235.substring(0,i);
+}
+}
+res=_235+res;
+if(_227>0){
+while(frac.length<_230){
+frac=frac+"0";
+}
+res=res+fmt.decimal+frac;
+}
+return _231+res+_232;
+};
+};
+MochiKit.Format.numberFormatter=function(_237,_238,_239){
+if(typeof (_238)=="undefined"){
+_238="";
+}
+var _240=_237.match(/((?:[0#]+,)?[0#]+)(?:\.([0#]+))?(%)?/);
+if(!_240){
+throw TypeError("Invalid pattern");
+}
+var _241=_237.substr(0,_240.index);
+var _242=_237.substr(_240.index+_240[0].length);
+if(_241.search(/-/)==-1){
+_241=_241+"-";
+}
+var _243=_240[1];
+var frac=(typeof (_240[2])=="string"&&_240[2]!="")?_240[2]:"";
+var _244=(typeof (_240[3])=="string"&&_240[3]!="");
+var tmp=_243.split(/,/);
+var _246;
+if(typeof (_239)=="undefined"){
+_239="default";
+}
+if(tmp.length==1){
+_246=null;
+}else{
+_246=tmp[1].length;
+}
+var _247=_243.length-_243.replace(/0/g,"").length;
+var _248=frac.length-frac.replace(/0/g,"").length;
+var _249=frac.length;
+var rval=MochiKit.Format._numberFormatter(_238,_241,_242,_239,_244,_249,_247,_246,_248);
+var m=MochiKit.Base;
+if(m){
+var fn=arguments.callee;
+var args=m.concat(arguments);
+rval.repr=function(){
+return [self.NAME,"(",map(m.repr,args).join(", "),")"].join("");
+};
+}
+return rval;
+};
+MochiKit.Format.formatLocale=function(_251){
+if(typeof (_251)=="undefined"||_251==null){
+_251="default";
+}
+if(typeof (_251)=="string"){
+var rval=MochiKit.Format.LOCALE[_251];
+if(typeof (rval)=="string"){
+rval=arguments.callee(rval);
+MochiKit.Format.LOCALE[_251]=rval;
+}
+return rval;
+}else{
+return _251;
+}
+};
+MochiKit.Format.twoDigitAverage=function(_252,_253){
+if(_253){
+var res=_252/_253;
+if(!isNaN(res)){
+return MochiKit.Format.twoDigitFloat(_252/_253);
+}
+}
+return "0";
+};
+MochiKit.Format.twoDigitFloat=function(_254){
+var sign=(_254<0?"-":"");
+var s=Math.floor(Math.abs(_254)*100).toString();
+if(s=="0"){
+return s;
+}
+if(s.length<3){
+while(s.charAt(s.length-1)=="0"){
+s=s.substring(0,s.length-1);
+}
+return sign+"0."+s;
+}
+var head=sign+s.substring(0,s.length-2);
+var tail=s.substring(s.length-2,s.length);
+if(tail=="00"){
+return head;
+}else{
+if(tail.charAt(1)=="0"){
+return head+"."+tail.charAt(0);
+}else{
+return head+"."+tail;
+}
+}
+};
+MochiKit.Format.lstrip=function(str,_259){
+str=str+"";
+if(typeof (str)!="string"){
+return null;
+}
+if(!_259){
+return str.replace(/^\s+/,"");
+}else{
+return str.replace(new RegExp("^["+_259+"]+"),"");
+}
+};
+MochiKit.Format.rstrip=function(str,_260){
+str=str+"";
+if(typeof (str)!="string"){
+return null;
+}
+if(!_260){
+return str.replace(/\s+$/,"");
+}else{
+return str.replace(new RegExp("["+_260+"]+$"),"");
+}
+};
+MochiKit.Format.strip=function(str,_261){
+var self=MochiKit.Format;
+return self.rstrip(self.lstrip(str,_261),_261);
+};
+MochiKit.Format.truncToFixed=function(_262,_263){
+_262=Math.floor(_262*Math.pow(10,_263));
+var res=(_262*Math.pow(10,-_263)).toFixed(_263);
+if(res.charAt(0)=="."){
+res="0"+res;
+}
+return res;
+};
+MochiKit.Format.roundToFixed=function(_264,_265){
+return MochiKit.Format.truncToFixed(_264+0.5*Math.pow(10,-_265),_265);
+};
+MochiKit.Format.percentFormat=function(_266){
+return MochiKit.Format.twoDigitFloat(100*_266)+"%";
+};
+MochiKit.Format.EXPORT=["truncToFixed","roundToFixed","numberFormatter","formatLocale","twoDigitAverage","twoDigitFloat","percentFormat","lstrip","rstrip","strip"];
+MochiKit.Format.LOCALE={en_US:{separator:",",decimal:".",percent:"%"},de_DE:{separator:".",decimal:",",percent:"%"},fr_FR:{separator:" ",decimal:",",percent:"%"},"default":"en_US"};
+MochiKit.Format.EXPORT_OK=[];
+MochiKit.Format.EXPORT_TAGS={":all":MochiKit.Format.EXPORT,":common":MochiKit.Format.EXPORT};
+MochiKit.Format.__new__=function(){
+var base=this.NAME+".";
+var k,v,o;
+for(k in this.LOCALE){
+o=this.LOCALE[k];
+if(typeof (o)=="object"){
+o.repr=function(){
+return this.NAME;
+};
+o.NAME=base+"LOCALE."+k;
+}
+}
+for(k in this){
+o=this[k];
+if(typeof (o)=="function"&&typeof (o.NAME)=="undefined"){
+try{
+o.NAME=base+k;
+}
+catch(e){
+}
+}
+}
+};
+MochiKit.Format.__new__();
+(function(_267,_268){
+if((typeof (JSAN)=="undefined"&&typeof (dojo)=="undefined")||(typeof (MochiKit.__compat__)=="boolean"&&MochiKit.__compat__)){
+var all=_268.EXPORT_TAGS[":all"];
+for(var i=0;i=0)){
+this._fire();
+}
+},_continue:function(res){
+this._resback(res);
+this._unpause();
+},_resback:function(res){
+this.fired=((res instanceof Error)?1:0);
+this.results[this.fired]=res;
+this._fire();
+},_check:function(){
+if(this.fired!=-1){
+if(!this.silentlyCancelled){
+throw new MochiKit.Async.AlreadyCalledError(this);
+}
+this.silentlyCancelled=false;
+return;
+}
+},callback:function(res){
+this._check();
+this._resback(res);
+},errback:function(res){
+this._check();
+if(!(res instanceof Error)){
+res=new MochiKit.Async.GenericError(res);
+}
+this._resback(res);
+},addBoth:function(fn){
+if(arguments.length>1){
+fn=MochiKit.Base.partial.apply(null,arguments);
+}
+return this.addCallbacks(fn,fn);
+},addCallback:function(fn){
+if(arguments.length>1){
+fn=MochiKit.Base.partial.apply(null,arguments);
+}
+return this.addCallbacks(fn,null);
+},addErrback:function(fn){
+if(arguments.length>1){
+fn=MochiKit.Base.partial.apply(null,arguments);
+}
+return this.addCallbacks(null,fn);
+},addCallbacks:function(cb,eb){
+this.chain.push([cb,eb]);
+if(this.fired>=0){
+this._fire();
+}
+return this;
+},_fire:function(){
+var _273=this.chain;
+var _274=this.fired;
+var res=this.results[_274];
+var self=this;
+var cb=null;
+while(_273.length>0&&this.paused==0){
+var pair=_273.shift();
+var f=pair[_274];
+if(f==null){
+continue;
+}
+try{
+res=f(res);
+_274=((res instanceof Error)?1:0);
+if(res instanceof MochiKit.Async.Deferred){
+cb=function(res){
+self._continue(res);
+};
+this._pause();
+}
+}
+catch(err){
+_274=1;
+res=err;
+}
+}
+this.fired=_274;
+this.results[_274]=res;
+if(cb&&this.paused){
+res.addBoth(cb);
+}
+}};
+MochiKit.Base.update(MochiKit.Async,{evalJSONRequest:function(){
+return eval("("+arguments[0].responseText+")");
+},succeed:function(_276){
+var d=new MochiKit.Async.Deferred();
+d.callback.apply(d,arguments);
+return d;
+},fail:function(_277){
+var d=new MochiKit.Async.Deferred();
+d.errback.apply(d,arguments);
+return d;
+},getXMLHttpRequest:function(){
+var self=arguments.callee;
+if(!self.XMLHttpRequest){
+var _278=[function(){
+return new XMLHttpRequest();
+},function(){
+return new ActiveXObject("Msxml2.XMLHTTP");
+},function(){
+return new ActiveXObject("Microsoft.XMLHTTP");
+},function(){
+return new ActiveXObject("Msxml2.XMLHTTP.4.0");
+},function(){
+throw new MochiKit.Async.BrowserComplianceError("Browser does not support XMLHttpRequest");
+}];
+for(var i=0;i<_278.length;i++){
+var func=_278[i];
+try{
+self.XMLHttpRequest=func;
+return func();
+}
+catch(e){
+}
+}
+}
+return self.XMLHttpRequest();
+},sendXMLHttpRequest:function(req,_280){
+if(typeof (_280)=="undefined"){
+_280=null;
+}
+var _281=function(){
+try{
+req.onreadystatechange=null;
+}
+catch(e){
+try{
+req.onreadystatechange=function(){
+};
+}
+catch(e){
+}
+}
+req.abort();
+};
+var self=MochiKit.Async;
+var d=new self.Deferred(_281);
+var _282=function(){
+if(req.readyState==4){
+try{
+req.onreadystatechange=null;
+}
+catch(e){
+try{
+req.onreadystatechange=function(){
+};
+}
+catch(e){
+}
+}
+var _283=null;
+try{
+_283=req.status;
+if(!_283&&MochiKit.Base.isNotEmpty(req.responseText)){
+_283=304;
+}
+}
+catch(e){
+}
+if(_283==200||_283==304){
+d.callback(req);
+}else{
+var err=new self.XMLHttpRequestError(req,"Request failed");
+if(err.number){
+d.errback(err);
+}else{
+d.errback(err);
+}
+}
+}
+};
+try{
+req.onreadystatechange=_282;
+req.send(_280);
+}
+catch(e){
+try{
+req.onreadystatechange=null;
+}
+catch(ignore){
+}
+d.errback(e);
+}
+return d;
+},doSimpleXMLHttpRequest:function(url){
+var self=MochiKit.Async;
+var req=self.getXMLHttpRequest();
+if(arguments.length>1){
+var m=MochiKit.Base;
+var qs=m.queryString.apply(null,m.extend(null,arguments,1));
+if(qs){
+url+="?"+qs;
+}
+}
+req.open("GET",url,true);
+return self.sendXMLHttpRequest(req);
+},loadJSONDoc:function(url){
+var self=MochiKit.Async;
+var d=self.doSimpleXMLHttpRequest.apply(self,arguments);
+d=d.addCallback(self.evalJSONRequest);
+return d;
+},wait:function(_287,_288){
+var d=new MochiKit.Async.Deferred();
+var m=MochiKit.Base;
+if(typeof (_288)!="undefined"){
+d.addCallback(function(){
+return _288;
+});
+}
+var _289=setTimeout(m.bind(d.callback,d),Math.floor(_287*1000));
+d.canceller=function(){
+try{
+clearTimeout(_289);
+}
+catch(e){
+}
+};
+return d;
+},callLater:function(_290,func){
+var m=MochiKit.Base;
+var _291=m.partial.apply(m,m.extend(null,arguments,1));
+return MochiKit.Async.wait(_290).addCallback(function(res){
+return _291();
+});
+}});
+MochiKit.Async.DeferredLock=function(){
+this.waiting=[];
+this.locked=false;
+this.id=this._nextId();
+};
+MochiKit.Async.DeferredLock.prototype={__class__:MochiKit.Async.DeferredLock,acquire:function(){
+d=new MochiKit.Async.Deferred();
+if(this.locked){
+this.waiting.push(d);
+}else{
+this.locked=true;
+d.callback(this);
+}
+return d;
+},release:function(){
+if(!this.locked){
+throw TypeError("Tried to release an unlocked DeferredLock");
+}
+this.locked=false;
+if(this.waiting.length>0){
+this.locked=true;
+this.waiting.shift().callback(this);
+}
+},_nextId:MochiKit.Base.counter(),repr:function(){
+var _292;
+if(this.locked){
+_292="locked, "+this.waiting.length+" waiting";
+}else{
+_292="unlocked";
+}
+return "DeferredLock("+this.id+", "+_292+")";
+},toString:MochiKit.Base.forward("repr")};
+MochiKit.Async.EXPORT=["AlreadyCalledError","CancelledError","BrowserComplianceError","GenericError","XMLHttpRequestError","Deferred","succeed","fail","getXMLHttpRequest","doSimpleXMLHttpRequest","loadJSONDoc","wait","callLater","sendXMLHttpRequest","DeferredLock"];
+MochiKit.Async.EXPORT_OK=["evalJSONRequest"];
+MochiKit.Async.__new__=function(){
+var m=MochiKit.Base;
+var ne=m.partial(m._newNamedError,this);
+ne("AlreadyCalledError",function(_294){
+this.deferred=_294;
+});
+ne("CancelledError",function(_295){
+this.deferred=_295;
+});
+ne("BrowserComplianceError",function(msg){
+this.message=msg;
+});
+ne("GenericError",function(msg){
+this.message=msg;
+});
+ne("XMLHttpRequestError",function(req,msg){
+this.req=req;
+this.message=msg;
+try{
+this.number=req.status;
+}
+catch(e){
+}
+});
+this.EXPORT_TAGS={":common":this.EXPORT,":all":m.concat(this.EXPORT,this.EXPORT_OK)};
+m.nameFunctions(this);
+};
+MochiKit.Async.__new__();
+MochiKit.Base._exportSymbols(this,MochiKit.Async);
+if(typeof (dojo)!="undefined"){
+dojo.provide("MochiKit.DOM");
+dojo.require("MochiKit.Iter");
+}
+if(typeof (JSAN)!="undefined"){
+JSAN.use("MochiKit.Iter",[]);
+}
+try{
+if(typeof (MochiKit.Iter)=="undefined"){
+throw "";
+}
+}
+catch(e){
+throw "MochiKit.DOM depends on MochiKit.Iter!";
+}
+if(typeof (MochiKit.DOM)=="undefined"){
+MochiKit.DOM={};
+}
+MochiKit.DOM.NAME="MochiKit.DOM";
+MochiKit.DOM.VERSION="1.2";
+MochiKit.DOM.__repr__=function(){
+return "["+this.NAME+" "+this.VERSION+"]";
+};
+MochiKit.DOM.toString=function(){
+return this.__repr__();
+};
+MochiKit.DOM.EXPORT=["formContents","currentWindow","currentDocument","withWindow","withDocument","registerDOMConverter","coerceToDOM","createDOM","createDOMFunc","getNodeAttribute","setNodeAttribute","updateNodeAttributes","appendChildNodes","replaceChildNodes","removeElement","swapDOM","BUTTON","TT","PRE","H1","H2","H3","BR","CANVAS","HR","LABEL","TEXTAREA","FORM","STRONG","SELECT","OPTION","OPTGROUP","LEGEND","FIELDSET","P","UL","OL","LI","TD","TR","THEAD","TBODY","TFOOT","TABLE","TH","INPUT","SPAN","A","DIV","IMG","getElement","$","computedStyle","getElementsByTagAndClassName","addToCallStack","addLoadEvent","focusOnLoad","setElementClass","toggleElementClass","addElementClass","removeElementClass","swapElementClass","hasElementClass","escapeHTML","toHTML","emitHTML","setDisplayForElement","hideElement","showElement","scrapeText","elementPosition"];
+MochiKit.DOM.EXPORT_OK=["domConverters"];
+MochiKit.DOM.Coordinates=function(x,y){
+this.x=x;
+this.y=y;
+};
+MochiKit.DOM.Coordinates.prototype.repr=function(){
+var repr=MochiKit.Base.repr;
+return "{x: "+repr(this.x)+", y: "+repr(this.y)+"}";
+};
+MochiKit.DOM.elementPosition=function(elem,_298){
+var self=MochiKit.DOM;
+elem=self.getElement(elem);
+if(!elem){
+return undefined;
+}
+var x=0;
+var y=0;
+if(elem.offsetParent){
+while(elem.offsetParent){
+x+=elem.offsetLeft;
+y+=elem.offsetTop;
+elem=elem.offsetParent;
+}
+}else{
+x=elem.x||x;
+y=elem.y||y;
+}
+if(_298){
+_298=arguments.callee(_298);
+if(_298){
+x-=(_298.x||0);
+y-=(_298.y||0);
+}
+}
+return new self.Coordinates(x,y);
+};
+MochiKit.DOM.currentWindow=function(){
+return MochiKit.DOM._window;
+};
+MochiKit.DOM.currentDocument=function(){
+return MochiKit.DOM._document;
+};
+MochiKit.DOM.withWindow=function(win,func){
+var self=MochiKit.DOM;
+var _300=self._document;
+var _301=self._win;
+var rval;
+try{
+self._window=win;
+self._document=win.document;
+rval=func();
+}
+catch(e){
+self._window=_301;
+self._document=_300;
+throw e;
+}
+self._window=_301;
+self._document=_300;
+return rval;
+};
+MochiKit.DOM.formContents=function(elem){
+var _302=[];
+var _303=[];
+var m=MochiKit.Base;
+var self=MochiKit.DOM;
+if(typeof (elem)=="undefined"||elem==null){
+elem=self._document;
+}else{
+elem=self.getElement(elem);
+}
+m.nodeWalk(elem,function(elem){
+var name=elem.name;
+var _304=elem.value;
+if(m.isNotEmpty(name,_304)){
+if(elem.tagName=="INPUT"&&(elem.type=="radio"||elem.type=="checkbox")&&!elem.checked){
+return null;
+}
+_302.push(name);
+_303.push(_304);
+return null;
+}
+return elem.childNodes;
+});
+return [_302,_303];
+};
+MochiKit.DOM.withDocument=function(doc,func){
+var self=MochiKit.DOM;
+var _306=self._document;
+var rval;
+try{
+self._document=doc;
+rval=func();
+}
+catch(e){
+self._document=_306;
+throw e;
+}
+self._document=_306;
+return rval;
+};
+MochiKit.DOM.registerDOMConverter=function(name,_307,wrap,_308){
+MochiKit.DOM.domConverters.register(name,_307,wrap,_308);
+};
+MochiKit.DOM.coerceToDOM=function(node,ctx){
+var im=MochiKit.Iter;
+var self=MochiKit.DOM;
+var iter=im.iter;
+var _313=im.repeat;
+var imap=im.imap;
+var _315=self.domConverters;
+var _316=self.coerceToDOM;
+var _317=MochiKit.Base.NotFound;
+while(true){
+if(typeof (node)=="undefined"||node==null){
+return null;
+}
+if(typeof (node.nodeType)!="undefined"&&node.nodeType>0){
+return node;
+}
+if(typeof (node)=="number"||typeof (node)=="bool"){
+node=node.toString();
+}
+if(typeof (node)=="string"){
+return self._document.createTextNode(node);
+}
+if(typeof (node.toDOM)=="function"){
+node=node.toDOM(ctx);
+continue;
+}
+if(typeof (node)=="function"){
+node=node(ctx);
+continue;
+}
+var _318=null;
+try{
+_318=iter(node);
+}
+catch(e){
+}
+if(_318){
+return imap(_316,_318,_313(ctx));
+}
+try{
+node=_315.match(node,ctx);
+continue;
+}
+catch(e){
+if(e!=_317){
+throw e;
+}
+}
+return self._document.createTextNode(node.toString());
+}
+return undefined;
+};
+MochiKit.DOM.setNodeAttribute=function(node,attr,_320){
+var o={};
+o[attr]=_320;
+try{
+return MochiKit.DOM.updateNodeAttributes(node,o);
+}
+catch(e){
+}
+return null;
+};
+MochiKit.DOM.getNodeAttribute=function(node,attr){
+var self=MochiKit.DOM;
+var _321=self.attributeArray.renames[attr];
+node=self.getElement(node);
+try{
+if(_321){
+return node[_321];
+}
+return node.getAttribute(attr);
+}
+catch(e){
+}
+return null;
+};
+MochiKit.DOM.updateNodeAttributes=function(node,_322){
+var elem=node;
+var self=MochiKit.DOM;
+if(typeof (node)=="string"){
+elem=self.getElement(node);
+}
+if(_322){
+var _323=MochiKit.Base.updatetree;
+if(self.attributeArray.compliant){
+for(var k in _322){
+var v=_322[k];
+if(typeof (v)=="object"&&typeof (elem[k])=="object"){
+_323(elem[k],v);
+}else{
+if(k.substring(0,2)=="on"){
+if(typeof (v)=="string"){
+v=new Function(v);
+}
+elem[k]=v;
+}else{
+elem.setAttribute(k,v);
+}
+}
+}
+}else{
+var _324=self.attributeArray.renames;
+for(k in _322){
+v=_322[k];
+var _325=_324[k];
+if(k=="style"&&typeof (v)=="string"){
+elem.style.cssText=v;
+}else{
+if(typeof (_325)=="string"){
+elem[_325]=v;
+}else{
+if(typeof (elem[k])=="object"&&typeof (v)=="object"){
+_323(elem[k],v);
+}else{
+if(k.substring(0,2)=="on"){
+if(typeof (v)=="string"){
+v=new Function(v);
+}
+elem[k]=v;
+}else{
+elem.setAttribute(k,v);
+}
+}
+}
+}
+}
+}
+}
+return elem;
+};
+MochiKit.DOM.appendChildNodes=function(node){
+var elem=node;
+var self=MochiKit.DOM;
+if(typeof (node)=="string"){
+elem=self.getElement(node);
+}
+var _326=[self.coerceToDOM(MochiKit.Base.extend(null,arguments,1),elem)];
+var _327=MochiKit.Iter.iextend;
+while(_326.length){
+var n=_326.shift();
+if(typeof (n)=="undefined"||n==null){
+}else{
+if(typeof (n.nodeType)=="number"){
+elem.appendChild(n);
+}else{
+_327(_326,n);
+}
+}
+}
+return elem;
+};
+MochiKit.DOM.replaceChildNodes=function(node){
+var elem=node;
+var self=MochiKit.DOM;
+if(typeof (node)=="string"){
+elem=self.getElement(node);
+arguments[0]=elem;
+}
+var _328;
+while((_328=elem.firstChild)){
+elem.removeChild(_328);
+}
+if(arguments.length<2){
+return elem;
+}else{
+return self.appendChildNodes.apply(this,arguments);
+}
+};
+MochiKit.DOM.createDOM=function(name,_329){
+var elem;
+var self=MochiKit.DOM;
+if(typeof (name)=="string"){
+if(_329&&"name" in _329&&!self.attributeArray.compliant){
+name="<"+name+" name=\""+self.escapeHTML(_329.name)+"\">";
+}
+elem=self._document.createElement(name);
+}else{
+elem=name;
+}
+if(_329){
+self.updateNodeAttributes(elem,_329);
+}
+if(arguments.length<=2){
+return elem;
+}else{
+var args=MochiKit.Base.extend([elem],arguments,2);
+return self.appendChildNodes.apply(this,args);
+}
+};
+MochiKit.DOM.createDOMFunc=function(){
+var m=MochiKit.Base;
+return m.partial.apply(this,m.extend([MochiKit.DOM.createDOM],arguments));
+};
+MochiKit.DOM.swapDOM=function(dest,src){
+var self=MochiKit.DOM;
+dest=self.getElement(dest);
+var _332=dest.parentNode;
+if(src){
+src=self.getElement(src);
+_332.replaceChild(src,dest);
+}else{
+_332.removeChild(dest);
+}
+return src;
+};
+MochiKit.DOM.getElement=function(id){
+var self=MochiKit.DOM;
+if(arguments.length==1){
+return ((typeof (id)=="string")?self._document.getElementById(id):id);
+}else{
+return MochiKit.Base.map(self.getElement,arguments);
+}
+};
+MochiKit.DOM.computedStyle=function(_334,_335,_336){
+if(arguments.length==2){
+_336=_335;
+}
+var self=MochiKit.DOM;
+var el=self.getElement(_334);
+var _338=self._document;
+if(!el||el==_338){
+return undefined;
+}
+if(el.currentStyle){
+return el.currentStyle[_335];
+}
+if(typeof (_338.defaultView)=="undefined"){
+return undefined;
+}
+if(_338.defaultView==null){
+return undefined;
+}
+var _339=_338.defaultView.getComputedStyle(el,null);
+if(typeof (_339)=="undefined"||_339==null){
+return undefined;
+}
+return _339.getPropertyValue(_336);
+};
+MochiKit.DOM.getElementsByTagAndClassName=function(_340,_341,_342){
+var self=MochiKit.DOM;
+if(typeof (_340)=="undefined"||_340==null){
+_340="*";
+}
+if(typeof (_342)=="undefined"||_342==null){
+_342=self._document;
+}
+_342=self.getElement(_342);
+var _343=_342.getElementsByTagName(_340)||self._document.all;
+if(typeof (_341)=="undefined"||_341==null){
+return MochiKit.Base.extend(null,_343);
+}
+var _344=[];
+for(var i=0;i<_343.length;i++){
+var _345=_343[i];
+var _346=_345.className.split(" ");
+for(var j=0;j<_346.length;j++){
+if(_346[j]==_341){
+_344.push(_345);
+break;
+}
+}
+}
+return _344;
+};
+MochiKit.DOM._newCallStack=function(path,once){
+var rval=function(){
+var _349=arguments.callee.callStack;
+for(var i=0;i<_349.length;i++){
+if(_349[i].apply(this,arguments)===false){
+break;
+}
+}
+if(once){
+try{
+this[path]=null;
+}
+catch(e){
+}
+}
+};
+rval.callStack=[];
+return rval;
+};
+MochiKit.DOM.addToCallStack=function(_350,path,func,once){
+var self=MochiKit.DOM;
+var _351=_350[path];
+var _352=_351;
+if(!(typeof (_351)=="function"&&typeof (_351.callStack)=="object"&&_351.callStack!=null)){
+_352=self._newCallStack(path,once);
+if(typeof (_351)=="function"){
+_352.callStack.push(_351);
+}
+_350[path]=_352;
+}
+_352.callStack.push(func);
+};
+MochiKit.DOM.addLoadEvent=function(func){
+var self=MochiKit.DOM;
+self.addToCallStack(self._window,"onload",func,true);
+};
+MochiKit.DOM.focusOnLoad=function(_353){
+var self=MochiKit.DOM;
+self.addLoadEvent(function(){
+_353=self.getElement(_353);
+if(_353){
+_353.focus();
+}
+});
+};
+MochiKit.DOM.setElementClass=function(_354,_355){
+var self=MochiKit.DOM;
+var obj=self.getElement(_354);
+if(self.attributeArray.compliant){
+obj.setAttribute("class",_355);
+}else{
+obj.setAttribute("className",_355);
+}
+};
+MochiKit.DOM.toggleElementClass=function(_356){
+var self=MochiKit.DOM;
+for(var i=1;i/g,">");
+};
+MochiKit.DOM.toHTML=function(dom){
+return MochiKit.DOM.emitHTML(dom).join("");
+};
+MochiKit.DOM.emitHTML=function(dom,lst){
+if(typeof (lst)=="undefined"||lst==null){
+lst=[];
+}
+var _372=[dom];
+var self=MochiKit.DOM;
+var _373=self.escapeHTML;
+var _374=self.attributeArray;
+while(_372.length){
+dom=_372.pop();
+if(typeof (dom)=="string"){
+lst.push(dom);
+}else{
+if(dom.nodeType==1){
+lst.push("<"+dom.nodeName.toLowerCase());
+var _375=[];
+var _376=_374(dom);
+for(var i=0;i<_376.length;i++){
+var a=_376[i];
+_375.push([" ",a.name,"=\"",_373(a.value),"\""]);
+}
+_375.sort();
+for(i=0;i<_375.length;i++){
+var _377=_375[i];
+for(var j=0;j<_377.length;j++){
+lst.push(_377[j]);
+}
+}
+if(dom.hasChildNodes()){
+lst.push(">");
+_372.push(""+dom.nodeName.toLowerCase()+">");
+var _378=dom.childNodes;
+for(i=_378.length-1;i>=0;i--){
+_372.push(_378[i]);
+}
+}else{
+lst.push("/>");
+}
+}else{
+if(dom.nodeType==3){
+lst.push(_373(dom.nodeValue));
+}
+}
+}
+}
+return lst;
+};
+MochiKit.DOM.setDisplayForElement=function(_379,_380){
+var m=MochiKit.Base;
+var _381=m.extend(null,arguments,1);
+MochiKit.Iter.forEach(m.filter(null,m.map(MochiKit.DOM.getElement,_381)),function(_380){
+_380.style.display=_379;
+});
+};
+MochiKit.DOM.scrapeText=function(node,_382){
+var rval=[];
+(function(node){
+var cn=node.childNodes;
+if(cn){
+for(var i=0;i0){
+var _387=m.filter;
+_386=function(node){
+return _387(_386.ignoreAttrFilter,node.attributes);
+};
+_386.ignoreAttr={};
+MochiKit.Iter.forEach(_385.attributes,function(a){
+_386.ignoreAttr[a.name]=a.value;
+});
+_386.ignoreAttrFilter=function(a){
+return (_386.ignoreAttr[a.name]!=a.value);
+};
+_386.compliant=false;
+_386.renames={"class":"className","checked":"defaultChecked","usemap":"useMap","for":"htmlFor"};
+}else{
+_386=function(node){
+return node.attributes;
+};
+_386.compliant=true;
+_386.renames={};
+}
+this.attributeArray=_386;
+var _388=this.createDOMFunc;
+this.UL=_388("ul");
+this.OL=_388("ol");
+this.LI=_388("li");
+this.TD=_388("td");
+this.TR=_388("tr");
+this.TBODY=_388("tbody");
+this.THEAD=_388("thead");
+this.TFOOT=_388("tfoot");
+this.TABLE=_388("table");
+this.TH=_388("th");
+this.INPUT=_388("input");
+this.SPAN=_388("span");
+this.A=_388("a");
+this.DIV=_388("div");
+this.IMG=_388("img");
+this.BUTTON=_388("button");
+this.TT=_388("tt");
+this.PRE=_388("pre");
+this.H1=_388("h1");
+this.H2=_388("h2");
+this.H3=_388("h3");
+this.BR=_388("br");
+this.HR=_388("hr");
+this.LABEL=_388("label");
+this.TEXTAREA=_388("textarea");
+this.FORM=_388("form");
+this.P=_388("p");
+this.SELECT=_388("select");
+this.OPTION=_388("option");
+this.OPTGROUP=_388("optgroup");
+this.LEGEND=_388("legend");
+this.FIELDSET=_388("fieldset");
+this.STRONG=_388("strong");
+this.CANVAS=_388("canvas");
+this.hideElement=m.partial(this.setDisplayForElement,"none");
+this.showElement=m.partial(this.setDisplayForElement,"block");
+this.removeElement=this.swapDOM;
+this.$=this.getElement;
+this.EXPORT_TAGS={":common":this.EXPORT,":all":m.concat(this.EXPORT,this.EXPORT_OK)};
+m.nameFunctions(this);
+};
+MochiKit.DOM.__new__(this);
+MochiKit.Base._exportSymbols(this,MochiKit.DOM);
+if(typeof (dojo)!="undefined"){
+dojo.provide("MochiKit.LoggingPane");
+dojo.require("MochiKit.Logging");
+dojo.require("MochiKit.Base");
+}
+if(typeof (JSAN)!="undefined"){
+JSAN.use("MochiKit.Logging",[]);
+JSAN.use("MochiKit.Base",[]);
+}
+try{
+if(typeof (MochiKit.Base)=="undefined"||typeof (MochiKit.Logging)=="undefined"){
+throw "";
+}
+}
+catch(e){
+throw "MochiKit.LoggingPane depends on MochiKit.Base and MochiKit.Logging!";
+}
+if(typeof (MochiKit.LoggingPane)=="undefined"){
+MochiKit.LoggingPane={};
+}
+MochiKit.LoggingPane.NAME="MochiKit.LoggingPane";
+MochiKit.LoggingPane.VERSION="1.2";
+MochiKit.LoggingPane.__repr__=function(){
+return "["+this.NAME+" "+this.VERSION+"]";
+};
+MochiKit.LoggingPane.toString=function(){
+return this.__repr__();
+};
+MochiKit.LoggingPane.createLoggingPane=function(_389){
+var m=MochiKit.LoggingPane;
+_389=!(!_389);
+if(m._loggingPane&&m._loggingPane.inline!=_389){
+m._loggingPane.closePane();
+m._loggingPane=null;
+}
+if(!m._loggingPane||m._loggingPane.closed){
+m._loggingPane=new m.LoggingPane(_389,MochiKit.Logging.logger);
+}
+return m._loggingPane;
+};
+MochiKit.LoggingPane.LoggingPane=function(_390,_391){
+if(typeof (_391)=="undefined"||_391==null){
+_391=MochiKit.Logging.logger;
+}
+this.logger=_391;
+var _392=MochiKit.Base.update;
+var _393=MochiKit.Base.updatetree;
+var bind=MochiKit.Base.bind;
+var _394=MochiKit.Base.clone;
+var win=window;
+if(typeof (MochiKit.DOM)!="undefined"){
+win=MochiKit.DOM.currentWindow();
+}
+if(!_390){
+var url=win.location.href.split("?")[0].replace(/[:\/.><&]/g,"_");
+var name="MochiKit_LoggingPane_"+url;
+var nwin=win.open("",name,"dependent,resizable,height=200");
+if(!nwin){
+alert("Not able to open debugging window due to pop-up blocking.");
+return undefined;
+}
+nwin.document.write(""+"[MochiKit.LoggingPane]"+"");
+nwin.document.close();
+nwin.document.title+=" "+win.document.title;
+win=nwin;
+}
+var doc=win.document;
+this.doc=doc;
+var _396=doc.getElementById("_debugPane");
+if(_396&&typeof (_396.loggingPane)!="undefined"){
+_396.loggingPane.logger=this.logger;
+_396.loggingPane.buildAndApplyFilter();
+return _396.loggingPane;
+}
+_396=doc.createElement("div");
+_396.id="_debugPane";
+_396.loggingPane=this;
+var _397=doc.createElement("input");
+var _398=doc.createElement("input");
+var _399=doc.createElement("button");
+var _400=doc.createElement("button");
+var _401=doc.createElement("button");
+var _402=doc.createElement("button");
+var _403=doc.createElement("div");
+var _404=doc.createElement("div");
+var _405="_debugPaneListener";
+this.colorTable=_394(this.colorTable);
+var _406=[];
+var _407=null;
+var _408=function(msg){
+var _409=msg.level;
+if(typeof (_409)=="number"){
+_409=MochiKit.Logging.LogLevel[_409];
+}
+return _409;
+};
+var _410=function(msg){
+return msg.info.join(" ");
+};
+var _411=bind(function(msg){
+var _412=_408(msg);
+var text=_410(msg);
+var c=this.colorTable[_412];
+var p=doc.createElement("span");
+p.className="MochiKit-LogMessage MochiKit-LogLevel-"+_412;
+p.style.cssText="margin: 0px; white-space: -moz-pre-wrap; white-space: -o-pre-wrap; white-space: pre-wrap; white-space: pre-line; word-wrap: break-word; wrap-option: emergency; color: "+c;
+p.appendChild(doc.createTextNode(_412+": "+text));
+_404.appendChild(p);
+_404.appendChild(doc.createElement("br"));
+if(_403.offsetHeight>_403.scrollHeight){
+_403.scrollTop=0;
+}else{
+_403.scrollTop=_403.scrollHeight;
+}
+},this);
+var _415=function(msg){
+_406[_406.length]=msg;
+_411(msg);
+};
+var _416=function(){
+var _417,infore;
+try{
+_417=new RegExp(_397.value);
+infore=new RegExp(_398.value);
+}
+catch(e){
+logDebug("Error in filter regex: "+e.message);
+return null;
+}
+return function(msg){
+return (_417.test(_408(msg))&&infore.test(_410(msg)));
+};
+};
+var _418=function(){
+while(_404.firstChild){
+_404.removeChild(_404.firstChild);
+}
+};
+var _419=function(){
+_406=[];
+_418();
+};
+var _420=bind(function(){
+if(this.closed){
+return;
+}
+this.closed=true;
+if(MochiKit.LoggingPane._loggingPane==this){
+MochiKit.LoggingPane._loggingPane=null;
+}
+this.logger.removeListener(_405);
+_396.loggingPane=null;
+if(_390){
+_396.parentNode.removeChild(_396);
+}else{
+this.win.close();
+}
+},this);
+var _421=function(){
+_418();
+for(var i=0;i<_406.length;i++){
+var msg=_406[i];
+if(_407==null||_407(msg)){
+_411(msg);
+}
+}
+};
+this.buildAndApplyFilter=function(){
+_407=_416();
+_421();
+this.logger.removeListener(_405);
+this.logger.addListener(_405,_407,_415);
+};
+var _422=bind(function(){
+_406=this.logger.getMessages();
+_421();
+},this);
+var _423=bind(function(_424){
+_424=_424||window.event;
+key=_424.which||_424.keyCode;
+if(key==13){
+this.buildAndApplyFilter();
+}
+},this);
+var _425="display: block; left: 0px; bottom: 0px; position: fixed; width: 100%; background-color: white; font: "+this.logFont;
+if(_390){
+_425+="; height: 10em; border-top: 2px solid black";
+}else{
+_425+="; height: 100%;";
+}
+_396.style.cssText=_425;
+doc.body.appendChild(_396);
+_425={"cssText":"width: 33%; display: inline; font: "+this.logFont};
+_393(_397,{"value":"FATAL|ERROR|WARNING|INFO|DEBUG","onkeypress":_423,"style":_425});
+_396.appendChild(_397);
+_393(_398,{"value":".*","onkeypress":_423,"style":_425});
+_396.appendChild(_398);
+_425="width: 8%; display:inline; font: "+this.logFont;
+_399.appendChild(doc.createTextNode("Filter"));
+_399.onclick=bind(this.buildAndApplyFilter,this);
+_399.style.cssText=_425;
+_396.appendChild(_399);
+_400.appendChild(doc.createTextNode("Load"));
+_400.onclick=_422;
+_400.style.cssText=_425;
+_396.appendChild(_400);
+_401.appendChild(doc.createTextNode("Clear"));
+_401.onclick=_419;
+_401.style.cssText=_425;
+_396.appendChild(_401);
+_402.appendChild(doc.createTextNode("Close"));
+_402.onclick=_420;
+_402.style.cssText=_425;
+_396.appendChild(_402);
+_403.style.cssText="overflow: auto; width: 100%";
+_404.style.cssText="width: 100%; height: "+(_390?"8em":"100%");
+_403.appendChild(_404);
+_396.appendChild(_403);
+this.buildAndApplyFilter();
+_422();
+if(_390){
+this.win=undefined;
+}else{
+this.win=win;
+}
+this.inline=_390;
+this.closePane=_420;
+this.closed=false;
+return this;
+};
+MochiKit.LoggingPane.LoggingPane.prototype={"logFont":"8pt Verdana,sans-serif","colorTable":{"ERROR":"red","FATAL":"darkred","WARNING":"blue","INFO":"black","DEBUG":"green"}};
+MochiKit.LoggingPane.EXPORT_OK=["LoggingPane"];
+MochiKit.LoggingPane.EXPORT=["createLoggingPane"];
+MochiKit.LoggingPane.__new__=function(){
+this.EXPORT_TAGS={":common":this.EXPORT,":all":MochiKit.Base.concat(this.EXPORT,this.EXPORT_OK)};
+MochiKit.Base.nameFunctions(this);
+MochiKit.LoggingPane._loggingPane=null;
+};
+MochiKit.LoggingPane.__new__();
+MochiKit.Base._exportSymbols(this,MochiKit.LoggingPane);
+if(typeof (dojo)!="undefined"){
+dojo.provide("MochiKit.Color");
+dojo.require("MochiKit.Base");
+}
+if(typeof (JSAN)!="undefined"){
+JSAN.use("MochiKit.Base",[]);
+}
+try{
+if(typeof (MochiKit.Base)=="undefined"){
+throw "";
+}
+}
+catch(e){
+throw "MochiKit.Color depends on MochiKit.Base";
+}
+if(typeof (MochiKit.Color)=="undefined"){
+MochiKit.Color={};
+}
+MochiKit.Color.NAME="MochiKit.Color";
+MochiKit.Color.VERSION="1.2";
+MochiKit.Color.__repr__=function(){
+return "["+this.NAME+" "+this.VERSION+"]";
+};
+MochiKit.Color.toString=function(){
+return this.__repr__();
+};
+MochiKit.Color.Color=function(red,_427,blue,_429){
+if(typeof (_429)=="undefined"||_429==null){
+_429=1;
+}
+this.rgb={r:red,g:_427,b:blue,a:_429};
+};
+MochiKit.Color.Color.prototype={__class__:MochiKit.Color.Color,colorWithAlpha:function(_430){
+var rgb=this.rgb;
+var m=MochiKit.Color;
+return m.Color.fromRGB(rgb.r,rgb.g,rgb.b,_430);
+},colorWithHue:function(hue){
+var hsl=this.asHSL();
+hsl.h=hue;
+var m=MochiKit.Color;
+return m.Color.fromHSL(hsl);
+},colorWithSaturation:function(_434){
+var hsl=this.asHSL();
+hsl.s=_434;
+var m=MochiKit.Color;
+return m.Color.fromHSL(hsl);
+},colorWithLightness:function(_435){
+var hsl=this.asHSL();
+hsl.l=_435;
+var m=MochiKit.Color;
+return m.Color.fromHSL(hsl);
+},darkerColorWithLevel:function(_436){
+var hsl=this.asHSL();
+hsl.l=Math.max(hsl.l-_436,0);
+var m=MochiKit.Color;
+return m.Color.fromHSL(hsl);
+},lighterColorWithLevel:function(_437){
+var hsl=this.asHSL();
+Math.min(hsl.l+_437,1);
+var m=MochiKit.Color;
+return m.Color.fromHSL(hsl);
+},blendedColor:function(_438,_439){
+if(typeof (_439)=="undefined"||_439==null){
+_439=0.5;
+}
+var sf=1-_439;
+var s=this.rgb;
+var d=_438.rgb;
+var df=_439;
+return MochiKit.Color.Color.fromRGB((s.r*sf)+(d.r*df),(s.g*sf)+(d.g*df),(s.b*sf)+(d.b*df),(s.a*sf)+(d.a*df));
+},compareRGB:function(_442){
+var a=this.asRGB();
+var b=_442.asRGB();
+return MochiKit.Base.compare([a.r,a.g,a.b,a.a],[b.r,b.g,b.b,b.a]);
+},isLight:function(){
+return this.asHSL().b>0.5;
+},isDark:function(){
+return (!this.isLight());
+},toHSLString:function(){
+var c=this.asHSL();
+var ccc=MochiKit.Color.clampColorComponent;
+var rval=this._hslString;
+if(!rval){
+var mid=(ccc(c.h,360).toFixed(0)+","+ccc(c.s,100).toPrecision(4)+"%"+","+ccc(c.l,100).toPrecision(4)+"%");
+var a=c.a;
+if(a>=1){
+a=1;
+rval="hsl("+mid+")";
+}else{
+if(a<=0){
+a=0;
+}
+rval="hsla("+mid+","+a+")";
+}
+this._hslString=rval;
+}
+return rval;
+},toRGBString:function(){
+var c=this.rgb;
+var ccc=MochiKit.Color.clampColorComponent;
+var rval=this._rgbString;
+if(!rval){
+var mid=(ccc(c.r,255).toFixed(0)+","+ccc(c.g,255).toFixed(0)+","+ccc(c.b,255).toFixed(0));
+if(c.a!=1){
+rval="rgba("+mid+","+c.a+")";
+}else{
+rval="rgb("+mid+")";
+}
+this._rgbString=rval;
+}
+return rval;
+},asRGB:function(){
+return MochiKit.Base.clone(this.rgb);
+},toHexString:function(){
+var m=MochiKit.Color;
+var c=this.rgb;
+var ccc=MochiKit.Color.clampColorComponent;
+var rval=this._hexString;
+if(!rval){
+rval=("#"+m.toColorPart(ccc(c.r,255))+m.toColorPart(ccc(c.g,255))+m.toColorPart(ccc(c.b,255)));
+this._hexString=rval;
+}
+return rval;
+},asHSV:function(){
+var hsv=this.hsv;
+var c=this.rgb;
+if(typeof (hsv)=="undefined"||hsv==null){
+hsv=MochiKit.Color.rgbToHSV(this.rgb);
+this.hsv=hsv;
+}
+return MochiKit.Base.clone(hsv);
+},asHSL:function(){
+var hsl=this.hsl;
+var c=this.rgb;
+if(typeof (hsl)=="undefined"||hsl==null){
+hsl=MochiKit.Color.rgbToHSL(this.rgb);
+this.hsl=hsl;
+}
+return MochiKit.Base.clone(hsl);
+},toString:function(){
+return this.toRGBString();
+},repr:function(){
+var c=this.rgb;
+var col=[c.r,c.g,c.b,c.a];
+return this.__class__.NAME+"("+col.join(", ")+")";
+}};
+MochiKit.Base.update(MochiKit.Color.Color,{fromRGB:function(red,_447,blue,_448){
+var _449=MochiKit.Color.Color;
+if(arguments.length==1){
+var rgb=red;
+red=rgb.r;
+_447=rgb.g;
+blue=rgb.b;
+if(typeof (rgb.a)=="undefined"){
+_448=undefined;
+}else{
+_448=rgb.a;
+}
+}
+return new _449(red,_447,blue,_448);
+},fromHSL:function(hue,_450,_451,_452){
+var m=MochiKit.Color;
+return m.Color.fromRGB(m.hslToRGB.apply(m,arguments));
+},fromHSV:function(hue,_453,_454,_455){
+var m=MochiKit.Color;
+return m.Color.fromRGB(m.hsvToRGB.apply(m,arguments));
+},fromName:function(name){
+var _456=MochiKit.Color.Color;
+var _457=_456._namedColors[name.toLowerCase()];
+if(typeof (_457)=="string"){
+return _456.fromHexString(_457);
+}else{
+if(name=="transparent"){
+return _456.transparentColor();
+}
+}
+return null;
+},fromString:function(_458){
+var self=MochiKit.Color.Color;
+var _459=_458.substr(0,3);
+if(_459=="rgb"){
+return self.fromRGBString(_458);
+}else{
+if(_459=="hsl"){
+return self.fromHSLString(_458);
+}else{
+if(_458.charAt(0)=="#"){
+return self.fromHexString(_458);
+}
+}
+}
+return self.fromName(_458);
+},fromHexString:function(_460){
+if(_460.charAt(0)=="#"){
+_460=_460.substring(1);
+}
+var _461=[];
+var i,hex;
+if(_460.length==3){
+for(i=0;i<3;i++){
+hex=_460.substr(i,1);
+_461.push(parseInt(hex+hex,16)/255);
+}
+}else{
+for(i=0;i<6;i+=2){
+hex=_460.substr(i,2);
+_461.push(parseInt(hex,16)/255);
+}
+}
+var _462=MochiKit.Color.Color;
+return _462.fromRGB.apply(_462,_461);
+},_fromColorString:function(pre,_464,_465,_466){
+if(_466.indexOf(pre)==0){
+_466=_466.substring(_466.indexOf("(",3)+1,_466.length-1);
+}
+var _467=_466.split(/\s*,\s*/);
+var _468=[];
+for(var i=0;i<_467.length;i++){
+var c=_467[i];
+var val;
+var _469=c.substring(c.length-3);
+if(c.charAt(c.length-1)=="%"){
+val=0.01*parseFloat(c.substring(0,c.length-1));
+}else{
+if(_469=="deg"){
+val=parseFloat(c)/360;
+}else{
+if(_469=="rad"){
+val=parseFloat(c)/(Math.PI*2);
+}else{
+val=_465[i]*parseFloat(c);
+}
+}
+}
+_468.push(val);
+}
+return this[_464].apply(this,_468);
+},fromComputedStyle:function(elem,_470,_471){
+var d=MochiKit.DOM;
+var cls=MochiKit.Color.Color;
+for(elem=d.getElement(elem);elem;elem=elem.parentNode){
+var _472=d.computedStyle.apply(d,arguments);
+if(!_472){
+continue;
+}
+var _473=cls.fromString(_472);
+if(!_473){
+break;
+}
+if(_473.asRGB().a>0){
+return _473;
+}
+}
+return null;
+},fromBackground:function(elem){
+var cls=MochiKit.Color.Color;
+return cls.fromComputedStyle(elem,"backgroundColor","background-color")||cls.whiteColor();
+},fromText:function(elem){
+var cls=MochiKit.Color.Color;
+return cls.fromComputedStyle(elem,"color","color")||cls.blackColor();
+},namedColors:function(){
+return MochiKit.Base.clone(MochiKit.Color.Color._namedColors);
+}});
+MochiKit.Base.update(MochiKit.Color,{clampColorComponent:function(v,_474){
+v*=_474;
+if(v<0){
+return 0;
+}else{
+if(v>_474){
+return _474;
+}else{
+return v;
+}
+}
+},_hslValue:function(n1,n2,hue){
+if(hue>6){
+hue-=6;
+}else{
+if(hue<0){
+hue+=6;
+}
+}
+var val;
+if(hue<1){
+val=n1+(n2-n1)*hue;
+}else{
+if(hue<3){
+val=n2;
+}else{
+if(hue<4){
+val=n1+(n2-n1)*(4-hue);
+}else{
+val=n1;
+}
+}
+}
+return val;
+},hsvToRGB:function(hue,_477,_478,_479){
+if(arguments.length==1){
+var hsv=hue;
+hue=hsv.h;
+_477=hsv.s;
+_478=hsv.v;
+_479=hsv.a;
+}
+var red;
+var _480;
+var blue;
+if(_477==0){
+red=0;
+_480=0;
+blue=0;
+}else{
+var i=Math.floor(hue*6);
+var f=(hue*6)-i;
+var p=_478*(1-_477);
+var q=_478*(1-(_477*f));
+var t=_478*(1-(_477*(1-f)));
+switch(i){
+case 1:
+red=q;
+_480=_478;
+blue=p;
+break;
+case 2:
+red=p;
+_480=_478;
+blue=t;
+break;
+case 3:
+red=p;
+_480=q;
+blue=_478;
+break;
+case 4:
+red=t;
+_480=p;
+blue=_478;
+break;
+case 5:
+red=_478;
+_480=p;
+blue=q;
+break;
+case 6:
+case 0:
+red=_478;
+_480=t;
+blue=p;
+break;
+}
+}
+return {r:red,g:_480,b:blue,a:_479};
+},hslToRGB:function(hue,_482,_483,_484){
+if(arguments.length==1){
+var hsl=hue;
+hue=hsl.h;
+_482=hsl.s;
+_483=hsl.l;
+_484=hsl.a;
+}
+var red;
+var _485;
+var blue;
+if(_482==0){
+red=_483;
+_485=_483;
+blue=_483;
+}else{
+var m2;
+if(_483<=0.5){
+m2=_483*(1+_482);
+}else{
+m2=_483+_482-(_483*_482);
+}
+var m1=(2*_483)-m2;
+var f=MochiKit.Color._hslValue;
+var h6=hue*6;
+red=f(m1,m2,h6+2);
+_485=f(m1,m2,h6);
+blue=f(m1,m2,h6-2);
+}
+return {r:red,g:_485,b:blue,a:_484};
+},rgbToHSV:function(red,_489,blue,_490){
+if(arguments.length==1){
+var rgb=red;
+red=rgb.r;
+_489=rgb.g;
+blue=rgb.b;
+_490=rgb.a;
+}
+var max=Math.max(Math.max(red,_489),blue);
+var min=Math.min(Math.min(red,_489),blue);
+var hue;
+var _493;
+var _494=max;
+if(min==max){
+hue=0;
+_493=0;
+}else{
+var _495=(max-min);
+_493=_495/max;
+if(red==max){
+hue=(_489-blue)/_495;
+}else{
+if(_489==max){
+hue=2+((blue-red)/_495);
+}else{
+hue=4+((red-_489)/_495);
+}
+}
+hue/=6;
+if(hue<0){
+hue+=1;
+}
+if(hue>1){
+hue-=1;
+}
+}
+return {h:hue,s:_493,v:_494,a:_490};
+},rgbToHSL:function(red,_496,blue,_497){
+if(arguments.length==1){
+var rgb=red;
+red=rgb.r;
+_496=rgb.g;
+blue=rgb.b;
+_497=rgb.a;
+}
+var max=Math.max(red,Math.max(_496,blue));
+var min=Math.min(red,Math.min(_496,blue));
+var hue;
+var _498;
+var _499=(max+min)/2;
+var _500=max-min;
+if(_500==0){
+hue=0;
+_498=0;
+}else{
+if(_499<=0.5){
+_498=_500/(max+min);
+}else{
+_498=_500/(2-max-min);
+}
+if(red==max){
+hue=(_496-blue)/_500;
+}else{
+if(_496==max){
+hue=2+((blue-red)/_500);
+}else{
+hue=4+((red-_496)/_500);
+}
+}
+hue/=6;
+if(hue<0){
+hue+=1;
+}
+if(hue>1){
+hue-=1;
+}
+}
+return {h:hue,s:_498,l:_499,a:_497};
+},toColorPart:function(num){
+var _501=Math.round(num).toString(16);
+if(num<16){
+return "0"+_501;
+}
+return _501;
+},__new__:function(){
+var m=MochiKit.Base;
+this.Color.fromRGBString=m.bind(this.Color._fromColorString,this.Color,"rgb","fromRGB",[1/255,1/255,1/255,1]);
+this.Color.fromHSLString=m.bind(this.Color._fromColorString,this.Color,"hsl","fromHSL",[1/360,0.01,0.01,1]);
+var _502=1/3;
+var _503={black:[0,0,0],blue:[0,0,1],brown:[0.6,0.4,0.2],cyan:[0,1,1],darkGray:[_502,_502,_502],gray:[0.5,0.5,0.5],green:[0,1,0],lightGray:[2*_502,2*_502,2*_502],magenta:[1,0,1],orange:[1,0.5,0],purple:[0.5,0,0.5],red:[1,0,0],transparent:[0,0,0,0],white:[1,1,1],yellow:[1,1,0]};
+var _504=function(name,r,g,b,a){
+var rval=this.fromRGB(r,g,b,a);
+this[name]=function(){
+return rval;
+};
+return rval;
+};
+for(var k in _503){
+var name=k+"Color";
+var _507=m.concat([_504,this.Color,name],_503[k]);
+this.Color[name]=m.bind.apply(null,_507);
+}
+var _508=function(){
+for(var i=0;i"+el.innerHTML+"";
+},_roundTopCorners:function(el,_524,_525){
+var _526=this._createCorner(_525);
+for(var i=0;i=0;i--){
+_529.appendChild(this._createCornerSlice(_527,_528,i,"bottom"));
+}
+el.style.paddingBottom=0;
+el.appendChild(_529);
+},_createCorner:function(_530){
+var dom=MochiKit.DOM;
+return dom.DIV({style:{backgroundColor:_530.toString()}});
+},_createCornerSlice:function(_531,_532,n,_533){
+var _534=MochiKit.DOM.SPAN();
+var _535=_534.style;
+_535.backgroundColor=_531.toString();
+_535.display="block";
+_535.height="1px";
+_535.overflow="hidden";
+_535.fontSize="1px";
+var _536=this._borderColor(_531,_532);
+if(this.options.border&&n==0){
+_535.borderTopStyle="solid";
+_535.borderTopWidth="1px";
+_535.borderLeftWidth="0px";
+_535.borderRightWidth="0px";
+_535.borderBottomWidth="0px";
+_535.height="0px";
+_535.borderColor=_536.toString();
+}else{
+if(_536){
+_535.borderColor=_536.toString();
+_535.borderStyle="solid";
+_535.borderWidth="0px 1px";
+}
+}
+if(!this.options.compact&&(n==(this.options.numSlices-1))){
+_535.height="2px";
+}
+this._setMargin(_534,n,_533);
+this._setBorder(_534,n,_533);
+return _534;
+},_setOptions:function(_537){
+this.options={corners:"all",color:"fromElement",bgColor:"fromParent",blend:true,border:false,compact:false,__unstable__wrapElement:false};
+MochiKit.Base.update(this.options,_537);
+this.options.numSlices=(this.options.compact?2:4);
+},_whichSideTop:function(){
+var _538=this.options.corners;
+if(this._hasString(_538,"all","top")){
+return "";
+}
+var _539=(_538.indexOf("tl")!=-1);
+var _540=(_538.indexOf("tr")!=-1);
+if(_539&&_540){
+return "";
+}
+if(_539){
+return "left";
+}
+if(_540){
+return "right";
+}
+return "";
+},_whichSideBottom:function(){
+var _541=this.options.corners;
+if(this._hasString(_541,"all","bottom")){
+return "";
+}
+var _542=(_541.indexOf("bl")!=-1);
+var _543=(_541.indexOf("br")!=-1);
+if(_542&&_543){
+return "";
+}
+if(_542){
+return "left";
+}
+if(_543){
+return "right";
+}
+return "";
+},_borderColor:function(_544,_545){
+if(_544=="transparent"){
+return _545;
+}else{
+if(this.options.border){
+return this.options.border;
+}else{
+if(this.options.blend){
+return _545.blendedColor(_544);
+}
+}
+}
+return "";
+},_setMargin:function(el,n,_546){
+var _547=this._marginSize(n)+"px";
+var _548=(_546=="top"?this._whichSideTop():this._whichSideBottom());
+var _549=el.style;
+if(_548=="left"){
+_549.marginLeft=_547;
+_549.marginRight="0px";
+}else{
+if(_548=="right"){
+_549.marginRight=_547;
+_549.marginLeft="0px";
+}else{
+_549.marginLeft=_547;
+_549.marginRight=_547;
+}
+}
+},_setBorder:function(el,n,_550){
+var _551=this._borderSize(n)+"px";
+var _552=(_550=="top"?this._whichSideTop():this._whichSideBottom());
+var _553=el.style;
+if(_552=="left"){
+_553.borderLeftWidth=_551;
+_553.borderRightWidth="0px";
+}else{
+if(_552=="right"){
+_553.borderRightWidth=_551;
+_553.borderLeftWidth="0px";
+}else{
+_553.borderLeftWidth=_551;
+_553.borderRightWidth=_551;
+}
+}
+},_marginSize:function(n){
+if(this.isTransparent){
+return 0;
+}
+var o=this.options;
+if(o.compact&&o.blend){
+var _554=[1,0];
+return _554[n];
+}else{
+if(o.compact){
+var _555=[2,1];
+return _555[n];
+}else{
+if(o.blend){
+var _556=[3,2,1,0];
+return _556[n];
+}else{
+var _557=[5,3,2,1];
+return _557[n];
+}
+}
+}
+},_borderSize:function(n){
+var o=this.options;
+var _558;
+if(o.compact&&(o.blend||this.isTransparent)){
+return 1;
+}else{
+if(o.compact){
+_558=[1,0];
+}else{
+if(o.blend){
+_558=[2,1,1,1];
+}else{
+if(o.border){
+_558=[0,2,0,0];
+}else{
+if(this.isTransparent){
+_558=[5,3,2,1];
+}else{
+return 0;
+}
+}
+}
+}
+}
+return _558[n];
+},_hasString:function(str){
+for(var i=1;i"+"<"+"/script"+">";
+document.write(tag);
+}
+}
+})();
+}
+
+
============================================================
--- MochiKit/__package__.js 6f05da1941ddb410b89f26ea4ea4e72c235ceaed
+++ MochiKit/__package__.js 6f05da1941ddb410b89f26ea4ea4e72c235ceaed
@@ -0,0 +1,2 @@
+dojo.hostenv.conditionalLoadModule({"common": ["MochiKit.MochiKit"]});
+dojo.hostenv.moduleLoaded("MochiKit.*");
============================================================
--- html.py e9fa4f4925ed2d6898b2346b003c51dcf7e24bf1
+++ html.py 9238525ad03e4a09cf7617bb8d4385e2ff187dd5
@@ -75,7 +75,7 @@
rv = """