#!/usr/bin/env python
# -*- coding: utf-8 -*-
# ~ Jesse K. Rubin ~ Pretty Useful Python
from typing import Any
from typing import Optional

class SodokuError(ValueError):
    message: str = ...
    def __init__(
        self, message: str, row: Optional[int] = ..., col: Optional[int] = ...
    ) -> None: ...

class Sodoku:
    is_solved: bool = ...
    board: Any = ...
    def __init__(self, board: Any) -> None: ...
    def solve(self) -> None: ...
    def euler_096_three_digit_number(self): ...
    @staticmethod
    def first_unknown(d: Any): ...
    @staticmethod
    def unsolvable(rcbd: Any): ...
    @staticmethod
    def check_unsolvable(d: Any): ...
    @staticmethod
    def update_dictionary(d: Any): ...
    @staticmethod
    def reduce_dictionary(d: Any): ...
    @staticmethod
    def hasdup(d: Any): ...
    def get_oneline_str(self): ...
    @staticmethod
    def neighbors(index: Any, size: int = ...): ...
    @staticmethod
    def irow(n: Any, bsize: int = ...): ...
    @staticmethod
    def icolumn(n: Any, bsize: int = ...): ...
    @staticmethod
    def ibox(box_r: Any, box_c: Any, bsize: int = ...): ...
    @staticmethod
    def box_box(index: Any, bsize: int = ...): ...
