File: Generated\Basic.CompilerLog.Util\Basic.CompilerLog.Util.Impl.BasicGeneratedFilesAnalyzerReference\Metrics.g.cs
Project: ..\..\..\test\Generators\Microsoft.Gen.Metrics\Generated\Microsoft.Gen.Metrics.Generated.Tests.csproj (Microsoft.Gen.Metrics.Generated.Tests)

// <auto-generated/>
#nullable enable
 
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
internal static partial class InstrumentsWithoutNamespace 
{
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    public static partial NoNamespaceCounterInstrument CreatePublicCounter(global::System.Diagnostics.Metrics.Meter meter)
        => GeneratedInstrumentsFactory.CreateNoNamespaceCounterInstrument(meter);
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    public static partial NoNamespaceHistogramInstrument CreatePublicHistogram(global::System.Diagnostics.Metrics.Meter meter)
        => GeneratedInstrumentsFactory.CreateNoNamespaceHistogramInstrument(meter);
}
 
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
internal sealed class NoNamespaceCounterInstrument
{
    private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
    public NoNamespaceCounterInstrument(global::System.Diagnostics.Metrics.Counter<long> counter)
    {
        _counter = counter;
    }
 
    public void Add(long value)
    {
        _counter.Add(value);
    }
}
 
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
internal sealed class NoNamespaceHistogramInstrument
{
    private readonly global::System.Diagnostics.Metrics.Histogram<long> _histogram;
 
    public NoNamespaceHistogramInstrument(global::System.Diagnostics.Metrics.Histogram<long> histogram)
    {
        _histogram = histogram;
    }
 
    public void Record(long value)
    {
        _histogram.Record(value);
    }
}
 
