don't rely so much on callback.toString()