А я уже расписал и объяснил, что работает верно, разве что небольшая погрешность.