Soenneker.Utils.AsyncSingleton 3.0.705

Prefix Reserved
dotnet add package Soenneker.Utils.AsyncSingleton --version 3.0.705
                    
NuGet\Install-Package Soenneker.Utils.AsyncSingleton -Version 3.0.705
                    
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.705" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Soenneker.Utils.AsyncSingleton" Version="3.0.705" />
                    
Directory.Packages.props
<PackageReference Include="Soenneker.Utils.AsyncSingleton" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Soenneker.Utils.AsyncSingleton --version 3.0.705
                    
#r "nuget: Soenneker.Utils.AsyncSingleton, 3.0.705"
                    
#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.
#addin nuget:?package=Soenneker.Utils.AsyncSingleton&version=3.0.705
                    
Install Soenneker.Utils.AsyncSingleton as a Cake Addin
#tool nuget:?package=Soenneker.Utils.AsyncSingleton&version=3.0.705
                    
Install Soenneker.Utils.AsyncSingleton as a Cake Tool

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.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (30)

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

Package Downloads
Soenneker.Utils.MemoryStream

An easy modern MemoryStream utility

Soenneker.Blob.Container

A utility library for Azure Blob storage container operations

Soenneker.Redis.Client

A utility library for Redis client accessibility

Soenneker.Validators.Email.Disposable.Online

A validation module checking for disposable email addresses via online sources

Soenneker.GitHub.Client

