Revisit, thanks to "const" warnings all over the place after putting them in the prototypes