initial implementation of challenge mode