хуй пойми что я делал, но что-от полезное