add ALLOC() and FREE() macros