Soenneker.Utils.AsyncSingleton 3.0.579

Prefix Reserved
There is a newer version of this package available.
See the version list below for details.
dotnet add package Soenneker.Utils.AsyncSingleton --version 3.0.579                
NuGet\Install-Package Soenneker.Utils.AsyncSingleton -Version 3.0.579                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Soenneker.Utils.AsyncSingleton" Version="3.0.579" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Soenneker.Utils.AsyncSingleton --version 3.0.579                
#r "nuget: Soenneker.Utils.AsyncSingleton, 3.0.579"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Soenneker.Utils.AsyncSingleton as a Cake Addin
#addin nuget:?package=Soenneker.Utils.AsyncSingleton&version=3.0.579

// Install Soenneker.Utils.AsyncSingleton as a Cake Tool
#tool nuget:?package=Soenneker.Utils.AsyncSingleton&version=3.0.579                

alternate text is missing from this package README image alternate text is missing from this package README image alternate text is missing from this package README image

alternate text is missing from this package README image Soenneker.Utils.AsyncSingleton

AsyncSingleton is a lightweight utility that provides lazy (and optionally asynchronous) initialization of an instance. It ensures that the instance is only created once, even in highly concurrent scenarios. It also offers both synchronous and asynchronous initialization methods while supporting a variety of initialization signatures. Additionally, AsyncSingleton implements both synchronous and asynchronous disposal.

Features

  • Lazy Initialization: The instance is created only upon the first call of Get(), GetAsync(), Init() or InitSync().
  • Thread-safe: Uses asynchronous locking for coordinated initialization in concurrent environments.
  • Multiple Initialization Patterns:
    • Sync and async initialization
    • With or without parameters (params object[])
    • With or without CancellationToken
  • Re-initialization Guard: Once the singleton is initialized (or has begun initializing), further initialization reconfigurations are disallowed.

Installation

dotnet add package Soenneker.Utils.AsyncSingleton

There are two different types: AsyncSingleton, and AsyncSingleton<T>:

AsyncSingleton<T>

Useful in scenarios where you need a result of the initialization. Get() is the primary method.

using Microsoft.Extensions.Logging;

public class MyService
{
    private readonly ILogger<MyService> _logger;
    private readonly AsyncSingleton<HttpClient> _asyncSingleton;

    public MyService(ILogger<MyService> logger)
    {
        _logger = logger;

        _asyncSingleton = new AsyncSingleton(async () =>
        {
            _logger.LogInformation("Initializing the singleton resource synchronously...");
            await Task.Delay(1000);

            return new HttpClient();
        });
    }

    public async ValueTask StartWork()
    {
        var httpClient = await _asyncSingleton.Get();

        // At this point the task has been run, guaranteed only once (no matter if this is called concurrently)

        var sameHttpClient = await _asyncSingleton.Get(); // This is the same instance of the httpClient above
    }
}

AsyncSingleton

Useful in scenarios where you just need async single initialization, and you don't ever need to leverage an instance. Init() is the primary method.

using Microsoft.Extensions.Logging;

public class MyService
{
    private readonly ILogger<MyService> _logger;
    private readonly AsyncSingleton _singleExecution;

    public MyService(ILogger<MyService> logger)
    {
        _logger = logger;

        _singleExecution = new AsyncSingleton(async () =>
        {
            _logger.LogInformation("Initializing the singleton resource ...");
            await Task.Delay(1000); // Simulates an async call

            return new object(); // This object is needed for AsyncSingleton to recognize that initialization has occurred
        });
    }

    public async ValueTask StartWork()
    {
        await _singleExecution.Init();

        // At this point the task has been run, guaranteed only once (no matter if this is called concurrently)

        await _singleExecution.Init(); // This will NOT execute the task, since it's already been called
    }
}

