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
NSwag.Core
NSwag: The Swagger API toolchain for .NET and TypeScript
45
NSwag.Core
NSwag: The Swagger API toolchain for .NET and TypeScript
26
NSwag.Commands
NSwag: The OpenAPI/Swagger API toolchain for .NET and TypeScript
24
NSwag.Commands
NSwag: The Swagger API toolchain for .NET and TypeScript
24
NSwag.Core
NSwag: The Swagger API toolchain for .NET
21
NSwag.Commands
NSwag: The Swagger API toolchain for .NET and TypeScript
21
NSwag.Core
NSwag: The Swagger API toolchain for .NET and TypeScript
20
NSwag.Core
NSwag: The Swagger API toolchain for .NET
20
NSwag.Commands
NSwag: The Swagger API toolchain for .NET and TypeScript
20
NSwag.Commands
NSwag: The OpenAPI/Swagger API toolchain for .NET and TypeScript
20

.NET Framework 4.6.2

.NET 8.0

.NET Standard 2.0

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