refactored with constants