#1 reqs implemented