NJsonSchema 11.6.1

NJsonSchema for .NET

NSwag | NJsonSchema | Apimundo | Namotion.Reflection

Azure DevOps Nuget Discord StackOverflow Wiki Apimundo

NJsonSchema is a .NET library to read, generate and validate JSON Schema draft v4+ schemas. The library can read a schema from a file or string and validate JSON data against it. A schema can also be generated from an existing .NET class. With the code generation APIs you can generate C# and TypeScript classes or interfaces from a schema.

The library uses Json.NET to read and write JSON data and Namotion.Reflection for additional .NET reflection APIs.

NuGet packages:

Preview NuGet Feed: https://www.myget.org/F/njsonschema/api/v3/index.json

Features:

NJsonSchema is heavily used in NSwag, a Swagger API toolchain for .NET which generates client code for Web API services. NSwag also provides command line tools to use the NJsonSchema's JSON Schema generator (command types2swagger).

The project is developed and maintained by Rico Suter and other contributors.

Some code generators can directly be used via the Apimundo service.

NJsonSchema usage

The JsonSchema class can be used as follows:

var schema = JsonSchema.FromType<Person>();
var schemaData = schema.ToJson();
var errors = schema.Validate("{...}");

foreach (var error in errors)
    Console.WriteLine(error.Path + ": " + error.Kind);

schema = await JsonSchema.FromJsonAsync(schemaData);

The Person class:

public class Person
{
    [Required]
    public string FirstName { get; set; }

    public string MiddleName { get; set; }

    [Required]
    public string LastName { get; set; }

    public Gender Gender { get; set; }

    [Range(2, 5)]
    public int NumberWithRange { get; set; }

    public DateTime Birthday { get; set; }

    public Company Company { get; set; }

    public Collection<Car> Cars { get; set; }
}

public enum Gender
{
    Male,
    Female
}

public class Car
{
    public string Name { get; set; }

    public Company Manufacturer { get; set; }
}

public class Company
{
    public string Name { get; set; }
}

The generated JSON schema data stored in the schemaData variable:

{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "title": "Person",
  "type": "object",
  "additionalProperties": false,
  "required": [
    "FirstName",
    "LastName"
  ],
  "properties": {
    "FirstName": {
      "type": "string",
      "minLength": 1
    },
    "MiddleName": {
      "type": [
        "null",
        "string"
      ]
    },
    "LastName": {
      "type": "string",
      "minLength": 1
    },
    "Gender": {
      "$ref": "#/definitions/Gender"
    },
    "NumberWithRange": {
      "type": "integer",
      "format": "int32",
      "maximum": 5.0,
      "minimum": 2.0
    },
    "Birthday": {
      "type": "string",
      "format": "date-time"
    },
    "Company": {
      "oneOf": [
        {
          "type": "null"
        },
        {
          "$ref": "#/definitions/Company"
        }
      ]
    },
    "Cars": {
      "type": [
        "array",
        "null"
      ],
      "items": {
        "$ref": "#/definitions/Car"
      }
    }
  },
  "definitions": {
    "Gender": {
      "type": "integer",
      "description": "",
      "x-enumNames": [
        "Male",
        "Female"
      ],
      "enum": [
        0,
        1
      ]
    },
    "Company": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "Name": {
          "type": [
            "null",
            "string"
          ]
        }
      }
    },
    "Car": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "Name": {
          "type": [
            "null",
            "string"
          ]
        },
        "Manufacturer": {
          "oneOf": [
            {
              "type": "null"
            },
            {
              "$ref": "#/definitions/Company"
            }
          ]
        }
      }
    }
  }
}

NJsonSchema.CodeGeneration usage

The NJsonSchema.CodeGeneration can be used to generate C# or TypeScript code from a JSON schema:

var generator = new CSharpGenerator(schema);
var file = generator.GenerateFile();

The file variable now contains the C# code for all the classes defined in the JSON schema.

TypeScript

The previously generated JSON Schema would generate the following TypeScript interfaces.

Settings:

new TypeScriptGeneratorSettings { TypeStyle = TypeScriptTypeStyle.Interface, TypeScriptVersion = 4.3m }

Output:

export enum Gender {
    Male = 0, 
    Female = 1, 
}

export interface Company {
    Name: string | undefined;
}

export interface Car {
    Name: string | undefined;
    Manufacturer: Company | undefined;
}

export interface Person {
    FirstName: string;
    MiddleName: string | undefined;
    LastName: string;
    Gender: Gender;
    NumberWithRange: number;
    Birthday: Date;
    Company: Company | undefined;
    Cars: Car[] | undefined;
}

