delete TODO. modify some code.
Bug fix.

the assignment a number to a long variable never cast from int to long
without explicit cast code(i.e. 'L' symbol like '10L').
added log message and several statistics.