organized a few methods