Maybe ItemSizeCollection ctor should verify that inputs are numbers, or else `NaN`s could sneak in here from the `Math.max` calls (if item doesn't define width or height).