updated to be easier to use