{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "seed": {
      "type": "string"
    },
    "flip": {
      "type": "boolean",
      "default": false
    },
    "rotate": {
      "type": "integer",
      "minimum": 0,
      "maximum": 360,
      "default": 0
    },
    "scale": {
      "type": "integer",
      "minimum": 0,
      "maximum": 200,
      "default": 100
    },
    "radius": {
      "type": "integer",
      "minimum": 0,
      "maximum": 50,
      "default": 0
    },
    "size": {
      "type": "integer",
      "minimum": 1
    },
    "backgroundColor": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^(transparent|[a-fA-F0-9]{6})$"
      }
    },
    "backgroundType": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "solid",
          "gradientLinear"
        ]
      },
      "default": [
        "solid"
      ]
    },
    "backgroundRotation": {
      "type": "array",
      "items": {
        "type": "integer",
        "minimum": -360,
        "maximum": 360
      },
      "default": [
        0,
        360
      ]
    },
    "translateX": {
      "type": "integer",
      "minimum": -100,
      "maximum": 100,
      "default": 0
    },
    "translateY": {
      "type": "integer",
      "minimum": -100,
      "maximum": 100,
      "default": 0
    },
    "clip": {
      "type": "boolean",
      "default": true
    },
    "randomizeIds": {
      "type": "boolean",
      "default": false
    },
    "baseColor": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^(transparent|[a-fA-F0-9]{6})$"
      },
      "default": [
        "ffffff"
      ]
    },
    "beard": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "variant05",
          "variant04",
          "variant03",
          "variant02",
          "variant01"
        ]
      },
      "default": [
        "variant05",
        "variant04",
        "variant03",
        "variant02",
        "variant01"
      ]
    },
    "beardProbability": {
      "type": "integer",
      "minimum": 0,
      "maximum": 100,
      "default": 10
    },
    "eyes": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "variant16",
          "variant15",
          "variant14",
          "variant13",
          "variant12",
          "variant11",
          "variant10",
          "variant09",
          "variant08",
          "variant07",
          "variant06",
          "variant05",
          "variant04",
          "variant03",
          "variant02",
          "variant01"
        ]
      },
      "default": [
        "variant16",
        "variant15",
        "variant14",
        "variant13",
        "variant12",
        "variant11",
        "variant10",
        "variant09",
        "variant08",
        "variant07",
        "variant06",
        "variant05",
        "variant04",
        "variant03",
        "variant02",
        "variant01"
      ]
    },
    "face": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "variant08",
          "variant07",
          "variant06",
          "variant05",
          "variant04",
          "variant03",
          "variant02",
          "variant01"
        ]
      },
      "default": [
        "variant08",
        "variant07",
        "variant06",
        "variant05",
        "variant04",
        "variant03",
        "variant02",
        "variant01"
      ]
    },
    "mouth": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "variant18",
          "variant17",
          "variant16",
          "variant15",
          "variant14",
          "variant13",
          "variant12",
          "variant11",
          "variant10",
          "variant09",
          "variant08",
          "variant07",
          "variant06",
          "variant05",
          "variant04",
          "variant03",
          "variant02",
          "variant01"
        ]
      },
      "default": [
        "variant18",
        "variant17",
        "variant16",
        "variant15",
        "variant14",
        "variant13",
        "variant12",
        "variant11",
        "variant10",
        "variant09",
        "variant08",
        "variant07",
        "variant06",
        "variant05",
        "variant04",
        "variant03",
        "variant02",
        "variant01"
      ]
    },
    "mustache": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "variant04",
          "variant03",
          "variant02",
          "variant01"
        ]
      },
      "default": [
        "variant04",
        "variant03",
        "variant02",
        "variant01"
      ]
    },
    "mustacheProbability": {
      "type": "integer",
      "minimum": 0,
      "maximum": 100,
      "default": 10
    },
    "nose": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "variant09",
          "variant08",
          "variant07",
          "variant06",
          "variant05",
          "variant04",
          "variant03",
          "variant02",
          "variant01"
        ]
      },
      "default": [
        "variant09",
        "variant08",
        "variant07",
        "variant06",
        "variant05",
        "variant04",
        "variant03",
        "variant02",
        "variant01"
      ]
    },
    "top": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "variant29",
          "variant28",
          "variant27",
          "variant26",
          "variant25",
          "variant24",
          "variant23",
          "variant22",
          "variant21",
          "variant20",
          "variant19",
          "variant18",
          "variant17",
          "variant16",
          "variant15",
          "variant14",
          "variant13",
          "variant12",
          "variant11",
          "variant10",
          "variant09",
          "variant08",
          "variant07",
          "variant06",
          "variant05",
          "variant04",
          "variant03",
          "variant02",
          "variant01"
        ]
      },
      "default": [
        "variant29",
        "variant28",
        "variant27",
        "variant26",
        "variant25",
        "variant24",
        "variant23",
        "variant22",
        "variant21",
        "variant20",
        "variant19",
        "variant18",
        "variant17",
        "variant16",
        "variant15",
        "variant14",
        "variant13",
        "variant12",
        "variant11",
        "variant10",
        "variant09",
        "variant08",
        "variant07",
        "variant06",
        "variant05",
        "variant04",
        "variant03",
        "variant02",
        "variant01"
      ]
    },
    "topColor": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^(transparent|[a-fA-F0-9]{6})$"
      },
      "default": [
        "ffc700",
        "9747ff",
        "f24e1e",
        "699bf7",
        "0fa958",
        "000000"
      ]
    }
  }
}