added before* methods