dynamic debugging routine