plan to use trace instead of __FILE__ __LINE__ __FUNC__