private static void Combine(JsonSchemaModel model, JsonSchema schema) { JsonSchemaModel jsonSchemaModel1 = model; int num1; if (!model.Required) { bool?required = schema.Required; num1 = required.HasValue ? (required.GetValueOrDefault() ? 1 : 0) : 0; } else { num1 = 1; } jsonSchemaModel1.Required = num1 != 0; JsonSchemaModel jsonSchemaModel2 = model; int num2 = (int)model.Type; JsonSchemaType? type = schema.Type; int num3 = type.HasValue ? (int)type.GetValueOrDefault() : (int)sbyte.MaxValue; int num4 = num2 & num3; jsonSchemaModel2.Type = (JsonSchemaType)num4; model.MinimumLength = MathUtils.Max(model.MinimumLength, schema.MinimumLength); model.MaximumLength = MathUtils.Min(model.MaximumLength, schema.MaximumLength); model.DivisibleBy = MathUtils.Max(model.DivisibleBy, schema.DivisibleBy); model.Minimum = MathUtils.Max(model.Minimum, schema.Minimum); model.Maximum = MathUtils.Max(model.Maximum, schema.Maximum); JsonSchemaModel jsonSchemaModel3 = model; int num5; if (!model.ExclusiveMinimum) { bool?exclusiveMinimum = schema.ExclusiveMinimum; num5 = exclusiveMinimum.HasValue ? (exclusiveMinimum.GetValueOrDefault() ? 1 : 0) : 0; } else { num5 = 1; } jsonSchemaModel3.ExclusiveMinimum = num5 != 0; JsonSchemaModel jsonSchemaModel4 = model; int num6; if (!model.ExclusiveMaximum) { bool?exclusiveMaximum = schema.ExclusiveMaximum; num6 = exclusiveMaximum.HasValue ? (exclusiveMaximum.GetValueOrDefault() ? 1 : 0) : 0; } else { num6 = 1; } jsonSchemaModel4.ExclusiveMaximum = num6 != 0; model.MinimumItems = MathUtils.Max(model.MinimumItems, schema.MinimumItems); model.MaximumItems = MathUtils.Min(model.MaximumItems, schema.MaximumItems); model.AllowAdditionalProperties = model.AllowAdditionalProperties && schema.AllowAdditionalProperties; if (schema.Enum != null) { if (model.Enum == null) { model.Enum = (IList <JToken>) new List <JToken>(); } CollectionUtils.AddRangeDistinct <JToken>(model.Enum, (IEnumerable <JToken>)schema.Enum, (IEqualityComparer <JToken>) new JTokenEqualityComparer()); } JsonSchemaModel jsonSchemaModel5 = model; int num7 = (int)model.Disallow; JsonSchemaType? disallow = schema.Disallow; int num8 = disallow.HasValue ? (int)disallow.GetValueOrDefault() : 0; int num9 = num7 | num8; jsonSchemaModel5.Disallow = (JsonSchemaType)num9; if (schema.Pattern == null) { return; } if (model.Patterns == null) { model.Patterns = (IList <string>) new List <string>(); } CollectionUtils.AddDistinct <string>(model.Patterns, schema.Pattern); }