take 2 (code clean, 7806362)