NFTypeSerializer<TypeD> serializer = stateEngine.getSerializer("TypeD");
FastBlobSchema typeDSchema = serializer.getFastBlobSchema();
FastBlobSerializationRecord rec = new FastBlobSerializationRecord(typeDSchema);
rec.setImageMembershipsFlags(FastBlobImageUtils.ONE_TRUE);
TypeD typeD = new TypeD(100, new TypeA(3, 3));
serializer.serialize(typeD, rec);
FastBlobDeserializationRecord deserializationRec = createDeserializationRecord(typeDSchema, rec);
FastBlobDeserializationRecord remappedRec = remapOrdinals(typeDSchema, deserializationRec);
TypeD deserializedTypeD = serializer.deserialize(remappedRec);
Assert.assertEquals(Integer.valueOf(100), deserializedTypeD.getVal());
Assert.assertEquals(new TypeA(1, 1), deserializedTypeD.getTypeA());
}