# -*- coding: utf-8 -*-
# ~ Jesse K. Rubin ~ Pretty Useful Python

from collections.abc import MutableSequence
from typing import Any
from typing import Iterable
from typing import Union


def prime_gen(plim: int=..., kprimes: Union[None, Iterable[int]]=...) -> Any: ...
def prime_factorization_gen(n: Any) -> None: ...
def prime_factors_gen(n: Any): ...
def is_prime(number: Any): ...

class OctopusPrime(MutableSequence):
    max_loaded: Any = ...
    def __init__(self, plim: int = ...) -> None: ...
    def primes_below(self, upper_bound: Any): ...
    def primes_between(self, lower_bound: Any, upper_bound: Any): ...
    def __len__(self): ...
    def __getitem__(self, i: Any): ...
    def __delitem__(self, i: Any) -> None: ...
    def __setitem__(self, key: Any, value: Any) -> None: ...
    def insert(self, index: Any, object: Any) -> None: ...
