#    variables.extend([specials.item(i) for i in range(specials.length)])
             #primitives=obj.getElementsByTagName("primitive")
             #if primitives.length > 0:
             #    variables.extend([primitives.item(i) for i in range(primitives.length)])
         # tag along subitems
         objclasses=obj.childNodes
         for objclass in [objclasses.item(i) for i in range(objclasses.length) if objclasses.item(i).nodeName == "class"]:
             subnodes=objclass.childNodes
             for variable in [subnodes.item(i) for i in range(subnodes.length) if subnodes.item(i).nodeName == "special-object" or subnodes.item(i).nodeName == "primitive"]:
                 #for variable in variables:
                 print>>fout,"%s=%s" % (variable.getAttribute("name"),variable.getAttribute("value")),
     print>>fout
 else: # native java serialization
     # deserialize that object
     obj=ObjectInputStream(ByteArrayInputStream(message)).readObject()
     msgtime=obj.getSchedule()
     if type(msgtime) == com.ibm.itim.scheduling.RecurringIntervalSchedule:
         timestring="Every %s mins%s" %(msgtime.getInterval(), "and %s secs" % msgtime.getIntervalSec() if msgtime.getIntervalSec() else "")
     elif type(msgtime) == com.ibm.itim.scheduling.RecurringTimeSchedule:
         timearray=[]
         if msgtime.isDaily():
             timearray.append("daily")
         if msgtime.isMonthly():
             timearray.append("monthly")
         if msgtime.isWeekly():
             timearray.append("weekly")
         if msgtime.isHourly():
             timearray.append("hourly")
         if msgtime.isMinutely():
             timearray.append("every minute")
         if msgtime.isQuarterly():