Optimizations await vs Return Task Immutable Array Immutable List List Capacity Property Patterns String Extract Benchmark