public void BeginProperty(object instance, BsonProperty property)
        {
            var value = property.Value as BsonPropertyValue;

            if (value == null)
            {
                return;
            }

            _isDictionaryProperty = value.IsDictionary;
            _types.Push(value.Type);
            property.Value = value.Value;
        }
 public void EndProperty(object instance, BsonProperty property)
 {
     _types.Pop();
 }