added handling for requirements