{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://api.supasaju.com/schemas/fourPillars.json",
  "title": "fourPillars 모듈 응답",
  "description": "실제 엔진 출력에서 생성된 스키마입니다.",
  "type": "object",
  "properties": {
    "pillars": {
      "type": "object",
      "properties": {
        "year": {
          "type": "object",
          "properties": {
            "position": {
              "type": "string",
              "examples": [
                "year"
              ]
            },
            "positionKo": {
              "type": "string",
              "examples": [
                "연주"
              ]
            },
            "ganji": {
              "type": "string",
              "examples": [
                "무진",
                "경오"
              ]
            },
            "ganjiHan": {
              "type": "string",
              "examples": [
                "戊辰",
                "庚午"
              ]
            },
            "ganjiIndex": {
              "type": "integer",
              "examples": [
                4,
                6
              ]
            },
            "stem": {
              "type": "object",
              "properties": {
                "index": {
                  "type": "integer"
                },
                "han": {
                  "type": "string"
                },
                "ko": {
                  "type": "string"
                },
                "element": {
                  "type": "string"
                },
                "elementKo": {
                  "type": "string"
                },
                "elementHan": {
                  "type": "string"
                },
                "polarity": {
                  "type": "string"
                },
                "polarityKo": {
                  "type": "string"
                },
                "sipseong": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string"
                    },
                    "ko": {
                      "type": "string"
                    },
                    "han": {
                      "type": "string"
                    },
                    "group": {
                      "type": "string"
                    },
                    "groupKo": {
                      "type": "string"
                    },
                    "meaning": {
                      "type": "string"
                    },
                    "positionMeaning": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "group",
                    "groupKo",
                    "han",
                    "id",
                    "ko"
                  ]
                }
              },
              "required": [
                "element",
                "elementHan",
                "elementKo",
                "han",
                "index",
                "ko",
                "polarity",
                "polarityKo",
                "sipseong"
              ]
            },
            "branch": {
              "type": "object",
              "properties": {
                "index": {
                  "type": "integer"
                },
                "han": {
                  "type": "string"
                },
                "ko": {
                  "type": "string"
                },
                "element": {
                  "type": "string"
                },
                "elementKo": {
                  "type": "string"
                },
                "elementHan": {
                  "type": "string"
                },
                "polarity": {
                  "type": "string"
                },
                "polarityKo": {
                  "type": "string"
                },
                "animalKo": {
                  "type": "string"
                },
                "sipseong": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string"
                    },
                    "ko": {
                      "type": "string"
                    },
                    "han": {
                      "type": "string"
                    },
                    "group": {
                      "type": "string"
                    },
                    "groupKo": {
                      "type": "string"
                    },
                    "meaning": {
                      "type": "string"
                    },
                    "positionMeaning": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "group",
                    "groupKo",
                    "han",
                    "id",
                    "ko"
                  ]
                },
                "hiddenStems": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "stem": {
                        "type": "object",
                        "properties": {
                          "index": {
                            "type": "integer"
                          },
                          "han": {
                            "type": "string"
                          },
                          "ko": {
                            "type": "string"
                          },
                          "element": {
                            "type": "string"
                          },
                          "elementKo": {
                            "type": "string"
                          },
                          "elementHan": {
                            "type": "string"
                          },
                          "polarity": {
                            "type": "string"
                          },
                          "polarityKo": {
                            "type": "string"
                          },
                          "sipseong": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string"
                              },
                              "ko": {
                                "type": "string"
                              },
                              "han": {
                                "type": "string"
                              },
                              "group": {
                                "type": "string"
                              },
                              "groupKo": {
                                "type": "string"
                              }
                            },
                            "required": [
                              "group",
                              "groupKo",
                              "han",
                              "id",
                              "ko"
                            ]
                          }
                        },
                        "required": [
                          "element",
                          "elementHan",
                          "elementKo",
                          "han",
                          "index",
                          "ko",
                          "polarity",
                          "polarityKo",
                          "sipseong"
                        ]
                      },
                      "role": {
                        "type": "string"
                      },
                      "roleKo": {
                        "type": "string"
                      },
                      "roleHan": {
                        "type": "string"
                      },
                      "days": {
                        "type": "integer"
                      }
                    },
                    "required": [
                      "days",
                      "role",
                      "roleHan",
                      "roleKo",
                      "stem"
                    ]
                  }
                }
              },
              "required": [
                "animalKo",
                "element",
                "elementHan",
                "elementKo",
                "han",
                "hiddenStems",
                "index",
                "ko",
                "polarity",
                "polarityKo",
                "sipseong"
              ]
            },
            "twelveStage": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string"
                },
                "ko": {
                  "type": "string"
                },
                "han": {
                  "type": "string"
                },
                "order": {
                  "type": "integer"
                },
                "keyword": {
                  "type": "string"
                },
                "phase": {
                  "type": "string"
                },
                "meaning": {
                  "type": "string"
                },
                "positionMeaning": {
                  "type": "string"
                }
              },
              "required": [
                "han",
                "id",
                "ko",
                "order"
              ]
            },
            "selfStage": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string"
                },
                "ko": {
                  "type": "string"
                },
                "han": {
                  "type": "string"
                },
                "order": {
                  "type": "integer"
                }
              },
              "required": [
                "han",
                "id",
                "ko",
                "order"
              ]
            },
            "naeum": {
              "type": "object",
              "properties": {
                "ko": {
                  "type": "string"
                },
                "han": {
                  "type": "string"
                },
                "element": {
                  "type": "string"
                },
                "elementKo": {
                  "type": "string"
                }
              },
              "required": [
                "element",
                "elementKo",
                "han",
                "ko"
              ]
            }
          },
          "required": [
            "branch",
            "ganji",
            "ganjiHan",
            "ganjiIndex",
            "naeum",
            "position",
            "positionKo",
            "selfStage",
            "stem",
            "twelveStage"
          ]
        },
        "month": {
          "type": "object",
          "properties": {
            "position": {
              "type": "string",
              "examples": [
                "month"
              ]
            },
            "positionKo": {
              "type": "string",
              "examples": [
                "월주"
              ]
            },
            "ganji": {
              "type": "string",
              "examples": [
                "을묘",
                "병술"
              ]
            },
            "ganjiHan": {
              "type": "string",
              "examples": [
                "乙卯",
                "丙戌"
              ]
            },
            "ganjiIndex": {
              "type": "integer",
              "examples": [
                51,
                22
              ]
            },
            "stem": {
              "type": "object",
              "properties": {
                "index": {
                  "type": "integer"
                },
                "han": {
                  "type": "string"
                },
                "ko": {
                  "type": "string"
                },
                "element": {
                  "type": "string"
                },
                "elementKo": {
                  "type": "string"
                },
                "elementHan": {
                  "type": "string"
                },
                "polarity": {
                  "type": "string"
                },
                "polarityKo": {
                  "type": "string"
                },
                "sipseong": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string"
                    },
                    "ko": {
                      "type": "string"
                    },
                    "han": {
                      "type": "string"
                    },
                    "group": {
                      "type": "string"
                    },
                    "groupKo": {
                      "type": "string"
                    },
                    "meaning": {
                      "type": "string"
                    },
                    "positionMeaning": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "group",
                    "groupKo",
                    "han",
                    "id",
                    "ko"
                  ]
                }
              },
              "required": [
                "element",
                "elementHan",
                "elementKo",
                "han",
                "index",
                "ko",
                "polarity",
                "polarityKo",
                "sipseong"
              ]
            },
            "branch": {
              "type": "object",
              "properties": {
                "index": {
                  "type": "integer"
                },
                "han": {
                  "type": "string"
                },
                "ko": {
                  "type": "string"
                },
                "element": {
                  "type": "string"
                },
                "elementKo": {
                  "type": "string"
                },
                "elementHan": {
                  "type": "string"
                },
                "polarity": {
                  "type": "string"
                },
                "polarityKo": {
                  "type": "string"
                },
                "animalKo": {
                  "type": "string"
                },
                "sipseong": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string"
                    },
                    "ko": {
                      "type": "string"
                    },
                    "han": {
                      "type": "string"
                    },
                    "group": {
                      "type": "string"
                    },
                    "groupKo": {
                      "type": "string"
                    },
                    "meaning": {
                      "type": "string"
                    },
                    "positionMeaning": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "group",
                    "groupKo",
                    "han",
                    "id",
                    "ko"
                  ]
                },
                "hiddenStems": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "stem": {
                        "type": "object",
                        "properties": {
                          "index": {
                            "type": "integer"
                          },
                          "han": {
                            "type": "string"
                          },
                          "ko": {
                            "type": "string"
                          },
                          "element": {
                            "type": "string"
                          },
                          "elementKo": {
                            "type": "string"
                          },
                          "elementHan": {
                            "type": "string"
                          },
                          "polarity": {
                            "type": "string"
                          },
                          "polarityKo": {
                            "type": "string"
                          },
                          "sipseong": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string"
                              },
                              "ko": {
                                "type": "string"
                              },
                              "han": {
                                "type": "string"
                              },
                              "group": {
                                "type": "string"
                              },
                              "groupKo": {
                                "type": "string"
                              }
                            },
                            "required": [
                              "group",
                              "groupKo",
                              "han",
                              "id",
                              "ko"
                            ]
                          }
                        },
                        "required": [
                          "element",
                          "elementHan",
                          "elementKo",
                          "han",
                          "index",
                          "ko",
                          "polarity",
                          "polarityKo",
                          "sipseong"
                        ]
                      },
                      "role": {
                        "type": "string"
                      },
                      "roleKo": {
                        "type": "string"
                      },
                      "roleHan": {
                        "type": "string"
                      },
                      "days": {
                        "type": "integer"
                      }
                    },
                    "required": [
                      "days",
                      "role",
                      "roleHan",
                      "roleKo",
                      "stem"
                    ]
                  }
                }
              },
              "required": [
                "animalKo",
                "element",
                "elementHan",
                "elementKo",
                "han",
                "hiddenStems",
                "index",
                "ko",
                "polarity",
                "polarityKo",
                "sipseong"
              ]
            },
            "twelveStage": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string"
                },
                "ko": {
                  "type": "string"
                },
                "han": {
                  "type": "string"
                },
                "order": {
                  "type": "integer"
                },
                "keyword": {
                  "type": "string"
                },
                "phase": {
                  "type": "string"
                },
                "meaning": {
                  "type": "string"
                },
                "positionMeaning": {
                  "type": "string"
                }
              },
              "required": [
                "han",
                "id",
                "ko",
                "order"
              ]
            },
            "selfStage": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string"
                },
                "ko": {
                  "type": "string"
                },
                "han": {
                  "type": "string"
                },
                "order": {
                  "type": "integer"
                }
              },
              "required": [
                "han",
                "id",
                "ko",
                "order"
              ]
            },
            "naeum": {
              "type": "object",
              "properties": {
                "ko": {
                  "type": "string"
                },
                "han": {
                  "type": "string"
                },
                "element": {
                  "type": "string"
                },
                "elementKo": {
                  "type": "string"
                }
              },
              "required": [
                "element",
                "elementKo",
                "han",
                "ko"
              ]
            }
          },
          "required": [
            "branch",
            "ganji",
            "ganjiHan",
            "ganjiIndex",
            "naeum",
            "position",
            "positionKo",
            "selfStage",
            "stem",
            "twelveStage"
          ]
        },
        "day": {
          "type": "object",
          "properties": {
            "position": {
              "type": "string",
              "examples": [
                "day"
              ]
            },
            "positionKo": {
              "type": "string",
              "examples": [
                "일주"
              ]
            },
            "ganji": {
              "type": "string",
              "examples": [
                "무진",
                "신미"
              ]
            },
            "ganjiHan": {
              "type": "string",
              "examples": [
                "戊辰",
                "辛未"
              ]
            },
            "ganjiIndex": {
              "type": "integer",
              "examples": [
                4,
                7
              ]
            },
            "stem": {
              "type": "object",
              "properties": {
                "index": {
                  "type": "integer"
                },
                "han": {
                  "type": "string"
                },
                "ko": {
                  "type": "string"
                },
                "element": {
                  "type": "string"
                },
                "elementKo": {
                  "type": "string"
                },
                "elementHan": {
                  "type": "string"
                },
                "polarity": {
                  "type": "string"
                },
                "polarityKo": {
                  "type": "string"
                },
                "sipseong": {
                  "type": "null"
                }
              },
              "required": [
                "element",
                "elementHan",
                "elementKo",
                "han",
                "index",
                "ko",
                "polarity",
                "polarityKo",
                "sipseong"
              ]
            },
            "branch": {
              "type": "object",
              "properties": {
                "index": {
                  "type": "integer"
                },
                "han": {
                  "type": "string"
                },
                "ko": {
                  "type": "string"
                },
                "element": {
                  "type": "string"
                },
                "elementKo": {
                  "type": "string"
                },
                "elementHan": {
                  "type": "string"
                },
                "polarity": {
                  "type": "string"
                },
                "polarityKo": {
                  "type": "string"
                },
                "animalKo": {
                  "type": "string"
                },
                "sipseong": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string"
                    },
                    "ko": {
                      "type": "string"
                    },
                    "han": {
                      "type": "string"
                    },
                    "group": {
                      "type": "string"
                    },
                    "groupKo": {
                      "type": "string"
                    },
                    "meaning": {
                      "type": "string"
                    },
                    "positionMeaning": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "group",
                    "groupKo",
                    "han",
                    "id",
                    "ko"
                  ]
                },
                "hiddenStems": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "stem": {
                        "type": "object",
                        "properties": {
                          "index": {
                            "type": "integer"
                          },
                          "han": {
                            "type": "string"
                          },
                          "ko": {
                            "type": "string"
                          },
                          "element": {
                            "type": "string"
                          },
                          "elementKo": {
                            "type": "string"
                          },
                          "elementHan": {
                            "type": "string"
                          },
                          "polarity": {
                            "type": "string"
                          },
                          "polarityKo": {
                            "type": "string"
                          },
                          "sipseong": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string"
                              },
                              "ko": {
                                "type": "string"
                              },
                              "han": {
                                "type": "string"
                              },
                              "group": {
                                "type": "string"
                              },
                              "groupKo": {
                                "type": "string"
                              }
                            },
                            "required": [
                              "group",
                              "groupKo",
                              "han",
                              "id",
                              "ko"
                            ]
                          }
                        },
                        "required": [
                          "element",
                          "elementHan",
                          "elementKo",
                          "han",
                          "index",
                          "ko",
                          "polarity",
                          "polarityKo",
                          "sipseong"
                        ]
                      },
                      "role": {
                        "type": "string"
                      },
                      "roleKo": {
                        "type": "string"
                      },
                      "roleHan": {
                        "type": "string"
                      },
                      "days": {
                        "type": "integer"
                      }
                    },
                    "required": [
                      "days",
                      "role",
                      "roleHan",
                      "roleKo",
                      "stem"
                    ]
                  }
                }
              },
              "required": [
                "animalKo",
                "element",
                "elementHan",
                "elementKo",
                "han",
                "hiddenStems",
                "index",
                "ko",
                "polarity",
                "polarityKo",
                "sipseong"
              ]
            },
            "twelveStage": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string"
                },
                "ko": {
                  "type": "string"
                },
                "han": {
                  "type": "string"
                },
                "order": {
                  "type": "integer"
                },
                "keyword": {
                  "type": "string"
                },
                "phase": {
                  "type": "string"
                },
                "meaning": {
                  "type": "string"
                },
                "positionMeaning": {
                  "type": "string"
                }
              },
              "required": [
                "han",
                "id",
                "ko",
                "order"
              ]
            },
            "selfStage": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string"
                },
                "ko": {
                  "type": "string"
                },
                "han": {
                  "type": "string"
                },
                "order": {
                  "type": "integer"
                }
              },
              "required": [
                "han",
                "id",
                "ko",
                "order"
              ]
            },
            "naeum": {
              "type": "object",
              "properties": {
                "ko": {
                  "type": "string"
                },
                "han": {
                  "type": "string"
                },
                "element": {
                  "type": "string"
                },
                "elementKo": {
                  "type": "string"
                }
              },
              "required": [
                "element",
                "elementKo",
                "han",
                "ko"
              ]
            }
          },
          "required": [
            "branch",
            "ganji",
            "ganjiHan",
            "ganjiIndex",
            "naeum",
            "position",
            "positionKo",
            "selfStage",
            "stem",
            "twelveStage"
          ]
        },
        "hour": {
          "type": [
            "null",
            "object"
          ],
          "properties": {
            "position": {
              "type": "string",
              "examples": [
                "hour"
              ]
            },
            "positionKo": {
              "type": "string",
              "examples": [
                "시주"
              ]
            },
            "ganji": {
              "type": "string",
              "examples": [
                "병진",
                "병신"
              ]
            },
            "ganjiHan": {
              "type": "string",
              "examples": [
                "丙辰",
                "丙申"
              ]
            },
            "ganjiIndex": {
              "type": "integer",
              "examples": [
                52,
                32
              ]
            },
            "stem": {
              "type": "object",
              "properties": {
                "index": {
                  "type": "integer"
                },
                "han": {
                  "type": "string"
                },
                "ko": {
                  "type": "string"
                },
                "element": {
                  "type": "string"
                },
                "elementKo": {
                  "type": "string"
                },
                "elementHan": {
                  "type": "string"
                },
                "polarity": {
                  "type": "string"
                },
                "polarityKo": {
                  "type": "string"
                },
                "sipseong": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string"
                    },
                    "ko": {
                      "type": "string"
                    },
                    "han": {
                      "type": "string"
                    },
                    "group": {
                      "type": "string"
                    },
                    "groupKo": {
                      "type": "string"
                    },
                    "meaning": {
                      "type": "string"
                    },
                    "positionMeaning": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "group",
                    "groupKo",
                    "han",
                    "id",
                    "ko"
                  ]
                }
              },
              "required": [
                "element",
                "elementHan",
                "elementKo",
                "han",
                "index",
                "ko",
                "polarity",
                "polarityKo",
                "sipseong"
              ]
            },
            "branch": {
              "type": "object",
              "properties": {
                "index": {
                  "type": "integer"
                },
                "han": {
                  "type": "string"
                },
                "ko": {
                  "type": "string"
                },
                "element": {
                  "type": "string"
                },
                "elementKo": {
                  "type": "string"
                },
                "elementHan": {
                  "type": "string"
                },
                "polarity": {
                  "type": "string"
                },
                "polarityKo": {
                  "type": "string"
                },
                "animalKo": {
                  "type": "string"
                },
                "sipseong": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string"
                    },
                    "ko": {
                      "type": "string"
                    },
                    "han": {
                      "type": "string"
                    },
                    "group": {
                      "type": "string"
                    },
                    "groupKo": {
                      "type": "string"
                    },
                    "meaning": {
                      "type": "string"
                    },
                    "positionMeaning": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "group",
                    "groupKo",
                    "han",
                    "id",
                    "ko"
                  ]
                },
                "hiddenStems": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "stem": {
                        "type": "object",
                        "properties": {
                          "index": {
                            "type": "integer"
                          },
                          "han": {
                            "type": "string"
                          },
                          "ko": {
                            "type": "string"
                          },
                          "element": {
                            "type": "string"
                          },
                          "elementKo": {
                            "type": "string"
                          },
                          "elementHan": {
                            "type": "string"
                          },
                          "polarity": {
                            "type": "string"
                          },
                          "polarityKo": {
                            "type": "string"
                          },
                          "sipseong": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string"
                              },
                              "ko": {
                                "type": "string"
                              },
                              "han": {
                                "type": "string"
                              },
                              "group": {
                                "type": "string"
                              },
                              "groupKo": {
                                "type": "string"
                              }
                            },
                            "required": [
                              "group",
                              "groupKo",
                              "han",
                              "id",
                              "ko"
                            ]
                          }
                        },
                        "required": [
                          "element",
                          "elementHan",
                          "elementKo",
                          "han",
                          "index",
                          "ko",
                          "polarity",
                          "polarityKo",
                          "sipseong"
                        ]
                      },
                      "role": {
                        "type": "string"
                      },
                      "roleKo": {
                        "type": "string"
                      },
                      "roleHan": {
                        "type": "string"
                      },
                      "days": {
                        "type": "integer"
                      }
                    },
                    "required": [
                      "days",
                      "role",
                      "roleHan",
                      "roleKo",
                      "stem"
                    ]
                  }
                }
              },
              "required": [
                "animalKo",
                "element",
                "elementHan",
                "elementKo",
                "han",
                "hiddenStems",
                "index",
                "ko",
                "polarity",
                "polarityKo",
                "sipseong"
              ]
            },
            "twelveStage": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string"
                },
                "ko": {
                  "type": "string"
                },
                "han": {
                  "type": "string"
                },
                "order": {
                  "type": "integer"
                },
                "keyword": {
                  "type": "string"
                },
                "phase": {
                  "type": "string"
                },
                "meaning": {
                  "type": "string"
                },
                "positionMeaning": {
                  "type": "string"
                }
              },
              "required": [
                "han",
                "id",
                "ko",
                "order"
              ]
            },
            "selfStage": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string"
                },
                "ko": {
                  "type": "string"
                },
                "han": {
                  "type": "string"
                },
                "order": {
                  "type": "integer"
                }
              },
              "required": [
                "han",
                "id",
                "ko",
                "order"
              ]
            },
            "naeum": {
              "type": "object",
              "properties": {
                "ko": {
                  "type": "string"
                },
                "han": {
                  "type": "string"
                },
                "element": {
                  "type": "string"
                },
                "elementKo": {
                  "type": "string"
                }
              },
              "required": [
                "element",
                "elementKo",
                "han",
                "ko"
              ]
            }
          },
          "required": []
        }
      },
      "required": [
        "day",
        "hour",
        "month",
        "year"
      ]
    },
    "hourKnown": {
      "type": "boolean"
    },
    "dayMaster": {
      "type": "object",
      "properties": {
        "stem": {
          "type": "object",
          "properties": {
            "index": {
              "type": "integer",
              "examples": [
                4,
                7
              ]
            },
            "han": {
              "type": "string",
              "examples": [
                "戊",
                "辛"
              ]
            },
            "ko": {
              "type": "string",
              "examples": [
                "무",
                "신"
              ]
            },
            "element": {
              "type": "string",
              "examples": [
                "earth",
                "metal"
              ]
            },
            "elementKo": {
              "type": "string",
              "examples": [
                "토",
                "금"
              ]
            },
            "elementHan": {
              "type": "string",
              "examples": [
                "土",
                "金"
              ]
            },
            "polarity": {
              "type": "string",
              "examples": [
                "yang",
                "yin"
              ]
            },
            "polarityKo": {
              "type": "string",
              "examples": [
                "양",
                "음"
              ]
            },
            "sipseong": {
              "type": "null"
            }
          },
          "required": [
            "element",
            "elementHan",
            "elementKo",
            "han",
            "index",
            "ko",
            "polarity",
            "polarityKo",
            "sipseong"
          ]
        },
        "label": {
          "type": "string",
          "examples": [
            "양토 무(戊) 일간",
            "음금 신(辛) 일간"
          ]
        },
        "meaning": {
          "type": "string"
        }
      },
      "required": [
        "label",
        "stem"
      ]
    },
    "monthTerm": {
      "type": "object",
      "properties": {
        "nameKo": {
          "type": "string",
          "examples": [
            "경칩",
            "한로"
          ]
        },
        "nameHan": {
          "type": "string",
          "examples": [
            "驚蟄",
            "寒露"
          ]
        },
        "atKst": {
          "type": "string",
          "examples": [
            "1988-03-05 17:47",
            "1990-10-08 22:14"
          ]
        },
        "elapsedDays": {
          "type": "number",
          "examples": [
            8.6,
            24.8
          ]
        },
        "minutesFromJeol": {
          "type": "number",
          "examples": [
            12453,
            35666
          ]
        },
        "nextNameKo": {
          "type": "string",
          "examples": [
            "청명",
            "입동"
          ]
        },
        "nextAtKst": {
          "type": "string",
          "examples": [
            "1988-04-04 22:39",
            "1990-11-08 01:23"
          ]
        },
        "minutesToNextJeol": {
          "type": "number",
          "examples": [
            31039,
            7723
          ]
        }
      },
      "required": [
        "atKst",
        "elapsedDays",
        "minutesFromJeol",
        "minutesToNextJeol",
        "nameHan",
        "nameKo",
        "nextAtKst",
        "nextNameKo"
      ]
    },
    "saryeong": {
      "type": "object",
      "properties": {
        "stem": {
          "type": "object",
          "properties": {
            "index": {
              "type": "integer",
              "examples": [
                0,
                4
              ]
            },
            "han": {
              "type": "string",
              "examples": [
                "甲",
                "戊"
              ]
            },
            "ko": {
              "type": "string",
              "examples": [
                "갑",
                "무"
              ]
            },
            "element": {
              "type": "string",
              "examples": [
                "wood",
                "earth"
              ]
            },
            "elementKo": {
              "type": "string",
              "examples": [
                "목",
                "토"
              ]
            },
            "elementHan": {
              "type": "string",
              "examples": [
                "木",
                "土"
              ]
            },
            "polarity": {
              "type": "string",
              "examples": [
                "yang",
                "yin"
              ]
            },
            "polarityKo": {
              "type": "string",
              "examples": [
                "양",
                "음"
              ]
            },
            "sipseong": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string"
                },
                "ko": {
                  "type": "string"
                },
                "han": {
                  "type": "string"
                },
                "group": {
                  "type": "string"
                },
                "groupKo": {
                  "type": "string"
                }
              },
              "required": [
                "group",
                "groupKo",
                "han",
                "id",
                "ko"
              ]
            }
          },
          "required": [
            "element",
            "elementHan",
            "elementKo",
            "han",
            "index",
            "ko",
            "polarity",
            "polarityKo",
            "sipseong"
          ]
        },
        "role": {
          "type": "string",
          "examples": [
            "yeogi",
            "jeonggi"
          ]
        },
        "roleKo": {
          "type": "string",
          "examples": [
            "여기",
            "정기"
          ]
        },
        "elapsedDays": {
          "type": "number",
          "examples": [
            8.6,
            24.8
          ]
        },
        "firstHalf": {
          "type": "boolean"
        },
        "basis": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "required": [
        "elapsedDays",
        "firstHalf",
        "role",
        "roleKo",
        "stem"
      ]
    },
    "yearBoundary": {
      "type": "object",
      "properties": {
        "ipchunAtKst": {
          "type": "string",
          "examples": [
            "1988-02-04 23:43",
            "1990-02-04 11:14"
          ]
        },
        "beforeIpchun": {
          "type": "boolean"
        },
        "minutesFromIpchun": {
          "type": "number",
          "examples": [
            55297,
            390566
          ]
        }
      },
      "required": [
        "beforeIpchun",
        "ipchunAtKst",
        "minutesFromIpchun"
      ]
    },
    "hourBoundary": {
      "type": [
        "null",
        "object"
      ],
      "properties": {
        "minutesFromStart": {
          "type": "number",
          "examples": [
            98.6,
            84.4
          ]
        },
        "minutesToNext": {
          "type": "number",
          "examples": [
            21.4,
            35.6
          ]
        }
      },
      "required": []
    },
    "basis": {
      "type": "array",
      "items": {
        "type": "string",
        "examples": [
          "출생 시각 미상이라 일주는 출생 날짜 그대로 두고 시주는 생략했다."
        ]
      }
    }
  },
  "required": [
    "dayMaster",
    "hourBoundary",
    "hourKnown",
    "monthTerm",
    "pillars",
    "saryeong",
    "yearBoundary"
  ]
}