Index: openacs-4/packages/acs-templating/www/resources/xinha-nightly/plugins/ImageManager/assets/wz_jsgraphics.js
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/acs-templating/www/resources/xinha-nightly/plugins/ImageManager/assets/wz_jsgraphics.js,v
diff -u -r1.4 -r1.5
--- openacs-4/packages/acs-templating/www/resources/xinha-nightly/plugins/ImageManager/assets/wz_jsgraphics.js 13 May 2008 18:53:51 -0000 1.4
+++ openacs-4/packages/acs-templating/www/resources/xinha-nightly/plugins/ImageManager/assets/wz_jsgraphics.js 16 Jan 2009 09:05:48 -0000 1.5
@@ -1,505 +1,2 @@
-/* This compressed file is part of Xinha. For uncompressed sources, forum, and bug reports, go to xinha.org */
-/* This file is part of version 0.95 released Mon, 12 May 2008 17:33:15 +0200 */
-/* The URL of the most recent version of this file is http://svn.xinha.webfactional.com/trunk/plugins/ImageManager/assets/wz_jsgraphics.js */
-var jg_ihtm,jg_ie,jg_dom,jg_n4=(document.layers&&typeof document.classes!="undefined");
-function chkDHTM(x,i){
-x=document.body||null;
-jg_ie=(x&&typeof x.insertAdjacentHTML!="undefined");
-jg_dom=(x&&!jg_ie&&typeof x.appendChild!="undefined"&&typeof document.createRange!="undefined"&&typeof (i=document.createRange()).setStartBefore!="undefined"&&typeof i.createContextualFragment!="undefined");
-jg_ihtm=(!jg_ie&&!jg_dom&&x&&typeof x.innerHTML!="undefined");
-}
-function pntDoc(){
-this.wnd.document.write(this.htm);
-this.htm="";
-}
-function pntCnvDom(){
-var x=document.createRange();
-x.setStartBefore(this.cnv);
-x=x.createContextualFragment(this.htm);
-this.cnv.appendChild(x);
-this.htm="";
-}
-function pntCnvIe(){
-this.cnv.insertAdjacentHTML("BeforeEnd",this.htm);
-this.htm="";
-}
-function pntCnvIhtm(){
-this.cnv.innerHTML+=this.htm;
-this.htm="";
-}
-function pntCnv(){
-this.htm="";
-}
-function mkDiv(x,y,w,h){
-this.htm+="
";
-}
-function mkDivPrint(x,y,w,h){
-this.htm+="";
-}
-function mkLyr(x,y,w,h){
-this.htm+="\n";
-}
-function mkLbl(txt,x,y){
-this.htm+=""+txt+"
";
-}
-function mkLin(x1,y1,x2,y2){
-if(x1>x2){
-var _x2=x2;
-var _y2=y2;
-x2=x1;
-y2=y1;
-x1=_x2;
-y1=_y2;
-}
-var dx=x2-x1,dy=Math.abs(y2-y1),x=x1,y=y1,yIncr=(y1>y2)?-1:1;
-if(dx>=dy){
-var pr=dy<<1,pru=pr-(dx<<1),p=pr-dx,ox=x;
-while((dx--)>0){
-++x;
-if(p>0){
-this.mkDiv(ox,y,x-ox,1);
-y+=yIncr;
-p+=pru;
-ox=x;
-}else{
-p+=pr;
-}
-}
-this.mkDiv(ox,y,x2-ox+1,1);
-}else{
-var pr=dx<<1,pru=pr-(dy<<1),p=pr-dy,oy=y;
-if(y2<=y1){
-while((dy--)>0){
-if(p>0){
-this.mkDiv(x++,y,1,oy-y+1);
-y+=yIncr;
-p+=pru;
-oy=y;
-}else{
-y+=yIncr;
-p+=pr;
-}
-}
-this.mkDiv(x2,y2,1,oy-y2+1);
-}else{
-while((dy--)>0){
-y+=yIncr;
-if(p>0){
-this.mkDiv(x++,oy,1,y-oy);
-p+=pru;
-oy=y;
-}else{
-p+=pr;
-}
-}
-this.mkDiv(x2,oy,1,y2-oy+1);
-}
-}
-}
-function mkLin2D(x1,y1,x2,y2){
-if(x1>x2){
-var _x2=x2;
-var _y2=y2;
-x2=x1;
-y2=y1;
-x1=_x2;
-y1=_y2;
-}
-var dx=x2-x1,dy=Math.abs(y2-y1),x=x1,y=y1,yIncr=(y1>y2)?-1:1;
-var s=this.stroke;
-if(dx>=dy){
-if(s-3>0){
-var _s=(s*dx*Math.sqrt(1+dy*dy/(dx*dx))-dx-(s>>1)*dy)/dx;
-_s=(!(s-4)?Math.ceil(_s):Math.round(_s))+1;
-}else{
-var _s=s;
-}
-var ad=Math.ceil(s/2);
-var pr=dy<<1,pru=pr-(dx<<1),p=pr-dx,ox=x;
-while((dx--)>0){
-++x;
-if(p>0){
-this.mkDiv(ox,y,x-ox+ad,_s);
-y+=yIncr;
-p+=pru;
-ox=x;
-}else{
-p+=pr;
-}
-}
-this.mkDiv(ox,y,x2-ox+ad+1,_s);
-}else{
-if(s-3>0){
-var _s=(s*dy*Math.sqrt(1+dx*dx/(dy*dy))-(s>>1)*dx-dy)/dy;
-_s=(!(s-4)?Math.ceil(_s):Math.round(_s))+1;
-}else{
-var _s=s;
-}
-var ad=Math.round(s/2);
-var pr=dx<<1,pru=pr-(dy<<1),p=pr-dy,oy=y;
-if(y2<=y1){
-++ad;
-while((dy--)>0){
-if(p>0){
-this.mkDiv(x++,y,_s,oy-y+ad);
-y+=yIncr;
-p+=pru;
-oy=y;
-}else{
-y+=yIncr;
-p+=pr;
-}
-}
-this.mkDiv(x2,y2,_s,oy-y2+ad);
-}else{
-while((dy--)>0){
-y+=yIncr;
-if(p>0){
-this.mkDiv(x++,oy,_s,y-oy+ad);
-p+=pru;
-oy=y;
-}else{
-p+=pr;
-}
-}
-this.mkDiv(x2,oy,_s,y2-oy+ad+1);
-}
-}
-}
-function mkLinDott(x1,y1,x2,y2){
-if(x1>x2){
-var _x2=x2;
-var _y2=y2;
-x2=x1;
-y2=y1;
-x1=_x2;
-y1=_y2;
-}
-var dx=x2-x1,dy=Math.abs(y2-y1),x=x1,y=y1,yIncr=(y1>y2)?-1:1,drw=true;
-if(dx>=dy){
-var pr=dy<<1,pru=pr-(dx<<1),p=pr-dx;
-while((dx--)>0){
-if(drw){
-this.mkDiv(x,y,1,1);
-}
-drw=!drw;
-if(p>0){
-y+=yIncr;
-p+=pru;
-}else{
-p+=pr;
-}
-++x;
-}
-if(drw){
-this.mkDiv(x,y,1,1);
-}
-}else{
-var pr=dx<<1,pru=pr-(dy<<1),p=pr-dy;
-while((dy--)>0){
-if(drw){
-this.mkDiv(x,y,1,1);
-}
-drw=!drw;
-y+=yIncr;
-if(p>0){
-++x;
-p+=pru;
-}else{
-p+=pr;
-}
-}
-if(drw){
-this.mkDiv(x,y,1,1);
-}
-}
-}
-function mkOv(_2e,top,_30,_31){
-var a=_30>>1,b=_31>>1,wod=_30&1,hod=(_31&1)+1,cx=_2e+a,cy=top+b,x=0,y=b,ox=0,oy=b,aa=(a*a)<<1,bb=(b*b)<<1,st=(aa>>1)*(1-(b<<1))+bb,tt=(bb>>1)-aa*((b<<1)-1),w,h;
-while(y>0){
-if(st<0){
-st+=bb*((x<<1)+3);
-tt+=(bb<<1)*(++x);
-}else{
-if(tt<0){
-st+=bb*((x<<1)+3)-(aa<<1)*(y-1);
-tt+=(bb<<1)*(++x)-aa*(((y--)<<1)-3);
-w=x-ox;
-h=oy-y;
-if(w&2&&h&2){
-this.mkOvQds(cx,cy,-x+2,ox+wod,-oy,oy-1+hod,1,1);
-this.mkOvQds(cx,cy,-x+1,x-1+wod,-y-1,y+hod,1,1);
-}else{
-this.mkOvQds(cx,cy,-x+1,ox+wod,-oy,oy-h+hod,w,h);
-}
-ox=x;
-oy=y;
-}else{
-tt-=aa*((y<<1)-3);
-st-=(aa<<1)*(--y);
-}
-}
-}
-this.mkDiv(cx-a,cy-oy,a-ox+1,(oy<<1)+hod);
-this.mkDiv(cx+ox+wod,cy-oy,a-ox+1,(oy<<1)+hod);
-}
-function mkOv2D(_33,top,_35,_36){
-var s=this.stroke;
-_35+=s-1;
-_36+=s-1;
-var a=_35>>1,b=_36>>1,wod=_35&1,hod=(_36&1)+1,cx=_33+a,cy=top+b,x=0,y=b,aa=(a*a)<<1,bb=(b*b)<<1,st=(aa>>1)*(1-(b<<1))+bb,tt=(bb>>1)-aa*((b<<1)-1);
-if(s-4<0&&(!(s-2)||_35-51>0&&_36-51>0)){
-var ox=0,oy=b,w,h,pxl,pxr,pxt,pxb,pxw;
-while(y>0){
-if(st<0){
-st+=bb*((x<<1)+3);
-tt+=(bb<<1)*(++x);
-}else{
-if(tt<0){
-st+=bb*((x<<1)+3)-(aa<<1)*(y-1);
-tt+=(bb<<1)*(++x)-aa*(((y--)<<1)-3);
-w=x-ox;
-h=oy-y;
-if(w-1){
-pxw=w+1+(s&1);
-h=s;
-}else{
-if(h-1){
-pxw=s;
-h+=1+(s&1);
-}else{
-pxw=h=s;
-}
-}
-this.mkOvQds(cx,cy,-x+1,ox-pxw+w+wod,-oy,-h+oy+hod,pxw,h);
-ox=x;
-oy=y;
-}else{
-tt-=aa*((y<<1)-3);
-st-=(aa<<1)*(--y);
-}
-}
-}
-this.mkDiv(cx-a,cy-oy,s,(oy<<1)+hod);
-this.mkDiv(cx+a+wod-s+1,cy-oy,s,(oy<<1)+hod);
-}else{
-var _a=(_35-((s-1)<<1))>>1,_b=(_36-((s-1)<<1))>>1,_x=0,_y=_b,_aa=(_a*_a)<<1,_bb=(_b*_b)<<1,_st=(_aa>>1)*(1-(_b<<1))+_bb,_tt=(_bb>>1)-_aa*((_b<<1)-1),pxl=new Array(),pxt=new Array(),_pxb=new Array();
-pxl[0]=0;
-pxt[0]=b;
-_pxb[0]=_b-1;
-while(y>0){
-if(st<0){
-st+=bb*((x<<1)+3);
-tt+=(bb<<1)*(++x);
-pxl[pxl.length]=x;
-pxt[pxt.length]=y;
-}else{
-if(tt<0){
-st+=bb*((x<<1)+3)-(aa<<1)*(y-1);
-tt+=(bb<<1)*(++x)-aa*(((y--)<<1)-3);
-pxl[pxl.length]=x;
-pxt[pxt.length]=y;
-}else{
-tt-=aa*((y<<1)-3);
-st-=(aa<<1)*(--y);
-}
-}
-if(_y>0){
-if(_st<0){
-_st+=_bb*((_x<<1)+3);
-_tt+=(_bb<<1)*(++_x);
-_pxb[_pxb.length]=_y-1;
-}else{
-if(_tt<0){
-_st+=_bb*((_x<<1)+3)-(_aa<<1)*(_y-1);
-_tt+=(_bb<<1)*(++_x)-_aa*(((_y--)<<1)-3);
-_pxb[_pxb.length]=_y-1;
-}else{
-_tt-=_aa*((_y<<1)-3);
-_st-=(_aa<<1)*(--_y);
-_pxb[_pxb.length-1]--;
-}
-}
-}
-}
-var ox=0,oy=b,_oy=_pxb[0],l=pxl.length,w,h;
-for(var i=0;i>1,b=_3f>>1,wod=_3e&1,hod=_3f&1,cx=_3c+a,cy=top+b,x=0,y=b,aa2=(a*a)<<1,aa4=aa2<<1,bb=(b*b)<<1,st=(aa2>>1)*(1-(b<<1))+bb,tt=(bb>>1)-aa2*((b<<1)-1),drw=true;
-while(y>0){
-if(st<0){
-st+=bb*((x<<1)+3);
-tt+=(bb<<1)*(++x);
-}else{
-if(tt<0){
-st+=bb*((x<<1)+3)-aa4*(y-1);
-tt+=(bb<<1)*(++x)-aa2*(((y--)<<1)-3);
-}else{
-tt-=aa2*((y<<1)-3);
-st-=aa4*(--y);
-}
-}
-if(drw){
-this.mkOvQds(cx,cy,-x,x+wod,-y,y+hod,1,1);
-}
-drw=!drw;
-}
-}
-function mkRect(x,y,w,h){
-var s=this.stroke;
-this.mkDiv(x,y,w,s);
-this.mkDiv(x+w,y,s,h);
-this.mkDiv(x,y+h,w+s,s);
-this.mkDiv(x,y+s,s,h-s);
-}
-function mkRectDott(x,y,w,h){
-this.drawLine(x,y,x+w,y);
-this.drawLine(x+w,y,x+w,y+h);
-this.drawLine(x,y+h,x+w,y+h);
-this.drawLine(x,y,x,y+h);
-}
-function jsgFont(){
-this.PLAIN="font-weight:normal;";
-this.BOLD="font-weight:bold;";
-this.ITALIC="font-style:italic;";
-this.ITALIC_BOLD=this.ITALIC+this.BOLD;
-this.BOLD_ITALIC=this.ITALIC_BOLD;
-}
-var Font=new jsgFont();
-function jsgStroke(){
-this.DOTTED=-1;
-}
-var Stroke=new jsgStroke();
-function jsGraphics(id,wnd){
-this.setColor=new Function("arg","this.color = arg;");
-this.getColor=new Function("return this.color");
-this.setStroke=function(x){
-this.stroke=x;
-if(!(x+1)){
-this.drawLine=mkLinDott;
-this.mkOv=mkOvDott;
-this.drawRect=mkRectDott;
-}else{
-if(x-1>0){
-this.drawLine=mkLin2D;
-this.mkOv=mkOv2D;
-this.drawRect=mkRect;
-}else{
-this.drawLine=mkLin;
-this.mkOv=mkOv;
-this.drawRect=mkRect;
-}
-}
-};
-this.setPrintable=function(arg){
-this.printable=arg;
-this.mkDiv=jg_n4?mkLyr:arg?mkDivPrint:mkDiv;
-};
-this.setFont=function(fam,sz,sty){
-this.ftFam=fam;
-this.ftSz=sz;
-this.ftSty=sty||Font.PLAIN;
-};
-this.drawPolyline=this.drawPolyLine=function(x,y,s){
-var i=x.length-1;
-while(i>=0){
-this.drawLine(x[i],y[i],x[--i],y[i]);
-}
-};
-this.fillRect=function(x,y,w,h){
-this.mkDiv(x,y,w,h);
-};
-this.fillRectPattern=function(x,y,w,h,url){
-this.htm+="";
-};
-this.drawHandle=function(x,y,w,h,_62){
-this.htm+="";
-};
-this.drawHandleBox=function(x,y,w,h,_67){
-this.htm+="";
-};
-this.drawPolygon=function(x,y){
-this.drawPolyline(x,y);
-this.drawLine(x[x.length-1],y[x.length-1],x[0],y[0]);
-};
-this.drawEllipse=this.drawOval=function(x,y,w,h){
-this.mkOv(x,y,w,h);
-};
-this.fillEllipse=this.fillOval=function(_6e,top,w,h){
-var a=(w-=1)>>1,b=(h-=1)>>1,wod=(w&1)+1,hod=(h&1)+1,cx=_6e+a,cy=top+b,x=0,y=b,ox=0,oy=b,aa2=(a*a)<<1,aa4=aa2<<1,bb=(b*b)<<1,st=(aa2>>1)*(1-(b<<1))+bb,tt=(bb>>1)-aa2*((b<<1)-1),pxl,dw,dh;
-if(w+1){
-while(y>0){
-if(st<0){
-st+=bb*((x<<1)+3);
-tt+=(bb<<1)*(++x);
-}else{
-if(tt<0){
-st+=bb*((x<<1)+3)-aa4*(y-1);
-pxl=cx-x;
-dw=(x<<1)+wod;
-tt+=(bb<<1)*(++x)-aa2*(((y--)<<1)-3);
-dh=oy-y;
-this.mkDiv(pxl,cy-oy,dw,dh);
-this.mkDiv(pxl,cy+oy-dh+hod,dw,dh);
-ox=x;
-oy=y;
-}else{
-tt-=aa2*((y<<1)-3);
-st-=aa4*(--y);
-}
-}
-}
-}
-this.mkDiv(cx-a,cy-oy,w+1,(oy<<1)+hod);
-};
-this.drawString=mkLbl;
-this.clear=function(){
-this.htm="";
-if(this.cnv){
-this.cnv.innerHTML=this.defhtm;
-}
-};
-this.mkOvQds=function(cx,cy,xl,xr,yt,yb,w,h){
-this.mkDiv(xr+cx,yt+cy,w,h);
-this.mkDiv(xr+cx,yb+cy,w,h);
-this.mkDiv(xl+cx,yb+cy,w,h);
-this.mkDiv(xl+cx,yt+cy,w,h);
-};
-this.setStroke(1);
-this.setPrintable(false);
-this.setFont("verdana,geneva,helvetica,sans-serif",String.fromCharCode(49,50,112,120),Font.PLAIN);
-this.color="#000000";
-this.htm="";
-this.wnd=wnd||window;
-if(!(jg_ie||jg_dom||jg_ihtm)){
-chkDHTM();
-}
-if(typeof id!="string"||!id){
-this.paint=pntDoc;
-}else{
-this.cnv=document.all?(this.wnd.document.all[id]||null):document.getElementById?(this.wnd.document.getElementById(id)||null):null;
-this.defhtm=(this.cnv&&this.cnv.innerHTML)?this.cnv.innerHTML:"";
-this.paint=jg_dom?pntCnvDom:jg_ie?pntCnvIe:jg_ihtm?pntCnvIhtm:pntCnv;
-}
-}
-
+/* This compressed file is part of Xinha. For uncomressed sources, forum, and bug reports, go to xinha.org */
+var jg_ihtm,jg_ie,jg_dom,jg_n4=(document.layers&&typeof document.classes!="undefined");function chkDHTM(a,b){a=document.body||null;jg_ie=(a&&typeof a.insertAdjacentHTML!="undefined");jg_dom=(a&&!jg_ie&&typeof a.appendChild!="undefined"&&typeof document.createRange!="undefined"&&typeof(b=document.createRange()).setStartBefore!="undefined"&&typeof b.createContextualFragment!="undefined");jg_ihtm=(!jg_ie&&!jg_dom&&a&&typeof a.innerHTML!="undefined")}function pntDoc(){this.wnd.document.write(this.htm);this.htm=""}function pntCnvDom(){var a=document.createRange();a.setStartBefore(this.cnv);a=a.createContextualFragment(this.htm);this.cnv.appendChild(a);this.htm=""}function pntCnvIe(){this.cnv.insertAdjacentHTML("BeforeEnd",this.htm);this.htm=""}function pntCnvIhtm(){this.cnv.innerHTML+=this.htm;this.htm=""}function pntCnv(){this.htm=""}function mkDiv(a,d,b,c){this.htm+=''}function mkDivPrint(a,d,b,c){this.htm+=''}function mkLyr(a,d,b,c){this.htm+='\n'}function mkLbl(b,a,c){this.htm+=''+b+"
"}function mkLin(e,m,b,k){if(e>b){var j=b;var g=k;b=e;k=m;e=j;m=g}var q=b-e,o=Math.abs(k-m),l=e,i=m,n=(m>k)?-1:1;if(q>=o){var a=o<<1,h=a-(q<<1),d=a-q,f=l;while((q--)>0){++l;if(d>0){this.mkDiv(f,i,l-f,1);i+=n;d+=h;f=l}else{d+=a}}this.mkDiv(f,i,b-f+1,1)}else{var a=q<<1,h=a-(o<<1),d=a-o,c=i;if(k<=m){while((o--)>0){if(d>0){this.mkDiv(l++,i,1,c-i+1);i+=n;d+=h;c=i}else{i+=n;d+=a}}this.mkDiv(b,k,1,c-k+1)}else{while((o--)>0){i+=n;if(d>0){this.mkDiv(l++,c,1,i-c);d+=h;c=i}else{d+=a}}this.mkDiv(b,c,1,k-c+1)}}}function mkLin2D(r,b,q,a){if(r>q){var f=q;var n=a;q=r;a=b;r=f;b=n}var j=q-r,i=Math.abs(a-b),h=r,g=b,m=(b>a)?-1:1;var k=this.stroke;if(j>=i){if(k-3>0){var t=(k*j*Math.sqrt(1+i*i/(j*j))-j-(k>>1)*i)/j;t=(!(k-4)?Math.ceil(t):Math.round(t))+1}else{var t=k}var u=Math.ceil(k/2);var o=i<<1,e=o-(j<<1),l=o-j,d=h;while((j--)>0){++h;if(l>0){this.mkDiv(d,g,h-d+u,t);g+=m;l+=e;d=h}else{l+=o}}this.mkDiv(d,g,q-d+u+1,t)}else{if(k-3>0){var t=(k*i*Math.sqrt(1+j*j/(i*i))-(k>>1)*j-i)/i;t=(!(k-4)?Math.ceil(t):Math.round(t))+1}else{var t=k}var u=Math.round(k/2);var o=j<<1,e=o-(i<<1),l=o-i,c=g;if(a<=b){++u;while((i--)>0){if(l>0){this.mkDiv(h++,g,t,c-g+u);g+=m;l+=e;c=g}else{g+=m;l+=o}}this.mkDiv(q,a,t,c-a+u)}else{while((i--)>0){g+=m;if(l>0){this.mkDiv(h++,c,t,g-c+u);l+=e;c=g}else{l+=o}}this.mkDiv(q,c,t,a-c+u+1)}}}function mkLinDott(d,k,b,i){if(d>b){var h=b;var e=i;b=d;i=k;d=h;k=e}var o=b-d,n=Math.abs(i-k),j=d,g=k,m=(k>i)?-1:1,l=true;if(o>=n){var a=n<<1,f=a-(o<<1),c=a-o;while((o--)>0){if(l){this.mkDiv(j,g,1,1)}l=!l;if(c>0){g+=m;c+=f}else{c+=a}++j}if(l){this.mkDiv(j,g,1,1)}}else{var a=o<<1,f=a-(n<<1),c=a-n;while((n--)>0){if(l){this.mkDiv(j,g,1,1)}l=!l;g+=m;if(c>0){++j;c+=f}else{c+=a}}if(l){this.mkDiv(j,g,1,1)}}}function mkOv(g,p,r,q){var v=r>>1,u=q>>1,o=r&1,f=(q&1)+1,e=g+v,d=p+u,m=0,l=u,j=0,i=u,z=(v*v)<<1,k=(u*u)<<1,s=(z>>1)*(1-(u<<1))+k,c=(k>>1)-z*((u<<1)-1),n,t;while(l>0){if(s<0){s+=k*((m<<1)+3);c+=(k<<1)*(++m)}else{if(c<0){s+=k*((m<<1)+3)-(z<<1)*(l-1);c+=(k<<1)*(++m)-z*(((l--)<<1)-3);n=m-j;t=i-l;if(n&2&&t&2){this.mkOvQds(e,d,-m+2,j+o,-i,i-1+f,1,1);this.mkOvQds(e,d,-m+1,m-1+o,-l-1,l+f,1,1)}else{this.mkOvQds(e,d,-m+1,j+o,-i,i-t+f,n,t)}j=m;i=l}else{c-=z*((l<<1)-3);s-=(z<<1)*(--l)}}}this.mkDiv(e-v,d-i,v-j+1,(i<<1)+f);this.mkDiv(e+j+o,d-i,v-j+1,(i<<1)+f)}function mkOv2D(e,f,c,d){var G=this.stroke;c+=G-1;d+=G-1;var R=c>>1,P=d>>1,O=c&1,z=(d&1)+1,o=e+R,n=f+P,E=0,B=P,k=(R*R)<<1,U=(P*P)<<1,g=(k>>1)*(1-(P<<1))+U,N=(U>>1)-k*((P<<1)-1);if(G-4<0&&(!(G-2)||c-51>0&&d-51>0)){var r=0,q=P,F,L,D,v,u,I,t;while(B>0){if(g<0){g+=U*((E<<1)+3);N+=(U<<1)*(++E)}else{if(N<0){g+=U*((E<<1)+3)-(k<<1)*(B-1);N+=(U<<1)*(++E)-k*(((B--)<<1)-3);F=E-r;L=q-B;if(F-1){t=F+1+(G&1);L=G}else{if(L-1){t=G;L+=1+(G&1)}else{t=L=G}}this.mkOvQds(o,n,-E+1,r-t+F+O,-q,-L+q+z,t,L);r=E;q=B}else{N-=k*((B<<1)-3);g-=(k<<1)*(--B)}}}this.mkDiv(o-R,n-q,G,(q<<1)+z);this.mkDiv(o+R+O-G+1,n-q,G,(q<<1)+z)}else{var S=(c-((G-1)<<1))>>1,Q=(d-((G-1)<<1))>>1,C=0,A=Q,m=(S*S)<<1,T=(Q*Q)<<1,j=(m>>1)*(1-(Q<<1))+T,M=(T>>1)-m*((Q<<1)-1),D=new Array(),u=new Array(),H=new Array();D[0]=0;u[0]=P;H[0]=Q-1;while(B>0){if(g<0){g+=U*((E<<1)+3);N+=(U<<1)*(++E);D[D.length]=E;u[u.length]=B}else{if(N<0){g+=U*((E<<1)+3)-(k<<1)*(B-1);N+=(U<<1)*(++E)-k*(((B--)<<1)-3);D[D.length]=E;u[u.length]=B}else{N-=k*((B<<1)-3);g-=(k<<1)*(--B)}}if(A>0){if(j<0){j+=T*((C<<1)+3);M+=(T<<1)*(++C);H[H.length]=A-1}else{if(M<0){j+=T*((C<<1)+3)-(m<<1)*(A-1);M+=(T<<1)*(++C)-m*(((A--)<<1)-3);H[H.length]=A-1}else{M-=m*((A<<1)-3);j-=(m<<1)*(--A);H[H.length-1]--}}}}var r=0,q=P,p=H[0],J=D.length,F,L;for(var K=0;K>1,s=o>>1,k=q&1,f=o&1,e=g+t,d=l+s,j=0,i=s,p=(t*t)<<1,m=p<<1,h=(s*s)<<1,r=(p>>1)*(1-(s<<1))+h,c=(h>>1)-p*((s<<1)-1),n=true;while(i>0){if(r<0){r+=h*((j<<1)+3);c+=(h<<1)*(++j)}else{if(c<0){r+=h*((j<<1)+3)-m*(i-1);c+=(h<<1)*(++j)-p*(((i--)<<1)-3)}else{c-=p*((i<<1)-3);r-=m*(--i)}}if(n){this.mkOvQds(e,d,-j,j+k,-i,i+f,1,1)}n=!n}}function mkRect(a,e,b,d){var c=this.stroke;this.mkDiv(a,e,b,c);this.mkDiv(a+b,e,c,d);this.mkDiv(a,e+d,b+c,c);this.mkDiv(a,e+c,c,d-c)}function mkRectDott(a,d,b,c){this.drawLine(a,d,a+b,d);this.drawLine(a+b,d,a+b,d+c);this.drawLine(a,d+c,a+b,d+c);this.drawLine(a,d,a,d+c)}function jsgFont(){this.PLAIN="font-weight:normal;";this.BOLD="font-weight:bold;";this.ITALIC="font-style:italic;";this.ITALIC_BOLD=this.ITALIC+this.BOLD;this.BOLD_ITALIC=this.ITALIC_BOLD}var Font=new jsgFont();function jsgStroke(){this.DOTTED=-1}var Stroke=new jsgStroke();function jsGraphics(b,a){this.setColor=new Function("arg","this.color = arg;");this.getColor=new Function("return this.color");this.setStroke=function(c){this.stroke=c;if(!(c+1)){this.drawLine=mkLinDott;this.mkOv=mkOvDott;this.drawRect=mkRectDott}else{if(c-1>0){this.drawLine=mkLin2D;this.mkOv=mkOv2D;this.drawRect=mkRect}else{this.drawLine=mkLin;this.mkOv=mkOv;this.drawRect=mkRect}}};this.setPrintable=function(c){this.printable=c;this.mkDiv=jg_n4?mkLyr:c?mkDivPrint:mkDiv};this.setFont=function(d,e,c){this.ftFam=d;this.ftSz=e;this.ftSty=c||Font.PLAIN};this.drawPolyline=this.drawPolyLine=function(c,f,e){var d=c.length-1;while(d>=0){this.drawLine(c[d],f[d],c[--d],f[d])}};this.fillRect=function(c,f,d,e){this.mkDiv(c,f,d,e)};this.fillRectPattern=function(c,g,d,f,e){this.htm+='"};this.drawHandle=function(c,g,d,e,f){this.htm+=''};this.drawHandleBox=function(c,g,d,e,f){this.htm+=''};this.drawPolygon=function(c,d){this.drawPolyline(c,d);this.drawLine(c[c.length-1],d[c.length-1],c[0],d[0])};this.drawEllipse=this.drawOval=function(c,f,d,e){this.mkOv(c,f,d,e)};this.fillEllipse=this.fillOval=function(g,r,n,v){var B=(n-=1)>>1,A=(v-=1)>>1,o=(n&1)+1,f=(v&1)+1,e=g+B,d=r+A,m=0,l=A,j=0,i=A,t=(B*B)<<1,s=t<<1,k=(A*A)<<1,u=(t>>1)*(1-(A<<1))+k,c=(k>>1)-t*((A<<1)-1),q,p,z;if(n+1){while(l>0){if(u<0){u+=k*((m<<1)+3);c+=(k<<1)*(++m)}else{if(c<0){u+=k*((m<<1)+3)-s*(l-1);q=e-m;p=(m<<1)+o;c+=(k<<1)*(++m)-t*(((l--)<<1)-3);z=i-l;this.mkDiv(q,d-i,p,z);this.mkDiv(q,d+i-z+f,p,z);j=m;i=l}else{c-=t*((l<<1)-3);u-=s*(--l)}}}}this.mkDiv(e-B,d-i,n+1,(i<<1)+f)};this.drawString=mkLbl;this.clear=function(){this.htm="";if(this.cnv){this.cnv.innerHTML=this.defhtm}};this.mkOvQds=function(d,k,j,g,f,c,e,i){this.mkDiv(g+d,f+k,e,i);this.mkDiv(g+d,c+k,e,i);this.mkDiv(j+d,c+k,e,i);this.mkDiv(j+d,f+k,e,i)};this.setStroke(1);this.setPrintable(false);this.setFont("verdana,geneva,helvetica,sans-serif",String.fromCharCode(49,50,112,120),Font.PLAIN);this.color="#000000";this.htm="";this.wnd=a||window;if(!(jg_ie||jg_dom||jg_ihtm)){chkDHTM()}if(typeof b!="string"||!b){this.paint=pntDoc}else{this.cnv=document.all?(this.wnd.document.all[b]||null):document.getElementById?(this.wnd.document.getElementById(b)||null):null;this.defhtm=(this.cnv&&this.cnv.innerHTML)?this.cnv.innerHTML:"";this.paint=jg_dom?pntCnvDom:jg_ie?pntCnvIe:jg_ihtm?pntCnvIhtm:pntCnv}};
\ No newline at end of file