@Override
 public Drawable mutate() {
   if (!mMutated && super.mutate() == this) {
     final int N = mDrawableContainerState.getChildCount();
     final Drawable[] drawables = mDrawableContainerState.getChildren();
     for (int i = 0; i < N; i++) {
       if (drawables[i] != null) drawables[i].mutate();
     }
     mMutated = true;
   }
   return this;
 }