Reason 1: First is because it is linked to attendance module.
Reason 2: Different company have different public holiday declared.
Reason 3: It may caused the inaccurate result of attendance summary. employee should present but app said it is non-working day
Reason 4: It also linked to leave(pro) calendar (inside the request form)