... and the following TypeScript classes.

Settings:

new TypeScriptGeneratorSettings { TypeStyle = TypeScriptTypeStyle.Class, TypeScriptVersion = 4.3m }

Output:

export enum Gender {
    Male = 0, 
    Female = 1, 
}

export class Company implements ICompany {
    name: string | undefined;

    constructor(data?: ICompany) {
        if (data) {
            for (var property in data) {
                if (data.hasOwnProperty(property))
                    (<any>this)[property] = (<any>data)[property];
            }
        }
    }

    init(data?: any) {
        if (data) {
            this.name = data["Name"];
        }
    }

    static fromJS(data: any): Company {
        let result = new Company();
        result.init(data);
        return result;
    }

    toJSON(data?: any) {
        data = typeof data === 'object' ? data : {};
        data["Name"] = this.name;
        return data; 
    }
}

export interface ICompany {
    name: string | undefined;
}

export class Car implements ICar {
    name: string | undefined;
    manufacturer: Company | undefined;

    constructor(data?: ICar) {
        if (data) {
            for (var property in data) {
                if (data.hasOwnProperty(property))
                    (<any>this)[property] = (<any>data)[property];
            }
        }
    }

    init(data?: any) {
        if (data) {
            this.name = data["Name"];
            this.manufacturer = data["Manufacturer"] ? Company.fromJS(data["Manufacturer"]) : <any>undefined;
        }
    }

    static fromJS(data: any): Car {
        let result = new Car();
        result.init(data);
        return result;
    }

    toJSON(data?: any) {
        data = typeof data === 'object' ? data : {};
        data["Name"] = this.name;
        data["Manufacturer"] = this.manufacturer ? this.manufacturer.toJSON() : <any>undefined;
        return data; 
    }
}

export interface ICar {
    name: string | undefined;
    manufacturer: Company | undefined;
}

export class Person implements IPerson {
    firstName: string;
    middleName: string | undefined;
    lastName: string;
    gender: Gender;
    numberWithRange: number;
    birthday: Date;
    company: Company | undefined;
    cars: Car[] | undefined;

    constructor(data?: IPerson) {
        if (data) {
            for (var property in data) {
                if (data.hasOwnProperty(property))
                    (<any>this)[property] = (<any>data)[property];
            }
        }
    }

    init(data?: any) {
        if (data) {
            this.firstName = data["FirstName"];
            this.middleName = data["MiddleName"];
            this.lastName = data["LastName"];
            this.gender = data["Gender"];
            this.numberWithRange = data["NumberWithRange"];
            this.birthday = data["Birthday"] ? new Date(data["Birthday"].toString()) : <any>undefined;
            this.company = data["Company"] ? Company.fromJS(data["Company"]) : <any>undefined;
            if (data["Cars"] && data["Cars"].constructor === Array) {
                this.cars = [];
                for (let item of data["Cars"])
                    this.cars.push(Car.fromJS(item));
            }
        }
    }

    static fromJS(data: any): Person {
        let result = new Person();
        result.init(data);
        return result;
    }

    toJSON(data?: any) {
        data = typeof data === 'object' ? data : {};
        data["FirstName"] = this.firstName;
        data["MiddleName"] = this.middleName;
        data["LastName"] = this.lastName;
        data["Gender"] = this.gender;
        data["NumberWithRange"] = this.numberWithRange;
        data["Birthday"] = this.birthday ? this.birthday.toISOString() : <any>undefined;
        data["Company"] = this.company ? this.company.toJSON() : <any>undefined;
        if (this.cars && this.cars.constructor === Array) {
            data["Cars"] = [];
            for (let item of this.cars)
                data["Cars"].push(item.toJSON());
        }
        return data; 
    }
}

export interface IPerson {
    firstName: string;
    middleName: string | undefined;
    lastName: string;
    gender: Gender;
    numberWithRange: number;
    birthday: Date;
    company: Company | undefined;
    cars: Car[] | undefined;
}

NJsonSchema.SampleJsonSchemaGenerator usage

The NJsonSchema.SampleJsonSchemaGenerator can be used to generate a JSON Schema from sample JSON data:

JSON Schema Specification

By default, the NJsonSchema.SampleJsonSchemaGenerator generates a JSON Schema based on the JSON Schema specification. See: JSON Schema Specification

var generator = new SampleJsonSchemaGenerator(new SampleJsonSchemaGeneratorSettings());

var schema = generator.Generate("{...}");

Input:

