refactoring
refactoring calendar
refactoring
separated counter logic
add counter module
so on