protected static Ptg calcIferror( Ptg[] operands )
	{
		if( (operands == null) || (operands.length != 2) )
		{
			return new PtgErr( PtgErr.ERROR_VALUE );
		}
		if( !(operands[0] instanceof PtgArray) )
		{
			PtgBool ret = (PtgBool) InformationCalculator.calcIserror( operands );
			if( ret.getBooleanValue() )    // it's an error
			{
				return operands[1];
			}
			// it's not; return calculated results of 1st operand

			return operands[0];
		}
		Ptg[] components = operands[0].getComponents();
		String retArray = "";
		for( Ptg component : components )
		{
			Ptg[] test = new Ptg[1];
			test[0] = component;
			PtgBool ret = (PtgBool) InformationCalculator.calcIserror( test );
			if( ret.getBooleanValue() )    // it's an error
			{
				retArray = retArray + operands[1] + ",";
			}
			else                        // it's not; return calculated results of 1st operand
			{
				retArray = retArray + test[0] + ",";
			}
		}
		retArray = "{" + retArray.substring( 0, retArray.length() - 1 ) + "}";
		PtgArray pa = new PtgArray();
		pa.setVal( retArray );
		return pa;
	}