An async thread-safe singleton for Octokit's GitHubClient

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
3.0.705 9,960 5/7/2025
3.0.704 387 5/7/2025
3.0.703 15,017 5/5/2025
3.0.702 426 5/5/2025
3.0.701 134 5/5/2025
3.0.700 19,111 4/8/2025
3.0.699 4,572 4/8/2025
3.0.698 2,257 4/8/2025
3.0.697 3,116 4/8/2025
3.0.696 8,083 4/7/2025
3.0.695 2,945 4/7/2025
3.0.694 7,692 4/7/2025
3.0.693 6,981 4/7/2025
3.0.692 2,017 4/7/2025
3.0.691 2,059 4/6/2025
3.0.690 1,192 4/6/2025
3.0.689 230 4/6/2025
3.0.688 159 4/6/2025
3.0.687 2,916 4/6/2025
3.0.686 1,770 4/6/2025
3.0.685 101 4/6/2025
3.0.684 7,471 4/5/2025
3.0.683 1,249 4/5/2025
3.0.682 390 4/5/2025
3.0.681 114 4/5/2025
3.0.680 633 4/4/2025
3.0.679 226 4/4/2025
3.0.678 38,422 4/1/2025
3.0.677 9,854 3/31/2025
3.0.676 7,373 3/29/2025
3.0.675 9,766 3/25/2025
3.0.674 7,467 3/21/2025
3.0.673 13,621 3/15/2025
3.0.672 7,704 3/12/2025
3.0.671 730 3/12/2025
3.0.670 3,893 3/11/2025
3.0.669 216 3/11/2025
3.0.668 5,346 3/11/2025
3.0.667 4,908 3/11/2025
3.0.666 16,137 3/2/2025
3.0.665 1,718 3/2/2025
3.0.664 1,836 3/1/2025
3.0.663 2,984 3/1/2025
3.0.662 2,651 3/1/2025
3.0.661 1,957 3/1/2025
3.0.660 94 3/1/2025
3.0.659 2,910 3/1/2025
3.0.658 11,619 2/25/2025
3.0.657 2,567 2/25/2025
3.0.656 2,301 2/25/2025
3.0.655 2,900 2/24/2025
3.0.654 6,802 2/22/2025
3.0.653 10,925 2/22/2025
3.0.652 302 2/22/2025
3.0.651 3,010 2/21/2025
3.0.650 6,668 2/21/2025
3.0.649 8,868 2/19/2025
3.0.648 476 2/18/2025
3.0.647 1,724 2/18/2025
3.0.646 1,956 2/18/2025
3.0.645 5,027 2/18/2025
3.0.644 8,682 2/13/2025
3.0.643 9,861 2/12/2025
3.0.642 1,007 2/12/2025
3.0.641 1,703 2/12/2025
3.0.640 1,905 2/11/2025
3.0.639 1,904 2/11/2025
3.0.638 2,365 2/11/2025
3.0.637 3,555 2/11/2025
3.0.636 4,557 2/11/2025
3.0.635 5,802 2/10/2025
3.0.634 106 2/10/2025
3.0.633 7,740 2/9/2025
3.0.632 5,650 2/8/2025
3.0.631 1,091 2/8/2025
3.0.630 2,261 2/7/2025
3.0.629 2,844 2/7/2025
3.0.628 3,056 2/7/2025
3.0.627 272 2/7/2025
3.0.626 2,751 2/7/2025
3.0.625 96 2/7/2025
3.0.624 641 2/7/2025
3.0.623 15,199 2/5/2025
3.0.622 1,222 2/5/2025
3.0.621 2,205 2/5/2025
3.0.620 1,724 2/5/2025
3.0.619 17,753 1/28/2025
3.0.618 4,437 1/28/2025
3.0.617 256 1/27/2025
3.0.616 16,487 1/26/2025
3.0.615 1,571 1/26/2025
3.0.614 3,798 1/25/2025
3.0.613 5,046 1/25/2025
3.0.612 3,183 1/25/2025
3.0.611 1,712 1/24/2025
3.0.610 12,714 1/24/2025
3.0.609 4,099 1/24/2025
3.0.608 3,971 1/24/2025
3.0.607 3,310 1/23/2025
3.0.606 3,081 1/23/2025
3.0.605 9,621 1/21/2025
3.0.604 2,019 1/21/2025
3.0.603 4,934 1/21/2025
3.0.602 3,249 1/21/2025
3.0.601 4,632 1/21/2025
3.0.600 4,609 1/20/2025
3.0.599 347 1/20/2025
3.0.598 628 1/20/2025
3.0.597 4,682 1/20/2025
3.0.596 5,816 1/20/2025
3.0.595 684 1/20/2025
3.0.594 97 1/20/2025
3.0.593 644 1/20/2025
3.0.592 92 1/20/2025
3.0.591 14,263 1/19/2025
3.0.590 2,306 1/19/2025
3.0.589 2,324 1/18/2025
3.0.588 3,755 1/18/2025
3.0.587 1,455 1/18/2025
3.0.586 6,031 1/17/2025
3.0.585 1,136 1/17/2025
3.0.584 3,010 1/17/2025
3.0.583 2,759 1/16/2025
3.0.582 16,068 1/16/2025
3.0.581 1,437 1/16/2025
3.0.580 2,945 1/16/2025
3.0.579 3,650 1/15/2025
3.0.578 2,208 1/15/2025
3.0.577 3,883 1/15/2025
3.0.576 6,607 1/15/2025
3.0.575 1,077 1/15/2025
3.0.574 3,150 1/15/2025
3.0.573 264 1/15/2025
3.0.572 2,809 1/14/2025
3.0.571 1,311 1/14/2025
3.0.570 3,161 1/14/2025
3.0.569 12,863 1/13/2025
3.0.568 4,552 1/12/2025
3.0.567 6,861 1/11/2025
3.0.566 1,940 1/11/2025
3.0.565 884 1/11/2025
3.0.564 793 1/10/2025
3.0.563 4,144 1/10/2025
3.0.562 393 1/10/2025
3.0.561 809 1/10/2025
3.0.560 90 1/10/2025
3.0.559 89 1/10/2025
3.0.558 8,545 1/8/2025
3.0.557 249 1/8/2025
3.0.556 3,736 1/3/2025
3.0.555 2,937 1/3/2025
3.0.554 3,926 1/2/2025
3.0.553 661 1/2/2025
3.0.552 126 1/2/2025
3.0.551 2,222 1/2/2025
3.0.550 4,997 1/1/2025
3.0.549 700 1/1/2025
3.0.548 1,110 1/1/2025
3.0.547 1,298 1/1/2025
3.0.546 103 1/1/2025
3.0.545 593 12/31/2024
3.0.544 107 12/31/2024
3.0.543 215 12/31/2024
3.0.542 7,008 12/31/2024
3.0.541 7,309 12/31/2024
3.0.540 2,960 12/31/2024
3.0.539 3,752 12/31/2024
3.0.538 2,711 12/31/2024
3.0.537 1,124 12/31/2024
3.0.536 101 12/31/2024
3.0.535 4,645 12/31/2024
3.0.534 14,216 12/27/2024
3.0.533 2,634 12/27/2024
3.0.532 9,726 12/24/2024
3.0.531 626 12/24/2024
3.0.530 1,433 12/24/2024
3.0.529 261 12/24/2024
3.0.528 310 12/24/2024
3.0.527 1,701 12/23/2024
3.0.526 3,459 12/23/2024
3.0.525 1,666 12/23/2024
3.0.524 1,538 12/23/2024
3.0.523 2,150 12/23/2024
3.0.522 1,139 12/23/2024
3.0.521 2,758 12/22/2024
3.0.520 103 12/22/2024
3.0.519 11,856 12/22/2024
3.0.518 119 12/22/2024
3.0.517 8,724 12/22/2024
3.0.516 97 12/22/2024
3.0.515 4,184 12/22/2024
3.0.514 115 12/22/2024
3.0.513 815 12/21/2024
3.0.512 264 12/21/2024
3.0.511 94 12/21/2024
3.0.510 7,406 12/21/2024
3.0.509 815 12/21/2024
3.0.508 93 12/21/2024
3.0.507 1,293 12/21/2024
3.0.506 102 12/21/2024
3.0.505 4,485 12/21/2024
3.0.504 1,428 12/21/2024
3.0.503 3,469 12/21/2024
3.0.502 98 12/21/2024
3.0.501 2,153 12/20/2024
3.0.500 2,232 12/20/2024
3.0.499 4,182 12/20/2024
3.0.498 1,299 12/20/2024
3.0.497 597 12/20/2024
3.0.496 6,514 12/19/2024
3.0.495 558 12/19/2024
3.0.494 981 12/18/2024
3.0.493 527 12/18/2024
3.0.492 10,693 12/17/2024
3.0.491 376 12/17/2024
3.0.490 801 12/17/2024
3.0.489 1,025 12/17/2024
3.0.488 1,081 12/16/2024
3.0.487 329 12/16/2024
3.0.486 93 12/16/2024
3.0.485 9,364 12/9/2024
3.0.484 2,166 12/9/2024
3.0.483 4,786 12/9/2024
3.0.482 917 12/9/2024
3.0.480 9,613 12/6/2024
3.0.479 5,169 12/6/2024
3.0.478 1,663 12/6/2024
3.0.477 941 12/6/2024
3.0.476 621 12/6/2024
3.0.475 2,039 12/6/2024
3.0.474 6,306 12/6/2024
3.0.473 8,371 12/5/2024
3.0.472 958 12/5/2024
3.0.471 4,902 12/5/2024
3.0.470 2,197 12/5/2024
3.0.469 621 12/5/2024
3.0.468 4,421 12/4/2024
3.0.467 2,371 12/4/2024
3.0.466 2,574 12/4/2024
3.0.465 6,829 12/3/2024
3.0.464 291 12/3/2024
3.0.463 1,568 12/3/2024
3.0.462 5,890 12/3/2024
3.0.461 1,116 12/3/2024
3.0.460 3,401 12/3/2024
3.0.459 98 12/3/2024
3.0.458 735 12/3/2024
3.0.457 7,821 12/2/2024
3.0.456 3,483 12/2/2024
3.0.455 1,019 12/2/2024
3.0.454 888 12/1/2024
3.0.453 4,617 12/1/2024
3.0.452 5,016 12/1/2024
3.0.451 5,134 11/29/2024
3.0.450 8,510 11/20/2024
3.0.449 5,501 11/20/2024
3.0.448 400 11/20/2024
3.0.447 1,900 11/20/2024
3.0.445 2,387 11/19/2024
3.0.444 2,103 11/19/2024
3.0.443 5,708 11/19/2024
3.0.442 4,060 11/19/2024
3.0.441 92 11/19/2024
3.0.439 11,091 11/14/2024
3.0.438 4,314 11/14/2024
3.0.437 1,855 11/14/2024
3.0.436 3,380 11/14/2024
3.0.435 331 11/14/2024
3.0.434 117 11/14/2024
3.0.433 1,169 11/14/2024
3.0.432 99 11/14/2024
2.1.431 16,052 11/13/2024
2.1.430 3,184 11/13/2024
2.1.429 2,470 11/12/2024
2.1.428 11,623 11/9/2024
2.1.427 2,381 11/9/2024
2.1.426 2,591 11/8/2024
2.1.425 1,178 11/8/2024
2.1.424 1,327 11/8/2024
2.1.423 1,558 11/8/2024
2.1.422 1,776 11/8/2024
2.1.421 4,718 11/8/2024
2.1.420 18,109 11/1/2024
2.1.419 8,309 10/29/2024
2.1.418 3,241 10/29/2024
2.1.417 4,421 10/29/2024
2.1.416 8,217 10/28/2024
2.1.415 8,335 10/26/2024
2.1.414 10,233 10/22/2024
2.1.413 2,970 10/22/2024
2.1.412 1,685 10/22/2024
2.1.411 9,074 10/17/2024
2.1.410 8,077 10/15/2024
2.1.409 1,506 10/14/2024
2.1.408 8,373 10/11/2024
2.1.407 2,320 10/11/2024
2.1.406 1,505 10/11/2024
2.1.404 12,377 10/8/2024
2.1.403 5,091 10/8/2024
2.1.402 15,167 10/3/2024
2.1.401 1,119 10/3/2024
2.1.400 2,604 10/3/2024
2.1.399 9,898 10/2/2024
2.1.398 3,273 10/2/2024
2.1.397 10,243 10/1/2024
2.1.396 931 10/1/2024
2.1.395 5,101 9/30/2024
2.1.394 7,997 9/29/2024
2.1.393 2,574 9/29/2024
2.1.392 2,471 9/29/2024
2.1.391 7,150 9/27/2024
2.1.390 4,750 9/27/2024
2.1.389 167 9/27/2024
2.1.388 744 9/27/2024
2.1.387 1,783 9/27/2024
2.1.386 109 9/27/2024
2.1.385 10,544 9/26/2024
2.1.384 9,245 9/26/2024
2.1.383 4,025 9/26/2024
2.1.382 11,670 9/23/2024
2.1.381 2,899 9/23/2024
2.1.380 5,009 9/23/2024
2.1.379 4,984 9/23/2024
2.1.378 3,778 9/23/2024
2.1.377 772 9/23/2024
2.1.376 1,892 9/23/2024
2.1.375 100 9/23/2024
2.1.374 13,742 9/17/2024
2.1.373 678 9/17/2024
2.1.372 2,744 9/17/2024
2.1.371 2,761 9/17/2024
2.1.370 3,149 9/17/2024
2.1.369 4,264 9/17/2024
2.1.368 4,777 9/17/2024
2.1.367 15,748 9/16/2024
2.1.366 8,103 9/12/2024
2.1.365 3,066 9/11/2024
2.1.363 8,940 9/11/2024
2.1.362 17,253 9/10/2024
2.1.361 732 9/10/2024
2.1.360 1,051 9/10/2024
2.1.359 933 9/10/2024
2.1.358 3,686 9/9/2024
2.1.357 1,524 9/9/2024
2.1.356 6,305 9/9/2024
2.1.355 1,758 9/9/2024
2.1.354 7,043 9/9/2024
2.1.353 13,534 9/7/2024
2.1.352 9,956 9/6/2024
2.1.351 5,175 9/5/2024
2.1.350 5,192 9/5/2024
2.1.349 563 9/5/2024
2.1.348 150 9/5/2024
2.1.347 9,081 9/5/2024
2.1.346 1,038 9/4/2024
2.1.345 13,669 9/3/2024
2.1.344 6,180 9/3/2024
2.1.343 4,562 9/3/2024
2.1.342 8,743 8/29/2024
2.1.341 7,299 8/26/2024
2.1.340 7,732 8/21/2024
2.1.339 2,841 8/21/2024
2.1.338 1,660 8/20/2024
2.1.337 5,829 8/20/2024
2.1.336 128 8/20/2024
2.1.335 127 8/20/2024
2.1.334 9,825 8/19/2024
2.1.333 9,557 8/15/2024
2.1.332 9,535 8/13/2024
2.1.331 8,012 8/6/2024
2.1.330 4,395 8/6/2024
2.1.329 6,611 8/1/2024
2.1.328 1,367 8/1/2024
2.1.327 636 8/1/2024
2.1.326 9,511 7/25/2024
2.1.325 1,985 7/25/2024
2.1.324 1,724 7/25/2024
2.1.323 277 7/24/2024
2.1.322 738 7/24/2024
2.1.321 354 7/24/2024
2.1.320 9,683 7/20/2024
2.1.319 12,214 7/14/2024
2.1.318 4,504 7/14/2024
2.1.317 6,852 7/10/2024
2.1.316 2,964 7/10/2024
2.1.315 2,772 7/10/2024
2.1.314 1,606 7/10/2024
2.1.313 1,033 7/10/2024
2.1.312 338 7/10/2024
2.1.311 2,624 7/10/2024
2.1.310 1,354 7/9/2024
2.1.308 2,772 7/9/2024
2.1.307 106 7/9/2024
2.1.306 2,970 7/9/2024
2.1.305 6,839 7/9/2024
2.1.304 5,727 7/9/2024
2.1.303 2,764 7/9/2024
2.1.302 105 7/9/2024
2.1.301 8,491 7/9/2024
2.1.300 6,146 7/8/2024
2.1.299 375 7/8/2024
2.1.298 108 7/8/2024
2.1.297 118 7/8/2024
2.1.296 8,435 7/8/2024
2.1.295 1,650 7/7/2024
2.1.294 5,101 7/7/2024
2.1.293 130 7/7/2024
2.1.292 1,469 7/7/2024
2.1.291 3,119 7/7/2024
2.1.290 10,351 7/3/2024
2.1.289 3,306 7/3/2024
2.1.288 2,965 7/3/2024
2.1.287 875 7/3/2024
2.1.286 5,719 7/2/2024
2.1.283 3,553 6/30/2024
2.1.282 2,397 6/28/2024
2.1.281 251 6/28/2024
2.1.279 7,690 6/22/2024
2.1.278 8,963 6/15/2024
2.1.277 1,176 6/15/2024
2.1.276 6,784 6/14/2024
2.1.275 10,827 6/1/2024
2.1.274 1,752 6/1/2024
2.1.273 1,107 6/1/2024
2.1.272 9,453 5/31/2024
2.1.271 5,908 5/29/2024
2.1.270 6,741 5/28/2024
2.1.269 3,803 5/27/2024
2.1.268 7,028 5/26/2024
2.1.267 6,924 5/26/2024
2.1.266 340 5/26/2024
2.1.265 2,543 5/25/2024
2.1.264 1,845 5/25/2024
2.1.263 1,683 5/25/2024
2.1.262 120 5/25/2024
2.1.261 1,356 5/25/2024
2.1.260 118 5/25/2024
2.1.259 4,924 5/25/2024
2.1.258 115 5/25/2024
2.1.257 8,749 5/23/2024
2.1.256 3,465 5/23/2024
2.1.255 2,496 5/22/2024
2.1.254 1,888 5/22/2024
2.1.253 785 5/22/2024
2.1.252 112 5/22/2024
2.1.251 110 5/22/2024
2.1.250 3,631 5/22/2024
2.1.249 9,318 5/18/2024
2.1.248 1,969 5/17/2024
2.1.247 3,363 5/17/2024
2.1.246 5,232 5/16/2024
2.1.245 1,362 5/15/2024
2.1.244 3,822 5/15/2024
2.1.243 7,810 5/12/2024
2.1.242 4,272 5/3/2024
2.1.241 4,784 4/29/2024
2.1.240 2,734 4/29/2024
2.1.239 5,248 4/28/2024
2.1.238 863 4/28/2024
2.1.237 984 4/28/2024
2.1.236 3,964 4/28/2024
2.1.235 565 4/28/2024
2.1.234 5,303 4/28/2024
2.1.233 1,122 4/28/2024
2.1.232 4,930 4/27/2024
2.1.231 121 4/27/2024
2.1.230 9,902 4/19/2024
2.1.229 6,139 4/18/2024
2.1.228 6,423 4/12/2024
2.1.227 1,040 4/12/2024
2.1.226 1,654 4/12/2024
2.1.225 1,387 4/12/2024
2.1.224 968 4/12/2024
2.1.223 1,388 4/12/2024
2.1.222 534 4/12/2024
2.1.221 126 4/12/2024
2.1.220 3,603 4/10/2024
2.1.219 15,632 4/10/2024
2.1.218 686 4/10/2024
2.1.217 7,650 4/2/2024
2.1.216 1,341 4/1/2024
2.1.215 7,386 3/29/2024
2.1.214 5,378 3/25/2024
2.1.213 622 3/25/2024
2.1.212 7,454 3/20/2024
2.1.211 5,153 3/19/2024
2.1.210 3,091 3/19/2024
2.1.209 3,401 3/18/2024
2.1.208 7,397 3/15/2024
2.1.207 5,032 3/13/2024
2.1.206 1,934 3/13/2024
2.1.205 2,518 3/13/2024
2.1.204 173 3/13/2024
2.1.203 166 3/13/2024
2.1.202 1,677 3/13/2024
2.1.201 170 3/13/2024
2.1.200 3,633 3/12/2024
2.1.199 4,648 3/12/2024
2.1.198 6,085 3/11/2024
2.1.197 4,234 3/11/2024
2.1.196 4,540 3/10/2024
2.1.195 5,860 3/8/2024
2.1.194 543 3/8/2024
2.1.193 4,215 3/8/2024
2.1.192 5,403 3/6/2024
2.1.191 5,411 3/4/2024
2.1.190 3,072 3/4/2024
2.1.189 6,133 3/2/2024
2.1.188 1,578 3/2/2024
2.1.187 1,967 3/2/2024
2.1.186 1,128 3/2/2024
2.1.185 775 3/2/2024
2.1.184 4,162 2/29/2024
2.1.183 1,366 2/29/2024
2.1.182 2,072 2/29/2024
2.1.181 3,977 2/26/2024
2.1.180 15,381 2/25/2024
2.1.179 1,857 2/25/2024
2.1.178 6,080 2/23/2024
2.1.177 5,874 2/22/2024
2.1.176 1,648 2/22/2024
2.1.175 1,990 2/21/2024
2.1.174 3,207 2/21/2024
2.1.173 2,895 2/21/2024
2.1.172 3,630 2/21/2024
2.1.171 1,568 2/21/2024
2.1.170 367 2/21/2024
2.1.169 3,333 2/21/2024
2.1.168 1,040 2/20/2024
2.1.167 217 2/20/2024
2.1.166 223 2/20/2024
2.1.165 4,423 2/20/2024
2.1.164 3,359 2/20/2024
2.1.163 3,217 2/20/2024
2.1.162 6,751 2/19/2024
2.1.161 5,396 2/17/2024
2.1.160 2,240 2/17/2024
2.1.159 1,625 2/16/2024
2.1.158 1,183 2/16/2024
2.1.157 1,979 2/16/2024
2.1.156 3,047 2/16/2024
2.1.155 3,522 2/16/2024
2.1.154 259 2/16/2024
2.1.153 1,734 2/16/2024
2.1.152 260 2/16/2024
2.1.151 254 2/16/2024
2.1.150 5,973 2/14/2024
2.1.149 2,532 2/13/2024
2.1.148 3,060 2/13/2024
2.1.147 3,683 2/13/2024
2.1.146 3,538 2/13/2024
2.1.145 4,892 2/12/2024
2.1.144 779 2/11/2024
2.1.143 5,311 2/11/2024
2.1.142 3,004 2/11/2024
2.1.141 6,232 2/10/2024
2.1.140 791 2/9/2024
2.1.139 5,652 2/9/2024
2.1.138 3,650 2/9/2024
2.1.137 977 2/8/2024
2.1.136 4,569 2/8/2024
2.1.135 1,891 2/8/2024
2.1.134 10,524 2/8/2024
2.1.133 324 2/8/2024
2.1.132 272 2/8/2024
2.1.131 5,210 2/7/2024
2.1.130 2,075 2/7/2024
2.1.129 3,557 2/7/2024
2.1.128 1,158 2/7/2024
2.1.127 1,025 2/6/2024
2.1.126 2,841 2/6/2024
2.1.125 291 2/6/2024
2.1.124 7,494 2/5/2024
2.1.123 4,884 2/4/2024
2.1.122 5,167 2/2/2024
2.1.121 6,159 1/31/2024
2.1.120 6,066 1/29/2024
2.1.119 3,671 1/29/2024
2.1.118 2,463 1/29/2024
2.1.117 3,926 1/28/2024
2.1.116 5,206 1/28/2024
2.1.115 2,975 1/28/2024
2.1.114 1,738 1/28/2024
2.1.113 2,367 1/27/2024
2.1.112 2,082 1/27/2024
2.1.111 5,424 1/27/2024
2.1.110 2,731 1/27/2024
2.1.109 6,485 1/27/2024
2.1.108 1,687 1/26/2024
2.1.107 2,131 1/26/2024
2.1.106 2,769 1/26/2024
2.1.105 5,010 1/26/2024
2.1.104 2,396 1/26/2024
2.1.103 1,326 1/26/2024
2.1.102 4,450 1/25/2024
2.1.101 3,556 1/25/2024
2.1.100 1,723 1/25/2024
2.1.99 5,718 1/25/2024
2.1.98 5,494 1/19/2024
2.1.97 5,728 1/15/2024
2.1.96 2,625 1/15/2024
2.1.95 2,058 1/15/2024
2.1.94 5,195 1/15/2024
2.1.93 5,343 1/15/2024
2.1.92 5,182 1/14/2024
2.1.91 6,339 1/13/2024
2.1.90 5,327 1/12/2024
2.1.89 5,210 1/11/2024
2.1.88 7,215 1/7/2024
2.1.87 5,719 1/5/2024
2.1.86 2,573 1/5/2024
2.1.85 3,277 1/5/2024
2.1.84 6,188 1/3/2024
2.1.83 3,766 1/1/2024
2.1.82 5,122 12/28/2023
2.1.81 2,085 12/28/2023
2.1.80 2,081 12/28/2023
2.1.79 4,590 12/27/2023
2.1.78 2,172 12/27/2023
2.1.77 311 12/27/2023
2.1.76 8,815 12/25/2023
2.1.75 4,837 12/25/2023
2.1.74 2,464 12/25/2023
2.1.73 725 12/25/2023
2.1.72 334 12/25/2023
2.1.71 6,968 12/24/2023
2.1.70 5,434 12/23/2023
2.1.69 2,929 12/23/2023
2.1.68 1,731 12/23/2023
2.1.67 3,907 12/23/2023
2.1.66 308 12/23/2023
2.1.65 8,227 12/19/2023
2.1.64 2,271 12/19/2023
2.1.63 5,578 12/12/2023
2.1.62 479 12/12/2023
2.1.61 2,759 12/11/2023
2.1.60 2,236 12/11/2023
2.1.59 1,255 12/11/2023
2.1.58 1,682 12/11/2023
2.1.57 854 12/10/2023
2.1.56 833 12/10/2023
2.1.55 1,874 12/10/2023
2.1.54 1,158 12/10/2023
2.1.53 8,278 12/10/2023
2.1.52 1,878 12/9/2023
2.1.51 1,066 12/9/2023
2.1.50 1,642 12/9/2023
2.1.49 2,511 12/9/2023
2.1.48 278 12/9/2023
2.1.47 1,287 12/9/2023
2.1.46 352 12/9/2023
2.1.45 2,898 12/9/2023
2.1.44 314 12/9/2023
2.1.43 4,575 12/9/2023
2.1.42 6,819 12/6/2023
2.1.41 1,250 12/6/2023
2.1.40 1,797 12/6/2023
2.1.39 4,015 12/5/2023
2.1.38 2,036 12/5/2023
2.1.37 1,141 12/5/2023
2.1.36 2,899 12/5/2023
2.1.35 302 12/5/2023
2.1.34 2,461 12/5/2023
2.1.33 307 12/5/2023
2.1.32 1,616 12/4/2023
2.1.31 1,550 12/4/2023
2.1.30 334 12/4/2023
2.1.29 8,864 12/4/2023
2.1.28 2,934 11/27/2023
2.1.27 1,374 11/26/2023
2.1.26 3,435 11/23/2023
2.1.25 2,956 11/23/2023
2.1.24 3,613 11/23/2023
2.1.23 308 11/23/2023
2.1.22 7,042 11/20/2023
2.1.21 3,420 11/20/2023
2.1.20 5,517 11/19/2023
2.1.19 3,022 11/19/2023
2.1.18 4,182 11/19/2023
2.1.17 1,129 11/18/2023
2.1.16 5,435 11/18/2023
2.1.15 1,324 11/18/2023
2.1.14 3,447 11/18/2023
2.1.13 762 11/18/2023
2.1.12 3,589 11/17/2023
2.1.11 2,967 11/17/2023
2.1.10 2,206 11/17/2023
2.1.9 416 11/17/2023
2.1.8 3,490 11/17/2023
2.1.7 2,027 11/17/2023
2.1.6 2,543 11/17/2023
2.1.5 1,741 11/17/2023
2.1.4 597 11/17/2023
2.1.3 3,303 11/16/2023
2.0.78 1,135 11/15/2023
2.0.77 327 11/15/2023
2.0.76 2,964 11/15/2023
2.0.2 330 11/16/2023
2.0.1 292 11/16/2023
1.0.75 4,248 11/13/2023
1.0.74 6,112 11/10/2023
1.0.73 4,815 11/9/2023
1.0.72 3,278 11/8/2023
1.0.71 5,027 11/7/2023
1.0.70 2,502 11/6/2023
1.0.69 3,127 11/3/2023
1.0.68 5,642 11/2/2023
1.0.67 3,436 11/1/2023
1.0.66 10,979 10/26/2023
1.0.65 6,730 10/19/2023
1.0.64 2,909 10/18/2023
1.0.63 2,827 10/17/2023
1.0.62 3,421 10/16/2023
1.0.61 6,217 10/13/2023
1.0.60 3,654 10/12/2023
1.0.59 11,476 9/18/2023
1.0.58 313 9/18/2023
1.0.57 7,717 9/14/2023
1.0.56 7,186 8/31/2023
1.0.55 3,659 8/30/2023
1.0.54 3,138 8/29/2023
1.0.53 3,049 8/28/2023
1.0.52 5,855 8/25/2023
1.0.51 3,268 8/24/2023
1.0.50 7,952 8/21/2023
1.0.49 3,254 8/18/2023
1.0.48 3,014 8/17/2023
1.0.47 5,508 8/16/2023
1.0.46 9,095 8/10/2023
1.0.45 3,170 8/9/2023
1.0.44 5,294 8/8/2023
1.0.43 4,472 8/7/2023
1.0.42 4,676 8/4/2023
1.0.41 8,609 7/13/2023
1.0.40 5,730 7/11/2023
1.0.39 3,510 7/10/2023
1.0.38 4,380 7/7/2023
1.0.37 389 7/7/2023
1.0.36 12,045 6/30/2023
1.0.35 6,206 6/28/2023
1.0.34 6,356 6/27/2023
1.0.33 7,355 6/26/2023
1.0.32 4,379 6/23/2023
1.0.31 8,949 6/21/2023
1.0.30 9,294 6/15/2023
1.0.29 3,702 6/14/2023
1.0.28 9,966 6/9/2023
1.0.27 4,309 6/8/2023
1.0.26 5,291 6/7/2023
1.0.25 5,913 6/6/2023
1.0.24 404 6/6/2023
1.0.23 4,997 6/5/2023
1.0.22 17,159 5/30/2023
1.0.21 19,971 5/29/2023
1.0.20 6,898 5/26/2023
1.0.19 8,022 5/25/2023
1.0.18 8,379 5/24/2023
1.0.17 5,687 5/24/2023
1.0.16 1,708 5/23/2023
1.0.15 1,697 5/23/2023
1.0.12 3,120 5/22/2023
1.0.11 19,326 5/16/2023
1.0.10 15,923 4/20/2023
1.0.9 15,216 4/3/2023
1.0.8 1,288 4/3/2023
1.0.7 2,532 3/23/2023
1.0.5 805 3/13/2023
1.0.4 550 3/11/2023
1.0.3 454 3/11/2023
1.0.2 457 3/11/2023
1.0.1 527 3/11/2023