Tips:

  • If you need to cancel the initialization, pass a CancellationToken to the Init(), and Get() method. This will cancel any locking occurring during initialization.
  • If you use a type of AsyncSingleton that implements IDisposable or IAsyncDisposable, be sure to dispose of the AsyncSingleton instance. This will dispose the underlying instance.
  • Be careful about updating the underlying instance directly, as AsyncSingleton holds a reference to it, and will return those changes to further callers.
  • SetInitialization() can be used to set the initialization function after the AsyncSingleton has been created. This can be useful in scenarios where the initialization function is not known at the time of creation.
  • Try not to use an asynchronous initialization method, and then retrieve it synchronously. If you do so, AsyncSingleton will block to maintain thread-safety.
  • Using a synchronous initialization method with asynchronous retrieval will not block, and will still provide thread-safety.
  • Similarly, if the underlying instance is IAsyncDisposable, try to leverage AsyncSingleton.DisposeAsync(). Using AsyncSingleton.DisposeAsync() with an IDisposable underlying instance is fine.
Product Compatible and additional computed target framework versions.
.NET net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (23)

Showing the top 5 NuGet packages that depend on Soenneker.Utils.AsyncSingleton:

Package Downloads
Soenneker.Utils.MemoryStream

An easy modern MemoryStream utility

Soenneker.Redis.Client

A utility library for Redis client accessibility

Soenneker.Blob.Container

A utility library for Azure Blob storage container operations

Soenneker.ServiceBus.Admin

A utility library for Azure Service Bus Administration client accessibility

Soenneker.ServiceBus.Client

