probably a good idea to make sure that we allocate space sized by the size of a pointer