merging with upstream changes to DataDealer and Detox