add caller backtrace depth
add backtrace variable check
merge