`PooledMemoryStream` uses buffer pool to avoid allocating memory. But currently itself allocates multiple linked list related objects