Parę funkcji trzeba było zmienić na synchronized