anchor.diff:  
   /// A piece of material.
   ///
  +/// The Material widget is responsible for:
  +///
  +/// 1. Clipping: Material clips its widget sub-tree to the shape specified by
  +///    [type] and [borderRadius].
  +/// 2. Elevation: Material elevates its widget sub-tree on the Z axis by
  +///    [elevation] pixels, and draws the appropriate shadow.
  +/// 3. Ink effects: Material shows ink effects implemented by [InkFeature]s
  +///    like [InkSplash] and [InkHighlight] below its children.
  +///
  +/// ## The Material Metaphor
  +///
   /// Material is the central metaphor in material design. Each piece of material
   /// exists at a given elevation, which influences how that piece of material
   /// visually relates to other pieces of material and how that material casts
  
positive.code:   button,
  
    /// A transparent piece of material that draws ink splashes and highlights.
    transparency
  }
  
  
negative.code: /// [InkSplash] and [InkHighlight] effects. To trigger a reaction on the
  /// material, use a [MaterialInkController] obtained via [Material.of].
  ///
  /// In general, the features of a [Material] should not change over time (e.g. a
  /// [Material] should not change its [color], [shadowColor] or [type]). The one
  /// exception is the [elevation], changes to which will be animated.
  ///
  /// ## Shape
  ///
  /// The shape for material is determined by [type] and [borderRadius].
  ///
  ///  - If [borderRadius] is non null, the shape is a rounded rectangle, with
  ///    corners specified by [borderRadius].
  ///  - If [borderRadius] is null, [type] determines the shape as follows:
  ///    - [MaterialType.canvas]: the default material shape is a rectangle.
  ///    - [MaterialType.card]: the default material shape is a rectangle with
  ///      rounded edges. The edge radii is specified by [kMaterialEdges].
  ///    - [MaterialType.circle]: the default material shape is a circle.
  ///    - [MaterialType.button]: the default material shape is a rectangle with
  ///      rounded edges. The edge radii is specified by [kMaterialEdges].
  ///    - [MaterialType.transparency]: the default material shape is a rectangle.
  ///
  /// ## Layout change notifications
  ///
  /// If the layout changes (e.g. because there's a list on the material, and it's
  /// been scrolled), a [LayoutChangedNotification] must be dispatched at the
  