rozdzielenie na 3 metody
merge