pushed trace parameter into function arguments
propagated lang parameter throughout internal functions