public static Stella_Object access_PLObjectUnion_Slot_Value(PLObjectUnion self, Symbol slotname, Stella_Object value, boolean setvalueP) {
    if (slotname == GuiServer.SYM_GUI_SERVER_Type) {
      if (setvalueP) {
        self.Type = ((StringWrapper)(value)).wrapperValue;
      }
      else {
        value = StringWrapper.wrapString(self.Type);
      }
    }
    else if (slotname == GuiServer.SYM_GUI_SERVER_PLSurrogate) {
      if (setvalueP) {
        self.PLSurrogate = ((PLSurrogate)(value));
      }
      else {
        value = self.PLSurrogate;
      }
    }
    else if (slotname == GuiServer.SYM_GUI_SERVER_LiteralValue) {
      if (setvalueP) {
        self.LiteralValue = ((StringWrapper)(value)).wrapperValue;
      }
      else {
        value = StringWrapper.wrapString(self.LiteralValue);
      }
    }
    else {
      { OutputStringStream stream000 = OutputStringStream.newOutputStringStream();

        stream000.nativeStream.print("`" + slotname + "' is not a valid case option");
        throw ((StellaException)(StellaException.newStellaException(stream000.theStringReader()).fillInStackTrace()));
      }
    }
    return (value);
  }