These changes look to cache the "NumberOf" properties for use during immutable loops, thus reducing API called behind the "get" accessors. There is also a change to nullify the internal curve collection caches after surface extensions to force for re-evaluation on the next "get".
I noticed that there were some odd white spacing going on. Tabs instead of spaces made things look odd in the review. I replaced tabs with 4 spaces and that tidied it up.
These changes look to cache the "NumberOf" properties for use during immutable loops, thus reducing API called behind the "get" accessors. There is also a change to nullify the internal curve collection caches after surface extensions to force for re-evaluation on the next "get".