public object UnMarshall(XStreamReader reader, UnmarshallingContext context, Type type)
{
var result = context.FindReferenceFromCurrentNode();
if (result != null) return result;
if (reader.GetAttribute(XsAttribute.Null) == true.ToString())
return null;
result = DynamicInstanceBuilder.CreateInstance(type);
context.StackObject(result);
UnmarshalAs(result, type, reader, context);
return result;
}