{
  "int": 1,
  "float": 340282346638528859811704183484516925440.0,
  "str": "abc",
  "bool": true,
  "date": "2012-07-19",
  "datetime": "2012-07-19 10:11:11",
  "timespan": "10:11:11"
}

Output:

{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "int": {
      "type": "integer"
    },
    "float": {
      "type": "number"
    },
    "str": {
      "type": "string"
    },
    "bool": {
      "type": "boolean"
    },
    "date": {
      "type": "string",
      "format": "date"
    },
    "datetime": {
      "type": "string",
      "format": "date-time"
    },
    "timespan": {
      "type": "string",
      "format": "duration"
    }
  }
}

OpenApi Specification

To generate a JSON Schema for OpenApi, provide the SchemaType.OpenApi3 in the settings. See: OpenApi Specification

var generator = new SampleJsonSchemaGenerator(new SampleJsonSchemaGeneratorSettings { SchemaType = SchemaType.OpenApi3 });

var schema = generator.Generate("{...}");

Input:

{
  "int": 12345,
  "long": 1736347656630,
  "float": 340282346638528859811704183484516925440.0,
  "double": 340282346638528859811704183484516925440123456.0,
}

Output:

{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "int": {
      "type": "integer",
      "format": "int32"
    },
    "long": {
      "type": "integer",
      "format": "int64"
    },
    "float": {
      "type": "number",
      "format": "float"
    },
    "double": {
      "type": "number",
      "format": "double"
    }
  }
}

Final notes

Applications which use the library:

Showing the top 20 packages that depend on NJsonSchema.

Packages Downloads
NJsonSchema.CodeGeneration.TypeScript
JSON Schema draft v4 reader, generator and validator for .NET
34
NSwag.CodeGeneration
NSwag: The Swagger API toolchain for .NET and TypeScript
26
NSwag.Generation
NSwag: The Swagger API toolchain for .NET and TypeScript
23
NJsonSchema.CodeGeneration.TypeScript
JSON Schema reader, generator and validator for .NET
22
NSwag.AspNetCore
NSwag: The Swagger API toolchain for .NET and TypeScript
22
NJsonSchema.CodeGeneration.TypeScript
JSON Schema draft v4 reader, generator and validator for .NET
21
NSwag.CodeGeneration
NSwag: The OpenAPI/Swagger API toolchain for .NET and TypeScript
21
NSwag.Generation.WebApi
NSwag: The OpenAPI/Swagger API toolchain for .NET and TypeScript
20
NSwag.Generation.AspNetCore
NSwag: The OpenAPI/Swagger API toolchain for .NET and TypeScript
20
NJsonSchema.Yaml
JSON Schema reader, generator and validator for .NET
19
NSwag.AssemblyLoader
NSwag: The Swagger API toolchain for .NET and TypeScript
19
NJsonSchema.CodeGeneration
JSON Schema draft v4 reader, generator and validator for .NET
19
NJsonSchema.CodeGeneration.TypeScript
JSON Schema draft v4 reader, generator and validator for .NET
19
NJsonSchema.CodeGeneration.TypeScript
JSON Schema reader, generator and validator for .NET
19
NSwag.AssemblyLoader
NSwag: The OpenAPI/Swagger API toolchain for .NET and TypeScript
19
NSwag.Commands
NSwag: The Swagger API toolchain for .NET and TypeScript
19
NJsonSchema.CodeGeneration.CSharp
JSON Schema reader, generator and validator for .NET
19

.NET Framework 4.6.2

.NET 8.0

.NET Standard 2.0