namespace NestedClass.Metrics
{
    public static partial class TopLevelClass 
    {
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        internal static partial class InstrumentsInNestedClass 
        {
            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
            public static partial global::NestedClass.Metrics.NestedClassCounter CreateCounterInNestedClass(global::System.Diagnostics.Metrics.Meter meter)
                => global::NestedClass.Metrics.GeneratedInstrumentsFactory.CreateNestedClassCounter(meter);
 
            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
            public static partial global::NestedClass.Metrics.NestedClassHistogram CreateHistogramInNestedClass(global::System.Diagnostics.Metrics.Meter meter)
                => global::NestedClass.Metrics.GeneratedInstrumentsFactory.CreateNestedClassHistogram(meter);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class NestedClassCounter
    {
        private readonly global::System.Diagnostics.Metrics.Counter<int> _counter;
 
        public NestedClassCounter(global::System.Diagnostics.Metrics.Counter<int> counter)
        {
            _counter = counter;
        }
 
        public void Add(int value)
        {
            _counter.Add(value);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class NestedClassHistogram
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<int> _histogram;
 
        public NestedClassHistogram(global::System.Diagnostics.Metrics.Histogram<int> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(int value)
        {
            _histogram.Record(value);
        }
    }
 
    public static partial class TopLevelClass 
    {
        internal static partial class MultiLevelNesting 
        {
            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
            internal static partial class MultiLevelNestedClass 
            {
                [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
                public static partial global::NestedClass.Metrics.MultiLevelNestedClassCounter CreateCounterInMultiLevelNestedClass(global::System.Diagnostics.Metrics.Meter meter)
                    => global::NestedClass.Metrics.GeneratedInstrumentsFactory.CreateMultiLevelNestedClassCounter(meter);
 
                [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
                public static partial global::NestedClass.Metrics.MultiLevelNestedClassHistogram CreateHistogramInMultiLevelNestedClass(global::System.Diagnostics.Metrics.Meter meter)
                    => global::NestedClass.Metrics.GeneratedInstrumentsFactory.CreateMultiLevelNestedClassHistogram(meter);
            }
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class MultiLevelNestedClassCounter
    {
        private readonly global::System.Diagnostics.Metrics.Counter<int> _counter;
 
        public MultiLevelNestedClassCounter(global::System.Diagnostics.Metrics.Counter<int> counter)
        {
            _counter = counter;
        }
 
        public void Add(int value)
        {
            _counter.Add(value);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class MultiLevelNestedClassHistogram
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<int> _histogram;
 
        public MultiLevelNestedClassHistogram(global::System.Diagnostics.Metrics.Histogram<int> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(int value)
        {
            _histogram.Record(value);
        }
    }
}
 
namespace NestedRecordClass.Metrics
{
    public static partial class TopLevelRecordClass 
    {
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public partial record InstrumentsInNestedRecordClass 
        {
            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
            public static partial global::NestedRecordClass.Metrics.NestedRecordClassCounter CreateCounterInNestedRecordClass(global::System.Diagnostics.Metrics.Meter meter)
                => global::NestedRecordClass.Metrics.GeneratedInstrumentsFactory.CreateNestedRecordClassCounter(meter);
 
            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
            public static partial global::NestedRecordClass.Metrics.NestedRecordClassHistogram CreateHistogramInNestedRecordClass(global::System.Diagnostics.Metrics.Meter meter)
                => global::NestedRecordClass.Metrics.GeneratedInstrumentsFactory.CreateNestedRecordClassHistogram(meter);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    public sealed class NestedRecordClassCounter
    {
        private readonly global::System.Diagnostics.Metrics.Counter<int> _counter;
 
        public NestedRecordClassCounter(global::System.Diagnostics.Metrics.Counter<int> counter)
        {
            _counter = counter;
        }
 
        public void Add(int value)
        {
            _counter.Add(value);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    public sealed class NestedRecordClassHistogram
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<int> _histogram;
 
        public NestedRecordClassHistogram(global::System.Diagnostics.Metrics.Histogram<int> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(int value)
        {
            _histogram.Record(value);
        }
    }
}
 
namespace NestedRecordStruct.Metrics
{
    public static partial class TopLevelStructClass 
    {
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public partial record struct InstrumentsInNestedRecordStruct 
        {
            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
            public static partial global::NestedRecordStruct.Metrics.NestedRecordStructCounter CreateCounterInNestedRecordStruct(global::System.Diagnostics.Metrics.Meter meter)
                => global::NestedRecordStruct.Metrics.GeneratedInstrumentsFactory.CreateNestedRecordStructCounter(meter);
 
            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
            public static partial global::NestedRecordStruct.Metrics.NestedRecordStructHistogram CreateHistogramInNestedRecordStruct(global::System.Diagnostics.Metrics.Meter meter)
                => global::NestedRecordStruct.Metrics.GeneratedInstrumentsFactory.CreateNestedRecordStructHistogram(meter);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    public sealed class NestedRecordStructCounter
    {
        private readonly global::System.Diagnostics.Metrics.Counter<int> _counter;
 
        public NestedRecordStructCounter(global::System.Diagnostics.Metrics.Counter<int> counter)
        {
            _counter = counter;
        }
 
        public void Add(int value)
        {
            _counter.Add(value);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    public sealed class NestedRecordStructHistogram
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<int> _histogram;
 
        public NestedRecordStructHistogram(global::System.Diagnostics.Metrics.Histogram<int> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(int value)
        {
            _histogram.Record(value);
        }
    }
}
 
namespace NestedStruct.Metrics
{
    public partial struct TopLevelStruct 
    {
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        internal partial struct InstrumentsInNestedStruct 
        {
            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
            public static partial global::NestedStruct.Metrics.NestedStructCounter CreateCounterInNestedStruct(global::System.Diagnostics.Metrics.Meter meter)
                => global::NestedStruct.Metrics.GeneratedInstrumentsFactory.CreateNestedStructCounter(meter);
 
            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
            public static partial global::NestedStruct.Metrics.NestedStructHistogram CreateHistogramInNestedStruct(global::System.Diagnostics.Metrics.Meter meter)
                => global::NestedStruct.Metrics.GeneratedInstrumentsFactory.CreateNestedStructHistogram(meter);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class NestedStructCounter
    {
        private readonly global::System.Diagnostics.Metrics.Counter<int> _counter;
 
        public NestedStructCounter(global::System.Diagnostics.Metrics.Counter<int> counter)
        {
            _counter = counter;
        }
 
        public void Add(int value)
        {
            _counter.Add(value);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class NestedStructHistogram
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<int> _histogram;
 
        public NestedStructHistogram(global::System.Diagnostics.Metrics.Histogram<int> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(int value)
        {
            _histogram.Record(value);
        }
    }
}
 
namespace PublicMetrics
{
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    public static partial class PublicMetricInstruments 
    {
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::PublicMetrics.PublicCounter CreatePublicCounter(global::System.Diagnostics.Metrics.Meter meter)
            => global::PublicMetrics.GeneratedInstrumentsFactory.CreatePublicCounter(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::PublicMetrics.PublicHistogram CreatePublicHistogram(global::System.Diagnostics.Metrics.Meter meter)
            => global::PublicMetrics.GeneratedInstrumentsFactory.CreatePublicHistogram(meter);
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    public sealed class PublicCounter
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public PublicCounter(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value)
        {
            _counter.Add(value);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    public sealed class PublicHistogram
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<long> _histogram;
 
        public PublicHistogram(global::System.Diagnostics.Metrics.Histogram<long> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(long value)
        {
            _histogram.Record(value);
        }
    }
}
 
namespace TestClasses
{
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal static partial class CounterTestExtensions 
    {
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.GenericIntCounter0D CreateGenericIntCounter0D(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateGenericIntCounter0D(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.GenericIntCounterExt0D CreateGenericIntCounterExt0D(this global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateGenericIntCounterExt0D(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.Counter0D CreateCounter0D(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateCounter0D(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.MyNamedCounter CreateCounterDifferentName(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateMyNamedCounter(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.CounterExt0D CreateCounterExt0D(this global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateCounterExt0D(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.GenericIntCounter1D CreateGenericIntCounter1D(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateGenericIntCounter1D(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.GenericIntCounterExt1D CreateGenericIntCounterExt1D(this global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateGenericIntCounterExt1D(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.GenericFloatCounter1D CreateGenericFloatCounter1D(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateGenericFloatCounter1D(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.GenericFloatCounterExt1D CreateGenericFloatCounterExt1D(this global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateGenericFloatCounterExt1D(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.Counter2D CreateCounter2D(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateCounter2D(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.CounterExt2D CreateCounterExt2D(this global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateCounterExt2D(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.Counter3D CreateCounter3D(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateCounter3D(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.CounterExt3D CreateCounterExt3D(this global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateCounterExt3D(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.Counter4D CreateCounter4D(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateCounter4D(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.CounterExt4D CreateCounterExt4D(this global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateCounterExt4D(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.CounterS0D2 CreateCounterS0D2(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateCounterS0D2(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.CounterExtS0D2 CreateCounterExtS0D2(this global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateCounterExtS0D2(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.CounterS1D1 CreateCounterS1D1(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateCounterS1D1(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.CounterExtS1D1 CreateCounterExtS1D1(this global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateCounterExtS1D1(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.CounterS3D2 CreateCounterS3D2(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateCounterS3D2(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.CounterExtS3D2 CreateCounterExtS3D2(this global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateCounterExtS3D2(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.CounterS5D5 CreateCounterS5D5(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateCounterS5D5(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.CounterExtS5D5 CreateCounterExtS5D5(this global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateCounterExtS5D5(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.TestCounter CreateTestCounter(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateTestCounter(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.TestCounterExt CreateTestCounterExt(this global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateTestCounterExt(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.CounterWithVariableParams CreateCounterWithVariableParams(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateCounterWithVariableParams(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.CounterExtWithVariableParams CreateCounterExtWithVariableParams(this global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateCounterExtWithVariableParams(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.CounterX CreateCounterX(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateCounterX(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.CounterExtX CreateCounterExtX(this global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateCounterExtX(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.CounterY CreateCounterY(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateCounterY(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.CounterExtY CreateCounterExtY(this global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateCounterExtY(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.StrongTypeDecimalCounter CreateStrongTypeDecimalCounter(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateStrongTypeDecimalCounter(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.StrongTypeDecimalCounterExt CreateStrongTypeDecimalCounterExt(this global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateStrongTypeDecimalCounterExt(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.StructTypeCounter CreateCounterStructType(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateStructTypeCounter(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.StructTypeCounterExt CreateCounterStructTypeExt(this global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateStructTypeCounterExt(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.RecordClassTypeCounter CreateCounterRecordClassType(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateRecordClassTypeCounter(meter);
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class GenericIntCounter0D
    {
        private readonly global::System.Diagnostics.Metrics.Counter<int> _counter;
 
        public GenericIntCounter0D(global::System.Diagnostics.Metrics.Counter<int> counter)
        {
            _counter = counter;
        }
 
        public void Add(int value)
        {
            _counter.Add(value);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class GenericIntCounterExt0D
    {
        private readonly global::System.Diagnostics.Metrics.Counter<int> _counter;
 
        public GenericIntCounterExt0D(global::System.Diagnostics.Metrics.Counter<int> counter)
        {
            _counter = counter;
        }
 
        public void Add(int value)
        {
            _counter.Add(value);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class Counter0D
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public Counter0D(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value)
        {
            _counter.Add(value);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class MyNamedCounter
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public MyNamedCounter(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value)
        {
            _counter.Add(value);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class CounterExt0D
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public CounterExt0D(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value)
        {
            _counter.Add(value);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class GenericIntCounter1D
    {
        private readonly global::System.Diagnostics.Metrics.Counter<int> _counter;
 
        public GenericIntCounter1D(global::System.Diagnostics.Metrics.Counter<int> counter)
        {
            _counter = counter;
        }
 
        public void Add(int value, object? s1)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
            };
 
            _counter.Add(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class GenericIntCounterExt1D
    {
        private readonly global::System.Diagnostics.Metrics.Counter<int> _counter;
 
        public GenericIntCounterExt1D(global::System.Diagnostics.Metrics.Counter<int> counter)
        {
            _counter = counter;
        }
 
        public void Add(int value, object? s1)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
            };
 
            _counter.Add(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class GenericFloatCounter1D
    {
        private readonly global::System.Diagnostics.Metrics.Counter<float> _counter;
 
        public GenericFloatCounter1D(global::System.Diagnostics.Metrics.Counter<float> counter)
        {
            _counter = counter;
        }
 
        public void Add(float value, object? s1)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
            };
 
            _counter.Add(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class GenericFloatCounterExt1D
    {
        private readonly global::System.Diagnostics.Metrics.Counter<float> _counter;
 
        public GenericFloatCounterExt1D(global::System.Diagnostics.Metrics.Counter<float> counter)
        {
            _counter = counter;
        }
 
        public void Add(float value, object? s1)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
            };
 
            _counter.Add(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class Counter2D
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public Counter2D(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value, object? s1, object? s2)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s2", s2),
            };
 
            _counter.Add(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class CounterExt2D
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public CounterExt2D(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value, object? s1, object? s2)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s2", s2),
            };
 
            _counter.Add(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class Counter3D
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public Counter3D(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value, object? s1, object? s2, object? s3)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s2", s2),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s3", s3),
            };
 
            _counter.Add(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class CounterExt3D
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public CounterExt3D(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value, object? s1, object? s2, object? s3)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s2", s2),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s3", s3),
            };
 
            _counter.Add(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class Counter4D
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public Counter4D(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value, object? s1, object? s2, object? s3, object? s4)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s2", s2),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s3", s3),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s4", s4),
            };
 
            _counter.Add(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class CounterExt4D
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public CounterExt4D(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value, object? s1, object? s2, object? s3, object? s4)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s2", s2),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s3", s3),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s4", s4),
            };
 
            _counter.Add(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class CounterS0D2
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public CounterS0D2(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value, object? d1, object? d2)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d1", d1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d2", d2),
            };
 
            _counter.Add(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class CounterExtS0D2
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public CounterExtS0D2(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value, object? d1, object? d2)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d1", d1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d2", d2),
            };
 
            _counter.Add(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class CounterS1D1
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public CounterS1D1(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value, object? s1, object? d1)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d1", d1),
            };
 
            _counter.Add(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class CounterExtS1D1
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public CounterExtS1D1(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value, object? s1, object? d1)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d1", d1),
            };
 
            _counter.Add(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class CounterS3D2
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public CounterS3D2(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value, object? s1, object? s2, object? s3, object? d1, object? d2)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s2", s2),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s3", s3),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d1", d1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d2", d2),
            };
 
            _counter.Add(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class CounterExtS3D2
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public CounterExtS3D2(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value, object? s1, object? s2, object? s3, object? d1, object? d2)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s2", s2),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s3", s3),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d1", d1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d2", d2),
            };
 
            _counter.Add(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class CounterS5D5
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public CounterS5D5(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value, object? s1, object? s2, object? s3, object? s4, object? s5, object? d1, object? d2, object? d3, object? d4, object? d5)
        {
            if (!_counter.Enabled)
            {
                return;
            }
 
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s2", s2),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s3", s3),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s4", s4),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s5", s5),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d1", d1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d2", d2),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d3", d3),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d4", d4),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d5", d5),
            };
 
            _counter.Add(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class CounterExtS5D5
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public CounterExtS5D5(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value, object? s1, object? s2, object? s3, object? s4, object? s5, object? d1, object? d2, object? d3, object? d4, object? d5)
        {
            if (!_counter.Enabled)
            {
                return;
            }
 
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s2", s2),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s3", s3),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s4", s4),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s5", s5),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d1", d1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d2", d2),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d3", d3),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d4", d4),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d5", d5),
            };
 
            _counter.Add(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class TestCounter
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public TestCounter(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value, object? Static_1, object? Static_2, object? Dyn_1, object? Dyn)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Static:1", Static_1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Static-2", Static_2),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dyn_1", Dyn_1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dyn", Dyn),
            };
 
            _counter.Add(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class TestCounterExt
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public TestCounterExt(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value, object? Static_1, object? Static_2, object? Dyn_1, object? Dyn)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Static:1", Static_1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Static-2", Static_2),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dyn_1", Dyn_1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dyn", Dyn),
            };
 
            _counter.Add(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class CounterWithVariableParams
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public CounterWithVariableParams(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value, object? Dim1, object? Dim_2, object? Dim_3)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim1", Dim1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim_2", Dim_2),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim_3", Dim_3),
            };
 
            _counter.Add(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class CounterExtWithVariableParams
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public CounterExtWithVariableParams(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value, object? Dim1, object? Dim_2, object? Dim_3)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim1", Dim1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim_2", Dim_2),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim_3", Dim_3),
            };
 
            _counter.Add(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class CounterX
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public CounterX(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value)
        {
            _counter.Add(value);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class CounterExtX
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public CounterExtX(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value)
        {
            _counter.Add(value);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class CounterY
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public CounterY(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value)
        {
            _counter.Add(value);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class CounterExtY
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public CounterExtY(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value)
        {
            _counter.Add(value);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class StrongTypeDecimalCounter
    {
        private readonly global::System.Diagnostics.Metrics.Counter<decimal> _counter;
 
        public StrongTypeDecimalCounter(global::System.Diagnostics.Metrics.Counter<decimal> counter)
        {
            _counter = counter;
        }
 
        public void Add(decimal value, global::TestClasses.CounterDimensions o)
        {
            if (!_counter.Enabled)
            {
                return;
            }
 
            if (o == null)
            {
                throw new global::System.ArgumentNullException(nameof(o));
            }
 
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim1", o.Dim1!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("OperationsEnum", o.OperationsEnum.ToString()),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Enum2", o.OperationsEnum2.ToString()),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim2", o.ChildDimensionsObject?.Dim2!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("dim2FromAttribute", o.ChildDimensionsObject?.SomeDim!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim3", o.GrandChildDimensionsObject?.Dim3!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim3FromAttribute", o.GrandChildDimensionsObject?.SomeDim!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("ParentOperationName", o.ParentOperationName!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim4Struct", o.ChildDimensionsStruct.Dim4Struct!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim5FromAttribute", o.ChildDimensionsStruct.Dim5Struct!),
            };
 
            _counter.Add(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class StrongTypeDecimalCounterExt
    {
        private readonly global::System.Diagnostics.Metrics.Counter<decimal> _counter;
 
        public StrongTypeDecimalCounterExt(global::System.Diagnostics.Metrics.Counter<decimal> counter)
        {
            _counter = counter;
        }
 
        public void Add(decimal value, global::TestClasses.CounterDimensions o)
        {
            if (!_counter.Enabled)
            {
                return;
            }
 
            if (o == null)
            {
                throw new global::System.ArgumentNullException(nameof(o));
            }
 
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim1", o.Dim1!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("OperationsEnum", o.OperationsEnum.ToString()),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Enum2", o.OperationsEnum2.ToString()),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim2", o.ChildDimensionsObject?.Dim2!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("dim2FromAttribute", o.ChildDimensionsObject?.SomeDim!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim3", o.GrandChildDimensionsObject?.Dim3!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim3FromAttribute", o.GrandChildDimensionsObject?.SomeDim!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("ParentOperationName", o.ParentOperationName!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim4Struct", o.ChildDimensionsStruct.Dim4Struct!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim5FromAttribute", o.ChildDimensionsStruct.Dim5Struct!),
            };
 
            _counter.Add(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class StructTypeCounter
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public StructTypeCounter(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value, global::TestClasses.CounterStructDimensions o)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim1", o.Dim1!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("DimInField", o.DimInField!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim2_FromAttribute", o.Dim2!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Operations", o.Operations.ToString()),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Operations_FromAttribute", o.Operations2.ToString()),
            };
 
            _counter.Add(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class StructTypeCounterExt
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public StructTypeCounterExt(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value, global::TestClasses.CounterStructDimensions o)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim1", o.Dim1!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("DimInField", o.DimInField!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim2_FromAttribute", o.Dim2!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Operations", o.Operations.ToString()),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Operations_FromAttribute", o.Operations2.ToString()),
            };
 
            _counter.Add(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class RecordClassTypeCounter
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public RecordClassTypeCounter(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value, global::TestClasses.CounterRecordClassDimensions o)
        {
            if (o == null)
            {
                throw new global::System.ArgumentNullException(nameof(o));
            }
 
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim1", o.Dim1!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("DimInField", o.DimInField!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim2_FromAttribute", o.Dim2!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Operations", o.Operations.ToString()),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Operations_FromAttribute", o.Operations2.ToString()),
            };
 
            _counter.Add(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal static partial class FileScopedExtensions 
    {
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.FileScopedNamespaceCounter CreateCounter(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateFileScopedNamespaceCounter(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.FileScopedNamespaceGenericDoubleCounter CreateGenericDoubleCounter(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateFileScopedNamespaceGenericDoubleCounter(meter);
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class FileScopedNamespaceCounter
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public FileScopedNamespaceCounter(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value)
        {
            _counter.Add(value);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class FileScopedNamespaceGenericDoubleCounter
    {
        private readonly global::System.Diagnostics.Metrics.Counter<double> _counter;
 
        public FileScopedNamespaceGenericDoubleCounter(global::System.Diagnostics.Metrics.Counter<double> counter)
        {
            _counter = counter;
        }
 
        public void Add(double value)
        {
            _counter.Add(value);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal static partial class HistogramTestExtensions 
    {
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.Histogram0D CreateHistogram0D(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateHistogram0D(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.GenericIntHistogram0D CreateGenericIntHistogram0D(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateGenericIntHistogram0D(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.HistogramExt0D CreateHistogramExt0D(this global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateHistogramExt0D(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.GenericIntHistogramExt0D CreateGenericIntHistogramExt0D(this global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateGenericIntHistogramExt0D(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.Histogram1D CreateHistogram1D(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateHistogram1D(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.HistogramExt1D CreateHistogramExt1D(this global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateHistogramExt1D(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.Histogram2D CreateHistogram2D(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateHistogram2D(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.GenericIntHistogram2D CreateGenericIntHistogram2D(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateGenericIntHistogram2D(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.GenericIntHistogramExt2D CreateGenericIntHistogramExt2D(this global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateGenericIntHistogramExt2D(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.HistogramExt2D CreateHistogramExt2D(this global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateHistogramExt2D(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.Histogram3D CreateHistogram3D(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateHistogram3D(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.HistogramExt3D CreateHistogramExt3D(this global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateHistogramExt3D(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.Histogram4D CreateHistogram4D(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateHistogram4D(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.HistogramExt4D CreateHistogramExt4D(this global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateHistogramExt4D(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.HistogramS0D2 CreateHistogramS0D2(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateHistogramS0D2(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.HistogramExtS0D2 CreateHistogramExtS0D2(this global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateHistogramExtS0D2(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.HistogramS1D1 CreateHistogramS1D1(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateHistogramS1D1(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.HistogramExtS1D1 CreateHistogramExtS1D1(this global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateHistogramExtS1D1(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.HistogramS3D2 CreateHistogramS3D2(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateHistogramS3D2(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.HistogramExtS3D2 CreateHistogramExtS3D2(this global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateHistogramExtS3D2(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.HistogramS5D5 CreateHistogramS5D5(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateHistogramS5D5(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.HistogramExtS5D5 CreateHistogramExtS5D5(this global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateHistogramExtS5D5(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.TestHistogram CreateTestHistogram(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateTestHistogram(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.TestHistogramExt CreateTestHistogramExt(this global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateTestHistogramExt(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.HistogramWithVariableParams CreateHistogramWithVariableParams(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateHistogramWithVariableParams(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.HistogramExtWithVariableParams CreateHistogramExtWithVariableParams(this global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateHistogramExtWithVariableParams(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.StrongTypeHistogram CreateHistogramStrongType(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateStrongTypeHistogram(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.StrongTypeHistogramExt CreateHistogramExtStrongType(this global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateStrongTypeHistogramExt(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.StructTypeHistogram CreateHistogramStructType(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateStructTypeHistogram(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.StructTypeHistogramExt CreateHistogramExtStructType(this global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateStructTypeHistogramExt(meter);
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class Histogram0D
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<long> _histogram;
 
        public Histogram0D(global::System.Diagnostics.Metrics.Histogram<long> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(long value)
        {
            _histogram.Record(value);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class GenericIntHistogram0D
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<int> _histogram;
 
        public GenericIntHistogram0D(global::System.Diagnostics.Metrics.Histogram<int> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(int value)
        {
            _histogram.Record(value);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class HistogramExt0D
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<long> _histogram;
 
        public HistogramExt0D(global::System.Diagnostics.Metrics.Histogram<long> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(long value)
        {
            _histogram.Record(value);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class GenericIntHistogramExt0D
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<int> _histogram;
 
        public GenericIntHistogramExt0D(global::System.Diagnostics.Metrics.Histogram<int> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(int value)
        {
            _histogram.Record(value);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class Histogram1D
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<long> _histogram;
 
        public Histogram1D(global::System.Diagnostics.Metrics.Histogram<long> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(long value, object? s1)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
            };
 
            _histogram.Record(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class HistogramExt1D
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<long> _histogram;
 
        public HistogramExt1D(global::System.Diagnostics.Metrics.Histogram<long> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(long value, object? s1)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
            };
 
            _histogram.Record(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class Histogram2D
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<long> _histogram;
 
        public Histogram2D(global::System.Diagnostics.Metrics.Histogram<long> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(long value, object? s1, object? s2)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s2", s2),
            };
 
            _histogram.Record(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class GenericIntHistogram2D
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<int> _histogram;
 
        public GenericIntHistogram2D(global::System.Diagnostics.Metrics.Histogram<int> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(int value, object? s1, object? s2)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s2", s2),
            };
 
            _histogram.Record(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class GenericIntHistogramExt2D
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<int> _histogram;
 
        public GenericIntHistogramExt2D(global::System.Diagnostics.Metrics.Histogram<int> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(int value, object? s1, object? s2)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s2", s2),
            };
 
            _histogram.Record(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class HistogramExt2D
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<long> _histogram;
 
        public HistogramExt2D(global::System.Diagnostics.Metrics.Histogram<long> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(long value, object? s1, object? s2)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s2", s2),
            };
 
            _histogram.Record(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class Histogram3D
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<long> _histogram;
 
        public Histogram3D(global::System.Diagnostics.Metrics.Histogram<long> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(long value, object? s1, object? s2, object? s3)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s2", s2),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s3", s3),
            };
 
            _histogram.Record(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class HistogramExt3D
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<long> _histogram;
 
        public HistogramExt3D(global::System.Diagnostics.Metrics.Histogram<long> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(long value, object? s1, object? s2, object? s3)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s2", s2),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s3", s3),
            };
 
            _histogram.Record(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class Histogram4D
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<long> _histogram;
 
        public Histogram4D(global::System.Diagnostics.Metrics.Histogram<long> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(long value, object? s1, object? s2, object? s3, object? s4)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s2", s2),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s3", s3),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s4", s4),
            };
 
            _histogram.Record(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class HistogramExt4D
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<long> _histogram;
 
        public HistogramExt4D(global::System.Diagnostics.Metrics.Histogram<long> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(long value, object? s1, object? s2, object? s3, object? s4)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s2", s2),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s3", s3),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s4", s4),
            };
 
            _histogram.Record(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class HistogramS0D2
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<long> _histogram;
 
        public HistogramS0D2(global::System.Diagnostics.Metrics.Histogram<long> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(long value, object? d1, object? d2)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d1", d1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d2", d2),
            };
 
            _histogram.Record(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class HistogramExtS0D2
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<long> _histogram;
 
        public HistogramExtS0D2(global::System.Diagnostics.Metrics.Histogram<long> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(long value, object? d1, object? d2)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d1", d1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d2", d2),
            };
 
            _histogram.Record(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class HistogramS1D1
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<long> _histogram;
 
        public HistogramS1D1(global::System.Diagnostics.Metrics.Histogram<long> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(long value, object? s1, object? d1)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d1", d1),
            };
 
            _histogram.Record(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class HistogramExtS1D1
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<long> _histogram;
 
        public HistogramExtS1D1(global::System.Diagnostics.Metrics.Histogram<long> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(long value, object? s1, object? d1)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d1", d1),
            };
 
            _histogram.Record(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class HistogramS3D2
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<long> _histogram;
 
        public HistogramS3D2(global::System.Diagnostics.Metrics.Histogram<long> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(long value, object? s1, object? s2, object? s3, object? d1, object? d2)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s2", s2),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s3", s3),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d1", d1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d2", d2),
            };
 
            _histogram.Record(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class HistogramExtS3D2
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<long> _histogram;
 
        public HistogramExtS3D2(global::System.Diagnostics.Metrics.Histogram<long> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(long value, object? s1, object? s2, object? s3, object? d1, object? d2)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s2", s2),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s3", s3),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d1", d1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d2", d2),
            };
 
            _histogram.Record(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class HistogramS5D5
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<long> _histogram;
 
        public HistogramS5D5(global::System.Diagnostics.Metrics.Histogram<long> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(long value, object? s1, object? s2, object? s3, object? s4, object? s5, object? d1, object? d2, object? d3, object? d4, object? d5)
        {
            if (!_histogram.Enabled)
            {
                return;
            }
 
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s2", s2),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s3", s3),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s4", s4),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s5", s5),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d1", d1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d2", d2),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d3", d3),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d4", d4),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d5", d5),
            };
 
            _histogram.Record(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class HistogramExtS5D5
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<long> _histogram;
 
        public HistogramExtS5D5(global::System.Diagnostics.Metrics.Histogram<long> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(long value, object? s1, object? s2, object? s3, object? s4, object? s5, object? d1, object? d2, object? d3, object? d4, object? d5)
        {
            if (!_histogram.Enabled)
            {
                return;
            }
 
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s2", s2),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s3", s3),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s4", s4),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s5", s5),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d1", d1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d2", d2),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d3", d3),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d4", d4),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("d5", d5),
            };
 
            _histogram.Record(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class TestHistogram
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<long> _histogram;
 
        public TestHistogram(global::System.Diagnostics.Metrics.Histogram<long> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(long value, object? Static_1, object? Static_2, object? Dyn_1, object? Dyn)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Static:1", Static_1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Static-2", Static_2),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dyn_1", Dyn_1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dyn", Dyn),
            };
 
            _histogram.Record(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class TestHistogramExt
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<long> _histogram;
 
        public TestHistogramExt(global::System.Diagnostics.Metrics.Histogram<long> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(long value, object? Static_1, object? Static_2, object? Dyn_1, object? Dyn)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Static:1", Static_1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Static-2", Static_2),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dyn_1", Dyn_1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dyn", Dyn),
            };
 
            _histogram.Record(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class HistogramWithVariableParams
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<long> _histogram;
 
        public HistogramWithVariableParams(global::System.Diagnostics.Metrics.Histogram<long> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(long value, object? Dim1, object? Dim_2, object? Dim_3)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim1", Dim1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim_2", Dim_2),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim_3", Dim_3),
            };
 
            _histogram.Record(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class HistogramExtWithVariableParams
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<long> _histogram;
 
        public HistogramExtWithVariableParams(global::System.Diagnostics.Metrics.Histogram<long> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(long value, object? Dim1, object? Dim_2, object? Dim_3)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim1", Dim1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim_2", Dim_2),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim_3", Dim_3),
            };
 
            _histogram.Record(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class StrongTypeHistogram
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<long> _histogram;
 
        public StrongTypeHistogram(global::System.Diagnostics.Metrics.Histogram<long> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(long value, global::TestClasses.HistogramDimensionsTest o)
        {
            if (!_histogram.Enabled)
            {
                return;
            }
 
            if (o == null)
            {
                throw new global::System.ArgumentNullException(nameof(o));
            }
 
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim1", o.Dim1!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("OperationsEnum", o.OperationsEnum.ToString()),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Enum2", o.OperationsEnum2.ToString()),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim2", o.ChildDimensionsObject?.Dim2!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("dim2FromAttribute", o.ChildDimensionsObject?.SomeDim!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim3", o.GrandChildrenDimensionsObject?.Dim3!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim3FromAttribute", o.GrandChildrenDimensionsObject?.SomeDim!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("ParentOperationName", o.ParentOperationName!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim4Struct", o.ChildDimensionsStruct.Dim4Struct!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim5FromAttribute", o.ChildDimensionsStruct.Dim5Struct!),
            };
 
            _histogram.Record(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class StrongTypeHistogramExt
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<long> _histogram;
 
        public StrongTypeHistogramExt(global::System.Diagnostics.Metrics.Histogram<long> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(long value, global::TestClasses.HistogramDimensionsTest o)
        {
            if (!_histogram.Enabled)
            {
                return;
            }
 
            if (o == null)
            {
                throw new global::System.ArgumentNullException(nameof(o));
            }
 
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim1", o.Dim1!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("OperationsEnum", o.OperationsEnum.ToString()),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Enum2", o.OperationsEnum2.ToString()),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim2", o.ChildDimensionsObject?.Dim2!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("dim2FromAttribute", o.ChildDimensionsObject?.SomeDim!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim3", o.GrandChildrenDimensionsObject?.Dim3!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim3FromAttribute", o.GrandChildrenDimensionsObject?.SomeDim!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("ParentOperationName", o.ParentOperationName!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim4Struct", o.ChildDimensionsStruct.Dim4Struct!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim5FromAttribute", o.ChildDimensionsStruct.Dim5Struct!),
            };
 
            _histogram.Record(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class StructTypeHistogram
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<long> _histogram;
 
        public StructTypeHistogram(global::System.Diagnostics.Metrics.Histogram<long> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(long value, global::TestClasses.HistogramStruct o)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim1", o.Dim1!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("DimInField", o.DimInField!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim2_FromAttribute", o.Dim2!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Operations", o.Operations.ToString()),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Operations_FromAttribute", o.Operations2.ToString()),
            };
 
            _histogram.Record(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class StructTypeHistogramExt
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<long> _histogram;
 
        public StructTypeHistogramExt(global::System.Diagnostics.Metrics.Histogram<long> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(long value, global::TestClasses.HistogramStruct o)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim1", o.Dim1!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("DimInField", o.DimInField!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim2_FromAttribute", o.Dim2!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Operations", o.Operations.ToString()),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Operations_FromAttribute", o.Operations2.ToString()),
            };
 
            _histogram.Record(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal partial record MetricRecordClassTestExtensions 
    {
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.CounterFromRecordClass CreateCounterFromRecordClass(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateCounterFromRecordClass(meter);
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class CounterFromRecordClass
    {
        private readonly global::System.Diagnostics.Metrics.Counter<int> _counter;
 
        public CounterFromRecordClass(global::System.Diagnostics.Metrics.Counter<int> counter)
        {
            _counter = counter;
        }
 
        public void Add(int value)
        {
            _counter.Add(value);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal partial record struct MetricRecordStructTestExtensions 
    {
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.CounterFromRecordStruct CreateCounterFromRecordStruct(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateCounterFromRecordStruct(meter);
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class CounterFromRecordStruct
    {
        private readonly global::System.Diagnostics.Metrics.Counter<int> _counter;
 
        public CounterFromRecordStruct(global::System.Diagnostics.Metrics.Counter<int> counter)
        {
            _counter = counter;
        }
 
        public void Add(int value)
        {
            _counter.Add(value);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal partial struct MetricStructTestExtensions 
    {
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.CounterFromStruct CreateCounterFromStruct(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateCounterFromStruct(meter);
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    internal sealed class CounterFromStruct
    {
        private readonly global::System.Diagnostics.Metrics.Counter<int> _counter;
 
        public CounterFromStruct(global::System.Diagnostics.Metrics.Counter<int> counter)
        {
            _counter = counter;
        }
 
        public void Add(int value)
        {
            _counter.Add(value);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    public static partial class MetricsWithUnit 
    {
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.CounterWithUnit CreateCounterWithUnit(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateCounterWithUnit(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.CounterWithUnitAndDims CreateCounterWithUnitAndDims(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateCounterWithUnitAndDims(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.CounterStrongTypeWithUnit CreateCounterStrongTypeWithUnit(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateCounterStrongTypeWithUnit(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.GenericDoubleCounterWithUnit CreateGenericDoubleCounterWithUnit(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateGenericDoubleCounterWithUnit(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.HistogramWithUnit CreateHistogramWithUnit(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateHistogramWithUnit(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.HistogramStrongTypeWithUnit CreateHistogramStrongTypeWithUnit(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateHistogramStrongTypeWithUnit(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.HistogramWithUnitAndDims CreateHistogramWithUnitAndDims(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateHistogramWithUnitAndDims(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClasses.GenericIntHistogramWithUnit CreateGenericHistogramWithUnitAndDims(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClasses.GeneratedInstrumentsFactory.CreateGenericIntHistogramWithUnit(meter);
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    public sealed class CounterWithUnit
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public CounterWithUnit(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value)
        {
            _counter.Add(value);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    public sealed class CounterWithUnitAndDims
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public CounterWithUnitAndDims(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value, object? s1, object? s2)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s2", s2),
            };
 
            _counter.Add(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    public sealed class CounterStrongTypeWithUnit
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public CounterStrongTypeWithUnit(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value, global::TestClasses.Dimensions o)
        {
            if (o == null)
            {
                throw new global::System.ArgumentNullException(nameof(o));
            }
 
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim1", o.Dim1!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim2", o.Dim2!),
            };
 
            _counter.Add(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    public sealed class GenericDoubleCounterWithUnit
    {
        private readonly global::System.Diagnostics.Metrics.Counter<double> _counter;
 
        public GenericDoubleCounterWithUnit(global::System.Diagnostics.Metrics.Counter<double> counter)
        {
            _counter = counter;
        }
 
        public void Add(double value)
        {
            _counter.Add(value);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    public sealed class HistogramWithUnit
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<long> _histogram;
 
        public HistogramWithUnit(global::System.Diagnostics.Metrics.Histogram<long> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(long value)
        {
            _histogram.Record(value);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    public sealed class HistogramStrongTypeWithUnit
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<long> _histogram;
 
        public HistogramStrongTypeWithUnit(global::System.Diagnostics.Metrics.Histogram<long> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(long value, global::TestClasses.Dimensions o)
        {
            if (o == null)
            {
                throw new global::System.ArgumentNullException(nameof(o));
            }
 
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim1", o.Dim1!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dim2", o.Dim2!),
            };
 
            _histogram.Record(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    public sealed class HistogramWithUnitAndDims
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<long> _histogram;
 
        public HistogramWithUnitAndDims(global::System.Diagnostics.Metrics.Histogram<long> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(long value, object? s1)
        {
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("s1", s1),
            };
 
            _histogram.Record(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    public sealed class GenericIntHistogramWithUnit
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<int> _histogram;
 
        public GenericIntHistogramWithUnit(global::System.Diagnostics.Metrics.Histogram<int> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(int value)
        {
            _histogram.Record(value);
        }
    }
}
 
namespace TestClassesNspace.Metrics
{
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    public static partial class OverlappingNamesTestExtensions 
    {
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClassesNspace.Metrics.OverlappingNamesCounter CreateOverlappingNamesCounter(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClassesNspace.Metrics.GeneratedInstrumentsFactory.CreateOverlappingNamesCounter(meter);
 
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
        public static partial global::TestClassesNspace.Metrics.OverlappingNamesHistogram CreateOverlappingNamesHistogram(global::System.Diagnostics.Metrics.Meter meter)
            => global::TestClassesNspace.Metrics.GeneratedInstrumentsFactory.CreateOverlappingNamesHistogram(meter);
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    public sealed class OverlappingNamesCounter
    {
        private readonly global::System.Diagnostics.Metrics.Counter<long> _counter;
 
        public OverlappingNamesCounter(global::System.Diagnostics.Metrics.Counter<long> counter)
        {
            _counter = counter;
        }
 
        public void Add(long value, global::TestClassesNspace.Metrics.StrongTypeDimensionsOverlappingNames o)
        {
            if (o == null)
            {
                throw new global::System.ArgumentNullException(nameof(o));
            }
 
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dimension1", o.Dimension1!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dimension2", o.Dimension2!),
            };
 
            _counter.Add(value, tagList);
        }
    }
 
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Gen.Metrics", "10.9.0.0")]
    public sealed class OverlappingNamesHistogram
    {
        private readonly global::System.Diagnostics.Metrics.Histogram<long> _histogram;
 
        public OverlappingNamesHistogram(global::System.Diagnostics.Metrics.Histogram<long> histogram)
        {
            _histogram = histogram;
        }
 
        public void Record(long value, global::TestClassesNspace.Metrics.StrongTypeDimensionsOverlappingNames o)
        {
            if (o == null)
            {
                throw new global::System.ArgumentNullException(nameof(o));
            }
 
            var tagList = new global::System.Diagnostics.TagList
            {
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dimension1", o.Dimension1!),
                new global::System.Collections.Generic.KeyValuePair<string, object?>("Dimension2", o.Dimension2!),
            };
 
            _histogram.Record(value, tagList);
        }
    }
}