finish the first version of the utilities