add :before and :after
fix schedule recur
fix calculate-dependencies