def add(a: float, b: float) -> float:
    """Összeadja a megkapott 'a' és 'b' tizedestörteket."""
    return a + b

def str_replace(s: str, r1: str, r2: str) -> str:
    """Kicseréli az r1 részszöveget r2-re."""
    return s.replace(r1, r2)

def remove_str(s: str, f: str) -> str:
    """Kitörli a szövegből az f részszöveg előfordulásait."""
    return s.replace(f, "")

def filter_list(l: list[int], f: int) -> list[int]:
    """Kiszűri a listából az f értékű elemeket."""
    new_list = []

    for e in l:
        if e != f:
            new_list.append(e)

    return new_list

def swap_elements(l: list[int]) -> list[int]:
    """Felcseréli egy kételemű lista elemeit."""
    return [l[1], l[0]]

def split_by(s: str, d: str) -> list[str]:
    """Feldarabolja a szöveget az elválasztó mentén."""
    return s.split(d)

def calc_avgs(l: list[list[int]]) -> list[float]:
    """Kiszámolja a kétdimenziós lista sorainak átlagát."""
    avgs = []

    for r in l:
        s = 0
        c = 0

        for e in r:
            s += e
            c += 1

        avgs.append(s / c)

    return avgs

def count_substr(s: str, c: str) -> int:
    """Megszámolja a c részszöveg előfordulásait."""
    return s.count(c)

def apply_not(l: list[bool]) -> list[bool]:
    """A lista minden elemére alkalmazza a not műveletet."""
    new_list = []

    for e in l:
        new_list.append(not e)

    return new_list

def multiply_by_four(a: int) -> int:
    """Megszorozza 4-gyel az egész számot."""
    return a * 4

