anchor.diff:    start,
     end,
     center,
  +  stretch,
   }
   
   typedef double _ChildSizingFunction(RenderBox child, BoxConstraints constraints);
  
positive.code:       if (flex > 0) {
          totalFlex += child.parentData.flex;
        } else {
          BoxConstraints innerConstraints = new BoxConstraints(maxHeight: constraints.maxHeight,
                                                               maxWidth: constraints.maxWidth);
          child.layout(innerConstraints, parentUsesSize: true);
          freeSpace -= _getMainSize(child);
          crossSize = math.max(crossSize, _getCrossSize(child));
  
negative.code:       assert(child.parentData is FlexBoxParentData);
        double childCrossPosition;
        switch (_alignItems) {
          case FlexAlignItems.stretch:
          case FlexAlignItems.start:
            childCrossPosition = 0.0;
            break;
  