}
public Phasor getProduct_as_Phasor(){
if(this.suppressMessages)Conv.suppressMessages();
if(!this.productDone)this.calcProduct();
Phasor product= Phasor.zero();
switch(this.type){
case 0:
case 1:
case 2:
case 3:
case 18: product= new Phasor(((Double)this.productt.get(0)).doubleValue());
break;
case 4:
case 5:
case 6:
case 7:
case 8:
case 9:
case 10:
case 11:
case 16:
case 17: if(this.productlongToDouble){
product= new Phasor(((Double)this.productt.get(0)).doubleValue());
}
else{
product= new Phasor(((Long)this.productt.get(0)).doubleValue());
}
break;
case 12: product= new Phasor(((BigDecimal)this.productt.get(0)).doubleValue());
break;
case 13: product= new Phasor(((BigInteger)this.productt.get(0)).doubleValue());
break;
case 14:
case 15: throw new IllegalArgumentException("The " + this.typeName[this.type] + " is not a numerical type for which a productas Phasor is meaningful/supported");
default: throw new IllegalArgumentException("Data type not identified by this method");
}