function setMissesSizes(){
// set sizes
    missesSize= (2*(eval(p.missesSize.selectedIndex)-1))+4 
    missesSizeIndex=eval(p.missesSize.selectedIndex-1)
    misses="Misses";
    var numSizes=8
    custom=0;
    p.height.value="??"
    p.weight.value="??"; 
    
    
    if(missesSize< 12){				
		wearerChest=34+missesSizeIndex*1;
	}
    else{	 wearerChest=38.5 +(missesSizeIndex-4)*1.5; }

    if(p.missesSize.selectedIndex==0){
		custom=1; missesSize="custom"; p.height.value="??"
		p.weight.value="??"; 
	 }

    else if(p.missesSize.selectedIndex==11){
    //alert("doll");
		p.chest.value=13.0;
		p.shoulderWidth.value=p.wearerShoulderWidth.value= 5;
		p.neckWidth.value=2.5;
		p.frontNeckDepth.value =p.neckWidth.value;
		p.cuffWidth.value=3.5;   
		p.wearerShoulderWidth.value=6;
		p.shoulderSlope.value=Math.round(10*1*18/64)/10;
		p.armLength.value=5;
		p.armHoleDepth.value=3.5;
		p.totalLength.value=5;
	
		p.buttonBandWidth.value=0.3;
		//p.neckTrim.value=0.3;
		p.cuffTrim.value=.6;
		p.bodyTrim.value=.6;
	
		p.sleeveWidth.value=Math.round(10*divide(p.chest.value,2.7))/10;
	
    }
    else{ // missy size.
		height =63.5 + missesSizeIndex*0.5-Math.min(Math.max(missesSizeIndex-3,0)*0.5,0.5);// size 12 skilled in Jills book.
		height=Math.min(height,66.5);
    
		p.height.value=myRound(height);

		weight=113 + (missesSizeIndex)*11.5 - Math.max(missesSizeIndex-4,1)*1.5// -Math.max(0, missesSizeIndex-2) * 10.5/2 //+Math.max(0, missesSizeIndex-5)*1.5
		if(3<missesSizeIndex){ weight=weight-9.0 }
    
		p.weight.value=myRound(weight);
		//alert(height + ": weight= " +weight + ":index= " + missesSizeIndex);


	chestEase=1.5*(1 +1*wearerChest/34);  p.chest.value=Math.round((wearerChest+chestEase)*10)/10;
	shoulder = 12.5+ missesSizeIndex*0.32; shoulderEase=5*(1/2)+0.2;
	//p.shoulderWidth.value = Math.round(10*(shoulder+shoulderEase))/10;
	p.wearerShoulderWidth.value=Math.round(10*(shoulder))/10;
	armholeDepthSweater = 8 + missesSizeIndex*(9.5-8)/numSizes;
	p.armHoleDepth.value =Math.round(10*(armholeDepthSweater +1.25 ))/10 ;  // Add 1" because measured from cllar extra here. a little more because it's a cardi.
	sweaterLength=24.0+Math.max(missesSizeIndex,7)*0.25; p.totalLength.value=Math.round(sweaterLength*10)/10-2.8; 
    
	headCirc = 21.25 + (23-21.25)*missesSizeIndex/numSizes;
	headNeck= 0.8* headCirc/2.7;
	shoulderNeck= shoulder/3;
    
	largeNeck= Math.max(headNeck,shoulderNeck)
	smallNeck=Math.min(headNeck,shoulderNeck)
    
	p.neckWidth.value= Math.round(10*(largeNeck+.1))/10;
	p.frontNeckDepth.value =p.neckWidth.value;
	p.shoulderSlope.value=1.0
	
	wrist=5.5+missesSizeIndex*(6.25-5.5)/numSizes;
	p.cuffWidth.value=Math.round((wrist+3)*10)/10;
	
	armholeDepth = 7.25 +missesSizeIndex*(8-7.25)/numSizes; // body
	lowerSleeveLength = 16.5+ missesSizeIndex*(17.25-16.5)/numSizes
	sleeveLength= lowerSleeveLength + armholeDepth;
	//fullSleeveLength = sleeveLength+shoulder/2;
	
	p.armLength.value=Math.round(sleeveLength*10)/10;
	p.wearerShoulderWidth.value=Math.round(shoulder*10)/10;
	
	bicep=10.25 +missesSizeIndex*(13-10.25)/numSizes;	
	bicepEase = chestEase/1.8;

	p.sleeveWidth.value=bicep+bicepEase+2;
	
		
	p.buttonBandWidth.value=1;
	//p.neckTrim.value=1;
	p.cuffTrim.value=2;
	p.bodyTrim.value=2;
    }
    
    // finish up misses stuff.
    // enter minimum sleeve values for raglans
    chestWidth=divide(p.chest.value,2);
    neckWidth=eval(p.neckWidth.value);
    shoulder=eval(p.wearerShoulderWidth.value)
  

    p.minSleeveWidth.value=chestWidth-neckWidth;
    p.sleeveWidth.value=Math.max(p.minSleeveWidth.value,p.sleeveWidth.value);
    
    
    // Band can't be too small.
	p.backNeckDepth.value=divide(sub(p.sleeveWidth.value,p.minSleeveWidth.value),2);
	//alert("misses: " + p.backNeckDepth.value +"= ("+p.sleeveWidth.value+ " - " + p.minSleeveWidth.value + ")/2)" );
// standard Sleeve Length reaches wrist.
// 	       
    raglanSleeveLength = add(p.armLength.value,(shoulder-neckWidth)/2); 
	p.standardSleeveLength.value=Math.round(raglanSleeveLength*100)/100;
    if(p.missesSize.selectedIndex !=0){p.shortenSleeveLength.value=0; p.sleeveLength.value=p.standardSleeveLength.value;}// otherwise customize!
    if(p.missesSize.selectedIndex==11){p.shortenSleeveLength.value=1; }
    
    p.sleeveLength.value=sub(p.standardSleeveLength.value ,p.shortenSleeveLength.value);
   sleeveLength=eval(p.sleeveLength.value);
	
	
		
}

