from pydantic import BaseModel
from typing import Optional

class Target(BaseModel):
    theta: float
    value: float
    result: Optional[float]
    drift: float = 0.0

    @classmethod
    def max_drift(cls):
        return 10 # 10% elasticity

    @classmethod
    def max_drift_increment(cls):
        return 1 # 1%