public static Stella_Object accessTruthValueSlotValue(TruthValue self, Symbol slotname, Stella_Object value, boolean setvalueP) {
    if (slotname == Logic.SYM_LOGIC_POLARITY) {
      if (setvalueP) {
        self.polarity = ((Keyword)(value));
      }
      else {
        value = self.polarity;
      }
    }
    else if (slotname == Logic.SYM_LOGIC_STRENGTH) {
      if (setvalueP) {
        self.strength = ((Keyword)(value));
      }
      else {
        value = self.strength;
      }
    }
    else if (slotname == Logic.SYM_LOGIC_POSITIVE_SCORE) {
      if (setvalueP) {
        self.positiveScore = ((FloatWrapper)(value)).wrapperValue;
      }
      else {
        value = FloatWrapper.wrapFloat(self.positiveScore);
      }
    }
    else {
      if (setvalueP) {
        KeyValueList.setDynamicSlotValue(self.dynamicSlots, slotname, value, null);
      }
      else {
        value = self.dynamicSlots.lookup(slotname);
      }
    }
    return (value);
  }