.     /// </summary>     public interface IGrainPropertiesProvider     {         /// <summary>         /// Adds grain properties to <paramref name="properties"/>.         /// </summary>         void Populate(Type grainClass, GrainType grainType, Dictionary<string, string> properties);     }      /// <summary>     /// Interface for <see cref="System.Attribute"/> classes which provide information about a grain.     /// </summary>     public interface IGrainPropertiesProviderAttribute     {         /// <summary>         /// Adds grain properties to <paramref name="properties"/>.         /// </summary>         void Populate(IServiceProvider services, Type grainClass, GrainType grainType, Dictionary<string, string> properties);     }      /// <summary>     /// Provides grain interface properties from attributes implementing <see cref="IGrainPropertiesProviderAttribute"/>.     /// </summary>     public sealed class AttributeGrain