Я прочитал эту статью (включая часть 1), я не знаю, является ли это наилучшей практикой, и этот способ немного сложен.