





from collections import defaultdict
from math import ceil, sqrt


def  SCREAMING_SNAKE_CASE   ( _UpperCAmelCase = 100_0000		,			_UpperCAmelCase = 10				)    ->  int:
    lowerCamelCase__					:   defaultdict      				=	defaultdict(_UpperCAmelCase				)

    for outer_width in range(3		,			(t_limit // 4) + 2				):
        if outer_width * outer_width > t_limit:
            lowerCamelCase__					:   List[str]      				=	max(
                ceil(sqrt(outer_width * outer_width - t_limit				)				)		,			1				)
        else:
            lowerCamelCase__					:   int      				=	1

        hole_width_lower_bound += (outer_width - hole_width_lower_bound) % 2

        for hole_width in range(_UpperCAmelCase		,			outer_width - 1		,			2				):
            count[outer_width * outer_width - hole_width * hole_width] += 1

    return sum(1 for n in count.values() if 1 <= n <= 10				)


if __name__ == "__main__":
    print(F"""{solution() = }""")












from __future__ import annotations

from collections.abc import Iterable, Iterator
from dataclasses import dataclass

_UpperCAmelCase       : Union[str, Any]			     =       (3, 9, -11, 0, 7, 5, 1, -1)
_UpperCAmelCase       : Union[str, Any]			     =       (4, 6, 2, 0, 8, 10, 3, -2)

@dataclass
class      lowerCAmelCase							:
 UpperCAmelCase__									=	42
 UpperCAmelCase__									=	42


class      lowerCAmelCase							:
 def __init__(   self						:   Any    ,  UpperCAmelCase						:   Iterable[int]			)    ->			None:
     lowerCamelCase__					:   Node | None      				=	None
     for i in sorted(UpperCAmelCase    ,  reverse=UpperCAmelCase			):
         lowerCamelCase__					:   Tuple      				=	Node(UpperCAmelCase    ,  self.head			)
 def __iter__(   self						:   Optional[int]			)    ->			Iterator[int]:
     lowerCamelCase__					:   str      				=	self.head
     while node:
         yield node.data
         lowerCamelCase__					:   List[str]      				=	node.next_node
 def __len__(   self						:   List[str]			)    ->			int:
     return sum(1 for _ in self			)







 def __str__(   self						:   Any			)    ->			str:
     return " -> ".join([str(UpperCAmelCase			) for node in self]			)


def  SCREAMING_SNAKE_CASE   ( _UpperCAmelCase		,			_UpperCAmelCase				)    ->  SortedLinkedList:
    return SortedLinkedList(list(_UpperCAmelCase				) + list(_UpperCAmelCase				)				)


if __name__ == "__main__":
    import doctest

    doctest.testmod()
    _UpperCAmelCase       : Optional[Any]			     =       SortedLinkedList
    print(merge_lists(SSL(test_data_odd), SSL(test_data_even)))





