//--BmoջD--//
//ղ씵
function D0(y,m,d){
  var ifG=ifGr(y,m,d,1);
  var monL=new Array(0,31,28,31,30,31,30,31,31,30,31,30,31);
  if(ifG)
    if((y%100!=0&&y%4==0)||(y%400==0))
      monL[2]+=1;
    else ;
  else
    if(y%4==0)
      monL[2]+=1;
    else ;
  var v=0;
  for(var i=0;i<=m-1;i++){
    v+=monL[i];
  }
  v+=d;
  if(y==1582){
    if(ifG==1)
      v-=10;
    if(ifG==-1)
      v=1/0;  //infinity 
  }
  return v;
}
//ղ씵
function antiD0(y,x){
 var yL=D0(y,12,31)-D0(y,1,0);
 var yL2=D0(y-1,12,31)-D0(y-1,1,0);
 if(x<1){
  var m=1;
  var x=x+yL2;
 for(var j=1;j<=12;j++){
    var mL=D0(y-1,j+1,1)-D0(y-1,j,1);
    if(x<=mL||j==12){
      var m=j-12;
      break;
    }
    else 
       x-=mL; 
  }
  return 100*m+x;
  }else{
 if(x>yL){
  var m=1;
  var x=x-yL;
 for(var j=1;j<=12;j++){
    var mL=D0(y+1,j+1,1)-D0(y+1,j,1);
    if(x<=mL||j==12){
      var m=j+12;
      break;
    }
    else 
       x-=mL; 
  }
  return 100*m+x;
  }else{
  var m=1;
  for(var j=1;j<=12;j++){
    var mL=D0(y,j+1,1)-D0(y,j,1);
    if(x<=mL||j==12){
      var m=j;
      break;
    }
    else 
       x-=mL; 
  }
  return 100*m+x;
}}
}
//씵
function D(y){
  var v=(y-1)*365+floor((y-1)/4);  //Julian씵
  if(y>1582)
    v+=-floor((y-1)/100)+floor((y-1)/400);  //Gregorian씵
  return v;
}
//Ч˜씵--Ԫ112̖0
function erD(y,m,d){
  var v=(y-1)*365+floor((y-1)/4)+D0(y,m,d)-2;  //JulianĵЧ˜씵
  if(y>1582)
    v+=-floor((y-1)/100)+floor((y-1)/400)+2;  //GregorianĵЧ˜씵
  return v;
}
//Ч씵--ǰ471311̖0
function erJD(y,m,d){
  var v=(y-1)*365+floor((y-1)/4)+D0(y,m,d)-2;
  if(y>1582)
    v+=-floor((y-1)/100)+floor((y-1)/400)+2;
  var jd=(v+1721425);//Ч
  return jd;
}
//
function JD(y,m,d,h,min,sec,zone){
  var ifG=ifGr(y,m,d,1);
  var jt=(h+(min+sec/60)/60)/24-0.5-zone/24;
  var jd=(ifG)?(erD(y,m,d)+1721425+jt):(erD(y,m,d)+1721425+jt);//
  return jd;
}
  function reerJD(jd){ //Ч씵D
   var D='';var A='';var D3=0;var D4=0;var D5=0;var D6=365.25;
   var A=jd;
   if(A>=2299239)D5=10; if(A>=2299239)D6=365.2425; 
   var y=floor((A+D5)/D6)-4712;var y1=y;
   var dd9=erJD(y1,1,1);
   var dd92=erJD(y1-1,1,1);   
   var u0D1=A-dd9+1;if(u0D1<=0)u0D1=A-dd92+1,y1=y-1;
   var sDt1=u0D1;
  var sD1=antiD0(y1,floor(sDt1));
  var M=floor(sD1/100); 
  var Dt=sD1%100;
  var D=Dt;
  if(y==1582&&M==10&&D>=5)D=Dt+10;
  var ymd=y1+','+M+','+D;
 return ymd;
  }
  function revJD(jd){ //ՔD
   var D='';var A='';var D3=0;var D4=0;var D5=0;var D6=365.25;
   var A=floor(jd+1-0.167);var F=tail(jd);//ȡñrgՔAСF
   if(A>=2299239)D5=10; if(A>=2299239)D6=365.2425; 
   var y=floor((A+D5)/D6)-4712;var y1=y;
   var dd9=round(JD(y1,1,1,20,0,0,8)*1000)/1000;
   var dd92=round(JD(y1-1,1,1,20,0,0,8)*1000)/1000;   
   var u0D1=A-dd9+1;if(u0D1<=0)u0D1=A-dd92+1,y1=y-1;
   var sDt1=u0D1;
  var sD1=antiD0(y1,floor(sDt1));
  var M=floor(sD1/100); 
  var Dt=sD1%100;
  var D=Dt;
  if(y==1582&&M==10&&D>=5)D=Dt+10;
  var ymd=y1+','+M+','+D;
 return ymd;
  }

