debug, non-portable, add mtrace()