


function lib_bwcheck(){
	this.ver=navigator.appVersion;
	this.agent=navigator.userAgent;
	this.dom=document.getElementById?1:0;
	this.opera5=this.agent.indexOf("Opera 5")>-1;
	this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom && !this.opera5)?1:0; 
	this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom && !this.opera5)?1:0;
	this.ie4=(document.all && !this.dom && !this.opera5)?1:0;
	this.ie=this.ie4||this.ie5||this.ie6;
	this.mac=this.agent.indexOf("Mac")>-1;
	this.ns6=(this.dom && parseInt(this.ver) >= 5) ?1:0; 
	this.ns4=(document.layers && !this.dom)?1:0;
	this.bw=(this.ie6 || this.ie5 || this.ie4 || this.ns4 || this.ns6 || this.opera5);
	return this;
}
var bw=new lib_bwcheck()
var px = bw.ns4||window.opera?"":"px";

function run() {
 var cx, cy, a, css, obj, nest, ooo;
 if ((document.all) && (!bw.opera5)) {
  movy = document.body.clientHeight-64;
  movx = document.body.clientWidth-50;
 } else {
  movx = window.innerWidth-50;
  movy = window.innerHeight-64;
 }
 for (var i=0; i<sxto; i++) {
  var xxx = xspeed + (xspdto-xspeed)*or[i]/sxfrom;
  or[i]+=xxx; if (or[i]>sxfrom) or[i]=0;
 for (var k=0; k<syto; k++) {
  if (or[i]==0 && sdfrom==0 && sdto==0) ys[i*syto+k] = Math.random()*2*Math.PI;
  ys[i*syto+k]+=yspeed;
  cx = sxfrom + Math.cos(ys[i*syto+k])*or[i];
  cy = syfrom + Math.sin(ys[i*syto+k])*or[i]*syfrom/sxfrom;
  cx = Math.round(cx*movx/100);
  cy = Math.round(cy*movy/100);
  if (bw.ns4) {
	ooo = eval("document.s"+(i*syto+k));
	ooo.moveTo(cx, cy);
  } else {
	obj = "s"+(i*syto+k); nest="";
   	css= bw.dom?document.getElementById(obj).style:bw.ie4?document.all[obj].style:bw.ns4?eval(nest+"document.layers." +obj):0;
	css.left = cx; css.top = cy;
  }
 }
 }
 setTimeout("run()",tpause,"JavaScript");
}

var sxfrom=50;
var sxto=4;
var syfrom=50;
var syto=10;
var sdfrom=0;
var sdto=100;
var yspeed=2;
var xspeed=1;
var xspdto=3;
var pcol=Number(16711680).toString(16);
var tpause=20;
var schar=".";

var fontface = 0;
var fontsize = "6";
if (fontface==0) fontface = 'Arial, Helvetica, sans-serif';
  else if (fontface==1) fontface = 'Times New Roman, serif';
  else if (fontface==2) fontface = 'Courier New, Courier, mono';
  else if (fontface==3) fontface = 'Georgia, Times New Roman, Times, serif';
  else fontface = 'Verdana, Arial, Helvetica, sans-serif';

var t=0;
t = pcol.length;
for (var i=0; i<6-t; i++) pcol = '0'+pcol;

if ((document.all) && (!bw.opera5)) {
  movy = document.body.clientHeight-64;
  movx = document.body.clientWidth-50;
} else {
  movx = window.innerWidth-50;
  movy = window.innerHeight-64;
}

or = new Array();
ys = new Array();
for (var i=0; i<sxto; i++) {
 or[i] = i*sxfrom/sxto;
 for (var k=0; k<syto; k++) {
  if (bw.ns4) document.writeln("<layer id='s"+(i*syto+k)+"'>");
    else document.writeln("<div id='s"+(i*syto+k)+"' style='position:absolute; z-index:3;'>");
  document.writeln('<font color=#'+pcol+' face="'+fontface+'" size="'+fontsize+'">'+schar+'</font>');
  if (bw.ns4) document.writeln("</layer>");
    else document.writeln("</div>");
  if (sdfrom==0 && sdto==0) ys[i*syto+k] = Math.random()*2*Math.PI; else
	ys[i*syto+k] = (sdfrom+k*(sdto-sdfrom)/syto)*Math.PI/180;
 }
}
yspeed = yspeed*Math.PI/180;

setTimeout("run()",tpause,"JavaScript");



//DO NOT MODIFY
/*
<APPLETINFO>
appletname=jscircles3d
applettype=JAVASCRIPT
created=1065847823310
appletfilename=jscircles3d3.js
</APPLETINFO>
<JAVASCRIPT>
fontsize=6
sxfrom=50
syfrom=50
sxto=4
syto=10
sdfrom=0
sdto=100
yspeed=2
xspeed=1
xspdto=3
tpause=20
schar=.
fontface=0
pcol=16711680
</JAVASCRIPT>
<HTMLGENERATOR>
null</HTMLGENERATOR>
*/