ack, will go ahead and refactor