<br />
<a href="http://twitter.com/share" class="twitter-share-button" data-text="KiwiSpace launches a helium balloon above Waikato, and returns photos from the edge of space. http://www.kiwispace.org.nz/eos" data-count="horizontal" data-via="nzspace">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script>
<script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script><fb:like show_faces="false" width="400"></fb:like>
About the mission
KiwiSpace Foundation has successfully launched a helium balloon above the Waikato and recovered its payload of cameras, tracking equipment and breathtaking images from the edge of space. While the MetService launches meteorological balloons regularly, KiwiSpace believes this is the first balloon launched with the goal of capturing images of New Zealand and space ferom very high altitudes.
We chose to launch the balloon on Sunday to honour the golden anniversary of human spaceflight and to celebrate the official incorporation of the Foundation. Fifty years ago on April 12, 1961, Russian Yuri Gagarin became the first man in space when he boarded spacecraft Vostok-1 and blasted off at 6:07am UTC (6:07pm NZST). He made a single orbit of the Earth and touched down again safely in the rural USSR 108 minutes later.
The balloon was launched at 8:48am on the morning of Sunday 10th April, climbed to over 51,000 feet (15.5km) before popping and landing just east of Pirongia, near Hamilton. Recovery teams reached the payload at 11:12am and were delighted to find it intact and still taking pictures.
The mission, excluding time volunteered by the project team, has cost around $3000, and has been funded by members and sponsors.
The Payload
This first launch was a lightweight payload of around 520 grams, containing:
- Canon digital camera, with custom firmware to provide time-lapse photography;
- GPS and altimeter that transmitted the balloon's location and altitude using the amateur radio Automatic Packet Reporting System (APRS);
- Radio beacon to assist with directional location by the recovery crews; and
- Mobile phone, to provide additional location information and pictures.
Future launches will include additional high-resolution cameras, and more advanced tracking and release mechanisms
Latest updates
*
* _(
,
)_
No recent updates to the page or project.
Stay tuned as we post more video and photos from the launch.
Photos and Video
Attached Images
<!-- Kishlery code starts here -->
<div id="kishlery" class="KLmainContainer"></div>
<script type="text/javascript">
// All-in-one for kishlery.com 09/10/2010 13:22:37
// Here starts http://ajax.googleapis.com/ajax/libs/mootools/1.2.4/mootools-yui-compressed.js
//MooTools, <http://mootools.net>, My Object Oriented (JavaScript) Tools. Copyright (c) 2006-2009 Valerio Proietti, <http://mad4milk.net>, MIT Style License.
var MooTools=
;var Native=function(k){k=k||{};var a=k.name;var i=k.legacy;var b=k.protect;
var c=k.implement;var h=k.generics;var f=k.initialize;var g=k.afterImplement||function(){};var d=f||i;h=h!==false;d.constructor=Native;d.$family=
;
if(i&&f)
d.prototype.constructor=d;if(a){var e=a.toLowerCase();d.prototype.$family=
;Native.typize(d,e);}var j=function(n,l,o,m){if(!b||m||!n.prototype[l]){n.prototype[l]=o;
}if(h)
g.call(n,l,o);return n;};d.alias=function(n,l,p){if(typeof n=="string"){var o=this.prototype[n];if((n=o))
for(var m in n)
return this;};d.implement=function(m,l,o){if(typeof m=="string")
for(var n in m)
;if(c)
return d;};Native.genericize=function(b,c,a){if((!a||!b[c])&&typeof b.prototype[c]=="function"){b[c]=function()
;}};Native.implement=function(d,c){for(var b=0,a=d.length;b<a;b++){d[b].implement(c);}};Native.typize=function(a,b){if(!a.type){a.type=function(c){return($type(c)===b);
};}};(function(){var a=
;for(var h in a){new Native(
);
}var d=
;for(var c in d)
var f=
;
for(var e in f){for(var b=f[e].length;b--
}})();var Hash=new Native({name:"Hash",initialize:function(a){if($type(a)=="hash"){a=$unlink(a.getClean());
}for(var b in a)
return this;}});Hash.implement({forEach:function(b,c){for(var a in this){if(this.hasOwnProperty(a)){b.call(c,this[a],a,this);
}}},getClean:function(){var b={};for(var a in this){if(this.hasOwnProperty(a)){b[a]=this[a];}}return b;},getLength:function(){var b=0;for(var a in this){if(this.hasOwnProperty(a))
return b;}});Hash.alias("forEach","each");Array.implement({forEach:function(c,d){for(var b=0,a=this.length;b<a;b++)
}});Array.alias("forEach","each");
function $A(b){if(b.item){var a=b.length,c=new Array(a);while(a--)
return c;}return Array.prototype.slice.call(b);}function $arguments(a){return function()
function $chk(a)
function $clear(a)
function $defined(a)
function $each(c,b,d)
function $empty(){}function $extend(c,a){for(var b in (a||{}))
return c;
}function $H(a)
function $lambda(a){return($type(a)=="function")?a:function()
;}function $merge(){var a=Array.slice(arguments);
a.unshift({});return $mixin.apply(null,a);}function $mixin(e){for(var d=1,a=arguments.length;d<a;d++){var b=arguments[d];if($type(b)!="object"){continue;
}for(var c in b){var g=b[c],f=e[c];e[c]=(f&&$type(g)=="object"&&$type(f)=="object")?$mixin(f,g):$unlink(g);}}return e;}function $pick(){for(var b=0,a=arguments.length;
b<a;b++){if(arguments[b]!=undefined){return arguments[b];}}return null;}function $random(b,a)
function $splat(b)
var $time=Date.now||function()
;function $try(){for(var b=0,a=arguments.length;b<a;
b++){try
catch(c){}}return null;}function $type(a){if(a==undefined)
if(a.$family){return(a.$family.name=="number"&&!isFinite(a))?false:a.$family.name;
}if(a.nodeName){switch(a.nodeType){case 1:return"element";case 3:return(/\S/).test(a.nodeValue)?"textnode":"whitespace";}}else{if(typeof a.length=="number"){if(a.callee){return"arguments";
}else{if(a.item){return"collection";}}}}return typeof a;}function $unlink(c){var b;switch($type(c)){case"object":b={};for(var e in c){b[e]=$unlink(c[e]);
}break;case"hash":b=new Hash(c);break;case"array":b=[];for(var d=0,a=c.length;d<a;d++)
break;default:return c;}return b;}var Browser=$merge({Engine:
,Platform:
,Features:
,Plugins:{},Engines:{presto:function(){return(!window.opera)?false(arguments.callee.caller)?960(document.getElementsByClassName)?950:925));
},trident:function()
,webkit:function(){return(navigator.taintEnabled)?false(Browser.Features.xpath)?((Browser.Features.query)?525:420):419);
},gecko:function()
}},Browser||{});Browser.Platform[Browser.Platform.name]=true;
Browser.detect=function(){for(var b in this.Engines){var a=this.Engines[b]();if(a){this.Engine=
;this.Engine[b]=this.Engine[b+a]=true;
break;}}return
;};Browser.detect();Browser.Request=function(){return $try(function()
,function(){return new ActiveXObject("MSXML2.XMLHTTP");
},function()
);};Browser.Features.xhr=!!(Browser.Request());Browser.Plugins.Flash=(function(){var a=($try(function(){return navigator.plugins["Shockwave Flash"].description;
},function()
)||"0 r0").match(/\d+/g);return
;
})();function $exec(b){if(!b)
if(window.execScript)
else
return b;}Native.UID=1;
var $uid=(Browser.Engine.trident)?function(a)
:function(a)
;var Window=new Native({name:"Window",legacy:(Browser.Engine.trident)?null:window.Window,initialize:function(a){$uid(a);
if(!a.Element){a.Element=$empty;if(Browser.Engine.webkit)
a.Element.prototype=(Browser.Engine.webkit)?window["[[DOMElement.prototype]]"]:{};
}a.document.window=a;return $extend(a,Window.Prototype);},afterImplement:function(b,a){window[b]=Window.Prototype[b]=a;}});Window.Prototype={$family:{name:"window"}};
new Window(window);var Document=new Native({name:"Document",legacy:(Browser.Engine.trident)?null:window.Document,initialize:function(a){$uid(a);a.head=a.getElementsByTagName("head")[0];
a.html=a.getElementsByTagName("html")[0];if(Browser.Engine.trident&&Browser.Engine.version<=4){$try(function()
if(Browser.Engine.trident){a.window.attachEvent("onunload",function()
return $extend(a,Document.Prototype);},afterImplement:function(b,a){document[b]=Document.Prototype[b]=a;}});Document.Prototype={$family:{name:"document"}};
new Document(document);Array.implement({every:function(c,d){for(var b=0,a=this.length;b<a;b++){if(!c.call(d,this[b],b,this)){return false;}}return true;
},filter:function(d,e){var c=[];for(var b=0,a=this.length;b<a;b++){if(d.call(e,this[b],b,this)){c.push(this[b]);}}return c;},clean:function(){return this.filter($defined);
},indexOf:function(c,d){var a=this.length;for(var b=(d<0)?Math.max(0,a+d):d||0;b<a;b++){if(this[b]===c){return b;}}return -1;},map:function(d,e){var c=[];
for(var b=0,a=this.length;b<a;b++)
return c;},some:function(c,d){for(var b=0,a=this.length;b<a;b++){if(c.call(d,this[b],b,this))
return false;},associate:function(c){var d={},b=Math.min(this.length,c.length);for(var a=0;a<b;a++)
return d;},link:function(c){var a={};
for(var e=0,b=this.length;e<b;e++){for(var d in c){if(c[d](this[e]))
}}return a;},contains:function(a,b){return this.indexOf(a,b)!=-1;
},extend:function(c){for(var b=0,a=c.length;b<a;b++)
return this;},getLast:function()
,getRandom:function(){return(this.length)?this[$random(0,this.length-1)]:null;
},include:function(a){if(!this.contains(a))
return this;},combine:function(c){for(var b=0,a=c.length;b<a;b++)
return this;
},erase:function(b){for(var a=this.length;a--;a){if(this[a]===b){this.splice(a,1);}}return this;},empty:function()
,flatten:function(){var d=[];
for(var b=0,a=this.length;b<a;b++){var c=$type(this[b]);if(!c)
d=d.concat((c=="array"||c=="collection"||c=="arguments")?Array.flatten(this[b]):this[b]);
}return d;},hexToRgb:function(b){if(this.length!=3)
var a=this.map(function(c){if(c.length==1)
return c.toInt(16);});return(b)?a:"rgb("a")";
},rgbToHex:function(d){if(this.length<3)
if(this.length==4&&this[3]==0&&!d)
var b=[];for(var a=0;a<3;a++)
return(d)?b:"#"+b.join("");}});Function.implement({extend:function(a){for(var b in a)
return this;},create:function(b){var a=this;
b=b||{};return function(d){var c=b.arguments;c=(c!=undefined)?$splat(c):Array.slice(arguments,(b.event)?1:0);if(b.event){c=[d||window.event].extend(c);
}var e=function()
;if(b.delay)
if(b.periodical)
if(b.attempt)
;},run:function(a,b)
,pass:function(a,b){return this.create(
);},bind:function(b,a){return this.create(
);
},bindWithEvent:function(b,a){return this.create(
);},attempt:function(a,b){return this.create(
)();
},delay:function(b,c,a){return this.create(
)();},periodical:function(c,b,a){return this.create(
)();
}});Number.implement({limit:function(b,a)
,round:function(a)
,times:function(b,c){for(var a=0;
a<this;a++){b.call(c,a,this);}},toFloat:function()
,toInt:function(a){return parseInt(this,a||10);}});Number.alias("times","each");
(function(b){var a={};b.each(function(c){if(!Number[c]){a[c]=function()
;}});Number.implement(a);
})(["abs","acos","asin","atan","atan2","ceil","cos","exp","floor","log","max","min","pow","sin","sqrt","tan"]);String.implement({test:function(a,b){return((typeof a=="string")?new RegExp(a,b):a).test(this);
},contains:function(a,b)
,trim:function()
,clean:function(){return this.replace(/\s+/g," ").trim();
},camelCase:function(){return this.replace(/-\D/g,function(a)
);},hyphenate:function(){return this.replace(/[A-Z]/g,function(a)
,capitalize:function(){return this.replace(/\b[a-z]/g,function(a)
);},escapeRegExp:function(){return this.replace(/([-.*+?^${}()|[]\/\\])/g,"
$1");
},toInt:function(a)
,toFloat:function()
,hexToRgb:function(b){var a=this.match(/^#?(\w
)(\w
)(\w
)$/);
return(a)?a.slice(1).hexToRgb(b):null;},rgbToHex:function(b){var a=this.match(/\d
/g);return(a)?a.rgbToHex(b):null;},stripScripts:function(b){var a="";
var c=this.replace(/<script[^>]>([\s\S]?)<\/script>/gi,function()
);if(b===true){$exec(a);}else{if($type(b)=="function")
return c;},substitute:function(a,b){return this.replace(b||(/\\?{([^{}]+)}/g),function(d,c){if(d.charAt(0)=="
")
return(a[c]!=undefined)?a[c]:"";
});}});Hash.implement({has:Object.prototype.hasOwnProperty,keyOf:function(b){for(var a in this){if(this.hasOwnProperty(a)&&this[a]===b){return a;}}return null;
},hasValue:function(a)
,extend:function(a){Hash.each(a||{},function(c,b)
,this);return this;},combine:function(a){Hash.each(a||{},function(c,b)
,erase:function(a){if(this.hasOwnProperty(a))
return this;},get:function(a){return(this.hasOwnProperty(a))?this[a]:null;
},set:function(a,b){if(!this[a]||this.hasOwnProperty(a))
return this;},empty:function(){Hash.each(this,function(b,a)
,this);
return this;},include:function(a,b){if(this[a]==undefined)
return this;},map:function(b,c){var a=new Hash;Hash.each(this,function(e,d)
,filter:function(b,c){var a=new Hash;Hash.each(this,function(e,d){if(b.call(c,e,d,this)){a.set(d,e);}},this);return a;},every:function(b,c){for(var a in this){if(this.hasOwnProperty(a)&&!b.call(c,this[a],a))
return true;},some:function(b,c){for(var a in this){if(this.hasOwnProperty(a)&&b.call(c,this[a],a)){return true;}}return false;},getKeys:function(){var a=[];
Hash.each(this,function(c,b)
);return a;},getValues:function(){var a=[];Hash.each(this,function(b)
);return a;},toQueryString:function(a){var b=[];
Hash.each(this,function(f,e){if(a)
var d;switch($type(f)){case"object":d=Hash.toQueryString(f,e);break;case"array":var c={};f.each(function(h,g)
if(f!=undefined){b.push(d);}});return b.join("&");}});Hash.alias(
);
var Event=new Native({name:"Event",initialize:function(a,f){f=f||window;var k=f.document;a=a||f.event;if(a.$extended)
this.$extended=true;var j=a.type;
var g=a.target||a.srcElement;while(g&&g.nodeType==3)
if(j.test(/key/)){var b=a.which||a.keyCode;var m=Event.Keys.keyOf(b);if(j=="keydown"){var d=b-111;
if(d>0&&d<13){m="f"+d;}}m=m||String.fromCharCode(b).toLowerCase();}else{if(j.match(/(click|mouse|menu)/i)){k=(!k.compatMode||k.compatMode=="CSS1Compat")?k.html:k.body;
var i=
;var c=
;
if(j.match(/DOMMouseScroll|mousewheel/))
var e=(a.which==3)||(a.button==2);var l=null;if(j.match(/over|out/)){switch(j)
if(!(function(){while(l&&l.nodeType==3)
return true;}).create(
)())
}}return $extend(this,
);
}});Event.Keys=new Hash(
);Event.implement({stop:function(){return this.stopPropagation().preventDefault();
},stopPropagation:function(){if(this.event.stopPropagation)
else
return this;},preventDefault:function(){if(this.event.preventDefault){this.event.preventDefault();
}else
return this;}});function Class(b){if(b instanceof Function){b=
;}var a=function(){Object.reset(this);if(a._prototyping)
.extend(this);
a.implement(b);a.constructor=Class;a.prototype.constructor=a;return a;}Function.prototype.protect=function()
;Object.reset=function(a,c){if(c==null){for(var e in a)
delete a[c];switch($type(a[c])){case"object":var d=function(){};d.prototype=a[c];var b=new d;a[c]=Object.reset(b);break;case"array":a[c]=$unlink(a[c]);
break;}return a;};new Native(
).extend({instantiate:function(b){b._prototyping=true;var a=new b;delete b._prototyping;return a;
},wrap:function(a,b,c){if(c._origin)
return function(){if(c._protected&&this._current==null)
.extend({_owner:a,_origin:c,_name:b});
}});Class.implement({implement:function(a,d){if($type(a)=="object"){for(var e in a)
return this;}var f=Class.Mutators[a];if(f){d=f.call(this,d);
if(d==null){return this;}}var c=this.prototype;switch($type(d)){case"function":if(d._hidden)
c[a]=Class.wrap(this,a,d);break;case"object":var b=c[a];
if($type(b)=="object"){$mixin(b,d);}else
break;case"array":c[a]=$unlink(d);break;default:c[a]=d;}return this;}});Class.Mutators={Extends:function(a){this.parent=a;
this.prototype=Class.instantiate(a);this.implement("parent",function(){var b=this.caller._name,c=this.caller._owner.parent.prototype[b];if(!c)
.protect());},Implements:function(a){$splat(a).each(function(b){if(b instanceof Function)
this.implement(b);
},this);}};var Chain=new Class({$chain:[],chain:function()
,callChain:function(){return(this.$chain.length)?this.$chain.shift().apply(this,arguments):false;
},clearChain:function(){this.$chain.empty();return this;}});var Events=new Class({$events:{},addEvent:function(c,b,a){c=Events.removeOn(c);if(b!=$empty){this.$events[c]=this.$events[c]||[];
this.$events[c].include(b);if(a){b.internal=true;}}return this;},addEvents:function(a){for(var b in a)
return this;},fireEvent:function(c,b,a){c=Events.removeOn(c);
if(!this.$events||!this.$events[c])
this.$events[c].each(function(d){d.create(
)();},this);return this;},removeEvent:function(b,a){b=Events.removeOn(b);
if(!this.$events[b])
if(!a.internal)
return this;},removeEvents:function(c){var d;if($type(c)=="object"){for(d in c)
if(c)
for(d in this.$events){if(c&&c!=d)
var b=this.$events[d];for(var a=b.length;a--;a)
return this;}});Events.removeOn=function(a){return a.replace(/^on([A-Z])/,function(b,c)
);};var Options=new Class({setOptions:function(){this.options=$merge.run([this.options].extend(arguments));
if(!this.addEvent)
for(var a in this.options){if($type(this.options[a])Unable to render embedded object: File (="function") not found.(/^on[A-Z]/).test(a))
this.addEvent(a,this.options[a]);
delete this.options[a];}return this;}});var Element=new Native({name:"Element",legacy:window.Element,initialize:function(a,b){var c=Element.Constructors.get(a);
if(c)
if(typeof a=="string")
return document.id(a).set(b);},afterImplement:function(a,b){Element.Prototype[a]=b;
if(Array[a])
Elements.implement(a,function(){var c=[],g=true;for(var e=0,d=this.length;e<d;e++){var f=this[e][a].apply(this[e],arguments);c.push(f);
if(g){g=($type(f)=="element");}}return(g)?new Elements(c):c;});}});Element.Prototype={$family:{name:"element"}};Element.Constructors=new Hash;var IFrame=new Native({name:"IFrame",generics:false,initialize:function(){var f=Array.link(arguments,
);
var d=f.properties||{};var c=document.id(f.iframe);var e=d.onload||$empty;delete d.onload;d.id=d.name=$pick(d.id,d.name,c?(c.id||c.name):"IFrame_"+$time());
c=new Element(c||"iframe",d);var b=function(){var g=$try(function()
);if(!g||g==window.location.host)
e.call(c.contentWindow,c.contentWindow.document);};var a=$try(function(){return c.contentWindow;
});((a&&a.document.body)||window.frames[d.id])?b():c.addListener("load",b);return c;}});var Elements=new Native({initialize:function(f,b){b=$extend(
,b);
f=f||[];if(b.ddup||b.cash){var g={},e=[];for(var c=0,a=f.length;c<a;c++){var d=document.id(f[c],!b.cash);if(b.ddup){if(g[d.uid])
g[d.uid]=true;
}if(d){e.push(d);}}f=e;}return(b.cash)?$extend(f,this):f;}});Elements.implement({filter:function(a,b){if(!a)
return new Elements(Array.filter(this,(typeof a=="string")?function(c){return c.match(a);
}:a,b));}});Document.implement({newElement:function(a,b){if(Browser.Engine.trident&&b){["name","type","checked"].each(function(c){if(!b[c])
a+=" "c'="'b[c]'"';
if(c!="checked"){delete b[c];}});a="<"a">";}return document.id(this.createElement(a)).set(b);},newTextNode:function(a){return this.createTextNode(a);
},getDocument:function()
,getWindow:function()
,id:(function(){var a={string:function(d,c,b){d=b.getElementById(d);return(d)?a.element(d,c):null;
},element:function(b,e){$uid(b);if(Unable to render embedded object: File (e&&!b.$family&&) not found.(/^object|embed$/i).test(b.tagName)){var c=Element.Prototype;for(var d in c){b[d]=c[d];}}return b;},object:function(c,d,b){if(c.toElement){return a.element(c.toElement(b),d);
}return null;}};a.textnode=a.whitespace=a.window=a.document=$arguments(0);return function(c,e,d){if(c&&c.$family&&c.uid)
var b=$type(c);return(a[b])?a[b](c,e,d||document):null;
};})()});if(window.$==null){Window.implement({$:function(a,b){return document.id(a,b,this.document);}});}Window.implement({$$:function(a){if(arguments.length==1&&typeof a=="string"){return this.document.getElements(a);
}var f=[];var c=Array.flatten(arguments);for(var d=0,b=c.length;d<b;d++){var e=c[d];switch($type(e))
return new Elements(f);},getDocument:function()
,getWindow:function(){return this;}});Native.implement([Element,Document],{getElement:function(a,b){return document.id(this.getElements(a,true)[0]||null,b);
},getElements:function(a,d){a=a.split(",");var c=[];var b=(a.length>1);a.each(function(e){var f=this.getElementsByTagName(e.trim());(b)?c.extend(f):c=f;
},this);return new Elements(c,
);}});(function(){var h={},f={};var i=
;
var c=function(l){return(f[l]||(f[l]={}));};var g=function(n,l){if(!n)
var m=n.uid;if(Browser.Engine.trident){if(n.clearAttributes){var q=l&&n.cloneNode(false);
n.clearAttributes();if(q){n.mergeAttributes(q);}}else{if(n.removeEvents){n.removeEvents();}}if((/object/i).test(n.tagName)){for(var o in n){if(typeof n[o]=="function")
Element.dispose;}}if(!m)
h[m]=f[m]=null;};var d=function(){Hash.each(h,g);if(Browser.Engine.trident){$A(document.getElementsByTagName("object")).each(g);
}if(window.CollectGarbage)
h=f=null;};var j=function(n,l,s,m,p,r){var o=n[s||l];var q=[];while(o){if(o.nodeType==1&&(!m||Element.match(o,m))){if(!p)
o=o[l];}return(p)?new Elements(q,
):null;};var e=
;
var b=["compact","nowrap","ismap","declare","noshade","checked","disabled","readonly","multiple","selected","noresize","defer"];var k=["value","type","defaultValue","accessKey","cellPadding","cellSpacing","colSpan","frameBorder","maxLength","readOnly","rowSpan","tabIndex","useMap"];
b=b.associate(b);Hash.extend(e,b);Hash.extend(e,k.associate(k.map(String.toLowerCase)));var a={before:function(m,l){if(l.parentNode)
,after:function(m,l){if(!l.parentNode)
var n=l.nextSibling;?l.parentNode.insertBefore(m,n):l.parentNode.appendChild(m);},bottom:function(m,l){l.appendChild(m);
},top:function(m,l){var n=l.firstChild;?l.insertBefore(m,n):l.appendChild(m);}};a.inside=a.bottom;Hash.each(a,function(l,m){m=m.capitalize();Element.implement("inject"+m,function
);Element.implement("grab"+m,function
);});Element.implement({set:function(o,m){switch($type(o)){case"object":for(var n in o)
return this;},get:function(m)
,erase:function(m)
,setProperty:function(m,n){var l=e[m];if(n==undefined)
if(l&&b[m])
(l)?this[l]=n:this.setAttribute(m,""+n);
return this;},setProperties:function(l){for(var m in l)
return this;},getProperty:function(m)
,getProperties:function()
,removeProperty:function(m)
,removeProperties:function(){Array.each(arguments,this.removeProperty,this);return this;
},hasClass:function(l)
,addClass:function(l){if(!this.hasClass(l))
,removeClass:function(l)
,toggleClass:function(l){return this.hasClass(l)?this.removeClass(l):this.addClass(l);
},adopt:function(){Array.flatten(arguments).each(function(l){l=document.id(l,true);if(l){this.appendChild(l);}},this);return this;},appendText:function(m,l){return this.grab(this.getDocument().newTextNode(m),l);
},grab:function(m,l)
,inject:function(m,l)
,replaces:function(l)
,wraps:function(m,l)
,getPrevious:function(l,m){return j(this,"previousSibling",null,l,false,m);
},getAllPrevious:function(l,m)
,getNext:function(l,m)
,getAllNext:function(l,m){return j(this,"nextSibling",null,l,true,m);
},getFirst:function(l,m)
,getLast:function(l,m){return j(this,"previousSibling","lastChild",l,false,m);
},getParent:function(l,m)
,getParents:function(l,m)
,getSiblings:function(l,m){return this.getParent().getChildren(l,m).erase(this);
},getChildren:function(l,m)
,getWindow:function()
,getDocument:function(){return this.ownerDocument;
},getElementById:function(o,n){var m=this.ownerDocument.getElementById(o);if(!m)
for(var l=m.parentNode;l!=this;l=l.parentNode){if(!l)
return document.id(m,n);},getSelected:function(){return new Elements($A(this.options).filter(function(l)
));},getComputedStyle:function(m){if(this.currentStyle)
,toQueryString:function(){var l=[];
this.getElements("input, select, textarea",true).each(function(m){if(!m.name||m.disabled||m.type=="submit"||m.type=="reset"||m.type=="file")
var n=(m.tagName.toLowerCase()=="select")?Element.getSelected(m).map(function(o){return o.value;
})(m.type=="radio"||m.type=="checkbox")&&Unable to render embedded object: File (m.value;$splat(n).each(function(o){if(typeof o) not found.="undefined")
);});return l.join("&");},clone:function(o,l){o=o!==false;var r=this.cloneNode(o);var n=function(v,u){if(!l)
if(Browser.Engine.trident){v.clearAttributes();
v.mergeAttributes(u);v.removeAttribute("uid");if(v.options){var w=v.options,s=u.options;for(var t=w.length;t--
}}var x=i[u.tagName.toLowerCase()];
if(x&&u[x]){v[x]=u[x];}};if(o){var p=r.getElementsByTagName(""),q=this.getElementsByTagName("");for(var m=p.length;m--{n(p[m],q[m]);}}n(r,this);return document.id(r);
},destroy:function()
,empty:function(){$A(this.childNodes).each(function(l)
,dispose:function()
,hasChild:function(l){l=document.id(l,true);if(!l){return false;
}if(Browser.Engine.webkit&&Browser.Engine.version<420)
return(this.contains)?(this!=l&&this.contains(l)):!!(this.compareDocumentPosition(l)&16);
},match:function(l){return(!l||(l==this)||(Element.get(this,"tag")==l));}});Native.implement([Element,Window,Document],{addListener:function(o,n){if(o=="unload"){var l=n,m=this;
n=function()
;}else
if(this.addEventListener)
else
,removeListener:function(m,l){if(this.removeEventListener)
else
return this;
},retrieve:function(m,l){var o=c(this.uid),n=o[m];if(l!=undefined&&n==undefined)
return $pick;},store:function(m,l)
,eliminate:function(l){var m=c(this.uid);delete m[l];return this;}});window.addListener("unload",d);})();Element.Properties=new Hash;Element.Properties.style={set:function(a){this.style.cssText=a;
},get:function()
,erase:function(){this.style.cssText="";}};Element.Properties.tag={get:function()
;Element.Properties.html=(function(){var c=document.createElement("div");var a=
;
a.thead=a.tfoot=a.tbody;var b={set:function(){var e=Array.flatten(arguments).join("");var f=Browser.Engine.trident&&a[this.get("tag")];if(f){var g=c;g.innerHTML=f[1]+e+f[2];
for(var d=f[0];d--
this.empty().adopt(g.childNodes);}else
}};b.erase=b.set;return b;})();if(Browser.Engine.webkit&&Browser.Engine.version<420){Element.Properties.text={get:function(){if(this.innerText){return this.innerText;
}var a=this.ownerDocument.newElement("div",
).inject(this.ownerDocument.body);var b=a.innerText;a.destroy();return b;}};}Element.Properties.events={set:function(a)
;Native.implement([Element,Window,Document],{addEvent:function(e,g){var h=this.retrieve("events",{});h[e]=h[e]||
;if(h[e].keys.contains(g)){return this;
}h[e].keys.push(g);var f=e,a=Element.Events.get(e),c=g,i=this;if(a){if(a.onAdd)
if(a.condition){c=function(j){if(a.condition.call(this,j))
;}f=a.base||f;}var d=function()
;var b=Element.NativeEvents[f];if(b){if(b==2){d=function(j){j=new Event(j,i.getWindow());
if(c.call(i,j)===false){j.stop();}};}this.addListener(f,d);}h[e].values.push(d);return this;},removeEvent:function(c,b){var a=this.retrieve("events");if(!a||!a[c]){return this;
}var f=a[c].keys.indexOf(b);if(f==-1)
a[c].keys.splice(f,1);var e=a[c].values.splice(f,1)[0];var d=Element.Events.get(c);if(d){if(d.onRemove)
return(Element.NativeEvents[c])?this.removeListener(c,e):this;},addEvents:function(a){for(var b in a)
return this;
},removeEvents:function(a){var c;if($type(a)=="object"){for(c in a)
return this;}var b=this.retrieve("events");if(!b){return this;
}if(!a){for(c in b)
this.eliminate("events");}else{if(b[a]){while(b[a].keys[0])
b[a]=null;}}return this;
},fireEvent:function(d,b,a){var c=this.retrieve("events");if(!c||!c[d])
c[d].keys.each(function(e){e.create(
)();
},this);return this;},cloneEvents:function(d,a){d=document.id(d);var c=d.retrieve("events");if(!c)
if(!a){for(var b in c)
else{if(c[a]){c[a].keys.each(function(e)
,this);}}return this;}});Element.NativeEvents=
;
(function(){var a=function(b){var c=b.relatedTarget;if(c==undefined)
if(c===false)
return($type(this)Unable to render embedded object: File (="document"&&c) not found.=this&&c.prefix!="xul"&&!this.hasChild(c));
};Element.Events=new Hash({mouseenter:
,mouseleave:
,mousewheel:{base:(Browser.Engine.gecko)?"DOMMouseScroll":"mousewheel"}});
})();Element.Properties.styles={set:function(a){this.setStyles(a);}};Element.Properties.opacity={set:function(a,b){if(Unable to render embedded object: File (b){if(a==0){if(this.style.visibility) not found.="hidden")
else{if(this.style.visibility!="visible")
}}if(!this.currentStyle||!this.currentStyle.hasLayout)
if(Browser.Engine.trident)
,get:function(){return this.retrieve("opacity",1);}};Element.implement({setOpacity:function(a){return this.set("opacity",a,true);
},getOpacity:function()
,setStyle:function(b,a){switch(b){case"opacity":return this.set("opacity",parseFloat(a));case"float":b=(Browser.Engine.trident)?"styleFloat":"cssFloat";
}b=b.camelCase();if($type(a)!="string"){var c=(Element.Styles.get(b)||"@").split(" ");a=$splat(a).map(function(e,d){if(!c[d])
return($type(e)=="number")?c[d].replace("@",Math.round(e)):e;
}).join(" ");}else{if(a==String(Number(a))){a=Math.round(a);}}this.style[b]=a;return this;},getStyle:function(g){switch(g)
g=g.camelCase();var a=this.style[g];if(Unable to render embedded object: File ($chk(a)){a=[];for(var f in Element.ShortStyles){if(g) not found.=f){continue;
}for(var e in Element.ShortStyles[f])
return a.join(" ");}a=this.getComputedStyle(g);}if(a){a=String(a);var c=a.match(/rgba?([\d\s,]+)/);
if(c){a=a.replace(c[0],c[0].rgbToHex());}}if(Browser.Engine.presto||(Browser.Engine.trident&&!$chk(parseInt(a,10)))){if(g.test(/^(height|width)$/)){var b=(g=="width")?["left","right"]:["top","bottom"],d=0;
b.each(function(h)
,this);return this["offset"+g.capitalize()]-d+"px";
}if((Browser.Engine.presto)&&String(a).test("px"))
if(g.test(/(border(.+)Width|margin|padding)/)){return"0px";}}return a;},setStyles:function(b){for(var a in b)
,getStyles:function(){var a={};Array.flatten(arguments).each(function(b)
,this);return a;}});Element.Styles=new Hash(
);
Element.ShortStyles={margin:{},padding:{},border:{},borderWidth:{},borderStyle:{},borderColor:{}};["Top","Right","Bottom","Left"].each(function(g){var f=Element.ShortStyles;
var b=Element.Styles;["margin","padding"].each(function(h)
);var e="border"g;f.border[e]=b[e]="@px @ rgb(@, @, @)";var d=e"Width",a=e+"Style",c=e+"Color";
f[e]={};f.borderWidth[d]=f[e][d]=b[d]="@px";f.borderStyle[a]=f[e][a]=b[a]="@";f.borderColor[c]=f[e][c]=b[c]="rgb(@, @, @)";});(function(){Element.implement({scrollTo:function(h,i){if(b(this)){this.getWindow().scrollTo(h,i);
}else
return this;},getSize:function(){if(b(this))
return
;
},getScrollSize:function(){if(b(this))
return
;},getScroll:function(){if(b(this)){return this.getWindow().getScroll();
}return
;},getScrolls:function(){var i=this,h=
;while(i&&!b)
,getOffsetParent:function(){var h=this;if(b(h))
if(!Browser.Engine.trident)
while((h=h.parentNode)&&Unable to render embedded object: File (b(h)){if(d(h,"position")) not found.="static")
return null;},getOffsets:function(){if(this.getBoundingClientRect){var j=this.getBoundingClientRect(),m=document.id(this.getDocument().documentElement),p=m.getScroll(),k=this.getScrolls(),i=this.getScroll(),h=(d(this,"position")=="fixed");
return
;}var l=this,n=
;if(b(this)){return n;
}while(l&&!b(l)){n.x+=l.offsetLeft;n.y+=l.offsetTop;if(Browser.Engine.gecko){if(!f(l))
var o=l.parentNode;if(o&&d(o,"overflow")!="visible"){n.x+=c(o);
n.y+=g(o);}}else{if(l!=this&&Browser.Engine.webkit){n.x+=c(l);n.y+=g(l);}}l=l.offsetParent;}if(Browser.Engine.gecko&&!f(this))
,getPosition:function(k){if(b(this)){return
;}var l=this.getOffsets(),i=this.getScrolls();var h=
;var j=(k&&(k=document.id(k)))?k.getPosition():
;
return
;},getCoordinates:function(j){if(b(this))
var h=this.getPosition(j),i=this.getSize();
var k=
;k.right=k.left+k.width;k.bottom=k.top+k.height;return k;},computePosition:function(h){return
;
},setPosition:function(h){return this.setStyles(this.computePosition(h));}});Native.implement([Document,Window],{getSize:function(){if(Browser.Engine.presto||Browser.Engine.webkit){var i=this.getWindow();
return
;}var h=a(this);return
;},getScroll:function(){var i=this.getWindow(),h=a(this);
return
;},getScrollSize:function(){var i=a(this),h=this.getSize();return
;
},getPosition:function(){return
;},getCoordinates:function(){var h=this.getSize();return
;
}});var d=Element.getComputedStyle;function e(h,i)
function f(h)
function g(h){return e(h,"border-top-width");
}function c(h)
function b(h)
function a(h)
)();Element.alias("setPosition","position");Native.implement([Window,Document,Element],{getHeight:function()
,getWidth:function(){return this.getSize().x;
},getScrollTop:function()
,getScrollLeft:function()
,getScrollHeight:function(){return this.getScrollSize().y;
},getScrollWidth:function()
,getTop:function()
,getLeft:function()
);Native.implement([Document,Element],{getElements:function(h,g){h=h.split(",");var c,e={};for(var d=0,b=h.length;d<b;d++){var a=h[d],f=Selectors.Utils.search(this,a,e);
if(d!=0&&f.item)
c=(d==0)?f:(c.item)?$A(c).concat(f):c.concat(f);}return new Elements(c,
);}});Element.implement({match:function(b){if(!b||(b==this)){return true;
}var d=Selectors.Utils.parseTagAndID(b);var a=d[0],e=d[1];if(!Selectors.Filters.byID(this,e)||!Selectors.Filters.byTag(this,a))
var c=Selectors.Utils.parseSelector(b);
return(c)?Selectors.Utils.filter(this,c,{}):true;}});var Selectors={Cache:{nth:{},parsed:{}}};Selectors.RegExps=
;
Selectors.Utils={chk:function(b,c){if(!c)
var a=$uid(b);if(!c[a])
return false;},parseNthArgument:function(h){if(Selectors.Cache.nth[h]){return Selectors.Cache.nth[h];
}var e=h.match(/^([+-]?\d*)?([a-z]+)?([+-]?\d*)?$/);if(!e)
var g=parseInt(e[1],10);var d=(g||g===0)?g:1;var f=e[2]||false;var c=parseInt(e[3],10)||0;
if(d!=0){c--;while(c<1)
while(c>=d){c-=d;}}else
switch(f){case"n":e=
;break;case"odd":e=
;
break;case"even":e=
;break;case"first":e=
;break;case"last":e=
;break;case"only":e=
;
break;default:e=
;}return Selectors.Cache.nth[h]=e;},parseSelector:function(e){if(Selectors.Cache.parsed[e]){return Selectors.Cache.parsed[e];
}var d,h=
;while((d=Selectors.RegExps.combined.exec(e))){var i=d[1],g=d[2],f=d[3],b=d[5],c=d[6],j=d[7];if{h.classes.push;
}else{if(c){var a=Selectors.Pseudo.get(c);if(a){h.pseudos.push(
);}else{h.attributes.push(
);}}else{if(g){h.attributes.push(
);
}}}}if(!h.classes.length)
if(!h.attributes.length)
if(!h.pseudos.length)
if(!h.classes&&!h.attributes&&!h.pseudos)
,parseTagAndID:function(b){var a=b.match(Selectors.RegExps.tag);var c=b.match(Selectors.RegExps.id);return[(a)?a[1]:"*",(c)?c[1]:false];
},filter:function(f,c,e){var d;if(c.classes){for(d=c.classes.length;d--;d){var g=c.classes[d];if(!Selectors.Filters.byClass(f,g))
}}if(c.attributes){for(d=c.attributes.length;
d--;d){var b=c.attributes[d];if(!Selectors.Filters.byAttribute(f,b.name,b.operator,b.value))
}}if(c.pseudos){for(d=c.pseudos.length;d--;d){var a=c.pseudos[d];
if(!Selectors.Filters.byPseudo(f,a.parser,a.argument,e))
}}return true;},getByTagAndID:function(b,a,d){if(d)
else{return b.getElementsByTagName(a);}},search:function(o,h,t){var b=[];var c=h.trim().replace(Selectors.RegExps.splitter,function(k,j,i)
).split("");var p,e,A;for(var z=0,v=c.length;z<v;z++){var y=c[z];if(z==0&&Selectors.RegExps.quick.test)
var a=b[z-1];var q=Selectors.Utils.parseTagAndID;var B=q[0],r=q[1];if(z==0)
else{var d={},g=[];for(var x=0,w=p.length;
x<w;x++)
p=g;}var f=Selectors.Utils.parseSelector;if(f){e=[];for(var u=0,s=p.length;u<s;u++){A=p[u];if(Selectors.Utils.filter(A,f,t))
p=e;}}return p;}};Selectors.Getters={" ":function(h,g,j,a,e){var d=Selectors.Utils.getByTagAndID(g,j,a);for(var c=0,b=d.length;c<b;c++){var f=d[c];if(Selectors.Utils.chk(f,e))
return h;},">":function(h,g,j,a,f){var c=Selectors.Utils.getByTagAndID(g,j,a);for(var e=0,d=c.length;e<d;e++){var b=c[e];if(b.parentNode==g&&Selectors.Utils.chk(b,f))
return h;},"+":function(c,b,a,e,d){while((b=b.nextSibling)){if(b.nodeType==1){if(Selectors.Utils.chk(b,d)&&Selectors.Filters.byTag(b,a)&&Selectors.Filters.byID(b,e)){c.push(b);
}break;}}return c;},"~":function(c,b,a,e,d){while((b=b.nextSibling)){if(b.nodeType==1){if(!Selectors.Utils.chk(b,d))
if(Selectors.Filters.byTag(b,a)&&Selectors.Filters.byID(b,e)){c.push(b);
}}}return c;}};Selectors.Filters={byTag:function(b,a)
,byID:function(a,b){return(!b||(a.id&&a.id==b));
},byClass:function(b,a)
,byPseudo:function(a,d,c,b)
,byAttribute:function(c,d,b,e){var a=Element.prototype.getProperty.call(c,d);
if(!a)
if(!b||e==undefined)
switch(b)
return false;
}};Selectors.Pseudo=new Hash({checked:function()
,empty:function()
,not:function(a){return !Element.match(this,a);
},contains:function(a)
,"first-child":function()
,"last-child":function(){var a=this;
while((a=a.nextSibling)){if(a.nodeType==1){return false;}}return true;},"only-child":function(){var b=this;while((b=b.previousSibling)){if(b.nodeType==1)
var a=this;while((a=a.nextSibling)){if(a.nodeType==1){return false;}}return true;},"nth-child":function(g,e){g=(g==undefined)?"n":g;var c=Selectors.Utils.parseNthArgument(g);
if(c.special!="n")
var f=0;e.positions=e.positions||{};var d=$uid(this);if(!e.positions[d]){var b=this;
while((b=b.previousSibling)){if(b.nodeType!=1)
f++;var a=e.positions[$uid(b)];if(a!=undefined){f=a+f;break;}}e.positions[d]=f;}return(e.positions[d]%c.a==c.b);
},index:function(a){var b=this,c=0;while((b=b.previousSibling)){if(b.nodeType==1&&++c>a){return false;}}return(c==a);},even:function(b,a){return Selectors.Pseudo["nth-child"].call(this,"2n+1",a);
},odd:function(b,a)
,selected:function()
,enabled:function()
);Element.Events.domready={onAdd:function(a){if(Browser.loaded)
}};(function(){var b=function(){if(Browser.loaded)
Browser.loaded=true;
window.fireEvent("domready");document.fireEvent("domready");};window.addEvent("load",b);if(Browser.Engine.trident){var a=document.createElement("div");
(function(){($try(function()
))?b():arguments.callee.delay(50);})();
}else{if(Browser.Engine.webkit&&Browser.Engine.version<525){(function()
else
}})();var JSON=new Hash(this.JSON&&
).extend({$specialChars:
,$replaceChars:function(a){return JSON.$specialChars[a]||"
u00"Math.floor(a.charCodeAt()/16).toString(16)(a.charCodeAt()%16).toString(16);
},encode:function(b){switch($type(b)){case"string":return'"'b.replace(/[\x00-\x1f\\"]/g,JSON.$replaceChars)'"';case"array":return"["+String(b.map(JSON.encode).clean())+"]";
case"object":case"hash":var a=[];Hash.each(b,function(e,d){var c=JSON.encode(e);if(c){a.push(JSON.encode(d)+":"+c);}});return"
";case"number":case"boolean":return String(b);
case false:return"null";}return null;},decode:function(string,secure){if($type(string)!="string"||!string.length)
if(secure&&!(/^[,:\{\}\\[\\]0\-9.\\-\+Eaeflnr\-u \n\r\t]$/).test(string.replace(/
./g,"@").replace(/"[^"\\\n\r]"/g,""))){return null;
}return eval("("string")");}});Native.implement([Hash,Array,String,Number],{toJSON:function(){return JSON.encode(this);}});var Cookie=new Class({Implements:Options,options:
,initialize:function(b,a)
,write:function(b){b=encodeURIComponent(b);if(this.options.domain)
if(this.options.path){b+="; path="+this.options.path;
}if(this.options.duration)
if(this.options.secure)
,read:function()
,dispose:function(){new Cookie(this.key,$merge(this.options,
)).write("");return this;}});Cookie.write=function(b,c,a){return new Cookie(b,a).write(c);
};Cookie.read=function(a)
;Cookie.dispose=function(b,a)
;var Swiff=new Class({Implements:[Options],options:{id:null,height:1,width:1,container:null,properties:{},params:
,callBacks:{},vars:{}},toElement:function(){return this.object;
},initialize:function(l,m){this.instance="Swiff_"+$time();this.setOptions(m);m=this.options;var b=this.id=m.id||this.instance;var a=document.id(m.container);
Swiff.CallBacks[this.instance]={};var e=m.params,g=m.vars,f=m.callBacks;var h=$extend(
,m.properties);var k=this;for(var d in f){Swiff.CallBacks[this.instance][d]=(function{return function()
)(f[d]);g[d]="Swiff.CallBacks."this.instance"."+d;}e.flashVars=Hash.toQueryString(g);if(Browser.Engine.trident)
else
var j='<object id="'b'"';for(var i in h)
j+=">";for(var c in e){if(e[c])
j+="</object>";this.object=((a)?a.empty():new Element("div")).set("html",j).firstChild;},replaces:function(a)
,inject:function(a)
,remote:function()
);Swiff.CallBacks={};Swiff.remote=function(obj,fn)
;var Fx=new Class({Implements:[Chain,Events,Options],options:
,initialize:function(a){this.subject=this.subject||this;
this.setOptions(a);this.options.duration=Fx.Durations[this.options.duration]||this.options.duration.toInt();var b=this.options.wait;if(b===false)
,getTransition:function(){return function(a)
;},step:function(){var a=$time();if(a<this.time+this.options.duration)
else{this.set(this.compute(this.from,this.to,1));this.complete();}},set:function(a)
,compute:function(c,b,a){return Fx.compute(c,b,a);
},check:function(){if(!this.timer)
switch(this.options.link)
return false;},start:function(b,a){if(!this.check(b,a))
this.from=b;this.to=a;this.time=0;this.transition=this.getTransition();
this.startTimer();this.onStart();return this;},complete:function(){if(this.stopTimer())
return this;},cancel:function(){if(this.stopTimer())
,onStart:function()
,onComplete:function(){this.fireEvent("complete",this.subject);if(!this.callChain())
,onCancel:function()
,pause:function()
,resume:function()
,stopTimer:function(){if(!this.timer)
this.time=$time()-this.time;this.timer=$clear(this.timer);return true;},startTimer:function(){if(this.timer){return false;
}this.time=$time()-this.time;this.timer=this.step.periodical(Math.round(1000/this.options.fps),this);return true;}});Fx.compute=function(c,b,a){return(b-c)*a+c;
};Fx.Durations=
;Fx.CSS=new Class({Extends:Fx,prepare:function(d,e,b){b=$splat(b);var c=b[1];if(!$chk(c))
var a=b.map(this.parse);return
;},parse:function(a){a=$lambda(a)();a=(typeof a=="string")?a.split(" "):$splat(a);
return a.map(function(c){c=String(c);var b=false;Fx.CSS.Parsers.each(function(f,e){if(b)
var d=f.parse(c);if($chk(d)){b=
;}});
b=b||
;return b;});},compute:function(d,c,b){var a=[];(Math.min(d.length,c.length)).times(function(e){a.push(
);
});a.$family=
;return a;},serve:function(c,b){if($type(c)!="fx:css:value")
var a=[];c.each(function(d)
,render:function(a,d,c,b)
,search:function(a){if(Fx.CSS.Cache[a])
var b={};Array.each(document.styleSheets,function(e,d){var c=e.href;
if(c&&c.contains("://")&&!c.contains(document.domain))
var f=e.rules||e.cssRules;Array.each(f,function(j,g){if(!j.style)
var h=(j.selectorText)?j.selectorText.replace(/^\w+/,function{return i.toLowerCase();
}):null;if(!h||!h.test("^"a"$"))
Element.Styles.each(function(k,i){if(!j.style[i]||Element.ShortStyles[i])
k=String(j.style[i]);b[i]=(k.test(/^rgb/))?k.rgbToHex():k;
});});});return Fx.CSS.Cache[a]=b;}});Fx.CSS.Cache={};Fx.CSS.Parsers=new Hash({Color:{parse:function(a){if(a.match(/^#[0-9a-f]
$/i))
,compute:function(c,b,a){return c.map(function(e,d)
,serve:function(a){return a.map(Number);}},Number:{parse:parseFloat,compute:Fx.compute,serve:function(b,a){return(a)?b+a:b;}},String:{parse:$lambda(false),compute:$arguments(1),serve:$arguments(0)}});
Fx.Tween=new Class({Extends:Fx.CSS,initialize:function(b,a)
,set:function(b,a){if(arguments.length==1)
this.render(this.element,b,a,this.options.unit);return this;},start:function(c,e,d){if(!this.check(c,e,d))
);Element.Properties.tween={set:function(a){var b=this.retrieve("tween");if(b)
return this.eliminate("tween").store("tween:options",$extend(
,a));
},get:function(a){if(a||!this.retrieve("tween")){if(a||!this.retrieve("tween:options"))
this.store("tween",new Fx.Tween(this,this.retrieve("tween:options")));
}return this.retrieve("tween");}};Element.implement({tween:function(a,c,b)
,fade:function(c){var e=this.get("tween"),d="opacity",a;
c=$pick(c,"toggle");switch(c)
if(!a)
return this;},highlight:function(c,a){if(!a)
var b=this.get("tween");b.start("background-color",c||"#ffff88",a).chain(function()
.bind(this));return this;}});Fx.Morph=new Class({Extends:Fx.CSS,initialize:function(b,a){this.element=this.subject=document.id(b);this.parent(a);
},set:function(a){if(typeof a=="string")
for(var b in a)
return this;},compute:function(e,d,c){var a={};
for(var b in e)
return a;},start:function(b){if(!this.check(b))
if(typeof b=="string")
var e={},d={};
for(var c in b)
return this.parent(e,d);}});Element.Properties.morph={set:function(a){var b=this.retrieve("morph");
if(b)
return this.eliminate("morph").store("morph:options",$extend(
,a));},get:function(a){if(a||!this.retrieve("morph")){if(a||!this.retrieve("morph:options"))
return this.retrieve("morph");}};Element.implement({morph:function(a){this.get("morph").start(a);
return this;}});Fx.implement({getTransition:function(){var a=this.options.transition||Fx.Transitions.Sine.easeInOut;if(typeof a=="string"){var b=a.split(":");
a=Fx.Transitions;a=a[b[0]]||a[b[0].capitalize()];if(b[1]){a=a["ease"b[1].capitalize()(b[2]?b[2].capitalize():"")];}}return a;}});Fx.Transition=function(b,a){a=$splat(a);
return $extend(b,{easeIn:function(c)
,easeOut:function(c)
,easeInOut:function(c)
);};Fx.Transitions=new Hash(
);Fx.Transitions.extend=function(a){for(var b in a){Fx.Transitions[b]=new Fx.Transition(a[b]);}};Fx.Transitions.extend({Pow:function(b,a){return Math.pow(b,a[0]||6);
},Expo:function(a)
,Circ:function(a)
,Sine:function(a){return 1-Math.sin((1-a)*Math.PI/2);
},Back:function(b,a)
,Bounce:function(f){var e;for(var d=0,c=1;1;d+=c,c/=2){if(f>=(7-4*d)/11){e=c*c-Math.pow((11-6*d-11*f)/4,2);
break;}}return e;},Elastic:function(b,a){return Math.pow(2,10*--b)Math.cos(20*b*Math.PI(a[0]||1)/3);}});["Quad","Cubic","Quart","Quint"].each(function(b,a){Fx.Transitions[b]=new Fx.Transition(function(c)
);var Request=new Class({Implements:[Chain,Events,Options],options:{url:"",data:"",headers:
,async:true,format:false,method:"post",link:"ignore",isSuccess:null,emulation:true,urlEncoded:true,encoding:"utf-8",evalScripts:false,evalResponse:false,noCache:false},initialize:function(a)
,onStateChange:function(){if(this.xhr.readyState!=4||!this.running){return;
}this.running=false;this.status=0;$try(function()
.bind(this));this.xhr.onreadystatechange=$empty;if(this.options.isSuccess.call(this,this.status)){this.response=
;
this.success(this.response.text,this.response.xml);}else{this.response=
;this.failure();}},isSuccess:function(){return((this.status>=200)&&(this.status<300));
},processScripts:function(a){if(this.options.evalResponse||(/(ecma|java)script/).test(this.getHeader("Content-type")))
return a.stripScripts(this.options.evalScripts);
},success:function(b,a)
,onSuccess:function(){this.fireEvent("complete",arguments).fireEvent("success",arguments).callChain();
},failure:function()
,onFailure:function()
,setHeader:function(a,b)
,getHeader:function(a){return $try(function()
.bind(this));},check:function(){if(!this.running){return true;
}switch(this.options.link)
return false;},send:function(k){if(!this.check(k)){return this;
}this.running=true;var i=$type(k);if(i=="string"||i=="element"){k=
;}var d=this.options;k=$extend(
,k);var g=k.data,b=String(k.url),a=k.method.toLowerCase();
switch($type(g))
if(this.options.format)
if(this.options.emulation&&!["get","post"].contains(a))
if(this.options.urlEncoded&&a=="post")
if(this.options.noCache){var f="noCache="new Date().getTime();g=(g)?f"&"+g:f;
}var e=b.lastIndexOf("/");if(e>-1&&(e=b.indexOf("#"))>-1)
if(g&&a=="get")
this.xhr.open(a.toUpperCase(),b,this.options.async);
this.xhr.onreadystatechange=this.onStateChange.bind(this);this.headers.each(function(m,l){try
catch
,this);this.fireEvent("request");this.xhr.send(g);if(!this.options.async)
return this;},cancel:function(){if(!this.running){return this;
}this.running=false;this.xhr.abort();this.xhr.onreadystatechange=$empty;this.xhr=new Browser.Request();this.fireEvent("cancel");return this;}});(function(){var a={};
["get","post","put","delete","GET","POST","PUT","DELETE"].each(function(b){a[b]=function(){var c=Array.link(arguments,
);
return this.send($extend(c,
));};});Request.implement(a);})();Element.Properties.send={set:function(a){var b=this.retrieve("send");if(b){b.cancel();
}return this.eliminate("send").store("send:options",$extend(
,a));},get:function(a){if(a||!this.retrieve("send")){if(a||!this.retrieve("send:options"))
return this.retrieve("send");}};Element.implement({send:function(a){var b=this.get("send");
b.send(
);return this;}});Request.HTML=new Class({Extends:Request,options:
,processHTML:function(c){var b=c.match(/<body[^>]>([\s\S]?)<\/body>/i);
c=(b)?b[1]:c;var a=new Element("div");return $try(function(){var d="<root>"c"</root>",g;if(Browser.Engine.trident)
else
d=g.getElementsByTagName("root")[0];if(!d)
for(var f=0,e=d.childNodes.length;
f<e;f++){var h=Element.clone(d.childNodes[f],true,true);if(h){a.grab(h);}}return a;})||a.set("html",c);},success:function(d){var c=this.options,b=this.response;
b.html=d.stripScripts(function(e)
);var a=this.processHTML(b.html);b.tree=a.childNodes;b.elements=a.getElements("*");if(c.filter){b.tree=b.elements.filter(c.filter);
}if(c.update)
else{if(c.append){document.id(c.append).adopt(a.getChildren());}}if(c.evalScripts){$exec(b.javascript);
}this.onSuccess(b.tree,b.elements,b.html,b.javascript);}});Element.Properties.load={set:function(a){var b=this.retrieve("load");if(b)
return this.eliminate("load").store("load:options",$extend(
,a));
},get:function(a){if(a||!this.retrieve("load")){if(a||!this.retrieve("load:options"))
this.store("load",new Request.HTML(this.retrieve("load:options")));
}return this.retrieve("load");}};Element.implement({load:function(){this.get("load").send(Array.link(arguments,
));return this;
}});Request.JSON=new Class({Extends:Request,options:
,initialize:function(a){this.parent(a);this.headers.extend(
);
},success:function(a){this.response.json=JSON.decode(a,this.options.secure);this.onSuccess(this.response.json,a);}});
// Here starts ../inc/mootools-1.2.4.4-more.js
//MooTools More, <http://mootools.net/more>. Copyright (c) 2006-2009 Aaron Newton <http://clientcide.com/>, Valerio Proietti <http://mad4milk.net> & the MooTools team <http://mootools.net/developers>, MIT Style License.
MooTools.More=
;(function(){var c=this;var b=function(){if(c.console&&console.log){try{console.log.apply(console,arguments);
}catch(d){console.log(Array.slice(arguments));}}else
return this;};var a=function(){this.logged.push(arguments);return this;
};this.Log=new Class({logged:[],log:a,resetLog:function()
,enableLog:function(){this.log=b;this.logged.each(function(d)
,disableLog:function(){this.log=a;return this;}});Log.extend(new Log).enableLog();Log.logger=function()
)();Fx.Scroll=new Class({Extends:Fx,options:{offset:
,wheelStops:true},initialize:function(b,a){this.element=this.subject=document.id(b);this.parent(a);
var d=this.cancel.bind(this,false);if($type(this.element)!="element")
var c=this.element;if(this.options.wheelStops){this.addEvent("start",function(){c.addEvent("mousewheel",d);
},true);this.addEvent("complete",function()
,true);}},set:function(){var a=Array.flatten(arguments);if(Browser.Engine.gecko)
,compute:function(c,b,a){return[0,1].map(function(d)
);},start:function(c,g){if(!this.check(c,g)){return this;
}var e=this.element.getScrollSize(),b=this.element.getScroll(),d=
;for(var f in d){var a=e[f];if($chk(d[f])){d[f]=($type(d[f])=="number")?d[f]:a;
}else
d[f]+=this.options.offset[f];}return this.parent([b.x,b.y],[d.x,d.y]);},toTop:function()
,toLeft:function(){return this.start(0,false);
},toRight:function()
,toBottom:function()
,toElement:function(b)
,scrollIntoView:function(c,e,d){e=e?$splat(e):["x","y"];var h={};c=document.id(c);var f=c.getPosition(this.element);var i=c.getSize();
var g=this.element.getScroll();var a=this.element.getSize();var b=
;["x","y"].each(function(j){if(e.contains(j)){if(b[j]>g[j]+a[j]){h[j]=b[j]-a[j];
}if(f[j]<g[j]){h[j]=f[j];}}if(h[j]==null)
if(d&&d[j]){h[j]=h[j]+d[j];}},this);if(h.x!=g.x||h.y!=g.y)
return this;},scrollToCenter:function(c,e,d){e=e?$splat(e):["x","y"];
c=$(c);var h={},f=c.getPosition(this.element),i=c.getSize(),g=this.element.getScroll(),a=this.element.getSize(),b=
;["x","y"].each(function(j){if(e.contains(j)){h[j]=f[j]-(a[j]-i[j])/2;
}if(h[j]==null)
if(d&&d[j]){h[j]=h[j]+d[j];}},this);if(h.x!=g.x||h.y!=g.y)
return this;}});Request.JSONP=new Class({Implements:[Chain,Events,Options,Log],options:{url:"",data:{},retries:0,timeout:0,link:"ignore",callbackKey:"callback",injectScript:document.head},initialize:function(a){this.setOptions(a);
if(this.options.log)
this.running=false;this.requests=0;this.triesRemaining=[];},check:function(){if(!this.running)
switch(this.options.link)
return false;},send:function(c){if(!$chk(arguments[1])&&!this.check(c)){return this;
}var e=$type(c),a=this.options,b=$chk(arguments[1])?arguments[1]:this.requests++;if(e=="string"||e=="element"){c=
;}c=$extend(
,c);
if(!$chk(this.triesRemaining[b]))
var d=this.triesRemaining[b];(function(){var f=this.getScript(c);this.log("JSONP retrieving script with url: "+f.get("src"));
this.fireEvent("request",f);this.running=true;(function(){if(d){this.triesRemaining[b]=d-1;if(f)
else{if(f&&this.options.timeout)
}}).delay(this.options.timeout,this);}).delay(Browser.Engine.trident?50:0,this);
return this;},cancel:function(){if(!this.running)
this.running=false;this.fireEvent("cancel");return this;},getScript:function(c){var b=Request.JSONP.counter,d;
Request.JSONP.counter++;switch($type(c.data)){case"element":d=document.id(c.data).toQueryString();break;case"object":case"hash":d=Hash.toQueryString(c.data);
}var e=c.url+(c.url.test("
?")?"&":"?")(c.callbackKey||this.options.callbackKey)"=Request.JSONP.request_map.request_"b(d?"&"d:"");if(e.length>2083){this.log("JSONP "+e" will fail in Internet Explorer, which enforces a 2083 bytes length limit on URIs");
}var a=new Element("script",
);Request.JSONP.request_map["request_"+b]=function()
.bind(this);return a.inject(this.options.injectScript);
},success:function(b,a){if(a)
this.running=false;this.log("JSONP successfully retrieved: ",b);this.fireEvent("complete",b).fireEvent("success",b).callChain();
}});Request.JSONP.counter=0;Request.JSONP.request_map={};var Asset={javascript:function(f,d){d=$extend(
,d);
if(d.onLoad)
var b=new Element("script",
);var e=d.onload.bind(b),a=d.check,g=d.document;delete d.onload;
delete d.check;delete d.document;b.addEvents({load:e,readystatechange:function(){if(["loaded","complete"].contains(this.readyState))
}}).set(d);if(Browser.Engine.webkit419){var c=(function(){if(!$try(a))
).periodical(50);}return b.inject(g.head);},css:function(b,a){return new Element("link",$merge(
,a)).inject(document.head);
},image:function(c,b){b=$merge(
,b);var d=new Image();var a=document.id(d)||new Element("img");["load","abort","error"].each(function(e){var g="on"+e;
var f=e.capitalize();if(b["on"+f])
var h=b[g];delete b[g];d[g]=function(){if(!d)
if(!a.parentNode)
;});d.src=a.src=c;if(d&&d.complete)
return a.set(b);},images:function(d,c){c=$merge({onComplete:$empty,onProgress:$empty,onError:$empty,properties:{}},c);
d=$splat(d);var a=[];var b=0;return new Elements(d.map(function(e){return Asset.image(e,$extend(c.properties,{onload:function(){c.onProgress.call(this,b,d.indexOf(e));
b+;if(b==d.length){c.onComplete();}},onerror:function(){c.onError.call(this,b,d.indexOf(e));b+;if(b==d.length)
}}));}));}};
// Here starts ../inc/kishlery.js
var Kishlery=new Class({Implements:Options,nodes:null,owner_id:null,ownername:null,showOwner:null,mainContainer:null,picsContainer:null,previous:null,current:null,buttons:null,thumbnails:null,thumbsContainer:null,mosaic:null,dashboard:null,myPictures:new Array(),isPicChecked:new Array(),isPicLoaded:new Array(),myThumbs:new Array(),isThumbLoaded:new Array(),myThumbs2:new Array(),stopLoading:null,scroll:null,scrollThumbs:null,title:null,reqPos:null,url:null,preCounter:null,log:new Array(),options:
,initialize:function(el,options){this.mainContainer=$(el);if(!this.mainContainer)
var root=window.location.href.contains('kishnel.dev')?'http://www.kishnel.dev/kishlery':'http://www.kishnel.com/kishlery';this.setOptions(options);new Asset.css(root+'/inc/kishlery.css');if(this.options.maxSize)
this.options.maxSize=this.options.maxSize.toInt();if(this.options.singleMode){window.addEvent('resize',function()
.bind(this));}
window.addEvent('scroll',QuickView.cancel);this.reqPos=document.location.hash.substr(1)*1;var self=this;this.url=root+'/inc/kishlery.php';new Request.JSONP({url:this.url,data:
,onComplete:function(json){self.nextStep(json);}}).send();},nextStep:function(json){if(!json)return;var obj=this;var randOrd=function()
this.log=json.log;switch(this.options.mode){case'photoset':if(!json.photoset)
this.nodes=json.photoset.photo;this.owner_id=json.photoset.owner;this.ownername=json.photoset.ownername;break;case'user':if(!json.photos)
if(json.photos.total.toInt()==0)
this.nodes=json.photos.photo;this.owner_id=json.photos.photo[0].owner;this.ownername=this.options.id;break;case'group':if(!json.photos)
if(!json.photos.total)
this.nodes=json.photos.photo;break;case'folder':if(!json.photos)
this.nodes=json.photos.photo;this.options.linkToFlickr=false;break;}
this.doHTML();if(this.options.sort=='random')
this.nodes.sort(randOrd);if(this.nodes.length<=this.options.buffer)
this.options.buffer=this.nodes.length;this.keyboardControls();this.scroll=new Fx.Scroll(this.picsContainer,
);if(this.options.singleMode)
else{this.play=new Slideshow(this.picsContainer,{wait:true,transition:Fx.Transitions.linear,onStart:function()
,onComplete:function()
,onCancel:function(){if(obj.buttons)
obj.buttons.getElement('.KLplay').removeClass('pause');}});}
this.load(0);},doHTML:function(){this.preCounter=new Element('span').addClass('KLpre_counter').set('html','<span>Loading...</span>').inject(this.mainContainer);this.picsContainer=new Element('div').addClass('KLpics_container');if(this.options.singleMode){var self=this;this.picsContainer.set('morph',{onComplete:function(){self.myPictures[self.current].tween('opacity',1);}});this.mainContainer.addClass('KLsingle_mode');}
if(this.options.maxSize)
this.picsContainer.setStyle('height',this.options.maxSize+'px');this.picsContainer.inject(this.mainContainer);this.dashboard=new Element('div').addClass('KLdashboard').inject(this.mainContainer);this.createTitle();this.createButtons();this.createThumbnails();this.createMosaic();this.createFooter();},createTitle:function(){if(!this.options.showTitle)return;this.title=new Element('div').addClass('KLtitle').inject(this.dashboard);if(this.options.linkToFlickr)
new Element('a',
).addClass('KLtitleText').set('html',' ').inject(this.title);else
new Element('span').addClass('KLtitleText').inject(this.title).set('html',' ');if(this.options.showOwner){var div=new Element('div').addClass('KLinfo').inject(this.title);if(this.options.linkToFlickr)
new Element('a',
).set('html',' ').inject(div);else
new Element('span').set('html',' ').inject(div);}},setTitle:function(){if(!this.options.showTitle)return;var currentPic=this.myPictures[this.current];if(!currentPic)return false;if(this.options.mode=='folder')
var urls=this.getPicUrlFromFolder(this.nodes[this.current]);else
var urls=this.getPicUrl(this.nodes[this.current]);var t=this.title.getElement('.KLtitleText');t.set('text',currentPic.alt);if(this.options.linkToFlickr&&urls[2])
t.href=urls[2];if(this.options.showOwner&&urls[3]){var i=this.title.getElement('.KLinfo');i.getFirst().set('html',urls[3]);if(this.options.linkToFlickr&&urls[4])
i.getFirst().href=urls[4];}},createButtons:function(){if(!this.options.showButtons)return;this.buttons=new Element('div').addClass('KLbuttons').inject(this.dashboard);new Element('a',
).addClass('KLback').addClass('button').inject(this.buttons).addEvent('click',function()
.bind(this));new Element('a',
).addClass('KLplay').addClass('button').inject(this.buttons).addEvent('click',function()
.bind(this));new Element('a',
).addClass('KLnext').addClass('button').inject(this.buttons).addEvent('click',function()
.bind(this));var div=new Element('div').addClass('KLcounter').set('html','<span>0/'this.nodes.length'</span>').inject(this.buttons).addEvent('click',function()
.bind(this));if(this.options.showMosaic){new Element('a',
).addClass('KLthumbs_switcher').addClass('button').inject(this.buttons).addEvent('click',function()
.bind(this));}},createThumbnails:function(){if(!this.options.showThumbnails)return;this.thumbnails=new Element('div').addClass('KLthumbnails').inject(this.dashboard);this.thumbsContainer=new Element('div').addClass('KLthumbsContainer');this.scrollThumbs=new Fx.Scroll(this.thumbsContainer,
);var scrollAnimation=new Fx.Scroll(this.thumbsContainer,
);var a=new Element('a',
).addClass('KLthumbs_back').inject(this.thumbnails).addEvent('click',function()
.bind(this));this.thumbsContainer.inject(this.thumbnails);var a=new Element('a',
).addClass('KLthumbs_forward').inject(this.thumbnails).addEvent('click',function()
.bind(this));},createMosaic:function(){if(!this.options.showMosaic)return;var self=this;this.mosaic=new Element('div').addClass('KLmosaic').setOpacity(0).set('html','<div></div>').inject(this.mainContainer);this.mosaic.set('tween',{onComplete:function(el){if(el.getStyle('opacity')==0)
el.setStyle('display','none');}});},createFooter:function()
,keyboardControls:function(){if(!this.options.activateKeyboard)return;document.addEvent('keydown',function(event){var event=new Event(event);switch(event.key){case'right':this.moveTo(this.current+1);break;case'left':this.moveTo(this.current-1);break;case'space':QuickView.show(this);event.preventDefault();break;case'enter':this.play.go(this);break;case'esc':this.toggleLoading();QuickView.hide();break;}}.bind(this));},load:function{if(i>=this.nodes.length||this.stopLoading)
if(i<this.options.buffer)
if(i+1==this.options.buffer)
this.openCurtains();if(this.options.mode=='folder')
var urls=this.getPicUrlFromFolder(this.nodes[i]);else
var urls=this.getPicUrl(this.nodes[i]);this.loadPic(urls,i);},getPicUrl:function(node){if(node.owner&&(this.options.mode=='photoset'||this.options.mode=='group'))
return new Array('http://farm'node.farm'.static.flickr.com/'node.server'/'node.id''node.secret'.jpg','http://farm'node.farm'.static.flickr.com/'node.server'/'node.id''node.secret'_s.jpg','http://www.flickr.com/photos/'this.owner_id'/'node.id'/',this.ownername,'http://www.flickr.com/photos/'this.owner_id'/');},getPicUrlFromFolder:function(node)
,loadPic:function(urls,i){var obj=this;obj.myPictures[i]=new Asset.image(urls[0],{alt:obj.nodes[i].title,onload:function(){if(obj.isPicLoaded[i])return false;var w=this.width;var h=this.height;if(obj.options.maxSize){if(obj.options.forceHeight)
else{if(this.width>this.height)
else{var max=this.height>obj.options.maxSize?obj.options.maxSize:this.height;w=(this.width*max/this.height).round();h=max;}}
this.setStyles(
);}
if(obj.options.singleMode)
this.setStyle('opacity',0);if(obj.options.singleMode)obj.options.centeringMargin=true;if(obj.options.centeringMargin)
this.addEvent('click',function()
);obj.isPicLoaded[i]=true;if(obj.options.mode=='folder')
obj.isPicChecked[i]=2;else
obj.isPicChecked[i]=false;obj.loadThumb(urls,i);}});},loadThumb:function(urls,i){var obj=this;return new Asset.image(urls[1],{alt:obj.nodes[i].title,onload:function(){if(obj.isThumbLoaded[i])return false;if(obj.thumbnails){obj.myThumbs[i]=this;obj.myThumbs[i].addEvent('click',function()
);if(i==0)obj.myThumbs[i].addClass('KLselected');}
if(obj.mosaic){obj.myThumbs2[i]=this.clone();obj.myThumbs2[i].addEvent('click',function()
);if(i==0)obj.myThumbs2[i].addClass('KLselected');}
obj.updateCounter;obj.isThumbLoaded[i]=true;obj.injectImages(urls,i);obj.load(i+1);}});},injectImages:function(urls,i){this.myPictures[i].inject(this.picsContainer);if(this.thumbnails)
if(this.mosaic){this.myThumbs2[i].inject(this.mosaic.getElement('div'));this.myThumbs2[i].tween('opacity',1);}},toggleLoading:function(){if(this.myThumbs2.length<this.buffer)return false;var span=this.buttons.getElement('.KLcounter');if(this.stopLoading)
else{span.addClass('KLstopped');this.stopLoading=true;}},adaptToContainer:function(animation,postActions){if(!this.mainContainer)return false;var p=this.mainContainer.getParent();var h=p.getHeight();h-=p.getStyle('margin-top').toInt();h-=p.getStyle('margin-bottom').toInt();h-=this.mainContainer.getStyle('margin-top').toInt();h-=this.mainContainer.getStyle('margin-bottom').toInt();p.getChildren().each(function(el)
);if(animation){this.mainContainer.set('tween',{onComplete:function(){postActions();}});this.mainContainer.tween('height',h);}
else
this.mainContainer.setStyle('height',h);},updateCounter:function{if(!this.options.showButtons)return;var c=this.mainContainer.getElement('.KLcounter span');var percentage=(i+1)*100/this.nodes.length;c.set('html',(i+1)'/'+this.nodes.length' ').setStyle('width',percentage+'px');if(percentage>=100){percentage=100;this.mainContainer.getElement('.KLcounter').tween('opacity',0);}},openCurtains:function(){var self=this;if(this.preCounter){this.preCounter.set('tween',{onComplete:function(){self.preCounter.destroy();self.preCounter=null;}});this.preCounter.tween('opacity',0);}
this.mainContainer.set('tween',{duration:1000,transition:Fx.Transitions.Quint.easeInOut,onComplete:function(){self.openCurtains2();}});this.mainContainer.tween('height',0);},openCurtains2:function(){var self=this;this.dashboard.setStyle('display','block');this.picsContainer.setStyle('display','block');var postActions=function(){if(self.options.showMosaicImmediately)
self.toggleMosaic();if(self.options.playImmediately)
(function()
).delay(1000);}
if(this.options.singleMode){this.picsContainer.setStyles(
);this.adaptToContainer(true,postActions);}
else if(this.options.forceHeight&&this.options.maxSize){var h=this.options.maxSize+this.dashboard.getHeight();h+=this.dashboard.getStyle('margin-top').toInt();this.mainContainer.set('tween',
);this.mainContainer.tween('height',h);}
else
if(!this.reqPos)
(function()
).delay(500,this);this.displayLog();},moveTo:function(num,periodical){if(!this.play)return;if(!periodical)this.play.cancel();this.closeMosaic();if(num<0)num=0;var pic=this.myPictures[num];if(!pic)
if(this.options.quickView)
this.previous=this.current;this.current=num;if(this.previous==this.current)
QuickView.cancel();this.selectButton(num);this.setTitle();if(this.options.singleMode)
this.singleMotion(pic);else
this.slideMotion(pic);},singleMotion:function(pic){if(this.myPictures[this.previous])
this.myPictures[this.previous].setOpacity(0);var amount=pic.getPosition(this.picsContainer).x-1;if(Browser.Engine.presto)
pic.addClass('opera');this.scroll.set(amount,0);var viewport=this.mainContainer.getHeight()-this.dashboard.getHeight();var marginTop=(viewport-pic.getHeight())/2;this.picsContainer.morph(
);},slideMotion:function(pic)
,selectButton:function(num){var thumb=this.myThumbs[num];var thumb2=this.myThumbs2[num];if(thumb)
if(thumb2)
if(this.thumbnails){var amount=thumb.offsetLeft-this.thumbsContainer.getWidth()/2+thumb.getWidth()/2;this.scrollThumbs.start(amount);}},toggleMosaic:function(){if(!this.mosaic)return;if(this.mosaic.getStyle('opacity')>0)
this.closeMosaic();else{var el=this.options.bigMosaic?this.mainContainer:this.picsContainer;this.play.cancel();this.mosaic.setStyles(
);this.mosaic.tween('opacity',.9);}},closeMosaic:function()
,urldecode:function(str)
,displayLog:function(txt){var self=this;var error_html='';var displayErrors=false;self.log.each(function(txt){var t=self.urldecode(txt);if(t.contains('Error:'))
else if(self.options.showLog&&typeof console!="undefined"&&typeof console.log!="undefined"){console.log(t);}});if(!displayErrors)return;var error=new Element('div').set('html','<ul>'error_html'</ul>').addClass('error').setOpacity(0).inject(this.mainContainer);if(error.getHeight()>this.mainContainer.getHeight())
if(this.mainContainer.getChildren().length>1)
error.addClass('floating');(function()
).delay(500);}});var QuickView={div:null,mask:null,oldCoors:null,obj:null,show:function(obj){if(!obj.options.quickView)return;if(!obj.current)obj.current=0;if(this.div)
return this.hide();this.obj=obj;var scroll=window.getScroll();this.mask=new Element('div').addClass('KLmask').setOpacity(0).setStyles(
).inject(document.body);this.mask.tween('opacity',.7);this.div=new Element('div').addClass('KLquickView').addEvent('click',this.hide).inject(document.body);var winSize=window.getSize();var margin=120;var max=1024;var maxWinWidth=winSize.x-margin>max?max:winSize.x-margin;var maxWinHeight=winSize.y-margin>max?max:winSize.y-margin;var pic=obj.myPictures[obj.current];var picH=pic.getHeight();var picW=pic.getWidth();pic.clone().addClass('clone').inject(this.div);this.oldCoors=pic.getCoordinates();this.div.setStyles(this.oldCoors);this.div.setStyle('display','block');if(picW>picH){var w=maxWinWidth;var h=(picH*w/picW).round();if(h>maxWinHeight){h=maxWinHeight;w=(picW*h/picH).round();}}
else{var h=maxWinHeight;var w=(picW*h/picH).round();if(w>maxWinWidth){w=maxWinWidth;h=(picH*w/picW).round();}}
if(h<picH)h=picH+50;if(w<picW)w=picW+50;var t=(winSize.y/2-h/2)+scroll.y;var l=(winSize.x/2-w/2)+scroll.x;this.div.set('morph',
);this.div.morph(
);this.loadLargeImage();},loadLargeImage:function(){var self=this;var node=this.obj.nodes[this.obj.current];var url='http://farm'node.farm'.static.flickr.com/'node.server'/'node.id'_'node.secret'_b.jpg';var isChecked=self.obj.isPicChecked[self.obj.current];self.div.addClass('loading');var card=new Element('div').addClass('card').addEvent('click',this.flip).inject(this.div);new Element('div').addClass('loader').inject(self.div);if(isChecked==1)
else if(isChecked==2)
else{new Request.JSONP({url:this.obj.url,data:
,onComplete:function(txt){if(txt!=1)
self.obj.isPicChecked[self.obj.current]=1;self.loadImage(url,node,card);}}).send();}},loadImage:function(url,node,card){var self=this;new Asset.image(url,{alt:node.title,onload:function(){if(!self.div)return;self.div.removeClass('loading');}}).addClass('front').inject(card);if(this.obj.options.flip)
new Element('div').addClass('back').set('html','Qualcosa da scrivere...').inject(card);},hide:function(){if(!QuickView.div)return;QuickView.div.set('morph',{duration:500,transition:Fx.Transitions.Quint.easeInOut,onComplete:function(){if(QuickView.div)
}});QuickView.div.morph(QuickView.oldCoors);QuickView.mask.set('tween',{onComplete:function(){if(QuickView.mask)
}});QuickView.mask.tween('opacity',0);},cancel:function(){if(QuickView.div)
if(QuickView.mask){QuickView.mask.destroy();QuickView.mask=null;}},flip:function(e){if(!QuickView.obj.options.flip)return;e.stopPropagation();var div=QuickView.div.getElement('.card');if(div.hasClass('flipped'))
div.removeClass('flipped');else
div.addClass('flipped');}}
var Slideshow=new Class({Extends:Fx.Scroll,pxs:60,parentObj:null,go:function(obj){this.parentObj=obj;if(!this.parentObj.picsContainer)return;this.parentObj.closeMosaic();if(this.timer)
if(this.parentObj.current==this.parentObj.myPictures.length-1){this.parentObj.scroll.chain(function()
.bind(this));this.parentObj.moveTo(0);return false;}
var from=this.parentObj.picsContainer.scrollLeft+this.parentObj.picsContainer.getWidth();var to=this.parentObj.picsContainer.scrollWidth;var duration=((to-from)/this.pxs*1000).round();this.options.duration=duration;this.start(to);},step:function(){var time=$time();var now=this.parentObj.picsContainer.scrollLeft+this.parentObj.picsContainer.getWidth();var next=this.parentObj.myPictures[this.parentObj.current+1];if(next&&now>=next.offsetLeft+next.getWidth())
if(time<this.time+this.options.duration)
else
}});var Slideshow2=new Class({timer:null,parentObj:null,interval:5000,go:function(obj){this.parentObj=obj;this.interval=obj.options.interval<1000?1000:obj.options.interval;if(!this.parentObj.picsContainer)return;if(this.timer)
this.move();if(!this.timer){this.parentObj.buttons.getElement('.KLplay').addClass('pause');this.timer=this.move.periodical(this.interval,this);}},move:function()
,cancel:function(){if(!this.parentObj)return false;$clear(this.timer);this.timer=null;this.parentObj.buttons.getElement('.KLplay').removeClass('pause');}});
var myKishlery = new Kishlery('kishlery',
);
</script>
<!-- Kishlery code ends here -->
*
*
No files have been attached to this page.
Flight Path
Map showing ground-track of the balloon. Each red dot represents a data packet received over the amateur radio APRS network, indicating position and altitude. Launch was from the north, near Taupiri.
3D rendering showing the flight-path of the balloon, and key milestones.
KiwiSpace Foundation is a new non-profit organisation seeking to make space accessible to New Zealanders.
[!http://www.kiwispace.org.nz/mark/images/becomeamember.png|width=160,border=0!]
Get involved, and become a Supporting Member for only $30/year.
Want to get involved?
We hope to do a series of launches involving schools in the future. If you're a teacher, student, sponsor or enthusiast and interested in helping out with future launches, please get in touch.
The Team
Core Project Team
Will Leizerowicz (Lead)
Alex Heffer
André Pointon
Recovery
Mark Mackay
Phill King, Hamilton Amateur Radio Club
Support
Greg Clark, Bigredbee (GPS Tracking Systems)
Richard Munro, NZ Aerosports Ltd (Parachute material)
Damien Poppelwell, Excellent Software (Recovery vehicle)
Perin Melchior, Kiteworks (Custom Parachute)
LandSAR