internal trace methods
better scope