Include string.h for memmove() and memcpy()