add challenge support