mod: use defadvice to replace fmakunbound&defun