code: @UiThread
      public void notifyChildInserted(int parentPosition, int childPosition) {
          int flatParentPosition = getFlatParentPosition(parentPosition);
          ExpandableWrapper<P, C> parentWrapper = mFlatItemList.get(flatParentPosition);
  
          parentWrapper.setParent(mParentList.get(parentPosition));
          if (parentWrapper.isExpanded()) {
              ExpandableWrapper<P, C> child = parentWrapper.getWrappedChildList().get(childPosition);
              mFlatItemList.add(flatParentPosition + childPosition + 1, child);
              notifyItemInserted(flatParentPosition + childPosition + 1);
          }
      }
docs: Notify any registered observers that the parent reflected at {@code parentPosition}
  has a child list item that has been newly inserted at {@code childPosition}.
  The child list item previously at {@code childPosition} is now at
  position {@code childPosition + 1}.
  <p>
  This is a structural change event. Representations of other existing items in the
  data set are still considered up to date and will not be rebound, though their
  positions may be altered.
  
  @param parentPosition Position of the parent which has been added a child, relative
  to the list of parents only.
  @param childPosition Position of the child that has been inserted, relative to children
  of the parent specified by {@code parentPosition} only.