public ShapeDistributionInformation[] ComputeChildContributions() { var toReturn = new ShapeDistributionInformation[shapes.Count]; for (int i = 0; i < shapes.Count; i++) { shapes.Elements[i].Shape.ComputeDistributionInformation(out toReturn[i]); } return toReturn; }