А вот выше сравните два кода на С#. Исходный и поправленный.