wstepny zarys jeszcze trzeba dopisac kilka funkcji