add tracing and speed