All of these functions should be static.