refactored calendar operations