small improvements but overall there has to be a better way