Длинно и плохо написано, но вот захотелось.