dont need all to be in a string
add comments and cleanup