@SuppressWarnings("unchecked")
protected <T> T cycleObject(final Class<T> clazz, final T object) {
s_logger.info("object {}", object);
final FudgeSerializer fudgeSerializationContext = new FudgeSerializer(getFudgeContext());
final FudgeDeserializer fudgeDeserializationContext = new FudgeDeserializer(getFudgeContext());
FudgeMsg message = fudgeSerializationContext.objectToFudgeMsg(WriteReplaceHelper.writeReplace(object));
assertNotNull(message);
s_logger.info("message {}", message);
message = cycleMessage(message);
s_logger.info("message {}", message);
final Object newObject = fudgeDeserializationContext.fudgeMsgToObject(message);