http://aml.nm.ru/articles2/Mistral.htm