refactored reconcile and reconcileEvents to follow inheritance patterns