<?xml version="1.0" encoding="utf-8"?><AutoVisualizerxmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010"><!-- rapidjson::GenericValue - basic support --><TypeName="rapidjson::GenericValue<*,*>"><DisplayStringCondition="(data_.f.flags & kTypeMask) == kNullType">null</DisplayString><DisplayStringCondition="data_.f.flags == kTrueFlag">true</DisplayString><DisplayStringCondition="data_.f.flags == kFalseFlag">false</DisplayString><DisplayStringCondition="data_.f.flags == kShortStringFlag">{data_.ss.str}</DisplayString><DisplayStringCondition="(data_.f.flags & kTypeMask) == kStringType">{(const char*)((size_t)data_.s.str & 0x0000FFFFFFFFFFFF)}</DisplayString><DisplayStringCondition="(data_.f.flags & kNumberIntFlag) == kNumberIntFlag">{data_.n.i.i}</DisplayString><DisplayStringCondition="(data_.f.flags & kNumberUintFlag) == kNumberUintFlag">{data_.n.u.u}</DisplayString><DisplayStringCondition="(data_.f.flags & kNumberInt64Flag) == kNumberInt64Flag">{data_.n.i64}</DisplayString><DisplayStringCondition="(data_.f.flags & kNumberUint64Flag) == kNumberUint64Flag">{data_.n.u64}</DisplayString><DisplayStringCondition="(data_.f.flags & kNumberDoubleFlag) == kNumberDoubleFlag">{data_.n.d}</DisplayString><DisplayStringCondition="data_.f.flags == kObjectType">Object members={data_.o.size}</DisplayString><DisplayStringCondition="data_.f.flags == kArrayType">Array members={data_.a.size}</DisplayString><Expand><ItemCondition="data_.f.flags == kObjectType"Name="[size]">data_.o.size</Item><ItemCondition="data_.f.flags == kObjectType"Name="[capacity]">data_.o.capacity</Item><ArrayItemsCondition="data_.f.flags == kObjectType"><Size>data_.o.size</Size><!-- NOTE: Rapidjson stores some extra data in the high bits of pointers, which is why the mask --><ValuePointer>(rapidjson::GenericMember<$T1,$T2>*)(((size_t)data_.o.members) & 0x0000FFFFFFFFFFFF)</ValuePointer></ArrayItems><ItemCondition="data_.f.flags == kArrayType"Name="[size]">data_.a.size</Item><ItemCondition="data_.f.flags == kArrayType"Name="[capacity]">data_.a.capacity</Item><ArrayItemsCondition="data_.f.flags == kArrayType"><Size>data_.a.size</Size><!-- NOTE: Rapidjson stores some extra data in the high bits of pointers, which is why the mask --><ValuePointer>(rapidjson::GenericValue<$T1,$T2>*)(((size_t)data_.a.elements) & 0x0000FFFFFFFFFFFF)</ValuePointer></ArrayItems></Expand></Type></AutoVisualizer>