protected override IEnumerable <ExtrinsicHandler> ProcessExtrinsics(IEnumerable <DeserializedExtrinsic> extrinsics, ulong blockNumber, CancellationToken stoppingToken)
        {
            foreach (var extrinsic in extrinsics)
            {
                Func <MarketplaceDbContext, ValueTask>?handler = extrinsic.Extrinsic.Call.Call switch
                {
                    CallCall c => HandleContractCall(c, extrinsic.Extrinsic.Prefix.Value.AsT1.Address.PublicKey),
                    TransferCall t => HandleTransfer(t, extrinsic.Extrinsic.Prefix.Value.AsT1.Address.PublicKey, blockNumber),
                    _ => null
                };

                if (handler != null)
                {
                    yield return(new ExtrinsicHandler()
                    {
                        OnSaveToDb = handler,
                        OnAfterSaveToDb = () => _eventBusService.PublishRegisterNft(stoppingToken),
                    });
                }
            }
        }