{
  "title": "ltan",
  "type": "object",
  "properties": {
    "workload": {
      "type": "array",
      "items": {
        "type": "number"
      },
      "minItems": 5,
      "maxItems": 20,
      "uniqueItems": true
    },
    "lactate": {
      "type": "array",
      "items": {
        "type": "number"
      },
      "minItems": 5,
      "maxItems": 20
    },
    "func": {
      "type": "string",
      "enum": [
        "exp",
        "poly3",
        "poly4",
        "robust_poly3",
        "robust_poly4",
        "ppoly",
        "smooth_ppoly"
      ]
    },
    "method": {
      "type": "string",
      "enum": [
        "fblc",
        "incl45",
        "incl51",
        "bisect",
        "dmax",
        "dmax2",
        "dmod",
        "dmod2",
        "dmodorig",
        "incr",
        "tan90s",
        "tan90s2",
        "tan90s3",
        "fblc15",
        "fblc2",
        "fblc3"
      ]
    }
  },
  "required": [
    "workload",
    "lactate",
    "func",
    "method"
  ],
  "allOf": [
    {
      "if": {
        "properties": {
          "method": {
            "enum": [
              "dmod",
              "dmod2",
              "incr",
              "tan90s",
              "tan90s2",
              "tan90s3"
            ]
          }
        }
      },
      "then": {
        "properties": {
          "aer_workload": {
            "type": "number"
          }
        }
      }
    },
    {
      "if": {
        "properties": {
          "method": {
            "enum": [
              "dmod",
              "dmod2",
              "incr",
              "tan90s",
              "tan90s2",
              "tan90s3"
            ]
          }
        }
      },
      "then": {
        "required": [
          "aer_workload"
        ]
      }
    }
  ]
}