import pydantic class RunResponse(pydantic.BaseModel): min_safe: int | None = None class JumpResponse(RunResponse): must_auto_jump: bool = False run_if_auto_jump: bool = False class TagResponse(RunResponse): pass class UncappedRunResponse(RunResponse): send_trail: bool = False trail_min_safe: int = 10 trail_min_safe_delta: int = 0 class ThrowResponse(pydantic.BaseModel): cutoff: bool = False # Stops on True at_lead_runner: bool = True at_trail_runner: bool = False # Stops on False trail_max_safe: int = 10 trail_max_safe_delta: int = -6 class DefenseResponse(pydantic.BaseModel): hold_first: bool = False hold_second: bool = False hold_third: bool = False outfield_in: bool = False infield_in: bool = False corners_in: bool = False