function setMensSizes(){
//=======MEN's
Size= mult(2,p.menSize.selectedIndex)+30;
SizeIndex=sub(p.menSize.selectedIndex,1);
custom=0;



missesSize= Size

    misses="Men's chest";
    if( eval(p.menSize.selectedIndex)==0){ missesSize="custom"; custom=1}


var numSizes=8

    p.height.value="??"
    p.weight.value="??";
if(0<eval(p.menSize.selectedIndex)){

    height = Math.min(67 + SizeIndex*1, 72);
    p.height.value=myRound(height);
    
    weight=123 + (SizeIndex-1)*14.5 + Math.max(0, SizeIndex-3)*4.25+Math.max(0, SizeIndex-5)*1.5
    p.weight.value=myRound(weight);


	chest=32+SizeIndex*2;
	
	chestEase= 1 +1*chest/34;
	//p.chestEase.value=myRound(chestEase);
	p.chest.value= add(chestEase,chest);
	
	hip =  35 + SizeIndex*2;
	
	shoulder = 15+ SizeIndex*0.5;
	shoulderEase=1/2;
	//p.shoulderWidth.value=myRound(shoulder+shoulderEase);
		
	//=============
	armholeDepth = 7.25 +SizeIndex*(9.5-7.25)/numSizes
	p.armHoleDepth.value=myRound(armholeDepth+1.5);// cardigan, plus measured from collar.
	
	sweaterLength=(14+SizeIndex*0.5)+armholeDepth + 1+ 0.4;
	p.totalLength.value=myRound(sweaterLength);
	
	//  neck
	headCirc = 23. + (25-23)*SizeIndex/numSizes;
	
	headNeck= 0.8* headCirc/2.7;
	shoulderNeck= shoulder/3;
	
	largeNeck= Math.max(headNeck,shoulderNeck)
	smallNeck=Math.min(headNeck,shoulderNeck)
	
	p.neckWidth.value= myRound(largeNeck+0.1);
	p.frontNeckDepth.value =p.neckWidth.value;
	p.shoulderSlope.value=1.0
	
	wrist=6.25+SizeIndex*(8.25-6.25)/numSizes;
	p.cuffWidth.value=Math.round((wrist+3)*10)/10;
	
	
	//=======================
	lowerSleeveLength = 18+ SizeIndex*1/4;
	sleeveLength= lowerSleeveLength + armholeDepth;
	p.armLength.value=Math.round(sleeveLength*10)/10;
	
	p.sleeveLength.value= myRound(sleeveLength );
	p.wearerShoulderWidth.value=Math.round(shoulder*10)/10;
	
	// 
	
	
	bicep=10.5 +SizeIndex*0.5;
	bicepEase = chestEase/2;
	
	p.sleeveWidth.value=bicep+bicepEase+2;
	
	
	height = Math.min(68 + SizeIndex*1, 72);
	feet = Math.floor(height/12);
	inches = height%12;
	
	p.buttonBandWidth.value=1;
	    //p.neckTrim.value=1;
	    p.cuffTrim.value=2;
	    p.bodyTrim.value=2;


}
// finish up mens stuff
  // enter minimum sleeve values for raglans
    chestWidth=divide(p.chest.value,2);
    neckWidth=eval(p.neckWidth.value);
    shoulder=eval(p.wearerShoulderWidth.value)
    sleeveLength=eval(p.sleeveLength.value);
    
    p.minSleeveWidth.value=chestWidth-neckWidth;
    p.sleeveWidth.value=Math.max(p.minSleeveWidth.value,p.sleeveWidth.value);

// Band can't be too small.
	    p.backNeckDepth.value=divide(sub(p.sleeveWidth.value,p.minSleeveWidth.value),2);
	    //alert(" mens : " + p.backNeckDepth.value +"= ("+p.sleeveWidth.value+ " - " + p.minSleeveWidth.value + ")/2)" );
		
	    	
	//------------------
			
	
	fullSleeveLength = sleeveLength+shoulder/2;
	//p.fullSleeveLength.value  = myRound(fullSleeveLength); 
	//p.fullSleeveLength2.value=p.fullSleeveLength.value;

    
    raglanSleeveLength = add(p.armLength.value,(shoulder-neckWidth)/2); 
    //alert(raglanSleeveLength + " = "  +p.armLength.value + " + ( " +shoulder + " : " +neckWidth + " ) /2" );
    
	p.standardSleeveLength.value=Math.round(raglanSleeveLength*10)/10;
    if(eval(p.menSize.selectedIndex)!=0){p.shortenSleeveLength.value=0;}// otherwise customize!
    
    p.sleeveLength.value=sub(p.standardSleeveLength.value,p.shortenSleeveLength.value);

	

}
//===============Round
function myRound(value){
var roundValue= Math.round(eval(value)*10)/10
return roundValue
}

