# coding: utf-8

from __future__ import annotations
from datetime import date, datetime  # noqa: F401

import re  # noqa: F401
from typing import Any, Dict, List, Optional  # noqa: F401

from pydantic import AnyUrl, BaseModel, EmailStr, Field, validator  # noqa: F401


class MC24AA02E48(BaseModel):
    """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).

    Do not edit the class manually.

    MC24AA02E48 - a model defined in OpenAPI

        mac: The mac of this MC24AA02E48 [Optional].
        secc_private_key: The secc_private_key of this MC24AA02E48 [Optional].
    """
    class Config:
        orm_mode = True

    mac: Optional[str] = Field(alias="mac", default=None)
    secc_private_key: Optional[str] = Field(alias="seccPrivateKey", default=None)

    @validator("mac")
    def mac_pattern(cls, value):
        assert value is not None and re.match(r"^([0-9A-Fa-f]{2}:){5}[0-9A-Fa-f]{2}$", value)
        return value

    @validator("secc_private_key")
    def secc_private_key_max_length(cls, value):
        assert len(value) <= 32
        return value

MC24AA02E48.update_forward_refs()