A utility library for Azure Service Bus client accessibility

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
3.0.581 0 1/16/2025
3.0.580 0 1/16/2025
3.0.579 0 1/15/2025
3.0.578 74 1/15/2025
3.0.577 215 1/15/2025
3.0.576 1,775 1/15/2025
3.0.575 420 1/15/2025
3.0.574 1,289 1/15/2025
3.0.573 67 1/15/2025
3.0.572 869 1/14/2025
3.0.571 254 1/14/2025
3.0.570 911 1/14/2025
3.0.569 4,569 1/13/2025
3.0.568 3,724 1/12/2025
3.0.567 5,743 1/11/2025
3.0.566 1,656 1/11/2025
3.0.565 776 1/11/2025
3.0.564 691 1/10/2025
3.0.563 3,163 1/10/2025
3.0.562 325 1/10/2025
3.0.561 658 1/10/2025
3.0.560 58 1/10/2025
3.0.559 59 1/10/2025
3.0.558 7,061 1/8/2025
3.0.557 139 1/8/2025
3.0.556 3,069 1/3/2025
3.0.555 2,718 1/3/2025
3.0.554 3,649 1/2/2025
3.0.553 601 1/2/2025
3.0.552 106 1/2/2025
3.0.551 2,027 1/2/2025
3.0.550 4,729 1/1/2025
3.0.549 680 1/1/2025
3.0.548 1,082 1/1/2025
3.0.547 1,268 1/1/2025
3.0.546 84 1/1/2025
3.0.545 563 12/31/2024
3.0.544 88 12/31/2024
3.0.543 198 12/31/2024
3.0.542 6,661 12/31/2024
3.0.541 7,089 12/31/2024
3.0.540 2,915 12/31/2024
3.0.539 3,715 12/31/2024
3.0.538 2,663 12/31/2024
3.0.537 1,102 12/31/2024
3.0.536 82 12/31/2024
3.0.535 4,616 12/31/2024
3.0.534 14,073 12/27/2024
3.0.533 2,615 12/27/2024
3.0.532 9,689 12/24/2024
3.0.531 607 12/24/2024
3.0.530 1,416 12/24/2024
3.0.529 243 12/24/2024
3.0.528 293 12/24/2024
3.0.527 1,678 12/23/2024
3.0.526 3,439 12/23/2024
3.0.525 1,633 12/23/2024
3.0.524 1,520 12/23/2024
3.0.523 2,129 12/23/2024
3.0.522 1,119 12/23/2024
3.0.521 2,738 12/22/2024
3.0.520 79 12/22/2024
3.0.519 11,787 12/22/2024
3.0.518 102 12/22/2024
3.0.517 8,696 12/22/2024
3.0.516 79 12/22/2024
3.0.515 4,157 12/22/2024
3.0.514 80 12/22/2024
3.0.513 793 12/21/2024
3.0.512 245 12/21/2024
3.0.511 79 12/21/2024
3.0.510 7,351 12/21/2024
3.0.509 798 12/21/2024
3.0.508 76 12/21/2024
3.0.507 1,275 12/21/2024
3.0.506 84 12/21/2024
3.0.505 4,463 12/21/2024
3.0.504 1,411 12/21/2024
3.0.503 3,442 12/21/2024
3.0.502 78 12/21/2024
3.0.501 2,133 12/20/2024
3.0.500 2,209 12/20/2024
3.0.499 4,149 12/20/2024
3.0.498 1,280 12/20/2024
3.0.497 576 12/20/2024
3.0.496 6,472 12/19/2024
3.0.495 538 12/19/2024
3.0.494 957 12/18/2024
3.0.493 496 12/18/2024
3.0.492 10,636 12/17/2024
3.0.491 351 12/17/2024
3.0.490 776 12/17/2024
3.0.489 1,002 12/17/2024
3.0.488 1,048 12/16/2024
3.0.487 312 12/16/2024
3.0.486 75 12/16/2024
3.0.485 9,311 12/9/2024
3.0.484 2,134 12/9/2024
3.0.483 4,747 12/9/2024
3.0.482 898 12/9/2024
3.0.480 9,585 12/6/2024
3.0.479 5,140 12/6/2024
3.0.478 1,642 12/6/2024
3.0.477 923 12/6/2024
3.0.476 606 12/6/2024
3.0.475 2,019 12/6/2024
3.0.474 6,271 12/6/2024
3.0.473 8,347 12/5/2024
3.0.472 934 12/5/2024
3.0.471 4,864 12/5/2024
3.0.470 2,172 12/5/2024
3.0.469 605 12/5/2024
3.0.468 4,405 12/4/2024
3.0.467 2,347 12/4/2024
3.0.466 2,553 12/4/2024
3.0.465 6,786 12/3/2024
3.0.464 276 12/3/2024
3.0.463 1,546 12/3/2024
3.0.462 5,842 12/3/2024
3.0.461 1,098 12/3/2024
3.0.460 3,371 12/3/2024
3.0.459 82 12/3/2024
3.0.458 714 12/3/2024
3.0.457 7,787 12/2/2024
3.0.456 3,462 12/2/2024
3.0.455 1,000 12/2/2024
3.0.454 869 12/1/2024
3.0.453 4,577 12/1/2024
3.0.452 4,978 12/1/2024
3.0.451 5,114 11/29/2024
3.0.450 7,350 11/20/2024
3.0.449 5,453 11/20/2024
3.0.448 384 11/20/2024
3.0.447 1,882 11/20/2024
3.0.445 2,355 11/19/2024
3.0.444 2,087 11/19/2024
3.0.443 5,671 11/19/2024
3.0.442 4,029 11/19/2024
3.0.441 75 11/19/2024
3.0.439 11,034 11/14/2024
3.0.438 4,272 11/14/2024
3.0.437 1,827 11/14/2024
3.0.436 3,347 11/14/2024
3.0.435 316 11/14/2024
3.0.434 87 11/14/2024
3.0.433 1,143 11/14/2024
3.0.432 85 11/14/2024
2.1.431 15,407 11/13/2024
2.1.430 3,152 11/13/2024
2.1.429 2,453 11/12/2024
2.1.428 11,563 11/9/2024
2.1.427 2,364 11/9/2024
2.1.426 2,549 11/8/2024
2.1.425 1,164 11/8/2024
2.1.424 1,310 11/8/2024
2.1.423 1,510 11/8/2024
2.1.422 1,755 11/8/2024
2.1.421 4,689 11/8/2024
2.1.420 18,048 11/1/2024
2.1.419 8,258 10/29/2024
2.1.418 3,222 10/29/2024
2.1.417 4,380 10/29/2024
2.1.416 8,177 10/28/2024
2.1.415 8,293 10/26/2024
2.1.414 8,563 10/22/2024
2.1.413 2,949 10/22/2024
2.1.412 1,662 10/22/2024
2.1.411 9,023 10/17/2024
2.1.410 8,053 10/15/2024
2.1.409 1,479 10/14/2024
2.1.408 8,344 10/11/2024
2.1.407 2,299 10/11/2024
2.1.406 1,492 10/11/2024
2.1.404 12,280 10/8/2024
2.1.403 5,067 10/8/2024
2.1.402 15,095 10/3/2024
2.1.401 1,101 10/3/2024
2.1.400 2,543 10/3/2024
2.1.399 9,816 10/2/2024
2.1.398 3,245 10/2/2024
2.1.397 10,214 10/1/2024
2.1.396 913 10/1/2024
2.1.395 5,063 9/30/2024
2.1.394 7,899 9/29/2024
2.1.393 2,550 9/29/2024
2.1.392 2,453 9/29/2024
2.1.391 6,902 9/27/2024
2.1.390 4,729 9/27/2024
2.1.389 152 9/27/2024
2.1.388 731 9/27/2024
2.1.387 1,753 9/27/2024
2.1.386 97 9/27/2024
2.1.385 10,478 9/26/2024
2.1.384 9,189 9/26/2024
2.1.383 3,999 9/26/2024
2.1.382 11,562 9/23/2024
2.1.381 2,874 9/23/2024
2.1.380 4,987 9/23/2024
2.1.379 4,948 9/23/2024
2.1.378 3,741 9/23/2024
2.1.377 760 9/23/2024
2.1.376 1,873 9/23/2024
2.1.375 88 9/23/2024
2.1.374 13,642 9/17/2024
2.1.373 666 9/17/2024
2.1.372 2,732 9/17/2024
2.1.371 2,738 9/17/2024
2.1.370 3,116 9/17/2024
2.1.369 4,238 9/17/2024
2.1.368 4,735 9/17/2024
2.1.367 15,651 9/16/2024
2.1.366 8,024 9/12/2024
2.1.365 3,050 9/11/2024
2.1.363 8,909 9/11/2024
2.1.362 17,200 9/10/2024
2.1.361 721 9/10/2024
2.1.360 1,039 9/10/2024
2.1.359 915 9/10/2024
2.1.358 3,671 9/9/2024
2.1.357 1,511 9/9/2024
2.1.356 6,282 9/9/2024
2.1.355 1,745 9/9/2024
2.1.354 7,019 9/9/2024
2.1.353 13,479 9/7/2024
2.1.352 9,917 9/6/2024
2.1.351 5,131 9/5/2024
2.1.350 5,166 9/5/2024
2.1.349 552 9/5/2024
2.1.348 134 9/5/2024
2.1.347 9,037 9/5/2024
2.1.346 1,027 9/4/2024
2.1.345 13,602 9/3/2024
2.1.344 6,133 9/3/2024
2.1.343 4,526 9/3/2024
2.1.342 8,682 8/29/2024
2.1.341 7,262 8/26/2024
2.1.340 7,687 8/21/2024
2.1.339 2,817 8/21/2024
2.1.338 1,645 8/20/2024
2.1.337 5,799 8/20/2024
2.1.336 116 8/20/2024
2.1.335 116 8/20/2024
2.1.334 9,763 8/19/2024
2.1.333 9,485 8/15/2024
2.1.332 9,485 8/13/2024
2.1.331 7,945 8/6/2024
2.1.330 4,345 8/6/2024
2.1.329 6,560 8/1/2024
2.1.328 1,352 8/1/2024
2.1.327 623 8/1/2024
2.1.326 9,479 7/25/2024
2.1.325 1,975 7/25/2024
2.1.324 1,707 7/25/2024
2.1.323 267 7/24/2024
2.1.322 719 7/24/2024
2.1.321 341 7/24/2024
2.1.320 9,157 7/20/2024
2.1.319 11,818 7/14/2024
2.1.318 4,453 7/14/2024
2.1.317 6,790 7/10/2024
2.1.316 2,950 7/10/2024
2.1.315 2,739 7/10/2024
2.1.314 1,590 7/10/2024
2.1.313 1,008 7/10/2024
2.1.312 320 7/10/2024
2.1.311 2,605 7/10/2024
2.1.310 1,341 7/9/2024
2.1.308 2,760 7/9/2024
2.1.307 93 7/9/2024
2.1.306 2,931 7/9/2024
2.1.305 6,790 7/9/2024
2.1.304 5,684 7/9/2024
2.1.303 2,735 7/9/2024
2.1.302 93 7/9/2024
2.1.301 4,934 7/9/2024
2.1.300 6,118 7/8/2024
2.1.299 363 7/8/2024
2.1.298 96 7/8/2024
2.1.297 104 7/8/2024
2.1.296 8,389 7/8/2024
2.1.295 1,636 7/7/2024
2.1.294 5,079 7/7/2024
2.1.293 119 7/7/2024
2.1.292 1,448 7/7/2024
2.1.291 3,101 7/7/2024
2.1.290 10,257 7/3/2024
2.1.289 3,280 7/3/2024
2.1.288 2,940 7/3/2024
2.1.287 846 7/3/2024
2.1.286 5,650 7/2/2024
2.1.283 3,528 6/30/2024
2.1.282 2,369 6/28/2024
2.1.281 239 6/28/2024
2.1.279 7,643 6/22/2024
2.1.278 8,718 6/15/2024
2.1.277 1,164 6/15/2024
2.1.276 6,755 6/14/2024
2.1.275 10,738 6/1/2024
2.1.274 1,731 6/1/2024
2.1.273 1,096 6/1/2024
2.1.272 9,402 5/31/2024
2.1.271 5,872 5/29/2024
2.1.270 6,703 5/28/2024
2.1.269 3,777 5/27/2024
2.1.268 6,976 5/26/2024
2.1.267 6,881 5/26/2024
2.1.266 313 5/26/2024
2.1.265 2,526 5/25/2024
2.1.264 1,822 5/25/2024
2.1.263 1,667 5/25/2024
2.1.262 110 5/25/2024
2.1.261 1,346 5/25/2024
2.1.260 108 5/25/2024
2.1.259 4,895 5/25/2024
2.1.258 104 5/25/2024
2.1.257 8,700 5/23/2024
2.1.256 3,446 5/23/2024
2.1.255 2,472 5/22/2024
2.1.254 1,862 5/22/2024
2.1.253 756 5/22/2024
2.1.252 102 5/22/2024
2.1.251 100 5/22/2024
2.1.250 3,612 5/22/2024
2.1.249 9,269 5/18/2024
2.1.248 1,955 5/17/2024
2.1.247 3,334 5/17/2024
2.1.246 5,208 5/16/2024
2.1.245 1,344 5/15/2024
2.1.244 3,784 5/15/2024
2.1.243 7,756 5/12/2024
2.1.242 4,227 5/3/2024
2.1.241 4,743 4/29/2024
2.1.240 2,704 4/29/2024
2.1.239 5,219 4/28/2024
2.1.238 844 4/28/2024
2.1.237 968 4/28/2024
2.1.236 3,932 4/28/2024
2.1.235 552 4/28/2024
2.1.234 5,250 4/28/2024
2.1.233 1,106 4/28/2024
2.1.232 4,895 4/27/2024
2.1.231 110 4/27/2024
2.1.230 9,856 4/19/2024
2.1.229 6,108 4/18/2024
2.1.228 6,392 4/12/2024
2.1.227 1,022 4/12/2024
2.1.226 1,634 4/12/2024
2.1.225 1,375 4/12/2024
2.1.224 955 4/12/2024
2.1.223 1,377 4/12/2024
2.1.222 522 4/12/2024
2.1.221 115 4/12/2024
2.1.220 3,591 4/10/2024
2.1.219 14,526 4/10/2024
2.1.218 675 4/10/2024
2.1.217 7,594 4/2/2024
2.1.216 1,330 4/1/2024
2.1.215 7,338 3/29/2024
2.1.214 5,333 3/25/2024
2.1.213 610 3/25/2024
2.1.212 7,422 3/20/2024
2.1.211 5,115 3/19/2024
2.1.210 3,055 3/19/2024
2.1.209 3,373 3/18/2024
2.1.208 7,363 3/15/2024
2.1.207 5,010 3/13/2024
2.1.206 1,914 3/13/2024
2.1.205 2,491 3/13/2024
2.1.204 162 3/13/2024
2.1.203 154 3/13/2024
2.1.202 1,652 3/13/2024
2.1.201 158 3/13/2024
2.1.200 3,609 3/12/2024
2.1.199 4,628 3/12/2024
2.1.198 6,057 3/11/2024
2.1.197 4,198 3/11/2024
2.1.196 4,506 3/10/2024
2.1.195 5,812 3/8/2024
2.1.194 532 3/8/2024
2.1.193 4,191 3/8/2024
2.1.192 5,389 3/6/2024
2.1.191 5,382 3/4/2024
2.1.190 3,051 3/4/2024
2.1.189 6,105 3/2/2024
2.1.188 1,563 3/2/2024
2.1.187 1,952 3/2/2024
2.1.186 1,091 3/2/2024
2.1.185 762 3/2/2024
2.1.184 4,098 2/29/2024
2.1.183 1,346 2/29/2024
2.1.182 2,062 2/29/2024
2.1.181 3,962 2/26/2024
2.1.180 15,298 2/25/2024
2.1.179 1,828 2/25/2024
2.1.178 6,023 2/23/2024
2.1.177 5,842 2/22/2024
2.1.176 1,630 2/22/2024
2.1.175 1,966 2/21/2024
2.1.174 3,178 2/21/2024
2.1.173 2,856 2/21/2024
2.1.172 3,594 2/21/2024
2.1.171 1,552 2/21/2024
2.1.170 353 2/21/2024
2.1.169 3,310 2/21/2024
2.1.168 1,025 2/20/2024
2.1.167 202 2/20/2024
2.1.166 208 2/20/2024
2.1.165 4,406 2/20/2024
2.1.164 3,324 2/20/2024
2.1.163 3,194 2/20/2024
2.1.162 6,699 2/19/2024
2.1.161 5,342 2/17/2024
2.1.160 2,224 2/17/2024
2.1.159 1,603 2/16/2024
2.1.158 1,164 2/16/2024
2.1.157 1,961 2/16/2024
2.1.156 3,009 2/16/2024
2.1.155 3,473 2/16/2024
2.1.154 246 2/16/2024
2.1.153 1,715 2/16/2024
2.1.152 246 2/16/2024
2.1.151 243 2/16/2024
2.1.150 5,943 2/14/2024
2.1.149 2,521 2/13/2024
2.1.148 3,028 2/13/2024
2.1.147 3,651 2/13/2024
2.1.146 3,504 2/13/2024
2.1.145 4,857 2/12/2024
2.1.144 765 2/11/2024
2.1.143 5,284 2/11/2024
2.1.142 2,988 2/11/2024
2.1.141 6,169 2/10/2024
2.1.140 776 2/9/2024
2.1.139 5,626 2/9/2024
2.1.138 3,634 2/9/2024
2.1.137 960 2/8/2024
2.1.136 4,547 2/8/2024
2.1.135 1,878 2/8/2024
2.1.134 10,470 2/8/2024
2.1.133 313 2/8/2024
2.1.132 244 2/8/2024
2.1.131 5,151 2/7/2024
2.1.130 2,056 2/7/2024
2.1.129 3,521 2/7/2024
2.1.128 1,146 2/7/2024
2.1.127 1,009 2/6/2024
2.1.126 2,811 2/6/2024
2.1.125 280 2/6/2024
2.1.124 7,424 2/5/2024
2.1.123 4,855 2/4/2024
2.1.122 5,157 2/2/2024
2.1.121 6,132 1/31/2024
2.1.120 6,030 1/29/2024
2.1.119 3,644 1/29/2024
2.1.118 2,448 1/29/2024
2.1.117 3,903 1/28/2024
2.1.116 5,169 1/28/2024
2.1.115 2,940 1/28/2024
2.1.114 1,717 1/28/2024
2.1.113 2,347 1/27/2024
2.1.112 2,065 1/27/2024
2.1.111 5,382 1/27/2024
2.1.110 2,715 1/27/2024
2.1.109 6,454 1/27/2024
2.1.108 1,676 1/26/2024
2.1.107 2,119 1/26/2024
2.1.106 2,749 1/26/2024
2.1.105 4,978 1/26/2024
2.1.104 2,372 1/26/2024
2.1.103 1,315 1/26/2024
2.1.102 4,436 1/25/2024
2.1.101 3,524 1/25/2024
2.1.100 1,711 1/25/2024
2.1.99 5,695 1/25/2024
2.1.98 5,481 1/19/2024
2.1.97 5,685 1/15/2024
2.1.96 2,606 1/15/2024
2.1.95 2,044 1/15/2024
2.1.94 5,172 1/15/2024
2.1.93 5,314 1/15/2024
2.1.92 5,149 1/14/2024
2.1.91 6,302 1/13/2024
2.1.90 5,277 1/12/2024
2.1.89 5,167 1/11/2024
2.1.88 7,174 1/7/2024
2.1.87 5,708 1/5/2024
2.1.86 2,561 1/5/2024
2.1.85 3,255 1/5/2024
2.1.84 6,137 1/3/2024
2.1.83 3,739 1/1/2024
2.1.82 5,094 12/28/2023
2.1.81 2,068 12/28/2023
2.1.80 2,068 12/28/2023
2.1.79 4,569 12/27/2023
2.1.78 2,151 12/27/2023
2.1.77 298 12/27/2023
2.1.76 8,775 12/25/2023
2.1.75 4,812 12/25/2023
2.1.74 2,442 12/25/2023
2.1.73 698 12/25/2023
2.1.72 322 12/25/2023
2.1.71 6,914 12/24/2023
2.1.70 5,394 12/23/2023
2.1.69 2,887 12/23/2023
2.1.68 1,719 12/23/2023
2.1.67 3,889 12/23/2023
2.1.66 294 12/23/2023
2.1.65 8,166 12/19/2023
2.1.64 2,253 12/19/2023
2.1.63 5,529 12/12/2023
2.1.62 467 12/12/2023
2.1.61 2,733 12/11/2023
2.1.60 2,223 12/11/2023
2.1.59 1,232 12/11/2023
2.1.58 1,670 12/11/2023
2.1.57 825 12/10/2023
2.1.56 803 12/10/2023
2.1.55 1,830 12/10/2023
2.1.54 1,135 12/10/2023
2.1.53 8,207 12/10/2023
2.1.52 1,867 12/9/2023
2.1.51 1,055 12/9/2023
2.1.50 1,620 12/9/2023
2.1.49 2,495 12/9/2023
2.1.48 267 12/9/2023
2.1.47 1,275 12/9/2023
2.1.46 341 12/9/2023
2.1.45 2,877 12/9/2023
2.1.44 303 12/9/2023
2.1.43 4,532 12/9/2023
2.1.42 6,780 12/6/2023
2.1.41 1,248 12/6/2023
2.1.40 1,781 12/6/2023
2.1.39 3,996 12/5/2023
2.1.38 2,026 12/5/2023
2.1.37 1,138 12/5/2023
2.1.36 2,874 12/5/2023
2.1.35 296 12/5/2023
2.1.34 2,440 12/5/2023
2.1.33 304 12/5/2023
2.1.32 1,612 12/4/2023
2.1.31 1,542 12/4/2023
2.1.30 331 12/4/2023
2.1.29 8,838 12/4/2023
2.1.28 2,913 11/27/2023
2.1.27 1,367 11/26/2023
2.1.26 3,428 11/23/2023
2.1.25 2,954 11/23/2023
2.1.24 3,603 11/23/2023
2.1.23 305 11/23/2023
2.1.22 7,027 11/20/2023
2.1.21 3,406 11/20/2023
2.1.20 5,493 11/19/2023
2.1.19 3,019 11/19/2023
2.1.18 4,162 11/19/2023
2.1.17 1,125 11/18/2023
2.1.16 5,405 11/18/2023
2.1.15 1,317 11/18/2023
2.1.14 3,437 11/18/2023
2.1.13 760 11/18/2023
2.1.12 3,566 11/17/2023
2.1.11 2,942 11/17/2023
2.1.10 2,190 11/17/2023
2.1.9 411 11/17/2023
2.1.8 3,480 11/17/2023
2.1.7 2,012 11/17/2023
2.1.6 2,535 11/17/2023
2.1.5 1,733 11/17/2023
2.1.4 593 11/17/2023
2.1.3 3,293 11/16/2023
2.0.78 1,132 11/15/2023
2.0.77 323 11/15/2023
2.0.76 2,946 11/15/2023
2.0.2 327 11/16/2023
2.0.1 289 11/16/2023
1.0.75 4,234 11/13/2023
1.0.74 6,096 11/10/2023
1.0.73 4,808 11/9/2023
1.0.72 3,261 11/8/2023
1.0.71 5,008 11/7/2023
1.0.70 2,490 11/6/2023
1.0.69 3,116 11/3/2023
1.0.68 5,621 11/2/2023
1.0.67 3,432 11/1/2023
1.0.66 10,938 10/26/2023
1.0.65 6,704 10/19/2023
1.0.64 2,907 10/18/2023
1.0.63 2,814 10/17/2023
1.0.62 3,411 10/16/2023
1.0.61 6,209 10/13/2023
1.0.60 3,640 10/12/2023
1.0.59 11,430 9/18/2023
1.0.58 308 9/18/2023
1.0.57 7,694 9/14/2023
1.0.56 7,172 8/31/2023
1.0.55 3,649 8/30/2023
1.0.54 3,125 8/29/2023
1.0.53 3,035 8/28/2023
1.0.52 5,818 8/25/2023
1.0.51 3,258 8/24/2023
1.0.50 7,917 8/21/2023
1.0.49 3,217 8/18/2023
1.0.48 2,989 8/17/2023
1.0.47 5,501 8/16/2023
1.0.46 9,064 8/10/2023
1.0.45 3,163 8/9/2023
1.0.44 5,287 8/8/2023
1.0.43 4,466 8/7/2023
1.0.42 4,663 8/4/2023
1.0.41 8,580 7/13/2023
1.0.40 5,722 7/11/2023
1.0.39 3,474 7/10/2023
1.0.38 4,358 7/7/2023
1.0.37 365 7/7/2023
1.0.36 12,027 6/30/2023
1.0.35 6,184 6/28/2023
1.0.34 6,324 6/27/2023
1.0.33 7,331 6/26/2023
1.0.32 4,362 6/23/2023
1.0.31 8,880 6/21/2023
1.0.30 9,250 6/15/2023
1.0.29 3,655 6/14/2023
1.0.28 9,856 6/9/2023
1.0.27 4,289 6/8/2023
1.0.26 5,241 6/7/2023
1.0.25 5,899 6/6/2023
1.0.24 390 6/6/2023
1.0.23 4,935 6/5/2023
1.0.22 17,035 5/30/2023
1.0.21 19,876 5/29/2023
1.0.20 6,870 5/26/2023
1.0.19 8,002 5/25/2023
1.0.18 8,360 5/24/2023
1.0.17 5,666 5/24/2023
1.0.16 1,695 5/23/2023
1.0.15 1,684 5/23/2023
1.0.12 3,107 5/22/2023
1.0.11 19,303 5/16/2023
1.0.10 15,886 4/20/2023
1.0.9 15,195 4/3/2023
1.0.8 1,275 4/3/2023
1.0.7 2,519 3/23/2023
1.0.5 774 3/13/2023
1.0.4 536 3/11/2023
1.0.3 440 3/11/2023
1.0.2 443 3/11/2023
1.0.1 496 3/11/2023