all methods coded for first pass, still have to refine return values