public async void TestWriteAsync()
        {
            var bytes    = new byte[9 * 1024];
            int position = 0;

            random.NextBytes(bytes);

            blocks.Position = 0;
            master.Position = 0;

            while (position < bytes.Length)
            {
                int n = Math.Min(bytes.Length - position, random.Next() % 4096);
                await blocks.WriteAsync(bytes, position, n);

                await master.WriteAsync(bytes, position, n);

                position += n;
            }

            await blocks.FlushAsync();

            await master.FlushAsync();
        }