working on boolean operations for requirements, not finished yet