My version of malloc, calloc, realloc, and free in C