Остальное здесь и здесь.