isParamSet[counter - 1] = true;
    protected boolean internalExecute(boolean sendOutParams)    throws SQLException {                int counter = 0;                List inputParams = procedureCall.getInputParams();        Iterator iter = inputParams.iterator();        while(iter.hasNext()) {            FBProcedureParam param = (FBProcedureParam)iter.next();                        if (param != null && param.isParam()) {                                counter++;                                Object value = param.getValue();                FBField field = getField(counter);                                if (value == null)                    field.setNull();                else                if (value instanceof WrapperWithCalendar) {                                        Object obj = ((WrapperWithCalendar)value).getValue();                                        if (obj == null) {                        field.setNull();                    } else {                        Calendar cal = ((WrapperWithCalendar)value).getCalendar();                                                if (obj instanceof Timestamp)                            field.setTimestamp((Timestamp)obj, cal);                        else                        if (obj instanceof java.sql.Date)                            field.setDate((java.sql.Date)obj, cal);                        else                        if (obj instanceof Time)                            field.setTime((Time)obj, cal);                        else                            throw new TypeConvertionException(                                "Cannot convert type " +                                 obj.getClass().getName());                                            }                } else                 if (value instanceof WrapperWithInt) {                                        Object obj = ((WrapperWithInt)value).getValue();                                        if (obj == null) {                        field.setNull();                    } else {                        int intValue = ((WrapperWithInt)value).getIntValue();                                                if (obj instanceof InputStream)                            field.setBinaryStream((InputStream)obj, intValue);                        else                        if (obj instanceof Reader)                            field.setCharacterStream((Reader)obj, intValue);                        else                            throw new TypeConvertionException(                                "Cannot convert type " +                                 obj.getClass().getName());                                            }                                                          } else                    field.setObject(value);            }        }        return super.internalExecute(sendOutParams);    }