Dodane wszystkie funkcje + funkcje ogolniejsze