function Trim(){
if(eval(p.hemSnug.selectedIndex) ==0){notSnugHem="not snug";}
else{ notSnugHem="snug";}

if(eval(p.cuffSnug.selectedIndex) ==0){notSnugCuff="not snug";}
else if(eval(p.cuffSnug.selectedIndex) ==1) { notSnugCuff="snug";}
else{ notSnugCuff="very snug"; }

hemSnug= sub(1,divide(p.hemSnug.selectedIndex,10) )
cuffSnug= sub(1,divide(p.cuffSnug.selectedIndex,10));

cuffRibStitches=Math.round(mult(p.cuffWidth.value,p.mainStIn.value)*cuffSnug/2)*2;
cuffRibRows=Math.round(mult(p.cuffTrim.value, p.mainRowIn.value))+2;

cuffRibWidth=Math.round(mult(p.cuffWidth.value,cuffSnug)*10)/10; p.cuffRibWidth.value=Math.round(cuffRibWidth*10)/10;

frontHemRibWidth=mult(chestWidth-eval(p.buttonBandWidth.value),hemSnug);
backHemRibWidth=mult(chestWidth,hemSnug);

totalHemRibWidth=Math.round((backHemRibWidth+frontHemRibWidth)*10)/10;


frontRibStitches=Math.round(mult(frontHemRibWidth,p.mainStIn.value)*hemSnug/2);
backRibStitches=Math.round(mult(backHemRibWidth,p.mainStIn.value)*hemSnug);
bodyRibRows=Math.round(mult(p.bodyTrim.value,p.mainRowIn.value))+2;

}