Version Downloads Last updated
11.6.1 3 04/23/2026
11.6.0 6 04/10/2026
11.5.2 13 12/16/2025
11.5.1 14 12/10/2025
11.5.0 10 12/18/2025
11.4.0 14 12/11/2025
11.3.2 10 12/11/2025
11.3.1 13 12/11/2025
11.3.0 13 12/11/2025
11.2.0 14 12/10/2025
11.1.0 10 12/10/2025
11.0.2 15 12/10/2025
11.0.1 14 12/10/2025
11.0.0 8 12/14/2025
11.0.0-preview008 10 12/10/2025
11.0.0-preview007 15 12/10/2025
11.0.0-preview006 12 12/10/2025
11.0.0-preview005 15 12/10/2025
11.0.0-preview004 15 12/10/2025
11.0.0-preview003 14 12/10/2025
11.0.0-preview002 14 12/10/2025
11.0.0-preview001 11 12/09/2025
10.9.0 9 12/10/2025
10.8.0 14 12/10/2025
10.7.2 14 12/10/2025
10.7.1 10 12/10/2025
10.7.0 11 12/10/2025
10.6.10 15 12/10/2025
10.6.9 12 12/10/2025
10.6.8 16 12/11/2025
10.6.7 11 12/10/2025
10.6.6 15 12/23/2025
10.6.5 16 12/10/2025
10.6.4 12 12/10/2025
10.6.3 11 12/10/2025
10.6.2 15 12/10/2025
10.6.1 13 12/10/2025
10.6.0 23 12/10/2025
10.5.2 17 12/10/2025
10.5.1 11 12/10/2025
10.5.0 15 12/10/2025
10.4.6 9 12/10/2025
10.4.5 9 12/10/2025
10.4.4 13 12/10/2025
10.4.3 16 12/10/2025
10.4.2 9 12/10/2025
10.4.1 14 12/10/2025
10.4.0 15 12/10/2025
10.3.11 9 12/13/2025
10.3.10 9 01/13/2026
10.3.9 13 01/13/2026
10.3.8 16 12/10/2025
10.3.7 17 12/10/2025
10.3.6 12 12/10/2025
10.3.5 15 12/10/2025
10.3.4 12 12/10/2025
10.3.3 11 12/10/2025
10.3.2 12 12/14/2025
10.3.1 13 12/10/2025
10.3.0 14 12/10/2025
10.2.2 14 12/10/2025
10.2.1 13 12/10/2025
10.2.0 12 12/10/2025
10.1.26 9 12/10/2025
10.1.25 11 12/15/2025
10.1.24 13 12/10/2025
10.1.23 17 12/10/2025
10.1.22 10 12/10/2025
10.1.21 12 12/10/2025
10.1.20 17 12/10/2025
10.1.19 12 12/14/2025
10.1.18 10 12/10/2025
10.1.17 12 12/10/2025
10.1.16 10 12/10/2025
10.1.15 12 12/10/2025
10.1.14 10 12/14/2025
10.1.13 15 12/10/2025
10.1.12 14 12/10/2025
10.1.11 11 12/10/2025
10.1.10 8 01/13/2026
10.1.9 11 12/10/2025
10.1.8 13 12/10/2025
10.1.7 14 12/22/2025
10.1.6 11 12/10/2025
10.1.5 17 12/10/2025
10.1.4 19 12/10/2025
10.1.3 13 12/16/2025
10.1.2 10 12/10/2025
10.1.1 14 12/10/2025
10.1.0 14 12/10/2025
10.0.28 7 12/21/2025
10.0.27 10 12/10/2025
10.0.26 9 12/10/2025
10.0.25 13 12/10/2025
10.0.24 16 12/10/2025
10.0.23 9 12/10/2025
10.0.22 14 12/10/2025
10.0.21 12 12/10/2025
10.0.20 11 12/10/2025
10.0.19 11 12/10/2025
10.0.18 10 12/10/2025
10.0.17 10 12/13/2025
10.0.16 14 12/10/2025
10.0.15 12 12/16/2025
10.0.14 8 01/13/2026
10.0.13 10 12/10/2025
10.0.12 14 12/14/2025
10.0.11 9 12/14/2025
10.0.10 12 12/10/2025
10.0.9 10 01/13/2026
10.0.8 8 12/10/2025
10.0.7 15 12/10/2025
10.0.6 11 12/10/2025
10.0.5 12 12/10/2025
10.0.4 9 12/10/2025
10.0.3 15 12/10/2025
10.0.1 11 12/10/2025
10.0.0 10 12/10/2025
9.14.1 9 12/10/2025
9.14.0 14 12/10/2025
9.13.37 15 12/10/2025
9.13.36 10 12/15/2025
9.13.35 10 12/10/2025
9.13.34 10 12/11/2025
9.13.33 10 12/10/2025
9.13.32 7 12/10/2025
9.13.31 13 12/18/2025
9.13.30 13 12/10/2025
9.13.29 11 12/13/2025
9.13.28 11 01/04/2026
9.13.27 9 01/13/2026
9.13.26 10 12/10/2025
9.13.25 14 12/10/2025
9.13.24 11 12/10/2025
9.13.23 11 12/10/2025
9.13.22 11 12/22/2025
9.13.19 18 12/10/2025
9.13.18 13 12/10/2025
9.13.17 12 12/11/2025
9.13.16 8 12/15/2025
9.13.15 11 12/10/2025
9.13.14 10 12/10/2025
9.13.13 14 12/10/2025
9.13.12 14 12/15/2025
9.13.11 12 12/10/2025
9.13.10 11 12/10/2025
9.13.9 10 12/10/2025
9.13.8 14 12/10/2025
9.13.7 12 12/10/2025
9.13.5 11 12/10/2025
9.13.4 11 12/10/2025
9.13.3 11 12/10/2025
9.13.2 9 12/14/2025
9.13.1 11 12/10/2025
9.13.0 12 12/11/2025
9.12.7 14 12/10/2025
9.12.6 7 12/30/2025
9.12.5 19 12/10/2025
9.12.4 11 12/10/2025
9.12.3 12 12/10/2025
9.12.2 11 12/10/2025
9.12.1 14 12/10/2025
9.12.0 9 12/10/2025
9.11.1 10 12/10/2025
9.11.0 10 12/10/2025
9.10.75 11 01/11/2026
9.10.74 13 12/10/2025
9.10.73 12 12/10/2025
9.10.72 16 12/10/2025
9.10.71 18 12/10/2025
9.10.70 8 12/22/2025
9.10.69 14 12/10/2025
9.10.68 16 12/10/2025
9.10.67 10 12/22/2025
9.10.66 8 12/10/2025
9.10.65 14 12/10/2025
9.10.64 14 12/10/2025
9.10.63 14 01/13/2026
9.10.62 10 12/10/2025
9.10.61 11 12/14/2025
9.10.60 13 12/11/2025
9.10.59 9 12/22/2025
9.10.58 11 12/10/2025
9.10.57 18 12/10/2025
9.10.56 13 12/10/2025
9.10.55 12 12/11/2025
9.10.54 8 12/23/2025
9.10.53 10 12/10/2025
9.10.52 8 12/10/2025
9.10.51 10 12/10/2025
9.10.50 15 12/10/2025
9.10.49 10 12/10/2025
9.10.48 14 12/10/2025
9.10.47 9 12/10/2025
9.10.46 11 12/10/2025
9.10.45 12 12/10/2025
9.10.44 9 12/10/2025
9.10.43 10 12/10/2025
9.10.42 13 12/10/2025
9.10.41 10 12/10/2025
9.10.40 12 12/10/2025
9.10.39 12 12/10/2025
9.10.38 15 12/10/2025
9.10.37 12 12/10/2025
9.10.36 9 12/10/2025
9.10.35 11 12/11/2025
9.10.34 12 12/10/2025
9.10.33 17 12/11/2025
9.10.32 9 12/10/2025
9.10.31 8 12/10/2025
9.10.30 13 12/10/2025
9.10.29 12 12/10/2025
9.10.28 15 12/10/2025
9.10.27 11 12/09/2025
9.10.26 10 12/10/2025
9.10.25 7 01/13/2026
9.10.24 10 12/10/2025
9.10.23 9 12/11/2025
9.10.22 13 12/10/2025
9.10.21 15 12/10/2025
9.10.20 12 12/11/2025
9.10.19 10 12/10/2025
9.10.18 13 12/10/2025
9.10.17 10 12/09/2025
9.10.16 11 12/15/2025
9.10.15 18 12/10/2025
9.10.14 9 12/14/2025
9.10.13 12 12/10/2025
9.10.12 13 12/13/2025
9.10.11 11 12/11/2025
9.10.10 13 12/10/2025
9.10.9 13 12/10/2025
9.10.8 13 01/13/2026
9.10.7 12 12/10/2025
9.10.6 12 12/10/2025
9.10.5 11 12/10/2025
9.10.4 9 12/10/2025
9.10.3 17 12/10/2025
9.10.2 14 12/10/2025
9.10.1 12 12/10/2025
9.10.0 13 12/10/2025
9.9.17 9 12/10/2025
9.9.16 12 12/10/2025
9.9.15 13 12/10/2025
9.9.14 12 12/10/2025
9.9.13 13 12/10/2025
9.9.12 12 12/10/2025
9.9.11 12 12/10/2025
9.9.10 12 12/10/2025
9.9.9 12 12/10/2025
9.9.8 11 12/10/2025
9.9.7 13 12/11/2025
9.9.6 10 12/10/2025
9.9.5 15 12/10/2025
9.9.4 10 12/10/2025
9.9.3 11 12/10/2025
9.9.2 7 12/21/2025
9.9.1 12 12/22/2025
9.9.0 11 12/10/2025
9.8.3 18 12/10/2025
9.8.2 15 12/10/2025
9.8.1 13 01/05/2026
9.8.0 14 12/10/2025
9.7.7 12 12/10/2025
9.7.6 11 12/10/2025
9.7.5 11 12/10/2025
9.7.3 15 12/10/2025
9.7.2 14 12/11/2025
9.7.1 13 12/10/2025
9.7.0 13 12/10/2025
9.6.5 12 12/15/2025
9.6.4 14 12/22/2025
9.6.3 13 12/13/2025
9.6.2 10 12/10/2025
9.6.1 13 12/10/2025
9.6.0 9 12/10/2025
9.5.4 14 12/10/2025
9.5.3 13 12/10/2025
9.5.2 7 12/10/2025
9.5.1 10 12/10/2025
9.5.0 9 12/10/2025
9.4.10 11 12/10/2025
9.4.9 12 12/10/2025
9.4.8 10 12/22/2025
9.4.7 13 12/10/2025
9.4.6 16 12/10/2025
9.4.5 10 12/10/2025
9.4.4 14 12/10/2025
9.4.3 9 12/10/2025
9.4.2 14 12/10/2025
9.4.1 10 12/10/2025
9.4.0 11 12/10/2025
9.3.2 13 12/10/2025
9.3.1 12 12/10/2025
9.3.0 15 12/13/2025
9.2.5 11 12/10/2025
9.2.4 14 12/10/2025
9.2.3 12 12/10/2025
9.2.2 14 12/10/2025
9.2.1 7 12/10/2025
9.2.0 10 12/10/2025
9.1.13 14 12/10/2025
9.1.12 8 12/28/2025
9.1.11 13 12/10/2025
9.1.10 12 12/10/2025
9.1.9 11 12/10/2025
9.1.8 15 12/10/2025
9.1.7 11 12/10/2025
9.1.6 14 12/10/2025
9.1.5 8 12/22/2025
9.1.4 13 12/10/2025
9.1.3 13 12/10/2025
9.1.2 15 12/10/2025
9.1.1 13 12/10/2025
9.1.0 12 12/10/2025
9.0.0 13 12/10/2025
8.34.6331.29178 14 12/11/2025
8.33.6323.36213 12 12/24/2025
8.32.6319.16936 14 12/10/2025
8.31.6318.20479 13 12/10/2025
8.30.6304.31883 10 12/10/2025
8.29.6304.29574 12 12/13/2025
8.28.6304.29303 12 12/10/2025
8.27.6302.16041 15 12/10/2025
8.26.6300.23786 13 12/10/2025
8.25.6298.25721 12 12/10/2025
8.24.6298.12169 15 12/10/2025
8.23.6298.10815 13 12/10/2025
8.22.6296.25100 11 12/10/2025
8.21.6296.23959 12 12/10/2025
8.20.6296.23138 9 12/10/2025
8.19.6295.40470 11 12/10/2025
8.18.6295.39644 16 12/10/2025
8.17.6295.16496 13 12/10/2025
8.16.6295.13527 12 12/10/2025
8.15.6294.28815 11 12/10/2025
8.14.6289.34345 14 12/10/2025
8.13.6288.31182 15 12/10/2025
8.12.6288.29353 13 12/10/2025
8.11.6284.26855 15 12/10/2025
8.10.6282.29572 10 12/11/2025
8.9.6275.22295 13 12/10/2025
8.8.6270.12833 10 12/10/2025
8.7.6267.38130 14 12/11/2025
8.6.6263.34621 12 12/10/2025
8.5.6255.20253 14 12/10/2025
8.4.6254.24648 8 12/10/2025
8.3.6252.27806 11 12/11/2025
8.2.6249.40688 13 12/10/2025
8.1.6249.15627 9 12/10/2025
8.0.6242.20238 11 12/10/2025
7.10.6235.25398 13 12/11/2025
7.9.6234.40167 10 12/10/2025
7.8.6234.39143 8 12/24/2025
7.7.6231.35489 13 12/10/2025
7.6.6221.22528 12 12/10/2025
7.5.6218.39574 11 12/11/2025
7.4.6218.34172 13 12/10/2025
7.3.6214.20986 10 12/23/2025
7.2.6206.27034 13 12/10/2025
7.1.6203.28289 11 12/10/2025
7.0.6201.32793 10 12/15/2025
6.8.6197.43075 11 12/10/2025
6.7.6197.28471 12 12/10/2025
6.6.6192.39835 8 12/22/2025
6.5.6190.16910 14 12/12/2025
6.4.6189.32875 15 12/10/2025
6.3.6185.19861 11 12/10/2025
6.2.6179.20107 10 12/10/2025
6.1.6179.17509 8 12/10/2025
6.0.6178.42031 10 12/11/2025
5.20.6175.31167 13 12/10/2025
5.19.6171.28316 11 12/10/2025
5.18.6170.22062 13 12/10/2025
5.17.6169.42629 12 12/22/2025
5.16.6156.29215 12 12/11/2025
5.15.6154.34583 13 12/10/2025
5.14.6153.20987 10 12/10/2025
5.13.6150.21322 9 12/10/2025
5.12.6149.949 12 12/10/2025
5.11.6148.42451 14 12/10/2025
5.10.6148.26188 10 12/10/2025
5.9.6144.17989 12 12/10/2025
5.8.6143.37541 11 12/10/2025
5.7.6142.39228 13 12/30/2025
5.6.6142.18206 12 12/10/2025
5.5.6138.25614 10 12/10/2025
5.5.6138.25231 13 12/10/2025
5.4.6138.25088 16 12/10/2025
5.4.6138.24413 11 12/10/2025
5.3.6137.40406 10 12/10/2025
5.2.6135.25892 13 12/10/2025
5.1.6130.30069 15 12/10/2025
5.0.6130.17623 9 12/10/2025
4.28.6128.27588 15 12/10/2025
4.27.6128.21479 12 12/09/2025
4.26.6123.28532 12 12/10/2025
4.25.6122.24179 9 12/10/2025
4.24.6122.15983 10 12/10/2025
4.23.6120.19206 9 12/10/2025
4.22.6120.18407 9 12/10/2025
4.21.6119.18328 10 12/10/2025
4.20.6119.18035 10 12/10/2025
4.19.6118.22551 10 12/10/2025
4.18.6117.31903 9 12/10/2025
4.17.6115.27875 12 12/10/2025
4.16.6115.26709 9 12/11/2025
4.15.6113.36675 11 12/10/2025
4.14.6108.28115 13 12/10/2025
4.13.6107.31015 9 12/10/2025
4.12.6103.41721 14 12/10/2025
4.11.6103.32935 8 12/10/2025
4.10.6103.22760 14 12/11/2025
4.9.6102.40549 13 12/10/2025
4.8.6094.34027 13 12/11/2025
4.7.6093.32380 22 12/10/2025
4.6.6093.13919 11 12/10/2025
4.5.6091.37159 10 12/10/2025
4.4.6091.25564 11 12/10/2025
4.3.6089.14049 11 12/10/2025
4.2.6085.38782 14 12/10/2025
4.1.6075.30950 10 12/10/2025
4.0.6074.30968 11 01/13/2026
3.4.6065.33501 11 12/10/2025
3.3.6061.16591 15 12/10/2025
3.2.6060.41150 10 12/10/2025
3.1.6058.33392 7 12/10/2025
3.0.6058.19297 12 12/10/2025
2.65.6055.39156 11 12/10/2025
2.64.6055.38772 12 12/10/2025
2.62.6049.40362 12 12/10/2025
2.61.6047.40644 9 12/16/2025
2.60.6043.38307 11 12/10/2025
2.59.6040.32732 11 12/10/2025
2.58.6038.30299 12 12/15/2025
2.57.6037.28393 15 12/10/2025
2.56.6036.39820 15 12/10/2025
2.55.6036.31332 9 12/10/2025
2.54.6032.25763 11 12/10/2025
2.53.6030.34284 11 12/10/2025
2.52.6030.13790 13 12/10/2025
2.51.6022.22786 14 12/22/2025
2.50.6019.27727 13 12/11/2025
2.49.6019.25463 17 12/10/2025
2.48.6012.40848 14 12/10/2025
2.47.6012.36609 13 12/10/2025
2.46.6012.18623 16 12/10/2025
2.45.6011.39984 11 12/10/2025
2.44.6011.37467 9 12/10/2025
2.43.6010.35600 10 12/10/2025
2.41.6006.20160 12 12/10/2025
2.40.6005.16496 9 12/10/2025
2.39.6004.37509 13 12/11/2025
2.38.6002.31137 16 12/11/2025
2.37.6002.13677 14 12/10/2025
2.36.6001.31066 10 12/10/2025
2.35.6000.32415 10 12/10/2025
2.34.6000.31959 13 12/10/2025
2.33.6000.30327 12 12/10/2025
2.32.6000.24907 13 12/10/2025
2.31.5998.34796 9 12/15/2025
2.30.5998.28512 10 12/11/2025
2.29.5997.39527 12 12/18/2025
2.28.5997.37671 11 12/10/2025
2.27.5995.31644 12 12/10/2025
2.26.5992.40823 11 12/10/2025
2.25.5989.40403 11 12/10/2025
2.24.5988.28092 16 12/13/2025
2.23.5984.32960 16 12/10/2025
2.22.5984.16716 10 12/10/2025
2.21.5981.35957 10 12/10/2025
2.20.5981.32981 13 12/10/2025
2.19.5978.21534 11 12/10/2025
2.18.5976.28450 12 12/10/2025
2.17.5976.27663 9 12/10/2025
2.16.5975.38441 10 12/10/2025
2.15.5970.28125 9 12/10/2025
2.14.5967.31319 13 12/10/2025
2.13.5966.35759 10 12/10/2025
2.12.5965.33914 8 12/10/2025
2.11.5963.474 10 12/10/2025
2.10.5958.25556 12 12/10/2025
2.9.5956.34078 9 12/10/2025
2.8.5956.13680 12 12/10/2025
2.7.5954.13235 10 12/10/2025
2.6.5946.13963 12 12/10/2025
2.5.5941.14558 13 12/10/2025
2.4.5940.38662 13 12/10/2025
2.3.5940.24969 11 12/10/2025
2.2.5940.22487 14 12/10/2025
2.1.5940.20329 14 12/10/2025
2.0.5928.2914 11 12/10/2025
1.39.5923.31343 10 12/10/2025
1.38.5920.30379 13 12/10/2025
1.37.5912.16399 8 12/10/2025
1.36.5908.3838 10 12/10/2025
1.35.5908.509 12 12/10/2025
1.34.5905.41329 16 12/10/2025
1.32.5904.40563 7 12/10/2025
1.31.5892.26482 13 12/10/2025
1.30.5878.31384 14 12/10/2025
1.29.5875.38535 13 12/10/2025
1.29.5875.38248 12 12/10/2025
1.29.5875.36302 13 12/10/2025
1.28.5872.19133 18 12/10/2025
1.27.5865.35296 13 12/10/2025
1.26.5864.35160 11 12/10/2025
1.25.5861.38102 11 12/10/2025
1.24.5858.29180 10 12/11/2025
1.23.5856.30577 11 12/10/2025
1.22.5836.1197 9 12/10/2025
1.21.5834.30412 12 12/10/2025
1.21.5831.34290 9 12/10/2025
1.21.5830.29524 12 12/10/2025
1.20.5829.20854 11 12/10/2025
1.20.5829.15818 11 12/10/2025
1.19.5828.20063 9 12/10/2025
1.19.5827.22433 8 12/22/2025
1.19.5824.3255 13 12/11/2025
1.18.5822.14857 11 12/22/2025
1.18.5821.36806 12 12/10/2025
1.17.5820.28487 9 12/22/2025
1.16.5820.27108 15 12/10/2025
1.15.5812.25745 11 12/10/2025
1.14.5811.24407 15 12/10/2025
1.13.5811.23634 9 12/11/2025
1.12.5801.29458 10 12/10/2025
1.11.5799.31777 11 12/10/2025
1.10.5779.31942 12 12/10/2025
1.9.5778.39697 12 12/10/2025
1.9.5778.38903 14 12/10/2025
1.9.5778.31077 12 01/13/2026
1.8.5777.37128 9 12/10/2025
1.8.5775.25809 16 12/10/2025
1.7.5770.30722 12 12/10/2025
1.6.5769.33301 9 12/10/2025
1.6.5765.33542 14 12/10/2025
1.6.5763.16697 11 12/10/2025
1.6.5760.32685 13 12/11/2025
1.6.5759.33134 19 12/10/2025
1.6.5758.30931 12 12/11/2025
1.6.5757.40238 11 12/10/2025
1.6.5751.15394 10 12/10/2025
1.5.5750.33915 10 12/10/2025
1.5.5750.33435 14 12/10/2025
1.4.5737.33581 12 12/10/2025
1.4.5732.34143 11 12/10/2025
1.4.5731.36729 13 12/10/2025
1.3.5731.34877 11 12/13/2025
1.2.5730.33570 12 12/11/2025
1.1.5729.33707 12 12/14/2025
1.0.5725.35303 10 12/10/2025
0.2.5707.34168 7 12/10/2025
0.2.5707.33649 12 12/10/2025
0.1.5585.25897 11 12/11/2025
0.1.5582.28800 11 12/10/2025
0.1.5524.6071 12 12/14/2025
0.1.5504.31964 11 12/11/2025
0.1.5494.16128 14 12/10/2025
0.1.5492.33014 11 12/10/2025
0.1.5479.38772 12 12/10/2025
0.1.5477.39622 16 12/10/2025
0.1.5477.36883 9 12/10/2025
0.1.5471.22558 18 12/10/2025
0.1.5470.42846 19 12/10/2025
0.1.5470.35375 10 12/11/2025
0.1.5470.35079 12 12/10/2025