1) А почему long вдруг воспринимается как integer? 2) И где-то ещё ошибка в минимальном значении , не вижу в каком именно ...