#include "test.h"
#include <string.h>

// Function pointers
void (*keycopy)(void *, const void *, size_t);
void (*keymset)(void *, int, size_t);

int main() {
    // Initialize function pointers
    keycopy = memcpy;
    keymset = memset;

    // Example data
    char src[50] = "This is a source string.";
    char dest[50];
    char buffer[50];

    // Use keycopy to copy data from src to dest
    keycopy(dest, src, strlen(src) + 1); // +1 to include the null terminator
    printf("After keycopy: dest = \"%s\"\n", dest);

    // Use keymset to set all elements in buffer to 'A'
    keymset(buffer, 'A', sizeof(buffer) - 1);
    buffer[sizeof(buffer) - 1] = '\0'; // Null-terminate the buffer
    printf("After keymset: buffer = \"%s\"\n", buffer);

    ASSERT(49, strlen(buffer));
    return 0;
}
