
/* Merged Plone Javascript file
 * This file is dynamically assembled from separate parts.
 * Some of these parts have 3rd party licenses or copyright information attached
 * Such information is valid for that section,
 * not for the entire composite file
 * originating files are separated by - filename.js -
 */

/* - input-label.js - */
// http://nuamps.at.northwestern.edu/screenroom/portal_javascripts/input-label.js?original=1
var ploneInputLabel={focus: function(e){var t=jq(e.target);if(t.hasClass('inputLabelActive')&&t.val()==t.attr('title'))
t.val('').removeClass('inputLabelActive')},blur: function(e){var t=jq(e.target);if(!t.val())
t.addClass('inputLabelActive').val(t.attr('title'))},submit: function(e){jq('input[title].inputLabelActive').filter(function(){return jq(this).val()==this.title}).val('').removeClass('inputLabelActive')}};jq(function(){jq('form:has(input[title].inputLabel)').submit(ploneInputLabel.submit);jq('input[title].inputLabel').each(function(){jq(this).focus(ploneInputLabel.focus).blur(ploneInputLabel.blur);if(!jq(this).val())
jq(this).val(this.title).removeClass('inputLabel').addClass('inputLabelActive')})});

/* - MochikitBaseIterDOM.js - */
// http://nuamps.at.northwestern.edu/screenroom/portal_javascripts/MochikitBaseIterDOM.js?original=1
if(typeof(dojo)!="undefined"){dojo.provide("MochiKit.Base")}
if(typeof(MochiKit)=="undefined"){MochiKit={}}
if(typeof(MochiKit.Base)=="undefined"){MochiKit.Base={}}
if(typeof(MochiKit.__export__)=="undefined"){MochiKit.__export__=(MochiKit.__compat__||(typeof(JSAN)=="undefined"&&typeof(dojo)=="undefined"))}
MochiKit.Base.VERSION="1.4";MochiKit.Base.NAME="MochiKit.Base";MochiKit.Base.update=function(_1,_2){if(_1===null||_1===undefined){_1={}}
for(var i=1;i<arguments.length;i++){var o=arguments[i];if(typeof(o)!="undefined"&&o!==null){for(var k in o){_1[k]=o[k]}}}
return _1};MochiKit.Base.update(MochiKit.Base,{__repr__:function(){return "["+this.NAME+" "+this.VERSION+"]"},toString:function(){return this.__repr__()},camelize:function(_6){var _7=_6.split("-");var cc=_7[0];for(var i=1;i<_7.length;i++){cc+=_7[i].charAt(0).toUpperCase()+_7[i].substring(1)}
return cc},counter:function(n){if(arguments.length===0){n=1}
return function(){return n++}},clone:function(_b){var me=arguments.callee;if(arguments.length==1){me.prototype=_b;return new me()}},_deps:function(_d,_e){if(!(_d in MochiKit)){MochiKit[_d]={}}
if(typeof(dojo)!="undefined"){dojo.provide("MochiKit."+_d)}
for(var i=0;i<_e.length;i++){if(typeof(dojo)!="undefined"){dojo.require("MochiKit."+_e[i])}
if(typeof(JSAN)!="undefined"){JSAN.use("MochiKit."+_e[i],[])}
if(!(_e[i] in MochiKit)){throw "MochiKit."+_d+" depends on MochiKit."+_e[i]+"!"}}},_flattenArray:function(res,lst){for(var i=0;i<lst.length;i++){var o=lst[i];if(o instanceof Array){arguments.callee(res,o)}else{res.push(o)}}
return res},flattenArray:function(lst){return MochiKit.Base._flattenArray([],lst)},flattenArguments:function(lst){var res=[];var m=MochiKit.Base;var _18=m.extend(null,arguments);while(_18.length){var o=_18.shift();if(o&&typeof(o)=="object"&&typeof(o.length)=="number"){for(var i=o.length-1;i>=0;i--){_18.unshift(o[i])}}else{res.push(o)}}
return res},extend:function(_1b,obj,_1d){if(!_1d){_1d=0}
if(obj){var l=obj.length;if(typeof(l)!="number"){if(typeof(MochiKit.Iter)!="undefined"){obj=MochiKit.Iter.list(obj);l=obj.length}else{throw new TypeError("Argument not an array-like and MochiKit.Iter not present")}}
if(!_1b){_1b=[]}
for(var i=_1d;i<l;i++){_1b.push(obj[i])}}
return _1b},updatetree:function(_20,obj){if(_20===null||_20===undefined){_20={}}
for(var i=1;i<arguments.length;i++){var o=arguments[i];if(typeof(o)!="undefined"&&o!==null){for(var k in o){var v=o[k];if(typeof(_20[k])=="object"&&typeof(v)=="object"){arguments.callee(_20[k],v)}else{_20[k]=v}}}}
return _20},setdefault:function(_26,obj){if(_26===null||_26===undefined){_26={}}
for(var i=1;i<arguments.length;i++){var o=arguments[i];for(var k in o){if(!(k in _26)){_26[k]=o[k]}}}
return _26},keys:function(obj){var _2c=[];for(var _2d in obj){_2c.push(_2d)}
return _2c},values:function(obj){var _2f=[];for(var _30 in obj){_2f.push(obj[_30])}
return _2f},items:function(obj){var _32=[];var e;for(var _34 in obj){var v;try{v=obj[_34]}
catch(e){continue}
_32.push([_34,v])}
return _32},_newNamedError:function(_36,_37,_38){_38.prototype=new MochiKit.Base.NamedError(_36.NAME+"."+_37);_36[_37]=_38},operator:{truth:function(a){return!!a},lognot:function(a){return!a},identity:function(a){return a},not:function(a){return ~a},neg:function(a){return-a},add:function(a,b){return a+b},sub:function(a,b){return a-b},div:function(a,b){return a/b},mod:function(a,b){return a%b},mul:function(a,b){return a*b},and:function(a,b){return a&b},or:function(a,b){return a|b},xor:function(a,b){return a^b},lshift:function(a,b){return a<<b},rshift:function(a,b){return a>>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 a<b},le:function(a,b){return a<=b},seq:function(a,b){return a===b},sne:function(a,b){return a!==b},ceq:function(a,b){return MochiKit.Base.compare(a,b)===0},cne:function(a,b){return MochiKit.Base.compare(a,b)!==0},cgt:function(a,b){return MochiKit.Base.compare(a,b)==1},cge:function(a,b){return MochiKit.Base.compare(a,b)!=-1},clt:function(a,b){return MochiKit.Base.compare(a,b)==-1},cle:function(a,b){return MochiKit.Base.compare(a,b)!=1},logand:function(a,b){return a&&b},logor:function(a,b){return a||b},contains:function(a,b){return b in a}},forwardCall:function(_76){return function(){return this[_76].apply(this,arguments)}},itemgetter:function(_77){return function(arg){return arg[_77]}},typeMatcher:function(){var _79={};for(var i=0;i<arguments.length;i++){var typ=arguments[i];_79[typ]=typ}
return function(){for(var i=0;i<arguments.length;i++){if(!(typeof(arguments[i]) in _79)){return false}}
return true}},isNull:function(){for(var i=0;i<arguments.length;i++){if(arguments[i]!==null){return false}}
return true},isUndefinedOrNull:function(){for(var i=0;i<arguments.length;i++){var o=arguments[i];if(!(typeof(o)=="undefined"||o===null)){return false}}
return true},isEmpty:function(obj){return!MochiKit.Base.isNotEmpty.apply(this,arguments)},isNotEmpty:function(obj){for(var i=0;i<arguments.length;i++){var o=arguments[i];if(!(o&&o.length)){return false}}
return true},isArrayLike:function(){for(var i=0;i<arguments.length;i++){var o=arguments[i];var typ=typeof(o);if((typ!="object"&&!(typ=="function"&&typeof(o.item)=="function"))||o===null||typeof(o.length)!="number"||o.nodeType===3||o.nodeType===4){return false}}
return true},isDateLike:function(){for(var i=0;i<arguments.length;i++){var o=arguments[i];if(typeof(o)!="object"||o===null||typeof(o.getTime)!="function"){return false}}
return true},xmap:function(fn){if(fn===null){return MochiKit.Base.extend(null,arguments,1)}
var _8a=[];for(var i=1;i<arguments.length;i++){_8a.push(fn(arguments[i]))}
return _8a},map:function(fn,lst){var m=MochiKit.Base;var itr=MochiKit.Iter;var _90=m.isArrayLike;if(arguments.length<=2){if(!_90(lst)){if(itr){lst=itr.list(lst);if(fn===null){return lst}}else{throw new TypeError("Argument not an array-like and MochiKit.Iter not present")}}
if(fn===null){return m.extend(null,lst)}
var _91=[];for(var i=0;i<lst.length;i++){_91.push(fn(lst[i]))}
return _91}else{if(fn===null){fn=Array}
var _93=null;for(i=1;i<arguments.length;i++){if(!_90(arguments[i])){if(itr){return itr.list(itr.imap.apply(null,arguments))}else{throw new TypeError("Argument not an array-like and MochiKit.Iter not present")}}
var l=arguments[i].length;if(_93===null||_93>l){_93=l}}
_91=[];for(i=0;i<_93;i++){var _95=[];for(var j=1;j<arguments.length;j++){_95.push(arguments[j][i])}
_91.push(fn.apply(this,_95))}
return _91}},xfilter:function(fn){var _98=[];if(fn===null){fn=MochiKit.Base.operator.truth}
for(var i=1;i<arguments.length;i++){var o=arguments[i];if(fn(o)){_98.push(o)}}
return _98},filter:function(fn,lst,_9d){var _9e=[];var m=MochiKit.Base;if(!m.isArrayLike(lst)){if(MochiKit.Iter){lst=MochiKit.Iter.list(lst)}else{throw new TypeError("Argument not an array-like and MochiKit.Iter not present")}}
if(fn===null){fn=m.operator.truth}
if(typeof(Array.prototype.filter)=="function"){return Array.prototype.filter.call(lst,fn,_9d)}else{if(typeof(_9d)=="undefined"||_9d===null){for(var i=0;i<lst.length;i++){var o=lst[i];if(fn(o)){_9e.push(o)}}}else{for(i=0;i<lst.length;i++){o=lst[i];if(fn.call(_9d,o)){_9e.push(o)}}}}
return _9e},_wrapDumbFunction:function(_a2){return function(){switch(arguments.length){case 0:return _a2();case 1:return _a2(arguments[0]);case 2:return _a2(arguments[0],arguments[1]);case 3:return _a2(arguments[0],arguments[1],arguments[2])}
var _a3=[];for(var i=0;i<arguments.length;i++){_a3.push("arguments["+i+"]")}
return eval("(func("+_a3.join(",")+"))")}},methodcaller:function(_a5){var _a6=MochiKit.Base.extend(null,arguments,1);if(typeof(_a5)=="function"){return function(obj){return _a5.apply(obj,_a6)}}else{return function(obj){return obj[_a5].apply(obj,_a6)}}},method:function(_a9,_aa){var m=MochiKit.Base;return m.bind.apply(this,m.extend([_aa,_a9],arguments,2))},compose:function(f1,f2){var _ae=[];var m=MochiKit.Base;if(arguments.length===0){throw new TypeError("compose() requires at least one argument")}
for(var i=0;i<arguments.length;i++){var fn=arguments[i];if(typeof(fn)!="function"){throw new TypeError(m.repr(fn)+" is not a function")}
_ae.push(fn)}
return function(){var _b2=arguments;for(var i=_ae.length-1;i>=0;i--){_b2=[_ae[i].apply(this,_b2)]}
return _b2[0]}},bind:function(_b4,_b5){if(typeof(_b4)=="string"){_b4=_b5[_b4]}
var _b6=_b4.im_func;var _b7=_b4.im_preargs;var _b8=_b4.im_self;var m=MochiKit.Base;if(typeof(_b4)=="function"&&typeof(_b4.apply)=="undefined"){_b4=m._wrapDumbFunction(_b4)}
if(typeof(_b6)!="function"){_b6=_b4}
if(typeof(_b5)!="undefined"){_b8=_b5}
if(typeof(_b7)=="undefined"){_b7=[]}else{_b7=_b7.slice()}
m.extend(_b7,arguments,2);var _ba=function(){var _bb=arguments;var me=arguments.callee;if(me.im_preargs.length>0){_bb=m.concat(me.im_preargs,_bb)}
var _bd=me.im_self;if(!_bd){_bd=this}
return me.im_func.apply(_bd,_bb)};_ba.im_self=_b8;_ba.im_func=_b6;_ba.im_preargs=_b7;return _ba},bindMethods:function(_be){var _bf=MochiKit.Base.bind;for(var k in _be){var _c1=_be[k];if(typeof(_c1)=="function"){_be[k]=_bf(_c1,_be)}}},registerComparator:function(_c2,_c3,_c4,_c5){MochiKit.Base.comparatorRegistry.register(_c2,_c3,_c4,_c5)},_primitives:{"boolean":true,"string":true,"number":true},compare:function(a,b){if(a==b){return 0}
var _c8=(typeof(a)=="undefined"||a===null);var _c9=(typeof(b)=="undefined"||b===null);if(_c8&&_c9){return 0}else{if(_c8){return-1}else{if(_c9){return 1}}}
var m=MochiKit.Base;var _cb=m._primitives;if(!(typeof(a) in _cb&&typeof(b) in _cb)){try{return m.comparatorRegistry.match(a,b)}
catch(e){if(e!=m.NotFound){throw e}}}
if(a<b){return-1}else{if(a>b){return 1}}
var _cc=m.repr;throw new TypeError(_cc(a)+" and "+_cc(b)+" can not be compared")},compareDateLike:function(a,b){return MochiKit.Base.compare(a.getTime(),b.getTime())},compareArrayLike:function(a,b){var _d1=MochiKit.Base.compare;var _d2=a.length;var _d3=0;if(_d2>b.length){_d3=1;_d2=b.length}else{if(_d2<b.length){_d3=-1}}
for(var i=0;i<_d2;i++){var cmp=_d1(a[i],b[i]);if(cmp){return cmp}}
return _d3},registerRepr:function(_d6,_d7,_d8,_d9){MochiKit.Base.reprRegistry.register(_d6,_d7,_d8,_d9)},repr:function(o){if(typeof(o)=="undefined"){return "undefined"}else{if(o===null){return "null"}}
try{if(typeof(o.__repr__)=="function"){return o.__repr__()}else{if(typeof(o.repr)=="function"&&o.repr!=arguments.callee){return o.repr()}}
return MochiKit.Base.reprRegistry.match(o)}
catch(e){if(typeof(o.NAME)=="string"&&(o.toString==Function.prototype.toString||o.toString==Object.prototype.toString)){return o.NAME}}
try{var _db=(o+"")}
catch(e){return "["+typeof(o)+"]"}
if(typeof(o)=="function"){_db=_db.replace(/^\s+/,"").replace(/\s+/g," ");var idx=_db.indexOf("{");if(idx!=-1){_db=_db.substr(0,idx)+"{...}"}}
return _db},reprArrayLike:function(o){var m=MochiKit.Base;return "["+m.map(m.repr,o).join(", ")+"]"},reprString:function(o){return("\""+o.replace(/(["\\])/g,"\\$1")+"\"").replace(/[\f]/g,"\\f").replace(/[\b]/g,"\\b").replace(/[\n]/g,"\\n").replace(/[\t]/g,"\\t").replace(/[\r]/g,"\\r")},reprNumber:function(o){return o+""},registerJSON:function(_e1,_e2,_e3,_e4){MochiKit.Base.jsonRegistry.register(_e1,_e2,_e3,_e4)},evalJSON:function(){return eval("("+MochiKit.Base._filterJSON(arguments[0])+")")},_filterJSON:function(s){var m=s.match(/^\s*\/\*(.*)\*\/\s*$/);if(m){return m[1]}
return s},serializeJSON:function(o){var _e8=typeof(o);if(_e8=="number"||_e8=="boolean"){return o+""}else{if(o===null){return "null"}}
var m=MochiKit.Base;var _ea=m.reprString;if(_e8=="string"){return _ea(o)}
var me=arguments.callee;var _ec;if(typeof(o.__json__)=="function"){_ec=o.__json__();if(o!==_ec){return me(_ec)}}
if(typeof(o.json)=="function"){_ec=o.json();if(o!==_ec){return me(_ec)}}
if(_e8!="function"&&typeof(o.length)=="number"){var res=[];for(var i=0;i<o.length;i++){var val=me(o[i]);if(typeof(val)!="string"){val="undefined"}
res.push(val)}
return "["+res.join(", ")+"]"}
try{_ec=m.jsonRegistry.match(o);if(o!==_ec){return me(_ec)}}
catch(e){if(e!=m.NotFound){throw e}}
if(_e8=="undefined"){throw new TypeError("undefined can not be serialized as JSON")}
if(_e8=="function"){return null}
res=[];for(var k in o){var _f1;if(typeof(k)=="number"){_f1="\""+k+"\""}else{if(typeof(k)=="string"){_f1=_ea(k)}else{continue}}
val=me(o[k]);if(typeof(val)!="string"){continue}
res.push(_f1+":"+val)}
return "{"+res.join(", ")+"}"},objEqual:function(a,b){return(MochiKit.Base.compare(a,b)===0)},arrayEqual:function(_f4,arr){if(_f4.length!=arr.length){return false}
return(MochiKit.Base.compare(_f4,arr)===0)},concat:function(){var _f6=[];var _f7=MochiKit.Base.extend;for(var i=0;i<arguments.length;i++){_f7(_f6,arguments[i])}
return _f6},keyComparator:function(key){var m=MochiKit.Base;var _fb=m.compare;if(arguments.length==1){return function(a,b){return _fb(a[key],b[key])}}
var _fe=m.extend(null,arguments);return function(a,b){var rval=0;for(var i=0;(rval===0)&&(i<_fe.length);i++){var key=_fe[i];rval=_fb(a[key],b[key])}
return rval}},reverseKeyComparator:function(key){var _105=MochiKit.Base.keyComparator.apply(this,arguments);return function(a,b){return _105(b,a)}},partial:function(func){var m=MochiKit.Base;return m.bind.apply(this,m.extend([func,undefined],arguments,1))},listMinMax:function(_10a,lst){if(lst.length===0){return null}
var cur=lst[0];var _10d=MochiKit.Base.compare;for(var i=1;i<lst.length;i++){var o=lst[i];if(_10d(o,cur)==_10a){cur=o}}
return cur},objMax:function(){return MochiKit.Base.listMinMax(1,arguments)},objMin:function(){return MochiKit.Base.listMinMax(-1,arguments)},findIdentical:function(lst,_111,_112,end){if(typeof(end)=="undefined"||end===null){end=lst.length}
if(typeof(_112)=="undefined"||_112===null){_112=0}
for(var i=_112;i<end;i++){if(lst[i]===_111){return i}}
return-1},mean:function(){var sum=0;var m=MochiKit.Base;var args=m.extend(null,arguments);var _118=args.length;while(args.length){var o=args.shift();if(o&&typeof(o)=="object"&&typeof(o.length)=="number"){_118+=o.length-1;for(var i=o.length-1;i>=0;i--){sum+=o[i]}}else{sum+=o}}
if(_118<=0){throw new TypeError("mean() requires at least one argument")}
return sum/_118},median:function(){var data=MochiKit.Base.flattenArguments(arguments);if(data.length===0){throw new TypeError("median() requires at least one argument")}
data.sort(compare);if(data.length%2==0){var _11c=data.length/2;return(data[_11c]+data[_11c-1])/2}else{return data[(data.length-1)/2]}},findValue:function(lst,_11e,_11f,end){if(typeof(end)=="undefined"||end===null){end=lst.length}
if(typeof(_11f)=="undefined"||_11f===null){_11f=0}
var cmp=MochiKit.Base.compare;for(var i=_11f;i<end;i++){if(cmp(lst[i],_11e)===0){return i}}
return-1},nodeWalk:function(node,_124){var _125=[node];var _126=MochiKit.Base.extend;while(_125.length){var res=_124(_125.shift());if(res){_126(_125,res)}}},nameFunctions:function(_128){var base=_128.NAME;if(typeof(base)=="undefined"){base=""}else{base=base+"."}
for(var name in _128){var o=_128[name];if(typeof(o)=="function"&&typeof(o.NAME)=="undefined"){try{o.NAME=base+name}
catch(e){}}}},queryString:function(_12c,_12d){if(typeof(MochiKit.DOM)!="undefined"&&arguments.length==1&&(typeof(_12c)=="string"||(typeof(_12c.nodeType)!="undefined"&&_12c.nodeType>0))){var kv=MochiKit.DOM.formContents(_12c);_12c=kv[0];_12d=kv[1]}else{if(arguments.length==1){if(typeof(_12c.length)=="number"&&_12c.length==2){return arguments.callee(_12c[0],_12c[1])}
var o=_12c;_12c=[];_12d=[];for(var k in o){var v=o[k];if(typeof(v)=="function"){continue}else{if(MochiKit.Base.isArrayLike(v)){for(var i=0;i<v.length;i++){_12c.push(k);_12d.push(v[i])}}else{_12c.push(k);_12d.push(v)}}}}}
var rval=[];var len=Math.min(_12c.length,_12d.length);var _135=MochiKit.Base.urlEncode;for(var i=0;i<len;i++){v=_12d[i];if(typeof(v)!="undefined"&&v!==null){rval.push(_135(_12c[i])+"="+_135(v))}}
return rval.join("&")},parseQueryString:function(_136,_137){var qstr=(_136.charAt(0)=="?")?_136.substring(1):_136;var _139=qstr.replace(/\+/g,"%20").split(/\&amp\;|\&\#38\;|\&#x26;|\&/);var o={};var _13b;if(typeof(decodeURIComponent)!="undefined"){_13b=decodeURIComponent}else{_13b=unescape}
if(_137){for(var i=0;i<_139.length;i++){var pair=_139[i].split("=");var name=_13b(pair.shift());if(!name){continue}
var arr=o[name];if(!(arr instanceof Array)){arr=[];o[name]=arr}
arr.push(_13b(pair.join("=")))}}else{for(i=0;i<_139.length;i++){pair=_139[i].split("=");var name=pair.shift();if(!name){continue}
o[_13b(name)]=_13b(pair.join("="))}}
return o}});MochiKit.Base.AdapterRegistry=function(){this.pairs=[]};MochiKit.Base.AdapterRegistry.prototype={register:function(name,_141,wrap,_143){if(_143){this.pairs.unshift([name,_141,wrap])}else{this.pairs.push([name,_141,wrap])}},match:function(){for(var i=0;i<this.pairs.length;i++){var pair=this.pairs[i];if(pair[1].apply(this,arguments)){return pair[2].apply(this,arguments)}}
throw MochiKit.Base.NotFound},unregister:function(name){for(var i=0;i<this.pairs.length;i++){var pair=this.pairs[i];if(pair[0]==name){this.pairs.splice(i,1);return true}}
return false}};MochiKit.Base.EXPORT=["flattenArray","noop","camelize","counter","clone","extend","update","updatetree","setdefault","keys","values","items","NamedError","operator","forwardCall","itemgetter","typeMatcher","isCallable","isUndefined","isUndefinedOrNull","isNull","isEmpty","isNotEmpty","isArrayLike","isDateLike","xmap","map","xfilter","filter","methodcaller","compose","bind","bindMethods","NotFound","AdapterRegistry","registerComparator","compare","registerRepr","repr","objEqual","arrayEqual","concat","keyComparator","reverseKeyComparator","partial","merge","listMinMax","listMax","listMin","objMax","objMin","nodeWalk","zip","urlEncode","queryString","serializeJSON","registerJSON","evalJSON","parseQueryString","findValue","findIdentical","flattenArguments","method","average","mean","median"];MochiKit.Base.EXPORT_OK=["nameFunctions","comparatorRegistry","reprRegistry","jsonRegistry","compareDateLike","compareArrayLike","reprArrayLike","reprString","reprNumber"];MochiKit.Base._exportSymbols=function(_149,_14a){if(!MochiKit.__export__){return}
var all=_14a.EXPORT_TAGS[":all"];for(var i=0;i<all.length;i++){_149[all[i]]=_14a[all[i]]}};MochiKit.Base.__new__=function(){var m=this;m.noop=m.operator.identity;m.forward=m.forwardCall;m.find=m.findValue;if(typeof(encodeURIComponent)!="undefined"){m.urlEncode=function(_14e){return encodeURIComponent(_14e).replace(/\'/g,"%27")}}else{m.urlEncode=function(_14f){return escape(_14f).replace(/\+/g,"%2B").replace(/\"/g,"%22").rval.replace(/\'/g,"%27")}}
m.NamedError=function(name){this.message=name;this.name=name};m.NamedError.prototype=new Error();m.update(m.NamedError.prototype,{repr:function(){if(this.message&&this.message!=this.name){return this.name+"("+m.repr(this.message)+")"}else{return this.name+"()"}},toString:m.forwardCall("repr")});m.NotFound=new m.NamedError("MochiKit.Base.NotFound");m.listMax=m.partial(m.listMinMax,1);m.listMin=m.partial(m.listMinMax,-1);m.isCallable=m.typeMatcher("function");m.isUndefined=m.typeMatcher("undefined");m.merge=m.partial(m.update,null);m.zip=m.partial(m.map,null);m.average=m.mean;m.comparatorRegistry=new m.AdapterRegistry();m.registerComparator("dateLike",m.isDateLike,m.compareDateLike);m.registerComparator("arrayLike",m.isArrayLike,m.compareArrayLike);m.reprRegistry=new m.AdapterRegistry();m.registerRepr("arrayLike",m.isArrayLike,m.reprArrayLike);m.registerRepr("string",m.typeMatcher("string"),m.reprString);m.registerRepr("numbers",m.typeMatcher("number","boolean"),m.reprNumber);m.jsonRegistry=new m.AdapterRegistry();var all=m.concat(m.EXPORT,m.EXPORT_OK);m.EXPORT_TAGS={":common":m.concat(m.EXPORT_OK),":all":all};m.nameFunctions(this)};MochiKit.Base.__new__();if(MochiKit.__export__){compare=MochiKit.Base.compare;compose=MochiKit.Base.compose;serializeJSON=MochiKit.Base.serializeJSON;mean=MochiKit.Base.mean;median=MochiKit.Base.median}
MochiKit.Base._exportSymbols(this,MochiKit.Base);MochiKit.Base._deps("Iter",["Base"]);MochiKit.Iter.NAME="MochiKit.Iter";MochiKit.Iter.VERSION="1.4";MochiKit.Base.update(MochiKit.Iter,{__repr__:function(){return "["+this.NAME+" "+this.VERSION+"]"},toString:function(){return this.__repr__()},registerIteratorFactory:function(name,_153,_154,_155){MochiKit.Iter.iteratorRegistry.register(name,_153,_154,_155)},iter:function(_156,_157){var self=MochiKit.Iter;if(arguments.length==2){return self.takewhile(function(a){return a!=_157},_156)}
if(typeof(_156.next)=="function"){return _156}else{if(typeof(_156.iter)=="function"){return _156.iter()}}
try{return self.iteratorRegistry.match(_156)}
catch(e){var m=MochiKit.Base;if(e==m.NotFound){e=new TypeError(typeof(_156)+": "+m.repr(_156)+" is not iterable")}
throw e}},count:function(n){if(!n){n=0}
var m=MochiKit.Base;return{repr:function(){return "count("+n+")"},toString:m.forwardCall("repr"),next:m.counter(n)}},cycle:function(p){var self=MochiKit.Iter;var m=MochiKit.Base;var lst=[];var _161=self.iter(p);return{repr:function(){return "cycle(...)"},toString:m.forwardCall("repr"),next:function(){try{var rval=_161.next();lst.push(rval);return rval}
catch(e){if(e!=self.StopIteration){throw e}
if(lst.length===0){this.next=function(){throw self.StopIteration}}else{var i=-1;this.next=function(){i=(i+1)%lst.length;return lst[i]}}
return this.next()}}}},repeat:function(elem,n){var m=MochiKit.Base;if(typeof(n)=="undefined"){return{repr:function(){return "repeat("+m.repr(elem)+")"},toString:m.forwardCall("repr"),next:function(){return elem}}}
return{repr:function(){return "repeat("+m.repr(elem)+", "+n+")"},toString:m.forwardCall("repr"),next:function(){if(n<=0){throw MochiKit.Iter.StopIteration}
n-=1;return elem}}},next:function(_167){return _167.next()},izip:function(p,q){var m=MochiKit.Base;var self=MochiKit.Iter;var next=self.next;var _16d=m.map(self.iter,arguments);return{repr:function(){return "izip(...)"},toString:m.forwardCall("repr"),next:function(){return m.map(next,_16d)}}},ifilter:function(pred,seq){var m=MochiKit.Base;seq=MochiKit.Iter.iter(seq);if(pred===null){pred=m.operator.truth}
return{repr:function(){return "ifilter(...)"},toString:m.forwardCall("repr"),next:function(){while(true){var rval=seq.next();if(pred(rval)){return rval}}
return undefined}}},ifilterfalse:function(pred,seq){var m=MochiKit.Base;seq=MochiKit.Iter.iter(seq);if(pred===null){pred=m.operator.truth}
return{repr:function(){return "ifilterfalse(...)"},toString:m.forwardCall("repr"),next:function(){while(true){var rval=seq.next();if(!pred(rval)){return rval}}
return undefined}}},islice:function(seq){var self=MochiKit.Iter;var m=MochiKit.Base;seq=self.iter(seq);var _179=0;var stop=0;var step=1;var i=-1;if(arguments.length==2){stop=arguments[1]}else{if(arguments.length==3){_179=arguments[1];stop=arguments[2]}else{_179=arguments[1];stop=arguments[2];step=arguments[3]}}
return{repr:function(){return "islice("+["...",_179,stop,step].join(", ")+")"},toString:m.forwardCall("repr"),next:function(){var rval;while(i<_179){rval=seq.next();i++}
if(_179>=stop){throw self.StopIteration}
_179+=step;return rval}}},imap:function(fun,p,q){var m=MochiKit.Base;var self=MochiKit.Iter;var _183=m.map(self.iter,m.extend(null,arguments,1));var map=m.map;var next=self.next;return{repr:function(){return "imap(...)"},toString:m.forwardCall("repr"),next:function(){return fun.apply(this,map(next,_183))}}},applymap:function(fun,seq,self){seq=MochiKit.Iter.iter(seq);var m=MochiKit.Base;return{repr:function(){return "applymap(...)"},toString:m.forwardCall("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 _18e=m.map(self.iter,arguments);return{repr:function(){return "chain(...)"},toString:m.forwardCall("repr"),next:function(){while(_18e.length>1){try{var _18f=_18e[0].next();return _18f}
catch(e){if(e!=self.StopIteration){throw e}
_18e.shift();var _18f=_18e[0].next();return _18f}}
if(_18e.length==1){var arg=_18e.shift();this.next=m.bind("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.forwardCall("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.forwardCall("repr"),"next":function(){while(true){var rval=seq.next();if(!pred(rval)){break}}
this.next=bind("next",seq);return rval}}},_tee:function(_19a,sync,_19c){sync.pos[_19a]=-1;var m=MochiKit.Base;var _19e=m.listMin;return{repr:function(){return "tee("+_19a+", ...)"},toString:m.forwardCall("repr"),next:function(){var rval;var i=sync.pos[_19a];if(i==sync.max){rval=_19c.next();sync.deque.push(rval);sync.max+=1;sync.pos[_19a]+=1}else{rval=sync.deque[i-sync.min];sync.pos[_19a]+=1;if(i==sync.min&&_19e(sync.pos)!=sync.min){sync.min+=1;sync.deque.shift()}}
return rval}}},tee:function(_1a1,n){var rval=[];var sync={"pos":[],"deque":[],"max":-1,"min":-1};if(arguments.length==1||typeof(n)=="undefined"||n===null){n=2}
var self=MochiKit.Iter;_1a1=self.iter(_1a1);var _tee=self._tee;for(var i=0;i<n;i++){rval.push(_tee(i,sync,_1a1))}
return rval},list:function(_1a8){var rval;if(_1a8 instanceof Array){return _1a8.slice()}
if(typeof(_1a8)=="function"&&!(_1a8 instanceof Function)&&typeof(_1a8.length)=="number"){rval=[];for(var i=0;i<_1a8.length;i++){rval.push(_1a8[i])}
return rval}
var self=MochiKit.Iter;_1a8=self.iter(_1a8);var rval=[];var _1ac;try{while(true){_1ac=_1a8.next();rval.push(_1ac)}}
catch(e){if(e!=self.StopIteration){throw e}
return rval}
return undefined},reduce:function(fn,_1ae,_1af){var i=0;var x=_1af;var self=MochiKit.Iter;_1ae=self.iter(_1ae);if(arguments.length<3){try{x=_1ae.next()}
catch(e){if(e==self.StopIteration){e=new TypeError("reduce() of empty sequence with no initial value")}
throw e}
i++}
try{while(true){x=fn(x,_1ae.next())}}
catch(e){if(e!=self.StopIteration){throw e}}
return x},range:function(){var _1b3=0;var stop=0;var step=1;if(arguments.length==1){stop=arguments[0]}else{if(arguments.length==2){_1b3=arguments[0];stop=arguments[1]}else{if(arguments.length==3){_1b3=arguments[0];stop=arguments[1];step=arguments[2]}else{throw new TypeError("range() takes 1, 2, or 3 arguments!")}}}
if(step===0){throw new TypeError("range() step must not be 0")}
return{next:function(){if((step>0&&_1b3>=stop)||(step<0&&_1b3<=stop)){throw MochiKit.Iter.StopIteration}
var rval=_1b3;_1b3+=step;return rval},repr:function(){return "range("+[_1b3,stop,step].join(", ")+")"},toString:MochiKit.Base.forwardCall("repr")}},sum:function(_1b7,_1b8){if(typeof(_1b8)=="undefined"||_1b8===null){_1b8=0}
var x=_1b8;var self=MochiKit.Iter;_1b7=self.iter(_1b7);try{while(true){x+=_1b7.next()}}
catch(e){if(e!=self.StopIteration){throw e}}
return x},exhaust:function(_1bb){var self=MochiKit.Iter;_1bb=self.iter(_1bb);try{while(true){_1bb.next()}}
catch(e){if(e!=self.StopIteration){throw e}}},forEach:function(_1bd,func,self){var m=MochiKit.Base;if(arguments.length>2){func=m.bind(func,self)}
if(m.isArrayLike(_1bd)){try{for(var i=0;i<_1bd.length;i++){func(_1bd[i])}}
catch(e){if(e!=MochiKit.Iter.StopIteration){throw e}}}else{self=MochiKit.Iter;self.exhaust(self.imap(func,_1bd))}},every:function(_1c2,func){var self=MochiKit.Iter;try{self.ifilterfalse(func,_1c2).next();return false}
catch(e){if(e!=self.StopIteration){throw e}
return true}},sorted:function(_1c5,cmp){var rval=MochiKit.Iter.list(_1c5);if(arguments.length==1){cmp=MochiKit.Base.compare}
rval.sort(cmp);return rval},reversed:function(_1c8){var rval=MochiKit.Iter.list(_1c8);rval.reverse();return rval},some:function(_1ca,func){var self=MochiKit.Iter;try{self.ifilter(func,_1ca).next();return true}
catch(e){if(e!=self.StopIteration){throw e}
return false}},iextend:function(lst,_1ce){if(MochiKit.Base.isArrayLike(_1ce)){for(var i=0;i<_1ce.length;i++){lst.push(_1ce[i])}}else{var self=MochiKit.Iter;_1ce=self.iter(_1ce);try{while(true){lst.push(_1ce.next())}}
catch(e){if(e!=self.StopIteration){throw e}}}
return lst},groupby:function(_1d1,_1d2){var m=MochiKit.Base;var self=MochiKit.Iter;if(arguments.length<2){_1d2=m.operator.identity}
_1d1=self.iter(_1d1);var pk=undefined;var k=undefined;var v;
function fetch(){v=_1d1.next();k=_1d2(v)}
function eat(){var ret=v;v=undefined;return ret}
var _1d9=true;var _1da=m.compare;return{repr:function(){return "groupby(...)"},next:function(){while(_1da(k,pk)===0){fetch();if(_1d9){_1d9=false;break}}
pk=k;return [k,{next:function(){if(v==undefined){fetch()}
if(_1da(k,pk)!==0){throw self.StopIteration}
return eat()}}]}}},groupby_as_array:function(_1db,_1dc){var m=MochiKit.Base;var self=MochiKit.Iter;if(arguments.length<2){_1dc=m.operator.identity}
_1db=self.iter(_1db);var _1df=[];var _1e0=true;var _1e1;var _1e2=m.compare;while(true){try{var _1e3=_1db.next();var key=_1dc(_1e3)}
catch(e){if(e==self.StopIteration){break}
throw e}
if(_1e0||_1e2(key,_1e1)!==0){var _1e5=[];_1df.push([key,_1e5])}
_1e5.push(_1e3);_1e0=false;_1e1=key}
return _1df},arrayLikeIter:function(_1e6){var i=0;return{repr:function(){return "arrayLikeIter(...)"},toString:MochiKit.Base.forwardCall("repr"),next:function(){if(i>=_1e6.length){throw MochiKit.Iter.StopIteration}
return _1e6[i++]}}},hasIterateNext:function(_1e8){return(_1e8&&typeof(_1e8.iterateNext)=="function")},iterateNextIter:function(_1e9){return{repr:function(){return "iterateNextIter(...)"},toString:MochiKit.Base.forwardCall("repr"),next:function(){var rval=_1e9.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;if(typeof(StopIteration)!="undefined"){this.StopIteration=StopIteration}else{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__();if(MochiKit.__export__){reduce=MochiKit.Iter.reduce}
MochiKit.Base._exportSymbols(this,MochiKit.Iter);MochiKit.Base._deps("DOM",["Base"]);MochiKit.DOM.NAME="MochiKit.DOM";MochiKit.DOM.VERSION="1.4";MochiKit.DOM.__repr__=function(){return "["+this.NAME+" "+this.VERSION+"]"};MochiKit.DOM.toString=function(){return this.__repr__()};MochiKit.DOM.EXPORT=["removeEmptyTextNodes","formContents","currentWindow","currentDocument","withWindow","withDocument","registerDOMConverter","coerceToDOM","createDOM","createDOMFunc","isChildNode","getNodeAttribute","removeNodeAttribute","setNodeAttribute","updateNodeAttributes","appendChildNodes","insertSiblingNodesAfter","insertSiblingNodesBefore","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","DL","DT","DD","TD","TR","THEAD","TBODY","TFOOT","TABLE","TH","INPUT","SPAN","A","DIV","IMG","getElement","$","getElementsByTagAndClassName","addToCallStack","addLoadEvent","focusOnLoad","setElementClass","toggleElementClass","addElementClass","removeElementClass","swapElementClass","hasElementClass","escapeHTML","toHTML","emitHTML","scrapeText","isParent","getFirstParentByTagAndClassName","makeClipping","undoClipping","makePositioned","undoPositioned","getFirstElementByTagAndClassName"];MochiKit.DOM.EXPORT_OK=["domConverters"];MochiKit.DOM.DEPRECATED=[["computedStyle","MochiKit.Style.getStyle","1.4"],["elementDimensions","MochiKit.Style.getElementDimensions","1.4"],["elementPosition","MochiKit.Style.getElementPosition","1.4"],["hideElement","MochiKit.Style.hideElement","1.4"],["setElementDimensions","MochiKit.Style.setElementDimensions","1.4"],["setElementPosition","MochiKit.Style.setElementPosition","1.4"],["setDisplayForElement","MochiKit.Style.setDisplayForElement","1.4"],["setOpacity","MochiKit.Style.setOpacity","1.4"],["showElement","MochiKit.Style.showElement","1.4"],["Coordinates","MochiKit.Style.Coordinates","1.4"],["Dimensions","MochiKit.Style.Dimensions","1.4"]];MochiKit.DOM.getViewportDimensions=new Function(""+"if (!MochiKit[\"Style\"]) {"+"    throw new Error(\"This function has been deprecated and depends on MochiKit.Style.\");"+"}"+"return MochiKit.Style.getViewportDimensions.apply(this, arguments);");MochiKit.Base.update(MochiKit.DOM,{currentWindow:function(){return MochiKit.DOM._window},currentDocument:function(){return MochiKit.DOM._document},withWindow:function(win,func){var self=MochiKit.DOM;var _1ef=self._document;var _1f0=self._window;var rval;try{self._window=win;self._document=win.document;rval=func()}
catch(e){self._window=_1f0;self._document=_1ef;throw e}
self._window=_1f0;self._document=_1ef;return rval},formContents:function(elem){var _1f3=[];var _1f4=[];var m=MochiKit.Base;var self=MochiKit.DOM;if(typeof(elem)=="undefined"||elem===null){elem=self._document.body}else{elem=self.getElement(elem)}
m.nodeWalk(elem,function(elem){var name=elem.name;if(m.isNotEmpty(name)){var _1f9=elem.tagName.toUpperCase();if(_1f9==="INPUT"&&(elem.type=="radio"||elem.type=="checkbox")&&!elem.checked){return null}
if(_1f9==="SELECT"){if(elem.type=="select-one"){if(elem.selectedIndex>=0){var opt=elem.options[elem.selectedIndex];var v=opt.value;if(!v){var h=opt.outerHTML;if(h&&!h.match(/^[^>]+\svalue\s*=/i)){v=opt.text}}
_1f3.push(name);_1f4.push(v);return null}
_1f3.push(name);_1f4.push("");return null}else{var opts=elem.options;if(!opts.length){_1f3.push(name);_1f4.push("");return null}
for(var i=0;i<opts.length;i++){var opt=opts[i];if(!opt.selected){continue}
var v=opt.value;if(!v){var h=opt.outerHTML;if(h&&!h.match(/^[^>]+\svalue\s*=/i)){v=opt.text}}
_1f3.push(name);_1f4.push(v)}
return null}}
if(_1f9==="FORM"||_1f9==="P"||_1f9==="SPAN"||_1f9==="DIV"){return elem.childNodes}
_1f3.push(name);_1f4.push(elem.value||"");return null}
return elem.childNodes});return [_1f3,_1f4]},withDocument:function(doc,func){var self=MochiKit.DOM;var _202=self._document;var rval;try{self._document=doc;rval=func()}
catch(e){self._document=_202;throw e}
self._document=_202;return rval},registerDOMConverter:function(name,_205,wrap,_207){MochiKit.DOM.domConverters.register(name,_205,wrap,_207)},coerceToDOM:function(node,ctx){var m=MochiKit.Base;var im=MochiKit.Iter;var self=MochiKit.DOM;if(im){var iter=im.iter;var _20e=im.repeat;var map=m.map}
var _210=self.domConverters;var _211=arguments.callee;var _212=m.NotFound;while(true){if(typeof(node)=="undefined"||node===null){return null}
if(typeof(node)=="function"&&typeof(node.length)=="number"&&!(node instanceof Function)){node=im.list(node)}
if(typeof(node.nodeType)!="undefined"&&node.nodeType>0){return node}
if(typeof(node)=="number"||typeof(node)=="boolean"){node=node.toString()}
if(typeof(node)=="string"){return self._document.createTextNode(node)}
if(typeof(node.__dom__)=="function"){node=node.__dom__(ctx);continue}
if(typeof(node.dom)=="function"){node=node.dom(ctx);continue}
if(typeof(node)=="function"){node=node.apply(ctx,[ctx]);continue}
if(im){var _213=null;try{_213=iter(node)}
catch(e){}
if(_213){return map(_211,_213,_20e(ctx))}}
try{node=_210.match(node,ctx);continue}
catch(e){if(e!=_212){throw e}}
return self._document.createTextNode(node.toString())}
return undefined},isChildNode:function(node,_215){var self=MochiKit.DOM;if(typeof(node)=="string"){node=self.getElement(node)}
if(typeof(_215)=="string"){_215=self.getElement(_215)}
if(typeof(node)=="undefined"||node===null||node===self._document){return false}
do{if(node===_215){return true}
var _217=node.tagName;node=node.parentNode;if(!_217){break}
_217=_217.toUpperCase()}while(_217!="BODY"&&_217!="HTML");return false},setNodeAttribute:function(node,attr,_21a){var o={};o[attr]=_21a;try{return MochiKit.DOM.updateNodeAttributes(node,o)}
catch(e){}
return null},getNodeAttribute:function(node,attr){var self=MochiKit.DOM;var _21f=self.attributeArray.renames[attr];node=self.getElement(node);try{if(_21f){return node[_21f]}
return node.getAttribute(attr)}
catch(e){}
return null},removeNodeAttribute:function(node,attr){var self=MochiKit.DOM;var _223=self.attributeArray.renames[attr];node=self.getElement(node);try{if(_223){return node[_223]}
return node.removeAttribute(attr)}
catch(e){}
return null},updateNodeAttributes:function(node,_225){var elem=node;var self=MochiKit.DOM;if(typeof(node)=="string"){elem=self.getElement(node)}
if(_225){var _228=MochiKit.Base.updatetree;if(self.attributeArray.compliant){for(var k in _225){var v=_225[k];if(typeof(v)=="object"&&typeof(elem[k])=="object"){if(k=="style"&&MochiKit.Style){MochiKit.Style.setStyle(elem,v)}else{_228(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 _22b=self.attributeArray.renames;for(var k in _225){v=_225[k];var _22c=_22b[k];if(k=="style"&&typeof(v)=="string"){elem.style.cssText=v}else{if(typeof(_22c)=="string"){elem[_22c]=v}else{if(typeof(elem[k])=="object"&&typeof(v)=="object"){if(k=="style"&&MochiKit.Style){MochiKit.Style.setStyle(elem,v)}else{_228(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},appendChildNodes:function(node){var elem=node;var self=MochiKit.DOM;if(typeof(node)=="string"){elem=self.getElement(node)}
var _230=[self.coerceToDOM(MochiKit.Base.extend(null,arguments,1),elem)];var _231=MochiKit.Base.concat;while(_230.length){var n=_230.shift();if(typeof(n)=="undefined"||n===null){}else{if(typeof(n.nodeType)=="number"){elem.appendChild(n)}else{_230=_231(n,_230)}}}
return elem},insertSiblingNodesBefore:function(node){var elem=node;var self=MochiKit.DOM;if(typeof(node)=="string"){elem=self.getElement(node)}
var _236=[self.coerceToDOM(MochiKit.Base.extend(null,arguments,1),elem)];var _237=elem.parentNode;var _238=MochiKit.Base.concat;while(_236.length){var n=_236.shift();if(typeof(n)=="undefined"||n===null){}else{if(typeof(n.nodeType)=="number"){_237.insertBefore(n,elem)}else{_236=_238(n,_236)}}}
return _237},insertSiblingNodesAfter:function(node){var elem=node;var self=MochiKit.DOM;if(typeof(node)=="string"){elem=self.getElement(node)}
var _23d=[self.coerceToDOM(MochiKit.Base.extend(null,arguments,1),elem)];if(elem.nextSibling){return self.insertSiblingNodesBefore(elem.nextSibling,_23d)}else{return self.appendChildNodes(elem.parentNode,_23d)}},replaceChildNodes:function(node){var elem=node;var self=MochiKit.DOM;if(typeof(node)=="string"){elem=self.getElement(node);arguments[0]=elem}
var _241;while((_241=elem.firstChild)){elem.removeChild(_241)}
if(arguments.length<2){return elem}else{return self.appendChildNodes.apply(this,arguments)}},createDOM:function(name,_243){var elem;var self=MochiKit.DOM;var m=MochiKit.Base;if(typeof(_243)=="string"||typeof(_243)=="number"){var args=m.extend([name,null],arguments,1);return arguments.callee.apply(this,args)}
if(typeof(name)=="string"){var _248=self._xhtml;if(_243&&!self.attributeArray.compliant){var _249="";if("name" in _243){_249+=" name=\""+self.escapeHTML(_243.name)+"\""}
if(name=="input"&&"type" in _243){_249+=" type=\""+self.escapeHTML(_243.type)+"\""}
if(_249){name="<"+name+_249+">";_248=false}}
var d=self._document;if(_248&&d===document){elem=d.createElementNS("http://www.w3.org/1999/xhtml",name)}else{elem=d.createElement(name)}}else{elem=name}
if(_243){self.updateNodeAttributes(elem,_243)}
if(arguments.length<=2){return elem}else{var args=m.extend([elem],arguments,2);return self.appendChildNodes.apply(this,args)}},createDOMFunc:function(){var m=MochiKit.Base;return m.partial.apply(this,m.extend([MochiKit.DOM.createDOM],arguments))},removeElement:function(elem){var e=MochiKit.DOM.getElement(elem);e.parentNode.removeChild(e);return e},swapDOM:function(dest,src){var self=MochiKit.DOM;dest=self.getElement(dest);var _251=dest.parentNode;if(src){src=self.getElement(src);_251.replaceChild(src,dest)}else{_251.removeChild(dest)}
return src},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)}},getElementsByTagAndClassName:function(_254,_255,_256){var self=MochiKit.DOM;if(typeof(_254)=="undefined"||_254===null){_254="*"}
if(typeof(_256)=="undefined"||_256===null){_256=self._document}
_256=self.getElement(_256);var _258=(_256.getElementsByTagName(_254)||self._document.all);if(typeof(_255)=="undefined"||_255===null){return MochiKit.Base.extend(null,_258)}
var _259=[];for(var i=0;i<_258.length;i++){var _25b=_258[i];var cls=_25b.className;if(!cls){continue}
var _25d=cls.split(" ");for(var j=0;j<_25d.length;j++){if(_25d[j]==_255){_259.push(_25b);break}}}
return _259},_newCallStack:function(path,once){var rval=function(){var _262=arguments.callee.callStack;for(var i=0;i<_262.length;i++){if(_262[i].apply(this,arguments)===false){break}}
if(once){try{this[path]=null}
catch(e){}}};rval.callStack=[];return rval},addToCallStack:function(_264,path,func,once){var self=MochiKit.DOM;var _269=_264[path];var _26a=_269;if(!(typeof(_269)=="function"&&typeof(_269.callStack)=="object"&&_269.callStack!==null)){_26a=self._newCallStack(path,once);if(typeof(_269)=="function"){_26a.callStack.push(_269)}
_264[path]=_26a}
_26a.callStack.push(func)},addLoadEvent:function(func){var self=MochiKit.DOM;self.addToCallStack(self._window,"onload",func,true)},focusOnLoad:function(_26d){var self=MochiKit.DOM;self.addLoadEvent(function(){_26d=self.getElement(_26d);if(_26d){_26d.focus()}})},setElementClass:function(_26f,_270){var self=MochiKit.DOM;var obj=self.getElement(_26f);if(self.attributeArray.compliant){obj.setAttribute("class",_270)}else{obj.setAttribute("className",_270)}},toggleElementClass:function(_273){var self=MochiKit.DOM;for(var i=1;i<arguments.length;i++){var obj=self.getElement(arguments[i]);if(!self.addElementClass(obj,_273)){self.removeElementClass(obj,_273)}}},addElementClass:function(_277,_278){var self=MochiKit.DOM;var obj=self.getElement(_277);var cls=obj.className;if(cls==undefined||cls.length===0){self.setElementClass(obj,_278);return true}
if(cls==_278){return false}
var _27c=cls.split(" ");for(var i=0;i<_27c.length;i++){if(_27c[i]==_278){return false}}
self.setElementClass(obj,cls+" "+_278);return true},removeElementClass:function(_27e,_27f){var self=MochiKit.DOM;var obj=self.getElement(_27e);var cls=obj.className;if(cls==undefined||cls.length===0){return false}
if(cls==_27f){self.setElementClass(obj,"");return true}
var _283=cls.split(" ");for(var i=0;i<_283.length;i++){if(_283[i]==_27f){_283.splice(i,1);self.setElementClass(obj,_283.join(" "));return true}}
return false},swapElementClass:function(_285,_286,_287){var obj=MochiKit.DOM.getElement(_285);var res=MochiKit.DOM.removeElementClass(obj,_286);if(res){MochiKit.DOM.addElementClass(obj,_287)}
return res},hasElementClass:function(_28a,_28b){var obj=MochiKit.DOM.getElement(_28a);var cls=obj.className;if(!cls){return false}
var _28e=cls.split(" ");for(var i=1;i<arguments.length;i++){var good=false;for(var j=0;j<_28e.length;j++){if(_28e[j]==arguments[i]){good=true;break}}
if(!good){return false}}
return true},escapeHTML:function(s){return s.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")},toHTML:function(dom){return MochiKit.DOM.emitHTML(dom).join("")},emitHTML:function(dom,lst){if(typeof(lst)=="undefined"||lst===null){lst=[]}
var _296=[dom];var self=MochiKit.DOM;var _298=self.escapeHTML;var _299=self.attributeArray;while(_296.length){dom=_296.pop();if(typeof(dom)=="string"){lst.push(dom)}else{if(dom.nodeType==1){lst.push("<"+dom.tagName.toLowerCase());var _29a=[];var _29b=_299(dom);for(var i=0;i<_29b.length;i++){var a=_29b[i];_29a.push([" ",a.name,"=\"",_298(a.value),"\""])}
_29a.sort();for(i=0;i<_29a.length;i++){var _29e=_29a[i];for(var j=0;j<_29e.length;j++){lst.push(_29e[j])}}
if(dom.hasChildNodes()){lst.push(">");_296.push("</"+dom.tagName.toLowerCase()+">");var _2a0=dom.childNodes;for(i=_2a0.length-1;i>=0;i--){_296.push(_2a0[i])}}else{lst.push("/>")}}else{if(dom.nodeType==3){lst.push(_298(dom.nodeValue))}}}}
return lst},scrapeText:function(node,_2a2){var rval=[];(function(node){var cn=node.childNodes;if(cn){for(var i=0;i<cn.length;i++){arguments.callee.call(this,cn[i])}}
var _2a7=node.nodeValue;if(typeof(_2a7)=="string"){rval.push(_2a7)}})(MochiKit.DOM.getElement(node));if(_2a2){return rval}else{return rval.join("")}},removeEmptyTextNodes:function(_2a8){_2a8=MochiKit.DOM.getElement(_2a8);for(var i=0;i<_2a8.childNodes.length;i++){var node=_2a8.childNodes[i];if(node.nodeType==3&&!/\S/.test(node.nodeValue)){node.parentNode.removeChild(node)}}},makeClipping:function(_2ab){_2ab=MochiKit.DOM.getElement(_2ab);var _2ac=_2ab.style.overflow;if((MochiKit.Style.getStyle(_2ab,"overflow")||"visible")!="hidden"){_2ab.style.overflow="hidden"}
return _2ac},undoClipping:function(_2ad,_2ae){_2ad=MochiKit.DOM.getElement(_2ad);if(!_2ae){return}
_2ad.style.overflow=_2ae},makePositioned:function(_2af){_2af=MochiKit.DOM.getElement(_2af);var pos=MochiKit.Style.getStyle(_2af,"position");if(pos=="static"||!pos){_2af.style.position="relative";if(/Opera/.test(navigator.userAgent)){_2af.style.top=0;_2af.style.left=0}}},undoPositioned:function(_2b1){_2b1=MochiKit.DOM.getElement(_2b1);if(_2b1.style.position=="relative"){_2b1.style.position=_2b1.style.top=_2b1.style.left=_2b1.style.bottom=_2b1.style.right=""}},getFirstElementByTagAndClassName:function(_2b2,_2b3,_2b4){var self=MochiKit.DOM;if(typeof(_2b2)=="undefined"||_2b2===null){_2b2="*"}
if(typeof(_2b4)=="undefined"||_2b4===null){_2b4=self._document}
_2b4=self.getElement(_2b4);var _2b6=(_2b4.getElementsByTagName(_2b2)||self._document.all);if(typeof(_2b3)=="undefined"||_2b3===null){return _2b6[0]}
for(var i=0;i<_2b6.length;i++){var _2b8=_2b6[i];var _2b9=_2b8.className.split(" ");for(var j=0;j<_2b9.length;j++){if(_2b9[j]==_2b3){return _2b8}}}},getFirstParentByTagAndClassName:function(elem,_2bc,_2bd){var self=MochiKit.DOM;elem=self.getElement(elem);if(typeof(_2bc)=="undefined"||_2bc===null){_2bc="*"}else{_2bc=_2bc.toUpperCase()}
if(typeof(_2bd)=="undefined"||_2bd===null){_2bd=null}
var _2bf="";var _2c0="";while(elem&&elem.tagName){elem=elem.parentNode;if(_2bc=="*"&&_2bd===null){return elem}
_2bf=elem.className.split(" ");_2c0=elem.tagName.toUpperCase();if(_2bd===null&&_2bc==_2c0){return elem}else{if(_2bd!==null){for(var i=0;i<_2bf.length;i++){if(_2bc=="*"&&_2bf[i]==_2bd){return elem}else{if(_2bc==_2c0&&_2bf[i]==_2bd){return elem}}}}}}
return elem},isParent:function(_2c2,_2c3){if(!_2c2.parentNode||_2c2==_2c3){return false}
if(_2c2.parentNode==_2c3){return true}
return MochiKit.DOM.isParent(_2c2.parentNode,_2c3)},__new__:function(win){var m=MochiKit.Base;if(typeof(document)!="undefined"){this._document=document;var _2c6="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul";this._xhtml=(document.documentElement&&document.createElementNS&&document.documentElement.namespaceURI===_2c6)}else{if(MochiKit.MockDOM){this._document=MochiKit.MockDOM.document}}
this._window=win;this.domConverters=new m.AdapterRegistry();var _2c7=this._document.createElement("span");var _2c8;if(_2c7&&_2c7.attributes&&_2c7.attributes.length>0){var _2c9=m.filter;_2c8=function(node){return _2c9(_2c8.ignoreAttrFilter,node.attributes)};_2c8.ignoreAttr={};var _2cb=_2c7.attributes;var _2cc=_2c8.ignoreAttr;for(var i=0;i<_2cb.length;i++){var a=_2cb[i];_2cc[a.name]=a.value}
_2c8.ignoreAttrFilter=function(a){return(_2c8.ignoreAttr[a.name]!=a.value)};_2c8.compliant=false;_2c8.renames={"class":"className","checked":"defaultChecked","usemap":"useMap","for":"htmlFor","readonly":"readOnly","colspan":"colSpan","bgcolor":"bgColor","cellspacing":"cellSpacing","cellpadding":"cellPadding"}}else{_2c8=function(node){return node.attributes};_2c8.compliant=true;_2c8.renames={}}
this.attributeArray=_2c8;var _2d1=function(_2d2,arr){var _2d4=arr[1].split(".");var str="";var obj={};str+="if (!MochiKit."+_2d4[1]+") { throw new Error(\"";str+="This function has been deprecated and depends on MochiKit.";str+=_2d4[1]+".\");}";str+="return MochiKit."+_2d4[1]+"."+arr[0];str+=".apply(this, arguments);";obj[_2d4[2]]=new Function(str);MochiKit.Base.update(MochiKit[_2d2],obj)};for(var i;i<MochiKit.DOM.DEPRECATED.length;i++){_2d1("DOM",MochiKit.DOM.DEPRECATED[i])}
var _2d7=this.createDOMFunc;this.UL=_2d7("ul");this.OL=_2d7("ol");this.LI=_2d7("li");this.DL=_2d7("dl");this.DT=_2d7("dt");this.DD=_2d7("dd");this.TD=_2d7("td");this.TR=_2d7("tr");this.TBODY=_2d7("tbody");this.THEAD=_2d7("thead");this.TFOOT=_2d7("tfoot");this.TABLE=_2d7("table");this.TH=_2d7("th");this.INPUT=_2d7("input");this.SPAN=_2d7("span");this.A=_2d7("a");this.DIV=_2d7("div");this.IMG=_2d7("img");this.BUTTON=_2d7("button");this.TT=_2d7("tt");this.PRE=_2d7("pre");this.H1=_2d7("h1");this.H2=_2d7("h2");this.H3=_2d7("h3");this.BR=_2d7("br");this.HR=_2d7("hr");this.LABEL=_2d7("label");this.TEXTAREA=_2d7("textarea");this.FORM=_2d7("form");this.P=_2d7("p");this.SELECT=_2d7("select");this.OPTION=_2d7("option");this.OPTGROUP=_2d7("optgroup");this.LEGEND=_2d7("legend");this.FIELDSET=_2d7("fieldset");this.STRONG=_2d7("strong");this.CANVAS=_2d7("canvas");this.$=this.getElement;this.EXPORT_TAGS={":common":this.EXPORT,":all":m.concat(this.EXPORT,this.EXPORT_OK)};m.nameFunctions(this)}});MochiKit.DOM.__new__(((typeof(window)=="undefined")?this:window));if(MochiKit.__export__){withWindow=MochiKit.DOM.withWindow;withDocument=MochiKit.DOM.withDocument}
MochiKit.Base._exportSymbols(this,MochiKit.DOM);
