adding in support for requirements