Достаточно много, поэтому под спойлером.

читать дальше