ASSERT (fieldName == "streamInput" || fieldName == "streamOutput");
ASSERT (fieldName == "input" || fieldName == "output");
    void setIOField (String fieldName, int fieldIndex, Channel newChannel)    {        ASSERT (fieldName == "streamInput" || fieldName == "streamOutput");        Channel fieldsInstance [];        try        {            Class thisClass = this.getClass ();            ASSERT (thisClass != null);            Field ioField;            ioField  = thisClass.getField (fieldName);            if (ioField.getType () == newChannel.getClass ())            {                ASSERT (fieldIndex == 0);                ioField.set (this, newChannel);            } else {                fieldsInstance = (Channel []) ioField.get (this);                ASSERT (fieldsInstance != null);                ASSERT (fieldsInstance.length > fieldIndex);                fieldsInstance [fieldIndex] = newChannel;            }        }        catch (Throwable error)        {            // this is all the other errors:            ASSERT (false);        }    }