{
  "type": "object",
  "encoding": "REQUIRED_ONLY_BOUNDED_TYPED_OBJECT",
  "options": {
    "propertyEncodings": {
      "version": {
        "type": "string",
        "encoding": "FLOOR_PREFIX_LENGTH_ENUM_VARINT",
        "options": {
          "minimum": 0
        }
      },
      "compilationOptions": {
        "type": "enum",
        "encoding": "BOUNDED_CHOICE_INDEX",
        "options": {
          "choices": [
            {
              "warningsAsErrors": false
            },
            {
              "warningsAsErrors": true
            }
          ]
        }
      },
      "dependencies": {
        "type": "object",
        "encoding": "REQUIRED_ONLY_BOUNDED_TYPED_OBJECT",
        "options": {
          "propertyEncodings": {
            "Microsoft.Bcl.Immutable": {
              "type": "string",
              "encoding": "FLOOR_PREFIX_LENGTH_ENUM_VARINT",
              "options": {
                "minimum": 0
              }
            },
            "Microsoft.AspNet.ConfigurationModel": {
              "type": "string",
              "encoding": "FLOOR_PREFIX_LENGTH_ENUM_VARINT",
              "options": {
                "minimum": 0
              }
            },
            "Microsoft.AspNet.DependencyInjection": {
              "type": "string",
              "encoding": "FLOOR_PREFIX_LENGTH_ENUM_VARINT",
              "options": {
                "minimum": 0
              }
            },
            "Microsoft.AspNet.Logging": {
              "type": "string",
              "encoding": "FLOOR_PREFIX_LENGTH_ENUM_VARINT",
              "options": {
                "minimum": 0
              }
            },
            "System.Data.Common": {
              "type": "string",
              "encoding": "FLOOR_PREFIX_LENGTH_ENUM_VARINT",
              "options": {
                "minimum": 0
              }
            }
          },
          "requiredProperties": [
            "Microsoft.AspNet.ConfigurationModel",
            "Microsoft.AspNet.DependencyInjection",
            "Microsoft.AspNet.Logging",
            "Microsoft.Bcl.Immutable",
            "System.Data.Common"
          ],
          "booleanRequiredProperties": []
        }
      },
      "code": {
        "type": "string",
        "encoding": "FLOOR_PREFIX_LENGTH_ENUM_VARINT",
        "options": {
          "minimum": 0
        }
      },
      "frameworks": {
        "type": "object",
        "encoding": "REQUIRED_ONLY_BOUNDED_TYPED_OBJECT",
        "options": {
          "propertyEncodings": {
            "net45": {
              "type": "object",
              "encoding": "REQUIRED_ONLY_BOUNDED_TYPED_OBJECT",
              "options": {
                "propertyEncodings": {
                  "dependencies": {
                    "type": "object",
                    "encoding": "REQUIRED_ONLY_BOUNDED_TYPED_OBJECT",
                    "options": {
                      "propertyEncodings": {
                        "System.Runtime": {
                          "type": "string",
                          "encoding": "FLOOR_PREFIX_LENGTH_ENUM_VARINT",
                          "options": {
                            "minimum": 0
                          }
                        },
                        "System.Collections": {
                          "type": "string",
                          "encoding": "FLOOR_PREFIX_LENGTH_ENUM_VARINT",
                          "options": {
                            "minimum": 0
                          }
                        }
                      },
                      "requiredProperties": [
                        "System.Collections",
                        "System.Runtime"
                      ],
                      "booleanRequiredProperties": []
                    }
                  }
                },
                "requiredProperties": [
                  "dependencies"
                ],
                "booleanRequiredProperties": []
              }
            },
            "k10": {
              "type": "object",
              "encoding": "REQUIRED_ONLY_BOUNDED_TYPED_OBJECT",
              "options": {
                "propertyEncodings": {
                  "dependencies": {
                    "type": "object",
                    "encoding": "REQUIRED_ONLY_BOUNDED_TYPED_OBJECT",
                    "options": {
                      "propertyEncodings": {
                        "System.Collections": {
                          "type": "string",
                          "encoding": "FLOOR_PREFIX_LENGTH_ENUM_VARINT",
                          "options": {
                            "minimum": 0
                          }
                        },
                        "System.Collections.Concurrent": {
                          "type": "string",
                          "encoding": "FLOOR_PREFIX_LENGTH_ENUM_VARINT",
                          "options": {
                            "minimum": 0
                          }
                        },
                        "System.ComponentModel": {
                          "type": "string",
                          "encoding": "FLOOR_PREFIX_LENGTH_ENUM_VARINT",
                          "options": {
                            "minimum": 0
                          }
                        },
                        "System.Console": {
                          "type": "string",
                          "encoding": "FLOOR_PREFIX_LENGTH_ENUM_VARINT",
                          "options": {
                            "minimum": 0
                          }
                        },
                        "System.Diagnostics.Contracts": {
                          "type": "string",
                          "encoding": "FLOOR_PREFIX_LENGTH_ENUM_VARINT",
                          "options": {
                            "minimum": 0
                          }
                        },
                        "System.Diagnostics.Debug": {
                          "type": "string",
                          "encoding": "FLOOR_PREFIX_LENGTH_ENUM_VARINT",
                          "options": {
                            "minimum": 0
                          }
                        },
                        "System.Globalization": {
                          "type": "string",
                          "encoding": "FLOOR_PREFIX_LENGTH_ENUM_VARINT",
                          "options": {
                            "minimum": 0
                          }
                        },
                        "System.Linq": {
                          "type": "string",
                          "encoding": "FLOOR_PREFIX_LENGTH_ENUM_VARINT",
                          "options": {
                            "minimum": 0
                          }
                        },
                        "System.Linq.Expressions": {
                          "type": "string",
                          "encoding": "FLOOR_PREFIX_LENGTH_ENUM_VARINT",
                          "options": {
                            "minimum": 0
                          }
                        },
                        "System.Linq.Queryable": {
                          "type": "string",
                          "encoding": "FLOOR_PREFIX_LENGTH_ENUM_VARINT",
                          "options": {
                            "minimum": 0
                          }
                        },
                        "System.Reflection": {
                          "type": "string",
                          "encoding": "FLOOR_PREFIX_LENGTH_ENUM_VARINT",
                          "options": {
                            "minimum": 0
                          }
                        },
                        "System.Reflection.Extensions": {
                          "type": "string",
                          "encoding": "FLOOR_PREFIX_LENGTH_ENUM_VARINT",
                          "options": {
                            "minimum": 0
                          }
                        },
                        "System.Resources.ResourceManager": {
                          "type": "string",
                          "encoding": "FLOOR_PREFIX_LENGTH_ENUM_VARINT",
                          "options": {
                            "minimum": 0
                          }
                        },
                        "System.Runtime": {
                          "type": "string",
                          "encoding": "FLOOR_PREFIX_LENGTH_ENUM_VARINT",
                          "options": {
                            "minimum": 0
                          }
                        },
                        "System.Runtime.Extensions": {
                          "type": "string",
                          "encoding": "FLOOR_PREFIX_LENGTH_ENUM_VARINT",
                          "options": {
                            "minimum": 0
                          }
                        },
                        "System.Threading": {
                          "type": "string",
                          "encoding": "FLOOR_PREFIX_LENGTH_ENUM_VARINT",
                          "options": {
                            "minimum": 0
                          }
                        },
                        "System.Threading.Tasks": {
                          "type": "string",
                          "encoding": "FLOOR_PREFIX_LENGTH_ENUM_VARINT",
                          "options": {
                            "minimum": 0
                          }
                        }
                      },
                      "requiredProperties": [
                        "System.Collections",
                        "System.Collections.Concurrent",
                        "System.ComponentModel",
                        "System.Console",
                        "System.Diagnostics.Contracts",
                        "System.Diagnostics.Debug",
                        "System.Globalization",
                        "System.Linq",
                        "System.Linq.Expressions",
                        "System.Linq.Queryable",
                        "System.Reflection",
                        "System.Reflection.Extensions",
                        "System.Resources.ResourceManager",
                        "System.Runtime",
                        "System.Runtime.Extensions",
                        "System.Threading",
                        "System.Threading.Tasks"
                      ],
                      "booleanRequiredProperties": []
                    }
                  }
                },
                "requiredProperties": [
                  "dependencies"
                ],
                "booleanRequiredProperties": []
              }
            }
          },
          "requiredProperties": [
            "k10",
            "net45"
          ],
          "booleanRequiredProperties": []
        }
      }
    },
    "requiredProperties": [
      "code",
      "compilationOptions",
      "dependencies",
      "frameworks",
      "version"
    ],
    "booleanRequiredProperties": []
  }
}
