add free for malloc