// Closes all scopes - Note: alternatively we may add scope tracking in parent and rely on parent scope disposal
 public void Dispose() => _scopes.Visit(entry => entry.Value?.Dispose());