wip - broke everyting out into functions